some thoughts on win32 'make install'

Thiago Macieira thiago at macieira.org
Fri Oct 11 09:11:47 UTC 2013


On sexta-feira, 11 de outubro de 2013 18:44:20, Lubomir I. Ivanov wrote:
> but if i don't set 'gcc' instead of $(CC) here:
> dlls.commands += PATH=\$\$PATH:`$(CC) -print-search-dirs | sed -nE
> \'/^libraries: =/{s///;s,/lib/?(:|\\\$\$),/bin\\1,g;p;q;}\'`
> 
> i get a:
> /bin/sh: cc: command not found
> 
> this is the resulted line in the dll rule:
> PATH=$$PATH:`$(CC) -print-search-dirs | sed -nE '/^libraries:
> =/{s///;s,/lib/?(:|\$$),/bin\1,g;p;q;}'` perl
> C:/dev/subsurface/scripts/win-ldd.pl $(DESTDIR_TARGET)
> C:\bin\Qt\4.8.5\plugins/imageformats/qjpegd4.dll
> -L/dev/linux_lib/libdivecomputer/lib -ldivecomputer-win32
> -L/dev/linux_lib/libxml/lib -lxml2-2 -L/dev/linux_lib/libxslt/lib
> -lxslt-1 -lmarblewidgetd -lwsock32 | while read name; do
> $(INSTALL_FILE) $$name C:/dev/subsurface/packaging/windows; done
> 
> could be a bug in make.

Looks like it. But it's easy to fix. We can change the rule to use $$QMAKE_CC 
instead.

> > Yup. But I need a way to detect system DLLs that we don't want to ship
> > and,
> > thus, are allowed to be missing.
> 
> perhaps, if the DLL exists in PATH and the current scanned directory
> from PATH contains "system32" in the name, then it's a system DLL and
> should not be reported.

I need a way to do that on a cross-build environment, where there is no 
system32. The DLL files *are* missing.

-- 
Thiago Macieira - thiago (AT) macieira.info - thiago (AT) kde.org
   Software Architect - Intel Open Source Technology Center
      PGP/GPG: 0x6EF45358; fingerprint:
      E067 918B B660 DBD1 105C  966C 33F5 F005 6EF4 5358
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 190 bytes
Desc: This is a digitally signed message part.
URL: <http://lists.hohndel.org/pipermail/subsurface/attachments/20131011/5f5c32eb/attachment.sig>


More information about the subsurface mailing list