[Libreoffice] Windows (MSVC) incremental build is broken.
Jan Holesovsky
kendy at suse.cz
Fri Dec 9 16:08:30 PST 2011
Hi Bjoern,
On 2011-12-05 at 12:42 +0100, Bjoern Michaelsen wrote:
> Well, there is a good reason for paths in GNU make to be unix-paths. You define
> a rule as:
>
> C:B
> true
>
> for target C depending on B. If you use windows native paths something like:
>
> C:B:D
> true
>
> is valid and can mean either target C depending on target B:D or target C:B
> depending on target D.
So of course, it is not a Windows-only problem; you can very well have a
Unx path containing a ':' too. In a Makefile, you can escape it with
'\', and it works just fine; so if we defined the OUTDIR as C
\:/ugh/blah, we might (TM) be fine.
> IIRC there are some heuristics in the DOS/Windows native
> version GNU make, but I am not even sure if cypath has those too (and as this
> is a cornercase: if they are reliable). Also, it is not only make itself that
> has to take care of this, but also the little Perlhelpers etc that fiddle with
> this. IMHO, keeping the paths unixy is the safest bet.
Well - I'm just aware of the growing amount of
ifeq($(OS),WNT)
something $(shell cygpath -m $(OUTDIR)/ugh)
else
something $(OUTDIR)/ugh
endif
which makes the buildsystem overall ugly ;-) But yeah, I'm not going to
attempt to clean that up short-term, so probably let's let this
gbuild/build.pl unwanted interaction as a warning that this might
potentially bite us at some stage again.
Regards,
Kendy
More information about the LibreOffice
mailing list