Re: cannot install...to a directory not ending in

2006-09-23 Thread Ralf Wildenhues
* Jeff Blaine wrote on Fri, Sep 22, 2006 at 11:26:07PM CEST:
 I tried DESTDIR.  It doesn't do what I want.  If I specify
 
 % ./configure --prefix=/usr/local
 % make
 % make install DESTDIR=/blah/blah
 
 ...then the install process builds out /blah/blah/usr/local.
 We can't use that.
[...]

 1.  /afs/blah/dest/sun4x_59/local/bison/1875
 
 The installed destination for a bison build.  We build
 everything as follows, and always have:
 
 ./configure --prefix=/usr/local
 make
 make install prefix=/afs/blah/dest/sun4x_59/local/bison/1875

Try this:
  mkdir -p /blah/blah/usr
  ln -s /afs/blah/dest/sun4x_59/local/bison/1875 /blah/blah/usr/local
  make install DESTDIR=/blah/blah
  rm -r /blah/blah/usr

Does that do what you want?

Does your setup otherwise respect all the limitations I outlined in this
message: http://lists.gnu.org/archive/html/libtool/2006-09/msg00066.html
IOW: are there no deplibs of the to-be-installed programs and libraries
that are not accessible through /usr/local/lib but only through
/afs/blah/dest/sun4x_59/local/bison/1875/lib?

If no, then the above sequence should be a decent workaround for the
current restriction that at `make install' time, the string
`$(DESTDIR)$(prefix)' has to end in the value of `$(prefix)' at `make'
time.

Hope that helps.

Cheers,
Ralf


___
http://lists.gnu.org/mailman/listinfo/libtool


cannot install...to a directory not ending in

2006-09-22 Thread Jeff Blaine

Okay, I've run into this enough that it's taken its toll
on me and I must know the proper modern way to handle this.

For years and years, the following worked fine for any
GNU app using autoconf:

 ./configure --prefix=/my/final/destination
 make
 make install prefix=/my/to-be-released/destination

This concept is used almost anywhere AFS/OpenAFS is used
and anywhere there is a process in place to release software
to its final destination.

It has often not worked when involving libtool over the
last year or two and it's driving me nuts.  Can someone
PUHLZE tell me the right way to do this?

GCC 4.1.1 today:

build:quake ../gcc-4.1.1/configure --prefix=/usr/rcf
...
build:quake make bootstrap
...
build:quake make install prefix=/afs/rcf/system/dest/lin24v2/local/gcc/040/
...
libtool: install: error: cannot install `libgij.la' to a directory not 
ending in /usr/rcf/lib

...



___
http://lists.gnu.org/mailman/listinfo/libtool


Re: cannot install...to a directory not ending in

2006-09-22 Thread Ralf Wildenhues
Hello Jeff,

* Jeff Blaine wrote on Fri, Sep 22, 2006 at 04:17:07PM CEST:
 Okay, I've run into this enough that it's taken its toll
 on me and I must know the proper modern way to handle this.

Hmm.  This sounds like it used to work before and we broke something.
Is it what you are implying?

 For years and years, the following worked fine for any
 GNU app using autoconf:
 
  ./configure --prefix=/my/final/destination
  make
  make install prefix=/my/to-be-released/destination

Not with Libtool-using packages, at least not bug-free, as far as I
remember.

  make install DESTDIR=/my/staging/directory

works to install your stuff temporarily into
  /my/staging/directory/my/final/destination

from where it can be moved to
  /my/final/destination

and, after a 
  libtool --mode=finish /my/final/destination/lib

libraries should be useable.

There are issues in current libtool that prevent this from working
properly in _some_ cases when you try to link against third-party
libraries that currently are visible below
  /my/staging/directory/my/final/destination

but are to finally appear at
  /my/final/destination/

See some other discussion on this list just this week.

 It has often not worked when involving libtool over the
 last year or two and it's driving me nuts.  Can someone
 PUHLZE tell me the right way to do this?

Well, I'm really sorry you've had so much trouble, and I can only ask to
report issues earlier.  If you think there is a regression involved then
please point me to a package where this should have worked.

Hope that helps.

Cheers,
Ralf


___
http://lists.gnu.org/mailman/listinfo/libtool


Re: cannot install...to a directory not ending in

2006-09-22 Thread Edward Maros
I believe the problem being described here is one that I have 
encountered also since I use stow for package management. A long time 
ago, it use to be the case you could say:


./configure --prefix=/dest
make
make prefix=/dest/stow/package-package version install

even if the package installed shared objects.

With more recent versions of libtool, I have had to add the 
--with-libdir=/dest/stow/package-package version/lib to allow proper 
installation.


Ed

Ralf Wildenhues wrote:


Hello Jeff,

* Jeff Blaine wrote on Fri, Sep 22, 2006 at 04:17:07PM CEST:
 


Okay, I've run into this enough that it's taken its toll
on me and I must know the proper modern way to handle this.
   



Hmm.  This sounds like it used to work before and we broke something.
Is it what you are implying?

 


For years and years, the following worked fine for any
GNU app using autoconf:

./configure --prefix=/my/final/destination
make
make install prefix=/my/to-be-released/destination
   



Not with Libtool-using packages, at least not bug-free, as far as I
remember.

 make install DESTDIR=/my/staging/directory

works to install your stuff temporarily into
 /my/staging/directory/my/final/destination

from where it can be moved to
 /my/final/destination

and, after a 
 libtool --mode=finish /my/final/destination/lib


libraries should be useable.

There are issues in current libtool that prevent this from working
properly in _some_ cases when you try to link against third-party
libraries that currently are visible below
 /my/staging/directory/my/final/destination

but are to finally appear at
 /my/final/destination/

See some other discussion on this list just this week.

 


It has often not worked when involving libtool over the
last year or two and it's driving me nuts.  Can someone
PUHLZE tell me the right way to do this?
   



Well, I'm really sorry you've had so much trouble, and I can only ask to
report issues earlier.  If you think there is a regression involved then
please point me to a package where this should have worked.

Hope that helps.

Cheers,
Ralf


___
http://lists.gnu.org/mailman/listinfo/libtool
 





smime.p7s
Description: S/MIME Cryptographic Signature
___
http://lists.gnu.org/mailman/listinfo/libtool


Re: cannot install...to a directory not ending in

2006-09-22 Thread Jeff Blaine

Hi Ralf and Ed,

Ed's description of the problem is what I am experiencing.
We use VECT (aka CMU's EMT Rewritten and made Lite) for
release management of apps.  Written by yours truly :)

http://vect.sourceforge.net/

Anyway, it's the same problematic idea as Stow's.

I will try --with-libdir, however I'm immediately concerned
that it's going to cause an additional problem:  We don't
want anything we build for /dest to have any references
to /dest/stow/package-package version (to use Ed's
example).  We often gather up /dest in a tarball to drop
onto non-networked machines, for example.  They exist :)

I bet building gcc (for example) with --with-libdir=
is going to cause that.

Ralf - sorry I came across so frustrated.  I just hate when
tools stop me from doing what I know is correct.  That is,
yes, once the app is released, the libraries *will* live
where libtool wants them.  Just let me install them elsewhere
and handle it.  As for an appropriate solution (assuming
--with-libdir doesn't turn out to be a royal pain to get
going), I'd be happy with any environmental flag that
would turn those 'fatal errors' into warnings.

Edward Maros wrote:
I believe the problem being described here is one that I have 
encountered also since I use stow for package management. A long time 
ago, it use to be the case you could say:


./configure --prefix=/dest
make
make prefix=/dest/stow/package-package version install

even if the package installed shared objects.

With more recent versions of libtool, I have had to add the 
--with-libdir=/dest/stow/package-package version/lib to allow proper 
installation.


Ed

Ralf Wildenhues wrote:


Hello Jeff,

* Jeff Blaine wrote on Fri, Sep 22, 2006 at 04:17:07PM CEST:
 


Okay, I've run into this enough that it's taken its toll
on me and I must know the proper modern way to handle this.
  


Hmm.  This sounds like it used to work before and we broke something.
Is it what you are implying?

 


For years and years, the following worked fine for any
GNU app using autoconf:

./configure --prefix=/my/final/destination
make
make install prefix=/my/to-be-released/destination
  


Not with Libtool-using packages, at least not bug-free, as far as I
remember.

 make install DESTDIR=/my/staging/directory

works to install your stuff temporarily into
 /my/staging/directory/my/final/destination

from where it can be moved to
 /my/final/destination

and, after a  libtool --mode=finish /my/final/destination/lib

libraries should be useable.

There are issues in current libtool that prevent this from working
properly in _some_ cases when you try to link against third-party
libraries that currently are visible below
 /my/staging/directory/my/final/destination

but are to finally appear at
 /my/final/destination/

See some other discussion on this list just this week.

 


It has often not worked when involving libtool over the
last year or two and it's driving me nuts.  Can someone
PUHLZE tell me the right way to do this?
  


Well, I'm really sorry you've had so much trouble, and I can only ask to
report issues earlier.  If you think there is a regression involved then
please point me to a package where this should have worked.

Hope that helps.

Cheers,
Ralf


___
http://lists.gnu.org/mailman/listinfo/libtool
 







___
http://lists.gnu.org/mailman/listinfo/libtool


Re: cannot install...to a directory not ending in

2006-09-22 Thread Ralf Wildenhues
* Jeff Blaine wrote on Fri, Sep 22, 2006 at 06:30:42PM CEST:
 
 I will try --with-libdir, however I'm immediately concerned
 that it's going to cause an additional problem:  We don't
 want anything we build for /dest to have any references
 to /dest/stow/package-package version (to use Ed's
 example).

Yes, in that case you probably may not do that.  Note that unlike
--libdir, --with-libdir is not standardized in any way, so I don't
know what effect it would have on packages; in any case run paths
to /dest/... are wrong.

I ask you guys to please dig out an old package that uses (a probably
older version of) libtool and that does not have this issue, and if you
find one, point me to it.  Only looking at it will allow me to decide
whether there is a Libtool regression involved or not.  Thank you.

Other than that, please read this thread:
http://lists.gnu.org/archive/html/libtool/2006-09/msg00062.html

I've said most of what I think is to say on this topic there as of now.
And I'm (slowly) working on improvement.  Note that any usage case that
is even the slightliest different than those I already know of, is
important to look at, so if you think you have a setup I haven't covered
there, by all means explain it to me (in detail), please.

 Ralf - sorry I came across so frustrated.  I just hate when
 tools stop me from doing what I know is correct.  That is,
 yes, once the app is released, the libraries *will* live
 where libtool wants them.  Just let me install them elsewhere
 and handle it.

Using the DESTDIR approach I showed should get you going.
If not then please come back and complain.  Don't use the --with-libdir
thingy if references to /dest/... are disallowed in the final installed
files.

And please note all the limitations I wrote about in the other thread.

Unless I get more precise data I can only assume that older libtool
versions just happened to work for some special cases; I don't think
they worked for the general case where `prefix' was set differently at
`make install' time.

Cheers,
Ralf


___
http://lists.gnu.org/mailman/listinfo/libtool


Re: cannot install...to a directory not ending in

2006-09-22 Thread Jeff Blaine

I tried DESTDIR.  It doesn't do what I want.  If I specify

% ./configure --prefix=/usr/local
% make
% make install DESTDIR=/blah/blah

...then the install process builds out /blah/blah/usr/local.
We can't use that.

Let me explain better what it is I am doing.

The players that are relevant to this particular issue:

1.  /afs/blah/dest/sun4x_59/local/bison/1875

The installed destination for a bison build.  We build
everything as follows, and always have:

./configure --prefix=/usr/local
make
make install prefix=/afs/blah/dest/sun4x_59/local/bison/1875

After that build, /afs/blah/dest/sun4x_59/local/bison/1875
looks like:

% ls
bin/info/   lib/man/share/
%

Disregard that I am using bison as an example.  It's only
an example.

2.  /afs/blah/gamma/sun4x_59/local

Our software repository for Solaris 9.  It looks like any
other common /usr/local tree.  It has bin, lib, man,
libexec, etc, and others.  These directories are populated
with whatever apps have been built and released so far.

What you also need to know is that there is a step used to
populate this area.  That step gathers ALL of the item 1
above areas and folds them into a single /usr/local like
item (/afs/blah/gamma/sun4x_59/local).

3.  /usr/local

A simple user interface to our software repository.
It is a symlink to /afs/blah/gamma/sun4x_59/local

I'm not in any way suggesting that you have changed something
in libtool recently that has broken this.  We have had trouble
with it for a long long time.  I think the use of libtool by
apps is just starting to reach a final critical point for us
and I'm forced to figure this out finally.  I couldn't begin
to tell you how I've fixed it before.  If I had to guess, I
bet I spent a half hour doing various things by hand.

For now, I will have to use --with-libdir and give that a shot
even though it is not workable for us in the medium-to-long
run.  I'll have to rebuild a bunch of things down the road
if libtool is changed to work with the situation above, but
I have no choice right now.  I have apps that need to be
built and released... last week.

I don't see anything in the previous thread that addresses this.

I don't mind being forced to run libtool with special options
nowadays, if I have to, in order to get everything straightened
out and happy.  As it is, libtool *stops* me in my tracks by
refusing to proceed because it doesn't like what I told it to
do (make install prefix=/some/new/place).

Please let me know if you need more information.

Ralf Wildenhues wrote:

* Jeff Blaine wrote on Fri, Sep 22, 2006 at 06:30:42PM CEST:

I will try --with-libdir, however I'm immediately concerned
that it's going to cause an additional problem:  We don't
want anything we build for /dest to have any references
to /dest/stow/package-package version (to use Ed's
example).


Yes, in that case you probably may not do that.  Note that unlike
--libdir, --with-libdir is not standardized in any way, so I don't
know what effect it would have on packages; in any case run paths
to /dest/... are wrong.

I ask you guys to please dig out an old package that uses (a probably
older version of) libtool and that does not have this issue, and if you
find one, point me to it.  Only looking at it will allow me to decide
whether there is a Libtool regression involved or not.  Thank you.

Other than that, please read this thread:
http://lists.gnu.org/archive/html/libtool/2006-09/msg00062.html

I've said most of what I think is to say on this topic there as of now.
And I'm (slowly) working on improvement.  Note that any usage case that
is even the slightliest different than those I already know of, is
important to look at, so if you think you have a setup I haven't covered
there, by all means explain it to me (in detail), please.


Ralf - sorry I came across so frustrated.  I just hate when
tools stop me from doing what I know is correct.  That is,
yes, once the app is released, the libraries *will* live
where libtool wants them.  Just let me install them elsewhere
and handle it.


Using the DESTDIR approach I showed should get you going.
If not then please come back and complain.  Don't use the --with-libdir
thingy if references to /dest/... are disallowed in the final installed
files.

And please note all the limitations I wrote about in the other thread.

Unless I get more precise data I can only assume that older libtool
versions just happened to work for some special cases; I don't think
they worked for the general case where `prefix' was set differently at
`make install' time.

Cheers,
Ralf





___
http://lists.gnu.org/mailman/listinfo/libtool


Re: cannot install...to a directory not ending in

2006-09-22 Thread Albert Chin
On Fri, Sep 22, 2006 at 05:26:07PM -0400, Jeff Blaine wrote:
 I tried DESTDIR.  It doesn't do what I want.  If I specify
 
 % ./configure --prefix=/usr/local
 % make
 % make install DESTDIR=/blah/blah
 
 ...then the install process builds out /blah/blah/usr/local.
 We can't use that.
 
 Let me explain better what it is I am doing.
 
 The players that are relevant to this particular issue:
 
 1.  /afs/blah/dest/sun4x_59/local/bison/1875
 
 The installed destination for a bison build.  We build
 everything as follows, and always have:
 
 ./configure --prefix=/usr/local
 make
 make install prefix=/afs/blah/dest/sun4x_59/local/bison/1875
 
 After that build, /afs/blah/dest/sun4x_59/local/bison/1875
 looks like:
 
 % ls
 bin/info/   lib/man/share/
 %
 
 Disregard that I am using bison as an example.  It's only
 an example.

Then how about:
  % ./configure --prefix=/
  % make
  % make install DESTDIR=/blah/blah

-- 
albert chin ([EMAIL PROTECTED])


___
http://lists.gnu.org/mailman/listinfo/libtool


Re: cannot install...to a directory not ending in

2006-09-22 Thread Albert Chin
On Fri, Sep 22, 2006 at 04:52:27PM -0500, Albert Chin wrote:
 On Fri, Sep 22, 2006 at 05:26:07PM -0400, Jeff Blaine wrote:
  I tried DESTDIR.  It doesn't do what I want.  If I specify
  
  % ./configure --prefix=/usr/local
  % make
  % make install DESTDIR=/blah/blah
  
  ...then the install process builds out /blah/blah/usr/local.
  We can't use that.
  
  Let me explain better what it is I am doing.
  
  The players that are relevant to this particular issue:
  
  1.  /afs/blah/dest/sun4x_59/local/bison/1875
  
  The installed destination for a bison build.  We build
  everything as follows, and always have:
  
  ./configure --prefix=/usr/local
  make
  make install prefix=/afs/blah/dest/sun4x_59/local/bison/1875
  
  After that build, /afs/blah/dest/sun4x_59/local/bison/1875
  looks like:
  
  % ls
  bin/info/   lib/man/share/
  %
  
  Disregard that I am using bison as an example.  It's only
  an example.
 
 Then how about:
   % ./configure --prefix=/
   % make
   % make install DESTDIR=/blah/blah

Sorry, disregard this foolish suggestion.

-- 
albert chin ([EMAIL PROTECTED])


___
http://lists.gnu.org/mailman/listinfo/libtool