vsf_findlibs.sh
上传用户:ig0539
上传日期:2022-05-21
资源大小:181k
文件大小:2k
源码类别:

Ftp客户端

开发平台:

C/C++

  1. #!/bin/sh
  2. # Cheesy hacky location of additional link libraries.
  3. locate_library() { [ ! "$1*" = "`echo $1*`" ]; }
  4. find_func() { egrep $1 $2 >/dev/null; }
  5. if find_func hosts_access tcpwrap.o; then
  6.   echo "-lwrap";
  7.   locate_library /lib/libnsl.so && echo "-lnsl";
  8.   locate_library /lib64/libnsl.so && echo "-lnsl";
  9. fi
  10. # Look for PAM (done weirdly due to distribution bugs (e.g. Debian) or the
  11. # crypt library.
  12. if find_func pam_start sysdeputil.o; then
  13.   locate_library /lib/libpam.so.0 && echo "/lib/libpam.so.0";
  14.   locate_library /usr/lib/libpam.so && echo "-lpam";
  15.   locate_library /usr/lib64/libpam.so && echo "-lpam";
  16.   # HP-UX ends shared libraries with .sl
  17.   locate_library /usr/lib/libpam.sl && echo "-lpam";
  18.   # AIX ends shared libraries with .a
  19.   locate_library /usr/lib/libpam.a && echo "-lpam";
  20. else
  21.   locate_library /lib/libcrypt.so && echo "-lcrypt";
  22.   locate_library /usr/lib/libcrypt.so && echo "-lcrypt";
  23.   locate_library /usr/lib64/libcrypt.so && echo "-lcrypt";
  24. fi
  25. # Look for the dynamic linker library. Needed by older RedHat when
  26. # you link in PAM
  27. locate_library /lib/libdl.so && echo "-ldl";
  28. # Look for libsocket. Solaris needs this.
  29. locate_library /lib/libsocket.so && echo "-lsocket";
  30. # Look for libnsl. Solaris needs this.
  31. locate_library /lib/libnsl.so && echo "-lnsl";
  32. # Look for libresolv. Solaris needs this.
  33. locate_library /lib/libresolv.so && echo "-lresolv";
  34. # Look for libutil. Older FreeBSD need this for setproctitle().
  35. locate_library /usr/lib/libutil.so && echo "-lutil";
  36. # For older HP-UX...
  37. locate_library /usr/lib/libsec.sl && echo "-lsec";
  38. # Look for libcap (capabilities)
  39. if locate_library /lib/libcap.so.1; then
  40.   echo "/lib/libcap.so.1";
  41. elif locate_library /lib/libcap.so.2; then
  42.   echo "/lib/libcap.so.2";
  43. else
  44.   locate_library /usr/lib/libcap.so && echo "-lcap";
  45.   locate_library /lib/libcap.so && echo "-lcap";
  46.   locate_library /lib64/libcap.so && echo "-lcap";
  47. fi
  48. # Solaris needs this for nanosleep()..
  49. locate_library /lib/libposix4.so && echo "-lposix4";
  50. locate_library /usr/lib/libposix4.so && echo "-lposix4";
  51. # Tru64 (nanosleep)
  52. locate_library /usr/shlib/librt.so && echo "-lrt";
  53. # Solaris sendfile
  54. locate_library /usr/lib/libsendfile.so && echo "-lsendfile";
  55. # OpenSSL
  56. if find_func SSL_library_init ssl.o; then
  57.   echo "-lssl -lcrypto";
  58. fi
  59. exit 0;