[prev in list] [next in list] [prev in thread] [next in thread] 

List:       mingw-users
Subject:    Re: [Mingw-users] Re: Automake and GCS
From:       Keith MARSHALL <keith.marshall () total ! com>
Date:       2005-11-25 10:59:52
Message-ID: OF05A4CE15.99BBF6F1-ON802570C4.0035DCA0-802570C4.003C69D6 () total ! com
[Download RAW message or body]

Ralf Wildenhues wrote:
> In any case, there is another (good?) reason for DESTDIR over
> changing prefix upon installation: DESTDIR allows the user to
> adjust _all_ paths at once, and be certain the paths do not end
> up in the installed files.
> E.g., I can
>   configure --prefix=/usr/local --sysconfdir=/etc [...]
>   make all install DESTDIR=/tmp/staging
>
> when I am not root, for example; without having to reset all
> other paths I might have specified explicitly.  Surely that is
> a convenience (for the *user*, not the developer) rather than a
> technical necessity, ...

I will concede that DESTDIR may offer some convenience to a 
miniscule minority of users, who habitually force some of the
autoconf standard path declarations to be independent of prefix,
and then install to a location to be subsequently accessed via
chroot, but ...

> and surely it does not work with w32 paths.

It is neither use nor ornament in the Win32 arena, or for that
matter the MS-DOS arena;  in both of these arenas, it is utterly
broken.  Here, if a Makefile includes any installation command
specifying a destination relative to $(DESTDIR)$(prefix), or indeed
any other Makefile variable such as $(bindir), which is dependent
on $(prefix), it is imperative that DESTDIR is *never* assigned
any value, other than the empty string.

That said, and while I remain unconvinced that DESTDIR is anything
more that an ugly kludge, of limited utility, it is harmless if it
is used only in installation rules, *exactly* in the habitual form
`$(DESTDIR)$(prefix)', and it is subsequently ignored altogether,
so I really don't want to debate the issue further.

> Funnily, it was you [Earnie] who seemed to state a while ago that
> MSYS could be used to circumvent this.  :)
>  http://lists.gnu.org/archive/html/autoconf/2003-01/msg00031.html

I can't speak for Earnie, but my guess is that when he wrote that,
he was thinking along the lines of "MSYS understands the convention
that `/c/local/bin' represents the Win32 native `C:/local/bin', so,
if I specify `--prefix=/c/local', then any installation rule using
`DESTDIR=/d/tmp' would resolve to an MSYS path of `/d/local/c/local';
this in turn would resolve to the Win32 path `D:/local/c/local',
which could represent a real Win32 path".  More recent experience
has taught us that we really need to specify prefix as a real Win32
path, e.g. `--prefix=C:/local', because the MSYS specific `/c/local'
is invalid in the context of the native Win32 application which we
are using MinGW to build, even though it *is* valid in the MSYS
context in which we perform the build, and is therefore understood,
and appropriately resolved by msys-make.

> For more information on why DESTDIR may be useful for some people,
> see e.g. this thread[2].
>  http://gcc.gnu.org/ml/libstdc++/2003-01/msg00085.html

Well, I've read that, and I see nothing which would even begin to
convince me that DESTDIR has any practical value.

Regards,
Keith.


-------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc. Do you grep through log files
for problems?  Stop!  Download the new AJAX search engine that makes
searching your log files as easy as surfing the  web.  DOWNLOAD SPLUNK!
http://ads.osdn.com/?ad_id=7637&alloc_id=16865&op=click
_______________________________________________
MinGW-users mailing list
MinGW-users@lists.sourceforge.net

You may change your MinGW Account Options or unsubscribe at:
https://lists.sourceforge.net/lists/listinfo/mingw-users
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic