vsf_findlibs.sh
上传用户:ig0539
上传日期:2022-05-21
资源大小:181k
文件大小:2k
- #!/bin/sh
- # Cheesy hacky location of additional link libraries.
- locate_library() { [ ! "$1*" = "`echo $1*`" ]; }
- find_func() { egrep $1 $2 >/dev/null; }
- if find_func hosts_access tcpwrap.o; then
- echo "-lwrap";
- locate_library /lib/libnsl.so && echo "-lnsl";
- locate_library /lib64/libnsl.so && echo "-lnsl";
- fi
- # Look for PAM (done weirdly due to distribution bugs (e.g. Debian) or the
- # crypt library.
- if find_func pam_start sysdeputil.o; then
- locate_library /lib/libpam.so.0 && echo "/lib/libpam.so.0";
- locate_library /usr/lib/libpam.so && echo "-lpam";
- locate_library /usr/lib64/libpam.so && echo "-lpam";
- # HP-UX ends shared libraries with .sl
- locate_library /usr/lib/libpam.sl && echo "-lpam";
- # AIX ends shared libraries with .a
- locate_library /usr/lib/libpam.a && echo "-lpam";
- else
- locate_library /lib/libcrypt.so && echo "-lcrypt";
- locate_library /usr/lib/libcrypt.so && echo "-lcrypt";
- locate_library /usr/lib64/libcrypt.so && echo "-lcrypt";
- fi
- # Look for the dynamic linker library. Needed by older RedHat when
- # you link in PAM
- locate_library /lib/libdl.so && echo "-ldl";
- # Look for libsocket. Solaris needs this.
- locate_library /lib/libsocket.so && echo "-lsocket";
- # Look for libnsl. Solaris needs this.
- locate_library /lib/libnsl.so && echo "-lnsl";
- # Look for libresolv. Solaris needs this.
- locate_library /lib/libresolv.so && echo "-lresolv";
- # Look for libutil. Older FreeBSD need this for setproctitle().
- locate_library /usr/lib/libutil.so && echo "-lutil";
- # For older HP-UX...
- locate_library /usr/lib/libsec.sl && echo "-lsec";
- # Look for libcap (capabilities)
- if locate_library /lib/libcap.so.1; then
- echo "/lib/libcap.so.1";
- elif locate_library /lib/libcap.so.2; then
- echo "/lib/libcap.so.2";
- else
- locate_library /usr/lib/libcap.so && echo "-lcap";
- locate_library /lib/libcap.so && echo "-lcap";
- locate_library /lib64/libcap.so && echo "-lcap";
- fi
- # Solaris needs this for nanosleep()..
- locate_library /lib/libposix4.so && echo "-lposix4";
- locate_library /usr/lib/libposix4.so && echo "-lposix4";
- # Tru64 (nanosleep)
- locate_library /usr/shlib/librt.so && echo "-lrt";
- # Solaris sendfile
- locate_library /usr/lib/libsendfile.so && echo "-lsendfile";
- # OpenSSL
- if find_func SSL_library_init ssl.o; then
- echo "-lssl -lcrypto";
- fi
- exit 0;