ID: 42374 Updated by: [EMAIL PROTECTED] Reported By: galtgendo at o2 dot pl -Status: Assigned +Status: Bogus Bug Type: Feature/Change Request Operating System: Gentoo PHP Version: 5.2CVS-2007-08-23 Assigned To: jani New Comment:
If somewhere in configure are places where LDFLAGS is populated with -l entries, point them out in separate bug reports. Closing this as bogus. Previous Comments: ------------------------------------------------------------------------ [2007-12-10 18:42:05] galtgendo at o2 dot pl OK, I did some more reading on autotools. A quote from autoconf info page: -- Variable: LDFLAGS ... This variable's contents should contain options like `-s' and `-L' that affect only the behavior of the linker. ... Don't use this variable to pass library names (`-l') to the linker; use `LIBS' instead. So title of this bug should be something along the lines of: 'rewrite your macros to conform to specs instead of simply work' While doing that it may be a good idea to split all those libraries into groups, so every extension (and php itself) doesn't get linked with every libs needed for other extentions. ------------------------------------------------------------------------ [2007-11-06 12:26:45] galtgendo at o2 dot pl Please disregard most of my last comment, I misunderstood something. I thought that --as-needed prevents linking with unused libraries, but it only marks them as unused, so above listings of ldd -u mean that it actually works, not the opposite. Anyway, what was exactly the problem that --preserve-dup-defs works around, cause the note in configure.in says only that there was a problem with older libtool, not what was it ? ------------------------------------------------------------------------ [2007-11-05 22:49:15] galtgendo at o2 dot pl There's a funny thing, though. Command that built in example tidy.so was : /bin/sh /var/tmp/portage/dev-lang/php-5.2.4_p20070914-r2/work/php-5.2.4_p2007091 4/libtool --silent --preserve-dup-deps --mode=link /var/tmp/portage/dev-lang/php -5.2.4_p20070914-r2/work/php-5.2.4_p20070914/meta_ccld -DPHP_ATOM_INC -I/var/tmp /portage/dev-lang/php-5.2.4_p20070914-r2/work/php-5.2.4_p20070914/include -I/var /tmp/portage/dev-lang/php-5.2.4_p20070914-r2/work/php-5.2.4_p20070914/main -I/va r/tmp/portage/dev-lang/php-5.2.4_p20070914-r2/work/php-5.2.4_p20070914 -I/usr/in clude/libxml2 -I/var/tmp/portage/dev-lang/php-5.2.4_p20070914-r2/work/php-5.2.4_ p20070914/ext/date/lib -I/usr/include/freetype2 -I/usr/include/imap -I/var/tmp/p ortage/dev-lang/php-5.2.4_p20070914-r2/work/php-5.2.4_p20070914/ext/mbstring/oni guruma -I/var/tmp/portage/dev-lang/php-5.2.4_p20070914-r2/work/php-5.2.4_p200709 14/ext/mbstring/libmbfl -I/var/tmp/portage/dev-lang/php-5.2.4_p20070914-r2/work/ php-5.2.4_p20070914/ext/mbstring/libmbfl/mbfl -I/usr/include/mysql -I/usr/includ e/postgresql/libpq-4 -I/usr/include/pspell -I/var/tmp/portage/dev-lang/php-5.2.4 _p20070914-r2/work/php-5.2.4_p20070914/TSRM -I/var/tmp/portage/dev-lang/php-5.2.4_p20070914-r2/work/php-5.2.4_p20070914/Zend -D_REENTRANT -I/usr/include -O2 -march=athlon -mtune=athlon -pipe -pthread -DZTS -Wl,-O1 -Wl,--as-needed -Wl,--sort-common -Wl,-z,relro -o ext/tidy/tidy.la -export-dynamic -avoid-version -prefer-pic -module -rpath /var/tmp/portage/dev-lang/php-5.2.4_p20070914-r2/work/php-5.2.4_p20070914/modules -avoid-version -module ext/tidy/tidy.lo -ltidy -lcrypt -lcrypt -lsqlite -lhistory -lreadline -lncurses -lresolv -lm -ldl -lnsl -lxml2 -lz -lm -lgssapi -lkrb5 -lcom_err -lssl -lcrypto -ldl -lxml2 -lz -lm -lxml2 -lz -lm -lcrypt -lxml2 -lz -lm -lxml2 -lz -lm -lxml2 -lz -lm -lcrypt so theoretically it should not have those dependencies, unless --preserve-dup-deps messes that up. I think I'll test this theory. Of course, this is a completely separate issue to the one this bug is about. ------------------------------------------------------------------------ [2007-11-05 21:39:39] galtgendo at o2 dot pl This may seem like nagging, but I wonder how are things comming along. And to add my 2c: ldd -u /usr/lib/php5/lib/php/extensions/no-debug-zts-20060613/tidy.so Unused direct dependencies: /usr/lib/libtidy-0.99.so.0 /lib/libcrypt.so.1 /usr/lib/libsqlite.so.0 /lib/libhistory.so.5 /lib/libreadline.so.5 /lib/libncurses.so.5 /lib/libresolv.so.2 /lib/libm.so.6 /lib/libdl.so.2 /lib/libnsl.so.1 /lib/libz.so.1 libgssapi.so.1 /usr/lib/libkrb5.so.22 /lib/libcom_err.so.2 /usr/lib/libssl.so.0.9.8 /usr/lib/libcrypto.so.0.9.8 /usr/lib/libxml2.so.2 /lib/libpthread.so.0 ldd -u /usr/lib/php5/lib/php/extensions/no-debug-zts-20060613/zlib.so Unused direct dependencies: /lib/libz.so.1 /lib/libcrypt.so.1 /usr/lib/libsqlite.so.0 /lib/libhistory.so.5 /lib/libreadline.so.5 /lib/libncurses.so.5 /lib/libresolv.so.2 /lib/libm.so.6 /lib/libdl.so.2 /lib/libnsl.so.1 libgssapi.so.1 /usr/lib/libkrb5.so.22 /lib/libcom_err.so.2 /usr/lib/libssl.so.0.9.8 /usr/lib/libcrypto.so.0.9.8 /usr/lib/libxml2.so.2 /lib/libpthread.so.0 And for comparison: ldd -u /usr/lib/php5/lib/php/extensions/no-debug-zts-20060613/gd.so Unused direct dependencies: /usr/lib/libfreetype.so.6 /lib/libcrypt.so.1 /usr/lib/libsqlite.so.0 /lib/libhistory.so.5 /lib/libreadline.so.5 /lib/libncurses.so.5 /lib/libresolv.so.2 /lib/libm.so.6 /lib/libdl.so.2 /lib/libnsl.so.1 /lib/libz.so.1 libgssapi.so.1 /usr/lib/libkrb5.so.22 /lib/libcom_err.so.2 /usr/lib/libssl.so.0.9.8 /usr/lib/libcrypto.so.0.9.8 /usr/lib/libxml2.so.2 /lib/libpthread.so.0 ldd -u /usr/bin/php Unused direct dependencies: /lib/libcrypt.so.1 /usr/lib/libsqlite.so.0 /lib/libhistory.so.5 /lib/libm.so.6 /lib/libdl.so.2 /usr/lib/libroken.so.18 /lib/libresolv.so.2 /lib/libpthread.so.0 /usr/lib/libssl.so.0.9.8 ------------------------------------------------------------------------ [2007-08-24 07:44:54] [EMAIL PROTECTED] And we're not trying to fix the faulty 3rd party libraries here, are we? :) ------------------------------------------------------------------------ The remainder of the comments for this report are too long. To view the rest of the comments, please view the bug report online at http://bugs.php.net/42374 -- Edit this bug report at http://bugs.php.net/?id=42374&edit=1