2 # Cheesy hacky location of additional link libraries.
4 locate_library
() { [ ! "$1*" = "`echo $1*`" ]; }
5 find_func
() { egrep $1 $2 >/dev
/null
; }
7 if find_func hosts_access tcpwrap.o
; then
9 locate_library
/lib
/libnsl.so
&& echo "-lnsl";
10 locate_library
/lib64
/libnsl.so
&& echo "-lnsl";
13 # Look for PAM (done weirdly due to distribution bugs (e.g. Debian) or the
15 if find_func pam_start sysdeputil.o
; then
16 locate_library
/lib
/libpam.so
.0 && echo "/lib/libpam.so.0";
17 locate_library
/usr
/lib
/libpam.so
&& echo "-lpam";
18 locate_library
/usr
/lib64
/libpam.so
&& echo "-lpam";
19 locate_library
/lib
/x86_64-linux-gnu
/libpam.so
.0 && echo "-lpam";
20 # HP-UX ends shared libraries with .sl
21 locate_library
/usr
/lib
/libpam.sl
&& echo "-lpam";
22 # AIX ends shared libraries with .a
23 locate_library
/usr
/lib
/libpam.a
&& echo "-lpam";
25 locate_library
/lib
/libcrypt.so
&& echo "-lcrypt";
26 locate_library
/usr
/lib
/libcrypt.so
&& echo "-lcrypt";
27 locate_library
/usr
/lib64
/libcrypt.so
&& echo "-lcrypt";
28 locate_library
/lib
/x86_64-linux-gnu
/libcrypt.so
&& echo "-lcrypt";
31 # Look for the dynamic linker library. Needed by older RedHat when
33 locate_library
/lib
/libdl.so
&& echo "-ldl";
35 # Look for libsocket. Solaris needs this.
36 locate_library
/lib
/libsocket.so
&& echo "-lsocket";
38 # Look for libnsl. Solaris needs this.
39 locate_library
/lib
/libnsl.so
&& echo "-lnsl";
41 # Look for libresolv. Solaris needs this.
42 locate_library
/lib
/libresolv.so
&& echo "-lresolv";
44 # Look for libutil. Older FreeBSD need this for setproctitle().
45 locate_library
/usr
/lib
/libutil.so
&& echo "-lutil";
48 locate_library
/usr
/lib
/libsec.sl
&& echo "-lsec";
50 # Look for libcap (capabilities)
51 if locate_library
/lib
/libcap.so
.1; then
52 echo "/lib/libcap.so.1";
53 elif locate_library
/lib
/libcap.so
.2; then
54 echo "/lib/libcap.so.2";
56 locate_library
/usr
/lib
/libcap.so
&& echo "-lcap";
57 locate_library
/lib
/libcap.so
&& echo "-lcap";
58 locate_library
/lib64
/libcap.so
&& echo "-lcap";
61 # Solaris needs this for nanosleep()..
62 locate_library
/lib
/libposix4.so
&& echo "-lposix4";
63 locate_library
/usr
/lib
/libposix4.so
&& echo "-lposix4";
66 locate_library
/usr
/shlib
/librt.so
&& echo "-lrt";
69 locate_library
/usr
/lib
/libsendfile.so
&& echo "-lsendfile";
72 if find_func SSL_library_init ssl.o
; then
73 echo "-lssl -lcrypto";