ltconfig
changeset 1 cf2af46e9e2a
parent 0 74212992fb08
child 31 667aa8b373a4
equal deleted inserted replaced
0:74212992fb08 1:cf2af46e9e2a
  1103   # Microsoft Visual C++.
  1103   # Microsoft Visual C++.
  1104   if test "$with_gcc" != yes; then
  1104   if test "$with_gcc" != yes; then
  1105     with_gnu_ld=no
  1105     with_gnu_ld=no
  1106   fi
  1106   fi
  1107   ;;
  1107   ;;
       
  1108 openbsd*)
       
  1109   with_gnu_ld=no
       
  1110   ;;
  1108 
  1111 
  1109 esac
  1112 esac
  1110 
  1113 
  1111 ld_shlibs=yes
  1114 ld_shlibs=yes
  1112 if test "$with_gnu_ld" = yes; then
  1115 if test "$with_gnu_ld" = yes; then
  1153       ld_shlibs=no
  1156       ld_shlibs=no
  1154     fi
  1157     fi
  1155     ;;
  1158     ;;
  1156 
  1159 
  1157   cygwin* | mingw*)
  1160   cygwin* | mingw*)
       
  1161     # Special flag that tells Cygwin to use the native MSVC runtime
       
  1162     case "$host_os" in
       
  1163     cygwin*)
       
  1164       cygwin_use_msvcrt=true
       
  1165       ;;
       
  1166     esac
  1158     # hardcode_libdir_flag_spec is actually meaningless, as there is
  1167     # hardcode_libdir_flag_spec is actually meaningless, as there is
  1159     # no search path for DLLs.
  1168     # no search path for DLLs.
  1160     hardcode_libdir_flag_spec='-L$libdir'
  1169     hardcode_libdir_flag_spec='-L$libdir'
  1161 #    allow_undefined_flag=unsupported
  1170 #    allow_undefined_flag=unsupported
  1162     always_export_symbols=yes
  1171     always_export_symbols=yes
  1163 
  1172 
  1164     # Extract the symbol export list from an `--export-all' def file,
  1173     # Extract the symbol export list from an `--export-all' def file,
  1165     # then regenerate the def file from the symbol export list, so that
  1174     # then regenerate the def file from the symbol export list, so that
  1166     # the compiled dll only exports the symbol export list.
  1175     # the compiled dll only exports the symbol export list.
  1167     # Be careful not to strip the DATA tag left by newer dlltools.
  1176     # Be careful not to strip the DATA tag left by newer dlltools.
  1168     export_symbols_cmds='test -f $objdir/$soname-ltdll.c || sed -e "/^# \/\* ltdll\.c starts here \*\//,/^# \/\* ltdll.c ends here \*\// { s/^# //; p; }" -e d < $0 > $objdir/$soname-ltdll.c~
  1177     if [ "$cygwin_use_msvcrt" = "true" ]; then
       
  1178       export_symbols_cmds='test -f $objdir/$soname-ltdll.c || sed -e "/^# \/\* ltdll\.c starts here \*\//,/^# \/\* ltdll.c ends here \*\// { s/^# //; p; }" -e d < $0 > $objdir/$soname-ltdll.c~
       
  1179       test -f $objdir/$soname-ltdll.$objext || (cd $objdir && $CC -U__CYGWIN__ -U__CYGWIN32__ -c $soname-ltdll.c)~
       
  1180       $DLLTOOL --exclude-symbols _DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12 --output-def $objdir/$soname-def  $objdir/$soname-ltdll.$objext $libobjs $convenience~
       
  1181       sed -e "1,/EXPORTS/d" -e "s/ @ [0-9]*//" -e "s/ *;.*$//" < $objdir/$soname-def > $export_symbols'
       
  1182     else
       
  1183       export_symbols_cmds='test -f $objdir/$soname-ltdll.c || sed -e "/^# \/\* ltdll\.c starts here \*\//,/^# \/\* ltdll.c ends here \*\// { s/^# //; p; }" -e d < $0 > $objdir/$soname-ltdll.c~
  1169       test -f $objdir/$soname-ltdll.$objext || (cd $objdir && $CC -c $soname-ltdll.c)~
  1184       test -f $objdir/$soname-ltdll.$objext || (cd $objdir && $CC -c $soname-ltdll.c)~
  1170       $DLLTOOL --exclude-symbols _DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12 --output-def $objdir/$soname-def  $objdir/$soname-ltdll.$objext $libobjs $convenience~
  1185       $DLLTOOL --exclude-symbols _DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12 --output-def $objdir/$soname-def  $objdir/$soname-ltdll.$objext $libobjs $convenience~
  1171       sed -e "1,/EXPORTS/d" -e "s/ @ [0-9]*//" -e "s/ *;.*$//" < $objdir/$soname-def > $export_symbols'
  1186       sed -e "1,/EXPORTS/d" -e "s/ @ [0-9]*//" -e "s/ *;.*$//" < $objdir/$soname-def > $export_symbols'
       
  1187     fi
  1172 
  1188 
  1173     # If DATA tags from a recent dlltool are present, honour them!
  1189     # If DATA tags from a recent dlltool are present, honour them!
  1174     archive_expsym_cmds='echo EXPORTS > $objdir/$soname-def~
  1190     if [ "$cygwin_use_msvcrt" = "true" ]; then
       
  1191       archive_expsym_cmds='echo EXPORTS > $objdir/$soname-def~
       
  1192       _lt_hint=1;
       
  1193       cat $export_symbols | while read symbol; do
       
  1194         set dummy \$symbol;
       
  1195         case \$# in
       
  1196           2) echo "	\$2 @ \$_lt_hint ; " >> $objdir/$soname-def;;
       
  1197           *) echo "     \$2 @ \$_lt_hint \$3 ; " >> $objdir/$soname-def;;
       
  1198         esac;
       
  1199 	_lt_hint=`expr 1 + \$_lt_hint`;
       
  1200       done~
       
  1201       test -f $objdir/$soname-ltdll.c || sed -e "/^# \/\* ltdll\.c starts here \*\//,/^# \/\* ltdll.c ends here \*\// { s/^# //; p; }" -e d < $0 > $objdir/$soname-ltdll.c~
       
  1202       test -f $objdir/$soname-ltdll.$objext || (cd $objdir && $CC -U__CYGWIN__ -U__CYGWIN32__ -c $soname-ltdll.c)~
       
  1203       $CC -Wl,--base-file,$objdir/$soname-base -Wl,--dll -nostartfiles -Wl,-e,_DllMain@12 -o $lib $objdir/$soname-ltdll.$objext $libobjs $deplibs $linkopts -L/usr/lib/mingw -mno-cygwin~
       
  1204       $DLLTOOL --as=$AS --dllname $soname --exclude-symbols _DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12 --def $objdir/$soname-def --base-file $objdir/$soname-base --output-exp $objdir/$soname-exp~
       
  1205       $CC -Wl,--base-file,$objdir/$soname-base $objdir/$soname-exp -Wl,--dll -nostartfiles -Wl,-e,_DllMain@12 -o $lib $objdir/$soname-ltdll.$objext $libobjs $deplibs $linkopts -L/usr/lib/mingw -mno-cygwin~
       
  1206       $DLLTOOL --as=$AS --dllname $soname --exclude-symbols _DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12 --def $objdir/$soname-def --base-file $objdir/$soname-base --output-exp $objdir/$soname-exp~
       
  1207       $CC $objdir/$soname-exp -Wl,--dll -nostartfiles -Wl,-e,_DllMain@12 -o $lib $objdir/$soname-ltdll.$objext $libobjs $deplibs $linkopts -L/usr/lib/mingw -mno-cygwin~
       
  1208       : strip_is_broken_with_dlls_on_win95B - strip $lib'
       
  1209     else
       
  1210       archive_expsym_cmds='echo EXPORTS > $objdir/$soname-def~
  1175       _lt_hint=1;
  1211       _lt_hint=1;
  1176       cat $export_symbols | while read symbol; do
  1212       cat $export_symbols | while read symbol; do
  1177         set dummy \$symbol;
  1213         set dummy \$symbol;
  1178         case \$# in
  1214         case \$# in
  1179           2) echo "	\$2 @ \$_lt_hint ; " >> $objdir/$soname-def;;
  1215           2) echo "	\$2 @ \$_lt_hint ; " >> $objdir/$soname-def;;
  1187       $DLLTOOL --as=$AS --dllname $soname --exclude-symbols _DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12 --def $objdir/$soname-def --base-file $objdir/$soname-base --output-exp $objdir/$soname-exp~
  1223       $DLLTOOL --as=$AS --dllname $soname --exclude-symbols _DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12 --def $objdir/$soname-def --base-file $objdir/$soname-base --output-exp $objdir/$soname-exp~
  1188       $CC -Wl,--base-file,$objdir/$soname-base $objdir/$soname-exp -Wl,--dll -nostartfiles -Wl,-e,_DllMain@12 -o $lib $objdir/$soname-ltdll.$objext $libobjs $deplibs $linkopts~
  1224       $CC -Wl,--base-file,$objdir/$soname-base $objdir/$soname-exp -Wl,--dll -nostartfiles -Wl,-e,_DllMain@12 -o $lib $objdir/$soname-ltdll.$objext $libobjs $deplibs $linkopts~
  1189       $DLLTOOL --as=$AS --dllname $soname --exclude-symbols _DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12 --def $objdir/$soname-def --base-file $objdir/$soname-base --output-exp $objdir/$soname-exp~
  1225       $DLLTOOL --as=$AS --dllname $soname --exclude-symbols _DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12 --def $objdir/$soname-def --base-file $objdir/$soname-base --output-exp $objdir/$soname-exp~
  1190       $CC $objdir/$soname-exp -Wl,--dll -nostartfiles -Wl,-e,_DllMain@12 -o $lib $objdir/$soname-ltdll.$objext $libobjs $deplibs $linkopts~
  1226       $CC $objdir/$soname-exp -Wl,--dll -nostartfiles -Wl,-e,_DllMain@12 -o $lib $objdir/$soname-ltdll.$objext $libobjs $deplibs $linkopts~
  1191       : strip_is_broken_with_dlls_on_win95B - strip $lib'
  1227       : strip_is_broken_with_dlls_on_win95B - strip $lib'
  1192 
  1228     fi
  1193       old_archive_from_new_cmds='$DLLTOOL --as=$AS --dllname $soname --def $objdir/$soname-def --output-lib $objdir/$libname.a'
  1229     old_archive_from_new_cmds='$DLLTOOL --as=$AS --dllname $soname --def $objdir/$soname-def --output-lib $objdir/$libname.a'
  1194     ;;
  1230     ;;
  1195 
  1231 
  1196   netbsd*)
  1232   netbsd*)
  1197     if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
  1233     if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
  1198       archive_cmds='$CC -shared $libobjs $deplibs $linkopts ${wl}-soname $wl$soname -o $lib'
  1234       archive_cmds='$CC -shared $libobjs $deplibs $linkopts ${wl}-soname $wl$soname -o $lib'
  1401     hardcode_direct=yes
  1437     hardcode_direct=yes
  1402     hardcode_shlibpath_var=no
  1438     hardcode_shlibpath_var=no
  1403     ;;
  1439     ;;
  1404 
  1440 
  1405   openbsd*)
  1441   openbsd*)
  1406     archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linkopts'
       
  1407     hardcode_libdir_flag_spec='-R$libdir'
       
  1408     hardcode_direct=yes
  1442     hardcode_direct=yes
  1409     hardcode_shlibpath_var=no
  1443     hardcode_shlibpath_var=no
       
  1444     case "$host_os" in
       
  1445       openbsd[01].* | openbsd2.[0-7] | openbsd2.[0-7].*)
       
  1446 	archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linkopts'
       
  1447 	hardcode_libdir_flag_spec='-R$libdir'
       
  1448       ;;
       
  1449       *)
       
  1450 	archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $linkopts'
       
  1451 	hardcode_libdir_flag_spec='${wl}-rpath,$libdir'
       
  1452 	 if [ "`/usr/bin/file /usr/lib/libc.so.* | grep ELF`" != "" ]; then
       
  1453 	   export_dynamic_flag_spec='${wl}-E'
       
  1454 	 fi
       
  1455       ;;
       
  1456     esac
  1410     ;;
  1457     ;;
  1411 
  1458 
  1412   os2*)
  1459   os2*)
  1413     hardcode_libdir_flag_spec='-L$libdir'
  1460     hardcode_libdir_flag_spec='-L$libdir'
  1414     hardcode_minus_L=yes
  1461     hardcode_minus_L=yes
  1881   shlibpath_var=PATH
  1928   shlibpath_var=PATH
  1882   if test "$with_gcc" = yes; then
  1929   if test "$with_gcc" = yes; then
  1883     # See where the system libraries really are - /usr/lib won't cut it
  1930     # See where the system libraries really are - /usr/lib won't cut it
  1884     libuser32=`$CC --print-file-name=libuser32.a`
  1931     libuser32=`$CC --print-file-name=libuser32.a`
  1885     win32libs=`expr $libuser32 : '\(.*\)/.*'`
  1932     win32libs=`expr $libuser32 : '\(.*\)/.*'`
  1886     sys_lib_search_path_spec="$sys_lib_search_path $win32libs"
  1933     sys_lib_search_path_spec="$sys_lib_search_path_spec $win32libs"
  1887   fi
  1934   fi
  1888   lt_cv_dlopen="LoadLibrary"
  1935   lt_cv_dlopen="LoadLibrary"
  1889   lt_cv_dlopen_libs=
  1936   lt_cv_dlopen_libs=
  1890   ;;
  1937   ;;
  1891 
  1938 
  2028   shlibpath_var=LD_LIBRARY_PATH
  2075   shlibpath_var=LD_LIBRARY_PATH
  2029   ;;
  2076   ;;
  2030 
  2077 
  2031 openbsd*)
  2078 openbsd*)
  2032   version_type=sunos
  2079   version_type=sunos
  2033   if test "$with_gnu_ld" = yes; then
       
  2034     need_lib_prefix=no
       
  2035     need_version=no
       
  2036   fi
       
  2037   library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix'
  2080   library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix'
  2038   finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
  2081   finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
  2039   shlibpath_var=LD_LIBRARY_PATH
  2082   shlibpath_var=LD_LIBRARY_PATH
       
  2083   deplibs_check_method='pass_all'
  2040   ;;
  2084   ;;
  2041 
  2085 
  2042 os2*)
  2086 os2*)
  2043   libname_spec='$name'
  2087   libname_spec='$name'
  2044   need_lib_prefix=no
  2088   need_lib_prefix=no