Honor DESTDIR in w32api and mingw

Charles Wilson cygwin@cwilson.fastmail.fm
Sun Oct 18 17:58:00 GMT 2009

Eric Blake wrote:

> Well, that won't happen unless Keith starts a thread on the autoconf list
> giving suggestions on how he thinks it can be fixed.  Complaining on the
> subscriber-only mingw is the wrong approach to get autoconf to even be
> aware of his complaint or ideas for improvement (not that me replying on
> the cygwin-patches list is any better ;)

IMO, he wasn't really serious about that "proposal" -- and even if it
were, he wanted /me/ to run point on it, not himself.  It was more of a
"sure, I'll let you drive my car just as soon as you get a law passed by
every country in the world and the UN, granting me personal ownership of
the moon".

Data point: even Keith's "proposal":
> That said, I will offer you an 
> accommodation: you convince the automake maintainers to fix their 
> broken implementation, such that the paradigm becomes
>   $(SYSDRIVE)$(DESTDIR)$(prefix)...
> and so forth, the autoconf maintainers to provide a standard macro to 
> set SYSDRIVE appropriately for native Windows hosts, and both to 
> promote the use of this paradigm among those projects wishing to 
> support DESTDIR, and I will withdraw my objection.

won't solve the problem (for DESTDIR + mingw).  We've (the mingw team)
always recommended that users configure using "--prefix=`cd /posix/path
&& pwd -W`" under MSYS, which results in "$(prefix)=C:/mount/point/path"
(I don't know what Keith uses for --prefix when configuring in his
customary cross-build environment).  So, even if SYSDRIVE itself is
accommodated, you'd have to *rewrite* $prefix behind the user's back,
removing its X: component if present. Plus, if $DESTDIR also contains a
sysdrive, which one do you use?  Either choice will cause problems...

No way that sort of thing would fly with the auto* teams, and I reckon
Keith knows that.  Hence, not a serious proposal.

IMO, his real goal is to "encourage" (force) everyone to stop using
DESTDIR altogether. I admit, he has a point: the FSF only requires that
'make install prefix=/new/prefix' work; they impose no such requirement
concerning DESTDIR -- probably because it just doesn't work on some
platforms like mingw.  But I object to the 'leveraging' he's using here:
by refusing to allow DESTDIR in winsup/mingw, he makes it so that we
(cygwin) might as well expunge DESTDIR from winsup/*/ entirely --
because DESTDIR is useless from $(build)/i686-pc-cygwin/winsup.

But that's his unilateralism forcing /our/ decisions, and I object to
that, without a more grounded reason than, as Ralf put it, "when users
look at our (mingw's) makefiles, they might think it could work".


More information about the Cygwin-patches mailing list