ALT Linux Sisyphus discussions
 help / color / mirror / Atom feed
From: Aleksey Cheusov <vle@gmx.net>
To: ALT Linux Sisyphus mailing list <sisyphus@lists.altlinux.org>
Subject: Re: [sisyphus] mk-configure -- lightweight replacement for GNU autotools
Date: Mon, 13 Jul 2009 23:56:45 +0300
Message-ID: <s93y6qsti7m.fsf@chen.chizhovka.net> (raw)
In-Reply-To: <20090713203630.GF29742@wo.int.altlinux.org> (Dmitry V. Levin's message of "Tue, 14 Jul 2009 00:36:31 +0400")

 >> Речь идет об одной из моих последних open source разработок,
 >> mk-configure, легковесной простой использовании (да, я знаю, звучит как
 >> маркетоидное заклинание :-) , уж простите ) альтернативе GNU
 >> autotools. Ни много, ни мало...

> Есть ещё одно соображение, не прозвучавшее за прошедшие 2 дня обсуждения.

> Не секрет, что многие мантейнеры пакетов нередко используют заклинание
> "autoreconf -fisv" для того, чтобы заменить поставляемые в исходниках
> сгенерированные файлы на более адекватные.
Да, что, кстати, ломает изначальную идеологию autotools -- предоставить
тарбол, достаточный для сборки абсолютно везде.  Оказывается,
недостаточный, необходимо, оказывается, еще и autotools ставить. Новое
поколение разработчиков считает даже, что за предоставленный в тарболе
готовый configure нужно бить по рукам. Когда я об этом услышал, я был
просто в шоке :-)

Во-первых, это делает подход с кодогенерацией абсолютно неуместным.
Преврати autotools в библиотеку на шеле и пиши декларативно на шеле,
безо всяких m4 и кодогенерации.

Во-вторых, получается такая же ситуация, как и с mk-configure.  Для
mk-configure-based проектов нужно поставить кучу всего, и для
autotools-based -- тоже.

> Основная идея проекта, отличающая его от GNU autotools -- в замене
> сгенерированных (предвычисленных "на все случаи жизни")
> configure+Makefile.in на декларативные правила, которые будет
> вычислять каждый пользователь во время сборки
Угу.

> -- в первую очередь должна понравиться разработчикам операционной
> системы.
Вот, кстати пример. Что делают разработчики BSD систем, когда помещают
сторонний софт, собранный явно не средствами соответствующих bsdmake-ов,
в свои деревья? Правильно. Выбрасывают родные системы сборки к черту и
пишут свои, коротенькие маленькие на родном bsdmake-е. Тот же подход
может быть успешно применим и при разработке больших и долгоиграющих
узкоспециализированных программных комплексов. Заодно решается проблема
кросс-сборки, актуальная для эмбеда.

Вот пример, как GNU grep встроен в NetBSD
http://cvsweb.netbsd.org/bsdweb.cgi/src/gnu/usr.bin/grep/Makefile?only_with_tag=MAIN

> В то же время есть две гораздо более многочисленные группы пользователей,
> которым подход mk-configure менее предпочтителен:
> - Обычные пользователи, собирающие софт из исходников без изменений.  Как
>   уже было сказано, необходимые для сборки проектов, использующих
>   mk-configure, новые инструментальные средства _нужных_версий_ -- это
>   сейчас проблема.
На мне лежит забота об обратной совместимости.  Так что "нужных версий"
можно опустить.  Я бы поставил ударение на "новые инструментальные
средства" и "малораспространенные". Принимаю помощь в пакетировании для
Debian, FreeBSD, Fedora, OpenSuse, Gentoo, Slackware и проч. :-)

> - Разработчики софта, рассчитывающие, что их проект будет работать на
>   любой платформе, которую может поддерживать autotools.  Очевидно, что
>   mk-configure как минимум на первых порах сможет поддерживать только
>   самые "живые" платформы.
Да.

> Весьма вероятно, что инертность этих двух групп потушит любое начинание
> в этой области, вне зависимости от деталей реализации.
Без активной помощи со стороны -- да.

-- 
Best regards, Aleksey Cheusov.


  reply	other threads:[~2009-07-13 20:56 UTC|newest]

Thread overview: 70+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-07-12  5:53 Aleksey Cheusov
2009-07-12  9:18 ` Gleb Kulikov
2009-07-12 14:44   ` Aleksey Cheusov
2009-07-12 17:18     ` Gleb Kulikov
2009-07-12 17:37       ` Aleksey Cheusov
2009-07-16 10:52         ` Gleb Kulikov
2009-07-12 22:13     ` Mikhail Yakshin
2009-07-13 19:56       ` Aleksey Cheusov
2009-07-13 21:02         ` Led
2009-07-13 21:18           ` Aleksey Cheusov
2009-07-14  1:49         ` [sisyphus] [JT] " Pavel N. Solovyov
2009-07-14  5:22           ` Afanasov Dmitry
2009-07-14  6:21             ` Aleksey Cheusov
2009-07-14 23:13         ` [sisyphus] " Mikhail Yakshin
2009-07-15 19:23           ` Aleksey Cheusov
2009-07-15 19:41             ` Vitaly Kuznetsov
2009-07-15 19:53               ` Aleksey Cheusov
2009-07-12 12:03 ` Alexey I. Froloff
2009-07-12 12:07 ` Alexey Gladkov
2009-07-12 13:48   ` Aleksey Cheusov
2009-07-12 14:52     ` Alexey Gladkov
2009-07-12 15:15       ` Aleksey Cheusov
2009-07-12 18:57         ` Денис Смирнов
2009-07-12 20:02           ` Aleksey Cheusov
2009-07-12 20:31             ` Alexey I. Froloff
2009-07-12 20:41               ` Aleksey Cheusov
2009-07-12 20:49                 ` Alexey I. Froloff
2009-07-12 21:00                   ` Aleksey Cheusov
2009-07-12 21:03                     ` Aleksey Cheusov
2009-07-12 22:17                     ` Alexey I. Froloff
2009-07-13 20:03                       ` Aleksey Cheusov
2009-07-13 20:54                         ` Alexey I. Froloff
2009-07-13 21:06                           ` Aleksey Cheusov
2009-07-13 21:12                             ` Alexey I. Froloff
2009-07-13 21:23                               ` Aleksey Cheusov
2009-07-13 21:43                                 ` Alexey I. Froloff
2009-07-12 21:27             ` Alexey Rusakov
2009-07-12 21:36               ` Alexey I. Froloff
2009-07-12 22:29               ` Aleksey Cheusov
2009-07-12 23:04                 ` Alexey I. Froloff
2009-07-13  5:26                 ` Alexey Rusakov
2009-07-13  6:05             ` Денис Смирнов
2009-07-13  8:26               ` Afanasov Dmitry
2009-07-13 17:54                 ` Денис Смирнов
2009-07-13 20:20               ` Aleksey Cheusov
2009-07-13 20:52                 ` Alexey I. Froloff
2009-07-13 21:06                   ` Aleksey Cheusov
2009-07-13 21:39                     ` Alexey I. Froloff
2009-07-13 19:43         ` [sisyphus] mk-configure: args vs options Dmitry V. Levin
2009-07-13 20:28           ` Aleksey Cheusov
2009-07-13 20:40             ` Dmitry V. Levin
2009-07-12 16:06 ` [sisyphus] mk-configure -- lightweight replacement for GNU autotools Led
2009-07-12 16:18   ` Aleksey Cheusov
2009-07-12 16:28     ` Led
2009-07-13 20:36 ` Dmitry V. Levin
2009-07-13 20:56   ` Aleksey Cheusov [this message]
2009-07-13 21:29     ` Dmitry V. Levin
2009-07-14  6:37       ` Aleksey Cheusov
2009-07-14  6:53         ` Afanasov Dmitry
2009-07-14 18:25           ` Aleksey Cheusov
2009-07-14 18:32             ` Led
2010-06-12 14:56 ` Aleksey Cheusov
2010-06-15  3:25   ` REAL
2010-06-15  6:05     ` Aleksey Cheusov
2010-06-15  5:29       ` REAL
2010-06-15  7:19         ` Slava Semushin
2010-06-15  7:22         ` Aleksey Cheusov
2010-06-15  7:03           ` REAL
2010-06-15  7:52           ` REAL
2010-06-15  9:39             ` Aleksey Cheusov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=s93y6qsti7m.fsf@chen.chizhovka.net \
    --to=vle@gmx.net \
    --cc=sisyphus@lists.altlinux.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

ALT Linux Sisyphus discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/sisyphus/0 sisyphus/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 sisyphus sisyphus/ http://lore.altlinux.org/sisyphus \
		sisyphus@altlinux.ru sisyphus@altlinux.org sisyphus@lists.altlinux.org sisyphus@lists.altlinux.ru sisyphus@lists.altlinux.com sisyphus@linuxteam.iplabs.ru sisyphus@list.linux-os.ru
	public-inbox-index sisyphus

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.sisyphus


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git