From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.2.5 (2008-06-10) on sa.int.altlinux.org X-Spam-Level: X-Spam-Status: No, score=-0.0 required=5.0 tests=BAYES_00, RCVD_IN_BL_SPAMCOP_NET, RCVD_IN_SORBS_WEB, SPF_PASS autolearn=no version=3.2.5 X-Authenticated: #3271302 X-Provags-ID: V01U2FsdGVkX1+rar5uXH6rCvOD219nYr35zNvXd1cwXrr1r4b1oe d+r3IIh5e5Pa2j To: ALT Linux Sisyphus discussions References: <4A59D212.8040809@altlinux.ru> <4A59F895.10003@altlinux.ru> <20090712185734.GA19410@mw.office.seiros.ru> <20090713060515.GA5511@mw.office.seiros.ru> From: Aleksey Cheusov Date: Mon, 13 Jul 2009 23:20:16 +0300 In-Reply-To: <20090713060515.GA5511@mw.office.seiros.ru> =?koi8-r?B?KCLk?= =?koi8-r?B?xc7J0yDzzcnSzs/XIidz?= message of "Mon, 13 Jul 2009 10:05:15 +0400") Message-ID: User-Agent: Gnus/5.11 (Gnus v5.11) Emacs/22.3 (berkeley-unix) MIME-Version: 1.0 Content-Type: text/plain; charset=koi8-r Content-Transfer-Encoding: 8bit X-Y-GMX-Trusted: 0 X-FuHaFi: 0.63 Subject: Re: [sisyphus] mk-configure -- lightweight replacement for GNU autotools X-BeenThere: sisyphus@lists.altlinux.org X-Mailman-Version: 2.1.12 Precedence: list Reply-To: ALT Linux Sisyphus discussions List-Id: ALT Linux Sisyphus discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 13 Jul 2009 20:23:15 -0000 Archived-At: List-Archive: List-Post: AC>> Я пока не понял, в чем именно заключается проблема. В том, что каталогов AC>> с инклюдами и библиотеками больше одного? Это не проблема. AC>> LDFLAGS='-Ldir -Ldir2' CPPFLAGS='-Idir1 -Idir2' ./configure AC>> make > Правильно написаный configure на autotols сделает это за меня. > И я, кстати, почти никогда не переопределяю переменные окружения для > ./configure. И я не определяю опции при сборки mk-files, если библиотеки и заголовки разложены в стандартных местах. AC>> Для этого не нужны опции --foo-includedir и --bar-includedir. AC>> Это просто лишний, ничего не добавляющий к функциональности, код (жир). > Он _очевиден_. Глядя на эти опции autotools я понимаю что таким образом > добавлена эта библиотека. Ага. Создается иллюзия, что --foo-includedir - это только для FOO, а --bar-includedir - это только для BAR, хотя на самом деле все совсем не так. Не уж, в сад. > Кстати рекомендую посмотреть на spec чего-нибудь вроде mplayer, где > используетяс много with/without. Или на тот же asterisk. Музхи отдельно, котлеты отдельно. --with/without не имеет никакого отношения к --foo-{lib,include}dir. > То есть те о ком вы не собираетесь заботиться, для меня лично является > иденственной аудитории, которой я готов многим помочь не выставив > предварительно счет. Мне не интересны "профессионалы", которым нравится откровенно кривой дизайн. >>> Вы пробовали написать приложение, которое бы: >>> а) пользовалось большим количеством сторонних библиотек; AC>> Нет. Любой дурак может написать большое приложение. Попробуй написать AC>> маленькое ;-) У меня довольно много проектов в open source, и все они AC>> невелики по объему исходного кода. Много сторонних библиотек я тоже не AC>> использую. > Таким образом, естественно, что вы не учли при разработке своего решения > интересов тем, кому приходится писать большие системы :) Нет. Просто в первую очередл реализовано то, что необходимо было мнепрямо вот сейчас. Поддержка sml-я мне, например, прямо сейчас не нужна. >>> б) использовало бы некоторые ОС-специфичные функции (к примеру системные >>> вызовы); >>> в) собиралось бы под хотя бы 2-3 разных ОС; AC>> Естественно. dictd, runawk, paexec... > Как выглядит сборка под разные ОС? > В случае autotools она выглядит так: > ./configure > make > make install Точно также. bmake bmake install-dirs bmake install install-dirs - это побочный эффект немного кривых в этом месте mk-files. Мне это не очень нравится. Но лучшего решения я не нашел. > Сейчас, когда я много времени трачу на сборку, у меня к любой системе > сборки всегда один вопрос -- чем она _принципиально_ лучше autotools? Я уже много раз отвечал: - более правильным дизайном - простотой в изучении и использвании И я никогда не говорил, что в нем реализовано все на свете. > Другая система -- требует отдельного вкуривание в него, и не всегда > понятно с какими перспективами. Немного времени требуется. В случае с pkgsrc, например, в одном случае нужно написать в Makefile-е пакета GNU_CONFIGURE=yes а для mk-files (и mk-configure) USE_BSD_MAKEFILE=yes Все остальное сделается и передастся куда следует автоматом. Если в Алте не так, значит вам есть над чем поработать ;-) > Ради интереса -- ознкомьтесь с системой сборки в Asterisk, Угу. > Думаю это поставит перед вами ряд > вопросов которые вам будет интересно решить :) Посмотрим. Записал. -- Best regards, Aleksey Cheusov.