From e6c00075802eec73e93922c44561224df1f38eab Mon Sep 17 00:00:00 2001 From: Harald Welte Date: Mon, 12 Dec 2022 10:08:04 +0100 Subject: [PATCH] cr16boot/curl: remove generated/compiled files from git index --- src/dialog/cr16boot/image452.bin | Bin 88916 -> 0 bytes src/dialog/cr16boot/image452_service.bin | Bin 88876 -> 0 bytes src/dialog/cr16boot/include/config.h | 7 - src/dialog/cr16boot/tools/assemble_image_full | Bin 6984 -> 0 bytes src/dialog/cr16boot/tools/image.bin | Bin 88876 -> 0 bytes src/dialog/cr16boot/tools/sc14452boot.bin | Bin 84780 -> 0 bytes src/opensource/curl/include/curl/curlbuild.h | 198 - src/opensource/curl/lib/curl_config.h | 1037 -- src/opensource/curl/libtool | 10083 ---------------- 9 files changed, 11325 deletions(-) delete mode 100644 src/dialog/cr16boot/image452.bin delete mode 100644 src/dialog/cr16boot/image452_service.bin delete mode 100644 src/dialog/cr16boot/include/config.h delete mode 100755 src/dialog/cr16boot/tools/assemble_image_full delete mode 100644 src/dialog/cr16boot/tools/image.bin delete mode 100755 src/dialog/cr16boot/tools/sc14452boot.bin delete mode 100644 src/opensource/curl/include/curl/curlbuild.h delete mode 100644 src/opensource/curl/lib/curl_config.h delete mode 100755 src/opensource/curl/libtool diff --git a/src/dialog/cr16boot/image452.bin b/src/dialog/cr16boot/image452.bin deleted file mode 100644 index 732a9a3f74cfae38edbadf8a452797c8019c6118..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 88916 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 b1y|I|s7H1D71c`AqfP?%gmdwK3-J1XKt<<7 diff --git a/src/dialog/cr16boot/include/config.h b/src/dialog/cr16boot/include/config.h deleted file mode 100644 index 36319e25..00000000 --- a/src/dialog/cr16boot/include/config.h +++ /dev/null @@ -1,7 +0,0 @@ -#include -// -//Changes introduced by Gigaset Elements GmbH: -//Modification date: 2013-10-31 10:54:49.758887653 -//@@ -1 +1 @@ -//-#include -//+#include diff --git a/src/dialog/cr16boot/tools/assemble_image_full b/src/dialog/cr16boot/tools/assemble_image_full deleted file mode 100755 index 301ae44f0ef15f6d85723f6bb91a87bf4ef663a7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6984 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 diff --git a/src/dialog/cr16boot/tools/image.bin b/src/dialog/cr16boot/tools/image.bin deleted file mode 100644 index e3e7bcb644d23522d7933e5bc5729966146f0393..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 88876 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 b1y|I|s7H1D71c`AqfP?%gmdwK3-J1XKt<<7 diff --git a/src/dialog/cr16boot/tools/sc14452boot.bin b/src/dialog/cr16boot/tools/sc14452boot.bin deleted file mode 100755 index e8c7ef0c83b42a0f79d6a038fe9fb5b23f1875a6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 84780 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

<2x`RP z5;=|M;Sv>%7F=Se@d8}pMU9u>5-)4K3YU0Y;|;jPn;LJyCEnI}2QKkY<6XGKdm8V< zB|g;n2rhAbOW`J5;+Dp3xWv;M%Ww&&#Y2F!6k+oFTf>U)OZOl z@v_FNaEaG7-hfNIsqq$E;%$w0;1Ult-i1rNr|~{q;zJGcZ9jA1zkdVI+djaz9$2t-)S&iro;FQ z&v2|e>&^PIuHOcp1h~HXfFkgxz~2McuHhcIhD5F*k!wig8XE8#n3-$%*x@y7q}T9Y z+pn2`4R{VXFfLt4Lh5+2P8aLIzOnkp>Lc<^EU(p9R)4Y2_`OAfbs-)@2KWw+x|VoZ z4>R|*N6%l^r, et al. - * - * This software is licensed as described in the file COPYING, which - * you should have received as part of this distribution. The terms - * are also available at http://curl.haxx.se/docs/copyright.html. - * - * You may opt to use, copy, modify, merge, publish, distribute and/or sell - * copies of the Software, and permit persons to whom the Software is - * furnished to do so, under the terms of the COPYING file. - * - * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY - * KIND, either express or implied. - * - ***************************************************************************/ - -/* ================================================================ */ -/* NOTES FOR CONFIGURE CAPABLE SYSTEMS */ -/* ================================================================ */ - -/* - * NOTE 1: - * ------- - * - * Nothing in this file is intended to be modified or adjusted by the - * curl library user nor by the curl library builder. - * - * If you think that something actually needs to be changed, adjusted - * or fixed in this file, then, report it on the libcurl development - * mailing list: http://cool.haxx.se/mailman/listinfo/curl-library/ - * - * This header file shall only export symbols which are 'curl' or 'CURL' - * prefixed, otherwise public name space would be polluted. - * - * NOTE 2: - * ------- - * - * Right now you might be staring at file include/curl/curlbuild.h.in or - * at file include/curl/curlbuild.h, this is due to the following reason: - * - * On systems capable of running the configure script, the configure process - * will overwrite the distributed include/curl/curlbuild.h file with one that - * is suitable and specific to the library being configured and built, which - * is generated from the include/curl/curlbuild.h.in template file. - * - */ - -/* ================================================================ */ -/* DEFINITION OF THESE SYMBOLS SHALL NOT TAKE PLACE ANYWHERE ELSE */ -/* ================================================================ */ - -#ifdef CURL_SIZEOF_LONG -#error "CURL_SIZEOF_LONG shall not be defined except in curlbuild.h" - Error Compilation_aborted_CURL_SIZEOF_LONG_already_defined -#endif - -#ifdef CURL_TYPEOF_CURL_SOCKLEN_T -#error "CURL_TYPEOF_CURL_SOCKLEN_T shall not be defined except in curlbuild.h" - Error Compilation_aborted_CURL_TYPEOF_CURL_SOCKLEN_T_already_defined -#endif - -#ifdef CURL_SIZEOF_CURL_SOCKLEN_T -#error "CURL_SIZEOF_CURL_SOCKLEN_T shall not be defined except in curlbuild.h" - Error Compilation_aborted_CURL_SIZEOF_CURL_SOCKLEN_T_already_defined -#endif - -#ifdef CURL_TYPEOF_CURL_OFF_T -#error "CURL_TYPEOF_CURL_OFF_T shall not be defined except in curlbuild.h" - Error Compilation_aborted_CURL_TYPEOF_CURL_OFF_T_already_defined -#endif - -#ifdef CURL_FORMAT_CURL_OFF_T -#error "CURL_FORMAT_CURL_OFF_T shall not be defined except in curlbuild.h" - Error Compilation_aborted_CURL_FORMAT_CURL_OFF_T_already_defined -#endif - -#ifdef CURL_FORMAT_CURL_OFF_TU -#error "CURL_FORMAT_CURL_OFF_TU shall not be defined except in curlbuild.h" - Error Compilation_aborted_CURL_FORMAT_CURL_OFF_TU_already_defined -#endif - -#ifdef CURL_FORMAT_OFF_T -#error "CURL_FORMAT_OFF_T shall not be defined except in curlbuild.h" - Error Compilation_aborted_CURL_FORMAT_OFF_T_already_defined -#endif - -#ifdef CURL_SIZEOF_CURL_OFF_T -#error "CURL_SIZEOF_CURL_OFF_T shall not be defined except in curlbuild.h" - Error Compilation_aborted_CURL_SIZEOF_CURL_OFF_T_already_defined -#endif - -#ifdef CURL_SUFFIX_CURL_OFF_T -#error "CURL_SUFFIX_CURL_OFF_T shall not be defined except in curlbuild.h" - Error Compilation_aborted_CURL_SUFFIX_CURL_OFF_T_already_defined -#endif - -#ifdef CURL_SUFFIX_CURL_OFF_TU -#error "CURL_SUFFIX_CURL_OFF_TU shall not be defined except in curlbuild.h" - Error Compilation_aborted_CURL_SUFFIX_CURL_OFF_TU_already_defined -#endif - -/* ================================================================ */ -/* EXTERNAL INTERFACE SETTINGS FOR CONFIGURE CAPABLE SYSTEMS ONLY */ -/* ================================================================ */ - -/* Configure process defines this to 1 when it finds out that system */ -/* header file ws2tcpip.h must be included by the external interface. */ -/* #undef CURL_PULL_WS2TCPIP_H */ -#ifdef CURL_PULL_WS2TCPIP_H -# ifndef WIN32_LEAN_AND_MEAN -# define WIN32_LEAN_AND_MEAN -# endif -# include -# include -# include -#endif - -/* Configure process defines this to 1 when it finds out that system */ -/* header file sys/types.h must be included by the external interface. */ -#define CURL_PULL_SYS_TYPES_H 1 -#ifdef CURL_PULL_SYS_TYPES_H -# include -#endif - -/* Configure process defines this to 1 when it finds out that system */ -/* header file stdint.h must be included by the external interface. */ -/* #undef CURL_PULL_STDINT_H */ -#ifdef CURL_PULL_STDINT_H -# include -#endif - -/* Configure process defines this to 1 when it finds out that system */ -/* header file inttypes.h must be included by the external interface. */ -/* #undef CURL_PULL_INTTYPES_H */ -#ifdef CURL_PULL_INTTYPES_H -# include -#endif - -/* Configure process defines this to 1 when it finds out that system */ -/* header file sys/socket.h must be included by the external interface. */ -#define CURL_PULL_SYS_SOCKET_H 1 -#ifdef CURL_PULL_SYS_SOCKET_H -# include -#endif - -/* Configure process defines this to 1 when it finds out that system */ -/* header file sys/poll.h must be included by the external interface. */ -/* #undef CURL_PULL_SYS_POLL_H */ -#ifdef CURL_PULL_SYS_POLL_H -# include -#endif - -/* The size of `long', as computed by sizeof. */ -#define CURL_SIZEOF_LONG 8 - -/* Integral data type used for curl_socklen_t. */ -#define CURL_TYPEOF_CURL_SOCKLEN_T socklen_t - -/* The size of `curl_socklen_t', as computed by sizeof. */ -#define CURL_SIZEOF_CURL_SOCKLEN_T 4 - -/* Data type definition of curl_socklen_t. */ -typedef CURL_TYPEOF_CURL_SOCKLEN_T curl_socklen_t; - -/* Signed integral data type used for curl_off_t. */ -#define CURL_TYPEOF_CURL_OFF_T long - -/* Data type definition of curl_off_t. */ -typedef CURL_TYPEOF_CURL_OFF_T curl_off_t; - -/* curl_off_t formatting string directive without "%" conversion specifier. */ -#define CURL_FORMAT_CURL_OFF_T "ld" - -/* unsigned curl_off_t formatting string without "%" conversion specifier. */ -#define CURL_FORMAT_CURL_OFF_TU "lu" - -/* curl_off_t formatting string directive with "%" conversion specifier. */ -#define CURL_FORMAT_OFF_T "%ld" - -/* The size of `curl_off_t', as computed by sizeof. */ -#define CURL_SIZEOF_CURL_OFF_T 8 - -/* curl_off_t constant suffix. */ -#define CURL_SUFFIX_CURL_OFF_T L - -/* unsigned curl_off_t constant suffix. */ -#define CURL_SUFFIX_CURL_OFF_TU UL - -#endif /* __CURL_CURLBUILD_H */ diff --git a/src/opensource/curl/lib/curl_config.h b/src/opensource/curl/lib/curl_config.h deleted file mode 100644 index 5b306fa4..00000000 --- a/src/opensource/curl/lib/curl_config.h +++ /dev/null @@ -1,1037 +0,0 @@ -/* lib/curl_config.h. Generated from curl_config.h.in by configure. */ -/* lib/curl_config.h.in. Generated from configure.ac by autoheader. */ - -/* Location of default ca bundle */ -#define CURL_CA_BUNDLE "/etc/ssl/certs/ca-bundle.pem" - -/* Location of default ca path */ -/* #undef CURL_CA_PATH */ - -/* to disable cookies support */ -/* #undef CURL_DISABLE_COOKIES */ - -/* to disable cryptographic authentication */ -#define CURL_DISABLE_CRYPTO_AUTH 1 - -/* to disable DICT */ -#define CURL_DISABLE_DICT 1 - -/* to disable FILE */ -#define CURL_DISABLE_FILE 1 - -/* to disable FTP */ -#define CURL_DISABLE_FTP 1 - -/* to disable Gopher */ -#define CURL_DISABLE_GOPHER 1 - -/* to disable HTTP */ -/* #undef CURL_DISABLE_HTTP */ - -/* to disable IMAP */ -#define CURL_DISABLE_IMAP 1 - -/* to disable LDAP */ -#define CURL_DISABLE_LDAP 1 - -/* to disable LDAPS */ -#define CURL_DISABLE_LDAPS 1 - -/* to disable --libcurl C code generation option */ -/* #undef CURL_DISABLE_LIBCURL_OPTION */ - -/* to disable POP3 */ -#define CURL_DISABLE_POP3 1 - -/* to disable proxies */ -/* #undef CURL_DISABLE_PROXY */ - -/* to disable RTSP */ -#define CURL_DISABLE_RTSP 1 - -/* to disable SMTP */ -#define CURL_DISABLE_SMTP 1 - -/* to disable TELNET */ -#define CURL_DISABLE_TELNET 1 - -/* to disable TFTP */ -#define CURL_DISABLE_TFTP 1 - -/* to disable TLS-SRP authentication */ -#define CURL_DISABLE_TLS_SRP 1 - -/* to disable verbose strings */ -/* #undef CURL_DISABLE_VERBOSE_STRINGS */ - -/* Definition to make a library symbol externally visible. */ -#define CURL_EXTERN_SYMBOL __attribute__ ((__visibility__ ("default"))) - -/* Use Windows LDAP implementation */ -/* #undef CURL_LDAP_WIN */ - -/* your Entropy Gathering Daemon socket pathname */ -/* #undef EGD_SOCKET */ - -/* Define if you want to enable IPv6 support */ -#define ENABLE_IPV6 1 - -/* Define to the type of arg 2 for gethostname. */ -#define GETHOSTNAME_TYPE_ARG2 size_t - -/* Define to the type qualifier of arg 1 for getnameinfo. */ -#define GETNAMEINFO_QUAL_ARG1 const - -/* Define to the type of arg 1 for getnameinfo. */ -#define GETNAMEINFO_TYPE_ARG1 struct sockaddr * - -/* Define to the type of arg 2 for getnameinfo. */ -#define GETNAMEINFO_TYPE_ARG2 socklen_t - -/* Define to the type of args 4 and 6 for getnameinfo. */ -#define GETNAMEINFO_TYPE_ARG46 socklen_t - -/* Define to the type of arg 7 for getnameinfo. */ -#define GETNAMEINFO_TYPE_ARG7 int - -/* Specifies the number of arguments to getservbyport_r */ -#define GETSERVBYPORT_R_ARGS 6 - -/* Specifies the size of the buffer to pass to getservbyport_r */ -#define GETSERVBYPORT_R_BUFSIZE 4096 - -/* Define to 1 if you have the alarm function. */ -#define HAVE_ALARM 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_ALLOCA_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_ARPA_INET_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_ARPA_TFTP_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_ASSERT_H 1 - -/* Define to 1 if you have the basename function. */ -#define HAVE_BASENAME 1 - -/* Define to 1 if bool is an available type. */ -#define HAVE_BOOL_T 1 - -/* Define to 1 if you have the clock_gettime function and monotonic timer. */ -#define HAVE_CLOCK_GETTIME_MONOTONIC 1 - -/* Define to 1 if you have the closesocket function. */ -/* #undef HAVE_CLOSESOCKET */ - -/* Define to 1 if you have the CloseSocket camel case function. */ -/* #undef HAVE_CLOSESOCKET_CAMEL */ - -/* Define to 1 if you have the connect function. */ -#define HAVE_CONNECT 1 - -/* Define to 1 if you have the `CRYPTO_cleanup_all_ex_data' function. */ -#define HAVE_CRYPTO_CLEANUP_ALL_EX_DATA 1 - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_CRYPTO_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_DES_H */ - -/* Define to 1 if you have the header file. */ -#define HAVE_DLFCN_H 1 - -/* Define to 1 if you have the `ENGINE_cleanup' function. */ -#define HAVE_ENGINE_CLEANUP 1 - -/* Define to 1 if you have the `ENGINE_load_builtin_engines' function. */ -#define HAVE_ENGINE_LOAD_BUILTIN_ENGINES 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_ERRNO_H 1 - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_ERR_H */ - -/* Define to 1 if you have the fcntl function. */ -#define HAVE_FCNTL 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_FCNTL_H 1 - -/* Define to 1 if you have a working fcntl O_NONBLOCK function. */ -#define HAVE_FCNTL_O_NONBLOCK 1 - -/* Define to 1 if you have the fdopen function. */ -#define HAVE_FDOPEN 1 - -/* Define to 1 if you have the `fork' function. */ -#define HAVE_FORK 1 - -/* Define to 1 if you have the freeaddrinfo function. */ -#define HAVE_FREEADDRINFO 1 - -/* Define to 1 if you have the freeifaddrs function. */ -#define HAVE_FREEIFADDRS 1 - -/* Define to 1 if you have the fsetxattr function. */ -#define HAVE_FSETXATTR 1 - -/* fsetxattr() takes 5 args */ -#define HAVE_FSETXATTR_5 1 - -/* fsetxattr() takes 6 args */ -/* #undef HAVE_FSETXATTR_6 */ - -/* Define to 1 if you have the ftruncate function. */ -#define HAVE_FTRUNCATE 1 - -/* Define to 1 if you have the gai_strerror function. */ -#define HAVE_GAI_STRERROR 1 - -/* Define to 1 if you have a working getaddrinfo function. */ -#define HAVE_GETADDRINFO 1 - -/* Define to 1 if the getaddrinfo function is threadsafe. */ -#define HAVE_GETADDRINFO_THREADSAFE 1 - -/* Define to 1 if you have the `geteuid' function. */ -#define HAVE_GETEUID 1 - -/* Define to 1 if you have the gethostbyaddr function. */ -#define HAVE_GETHOSTBYADDR 1 - -/* Define to 1 if you have the gethostbyaddr_r function. */ -#define HAVE_GETHOSTBYADDR_R 1 - -/* gethostbyaddr_r() takes 5 args */ -/* #undef HAVE_GETHOSTBYADDR_R_5 */ - -/* gethostbyaddr_r() takes 7 args */ -/* #undef HAVE_GETHOSTBYADDR_R_7 */ - -/* gethostbyaddr_r() takes 8 args */ -#define HAVE_GETHOSTBYADDR_R_8 1 - -/* Define to 1 if you have the gethostbyname function. */ -#define HAVE_GETHOSTBYNAME 1 - -/* Define to 1 if you have the gethostbyname_r function. */ -#define HAVE_GETHOSTBYNAME_R 1 - -/* gethostbyname_r() takes 3 args */ -/* #undef HAVE_GETHOSTBYNAME_R_3 */ - -/* gethostbyname_r() takes 5 args */ -/* #undef HAVE_GETHOSTBYNAME_R_5 */ - -/* gethostbyname_r() takes 6 args */ -#define HAVE_GETHOSTBYNAME_R_6 1 - -/* Define to 1 if you have the gethostname function. */ -#define HAVE_GETHOSTNAME 1 - -/* Define to 1 if you have a working getifaddrs function. */ -#define HAVE_GETIFADDRS 1 - -/* Define to 1 if you have the getnameinfo function. */ -#define HAVE_GETNAMEINFO 1 - -/* Define to 1 if you have the `getpass_r' function. */ -/* #undef HAVE_GETPASS_R */ - -/* Define to 1 if you have the `getppid' function. */ -#define HAVE_GETPPID 1 - -/* Define to 1 if you have the `getprotobyname' function. */ -#define HAVE_GETPROTOBYNAME 1 - -/* Define to 1 if you have the `getpwuid' function. */ -#define HAVE_GETPWUID 1 - -/* Define to 1 if you have the `getrlimit' function. */ -#define HAVE_GETRLIMIT 1 - -/* Define to 1 if you have the getservbyport_r function. */ -#define HAVE_GETSERVBYPORT_R 1 - -/* Define to 1 if you have the `gettimeofday' function. */ -#define HAVE_GETTIMEOFDAY 1 - -/* Define to 1 if you have a working glibc-style strerror_r function. */ -/* #undef HAVE_GLIBC_STRERROR_R */ - -/* Define to 1 if you have a working gmtime_r function. */ -#define HAVE_GMTIME_R 1 - -/* if you have the function gnutls_srp_verifier */ -/* #undef HAVE_GNUTLS_SRP */ - -/* if you have the gssapi libraries */ -/* #undef HAVE_GSSAPI */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_GSSAPI_GSSAPI_GENERIC_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_GSSAPI_GSSAPI_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_GSSAPI_GSSAPI_KRB5_H */ - -/* if you have the GNU gssapi libraries */ -/* #undef HAVE_GSSGNU */ - -/* if you have the Heimdal gssapi libraries */ -/* #undef HAVE_GSSHEIMDAL */ - -/* if you have the MIT gssapi libraries */ -/* #undef HAVE_GSSMIT */ - -/* Define to 1 if you have the `idna_strerror' function. */ -/* #undef HAVE_IDNA_STRERROR */ - -/* Define to 1 if you have the `idn_free' function. */ -/* #undef HAVE_IDN_FREE */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_IDN_FREE_H */ - -/* Define to 1 if you have the header file. */ -#define HAVE_IFADDRS_H 1 - -/* Define to 1 if you have the `inet_addr' function. */ -#define HAVE_INET_ADDR 1 - -/* Define to 1 if you have the inet_ntoa_r function. */ -/* #undef HAVE_INET_NTOA_R */ - -/* inet_ntoa_r() takes 2 args */ -/* #undef HAVE_INET_NTOA_R_2 */ - -/* inet_ntoa_r() takes 3 args */ -/* #undef HAVE_INET_NTOA_R_3 */ - -/* Define to 1 if you have a IPv6 capable working inet_ntop function. */ -#define HAVE_INET_NTOP 1 - -/* Define to 1 if you have a IPv6 capable working inet_pton function. */ -#define HAVE_INET_PTON 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_INTTYPES_H 1 - -/* Define to 1 if you have the ioctl function. */ -#define HAVE_IOCTL 1 - -/* Define to 1 if you have the ioctlsocket function. */ -/* #undef HAVE_IOCTLSOCKET */ - -/* Define to 1 if you have the IoctlSocket camel case function. */ -/* #undef HAVE_IOCTLSOCKET_CAMEL */ - -/* Define to 1 if you have a working IoctlSocket camel case FIONBIO function. - */ -/* #undef HAVE_IOCTLSOCKET_CAMEL_FIONBIO */ - -/* Define to 1 if you have a working ioctlsocket FIONBIO function. */ -/* #undef HAVE_IOCTLSOCKET_FIONBIO */ - -/* Define to 1 if you have a working ioctl FIONBIO function. */ -#define HAVE_IOCTL_FIONBIO 1 - -/* Define to 1 if you have a working ioctl SIOCGIFADDR function. */ -#define HAVE_IOCTL_SIOCGIFADDR 1 - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_IO_H */ - -/* if you have the Kerberos4 libraries (including -ldes) */ -/* #undef HAVE_KRB4 */ - -/* Define to 1 if you have the `krb_get_our_ip_for_realm' function. */ -/* #undef HAVE_KRB_GET_OUR_IP_FOR_REALM */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_KRB_H */ - -/* Define to 1 if you have the lber.h header file. */ -/* #undef HAVE_LBER_H */ - -/* Define to 1 if you have the ldapssl.h header file. */ -/* #undef HAVE_LDAPSSL_H */ - -/* Define to 1 if you have the ldap.h header file. */ -/* #undef HAVE_LDAP_H */ - -/* Define to 1 if you have the `ldap_init_fd' function. */ -/* #undef HAVE_LDAP_INIT_FD */ - -/* Use LDAPS implementation */ -/* #undef HAVE_LDAP_SSL */ - -/* Define to 1 if you have the ldap_ssl.h header file. */ -/* #undef HAVE_LDAP_SSL_H */ - -/* Define to 1 if you have the `ldap_url_parse' function. */ -/* #undef HAVE_LDAP_URL_PARSE */ - -/* Define to 1 if you have the header file. */ -#define HAVE_LIBGEN_H 1 - -/* Define to 1 if you have the `idn' library (-lidn). */ -/* #undef HAVE_LIBIDN */ - -/* Define to 1 if you have the `resolv' library (-lresolv). */ -/* #undef HAVE_LIBRESOLV */ - -/* Define to 1 if you have the `resolve' library (-lresolve). */ -/* #undef HAVE_LIBRESOLVE */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_LIBRTMP_RTMP_H */ - -/* Define to 1 if you have the `ssh2' library (-lssh2). */ -/* #undef HAVE_LIBSSH2 */ - -/* Define to 1 if you have the `libssh2_exit' function. */ -/* #undef HAVE_LIBSSH2_EXIT */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_LIBSSH2_H */ - -/* Define to 1 if you have the `libssh2_init' function. */ -/* #undef HAVE_LIBSSH2_INIT */ - -/* Define to 1 if you have the `libssh2_scp_send64' function. */ -/* #undef HAVE_LIBSSH2_SCP_SEND64 */ - -/* Define to 1 if you have the `libssh2_session_handshake' function. */ -/* #undef HAVE_LIBSSH2_SESSION_HANDSHAKE */ - -/* Define to 1 if you have the `libssh2_version' function. */ -/* #undef HAVE_LIBSSH2_VERSION */ - -/* Define to 1 if you have the `ssl' library (-lssl). */ -#define HAVE_LIBSSL 1 - -/* if zlib is available */ -/* #undef HAVE_LIBZ */ - -/* Define to 1 if you have the header file. */ -#define HAVE_LIMITS_H 1 - -/* if your compiler supports LL */ -#define HAVE_LL 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_LOCALE_H 1 - -/* Define to 1 if you have a working localtime_r function. */ -#define HAVE_LOCALTIME_R 1 - -/* Define to 1 if the compiler supports the 'long long' data type. */ -#define HAVE_LONGLONG 1 - -/* Define to 1 if you have the malloc.h header file. */ -#define HAVE_MALLOC_H 1 - -/* Define to 1 if you have the memory.h header file. */ -#define HAVE_MEMORY_H 1 - -/* Define to 1 if you have the memrchr function or macro. */ -/* #undef HAVE_MEMRCHR */ - -/* Define to 1 if you have the MSG_NOSIGNAL flag. */ -#define HAVE_MSG_NOSIGNAL 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_NETDB_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_NETINET_IN_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_NETINET_TCP_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_NET_IF_H 1 - -/* Define to 1 if NI_WITHSCOPEID exists and works. */ -/* #undef HAVE_NI_WITHSCOPEID */ - -/* if you have the NSS_InitContext function */ -/* #undef HAVE_NSS_INITCONTEXT */ - -/* if you have an old MIT gssapi library, lacking GSS_C_NT_HOSTBASED_SERVICE - */ -/* #undef HAVE_OLD_GSSMIT */ - -/* Define to 1 if you have the header file. */ -#define HAVE_OPENSSL_CRYPTO_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_OPENSSL_ENGINE_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_OPENSSL_ERR_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_OPENSSL_PEM_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_OPENSSL_PKCS12_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_OPENSSL_RSA_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_OPENSSL_SSL_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_OPENSSL_X509_H 1 - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_PEM_H */ - -/* Define to 1 if you have the `perror' function. */ -#define HAVE_PERROR 1 - -/* Define to 1 if you have the `pipe' function. */ -#define HAVE_PIPE 1 - -/* Define to 1 if you have a working poll function. */ -#define HAVE_POLL 1 - -/* If you have a fine poll */ -#define HAVE_POLL_FINE 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_POLL_H 1 - -/* Define to 1 if you have a working POSIX-style strerror_r function. */ -#define HAVE_POSIX_STRERROR_R 1 - -/* if you have */ -/* #undef HAVE_PTHREAD_H */ - -/* Define to 1 if you have the header file. */ -#define HAVE_PWD_H 1 - -/* Define to 1 if you have the `RAND_egd' function. */ -#define HAVE_RAND_EGD 1 - -/* Define to 1 if you have the `RAND_screen' function. */ -/* #undef HAVE_RAND_SCREEN */ - -/* Define to 1 if you have the `RAND_status' function. */ -#define HAVE_RAND_STATUS 1 - -/* Define to 1 if you have the recv function. */ -#define HAVE_RECV 1 - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_RSA_H */ - -/* Define to 1 if you have the select function. */ -#define HAVE_SELECT 1 - -/* Define to 1 if you have the send function. */ -#define HAVE_SEND 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_SETJMP_H 1 - -/* Define to 1 if you have the `setlocale' function. */ -#define HAVE_SETLOCALE 1 - -/* Define to 1 if you have the `setmode' function. */ -/* #undef HAVE_SETMODE */ - -/* Define to 1 if you have the `setrlimit' function. */ -#define HAVE_SETRLIMIT 1 - -/* Define to 1 if you have the setsockopt function. */ -#define HAVE_SETSOCKOPT 1 - -/* Define to 1 if you have a working setsockopt SO_NONBLOCK function. */ -/* #undef HAVE_SETSOCKOPT_SO_NONBLOCK */ - -/* Define to 1 if you have the header file. */ -#define HAVE_SGTTY_H 1 - -/* Define to 1 if you have the sigaction function. */ -#define HAVE_SIGACTION 1 - -/* Define to 1 if you have the siginterrupt function. */ -#define HAVE_SIGINTERRUPT 1 - -/* Define to 1 if you have the signal function. */ -#define HAVE_SIGNAL 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_SIGNAL_H 1 - -/* Define to 1 if you have the sigsetjmp function or macro. */ -#define HAVE_SIGSETJMP 1 - -/* Define to 1 if sig_atomic_t is an available typedef. */ -#define HAVE_SIG_ATOMIC_T 1 - -/* Define to 1 if sig_atomic_t is already defined as volatile. */ -/* #undef HAVE_SIG_ATOMIC_T_VOLATILE */ - -/* Define to 1 if struct sockaddr_in6 has the sin6_scope_id member */ -#define HAVE_SOCKADDR_IN6_SIN6_SCOPE_ID 1 - -/* Define to 1 if you have the socket function. */ -#define HAVE_SOCKET 1 - -/* Define to 1 if you have the socketpair function. */ -#define HAVE_SOCKETPAIR 1 - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SOCKET_H */ - -/* Define this if you have the SPNEGO library fbopenssl */ -/* #undef HAVE_SPNEGO */ - -/* if you have the function SRP_Calc_client_key */ -#define HAVE_SSLEAY_SRP 1 - -/* Define to 1 if you have the `SSLv2_client_method' function. */ -#define HAVE_SSLV2_CLIENT_METHOD 1 - -/* Define to 1 if you have the `SSL_get_shutdown' function. */ -#define HAVE_SSL_GET_SHUTDOWN 1 - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SSL_H */ - -/* Define to 1 if you have the header file. */ -#define HAVE_STDBOOL_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_STDINT_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_STDIO_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_STDLIB_H 1 - -/* Define to 1 if you have the strcasecmp function. */ -#define HAVE_STRCASECMP 1 - -/* Define to 1 if you have the strcmpi function. */ -/* #undef HAVE_STRCMPI */ - -/* Define to 1 if you have the strdup function. */ -#define HAVE_STRDUP 1 - -/* Define to 1 if you have the strerror_r function. */ -#define HAVE_STRERROR_R 1 - -/* Define to 1 if you have the stricmp function. */ -/* #undef HAVE_STRICMP */ - -/* Define to 1 if you have the header file. */ -#define HAVE_STRINGS_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_STRING_H 1 - -/* Define to 1 if you have the `strlcpy' function. */ -/* #undef HAVE_STRLCPY */ - -/* Define to 1 if you have the strncasecmp function. */ -#define HAVE_STRNCASECMP 1 - -/* Define to 1 if you have the strncmpi function. */ -/* #undef HAVE_STRNCMPI */ - -/* Define to 1 if you have the strnicmp function. */ -/* #undef HAVE_STRNICMP */ - -/* Define to 1 if you have the header file. */ -#define HAVE_STROPTS_H 1 - -/* Define to 1 if you have the strstr function. */ -#define HAVE_STRSTR 1 - -/* Define to 1 if you have the strtok_r function. */ -#define HAVE_STRTOK_R 1 - -/* Define to 1 if you have the strtoll function. */ -#define HAVE_STRTOLL 1 - -/* if struct sockaddr_storage is defined */ -#define HAVE_STRUCT_SOCKADDR_STORAGE 1 - -/* Define to 1 if you have the timeval struct. */ -#define HAVE_STRUCT_TIMEVAL 1 - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_FILIO_H */ - -/* Define to 1 if you have the header file. */ -#define HAVE_SYS_IOCTL_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_SYS_PARAM_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_SYS_POLL_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_SYS_RESOURCE_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_SYS_SELECT_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_SYS_SOCKET_H 1 - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_SOCKIO_H */ - -/* Define to 1 if you have the header file. */ -#define HAVE_SYS_STAT_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_SYS_TIME_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_SYS_TYPES_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_SYS_UIO_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_SYS_UN_H 1 - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_UTIME_H */ - -/* Define to 1 if you have the header file. */ -#define HAVE_SYS_WAIT_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_SYS_XATTR_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_TERMIOS_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_TERMIO_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_TIME_H 1 - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_TLD_H */ - -/* Define to 1 if you have the `tld_strerror' function. */ -/* #undef HAVE_TLD_STRERROR */ - -/* Define to 1 if you have the `uname' function. */ -#define HAVE_UNAME 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_UNISTD_H 1 - -/* Define to 1 if you have the `utime' function. */ -#define HAVE_UTIME 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_UTIME_H 1 - -/* Define to 1 if compiler supports C99 variadic macro style. */ -#define HAVE_VARIADIC_MACROS_C99 1 - -/* Define to 1 if compiler supports old gcc variadic macro style. */ -#define HAVE_VARIADIC_MACROS_GCC 1 - -/* Define to 1 if you have the winber.h header file. */ -/* #undef HAVE_WINBER_H */ - -/* Define to 1 if you have the windows.h header file. */ -/* #undef HAVE_WINDOWS_H */ - -/* Define to 1 if you have the winldap.h header file. */ -/* #undef HAVE_WINLDAP_H */ - -/* Define to 1 if you have the winsock2.h header file. */ -/* #undef HAVE_WINSOCK2_H */ - -/* Define to 1 if you have the winsock.h header file. */ -/* #undef HAVE_WINSOCK_H */ - -/* Define this symbol if your OS supports changing the contents of argv */ -#define HAVE_WRITABLE_ARGV 1 - -/* Define to 1 if you have the writev function. */ -#define HAVE_WRITEV 1 - -/* Define to 1 if you have the ws2tcpip.h header file. */ -/* #undef HAVE_WS2TCPIP_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_X509_H */ - -/* if you have the zlib.h header file */ -/* #undef HAVE_ZLIB_H */ - -/* Define to the sub-directory in which libtool stores uninstalled libraries. - */ -#define LT_OBJDIR ".libs/" - -/* Define to 1 if you need the lber.h header file even with ldap.h */ -/* #undef NEED_LBER_H */ - -/* Define to 1 if you need the malloc.h header file even with stdlib.h */ -/* #undef NEED_MALLOC_H */ - -/* Define to 1 if you need the memory.h header file even with stdlib.h */ -/* #undef NEED_MEMORY_H */ - -/* Define to 1 if _REENTRANT preprocessor symbol must be defined. */ -/* #undef NEED_REENTRANT */ - -/* Define to 1 if _THREAD_SAFE preprocessor symbol must be defined. */ -/* #undef NEED_THREAD_SAFE */ - -/* Define to 1 if your C compiler doesn't accept -c and -o together. */ -/* #undef NO_MINUS_C_MINUS_O */ - -/* Define to enable NTLM delegation to winbind's ntlm_auth helper. */ -#define NTLM_WB_ENABLED 1 - -/* Define absolute filename for winbind's ntlm_auth helper. */ -#define NTLM_WB_FILE "/usr/bin/ntlm_auth" - -/* cpu-machine-OS */ -#define OS "cr16-unknown-elf" - -/* Name of package */ -#define PACKAGE "curl" - -/* Define to the address where bug reports for this package should be sent. */ -#define PACKAGE_BUGREPORT "a suitable curl mailing list: http://curl.haxx.se/mail/" - -/* Define to the full name of this package. */ -#define PACKAGE_NAME "curl" - -/* Define to the full name and version of this package. */ -#define PACKAGE_STRING "curl -" - -/* Define to the one symbol short name of this package. */ -#define PACKAGE_TARNAME "curl" - -/* Define to the home page for this package. */ -#define PACKAGE_URL "" - -/* Define to the version of this package. */ -#define PACKAGE_VERSION "-" - -/* a suitable file to read random data from */ -#define RANDOM_FILE "/dev/urandom" - -/* Define to the type of arg 1 for recv. */ -#define RECV_TYPE_ARG1 int - -/* Define to the type of arg 2 for recv. */ -#define RECV_TYPE_ARG2 void * - -/* Define to the type of arg 3 for recv. */ -#define RECV_TYPE_ARG3 size_t - -/* Define to the type of arg 4 for recv. */ -#define RECV_TYPE_ARG4 int - -/* Define to the function return type for recv. */ -#define RECV_TYPE_RETV ssize_t - -/* Define as the return type of signal handlers (`int' or `void'). */ -#define RETSIGTYPE void - -/* Define to the type qualifier of arg 5 for select. */ -#define SELECT_QUAL_ARG5 - -/* Define to the type of arg 1 for select. */ -#define SELECT_TYPE_ARG1 int - -/* Define to the type of args 2, 3 and 4 for select. */ -#define SELECT_TYPE_ARG234 fd_set * - -/* Define to the type of arg 5 for select. */ -#define SELECT_TYPE_ARG5 struct timeval * - -/* Define to the function return type for select. */ -#define SELECT_TYPE_RETV int - -/* Define to the type qualifier of arg 2 for send. */ -#define SEND_QUAL_ARG2 const - -/* Define to the type of arg 1 for send. */ -#define SEND_TYPE_ARG1 int - -/* Define to the type of arg 2 for send. */ -#define SEND_TYPE_ARG2 void * - -/* Define to the type of arg 3 for send. */ -#define SEND_TYPE_ARG3 size_t - -/* Define to the type of arg 4 for send. */ -#define SEND_TYPE_ARG4 int - -/* Define to the function return type for send. */ -#define SEND_TYPE_RETV ssize_t - -/* The size of `int', as computed by sizeof. */ -#define SIZEOF_INT 4 - -/* The size of `long', as computed by sizeof. */ -#define SIZEOF_LONG 8 - -/* The size of `off_t', as computed by sizeof. */ -#define SIZEOF_OFF_T 8 - -/* The size of `short', as computed by sizeof. */ -#define SIZEOF_SHORT 2 - -/* The size of `size_t', as computed by sizeof. */ -#define SIZEOF_SIZE_T 8 - -/* The size of `time_t', as computed by sizeof. */ -#define SIZEOF_TIME_T 8 - -/* The size of `void*', as computed by sizeof. */ -#define SIZEOF_VOIDP 8 - -/* Define to 1 if you have the ANSI C header files. */ -#define STDC_HEADERS 1 - -/* Define to the type of arg 3 for strerror_r. */ -#define STRERROR_R_TYPE_ARG3 size_t - -/* Define to 1 if you can safely include both and . */ -#define TIME_WITH_SYS_TIME 1 - -/* Define to enable c-ares support */ -/* #undef USE_ARES */ - -/* if axTLS is enabled */ -/* #undef USE_AXTLS */ - -/* if CyaSSL is enabled */ -/* #undef USE_CYASSL */ - -/* to enable iOS/Mac OS X native SSL/TLS support */ -/* #undef USE_DARWINSSL */ - -/* if GnuTLS is enabled */ -/* #undef USE_GNUTLS */ - -/* if GnuTLS uses nettle as crypto backend */ -/* #undef USE_GNUTLS_NETTLE */ - -/* if librtmp is in use */ -/* #undef USE_LIBRTMP */ - -/* if libSSH2 is in use */ -/* #undef USE_LIBSSH2 */ - -/* If you want to build curl with the built-in manual */ -/* #undef USE_MANUAL */ - -/* Define to enable metalink support */ -/* #undef USE_METALINK */ - -/* if NSS is enabled */ -/* #undef USE_NSS */ - -/* Use OpenLDAP-specific code */ -/* #undef USE_OPENLDAP */ - -/* if OpenSSL is in use */ -#define USE_OPENSSL 1 - -/* if PolarSSL is enabled */ -/* #undef USE_POLARSSL */ - -/* to enable Windows native SSL/TLS support */ -/* #undef USE_SCHANNEL */ - -/* if SSL is enabled */ -#define USE_SSLEAY 1 - -/* if you want POSIX threaded DNS lookup */ -/* #undef USE_THREADS_POSIX */ - -/* Use TLS-SRP authentication */ -/* #undef USE_TLS_SRP */ - -/* Define to 1 if you have the `normaliz' (WinIDN) library (-lnormaliz). */ -/* #undef USE_WIN32_IDN */ - -/* Define to 1 if you are building a Windows target with large file support. - */ -/* #undef USE_WIN32_LARGE_FILES */ - -/* Define to 1 if you are building a Windows target without large file - support. */ -/* #undef USE_WIN32_SMALL_FILES */ - -/* to enable SSPI support */ -/* #undef USE_WINDOWS_SSPI */ - -/* Define to 1 if using yaSSL in OpenSSL compatibility mode. */ -/* #undef USE_YASSLEMUL */ - -/* Version number of package */ -#define VERSION "-" - -/* Define to 1 to provide own prototypes. */ -/* #undef WANT_IDN_PROTOTYPES */ - -/* Define to avoid automatic inclusion of winsock.h */ -/* #undef WIN32_LEAN_AND_MEAN */ - -/* Define to 1 if OS is AIX. */ -#ifndef _ALL_SOURCE -/* # undef _ALL_SOURCE */ -#endif - -/* Enable large inode numbers on Mac OS X 10.5. */ -#ifndef _DARWIN_USE_64_BIT_INODE -# define _DARWIN_USE_64_BIT_INODE 1 -#endif - -/* Number of bits in a file offset, on hosts where this is settable. */ -/* #undef _FILE_OFFSET_BITS */ - -/* Define for large files, on AIX-style hosts. */ -/* #undef _LARGE_FILES */ - -/* Define to empty if `const' does not conform to ANSI C. */ -/* #undef const */ - -/* Type to use in place of in_addr_t when system does not provide it. */ -/* #undef in_addr_t */ - -/* Define to `__inline__' or `__inline' if that's what the C compiler - calls it, or to nothing if 'inline' is not supported under any name. */ -#ifndef __cplusplus -/* #undef inline */ -#endif - -/* Define to `unsigned int' if does not define. */ -/* #undef size_t */ - -/* the signed version of size_t */ -/* #undef ssize_t */ diff --git a/src/opensource/curl/libtool b/src/opensource/curl/libtool deleted file mode 100755 index 025f8899..00000000 --- a/src/opensource/curl/libtool +++ /dev/null @@ -1,10083 +0,0 @@ -#! /bin/sh - -# libtool - Provide generalized library-building support services. -# Generated automatically by config.status (curl) - -# Libtool was configured on host localhost: -# NOTE: Changes made to this file will be lost: look at ltmain.sh. -# -# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, -# 2006, 2007, 2008, 2009, 2010, 2011 Free Software -# Foundation, Inc. -# Written by Gordon Matzigkeit, 1996 -# -# This file is part of GNU Libtool. -# -# GNU Libtool is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License as -# published by the Free Software Foundation; either version 2 of -# the License, or (at your option) any later version. -# -# As a special exception to the GNU General Public License, -# if you distribute this file as part of a program or library that -# is built using GNU Libtool, you may include this file under the -# same distribution terms that you use for the rest of that program. -# -# GNU Libtool is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GNU Libtool; see the file COPYING. If not, a copy -# can be downloaded from http://www.gnu.org/licenses/gpl.html, or -# obtained by writing to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - - -# The names of the tagged configurations supported by this script. -available_tags="" - -# ### BEGIN LIBTOOL CONFIG - -# Which release of libtool.m4 was used? -macro_version=2.4.2 -macro_revision=1.3337 - -# Assembler program. -AS="as" - -# DLL creation program. -DLLTOOL="false" - -# Object dumper program. -OBJDUMP="objdump" - -# Whether or not to build shared libraries. -build_libtool_libs=no - -# Whether or not to build static libraries. -build_old_libs=yes - -# What type of objects to build. -pic_mode=yes - -# Whether or not to optimize for fast installation. -fast_install=needless - -# Shell to use when invoking shell scripts. -SHELL="/bin/sh" - -# An echo program that protects backslashes. -ECHO="printf %s\\n" - -# The PATH separator for the build system. -PATH_SEPARATOR=":" - -# The host system. -host_alias=cr16-uclinux -host=cr16-unknown-elf -host_os=elf - -# The build system. -build_alias= -build=x86_64-unknown-linux-gnu -build_os=linux-gnu - -# A sed program that does not truncate output. -SED="/usr/bin/sed" - -# Sed that helps us avoid accidentally triggering echo(1) options like -n. -Xsed="$SED -e 1s/^X//" - -# A grep program that handles long lines. -GREP="/usr/bin/grep" - -# An ERE matcher. -EGREP="/usr/bin/grep -E" - -# A literal string matcher. -FGREP="/usr/bin/grep -F" - -# A BSD- or MS-compatible name lister. -NM="nm" - -# Whether we need soft or hard links. -LN_S="ln -s" - -# What is the maximum length of a command? -max_cmd_len=1572864 - -# Object file suffix (normally "o"). -objext=o - -# Executable file suffix (normally ""). -exeext= - -# whether the shell understands "unset". -lt_unset=unset - -# turn spaces into newlines. -SP2NL="tr \\040 \\012" - -# turn newlines into spaces. -NL2SP="tr \\015\\012 \\040\\040" - -# convert $build file names to $host format. -to_host_file_cmd=func_convert_file_noop - -# convert $build files to toolchain format. -to_tool_file_cmd=func_convert_file_noop - -# Method to check whether dependent libraries are shared objects. -deplibs_check_method="unknown" - -# Command to use when deplibs_check_method = "file_magic". -file_magic_cmd="\$MAGIC_CMD" - -# How to find potential files when deplibs_check_method = "file_magic". -file_magic_glob="" - -# Find potential files using nocaseglob when deplibs_check_method = "file_magic". -want_nocaseglob="no" - -# Command to associate shared and link libraries. -sharedlib_from_linklib_cmd="printf %s\\n" - -# The archiver. -AR="/usr/bin/ar" - -# Flags to create an archive. -AR_FLAGS="cru" - -# How to feed a file listing to the archiver. -archiver_list_spec="@" - -# A symbol stripping program. -STRIP="strip" - -# Commands used to install an old-style archive. -RANLIB="ranlib" -old_postinstall_cmds="chmod 644 \$oldlib~\$RANLIB \$tool_oldlib" -old_postuninstall_cmds="" - -# Whether to use a lock for old archive extraction. -lock_old_archive_extraction=no - -# A C compiler. -LTCC="gcc" - -# LTCC compiler flags. -LTCFLAGS="-O2 -Wno-system-headers" - -# Take the output of nm and produce a listing of raw symbols and C names. -global_symbol_pipe="sed -n -e 's/^.*[ ]\\([ABCDGIRSTW][ABCDGIRSTW]*\\)[ ][ ]*\\([_A-Za-z][_A-Za-z0-9]*\\)\$/\\1 \\2 \\2/p' | sed '/ __gnu_lto/d'" - -# Transform the output of nm in a proper C declaration. -global_symbol_to_cdecl="sed -n -e 's/^T .* \\(.*\\)\$/extern int \\1();/p' -e 's/^[ABCDGIRSTW]* .* \\(.*\\)\$/extern char \\1;/p'" - -# Transform the output of nm in a C name address pair. -global_symbol_to_c_name_address="sed -n -e 's/^: \\([^ ]*\\)[ ]*\$/ {\\\"\\1\\\", (void *) 0},/p' -e 's/^[ABCDGIRSTW]* \\([^ ]*\\) \\([^ ]*\\)\$/ {\"\\2\", (void *) \\&\\2},/p'" - -# Transform the output of nm in a C name address pair when lib prefix is needed. -global_symbol_to_c_name_address_lib_prefix="sed -n -e 's/^: \\([^ ]*\\)[ ]*\$/ {\\\"\\1\\\", (void *) 0},/p' -e 's/^[ABCDGIRSTW]* \\([^ ]*\\) \\(lib[^ ]*\\)\$/ {\"\\2\", (void *) \\&\\2},/p' -e 's/^[ABCDGIRSTW]* \\([^ ]*\\) \\([^ ]*\\)\$/ {\"lib\\2\", (void *) \\&\\2},/p'" - -# Specify filename containing input files for $NM. -nm_file_list_spec="@" - -# The root where to search for dependent libraries,and in which our libraries should be installed. -lt_sysroot= - -# The name of the directory that contains temporary libtool files. -objdir=.libs - -# Used to examine libraries when file_magic_cmd begins with "file". -MAGIC_CMD=file - -# Must we lock files when doing compilation? -need_locks="no" - -# Manifest tool. -MANIFEST_TOOL=":" - -# Tool to manipulate archived DWARF debug symbol files on Mac OS X. -DSYMUTIL="" - -# Tool to change global to local symbols on Mac OS X. -NMEDIT="" - -# Tool to manipulate fat objects and archives on Mac OS X. -LIPO="" - -# ldd/readelf like tool for Mach-O binaries on Mac OS X. -OTOOL="" - -# ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4. -OTOOL64="" - -# Old archive suffix (normally "a"). -libext=a - -# Shared library suffix (normally ".so"). -shrext_cmds=".so" - -# The commands to extract the exported symbol list from a shared archive. -extract_expsyms_cmds="" - -# Variables whose values should be saved in libtool wrapper scripts and -# restored at link time. -variables_saved_for_relink="PATH LD_RUN_PATH GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" - -# Do we need the "lib" prefix for modules? -need_lib_prefix=unknown - -# Do we need a version for libraries? -need_version=unknown - -# Library versioning type. -version_type=none - -# Shared library runtime path variable. -runpath_var=LD_RUN_PATH - -# Shared library path variable. -shlibpath_var= - -# Is shlibpath searched before the hard-coded library search path? -shlibpath_overrides_runpath=unknown - -# Format of library name prefix. -libname_spec="lib\$name" - -# List of archive names. First name is the real one, the rest are links. -# The last name is the one that the linker finds with -lNAME -library_names_spec="" - -# The coded name of the library, if different from the real name. -soname_spec="" - -# Permission mode override for installation of shared libraries. -install_override_mode="" - -# Command to use after installation of a shared archive. -postinstall_cmds="" - -# Command to use after uninstallation of a shared archive. -postuninstall_cmds="" - -# Commands used to finish a libtool library installation in a directory. -finish_cmds="" - -# As "finish_cmds", except a single script fragment to be evaled but -# not shown. -finish_eval="" - -# Whether we should hardcode library paths into libraries. -hardcode_into_libs=no - -# Compile-time system search path for libraries. -sys_lib_search_path_spec="/usr/lib/gcc/x86_64-unknown-linux-gnu/4.8.1 /usr/lib /lib " - -# Run-time system search path for libraries. -sys_lib_dlsearch_path_spec="/lib /usr/lib" - -# Whether dlopen is supported. -dlopen_support=unknown - -# Whether dlopen of programs is supported. -dlopen_self=unknown - -# Whether dlopen of statically linked programs is supported. -dlopen_self_static=unknown - -# Commands to strip libraries. -old_striplib="strip --strip-debug" -striplib="strip --strip-unneeded" - - -# The linker used to build libraries. -LD="/usr/bin/ld" - -# How to create reloadable object files. -reload_flag=" -r" -reload_cmds="\$LD\$reload_flag -o \$output\$reload_objs" - -# Commands used to build an old-style archive. -old_archive_cmds="\$AR \$AR_FLAGS \$oldlib\$oldobjs~\$RANLIB \$tool_oldlib" - -# A language specific compiler. -CC="gcc" - -# Is the compiler the GNU compiler? -with_gcc=yes - -# Compiler flag to turn off builtin functions. -no_builtin_flag=" -fno-builtin" - -# Additional compiler flags for building library objects. -pic_flag=" -fPIC -DPIC" - -# How to pass a linker flag through the compiler. -wl="-Wl," - -# Compiler flag to prevent dynamic linking. -link_static_flag="-static" - -# Does compiler simultaneously support -c and -o options? -compiler_c_o="yes" - -# Whether or not to add -lc for building shared libraries. -build_libtool_need_lc=yes - -# Whether or not to disallow shared libs when runtime libs are static. -allow_libtool_libs_with_static_runtimes=no - -# Compiler flag to allow reflexive dlopens. -export_dynamic_flag_spec="\${wl}--export-dynamic" - -# Compiler flag to generate shared objects directly from archives. -whole_archive_flag_spec="\${wl}--whole-archive\$convenience \${wl}--no-whole-archive" - -# Whether the compiler copes with passing no objects directly. -compiler_needs_object="no" - -# Create an old-style archive from a shared archive. -old_archive_from_new_cmds="" - -# Create a temporary old-style archive to link instead of a shared archive. -old_archive_from_expsyms_cmds="" - -# Commands used to build a shared archive. -archive_cmds="\$CC -shared \$pic_flag \$libobjs \$deplibs \$compiler_flags \${wl}-soname \$wl\$soname -o \$lib" -archive_expsym_cmds="\$CC -shared \$pic_flag \$libobjs \$deplibs \$compiler_flags \${wl}-soname \$wl\$soname \${wl}-retain-symbols-file \$wl\$export_symbols -o \$lib" - -# Commands used to build a loadable module if different from building -# a shared archive. -module_cmds="" -module_expsym_cmds="" - -# Whether we are building with GNU ld or not. -with_gnu_ld="yes" - -# Flag that allows shared libraries with undefined symbols to be built. -allow_undefined_flag="" - -# Flag that enforces no undefined symbols. -no_undefined_flag="" - -# Flag to hardcode $libdir into a binary during linking. -# This must work even if $libdir does not exist -hardcode_libdir_flag_spec="\${wl}-rpath \${wl}\$libdir" - -# Whether we need a single "-rpath" flag with a separated argument. -hardcode_libdir_separator="" - -# Set to "yes" if using DIR/libNAME${shared_ext} during linking hardcodes -# DIR into the resulting binary. -hardcode_direct=no - -# Set to "yes" if using DIR/libNAME${shared_ext} during linking hardcodes -# DIR into the resulting binary and the resulting library dependency is -# "absolute",i.e impossible to change by setting ${shlibpath_var} if the -# library is relocated. -hardcode_direct_absolute=no - -# Set to "yes" if using the -LDIR flag during linking hardcodes DIR -# into the resulting binary. -hardcode_minus_L=no - -# Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR -# into the resulting binary. -hardcode_shlibpath_var=unsupported - -# Set to "yes" if building a shared library automatically hardcodes DIR -# into the library and all subsequent libraries and executables linked -# against it. -hardcode_automatic=no - -# Set to yes if linker adds runtime paths of dependent libraries -# to runtime path list. -inherit_rpath=no - -# Whether libtool must link a program against all its dependency libraries. -link_all_deplibs=unknown - -# Set to "yes" if exported symbols are required. -always_export_symbols=no - -# The commands to list exported symbols. -export_symbols_cmds="\$NM \$libobjs \$convenience | \$global_symbol_pipe | \$SED 's/.* //' | sort | uniq > \$export_symbols" - -# Symbols that should not be listed in the preloaded symbols. -exclude_expsyms="_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*" - -# Symbols that must always be exported. -include_expsyms="" - -# Commands necessary for linking programs (against libraries) with templates. -prelink_cmds="" - -# Commands necessary for finishing linking programs. -postlink_cmds="" - -# Specify filename containing input files. -file_list_spec="" - -# How to hardcode a shared library path into an executable. -hardcode_action=immediate - -# ### END LIBTOOL CONFIG - - -# libtool (GNU libtool) 2.4.2 -# Written by Gordon Matzigkeit , 1996 - -# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, 2006, -# 2007, 2008, 2009, 2010, 2011 Free Software Foundation, Inc. -# This is free software; see the source for copying conditions. There is NO -# warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - -# GNU Libtool is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# As a special exception to the GNU General Public License, -# if you distribute this file as part of a program or library that -# is built using GNU Libtool, you may include this file under the -# same distribution terms that you use for the rest of that program. -# -# GNU Libtool is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with GNU Libtool; see the file COPYING. If not, a copy -# can be downloaded from http://www.gnu.org/licenses/gpl.html, -# or obtained by writing to the Free Software Foundation, Inc., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. - -# Usage: $progname [OPTION]... [MODE-ARG]... -# -# Provide generalized library-building support services. -# -# --config show all configuration variables -# --debug enable verbose shell tracing -# -n, --dry-run display commands without modifying any files -# --features display basic configuration information and exit -# --mode=MODE use operation mode MODE -# --preserve-dup-deps don't remove duplicate dependency libraries -# --quiet, --silent don't print informational messages -# --no-quiet, --no-silent -# print informational messages (default) -# --no-warn don't display warning messages -# --tag=TAG use configuration variables from tag TAG -# -v, --verbose print more informational messages than default -# --no-verbose don't print the extra informational messages -# --version print version information -# -h, --help, --help-all print short, long, or detailed help message -# -# MODE must be one of the following: -# -# clean remove files from the build directory -# compile compile a source file into a libtool object -# execute automatically set library path, then run a program -# finish complete the installation of libtool libraries -# install install libraries or executables -# link create a library or an executable -# uninstall remove libraries from an installed directory -# -# MODE-ARGS vary depending on the MODE. When passed as first option, -# `--mode=MODE' may be abbreviated as `MODE' or a unique abbreviation of that. -# Try `$progname --help --mode=MODE' for a more detailed description of MODE. -# -# When reporting a bug, please describe a test case to reproduce it and -# include the following information: -# -# host-triplet: $host -# shell: $SHELL -# compiler: $LTCC -# compiler flags: $LTCFLAGS -# linker: $LD (gnu? $with_gnu_ld) -# $progname: (GNU libtool) 2.4.2 Debian-2.4.2-1.2 -# automake: $automake_version -# autoconf: $autoconf_version -# -# Report bugs to . -# GNU libtool home page: . -# General help using GNU software: . - -PROGRAM=libtool -PACKAGE=libtool -VERSION="2.4.2 Debian-2.4.2-1.2" -TIMESTAMP="" -package_revision=1.3337 - -# Be Bourne compatible -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then - emulate sh - NULLCMD=: - # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which - # is contrary to our usage. Disable this feature. - alias -g '${1+"$@"}'='"$@"' - setopt NO_GLOB_SUBST -else - case `(set -o) 2>/dev/null` in *posix*) set -o posix;; esac -fi -BIN_SH=xpg4; export BIN_SH # for Tru64 -DUALCASE=1; export DUALCASE # for MKS sh - -# A function that is used when there is no print builtin or printf. -func_fallback_echo () -{ - eval 'cat <<_LTECHO_EOF -$1 -_LTECHO_EOF' -} - -# NLS nuisances: We save the old values to restore during execute mode. -lt_user_locale= -lt_safe_locale= -for lt_var in LANG LANGUAGE LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES -do - eval "if test \"\${$lt_var+set}\" = set; then - save_$lt_var=\$$lt_var - $lt_var=C - export $lt_var - lt_user_locale=\"$lt_var=\\\$save_\$lt_var; \$lt_user_locale\" - lt_safe_locale=\"$lt_var=C; \$lt_safe_locale\" - fi" -done -LC_ALL=C -LANGUAGE=C -export LANGUAGE LC_ALL - -$lt_unset CDPATH - - -# Work around backward compatibility issue on IRIX 6.5. On IRIX 6.4+, sh -# is ksh but when the shell is invoked as "sh" and the current value of -# the _XPG environment variable is not equal to 1 (one), the special -# positional parameter $0, within a function call, is the name of the -# function. -progpath="$0" - - - -: ${CP="cp -f"} -test "${ECHO+set}" = set || ECHO=${as_echo-'printf %s\n'} -: ${MAKE="make"} -: ${MKDIR="mkdir"} -: ${MV="mv -f"} -: ${RM="rm -f"} -: ${SHELL="${CONFIG_SHELL-/bin/sh}"} -: ${Xsed="$SED -e 1s/^X//"} - -# Global variables: -EXIT_SUCCESS=0 -EXIT_FAILURE=1 -EXIT_MISMATCH=63 # $? = 63 is used to indicate version mismatch to missing. -EXIT_SKIP=77 # $? = 77 is used to indicate a skipped test to automake. - -exit_status=$EXIT_SUCCESS - -# Make sure IFS has a sensible default -lt_nl=' -' -IFS=" $lt_nl" - -dirname="s,/[^/]*$,," -basename="s,^.*/,," - -# func_dirname file append nondir_replacement -# Compute the dirname of FILE. If nonempty, add APPEND to the result, -# otherwise set result to NONDIR_REPLACEMENT. -func_dirname () -{ - case ${1} in - */*) func_dirname_result="${1%/*}${2}" ;; - * ) func_dirname_result="${3}" ;; - esac -} # Extended-shell func_dirname implementation - - -# func_basename file -func_basename () -{ - func_basename_result="${1##*/}" -} # Extended-shell func_basename implementation - - -# func_dirname_and_basename file append nondir_replacement -# perform func_basename and func_dirname in a single function -# call: -# dirname: Compute the dirname of FILE. If nonempty, -# add APPEND to the result, otherwise set result -# to NONDIR_REPLACEMENT. -# value returned in "$func_dirname_result" -# basename: Compute filename of FILE. -# value retuned in "$func_basename_result" -# Implementation must be kept synchronized with func_dirname -# and func_basename. For efficiency, we do not delegate to -# those functions but instead duplicate the functionality here. -func_dirname_and_basename () -{ - case ${1} in - */*) func_dirname_result="${1%/*}${2}" ;; - * ) func_dirname_result="${3}" ;; - esac - func_basename_result="${1##*/}" -} # Extended-shell func_dirname_and_basename implementation - - -# func_stripname prefix suffix name -# strip PREFIX and SUFFIX off of NAME. -# PREFIX and SUFFIX must not contain globbing or regex special -# characters, hashes, percent signs, but SUFFIX may contain a leading -# dot (in which case that matches only a dot). -# func_strip_suffix prefix name -func_stripname () -{ - # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are - # positional parameters, so assign one to ordinary parameter first. - func_stripname_result=${3} - func_stripname_result=${func_stripname_result#"${1}"} - func_stripname_result=${func_stripname_result%"${2}"} -} # Extended-shell func_stripname implementation - - -# These SED scripts presuppose an absolute path with a trailing slash. -pathcar='s,^/\([^/]*\).*$,\1,' -pathcdr='s,^/[^/]*,,' -removedotparts=':dotsl - s@/\./@/@g - t dotsl - s,/\.$,/,' -collapseslashes='s@/\{1,\}@/@g' -finalslash='s,/*$,/,' - -# func_normal_abspath PATH -# Remove doubled-up and trailing slashes, "." path components, -# and cancel out any ".." path components in PATH after making -# it an absolute path. -# value returned in "$func_normal_abspath_result" -func_normal_abspath () -{ - # Start from root dir and reassemble the path. - func_normal_abspath_result= - func_normal_abspath_tpath=$1 - func_normal_abspath_altnamespace= - case $func_normal_abspath_tpath in - "") - # Empty path, that just means $cwd. - func_stripname '' '/' "`pwd`" - func_normal_abspath_result=$func_stripname_result - return - ;; - # The next three entries are used to spot a run of precisely - # two leading slashes without using negated character classes; - # we take advantage of case's first-match behaviour. - ///*) - # Unusual form of absolute path, do nothing. - ;; - //*) - # Not necessarily an ordinary path; POSIX reserves leading '//' - # and for example Cygwin uses it to access remote file shares - # over CIFS/SMB, so we conserve a leading double slash if found. - func_normal_abspath_altnamespace=/ - ;; - /*) - # Absolute path, do nothing. - ;; - *) - # Relative path, prepend $cwd. - func_normal_abspath_tpath=`pwd`/$func_normal_abspath_tpath - ;; - esac - # Cancel out all the simple stuff to save iterations. We also want - # the path to end with a slash for ease of parsing, so make sure - # there is one (and only one) here. - func_normal_abspath_tpath=`$ECHO "$func_normal_abspath_tpath" | $SED \ - -e "$removedotparts" -e "$collapseslashes" -e "$finalslash"` - while :; do - # Processed it all yet? - if test "$func_normal_abspath_tpath" = / ; then - # If we ascended to the root using ".." the result may be empty now. - if test -z "$func_normal_abspath_result" ; then - func_normal_abspath_result=/ - fi - break - fi - func_normal_abspath_tcomponent=`$ECHO "$func_normal_abspath_tpath" | $SED \ - -e "$pathcar"` - func_normal_abspath_tpath=`$ECHO "$func_normal_abspath_tpath" | $SED \ - -e "$pathcdr"` - # Figure out what to do with it - case $func_normal_abspath_tcomponent in - "") - # Trailing empty path component, ignore it. - ;; - ..) - # Parent dir; strip last assembled component from result. - func_dirname "$func_normal_abspath_result" - func_normal_abspath_result=$func_dirname_result - ;; - *) - # Actual path component, append it. - func_normal_abspath_result=$func_normal_abspath_result/$func_normal_abspath_tcomponent - ;; - esac - done - # Restore leading double-slash if one was found on entry. - func_normal_abspath_result=$func_normal_abspath_altnamespace$func_normal_abspath_result -} - -# func_relative_path SRCDIR DSTDIR -# generates a relative path from SRCDIR to DSTDIR, with a trailing -# slash if non-empty, suitable for immediately appending a filename -# without needing to append a separator. -# value returned in "$func_relative_path_result" -func_relative_path () -{ - func_relative_path_result= - func_normal_abspath "$1" - func_relative_path_tlibdir=$func_normal_abspath_result - func_normal_abspath "$2" - func_relative_path_tbindir=$func_normal_abspath_result - - # Ascend the tree starting from libdir - while :; do - # check if we have found a prefix of bindir - case $func_relative_path_tbindir in - $func_relative_path_tlibdir) - # found an exact match - func_relative_path_tcancelled= - break - ;; - $func_relative_path_tlibdir*) - # found a matching prefix - func_stripname "$func_relative_path_tlibdir" '' "$func_relative_path_tbindir" - func_relative_path_tcancelled=$func_stripname_result - if test -z "$func_relative_path_result"; then - func_relative_path_result=. - fi - break - ;; - *) - func_dirname $func_relative_path_tlibdir - func_relative_path_tlibdir=${func_dirname_result} - if test "x$func_relative_path_tlibdir" = x ; then - # Have to descend all the way to the root! - func_relative_path_result=../$func_relative_path_result - func_relative_path_tcancelled=$func_relative_path_tbindir - break - fi - func_relative_path_result=../$func_relative_path_result - ;; - esac - done - - # Now calculate path; take care to avoid doubling-up slashes. - func_stripname '' '/' "$func_relative_path_result" - func_relative_path_result=$func_stripname_result - func_stripname '/' '/' "$func_relative_path_tcancelled" - if test "x$func_stripname_result" != x ; then - func_relative_path_result=${func_relative_path_result}/${func_stripname_result} - fi - - # Normalisation. If bindir is libdir, return empty string, - # else relative path ending with a slash; either way, target - # file name can be directly appended. - if test ! -z "$func_relative_path_result"; then - func_stripname './' '' "$func_relative_path_result/" - func_relative_path_result=$func_stripname_result - fi -} - -# The name of this program: -func_dirname_and_basename "$progpath" -progname=$func_basename_result - -# Make sure we have an absolute path for reexecution: -case $progpath in - [\\/]*|[A-Za-z]:\\*) ;; - *[\\/]*) - progdir=$func_dirname_result - progdir=`cd "$progdir" && pwd` - progpath="$progdir/$progname" - ;; - *) - save_IFS="$IFS" - IFS=${PATH_SEPARATOR-:} - for progdir in $PATH; do - IFS="$save_IFS" - test -x "$progdir/$progname" && break - done - IFS="$save_IFS" - test -n "$progdir" || progdir=`pwd` - progpath="$progdir/$progname" - ;; -esac - -# Sed substitution that helps us do robust quoting. It backslashifies -# metacharacters that are still active within double-quoted strings. -Xsed="${SED}"' -e 1s/^X//' -sed_quote_subst='s/\([`"$\\]\)/\\\1/g' - -# Same as above, but do not quote variable references. -double_quote_subst='s/\(["`\\]\)/\\\1/g' - -# Sed substitution that turns a string into a regex matching for the -# string literally. -sed_make_literal_regex='s,[].[^$\\*\/],\\&,g' - -# Sed substitution that converts a w32 file name or path -# which contains forward slashes, into one that contains -# (escaped) backslashes. A very naive implementation. -lt_sed_naive_backslashify='s|\\\\*|\\|g;s|/|\\|g;s|\\|\\\\|g' - -# Re-`\' parameter expansions in output of double_quote_subst that were -# `\'-ed in input to the same. If an odd number of `\' preceded a '$' -# in input to double_quote_subst, that '$' was protected from expansion. -# Since each input `\' is now two `\'s, look for any number of runs of -# four `\'s followed by two `\'s and then a '$'. `\' that '$'. -bs='\\' -bs2='\\\\' -bs4='\\\\\\\\' -dollar='\$' -sed_double_backslash="\ - s/$bs4/&\\ -/g - s/^$bs2$dollar/$bs&/ - s/\\([^$bs]\\)$bs2$dollar/\\1$bs2$bs$dollar/g - s/\n//g" - -# Standard options: -opt_dry_run=false -opt_help=false -opt_quiet=false -opt_verbose=false -opt_warning=: - -# func_echo arg... -# Echo program name prefixed message, along with the current mode -# name if it has been set yet. -func_echo () -{ - $ECHO "$progname: ${opt_mode+$opt_mode: }$*" -} - -# func_verbose arg... -# Echo program name prefixed message in verbose mode only. -func_verbose () -{ - $opt_verbose && func_echo ${1+"$@"} - - # A bug in bash halts the script if the last line of a function - # fails when set -e is in force, so we need another command to - # work around that: - : -} - -# func_echo_all arg... -# Invoke $ECHO with all args, space-separated. -func_echo_all () -{ - $ECHO "$*" -} - -# func_error arg... -# Echo program name prefixed message to standard error. -func_error () -{ - $ECHO "$progname: ${opt_mode+$opt_mode: }"${1+"$@"} 1>&2 -} - -# func_warning arg... -# Echo program name prefixed warning message to standard error. -func_warning () -{ - $opt_warning && $ECHO "$progname: ${opt_mode+$opt_mode: }warning: "${1+"$@"} 1>&2 - - # bash bug again: - : -} - -# func_fatal_error arg... -# Echo program name prefixed message to standard error, and exit. -func_fatal_error () -{ - func_error ${1+"$@"} - exit $EXIT_FAILURE -} - -# func_fatal_help arg... -# Echo program name prefixed message to standard error, followed by -# a help hint, and exit. -func_fatal_help () -{ - func_error ${1+"$@"} - func_fatal_error "$help" -} -help="Try \`$progname --help' for more information." ## default - - -# func_grep expression filename -# Check whether EXPRESSION matches any line of FILENAME, without output. -func_grep () -{ - $GREP "$1" "$2" >/dev/null 2>&1 -} - - -# func_mkdir_p directory-path -# Make sure the entire path to DIRECTORY-PATH is available. -func_mkdir_p () -{ - my_directory_path="$1" - my_dir_list= - - if test -n "$my_directory_path" && test "$opt_dry_run" != ":"; then - - # Protect directory names starting with `-' - case $my_directory_path in - -*) my_directory_path="./$my_directory_path" ;; - esac - - # While some portion of DIR does not yet exist... - while test ! -d "$my_directory_path"; do - # ...make a list in topmost first order. Use a colon delimited - # list incase some portion of path contains whitespace. - my_dir_list="$my_directory_path:$my_dir_list" - - # If the last portion added has no slash in it, the list is done - case $my_directory_path in */*) ;; *) break ;; esac - - # ...otherwise throw away the child directory and loop - my_directory_path=`$ECHO "$my_directory_path" | $SED -e "$dirname"` - done - my_dir_list=`$ECHO "$my_dir_list" | $SED 's,:*$,,'` - - save_mkdir_p_IFS="$IFS"; IFS=':' - for my_dir in $my_dir_list; do - IFS="$save_mkdir_p_IFS" - # mkdir can fail with a `File exist' error if two processes - # try to create one of the directories concurrently. Don't - # stop in that case! - $MKDIR "$my_dir" 2>/dev/null || : - done - IFS="$save_mkdir_p_IFS" - - # Bail out if we (or some other process) failed to create a directory. - test -d "$my_directory_path" || \ - func_fatal_error "Failed to create \`$1'" - fi -} - - -# func_mktempdir [string] -# Make a temporary directory that won't clash with other running -# libtool processes, and avoids race conditions if possible. If -# given, STRING is the basename for that directory. -func_mktempdir () -{ - my_template="${TMPDIR-/tmp}/${1-$progname}" - - if test "$opt_dry_run" = ":"; then - # Return a directory name, but don't create it in dry-run mode - my_tmpdir="${my_template}-$$" - else - - # If mktemp works, use that first and foremost - my_tmpdir=`mktemp -d "${my_template}-XXXXXXXX" 2>/dev/null` - - if test ! -d "$my_tmpdir"; then - # Failing that, at least try and use $RANDOM to avoid a race - my_tmpdir="${my_template}-${RANDOM-0}$$" - - save_mktempdir_umask=`umask` - umask 0077 - $MKDIR "$my_tmpdir" - umask $save_mktempdir_umask - fi - - # If we're not in dry-run mode, bomb out on failure - test -d "$my_tmpdir" || \ - func_fatal_error "cannot create temporary directory \`$my_tmpdir'" - fi - - $ECHO "$my_tmpdir" -} - - -# func_quote_for_eval arg -# Aesthetically quote ARG to be evaled later. -# This function returns two values: FUNC_QUOTE_FOR_EVAL_RESULT -# is double-quoted, suitable for a subsequent eval, whereas -# FUNC_QUOTE_FOR_EVAL_UNQUOTED_RESULT has merely all characters -# which are still active within double quotes backslashified. -func_quote_for_eval () -{ - case $1 in - *[\\\`\"\$]*) - func_quote_for_eval_unquoted_result=`$ECHO "$1" | $SED "$sed_quote_subst"` ;; - *) - func_quote_for_eval_unquoted_result="$1" ;; - esac - - case $func_quote_for_eval_unquoted_result in - # Double-quote args containing shell metacharacters to delay - # word splitting, command substitution and and variable - # expansion for a subsequent eval. - # Many Bourne shells cannot handle close brackets correctly - # in scan sets, so we specify it separately. - *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") - func_quote_for_eval_result="\"$func_quote_for_eval_unquoted_result\"" - ;; - *) - func_quote_for_eval_result="$func_quote_for_eval_unquoted_result" - esac -} - - -# func_quote_for_expand arg -# Aesthetically quote ARG to be evaled later; same as above, -# but do not quote variable references. -func_quote_for_expand () -{ - case $1 in - *[\\\`\"]*) - my_arg=`$ECHO "$1" | $SED \ - -e "$double_quote_subst" -e "$sed_double_backslash"` ;; - *) - my_arg="$1" ;; - esac - - case $my_arg in - # Double-quote args containing shell metacharacters to delay - # word splitting and command substitution for a subsequent eval. - # Many Bourne shells cannot handle close brackets correctly - # in scan sets, so we specify it separately. - *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") - my_arg="\"$my_arg\"" - ;; - esac - - func_quote_for_expand_result="$my_arg" -} - - -# func_show_eval cmd [fail_exp] -# Unless opt_silent is true, then output CMD. Then, if opt_dryrun is -# not true, evaluate CMD. If the evaluation of CMD fails, and FAIL_EXP -# is given, then evaluate it. -func_show_eval () -{ - my_cmd="$1" - my_fail_exp="${2-:}" - - ${opt_silent-false} || { - func_quote_for_expand "$my_cmd" - eval "func_echo $func_quote_for_expand_result" - } - - if ${opt_dry_run-false}; then :; else - eval "$my_cmd" - my_status=$? - if test "$my_status" -eq 0; then :; else - eval "(exit $my_status); $my_fail_exp" - fi - fi -} - - -# func_show_eval_locale cmd [fail_exp] -# Unless opt_silent is true, then output CMD. Then, if opt_dryrun is -# not true, evaluate CMD. If the evaluation of CMD fails, and FAIL_EXP -# is given, then evaluate it. Use the saved locale for evaluation. -func_show_eval_locale () -{ - my_cmd="$1" - my_fail_exp="${2-:}" - - ${opt_silent-false} || { - func_quote_for_expand "$my_cmd" - eval "func_echo $func_quote_for_expand_result" - } - - if ${opt_dry_run-false}; then :; else - eval "$lt_user_locale - $my_cmd" - my_status=$? - eval "$lt_safe_locale" - if test "$my_status" -eq 0; then :; else - eval "(exit $my_status); $my_fail_exp" - fi - fi -} - -# func_tr_sh -# Turn $1 into a string suitable for a shell variable name. -# Result is stored in $func_tr_sh_result. All characters -# not in the set a-zA-Z0-9_ are replaced with '_'. Further, -# if $1 begins with a digit, a '_' is prepended as well. -func_tr_sh () -{ - case $1 in - [0-9]* | *[!a-zA-Z0-9_]*) - func_tr_sh_result=`$ECHO "$1" | $SED 's/^\([0-9]\)/_\1/; s/[^a-zA-Z0-9_]/_/g'` - ;; - * ) - func_tr_sh_result=$1 - ;; - esac -} - - -# func_version -# Echo version message to standard output and exit. -func_version () -{ - $opt_debug - - $SED -n '/(C)/!b go - :more - /\./!{ - N - s/\n# / / - b more - } - :go - /^# '$PROGRAM' (GNU /,/# warranty; / { - s/^# // - s/^# *$// - s/\((C)\)[ 0-9,-]*\( [1-9][0-9]*\)/\1\2/ - p - }' < "$progpath" - exit $? -} - -# func_usage -# Echo short help message to standard output and exit. -func_usage () -{ - $opt_debug - - $SED -n '/^# Usage:/,/^# *.*--help/ { - s/^# // - s/^# *$// - s/\$progname/'$progname'/ - p - }' < "$progpath" - echo - $ECHO "run \`$progname --help | more' for full usage" - exit $? -} - -# func_help [NOEXIT] -# Echo long help message to standard output and exit, -# unless 'noexit' is passed as argument. -func_help () -{ - $opt_debug - - $SED -n '/^# Usage:/,/# Report bugs to/ { - :print - s/^# // - s/^# *$// - s*\$progname*'$progname'* - s*\$host*'"$host"'* - s*\$SHELL*'"$SHELL"'* - s*\$LTCC*'"$LTCC"'* - s*\$LTCFLAGS*'"$LTCFLAGS"'* - s*\$LD*'"$LD"'* - s/\$with_gnu_ld/'"$with_gnu_ld"'/ - s/\$automake_version/'"`(${AUTOMAKE-automake} --version) 2>/dev/null |$SED 1q`"'/ - s/\$autoconf_version/'"`(${AUTOCONF-autoconf} --version) 2>/dev/null |$SED 1q`"'/ - p - d - } - /^# .* home page:/b print - /^# General help using/b print - ' < "$progpath" - ret=$? - if test -z "$1"; then - exit $ret - fi -} - -# func_missing_arg argname -# Echo program name prefixed message to standard error and set global -# exit_cmd. -func_missing_arg () -{ - $opt_debug - - func_error "missing argument for $1." - exit_cmd=exit -} - - -# func_split_short_opt shortopt -# Set func_split_short_opt_name and func_split_short_opt_arg shell -# variables after splitting SHORTOPT after the 2nd character. -func_split_short_opt () -{ - func_split_short_opt_arg=${1#??} - func_split_short_opt_name=${1%"$func_split_short_opt_arg"} -} # Extended-shell func_split_short_opt implementation - - -# func_split_long_opt longopt -# Set func_split_long_opt_name and func_split_long_opt_arg shell -# variables after splitting LONGOPT at the `=' sign. -func_split_long_opt () -{ - func_split_long_opt_name=${1%%=*} - func_split_long_opt_arg=${1#*=} -} # Extended-shell func_split_long_opt implementation - -exit_cmd=: - - - - - -magic="%%%MAGIC variable%%%" -magic_exe="%%%MAGIC EXE variable%%%" - -# Global variables. -nonopt= -preserve_args= -lo2o="s/\\.lo\$/.${objext}/" -o2lo="s/\\.${objext}\$/.lo/" -extracted_archives= -extracted_serial=0 - -# If this variable is set in any of the actions, the command in it -# will be execed at the end. This prevents here-documents from being -# left over by shells. -exec_cmd= - -# func_append var value -# Append VALUE to the end of shell variable VAR. -func_append () -{ - eval "${1}+=\${2}" -} # Extended-shell func_append implementation - -# func_append_quoted var value -# Quote VALUE and append to the end of shell variable VAR, separated -# by a space. -func_append_quoted () -{ - func_quote_for_eval "${2}" - eval "${1}+=\\ \$func_quote_for_eval_result" -} # Extended-shell func_append_quoted implementation - - -# func_arith arithmetic-term... -func_arith () -{ - func_arith_result=$(( $* )) -} # Extended-shell func_arith implementation - - -# func_len string -# STRING may not start with a hyphen. -func_len () -{ - func_len_result=${#1} -} # Extended-shell func_len implementation - - -# func_lo2o object -func_lo2o () -{ - case ${1} in - *.lo) func_lo2o_result=${1%.lo}.${objext} ;; - *) func_lo2o_result=${1} ;; - esac -} # Extended-shell func_lo2o implementation - - -# func_xform libobj-or-source -func_xform () -{ - func_xform_result=${1%.*}.lo -} # Extended-shell func_xform implementation - - -# func_fatal_configuration arg... -# Echo program name prefixed message to standard error, followed by -# a configuration failure hint, and exit. -func_fatal_configuration () -{ - func_error ${1+"$@"} - func_error "See the $PACKAGE documentation for more information." - func_fatal_error "Fatal configuration error." -} - - -# func_config -# Display the configuration for all the tags in this script. -func_config () -{ - re_begincf='^# ### BEGIN LIBTOOL' - re_endcf='^# ### END LIBTOOL' - - # Default configuration. - $SED "1,/$re_begincf CONFIG/d;/$re_endcf CONFIG/,\$d" < "$progpath" - - # Now print the configurations for the tags. - for tagname in $taglist; do - $SED -n "/$re_begincf TAG CONFIG: $tagname\$/,/$re_endcf TAG CONFIG: $tagname\$/p" < "$progpath" - done - - exit $? -} - -# func_features -# Display the features supported by this script. -func_features () -{ - echo "host: $host" - if test "$build_libtool_libs" = yes; then - echo "enable shared libraries" - else - echo "disable shared libraries" - fi - if test "$build_old_libs" = yes; then - echo "enable static libraries" - else - echo "disable static libraries" - fi - - exit $? -} - -# func_enable_tag tagname -# Verify that TAGNAME is valid, and either flag an error and exit, or -# enable the TAGNAME tag. We also add TAGNAME to the global $taglist -# variable here. -func_enable_tag () -{ - # Global variable: - tagname="$1" - - re_begincf="^# ### BEGIN LIBTOOL TAG CONFIG: $tagname\$" - re_endcf="^# ### END LIBTOOL TAG CONFIG: $tagname\$" - sed_extractcf="/$re_begincf/,/$re_endcf/p" - - # Validate tagname. - case $tagname in - *[!-_A-Za-z0-9,/]*) - func_fatal_error "invalid tag name: $tagname" - ;; - esac - - # Don't test for the "default" C tag, as we know it's - # there but not specially marked. - case $tagname in - CC) ;; - *) - if $GREP "$re_begincf" "$progpath" >/dev/null 2>&1; then - taglist="$taglist $tagname" - - # Evaluate the configuration. Be careful to quote the path - # and the sed script, to avoid splitting on whitespace, but - # also don't use non-portable quotes within backquotes within - # quotes we have to do it in 2 steps: - extractedcf=`$SED -n -e "$sed_extractcf" < "$progpath"` - eval "$extractedcf" - else - func_error "ignoring unknown tag $tagname" - fi - ;; - esac -} - -# func_check_version_match -# Ensure that we are using m4 macros, and libtool script from the same -# release of libtool. -func_check_version_match () -{ - if test "$package_revision" != "$macro_revision"; then - if test "$VERSION" != "$macro_version"; then - if test -z "$macro_version"; then - cat >&2 <<_LT_EOF -$progname: Version mismatch error. This is $PACKAGE $VERSION, but the -$progname: definition of this LT_INIT comes from an older release. -$progname: You should recreate aclocal.m4 with macros from $PACKAGE $VERSION -$progname: and run autoconf again. -_LT_EOF - else - cat >&2 <<_LT_EOF -$progname: Version mismatch error. This is $PACKAGE $VERSION, but the -$progname: definition of this LT_INIT comes from $PACKAGE $macro_version. -$progname: You should recreate aclocal.m4 with macros from $PACKAGE $VERSION -$progname: and run autoconf again. -_LT_EOF - fi - else - cat >&2 <<_LT_EOF -$progname: Version mismatch error. This is $PACKAGE $VERSION, revision $package_revision, -$progname: but the definition of this LT_INIT comes from revision $macro_revision. -$progname: You should recreate aclocal.m4 with macros from revision $package_revision -$progname: of $PACKAGE $VERSION and run autoconf again. -_LT_EOF - fi - - exit $EXIT_MISMATCH - fi -} - - -# Shorthand for --mode=foo, only valid as the first argument -case $1 in -clean|clea|cle|cl) - shift; set dummy --mode clean ${1+"$@"}; shift - ;; -compile|compil|compi|comp|com|co|c) - shift; set dummy --mode compile ${1+"$@"}; shift - ;; -execute|execut|execu|exec|exe|ex|e) - shift; set dummy --mode execute ${1+"$@"}; shift - ;; -finish|finis|fini|fin|fi|f) - shift; set dummy --mode finish ${1+"$@"}; shift - ;; -install|instal|insta|inst|ins|in|i) - shift; set dummy --mode install ${1+"$@"}; shift - ;; -link|lin|li|l) - shift; set dummy --mode link ${1+"$@"}; shift - ;; -uninstall|uninstal|uninsta|uninst|unins|unin|uni|un|u) - shift; set dummy --mode uninstall ${1+"$@"}; shift - ;; -esac - - - -# Option defaults: -opt_debug=: -opt_dry_run=false -opt_config=false -opt_preserve_dup_deps=false -opt_features=false -opt_finish=false -opt_help=false -opt_help_all=false -opt_silent=: -opt_warning=: -opt_verbose=: -opt_silent=false -opt_verbose=false - - -# Parse options once, thoroughly. This comes as soon as possible in the -# script to make things like `--version' happen as quickly as we can. -{ - # this just eases exit handling - while test $# -gt 0; do - opt="$1" - shift - case $opt in - --debug|-x) opt_debug='set -x' - func_echo "enabling shell trace mode" - $opt_debug - ;; - --dry-run|--dryrun|-n) - opt_dry_run=: - ;; - --config) - opt_config=: -func_config - ;; - --dlopen|-dlopen) - optarg="$1" - opt_dlopen="${opt_dlopen+$opt_dlopen -}$optarg" - shift - ;; - --preserve-dup-deps) - opt_preserve_dup_deps=: - ;; - --features) - opt_features=: -func_features - ;; - --finish) - opt_finish=: -set dummy --mode finish ${1+"$@"}; shift - ;; - --help) - opt_help=: - ;; - --help-all) - opt_help_all=: -opt_help=': help-all' - ;; - --mode) - test $# = 0 && func_missing_arg $opt && break - optarg="$1" - opt_mode="$optarg" -case $optarg in - # Valid mode arguments: - clean|compile|execute|finish|install|link|relink|uninstall) ;; - - # Catch anything else as an error - *) func_error "invalid argument for $opt" - exit_cmd=exit - break - ;; -esac - shift - ;; - --no-silent|--no-quiet) - opt_silent=false -preserve_args+=" $opt" - ;; - --no-warning|--no-warn) - opt_warning=false -preserve_args+=" $opt" - ;; - --no-verbose) - opt_verbose=false -preserve_args+=" $opt" - ;; - --silent|--quiet) - opt_silent=: -preserve_args+=" $opt" - opt_verbose=false - ;; - --verbose|-v) - opt_verbose=: -preserve_args+=" $opt" -opt_silent=false - ;; - --tag) - test $# = 0 && func_missing_arg $opt && break - optarg="$1" - opt_tag="$optarg" -preserve_args+=" $opt $optarg" -func_enable_tag "$optarg" - shift - ;; - - -\?|-h) func_usage ;; - --help) func_help ;; - --version) func_version ;; - - # Separate optargs to long options: - --*=*) - func_split_long_opt "$opt" - set dummy "$func_split_long_opt_name" "$func_split_long_opt_arg" ${1+"$@"} - shift - ;; - - # Separate non-argument short options: - -\?*|-h*|-n*|-v*) - func_split_short_opt "$opt" - set dummy "$func_split_short_opt_name" "-$func_split_short_opt_arg" ${1+"$@"} - shift - ;; - - --) break ;; - -*) func_fatal_help "unrecognized option \`$opt'" ;; - *) set dummy "$opt" ${1+"$@"}; shift; break ;; - esac - done - - # Validate options: - - # save first non-option argument - if test "$#" -gt 0; then - nonopt="$opt" - shift - fi - - # preserve --debug - test "$opt_debug" = : || preserve_args+=" --debug" - - case $host in - *cygwin* | *mingw* | *pw32* | *cegcc*) - # don't eliminate duplications in $postdeps and $predeps - opt_duplicate_compiler_generated_deps=: - ;; - *) - opt_duplicate_compiler_generated_deps=$opt_preserve_dup_deps - ;; - esac - - $opt_help || { - # Sanity checks first: - func_check_version_match - - if test "$build_libtool_libs" != yes && test "$build_old_libs" != yes; then - func_fatal_configuration "not configured to build any kind of library" - fi - - # Darwin sucks - eval std_shrext=\"$shrext_cmds\" - - # Only execute mode is allowed to have -dlopen flags. - if test -n "$opt_dlopen" && test "$opt_mode" != execute; then - func_error "unrecognized option \`-dlopen'" - $ECHO "$help" 1>&2 - exit $EXIT_FAILURE - fi - - # Change the help message to a mode-specific one. - generic_help="$help" - help="Try \`$progname --help --mode=$opt_mode' for more information." - } - - - # Bail if the options were screwed - $exit_cmd $EXIT_FAILURE -} - - - - -## ----------- ## -## Main. ## -## ----------- ## - -# func_lalib_p file -# True iff FILE is a libtool `.la' library or `.lo' object file. -# This function is only a basic sanity check; it will hardly flush out -# determined imposters. -func_lalib_p () -{ - test -f "$1" && - $SED -e 4q "$1" 2>/dev/null \ - | $GREP "^# Generated by .*$PACKAGE" > /dev/null 2>&1 -} - -# func_lalib_unsafe_p file -# True iff FILE is a libtool `.la' library or `.lo' object file. -# This function implements the same check as func_lalib_p without -# resorting to external programs. To this end, it redirects stdin and -# closes it afterwards, without saving the original file descriptor. -# As a safety measure, use it only where a negative result would be -# fatal anyway. Works if `file' does not exist. -func_lalib_unsafe_p () -{ - lalib_p=no - if test -f "$1" && test -r "$1" && exec 5<&0 <"$1"; then - for lalib_p_l in 1 2 3 4 - do - read lalib_p_line - case "$lalib_p_line" in - \#\ Generated\ by\ *$PACKAGE* ) lalib_p=yes; break;; - esac - done - exec 0<&5 5<&- - fi - test "$lalib_p" = yes -} - -# func_ltwrapper_script_p file -# True iff FILE is a libtool wrapper script -# This function is only a basic sanity check; it will hardly flush out -# determined imposters. -func_ltwrapper_script_p () -{ - func_lalib_p "$1" -} - -# func_ltwrapper_executable_p file -# True iff FILE is a libtool wrapper executable -# This function is only a basic sanity check; it will hardly flush out -# determined imposters. -func_ltwrapper_executable_p () -{ - func_ltwrapper_exec_suffix= - case $1 in - *.exe) ;; - *) func_ltwrapper_exec_suffix=.exe ;; - esac - $GREP "$magic_exe" "$1$func_ltwrapper_exec_suffix" >/dev/null 2>&1 -} - -# func_ltwrapper_scriptname file -# Assumes file is an ltwrapper_executable -# uses $file to determine the appropriate filename for a -# temporary ltwrapper_script. -func_ltwrapper_scriptname () -{ - func_dirname_and_basename "$1" "" "." - func_stripname '' '.exe' "$func_basename_result" - func_ltwrapper_scriptname_result="$func_dirname_result/$objdir/${func_stripname_result}_ltshwrapper" -} - -# func_ltwrapper_p file -# True iff FILE is a libtool wrapper script or wrapper executable -# This function is only a basic sanity check; it will hardly flush out -# determined imposters. -func_ltwrapper_p () -{ - func_ltwrapper_script_p "$1" || func_ltwrapper_executable_p "$1" -} - - -# func_execute_cmds commands fail_cmd -# Execute tilde-delimited COMMANDS. -# If FAIL_CMD is given, eval that upon failure. -# FAIL_CMD may read-access the current command in variable CMD! -func_execute_cmds () -{ - $opt_debug - save_ifs=$IFS; IFS='~' - for cmd in $1; do - IFS=$save_ifs - eval cmd=\"$cmd\" - func_show_eval "$cmd" "${2-:}" - done - IFS=$save_ifs -} - - -# func_source file -# Source FILE, adding directory component if necessary. -# Note that it is not necessary on cygwin/mingw to append a dot to -# FILE even if both FILE and FILE.exe exist: automatic-append-.exe -# behavior happens only for exec(3), not for open(2)! Also, sourcing -# `FILE.' does not work on cygwin managed mounts. -func_source () -{ - $opt_debug - case $1 in - */* | *\\*) . "$1" ;; - *) . "./$1" ;; - esac -} - - -# func_resolve_sysroot PATH -# Replace a leading = in PATH with a sysroot. Store the result into -# func_resolve_sysroot_result -func_resolve_sysroot () -{ - func_resolve_sysroot_result=$1 - case $func_resolve_sysroot_result in - =*) - func_stripname '=' '' "$func_resolve_sysroot_result" - func_resolve_sysroot_result=$lt_sysroot$func_stripname_result - ;; - esac -} - -# func_replace_sysroot PATH -# If PATH begins with the sysroot, replace it with = and -# store the result into func_replace_sysroot_result. -func_replace_sysroot () -{ - case "$lt_sysroot:$1" in - ?*:"$lt_sysroot"*) - func_stripname "$lt_sysroot" '' "$1" - func_replace_sysroot_result="=$func_stripname_result" - ;; - *) - # Including no sysroot. - func_replace_sysroot_result=$1 - ;; - esac -} - -# func_infer_tag arg -# Infer tagged configuration to use if any are available and -# if one wasn't chosen via the "--tag" command line option. -# Only attempt this if the compiler in the base compile -# command doesn't match the default compiler. -# arg is usually of the form 'gcc ...' -func_infer_tag () -{ - $opt_debug - if test -n "$available_tags" && test -z "$tagname"; then - CC_quoted= - for arg in $CC; do - func_append_quoted CC_quoted "$arg" - done - CC_expanded=`func_echo_all $CC` - CC_quoted_expanded=`func_echo_all $CC_quoted` - case $@ in - # Blanks in the command may have been stripped by the calling shell, - # but not from the CC environment variable when configure was run. - " $CC "* | "$CC "* | " $CC_expanded "* | "$CC_expanded "* | \ - " $CC_quoted"* | "$CC_quoted "* | " $CC_quoted_expanded "* | "$CC_quoted_expanded "*) ;; - # Blanks at the start of $base_compile will cause this to fail - # if we don't check for them as well. - *) - for z in $available_tags; do - if $GREP "^# ### BEGIN LIBTOOL TAG CONFIG: $z$" < "$progpath" > /dev/null; then - # Evaluate the configuration. - eval "`${SED} -n -e '/^# ### BEGIN LIBTOOL TAG CONFIG: '$z'$/,/^# ### END LIBTOOL TAG CONFIG: '$z'$/p' < $progpath`" - CC_quoted= - for arg in $CC; do - # Double-quote args containing other shell metacharacters. - func_append_quoted CC_quoted "$arg" - done - CC_expanded=`func_echo_all $CC` - CC_quoted_expanded=`func_echo_all $CC_quoted` - case "$@ " in - " $CC "* | "$CC "* | " $CC_expanded "* | "$CC_expanded "* | \ - " $CC_quoted"* | "$CC_quoted "* | " $CC_quoted_expanded "* | "$CC_quoted_expanded "*) - # The compiler in the base compile command matches - # the one in the tagged configuration. - # Assume this is the tagged configuration we want. - tagname=$z - break - ;; - esac - fi - done - # If $tagname still isn't set, then no tagged configuration - # was found and let the user know that the "--tag" command - # line option must be used. - if test -z "$tagname"; then - func_echo "unable to infer tagged configuration" - func_fatal_error "specify a tag with \`--tag'" -# else -# func_verbose "using $tagname tagged configuration" - fi - ;; - esac - fi -} - - - -# func_write_libtool_object output_name pic_name nonpic_name -# Create a libtool object file (analogous to a ".la" file), -# but don't create it if we're doing a dry run. -func_write_libtool_object () -{ - write_libobj=${1} - if test "$build_libtool_libs" = yes; then - write_lobj=\'${2}\' - else - write_lobj=none - fi - - if test "$build_old_libs" = yes; then - write_oldobj=\'${3}\' - else - write_oldobj=none - fi - - $opt_dry_run || { - cat >${write_libobj}T </dev/null` - if test "$?" -eq 0 && test -n "${func_convert_core_file_wine_to_w32_tmp}"; then - func_convert_core_file_wine_to_w32_result=`$ECHO "$func_convert_core_file_wine_to_w32_tmp" | - $SED -e "$lt_sed_naive_backslashify"` - else - func_convert_core_file_wine_to_w32_result= - fi - fi -} -# end: func_convert_core_file_wine_to_w32 - - -# func_convert_core_path_wine_to_w32 ARG -# Helper function used by path conversion functions when $build is *nix, and -# $host is mingw, cygwin, or some other w32 environment. Relies on a correctly -# configured wine environment available, with the winepath program in $build's -# $PATH. Assumes ARG has no leading or trailing path separator characters. -# -# ARG is path to be converted from $build format to win32. -# Result is available in $func_convert_core_path_wine_to_w32_result. -# Unconvertible file (directory) names in ARG are skipped; if no directory names -# are convertible, then the result may be empty. -func_convert_core_path_wine_to_w32 () -{ - $opt_debug - # unfortunately, winepath doesn't convert paths, only file names - func_convert_core_path_wine_to_w32_result="" - if test -n "$1"; then - oldIFS=$IFS - IFS=: - for func_convert_core_path_wine_to_w32_f in $1; do - IFS=$oldIFS - func_convert_core_file_wine_to_w32 "$func_convert_core_path_wine_to_w32_f" - if test -n "$func_convert_core_file_wine_to_w32_result" ; then - if test -z "$func_convert_core_path_wine_to_w32_result"; then - func_convert_core_path_wine_to_w32_result="$func_convert_core_file_wine_to_w32_result" - else - func_append func_convert_core_path_wine_to_w32_result ";$func_convert_core_file_wine_to_w32_result" - fi - fi - done - IFS=$oldIFS - fi -} -# end: func_convert_core_path_wine_to_w32 - - -# func_cygpath ARGS... -# Wrapper around calling the cygpath program via LT_CYGPATH. This is used when -# when (1) $build is *nix and Cygwin is hosted via a wine environment; or (2) -# $build is MSYS and $host is Cygwin, or (3) $build is Cygwin. In case (1) or -# (2), returns the Cygwin file name or path in func_cygpath_result (input -# file name or path is assumed to be in w32 format, as previously converted -# from $build's *nix or MSYS format). In case (3), returns the w32 file name -# or path in func_cygpath_result (input file name or path is assumed to be in -# Cygwin format). Returns an empty string on error. -# -# ARGS are passed to cygpath, with the last one being the file name or path to -# be converted. -# -# Specify the absolute *nix (or w32) name to cygpath in the LT_CYGPATH -# environment variable; do not put it in $PATH. -func_cygpath () -{ - $opt_debug - if test -n "$LT_CYGPATH" && test -f "$LT_CYGPATH"; then - func_cygpath_result=`$LT_CYGPATH "$@" 2>/dev/null` - if test "$?" -ne 0; then - # on failure, ensure result is empty - func_cygpath_result= - fi - else - func_cygpath_result= - func_error "LT_CYGPATH is empty or specifies non-existent file: \`$LT_CYGPATH'" - fi -} -#end: func_cygpath - - -# func_convert_core_msys_to_w32 ARG -# Convert file name or path ARG from MSYS format to w32 format. Return -# result in func_convert_core_msys_to_w32_result. -func_convert_core_msys_to_w32 () -{ - $opt_debug - # awkward: cmd appends spaces to result - func_convert_core_msys_to_w32_result=`( cmd //c echo "$1" ) 2>/dev/null | - $SED -e 's/[ ]*$//' -e "$lt_sed_naive_backslashify"` -} -#end: func_convert_core_msys_to_w32 - - -# func_convert_file_check ARG1 ARG2 -# Verify that ARG1 (a file name in $build format) was converted to $host -# format in ARG2. Otherwise, emit an error message, but continue (resetting -# func_to_host_file_result to ARG1). -func_convert_file_check () -{ - $opt_debug - if test -z "$2" && test -n "$1" ; then - func_error "Could not determine host file name corresponding to" - func_error " \`$1'" - func_error "Continuing, but uninstalled executables may not work." - # Fallback: - func_to_host_file_result="$1" - fi -} -# end func_convert_file_check - - -# func_convert_path_check FROM_PATHSEP TO_PATHSEP FROM_PATH TO_PATH -# Verify that FROM_PATH (a path in $build format) was converted to $host -# format in TO_PATH. Otherwise, emit an error message, but continue, resetting -# func_to_host_file_result to a simplistic fallback value (see below). -func_convert_path_check () -{ - $opt_debug - if test -z "$4" && test -n "$3"; then - func_error "Could not determine the host path corresponding to" - func_error " \`$3'" - func_error "Continuing, but uninstalled executables may not work." - # Fallback. This is a deliberately simplistic "conversion" and - # should not be "improved". See libtool.info. - if test "x$1" != "x$2"; then - lt_replace_pathsep_chars="s|$1|$2|g" - func_to_host_path_result=`echo "$3" | - $SED -e "$lt_replace_pathsep_chars"` - else - func_to_host_path_result="$3" - fi - fi -} -# end func_convert_path_check - - -# func_convert_path_front_back_pathsep FRONTPAT BACKPAT REPL ORIG -# Modifies func_to_host_path_result by prepending REPL if ORIG matches FRONTPAT -# and appending REPL if ORIG matches BACKPAT. -func_convert_path_front_back_pathsep () -{ - $opt_debug - case $4 in - $1 ) func_to_host_path_result="$3$func_to_host_path_result" - ;; - esac - case $4 in - $2 ) func_to_host_path_result+="$3" - ;; - esac -} -# end func_convert_path_front_back_pathsep - - -################################################## -# $build to $host FILE NAME CONVERSION FUNCTIONS # -################################################## -# invoked via `$to_host_file_cmd ARG' -# -# In each case, ARG is the path to be converted from $build to $host format. -# Result will be available in $func_to_host_file_result. - - -# func_to_host_file ARG -# Converts the file name ARG from $build format to $host format. Return result -# in func_to_host_file_result. -func_to_host_file () -{ - $opt_debug - $to_host_file_cmd "$1" -} -# end func_to_host_file - - -# func_to_tool_file ARG LAZY -# converts the file name ARG from $build format to toolchain format. Return -# result in func_to_tool_file_result. If the conversion in use is listed -# in (the comma separated) LAZY, no conversion takes place. -func_to_tool_file () -{ - $opt_debug - case ,$2, in - *,"$to_tool_file_cmd",*) - func_to_tool_file_result=$1 - ;; - *) - $to_tool_file_cmd "$1" - func_to_tool_file_result=$func_to_host_file_result - ;; - esac -} -# end func_to_tool_file - - -# func_convert_file_noop ARG -# Copy ARG to func_to_host_file_result. -func_convert_file_noop () -{ - func_to_host_file_result="$1" -} -# end func_convert_file_noop - - -# func_convert_file_msys_to_w32 ARG -# Convert file name ARG from (mingw) MSYS to (mingw) w32 format; automatic -# conversion to w32 is not available inside the cwrapper. Returns result in -# func_to_host_file_result. -func_convert_file_msys_to_w32 () -{ - $opt_debug - func_to_host_file_result="$1" - if test -n "$1"; then - func_convert_core_msys_to_w32 "$1" - func_to_host_file_result="$func_convert_core_msys_to_w32_result" - fi - func_convert_file_check "$1" "$func_to_host_file_result" -} -# end func_convert_file_msys_to_w32 - - -# func_convert_file_cygwin_to_w32 ARG -# Convert file name ARG from Cygwin to w32 format. Returns result in -# func_to_host_file_result. -func_convert_file_cygwin_to_w32 () -{ - $opt_debug - func_to_host_file_result="$1" - if test -n "$1"; then - # because $build is cygwin, we call "the" cygpath in $PATH; no need to use - # LT_CYGPATH in this case. - func_to_host_file_result=`cygpath -m "$1"` - fi - func_convert_file_check "$1" "$func_to_host_file_result" -} -# end func_convert_file_cygwin_to_w32 - - -# func_convert_file_nix_to_w32 ARG -# Convert file name ARG from *nix to w32 format. Requires a wine environment -# and a working winepath. Returns result in func_to_host_file_result. -func_convert_file_nix_to_w32 () -{ - $opt_debug - func_to_host_file_result="$1" - if test -n "$1"; then - func_convert_core_file_wine_to_w32 "$1" - func_to_host_file_result="$func_convert_core_file_wine_to_w32_result" - fi - func_convert_file_check "$1" "$func_to_host_file_result" -} -# end func_convert_file_nix_to_w32 - - -# func_convert_file_msys_to_cygwin ARG -# Convert file name ARG from MSYS to Cygwin format. Requires LT_CYGPATH set. -# Returns result in func_to_host_file_result. -func_convert_file_msys_to_cygwin () -{ - $opt_debug - func_to_host_file_result="$1" - if test -n "$1"; then - func_convert_core_msys_to_w32 "$1" - func_cygpath -u "$func_convert_core_msys_to_w32_result" - func_to_host_file_result="$func_cygpath_result" - fi - func_convert_file_check "$1" "$func_to_host_file_result" -} -# end func_convert_file_msys_to_cygwin - - -# func_convert_file_nix_to_cygwin ARG -# Convert file name ARG from *nix to Cygwin format. Requires Cygwin installed -# in a wine environment, working winepath, and LT_CYGPATH set. Returns result -# in func_to_host_file_result. -func_convert_file_nix_to_cygwin () -{ - $opt_debug - func_to_host_file_result="$1" - if test -n "$1"; then - # convert from *nix to w32, then use cygpath to convert from w32 to cygwin. - func_convert_core_file_wine_to_w32 "$1" - func_cygpath -u "$func_convert_core_file_wine_to_w32_result" - func_to_host_file_result="$func_cygpath_result" - fi - func_convert_file_check "$1" "$func_to_host_file_result" -} -# end func_convert_file_nix_to_cygwin - - -############################################# -# $build to $host PATH CONVERSION FUNCTIONS # -############################################# -# invoked via `$to_host_path_cmd ARG' -# -# In each case, ARG is the path to be converted from $build to $host format. -# The result will be available in $func_to_host_path_result. -# -# Path separators are also converted from $build format to $host format. If -# ARG begins or ends with a path separator character, it is preserved (but -# converted to $host format) on output. -# -# All path conversion functions are named using the following convention: -# file name conversion function : func_convert_file_X_to_Y () -# path conversion function : func_convert_path_X_to_Y () -# where, for any given $build/$host combination the 'X_to_Y' value is the -# same. If conversion functions are added for new $build/$host combinations, -# the two new functions must follow this pattern, or func_init_to_host_path_cmd -# will break. - - -# func_init_to_host_path_cmd -# Ensures that function "pointer" variable $to_host_path_cmd is set to the -# appropriate value, based on the value of $to_host_file_cmd. -to_host_path_cmd= -func_init_to_host_path_cmd () -{ - $opt_debug - if test -z "$to_host_path_cmd"; then - func_stripname 'func_convert_file_' '' "$to_host_file_cmd" - to_host_path_cmd="func_convert_path_${func_stripname_result}" - fi -} - - -# func_to_host_path ARG -# Converts the path ARG from $build format to $host format. Return result -# in func_to_host_path_result. -func_to_host_path () -{ - $opt_debug - func_init_to_host_path_cmd - $to_host_path_cmd "$1" -} -# end func_to_host_path - - -# func_convert_path_noop ARG -# Copy ARG to func_to_host_path_result. -func_convert_path_noop () -{ - func_to_host_path_result="$1" -} -# end func_convert_path_noop - - -# func_convert_path_msys_to_w32 ARG -# Convert path ARG from (mingw) MSYS to (mingw) w32 format; automatic -# conversion to w32 is not available inside the cwrapper. Returns result in -# func_to_host_path_result. -func_convert_path_msys_to_w32 () -{ - $opt_debug - func_to_host_path_result="$1" - if test -n "$1"; then - # Remove leading and trailing path separator characters from ARG. MSYS - # behavior is inconsistent here; cygpath turns them into '.;' and ';.'; - # and winepath ignores them completely. - func_stripname : : "$1" - func_to_host_path_tmp1=$func_stripname_result - func_convert_core_msys_to_w32 "$func_to_host_path_tmp1" - func_to_host_path_result="$func_convert_core_msys_to_w32_result" - func_convert_path_check : ";" \ - "$func_to_host_path_tmp1" "$func_to_host_path_result" - func_convert_path_front_back_pathsep ":*" "*:" ";" "$1" - fi -} -# end func_convert_path_msys_to_w32 - - -# func_convert_path_cygwin_to_w32 ARG -# Convert path ARG from Cygwin to w32 format. Returns result in -# func_to_host_file_result. -func_convert_path_cygwin_to_w32 () -{ - $opt_debug - func_to_host_path_result="$1" - if test -n "$1"; then - # See func_convert_path_msys_to_w32: - func_stripname : : "$1" - func_to_host_path_tmp1=$func_stripname_result - func_to_host_path_result=`cygpath -m -p "$func_to_host_path_tmp1"` - func_convert_path_check : ";" \ - "$func_to_host_path_tmp1" "$func_to_host_path_result" - func_convert_path_front_back_pathsep ":*" "*:" ";" "$1" - fi -} -# end func_convert_path_cygwin_to_w32 - - -# func_convert_path_nix_to_w32 ARG -# Convert path ARG from *nix to w32 format. Requires a wine environment and -# a working winepath. Returns result in func_to_host_file_result. -func_convert_path_nix_to_w32 () -{ - $opt_debug - func_to_host_path_result="$1" - if test -n "$1"; then - # See func_convert_path_msys_to_w32: - func_stripname : : "$1" - func_to_host_path_tmp1=$func_stripname_result - func_convert_core_path_wine_to_w32 "$func_to_host_path_tmp1" - func_to_host_path_result="$func_convert_core_path_wine_to_w32_result" - func_convert_path_check : ";" \ - "$func_to_host_path_tmp1" "$func_to_host_path_result" - func_convert_path_front_back_pathsep ":*" "*:" ";" "$1" - fi -} -# end func_convert_path_nix_to_w32 - - -# func_convert_path_msys_to_cygwin ARG -# Convert path ARG from MSYS to Cygwin format. Requires LT_CYGPATH set. -# Returns result in func_to_host_file_result. -func_convert_path_msys_to_cygwin () -{ - $opt_debug - func_to_host_path_result="$1" - if test -n "$1"; then - # See func_convert_path_msys_to_w32: - func_stripname : : "$1" - func_to_host_path_tmp1=$func_stripname_result - func_convert_core_msys_to_w32 "$func_to_host_path_tmp1" - func_cygpath -u -p "$func_convert_core_msys_to_w32_result" - func_to_host_path_result="$func_cygpath_result" - func_convert_path_check : : \ - "$func_to_host_path_tmp1" "$func_to_host_path_result" - func_convert_path_front_back_pathsep ":*" "*:" : "$1" - fi -} -# end func_convert_path_msys_to_cygwin - - -# func_convert_path_nix_to_cygwin ARG -# Convert path ARG from *nix to Cygwin format. Requires Cygwin installed in a -# a wine environment, working winepath, and LT_CYGPATH set. Returns result in -# func_to_host_file_result. -func_convert_path_nix_to_cygwin () -{ - $opt_debug - func_to_host_path_result="$1" - if test -n "$1"; then - # Remove leading and trailing path separator characters from - # ARG. msys behavior is inconsistent here, cygpath turns them - # into '.;' and ';.', and winepath ignores them completely. - func_stripname : : "$1" - func_to_host_path_tmp1=$func_stripname_result - func_convert_core_path_wine_to_w32 "$func_to_host_path_tmp1" - func_cygpath -u -p "$func_convert_core_path_wine_to_w32_result" - func_to_host_path_result="$func_cygpath_result" - func_convert_path_check : : \ - "$func_to_host_path_tmp1" "$func_to_host_path_result" - func_convert_path_front_back_pathsep ":*" "*:" : "$1" - fi -} -# end func_convert_path_nix_to_cygwin - - -# func_mode_compile arg... -func_mode_compile () -{ - $opt_debug - # Get the compilation command and the source file. - base_compile= - srcfile="$nonopt" # always keep a non-empty value in "srcfile" - suppress_opt=yes - suppress_output= - arg_mode=normal - libobj= - later= - pie_flag= - - for arg - do - case $arg_mode in - arg ) - # do not "continue". Instead, add this to base_compile - lastarg="$arg" - arg_mode=normal - ;; - - target ) - libobj="$arg" - arg_mode=normal - continue - ;; - - normal ) - # Accept any command-line options. - case $arg in - -o) - test -n "$libobj" && \ - func_fatal_error "you cannot specify \`-o' more than once" - arg_mode=target - continue - ;; - - -pie | -fpie | -fPIE) - pie_flag+=" $arg" - continue - ;; - - -shared | -static | -prefer-pic | -prefer-non-pic) - later+=" $arg" - continue - ;; - - -no-suppress) - suppress_opt=no - continue - ;; - - -Xcompiler) - arg_mode=arg # the next one goes into the "base_compile" arg list - continue # The current "srcfile" will either be retained or - ;; # replaced later. I would guess that would be a bug. - - -Wc,*) - func_stripname '-Wc,' '' "$arg" - args=$func_stripname_result - lastarg= - save_ifs="$IFS"; IFS=',' - for arg in $args; do - IFS="$save_ifs" - func_append_quoted lastarg "$arg" - done - IFS="$save_ifs" - func_stripname ' ' '' "$lastarg" - lastarg=$func_stripname_result - - # Add the arguments to base_compile. - base_compile+=" $lastarg" - continue - ;; - - *) - # Accept the current argument as the source file. - # The previous "srcfile" becomes the current argument. - # - lastarg="$srcfile" - srcfile="$arg" - ;; - esac # case $arg - ;; - esac # case $arg_mode - - # Aesthetically quote the previous argument. - func_append_quoted base_compile "$lastarg" - done # for arg - - case $arg_mode in - arg) - func_fatal_error "you must specify an argument for -Xcompile" - ;; - target) - func_fatal_error "you must specify a target with \`-o'" - ;; - *) - # Get the name of the library object. - test -z "$libobj" && { - func_basename "$srcfile" - libobj="$func_basename_result" - } - ;; - esac - - # Recognize several different file suffixes. - # If the user specifies -o file.o, it is replaced with file.lo - case $libobj in - *.[cCFSifmso] | \ - *.ada | *.adb | *.ads | *.asm | \ - *.c++ | *.cc | *.ii | *.class | *.cpp | *.cxx | \ - *.[fF][09]? | *.for | *.java | *.go | *.obj | *.sx | *.cu | *.cup) - func_xform "$libobj" - libobj=$func_xform_result - ;; - esac - - case $libobj in - *.lo) func_lo2o "$libobj"; obj=$func_lo2o_result ;; - *) - func_fatal_error "cannot determine name of library object from \`$libobj'" - ;; - esac - - func_infer_tag $base_compile - - for arg in $later; do - case $arg in - -shared) - test "$build_libtool_libs" != yes && \ - func_fatal_configuration "can not build a shared library" - build_old_libs=no - continue - ;; - - -static) - build_libtool_libs=no - build_old_libs=yes - continue - ;; - - -prefer-pic) - pic_mode=yes - continue - ;; - - -prefer-non-pic) - pic_mode=no - continue - ;; - esac - done - - func_quote_for_eval "$libobj" - test "X$libobj" != "X$func_quote_for_eval_result" \ - && $ECHO "X$libobj" | $GREP '[]~#^*{};<>?"'"'"' &()|`$[]' \ - && func_warning "libobj name \`$libobj' may not contain shell special characters." - func_dirname_and_basename "$obj" "/" "" - objname="$func_basename_result" - xdir="$func_dirname_result" - lobj=${xdir}$objdir/$objname - - test -z "$base_compile" && \ - func_fatal_help "you must specify a compilation command" - - # Delete any leftover library objects. - if test "$build_old_libs" = yes; then - removelist="$obj $lobj $libobj ${libobj}T" - else - removelist="$lobj $libobj ${libobj}T" - fi - - # On Cygwin there's no "real" PIC flag so we must build both object types - case $host_os in - cygwin* | mingw* | pw32* | os2* | cegcc*) - pic_mode=default - ;; - esac - if test "$pic_mode" = no && test "$deplibs_check_method" != pass_all; then - # non-PIC code in shared libraries is not supported - pic_mode=default - fi - - # Calculate the filename of the output object if compiler does - # not support -o with -c - if test "$compiler_c_o" = no; then - output_obj=`$ECHO "$srcfile" | $SED 's%^.*/%%; s%\.[^.]*$%%'`.${objext} - lockfile="$output_obj.lock" - else - output_obj= - need_locks=no - lockfile= - fi - - # Lock this critical section if it is needed - # We use this script file to make the link, it avoids creating a new file - if test "$need_locks" = yes; then - until $opt_dry_run || ln "$progpath" "$lockfile" 2>/dev/null; do - func_echo "Waiting for $lockfile to be removed" - sleep 2 - done - elif test "$need_locks" = warn; then - if test -f "$lockfile"; then - $ECHO "\ -*** ERROR, $lockfile exists and contains: -`cat $lockfile 2>/dev/null` - -This indicates that another process is trying to use the same -temporary object file, and libtool could not work around it because -your compiler does not support \`-c' and \`-o' together. If you -repeat this compilation, it may succeed, by chance, but you had better -avoid parallel builds (make -j) in this platform, or get a better -compiler." - - $opt_dry_run || $RM $removelist - exit $EXIT_FAILURE - fi - removelist+=" $output_obj" - $ECHO "$srcfile" > "$lockfile" - fi - - $opt_dry_run || $RM $removelist - removelist+=" $lockfile" - trap '$opt_dry_run || $RM $removelist; exit $EXIT_FAILURE' 1 2 15 - - func_to_tool_file "$srcfile" func_convert_file_msys_to_w32 - srcfile=$func_to_tool_file_result - func_quote_for_eval "$srcfile" - qsrcfile=$func_quote_for_eval_result - - # Only build a PIC object if we are building libtool libraries. - if test "$build_libtool_libs" = yes; then - # Without this assignment, base_compile gets emptied. - fbsd_hideous_sh_bug=$base_compile - - if test "$pic_mode" != no; then - command="$base_compile $qsrcfile $pic_flag" - else - # Don't build PIC code - command="$base_compile $qsrcfile" - fi - - func_mkdir_p "$xdir$objdir" - - if test -z "$output_obj"; then - # Place PIC objects in $objdir - command+=" -o $lobj" - fi - - func_show_eval_locale "$command" \ - 'test -n "$output_obj" && $RM $removelist; exit $EXIT_FAILURE' - - if test "$need_locks" = warn && - test "X`cat $lockfile 2>/dev/null`" != "X$srcfile"; then - $ECHO "\ -*** ERROR, $lockfile contains: -`cat $lockfile 2>/dev/null` - -but it should contain: -$srcfile - -This indicates that another process is trying to use the same -temporary object file, and libtool could not work around it because -your compiler does not support \`-c' and \`-o' together. If you -repeat this compilation, it may succeed, by chance, but you had better -avoid parallel builds (make -j) in this platform, or get a better -compiler." - - $opt_dry_run || $RM $removelist - exit $EXIT_FAILURE - fi - - # Just move the object if needed, then go on to compile the next one - if test -n "$output_obj" && test "X$output_obj" != "X$lobj"; then - func_show_eval '$MV "$output_obj" "$lobj"' \ - 'error=$?; $opt_dry_run || $RM $removelist; exit $error' - fi - - # Allow error messages only from the first compilation. - if test "$suppress_opt" = yes; then - suppress_output=' >/dev/null 2>&1' - fi - fi - - # Only build a position-dependent object if we build old libraries. - if test "$build_old_libs" = yes; then - if test "$pic_mode" != yes; then - # Don't build PIC code - command="$base_compile $qsrcfile$pie_flag" - else - command="$base_compile $qsrcfile $pic_flag" - fi - if test "$compiler_c_o" = yes; then - command+=" -o $obj" - fi - - # Suppress compiler output if we already did a PIC compilation. - command+="$suppress_output" - func_show_eval_locale "$command" \ - '$opt_dry_run || $RM $removelist; exit $EXIT_FAILURE' - - if test "$need_locks" = warn && - test "X`cat $lockfile 2>/dev/null`" != "X$srcfile"; then - $ECHO "\ -*** ERROR, $lockfile contains: -`cat $lockfile 2>/dev/null` - -but it should contain: -$srcfile - -This indicates that another process is trying to use the same -temporary object file, and libtool could not work around it because -your compiler does not support \`-c' and \`-o' together. If you -repeat this compilation, it may succeed, by chance, but you had better -avoid parallel builds (make -j) in this platform, or get a better -compiler." - - $opt_dry_run || $RM $removelist - exit $EXIT_FAILURE - fi - - # Just move the object if needed - if test -n "$output_obj" && test "X$output_obj" != "X$obj"; then - func_show_eval '$MV "$output_obj" "$obj"' \ - 'error=$?; $opt_dry_run || $RM $removelist; exit $error' - fi - fi - - $opt_dry_run || { - func_write_libtool_object "$libobj" "$objdir/$objname" "$objname" - - # Unlock the critical section if it was locked - if test "$need_locks" != no; then - removelist=$lockfile - $RM "$lockfile" - fi - } - - exit $EXIT_SUCCESS -} - -$opt_help || { - test "$opt_mode" = compile && func_mode_compile ${1+"$@"} -} - -func_mode_help () -{ - # We need to display help for each of the modes. - case $opt_mode in - "") - # Generic help is extracted from the usage comments - # at the start of this file. - func_help - ;; - - clean) - $ECHO \ -"Usage: $progname [OPTION]... --mode=clean RM [RM-OPTION]... FILE... - -Remove files from the build directory. - -RM is the name of the program to use to delete files associated with each FILE -(typically \`/bin/rm'). RM-OPTIONS are options (such as \`-f') to be passed -to RM. - -If FILE is a libtool library, object or program, all the files associated -with it are deleted. Otherwise, only FILE itself is deleted using RM." - ;; - - compile) - $ECHO \ -"Usage: $progname [OPTION]... --mode=compile COMPILE-COMMAND... SOURCEFILE - -Compile a source file into a libtool library object. - -This mode accepts the following additional options: - - -o OUTPUT-FILE set the output file name to OUTPUT-FILE - -no-suppress do not suppress compiler output for multiple passes - -prefer-pic try to build PIC objects only - -prefer-non-pic try to build non-PIC objects only - -shared do not build a \`.o' file suitable for static linking - -static only build a \`.o' file suitable for static linking - -Wc,FLAG pass FLAG directly to the compiler - -COMPILE-COMMAND is a command to be used in creating a \`standard' object file -from the given SOURCEFILE. - -The output file name is determined by removing the directory component from -SOURCEFILE, then substituting the C source code suffix \`.c' with the -library object suffix, \`.lo'." - ;; - - execute) - $ECHO \ -"Usage: $progname [OPTION]... --mode=execute COMMAND [ARGS]... - -Automatically set library path, then run a program. - -This mode accepts the following additional options: - - -dlopen FILE add the directory containing FILE to the library path - -This mode sets the library path environment variable according to \`-dlopen' -flags. - -If any of the ARGS are libtool executable wrappers, then they are translated -into their corresponding uninstalled binary, and any of their required library -directories are added to the library path. - -Then, COMMAND is executed, with ARGS as arguments." - ;; - - finish) - $ECHO \ -"Usage: $progname [OPTION]... --mode=finish [LIBDIR]... - -Complete the installation of libtool libraries. - -Each LIBDIR is a directory that contains libtool libraries. - -The commands that this mode executes may require superuser privileges. Use -the \`--dry-run' option if you just want to see what would be executed." - ;; - - install) - $ECHO \ -"Usage: $progname [OPTION]... --mode=install INSTALL-COMMAND... - -Install executables or libraries. - -INSTALL-COMMAND is the installation command. The first component should be -either the \`install' or \`cp' program. - -The following components of INSTALL-COMMAND are treated specially: - - -inst-prefix-dir PREFIX-DIR Use PREFIX-DIR as a staging area for installation - -The rest of the components are interpreted as arguments to that command (only -BSD-compatible install options are recognized)." - ;; - - link) - $ECHO \ -"Usage: $progname [OPTION]... --mode=link LINK-COMMAND... - -Link object files or libraries together to form another library, or to -create an executable program. - -LINK-COMMAND is a command using the C compiler that you would use to create -a program from several object files. - -The following components of LINK-COMMAND are treated specially: - - -all-static do not do any dynamic linking at all - -avoid-version do not add a version suffix if possible - -bindir BINDIR specify path to binaries directory (for systems where - libraries must be found in the PATH setting at runtime) - -dlopen FILE \`-dlpreopen' FILE if it cannot be dlopened at runtime - -dlpreopen FILE link in FILE and add its symbols to lt_preloaded_symbols - -export-dynamic allow symbols from OUTPUT-FILE to be resolved with dlsym(3) - -export-symbols SYMFILE - try to export only the symbols listed in SYMFILE - -export-symbols-regex REGEX - try to export only the symbols matching REGEX - -LLIBDIR search LIBDIR for required installed libraries - -lNAME OUTPUT-FILE requires the installed library libNAME - -module build a library that can dlopened - -no-fast-install disable the fast-install mode - -no-install link a not-installable executable - -no-undefined declare that a library does not refer to external symbols - -o OUTPUT-FILE create OUTPUT-FILE from the specified objects - -objectlist FILE Use a list of object files found in FILE to specify objects - -precious-files-regex REGEX - don't remove output files matching REGEX - -release RELEASE specify package release information - -rpath LIBDIR the created library will eventually be installed in LIBDIR - -R[ ]LIBDIR add LIBDIR to the runtime path of programs and libraries - -shared only do dynamic linking of libtool libraries - -shrext SUFFIX override the standard shared library file extension - -static do not do any dynamic linking of uninstalled libtool libraries - -static-libtool-libs - do not do any dynamic linking of libtool libraries - -version-info CURRENT[:REVISION[:AGE]] - specify library version info [each variable defaults to 0] - -weak LIBNAME declare that the target provides the LIBNAME interface - -Wc,FLAG - -Xcompiler FLAG pass linker-specific FLAG directly to the compiler - -Wl,FLAG - -Xlinker FLAG pass linker-specific FLAG directly to the linker - -XCClinker FLAG pass link-specific FLAG to the compiler driver (CC) - -All other options (arguments beginning with \`-') are ignored. - -Every other argument is treated as a filename. Files ending in \`.la' are -treated as uninstalled libtool libraries, other files are standard or library -object files. - -If the OUTPUT-FILE ends in \`.la', then a libtool library is created, -only library objects (\`.lo' files) may be specified, and \`-rpath' is -required, except when creating a convenience library. - -If OUTPUT-FILE ends in \`.a' or \`.lib', then a standard library is created -using \`ar' and \`ranlib', or on Windows using \`lib'. - -If OUTPUT-FILE ends in \`.lo' or \`.${objext}', then a reloadable object file -is created, otherwise an executable program is created." - ;; - - uninstall) - $ECHO \ -"Usage: $progname [OPTION]... --mode=uninstall RM [RM-OPTION]... FILE... - -Remove libraries from an installation directory. - -RM is the name of the program to use to delete files associated with each FILE -(typically \`/bin/rm'). RM-OPTIONS are options (such as \`-f') to be passed -to RM. - -If FILE is a libtool library, all the files associated with it are deleted. -Otherwise, only FILE itself is deleted using RM." - ;; - - *) - func_fatal_help "invalid operation mode \`$opt_mode'" - ;; - esac - - echo - $ECHO "Try \`$progname --help' for more information about other modes." -} - -# Now that we've collected a possible --mode arg, show help if necessary -if $opt_help; then - if test "$opt_help" = :; then - func_mode_help - else - { - func_help noexit - for opt_mode in compile link execute install finish uninstall clean; do - func_mode_help - done - } | sed -n '1p; 2,$s/^Usage:/ or: /p' - { - func_help noexit - for opt_mode in compile link execute install finish uninstall clean; do - echo - func_mode_help - done - } | - sed '1d - /^When reporting/,/^Report/{ - H - d - } - $x - /information about other modes/d - /more detailed .*MODE/d - s/^Usage:.*--mode=\([^ ]*\) .*/Description of \1 mode:/' - fi - exit $? -fi - - -# func_mode_execute arg... -func_mode_execute () -{ - $opt_debug - # The first argument is the command name. - cmd="$nonopt" - test -z "$cmd" && \ - func_fatal_help "you must specify a COMMAND" - - # Handle -dlopen flags immediately. - for file in $opt_dlopen; do - test -f "$file" \ - || func_fatal_help "\`$file' is not a file" - - dir= - case $file in - *.la) - func_resolve_sysroot "$file" - file=$func_resolve_sysroot_result - - # Check to see that this really is a libtool archive. - func_lalib_unsafe_p "$file" \ - || func_fatal_help "\`$lib' is not a valid libtool archive" - - # Read the libtool library. - dlname= - library_names= - func_source "$file" - - # Skip this library if it cannot be dlopened. - if test -z "$dlname"; then - # Warn if it was a shared library. - test -n "$library_names" && \ - func_warning "\`$file' was not linked with \`-export-dynamic'" - continue - fi - - func_dirname "$file" "" "." - dir="$func_dirname_result" - - if test -f "$dir/$objdir/$dlname"; then - dir+="/$objdir" - else - if test ! -f "$dir/$dlname"; then - func_fatal_error "cannot find \`$dlname' in \`$dir' or \`$dir/$objdir'" - fi - fi - ;; - - *.lo) - # Just add the directory containing the .lo file. - func_dirname "$file" "" "." - dir="$func_dirname_result" - ;; - - *) - func_warning "\`-dlopen' is ignored for non-libtool libraries and objects" - continue - ;; - esac - - # Get the absolute pathname. - absdir=`cd "$dir" && pwd` - test -n "$absdir" && dir="$absdir" - - # Now add the directory to shlibpath_var. - if eval "test -z \"\$$shlibpath_var\""; then - eval "$shlibpath_var=\"\$dir\"" - else - eval "$shlibpath_var=\"\$dir:\$$shlibpath_var\"" - fi - done - - # This variable tells wrapper scripts just to set shlibpath_var - # rather than running their programs. - libtool_execute_magic="$magic" - - # Check if any of the arguments is a wrapper script. - args= - for file - do - case $file in - -* | *.la | *.lo ) ;; - *) - # Do a test to see if this is really a libtool program. - if func_ltwrapper_script_p "$file"; then - func_source "$file" - # Transform arg to wrapped name. - file="$progdir/$program" - elif func_ltwrapper_executable_p "$file"; then - func_ltwrapper_scriptname "$file" - func_source "$func_ltwrapper_scriptname_result" - # Transform arg to wrapped name. - file="$progdir/$program" - fi - ;; - esac - # Quote arguments (to preserve shell metacharacters). - func_append_quoted args "$file" - done - - if test "X$opt_dry_run" = Xfalse; then - if test -n "$shlibpath_var"; then - # Export the shlibpath_var. - eval "export $shlibpath_var" - fi - - # Restore saved environment variables - for lt_var in LANG LANGUAGE LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES - do - eval "if test \"\${save_$lt_var+set}\" = set; then - $lt_var=\$save_$lt_var; export $lt_var - else - $lt_unset $lt_var - fi" - done - - # Now prepare to actually exec the command. - exec_cmd="\$cmd$args" - else - # Display what would be done. - if test -n "$shlibpath_var"; then - eval "\$ECHO \"\$shlibpath_var=\$$shlibpath_var\"" - echo "export $shlibpath_var" - fi - $ECHO "$cmd$args" - exit $EXIT_SUCCESS - fi -} - -test "$opt_mode" = execute && func_mode_execute ${1+"$@"} - - -# func_mode_finish arg... -func_mode_finish () -{ - $opt_debug - libs= - libdirs= - admincmds= - - for opt in "$nonopt" ${1+"$@"} - do - if test -d "$opt"; then - libdirs+=" $opt" - - elif test -f "$opt"; then - if func_lalib_unsafe_p "$opt"; then - libs+=" $opt" - else - func_warning "\`$opt' is not a valid libtool archive" - fi - - else - func_fatal_error "invalid argument \`$opt'" - fi - done - - if test -n "$libs"; then - if test -n "$lt_sysroot"; then - sysroot_regex=`$ECHO "$lt_sysroot" | $SED "$sed_make_literal_regex"` - sysroot_cmd="s/\([ ']\)$sysroot_regex/\1/g;" - else - sysroot_cmd= - fi - - # Remove sysroot references - if $opt_dry_run; then - for lib in $libs; do - echo "removing references to $lt_sysroot and \`=' prefixes from $lib" - done - else - tmpdir=`func_mktempdir` - for lib in $libs; do - sed -e "${sysroot_cmd} s/\([ ']-[LR]\)=/\1/g; s/\([ ']\)=/\1/g" $lib \ - > $tmpdir/tmp-la - mv -f $tmpdir/tmp-la $lib - done - ${RM}r "$tmpdir" - fi - fi - - if test -n "$finish_cmds$finish_eval" && test -n "$libdirs"; then - for libdir in $libdirs; do - if test -n "$finish_cmds"; then - # Do each command in the finish commands. - func_execute_cmds "$finish_cmds" 'admincmds="$admincmds -'"$cmd"'"' - fi - if test -n "$finish_eval"; then - # Do the single finish_eval. - eval cmds=\"$finish_eval\" - $opt_dry_run || eval "$cmds" || admincmds+=" - $cmds" - fi - done - fi - - # Exit here if they wanted silent mode. - $opt_silent && exit $EXIT_SUCCESS - - if test -n "$finish_cmds$finish_eval" && test -n "$libdirs"; then - echo "----------------------------------------------------------------------" - echo "Libraries have been installed in:" - for libdir in $libdirs; do - $ECHO " $libdir" - done - echo - echo "If you ever happen to want to link against installed libraries" - echo "in a given directory, LIBDIR, you must either use libtool, and" - echo "specify the full pathname of the library, or use the \`-LLIBDIR'" - echo "flag during linking and do at least one of the following:" - if test -n "$shlibpath_var"; then - echo " - add LIBDIR to the \`$shlibpath_var' environment variable" - echo " during execution" - fi - if test -n "$runpath_var"; then - echo " - add LIBDIR to the \`$runpath_var' environment variable" - echo " during linking" - fi - if test -n "$hardcode_libdir_flag_spec"; then - libdir=LIBDIR - eval flag=\"$hardcode_libdir_flag_spec\" - - $ECHO " - use the \`$flag' linker flag" - fi - if test -n "$admincmds"; then - $ECHO " - have your system administrator run these commands:$admincmds" - fi - if test -f /etc/ld.so.conf; then - echo " - have your system administrator add LIBDIR to \`/etc/ld.so.conf'" - fi - echo - - echo "See any operating system documentation about shared libraries for" - case $host in - solaris2.[6789]|solaris2.1[0-9]) - echo "more information, such as the ld(1), crle(1) and ld.so(8) manual" - echo "pages." - ;; - *) - echo "more information, such as the ld(1) and ld.so(8) manual pages." - ;; - esac - echo "----------------------------------------------------------------------" - fi - exit $EXIT_SUCCESS -} - -test "$opt_mode" = finish && func_mode_finish ${1+"$@"} - - -# func_mode_install arg... -func_mode_install () -{ - $opt_debug - # There may be an optional sh(1) argument at the beginning of - # install_prog (especially on Windows NT). - if test "$nonopt" = "$SHELL" || test "$nonopt" = /bin/sh || - # Allow the use of GNU shtool's install command. - case $nonopt in *shtool*) :;; *) false;; esac; then - # Aesthetically quote it. - func_quote_for_eval "$nonopt" - install_prog="$func_quote_for_eval_result " - arg=$1 - shift - else - install_prog= - arg=$nonopt - fi - - # The real first argument should be the name of the installation program. - # Aesthetically quote it. - func_quote_for_eval "$arg" - install_prog+="$func_quote_for_eval_result" - install_shared_prog=$install_prog - case " $install_prog " in - *[\\\ /]cp\ *) install_cp=: ;; - *) install_cp=false ;; - esac - - # We need to accept at least all the BSD install flags. - dest= - files= - opts= - prev= - install_type= - isdir=no - stripme= - no_mode=: - for arg - do - arg2= - if test -n "$dest"; then - files+=" $dest" - dest=$arg - continue - fi - - case $arg in - -d) isdir=yes ;; - -f) - if $install_cp; then :; else - prev=$arg - fi - ;; - -g | -m | -o) - prev=$arg - ;; - -s) - stripme=" -s" - continue - ;; - -*) - ;; - *) - # If the previous option needed an argument, then skip it. - if test -n "$prev"; then - if test "x$prev" = x-m && test -n "$install_override_mode"; then - arg2=$install_override_mode - no_mode=false - fi - prev= - else - dest=$arg - continue - fi - ;; - esac - - # Aesthetically quote the argument. - func_quote_for_eval "$arg" - install_prog+=" $func_quote_for_eval_result" - if test -n "$arg2"; then - func_quote_for_eval "$arg2" - fi - install_shared_prog+=" $func_quote_for_eval_result" - done - - test -z "$install_prog" && \ - func_fatal_help "you must specify an install program" - - test -n "$prev" && \ - func_fatal_help "the \`$prev' option requires an argument" - - if test -n "$install_override_mode" && $no_mode; then - if $install_cp; then :; else - func_quote_for_eval "$install_override_mode" - install_shared_prog+=" -m $func_quote_for_eval_result" - fi - fi - - if test -z "$files"; then - if test -z "$dest"; then - func_fatal_help "no file or destination specified" - else - func_fatal_help "you must specify a destination" - fi - fi - - # Strip any trailing slash from the destination. - func_stripname '' '/' "$dest" - dest=$func_stripname_result - - # Check to see that the destination is a directory. - test -d "$dest" && isdir=yes - if test "$isdir" = yes; then - destdir="$dest" - destname= - else - func_dirname_and_basename "$dest" "" "." - destdir="$func_dirname_result" - destname="$func_basename_result" - - # Not a directory, so check to see that there is only one file specified. - set dummy $files; shift - test "$#" -gt 1 && \ - func_fatal_help "\`$dest' is not a directory" - fi - case $destdir in - [\\/]* | [A-Za-z]:[\\/]*) ;; - *) - for file in $files; do - case $file in - *.lo) ;; - *) - func_fatal_help "\`$destdir' must be an absolute directory name" - ;; - esac - done - ;; - esac - - # This variable tells wrapper scripts just to set variables rather - # than running their programs. - libtool_install_magic="$magic" - - staticlibs= - future_libdirs= - current_libdirs= - for file in $files; do - - # Do each installation. - case $file in - *.$libext) - # Do the static libraries later. - staticlibs+=" $file" - ;; - - *.la) - func_resolve_sysroot "$file" - file=$func_resolve_sysroot_result - - # Check to see that this really is a libtool archive. - func_lalib_unsafe_p "$file" \ - || func_fatal_help "\`$file' is not a valid libtool archive" - - library_names= - old_library= - relink_command= - func_source "$file" - - # Add the libdir to current_libdirs if it is the destination. - if test "X$destdir" = "X$libdir"; then - case "$current_libdirs " in - *" $libdir "*) ;; - *) current_libdirs+=" $libdir" ;; - esac - else - # Note the libdir as a future libdir. - case "$future_libdirs " in - *" $libdir "*) ;; - *) future_libdirs+=" $libdir" ;; - esac - fi - - func_dirname "$file" "/" "" - dir="$func_dirname_result" - dir+="$objdir" - - if test -n "$relink_command"; then - # Determine the prefix the user has applied to our future dir. - inst_prefix_dir=`$ECHO "$destdir" | $SED -e "s%$libdir\$%%"` - - # Don't allow the user to place us outside of our expected - # location b/c this prevents finding dependent libraries that - # are installed to the same prefix. - # At present, this check doesn't affect windows .dll's that - # are installed into $libdir/../bin (currently, that works fine) - # but it's something to keep an eye on. - test "$inst_prefix_dir" = "$destdir" && \ - func_fatal_error "error: cannot install \`$file' to a directory not ending in $libdir" - - if test -n "$inst_prefix_dir"; then - # Stick the inst_prefix_dir data into the link command. - relink_command=`$ECHO "$relink_command" | $SED "s%@inst_prefix_dir@%-inst-prefix-dir $inst_prefix_dir%"` - else - relink_command=`$ECHO "$relink_command" | $SED "s%@inst_prefix_dir@%%"` - fi - - func_warning "relinking \`$file'" - func_show_eval "$relink_command" \ - 'func_fatal_error "error: relink \`$file'\'' with the above command before installing it"' - fi - - # See the names of the shared library. - set dummy $library_names; shift - if test -n "$1"; then - realname="$1" - shift - - srcname="$realname" - test -n "$relink_command" && srcname="$realname"T - - # Install the shared library and build the symlinks. - func_show_eval "$install_shared_prog $dir/$srcname $destdir/$realname" \ - 'exit $?' - tstripme="$stripme" - case $host_os in - cygwin* | mingw* | pw32* | cegcc*) - case $realname in - *.dll.a) - tstripme="" - ;; - esac - ;; - esac - if test -n "$tstripme" && test -n "$striplib"; then - func_show_eval "$striplib $destdir/$realname" 'exit $?' - fi - - if test "$#" -gt 0; then - # Delete the old symlinks, and create new ones. - # Try `ln -sf' first, because the `ln' binary might depend on - # the symlink we replace! Solaris /bin/ln does not understand -f, - # so we also need to try rm && ln -s. - for linkname - do - test "$linkname" != "$realname" \ - && func_show_eval "(cd $destdir && { $LN_S -f $realname $linkname || { $RM $linkname && $LN_S $realname $linkname; }; })" - done - fi - - # Do each command in the postinstall commands. - lib="$destdir/$realname" - func_execute_cmds "$postinstall_cmds" 'exit $?' - fi - - # Install the pseudo-library for information purposes. - func_basename "$file" - name="$func_basename_result" - instname="$dir/$name"i - func_show_eval "$install_prog $instname $destdir/$name" 'exit $?' - - # Maybe install the static library, too. - test -n "$old_library" && staticlibs+=" $dir/$old_library" - ;; - - *.lo) - # Install (i.e. copy) a libtool object. - - # Figure out destination file name, if it wasn't already specified. - if test -n "$destname"; then - destfile="$destdir/$destname" - else - func_basename "$file" - destfile="$func_basename_result" - destfile="$destdir/$destfile" - fi - - # Deduce the name of the destination old-style object file. - case $destfile in - *.lo) - func_lo2o "$destfile" - staticdest=$func_lo2o_result - ;; - *.$objext) - staticdest="$destfile" - destfile= - ;; - *) - func_fatal_help "cannot copy a libtool object to \`$destfile'" - ;; - esac - - # Install the libtool object if requested. - test -n "$destfile" && \ - func_show_eval "$install_prog $file $destfile" 'exit $?' - - # Install the old object if enabled. - if test "$build_old_libs" = yes; then - # Deduce the name of the old-style object file. - func_lo2o "$file" - staticobj=$func_lo2o_result - func_show_eval "$install_prog \$staticobj \$staticdest" 'exit $?' - fi - exit $EXIT_SUCCESS - ;; - - *) - # Figure out destination file name, if it wasn't already specified. - if test -n "$destname"; then - destfile="$destdir/$destname" - else - func_basename "$file" - destfile="$func_basename_result" - destfile="$destdir/$destfile" - fi - - # If the file is missing, and there is a .exe on the end, strip it - # because it is most likely a libtool script we actually want to - # install - stripped_ext="" - case $file in - *.exe) - if test ! -f "$file"; then - func_stripname '' '.exe' "$file" - file=$func_stripname_result - stripped_ext=".exe" - fi - ;; - esac - - # Do a test to see if this is really a libtool program. - case $host in - *cygwin* | *mingw*) - if func_ltwrapper_executable_p "$file"; then - func_ltwrapper_scriptname "$file" - wrapper=$func_ltwrapper_scriptname_result - else - func_stripname '' '.exe' "$file" - wrapper=$func_stripname_result - fi - ;; - *) - wrapper=$file - ;; - esac - if func_ltwrapper_script_p "$wrapper"; then - notinst_deplibs= - relink_command= - - func_source "$wrapper" - - # Check the variables that should have been set. - test -z "$generated_by_libtool_version" && \ - func_fatal_error "invalid libtool wrapper script \`$wrapper'" - - finalize=yes - for lib in $notinst_deplibs; do - # Check to see that each library is installed. - libdir= - if test -f "$lib"; then - func_source "$lib" - fi - libfile="$libdir/"`$ECHO "$lib" | $SED 's%^.*/%%g'` ### testsuite: skip nested quoting test - if test -n "$libdir" && test ! -f "$libfile"; then - func_warning "\`$lib' has not been installed in \`$libdir'" - finalize=no - fi - done - - relink_command= - func_source "$wrapper" - - outputname= - if test "$fast_install" = no && test -n "$relink_command"; then - $opt_dry_run || { - if test "$finalize" = yes; then - tmpdir=`func_mktempdir` - func_basename "$file$stripped_ext" - file="$func_basename_result" - outputname="$tmpdir/$file" - # Replace the output file specification. - relink_command=`$ECHO "$relink_command" | $SED 's%@OUTPUT@%'"$outputname"'%g'` - - $opt_silent || { - func_quote_for_expand "$relink_command" - eval "func_echo $func_quote_for_expand_result" - } - if eval "$relink_command"; then : - else - func_error "error: relink \`$file' with the above command before installing it" - $opt_dry_run || ${RM}r "$tmpdir" - continue - fi - file="$outputname" - else - func_warning "cannot relink \`$file'" - fi - } - else - # Install the binary that we compiled earlier. - file=`$ECHO "$file$stripped_ext" | $SED "s%\([^/]*\)$%$objdir/\1%"` - fi - fi - - # remove .exe since cygwin /usr/bin/install will append another - # one anyway - case $install_prog,$host in - */usr/bin/install*,*cygwin*) - case $file:$destfile in - *.exe:*.exe) - # this is ok - ;; - *.exe:*) - destfile=$destfile.exe - ;; - *:*.exe) - func_stripname '' '.exe' "$destfile" - destfile=$func_stripname_result - ;; - esac - ;; - esac - func_show_eval "$install_prog\$stripme \$file \$destfile" 'exit $?' - $opt_dry_run || if test -n "$outputname"; then - ${RM}r "$tmpdir" - fi - ;; - esac - done - - for file in $staticlibs; do - func_basename "$file" - name="$func_basename_result" - - # Set up the ranlib parameters. - oldlib="$destdir/$name" - func_to_tool_file "$oldlib" func_convert_file_msys_to_w32 - tool_oldlib=$func_to_tool_file_result - - func_show_eval "$install_prog \$file \$oldlib" 'exit $?' - - if test -n "$stripme" && test -n "$old_striplib"; then - func_show_eval "$old_striplib $tool_oldlib" 'exit $?' - fi - - # Do each command in the postinstall commands. - func_execute_cmds "$old_postinstall_cmds" 'exit $?' - done - - test -n "$future_libdirs" && \ - func_warning "remember to run \`$progname --finish$future_libdirs'" - - if test -n "$current_libdirs"; then - # Maybe just do a dry run. - $opt_dry_run && current_libdirs=" -n$current_libdirs" - exec_cmd='$SHELL $progpath $preserve_args --finish$current_libdirs' - else - exit $EXIT_SUCCESS - fi -} - -test "$opt_mode" = install && func_mode_install ${1+"$@"} - - -# func_generate_dlsyms outputname originator pic_p -# Extract symbols from dlprefiles and create ${outputname}S.o with -# a dlpreopen symbol table. -func_generate_dlsyms () -{ - $opt_debug - my_outputname="$1" - my_originator="$2" - my_pic_p="${3-no}" - my_prefix=`$ECHO "$my_originator" | sed 's%[^a-zA-Z0-9]%_%g'` - my_dlsyms= - - if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then - if test -n "$NM" && test -n "$global_symbol_pipe"; then - my_dlsyms="${my_outputname}S.c" - else - func_error "not configured to extract global symbols from dlpreopened files" - fi - fi - - if test -n "$my_dlsyms"; then - case $my_dlsyms in - "") ;; - *.c) - # Discover the nlist of each of the dlfiles. - nlist="$output_objdir/${my_outputname}.nm" - - func_show_eval "$RM $nlist ${nlist}S ${nlist}T" - - # Parse the name list into a source file. - func_verbose "creating $output_objdir/$my_dlsyms" - - $opt_dry_run || $ECHO > "$output_objdir/$my_dlsyms" "\ -/* $my_dlsyms - symbol resolution table for \`$my_outputname' dlsym emulation. */ -/* Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION */ - -#ifdef __cplusplus -extern \"C\" { -#endif - -#if defined(__GNUC__) && (((__GNUC__ == 4) && (__GNUC_MINOR__ >= 4)) || (__GNUC__ > 4)) -#pragma GCC diagnostic ignored \"-Wstrict-prototypes\" -#endif - -/* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests. */ -#if defined(_WIN32) || defined(__CYGWIN__) || defined(_WIN32_WCE) -/* DATA imports from DLLs on WIN32 con't be const, because runtime - relocations are performed -- see ld's documentation on pseudo-relocs. */ -# define LT_DLSYM_CONST -#elif defined(__osf__) -/* This system does not cope well with relocations in const data. */ -# define LT_DLSYM_CONST -#else -# define LT_DLSYM_CONST const -#endif - -/* External symbol declarations for the compiler. */\ -" - - if test "$dlself" = yes; then - func_verbose "generating symbol list for \`$output'" - - $opt_dry_run || echo ': @PROGRAM@ ' > "$nlist" - - # Add our own program objects to the symbol list. - progfiles=`$ECHO "$objs$old_deplibs" | $SP2NL | $SED "$lo2o" | $NL2SP` - for progfile in $progfiles; do - func_to_tool_file "$progfile" func_convert_file_msys_to_w32 - func_verbose "extracting global C symbols from \`$func_to_tool_file_result'" - $opt_dry_run || eval "$NM $func_to_tool_file_result | $global_symbol_pipe >> '$nlist'" - done - - if test -n "$exclude_expsyms"; then - $opt_dry_run || { - eval '$EGREP -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T' - eval '$MV "$nlist"T "$nlist"' - } - fi - - if test -n "$export_symbols_regex"; then - $opt_dry_run || { - eval '$EGREP -e "$export_symbols_regex" "$nlist" > "$nlist"T' - eval '$MV "$nlist"T "$nlist"' - } - fi - - # Prepare the list of exported symbols - if test -z "$export_symbols"; then - export_symbols="$output_objdir/$outputname.exp" - $opt_dry_run || { - $RM $export_symbols - eval "${SED} -n -e '/^: @PROGRAM@ $/d' -e 's/^.* \(.*\)$/\1/p' "'< "$nlist" > "$export_symbols"' - case $host in - *cygwin* | *mingw* | *cegcc* ) - eval "echo EXPORTS "'> "$output_objdir/$outputname.def"' - eval 'cat "$export_symbols" >> "$output_objdir/$outputname.def"' - ;; - esac - } - else - $opt_dry_run || { - eval "${SED} -e 's/\([].[*^$]\)/\\\\\1/g' -e 's/^/ /' -e 's/$/$/'"' < "$export_symbols" > "$output_objdir/$outputname.exp"' - eval '$GREP -f "$output_objdir/$outputname.exp" < "$nlist" > "$nlist"T' - eval '$MV "$nlist"T "$nlist"' - case $host in - *cygwin* | *mingw* | *cegcc* ) - eval "echo EXPORTS "'> "$output_objdir/$outputname.def"' - eval 'cat "$nlist" >> "$output_objdir/$outputname.def"' - ;; - esac - } - fi - fi - - for dlprefile in $dlprefiles; do - func_verbose "extracting global C symbols from \`$dlprefile'" - func_basename "$dlprefile" - name="$func_basename_result" - case $host in - *cygwin* | *mingw* | *cegcc* ) - # if an import library, we need to obtain dlname - if func_win32_import_lib_p "$dlprefile"; then - func_tr_sh "$dlprefile" - eval "curr_lafile=\$libfile_$func_tr_sh_result" - dlprefile_dlbasename="" - if test -n "$curr_lafile" && func_lalib_p "$curr_lafile"; then - # Use subshell, to avoid clobbering current variable values - dlprefile_dlname=`source "$curr_lafile" && echo "$dlname"` - if test -n "$dlprefile_dlname" ; then - func_basename "$dlprefile_dlname" - dlprefile_dlbasename="$func_basename_result" - else - # no lafile. user explicitly requested -dlpreopen . - $sharedlib_from_linklib_cmd "$dlprefile" - dlprefile_dlbasename=$sharedlib_from_linklib_result - fi - fi - $opt_dry_run || { - if test -n "$dlprefile_dlbasename" ; then - eval '$ECHO ": $dlprefile_dlbasename" >> "$nlist"' - else - func_warning "Could not compute DLL name from $name" - eval '$ECHO ": $name " >> "$nlist"' - fi - func_to_tool_file "$dlprefile" func_convert_file_msys_to_w32 - eval "$NM \"$func_to_tool_file_result\" 2>/dev/null | $global_symbol_pipe | - $SED -e '/I __imp/d' -e 's/I __nm_/D /;s/_nm__//' >> '$nlist'" - } - else # not an import lib - $opt_dry_run || { - eval '$ECHO ": $name " >> "$nlist"' - func_to_tool_file "$dlprefile" func_convert_file_msys_to_w32 - eval "$NM \"$func_to_tool_file_result\" 2>/dev/null | $global_symbol_pipe >> '$nlist'" - } - fi - ;; - *) - $opt_dry_run || { - eval '$ECHO ": $name " >> "$nlist"' - func_to_tool_file "$dlprefile" func_convert_file_msys_to_w32 - eval "$NM \"$func_to_tool_file_result\" 2>/dev/null | $global_symbol_pipe >> '$nlist'" - } - ;; - esac - done - - $opt_dry_run || { - # Make sure we have at least an empty file. - test -f "$nlist" || : > "$nlist" - - if test -n "$exclude_expsyms"; then - $EGREP -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T - $MV "$nlist"T "$nlist" - fi - - # Try sorting and uniquifying the output. - if $GREP -v "^: " < "$nlist" | - if sort -k 3 /dev/null 2>&1; then - sort -k 3 - else - sort +2 - fi | - uniq > "$nlist"S; then - : - else - $GREP -v "^: " < "$nlist" > "$nlist"S - fi - - if test -f "$nlist"S; then - eval "$global_symbol_to_cdecl"' < "$nlist"S >> "$output_objdir/$my_dlsyms"' - else - echo '/* NONE */' >> "$output_objdir/$my_dlsyms" - fi - - echo >> "$output_objdir/$my_dlsyms" "\ - -/* The mapping between symbol names and symbols. */ -typedef struct { - const char *name; - void *address; -} lt_dlsymlist; -extern LT_DLSYM_CONST lt_dlsymlist -lt_${my_prefix}_LTX_preloaded_symbols[]; -LT_DLSYM_CONST lt_dlsymlist -lt_${my_prefix}_LTX_preloaded_symbols[] = -{\ - { \"$my_originator\", (void *) 0 }," - - case $need_lib_prefix in - no) - eval "$global_symbol_to_c_name_address" < "$nlist" >> "$output_objdir/$my_dlsyms" - ;; - *) - eval "$global_symbol_to_c_name_address_lib_prefix" < "$nlist" >> "$output_objdir/$my_dlsyms" - ;; - esac - echo >> "$output_objdir/$my_dlsyms" "\ - {0, (void *) 0} -}; - -/* This works around a problem in FreeBSD linker */ -#ifdef FREEBSD_WORKAROUND -static const void *lt_preloaded_setup() { - return lt_${my_prefix}_LTX_preloaded_symbols; -} -#endif - -#ifdef __cplusplus -} -#endif\ -" - } # !$opt_dry_run - - pic_flag_for_symtable= - case "$compile_command " in - *" -static "*) ;; - *) - case $host in - # compiling the symbol table file with pic_flag works around - # a FreeBSD bug that causes programs to crash when -lm is - # linked before any other PIC object. But we must not use - # pic_flag when linking with -static. The problem exists in - # FreeBSD 2.2.6 and is fixed in FreeBSD 3.1. - *-*-freebsd2.*|*-*-freebsd3.0*|*-*-freebsdelf3.0*) - pic_flag_for_symtable=" $pic_flag -DFREEBSD_WORKAROUND" ;; - *-*-hpux*) - pic_flag_for_symtable=" $pic_flag" ;; - *) - if test "X$my_pic_p" != Xno; then - pic_flag_for_symtable=" $pic_flag" - fi - ;; - esac - ;; - esac - symtab_cflags= - for arg in $LTCFLAGS; do - case $arg in - -pie | -fpie | -fPIE) ;; - *) symtab_cflags+=" $arg" ;; - esac - done - - # Now compile the dynamic symbol file. - func_show_eval '(cd $output_objdir && $LTCC$symtab_cflags -c$no_builtin_flag$pic_flag_for_symtable "$my_dlsyms")' 'exit $?' - - # Clean up the generated files. - func_show_eval '$RM "$output_objdir/$my_dlsyms" "$nlist" "${nlist}S" "${nlist}T"' - - # Transform the symbol file into the correct name. - symfileobj="$output_objdir/${my_outputname}S.$objext" - case $host in - *cygwin* | *mingw* | *cegcc* ) - if test -f "$output_objdir/$my_outputname.def"; then - compile_command=`$ECHO "$compile_command" | $SED "s%@SYMFILE@%$output_objdir/$my_outputname.def $symfileobj%"` - finalize_command=`$ECHO "$finalize_command" | $SED "s%@SYMFILE@%$output_objdir/$my_outputname.def $symfileobj%"` - else - compile_command=`$ECHO "$compile_command" | $SED "s%@SYMFILE@%$symfileobj%"` - finalize_command=`$ECHO "$finalize_command" | $SED "s%@SYMFILE@%$symfileobj%"` - fi - ;; - *) - compile_command=`$ECHO "$compile_command" | $SED "s%@SYMFILE@%$symfileobj%"` - finalize_command=`$ECHO "$finalize_command" | $SED "s%@SYMFILE@%$symfileobj%"` - ;; - esac - ;; - *) - func_fatal_error "unknown suffix for \`$my_dlsyms'" - ;; - esac - else - # We keep going just in case the user didn't refer to - # lt_preloaded_symbols. The linker will fail if global_symbol_pipe - # really was required. - - # Nullify the symbol file. - compile_command=`$ECHO "$compile_command" | $SED "s% @SYMFILE@%%"` - finalize_command=`$ECHO "$finalize_command" | $SED "s% @SYMFILE@%%"` - fi -} - -# func_win32_libid arg -# return the library type of file 'arg' -# -# Need a lot of goo to handle *both* DLLs and import libs -# Has to be a shell function in order to 'eat' the argument -# that is supplied when $file_magic_command is called. -# Despite the name, also deal with 64 bit binaries. -func_win32_libid () -{ - $opt_debug - win32_libid_type="unknown" - win32_fileres=`file -L $1 2>/dev/null` - case $win32_fileres in - *ar\ archive\ import\ library*) # definitely import - win32_libid_type="x86 archive import" - ;; - *ar\ archive*) # could be an import, or static - # Keep the egrep pattern in sync with the one in _LT_CHECK_MAGIC_METHOD. - if eval $OBJDUMP -f $1 | $SED -e '10q' 2>/dev/null | - $EGREP 'file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)' >/dev/null; then - func_to_tool_file "$1" func_convert_file_msys_to_w32 - win32_nmres=`eval $NM -f posix -A \"$func_to_tool_file_result\" | - $SED -n -e ' - 1,100{ - / I /{ - s,.*,import, - p - q - } - }'` - case $win32_nmres in - import*) win32_libid_type="x86 archive import";; - *) win32_libid_type="x86 archive static";; - esac - fi - ;; - *DLL*) - win32_libid_type="x86 DLL" - ;; - *executable*) # but shell scripts are "executable" too... - case $win32_fileres in - *MS\ Windows\ PE\ Intel*) - win32_libid_type="x86 DLL" - ;; - esac - ;; - esac - $ECHO "$win32_libid_type" -} - -# func_cygming_dll_for_implib ARG -# -# Platform-specific function to extract the -# name of the DLL associated with the specified -# import library ARG. -# Invoked by eval'ing the libtool variable -# $sharedlib_from_linklib_cmd -# Result is available in the variable -# $sharedlib_from_linklib_result -func_cygming_dll_for_implib () -{ - $opt_debug - sharedlib_from_linklib_result=`$DLLTOOL --identify-strict --identify "$1"` -} - -# func_cygming_dll_for_implib_fallback_core SECTION_NAME LIBNAMEs -# -# The is the core of a fallback implementation of a -# platform-specific function to extract the name of the -# DLL associated with the specified import library LIBNAME. -# -# SECTION_NAME is either .idata$6 or .idata$7, depending -# on the platform and compiler that created the implib. -# -# Echos the name of the DLL associated with the -# specified import library. -func_cygming_dll_for_implib_fallback_core () -{ - $opt_debug - match_literal=`$ECHO "$1" | $SED "$sed_make_literal_regex"` - $OBJDUMP -s --section "$1" "$2" 2>/dev/null | - $SED '/^Contents of section '"$match_literal"':/{ - # Place marker at beginning of archive member dllname section - s/.*/====MARK====/ - p - d - } - # These lines can sometimes be longer than 43 characters, but - # are always uninteresting - /:[ ]*file format pe[i]\{,1\}-/d - /^In archive [^:]*:/d - # Ensure marker is printed - /^====MARK====/p - # Remove all lines with less than 43 characters - /^.\{43\}/!d - # From remaining lines, remove first 43 characters - s/^.\{43\}//' | - $SED -n ' - # Join marker and all lines until next marker into a single line - /^====MARK====/ b para - H - $ b para - b - :para - x - s/\n//g - # Remove the marker - s/^====MARK====// - # Remove trailing dots and whitespace - s/[\. \t]*$// - # Print - /./p' | - # we now have a list, one entry per line, of the stringified - # contents of the appropriate section of all members of the - # archive which possess that section. Heuristic: eliminate - # all those which have a first or second character that is - # a '.' (that is, objdump's representation of an unprintable - # character.) This should work for all archives with less than - # 0x302f exports -- but will fail for DLLs whose name actually - # begins with a literal '.' or a single character followed by - # a '.'. - # - # Of those that remain, print the first one. - $SED -e '/^\./d;/^.\./d;q' -} - -# func_cygming_gnu_implib_p ARG -# This predicate returns with zero status (TRUE) if -# ARG is a GNU/binutils-style import library. Returns -# with nonzero status (FALSE) otherwise. -func_cygming_gnu_implib_p () -{ - $opt_debug - func_to_tool_file "$1" func_convert_file_msys_to_w32 - func_cygming_gnu_implib_tmp=`$NM "$func_to_tool_file_result" | eval "$global_symbol_pipe" | $EGREP ' (_head_[A-Za-z0-9_]+_[ad]l*|[A-Za-z0-9_]+_[ad]l*_iname)$'` - test -n "$func_cygming_gnu_implib_tmp" -} - -# func_cygming_ms_implib_p ARG -# This predicate returns with zero status (TRUE) if -# ARG is an MS-style import library. Returns -# with nonzero status (FALSE) otherwise. -func_cygming_ms_implib_p () -{ - $opt_debug - func_to_tool_file "$1" func_convert_file_msys_to_w32 - func_cygming_ms_implib_tmp=`$NM "$func_to_tool_file_result" | eval "$global_symbol_pipe" | $GREP '_NULL_IMPORT_DESCRIPTOR'` - test -n "$func_cygming_ms_implib_tmp" -} - -# func_cygming_dll_for_implib_fallback ARG -# Platform-specific function to extract the -# name of the DLL associated with the specified -# import library ARG. -# -# This fallback implementation is for use when $DLLTOOL -# does not support the --identify-strict option. -# Invoked by eval'ing the libtool variable -# $sharedlib_from_linklib_cmd -# Result is available in the variable -# $sharedlib_from_linklib_result -func_cygming_dll_for_implib_fallback () -{ - $opt_debug - if func_cygming_gnu_implib_p "$1" ; then - # binutils import library - sharedlib_from_linklib_result=`func_cygming_dll_for_implib_fallback_core '.idata$7' "$1"` - elif func_cygming_ms_implib_p "$1" ; then - # ms-generated import library - sharedlib_from_linklib_result=`func_cygming_dll_for_implib_fallback_core '.idata$6' "$1"` - else - # unknown - sharedlib_from_linklib_result="" - fi -} - - -# func_extract_an_archive dir oldlib -func_extract_an_archive () -{ - $opt_debug - f_ex_an_ar_dir="$1"; shift - f_ex_an_ar_oldlib="$1" - if test "$lock_old_archive_extraction" = yes; then - lockfile=$f_ex_an_ar_oldlib.lock - until $opt_dry_run || ln "$progpath" "$lockfile" 2>/dev/null; do - func_echo "Waiting for $lockfile to be removed" - sleep 2 - done - fi - func_show_eval "(cd \$f_ex_an_ar_dir && $AR x \"\$f_ex_an_ar_oldlib\")" \ - 'stat=$?; rm -f "$lockfile"; exit $stat' - if test "$lock_old_archive_extraction" = yes; then - $opt_dry_run || rm -f "$lockfile" - fi - if ($AR t "$f_ex_an_ar_oldlib" | sort | sort -uc >/dev/null 2>&1); then - : - else - func_fatal_error "object name conflicts in archive: $f_ex_an_ar_dir/$f_ex_an_ar_oldlib" - fi -} - - -# func_extract_archives gentop oldlib ... -func_extract_archives () -{ - $opt_debug - my_gentop="$1"; shift - my_oldlibs=${1+"$@"} - my_oldobjs="" - my_xlib="" - my_xabs="" - my_xdir="" - - for my_xlib in $my_oldlibs; do - # Extract the objects. - case $my_xlib in - [\\/]* | [A-Za-z]:[\\/]*) my_xabs="$my_xlib" ;; - *) my_xabs=`pwd`"/$my_xlib" ;; - esac - func_basename "$my_xlib" - my_xlib="$func_basename_result" - my_xlib_u=$my_xlib - while :; do - case " $extracted_archives " in - *" $my_xlib_u "*) - func_arith $extracted_serial + 1 - extracted_serial=$func_arith_result - my_xlib_u=lt$extracted_serial-$my_xlib ;; - *) break ;; - esac - done - extracted_archives="$extracted_archives $my_xlib_u" - my_xdir="$my_gentop/$my_xlib_u" - - func_mkdir_p "$my_xdir" - - case $host in - *-darwin*) - func_verbose "Extracting $my_xabs" - # Do not bother doing anything if just a dry run - $opt_dry_run || { - darwin_orig_dir=`pwd` - cd $my_xdir || exit $? - darwin_archive=$my_xabs - darwin_curdir=`pwd` - darwin_base_archive=`basename "$darwin_archive"` - darwin_arches=`$LIPO -info "$darwin_archive" 2>/dev/null | $GREP Architectures 2>/dev/null || true` - if test -n "$darwin_arches"; then - darwin_arches=`$ECHO "$darwin_arches" | $SED -e 's/.*are://'` - darwin_arch= - func_verbose "$darwin_base_archive has multiple architectures $darwin_arches" - for darwin_arch in $darwin_arches ; do - func_mkdir_p "unfat-$$/${darwin_base_archive}-${darwin_arch}" - $LIPO -thin $darwin_arch -output "unfat-$$/${darwin_base_archive}-${darwin_arch}/${darwin_base_archive}" "${darwin_archive}" - cd "unfat-$$/${darwin_base_archive}-${darwin_arch}" - func_extract_an_archive "`pwd`" "${darwin_base_archive}" - cd "$darwin_curdir" - $RM "unfat-$$/${darwin_base_archive}-${darwin_arch}/${darwin_base_archive}" - done # $darwin_arches - ## Okay now we've a bunch of thin objects, gotta fatten them up :) - darwin_filelist=`find unfat-$$ -type f -name \*.o -print -o -name \*.lo -print | $SED -e "$basename" | sort -u` - darwin_file= - darwin_files= - for darwin_file in $darwin_filelist; do - darwin_files=`find unfat-$$ -name $darwin_file -print | sort | $NL2SP` - $LIPO -create -output "$darwin_file" $darwin_files - done # $darwin_filelist - $RM -rf unfat-$$ - cd "$darwin_orig_dir" - else - cd $darwin_orig_dir - func_extract_an_archive "$my_xdir" "$my_xabs" - fi # $darwin_arches - } # !$opt_dry_run - ;; - *) - func_extract_an_archive "$my_xdir" "$my_xabs" - ;; - esac - my_oldobjs="$my_oldobjs "`find $my_xdir -name \*.$objext -print -o -name \*.lo -print | sort | $NL2SP` - done - - func_extract_archives_result="$my_oldobjs" -} - - -# func_emit_wrapper [arg=no] -# -# Emit a libtool wrapper script on stdout. -# Don't directly open a file because we may want to -# incorporate the script contents within a cygwin/mingw -# wrapper executable. Must ONLY be called from within -# func_mode_link because it depends on a number of variables -# set therein. -# -# ARG is the value that the WRAPPER_SCRIPT_BELONGS_IN_OBJDIR -# variable will take. If 'yes', then the emitted script -# will assume that the directory in which it is stored is -# the $objdir directory. This is a cygwin/mingw-specific -# behavior. -func_emit_wrapper () -{ - func_emit_wrapper_arg1=${1-no} - - $ECHO "\ -#! $SHELL - -# $output - temporary wrapper script for $objdir/$outputname -# Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION -# -# The $output program cannot be directly executed until all the libtool -# libraries that it depends on are installed. -# -# This wrapper script should never be moved out of the build directory. -# If it is, it will not operate correctly. - -# Sed substitution that helps us do robust quoting. It backslashifies -# metacharacters that are still active within double-quoted strings. -sed_quote_subst='$sed_quote_subst' - -# Be Bourne compatible -if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then - emulate sh - NULLCMD=: - # Zsh 3.x and 4.x performs word splitting on \${1+\"\$@\"}, which - # is contrary to our usage. Disable this feature. - alias -g '\${1+\"\$@\"}'='\"\$@\"' - setopt NO_GLOB_SUBST -else - case \`(set -o) 2>/dev/null\` in *posix*) set -o posix;; esac -fi -BIN_SH=xpg4; export BIN_SH # for Tru64 -DUALCASE=1; export DUALCASE # for MKS sh - -# The HP-UX ksh and POSIX shell print the target directory to stdout -# if CDPATH is set. -(unset CDPATH) >/dev/null 2>&1 && unset CDPATH - -relink_command=\"$relink_command\" - -# This environment variable determines our operation mode. -if test \"\$libtool_install_magic\" = \"$magic\"; then - # install mode needs the following variables: - generated_by_libtool_version='$macro_version' - notinst_deplibs='$notinst_deplibs' -else - # When we are sourced in execute mode, \$file and \$ECHO are already set. - if test \"\$libtool_execute_magic\" != \"$magic\"; then - file=\"\$0\"" - - qECHO=`$ECHO "$ECHO" | $SED "$sed_quote_subst"` - $ECHO "\ - -# A function that is used when there is no print builtin or printf. -func_fallback_echo () -{ - eval 'cat <<_LTECHO_EOF -\$1 -_LTECHO_EOF' -} - ECHO=\"$qECHO\" - fi - -# Very basic option parsing. These options are (a) specific to -# the libtool wrapper, (b) are identical between the wrapper -# /script/ and the wrapper /executable/ which is used only on -# windows platforms, and (c) all begin with the string "--lt-" -# (application programs are unlikely to have options which match -# this pattern). -# -# There are only two supported options: --lt-debug and -# --lt-dump-script. There is, deliberately, no --lt-help. -# -# The first argument to this parsing function should be the -# script's $0 value, followed by "$@". -lt_option_debug= -func_parse_lt_options () -{ - lt_script_arg0=\$0 - shift - for lt_opt - do - case \"\$lt_opt\" in - --lt-debug) lt_option_debug=1 ;; - --lt-dump-script) - lt_dump_D=\`\$ECHO \"X\$lt_script_arg0\" | $SED -e 's/^X//' -e 's%/[^/]*$%%'\` - test \"X\$lt_dump_D\" = \"X\$lt_script_arg0\" && lt_dump_D=. - lt_dump_F=\`\$ECHO \"X\$lt_script_arg0\" | $SED -e 's/^X//' -e 's%^.*/%%'\` - cat \"\$lt_dump_D/\$lt_dump_F\" - exit 0 - ;; - --lt-*) - \$ECHO \"Unrecognized --lt- option: '\$lt_opt'\" 1>&2 - exit 1 - ;; - esac - done - - # Print the debug banner immediately: - if test -n \"\$lt_option_debug\"; then - echo \"${outputname}:${output}:\${LINENO}: libtool wrapper (GNU $PACKAGE$TIMESTAMP) $VERSION\" 1>&2 - fi -} - -# Used when --lt-debug. Prints its arguments to stdout -# (redirection is the responsibility of the caller) -func_lt_dump_args () -{ - lt_dump_args_N=1; - for lt_arg - do - \$ECHO \"${outputname}:${output}:\${LINENO}: newargv[\$lt_dump_args_N]: \$lt_arg\" - lt_dump_args_N=\`expr \$lt_dump_args_N + 1\` - done -} - -# Core function for launching the target application -func_exec_program_core () -{ -" - case $host in - # Backslashes separate directories on plain windows - *-*-mingw | *-*-os2* | *-cegcc*) - $ECHO "\ - if test -n \"\$lt_option_debug\"; then - \$ECHO \"${outputname}:${output}:\${LINENO}: newargv[0]: \$progdir\\\\\$program\" 1>&2 - func_lt_dump_args \${1+\"\$@\"} 1>&2 - fi - exec \"\$progdir\\\\\$program\" \${1+\"\$@\"} -" - ;; - - *) - $ECHO "\ - if test -n \"\$lt_option_debug\"; then - \$ECHO \"${outputname}:${output}:\${LINENO}: newargv[0]: \$progdir/\$program\" 1>&2 - func_lt_dump_args \${1+\"\$@\"} 1>&2 - fi - exec \"\$progdir/\$program\" \${1+\"\$@\"} -" - ;; - esac - $ECHO "\ - \$ECHO \"\$0: cannot exec \$program \$*\" 1>&2 - exit 1 -} - -# A function to encapsulate launching the target application -# Strips options in the --lt-* namespace from \$@ and -# launches target application with the remaining arguments. -func_exec_program () -{ - case \" \$* \" in - *\\ --lt-*) - for lt_wr_arg - do - case \$lt_wr_arg in - --lt-*) ;; - *) set x \"\$@\" \"\$lt_wr_arg\"; shift;; - esac - shift - done ;; - esac - func_exec_program_core \${1+\"\$@\"} -} - - # Parse options - func_parse_lt_options \"\$0\" \${1+\"\$@\"} - - # Find the directory that this script lives in. - thisdir=\`\$ECHO \"\$file\" | $SED 's%/[^/]*$%%'\` - test \"x\$thisdir\" = \"x\$file\" && thisdir=. - - # Follow symbolic links until we get to the real thisdir. - file=\`ls -ld \"\$file\" | $SED -n 's/.*-> //p'\` - while test -n \"\$file\"; do - destdir=\`\$ECHO \"\$file\" | $SED 's%/[^/]*\$%%'\` - - # If there was a directory component, then change thisdir. - if test \"x\$destdir\" != \"x\$file\"; then - case \"\$destdir\" in - [\\\\/]* | [A-Za-z]:[\\\\/]*) thisdir=\"\$destdir\" ;; - *) thisdir=\"\$thisdir/\$destdir\" ;; - esac - fi - - file=\`\$ECHO \"\$file\" | $SED 's%^.*/%%'\` - file=\`ls -ld \"\$thisdir/\$file\" | $SED -n 's/.*-> //p'\` - done - - # Usually 'no', except on cygwin/mingw when embedded into - # the cwrapper. - WRAPPER_SCRIPT_BELONGS_IN_OBJDIR=$func_emit_wrapper_arg1 - if test \"\$WRAPPER_SCRIPT_BELONGS_IN_OBJDIR\" = \"yes\"; then - # special case for '.' - if test \"\$thisdir\" = \".\"; then - thisdir=\`pwd\` - fi - # remove .libs from thisdir - case \"\$thisdir\" in - *[\\\\/]$objdir ) thisdir=\`\$ECHO \"\$thisdir\" | $SED 's%[\\\\/][^\\\\/]*$%%'\` ;; - $objdir ) thisdir=. ;; - esac - fi - - # Try to get the absolute directory name. - absdir=\`cd \"\$thisdir\" && pwd\` - test -n \"\$absdir\" && thisdir=\"\$absdir\" -" - - if test "$fast_install" = yes; then - $ECHO "\ - program=lt-'$outputname'$exeext - progdir=\"\$thisdir/$objdir\" - - if test ! -f \"\$progdir/\$program\" || - { file=\`ls -1dt \"\$progdir/\$program\" \"\$progdir/../\$program\" 2>/dev/null | ${SED} 1q\`; \\ - test \"X\$file\" != \"X\$progdir/\$program\"; }; then - - file=\"\$\$-\$program\" - - if test ! -d \"\$progdir\"; then - $MKDIR \"\$progdir\" - else - $RM \"\$progdir/\$file\" - fi" - - $ECHO "\ - - # relink executable if necessary - if test -n \"\$relink_command\"; then - if relink_command_output=\`eval \$relink_command 2>&1\`; then : - else - $ECHO \"\$relink_command_output\" >&2 - $RM \"\$progdir/\$file\" - exit 1 - fi - fi - - $MV \"\$progdir/\$file\" \"\$progdir/\$program\" 2>/dev/null || - { $RM \"\$progdir/\$program\"; - $MV \"\$progdir/\$file\" \"\$progdir/\$program\"; } - $RM \"\$progdir/\$file\" - fi" - else - $ECHO "\ - program='$outputname' - progdir=\"\$thisdir/$objdir\" -" - fi - - $ECHO "\ - - if test -f \"\$progdir/\$program\"; then" - - # fixup the dll searchpath if we need to. - # - # Fix the DLL searchpath if we need to. Do this before prepending - # to shlibpath, because on Windows, both are PATH and uninstalled - # libraries must come first. - if test -n "$dllsearchpath"; then - $ECHO "\ - # Add the dll search path components to the executable PATH - PATH=$dllsearchpath:\$PATH -" - fi - - # Export our shlibpath_var if we have one. - if test "$shlibpath_overrides_runpath" = yes && test -n "$shlibpath_var" && test -n "$temp_rpath"; then - $ECHO "\ - # Add our own library path to $shlibpath_var - $shlibpath_var=\"$temp_rpath\$$shlibpath_var\" - - # Some systems cannot cope with colon-terminated $shlibpath_var - # The second colon is a workaround for a bug in BeOS R4 sed - $shlibpath_var=\`\$ECHO \"\$$shlibpath_var\" | $SED 's/::*\$//'\` - - export $shlibpath_var -" - fi - - $ECHO "\ - if test \"\$libtool_execute_magic\" != \"$magic\"; then - # Run the actual program with our arguments. - func_exec_program \${1+\"\$@\"} - fi - else - # The program doesn't exist. - \$ECHO \"\$0: error: \\\`\$progdir/\$program' does not exist\" 1>&2 - \$ECHO \"This script is just a wrapper for \$program.\" 1>&2 - \$ECHO \"See the $PACKAGE documentation for more information.\" 1>&2 - exit 1 - fi -fi\ -" -} - - -# func_emit_cwrapperexe_src -# emit the source code for a wrapper executable on stdout -# Must ONLY be called from within func_mode_link because -# it depends on a number of variable set therein. -func_emit_cwrapperexe_src () -{ - cat < -#include -#ifdef _MSC_VER -# include -# include -# include -#else -# include -# include -# ifdef __CYGWIN__ -# include -# endif -#endif -#include -#include -#include -#include -#include -#include -#include -#include - -/* declarations of non-ANSI functions */ -#if defined(__MINGW32__) -# ifdef __STRICT_ANSI__ -int _putenv (const char *); -# endif -#elif defined(__CYGWIN__) -# ifdef __STRICT_ANSI__ -char *realpath (const char *, char *); -int putenv (char *); -int setenv (const char *, const char *, int); -# endif -/* #elif defined (other platforms) ... */ -#endif - -/* portability defines, excluding path handling macros */ -#if defined(_MSC_VER) -# define setmode _setmode -# define stat _stat -# define chmod _chmod -# define getcwd _getcwd -# define putenv _putenv -# define S_IXUSR _S_IEXEC -# ifndef _INTPTR_T_DEFINED -# define _INTPTR_T_DEFINED -# define intptr_t int -# endif -#elif defined(__MINGW32__) -# define setmode _setmode -# define stat _stat -# define chmod _chmod -# define getcwd _getcwd -# define putenv _putenv -#elif defined(__CYGWIN__) -# define HAVE_SETENV -# define FOPEN_WB "wb" -/* #elif defined (other platforms) ... */ -#endif - -#if defined(PATH_MAX) -# define LT_PATHMAX PATH_MAX -#elif defined(MAXPATHLEN) -# define LT_PATHMAX MAXPATHLEN -#else -# define LT_PATHMAX 1024 -#endif - -#ifndef S_IXOTH -# define S_IXOTH 0 -#endif -#ifndef S_IXGRP -# define S_IXGRP 0 -#endif - -/* path handling portability macros */ -#ifndef DIR_SEPARATOR -# define DIR_SEPARATOR '/' -# define PATH_SEPARATOR ':' -#endif - -#if defined (_WIN32) || defined (__MSDOS__) || defined (__DJGPP__) || \ - defined (__OS2__) -# define HAVE_DOS_BASED_FILE_SYSTEM -# define FOPEN_WB "wb" -# ifndef DIR_SEPARATOR_2 -# define DIR_SEPARATOR_2 '\\' -# endif -# ifndef PATH_SEPARATOR_2 -# define PATH_SEPARATOR_2 ';' -# endif -#endif - -#ifndef DIR_SEPARATOR_2 -# define IS_DIR_SEPARATOR(ch) ((ch) == DIR_SEPARATOR) -#else /* DIR_SEPARATOR_2 */ -# define IS_DIR_SEPARATOR(ch) \ - (((ch) == DIR_SEPARATOR) || ((ch) == DIR_SEPARATOR_2)) -#endif /* DIR_SEPARATOR_2 */ - -#ifndef PATH_SEPARATOR_2 -# define IS_PATH_SEPARATOR(ch) ((ch) == PATH_SEPARATOR) -#else /* PATH_SEPARATOR_2 */ -# define IS_PATH_SEPARATOR(ch) ((ch) == PATH_SEPARATOR_2) -#endif /* PATH_SEPARATOR_2 */ - -#ifndef FOPEN_WB -# define FOPEN_WB "w" -#endif -#ifndef _O_BINARY -# define _O_BINARY 0 -#endif - -#define XMALLOC(type, num) ((type *) xmalloc ((num) * sizeof(type))) -#define XFREE(stale) do { \ - if (stale) { free ((void *) stale); stale = 0; } \ -} while (0) - -#if defined(LT_DEBUGWRAPPER) -static int lt_debug = 1; -#else -static int lt_debug = 0; -#endif - -const char *program_name = "libtool-wrapper"; /* in case xstrdup fails */ - -void *xmalloc (size_t num); -char *xstrdup (const char *string); -const char *base_name (const char *name); -char *find_executable (const char *wrapper); -char *chase_symlinks (const char *pathspec); -int make_executable (const char *path); -int check_executable (const char *path); -char *strendzap (char *str, const char *pat); -void lt_debugprintf (const char *file, int line, const char *fmt, ...); -void lt_fatal (const char *file, int line, const char *message, ...); -static const char *nonnull (const char *s); -static const char *nonempty (const char *s); -void lt_setenv (const char *name, const char *value); -char *lt_extend_str (const char *orig_value, const char *add, int to_end); -void lt_update_exe_path (const char *name, const char *value); -void lt_update_lib_path (const char *name, const char *value); -char **prepare_spawn (char **argv); -void lt_dump_script (FILE *f); -EOF - - cat <= 0) - && (st.st_mode & (S_IXUSR | S_IXGRP | S_IXOTH))) - return 1; - else - return 0; -} - -int -make_executable (const char *path) -{ - int rval = 0; - struct stat st; - - lt_debugprintf (__FILE__, __LINE__, "(make_executable): %s\n", - nonempty (path)); - if ((!path) || (!*path)) - return 0; - - if (stat (path, &st) >= 0) - { - rval = chmod (path, st.st_mode | S_IXOTH | S_IXGRP | S_IXUSR); - } - return rval; -} - -/* Searches for the full path of the wrapper. Returns - newly allocated full path name if found, NULL otherwise - Does not chase symlinks, even on platforms that support them. -*/ -char * -find_executable (const char *wrapper) -{ - int has_slash = 0; - const char *p; - const char *p_next; - /* static buffer for getcwd */ - char tmp[LT_PATHMAX + 1]; - int tmp_len; - char *concat_name; - - lt_debugprintf (__FILE__, __LINE__, "(find_executable): %s\n", - nonempty (wrapper)); - - if ((wrapper == NULL) || (*wrapper == '\0')) - return NULL; - - /* Absolute path? */ -#if defined (HAVE_DOS_BASED_FILE_SYSTEM) - if (isalpha ((unsigned char) wrapper[0]) && wrapper[1] == ':') - { - concat_name = xstrdup (wrapper); - if (check_executable (concat_name)) - return concat_name; - XFREE (concat_name); - } - else - { -#endif - if (IS_DIR_SEPARATOR (wrapper[0])) - { - concat_name = xstrdup (wrapper); - if (check_executable (concat_name)) - return concat_name; - XFREE (concat_name); - } -#if defined (HAVE_DOS_BASED_FILE_SYSTEM) - } -#endif - - for (p = wrapper; *p; p++) - if (*p == '/') - { - has_slash = 1; - break; - } - if (!has_slash) - { - /* no slashes; search PATH */ - const char *path = getenv ("PATH"); - if (path != NULL) - { - for (p = path; *p; p = p_next) - { - const char *q; - size_t p_len; - for (q = p; *q; q++) - if (IS_PATH_SEPARATOR (*q)) - break; - p_len = q - p; - p_next = (*q == '\0' ? q : q + 1); - if (p_len == 0) - { - /* empty path: current directory */ - if (getcwd (tmp, LT_PATHMAX) == NULL) - lt_fatal (__FILE__, __LINE__, "getcwd failed: %s", - nonnull (strerror (errno))); - tmp_len = strlen (tmp); - concat_name = - XMALLOC (char, tmp_len + 1 + strlen (wrapper) + 1); - memcpy (concat_name, tmp, tmp_len); - concat_name[tmp_len] = '/'; - strcpy (concat_name + tmp_len + 1, wrapper); - } - else - { - concat_name = - XMALLOC (char, p_len + 1 + strlen (wrapper) + 1); - memcpy (concat_name, p, p_len); - concat_name[p_len] = '/'; - strcpy (concat_name + p_len + 1, wrapper); - } - if (check_executable (concat_name)) - return concat_name; - XFREE (concat_name); - } - } - /* not found in PATH; assume curdir */ - } - /* Relative path | not found in path: prepend cwd */ - if (getcwd (tmp, LT_PATHMAX) == NULL) - lt_fatal (__FILE__, __LINE__, "getcwd failed: %s", - nonnull (strerror (errno))); - tmp_len = strlen (tmp); - concat_name = XMALLOC (char, tmp_len + 1 + strlen (wrapper) + 1); - memcpy (concat_name, tmp, tmp_len); - concat_name[tmp_len] = '/'; - strcpy (concat_name + tmp_len + 1, wrapper); - - if (check_executable (concat_name)) - return concat_name; - XFREE (concat_name); - return NULL; -} - -char * -chase_symlinks (const char *pathspec) -{ -#ifndef S_ISLNK - return xstrdup (pathspec); -#else - char buf[LT_PATHMAX]; - struct stat s; - char *tmp_pathspec = xstrdup (pathspec); - char *p; - int has_symlinks = 0; - while (strlen (tmp_pathspec) && !has_symlinks) - { - lt_debugprintf (__FILE__, __LINE__, - "checking path component for symlinks: %s\n", - tmp_pathspec); - if (lstat (tmp_pathspec, &s) == 0) - { - if (S_ISLNK (s.st_mode) != 0) - { - has_symlinks = 1; - break; - } - - /* search backwards for last DIR_SEPARATOR */ - p = tmp_pathspec + strlen (tmp_pathspec) - 1; - while ((p > tmp_pathspec) && (!IS_DIR_SEPARATOR (*p))) - p--; - if ((p == tmp_pathspec) && (!IS_DIR_SEPARATOR (*p))) - { - /* no more DIR_SEPARATORS left */ - break; - } - *p = '\0'; - } - else - { - lt_fatal (__FILE__, __LINE__, - "error accessing file \"%s\": %s", - tmp_pathspec, nonnull (strerror (errno))); - } - } - XFREE (tmp_pathspec); - - if (!has_symlinks) - { - return xstrdup (pathspec); - } - - tmp_pathspec = realpath (pathspec, buf); - if (tmp_pathspec == 0) - { - lt_fatal (__FILE__, __LINE__, - "could not follow symlinks for %s", pathspec); - } - return xstrdup (tmp_pathspec); -#endif -} - -char * -strendzap (char *str, const char *pat) -{ - size_t len, patlen; - - assert (str != NULL); - assert (pat != NULL); - - len = strlen (str); - patlen = strlen (pat); - - if (patlen <= len) - { - str += len - patlen; - if (strcmp (str, pat) == 0) - *str = '\0'; - } - return str; -} - -void -lt_debugprintf (const char *file, int line, const char *fmt, ...) -{ - va_list args; - if (lt_debug) - { - (void) fprintf (stderr, "%s:%s:%d: ", program_name, file, line); - va_start (args, fmt); - (void) vfprintf (stderr, fmt, args); - va_end (args); - } -} - -static void -lt_error_core (int exit_status, const char *file, - int line, const char *mode, - const char *message, va_list ap) -{ - fprintf (stderr, "%s:%s:%d: %s: ", program_name, file, line, mode); - vfprintf (stderr, message, ap); - fprintf (stderr, ".\n"); - - if (exit_status >= 0) - exit (exit_status); -} - -void -lt_fatal (const char *file, int line, const char *message, ...) -{ - va_list ap; - va_start (ap, message); - lt_error_core (EXIT_FAILURE, file, line, "FATAL", message, ap); - va_end (ap); -} - -static const char * -nonnull (const char *s) -{ - return s ? s : "(null)"; -} - -static const char * -nonempty (const char *s) -{ - return (s && !*s) ? "(empty)" : nonnull (s); -} - -void -lt_setenv (const char *name, const char *value) -{ - lt_debugprintf (__FILE__, __LINE__, - "(lt_setenv) setting '%s' to '%s'\n", - nonnull (name), nonnull (value)); - { -#ifdef HAVE_SETENV - /* always make a copy, for consistency with !HAVE_SETENV */ - char *str = xstrdup (value); - setenv (name, str, 1); -#else - int len = strlen (name) + 1 + strlen (value) + 1; - char *str = XMALLOC (char, len); - sprintf (str, "%s=%s", name, value); - if (putenv (str) != EXIT_SUCCESS) - { - XFREE (str); - } -#endif - } -} - -char * -lt_extend_str (const char *orig_value, const char *add, int to_end) -{ - char *new_value; - if (orig_value && *orig_value) - { - int orig_value_len = strlen (orig_value); - int add_len = strlen (add); - new_value = XMALLOC (char, add_len + orig_value_len + 1); - if (to_end) - { - strcpy (new_value, orig_value); - strcpy (new_value + orig_value_len, add); - } - else - { - strcpy (new_value, add); - strcpy (new_value + add_len, orig_value); - } - } - else - { - new_value = xstrdup (add); - } - return new_value; -} - -void -lt_update_exe_path (const char *name, const char *value) -{ - lt_debugprintf (__FILE__, __LINE__, - "(lt_update_exe_path) modifying '%s' by prepending '%s'\n", - nonnull (name), nonnull (value)); - - if (name && *name && value && *value) - { - char *new_value = lt_extend_str (getenv (name), value, 0); - /* some systems can't cope with a ':'-terminated path #' */ - int len = strlen (new_value); - while (((len = strlen (new_value)) > 0) && IS_PATH_SEPARATOR (new_value[len-1])) - { - new_value[len-1] = '\0'; - } - lt_setenv (name, new_value); - XFREE (new_value); - } -} - -void -lt_update_lib_path (const char *name, const char *value) -{ - lt_debugprintf (__FILE__, __LINE__, - "(lt_update_lib_path) modifying '%s' by prepending '%s'\n", - nonnull (name), nonnull (value)); - - if (name && *name && value && *value) - { - char *new_value = lt_extend_str (getenv (name), value, 0); - lt_setenv (name, new_value); - XFREE (new_value); - } -} - -EOF - case $host_os in - mingw*) - cat <<"EOF" - -/* Prepares an argument vector before calling spawn(). - Note that spawn() does not by itself call the command interpreter - (getenv ("COMSPEC") != NULL ? getenv ("COMSPEC") : - ({ OSVERSIONINFO v; v.dwOSVersionInfoSize = sizeof(OSVERSIONINFO); - GetVersionEx(&v); - v.dwPlatformId == VER_PLATFORM_WIN32_NT; - }) ? "cmd.exe" : "command.com"). - Instead it simply concatenates the arguments, separated by ' ', and calls - CreateProcess(). We must quote the arguments since Win32 CreateProcess() - interprets characters like ' ', '\t', '\\', '"' (but not '<' and '>') in a - special way: - - Space and tab are interpreted as delimiters. They are not treated as - delimiters if they are surrounded by double quotes: "...". - - Unescaped double quotes are removed from the input. Their only effect is - that within double quotes, space and tab are treated like normal - characters. - - Backslashes not followed by double quotes are not special. - - But 2*n+1 backslashes followed by a double quote become - n backslashes followed by a double quote (n >= 0): - \" -> " - \\\" -> \" - \\\\\" -> \\" - */ -#define SHELL_SPECIAL_CHARS "\"\\ \001\002\003\004\005\006\007\010\011\012\013\014\015\016\017\020\021\022\023\024\025\026\027\030\031\032\033\034\035\036\037" -#define SHELL_SPACE_CHARS " \001\002\003\004\005\006\007\010\011\012\013\014\015\016\017\020\021\022\023\024\025\026\027\030\031\032\033\034\035\036\037" -char ** -prepare_spawn (char **argv) -{ - size_t argc; - char **new_argv; - size_t i; - - /* Count number of arguments. */ - for (argc = 0; argv[argc] != NULL; argc++) - ; - - /* Allocate new argument vector. */ - new_argv = XMALLOC (char *, argc + 1); - - /* Put quoted arguments into the new argument vector. */ - for (i = 0; i < argc; i++) - { - const char *string = argv[i]; - - if (string[0] == '\0') - new_argv[i] = xstrdup ("\"\""); - else if (strpbrk (string, SHELL_SPECIAL_CHARS) != NULL) - { - int quote_around = (strpbrk (string, SHELL_SPACE_CHARS) != NULL); - size_t length; - unsigned int backslashes; - const char *s; - char *quoted_string; - char *p; - - length = 0; - backslashes = 0; - if (quote_around) - length++; - for (s = string; *s != '\0'; s++) - { - char c = *s; - if (c == '"') - length += backslashes + 1; - length++; - if (c == '\\') - backslashes++; - else - backslashes = 0; - } - if (quote_around) - length += backslashes + 1; - - quoted_string = XMALLOC (char, length + 1); - - p = quoted_string; - backslashes = 0; - if (quote_around) - *p++ = '"'; - for (s = string; *s != '\0'; s++) - { - char c = *s; - if (c == '"') - { - unsigned int j; - for (j = backslashes + 1; j > 0; j--) - *p++ = '\\'; - } - *p++ = c; - if (c == '\\') - backslashes++; - else - backslashes = 0; - } - if (quote_around) - { - unsigned int j; - for (j = backslashes; j > 0; j--) - *p++ = '\\'; - *p++ = '"'; - } - *p = '\0'; - - new_argv[i] = quoted_string; - } - else - new_argv[i] = (char *) string; - } - new_argv[argc] = NULL; - - return new_argv; -} -EOF - ;; - esac - - cat <<"EOF" -void lt_dump_script (FILE* f) -{ -EOF - func_emit_wrapper yes | - $SED -n -e ' -s/^\(.\{79\}\)\(..*\)/\1\ -\2/ -h -s/\([\\"]\)/\\\1/g -s/$/\\n/ -s/\([^\n]*\).*/ fputs ("\1", f);/p -g -D' - cat <<"EOF" -} -EOF -} -# end: func_emit_cwrapperexe_src - -# func_win32_import_lib_p ARG -# True if ARG is an import lib, as indicated by $file_magic_cmd -func_win32_import_lib_p () -{ - $opt_debug - case `eval $file_magic_cmd \"\$1\" 2>/dev/null | $SED -e 10q` in - *import*) : ;; - *) false ;; - esac -} - -# func_mode_link arg... -func_mode_link () -{ - $opt_debug - case $host in - *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*) - # It is impossible to link a dll without this setting, and - # we shouldn't force the makefile maintainer to figure out - # which system we are compiling for in order to pass an extra - # flag for every libtool invocation. - # allow_undefined=no - - # FIXME: Unfortunately, there are problems with the above when trying - # to make a dll which has undefined symbols, in which case not - # even a static library is built. For now, we need to specify - # -no-undefined on the libtool link line when we can be certain - # that all symbols are satisfied, otherwise we get a static library. - allow_undefined=yes - ;; - *) - allow_undefined=yes - ;; - esac - libtool_args=$nonopt - base_compile="$nonopt $@" - compile_command=$nonopt - finalize_command=$nonopt - - compile_rpath= - finalize_rpath= - compile_shlibpath= - finalize_shlibpath= - convenience= - old_convenience= - deplibs= - old_deplibs= - compiler_flags= - linker_flags= - dllsearchpath= - lib_search_path=`pwd` - inst_prefix_dir= - new_inherited_linker_flags= - - avoid_version=no - bindir= - dlfiles= - dlprefiles= - dlself=no - export_dynamic=no - export_symbols= - export_symbols_regex= - generated= - libobjs= - ltlibs= - module=no - no_install=no - objs= - non_pic_objects= - precious_files_regex= - prefer_static_libs=no - preload=no - prev= - prevarg= - release= - rpath= - xrpath= - perm_rpath= - temp_rpath= - thread_safe=no - vinfo= - vinfo_number=no - weak_libs= - single_module="${wl}-single_module" - func_infer_tag $base_compile - - # We need to know -static, to get the right output filenames. - for arg - do - case $arg in - -shared) - test "$build_libtool_libs" != yes && \ - func_fatal_configuration "can not build a shared library" - build_old_libs=no - break - ;; - -all-static | -static | -static-libtool-libs) - case $arg in - -all-static) - if test "$build_libtool_libs" = yes && test -z "$link_static_flag"; then - func_warning "complete static linking is impossible in this configuration" - fi - if test -n "$link_static_flag"; then - dlopen_self=$dlopen_self_static - fi - prefer_static_libs=yes - ;; - -static) - if test -z "$pic_flag" && test -n "$link_static_flag"; then - dlopen_self=$dlopen_self_static - fi - prefer_static_libs=built - ;; - -static-libtool-libs) - if test -z "$pic_flag" && test -n "$link_static_flag"; then - dlopen_self=$dlopen_self_static - fi - prefer_static_libs=yes - ;; - esac - build_libtool_libs=no - build_old_libs=yes - break - ;; - esac - done - - # See if our shared archives depend on static archives. - test -n "$old_archive_from_new_cmds" && build_old_libs=yes - - # Go through the arguments, transforming them on the way. - while test "$#" -gt 0; do - arg="$1" - shift - func_quote_for_eval "$arg" - qarg=$func_quote_for_eval_unquoted_result - libtool_args+=" $func_quote_for_eval_result" - - # If the previous option needs an argument, assign it. - if test -n "$prev"; then - case $prev in - output) - compile_command+=" @OUTPUT@" - finalize_command+=" @OUTPUT@" - ;; - esac - - case $prev in - bindir) - bindir="$arg" - prev= - continue - ;; - dlfiles|dlprefiles) - if test "$preload" = no; then - # Add the symbol object into the linking commands. - compile_command+=" @SYMFILE@" - finalize_command+=" @SYMFILE@" - preload=yes - fi - case $arg in - *.la | *.lo) ;; # We handle these cases below. - force) - if test "$dlself" = no; then - dlself=needless - export_dynamic=yes - fi - prev= - continue - ;; - self) - if test "$prev" = dlprefiles; then - dlself=yes - elif test "$prev" = dlfiles && test "$dlopen_self" != yes; then - dlself=yes - else - dlself=needless - export_dynamic=yes - fi - prev= - continue - ;; - *) - if test "$prev" = dlfiles; then - dlfiles+=" $arg" - else - dlprefiles+=" $arg" - fi - prev= - continue - ;; - esac - ;; - expsyms) - export_symbols="$arg" - test -f "$arg" \ - || func_fatal_error "symbol file \`$arg' does not exist" - prev= - continue - ;; - expsyms_regex) - export_symbols_regex="$arg" - prev= - continue - ;; - framework) - case $host in - *-*-darwin*) - case "$deplibs " in - *" $qarg.ltframework "*) ;; - *) deplibs+=" $qarg.ltframework" # this is fixed later - ;; - esac - ;; - esac - prev= - continue - ;; - inst_prefix) - inst_prefix_dir="$arg" - prev= - continue - ;; - objectlist) - if test -f "$arg"; then - save_arg=$arg - moreargs= - for fil in `cat "$save_arg"` - do -# moreargs+=" $fil" - arg=$fil - # A libtool-controlled object. - - # Check to see that this really is a libtool object. - if func_lalib_unsafe_p "$arg"; then - pic_object= - non_pic_object= - - # Read the .lo file - func_source "$arg" - - if test -z "$pic_object" || - test -z "$non_pic_object" || - test "$pic_object" = none && - test "$non_pic_object" = none; then - func_fatal_error "cannot find name of object for \`$arg'" - fi - - # Extract subdirectory from the argument. - func_dirname "$arg" "/" "" - xdir="$func_dirname_result" - - if test "$pic_object" != none; then - # Prepend the subdirectory the object is found in. - pic_object="$xdir$pic_object" - - if test "$prev" = dlfiles; then - if test "$build_libtool_libs" = yes && test "$dlopen_support" = yes; then - dlfiles+=" $pic_object" - prev= - continue - else - # If libtool objects are unsupported, then we need to preload. - prev=dlprefiles - fi - fi - - # CHECK ME: I think I busted this. -Ossama - if test "$prev" = dlprefiles; then - # Preload the old-style object. - dlprefiles+=" $pic_object" - prev= - fi - - # A PIC object. - libobjs+=" $pic_object" - arg="$pic_object" - fi - - # Non-PIC object. - if test "$non_pic_object" != none; then - # Prepend the subdirectory the object is found in. - non_pic_object="$xdir$non_pic_object" - - # A standard non-PIC object - non_pic_objects+=" $non_pic_object" - if test -z "$pic_object" || test "$pic_object" = none ; then - arg="$non_pic_object" - fi - else - # If the PIC object exists, use it instead. - # $xdir was prepended to $pic_object above. - non_pic_object="$pic_object" - non_pic_objects+=" $non_pic_object" - fi - else - # Only an error if not doing a dry-run. - if $opt_dry_run; then - # Extract subdirectory from the argument. - func_dirname "$arg" "/" "" - xdir="$func_dirname_result" - - func_lo2o "$arg" - pic_object=$xdir$objdir/$func_lo2o_result - non_pic_object=$xdir$func_lo2o_result - libobjs+=" $pic_object" - non_pic_objects+=" $non_pic_object" - else - func_fatal_error "\`$arg' is not a valid libtool object" - fi - fi - done - else - func_fatal_error "link input file \`$arg' does not exist" - fi - arg=$save_arg - prev= - continue - ;; - precious_regex) - precious_files_regex="$arg" - prev= - continue - ;; - release) - release="-$arg" - prev= - continue - ;; - rpath | xrpath) - # We need an absolute path. - case $arg in - [\\/]* | [A-Za-z]:[\\/]*) ;; - *) - func_fatal_error "only absolute run-paths are allowed" - ;; - esac - if test "$prev" = rpath; then - case "$rpath " in - *" $arg "*) ;; - *) rpath+=" $arg" ;; - esac - else - case "$xrpath " in - *" $arg "*) ;; - *) xrpath+=" $arg" ;; - esac - fi - prev= - continue - ;; - shrext) - shrext_cmds="$arg" - prev= - continue - ;; - weak) - weak_libs+=" $arg" - prev= - continue - ;; - xcclinker) - linker_flags+=" $qarg" - compiler_flags+=" $qarg" - prev= - compile_command+=" $qarg" - finalize_command+=" $qarg" - continue - ;; - xcompiler) - compiler_flags+=" $qarg" - prev= - compile_command+=" $qarg" - finalize_command+=" $qarg" - continue - ;; - xlinker) - linker_flags+=" $qarg" - compiler_flags+=" $wl$qarg" - prev= - compile_command+=" $wl$qarg" - finalize_command+=" $wl$qarg" - continue - ;; - *) - eval "$prev=\"\$arg\"" - prev= - continue - ;; - esac - fi # test -n "$prev" - - prevarg="$arg" - - case $arg in - -all-static) - if test -n "$link_static_flag"; then - # See comment for -static flag below, for more details. - compile_command+=" $link_static_flag" - finalize_command+=" $link_static_flag" - fi - continue - ;; - - -allow-undefined) - # FIXME: remove this flag sometime in the future. - func_fatal_error "\`-allow-undefined' must not be used because it is the default" - ;; - - -avoid-version) - avoid_version=yes - continue - ;; - - -bindir) - prev=bindir - continue - ;; - - -dlopen) - prev=dlfiles - continue - ;; - - -dlpreopen) - prev=dlprefiles - continue - ;; - - -export-dynamic) - export_dynamic=yes - continue - ;; - - -export-symbols | -export-symbols-regex) - if test -n "$export_symbols" || test -n "$export_symbols_regex"; then - func_fatal_error "more than one -exported-symbols argument is not allowed" - fi - if test "X$arg" = "X-export-symbols"; then - prev=expsyms - else - prev=expsyms_regex - fi - continue - ;; - - -framework) - prev=framework - continue - ;; - - -inst-prefix-dir) - prev=inst_prefix - continue - ;; - - # The native IRIX linker understands -LANG:*, -LIST:* and -LNO:* - # so, if we see these flags be careful not to treat them like -L - -L[A-Z][A-Z]*:*) - case $with_gcc/$host in - no/*-*-irix* | /*-*-irix*) - compile_command+=" $arg" - finalize_command+=" $arg" - ;; - esac - continue - ;; - - -L*) - func_stripname "-L" '' "$arg" - if test -z "$func_stripname_result"; then - if test "$#" -gt 0; then - func_fatal_error "require no space between \`-L' and \`$1'" - else - func_fatal_error "need path for \`-L' option" - fi - fi - func_resolve_sysroot "$func_stripname_result" - dir=$func_resolve_sysroot_result - # We need an absolute path. - case $dir in - [\\/]* | [A-Za-z]:[\\/]*) ;; - *) - absdir=`cd "$dir" && pwd` - test -z "$absdir" && \ - func_fatal_error "cannot determine absolute directory name of \`$dir'" - dir="$absdir" - ;; - esac - case "$deplibs " in - *" -L$dir "* | *" $arg "*) - # Will only happen for absolute or sysroot arguments - ;; - *) - # Preserve sysroot, but never include relative directories - case $dir in - [\\/]* | [A-Za-z]:[\\/]* | =*) deplibs+=" $arg" ;; - *) deplibs+=" -L$dir" ;; - esac - lib_search_path+=" $dir" - ;; - esac - case $host in - *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*) - testbindir=`$ECHO "$dir" | $SED 's*/lib$*/bin*'` - case :$dllsearchpath: in - *":$dir:"*) ;; - ::) dllsearchpath=$dir;; - *) dllsearchpath+=":$dir";; - esac - case :$dllsearchpath: in - *":$testbindir:"*) ;; - ::) dllsearchpath=$testbindir;; - *) dllsearchpath+=":$testbindir";; - esac - ;; - esac - continue - ;; - - -l*) - if test "X$arg" = "X-lc" || test "X$arg" = "X-lm"; then - case $host in - *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-beos* | *-cegcc* | *-*-haiku*) - # These systems don't actually have a C or math library (as such) - continue - ;; - *-*-os2*) - # These systems don't actually have a C library (as such) - test "X$arg" = "X-lc" && continue - ;; - *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*) - # Do not include libc due to us having libc/libc_r. - test "X$arg" = "X-lc" && continue - ;; - *-*-rhapsody* | *-*-darwin1.[012]) - # Rhapsody C and math libraries are in the System framework - deplibs+=" System.ltframework" - continue - ;; - *-*-sco3.2v5* | *-*-sco5v6*) - # Causes problems with __ctype - test "X$arg" = "X-lc" && continue - ;; - *-*-sysv4.2uw2* | *-*-sysv5* | *-*-unixware* | *-*-OpenUNIX*) - # Compiler inserts libc in the correct place for threads to work - test "X$arg" = "X-lc" && continue - ;; - esac - elif test "X$arg" = "X-lc_r"; then - case $host in - *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*) - # Do not include libc_r directly, use -pthread flag. - continue - ;; - esac - fi - deplibs+=" $arg" - continue - ;; - - -module) - module=yes - continue - ;; - - # Tru64 UNIX uses -model [arg] to determine the layout of C++ - # classes, name mangling, and exception handling. - # Darwin uses the -arch flag to determine output architecture. - -model|-arch|-isysroot|--sysroot) - compiler_flags+=" $arg" - compile_command+=" $arg" - finalize_command+=" $arg" - prev=xcompiler - continue - ;; - - -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe \ - |-threads|-fopenmp|-openmp|-mp|-xopenmp|-omp|-qsmp=*) - compiler_flags+=" $arg" - compile_command+=" $arg" - finalize_command+=" $arg" - case "$new_inherited_linker_flags " in - *" $arg "*) ;; - * ) new_inherited_linker_flags+=" $arg" ;; - esac - continue - ;; - - -multi_module) - single_module="${wl}-multi_module" - continue - ;; - - -no-fast-install) - fast_install=no - continue - ;; - - -no-install) - case $host in - *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-darwin* | *-cegcc*) - # The PATH hackery in wrapper scripts is required on Windows - # and Darwin in order for the loader to find any dlls it needs. - func_warning "\`-no-install' is ignored for $host" - func_warning "assuming \`-no-fast-install' instead" - fast_install=no - ;; - *) no_install=yes ;; - esac - continue - ;; - - -no-undefined) - allow_undefined=no - continue - ;; - - -objectlist) - prev=objectlist - continue - ;; - - -o) prev=output ;; - - -precious-files-regex) - prev=precious_regex - continue - ;; - - -release) - prev=release - continue - ;; - - -rpath) - prev=rpath - continue - ;; - - -R) - prev=xrpath - continue - ;; - - -R*) - func_stripname '-R' '' "$arg" - dir=$func_stripname_result - # We need an absolute path. - case $dir in - [\\/]* | [A-Za-z]:[\\/]*) ;; - =*) - func_stripname '=' '' "$dir" - dir=$lt_sysroot$func_stripname_result - ;; - *) - func_fatal_error "only absolute run-paths are allowed" - ;; - esac - case "$xrpath " in - *" $dir "*) ;; - *) xrpath+=" $dir" ;; - esac - continue - ;; - - -shared) - # The effects of -shared are defined in a previous loop. - continue - ;; - - -shrext) - prev=shrext - continue - ;; - - -static | -static-libtool-libs) - # The effects of -static are defined in a previous loop. - # We used to do the same as -all-static on platforms that - # didn't have a PIC flag, but the assumption that the effects - # would be equivalent was wrong. It would break on at least - # Digital Unix and AIX. - continue - ;; - - -thread-safe) - thread_safe=yes - continue - ;; - - -version-info) - prev=vinfo - continue - ;; - - -version-number) - prev=vinfo - vinfo_number=yes - continue - ;; - - -weak) - prev=weak - continue - ;; - - -Wc,*) - func_stripname '-Wc,' '' "$arg" - args=$func_stripname_result - arg= - save_ifs="$IFS"; IFS=',' - for flag in $args; do - IFS="$save_ifs" - func_quote_for_eval "$flag" - arg+=" $func_quote_for_eval_result" - compiler_flags+=" $func_quote_for_eval_result" - done - IFS="$save_ifs" - func_stripname ' ' '' "$arg" - arg=$func_stripname_result - ;; - - -Wl,*) - func_stripname '-Wl,' '' "$arg" - args=$func_stripname_result - arg= - save_ifs="$IFS"; IFS=',' - for flag in $args; do - IFS="$save_ifs" - func_quote_for_eval "$flag" - arg+=" $wl$func_quote_for_eval_result" - compiler_flags+=" $wl$func_quote_for_eval_result" - linker_flags+=" $func_quote_for_eval_result" - done - IFS="$save_ifs" - func_stripname ' ' '' "$arg" - arg=$func_stripname_result - ;; - - -Xcompiler) - prev=xcompiler - continue - ;; - - -Xlinker) - prev=xlinker - continue - ;; - - -XCClinker) - prev=xcclinker - continue - ;; - - # -msg_* for osf cc - -msg_*) - func_quote_for_eval "$arg" - arg="$func_quote_for_eval_result" - ;; - - # Flags to be passed through unchanged, with rationale: - # -64, -mips[0-9] enable 64-bit mode for the SGI compiler - # -r[0-9][0-9]* specify processor for the SGI compiler - # -xarch=*, -xtarget=* enable 64-bit mode for the Sun compiler - # +DA*, +DD* enable 64-bit mode for the HP compiler - # -q* compiler args for the IBM compiler - # -m*, -t[45]*, -txscale* architecture-specific flags for GCC - # -F/path path to uninstalled frameworks, gcc on darwin - # -p, -pg, --coverage, -fprofile-* profiling flags for GCC - # @file GCC response files - # -tp=* Portland pgcc target processor selection - # --sysroot=* for sysroot support - # -O*, -flto*, -fwhopr*, -fuse-linker-plugin GCC link-time optimization - -64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*| \ - -t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*|-tp=*|--sysroot=*| \ - -O*|-flto*|-fwhopr*|-fuse-linker-plugin) - func_quote_for_eval "$arg" - arg="$func_quote_for_eval_result" - compile_command+=" $arg" - finalize_command+=" $arg" - compiler_flags+=" $arg" - continue - ;; - - # Some other compiler flag. - -* | +*) - func_quote_for_eval "$arg" - arg="$func_quote_for_eval_result" - ;; - - *.$objext) - # A standard object. - objs+=" $arg" - ;; - - *.lo) - # A libtool-controlled object. - - # Check to see that this really is a libtool object. - if func_lalib_unsafe_p "$arg"; then - pic_object= - non_pic_object= - - # Read the .lo file - func_source "$arg" - - if test -z "$pic_object" || - test -z "$non_pic_object" || - test "$pic_object" = none && - test "$non_pic_object" = none; then - func_fatal_error "cannot find name of object for \`$arg'" - fi - - # Extract subdirectory from the argument. - func_dirname "$arg" "/" "" - xdir="$func_dirname_result" - - if test "$pic_object" != none; then - # Prepend the subdirectory the object is found in. - pic_object="$xdir$pic_object" - - if test "$prev" = dlfiles; then - if test "$build_libtool_libs" = yes && test "$dlopen_support" = yes; then - dlfiles+=" $pic_object" - prev= - continue - else - # If libtool objects are unsupported, then we need to preload. - prev=dlprefiles - fi - fi - - # CHECK ME: I think I busted this. -Ossama - if test "$prev" = dlprefiles; then - # Preload the old-style object. - dlprefiles+=" $pic_object" - prev= - fi - - # A PIC object. - libobjs+=" $pic_object" - arg="$pic_object" - fi - - # Non-PIC object. - if test "$non_pic_object" != none; then - # Prepend the subdirectory the object is found in. - non_pic_object="$xdir$non_pic_object" - - # A standard non-PIC object - non_pic_objects+=" $non_pic_object" - if test -z "$pic_object" || test "$pic_object" = none ; then - arg="$non_pic_object" - fi - else - # If the PIC object exists, use it instead. - # $xdir was prepended to $pic_object above. - non_pic_object="$pic_object" - non_pic_objects+=" $non_pic_object" - fi - else - # Only an error if not doing a dry-run. - if $opt_dry_run; then - # Extract subdirectory from the argument. - func_dirname "$arg" "/" "" - xdir="$func_dirname_result" - - func_lo2o "$arg" - pic_object=$xdir$objdir/$func_lo2o_result - non_pic_object=$xdir$func_lo2o_result - libobjs+=" $pic_object" - non_pic_objects+=" $non_pic_object" - else - func_fatal_error "\`$arg' is not a valid libtool object" - fi - fi - ;; - - *.$libext) - # An archive. - deplibs+=" $arg" - old_deplibs+=" $arg" - continue - ;; - - *.la) - # A libtool-controlled library. - - func_resolve_sysroot "$arg" - if test "$prev" = dlfiles; then - # This library was specified with -dlopen. - dlfiles+=" $func_resolve_sysroot_result" - prev= - elif test "$prev" = dlprefiles; then - # The library was specified with -dlpreopen. - dlprefiles+=" $func_resolve_sysroot_result" - prev= - else - deplibs+=" $func_resolve_sysroot_result" - fi - continue - ;; - - # Some other compiler argument. - *) - # Unknown arguments in both finalize_command and compile_command need - # to be aesthetically quoted because they are evaled later. - func_quote_for_eval "$arg" - arg="$func_quote_for_eval_result" - ;; - esac # arg - - # Now actually substitute the argument into the commands. - if test -n "$arg"; then - compile_command+=" $arg" - finalize_command+=" $arg" - fi - done # argument parsing loop - - test -n "$prev" && \ - func_fatal_help "the \`$prevarg' option requires an argument" - - if test "$export_dynamic" = yes && test -n "$export_dynamic_flag_spec"; then - eval arg=\"$export_dynamic_flag_spec\" - compile_command+=" $arg" - finalize_command+=" $arg" - fi - - oldlibs= - # calculate the name of the file, without its directory - func_basename "$output" - outputname="$func_basename_result" - libobjs_save="$libobjs" - - if test -n "$shlibpath_var"; then - # get the directories listed in $shlibpath_var - eval shlib_search_path=\`\$ECHO \"\${$shlibpath_var}\" \| \$SED \'s/:/ /g\'\` - else - shlib_search_path= - fi - eval sys_lib_search_path=\"$sys_lib_search_path_spec\" - eval sys_lib_dlsearch_path=\"$sys_lib_dlsearch_path_spec\" - - func_dirname "$output" "/" "" - output_objdir="$func_dirname_result$objdir" - func_to_tool_file "$output_objdir/" - tool_output_objdir=$func_to_tool_file_result - # Create the object directory. - func_mkdir_p "$output_objdir" - - # Determine the type of output - case $output in - "") - func_fatal_help "you must specify an output file" - ;; - *.$libext) linkmode=oldlib ;; - *.lo | *.$objext) linkmode=obj ;; - *.la) linkmode=lib ;; - *) linkmode=prog ;; # Anything else should be a program. - esac - - specialdeplibs= - - libs= - # Find all interdependent deplibs by searching for libraries - # that are linked more than once (e.g. -la -lb -la) - for deplib in $deplibs; do - if $opt_preserve_dup_deps ; then - case "$libs " in - *" $deplib "*) specialdeplibs+=" $deplib" ;; - esac - fi - libs+=" $deplib" - done - - if test "$linkmode" = lib; then - libs="$predeps $libs $compiler_lib_search_path $postdeps" - - # Compute libraries that are listed more than once in $predeps - # $postdeps and mark them as special (i.e., whose duplicates are - # not to be eliminated). - pre_post_deps= - if $opt_duplicate_compiler_generated_deps; then - for pre_post_dep in $predeps $postdeps; do - case "$pre_post_deps " in - *" $pre_post_dep "*) specialdeplibs+=" $pre_post_deps" ;; - esac - pre_post_deps+=" $pre_post_dep" - done - fi - pre_post_deps= - fi - - deplibs= - newdependency_libs= - newlib_search_path= - need_relink=no # whether we're linking any uninstalled libtool libraries - notinst_deplibs= # not-installed libtool libraries - notinst_path= # paths that contain not-installed libtool libraries - - case $linkmode in - lib) - passes="conv dlpreopen link" - for file in $dlfiles $dlprefiles; do - case $file in - *.la) ;; - *) - func_fatal_help "libraries can \`-dlopen' only libtool libraries: $file" - ;; - esac - done - ;; - prog) - compile_deplibs= - finalize_deplibs= - alldeplibs=no - newdlfiles= - newdlprefiles= - passes="conv scan dlopen dlpreopen link" - ;; - *) passes="conv" - ;; - esac - - for pass in $passes; do - # The preopen pass in lib mode reverses $deplibs; put it back here - # so that -L comes before libs that need it for instance... - if test "$linkmode,$pass" = "lib,link"; then - ## FIXME: Find the place where the list is rebuilt in the wrong - ## order, and fix it there properly - tmp_deplibs= - for deplib in $deplibs; do - tmp_deplibs="$deplib $tmp_deplibs" - done - deplibs="$tmp_deplibs" - fi - - if test "$linkmode,$pass" = "lib,link" || - test "$linkmode,$pass" = "prog,scan"; then - libs="$deplibs" - deplibs= - fi - if test "$linkmode" = prog; then - case $pass in - dlopen) libs="$dlfiles" ;; - dlpreopen) libs="$dlprefiles" ;; - link) - libs="$deplibs %DEPLIBS%" - test "X$link_all_deplibs" != Xno && libs="$libs $dependency_libs" - ;; - esac - fi - if test "$linkmode,$pass" = "lib,dlpreopen"; then - # Collect and forward deplibs of preopened libtool libs - for lib in $dlprefiles; do - # Ignore non-libtool-libs - dependency_libs= - func_resolve_sysroot "$lib" - case $lib in - *.la) func_source "$func_resolve_sysroot_result" ;; - esac - - # Collect preopened libtool deplibs, except any this library - # has declared as weak libs - for deplib in $dependency_libs; do - func_basename "$deplib" - deplib_base=$func_basename_result - case " $weak_libs " in - *" $deplib_base "*) ;; - *) deplibs+=" $deplib" ;; - esac - done - done - libs="$dlprefiles" - fi - if test "$pass" = dlopen; then - # Collect dlpreopened libraries - save_deplibs="$deplibs" - deplibs= - fi - - for deplib in $libs; do - lib= - found=no - case $deplib in - -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe \ - |-threads|-fopenmp|-openmp|-mp|-xopenmp|-omp|-qsmp=*) - if test "$linkmode,$pass" = "prog,link"; then - compile_deplibs="$deplib $compile_deplibs" - finalize_deplibs="$deplib $finalize_deplibs" - else - compiler_flags+=" $deplib" - if test "$linkmode" = lib ; then - case "$new_inherited_linker_flags " in - *" $deplib "*) ;; - * ) new_inherited_linker_flags+=" $deplib" ;; - esac - fi - fi - continue - ;; - -l*) - if test "$linkmode" != lib && test "$linkmode" != prog; then - func_warning "\`-l' is ignored for archives/objects" - continue - fi - func_stripname '-l' '' "$deplib" - name=$func_stripname_result - if test "$linkmode" = lib; then - searchdirs="$newlib_search_path $lib_search_path $compiler_lib_search_dirs $sys_lib_search_path $shlib_search_path" - else - searchdirs="$newlib_search_path $lib_search_path $sys_lib_search_path $shlib_search_path" - fi - for searchdir in $searchdirs; do - for search_ext in .la $std_shrext .so .a; do - # Search the libtool library - lib="$searchdir/lib${name}${search_ext}" - if test -f "$lib"; then - if test "$search_ext" = ".la"; then - found=yes - else - found=no - fi - break 2 - fi - done - done - if test "$found" != yes; then - # deplib doesn't seem to be a libtool library - if test "$linkmode,$pass" = "prog,link"; then - compile_deplibs="$deplib $compile_deplibs" - finalize_deplibs="$deplib $finalize_deplibs" - else - deplibs="$deplib $deplibs" - test "$linkmode" = lib && newdependency_libs="$deplib $newdependency_libs" - fi - continue - else # deplib is a libtool library - # If $allow_libtool_libs_with_static_runtimes && $deplib is a stdlib, - # We need to do some special things here, and not later. - if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then - case " $predeps $postdeps " in - *" $deplib "*) - if func_lalib_p "$lib"; then - library_names= - old_library= - func_source "$lib" - for l in $old_library $library_names; do - ll="$l" - done - if test "X$ll" = "X$old_library" ; then # only static version available - found=no - func_dirname "$lib" "" "." - ladir="$func_dirname_result" - lib=$ladir/$old_library - if test "$linkmode,$pass" = "prog,link"; then - compile_deplibs="$deplib $compile_deplibs" - finalize_deplibs="$deplib $finalize_deplibs" - else - deplibs="$deplib $deplibs" - test "$linkmode" = lib && newdependency_libs="$deplib $newdependency_libs" - fi - continue - fi - fi - ;; - *) ;; - esac - fi - fi - ;; # -l - *.ltframework) - if test "$linkmode,$pass" = "prog,link"; then - compile_deplibs="$deplib $compile_deplibs" - finalize_deplibs="$deplib $finalize_deplibs" - else - deplibs="$deplib $deplibs" - if test "$linkmode" = lib ; then - case "$new_inherited_linker_flags " in - *" $deplib "*) ;; - * ) new_inherited_linker_flags+=" $deplib" ;; - esac - fi - fi - continue - ;; - -L*) - case $linkmode in - lib) - deplibs="$deplib $deplibs" - test "$pass" = conv && continue - newdependency_libs="$deplib $newdependency_libs" - func_stripname '-L' '' "$deplib" - func_resolve_sysroot "$func_stripname_result" - newlib_search_path+=" $func_resolve_sysroot_result" - ;; - prog) - if test "$pass" = conv; then - deplibs="$deplib $deplibs" - continue - fi - if test "$pass" = scan; then - deplibs="$deplib $deplibs" - else - compile_deplibs="$deplib $compile_deplibs" - finalize_deplibs="$deplib $finalize_deplibs" - fi - func_stripname '-L' '' "$deplib" - func_resolve_sysroot "$func_stripname_result" - newlib_search_path+=" $func_resolve_sysroot_result" - ;; - *) - func_warning "\`-L' is ignored for archives/objects" - ;; - esac # linkmode - continue - ;; # -L - -R*) - if test "$pass" = link; then - func_stripname '-R' '' "$deplib" - func_resolve_sysroot "$func_stripname_result" - dir=$func_resolve_sysroot_result - # Make sure the xrpath contains only unique directories. - case "$xrpath " in - *" $dir "*) ;; - *) xrpath+=" $dir" ;; - esac - fi - deplibs="$deplib $deplibs" - continue - ;; - *.la) - func_resolve_sysroot "$deplib" - lib=$func_resolve_sysroot_result - ;; - *.$libext) - if test "$pass" = conv; then - deplibs="$deplib $deplibs" - continue - fi - case $linkmode in - lib) - # Linking convenience modules into shared libraries is allowed, - # but linking other static libraries is non-portable. - case " $dlpreconveniencelibs " in - *" $deplib "*) ;; - *) - valid_a_lib=no - case $deplibs_check_method in - match_pattern*) - set dummy $deplibs_check_method; shift - match_pattern_regex=`expr "$deplibs_check_method" : "$1 \(.*\)"` - if eval "\$ECHO \"$deplib\"" 2>/dev/null | $SED 10q \ - | $EGREP "$match_pattern_regex" > /dev/null; then - valid_a_lib=yes - fi - ;; - pass_all) - valid_a_lib=yes - ;; - esac - if test "$valid_a_lib" != yes; then - echo - $ECHO "*** Warning: Trying to link with static lib archive $deplib." - echo "*** I have the capability to make that library automatically link in when" - echo "*** you link to this library. But I can only do this if you have a" - echo "*** shared version of the library, which you do not appear to have" - echo "*** because the file extensions .$libext of this argument makes me believe" - echo "*** that it is just a static archive that I should not use here." - else - echo - $ECHO "*** Warning: Linking the shared library $output against the" - $ECHO "*** static library $deplib is not portable!" - deplibs="$deplib $deplibs" - fi - ;; - esac - continue - ;; - prog) - if test "$pass" != link; then - deplibs="$deplib $deplibs" - else - compile_deplibs="$deplib $compile_deplibs" - finalize_deplibs="$deplib $finalize_deplibs" - fi - continue - ;; - esac # linkmode - ;; # *.$libext - *.lo | *.$objext) - if test "$pass" = conv; then - deplibs="$deplib $deplibs" - elif test "$linkmode" = prog; then - if test "$pass" = dlpreopen || test "$dlopen_support" != yes || test "$build_libtool_libs" = no; then - # If there is no dlopen support or we're linking statically, - # we need to preload. - newdlprefiles+=" $deplib" - compile_deplibs="$deplib $compile_deplibs" - finalize_deplibs="$deplib $finalize_deplibs" - else - newdlfiles+=" $deplib" - fi - fi - continue - ;; - %DEPLIBS%) - alldeplibs=yes - continue - ;; - esac # case $deplib - - if test "$found" = yes || test -f "$lib"; then : - else - func_fatal_error "cannot find the library \`$lib' or unhandled argument \`$deplib'" - fi - - # Check to see that this really is a libtool archive. - func_lalib_unsafe_p "$lib" \ - || func_fatal_error "\`$lib' is not a valid libtool archive" - - func_dirname "$lib" "" "." - ladir="$func_dirname_result" - - dlname= - dlopen= - dlpreopen= - libdir= - library_names= - old_library= - inherited_linker_flags= - # If the library was installed with an old release of libtool, - # it will not redefine variables installed, or shouldnotlink - installed=yes - shouldnotlink=no - avoidtemprpath= - - - # Read the .la file - func_source "$lib" - - # Convert "-framework foo" to "foo.ltframework" - if test -n "$inherited_linker_flags"; then - tmp_inherited_linker_flags=`$ECHO "$inherited_linker_flags" | $SED 's/-framework \([^ $]*\)/\1.ltframework/g'` - for tmp_inherited_linker_flag in $tmp_inherited_linker_flags; do - case " $new_inherited_linker_flags " in - *" $tmp_inherited_linker_flag "*) ;; - *) new_inherited_linker_flags+=" $tmp_inherited_linker_flag";; - esac - done - fi - dependency_libs=`$ECHO " $dependency_libs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` - if test "$linkmode,$pass" = "lib,link" || - test "$linkmode,$pass" = "prog,scan" || - { test "$linkmode" != prog && test "$linkmode" != lib; }; then - test -n "$dlopen" && dlfiles+=" $dlopen" - test -n "$dlpreopen" && dlprefiles+=" $dlpreopen" - fi - - if test "$pass" = conv; then - # Only check for convenience libraries - deplibs="$lib $deplibs" - if test -z "$libdir"; then - if test -z "$old_library"; then - func_fatal_error "cannot find name of link library for \`$lib'" - fi - # It is a libtool convenience library, so add in its objects. - convenience+=" $ladir/$objdir/$old_library" - old_convenience+=" $ladir/$objdir/$old_library" - tmp_libs= - for deplib in $dependency_libs; do - deplibs="$deplib $deplibs" - if $opt_preserve_dup_deps ; then - case "$tmp_libs " in - *" $deplib "*) specialdeplibs+=" $deplib" ;; - esac - fi - tmp_libs+=" $deplib" - done - elif test "$linkmode" != prog && test "$linkmode" != lib; then - func_fatal_error "\`$lib' is not a convenience library" - fi - continue - fi # $pass = conv - - - # Get the name of the library we link against. - linklib= - if test -n "$old_library" && - { test "$prefer_static_libs" = yes || - test "$prefer_static_libs,$installed" = "built,no"; }; then - linklib=$old_library - else - for l in $old_library $library_names; do - linklib="$l" - done - fi - if test -z "$linklib"; then - func_fatal_error "cannot find name of link library for \`$lib'" - fi - - # This library was specified with -dlopen. - if test "$pass" = dlopen; then - if test -z "$libdir"; then - func_fatal_error "cannot -dlopen a convenience library: \`$lib'" - fi - if test -z "$dlname" || - test "$dlopen_support" != yes || - test "$build_libtool_libs" = no; then - # If there is no dlname, no dlopen support or we're linking - # statically, we need to preload. We also need to preload any - # dependent libraries so libltdl's deplib preloader doesn't - # bomb out in the load deplibs phase. - dlprefiles+=" $lib $dependency_libs" - else - newdlfiles+=" $lib" - fi - continue - fi # $pass = dlopen - - # We need an absolute path. - case $ladir in - [\\/]* | [A-Za-z]:[\\/]*) abs_ladir="$ladir" ;; - *) - abs_ladir=`cd "$ladir" && pwd` - if test -z "$abs_ladir"; then - func_warning "cannot determine absolute directory name of \`$ladir'" - func_warning "passing it literally to the linker, although it might fail" - abs_ladir="$ladir" - fi - ;; - esac - func_basename "$lib" - laname="$func_basename_result" - - # Find the relevant object directory and library name. - if test "X$installed" = Xyes; then - if test ! -f "$lt_sysroot$libdir/$linklib" && test -f "$abs_ladir/$linklib"; then - func_warning "library \`$lib' was moved." - dir="$ladir" - absdir="$abs_ladir" - libdir="$abs_ladir" - else - dir="$lt_sysroot$libdir" - absdir="$lt_sysroot$libdir" - fi - test "X$hardcode_automatic" = Xyes && avoidtemprpath=yes - else - if test ! -f "$ladir/$objdir/$linklib" && test -f "$abs_ladir/$linklib"; then - dir="$ladir" - absdir="$abs_ladir" - # Remove this search path later - notinst_path+=" $abs_ladir" - else - dir="$ladir/$objdir" - absdir="$abs_ladir/$objdir" - # Remove this search path later - notinst_path+=" $abs_ladir" - fi - fi # $installed = yes - func_stripname 'lib' '.la' "$laname" - name=$func_stripname_result - - # This library was specified with -dlpreopen. - if test "$pass" = dlpreopen; then - if test -z "$libdir" && test "$linkmode" = prog; then - func_fatal_error "only libraries may -dlpreopen a convenience library: \`$lib'" - fi - case "$host" in - # special handling for platforms with PE-DLLs. - *cygwin* | *mingw* | *cegcc* ) - # Linker will automatically link against shared library if both - # static and shared are present. Therefore, ensure we extract - # symbols from the import library if a shared library is present - # (otherwise, the dlopen module name will be incorrect). We do - # this by putting the import library name into $newdlprefiles. - # We recover the dlopen module name by 'saving' the la file - # name in a special purpose variable, and (later) extracting the - # dlname from the la file. - if test -n "$dlname"; then - func_tr_sh "$dir/$linklib" - eval "libfile_$func_tr_sh_result=\$abs_ladir/\$laname" - newdlprefiles+=" $dir/$linklib" - else - newdlprefiles+=" $dir/$old_library" - # Keep a list of preopened convenience libraries to check - # that they are being used correctly in the link pass. - test -z "$libdir" && \ - dlpreconveniencelibs+=" $dir/$old_library" - fi - ;; - * ) - # Prefer using a static library (so that no silly _DYNAMIC symbols - # are required to link). - if test -n "$old_library"; then - newdlprefiles+=" $dir/$old_library" - # Keep a list of preopened convenience libraries to check - # that they are being used correctly in the link pass. - test -z "$libdir" && \ - dlpreconveniencelibs+=" $dir/$old_library" - # Otherwise, use the dlname, so that lt_dlopen finds it. - elif test -n "$dlname"; then - newdlprefiles+=" $dir/$dlname" - else - newdlprefiles+=" $dir/$linklib" - fi - ;; - esac - fi # $pass = dlpreopen - - if test -z "$libdir"; then - # Link the convenience library - if test "$linkmode" = lib; then - deplibs="$dir/$old_library $deplibs" - elif test "$linkmode,$pass" = "prog,link"; then - compile_deplibs="$dir/$old_library $compile_deplibs" - finalize_deplibs="$dir/$old_library $finalize_deplibs" - else - deplibs="$lib $deplibs" # used for prog,scan pass - fi - continue - fi - - - if test "$linkmode" = prog && test "$pass" != link; then - newlib_search_path+=" $ladir" - deplibs="$lib $deplibs" - - linkalldeplibs=no - if test "$link_all_deplibs" != no || test -z "$library_names" || - test "$build_libtool_libs" = no; then - linkalldeplibs=yes - fi - - tmp_libs= - for deplib in $dependency_libs; do - case $deplib in - -L*) func_stripname '-L' '' "$deplib" - func_resolve_sysroot "$func_stripname_result" - newlib_search_path+=" $func_resolve_sysroot_result" - ;; - esac - # Need to link against all dependency_libs? - if test "$linkalldeplibs" = yes; then - deplibs="$deplib $deplibs" - else - # Need to hardcode shared library paths - # or/and link against static libraries - newdependency_libs="$deplib $newdependency_libs" - fi - if $opt_preserve_dup_deps ; then - case "$tmp_libs " in - *" $deplib "*) specialdeplibs+=" $deplib" ;; - esac - fi - tmp_libs+=" $deplib" - done # for deplib - continue - fi # $linkmode = prog... - - if test "$linkmode,$pass" = "prog,link"; then - if test -n "$library_names" && - { { test "$prefer_static_libs" = no || - test "$prefer_static_libs,$installed" = "built,yes"; } || - test -z "$old_library"; }; then - # We need to hardcode the library path - if test -n "$shlibpath_var" && test -z "$avoidtemprpath" ; then - # Make sure the rpath contains only unique directories. - case "$temp_rpath:" in - *"$absdir:"*) ;; - *) temp_rpath+="$absdir:" ;; - esac - fi - - # Hardcode the library path. - # Skip directories that are in the system default run-time - # search path. - case " $sys_lib_dlsearch_path " in - *" $absdir "*) ;; - *) - case "$compile_rpath " in - *" $absdir "*) ;; - *) compile_rpath+=" $absdir" ;; - esac - ;; - esac - case " $sys_lib_dlsearch_path " in - *" $libdir "*) ;; - *) - case "$finalize_rpath " in - *" $libdir "*) ;; - *) finalize_rpath+=" $libdir" ;; - esac - ;; - esac - fi # $linkmode,$pass = prog,link... - - if test "$alldeplibs" = yes && - { test "$deplibs_check_method" = pass_all || - { test "$build_libtool_libs" = yes && - test -n "$library_names"; }; }; then - # We only need to search for static libraries - continue - fi - fi - - link_static=no # Whether the deplib will be linked statically - use_static_libs=$prefer_static_libs - if test "$use_static_libs" = built && test "$installed" = yes; then - use_static_libs=no - fi - if test -n "$library_names" && - { test "$use_static_libs" = no || test -z "$old_library"; }; then - case $host in - *cygwin* | *mingw* | *cegcc*) - # No point in relinking DLLs because paths are not encoded - notinst_deplibs+=" $lib" - need_relink=no - ;; - *) - if test "$installed" = no; then - notinst_deplibs+=" $lib" - need_relink=yes - fi - ;; - esac - # This is a shared library - - # Warn about portability, can't link against -module's on some - # systems (darwin). Don't bleat about dlopened modules though! - dlopenmodule="" - for dlpremoduletest in $dlprefiles; do - if test "X$dlpremoduletest" = "X$lib"; then - dlopenmodule="$dlpremoduletest" - break - fi - done - if test -z "$dlopenmodule" && test "$shouldnotlink" = yes && test "$pass" = link; then - echo - if test "$linkmode" = prog; then - $ECHO "*** Warning: Linking the executable $output against the loadable module" - else - $ECHO "*** Warning: Linking the shared library $output against the loadable module" - fi - $ECHO "*** $linklib is not portable!" - fi - if test "$linkmode" = lib && - test "$hardcode_into_libs" = yes; then - # Hardcode the library path. - # Skip directories that are in the system default run-time - # search path. - case " $sys_lib_dlsearch_path " in - *" $absdir "*) ;; - *) - case "$compile_rpath " in - *" $absdir "*) ;; - *) compile_rpath+=" $absdir" ;; - esac - ;; - esac - case " $sys_lib_dlsearch_path " in - *" $libdir "*) ;; - *) - case "$finalize_rpath " in - *" $libdir "*) ;; - *) finalize_rpath+=" $libdir" ;; - esac - ;; - esac - fi - - if test -n "$old_archive_from_expsyms_cmds"; then - # figure out the soname - set dummy $library_names - shift - realname="$1" - shift - libname=`eval "\\$ECHO \"$libname_spec\""` - # use dlname if we got it. it's perfectly good, no? - if test -n "$dlname"; then - soname="$dlname" - elif test -n "$soname_spec"; then - # bleh windows - case $host in - *cygwin* | mingw* | *cegcc*) - func_arith $current - $age - major=$func_arith_result - versuffix="-$major" - ;; - esac - eval soname=\"$soname_spec\" - else - soname="$realname" - fi - - # Make a new name for the extract_expsyms_cmds to use - soroot="$soname" - func_basename "$soroot" - soname="$func_basename_result" - func_stripname 'lib' '.dll' "$soname" - newlib=libimp-$func_stripname_result.a - - # If the library has no export list, then create one now - if test -f "$output_objdir/$soname-def"; then : - else - func_verbose "extracting exported symbol list from \`$soname'" - func_execute_cmds "$extract_expsyms_cmds" 'exit $?' - fi - - # Create $newlib - if test -f "$output_objdir/$newlib"; then :; else - func_verbose "generating import library for \`$soname'" - func_execute_cmds "$old_archive_from_expsyms_cmds" 'exit $?' - fi - # make sure the library variables are pointing to the new library - dir=$output_objdir - linklib=$newlib - fi # test -n "$old_archive_from_expsyms_cmds" - - if test "$linkmode" = prog || test "$opt_mode" != relink; then - add_shlibpath= - add_dir= - add= - lib_linked=yes - case $hardcode_action in - immediate | unsupported) - if test "$hardcode_direct" = no; then - add="$dir/$linklib" - case $host in - *-*-sco3.2v5.0.[024]*) add_dir="-L$dir" ;; - *-*-sysv4*uw2*) add_dir="-L$dir" ;; - *-*-sysv5OpenUNIX* | *-*-sysv5UnixWare7.[01].[10]* | \ - *-*-unixware7*) add_dir="-L$dir" ;; - *-*-darwin* ) - # if the lib is a (non-dlopened) module then we can not - # link against it, someone is ignoring the earlier warnings - if /usr/bin/file -L $add 2> /dev/null | - $GREP ": [^:]* bundle" >/dev/null ; then - if test "X$dlopenmodule" != "X$lib"; then - $ECHO "*** Warning: lib $linklib is a module, not a shared library" - if test -z "$old_library" ; then - echo - echo "*** And there doesn't seem to be a static archive available" - echo "*** The link will probably fail, sorry" - else - add="$dir/$old_library" - fi - elif test -n "$old_library"; then - add="$dir/$old_library" - fi - fi - esac - elif test "$hardcode_minus_L" = no; then - case $host in - *-*-sunos*) add_shlibpath="$dir" ;; - esac - add_dir="-L$dir" - add="-l$name" - elif test "$hardcode_shlibpath_var" = no; then - add_shlibpath="$dir" - add="-l$name" - else - lib_linked=no - fi - ;; - relink) - if test "$hardcode_direct" = yes && - test "$hardcode_direct_absolute" = no; then - add="$dir/$linklib" - elif test "$hardcode_minus_L" = yes; then - add_dir="-L$absdir" - # Try looking first in the location we're being installed to. - if test -n "$inst_prefix_dir"; then - case $libdir in - [\\/]*) - add_dir+=" -L$inst_prefix_dir$libdir" - ;; - esac - fi - add="-l$name" - elif test "$hardcode_shlibpath_var" = yes; then - add_shlibpath="$dir" - add="-l$name" - else - lib_linked=no - fi - ;; - *) lib_linked=no ;; - esac - - if test "$lib_linked" != yes; then - func_fatal_configuration "unsupported hardcode properties" - fi - - if test -n "$add_shlibpath"; then - case :$compile_shlibpath: in - *":$add_shlibpath:"*) ;; - *) compile_shlibpath+="$add_shlibpath:" ;; - esac - fi - if test "$linkmode" = prog; then - test -n "$add_dir" && compile_deplibs="$add_dir $compile_deplibs" - test -n "$add" && compile_deplibs="$add $compile_deplibs" - else - test -n "$add_dir" && deplibs="$add_dir $deplibs" - test -n "$add" && deplibs="$add $deplibs" - if test "$hardcode_direct" != yes && - test "$hardcode_minus_L" != yes && - test "$hardcode_shlibpath_var" = yes; then - case :$finalize_shlibpath: in - *":$libdir:"*) ;; - *) finalize_shlibpath+="$libdir:" ;; - esac - fi - fi - fi - - if test "$linkmode" = prog || test "$opt_mode" = relink; then - add_shlibpath= - add_dir= - add= - # Finalize command for both is simple: just hardcode it. - if test "$hardcode_direct" = yes && - test "$hardcode_direct_absolute" = no; then - add="$libdir/$linklib" - elif test "$hardcode_minus_L" = yes; then - add_dir="-L$libdir" - add="-l$name" - elif test "$hardcode_shlibpath_var" = yes; then - case :$finalize_shlibpath: in - *":$libdir:"*) ;; - *) finalize_shlibpath+="$libdir:" ;; - esac - add="-l$name" - elif test "$hardcode_automatic" = yes; then - if test -n "$inst_prefix_dir" && - test -f "$inst_prefix_dir$libdir/$linklib" ; then - add="$inst_prefix_dir$libdir/$linklib" - else - add="$libdir/$linklib" - fi - else - # We cannot seem to hardcode it, guess we'll fake it. - add_dir="-L$libdir" - # Try looking first in the location we're being installed to. - if test -n "$inst_prefix_dir"; then - case $libdir in - [\\/]*) - add_dir+=" -L$inst_prefix_dir$libdir" - ;; - esac - fi - add="-l$name" - fi - - if test "$linkmode" = prog; then - test -n "$add_dir" && finalize_deplibs="$add_dir $finalize_deplibs" - test -n "$add" && finalize_deplibs="$add $finalize_deplibs" - else - test -n "$add_dir" && deplibs="$add_dir $deplibs" - test -n "$add" && deplibs="$add $deplibs" - fi - fi - elif test "$linkmode" = prog; then - # Here we assume that one of hardcode_direct or hardcode_minus_L - # is not unsupported. This is valid on all known static and - # shared platforms. - if test "$hardcode_direct" != unsupported; then - test -n "$old_library" && linklib="$old_library" - compile_deplibs="$dir/$linklib $compile_deplibs" - finalize_deplibs="$dir/$linklib $finalize_deplibs" - else - compile_deplibs="-l$name -L$dir $compile_deplibs" - finalize_deplibs="-l$name -L$dir $finalize_deplibs" - fi - elif test "$build_libtool_libs" = yes; then - # Not a shared library - if test "$deplibs_check_method" != pass_all; then - # We're trying link a shared library against a static one - # but the system doesn't support it. - - # Just print a warning and add the library to dependency_libs so - # that the program can be linked against the static library. - echo - $ECHO "*** Warning: This system can not link to static lib archive $lib." - echo "*** I have the capability to make that library automatically link in when" - echo "*** you link to this library. But I can only do this if you have a" - echo "*** shared version of the library, which you do not appear to have." - if test "$module" = yes; then - echo "*** But as you try to build a module library, libtool will still create " - echo "*** a static module, that should work as long as the dlopening application" - echo "*** is linked with the -dlopen flag to resolve symbols at runtime." - if test -z "$global_symbol_pipe"; then - echo - echo "*** However, this would only work if libtool was able to extract symbol" - echo "*** lists from a program, using \`nm' or equivalent, but libtool could" - echo "*** not find such a program. So, this module is probably useless." - echo "*** \`nm' from GNU binutils and a full rebuild may help." - fi - if test "$build_old_libs" = no; then - build_libtool_libs=module - build_old_libs=yes - else - build_libtool_libs=no - fi - fi - else - deplibs="$dir/$old_library $deplibs" - link_static=yes - fi - fi # link shared/static library? - - if test "$linkmode" = lib; then - if test -n "$dependency_libs" && - { test "$hardcode_into_libs" != yes || - test "$build_old_libs" = yes || - test "$link_static" = yes; }; then - # Extract -R from dependency_libs - temp_deplibs= - for libdir in $dependency_libs; do - case $libdir in - -R*) func_stripname '-R' '' "$libdir" - temp_xrpath=$func_stripname_result - case " $xrpath " in - *" $temp_xrpath "*) ;; - *) xrpath+=" $temp_xrpath";; - esac;; - *) temp_deplibs+=" $libdir";; - esac - done - dependency_libs="$temp_deplibs" - fi - - newlib_search_path+=" $absdir" - # Link against this library - test "$link_static" = no && newdependency_libs="$abs_ladir/$laname $newdependency_libs" - # ... and its dependency_libs - tmp_libs= - for deplib in $dependency_libs; do - newdependency_libs="$deplib $newdependency_libs" - case $deplib in - -L*) func_stripname '-L' '' "$deplib" - func_resolve_sysroot "$func_stripname_result";; - *) func_resolve_sysroot "$deplib" ;; - esac - if $opt_preserve_dup_deps ; then - case "$tmp_libs " in - *" $func_resolve_sysroot_result "*) - specialdeplibs+=" $func_resolve_sysroot_result" ;; - esac - fi - tmp_libs+=" $func_resolve_sysroot_result" - done - - if test "$link_all_deplibs" != no; then - # Add the search paths of all dependency libraries - for deplib in $dependency_libs; do - path= - case $deplib in - -L*) path="$deplib" ;; - *.la) - func_resolve_sysroot "$deplib" - deplib=$func_resolve_sysroot_result - func_dirname "$deplib" "" "." - dir=$func_dirname_result - # We need an absolute path. - case $dir in - [\\/]* | [A-Za-z]:[\\/]*) absdir="$dir" ;; - *) - absdir=`cd "$dir" && pwd` - if test -z "$absdir"; then - func_warning "cannot determine absolute directory name of \`$dir'" - absdir="$dir" - fi - ;; - esac - if $GREP "^installed=no" $deplib > /dev/null; then - case $host in - *-*-darwin*) - depdepl= - eval deplibrary_names=`${SED} -n -e 's/^library_names=\(.*\)$/\1/p' $deplib` - if test -n "$deplibrary_names" ; then - for tmp in $deplibrary_names ; do - depdepl=$tmp - done - if test -f "$absdir/$objdir/$depdepl" ; then - depdepl="$absdir/$objdir/$depdepl" - darwin_install_name=`${OTOOL} -L $depdepl | awk '{if (NR == 2) {print $1;exit}}'` - if test -z "$darwin_install_name"; then - darwin_install_name=`${OTOOL64} -L $depdepl | awk '{if (NR == 2) {print $1;exit}}'` - fi - compiler_flags+=" ${wl}-dylib_file ${wl}${darwin_install_name}:${depdepl}" - linker_flags+=" -dylib_file ${darwin_install_name}:${depdepl}" - path= - fi - fi - ;; - *) - path="-L$absdir/$objdir" - ;; - esac - else - eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib` - test -z "$libdir" && \ - func_fatal_error "\`$deplib' is not a valid libtool archive" - test "$absdir" != "$libdir" && \ - func_warning "\`$deplib' seems to be moved" - - path="-L$absdir" - fi - ;; - esac - case " $deplibs " in - *" $path "*) ;; - *) deplibs="$path $deplibs" ;; - esac - done - fi # link_all_deplibs != no - fi # linkmode = lib - done # for deplib in $libs - if test "$pass" = link; then - if test "$linkmode" = "prog"; then - compile_deplibs="$new_inherited_linker_flags $compile_deplibs" - finalize_deplibs="$new_inherited_linker_flags $finalize_deplibs" - else - compiler_flags="$compiler_flags "`$ECHO " $new_inherited_linker_flags" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` - fi - fi - dependency_libs="$newdependency_libs" - if test "$pass" = dlpreopen; then - # Link the dlpreopened libraries before other libraries - for deplib in $save_deplibs; do - deplibs="$deplib $deplibs" - done - fi - if test "$pass" != dlopen; then - if test "$pass" != conv; then - # Make sure lib_search_path contains only unique directories. - lib_search_path= - for dir in $newlib_search_path; do - case "$lib_search_path " in - *" $dir "*) ;; - *) lib_search_path+=" $dir" ;; - esac - done - newlib_search_path= - fi - - if test "$linkmode,$pass" != "prog,link"; then - vars="deplibs" - else - vars="compile_deplibs finalize_deplibs" - fi - for var in $vars dependency_libs; do - # Add libraries to $var in reverse order - eval tmp_libs=\"\$$var\" - new_libs= - for deplib in $tmp_libs; do - # FIXME: Pedantically, this is the right thing to do, so - # that some nasty dependency loop isn't accidentally - # broken: - #new_libs="$deplib $new_libs" - # Pragmatically, this seems to cause very few problems in - # practice: - case $deplib in - -L*) new_libs="$deplib $new_libs" ;; - -R*) ;; - *) - # And here is the reason: when a library appears more - # than once as an explicit dependence of a library, or - # is implicitly linked in more than once by the - # compiler, it is considered special, and multiple - # occurrences thereof are not removed. Compare this - # with having the same library being listed as a - # dependency of multiple other libraries: in this case, - # we know (pedantically, we assume) the library does not - # need to be listed more than once, so we keep only the - # last copy. This is not always right, but it is rare - # enough that we require users that really mean to play - # such unportable linking tricks to link the library - # using -Wl,-lname, so that libtool does not consider it - # for duplicate removal. - case " $specialdeplibs " in - *" $deplib "*) new_libs="$deplib $new_libs" ;; - *) - case " $new_libs " in - *" $deplib "*) ;; - *) new_libs="$deplib $new_libs" ;; - esac - ;; - esac - ;; - esac - done - tmp_libs= - for deplib in $new_libs; do - case $deplib in - -L*) - case " $tmp_libs " in - *" $deplib "*) ;; - *) tmp_libs+=" $deplib" ;; - esac - ;; - *) tmp_libs+=" $deplib" ;; - esac - done - eval $var=\"$tmp_libs\" - done # for var - fi - # Last step: remove runtime libs from dependency_libs - # (they stay in deplibs) - tmp_libs= - for i in $dependency_libs ; do - case " $predeps $postdeps $compiler_lib_search_path " in - *" $i "*) - i="" - ;; - esac - if test -n "$i" ; then - tmp_libs+=" $i" - fi - done - dependency_libs=$tmp_libs - done # for pass - if test "$linkmode" = prog; then - dlfiles="$newdlfiles" - fi - if test "$linkmode" = prog || test "$linkmode" = lib; then - dlprefiles="$newdlprefiles" - fi - - case $linkmode in - oldlib) - if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then - func_warning "\`-dlopen' is ignored for archives" - fi - - case " $deplibs" in - *\ -l* | *\ -L*) - func_warning "\`-l' and \`-L' are ignored for archives" ;; - esac - - test -n "$rpath" && \ - func_warning "\`-rpath' is ignored for archives" - - test -n "$xrpath" && \ - func_warning "\`-R' is ignored for archives" - - test -n "$vinfo" && \ - func_warning "\`-version-info/-version-number' is ignored for archives" - - test -n "$release" && \ - func_warning "\`-release' is ignored for archives" - - test -n "$export_symbols$export_symbols_regex" && \ - func_warning "\`-export-symbols' is ignored for archives" - - # Now set the variables for building old libraries. - build_libtool_libs=no - oldlibs="$output" - objs+="$old_deplibs" - ;; - - lib) - # Make sure we only generate libraries of the form `libNAME.la'. - case $outputname in - lib*) - func_stripname 'lib' '.la' "$outputname" - name=$func_stripname_result - eval shared_ext=\"$shrext_cmds\" - eval libname=\"$libname_spec\" - ;; - *) - test "$module" = no && \ - func_fatal_help "libtool library \`$output' must begin with \`lib'" - - if test "$need_lib_prefix" != no; then - # Add the "lib" prefix for modules if required - func_stripname '' '.la' "$outputname" - name=$func_stripname_result - eval shared_ext=\"$shrext_cmds\" - eval libname=\"$libname_spec\" - else - func_stripname '' '.la' "$outputname" - libname=$func_stripname_result - fi - ;; - esac - - if test -n "$objs"; then - if test "$deplibs_check_method" != pass_all; then - func_fatal_error "cannot build libtool library \`$output' from non-libtool objects on this host:$objs" - else - echo - $ECHO "*** Warning: Linking the shared library $output against the non-libtool" - $ECHO "*** objects $objs is not portable!" - libobjs+=" $objs" - fi - fi - - test "$dlself" != no && \ - func_warning "\`-dlopen self' is ignored for libtool libraries" - - set dummy $rpath - shift - test "$#" -gt 1 && \ - func_warning "ignoring multiple \`-rpath's for a libtool library" - - install_libdir="$1" - - oldlibs= - if test -z "$rpath"; then - if test "$build_libtool_libs" = yes; then - # Building a libtool convenience library. - # Some compilers have problems with a `.al' extension so - # convenience libraries should have the same extension an - # archive normally would. - oldlibs="$output_objdir/$libname.$libext $oldlibs" - build_libtool_libs=convenience - build_old_libs=yes - fi - - test -n "$vinfo" && \ - func_warning "\`-version-info/-version-number' is ignored for convenience libraries" - - test -n "$release" && \ - func_warning "\`-release' is ignored for convenience libraries" - else - - # Parse the version information argument. - save_ifs="$IFS"; IFS=':' - set dummy $vinfo 0 0 0 - shift - IFS="$save_ifs" - - test -n "$7" && \ - func_fatal_help "too many parameters to \`-version-info'" - - # convert absolute version numbers to libtool ages - # this retains compatibility with .la files and attempts - # to make the code below a bit more comprehensible - - case $vinfo_number in - yes) - number_major="$1" - number_minor="$2" - number_revision="$3" - # - # There are really only two kinds -- those that - # use the current revision as the major version - # and those that subtract age and use age as - # a minor version. But, then there is irix - # which has an extra 1 added just for fun - # - case $version_type in - # correct linux to gnu/linux during the next big refactor - darwin|linux|osf|windows|none) - func_arith $number_major + $number_minor - current=$func_arith_result - age="$number_minor" - revision="$number_revision" - ;; - freebsd-aout|freebsd-elf|qnx|sunos) - current="$number_major" - revision="$number_minor" - age="0" - ;; - irix|nonstopux) - func_arith $number_major + $number_minor - current=$func_arith_result - age="$number_minor" - revision="$number_minor" - lt_irix_increment=no - ;; - *) - func_fatal_configuration "$modename: unknown library version type \`$version_type'" - ;; - esac - ;; - no) - current="$1" - revision="$2" - age="$3" - ;; - esac - - # Check that each of the things are valid numbers. - case $current in - 0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;; - *) - func_error "CURRENT \`$current' must be a nonnegative integer" - func_fatal_error "\`$vinfo' is not valid version information" - ;; - esac - - case $revision in - 0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;; - *) - func_error "REVISION \`$revision' must be a nonnegative integer" - func_fatal_error "\`$vinfo' is not valid version information" - ;; - esac - - case $age in - 0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;; - *) - func_error "AGE \`$age' must be a nonnegative integer" - func_fatal_error "\`$vinfo' is not valid version information" - ;; - esac - - if test "$age" -gt "$current"; then - func_error "AGE \`$age' is greater than the current interface number \`$current'" - func_fatal_error "\`$vinfo' is not valid version information" - fi - - # Calculate the version variables. - major= - versuffix= - verstring= - case $version_type in - none) ;; - - darwin) - # Like Linux, but with the current version available in - # verstring for coding it into the library header - func_arith $current - $age - major=.$func_arith_result - versuffix="$major.$age.$revision" - # Darwin ld doesn't like 0 for these options... - func_arith $current + 1 - minor_current=$func_arith_result - xlcverstring="${wl}-compatibility_version ${wl}$minor_current ${wl}-current_version ${wl}$minor_current.$revision" - verstring="-compatibility_version $minor_current -current_version $minor_current.$revision" - ;; - - freebsd-aout) - major=".$current" - versuffix=".$current.$revision"; - ;; - - freebsd-elf) - major=".$current" - versuffix=".$current" - ;; - - irix | nonstopux) - if test "X$lt_irix_increment" = "Xno"; then - func_arith $current - $age - else - func_arith $current - $age + 1 - fi - major=$func_arith_result - - case $version_type in - nonstopux) verstring_prefix=nonstopux ;; - *) verstring_prefix=sgi ;; - esac - verstring="$verstring_prefix$major.$revision" - - # Add in all the interfaces that we are compatible with. - loop=$revision - while test "$loop" -ne 0; do - func_arith $revision - $loop - iface=$func_arith_result - func_arith $loop - 1 - loop=$func_arith_result - verstring="$verstring_prefix$major.$iface:$verstring" - done - - # Before this point, $major must not contain `.'. - major=.$major - versuffix="$major.$revision" - ;; - - linux) # correct to gnu/linux during the next big refactor - func_arith $current - $age - major=.$func_arith_result - versuffix="$major.$age.$revision" - ;; - - osf) - func_arith $current - $age - major=.$func_arith_result - versuffix=".$current.$age.$revision" - verstring="$current.$age.$revision" - - # Add in all the interfaces that we are compatible with. - loop=$age - while test "$loop" -ne 0; do - func_arith $current - $loop - iface=$func_arith_result - func_arith $loop - 1 - loop=$func_arith_result - verstring="$verstring:${iface}.0" - done - - # Make executables depend on our current version. - verstring+=":${current}.0" - ;; - - qnx) - major=".$current" - versuffix=".$current" - ;; - - sunos) - major=".$current" - versuffix=".$current.$revision" - ;; - - windows) - # Use '-' rather than '.', since we only want one - # extension on DOS 8.3 filesystems. - func_arith $current - $age - major=$func_arith_result - versuffix="-$major" - ;; - - *) - func_fatal_configuration "unknown library version type \`$version_type'" - ;; - esac - - # Clear the version info if we defaulted, and they specified a release. - if test -z "$vinfo" && test -n "$release"; then - major= - case $version_type in - darwin) - # we can't check for "0.0" in archive_cmds due to quoting - # problems, so we reset it completely - verstring= - ;; - *) - verstring="0.0" - ;; - esac - if test "$need_version" = no; then - versuffix= - else - versuffix=".0.0" - fi - fi - - # Remove version info from name if versioning should be avoided - if test "$avoid_version" = yes && test "$need_version" = no; then - major= - versuffix= - verstring="" - fi - - # Check to see if the archive will have undefined symbols. - if test "$allow_undefined" = yes; then - if test "$allow_undefined_flag" = unsupported; then - func_warning "undefined symbols not allowed in $host shared libraries" - build_libtool_libs=no - build_old_libs=yes - fi - else - # Don't allow undefined symbols. - allow_undefined_flag="$no_undefined_flag" - fi - - fi - - func_generate_dlsyms "$libname" "$libname" "yes" - libobjs+=" $symfileobj" - test "X$libobjs" = "X " && libobjs= - - if test "$opt_mode" != relink; then - # Remove our outputs, but don't remove object files since they - # may have been created when compiling PIC objects. - removelist= - tempremovelist=`$ECHO "$output_objdir/*"` - for p in $tempremovelist; do - case $p in - *.$objext | *.gcno) - ;; - $output_objdir/$outputname | $output_objdir/$libname.* | $output_objdir/${libname}${release}.*) - if test "X$precious_files_regex" != "X"; then - if $ECHO "$p" | $EGREP -e "$precious_files_regex" >/dev/null 2>&1 - then - continue - fi - fi - removelist+=" $p" - ;; - *) ;; - esac - done - test -n "$removelist" && \ - func_show_eval "${RM}r \$removelist" - fi - - # Now set the variables for building old libraries. - if test "$build_old_libs" = yes && test "$build_libtool_libs" != convenience ; then - oldlibs+=" $output_objdir/$libname.$libext" - - # Transform .lo files to .o files. - oldobjs="$objs "`$ECHO "$libobjs" | $SP2NL | $SED "/\.${libext}$/d; $lo2o" | $NL2SP` - fi - - # Eliminate all temporary directories. - #for path in $notinst_path; do - # lib_search_path=`$ECHO "$lib_search_path " | $SED "s% $path % %g"` - # deplibs=`$ECHO "$deplibs " | $SED "s% -L$path % %g"` - # dependency_libs=`$ECHO "$dependency_libs " | $SED "s% -L$path % %g"` - #done - - if test -n "$xrpath"; then - # If the user specified any rpath flags, then add them. - temp_xrpath= - for libdir in $xrpath; do - func_replace_sysroot "$libdir" - temp_xrpath+=" -R$func_replace_sysroot_result" - case "$finalize_rpath " in - *" $libdir "*) ;; - *) finalize_rpath+=" $libdir" ;; - esac - done - if test "$hardcode_into_libs" != yes || test "$build_old_libs" = yes; then - dependency_libs="$temp_xrpath $dependency_libs" - fi - fi - - # Make sure dlfiles contains only unique files that won't be dlpreopened - old_dlfiles="$dlfiles" - dlfiles= - for lib in $old_dlfiles; do - case " $dlprefiles $dlfiles " in - *" $lib "*) ;; - *) dlfiles+=" $lib" ;; - esac - done - - # Make sure dlprefiles contains only unique files - old_dlprefiles="$dlprefiles" - dlprefiles= - for lib in $old_dlprefiles; do - case "$dlprefiles " in - *" $lib "*) ;; - *) dlprefiles+=" $lib" ;; - esac - done - - if test "$build_libtool_libs" = yes; then - if test -n "$rpath"; then - case $host in - *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-beos* | *-cegcc* | *-*-haiku*) - # these systems don't actually have a c library (as such)! - ;; - *-*-rhapsody* | *-*-darwin1.[012]) - # Rhapsody C library is in the System framework - deplibs+=" System.ltframework" - ;; - *-*-netbsd*) - # Don't link with libc until the a.out ld.so is fixed. - ;; - *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*) - # Do not include libc due to us having libc/libc_r. - ;; - *-*-sco3.2v5* | *-*-sco5v6*) - # Causes problems with __ctype - ;; - *-*-sysv4.2uw2* | *-*-sysv5* | *-*-unixware* | *-*-OpenUNIX*) - # Compiler inserts libc in the correct place for threads to work - ;; - *) - # Add libc to deplibs on all other systems if necessary. - if test "$build_libtool_need_lc" = "yes"; then - deplibs+=" -lc" - fi - ;; - esac - fi - - # Transform deplibs into only deplibs that can be linked in shared. - name_save=$name - libname_save=$libname - release_save=$release - versuffix_save=$versuffix - major_save=$major - # I'm not sure if I'm treating the release correctly. I think - # release should show up in the -l (ie -lgmp5) so we don't want to - # add it in twice. Is that correct? - release="" - versuffix="" - major="" - newdeplibs= - droppeddeps=no - case $deplibs_check_method in - pass_all) - # Don't check for shared/static. Everything works. - # This might be a little naive. We might want to check - # whether the library exists or not. But this is on - # osf3 & osf4 and I'm not really sure... Just - # implementing what was already the behavior. - newdeplibs=$deplibs - ;; - test_compile) - # This code stresses the "libraries are programs" paradigm to its - # limits. Maybe even breaks it. We compile a program, linking it - # against the deplibs as a proxy for the library. Then we can check - # whether they linked in statically or dynamically with ldd. - $opt_dry_run || $RM conftest.c - cat > conftest.c </dev/null` - $nocaseglob - else - potential_libs=`ls $i/$libnameglob[.-]* 2>/dev/null` - fi - for potent_lib in $potential_libs; do - # Follow soft links. - if ls -lLd "$potent_lib" 2>/dev/null | - $GREP " -> " >/dev/null; then - continue - fi - # The statement above tries to avoid entering an - # endless loop below, in case of cyclic links. - # We might still enter an endless loop, since a link - # loop can be closed while we follow links, - # but so what? - potlib="$potent_lib" - while test -h "$potlib" 2>/dev/null; do - potliblink=`ls -ld $potlib | ${SED} 's/.* -> //'` - case $potliblink in - [\\/]* | [A-Za-z]:[\\/]*) potlib="$potliblink";; - *) potlib=`$ECHO "$potlib" | $SED 's,[^/]*$,,'`"$potliblink";; - esac - done - if eval $file_magic_cmd \"\$potlib\" 2>/dev/null | - $SED -e 10q | - $EGREP "$file_magic_regex" > /dev/null; then - newdeplibs+=" $a_deplib" - a_deplib="" - break 2 - fi - done - done - fi - if test -n "$a_deplib" ; then - droppeddeps=yes - echo - $ECHO "*** Warning: linker path does not have real file for library $a_deplib." - echo "*** I have the capability to make that library automatically link in when" - echo "*** you link to this library. But I can only do this if you have a" - echo "*** shared version of the library, which you do not appear to have" - echo "*** because I did check the linker path looking for a file starting" - if test -z "$potlib" ; then - $ECHO "*** with $libname but no candidates were found. (...for file magic test)" - else - $ECHO "*** with $libname and none of the candidates passed a file format test" - $ECHO "*** using a file magic. Last file checked: $potlib" - fi - fi - ;; - *) - # Add a -L argument. - newdeplibs+=" $a_deplib" - ;; - esac - done # Gone through all deplibs. - ;; - match_pattern*) - set dummy $deplibs_check_method; shift - match_pattern_regex=`expr "$deplibs_check_method" : "$1 \(.*\)"` - for a_deplib in $deplibs; do - case $a_deplib in - -l*) - func_stripname -l '' "$a_deplib" - name=$func_stripname_result - if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then - case " $predeps $postdeps " in - *" $a_deplib "*) - newdeplibs+=" $a_deplib" - a_deplib="" - ;; - esac - fi - if test -n "$a_deplib" ; then - libname=`eval "\\$ECHO \"$libname_spec\""` - for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do - potential_libs=`ls $i/$libname[.-]* 2>/dev/null` - for potent_lib in $potential_libs; do - potlib="$potent_lib" # see symlink-check above in file_magic test - if eval "\$ECHO \"$potent_lib\"" 2>/dev/null | $SED 10q | \ - $EGREP "$match_pattern_regex" > /dev/null; then - newdeplibs+=" $a_deplib" - a_deplib="" - break 2 - fi - done - done - fi - if test -n "$a_deplib" ; then - droppeddeps=yes - echo - $ECHO "*** Warning: linker path does not have real file for library $a_deplib." - echo "*** I have the capability to make that library automatically link in when" - echo "*** you link to this library. But I can only do this if you have a" - echo "*** shared version of the library, which you do not appear to have" - echo "*** because I did check the linker path looking for a file starting" - if test -z "$potlib" ; then - $ECHO "*** with $libname but no candidates were found. (...for regex pattern test)" - else - $ECHO "*** with $libname and none of the candidates passed a file format test" - $ECHO "*** using a regex pattern. Last file checked: $potlib" - fi - fi - ;; - *) - # Add a -L argument. - newdeplibs+=" $a_deplib" - ;; - esac - done # Gone through all deplibs. - ;; - none | unknown | *) - newdeplibs="" - tmp_deplibs=`$ECHO " $deplibs" | $SED 's/ -lc$//; s/ -[LR][^ ]*//g'` - if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then - for i in $predeps $postdeps ; do - # can't use Xsed below, because $i might contain '/' - tmp_deplibs=`$ECHO " $tmp_deplibs" | $SED "s,$i,,"` - done - fi - case $tmp_deplibs in - *[!\ \ ]*) - echo - if test "X$deplibs_check_method" = "Xnone"; then - echo "*** Warning: inter-library dependencies are not supported in this platform." - else - echo "*** Warning: inter-library dependencies are not known to be supported." - fi - echo "*** All declared inter-library dependencies are being dropped." - droppeddeps=yes - ;; - esac - ;; - esac - versuffix=$versuffix_save - major=$major_save - release=$release_save - libname=$libname_save - name=$name_save - - case $host in - *-*-rhapsody* | *-*-darwin1.[012]) - # On Rhapsody replace the C library with the System framework - newdeplibs=`$ECHO " $newdeplibs" | $SED 's/ -lc / System.ltframework /'` - ;; - esac - - if test "$droppeddeps" = yes; then - if test "$module" = yes; then - echo - echo "*** Warning: libtool could not satisfy all declared inter-library" - $ECHO "*** dependencies of module $libname. Therefore, libtool will create" - echo "*** a static module, that should work as long as the dlopening" - echo "*** application is linked with the -dlopen flag." - if test -z "$global_symbol_pipe"; then - echo - echo "*** However, this would only work if libtool was able to extract symbol" - echo "*** lists from a program, using \`nm' or equivalent, but libtool could" - echo "*** not find such a program. So, this module is probably useless." - echo "*** \`nm' from GNU binutils and a full rebuild may help." - fi - if test "$build_old_libs" = no; then - oldlibs="$output_objdir/$libname.$libext" - build_libtool_libs=module - build_old_libs=yes - else - build_libtool_libs=no - fi - else - echo "*** The inter-library dependencies that have been dropped here will be" - echo "*** automatically added whenever a program is linked with this library" - echo "*** or is declared to -dlopen it." - - if test "$allow_undefined" = no; then - echo - echo "*** Since this library must not contain undefined symbols," - echo "*** because either the platform does not support them or" - echo "*** it was explicitly requested with -no-undefined," - echo "*** libtool will only create a static version of it." - if test "$build_old_libs" = no; then - oldlibs="$output_objdir/$libname.$libext" - build_libtool_libs=module - build_old_libs=yes - else - build_libtool_libs=no - fi - fi - fi - fi - # Done checking deplibs! - deplibs=$newdeplibs - fi - # Time to change all our "foo.ltframework" stuff back to "-framework foo" - case $host in - *-*-darwin*) - newdeplibs=`$ECHO " $newdeplibs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` - new_inherited_linker_flags=`$ECHO " $new_inherited_linker_flags" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` - deplibs=`$ECHO " $deplibs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` - ;; - esac - - # move library search paths that coincide with paths to not yet - # installed libraries to the beginning of the library search list - new_libs= - for path in $notinst_path; do - case " $new_libs " in - *" -L$path/$objdir "*) ;; - *) - case " $deplibs " in - *" -L$path/$objdir "*) - new_libs+=" -L$path/$objdir" ;; - esac - ;; - esac - done - for deplib in $deplibs; do - case $deplib in - -L*) - case " $new_libs " in - *" $deplib "*) ;; - *) new_libs+=" $deplib" ;; - esac - ;; - *) new_libs+=" $deplib" ;; - esac - done - deplibs="$new_libs" - - # All the library-specific variables (install_libdir is set above). - library_names= - old_library= - dlname= - - # Test again, we may have decided not to build it any more - if test "$build_libtool_libs" = yes; then - # Remove ${wl} instances when linking with ld. - # FIXME: should test the right _cmds variable. - case $archive_cmds in - *\$LD\ *) wl= ;; - esac - if test "$hardcode_into_libs" = yes; then - # Hardcode the library paths - hardcode_libdirs= - dep_rpath= - rpath="$finalize_rpath" - test "$opt_mode" != relink && rpath="$compile_rpath$rpath" - for libdir in $rpath; do - if test -n "$hardcode_libdir_flag_spec"; then - if test -n "$hardcode_libdir_separator"; then - func_replace_sysroot "$libdir" - libdir=$func_replace_sysroot_result - if test -z "$hardcode_libdirs"; then - hardcode_libdirs="$libdir" - else - # Just accumulate the unique libdirs. - case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in - *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*) - ;; - *) - hardcode_libdirs+="$hardcode_libdir_separator$libdir" - ;; - esac - fi - else - eval flag=\"$hardcode_libdir_flag_spec\" - dep_rpath+=" $flag" - fi - elif test -n "$runpath_var"; then - case "$perm_rpath " in - *" $libdir "*) ;; - *) perm_rpath+=" $libdir" ;; - esac - fi - done - # Substitute the hardcoded libdirs into the rpath. - if test -n "$hardcode_libdir_separator" && - test -n "$hardcode_libdirs"; then - libdir="$hardcode_libdirs" - eval "dep_rpath=\"$hardcode_libdir_flag_spec\"" - fi - if test -n "$runpath_var" && test -n "$perm_rpath"; then - # We should set the runpath_var. - rpath= - for dir in $perm_rpath; do - rpath+="$dir:" - done - eval "$runpath_var='$rpath\$$runpath_var'; export $runpath_var" - fi - test -n "$dep_rpath" && deplibs="$dep_rpath $deplibs" - fi - - shlibpath="$finalize_shlibpath" - test "$opt_mode" != relink && shlibpath="$compile_shlibpath$shlibpath" - if test -n "$shlibpath"; then - eval "$shlibpath_var='$shlibpath\$$shlibpath_var'; export $shlibpath_var" - fi - - # Get the real and link names of the library. - eval shared_ext=\"$shrext_cmds\" - eval library_names=\"$library_names_spec\" - set dummy $library_names - shift - realname="$1" - shift - - if test -n "$soname_spec"; then - eval soname=\"$soname_spec\" - else - soname="$realname" - fi - if test -z "$dlname"; then - dlname=$soname - fi - - lib="$output_objdir/$realname" - linknames= - for link - do - linknames+=" $link" - done - - # Use standard objects if they are pic - test -z "$pic_flag" && libobjs=`$ECHO "$libobjs" | $SP2NL | $SED "$lo2o" | $NL2SP` - test "X$libobjs" = "X " && libobjs= - - delfiles= - if test -n "$export_symbols" && test -n "$include_expsyms"; then - $opt_dry_run || cp "$export_symbols" "$output_objdir/$libname.uexp" - export_symbols="$output_objdir/$libname.uexp" - delfiles+=" $export_symbols" - fi - - orig_export_symbols= - case $host_os in - cygwin* | mingw* | cegcc*) - if test -n "$export_symbols" && test -z "$export_symbols_regex"; then - # exporting using user supplied symfile - if test "x`$SED 1q $export_symbols`" != xEXPORTS; then - # and it's NOT already a .def file. Must figure out - # which of the given symbols are data symbols and tag - # them as such. So, trigger use of export_symbols_cmds. - # export_symbols gets reassigned inside the "prepare - # the list of exported symbols" if statement, so the - # include_expsyms logic still works. - orig_export_symbols="$export_symbols" - export_symbols= - always_export_symbols=yes - fi - fi - ;; - esac - - # Prepare the list of exported symbols - if test -z "$export_symbols"; then - if test "$always_export_symbols" = yes || test -n "$export_symbols_regex"; then - func_verbose "generating symbol list for \`$libname.la'" - export_symbols="$output_objdir/$libname.exp" - $opt_dry_run || $RM $export_symbols - cmds=$export_symbols_cmds - save_ifs="$IFS"; IFS='~' - for cmd1 in $cmds; do - IFS="$save_ifs" - # Take the normal branch if the nm_file_list_spec branch - # doesn't work or if tool conversion is not needed. - case $nm_file_list_spec~$to_tool_file_cmd in - *~func_convert_file_noop | *~func_convert_file_msys_to_w32 | ~*) - try_normal_branch=yes - eval cmd=\"$cmd1\" - func_len " $cmd" - len=$func_len_result - ;; - *) - try_normal_branch=no - ;; - esac - if test "$try_normal_branch" = yes \ - && { test "$len" -lt "$max_cmd_len" \ - || test "$max_cmd_len" -le -1; } - then - func_show_eval "$cmd" 'exit $?' - skipped_export=false - elif test -n "$nm_file_list_spec"; then - func_basename "$output" - output_la=$func_basename_result - save_libobjs=$libobjs - save_output=$output - output=${output_objdir}/${output_la}.nm - func_to_tool_file "$output" - libobjs=$nm_file_list_spec$func_to_tool_file_result - delfiles+=" $output" - func_verbose "creating $NM input file list: $output" - for obj in $save_libobjs; do - func_to_tool_file "$obj" - $ECHO "$func_to_tool_file_result" - done > "$output" - eval cmd=\"$cmd1\" - func_show_eval "$cmd" 'exit $?' - output=$save_output - libobjs=$save_libobjs - skipped_export=false - else - # The command line is too long to execute in one step. - func_verbose "using reloadable object file for export list..." - skipped_export=: - # Break out early, otherwise skipped_export may be - # set to false by a later but shorter cmd. - break - fi - done - IFS="$save_ifs" - if test -n "$export_symbols_regex" && test "X$skipped_export" != "X:"; then - func_show_eval '$EGREP -e "$export_symbols_regex" "$export_symbols" > "${export_symbols}T"' - func_show_eval '$MV "${export_symbols}T" "$export_symbols"' - fi - fi - fi - - if test -n "$export_symbols" && test -n "$include_expsyms"; then - tmp_export_symbols="$export_symbols" - test -n "$orig_export_symbols" && tmp_export_symbols="$orig_export_symbols" - $opt_dry_run || eval '$ECHO "$include_expsyms" | $SP2NL >> "$tmp_export_symbols"' - fi - - if test "X$skipped_export" != "X:" && test -n "$orig_export_symbols"; then - # The given exports_symbols file has to be filtered, so filter it. - func_verbose "filter symbol list for \`$libname.la' to tag DATA exports" - # FIXME: $output_objdir/$libname.filter potentially contains lots of - # 's' commands which not all seds can handle. GNU sed should be fine - # though. Also, the filter scales superlinearly with the number of - # global variables. join(1) would be nice here, but unfortunately - # isn't a blessed tool. - $opt_dry_run || $SED -e '/[ ,]DATA/!d;s,\(.*\)\([ \,].*\),s|^\1$|\1\2|,' < $export_symbols > $output_objdir/$libname.filter - delfiles+=" $export_symbols $output_objdir/$libname.filter" - export_symbols=$output_objdir/$libname.def - $opt_dry_run || $SED -f $output_objdir/$libname.filter < $orig_export_symbols > $export_symbols - fi - - tmp_deplibs= - for test_deplib in $deplibs; do - case " $convenience " in - *" $test_deplib "*) ;; - *) - tmp_deplibs+=" $test_deplib" - ;; - esac - done - deplibs="$tmp_deplibs" - - if test -n "$convenience"; then - if test -n "$whole_archive_flag_spec" && - test "$compiler_needs_object" = yes && - test -z "$libobjs"; then - # extract the archives, so we have objects to list. - # TODO: could optimize this to just extract one archive. - whole_archive_flag_spec= - fi - if test -n "$whole_archive_flag_spec"; then - save_libobjs=$libobjs - eval libobjs=\"\$libobjs $whole_archive_flag_spec\" - test "X$libobjs" = "X " && libobjs= - else - gentop="$output_objdir/${outputname}x" - generated+=" $gentop" - - func_extract_archives $gentop $convenience - libobjs+=" $func_extract_archives_result" - test "X$libobjs" = "X " && libobjs= - fi - fi - - if test "$thread_safe" = yes && test -n "$thread_safe_flag_spec"; then - eval flag=\"$thread_safe_flag_spec\" - linker_flags+=" $flag" - fi - - # Make a backup of the uninstalled library when relinking - if test "$opt_mode" = relink; then - $opt_dry_run || eval '(cd $output_objdir && $RM ${realname}U && $MV $realname ${realname}U)' || exit $? - fi - - # Do each of the archive commands. - if test "$module" = yes && test -n "$module_cmds" ; then - if test -n "$export_symbols" && test -n "$module_expsym_cmds"; then - eval test_cmds=\"$module_expsym_cmds\" - cmds=$module_expsym_cmds - else - eval test_cmds=\"$module_cmds\" - cmds=$module_cmds - fi - else - if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then - eval test_cmds=\"$archive_expsym_cmds\" - cmds=$archive_expsym_cmds - else - eval test_cmds=\"$archive_cmds\" - cmds=$archive_cmds - fi - fi - - if test "X$skipped_export" != "X:" && - func_len " $test_cmds" && - len=$func_len_result && - test "$len" -lt "$max_cmd_len" || test "$max_cmd_len" -le -1; then - : - else - # The command line is too long to link in one step, link piecewise - # or, if using GNU ld and skipped_export is not :, use a linker - # script. - - # Save the value of $output and $libobjs because we want to - # use them later. If we have whole_archive_flag_spec, we - # want to use save_libobjs as it was before - # whole_archive_flag_spec was expanded, because we can't - # assume the linker understands whole_archive_flag_spec. - # This may have to be revisited, in case too many - # convenience libraries get linked in and end up exceeding - # the spec. - if test -z "$convenience" || test -z "$whole_archive_flag_spec"; then - save_libobjs=$libobjs - fi - save_output=$output - func_basename "$output" - output_la=$func_basename_result - - # Clear the reloadable object creation command queue and - # initialize k to one. - test_cmds= - concat_cmds= - objlist= - last_robj= - k=1 - - if test -n "$save_libobjs" && test "X$skipped_export" != "X:" && test "$with_gnu_ld" = yes; then - output=${output_objdir}/${output_la}.lnkscript - func_verbose "creating GNU ld script: $output" - echo 'INPUT (' > $output - for obj in $save_libobjs - do - func_to_tool_file "$obj" - $ECHO "$func_to_tool_file_result" >> $output - done - echo ')' >> $output - delfiles+=" $output" - func_to_tool_file "$output" - output=$func_to_tool_file_result - elif test -n "$save_libobjs" && test "X$skipped_export" != "X:" && test "X$file_list_spec" != X; then - output=${output_objdir}/${output_la}.lnk - func_verbose "creating linker input file list: $output" - : > $output - set x $save_libobjs - shift - firstobj= - if test "$compiler_needs_object" = yes; then - firstobj="$1 " - shift - fi - for obj - do - func_to_tool_file "$obj" - $ECHO "$func_to_tool_file_result" >> $output - done - delfiles+=" $output" - func_to_tool_file "$output" - output=$firstobj\"$file_list_spec$func_to_tool_file_result\" - else - if test -n "$save_libobjs"; then - func_verbose "creating reloadable object files..." - output=$output_objdir/$output_la-${k}.$objext - eval test_cmds=\"$reload_cmds\" - func_len " $test_cmds" - len0=$func_len_result - len=$len0 - - # Loop over the list of objects to be linked. - for obj in $save_libobjs - do - func_len " $obj" - func_arith $len + $func_len_result - len=$func_arith_result - if test "X$objlist" = X || - test "$len" -lt "$max_cmd_len"; then - objlist+=" $obj" - else - # The command $test_cmds is almost too long, add a - # command to the queue. - if test "$k" -eq 1 ; then - # The first file doesn't have a previous command to add. - reload_objs=$objlist - eval concat_cmds=\"$reload_cmds\" - else - # All subsequent reloadable object files will link in - # the last one created. - reload_objs="$objlist $last_robj" - eval concat_cmds=\"\$concat_cmds~$reload_cmds~\$RM $last_robj\" - fi - last_robj=$output_objdir/$output_la-${k}.$objext - func_arith $k + 1 - k=$func_arith_result - output=$output_objdir/$output_la-${k}.$objext - objlist=" $obj" - func_len " $last_robj" - func_arith $len0 + $func_len_result - len=$func_arith_result - fi - done - # Handle the remaining objects by creating one last - # reloadable object file. All subsequent reloadable object - # files will link in the last one created. - test -z "$concat_cmds" || concat_cmds=$concat_cmds~ - reload_objs="$objlist $last_robj" - eval concat_cmds=\"\${concat_cmds}$reload_cmds\" - if test -n "$last_robj"; then - eval concat_cmds=\"\${concat_cmds}~\$RM $last_robj\" - fi - delfiles+=" $output" - - else - output= - fi - - if ${skipped_export-false}; then - func_verbose "generating symbol list for \`$libname.la'" - export_symbols="$output_objdir/$libname.exp" - $opt_dry_run || $RM $export_symbols - libobjs=$output - # Append the command to create the export file. - test -z "$concat_cmds" || concat_cmds=$concat_cmds~ - eval concat_cmds=\"\$concat_cmds$export_symbols_cmds\" - if test -n "$last_robj"; then - eval concat_cmds=\"\$concat_cmds~\$RM $last_robj\" - fi - fi - - test -n "$save_libobjs" && - func_verbose "creating a temporary reloadable object file: $output" - - # Loop through the commands generated above and execute them. - save_ifs="$IFS"; IFS='~' - for cmd in $concat_cmds; do - IFS="$save_ifs" - $opt_silent || { - func_quote_for_expand "$cmd" - eval "func_echo $func_quote_for_expand_result" - } - $opt_dry_run || eval "$cmd" || { - lt_exit=$? - - # Restore the uninstalled library and exit - if test "$opt_mode" = relink; then - ( cd "$output_objdir" && \ - $RM "${realname}T" && \ - $MV "${realname}U" "$realname" ) - fi - - exit $lt_exit - } - done - IFS="$save_ifs" - - if test -n "$export_symbols_regex" && ${skipped_export-false}; then - func_show_eval '$EGREP -e "$export_symbols_regex" "$export_symbols" > "${export_symbols}T"' - func_show_eval '$MV "${export_symbols}T" "$export_symbols"' - fi - fi - - if ${skipped_export-false}; then - if test -n "$export_symbols" && test -n "$include_expsyms"; then - tmp_export_symbols="$export_symbols" - test -n "$orig_export_symbols" && tmp_export_symbols="$orig_export_symbols" - $opt_dry_run || eval '$ECHO "$include_expsyms" | $SP2NL >> "$tmp_export_symbols"' - fi - - if test -n "$orig_export_symbols"; then - # The given exports_symbols file has to be filtered, so filter it. - func_verbose "filter symbol list for \`$libname.la' to tag DATA exports" - # FIXME: $output_objdir/$libname.filter potentially contains lots of - # 's' commands which not all seds can handle. GNU sed should be fine - # though. Also, the filter scales superlinearly with the number of - # global variables. join(1) would be nice here, but unfortunately - # isn't a blessed tool. - $opt_dry_run || $SED -e '/[ ,]DATA/!d;s,\(.*\)\([ \,].*\),s|^\1$|\1\2|,' < $export_symbols > $output_objdir/$libname.filter - delfiles+=" $export_symbols $output_objdir/$libname.filter" - export_symbols=$output_objdir/$libname.def - $opt_dry_run || $SED -f $output_objdir/$libname.filter < $orig_export_symbols > $export_symbols - fi - fi - - libobjs=$output - # Restore the value of output. - output=$save_output - - if test -n "$convenience" && test -n "$whole_archive_flag_spec"; then - eval libobjs=\"\$libobjs $whole_archive_flag_spec\" - test "X$libobjs" = "X " && libobjs= - fi - # Expand the library linking commands again to reset the - # value of $libobjs for piecewise linking. - - # Do each of the archive commands. - if test "$module" = yes && test -n "$module_cmds" ; then - if test -n "$export_symbols" && test -n "$module_expsym_cmds"; then - cmds=$module_expsym_cmds - else - cmds=$module_cmds - fi - else - if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then - cmds=$archive_expsym_cmds - else - cmds=$archive_cmds - fi - fi - fi - - if test -n "$delfiles"; then - # Append the command to remove temporary files to $cmds. - eval cmds=\"\$cmds~\$RM $delfiles\" - fi - - # Add any objects from preloaded convenience libraries - if test -n "$dlprefiles"; then - gentop="$output_objdir/${outputname}x" - generated+=" $gentop" - - func_extract_archives $gentop $dlprefiles - libobjs+=" $func_extract_archives_result" - test "X$libobjs" = "X " && libobjs= - fi - - save_ifs="$IFS"; IFS='~' - for cmd in $cmds; do - IFS="$save_ifs" - eval cmd=\"$cmd\" - $opt_silent || { - func_quote_for_expand "$cmd" - eval "func_echo $func_quote_for_expand_result" - } - $opt_dry_run || eval "$cmd" || { - lt_exit=$? - - # Restore the uninstalled library and exit - if test "$opt_mode" = relink; then - ( cd "$output_objdir" && \ - $RM "${realname}T" && \ - $MV "${realname}U" "$realname" ) - fi - - exit $lt_exit - } - done - IFS="$save_ifs" - - # Restore the uninstalled library and exit - if test "$opt_mode" = relink; then - $opt_dry_run || eval '(cd $output_objdir && $RM ${realname}T && $MV $realname ${realname}T && $MV ${realname}U $realname)' || exit $? - - if test -n "$convenience"; then - if test -z "$whole_archive_flag_spec"; then - func_show_eval '${RM}r "$gentop"' - fi - fi - - exit $EXIT_SUCCESS - fi - - # Create links to the real library. - for linkname in $linknames; do - if test "$realname" != "$linkname"; then - func_show_eval '(cd "$output_objdir" && $RM "$linkname" && $LN_S "$realname" "$linkname")' 'exit $?' - fi - done - - # If -module or -export-dynamic was specified, set the dlname. - if test "$module" = yes || test "$export_dynamic" = yes; then - # On all known operating systems, these are identical. - dlname="$soname" - fi - fi - ;; - - obj) - if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then - func_warning "\`-dlopen' is ignored for objects" - fi - - case " $deplibs" in - *\ -l* | *\ -L*) - func_warning "\`-l' and \`-L' are ignored for objects" ;; - esac - - test -n "$rpath" && \ - func_warning "\`-rpath' is ignored for objects" - - test -n "$xrpath" && \ - func_warning "\`-R' is ignored for objects" - - test -n "$vinfo" && \ - func_warning "\`-version-info' is ignored for objects" - - test -n "$release" && \ - func_warning "\`-release' is ignored for objects" - - case $output in - *.lo) - test -n "$objs$old_deplibs" && \ - func_fatal_error "cannot build library object \`$output' from non-libtool objects" - - libobj=$output - func_lo2o "$libobj" - obj=$func_lo2o_result - ;; - *) - libobj= - obj="$output" - ;; - esac - - # Delete the old objects. - $opt_dry_run || $RM $obj $libobj - - # Objects from convenience libraries. This assumes - # single-version convenience libraries. Whenever we create - # different ones for PIC/non-PIC, this we'll have to duplicate - # the extraction. - reload_conv_objs= - gentop= - # reload_cmds runs $LD directly, so let us get rid of - # -Wl from whole_archive_flag_spec and hope we can get by with - # turning comma into space.. - wl= - - if test -n "$convenience"; then - if test -n "$whole_archive_flag_spec"; then - eval tmp_whole_archive_flags=\"$whole_archive_flag_spec\" - reload_conv_objs=$reload_objs\ `$ECHO "$tmp_whole_archive_flags" | $SED 's|,| |g'` - else - gentop="$output_objdir/${obj}x" - generated+=" $gentop" - - func_extract_archives $gentop $convenience - reload_conv_objs="$reload_objs $func_extract_archives_result" - fi - fi - - # If we're not building shared, we need to use non_pic_objs - test "$build_libtool_libs" != yes && libobjs="$non_pic_objects" - - # Create the old-style object. - reload_objs="$objs$old_deplibs "`$ECHO "$libobjs" | $SP2NL | $SED "/\.${libext}$/d; /\.lib$/d; $lo2o" | $NL2SP`" $reload_conv_objs" ### testsuite: skip nested quoting test - - output="$obj" - func_execute_cmds "$reload_cmds" 'exit $?' - - # Exit if we aren't doing a library object file. - if test -z "$libobj"; then - if test -n "$gentop"; then - func_show_eval '${RM}r "$gentop"' - fi - - exit $EXIT_SUCCESS - fi - - if test "$build_libtool_libs" != yes; then - if test -n "$gentop"; then - func_show_eval '${RM}r "$gentop"' - fi - - # Create an invalid libtool object if no PIC, so that we don't - # accidentally link it into a program. - # $show "echo timestamp > $libobj" - # $opt_dry_run || eval "echo timestamp > $libobj" || exit $? - exit $EXIT_SUCCESS - fi - - if test -n "$pic_flag" || test "$pic_mode" != default; then - # Only do commands if we really have different PIC objects. - reload_objs="$libobjs $reload_conv_objs" - output="$libobj" - func_execute_cmds "$reload_cmds" 'exit $?' - fi - - if test -n "$gentop"; then - func_show_eval '${RM}r "$gentop"' - fi - - exit $EXIT_SUCCESS - ;; - - prog) - case $host in - *cygwin*) func_stripname '' '.exe' "$output" - output=$func_stripname_result.exe;; - esac - test -n "$vinfo" && \ - func_warning "\`-version-info' is ignored for programs" - - test -n "$release" && \ - func_warning "\`-release' is ignored for programs" - - test "$preload" = yes \ - && test "$dlopen_support" = unknown \ - && test "$dlopen_self" = unknown \ - && test "$dlopen_self_static" = unknown && \ - func_warning "\`LT_INIT([dlopen])' not used. Assuming no dlopen support." - - case $host in - *-*-rhapsody* | *-*-darwin1.[012]) - # On Rhapsody replace the C library is the System framework - compile_deplibs=`$ECHO " $compile_deplibs" | $SED 's/ -lc / System.ltframework /'` - finalize_deplibs=`$ECHO " $finalize_deplibs" | $SED 's/ -lc / System.ltframework /'` - ;; - esac - - case $host in - *-*-darwin*) - # Don't allow lazy linking, it breaks C++ global constructors - # But is supposedly fixed on 10.4 or later (yay!). - if test "$tagname" = CXX ; then - case ${MACOSX_DEPLOYMENT_TARGET-10.0} in - 10.[0123]) - compile_command+=" ${wl}-bind_at_load" - finalize_command+=" ${wl}-bind_at_load" - ;; - esac - fi - # Time to change all our "foo.ltframework" stuff back to "-framework foo" - compile_deplibs=`$ECHO " $compile_deplibs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` - finalize_deplibs=`$ECHO " $finalize_deplibs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` - ;; - esac - - - # move library search paths that coincide with paths to not yet - # installed libraries to the beginning of the library search list - new_libs= - for path in $notinst_path; do - case " $new_libs " in - *" -L$path/$objdir "*) ;; - *) - case " $compile_deplibs " in - *" -L$path/$objdir "*) - new_libs+=" -L$path/$objdir" ;; - esac - ;; - esac - done - for deplib in $compile_deplibs; do - case $deplib in - -L*) - case " $new_libs " in - *" $deplib "*) ;; - *) new_libs+=" $deplib" ;; - esac - ;; - *) new_libs+=" $deplib" ;; - esac - done - compile_deplibs="$new_libs" - - - compile_command+=" $compile_deplibs" - finalize_command+=" $finalize_deplibs" - - if test -n "$rpath$xrpath"; then - # If the user specified any rpath flags, then add them. - for libdir in $rpath $xrpath; do - # This is the magic to use -rpath. - case "$finalize_rpath " in - *" $libdir "*) ;; - *) finalize_rpath+=" $libdir" ;; - esac - done - fi - - # Now hardcode the library paths - rpath= - hardcode_libdirs= - for libdir in $compile_rpath $finalize_rpath; do - if test -n "$hardcode_libdir_flag_spec"; then - if test -n "$hardcode_libdir_separator"; then - if test -z "$hardcode_libdirs"; then - hardcode_libdirs="$libdir" - else - # Just accumulate the unique libdirs. - case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in - *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*) - ;; - *) - hardcode_libdirs+="$hardcode_libdir_separator$libdir" - ;; - esac - fi - else - eval flag=\"$hardcode_libdir_flag_spec\" - rpath+=" $flag" - fi - elif test -n "$runpath_var"; then - case "$perm_rpath " in - *" $libdir "*) ;; - *) perm_rpath+=" $libdir" ;; - esac - fi - case $host in - *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*) - testbindir=`${ECHO} "$libdir" | ${SED} -e 's*/lib$*/bin*'` - case :$dllsearchpath: in - *":$libdir:"*) ;; - ::) dllsearchpath=$libdir;; - *) dllsearchpath+=":$libdir";; - esac - case :$dllsearchpath: in - *":$testbindir:"*) ;; - ::) dllsearchpath=$testbindir;; - *) dllsearchpath+=":$testbindir";; - esac - ;; - esac - done - # Substitute the hardcoded libdirs into the rpath. - if test -n "$hardcode_libdir_separator" && - test -n "$hardcode_libdirs"; then - libdir="$hardcode_libdirs" - eval rpath=\" $hardcode_libdir_flag_spec\" - fi - compile_rpath="$rpath" - - rpath= - hardcode_libdirs= - for libdir in $finalize_rpath; do - if test -n "$hardcode_libdir_flag_spec"; then - if test -n "$hardcode_libdir_separator"; then - if test -z "$hardcode_libdirs"; then - hardcode_libdirs="$libdir" - else - # Just accumulate the unique libdirs. - case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in - *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*) - ;; - *) - hardcode_libdirs+="$hardcode_libdir_separator$libdir" - ;; - esac - fi - else - eval flag=\"$hardcode_libdir_flag_spec\" - rpath+=" $flag" - fi - elif test -n "$runpath_var"; then - case "$finalize_perm_rpath " in - *" $libdir "*) ;; - *) finalize_perm_rpath+=" $libdir" ;; - esac - fi - done - # Substitute the hardcoded libdirs into the rpath. - if test -n "$hardcode_libdir_separator" && - test -n "$hardcode_libdirs"; then - libdir="$hardcode_libdirs" - eval rpath=\" $hardcode_libdir_flag_spec\" - fi - finalize_rpath="$rpath" - - if test -n "$libobjs" && test "$build_old_libs" = yes; then - # Transform all the library objects into standard objects. - compile_command=`$ECHO "$compile_command" | $SP2NL | $SED "$lo2o" | $NL2SP` - finalize_command=`$ECHO "$finalize_command" | $SP2NL | $SED "$lo2o" | $NL2SP` - fi - - func_generate_dlsyms "$outputname" "@PROGRAM@" "no" - - # template prelinking step - if test -n "$prelink_cmds"; then - func_execute_cmds "$prelink_cmds" 'exit $?' - fi - - wrappers_required=yes - case $host in - *cegcc* | *mingw32ce*) - # Disable wrappers for cegcc and mingw32ce hosts, we are cross compiling anyway. - wrappers_required=no - ;; - *cygwin* | *mingw* ) - if test "$build_libtool_libs" != yes; then - wrappers_required=no - fi - ;; - *) - if test "$need_relink" = no || test "$build_libtool_libs" != yes; then - wrappers_required=no - fi - ;; - esac - if test "$wrappers_required" = no; then - # Replace the output file specification. - compile_command=`$ECHO "$compile_command" | $SED 's%@OUTPUT@%'"$output"'%g'` - link_command="$compile_command$compile_rpath" - - # We have no uninstalled library dependencies, so finalize right now. - exit_status=0 - func_show_eval "$link_command" 'exit_status=$?' - - if test -n "$postlink_cmds"; then - func_to_tool_file "$output" - postlink_cmds=`func_echo_all "$postlink_cmds" | $SED -e 's%@OUTPUT@%'"$output"'%g' -e 's%@TOOL_OUTPUT@%'"$func_to_tool_file_result"'%g'` - func_execute_cmds "$postlink_cmds" 'exit $?' - fi - - # Delete the generated files. - if test -f "$output_objdir/${outputname}S.${objext}"; then - func_show_eval '$RM "$output_objdir/${outputname}S.${objext}"' - fi - - exit $exit_status - fi - - if test -n "$compile_shlibpath$finalize_shlibpath"; then - compile_command="$shlibpath_var=\"$compile_shlibpath$finalize_shlibpath\$$shlibpath_var\" $compile_command" - fi - if test -n "$finalize_shlibpath"; then - finalize_command="$shlibpath_var=\"$finalize_shlibpath\$$shlibpath_var\" $finalize_command" - fi - - compile_var= - finalize_var= - if test -n "$runpath_var"; then - if test -n "$perm_rpath"; then - # We should set the runpath_var. - rpath= - for dir in $perm_rpath; do - rpath+="$dir:" - done - compile_var="$runpath_var=\"$rpath\$$runpath_var\" " - fi - if test -n "$finalize_perm_rpath"; then - # We should set the runpath_var. - rpath= - for dir in $finalize_perm_rpath; do - rpath+="$dir:" - done - finalize_var="$runpath_var=\"$rpath\$$runpath_var\" " - fi - fi - - if test "$no_install" = yes; then - # We don't need to create a wrapper script. - link_command="$compile_var$compile_command$compile_rpath" - # Replace the output file specification. - link_command=`$ECHO "$link_command" | $SED 's%@OUTPUT@%'"$output"'%g'` - # Delete the old output file. - $opt_dry_run || $RM $output - # Link the executable and exit - func_show_eval "$link_command" 'exit $?' - - if test -n "$postlink_cmds"; then - func_to_tool_file "$output" - postlink_cmds=`func_echo_all "$postlink_cmds" | $SED -e 's%@OUTPUT@%'"$output"'%g' -e 's%@TOOL_OUTPUT@%'"$func_to_tool_file_result"'%g'` - func_execute_cmds "$postlink_cmds" 'exit $?' - fi - - exit $EXIT_SUCCESS - fi - - if test "$hardcode_action" = relink; then - # Fast installation is not supported - link_command="$compile_var$compile_command$compile_rpath" - relink_command="$finalize_var$finalize_command$finalize_rpath" - - func_warning "this platform does not like uninstalled shared libraries" - func_warning "\`$output' will be relinked during installation" - else - if test "$fast_install" != no; then - link_command="$finalize_var$compile_command$finalize_rpath" - if test "$fast_install" = yes; then - relink_command=`$ECHO "$compile_var$compile_command$compile_rpath" | $SED 's%@OUTPUT@%\$progdir/\$file%g'` - else - # fast_install is set to needless - relink_command= - fi - else - link_command="$compile_var$compile_command$compile_rpath" - relink_command="$finalize_var$finalize_command$finalize_rpath" - fi - fi - - # Replace the output file specification. - link_command=`$ECHO "$link_command" | $SED 's%@OUTPUT@%'"$output_objdir/$outputname"'%g'` - - # Delete the old output files. - $opt_dry_run || $RM $output $output_objdir/$outputname $output_objdir/lt-$outputname - - func_show_eval "$link_command" 'exit $?' - - if test -n "$postlink_cmds"; then - func_to_tool_file "$output_objdir/$outputname" - postlink_cmds=`func_echo_all "$postlink_cmds" | $SED -e 's%@OUTPUT@%'"$output_objdir/$outputname"'%g' -e 's%@TOOL_OUTPUT@%'"$func_to_tool_file_result"'%g'` - func_execute_cmds "$postlink_cmds" 'exit $?' - fi - - # Now create the wrapper script. - func_verbose "creating $output" - - # Quote the relink command for shipping. - if test -n "$relink_command"; then - # Preserve any variables that may affect compiler behavior - for var in $variables_saved_for_relink; do - if eval test -z \"\${$var+set}\"; then - relink_command="{ test -z \"\${$var+set}\" || $lt_unset $var || { $var=; export $var; }; }; $relink_command" - elif eval var_value=\$$var; test -z "$var_value"; then - relink_command="$var=; export $var; $relink_command" - else - func_quote_for_eval "$var_value" - relink_command="$var=$func_quote_for_eval_result; export $var; $relink_command" - fi - done - relink_command="(cd `pwd`; $relink_command)" - relink_command=`$ECHO "$relink_command" | $SED "$sed_quote_subst"` - fi - - # Only actually do things if not in dry run mode. - $opt_dry_run || { - # win32 will think the script is a binary if it has - # a .exe suffix, so we strip it off here. - case $output in - *.exe) func_stripname '' '.exe' "$output" - output=$func_stripname_result ;; - esac - # test for cygwin because mv fails w/o .exe extensions - case $host in - *cygwin*) - exeext=.exe - func_stripname '' '.exe' "$outputname" - outputname=$func_stripname_result ;; - *) exeext= ;; - esac - case $host in - *cygwin* | *mingw* ) - func_dirname_and_basename "$output" "" "." - output_name=$func_basename_result - output_path=$func_dirname_result - cwrappersource="$output_path/$objdir/lt-$output_name.c" - cwrapper="$output_path/$output_name.exe" - $RM $cwrappersource $cwrapper - trap "$RM $cwrappersource $cwrapper; exit $EXIT_FAILURE" 1 2 15 - - func_emit_cwrapperexe_src > $cwrappersource - - # The wrapper executable is built using the $host compiler, - # because it contains $host paths and files. If cross- - # compiling, it, like the target executable, must be - # executed on the $host or under an emulation environment. - $opt_dry_run || { - $LTCC $LTCFLAGS -o $cwrapper $cwrappersource - $STRIP $cwrapper - } - - # Now, create the wrapper script for func_source use: - func_ltwrapper_scriptname $cwrapper - $RM $func_ltwrapper_scriptname_result - trap "$RM $func_ltwrapper_scriptname_result; exit $EXIT_FAILURE" 1 2 15 - $opt_dry_run || { - # note: this script will not be executed, so do not chmod. - if test "x$build" = "x$host" ; then - $cwrapper --lt-dump-script > $func_ltwrapper_scriptname_result - else - func_emit_wrapper no > $func_ltwrapper_scriptname_result - fi - } - ;; - * ) - $RM $output - trap "$RM $output; exit $EXIT_FAILURE" 1 2 15 - - func_emit_wrapper no > $output - chmod +x $output - ;; - esac - } - exit $EXIT_SUCCESS - ;; - esac - - # See if we need to build an old-fashioned archive. - for oldlib in $oldlibs; do - - if test "$build_libtool_libs" = convenience; then - oldobjs="$libobjs_save $symfileobj" - addlibs="$convenience" - build_libtool_libs=no - else - if test "$build_libtool_libs" = module; then - oldobjs="$libobjs_save" - build_libtool_libs=no - else - oldobjs="$old_deplibs $non_pic_objects" - if test "$preload" = yes && test -f "$symfileobj"; then - oldobjs+=" $symfileobj" - fi - fi - addlibs="$old_convenience" - fi - - if test -n "$addlibs"; then - gentop="$output_objdir/${outputname}x" - generated+=" $gentop" - - func_extract_archives $gentop $addlibs - oldobjs+=" $func_extract_archives_result" - fi - - # Do each command in the archive commands. - if test -n "$old_archive_from_new_cmds" && test "$build_libtool_libs" = yes; then - cmds=$old_archive_from_new_cmds - else - - # Add any objects from preloaded convenience libraries - if test -n "$dlprefiles"; then - gentop="$output_objdir/${outputname}x" - generated+=" $gentop" - - func_extract_archives $gentop $dlprefiles - oldobjs+=" $func_extract_archives_result" - fi - - # POSIX demands no paths to be encoded in archives. We have - # to avoid creating archives with duplicate basenames if we - # might have to extract them afterwards, e.g., when creating a - # static archive out of a convenience library, or when linking - # the entirety of a libtool archive into another (currently - # not supported by libtool). - if (for obj in $oldobjs - do - func_basename "$obj" - $ECHO "$func_basename_result" - done | sort | sort -uc >/dev/null 2>&1); then - : - else - echo "copying selected object files to avoid basename conflicts..." - gentop="$output_objdir/${outputname}x" - generated+=" $gentop" - func_mkdir_p "$gentop" - save_oldobjs=$oldobjs - oldobjs= - counter=1 - for obj in $save_oldobjs - do - func_basename "$obj" - objbase="$func_basename_result" - case " $oldobjs " in - " ") oldobjs=$obj ;; - *[\ /]"$objbase "*) - while :; do - # Make sure we don't pick an alternate name that also - # overlaps. - newobj=lt$counter-$objbase - func_arith $counter + 1 - counter=$func_arith_result - case " $oldobjs " in - *[\ /]"$newobj "*) ;; - *) if test ! -f "$gentop/$newobj"; then break; fi ;; - esac - done - func_show_eval "ln $obj $gentop/$newobj || cp $obj $gentop/$newobj" - oldobjs+=" $gentop/$newobj" - ;; - *) oldobjs+=" $obj" ;; - esac - done - fi - func_to_tool_file "$oldlib" func_convert_file_msys_to_w32 - tool_oldlib=$func_to_tool_file_result - eval cmds=\"$old_archive_cmds\" - - func_len " $cmds" - len=$func_len_result - if test "$len" -lt "$max_cmd_len" || test "$max_cmd_len" -le -1; then - cmds=$old_archive_cmds - elif test -n "$archiver_list_spec"; then - func_verbose "using command file archive linking..." - for obj in $oldobjs - do - func_to_tool_file "$obj" - $ECHO "$func_to_tool_file_result" - done > $output_objdir/$libname.libcmd - func_to_tool_file "$output_objdir/$libname.libcmd" - oldobjs=" $archiver_list_spec$func_to_tool_file_result" - cmds=$old_archive_cmds - else - # the command line is too long to link in one step, link in parts - func_verbose "using piecewise archive linking..." - save_RANLIB=$RANLIB - RANLIB=: - objlist= - concat_cmds= - save_oldobjs=$oldobjs - oldobjs= - # Is there a better way of finding the last object in the list? - for obj in $save_oldobjs - do - last_oldobj=$obj - done - eval test_cmds=\"$old_archive_cmds\" - func_len " $test_cmds" - len0=$func_len_result - len=$len0 - for obj in $save_oldobjs - do - func_len " $obj" - func_arith $len + $func_len_result - len=$func_arith_result - objlist+=" $obj" - if test "$len" -lt "$max_cmd_len"; then - : - else - # the above command should be used before it gets too long - oldobjs=$objlist - if test "$obj" = "$last_oldobj" ; then - RANLIB=$save_RANLIB - fi - test -z "$concat_cmds" || concat_cmds=$concat_cmds~ - eval concat_cmds=\"\${concat_cmds}$old_archive_cmds\" - objlist= - len=$len0 - fi - done - RANLIB=$save_RANLIB - oldobjs=$objlist - if test "X$oldobjs" = "X" ; then - eval cmds=\"\$concat_cmds\" - else - eval cmds=\"\$concat_cmds~\$old_archive_cmds\" - fi - fi - fi - func_execute_cmds "$cmds" 'exit $?' - done - - test -n "$generated" && \ - func_show_eval "${RM}r$generated" - - # Now create the libtool archive. - case $output in - *.la) - old_library= - test "$build_old_libs" = yes && old_library="$libname.$libext" - func_verbose "creating $output" - - # Preserve any variables that may affect compiler behavior - for var in $variables_saved_for_relink; do - if eval test -z \"\${$var+set}\"; then - relink_command="{ test -z \"\${$var+set}\" || $lt_unset $var || { $var=; export $var; }; }; $relink_command" - elif eval var_value=\$$var; test -z "$var_value"; then - relink_command="$var=; export $var; $relink_command" - else - func_quote_for_eval "$var_value" - relink_command="$var=$func_quote_for_eval_result; export $var; $relink_command" - fi - done - # Quote the link command for shipping. - relink_command="(cd `pwd`; $SHELL $progpath $preserve_args --mode=relink $libtool_args @inst_prefix_dir@)" - relink_command=`$ECHO "$relink_command" | $SED "$sed_quote_subst"` - if test "$hardcode_automatic" = yes ; then - relink_command= - fi - - # Only create the output if not a dry run. - $opt_dry_run || { - for installed in no yes; do - if test "$installed" = yes; then - if test -z "$install_libdir"; then - break - fi - output="$output_objdir/$outputname"i - # Replace all uninstalled libtool libraries with the installed ones - newdependency_libs= - for deplib in $dependency_libs; do - case $deplib in - *.la) - func_basename "$deplib" - name="$func_basename_result" - func_resolve_sysroot "$deplib" - eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $func_resolve_sysroot_result` - test -z "$libdir" && \ - func_fatal_error "\`$deplib' is not a valid libtool archive" - newdependency_libs+=" ${lt_sysroot:+=}$libdir/$name" - ;; - -L*) - func_stripname -L '' "$deplib" - func_replace_sysroot "$func_stripname_result" - newdependency_libs+=" -L$func_replace_sysroot_result" - ;; - -R*) - func_stripname -R '' "$deplib" - func_replace_sysroot "$func_stripname_result" - newdependency_libs+=" -R$func_replace_sysroot_result" - ;; - *) newdependency_libs+=" $deplib" ;; - esac - done - dependency_libs="$newdependency_libs" - newdlfiles= - - for lib in $dlfiles; do - case $lib in - *.la) - func_basename "$lib" - name="$func_basename_result" - eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $lib` - test -z "$libdir" && \ - func_fatal_error "\`$lib' is not a valid libtool archive" - newdlfiles+=" ${lt_sysroot:+=}$libdir/$name" - ;; - *) newdlfiles+=" $lib" ;; - esac - done - dlfiles="$newdlfiles" - newdlprefiles= - for lib in $dlprefiles; do - case $lib in - *.la) - # Only pass preopened files to the pseudo-archive (for - # eventual linking with the app. that links it) if we - # didn't already link the preopened objects directly into - # the library: - func_basename "$lib" - name="$func_basename_result" - eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $lib` - test -z "$libdir" && \ - func_fatal_error "\`$lib' is not a valid libtool archive" - newdlprefiles+=" ${lt_sysroot:+=}$libdir/$name" - ;; - esac - done - dlprefiles="$newdlprefiles" - else - newdlfiles= - for lib in $dlfiles; do - case $lib in - [\\/]* | [A-Za-z]:[\\/]*) abs="$lib" ;; - *) abs=`pwd`"/$lib" ;; - esac - newdlfiles+=" $abs" - done - dlfiles="$newdlfiles" - newdlprefiles= - for lib in $dlprefiles; do - case $lib in - [\\/]* | [A-Za-z]:[\\/]*) abs="$lib" ;; - *) abs=`pwd`"/$lib" ;; - esac - newdlprefiles+=" $abs" - done - dlprefiles="$newdlprefiles" - fi - $RM $output - # place dlname in correct position for cygwin - # In fact, it would be nice if we could use this code for all target - # systems that can't hard-code library paths into their executables - # and that have no shared library path variable independent of PATH, - # but it turns out we can't easily determine that from inspecting - # libtool variables, so we have to hard-code the OSs to which it - # applies here; at the moment, that means platforms that use the PE - # object format with DLL files. See the long comment at the top of - # tests/bindir.at for full details. - tdlname=$dlname - case $host,$output,$installed,$module,$dlname in - *cygwin*,*lai,yes,no,*.dll | *mingw*,*lai,yes,no,*.dll | *cegcc*,*lai,yes,no,*.dll) - # If a -bindir argument was supplied, place the dll there. - if test "x$bindir" != x ; - then - func_relative_path "$install_libdir" "$bindir" - tdlname=$func_relative_path_result$dlname - else - # Otherwise fall back on heuristic. - tdlname=../bin/$dlname - fi - ;; - esac - $ECHO > $output "\ -# $outputname - a libtool library file -# Generated by $PROGRAM (GNU $PACKAGE$TIMESTAMP) $VERSION -# -# Please DO NOT delete this file! -# It is necessary for linking the library. - -# The name that we can dlopen(3). -dlname='$tdlname' - -# Names of this library. -library_names='$library_names' - -# The name of the static archive. -old_library='$old_library' - -# Linker flags that can not go in dependency_libs. -inherited_linker_flags='$new_inherited_linker_flags' - -# Libraries that this one depends upon. -dependency_libs='$dependency_libs' - -# Names of additional weak libraries provided by this library -weak_library_names='$weak_libs' - -# Version information for $libname. -current=$current -age=$age -revision=$revision - -# Is this an already installed library? -installed=$installed - -# Should we warn about portability when linking against -modules? -shouldnotlink=$module - -# Files to dlopen/dlpreopen -dlopen='$dlfiles' -dlpreopen='$dlprefiles' - -# Directory that this library needs to be installed in: -libdir='$install_libdir'" - if test "$installed" = no && test "$need_relink" = yes; then - $ECHO >> $output "\ -relink_command=\"$relink_command\"" - fi - done - } - - # Do a symbolic link so that the libtool archive can be found in - # LD_LIBRARY_PATH before the program is installed. - func_show_eval '( cd "$output_objdir" && $RM "$outputname" && $LN_S "../$outputname" "$outputname" )' 'exit $?' - ;; - esac - exit $EXIT_SUCCESS -} - -{ test "$opt_mode" = link || test "$opt_mode" = relink; } && - func_mode_link ${1+"$@"} - - -# func_mode_uninstall arg... -func_mode_uninstall () -{ - $opt_debug - RM="$nonopt" - files= - rmforce= - exit_status=0 - - # This variable tells wrapper scripts just to set variables rather - # than running their programs. - libtool_install_magic="$magic" - - for arg - do - case $arg in - -f) RM+=" $arg"; rmforce=yes ;; - -*) RM+=" $arg" ;; - *) files+=" $arg" ;; - esac - done - - test -z "$RM" && \ - func_fatal_help "you must specify an RM program" - - rmdirs= - - for file in $files; do - func_dirname "$file" "" "." - dir="$func_dirname_result" - if test "X$dir" = X.; then - odir="$objdir" - else - odir="$dir/$objdir" - fi - func_basename "$file" - name="$func_basename_result" - test "$opt_mode" = uninstall && odir="$dir" - - # Remember odir for removal later, being careful to avoid duplicates - if test "$opt_mode" = clean; then - case " $rmdirs " in - *" $odir "*) ;; - *) rmdirs+=" $odir" ;; - esac - fi - - # Don't error if the file doesn't exist and rm -f was used. - if { test -L "$file"; } >/dev/null 2>&1 || - { test -h "$file"; } >/dev/null 2>&1 || - test -f "$file"; then - : - elif test -d "$file"; then - exit_status=1 - continue - elif test "$rmforce" = yes; then - continue - fi - - rmfiles="$file" - - case $name in - *.la) - # Possibly a libtool archive, so verify it. - if func_lalib_p "$file"; then - func_source $dir/$name - - # Delete the libtool libraries and symlinks. - for n in $library_names; do - rmfiles+=" $odir/$n" - done - test -n "$old_library" && rmfiles+=" $odir/$old_library" - - case "$opt_mode" in - clean) - case " $library_names " in - *" $dlname "*) ;; - *) test -n "$dlname" && rmfiles+=" $odir/$dlname" ;; - esac - test -n "$libdir" && rmfiles+=" $odir/$name $odir/${name}i" - ;; - uninstall) - if test -n "$library_names"; then - # Do each command in the postuninstall commands. - func_execute_cmds "$postuninstall_cmds" 'test "$rmforce" = yes || exit_status=1' - fi - - if test -n "$old_library"; then - # Do each command in the old_postuninstall commands. - func_execute_cmds "$old_postuninstall_cmds" 'test "$rmforce" = yes || exit_status=1' - fi - # FIXME: should reinstall the best remaining shared library. - ;; - esac - fi - ;; - - *.lo) - # Possibly a libtool object, so verify it. - if func_lalib_p "$file"; then - - # Read the .lo file - func_source $dir/$name - - # Add PIC object to the list of files to remove. - if test -n "$pic_object" && - test "$pic_object" != none; then - rmfiles+=" $dir/$pic_object" - fi - - # Add non-PIC object to the list of files to remove. - if test -n "$non_pic_object" && - test "$non_pic_object" != none; then - rmfiles+=" $dir/$non_pic_object" - fi - fi - ;; - - *) - if test "$opt_mode" = clean ; then - noexename=$name - case $file in - *.exe) - func_stripname '' '.exe' "$file" - file=$func_stripname_result - func_stripname '' '.exe' "$name" - noexename=$func_stripname_result - # $file with .exe has already been added to rmfiles, - # add $file without .exe - rmfiles+=" $file" - ;; - esac - # Do a test to see if this is a libtool program. - if func_ltwrapper_p "$file"; then - if func_ltwrapper_executable_p "$file"; then - func_ltwrapper_scriptname "$file" - relink_command= - func_source $func_ltwrapper_scriptname_result - rmfiles+=" $func_ltwrapper_scriptname_result" - else - relink_command= - func_source $dir/$noexename - fi - - # note $name still contains .exe if it was in $file originally - # as does the version of $file that was added into $rmfiles - rmfiles+=" $odir/$name $odir/${name}S.${objext}" - if test "$fast_install" = yes && test -n "$relink_command"; then - rmfiles+=" $odir/lt-$name" - fi - if test "X$noexename" != "X$name" ; then - rmfiles+=" $odir/lt-${noexename}.c" - fi - fi - fi - ;; - esac - func_show_eval "$RM $rmfiles" 'exit_status=1' - done - - # Try to remove the ${objdir}s in the directories where we deleted files - for dir in $rmdirs; do - if test -d "$dir"; then - func_show_eval "rmdir $dir >/dev/null 2>&1" - fi - done - - exit $exit_status -} - -{ test "$opt_mode" = uninstall || test "$opt_mode" = clean; } && - func_mode_uninstall ${1+"$@"} - -test -z "$opt_mode" && { - help="$generic_help" - func_fatal_help "you must specify a MODE" -} - -test -z "$exec_cmd" && \ - func_fatal_help "invalid operation mode \`$opt_mode'" - -if test -n "$exec_cmd"; then - eval exec "$exec_cmd" - exit $EXIT_FAILURE -fi - -exit $exit_status - - -# The TAGs below are defined such that we never get into a situation -# in which we disable both kinds of libraries. Given conflicting -# choices, we go for a static library, that is the most portable, -# since we can't tell whether shared libraries were disabled because -# the user asked for that or because the platform doesn't support -# them. This is particularly important on AIX, because we don't -# support having both static and shared libraries enabled at the same -# time on that platform, so we default to a shared-only configuration. -# If a disable-shared tag is given, we'll fallback to a static-only -# configuration. But we'll never go from static-only to shared-only. - -# ### BEGIN LIBTOOL TAG CONFIG: disable-shared -build_libtool_libs=no -build_old_libs=yes -# ### END LIBTOOL TAG CONFIG: disable-shared - -# ### BEGIN LIBTOOL TAG CONFIG: disable-static -build_old_libs=`case $build_libtool_libs in yes) echo no;; *) echo yes;; esac` -# ### END LIBTOOL TAG CONFIG: disable-static - -# Local Variables: -# mode:shell-script -# sh-indentation:2 -# End: -# vi:sw=2 -