delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin-developers/2000/06/08/14:26:57

Mailing-List: contact cygwin-developers-help AT sourceware DOT cygnus DOT com; run by ezmlm
List-Subscribe: <mailto:cygwin-developers-subscribe AT sourceware DOT cygnus DOT com>
List-Archive: <http://sourceware.cygnus.com/ml/cygwin-developers/>
List-Post: <mailto:cygwin-developers AT sourceware DOT cygnus DOT com>
List-Help: <mailto:cygwin-developers-help AT sourceware DOT cygnus DOT com>, <http://sourceware.cygnus.com/ml/#faqs>
Sender: cygwin-developers-owner AT sourceware DOT cygnus DOT com
Delivered-To: mailing list cygwin-developers AT sourceware DOT cygnus DOT com
From: Chris Faylor <cgf AT cygnus DOT com>
Date: Thu, 8 Jun 2000 14:25:26 -0400
To: cygwin-developers AT sourceware DOT cygnus DOT com
Subject: Re: More i686-pc-cygwin woes.
Message-ID: <20000608142526.A20264@cygnus.com>
Reply-To: cygwin-developers AT sourceware DOT cygnus DOT com
Mail-Followup-To: cygwin-developers AT sourceware DOT cygnus DOT com
References: <200006081815 DOT LAA09748 AT cygnus DOT com>
Mime-Version: 1.0
User-Agent: Mutt/1.2i
In-Reply-To: <200006081815.LAA09748@cygnus.com>; from rdparker@butlermfg.com on Thu, Jun 08, 2000 at 01:11:11PM -0500

On Thu, Jun 08, 2000 at 01:11:11PM -0500, Parker, Ron wrote:
>> I force this to occur by specifying the regular "correct" stuff in
>> configure and using a line like this for the 'make install':
>> 
>>         make tooldir=/usr install
>> 
>> This causes cygwin to avoid using i686-pc-cygwin directory.
>
>Would it be better if we had our own version of autoconf that when it was
>dealing with a cygwin target set tooldir appropriately?  And yes I am
>volunteering.  

This is only an issue for the cygwin directory, AFAIK.  Everything else
does the right thing when supplied with the appropriate configure line.
Here's what my "net release" script uses:

$src/configure --build=i686-pc-linux --host=i686-pc-cygwin --target=i686-pc-cygwin --enable-haifa --prefix=/usr --exec-prefix=/usr --sysconfdir=/etc --libdir=/usr/lib --includedir=/nonexistent/include

The '/nonexistent/include' stuff is, unfortunately, required because readline
uses --includedir as the directory to include in compilations which is not,
I believe, correct.

DJ added some logic a while ago that made cygwin do the right thing when
compiling natively.  However, if you're cross compiling, you really do
want to put things in the i686-pc-cygwin directory.  You could add some
autoconf stuff to work around this but I'm not sure that it would be
worth it.  There may be some, already existent, nifty autoconf variable
that should be used but I don't know what it is.

The method that I've been using is to configure everything as if it was
going to be installed on the native system and then do a "make install"
with lots of overrides on the command line:

make CFLAGS=-O2 tooldir=/usr
make install prefix=$inst/usr exec_prefix=$inst/usr bindir=$inst/usr/bin libdir=$inst/usr/lib sysconfdir=$inst/etc includedir=$inst/usr/include tooldir=$inst/usr

This seems to work fine.

So, the question is what is "appropriate" for the tooldir.  I think it
is currently appropriate as is.  Both DJ and I do cross-builds so we
have to add a little extra when installing.  AFAIK, the 'tooldir'
stuff is specific to cygwin.

>We could then autoconf the packages that referred to this directory and
>release a new tar ball and source for those packages.  Also if a user had
>complained of a third-party package that was errantly placing files in
>/usr/i686-pc-cygwin, we could direct him to:
>
>	autoconf
>	./configure --prefix=/usr i686-pc-cygwin
>	make
>	make install
>
>Which isn't that abnormal anyway.

I don't know about gcc, but this does the expected for cygwin when building
natively.

cgf

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019