]> ruderich.org/simon Gitweb - blhc/blhc.git/commitdiff
Correctly detect linking for CGI binaries (e.g. test.cgi).
authorSimon Ruderich <simon@ruderich.org>
Sat, 17 Mar 2012 21:25:41 +0000 (22:25 +0100)
committerSimon Ruderich <simon@ruderich.org>
Sat, 17 Mar 2012 21:25:41 +0000 (22:25 +0100)
bin/blhc
t/logs/bad-library
t/logs/good-library
t/tests.t

index d089931fa04de504f151fdda83a87c4cf7352f60..9430479bd435828153e6efc13d5401593fb88a1d 100755 (executable)
--- a/bin/blhc
+++ b/bin/blhc
@@ -414,7 +414,8 @@ for (my $i = 0; $i < scalar @input; $i++) {
                    (?:[/.A-Za-z0-9~_-]+/)?     # path to file
                         [A-Za-z0-9~_-]+        # binary name (no dots!)
                    (?:[0-9.]*\.so[0-9.]*[a-z]? # library (including version)
-                    |\.la)?
+                    |\.la
+                    |\.cgi)?                   # CGI binary
                    (?:\s|\\|$)                 # end of file name
                   }x
             or $line =~ /^libtool: link: /
index 831afd9183bb97bdee6147511f8267e367b7a220..383a8dbb729955a10480fc4d8ce306436fdbe2fe 100644 (file)
@@ -8,3 +8,5 @@ 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
 /usr/bin/g++ -shared -fpic -o libtest-6.1.so.0 test.o -ltiff -lz
+
+gcc -Wl,--as-needed  -fPIE -pie -o test.cgi test.o -lgcrypt
index 7d6a0ec88fce38575024ffa09a24710385c31a65..a104f0d96934ccd8b85a39c5f8704206fd065792 100644 (file)
@@ -9,3 +9,5 @@ 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
 /usr/bin/g++ -shared -fpic -Wl,-z,relro -Wl,-z,now -o libtest-6.1.so.0 test.o -ltiff -lz
+
+gcc -Wl,-z,now -Wl,-z,relro -Wl,--as-needed  -fPIE -pie -o test.cgi test.o -lgcrypt
index fa1eab87568111246d4400952de117dd20a27de8..f336cada2773e6e5afff5780c616a3d9aa19d3ca 100644 (file)
--- a/t/tests.t
+++ b/t/tests.t
@@ -296,6 +296,7 @@ LDFLAGS missing (-Wl,-z,relro -Wl,-z,now): gcc -shared -fPIC -DPIC libtest.o -lp
 LDFLAGS missing (-Wl,-z,now): gcc -shared -fPIC test.o -Wl,-z -Wl,relro -o .libs/libtest.so.1.0.0
 LDFLAGS missing (-fPIE -pie -Wl,-z,relro): gcc -shared -o libtest.so.0d ./test-a.o test/./test-b.o -Wl,-z,now -lpthread -ldl
 LDFLAGS missing (-Wl,-z,relro -Wl,-z,now): /usr/bin/g++ -shared -fpic -o libtest-6.1.so.0 test.o -ltiff -lz
+LDFLAGS missing (-Wl,-z,relro -Wl,-z,now): gcc -Wl,--as-needed  -fPIE -pie -o test.cgi test.o -lgcrypt
 ';