]> ruderich.org/simon Gitweb - blhc/blhc.git/commitdiff
Accept libraries which end with a character (e.g. .so.0d).
authorSimon Ruderich <simon@ruderich.org>
Thu, 15 Mar 2012 17:10:40 +0000 (18:10 +0100)
committerSimon Ruderich <simon@ruderich.org>
Thu, 15 Mar 2012 17:10:40 +0000 (18:10 +0100)
bin/blhc
t/logs/bad-library
t/logs/good-library
t/tests.t

index b99e7dc813eea3fe8ece2a0e62a04194fc792b34..d662283e4b9a2e2e0f768fee4e8bd158954f934b 100755 (executable)
--- a/bin/blhc
+++ b/bin/blhc
@@ -279,7 +279,7 @@ foreach my $line (@input) {
                    [\s\\]*\s+            # possible line continuation
                    ([A-Za-z0-9_/.-]+/)?  # path to file
                    [A-Za-z0-9_-]+        # binary name (no dots!)
-                   (\.so([0-9.])*|\.la)? # library (including version)
+                   (\.so[0-9.]*[a-z]?|\.la)? # library (including version)
                    (\s|\\|\$)            # end of file name
                   }x
             or $line =~ /^libtool: link: /
index 042c58da3748729ab16d097bf5b217fb714a0a73..8ddd78c637ec706f90a09641a5700d541a8d8c22 100644 (file)
@@ -3,3 +3,5 @@ gcc -shared -fPIC -DPIC libtest.o -lpthread -O2 -Wl,relro -Wl,--as-needed -o lib
 gcc -shared -fPIC -DPIC libtest.o -lpthread -O2 -Wl,--as-needed -o libtest.so
 
 gcc -shared -fPIC test.o -Wl,-z -Wl,relro -o .libs/libtest.so.1.0.0
+
+gcc -shared -o libtest.so.0d ./test-a.o test/./test-b.o -Wl,-z,now -lpthread -ldl
index c077840de1d2dd713944bd14fbfc025cf332b821..76d461f1212a5b37be61bb1eeebe42fbf65e39de 100644 (file)
@@ -4,3 +4,5 @@ gcc -D_FORTIFY_SOURCE=2 -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wfor
 gcc -shared -fPIC -DPIC libtest.o -lpthread -O2 -Wl,relro -Wl,now -Wl,--as-needed -o libtest.so
 
 gcc -shared -fPIC test.o -Wl,-z -Wl,relro -Wl,now -o .libs/libtest.so.1.0.0
+
+gcc -shared -fPIE -pie -o libtest.so.0d ./test-a.o test/./test-b.o -Wl,-z,relro -Wl,-z,now -lpthread -ldl
index 0509a973be7297076bb66b797e8a7d80d4a17c86..2aea3be4ffea123f2a680167d3a52f07fc865626 100644 (file)
--- a/t/tests.t
+++ b/t/tests.t
@@ -287,6 +287,7 @@ is_blhc 'bad-library', '--all', 4,
 LDFLAGS missing (-Wl,-z,now): gcc -shared -fPIC -DPIC libtest.o -lpthread -O2 -Wl,relro -Wl,--as-needed -o libtest.so
 LDFLAGS missing (-Wl,-z,relro -Wl,-z,now): gcc -shared -fPIC -DPIC libtest.o -lpthread -O2 -Wl,--as-needed -o libtest.so
 LDFLAGS missing (-Wl,-z,now): gcc -shared -fPIC test.o -Wl,-z -Wl,relro -o .libs/libtest.so.1.0.0
+LDFLAGS missing (-Wl,-z,relro -fPIE -pie): gcc -shared -o libtest.so.0d ./test-a.o test/./test-b.o -Wl,-z,now -lpthread -ldl
 ";