tests: compile and link shared object with $CC to make LD_PRELOAD work
authorBernhard Voelker <mail@bernhard-voelker.de>
Mon, 27 Feb 2012 20:13:10 +0000 (21:13 +0100)
committerJim Meyering <meyering@redhat.com>
Wed, 29 Feb 2012 09:01:50 +0000 (10:01 +0100)
* tests/ls/getxattr-speedup: Compile and link in one step with $CC.
If the shared object file is created by ld (binutils), then the
destructor print_call_count() may not run (seen on OpenSuSE 12.1).
See http://lists.opensuse.org/opensuse/2012-02/msg01342.html
Thanks to Cristian Rodríguez.

tests/ls/getxattr-speedup

index d32e24a..967f7c9 100755 (executable)
@@ -47,8 +47,8 @@ ssize_t lgetxattr(const char *path, const char *name, void *value, size_t size)
 EOF
 
 # Then compile/link it:
-$CC -fPIC -O2 -c k.c || framework_failure_ 'failed to compile with -fPIC'
-ld -G k.o -o k.so || framework_failure_ 'failed to invoke ld -G ...'
+$CC -shared -fPIC -O2 k.c -o k.so \
+  || framework_failure_ 'failed to compile with -shared -fPIC'
 
 # Create a few files:
 seq 20 | xargs touch || framework_failure_