From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Date: Fri, 8 Nov 2002 02:34:20 +0300 (MSK) From: Ivan Zakharyaschev X-X-Sender: ivan@arrakis.zephyrous To: devel@altlinux.ru Message-ID: X-Mailer: try to guess MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=koi8-r Content-Transfer-Encoding: 8BIT Subject: [devel] %configure: --host/--build problem Sender: devel-admin@altlinux.ru Errors-To: devel-admin@altlinux.ru X-BeenThere: devel@altlinux.ru X-Mailman-Version: 2.0.9 Precedence: bulk Reply-To: devel@altlinux.ru List-Unsubscribe: , List-Id: List-Post: List-Help: List-Subscribe: , List-Archive: Archived-At: List-Archive: List-Post: Hello! Обнаружилось, что в последних сборках emacs archlibdir прнимала значение .../i686-pc-linux-gnu, хотя должна была, как и раньше, .../i586-alt-linux (#1535). Оказалось, что rpm-макрос %configure теперь передаёт ./configure параметр --build=%_target_platform. После чтения документации по autoconf и configure (Canadian Cross), я понял, что это в общем-то не то, что хочется: на самом деле надо устанавливать --host, а не --build: --build - тип машины, на которой производится сборка --host - для которой (если не указан, угадывается по типу машины, на которой производится сборка, при этом значение --build не используется) --target - очень редкая вещь; нужна для сборки кросс-компиляторов. Т.е. все эти слова надо понимать по отношению к программе, которая собирается. После добавления: %define _configure_target --host=%_target_platform в emacs.spec собралось, как надо. Кто неправ? Могли ли ещё какие-нибудь пакеты "пострадать" подобным образом при пересборке? Ещё я нашёл среди макросов rpm сложный %GNUconfigure, но он, по-моему, нигде не описан. Зачем он нужен? Вот что написано в info по autoconf и configure о --host и --build: If you want to _use_ a cross compiler, that generates code for a platform different from the build platform, you should specify the "host" platform (i.e., that on which the generated programs will eventually be run) with `--host=TYPE'. When you run `configure', you must use both the `--build' and `--host' options. The `--build' option is used to specify the configuration name of the build system. This can normally be the result of running the `config.guess' shell script, and it is reasonable to use `--build=`config.guess`'. The `--host' option is used to specify the configuration name of the host system. -- С наилучшими пожеланиями, Иван Захарьящев, Москва