ffi 0.5.0-x86-mingw32
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of ffi might be problematic. Click here for more details.
- data/LICENSE +51 -0
- data/README.rdoc +69 -0
- data/Rakefile +191 -0
- data/ext/ffi_c/AbstractMemory.c +489 -0
- data/ext/ffi_c/AbstractMemory.h +160 -0
- data/ext/ffi_c/ArrayType.c +129 -0
- data/ext/ffi_c/ArrayType.h +58 -0
- data/ext/ffi_c/AutoPointer.c +61 -0
- data/ext/ffi_c/AutoPointer.h +18 -0
- data/ext/ffi_c/Buffer.c +187 -0
- data/ext/ffi_c/Call.c +853 -0
- data/ext/ffi_c/Call.h +86 -0
- data/ext/ffi_c/ClosurePool.c +302 -0
- data/ext/ffi_c/ClosurePool.h +29 -0
- data/ext/ffi_c/DynamicLibrary.c +216 -0
- data/ext/ffi_c/DynamicLibrary.h +22 -0
- data/ext/ffi_c/Function.c +478 -0
- data/ext/ffi_c/Function.h +80 -0
- data/ext/ffi_c/FunctionInfo.c +221 -0
- data/ext/ffi_c/LastError.c +159 -0
- data/ext/ffi_c/LastError.h +18 -0
- data/ext/ffi_c/MemoryPointer.c +178 -0
- data/ext/ffi_c/MemoryPointer.h +20 -0
- data/ext/ffi_c/MethodHandle.c +346 -0
- data/ext/ffi_c/MethodHandle.h +53 -0
- data/ext/ffi_c/Platform.c +59 -0
- data/ext/ffi_c/Platform.h +16 -0
- data/ext/ffi_c/Pointer.c +224 -0
- data/ext/ffi_c/Pointer.h +49 -0
- data/ext/ffi_c/Struct.c +770 -0
- data/ext/ffi_c/Struct.h +80 -0
- data/ext/ffi_c/StructByValue.c +140 -0
- data/ext/ffi_c/StructByValue.h +53 -0
- data/ext/ffi_c/StructLayout.c +450 -0
- data/ext/ffi_c/Type.c +329 -0
- data/ext/ffi_c/Type.h +57 -0
- data/ext/ffi_c/Types.c +103 -0
- data/ext/ffi_c/Types.h +85 -0
- data/ext/ffi_c/Variadic.c +260 -0
- data/ext/ffi_c/compat.h +72 -0
- data/ext/ffi_c/endian.h +40 -0
- data/ext/ffi_c/extconf.rb +30 -0
- data/ext/ffi_c/ffi.c +82 -0
- data/ext/ffi_c/libffi.bsd.mk +34 -0
- data/ext/ffi_c/libffi.darwin.mk +75 -0
- data/ext/ffi_c/libffi.gnu.mk +29 -0
- data/ext/ffi_c/libffi.mk +13 -0
- data/ext/ffi_c/libffi/ChangeLog +3243 -0
- data/ext/ffi_c/libffi/ChangeLog.libffi +347 -0
- data/ext/ffi_c/libffi/ChangeLog.libgcj +40 -0
- data/ext/ffi_c/libffi/ChangeLog.v1 +764 -0
- data/ext/ffi_c/libffi/LICENSE +21 -0
- data/ext/ffi_c/libffi/Makefile.am +177 -0
- data/ext/ffi_c/libffi/Makefile.in +1640 -0
- data/ext/ffi_c/libffi/README +328 -0
- data/ext/ffi_c/libffi/TODO +1 -0
- data/ext/ffi_c/libffi/acinclude.m4 +92 -0
- data/ext/ffi_c/libffi/aclocal.m4 +7516 -0
- data/ext/ffi_c/libffi/compile +142 -0
- data/ext/ffi_c/libffi/config.guess +1516 -0
- data/ext/ffi_c/libffi/config.sub +1626 -0
- data/ext/ffi_c/libffi/configure +24414 -0
- data/ext/ffi_c/libffi/configure.ac +365 -0
- data/ext/ffi_c/libffi/configure.host +11 -0
- data/ext/ffi_c/libffi/depcomp +584 -0
- data/ext/ffi_c/libffi/doc/libffi.info +533 -0
- data/ext/ffi_c/libffi/doc/libffi.texi +541 -0
- data/ext/ffi_c/libffi/doc/stamp-vti +4 -0
- data/ext/ffi_c/libffi/doc/version.texi +4 -0
- data/ext/ffi_c/libffi/fficonfig.h.in +160 -0
- data/ext/ffi_c/libffi/include/Makefile.am +9 -0
- data/ext/ffi_c/libffi/include/Makefile.in +422 -0
- data/ext/ffi_c/libffi/include/ffi.h.in +393 -0
- data/ext/ffi_c/libffi/include/ffi_common.h +98 -0
- data/ext/ffi_c/libffi/install-sh +323 -0
- data/ext/ffi_c/libffi/libffi.pc.in +10 -0
- data/ext/ffi_c/libffi/libtool-version +29 -0
- data/ext/ffi_c/libffi/ltcf-c.sh +861 -0
- data/ext/ffi_c/libffi/ltcf-cxx.sh +1069 -0
- data/ext/ffi_c/libffi/ltcf-gcj.sh +700 -0
- data/ext/ffi_c/libffi/ltconfig +2862 -0
- data/ext/ffi_c/libffi/ltmain.sh +6930 -0
- data/ext/ffi_c/libffi/man/Makefile.am +8 -0
- data/ext/ffi_c/libffi/man/Makefile.in +395 -0
- data/ext/ffi_c/libffi/man/ffi.3 +31 -0
- data/ext/ffi_c/libffi/man/ffi_call.3 +103 -0
- data/ext/ffi_c/libffi/man/ffi_prep_cif.3 +66 -0
- data/ext/ffi_c/libffi/mdate-sh +201 -0
- data/ext/ffi_c/libffi/missing +353 -0
- data/ext/ffi_c/libffi/mkinstalldirs +158 -0
- data/ext/ffi_c/libffi/src/alpha/ffi.c +284 -0
- data/ext/ffi_c/libffi/src/alpha/ffitarget.h +48 -0
- data/ext/ffi_c/libffi/src/alpha/osf.S +366 -0
- data/ext/ffi_c/libffi/src/arm/ffi.c +309 -0
- data/ext/ffi_c/libffi/src/arm/ffitarget.h +49 -0
- data/ext/ffi_c/libffi/src/arm/sysv.S +299 -0
- data/ext/ffi_c/libffi/src/closures.c +596 -0
- data/ext/ffi_c/libffi/src/cris/ffi.c +383 -0
- data/ext/ffi_c/libffi/src/cris/ffitarget.h +51 -0
- data/ext/ffi_c/libffi/src/cris/sysv.S +215 -0
- data/ext/ffi_c/libffi/src/debug.c +59 -0
- data/ext/ffi_c/libffi/src/dlmalloc.c +5099 -0
- data/ext/ffi_c/libffi/src/frv/eabi.S +128 -0
- data/ext/ffi_c/libffi/src/frv/ffi.c +292 -0
- data/ext/ffi_c/libffi/src/frv/ffitarget.h +61 -0
- data/ext/ffi_c/libffi/src/ia64/ffi.c +580 -0
- data/ext/ffi_c/libffi/src/ia64/ffitarget.h +50 -0
- data/ext/ffi_c/libffi/src/ia64/ia64_flags.h +40 -0
- data/ext/ffi_c/libffi/src/ia64/unix.S +560 -0
- data/ext/ffi_c/libffi/src/java_raw_api.c +359 -0
- data/ext/ffi_c/libffi/src/m32r/ffi.c +232 -0
- data/ext/ffi_c/libffi/src/m32r/ffitarget.h +48 -0
- data/ext/ffi_c/libffi/src/m32r/sysv.S +121 -0
- data/ext/ffi_c/libffi/src/m68k/ffi.c +278 -0
- data/ext/ffi_c/libffi/src/m68k/ffitarget.h +49 -0
- data/ext/ffi_c/libffi/src/m68k/sysv.S +234 -0
- data/ext/ffi_c/libffi/src/mips/ffi.c +926 -0
- data/ext/ffi_c/libffi/src/mips/ffitarget.h +202 -0
- data/ext/ffi_c/libffi/src/mips/n32.S +534 -0
- data/ext/ffi_c/libffi/src/mips/o32.S +381 -0
- data/ext/ffi_c/libffi/src/pa/ffi.c +709 -0
- data/ext/ffi_c/libffi/src/pa/ffitarget.h +77 -0
- data/ext/ffi_c/libffi/src/pa/hpux32.S +368 -0
- data/ext/ffi_c/libffi/src/pa/linux.S +357 -0
- data/ext/ffi_c/libffi/src/powerpc/aix.S +225 -0
- data/ext/ffi_c/libffi/src/powerpc/aix_closure.S +247 -0
- data/ext/ffi_c/libffi/src/powerpc/asm.h +125 -0
- data/ext/ffi_c/libffi/src/powerpc/darwin.S +245 -0
- data/ext/ffi_c/libffi/src/powerpc/darwin_closure.S +317 -0
- data/ext/ffi_c/libffi/src/powerpc/ffi.c +1429 -0
- data/ext/ffi_c/libffi/src/powerpc/ffi_darwin.c +800 -0
- data/ext/ffi_c/libffi/src/powerpc/ffitarget.h +118 -0
- data/ext/ffi_c/libffi/src/powerpc/linux64.S +187 -0
- data/ext/ffi_c/libffi/src/powerpc/linux64_closure.S +236 -0
- data/ext/ffi_c/libffi/src/powerpc/ppc_closure.S +327 -0
- data/ext/ffi_c/libffi/src/powerpc/sysv.S +230 -0
- data/ext/ffi_c/libffi/src/prep_cif.c +174 -0
- data/ext/ffi_c/libffi/src/raw_api.c +254 -0
- data/ext/ffi_c/libffi/src/s390/ffi.c +780 -0
- data/ext/ffi_c/libffi/src/s390/ffitarget.h +60 -0
- data/ext/ffi_c/libffi/src/s390/sysv.S +434 -0
- data/ext/ffi_c/libffi/src/sh/ffi.c +716 -0
- data/ext/ffi_c/libffi/src/sh/ffitarget.h +49 -0
- data/ext/ffi_c/libffi/src/sh/sysv.S +850 -0
- data/ext/ffi_c/libffi/src/sh64/ffi.c +453 -0
- data/ext/ffi_c/libffi/src/sh64/ffitarget.h +53 -0
- data/ext/ffi_c/libffi/src/sh64/sysv.S +530 -0
- data/ext/ffi_c/libffi/src/sparc/ffi.c +610 -0
- data/ext/ffi_c/libffi/src/sparc/ffitarget.h +66 -0
- data/ext/ffi_c/libffi/src/sparc/v8.S +272 -0
- data/ext/ffi_c/libffi/src/sparc/v9.S +307 -0
- data/ext/ffi_c/libffi/src/types.c +77 -0
- data/ext/ffi_c/libffi/src/x86/darwin.S +443 -0
- data/ext/ffi_c/libffi/src/x86/darwin64.S +416 -0
- data/ext/ffi_c/libffi/src/x86/ffi.c +475 -0
- data/ext/ffi_c/libffi/src/x86/ffi64.c +572 -0
- data/ext/ffi_c/libffi/src/x86/ffitarget.h +90 -0
- data/ext/ffi_c/libffi/src/x86/freebsd.S +458 -0
- data/ext/ffi_c/libffi/src/x86/sysv.S +437 -0
- data/ext/ffi_c/libffi/src/x86/unix64.S +418 -0
- data/ext/ffi_c/libffi/src/x86/win32.S +391 -0
- data/ext/ffi_c/libffi/testsuite/Makefile.am +71 -0
- data/ext/ffi_c/libffi/testsuite/Makefile.in +447 -0
- data/ext/ffi_c/libffi/testsuite/config/default.exp +1 -0
- data/ext/ffi_c/libffi/testsuite/lib/libffi-dg.exp +289 -0
- data/ext/ffi_c/libffi/testsuite/lib/target-libpath.exp +263 -0
- data/ext/ffi_c/libffi/testsuite/lib/wrapper.exp +45 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/call.exp +36 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/closure_fn0.c +97 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/closure_fn1.c +89 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/closure_fn2.c +89 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/closure_fn3.c +90 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/closure_fn4.c +97 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/closure_fn5.c +99 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/closure_fn6.c +98 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/closure_stdcall.c +72 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_12byte.c +102 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_16byte.c +103 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_18byte.c +104 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_19byte.c +110 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_1_1byte.c +97 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_20byte.c +99 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_20byte1.c +101 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_24byte.c +121 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_2byte.c +98 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_3_1byte.c +103 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_3byte1.c +98 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_3byte2.c +98 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_4_1byte.c +106 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_4byte.c +98 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_5_1_byte.c +117 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_5byte.c +106 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_64byte.c +132 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_6_1_byte.c +121 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_6byte.c +107 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_7_1_byte.c +125 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_7byte.c +105 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_8byte.c +96 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_9byte1.c +98 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_9byte2.c +99 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_double.c +101 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_float.c +99 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_longdouble.c +100 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_pointer.c +101 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_sint16.c +99 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_sint32.c +99 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_sint64.c +99 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_uint16.c +99 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_uint32.c +99 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_align_uint64.c +100 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_double.c +51 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_float.c +51 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_multi_schar.c +82 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_multi_sshort.c +82 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_multi_sshortchar.c +94 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_multi_uchar.c +99 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_multi_ushort.c +82 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_multi_ushortchar.c +94 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_schar.c +52 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_sint.c +50 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_sshort.c +50 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_uchar.c +50 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_uint.c +51 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_ulonglong.c +54 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/cls_ushort.c +51 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/ffitest.h +86 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/float.c +59 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/float1.c +58 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/float2.c +57 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/float3.c +72 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/float4.c +62 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/many.c +69 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/many_win32.c +63 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/negint.c +53 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct.c +160 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct1.c +169 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct10.c +141 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct2.c +118 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct3.c +119 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct4.c +119 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct5.c +120 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct6.c +139 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct7.c +119 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct8.c +139 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/nested_struct9.c +139 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/problem1.c +98 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/promotion.c +59 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/pyobjc-tc.c +114 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/return_dbl.c +35 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/return_dbl1.c +43 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/return_dbl2.c +42 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/return_fl.c +35 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/return_fl1.c +36 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/return_fl2.c +49 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/return_fl3.c +42 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/return_ldl.c +34 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/return_ll.c +41 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/return_ll1.c +42 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/return_sc.c +36 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/return_sl.c +38 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/return_uc.c +38 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/return_ul.c +38 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/strlen.c +44 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/strlen_win32.c +44 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/struct1.c +65 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/struct2.c +67 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/struct3.c +59 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/struct4.c +63 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/struct5.c +65 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/struct6.c +64 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/struct7.c +74 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/struct8.c +80 -0
- data/ext/ffi_c/libffi/testsuite/libffi.call/struct9.c +67 -0
- data/ext/ffi_c/libffi/testsuite/libffi.special/ffitestcxx.h +86 -0
- data/ext/ffi_c/libffi/testsuite/libffi.special/special.exp +38 -0
- data/ext/ffi_c/libffi/testsuite/libffi.special/unwindtest.cc +123 -0
- data/ext/ffi_c/libffi/testsuite/libffi.special/unwindtest_ffi_call.cc +53 -0
- data/ext/ffi_c/libffi/texinfo.tex +7482 -0
- data/ext/ffi_c/rbffi.h +26 -0
- data/gen/Rakefile +12 -0
- data/lib/1.8/ffi_c.so +0 -0
- data/lib/1.9/ffi_c.so +0 -0
- data/lib/ffi.rb +11 -0
- data/lib/ffi/autopointer.rb +61 -0
- data/lib/ffi/buffer.rb +0 -0
- data/lib/ffi/callback.rb +10 -0
- data/lib/ffi/enum.rb +78 -0
- data/lib/ffi/errno.rb +8 -0
- data/lib/ffi/ffi.rb +99 -0
- data/lib/ffi/io.rb +21 -0
- data/lib/ffi/library.rb +218 -0
- data/lib/ffi/managedstruct.rb +55 -0
- data/lib/ffi/memorypointer.rb +73 -0
- data/lib/ffi/platform.rb +88 -0
- data/lib/ffi/pointer.rb +119 -0
- data/lib/ffi/struct.rb +183 -0
- data/lib/ffi/tools/const_generator.rb +177 -0
- data/lib/ffi/tools/generator.rb +58 -0
- data/lib/ffi/tools/generator_task.rb +35 -0
- data/lib/ffi/tools/struct_generator.rb +194 -0
- data/lib/ffi/tools/types_generator.rb +123 -0
- data/lib/ffi/types.rb +153 -0
- data/lib/ffi/union.rb +12 -0
- data/lib/ffi/variadic.rb +25 -0
- data/spec/ffi/bool_spec.rb +24 -0
- data/spec/ffi/buffer_spec.rb +202 -0
- data/spec/ffi/callback_spec.rb +591 -0
- data/spec/ffi/enum_spec.rb +164 -0
- data/spec/ffi/errno_spec.rb +13 -0
- data/spec/ffi/function_spec.rb +73 -0
- data/spec/ffi/library_spec.rb +148 -0
- data/spec/ffi/managed_struct_spec.rb +56 -0
- data/spec/ffi/number_spec.rb +231 -0
- data/spec/ffi/pointer_spec.rb +195 -0
- data/spec/ffi/rbx/attach_function_spec.rb +27 -0
- data/spec/ffi/rbx/memory_pointer_spec.rb +102 -0
- data/spec/ffi/rbx/spec_helper.rb +1 -0
- data/spec/ffi/rbx/struct_spec.rb +13 -0
- data/spec/ffi/spec_helper.rb +17 -0
- data/spec/ffi/string_spec.rb +103 -0
- data/spec/ffi/struct_callback_spec.rb +64 -0
- data/spec/ffi/struct_initialize_spec.rb +30 -0
- data/spec/ffi/struct_spec.rb +529 -0
- data/spec/ffi/typedef_spec.rb +48 -0
- data/spec/ffi/union_spec.rb +60 -0
- data/spec/ffi/variadic_spec.rb +84 -0
- data/spec/spec.opts +4 -0
- metadata +396 -0
@@ -0,0 +1,2862 @@
|
|
1
|
+
#! /bin/sh
|
2
|
+
|
3
|
+
# ltconfig - Create a system-specific libtool.
|
4
|
+
# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001
|
5
|
+
# Free Software Foundation, Inc.
|
6
|
+
# Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
|
7
|
+
#
|
8
|
+
# This file is free software; you can redistribute it and/or modify it
|
9
|
+
# under the terms of the GNU General Public License as published by
|
10
|
+
# the Free Software Foundation; either version 2 of the License, or
|
11
|
+
# (at your option) any later version.
|
12
|
+
#
|
13
|
+
# This program is distributed in the hope that it will be useful, but
|
14
|
+
# WITHOUT ANY WARRANTY; without even the implied warranty of
|
15
|
+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
16
|
+
# General Public License for more details.
|
17
|
+
#
|
18
|
+
# You should have received a copy of the GNU General Public License
|
19
|
+
# along with this program; if not, write to the Free Software
|
20
|
+
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
21
|
+
#
|
22
|
+
# As a special exception to the GNU General Public License, if you
|
23
|
+
# distribute this file as part of a program that contains a
|
24
|
+
# configuration script generated by Autoconf, you may include it under
|
25
|
+
# the same distribution terms that you use for the rest of that program.
|
26
|
+
|
27
|
+
# A lot of this script is taken from autoconf-2.10.
|
28
|
+
|
29
|
+
# Check that we are running under the correct shell.
|
30
|
+
SHELL=${CONFIG_SHELL-/bin/sh}
|
31
|
+
echo=echo
|
32
|
+
if test "X$1" = X--no-reexec; then
|
33
|
+
# Discard the --no-reexec flag, and continue.
|
34
|
+
shift
|
35
|
+
elif test "X$1" = X--fallback-echo; then
|
36
|
+
# Avoid inline document here, it may be left over
|
37
|
+
:
|
38
|
+
elif test "X`($echo '\t') 2>/dev/null`" = 'X\t'; then
|
39
|
+
# Yippee, $echo works!
|
40
|
+
:
|
41
|
+
else
|
42
|
+
# Restart under the correct shell.
|
43
|
+
exec "$SHELL" "$0" --no-reexec ${1+"$@"}
|
44
|
+
fi
|
45
|
+
|
46
|
+
if test "X$1" = X--fallback-echo; then
|
47
|
+
# used as fallback echo
|
48
|
+
shift
|
49
|
+
cat <<EOF
|
50
|
+
$*
|
51
|
+
EOF
|
52
|
+
exit 0
|
53
|
+
fi
|
54
|
+
|
55
|
+
# Find the correct PATH separator. Usually this is `:', but
|
56
|
+
# DJGPP uses `;' like DOS.
|
57
|
+
if test "X${PATH_SEPARATOR+set}" != Xset; then
|
58
|
+
UNAME=${UNAME-`uname 2>/dev/null`}
|
59
|
+
case X$UNAME in
|
60
|
+
*-DOS) PATH_SEPARATOR=';' ;;
|
61
|
+
*) PATH_SEPARATOR=':' ;;
|
62
|
+
esac
|
63
|
+
fi
|
64
|
+
|
65
|
+
# The HP-UX ksh and POSIX shell print the target directory to stdout
|
66
|
+
# if CDPATH is set.
|
67
|
+
if test "X${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi
|
68
|
+
|
69
|
+
if test "X${echo_test_string+set}" != Xset; then
|
70
|
+
# find a string as large as possible, as long as the shell can cope with it
|
71
|
+
for cmd in 'sed 50q "$0"' 'sed 20q "$0"' 'sed 10q "$0"' 'sed 2q "$0"' 'echo test'; do
|
72
|
+
# expected sizes: less than 2Kb, 1Kb, 512 bytes, 16 bytes, ...
|
73
|
+
if (echo_test_string="`eval $cmd`") 2>/dev/null &&
|
74
|
+
echo_test_string="`eval $cmd`" &&
|
75
|
+
(test "X$echo_test_string" = "X$echo_test_string") 2>/dev/null; then
|
76
|
+
break
|
77
|
+
fi
|
78
|
+
done
|
79
|
+
fi
|
80
|
+
|
81
|
+
if test "X`($echo '\t') 2>/dev/null`" = 'X\t' &&
|
82
|
+
echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` &&
|
83
|
+
test "X$echo_testing_string" = "X$echo_test_string"; then
|
84
|
+
:
|
85
|
+
else
|
86
|
+
# The Solaris, AIX, and Digital Unix default echo programs unquote
|
87
|
+
# backslashes. This makes it impossible to quote backslashes using
|
88
|
+
# echo "$something" | sed 's/\\/\\\\/g'
|
89
|
+
#
|
90
|
+
# So, first we look for a working echo in the user's PATH.
|
91
|
+
|
92
|
+
IFS="${IFS= }"; save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR}"
|
93
|
+
for dir in $PATH /usr/ucb; do
|
94
|
+
if (test -f $dir/echo || test -f $dir/echo$ac_exeext) &&
|
95
|
+
test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' &&
|
96
|
+
echo_testing_string=`($dir/echo "$echo_test_string") 2>/dev/null` &&
|
97
|
+
test "X$echo_testing_string" = "X$echo_test_string"; then
|
98
|
+
echo="$dir/echo"
|
99
|
+
break
|
100
|
+
fi
|
101
|
+
done
|
102
|
+
IFS="$save_ifs"
|
103
|
+
|
104
|
+
if test "X$echo" = Xecho; then
|
105
|
+
# We didn't find a better echo, so look for alternatives.
|
106
|
+
if test "X`(print -r '\t') 2>/dev/null`" = 'X\t' &&
|
107
|
+
echo_testing_string=`(print -r "$echo_test_string") 2>/dev/null` &&
|
108
|
+
test "X$echo_testing_string" = "X$echo_test_string"; then
|
109
|
+
# This shell has a builtin print -r that does the trick.
|
110
|
+
echo='print -r'
|
111
|
+
elif (test -f /bin/ksh || test -f /bin/ksh$ac_exeext) &&
|
112
|
+
test "X$CONFIG_SHELL" != X/bin/ksh; then
|
113
|
+
# If we have ksh, try running ltconfig again with it.
|
114
|
+
ORIGINAL_CONFIG_SHELL="${CONFIG_SHELL-/bin/sh}"
|
115
|
+
export ORIGINAL_CONFIG_SHELL
|
116
|
+
CONFIG_SHELL=/bin/ksh
|
117
|
+
export CONFIG_SHELL
|
118
|
+
exec "$CONFIG_SHELL" "$0" --no-reexec ${1+"$@"}
|
119
|
+
else
|
120
|
+
# Try using printf.
|
121
|
+
echo='printf %s\n'
|
122
|
+
if test "X`($echo '\t') 2>/dev/null`" = 'X\t' &&
|
123
|
+
echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` &&
|
124
|
+
test "X$echo_testing_string" = "X$echo_test_string"; then
|
125
|
+
# Cool, printf works
|
126
|
+
:
|
127
|
+
elif echo_testing_string=`("$ORIGINAL_CONFIG_SHELL" "$0" --fallback-echo '\t') 2>/dev/null` &&
|
128
|
+
test "X$echo_testing_string" = 'X\t' &&
|
129
|
+
echo_testing_string=`("$ORIGINAL_CONFIG_SHELL" "$0" --fallback-echo "$echo_test_string") 2>/dev/null` &&
|
130
|
+
test "X$echo_testing_string" = "X$echo_test_string"; then
|
131
|
+
CONFIG_SHELL="$ORIGINAL_CONFIG_SHELL"
|
132
|
+
export CONFIG_SHELL
|
133
|
+
SHELL="$CONFIG_SHELL"
|
134
|
+
export SHELL
|
135
|
+
echo="$CONFIG_SHELL $0 --fallback-echo"
|
136
|
+
elif echo_testing_string=`("$CONFIG_SHELL" "$0" --fallback-echo '\t') 2>/dev/null` &&
|
137
|
+
test "X$echo_testing_string" = 'X\t' &&
|
138
|
+
echo_testing_string=`("$CONFIG_SHELL" "$0" --fallback-echo "$echo_test_string") 2>/dev/null` &&
|
139
|
+
test "X$echo_testing_string" = "X$echo_test_string"; then
|
140
|
+
echo="$CONFIG_SHELL $0 --fallback-echo"
|
141
|
+
else
|
142
|
+
# maybe with a smaller string...
|
143
|
+
prev=:
|
144
|
+
|
145
|
+
for cmd in 'echo test' 'sed 2q "$0"' 'sed 10q "$0"' 'sed 20q "$0"' 'sed 50q "$0"'; do
|
146
|
+
if (test "X$echo_test_string" = "X`eval $cmd`") 2>/dev/null; then
|
147
|
+
break
|
148
|
+
fi
|
149
|
+
prev="$cmd"
|
150
|
+
done
|
151
|
+
|
152
|
+
if test "$prev" != 'sed 50q "$0"'; then
|
153
|
+
echo_test_string=`eval $prev`
|
154
|
+
|
155
|
+
export echo_test_string
|
156
|
+
exec "${ORIGINAL_CONFIG_SHELL-${CONFIG_SHELL-/bin/sh}}" "$0" ${1+"$@"}
|
157
|
+
else
|
158
|
+
# Oops. We lost completely, so just stick with echo.
|
159
|
+
echo=echo
|
160
|
+
fi
|
161
|
+
fi
|
162
|
+
fi
|
163
|
+
fi
|
164
|
+
fi
|
165
|
+
|
166
|
+
# Sed substitution that helps us do robust quoting. It backslashifies
|
167
|
+
# metacharacters that are still active within double-quoted strings.
|
168
|
+
Xsed='sed -e s/^X//'
|
169
|
+
sed_quote_subst='s/\([\\"\\`$\\\\]\)/\\\1/g'
|
170
|
+
|
171
|
+
# Same as above, but do not quote variable references.
|
172
|
+
double_quote_subst='s/\([\\"\\`\\\\]\)/\\\1/g'
|
173
|
+
|
174
|
+
# Sed substitution to delay expansion of an escaped shell variable in a
|
175
|
+
# double_quote_subst'ed string.
|
176
|
+
delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g'
|
177
|
+
|
178
|
+
# The name of this program.
|
179
|
+
progname=`$echo "X$0" | $Xsed -e 's%^.*/%%'`
|
180
|
+
|
181
|
+
# Constants:
|
182
|
+
PROGRAM=ltconfig
|
183
|
+
PACKAGE=libtool
|
184
|
+
VERSION=1.4a-GCC3.0
|
185
|
+
TIMESTAMP=" (1.641.2.256 2001/05/28 20:09:07 with GCC-local changes)"
|
186
|
+
ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5'
|
187
|
+
ac_link='${CC-cc} -o conftest $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5'
|
188
|
+
rm="rm -f"
|
189
|
+
|
190
|
+
help="Try \`$progname --help' for more information."
|
191
|
+
|
192
|
+
# Global variables:
|
193
|
+
default_ofile=libtool
|
194
|
+
can_build_shared=yes
|
195
|
+
enable_shared=yes
|
196
|
+
# All known linkers require a `.a' archive for static linking (except M$VC,
|
197
|
+
# which needs '.lib').
|
198
|
+
enable_static=yes
|
199
|
+
enable_fast_install=yes
|
200
|
+
enable_dlopen=unknown
|
201
|
+
enable_win32_dll=no
|
202
|
+
pic_mode=default
|
203
|
+
ltmain=
|
204
|
+
silent=
|
205
|
+
srcdir=
|
206
|
+
ac_config_guess=
|
207
|
+
ac_config_sub=
|
208
|
+
host=
|
209
|
+
build=NONE
|
210
|
+
nonopt=NONE
|
211
|
+
ofile="$default_ofile"
|
212
|
+
verify_host=yes
|
213
|
+
tagname=
|
214
|
+
with_gcc=no
|
215
|
+
with_gnu_ld=no
|
216
|
+
need_locks=yes
|
217
|
+
ac_ext=c
|
218
|
+
libext=a
|
219
|
+
cache_file=
|
220
|
+
max_cmd_len=
|
221
|
+
|
222
|
+
## Dependencies to place before and after the object being linked:
|
223
|
+
predep_objects=
|
224
|
+
postdep_objects=
|
225
|
+
predeps=
|
226
|
+
postdeps=
|
227
|
+
compiler_lib_search_path=
|
228
|
+
|
229
|
+
## Link characteristics:
|
230
|
+
allow_undefined_flag=
|
231
|
+
no_undefined_flag=
|
232
|
+
need_lib_prefix=unknown
|
233
|
+
need_version=unknown
|
234
|
+
# when you set need_version to no, make sure it does not cause -set_version
|
235
|
+
# flags to be left without arguments
|
236
|
+
archive_cmds=
|
237
|
+
archive_expsym_cmds=
|
238
|
+
old_archive_from_new_cmds=
|
239
|
+
old_archive_from_expsyms_cmds=
|
240
|
+
striplib=
|
241
|
+
old_striplib=
|
242
|
+
export_dynamic_flag_spec=
|
243
|
+
whole_archive_flag_spec=
|
244
|
+
thread_safe_flag_spec=
|
245
|
+
hardcode_into_libs=no
|
246
|
+
hardcode_libdir_flag_spec=
|
247
|
+
hardcode_libdir_separator=
|
248
|
+
hardcode_direct=no
|
249
|
+
hardcode_minus_L=no
|
250
|
+
hardcode_shlibpath_var=unsupported
|
251
|
+
runpath_var=
|
252
|
+
link_all_deplibs=unknown
|
253
|
+
always_export_symbols=no
|
254
|
+
export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | sed '\''s/.* //'\'' | sort | uniq > $export_symbols'
|
255
|
+
# include_expsyms should be a list of space-separated symbols to be *always*
|
256
|
+
# included in the symbol list
|
257
|
+
include_expsyms=
|
258
|
+
# exclude_expsyms can be an egrep regular expression of symbols to exclude
|
259
|
+
# it will be wrapped by ` (' and `)$', so one must not match beginning or
|
260
|
+
# end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc',
|
261
|
+
# as well as any symbol that contains `d'.
|
262
|
+
exclude_expsyms="_GLOBAL_OFFSET_TABLE_"
|
263
|
+
# Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
|
264
|
+
# platforms (ab)use it in PIC code, but their linkers get confused if
|
265
|
+
# the symbol is explicitly referenced. Since portable code cannot
|
266
|
+
# rely on this symbol name, it's probably fine to never include it in
|
267
|
+
# preloaded symbol tables.
|
268
|
+
extract_expsyms_cmds=
|
269
|
+
|
270
|
+
## Tools:
|
271
|
+
old_AR="$AR"
|
272
|
+
old_AR_FLAGS="$AR_FLAGS"
|
273
|
+
old_CC="$CC"
|
274
|
+
old_CFLAGS="$CFLAGS"
|
275
|
+
old_CPPFLAGS="$CPPFLAGS"
|
276
|
+
old_LDFLAGS="$LDFLAGS"
|
277
|
+
old_LIBS="$LIBS"
|
278
|
+
old_MAGIC_CMD="$MAGIC_CMD"
|
279
|
+
old_LD="$LD"
|
280
|
+
old_LN_S="$LN_S"
|
281
|
+
old_LTCC="$LTCC"
|
282
|
+
old_NM="$NM"
|
283
|
+
old_RANLIB="$RANLIB"
|
284
|
+
old_STRIP="$STRIP"
|
285
|
+
old_AS="$AS"
|
286
|
+
old_DLLTOOL="$DLLTOOL"
|
287
|
+
old_OBJDUMP="$OBJDUMP"
|
288
|
+
old_OBJEXT="$OBJEXT"
|
289
|
+
old_EXEEXT="$EXEEXT"
|
290
|
+
old_reload_flag="$reload_flag"
|
291
|
+
old_deplibs_check_method="$deplibs_check_method"
|
292
|
+
old_file_magic_cmd="$file_magic_cmd"
|
293
|
+
|
294
|
+
# Parse the command line options.
|
295
|
+
args=
|
296
|
+
prev=
|
297
|
+
for option
|
298
|
+
do
|
299
|
+
case $option in
|
300
|
+
-*=*) optarg=`echo "$option" | sed 's/[-_a-zA-Z0-9]*=//'` ;;
|
301
|
+
*) optarg= ;;
|
302
|
+
esac
|
303
|
+
|
304
|
+
# If the previous option needs an argument, assign it.
|
305
|
+
if test -n "$prev"; then
|
306
|
+
eval "$prev=\$option"
|
307
|
+
prev=
|
308
|
+
continue
|
309
|
+
fi
|
310
|
+
|
311
|
+
case $option in
|
312
|
+
--help) cat <<EOM
|
313
|
+
Usage: $progname [OPTION]... LTMAIN [HOST]
|
314
|
+
|
315
|
+
Generate a system-specific libtool script.
|
316
|
+
|
317
|
+
--build configure for building on BUILD [BUILD=HOST]
|
318
|
+
--debug enable verbose shell tracing
|
319
|
+
--disable-shared do not build shared libraries
|
320
|
+
--disable-static do not build static libraries
|
321
|
+
--disable-fast-install do not optimize for fast installation
|
322
|
+
--enable-dlopen enable dlopen support
|
323
|
+
--enable-win32-dll enable building dlls on win32 hosts
|
324
|
+
--help display this help and exit
|
325
|
+
--no-verify do not verify that HOST is a valid host type
|
326
|
+
-o, --output=FILE specify the output file [default=$default_ofile]
|
327
|
+
--quiet same as \`--silent'
|
328
|
+
--silent do not print informational messages
|
329
|
+
--srcdir=DIR find \`config.guess' in DIR
|
330
|
+
--version output version information and exit
|
331
|
+
--add-tag=TAG append an alternate configuration
|
332
|
+
--with-gcc assume that the GNU C compiler will be used
|
333
|
+
--with-gnu-ld assume that the C compiler uses the GNU linker
|
334
|
+
--prefer-pic try to use only PIC objects
|
335
|
+
--prefer-non-pic try to use only non-PIC objects
|
336
|
+
--disable-lock disable file locking
|
337
|
+
--cache-file=FILE configure cache file
|
338
|
+
|
339
|
+
LTMAIN is the \`ltmain.sh' shell script fragment or \`ltmain.c' program
|
340
|
+
that provides basic libtool functionality.
|
341
|
+
|
342
|
+
HOST is the canonical host system name [default=guessed].
|
343
|
+
EOM
|
344
|
+
exit 0
|
345
|
+
;;
|
346
|
+
|
347
|
+
--build) prev=build ;;
|
348
|
+
--build=*) build="$optarg" ;;
|
349
|
+
|
350
|
+
--debug)
|
351
|
+
echo "$progname: enabling shell trace mode"
|
352
|
+
set -x
|
353
|
+
;;
|
354
|
+
|
355
|
+
--disable-shared) enable_shared=no ;;
|
356
|
+
|
357
|
+
--disable-static) enable_static=no ;;
|
358
|
+
|
359
|
+
--disable-fast-install) enable_fast_install=no ;;
|
360
|
+
|
361
|
+
--enable-dlopen) enable_dlopen=yes ;;
|
362
|
+
|
363
|
+
--enable-win32-dll) enable_win32_dll=yes ;;
|
364
|
+
|
365
|
+
--quiet | --silent) silent=yes ;;
|
366
|
+
|
367
|
+
--srcdir) prev=srcdir ;;
|
368
|
+
--srcdir=*) srcdir="$optarg" ;;
|
369
|
+
|
370
|
+
--no-verify) verify_host=no ;;
|
371
|
+
|
372
|
+
--output | -o) prev=ofile ;;
|
373
|
+
--output=*) ofile="$optarg" ;;
|
374
|
+
|
375
|
+
--version) echo "$PROGRAM (GNU $PACKAGE) $VERSION$TIMESTAMP"; exit 0 ;;
|
376
|
+
|
377
|
+
--add-tag) prev=tagname ;;
|
378
|
+
--add-tag=*) tagname="$optarg" ;;
|
379
|
+
|
380
|
+
--with-gcc) with_gcc=yes ;;
|
381
|
+
--with-gnu-ld) with_gnu_ld=yes ;;
|
382
|
+
|
383
|
+
--prefer-pic) pic_mode=yes ;;
|
384
|
+
--prefer-non-pic) pic_mode=no ;;
|
385
|
+
|
386
|
+
--disable-lock) need_locks=no ;;
|
387
|
+
|
388
|
+
--cache-file=*) cache_file="$optarg" ;;
|
389
|
+
|
390
|
+
-*)
|
391
|
+
echo "$progname: unrecognized option \`$option'" 1>&2
|
392
|
+
echo "$help" 1>&2
|
393
|
+
exit 1
|
394
|
+
;;
|
395
|
+
|
396
|
+
*)
|
397
|
+
if test -z "$ltmain"; then
|
398
|
+
ltmain="$option"
|
399
|
+
elif test -z "$host"; then
|
400
|
+
# This generates an unnecessary warning for sparc-sun-solaris4.1.3_U1
|
401
|
+
# if test -n "`echo $option| sed 's/[-a-z0-9.]//g'`"; then
|
402
|
+
# echo "$progname: warning \`$option' is not a valid host type" 1>&2
|
403
|
+
# fi
|
404
|
+
host="$option"
|
405
|
+
else
|
406
|
+
echo "$progname: too many arguments" 1>&2
|
407
|
+
echo "$help" 1>&2
|
408
|
+
exit 1
|
409
|
+
fi ;;
|
410
|
+
esac
|
411
|
+
done
|
412
|
+
|
413
|
+
if test -z "$ltmain"; then
|
414
|
+
echo "$progname: you must specify a LTMAIN file" 1>&2
|
415
|
+
echo "$help" 1>&2
|
416
|
+
exit 1
|
417
|
+
fi
|
418
|
+
|
419
|
+
if test ! -f "$ltmain"; then
|
420
|
+
echo "$progname: \`$ltmain' does not exist" 1>&2
|
421
|
+
echo "$help" 1>&2
|
422
|
+
exit 1
|
423
|
+
fi
|
424
|
+
|
425
|
+
if test -n "$tagname"; then
|
426
|
+
# Check whether tagname contains only valid characters
|
427
|
+
case `$echo "X$tagname" | $Xsed -e 's/[-_ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890,/]//g'` in
|
428
|
+
"") ;;
|
429
|
+
*)
|
430
|
+
echo "$progname: invalid tag name: $tagname" 1>&2
|
431
|
+
exit 1
|
432
|
+
;;
|
433
|
+
esac
|
434
|
+
|
435
|
+
if grep "^### BEGIN LIBTOOL TAG CONFIG: $tagname$" < "$ofile" > /dev/null; then
|
436
|
+
echo "$progname: tag name $tagname already exists" 1>&2
|
437
|
+
exit 1
|
438
|
+
fi
|
439
|
+
|
440
|
+
if test ! -f "$ofile"; then
|
441
|
+
echo "$progname: warning: output file \`$ofile' does not exist" 1>&2
|
442
|
+
fi
|
443
|
+
|
444
|
+
if test -z "$LTCC"; then
|
445
|
+
eval "`$SHELL $ofile --config | grep '^LTCC='`"
|
446
|
+
if test -z "$LTCC"; then
|
447
|
+
echo "$progname: warning: output file \`$ofile' does not look like a libtool script" 1>&2
|
448
|
+
else
|
449
|
+
echo "$progname: warning: using \`LTCC=$LTCC', extracted from \`$ofile'" 1>&2
|
450
|
+
fi
|
451
|
+
fi
|
452
|
+
fi
|
453
|
+
|
454
|
+
# Quote any args containing shell metacharacters.
|
455
|
+
ltconfig_args=
|
456
|
+
for arg
|
457
|
+
do
|
458
|
+
case $arg in
|
459
|
+
*" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?]*)
|
460
|
+
ltconfig_args="$ltconfig_args '$arg'" ;;
|
461
|
+
*) ltconfig_args="$ltconfig_args $arg" ;;
|
462
|
+
esac
|
463
|
+
done
|
464
|
+
|
465
|
+
# A relevant subset of AC_INIT.
|
466
|
+
|
467
|
+
# File descriptor usage:
|
468
|
+
# 0 standard input
|
469
|
+
# 1 file creation
|
470
|
+
# 2 errors and warnings
|
471
|
+
# 3 some systems may open it to /dev/tty
|
472
|
+
# 4 used on the Kubota Titan
|
473
|
+
# 5 compiler messages saved in config.log
|
474
|
+
# 6 checking for... messages and results
|
475
|
+
if test "$silent" = yes; then
|
476
|
+
exec 6>/dev/null
|
477
|
+
else
|
478
|
+
exec 6>&1
|
479
|
+
fi
|
480
|
+
exec 5>>./config.log
|
481
|
+
|
482
|
+
# NLS nuisances.
|
483
|
+
# Only set LANG and LC_ALL to C if already set.
|
484
|
+
# These must not be set unconditionally because not all systems understand
|
485
|
+
# e.g. LANG=C (notably SCO).
|
486
|
+
if test "X${LC_ALL+set}" = Xset; then LC_ALL=C; export LC_ALL; fi
|
487
|
+
if test "X${LANG+set}" = Xset; then LANG=C; export LANG; fi
|
488
|
+
|
489
|
+
if test -n "$cache_file" && test -r "$cache_file" && test -f "$cache_file"; then
|
490
|
+
echo "loading cache $cache_file within ltconfig"
|
491
|
+
. $cache_file
|
492
|
+
fi
|
493
|
+
|
494
|
+
if (echo "testing\c"; echo 1,2,3) | grep c >/dev/null; then
|
495
|
+
# Stardent Vistra SVR4 grep lacks -e, says ghazi@caip.rutgers.edu.
|
496
|
+
if (echo -n testing; echo 1,2,3) | sed s/-n/xn/ | grep xn >/dev/null; then
|
497
|
+
ac_n= ac_c='
|
498
|
+
' ac_t=' '
|
499
|
+
else
|
500
|
+
ac_n=-n ac_c= ac_t=
|
501
|
+
fi
|
502
|
+
else
|
503
|
+
ac_n= ac_c='\c' ac_t=
|
504
|
+
fi
|
505
|
+
|
506
|
+
if test -z "$srcdir"; then
|
507
|
+
# Assume the source directory is the same one as the path to LTMAIN.
|
508
|
+
srcdir=`$echo "X$ltmain" | $Xsed -e 's%/[^/]*$%%'`
|
509
|
+
test "$srcdir" = "$ltmain" && srcdir=.
|
510
|
+
fi
|
511
|
+
|
512
|
+
trap "$rm conftest*; exit 1" 1 2 15
|
513
|
+
if test "$verify_host" = yes; then
|
514
|
+
# Check for config.guess and config.sub.
|
515
|
+
ac_aux_dir=
|
516
|
+
for ac_dir in $srcdir $srcdir/.. $srcdir/../..; do
|
517
|
+
if test -f $ac_dir/config.guess; then
|
518
|
+
ac_aux_dir=$ac_dir
|
519
|
+
break
|
520
|
+
fi
|
521
|
+
done
|
522
|
+
if test -z "$ac_aux_dir"; then
|
523
|
+
echo "$progname: cannot find config.guess in $srcdir $srcdir/.. $srcdir/../.." 1>&2
|
524
|
+
echo "$help" 1>&2
|
525
|
+
exit 1
|
526
|
+
fi
|
527
|
+
ac_config_guess=$ac_aux_dir/config.guess
|
528
|
+
ac_config_sub=$ac_aux_dir/config.sub
|
529
|
+
|
530
|
+
# Make sure we can run config.sub.
|
531
|
+
if $SHELL $ac_config_sub sun4 >/dev/null 2>&1; then :
|
532
|
+
else
|
533
|
+
echo "$progname: cannot run $ac_config_sub" 1>&2
|
534
|
+
echo "$help" 1>&2
|
535
|
+
exit 1
|
536
|
+
fi
|
537
|
+
|
538
|
+
echo $ac_n "checking host system type""... $ac_c" 1>&6
|
539
|
+
|
540
|
+
host_alias=$host
|
541
|
+
case $host_alias in
|
542
|
+
"")
|
543
|
+
# Force config.guess to use the C compiler.
|
544
|
+
# CC_FOR_BUILD overrides the CC variable in config.guess but I had
|
545
|
+
# problems with it so do it this way for now.
|
546
|
+
CC="$LTCC"
|
547
|
+
|
548
|
+
if host_alias=`$SHELL $ac_config_guess`; then :
|
549
|
+
else
|
550
|
+
echo "$progname: cannot guess host type; you must specify one" 1>&2
|
551
|
+
echo "$help" 1>&2
|
552
|
+
exit 1
|
553
|
+
fi
|
554
|
+
|
555
|
+
# Restore the C compiler.
|
556
|
+
CC="$old_CC"
|
557
|
+
;;
|
558
|
+
esac
|
559
|
+
host=`$SHELL $ac_config_sub $host_alias`
|
560
|
+
echo "$ac_t$host" 1>&6
|
561
|
+
|
562
|
+
# Make sure the host verified.
|
563
|
+
test -z "$host" && exit 1
|
564
|
+
|
565
|
+
# Check for the build system type
|
566
|
+
echo $ac_n "checking build system type... $ac_c" 1>&6
|
567
|
+
|
568
|
+
build_alias=$build
|
569
|
+
case $build_alias in
|
570
|
+
NONE)
|
571
|
+
case $nonopt in
|
572
|
+
NONE) build_alias=$host_alias ;;
|
573
|
+
*) build_alias=$nonopt ;;
|
574
|
+
esac ;;
|
575
|
+
esac
|
576
|
+
|
577
|
+
build=`$SHELL $ac_config_sub $build_alias`
|
578
|
+
build_cpu=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
|
579
|
+
build_vendor=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
|
580
|
+
build_os=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
|
581
|
+
echo "$ac_t""$build" 1>&6
|
582
|
+
|
583
|
+
elif test -z "$host"; then
|
584
|
+
echo "$progname: you must specify a host type if you use \`--no-verify'" 1>&2
|
585
|
+
echo "$help" 1>&2
|
586
|
+
exit 1
|
587
|
+
else
|
588
|
+
host_alias=$host
|
589
|
+
build_alias=$host_alias
|
590
|
+
build=$host
|
591
|
+
fi
|
592
|
+
|
593
|
+
if test x"$host" != x"$build"; then
|
594
|
+
ac_tool_prefix=${host_alias}-
|
595
|
+
else
|
596
|
+
ac_tool_prefix=
|
597
|
+
fi
|
598
|
+
|
599
|
+
host_cpu=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
|
600
|
+
host_vendor=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
|
601
|
+
host_os=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
|
602
|
+
|
603
|
+
# Transform linux* to *-*-linux-gnu*, to support old configure scripts.
|
604
|
+
case $host_os in
|
605
|
+
linux-gnu*) ;;
|
606
|
+
linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'`
|
607
|
+
esac
|
608
|
+
|
609
|
+
case $host_os in
|
610
|
+
aix3*)
|
611
|
+
# AIX sometimes has problems with the GCC collect2 program. For some
|
612
|
+
# reason, if we set the COLLECT_NAMES environment variable, the problems
|
613
|
+
# vanish in a puff of smoke.
|
614
|
+
if test "X${COLLECT_NAMES+set}" != Xset; then
|
615
|
+
COLLECT_NAMES=
|
616
|
+
export COLLECT_NAMES
|
617
|
+
fi
|
618
|
+
;;
|
619
|
+
esac
|
620
|
+
|
621
|
+
# Determine commands to create old-style static archives.
|
622
|
+
old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs$old_deplibs'
|
623
|
+
old_postinstall_cmds='chmod 644 $oldlib'
|
624
|
+
old_postuninstall_cmds=
|
625
|
+
|
626
|
+
if test -n "$RANLIB"; then
|
627
|
+
old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib"
|
628
|
+
old_postinstall_cmds="\$RANLIB \$oldlib~$old_postinstall_cmds"
|
629
|
+
fi
|
630
|
+
|
631
|
+
# Source the script associated with the $tagname tag configuration.
|
632
|
+
if test -n "$tagname"; then
|
633
|
+
. $ltmain
|
634
|
+
else
|
635
|
+
# FIXME: We should use a variable here
|
636
|
+
# Configure for a C compiler
|
637
|
+
. $srcdir/ltcf-c.sh
|
638
|
+
fi
|
639
|
+
|
640
|
+
# Set sane defaults for various variables
|
641
|
+
test -z "$AR" && AR=ar
|
642
|
+
test -z "$AR_FLAGS" && AR_FLAGS=cru
|
643
|
+
test -z "$AS" && AS=as
|
644
|
+
test -z "$CC" && CC=cc
|
645
|
+
test -z "$DLLTOOL" && DLLTOOL=dlltool
|
646
|
+
test -z "$MAGIC_CMD" && MAGIC_CMD=file
|
647
|
+
test -z "$LD" && LD=ld
|
648
|
+
test -z "$LN_S" && LN_S="ln -s"
|
649
|
+
test -z "$NM" && NM=nm
|
650
|
+
test -z "$OBJDUMP" && OBJDUMP=objdump
|
651
|
+
test -z "$RANLIB" && RANLIB=:
|
652
|
+
test -z "$STRIP" && STRIP=:
|
653
|
+
test -z "$objext" && objext=o
|
654
|
+
|
655
|
+
echo $ac_n "checking for objdir... $ac_c" 1>&6
|
656
|
+
rm -f .libs 2>/dev/null
|
657
|
+
mkdir .libs 2>/dev/null
|
658
|
+
if test -d .libs; then
|
659
|
+
objdir=.libs
|
660
|
+
else
|
661
|
+
# MS-DOS does not allow filenames that begin with a dot.
|
662
|
+
objdir=_libs
|
663
|
+
fi
|
664
|
+
rmdir .libs 2>/dev/null
|
665
|
+
echo "$ac_t$objdir" 1>&6
|
666
|
+
|
667
|
+
# If no C compiler was specified, use CC.
|
668
|
+
LTCC=${LTCC-"$CC"}
|
669
|
+
|
670
|
+
# Allow CC to be a program name with arguments.
|
671
|
+
set dummy $CC
|
672
|
+
compiler="$2"
|
673
|
+
|
674
|
+
# We assume here that the value for ac_cv_prog_cc_pic will not be cached
|
675
|
+
# in isolation, and that seeing it set (from the cache) indicates that
|
676
|
+
# the associated values are set (in the cache) correctly too.
|
677
|
+
echo $ac_n "checking for $compiler option to produce PIC... $ac_c" 1>&6
|
678
|
+
echo "$progname:678:checking for $compiler option to produce PIC" 1>&5
|
679
|
+
|
680
|
+
if test -z "$ac_cv_prog_cc_pic"; then
|
681
|
+
echo "$ac_t"none 1>&6
|
682
|
+
else
|
683
|
+
echo "$ac_t""$ac_cv_prog_cc_pic" 1>&6
|
684
|
+
|
685
|
+
# Check to make sure the pic_flag actually works.
|
686
|
+
echo $ac_n "checking if $compiler PIC flag $ac_cv_prog_cc_pic works... $ac_c" 1>&6
|
687
|
+
echo "$progname:687:checking that $compiler PIC flag $ac_cv_prog_cc_pic works." 1>&5
|
688
|
+
if test "X${ac_cv_prog_cc_pic_works+set}" = Xset && \
|
689
|
+
test "X${ac_cv_prog_cc_pic_works}" != X; then
|
690
|
+
echo $ac_n "(cached) $ac_c" 1>&6
|
691
|
+
else
|
692
|
+
ac_cv_prog_cc_pic_works=yes
|
693
|
+
$rm conftest*
|
694
|
+
echo $lt_simple_compile_test_code > conftest.$ac_ext
|
695
|
+
save_CFLAGS="$CFLAGS"
|
696
|
+
CFLAGS="$CFLAGS $ac_cv_prog_cc_pic -DPIC"
|
697
|
+
if { (eval echo $progname:697: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>conftest.err; } && test -s conftest.$objext; then
|
698
|
+
# Append any warnings to the config.log.
|
699
|
+
cat conftest.err 1>&5
|
700
|
+
|
701
|
+
case $host_os in
|
702
|
+
hpux9* | hpux10* | hpux11*)
|
703
|
+
# On HP-UX, both CC and GCC only warn that PIC is supported... then
|
704
|
+
# they create non-PIC objects. So, if there were any warnings, we
|
705
|
+
# assume that PIC is not supported.
|
706
|
+
if test -s conftest.err; then
|
707
|
+
ac_cv_prog_cc_pic_works=no
|
708
|
+
ac_cv_prog_cc_can_build_shared=no
|
709
|
+
ac_cv_prog_cc_pic=
|
710
|
+
else
|
711
|
+
ac_cv_prog_cc_pic_works=yes
|
712
|
+
ac_cv_prog_cc_pic=" $ac_cv_prog_cc_pic"
|
713
|
+
fi
|
714
|
+
;;
|
715
|
+
*)
|
716
|
+
ac_cv_prog_cc_pic_works=yes
|
717
|
+
ac_cv_prog_cc_pic=" $ac_cv_prog_cc_pic"
|
718
|
+
;;
|
719
|
+
esac
|
720
|
+
else
|
721
|
+
# Append any errors to the config.log.
|
722
|
+
cat conftest.err 1>&5
|
723
|
+
ac_cv_prog_cc_pic_works=no
|
724
|
+
ac_cv_prog_cc_can_build_shared=no
|
725
|
+
ac_cv_prog_cc_pic=
|
726
|
+
fi
|
727
|
+
CFLAGS="$save_CFLAGS"
|
728
|
+
$rm conftest*
|
729
|
+
fi
|
730
|
+
# Belt *and* braces to stop my trousers falling down:
|
731
|
+
if test "X$ac_cv_prog_cc_pic_works" = Xno; then
|
732
|
+
ac_cv_prog_cc_pic=
|
733
|
+
ac_cv_prog_cc_can_build_shared=no
|
734
|
+
fi
|
735
|
+
echo "$ac_t""$ac_cv_prog_cc_pic_works" 1>&6
|
736
|
+
fi
|
737
|
+
|
738
|
+
# Check for any special shared library compilation flags.
|
739
|
+
if test -n "$ac_cv_prog_cc_shlib"; then
|
740
|
+
echo "$progname: warning: \`$CC' requires \`$ac_cv_prog_cc_shlib' to build shared libraries" 1>&2
|
741
|
+
if echo "$old_CC $old_CFLAGS " | egrep -e "[ ]$ac_cv_prog_cc_shlib[ ]" >/dev/null; then :
|
742
|
+
else
|
743
|
+
echo "$progname: add \`$ac_cv_prog_cc_shlib' to the CC or CFLAGS env variable and reconfigure" 1>&2
|
744
|
+
ac_cv_prog_cc_can_build_shared=no
|
745
|
+
fi
|
746
|
+
fi
|
747
|
+
|
748
|
+
echo $ac_n "checking if $compiler static flag $ac_cv_prog_cc_static works... $ac_c" 1>&6
|
749
|
+
echo "$progname:749: checking if $compiler static flag $ac_cv_prog_cc_static works" >&5
|
750
|
+
if test "X${ac_cv_prog_cc_static_works+set}" = Xset && \
|
751
|
+
test "X${ac_cv_prog_cc_static_works}" != X; then
|
752
|
+
echo $ac_n "(cached) $ac_c" 1>&6
|
753
|
+
else
|
754
|
+
$rm conftest*
|
755
|
+
echo $lt_simple_link_test_code > conftest.$ac_ext
|
756
|
+
save_LDFLAGS="$LDFLAGS"
|
757
|
+
LDFLAGS="$LDFLAGS $ac_cv_prog_cc_static"
|
758
|
+
if { (eval echo $progname:758: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
|
759
|
+
ac_cv_prog_cc_static_works=yes
|
760
|
+
else
|
761
|
+
ac_cv_prog_cc_static_works=no
|
762
|
+
ac_cv_prog_cc_static=
|
763
|
+
fi
|
764
|
+
LDFLAGS="$save_LDFLAGS"
|
765
|
+
$rm conftest*
|
766
|
+
fi
|
767
|
+
# Belt *and* braces to stop my trousers falling down:
|
768
|
+
if test "X$ac_cv_prog_cc_static_works" = Xno; then
|
769
|
+
ac_cv_prog_cc_static=
|
770
|
+
fi
|
771
|
+
echo "$ac_t""$ac_cv_prog_cc_static_works" 1>&6
|
772
|
+
pic_flag="$ac_cv_prog_cc_pic"
|
773
|
+
special_shlib_compile_flags="$ac_cv_prog_cc_shlib"
|
774
|
+
wl="$ac_cv_prog_cc_wl"
|
775
|
+
link_static_flag="$ac_cv_prog_cc_static"
|
776
|
+
no_builtin_flag="$ac_cv_prog_cc_no_builtin"
|
777
|
+
can_build_shared="$ac_cv_prog_cc_can_build_shared"
|
778
|
+
|
779
|
+
# find the maximum length of command line arguments
|
780
|
+
echo "$progname:780: finding the maximum length of command line arguments" 1>&5
|
781
|
+
echo $ac_n "finding the maximum length of command line arguments... $ac_c" 1>&6
|
782
|
+
if test "${lt_cv_sys_max_cmd_len+set}" = set; then
|
783
|
+
echo $ac_n "(cached) $ac_c" 1>&6
|
784
|
+
else
|
785
|
+
i=0
|
786
|
+
testring="ABCD"
|
787
|
+
# If test is not a shell built-in, we'll probably end up computing a
|
788
|
+
# maximum length that is only half of the actual maximum length, but
|
789
|
+
# we can't tell.
|
790
|
+
while test "X"`$CONFIG_SHELL $0 --fallback-echo "X$testring" 2>/dev/null` \
|
791
|
+
= "XX$testring" &&
|
792
|
+
new_result=`expr "X$testring" : ".*" 2>&1` &&
|
793
|
+
lt_cv_sys_max_cmd_len=$new_result &&
|
794
|
+
test $i != 17 # 1/2 MB should be enough
|
795
|
+
do
|
796
|
+
i=`expr $i + 1`
|
797
|
+
testring=$testring$testring
|
798
|
+
done
|
799
|
+
testring=
|
800
|
+
# add a significant safety factor because C++ compilers can tack on massive amounts
|
801
|
+
# of additional arguments before passing them to the linker. 1/4 should be good.
|
802
|
+
len=`expr $lt_cv_sys_max_cmd_len \/ 4`
|
803
|
+
lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len - $len`
|
804
|
+
fi
|
805
|
+
echo "$progname:@lineno@: result: $lt_cv_sys_max_cmd_len" 1>&5
|
806
|
+
echo "${ac_t}$lt_cv_sys_max_cmd_len" 1>&6
|
807
|
+
|
808
|
+
if test -n $lt_cv_sys_max_cmd_len ; then
|
809
|
+
max_cmd_len=$lt_cv_sys_max_cmd_len
|
810
|
+
else
|
811
|
+
max_cmd_len=none
|
812
|
+
fi
|
813
|
+
|
814
|
+
# Check to see if options -o and -c are simultaneously supported by compiler
|
815
|
+
echo $ac_n "checking if $compiler supports -c -o file.$objext... $ac_c" 1>&6
|
816
|
+
if test "${lt_cv_compiler_c_o+set}" = set; then
|
817
|
+
echo $ac_n "(cached) $ac_c" 1>&6
|
818
|
+
else
|
819
|
+
$rm -r conftest 2>/dev/null
|
820
|
+
mkdir conftest
|
821
|
+
cd conftest
|
822
|
+
$rm conftest*
|
823
|
+
echo $lt_simple_compile_test_code > conftest.$ac_ext
|
824
|
+
mkdir out
|
825
|
+
# According to Tom Tromey, Ian Lance Taylor reported there are C compilers
|
826
|
+
# that will create temporary files in the current directory regardless of
|
827
|
+
# the output directory. Thus, making CWD read-only will cause this test
|
828
|
+
# to fail, enabling locking or at least warning the user not to do parallel
|
829
|
+
# builds.
|
830
|
+
chmod -w .
|
831
|
+
save_CFLAGS="$CFLAGS"
|
832
|
+
CFLAGS="$CFLAGS -o out/conftest2.$objext"
|
833
|
+
echo "$progname:833: checking if $compiler supports -c -o file.$objext" >&5
|
834
|
+
if { (eval echo $progname:834: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>out/conftest.err; } && test -s out/conftest2.$objext; then
|
835
|
+
|
836
|
+
# The compiler can only warn and ignore the option if not recognized
|
837
|
+
# So say no if there are warnings
|
838
|
+
if test -s out/conftest.err; then
|
839
|
+
lt_cv_compiler_c_o=no
|
840
|
+
else
|
841
|
+
lt_cv_compiler_c_o=yes
|
842
|
+
fi
|
843
|
+
else
|
844
|
+
# Append any errors to the config.log.
|
845
|
+
cat out/conftest.err 1>&5
|
846
|
+
lt_cv_compiler_c_o=no
|
847
|
+
fi
|
848
|
+
CFLAGS="$save_CFLAGS"
|
849
|
+
chmod u+w .
|
850
|
+
$rm conftest* out/*
|
851
|
+
rmdir out
|
852
|
+
cd ..
|
853
|
+
rmdir conftest
|
854
|
+
$rm -r conftest 2>/dev/null
|
855
|
+
fi
|
856
|
+
compiler_c_o=$lt_cv_compiler_c_o
|
857
|
+
echo "${ac_t}$compiler_c_o" 1>&6
|
858
|
+
|
859
|
+
# Check to see if we can do hard links to lock some files if needed
|
860
|
+
hard_links="nottested"
|
861
|
+
if test "$compiler_c_o" = no && test "$need_locks" != no; then
|
862
|
+
# do not overwrite the value of need_locks provided by the user
|
863
|
+
echo $ac_n "checking if we can lock with hard links... $ac_c" 1>&6
|
864
|
+
hard_links=yes
|
865
|
+
$rm conftest*
|
866
|
+
ln conftest.a conftest.b 2>/dev/null && hard_links=no
|
867
|
+
touch conftest.a
|
868
|
+
ln conftest.a conftest.b 2>&5 || hard_links=no
|
869
|
+
ln conftest.a conftest.b 2>/dev/null && hard_links=no
|
870
|
+
echo "$ac_t$hard_links" 1>&6
|
871
|
+
$rm conftest*
|
872
|
+
if test "$hard_links" = no; then
|
873
|
+
echo "*** WARNING: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" >&2
|
874
|
+
need_locks=warn
|
875
|
+
fi
|
876
|
+
else
|
877
|
+
need_locks=no
|
878
|
+
fi
|
879
|
+
|
880
|
+
if test "$with_gcc" = yes; then
|
881
|
+
# Check to see if options -fno-rtti -fno-exceptions are supported by compiler
|
882
|
+
echo $ac_n "checking if $compiler supports -fno-rtti -fno-exceptions ... $ac_c" 1>&6
|
883
|
+
$rm conftest*
|
884
|
+
echo $lt_simple_compile_test_code > conftest.$ac_ext
|
885
|
+
save_CFLAGS="$CFLAGS"
|
886
|
+
CFLAGS="$CFLAGS -fno-rtti -fno-exceptions -c conftest.$ac_ext"
|
887
|
+
echo "$progname:887: checking if $compiler supports -fno-rtti -fno-exceptions" >&5
|
888
|
+
if { (eval echo $progname:888: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>conftest.err; } && test -s conftest.$objext; then
|
889
|
+
|
890
|
+
# The compiler can only warn and ignore the option if not recognized
|
891
|
+
# So say no if there are warnings
|
892
|
+
if test -s conftest.err; then
|
893
|
+
echo "$ac_t"no 1>&6
|
894
|
+
compiler_rtti_exceptions=no
|
895
|
+
else
|
896
|
+
echo "$ac_t"yes 1>&6
|
897
|
+
compiler_rtti_exceptions=yes
|
898
|
+
fi
|
899
|
+
else
|
900
|
+
# Append any errors to the config.log.
|
901
|
+
cat conftest.err 1>&5
|
902
|
+
compiler_rtti_exceptions=no
|
903
|
+
echo "$ac_t"no 1>&6
|
904
|
+
fi
|
905
|
+
CFLAGS="$save_CFLAGS"
|
906
|
+
$rm conftest*
|
907
|
+
|
908
|
+
if test "$compiler_rtti_exceptions" = "yes"; then
|
909
|
+
no_builtin_flag=' -fno-builtin -fno-rtti -fno-exceptions'
|
910
|
+
else
|
911
|
+
no_builtin_flag=' -fno-builtin'
|
912
|
+
fi
|
913
|
+
|
914
|
+
fi
|
915
|
+
|
916
|
+
# See if the linker supports building shared libraries.
|
917
|
+
echo $ac_n "checking whether the linker ($LD) supports shared libraries... $ac_c" 1>&6
|
918
|
+
|
919
|
+
echo "$ac_t$ld_shlibs" 1>&6
|
920
|
+
test "$ld_shlibs" = no && can_build_shared=no
|
921
|
+
|
922
|
+
# Check hardcoding attributes.
|
923
|
+
echo $ac_n "checking how to hardcode library paths into programs... $ac_c" 1>&6
|
924
|
+
hardcode_action=
|
925
|
+
if test -n "$hardcode_libdir_flag_spec" || \
|
926
|
+
test -n "$runpath_var"; then
|
927
|
+
|
928
|
+
# We can hardcode non-existant directories.
|
929
|
+
if test "$hardcode_direct" != no &&
|
930
|
+
# If the only mechanism to avoid hardcoding is shlibpath_var, we
|
931
|
+
# have to relink, otherwise we might link with an installed library
|
932
|
+
# when we should be linking with a yet-to-be-installed one
|
933
|
+
## test "$hardcode_shlibpath_var" != no &&
|
934
|
+
test "$hardcode_minus_L" != no; then
|
935
|
+
# Linking always hardcodes the temporary library directory.
|
936
|
+
hardcode_action=relink
|
937
|
+
else
|
938
|
+
# We can link without hardcoding, and we can hardcode nonexisting dirs.
|
939
|
+
hardcode_action=immediate
|
940
|
+
fi
|
941
|
+
else
|
942
|
+
# We cannot hardcode anything, or else we can only hardcode existing
|
943
|
+
# directories.
|
944
|
+
hardcode_action=unsupported
|
945
|
+
fi
|
946
|
+
echo "$ac_t$hardcode_action" 1>&6
|
947
|
+
|
948
|
+
echo $ac_n "checking whether stripping libraries is possible... $ac_c" 1>&6
|
949
|
+
if test -n "$STRIP" && $STRIP -V 2>&1 | grep "GNU strip" >/dev/null; then
|
950
|
+
test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"
|
951
|
+
test -z "$striplib" && striplib="$STRIP --strip-unneeded"
|
952
|
+
echo "${ac_t}yes" 1>&6
|
953
|
+
else
|
954
|
+
echo "${ac_t}no" 1>&6
|
955
|
+
fi
|
956
|
+
|
957
|
+
case $reload_flag in
|
958
|
+
"" | " "*) ;;
|
959
|
+
*) reload_flag=" $reload_flag" ;;
|
960
|
+
esac
|
961
|
+
reload_cmds='$LD$reload_flag -o $output$reload_objs'
|
962
|
+
test -z "$deplibs_check_method" && deplibs_check_method=unknown
|
963
|
+
|
964
|
+
# PORTME Fill in your ld.so characteristics
|
965
|
+
library_names_spec=
|
966
|
+
libname_spec='lib$name'
|
967
|
+
soname_spec=
|
968
|
+
shrext=".so"
|
969
|
+
postinstall_cmds=
|
970
|
+
postuninstall_cmds=
|
971
|
+
finish_cmds=
|
972
|
+
finish_eval=
|
973
|
+
shlibpath_var=
|
974
|
+
shlibpath_overrides_runpath=unknown
|
975
|
+
version_type=none
|
976
|
+
dynamic_linker="$host_os ld.so"
|
977
|
+
sys_lib_dlsearch_path_spec="/lib /usr/lib"
|
978
|
+
sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
|
979
|
+
|
980
|
+
echo $ac_n "checking dynamic linker characteristics... $ac_c" 1>&6
|
981
|
+
case $host_os in
|
982
|
+
aix3*)
|
983
|
+
version_type=linux
|
984
|
+
library_names_spec='${libname}${release}.so$versuffix $libname.a'
|
985
|
+
shlibpath_var=LIBPATH
|
986
|
+
|
987
|
+
# AIX 3 has no versioning support, so we append a major version to the name.
|
988
|
+
soname_spec='${libname}${release}.so$major'
|
989
|
+
;;
|
990
|
+
|
991
|
+
aix4* | aix5*)
|
992
|
+
version_type=linux
|
993
|
+
if test "$host_cpu" = ia64; then
|
994
|
+
# AIX 5 supports IA64
|
995
|
+
library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
|
996
|
+
shlibpath_var=LD_LIBRARY_PATH
|
997
|
+
else
|
998
|
+
# AIX (on Power*) has no versioning support, so currently we can not hardcode correct
|
999
|
+
# soname into executable. Probably we can add versioning support to
|
1000
|
+
# collect2, so additional links can be useful in future.
|
1001
|
+
# We preserve .a as extension for shared libraries though AIX4.2
|
1002
|
+
# and later linker supports .so
|
1003
|
+
if test "$aix_use_runtimelinking" = yes; then
|
1004
|
+
# If using run time linking (on AIX 4.2 or later) use lib<name>.so instead of
|
1005
|
+
# lib<name>.a to let people know that these are not typical AIX shared libraries.
|
1006
|
+
library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
|
1007
|
+
else
|
1008
|
+
# We preserve .a as extension for shared libraries though AIX4.2
|
1009
|
+
# and later when we are not doing run time linking.
|
1010
|
+
library_names_spec='${libname}${release}.a $libname.a'
|
1011
|
+
soname_spec='${libname}${release}.so$major'
|
1012
|
+
fi
|
1013
|
+
# If we're using GNU nm, then we don't want the "-C" option.
|
1014
|
+
# -C means demangle to AIX nm, but means don't demangle with GNU nm
|
1015
|
+
if $NM -V 2>&1 | egrep '(GNU)' > /dev/null; then
|
1016
|
+
export_symbols_cmds='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$2 == "T") || (\$2 == "D") || (\$2 == "B")) && (substr(\$3,1,1) != ".")) { print \$3 } }'\'' | sort -u > $export_symbols'
|
1017
|
+
else
|
1018
|
+
export_symbols_cmds='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$2 == "T") || (\$2 == "D") || (\$2 == "B")) && (substr(\$3,1,1) != ".")) { print \$3 } }'\'' | sort -u > $export_symbols'
|
1019
|
+
fi
|
1020
|
+
shlibpath_var=LIBPATH
|
1021
|
+
deplibs_check_method=pass_all
|
1022
|
+
case $host_os in
|
1023
|
+
aix4 | aix4.[01] | aix4.[01].*)
|
1024
|
+
if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
|
1025
|
+
echo ' yes '
|
1026
|
+
echo '#endif'; } | ${CC} -E - | grep yes > /dev/null; then
|
1027
|
+
:
|
1028
|
+
else
|
1029
|
+
# With GCC up to 2.95.x, collect2 would create an import file
|
1030
|
+
# for dependence libraries. The import file would start with
|
1031
|
+
# the line `#! .'. This would cause the generated library to
|
1032
|
+
# depend on `.', always an invalid library. This was fixed in
|
1033
|
+
# development snapshots of GCC prior to 3.0.
|
1034
|
+
can_build_shared=no
|
1035
|
+
fi
|
1036
|
+
;;
|
1037
|
+
esac
|
1038
|
+
fi
|
1039
|
+
;;
|
1040
|
+
|
1041
|
+
amigaos*)
|
1042
|
+
library_names_spec='$libname.ixlibrary $libname.a'
|
1043
|
+
# Create ${libname}_ixlibrary.a entries in /sys/libs.
|
1044
|
+
finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$echo "X$lib" | $Xsed -e '\''s%^.*/\([^/]*\)\.ixlibrary$%\1%'\''`; test $rm /sys/libs/${libname}_ixlibrary.a; $show "(cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a)"; (cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a) || exit 1; done'
|
1045
|
+
;;
|
1046
|
+
|
1047
|
+
beos*)
|
1048
|
+
library_names_spec='${libname}.so'
|
1049
|
+
dynamic_linker="$host_os ld.so"
|
1050
|
+
shlibpath_var=LIBRARY_PATH
|
1051
|
+
lt_cv_dlopen="load_add_on"
|
1052
|
+
lt_cv_dlopen_libs=
|
1053
|
+
lt_cv_dlopen_self=yes
|
1054
|
+
;;
|
1055
|
+
|
1056
|
+
bsdi4*)
|
1057
|
+
version_type=linux
|
1058
|
+
need_version=no
|
1059
|
+
library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
|
1060
|
+
soname_spec='${libname}${release}.so$major'
|
1061
|
+
finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
|
1062
|
+
shlibpath_var=LD_LIBRARY_PATH
|
1063
|
+
sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
|
1064
|
+
sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
|
1065
|
+
export_dynamic_flag_spec=-rdynamic
|
1066
|
+
# the default ld.so.conf also contains /usr/contrib/lib and
|
1067
|
+
# /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
|
1068
|
+
# libtool to hard-code these into programs
|
1069
|
+
;;
|
1070
|
+
|
1071
|
+
cygwin* | mingw* | pw32*)
|
1072
|
+
version_type=windows
|
1073
|
+
need_version=no
|
1074
|
+
need_lib_prefix=no
|
1075
|
+
case $with_gcc,$host_os in
|
1076
|
+
yes,cygwin*)
|
1077
|
+
library_names_spec='$libname.dll.a'
|
1078
|
+
soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | [sed -e 's/[.]/-/g']`${versuffix}.dll'
|
1079
|
+
postinstall_cmds='dlpath=`bash 2>&1 -c '\''. $dir/${file}i; echo \$dlname'\''`~
|
1080
|
+
dldir=$destdir/`dirname \$dlpath`~
|
1081
|
+
test -d \$dldir || mkdir -p \$dldir~
|
1082
|
+
$install_prog .libs/$dlname \$dldir/$dlname'
|
1083
|
+
postuninstall_cmds='dldll=`bash 2>&1 -c '\''. $file; echo \$dlname'\''`~
|
1084
|
+
dlpath=$dir/\$dldll; $rm \$dlpath'
|
1085
|
+
;;
|
1086
|
+
yes,mingw*)
|
1087
|
+
library_names_spec='${libname}`echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll'
|
1088
|
+
sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | sed -e "s/^libraries://" -e "s/;/ /g"`
|
1089
|
+
;;
|
1090
|
+
yes,pw32*)
|
1091
|
+
library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll'
|
1092
|
+
;;
|
1093
|
+
*)
|
1094
|
+
library_names_spec='${libname}`echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll $libname.lib'
|
1095
|
+
;;
|
1096
|
+
esac
|
1097
|
+
dynamic_linker='Win32 ld.exe'
|
1098
|
+
# FIXME: first we should search . and the directory the executable is in
|
1099
|
+
shlibpath_var=PATH
|
1100
|
+
lt_cv_dlopen="LoadLibrary"
|
1101
|
+
lt_cv_dlopen_libs=
|
1102
|
+
;;
|
1103
|
+
|
1104
|
+
darwin* | rhapsody*)
|
1105
|
+
dynamic_linker="$host_os dyld"
|
1106
|
+
lt_cv_dlopen="dyld"
|
1107
|
+
lt_cv_dlopen_libs=
|
1108
|
+
lt_cv_dlopen_self=yes
|
1109
|
+
version_type=darwin
|
1110
|
+
need_lib_prefix=no
|
1111
|
+
need_version=no
|
1112
|
+
# Disable shared library build on OS-X older than 10.3.
|
1113
|
+
case $host_os in
|
1114
|
+
darwin[1-6]*)
|
1115
|
+
can_build_shared=no
|
1116
|
+
;;
|
1117
|
+
darwin7*)
|
1118
|
+
can_build_shared=yes
|
1119
|
+
;;
|
1120
|
+
esac
|
1121
|
+
library_names_spec='${libname}${release}${versuffix}$shared_ext ${libname}${release}${major}$shared_ext ${libname}$shared_ext'
|
1122
|
+
soname_spec='${libname}${release}${major}$shared_ext'
|
1123
|
+
shlibpath_overrides_runpath=yes
|
1124
|
+
shlibpath_var=DYLD_LIBRARY_PATH
|
1125
|
+
shrext='$(test .$module = .yes && echo .so || echo .dylib)'
|
1126
|
+
sys_lib_search_path_spec=`$CC -print-search-dirs | tr "\n" "$PATH_SEPARATOR" | sed -e 's/libraries:/@libraries:/' | tr "@" "\n" | grep "^libraries:" | sed -e "s/^libraries://" -e "s,=/,/,g" -e "s,$PATH_SEPARATOR, ,g" -e "s,.*,& /lib /usr/lib /usr/local/lib,g"`
|
1127
|
+
sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'
|
1128
|
+
;;
|
1129
|
+
|
1130
|
+
freebsd1*)
|
1131
|
+
dynamic_linker=no
|
1132
|
+
;;
|
1133
|
+
|
1134
|
+
freebsd*)
|
1135
|
+
objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout`
|
1136
|
+
version_type=freebsd-$objformat
|
1137
|
+
case $version_type in
|
1138
|
+
freebsd-elf*)
|
1139
|
+
library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so $libname.so'
|
1140
|
+
need_version=no
|
1141
|
+
need_lc=no
|
1142
|
+
need_lib_prefix=no
|
1143
|
+
;;
|
1144
|
+
freebsd-*)
|
1145
|
+
library_names_spec='${libname}${release}.so$versuffix $libname.so$versuffix'
|
1146
|
+
need_version=yes
|
1147
|
+
;;
|
1148
|
+
esac
|
1149
|
+
shlibpath_var=LD_LIBRARY_PATH
|
1150
|
+
case $host_os in
|
1151
|
+
freebsd2*)
|
1152
|
+
shlibpath_overrides_runpath=yes
|
1153
|
+
;;
|
1154
|
+
*)
|
1155
|
+
shlibpath_overrides_runpath=no
|
1156
|
+
hardcode_into_libs=yes
|
1157
|
+
;;
|
1158
|
+
esac
|
1159
|
+
;;
|
1160
|
+
|
1161
|
+
gnu*)
|
1162
|
+
version_type=linux
|
1163
|
+
need_lib_prefix=no
|
1164
|
+
need_version=no
|
1165
|
+
library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so${major} ${libname}.so'
|
1166
|
+
soname_spec='${libname}${release}.so$major'
|
1167
|
+
shlibpath_var=LD_LIBRARY_PATH
|
1168
|
+
hardcode_into_libs=yes
|
1169
|
+
;;
|
1170
|
+
|
1171
|
+
kfreebsd*-gnu | knetbsd*-gnu)
|
1172
|
+
version_type=linux
|
1173
|
+
need_lib_prefix=no
|
1174
|
+
need_version=no
|
1175
|
+
library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so${major} ${libname}.so'
|
1176
|
+
soname_spec='${libname}${release}.so$major'
|
1177
|
+
shlibpath_var=LD_LIBRARY_PATH
|
1178
|
+
shlibpath_overrides_runpath=yes
|
1179
|
+
hardcode_into_libs=yes
|
1180
|
+
;;
|
1181
|
+
|
1182
|
+
hpux9* | hpux10* | hpux11*)
|
1183
|
+
# Give a soname corresponding to the major version so that dld.sl refuses to
|
1184
|
+
# link against other versions.
|
1185
|
+
version_type=sunos
|
1186
|
+
need_lib_prefix=no
|
1187
|
+
need_version=no
|
1188
|
+
case "$host_cpu" in
|
1189
|
+
ia64*)
|
1190
|
+
dynamic_linker="$host_os dld.so"
|
1191
|
+
shlibpath_var=LD_LIBRARY_PATH
|
1192
|
+
library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
|
1193
|
+
soname_spec='${libname}${release}.so$major'
|
1194
|
+
shlibpath_var=LD_LIBRARY_PATH
|
1195
|
+
shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
|
1196
|
+
if test "X$HPUX_IA64_MODE" = X32; then
|
1197
|
+
sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"
|
1198
|
+
else
|
1199
|
+
sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"
|
1200
|
+
fi
|
1201
|
+
sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
|
1202
|
+
;;
|
1203
|
+
*)
|
1204
|
+
dynamic_linker="$host_os dld.sl"
|
1205
|
+
shlibpath_var=SHLIB_PATH
|
1206
|
+
shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
|
1207
|
+
library_names_spec='${libname}${release}.sl$versuffix ${libname}${release}.sl$major $libname.sl'
|
1208
|
+
soname_spec='${libname}${release}.sl$major'
|
1209
|
+
;;
|
1210
|
+
esac
|
1211
|
+
# HP-UX runs *really* slowly unless shared libraries are mode 555.
|
1212
|
+
postinstall_cmds='chmod 555 $lib'
|
1213
|
+
;;
|
1214
|
+
|
1215
|
+
irix5* | irix6*)
|
1216
|
+
if test "$with_gnu_ld" = yes; then
|
1217
|
+
version_type=linux
|
1218
|
+
else
|
1219
|
+
version_type=irix
|
1220
|
+
fi
|
1221
|
+
need_lib_prefix=no
|
1222
|
+
need_version=no
|
1223
|
+
soname_spec='${libname}${release}.so$major'
|
1224
|
+
library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major ${libname}${release}.so $libname.so'
|
1225
|
+
case $host_os in
|
1226
|
+
irix5*)
|
1227
|
+
libsuff= shlibsuff=
|
1228
|
+
;;
|
1229
|
+
*)
|
1230
|
+
case $LD in # libtool.m4 will add one of these switches to LD
|
1231
|
+
*-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ")
|
1232
|
+
libsuff= shlibsuff= libmagic=32-bit;;
|
1233
|
+
*-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ")
|
1234
|
+
libsuff=32 shlibsuff=N32 libmagic=N32;;
|
1235
|
+
*-64|*"-64 "|*-melf64bmip|*"-melf64bmip ")
|
1236
|
+
libsuff=64 shlibsuff=64 libmagic=64-bit;;
|
1237
|
+
*) libsuff= shlibsuff= libmagic=never-match;;
|
1238
|
+
esac
|
1239
|
+
;;
|
1240
|
+
esac
|
1241
|
+
shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
|
1242
|
+
shlibpath_overrides_runpath=no
|
1243
|
+
sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}"
|
1244
|
+
sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}"
|
1245
|
+
;;
|
1246
|
+
|
1247
|
+
# No shared lib support for Linux oldld, aout, or coff.
|
1248
|
+
linux-gnuoldld* | linux-gnuaout* | linux-gnucoff*)
|
1249
|
+
dynamic_linker=no
|
1250
|
+
;;
|
1251
|
+
|
1252
|
+
# This must be Linux ELF.
|
1253
|
+
linux-gnu*)
|
1254
|
+
version_type=linux
|
1255
|
+
need_lib_prefix=no
|
1256
|
+
need_version=no
|
1257
|
+
library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
|
1258
|
+
soname_spec='${libname}${release}.so$major'
|
1259
|
+
finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
|
1260
|
+
shlibpath_var=LD_LIBRARY_PATH
|
1261
|
+
shlibpath_overrides_runpath=no
|
1262
|
+
# This implies no fast_install, which is unacceptable.
|
1263
|
+
# Some rework will be needed to allow for fast_install
|
1264
|
+
# before this can be enabled.
|
1265
|
+
hardcode_into_libs=yes
|
1266
|
+
|
1267
|
+
# We used to test for /lib/ld.so.1 and disable shared libraries on
|
1268
|
+
# powerpc, because MkLinux only supported shared libraries with the
|
1269
|
+
# GNU dynamic linker. Since this was broken with cross compilers,
|
1270
|
+
# most powerpc-linux boxes support dynamic linking these days and
|
1271
|
+
# people can always --disable-shared, the test was removed, and we
|
1272
|
+
# assume the GNU/Linux dynamic linker is in use.
|
1273
|
+
dynamic_linker='GNU/Linux ld.so'
|
1274
|
+
;;
|
1275
|
+
|
1276
|
+
netbsd*)
|
1277
|
+
need_lib_prefix=no
|
1278
|
+
need_version=no
|
1279
|
+
version_type=sunos
|
1280
|
+
if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
|
1281
|
+
library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix'
|
1282
|
+
finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
|
1283
|
+
dynamic_linker='NetBSD (a.out) ld.so'
|
1284
|
+
else
|
1285
|
+
library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major ${libname}${release}.so ${libname}.so'
|
1286
|
+
soname_spec='${libname}${release}.so$major'
|
1287
|
+
dynamic_linker='NetBSD ld.elf_so'
|
1288
|
+
fi
|
1289
|
+
shlibpath_var=LD_LIBRARY_PATH
|
1290
|
+
shlibpath_overrides_runpath=yes
|
1291
|
+
hardcode_into_libs=yes
|
1292
|
+
;;
|
1293
|
+
|
1294
|
+
newsos6)
|
1295
|
+
version_type=linux
|
1296
|
+
library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
|
1297
|
+
shlibpath_var=LD_LIBRARY_PATH
|
1298
|
+
shlibpath_overrides_runpath=yes
|
1299
|
+
;;
|
1300
|
+
|
1301
|
+
openbsd*)
|
1302
|
+
version_type=sunos
|
1303
|
+
if test "$with_gnu_ld" = yes; then
|
1304
|
+
need_lib_prefix=no
|
1305
|
+
need_version=no
|
1306
|
+
fi
|
1307
|
+
library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix'
|
1308
|
+
finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
|
1309
|
+
shlibpath_var=LD_LIBRARY_PATH
|
1310
|
+
;;
|
1311
|
+
|
1312
|
+
os2*)
|
1313
|
+
libname_spec='$name'
|
1314
|
+
need_lib_prefix=no
|
1315
|
+
library_names_spec='$libname.dll $libname.a'
|
1316
|
+
dynamic_linker='OS/2 ld.exe'
|
1317
|
+
shlibpath_var=LIBPATH
|
1318
|
+
;;
|
1319
|
+
|
1320
|
+
osf3* | osf4* | osf5*)
|
1321
|
+
version_type=osf
|
1322
|
+
need_version=no
|
1323
|
+
soname_spec='${libname}${release}.so$major'
|
1324
|
+
library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
|
1325
|
+
shlibpath_var=LD_LIBRARY_PATH
|
1326
|
+
sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
|
1327
|
+
sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
|
1328
|
+
;;
|
1329
|
+
|
1330
|
+
sco3.2v5*)
|
1331
|
+
version_type=osf
|
1332
|
+
soname_spec='${libname}${release}.so$major'
|
1333
|
+
library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
|
1334
|
+
shlibpath_var=LD_LIBRARY_PATH
|
1335
|
+
;;
|
1336
|
+
|
1337
|
+
solaris*)
|
1338
|
+
version_type=linux
|
1339
|
+
need_lib_prefix=no
|
1340
|
+
need_version=no
|
1341
|
+
library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
|
1342
|
+
soname_spec='${libname}${release}.so$major'
|
1343
|
+
shlibpath_var=LD_LIBRARY_PATH
|
1344
|
+
shlibpath_overrides_runpath=yes
|
1345
|
+
hardcode_into_libs=yes
|
1346
|
+
# ldd complains unless libraries are executable
|
1347
|
+
postinstall_cmds='chmod +x $lib'
|
1348
|
+
;;
|
1349
|
+
|
1350
|
+
sunos4*)
|
1351
|
+
version_type=sunos
|
1352
|
+
library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix'
|
1353
|
+
finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
|
1354
|
+
shlibpath_var=LD_LIBRARY_PATH
|
1355
|
+
shlibpath_overrides_runpath=yes
|
1356
|
+
if test "$with_gnu_ld" = yes; then
|
1357
|
+
need_lib_prefix=no
|
1358
|
+
fi
|
1359
|
+
need_version=yes
|
1360
|
+
;;
|
1361
|
+
|
1362
|
+
sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
|
1363
|
+
version_type=linux
|
1364
|
+
library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
|
1365
|
+
soname_spec='${libname}${release}.so$major'
|
1366
|
+
shlibpath_var=LD_LIBRARY_PATH
|
1367
|
+
case $host_vendor in
|
1368
|
+
motorola)
|
1369
|
+
need_lib_prefix=no
|
1370
|
+
need_version=no
|
1371
|
+
shlibpath_overrides_runpath=no
|
1372
|
+
sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
|
1373
|
+
;;
|
1374
|
+
esac
|
1375
|
+
;;
|
1376
|
+
|
1377
|
+
tpf*)
|
1378
|
+
version_type=linux
|
1379
|
+
need_lib_prefix=no
|
1380
|
+
need_version=no
|
1381
|
+
library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so $major $libname.so'
|
1382
|
+
soname_spec='${libname}${release}.so$major'
|
1383
|
+
shlibpath_var=LD_LIBRARY_PATH
|
1384
|
+
shlibpath_overrides_runpath=no
|
1385
|
+
hardcode_into_libs=yes
|
1386
|
+
dynamic_linker='GNU/Linux ld.so'
|
1387
|
+
;;
|
1388
|
+
|
1389
|
+
uts4*)
|
1390
|
+
version_type=linux
|
1391
|
+
library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
|
1392
|
+
soname_spec='${libname}${release}.so$major'
|
1393
|
+
shlibpath_var=LD_LIBRARY_PATH
|
1394
|
+
;;
|
1395
|
+
|
1396
|
+
dgux*)
|
1397
|
+
version_type=linux
|
1398
|
+
need_lib_prefix=no
|
1399
|
+
need_version=no
|
1400
|
+
library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
|
1401
|
+
soname_spec='${libname}${release}.so$major'
|
1402
|
+
shlibpath_var=LD_LIBRARY_PATH
|
1403
|
+
;;
|
1404
|
+
|
1405
|
+
sysv4*MP*)
|
1406
|
+
if test -d /usr/nec ;then
|
1407
|
+
version_type=linux
|
1408
|
+
library_names_spec='$libname.so.$versuffix $libname.so.$major $libname.so'
|
1409
|
+
soname_spec='$libname.so.$major'
|
1410
|
+
shlibpath_var=LD_LIBRARY_PATH
|
1411
|
+
fi
|
1412
|
+
;;
|
1413
|
+
|
1414
|
+
*)
|
1415
|
+
dynamic_linker=no
|
1416
|
+
;;
|
1417
|
+
esac
|
1418
|
+
echo "$ac_t$dynamic_linker" 1>&6
|
1419
|
+
test "$dynamic_linker" = no && can_build_shared=no
|
1420
|
+
|
1421
|
+
# Check for command to grab the raw symbol name followed by C symbol from nm.
|
1422
|
+
echo $ac_n "checking command to parse $NM output... $ac_c" 1>&6
|
1423
|
+
|
1424
|
+
# These are sane defaults that work on at least a few old systems.
|
1425
|
+
# [They come from Ultrix. What could be older than Ultrix?!! ;)]
|
1426
|
+
|
1427
|
+
# Character class describing NM global symbol codes.
|
1428
|
+
symcode='[BCDEGRST]'
|
1429
|
+
|
1430
|
+
# Regexp to match symbols that can be accessed directly from C.
|
1431
|
+
sympat='\([_A-Za-z][_A-Za-z0-9]*\)'
|
1432
|
+
|
1433
|
+
# Transform the above into a raw symbol and a C symbol.
|
1434
|
+
symxfrm='\1 \2\3 \3'
|
1435
|
+
|
1436
|
+
# Transform an extracted symbol line into a proper C declaration
|
1437
|
+
global_symbol_to_cdecl="sed -n -e 's/^. .* \(.*\)$/extern char \1;/p'"
|
1438
|
+
|
1439
|
+
# Define system-specific variables.
|
1440
|
+
case $host_os in
|
1441
|
+
aix*)
|
1442
|
+
symcode='[BCDT]'
|
1443
|
+
;;
|
1444
|
+
cygwin* | mingw* | pw32*)
|
1445
|
+
symcode='[ABCDGISTW]'
|
1446
|
+
;;
|
1447
|
+
hpux*) # Its linker distinguishes data from code symbols
|
1448
|
+
global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern char \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'"
|
1449
|
+
;;
|
1450
|
+
irix*)
|
1451
|
+
symcode='[BCDEGRST]'
|
1452
|
+
;;
|
1453
|
+
solaris* | sysv5*)
|
1454
|
+
symcode='[BDT]'
|
1455
|
+
;;
|
1456
|
+
sysv4)
|
1457
|
+
symcode='[DFNSTU]'
|
1458
|
+
;;
|
1459
|
+
esac
|
1460
|
+
|
1461
|
+
# Handle CRLF in mingw tool chain
|
1462
|
+
opt_cr=
|
1463
|
+
case $host_os in
|
1464
|
+
mingw*)
|
1465
|
+
opt_cr=`echo 'x\{0,1\}' | tr x '\015'` # option cr in regexp
|
1466
|
+
;;
|
1467
|
+
esac
|
1468
|
+
|
1469
|
+
# If we're using GNU nm, then use its standard symbol codes.
|
1470
|
+
if $NM -V 2>&1 | egrep '(GNU|with BFD)' > /dev/null; then
|
1471
|
+
symcode='[ABCDGISTW]'
|
1472
|
+
fi
|
1473
|
+
|
1474
|
+
# Try without a prefix undercore, then with it.
|
1475
|
+
for ac_symprfx in "" "_"; do
|
1476
|
+
|
1477
|
+
# Write the raw and C identifiers.
|
1478
|
+
global_symbol_pipe="sed -n -e 's/^.*[ ]\($symcode$symcode*\)[ ][ ]*\($ac_symprfx\)$sympat$opt_cr$/$symxfrm/p'"
|
1479
|
+
|
1480
|
+
# Check to see that the pipe works correctly.
|
1481
|
+
pipe_works=no
|
1482
|
+
$rm conftest*
|
1483
|
+
cat > conftest.$ac_ext <<EOF
|
1484
|
+
#ifdef __cplusplus
|
1485
|
+
extern "C" {
|
1486
|
+
#endif
|
1487
|
+
char nm_test_var;
|
1488
|
+
void nm_test_func(){}
|
1489
|
+
#ifdef __cplusplus
|
1490
|
+
}
|
1491
|
+
#endif
|
1492
|
+
int main(){nm_test_var='a';nm_test_func();return(0);}
|
1493
|
+
EOF
|
1494
|
+
|
1495
|
+
echo "$progname:1431: checking if global_symbol_pipe works" >&5
|
1496
|
+
if { (eval echo $progname:1432: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; } && test -s conftest.$objext; then
|
1497
|
+
# Now try to grab the symbols.
|
1498
|
+
nlist=conftest.nm
|
1499
|
+
if { echo "$progname:1435: eval \"$NM conftest.$objext | $global_symbol_pipe > $nlist\"" >&5; eval "$NM conftest.$objext | $global_symbol_pipe > $nlist 2>&5"; } && test -s "$nlist"; then
|
1500
|
+
|
1501
|
+
# Try sorting and uniquifying the output.
|
1502
|
+
if sort "$nlist" | uniq > "$nlist"T; then
|
1503
|
+
mv -f "$nlist"T "$nlist"
|
1504
|
+
else
|
1505
|
+
rm -f "$nlist"T
|
1506
|
+
fi
|
1507
|
+
|
1508
|
+
# Make sure that we snagged all the symbols we need.
|
1509
|
+
if egrep ' nm_test_var$' "$nlist" >/dev/null; then
|
1510
|
+
if egrep ' nm_test_func$' "$nlist" >/dev/null; then
|
1511
|
+
cat <<EOF > conftest.$ac_ext
|
1512
|
+
#ifdef __cplusplus
|
1513
|
+
extern "C" {
|
1514
|
+
#endif
|
1515
|
+
|
1516
|
+
EOF
|
1517
|
+
# Now generate the symbol file.
|
1518
|
+
eval "$global_symbol_to_cdecl"' < "$nlist" >> conftest.$ac_ext'
|
1519
|
+
|
1520
|
+
cat <<EOF >> conftest.$ac_ext
|
1521
|
+
#if defined (__STDC__) && __STDC__
|
1522
|
+
# define lt_ptr_t void *
|
1523
|
+
#else
|
1524
|
+
# define lt_ptr_t char *
|
1525
|
+
# define const
|
1526
|
+
#endif
|
1527
|
+
|
1528
|
+
/* The mapping between symbol names and symbols. */
|
1529
|
+
const struct {
|
1530
|
+
const char *name;
|
1531
|
+
lt_ptr_t address;
|
1532
|
+
}
|
1533
|
+
lt_preloaded_symbols[] =
|
1534
|
+
{
|
1535
|
+
EOF
|
1536
|
+
sed "s/^$symcode$symcode* \(.*\) \(.*\)$/ {\"\2\", (lt_ptr_t) \&\2},/" < "$nlist" >> conftest.$ac_ext
|
1537
|
+
cat <<\EOF >> conftest.$ac_ext
|
1538
|
+
{0, (lt_ptr_t) 0}
|
1539
|
+
};
|
1540
|
+
|
1541
|
+
#ifdef __cplusplus
|
1542
|
+
}
|
1543
|
+
#endif
|
1544
|
+
EOF
|
1545
|
+
# Now try linking the two files.
|
1546
|
+
mv conftest.$objext conftstm.$objext
|
1547
|
+
save_LIBS="$LIBS"
|
1548
|
+
save_CFLAGS="$CFLAGS"
|
1549
|
+
LIBS="conftstm.$objext"
|
1550
|
+
CFLAGS="$CFLAGS$no_builtin_flag"
|
1551
|
+
if { (eval echo $progname:1487: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest; then
|
1552
|
+
pipe_works=yes
|
1553
|
+
else
|
1554
|
+
echo "$progname: failed program was:" >&5
|
1555
|
+
cat conftest.$ac_ext >&5
|
1556
|
+
fi
|
1557
|
+
LIBS="$save_LIBS"
|
1558
|
+
else
|
1559
|
+
echo "cannot find nm_test_func in $nlist" >&5
|
1560
|
+
fi
|
1561
|
+
else
|
1562
|
+
echo "cannot find nm_test_var in $nlist" >&5
|
1563
|
+
fi
|
1564
|
+
else
|
1565
|
+
echo "cannot run $global_symbol_pipe" >&5
|
1566
|
+
fi
|
1567
|
+
else
|
1568
|
+
echo "$progname: failed program was:" >&5
|
1569
|
+
cat conftest.$ac_ext >&5
|
1570
|
+
fi
|
1571
|
+
$rm conftest* conftst*
|
1572
|
+
|
1573
|
+
# Do not use the global_symbol_pipe unless it works.
|
1574
|
+
if test "$pipe_works" = yes; then
|
1575
|
+
break
|
1576
|
+
else
|
1577
|
+
global_symbol_pipe=
|
1578
|
+
fi
|
1579
|
+
done
|
1580
|
+
if test "$pipe_works" = yes; then
|
1581
|
+
echo "${ac_t}ok" 1>&6
|
1582
|
+
else
|
1583
|
+
echo "${ac_t}failed" 1>&6
|
1584
|
+
fi
|
1585
|
+
|
1586
|
+
if test -z "$global_symbol_pipe"; then
|
1587
|
+
global_symbol_to_cdecl=
|
1588
|
+
fi
|
1589
|
+
|
1590
|
+
# Report the final consequences.
|
1591
|
+
echo "checking if libtool supports shared libraries... $can_build_shared" 1>&6
|
1592
|
+
|
1593
|
+
# Only try to build win32 dlls if AC_LIBTOOL_WIN32_DLL was used in
|
1594
|
+
# configure.in, otherwise build static only libraries.
|
1595
|
+
case $host_os in
|
1596
|
+
cygwin* | mingw* | pw32* | os2*)
|
1597
|
+
if test x$can_build_shared = xyes; then
|
1598
|
+
test x$enable_win32_dll = xno && can_build_shared=no
|
1599
|
+
echo "checking if package supports dlls... $can_build_shared" 1>&6
|
1600
|
+
fi
|
1601
|
+
;;
|
1602
|
+
esac
|
1603
|
+
|
1604
|
+
echo $ac_n "checking whether to build shared libraries... $ac_c" 1>&6
|
1605
|
+
test "$can_build_shared" = "no" && enable_shared=no
|
1606
|
+
|
1607
|
+
# On AIX, shared libraries and static libraries use the same namespace, and
|
1608
|
+
# are all built from PIC.
|
1609
|
+
case $host_os in
|
1610
|
+
aix3*)
|
1611
|
+
test "$enable_shared" = yes && enable_static=no
|
1612
|
+
if test -n "$RANLIB"; then
|
1613
|
+
archive_cmds="$archive_cmds~\$RANLIB \$lib"
|
1614
|
+
postinstall_cmds='$RANLIB $lib'
|
1615
|
+
fi
|
1616
|
+
;;
|
1617
|
+
|
1618
|
+
aix4* | aix5*)
|
1619
|
+
test "$enable_shared" = yes && enable_static=no
|
1620
|
+
;;
|
1621
|
+
esac
|
1622
|
+
|
1623
|
+
echo "$ac_t$enable_shared" 1>&6
|
1624
|
+
|
1625
|
+
# Make sure either enable_shared or enable_static is yes.
|
1626
|
+
test "$enable_shared" = yes || enable_static=yes
|
1627
|
+
|
1628
|
+
echo "checking whether to build static libraries... $enable_static" 1>&6
|
1629
|
+
|
1630
|
+
if test "$hardcode_action" = relink; then
|
1631
|
+
# Fast installation is not supported
|
1632
|
+
enable_fast_install=no
|
1633
|
+
elif test "$shlibpath_overrides_runpath" = yes ||
|
1634
|
+
test "$enable_shared" = no; then
|
1635
|
+
# Fast installation is not necessary
|
1636
|
+
enable_fast_install=needless
|
1637
|
+
fi
|
1638
|
+
|
1639
|
+
variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
|
1640
|
+
if test "$with_gcc" = yes; then
|
1641
|
+
variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
|
1642
|
+
fi
|
1643
|
+
|
1644
|
+
# Check whether we must set pic_mode to default
|
1645
|
+
test -z "$pic_flag" && pic_mode=default
|
1646
|
+
|
1647
|
+
if test "x$enable_dlopen" != xyes; then
|
1648
|
+
enable_dlopen=unknown
|
1649
|
+
enable_dlopen_self=unknown
|
1650
|
+
enable_dlopen_self_static=unknown
|
1651
|
+
else
|
1652
|
+
if test "X${lt_cv_dlopen+set}" != Xset; then
|
1653
|
+
lt_cv_dlopen=no lt_cv_dlopen_libs=
|
1654
|
+
echo $ac_n "checking for dlopen in -ldl""... $ac_c" 1>&6
|
1655
|
+
echo "$progname:1591: checking for dlopen in -ldl" >&5
|
1656
|
+
if test "X${ac_cv_lib_dl_dlopen+set}" = Xset; then
|
1657
|
+
echo $ac_n "(cached) $ac_c" 1>&6
|
1658
|
+
else
|
1659
|
+
ac_save_LIBS="$LIBS"
|
1660
|
+
LIBS="-ldl $LIBS"
|
1661
|
+
cat > conftest.$ac_ext <<EOF
|
1662
|
+
#line 1598 "ltconfig"
|
1663
|
+
/* Override any gcc2 internal prototype to avoid an error. */
|
1664
|
+
/* We use char because int might match the return type of a gcc2
|
1665
|
+
builtin and then its argument prototype would still apply. */
|
1666
|
+
#ifdef __cplusplus
|
1667
|
+
extern "C"
|
1668
|
+
#endif
|
1669
|
+
char dlopen();
|
1670
|
+
|
1671
|
+
int main() {
|
1672
|
+
dlopen()
|
1673
|
+
; return 0; }
|
1674
|
+
EOF
|
1675
|
+
if { (eval echo $progname:1611: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
|
1676
|
+
rm -rf conftest*
|
1677
|
+
ac_cv_lib_dl_dlopen=yes
|
1678
|
+
else
|
1679
|
+
echo "$progname: failed program was:" >&5
|
1680
|
+
cat conftest.$ac_ext >&5
|
1681
|
+
rm -rf conftest*
|
1682
|
+
ac_cv_lib_dl_dlopen=no
|
1683
|
+
fi
|
1684
|
+
rm -f conftest*
|
1685
|
+
LIBS="$ac_save_LIBS"
|
1686
|
+
|
1687
|
+
fi
|
1688
|
+
if test "X$ac_cv_lib_dl_dlopen" = Xyes; then
|
1689
|
+
echo "$ac_t""yes" 1>&6
|
1690
|
+
lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"
|
1691
|
+
else
|
1692
|
+
echo "$ac_t""no" 1>&6
|
1693
|
+
echo $ac_n "checking for dlopen""... $ac_c" 1>&6
|
1694
|
+
echo "$progname:1630: checking for dlopen" >&5
|
1695
|
+
if test "X${ac_cv_func_dlopen+set}" = Xset; then
|
1696
|
+
echo $ac_n "(cached) $ac_c" 1>&6
|
1697
|
+
else
|
1698
|
+
cat > conftest.$ac_ext <<EOF
|
1699
|
+
#line 1635 "ltconfig"
|
1700
|
+
/* System header to define __stub macros and hopefully few prototypes,
|
1701
|
+
which can conflict with char dlopen(); below. */
|
1702
|
+
#include <assert.h>
|
1703
|
+
/* Override any gcc2 internal prototype to avoid an error. */
|
1704
|
+
/* We use char because int might match the return type of a gcc2
|
1705
|
+
builtin and then its argument prototype would still apply. */
|
1706
|
+
#ifdef __cplusplus
|
1707
|
+
extern "C"
|
1708
|
+
#endif
|
1709
|
+
char dlopen();
|
1710
|
+
|
1711
|
+
int main() {
|
1712
|
+
|
1713
|
+
/* The GNU C library defines this for functions which it implements
|
1714
|
+
to always fail with ENOSYS. Some functions are actually named
|
1715
|
+
something starting with __ and the normal name is an alias. */
|
1716
|
+
#if defined (__stub_dlopen) || defined (__stub___dlopen)
|
1717
|
+
choke me
|
1718
|
+
#else
|
1719
|
+
dlopen();
|
1720
|
+
#endif
|
1721
|
+
|
1722
|
+
; return 0; }
|
1723
|
+
EOF
|
1724
|
+
if { (eval echo $progname:1660: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
|
1725
|
+
rm -rf conftest*
|
1726
|
+
ac_cv_func_dlopen=yes
|
1727
|
+
else
|
1728
|
+
echo "$progname: failed program was:" >&5
|
1729
|
+
cat conftest.$ac_ext >&5
|
1730
|
+
rm -rf conftest*
|
1731
|
+
ac_cv_func_dlopen=no
|
1732
|
+
fi
|
1733
|
+
rm -f conftest*
|
1734
|
+
fi
|
1735
|
+
if test "X$ac_cv_func_dlopen" = Xyes; then
|
1736
|
+
echo "$ac_t""yes" 1>&6
|
1737
|
+
lt_cv_dlopen="dlopen"
|
1738
|
+
else
|
1739
|
+
echo "$ac_t""no" 1>&6
|
1740
|
+
echo $ac_n "checking for dlopen in -lsvld""... $ac_c" 1>&6
|
1741
|
+
echo "$progname:1677: checking for dlopen in -lsvld" >&5
|
1742
|
+
if test "X${ac_cv_lib_svld_dlopen+set}" = Xset; then
|
1743
|
+
echo $ac_n "(cached) $ac_c" 1>&6
|
1744
|
+
else
|
1745
|
+
ac_save_LIBS="$LIBS"
|
1746
|
+
LIBS="-lsvld $LIBS"
|
1747
|
+
cat > conftest.$ac_ext <<EOF
|
1748
|
+
#line 1684 "ltconfig"
|
1749
|
+
/* Override any gcc2 internal prototype to avoid an error. */
|
1750
|
+
/* We use char because int might match the return type of a gcc2
|
1751
|
+
builtin and then its argument prototype would still apply. */
|
1752
|
+
#ifdef __cplusplus
|
1753
|
+
extern "C"
|
1754
|
+
#endif
|
1755
|
+
char dlopen();
|
1756
|
+
|
1757
|
+
int main() {
|
1758
|
+
dlopen()
|
1759
|
+
; return 0; }
|
1760
|
+
EOF
|
1761
|
+
if { (eval echo $progname:1697: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
|
1762
|
+
rm -rf conftest*
|
1763
|
+
ac_cv_lib_svld_dlopen=yes
|
1764
|
+
else
|
1765
|
+
echo "$progname: failed program was:" >&5
|
1766
|
+
cat conftest.$ac_ext >&5
|
1767
|
+
rm -rf conftest*
|
1768
|
+
ac_cv_lib_svld_dlopen=no
|
1769
|
+
fi
|
1770
|
+
rm -f conftest*
|
1771
|
+
LIBS="$ac_save_LIBS"
|
1772
|
+
|
1773
|
+
fi
|
1774
|
+
if test "X$ac_cv_lib_svld_dlopen" = Xyes; then
|
1775
|
+
echo "$ac_t""yes" 1>&6
|
1776
|
+
lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"
|
1777
|
+
else
|
1778
|
+
echo "$ac_t""no" 1>&6
|
1779
|
+
echo $ac_n "checking for dld_link in -ldld""... $ac_c" 1>&6
|
1780
|
+
echo "$progname:1716: checking for dld_link in -ldld" >&5
|
1781
|
+
if test "X${ac_cv_lib_dld_dld_link+set}" = Xset; then
|
1782
|
+
echo $ac_n "(cached) $ac_c" 1>&6
|
1783
|
+
else
|
1784
|
+
ac_save_LIBS="$LIBS"
|
1785
|
+
LIBS="-ldld $LIBS"
|
1786
|
+
cat > conftest.$ac_ext <<EOF
|
1787
|
+
#line 1723 "ltconfig"
|
1788
|
+
/* Override any gcc2 internal prototype to avoid an error. */
|
1789
|
+
/* We use char because int might match the return type of a gcc2
|
1790
|
+
builtin and then its argument prototype would still apply. */
|
1791
|
+
#ifdef __cplusplus
|
1792
|
+
extern "C"
|
1793
|
+
#endif
|
1794
|
+
char dld_link();
|
1795
|
+
|
1796
|
+
int main() {
|
1797
|
+
dld_link()
|
1798
|
+
; return 0; }
|
1799
|
+
EOF
|
1800
|
+
if { (eval echo $progname:1736: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
|
1801
|
+
rm -rf conftest*
|
1802
|
+
ac_cv_lib_dld_dld_link=yes
|
1803
|
+
else
|
1804
|
+
echo "$progname: failed program was:" >&5
|
1805
|
+
cat conftest.$ac_ext >&5
|
1806
|
+
rm -rf conftest*
|
1807
|
+
ac_cv_lib_dld_dld_link=no
|
1808
|
+
fi
|
1809
|
+
rm -f conftest*
|
1810
|
+
LIBS="$ac_save_LIBS"
|
1811
|
+
|
1812
|
+
fi
|
1813
|
+
if test "X$ac_cv_lib_dld_dld_link" = Xyes; then
|
1814
|
+
echo "$ac_t""yes" 1>&6
|
1815
|
+
lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld"
|
1816
|
+
else
|
1817
|
+
echo "$ac_t""no" 1>&6
|
1818
|
+
echo $ac_n "checking for shl_load""... $ac_c" 1>&6
|
1819
|
+
echo "$progname:1755: checking for shl_load" >&5
|
1820
|
+
if test "X${ac_cv_func_shl_load+set}" = Xset; then
|
1821
|
+
echo $ac_n "(cached) $ac_c" 1>&6
|
1822
|
+
else
|
1823
|
+
cat > conftest.$ac_ext <<EOF
|
1824
|
+
#line 1760 "ltconfig"
|
1825
|
+
/* System header to define __stub macros and hopefully few prototypes,
|
1826
|
+
which can conflict with char shl_load(); below. */
|
1827
|
+
#include <assert.h>
|
1828
|
+
/* Override any gcc2 internal prototype to avoid an error. */
|
1829
|
+
/* We use char because int might match the return type of a gcc2
|
1830
|
+
builtin and then its argument prototype would still apply. */
|
1831
|
+
#ifdef __cplusplus
|
1832
|
+
extern "C"
|
1833
|
+
#endif
|
1834
|
+
char shl_load();
|
1835
|
+
|
1836
|
+
int main() {
|
1837
|
+
|
1838
|
+
/* The GNU C library defines this for functions which it implements
|
1839
|
+
to always fail with ENOSYS. Some functions are actually named
|
1840
|
+
something starting with __ and the normal name is an alias. */
|
1841
|
+
#if defined (__stub_shl_load) || defined (__stub___shl_load)
|
1842
|
+
choke me
|
1843
|
+
#else
|
1844
|
+
shl_load();
|
1845
|
+
#endif
|
1846
|
+
|
1847
|
+
; return 0; }
|
1848
|
+
EOF
|
1849
|
+
if { (eval echo $progname:1785: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
|
1850
|
+
rm -rf conftest*
|
1851
|
+
ac_cv_func_shl_load=yes
|
1852
|
+
else
|
1853
|
+
echo "$progname: failed program was:" >&5
|
1854
|
+
cat conftest.$ac_ext >&5
|
1855
|
+
rm -rf conftest*
|
1856
|
+
ac_cv_func_shl_load=no
|
1857
|
+
fi
|
1858
|
+
rm -f conftest*
|
1859
|
+
fi
|
1860
|
+
|
1861
|
+
if test "X$ac_cv_func_shl_load" = Xyes; then
|
1862
|
+
echo "$ac_t""yes" 1>&6
|
1863
|
+
lt_cv_dlopen="shl_load"
|
1864
|
+
else
|
1865
|
+
echo "$ac_t""no" 1>&6
|
1866
|
+
echo $ac_n "checking for shl_load in -ldld""... $ac_c" 1>&6
|
1867
|
+
echo "$progname:1803: checking for shl_load in -ldld" >&5
|
1868
|
+
if test "X${ac_cv_lib_dld_shl_load+set}" = Xset; then
|
1869
|
+
echo $ac_n "(cached) $ac_c" 1>&6
|
1870
|
+
else
|
1871
|
+
ac_save_LIBS="$LIBS"
|
1872
|
+
LIBS="-ldld $LIBS"
|
1873
|
+
cat > conftest.$ac_ext <<EOF
|
1874
|
+
#line 1810 "ltconfig"
|
1875
|
+
#include "confdefs.h"
|
1876
|
+
/* Override any gcc2 internal prototype to avoid an error. */
|
1877
|
+
/* We use char because int might match the return type of a gcc2
|
1878
|
+
builtin and then its argument prototype would still apply. */
|
1879
|
+
#ifdef __cplusplus
|
1880
|
+
extern "C"
|
1881
|
+
#endif
|
1882
|
+
char shl_load();
|
1883
|
+
|
1884
|
+
int main() {
|
1885
|
+
shl_load()
|
1886
|
+
; return 0; }
|
1887
|
+
EOF
|
1888
|
+
if { (eval echo $progname:1824: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
|
1889
|
+
rm -rf conftest*
|
1890
|
+
ac_cv_lib_dld_shl_load=yes
|
1891
|
+
else
|
1892
|
+
echo "$progname: failed program was:" >&5
|
1893
|
+
cat conftest.$ac_ext >&5
|
1894
|
+
rm -rf conftest*
|
1895
|
+
ac_cv_lib_dld_shl_load=no
|
1896
|
+
fi
|
1897
|
+
rm -f conftest*
|
1898
|
+
LIBS="$ac_save_LIBS"
|
1899
|
+
|
1900
|
+
fi
|
1901
|
+
if test "X$ac_cv_lib_dld_shl_load" = Xyes; then
|
1902
|
+
echo "$ac_t""yes" 1>&6
|
1903
|
+
lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld"
|
1904
|
+
else
|
1905
|
+
echo "$ac_t""no" 1>&6
|
1906
|
+
fi
|
1907
|
+
|
1908
|
+
|
1909
|
+
fi
|
1910
|
+
|
1911
|
+
|
1912
|
+
fi
|
1913
|
+
|
1914
|
+
|
1915
|
+
fi
|
1916
|
+
|
1917
|
+
|
1918
|
+
fi
|
1919
|
+
|
1920
|
+
fi
|
1921
|
+
|
1922
|
+
fi
|
1923
|
+
|
1924
|
+
if test "x$lt_cv_dlopen" != xno; then
|
1925
|
+
enable_dlopen=yes
|
1926
|
+
else
|
1927
|
+
enable_dlopen=no
|
1928
|
+
fi
|
1929
|
+
|
1930
|
+
case $lt_cv_dlopen in
|
1931
|
+
dlopen)
|
1932
|
+
for ac_hdr in dlfcn.h; do
|
1933
|
+
ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
|
1934
|
+
echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
|
1935
|
+
echo "$progname:1871: checking for $ac_hdr" >&5
|
1936
|
+
if eval "test \"`echo 'X$''{'ac_cv_header_$ac_safe'+set}'`\" = Xset"; then
|
1937
|
+
echo $ac_n "(cached) $ac_c" 1>&6
|
1938
|
+
else
|
1939
|
+
cat > conftest.$ac_ext <<EOF
|
1940
|
+
#line 1876 "ltconfig"
|
1941
|
+
#include <$ac_hdr>
|
1942
|
+
int fnord = 0;
|
1943
|
+
int main () { return(0); }
|
1944
|
+
EOF
|
1945
|
+
ac_try="$ac_compile >/dev/null 2>conftest.out"
|
1946
|
+
{ (eval echo $progname:1882: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
|
1947
|
+
ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
|
1948
|
+
if test -z "$ac_err"; then
|
1949
|
+
rm -rf conftest*
|
1950
|
+
eval "ac_cv_header_$ac_safe=yes"
|
1951
|
+
else
|
1952
|
+
echo "$ac_err" >&5
|
1953
|
+
echo "$progname: failed program was:" >&5
|
1954
|
+
cat conftest.$ac_ext >&5
|
1955
|
+
rm -rf conftest*
|
1956
|
+
eval "ac_cv_header_$ac_safe=no"
|
1957
|
+
fi
|
1958
|
+
rm -f conftest*
|
1959
|
+
fi
|
1960
|
+
if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
|
1961
|
+
echo "$ac_t""yes" 1>&6
|
1962
|
+
else
|
1963
|
+
echo "$ac_t""no" 1>&6
|
1964
|
+
fi
|
1965
|
+
done
|
1966
|
+
|
1967
|
+
if test "x$ac_cv_header_dlfcn_h" = xyes; then
|
1968
|
+
CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
|
1969
|
+
fi
|
1970
|
+
eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
|
1971
|
+
LIBS="$lt_cv_dlopen_libs $LIBS"
|
1972
|
+
|
1973
|
+
echo $ac_n "checking whether a program can dlopen itself""... $ac_c" 1>&6
|
1974
|
+
echo "$progname:1910: checking whether a program can dlopen itself" >&5
|
1975
|
+
if test "X${lt_cv_dlopen_self+set}" = Xset; then
|
1976
|
+
echo $ac_n "(cached) $ac_c" 1>&6
|
1977
|
+
else
|
1978
|
+
if test "$cross_compiling" = yes; then
|
1979
|
+
lt_cv_dlopen_self=cross
|
1980
|
+
else
|
1981
|
+
cat > conftest.$ac_ext <<EOF
|
1982
|
+
#line 1918 "ltconfig"
|
1983
|
+
|
1984
|
+
#if HAVE_DLFCN_H
|
1985
|
+
#include <dlfcn.h>
|
1986
|
+
#endif
|
1987
|
+
|
1988
|
+
#include <stdio.h>
|
1989
|
+
|
1990
|
+
#ifdef RTLD_GLOBAL
|
1991
|
+
# define LTDL_GLOBAL RTLD_GLOBAL
|
1992
|
+
#else
|
1993
|
+
# ifdef DL_GLOBAL
|
1994
|
+
# define LTDL_GLOBAL DL_GLOBAL
|
1995
|
+
# else
|
1996
|
+
# define LTDL_GLOBAL 0
|
1997
|
+
# endif
|
1998
|
+
#endif
|
1999
|
+
|
2000
|
+
/* We may have to define LTDL_LAZY_OR_NOW in the command line if we
|
2001
|
+
find out it does not work in some platform. */
|
2002
|
+
#ifndef LTDL_LAZY_OR_NOW
|
2003
|
+
# ifdef RTLD_LAZY
|
2004
|
+
# define LTDL_LAZY_OR_NOW RTLD_LAZY
|
2005
|
+
# else
|
2006
|
+
# ifdef DL_LAZY
|
2007
|
+
# define LTDL_LAZY_OR_NOW DL_LAZY
|
2008
|
+
# else
|
2009
|
+
# ifdef RTLD_NOW
|
2010
|
+
# define LTDL_LAZY_OR_NOW RTLD_NOW
|
2011
|
+
# else
|
2012
|
+
# ifdef DL_NOW
|
2013
|
+
# define LTDL_LAZY_OR_NOW DL_NOW
|
2014
|
+
# else
|
2015
|
+
# define LTDL_LAZY_OR_NOW 0
|
2016
|
+
# endif
|
2017
|
+
# endif
|
2018
|
+
# endif
|
2019
|
+
# endif
|
2020
|
+
#endif
|
2021
|
+
|
2022
|
+
void fnord() { int i=42; }
|
2023
|
+
int main() {
|
2024
|
+
void *self, *ptr1, *ptr2; self=dlopen(0,LTDL_GLOBAL|LTDL_LAZY_OR_NOW);
|
2025
|
+
if(self) { ptr1=dlsym(self,"fnord"); ptr2=dlsym(self,"_fnord");
|
2026
|
+
if(ptr1 || ptr2) { dlclose(self); exit(0); } } exit(1); }
|
2027
|
+
|
2028
|
+
EOF
|
2029
|
+
if { (eval echo $progname:1965: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
|
2030
|
+
then
|
2031
|
+
lt_cv_dlopen_self=yes
|
2032
|
+
else
|
2033
|
+
echo "$progname: failed program was:" >&5
|
2034
|
+
cat conftest.$ac_ext >&5
|
2035
|
+
rm -fr conftest*
|
2036
|
+
lt_cv_dlopen_self=no
|
2037
|
+
fi
|
2038
|
+
rm -fr conftest*
|
2039
|
+
fi
|
2040
|
+
|
2041
|
+
fi
|
2042
|
+
|
2043
|
+
echo "$ac_t""$lt_cv_dlopen_self" 1>&6
|
2044
|
+
|
2045
|
+
if test "$lt_cv_dlopen_self" = yes; then
|
2046
|
+
LDFLAGS="$LDFLAGS $link_static_flag"
|
2047
|
+
echo $ac_n "checking whether a statically linked program can dlopen itself""... $ac_c" 1>&6
|
2048
|
+
echo "$progname:1984: checking whether a statically linked program can dlopen itself" >&5
|
2049
|
+
if test "X${lt_cv_dlopen_self_static+set}" = Xset; then
|
2050
|
+
echo $ac_n "(cached) $ac_c" 1>&6
|
2051
|
+
else
|
2052
|
+
if test "$cross_compiling" = yes; then
|
2053
|
+
lt_cv_dlopen_self_static=cross
|
2054
|
+
else
|
2055
|
+
cat > conftest.$ac_ext <<EOF
|
2056
|
+
#line 1992 "ltconfig"
|
2057
|
+
|
2058
|
+
#if HAVE_DLFCN_H
|
2059
|
+
#include <dlfcn.h>
|
2060
|
+
#endif
|
2061
|
+
|
2062
|
+
#include <stdio.h>
|
2063
|
+
|
2064
|
+
#ifdef RTLD_GLOBAL
|
2065
|
+
# define LTDL_GLOBAL RTLD_GLOBAL
|
2066
|
+
#else
|
2067
|
+
# ifdef DL_GLOBAL
|
2068
|
+
# define LTDL_GLOBAL DL_GLOBAL
|
2069
|
+
# else
|
2070
|
+
# define LTDL_GLOBAL 0
|
2071
|
+
# endif
|
2072
|
+
#endif
|
2073
|
+
|
2074
|
+
/* We may have to define LTDL_LAZY_OR_NOW in the command line if we
|
2075
|
+
find out it does not work in some platform. */
|
2076
|
+
#ifndef LTDL_LAZY_OR_NOW
|
2077
|
+
# ifdef RTLD_LAZY
|
2078
|
+
# define LTDL_LAZY_OR_NOW RTLD_LAZY
|
2079
|
+
# else
|
2080
|
+
# ifdef DL_LAZY
|
2081
|
+
# define LTDL_LAZY_OR_NOW DL_LAZY
|
2082
|
+
# else
|
2083
|
+
# ifdef RTLD_NOW
|
2084
|
+
# define LTDL_LAZY_OR_NOW RTLD_NOW
|
2085
|
+
# else
|
2086
|
+
# ifdef DL_NOW
|
2087
|
+
# define LTDL_LAZY_OR_NOW DL_NOW
|
2088
|
+
# else
|
2089
|
+
# define LTDL_LAZY_OR_NOW 0
|
2090
|
+
# endif
|
2091
|
+
# endif
|
2092
|
+
# endif
|
2093
|
+
# endif
|
2094
|
+
#endif
|
2095
|
+
|
2096
|
+
void fnord() { int i=42; }
|
2097
|
+
int main() {
|
2098
|
+
void *self, *ptr1, *ptr2; self=dlopen(0,LTDL_GLOBAL|LTDL_LAZY_OR_NOW);
|
2099
|
+
if(self) { ptr1=dlsym(self,"fnord"); ptr2=dlsym(self,"_fnord");
|
2100
|
+
if(ptr1 || ptr2) { dlclose(self); exit(0); } } exit(1); }
|
2101
|
+
|
2102
|
+
EOF
|
2103
|
+
if { (eval echo $progname:2039: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest && (./conftest; exit) 2>/dev/null
|
2104
|
+
then
|
2105
|
+
lt_cv_dlopen_self_static=yes
|
2106
|
+
else
|
2107
|
+
echo "$progname: failed program was:" >&5
|
2108
|
+
cat conftest.$ac_ext >&5
|
2109
|
+
rm -fr conftest*
|
2110
|
+
lt_cv_dlopen_self_static=no
|
2111
|
+
fi
|
2112
|
+
rm -fr conftest*
|
2113
|
+
fi
|
2114
|
+
|
2115
|
+
fi
|
2116
|
+
|
2117
|
+
echo "$ac_t""$lt_cv_dlopen_self_static" 1>&6
|
2118
|
+
fi
|
2119
|
+
;;
|
2120
|
+
esac
|
2121
|
+
|
2122
|
+
case $lt_cv_dlopen_self in
|
2123
|
+
yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;
|
2124
|
+
*) enable_dlopen_self=unknown ;;
|
2125
|
+
esac
|
2126
|
+
|
2127
|
+
case $lt_cv_dlopen_self_static in
|
2128
|
+
yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;
|
2129
|
+
*) enable_dlopen_self_static=unknown ;;
|
2130
|
+
esac
|
2131
|
+
fi
|
2132
|
+
|
2133
|
+
# Copy echo and quote the copy, instead of the original, because it is
|
2134
|
+
# used later.
|
2135
|
+
ltecho="$echo"
|
2136
|
+
if test "X$ltecho" = "X$CONFIG_SHELL $0 --fallback-echo"; then
|
2137
|
+
ltecho="$CONFIG_SHELL \$0 --fallback-echo"
|
2138
|
+
fi
|
2139
|
+
LTSHELL="$SHELL"
|
2140
|
+
|
2141
|
+
LTCONFIG_VERSION="$VERSION"
|
2142
|
+
|
2143
|
+
# Only quote variables if we're using ltmain.sh.
|
2144
|
+
case $ltmain in
|
2145
|
+
*.sh)
|
2146
|
+
# Now quote all the things that may contain metacharacters.
|
2147
|
+
for var in ltecho old_AR old_AR_FLAGS old_CC old_LTCC old_CFLAGS old_CPPFLAGS \
|
2148
|
+
old_MAGIC_CMD old_LD old_LDFLAGS old_LIBS \
|
2149
|
+
old_LN_S old_NM old_RANLIB old_STRIP \
|
2150
|
+
old_AS old_DLLTOOL old_OBJDUMP \
|
2151
|
+
old_OBJEXT old_EXEEXT old_reload_flag \
|
2152
|
+
old_deplibs_check_method old_file_magic_cmd \
|
2153
|
+
AR AR_FLAGS CC LTCC LD LN_S NM LTSHELL LTCONFIG_VERSION \
|
2154
|
+
reload_flag reload_cmds wl \
|
2155
|
+
pic_flag link_static_flag no_builtin_flag export_dynamic_flag_spec \
|
2156
|
+
thread_safe_flag_spec whole_archive_flag_spec libname_spec \
|
2157
|
+
library_names_spec soname_spec \
|
2158
|
+
RANLIB old_archive_cmds old_archive_from_new_cmds old_postinstall_cmds \
|
2159
|
+
old_postuninstall_cmds archive_cmds archive_expsym_cmds postinstall_cmds \
|
2160
|
+
postuninstall_cmds extract_expsyms_cmds old_archive_from_expsyms_cmds \
|
2161
|
+
predep_objects postdep_objects predeps postdeps compiler_lib_search_path \
|
2162
|
+
old_striplib striplib file_magic_cmd export_symbols_cmds \
|
2163
|
+
deplibs_check_method allow_undefined_flag no_undefined_flag \
|
2164
|
+
finish_cmds finish_eval global_symbol_pipe global_symbol_to_cdecl \
|
2165
|
+
hardcode_libdir_flag_spec hardcode_libdir_separator \
|
2166
|
+
sys_lib_search_path_spec sys_lib_dlsearch_path_spec \
|
2167
|
+
compiler_c_o need_locks exclude_expsyms include_expsyms; do
|
2168
|
+
|
2169
|
+
case $var in
|
2170
|
+
reload_cmds | old_archive_cmds | old_archive_from_new_cmds | \
|
2171
|
+
old_postinstall_cmds | old_postuninstall_cmds | \
|
2172
|
+
export_symbols_cmds | archive_cmds | archive_expsym_cmds | \
|
2173
|
+
extract_expsyms_cmds | old_archive_from_expsyms_cmds | \
|
2174
|
+
postinstall_cmds | postuninstall_cmds | \
|
2175
|
+
finish_cmds | sys_lib_search_path_spec | sys_lib_dlsearch_path_spec)
|
2176
|
+
# Double-quote double-evaled strings.
|
2177
|
+
eval "$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$double_quote_subst\" -e \"\$sed_quote_subst\" -e \"\$delay_variable_subst\"\`\\\"" ### testsuite: skip nested quoting test
|
2178
|
+
;;
|
2179
|
+
*)
|
2180
|
+
eval "$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$sed_quote_subst\"\`\\\"" ### testsuite: skip nested quoting test
|
2181
|
+
;;
|
2182
|
+
esac
|
2183
|
+
done
|
2184
|
+
|
2185
|
+
case $ltecho in
|
2186
|
+
*'\$0 --fallback-echo"')
|
2187
|
+
ltecho=`$echo "X$ltecho" | $Xsed -e 's/\\\\\\\$0 --fallback-echo"$/$0 --fallback-echo"/'`
|
2188
|
+
;;
|
2189
|
+
esac
|
2190
|
+
|
2191
|
+
if test -z "$tagname"; then
|
2192
|
+
trap "$rm \"$ofile\"; exit 1" 1 2 15
|
2193
|
+
echo "creating $ofile"
|
2194
|
+
$rm "$ofile"
|
2195
|
+
cat <<EOF > "$ofile"
|
2196
|
+
#! $SHELL
|
2197
|
+
|
2198
|
+
# `$echo "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services.
|
2199
|
+
# Generated automatically by $PROGRAM (GNU $PACKAGE $VERSION$TIMESTAMP)
|
2200
|
+
# NOTE: Changes made to this file will be lost: look at ltconfig or ltmain.sh.
|
2201
|
+
#
|
2202
|
+
# Copyright (C) 1996-2000 Free Software Foundation, Inc.
|
2203
|
+
# Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
|
2204
|
+
#
|
2205
|
+
# This program is free software; you can redistribute it and/or modify
|
2206
|
+
# it under the terms of the GNU General Public License as published by
|
2207
|
+
# the Free Software Foundation; either version 2 of the License, or
|
2208
|
+
# (at your option) any later version.
|
2209
|
+
#
|
2210
|
+
# This program is distributed in the hope that it will be useful, but
|
2211
|
+
# WITHOUT ANY WARRANTY; without even the implied warranty of
|
2212
|
+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
2213
|
+
# General Public License for more details.
|
2214
|
+
#
|
2215
|
+
# You should have received a copy of the GNU General Public License
|
2216
|
+
# along with this program; if not, write to the Free Software
|
2217
|
+
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
2218
|
+
#
|
2219
|
+
# As a special exception to the GNU General Public License, if you
|
2220
|
+
# distribute this file as part of a program that contains a
|
2221
|
+
# configuration script generated by Autoconf, you may include it under
|
2222
|
+
# the same distribution terms that you use for the rest of that program.
|
2223
|
+
|
2224
|
+
# Sed that helps us avoid accidentally triggering echo(1) options like -n.
|
2225
|
+
Xsed="sed -e s/^X//"
|
2226
|
+
|
2227
|
+
# The HP-UX ksh and POSIX shell print the target directory to stdout
|
2228
|
+
# if CDPATH is set.
|
2229
|
+
if test "X\${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi
|
2230
|
+
|
2231
|
+
# The names of the tagged configurations supported by this script.
|
2232
|
+
available_tags=
|
2233
|
+
|
2234
|
+
### BEGIN LIBTOOL CONFIG
|
2235
|
+
EOF
|
2236
|
+
else
|
2237
|
+
echo "appending configuration tag \"$tagname\" to $ofile"
|
2238
|
+
echo "### BEGIN LIBTOOL TAG CONFIG: $tagname" >> "$ofile"
|
2239
|
+
fi
|
2240
|
+
cfgfile="$ofile"
|
2241
|
+
;;
|
2242
|
+
|
2243
|
+
*)
|
2244
|
+
# Double-quote the variables that need it (for aesthetics).
|
2245
|
+
for var in old_AR old_AR_FLAGS old_CC old_LTCC old_CFLAGS old_CPPFLAGS \
|
2246
|
+
old_MAGIC_CMD old_LD old_LDFLAGS old_LIBS \
|
2247
|
+
old_LN_S old_NM old_RANLIB old_STRIP \
|
2248
|
+
old_AS old_DLLTOOL old_OBJDUMP \
|
2249
|
+
old_OBJEXT old_EXEEXT old_reload_flag \
|
2250
|
+
old_deplibs_check_method old_file_magic_cmd; do
|
2251
|
+
eval "$var=\\\"\$var\\\""
|
2252
|
+
done
|
2253
|
+
|
2254
|
+
# Just create a config file.
|
2255
|
+
cfgfile="$ofile.cfg"
|
2256
|
+
if test -z "$tagname"; then
|
2257
|
+
trap "$rm \"$cfgfile\"; exit 1" 1 2 15
|
2258
|
+
echo "creating $cfgfile"
|
2259
|
+
$rm "$cfgfile"
|
2260
|
+
cat <<EOF > "$cfgfile"
|
2261
|
+
# `$echo "$cfgfile" | sed 's%^.*/%%'` - Libtool configuration file.
|
2262
|
+
# Generated automatically by $PROGRAM (GNU $PACKAGE $VERSION$TIMESTAMP)
|
2263
|
+
|
2264
|
+
### BEGIN LIBTOOL CONFIG
|
2265
|
+
EOF
|
2266
|
+
else
|
2267
|
+
echo "appending to $cfgfile"
|
2268
|
+
echo "### BEGIN LIBTOOL TAG CONFIG: $tagname" >> "$ofile"
|
2269
|
+
fi
|
2270
|
+
;;
|
2271
|
+
esac
|
2272
|
+
|
2273
|
+
cat <<EOF >> "$cfgfile"
|
2274
|
+
# Libtool was configured as follows, on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
|
2275
|
+
#
|
2276
|
+
# AR=$old_AR AR_FLAGS=$old_AR_FLAGS LTCC=$old_LTCC CC=$old_CC \\
|
2277
|
+
# CFLAGS=$old_CFLAGS CPPFLAGS=$old_CPPFLAGS \\
|
2278
|
+
# MAGIC_CMD=$old_MAGIC_CMD LD=$old_LD LDFLAGS=$old_LDFLAGS LIBS=$old_LIBS \\
|
2279
|
+
# LN_S=$old_LN_S NM=$old_NM RANLIB=$old_RANLIB STRIP=$old_STRIP \\
|
2280
|
+
# AS=$old_AS DLLTOOL=$old_DLLTOOL OBJDUMP=$old_OBJDUMP \\
|
2281
|
+
# objext=$old_OBJEXT exeext=$old_EXEEXT reload_flag=$old_reload_flag \\
|
2282
|
+
# deplibs_check_method=$old_deplibs_check_method \\
|
2283
|
+
# file_magic_cmd=$old_file_magic_cmd \\
|
2284
|
+
# $0$ltconfig_args
|
2285
|
+
#
|
2286
|
+
# Compiler and other test output produced by $progname, useful for
|
2287
|
+
# debugging $progname, is in ./config.log if it exists.
|
2288
|
+
|
2289
|
+
# The version of $progname that generated this script.
|
2290
|
+
LTCONFIG_VERSION=$LTCONFIG_VERSION
|
2291
|
+
|
2292
|
+
# Shell to use when invoking shell scripts.
|
2293
|
+
SHELL=$LTSHELL
|
2294
|
+
|
2295
|
+
# Whether or not to build shared libraries.
|
2296
|
+
build_libtool_libs=$enable_shared
|
2297
|
+
|
2298
|
+
# Whether or not to add -lc for building shared libraries.
|
2299
|
+
build_libtool_need_lc=$need_lc
|
2300
|
+
|
2301
|
+
# Whether or not to build static libraries.
|
2302
|
+
build_old_libs=$enable_static
|
2303
|
+
|
2304
|
+
# Whether or not to optimize for fast installation.
|
2305
|
+
fast_install=$enable_fast_install
|
2306
|
+
|
2307
|
+
# The host system.
|
2308
|
+
host_alias=$host_alias
|
2309
|
+
host=$host
|
2310
|
+
|
2311
|
+
# An echo program that does not interpret backslashes.
|
2312
|
+
echo=$ltecho
|
2313
|
+
|
2314
|
+
# The archiver.
|
2315
|
+
AR=$AR
|
2316
|
+
AR_FLAGS=$AR_FLAGS
|
2317
|
+
|
2318
|
+
# A C compiler.
|
2319
|
+
LTCC=$LTCC
|
2320
|
+
|
2321
|
+
# A language-specific compiler.
|
2322
|
+
CC=$CC
|
2323
|
+
|
2324
|
+
# Is the compiler the GNU C compiler?
|
2325
|
+
with_gcc=$with_gcc
|
2326
|
+
|
2327
|
+
# The linker used to build libraries.
|
2328
|
+
LD=$LD
|
2329
|
+
|
2330
|
+
# Whether we need hard or soft links.
|
2331
|
+
LN_S=$LN_S
|
2332
|
+
|
2333
|
+
# A BSD-compatible nm program.
|
2334
|
+
NM=$NM
|
2335
|
+
|
2336
|
+
# A symbol stripping program
|
2337
|
+
STRIP=$STRIP
|
2338
|
+
|
2339
|
+
# Used to examine libraries when file_magic_cmd begins "file"
|
2340
|
+
MAGIC_CMD=$MAGIC_CMD
|
2341
|
+
|
2342
|
+
# Used on cygwin: DLL creation program.
|
2343
|
+
DLLTOOL="$DLLTOOL"
|
2344
|
+
|
2345
|
+
# Used on cygwin: object dumper.
|
2346
|
+
OBJDUMP="$OBJDUMP"
|
2347
|
+
|
2348
|
+
# Used on cygwin: assembler.
|
2349
|
+
AS="$AS"
|
2350
|
+
|
2351
|
+
# The name of the directory that contains temporary libtool files.
|
2352
|
+
objdir=$objdir
|
2353
|
+
|
2354
|
+
# How to create reloadable object files.
|
2355
|
+
reload_flag=$reload_flag
|
2356
|
+
reload_cmds=$reload_cmds
|
2357
|
+
|
2358
|
+
# How to pass a linker flag through the compiler.
|
2359
|
+
wl=$wl
|
2360
|
+
|
2361
|
+
# Object file suffix (normally "o").
|
2362
|
+
objext="$objext"
|
2363
|
+
|
2364
|
+
# Old archive suffix (normally "a").
|
2365
|
+
libext="$libext"
|
2366
|
+
|
2367
|
+
# Shared library suffix (normally ".so").
|
2368
|
+
shrext='$shrext'
|
2369
|
+
|
2370
|
+
# Executable file suffix (normally "").
|
2371
|
+
exeext="$exeext"
|
2372
|
+
|
2373
|
+
# Additional compiler flags for building library objects.
|
2374
|
+
pic_flag=$pic_flag
|
2375
|
+
pic_mode=$pic_mode
|
2376
|
+
|
2377
|
+
# What is the maximum length of a command?
|
2378
|
+
max_cmd_len=$max_cmd_len
|
2379
|
+
|
2380
|
+
# Does compiler simultaneously support -c and -o options?
|
2381
|
+
compiler_c_o=$compiler_c_o
|
2382
|
+
|
2383
|
+
# Must we lock files when doing compilation ?
|
2384
|
+
need_locks=$need_locks
|
2385
|
+
|
2386
|
+
# Do we need the lib prefix for modules?
|
2387
|
+
need_lib_prefix=$need_lib_prefix
|
2388
|
+
|
2389
|
+
# Do we need a version for libraries?
|
2390
|
+
need_version=$need_version
|
2391
|
+
|
2392
|
+
# Whether dlopen is supported.
|
2393
|
+
dlopen_support=$enable_dlopen
|
2394
|
+
|
2395
|
+
# Whether dlopen of programs is supported.
|
2396
|
+
dlopen_self=$enable_dlopen_self
|
2397
|
+
|
2398
|
+
# Whether dlopen of statically linked programs is supported.
|
2399
|
+
dlopen_self_static=$enable_dlopen_self_static
|
2400
|
+
|
2401
|
+
# Compiler flag to prevent dynamic linking.
|
2402
|
+
link_static_flag=$link_static_flag
|
2403
|
+
|
2404
|
+
# Compiler flag to turn off builtin functions.
|
2405
|
+
no_builtin_flag=$no_builtin_flag
|
2406
|
+
|
2407
|
+
# Compiler flag to allow reflexive dlopens.
|
2408
|
+
export_dynamic_flag_spec=$export_dynamic_flag_spec
|
2409
|
+
|
2410
|
+
# Compiler flag to generate shared objects directly from archives.
|
2411
|
+
whole_archive_flag_spec=$whole_archive_flag_spec
|
2412
|
+
|
2413
|
+
# Compiler flag to generate thread-safe objects.
|
2414
|
+
thread_safe_flag_spec=$thread_safe_flag_spec
|
2415
|
+
|
2416
|
+
# Library versioning type.
|
2417
|
+
version_type=$version_type
|
2418
|
+
|
2419
|
+
# Format of library name prefix.
|
2420
|
+
libname_spec=$libname_spec
|
2421
|
+
|
2422
|
+
# List of archive names. First name is the real one, the rest are links.
|
2423
|
+
# The last name is the one that the linker finds with -lNAME.
|
2424
|
+
library_names_spec=$library_names_spec
|
2425
|
+
|
2426
|
+
# The coded name of the library, if different from the real name.
|
2427
|
+
soname_spec=$soname_spec
|
2428
|
+
|
2429
|
+
# Commands used to build and install an old-style archive.
|
2430
|
+
RANLIB=$RANLIB
|
2431
|
+
old_archive_cmds=$old_archive_cmds
|
2432
|
+
old_postinstall_cmds=$old_postinstall_cmds
|
2433
|
+
old_postuninstall_cmds=$old_postuninstall_cmds
|
2434
|
+
|
2435
|
+
# Create an old-style archive from a shared archive.
|
2436
|
+
old_archive_from_new_cmds=$old_archive_from_new_cmds
|
2437
|
+
|
2438
|
+
# Create a temporary old-style archive to link instead of a shared archive.
|
2439
|
+
old_archive_from_expsyms_cmds=$old_archive_from_expsyms_cmds
|
2440
|
+
|
2441
|
+
# Commands used to build and install a shared archive.
|
2442
|
+
archive_cmds=$archive_cmds
|
2443
|
+
archive_expsym_cmds=$archive_expsym_cmds
|
2444
|
+
postinstall_cmds=$postinstall_cmds
|
2445
|
+
postuninstall_cmds=$postuninstall_cmds
|
2446
|
+
|
2447
|
+
# Commands to strip libraries.
|
2448
|
+
old_striplib=$old_striplib
|
2449
|
+
striplib=$striplib
|
2450
|
+
|
2451
|
+
# Dependencies to place before the objects being linked to create a
|
2452
|
+
# shared library.
|
2453
|
+
predep_objects=$predep_objects
|
2454
|
+
|
2455
|
+
# Dependencies to place after the objects being linked to create a
|
2456
|
+
# shared library.
|
2457
|
+
postdep_objects=$postdep_objects
|
2458
|
+
|
2459
|
+
# Dependencies to place before the objects being linked to create a
|
2460
|
+
# shared library.
|
2461
|
+
predeps=$predeps
|
2462
|
+
|
2463
|
+
# Dependencies to place after the objects being linked to create a
|
2464
|
+
# shared library.
|
2465
|
+
postdeps=$postdeps
|
2466
|
+
|
2467
|
+
# The library search path used internally by the compiler when linking
|
2468
|
+
# a shared library.
|
2469
|
+
compiler_lib_search_path=$compiler_lib_search_path
|
2470
|
+
|
2471
|
+
# Method to check whether dependent libraries are shared objects.
|
2472
|
+
deplibs_check_method=$deplibs_check_method
|
2473
|
+
|
2474
|
+
# Command to use when deplibs_check_method == file_magic.
|
2475
|
+
file_magic_cmd=$file_magic_cmd
|
2476
|
+
|
2477
|
+
# Flag that allows shared libraries with undefined symbols to be built.
|
2478
|
+
allow_undefined_flag=$allow_undefined_flag
|
2479
|
+
|
2480
|
+
# Flag that forces no undefined symbols.
|
2481
|
+
no_undefined_flag=$no_undefined_flag
|
2482
|
+
|
2483
|
+
# Commands used to finish a libtool library installation in a directory.
|
2484
|
+
finish_cmds=$finish_cmds
|
2485
|
+
|
2486
|
+
# Same as above, but a single script fragment to be evaled but not shown.
|
2487
|
+
finish_eval=$finish_eval
|
2488
|
+
|
2489
|
+
# Take the output of nm and produce a listing of raw symbols and C names.
|
2490
|
+
global_symbol_pipe=$global_symbol_pipe
|
2491
|
+
|
2492
|
+
# Transform the output of nm in a proper C declaration
|
2493
|
+
global_symbol_to_cdecl=$global_symbol_to_cdecl
|
2494
|
+
|
2495
|
+
# This is the shared library runtime path variable.
|
2496
|
+
runpath_var=$runpath_var
|
2497
|
+
|
2498
|
+
# This is the shared library path variable.
|
2499
|
+
shlibpath_var=$shlibpath_var
|
2500
|
+
|
2501
|
+
# Is shlibpath searched before the hard-coded library search path?
|
2502
|
+
shlibpath_overrides_runpath=$shlibpath_overrides_runpath
|
2503
|
+
|
2504
|
+
# How to hardcode a shared library path into an executable.
|
2505
|
+
hardcode_action=$hardcode_action
|
2506
|
+
|
2507
|
+
# Whether we should hardcode library paths into libraries.
|
2508
|
+
hardcode_into_libs=$hardcode_into_libs
|
2509
|
+
|
2510
|
+
# Flag to hardcode \$libdir into a binary during linking.
|
2511
|
+
# This must work even if \$libdir does not exist.
|
2512
|
+
hardcode_libdir_flag_spec=$hardcode_libdir_flag_spec
|
2513
|
+
|
2514
|
+
# Whether we need a single -rpath flag with a separated argument.
|
2515
|
+
hardcode_libdir_separator=$hardcode_libdir_separator
|
2516
|
+
|
2517
|
+
# Set to yes if using DIR/libNAME.so during linking hardcodes DIR into the
|
2518
|
+
# resulting binary.
|
2519
|
+
hardcode_direct=$hardcode_direct
|
2520
|
+
|
2521
|
+
# Set to yes if using the -LDIR flag during linking hardcodes DIR into the
|
2522
|
+
# resulting binary.
|
2523
|
+
hardcode_minus_L=$hardcode_minus_L
|
2524
|
+
|
2525
|
+
# Set to yes if using SHLIBPATH_VAR=DIR during linking hardcodes DIR into
|
2526
|
+
# the resulting binary.
|
2527
|
+
hardcode_shlibpath_var=$hardcode_shlibpath_var
|
2528
|
+
|
2529
|
+
# Variables whose values should be saved in libtool wrapper scripts and
|
2530
|
+
# restored at relink time.
|
2531
|
+
variables_saved_for_relink="$variables_saved_for_relink"
|
2532
|
+
|
2533
|
+
# Whether libtool must link a program against all its dependency libraries.
|
2534
|
+
link_all_deplibs=$link_all_deplibs
|
2535
|
+
|
2536
|
+
# Compile-time system search path for libraries
|
2537
|
+
sys_lib_search_path_spec=$sys_lib_search_path_spec
|
2538
|
+
|
2539
|
+
# Run-time system search path for libraries
|
2540
|
+
sys_lib_dlsearch_path_spec=$sys_lib_dlsearch_path_spec
|
2541
|
+
|
2542
|
+
# Fix the shell variable \$srcfile for the compiler.
|
2543
|
+
fix_srcfile_path="$fix_srcfile_path"
|
2544
|
+
|
2545
|
+
# Set to yes if exported symbols are required.
|
2546
|
+
always_export_symbols=$always_export_symbols
|
2547
|
+
|
2548
|
+
# The commands to list exported symbols.
|
2549
|
+
export_symbols_cmds=$export_symbols_cmds
|
2550
|
+
|
2551
|
+
# The commands to extract the exported symbol list from a shared archive.
|
2552
|
+
extract_expsyms_cmds=$extract_expsyms_cmds
|
2553
|
+
|
2554
|
+
# Symbols that should not be listed in the preloaded symbols.
|
2555
|
+
exclude_expsyms=$exclude_expsyms
|
2556
|
+
|
2557
|
+
# Symbols that must always be exported.
|
2558
|
+
include_expsyms=$include_expsyms
|
2559
|
+
|
2560
|
+
EOF
|
2561
|
+
|
2562
|
+
if test -z "$tagname"; then
|
2563
|
+
echo '### END LIBTOOL CONFIG' >> "$ofile"
|
2564
|
+
else
|
2565
|
+
echo "### END LIBTOOL TAG CONFIG: $tagname" >> "$ofile"
|
2566
|
+
fi
|
2567
|
+
|
2568
|
+
case $ltmain in
|
2569
|
+
*.sh)
|
2570
|
+
echo >> "$ofile"
|
2571
|
+
if test -z "$tagname"; then
|
2572
|
+
case $host_os in
|
2573
|
+
aix3*)
|
2574
|
+
cat <<\EOF >> "$ofile"
|
2575
|
+
|
2576
|
+
# AIX sometimes has problems with the GCC collect2 program. For some
|
2577
|
+
# reason, if we set the COLLECT_NAMES environment variable, the problems
|
2578
|
+
# vanish in a puff of smoke.
|
2579
|
+
if test "X${COLLECT_NAMES+set}" != Xset; then
|
2580
|
+
COLLECT_NAMES=
|
2581
|
+
export COLLECT_NAMES
|
2582
|
+
fi
|
2583
|
+
EOF
|
2584
|
+
;;
|
2585
|
+
esac
|
2586
|
+
case $host in
|
2587
|
+
*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*)
|
2588
|
+
cat <<'EOF' >> "$ofile"
|
2589
|
+
# This is a source program that is used to create dlls on Windows
|
2590
|
+
# Don't remove nor modify the starting and closing comments
|
2591
|
+
# /* ltdll.c starts here */
|
2592
|
+
# #define WIN32_LEAN_AND_MEAN
|
2593
|
+
# #include <windows.h>
|
2594
|
+
# #undef WIN32_LEAN_AND_MEAN
|
2595
|
+
# #include <stdio.h>
|
2596
|
+
#
|
2597
|
+
# #ifndef __CYGWIN__
|
2598
|
+
# # ifdef __CYGWIN32__
|
2599
|
+
# # define __CYGWIN__ __CYGWIN32__
|
2600
|
+
# # endif
|
2601
|
+
# #endif
|
2602
|
+
#
|
2603
|
+
# #ifdef __cplusplus
|
2604
|
+
# extern "C" {
|
2605
|
+
# #endif
|
2606
|
+
# BOOL APIENTRY DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved);
|
2607
|
+
# #ifdef __cplusplus
|
2608
|
+
# }
|
2609
|
+
# #endif
|
2610
|
+
#
|
2611
|
+
# #ifdef __CYGWIN__
|
2612
|
+
# #include <cygwin/cygwin_dll.h>
|
2613
|
+
# DECLARE_CYGWIN_DLL( DllMain );
|
2614
|
+
# #endif
|
2615
|
+
# HINSTANCE __hDllInstance_base;
|
2616
|
+
#
|
2617
|
+
# BOOL APIENTRY
|
2618
|
+
# DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved)
|
2619
|
+
# {
|
2620
|
+
# __hDllInstance_base = hInst;
|
2621
|
+
# return TRUE;
|
2622
|
+
# }
|
2623
|
+
# /* ltdll.c ends here */
|
2624
|
+
# This is a source program that is used to create import libraries
|
2625
|
+
# on Windows for dlls which lack them. Don't remove nor modify the
|
2626
|
+
# starting and closing comments
|
2627
|
+
# /* impgen.c starts here */
|
2628
|
+
# /* Copyright (C) 1999-2000 Free Software Foundation, Inc.
|
2629
|
+
#
|
2630
|
+
# This file is part of GNU libtool.
|
2631
|
+
#
|
2632
|
+
# This program is free software; you can redistribute it and/or modify
|
2633
|
+
# it under the terms of the GNU General Public License as published by
|
2634
|
+
# the Free Software Foundation; either version 2 of the License, or
|
2635
|
+
# (at your option) any later version.
|
2636
|
+
#
|
2637
|
+
# This program is distributed in the hope that it will be useful,
|
2638
|
+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
2639
|
+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
2640
|
+
# GNU General Public License for more details.
|
2641
|
+
#
|
2642
|
+
# You should have received a copy of the GNU General Public License
|
2643
|
+
# along with this program; if not, write to the Free Software
|
2644
|
+
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
2645
|
+
# */
|
2646
|
+
#
|
2647
|
+
# #include <stdio.h> /* for printf() */
|
2648
|
+
# #include <unistd.h> /* for open(), lseek(), read() */
|
2649
|
+
# #include <fcntl.h> /* for O_RDONLY, O_BINARY */
|
2650
|
+
# #include <string.h> /* for strdup() */
|
2651
|
+
#
|
2652
|
+
# /* O_BINARY isn't required (or even defined sometimes) under Unix */
|
2653
|
+
# #ifndef O_BINARY
|
2654
|
+
# #define O_BINARY 0
|
2655
|
+
# #endif
|
2656
|
+
#
|
2657
|
+
# static unsigned int
|
2658
|
+
# pe_get16 (fd, offset)
|
2659
|
+
# int fd;
|
2660
|
+
# int offset;
|
2661
|
+
# {
|
2662
|
+
# unsigned char b[2];
|
2663
|
+
# lseek (fd, offset, SEEK_SET);
|
2664
|
+
# read (fd, b, 2);
|
2665
|
+
# return b[0] + (b[1]<<8);
|
2666
|
+
# }
|
2667
|
+
#
|
2668
|
+
# static unsigned int
|
2669
|
+
# pe_get32 (fd, offset)
|
2670
|
+
# int fd;
|
2671
|
+
# int offset;
|
2672
|
+
# {
|
2673
|
+
# unsigned char b[4];
|
2674
|
+
# lseek (fd, offset, SEEK_SET);
|
2675
|
+
# read (fd, b, 4);
|
2676
|
+
# return b[0] + (b[1]<<8) + (b[2]<<16) + (b[3]<<24);
|
2677
|
+
# }
|
2678
|
+
#
|
2679
|
+
# static unsigned int
|
2680
|
+
# pe_as32 (ptr)
|
2681
|
+
# void *ptr;
|
2682
|
+
# {
|
2683
|
+
# unsigned char *b = ptr;
|
2684
|
+
# return b[0] + (b[1]<<8) + (b[2]<<16) + (b[3]<<24);
|
2685
|
+
# }
|
2686
|
+
#
|
2687
|
+
# int
|
2688
|
+
# main (argc, argv)
|
2689
|
+
# int argc;
|
2690
|
+
# char *argv[];
|
2691
|
+
# {
|
2692
|
+
# int dll;
|
2693
|
+
# unsigned long pe_header_offset, opthdr_ofs, num_entries, i;
|
2694
|
+
# unsigned long export_rva, export_size, nsections, secptr, expptr;
|
2695
|
+
# unsigned long name_rvas, nexp;
|
2696
|
+
# unsigned char *expdata, *erva;
|
2697
|
+
# char *filename, *dll_name;
|
2698
|
+
#
|
2699
|
+
# filename = argv[1];
|
2700
|
+
#
|
2701
|
+
# dll = open(filename, O_RDONLY|O_BINARY);
|
2702
|
+
# if (dll < 1)
|
2703
|
+
# return 1;
|
2704
|
+
#
|
2705
|
+
# dll_name = filename;
|
2706
|
+
#
|
2707
|
+
# for (i=0; filename[i]; i++)
|
2708
|
+
# if (filename[i] == '/' || filename[i] == '\\' || filename[i] == ':')
|
2709
|
+
# dll_name = filename + i +1;
|
2710
|
+
#
|
2711
|
+
# pe_header_offset = pe_get32 (dll, 0x3c);
|
2712
|
+
# opthdr_ofs = pe_header_offset + 4 + 20;
|
2713
|
+
# num_entries = pe_get32 (dll, opthdr_ofs + 92);
|
2714
|
+
#
|
2715
|
+
# if (num_entries < 1) /* no exports */
|
2716
|
+
# return 1;
|
2717
|
+
#
|
2718
|
+
# export_rva = pe_get32 (dll, opthdr_ofs + 96);
|
2719
|
+
# export_size = pe_get32 (dll, opthdr_ofs + 100);
|
2720
|
+
# nsections = pe_get16 (dll, pe_header_offset + 4 +2);
|
2721
|
+
# secptr = (pe_header_offset + 4 + 20 +
|
2722
|
+
# pe_get16 (dll, pe_header_offset + 4 + 16));
|
2723
|
+
#
|
2724
|
+
# expptr = 0;
|
2725
|
+
# for (i = 0; i < nsections; i++)
|
2726
|
+
# {
|
2727
|
+
# char sname[8];
|
2728
|
+
# unsigned long secptr1 = secptr + 40 * i;
|
2729
|
+
# unsigned long vaddr = pe_get32 (dll, secptr1 + 12);
|
2730
|
+
# unsigned long vsize = pe_get32 (dll, secptr1 + 16);
|
2731
|
+
# unsigned long fptr = pe_get32 (dll, secptr1 + 20);
|
2732
|
+
# lseek(dll, secptr1, SEEK_SET);
|
2733
|
+
# read(dll, sname, 8);
|
2734
|
+
# if (vaddr <= export_rva && vaddr+vsize > export_rva)
|
2735
|
+
# {
|
2736
|
+
# expptr = fptr + (export_rva - vaddr);
|
2737
|
+
# if (export_rva + export_size > vaddr + vsize)
|
2738
|
+
# export_size = vsize - (export_rva - vaddr);
|
2739
|
+
# break;
|
2740
|
+
# }
|
2741
|
+
# }
|
2742
|
+
#
|
2743
|
+
# expdata = (unsigned char*)malloc(export_size);
|
2744
|
+
# lseek (dll, expptr, SEEK_SET);
|
2745
|
+
# read (dll, expdata, export_size);
|
2746
|
+
# erva = expdata - export_rva;
|
2747
|
+
#
|
2748
|
+
# nexp = pe_as32 (expdata+24);
|
2749
|
+
# name_rvas = pe_as32 (expdata+32);
|
2750
|
+
#
|
2751
|
+
# printf ("EXPORTS\n");
|
2752
|
+
# for (i = 0; i<nexp; i++)
|
2753
|
+
# {
|
2754
|
+
# unsigned long name_rva = pe_as32 (erva+name_rvas+i*4);
|
2755
|
+
# printf ("\t%s @ %ld ;\n", erva+name_rva, 1+ i);
|
2756
|
+
# }
|
2757
|
+
#
|
2758
|
+
# return 0;
|
2759
|
+
# }
|
2760
|
+
# /* impgen.c ends here */
|
2761
|
+
|
2762
|
+
EOF
|
2763
|
+
;;
|
2764
|
+
esac
|
2765
|
+
|
2766
|
+
|
2767
|
+
# Append the ltmain.sh script.
|
2768
|
+
sed '$q' "$ltmain" >> "$ofile" || (rm -f "$ofile"; exit 1)
|
2769
|
+
# We use sed instead of cat because bash on DJGPP gets confused if
|
2770
|
+
# if finds mixed CR/LF and LF-only lines. Since sed operates in
|
2771
|
+
# text mode, it properly converts lines to CR/LF. This bash problem
|
2772
|
+
# is reportedly fixed, but why not run on old versions too?
|
2773
|
+
|
2774
|
+
chmod +x "$ofile"
|
2775
|
+
fi
|
2776
|
+
;;
|
2777
|
+
|
2778
|
+
*)
|
2779
|
+
# Compile the libtool program.
|
2780
|
+
echo "FIXME: would compile $ltmain"
|
2781
|
+
;;
|
2782
|
+
esac
|
2783
|
+
|
2784
|
+
# Update the list of available tags.
|
2785
|
+
if test -n "$tagname"; then
|
2786
|
+
|
2787
|
+
# Extract list of available tagged configurations in $ofile.
|
2788
|
+
# Note that this assumes the entire list is on one line.
|
2789
|
+
available_tags=`grep "^available_tags=" $ofile | sed -e 's/available_tags=\(.*$\)/\1/' -e 's/\"//g'`
|
2790
|
+
|
2791
|
+
# Append the new tag name to the list of available tags.
|
2792
|
+
available_tags="$available_tags $tagname"
|
2793
|
+
|
2794
|
+
# Now substitute the updated of available tags.
|
2795
|
+
if eval "sed -e 's/^available_tags=.*\$/available_tags=\"$available_tags\"/' ${ofile} > ${ofile}.new"; then
|
2796
|
+
mv ${ofile}.new ${ofile}
|
2797
|
+
chmod +x "$ofile"
|
2798
|
+
else
|
2799
|
+
rm -f ${ofile}.new
|
2800
|
+
echo "$progname: unable to update list of available tagged configurations."
|
2801
|
+
exit 1
|
2802
|
+
fi
|
2803
|
+
fi
|
2804
|
+
|
2805
|
+
# Don't cache tagged configuration!
|
2806
|
+
test -n "$cache_file" && test -z "$tagname" || exit 0
|
2807
|
+
|
2808
|
+
# AC_CACHE_SAVE
|
2809
|
+
trap '' 1 2 15
|
2810
|
+
cat > confcache <<\EOF
|
2811
|
+
# This file is a shell script that caches the results of configure
|
2812
|
+
# tests run on this system so they can be shared between configure
|
2813
|
+
# scripts and configure runs. It is not useful on other systems.
|
2814
|
+
# If it contains results you don't want to keep, you may remove or edit it.
|
2815
|
+
#
|
2816
|
+
# By default, configure uses ./config.cache as the cache file,
|
2817
|
+
# creating it if it does not exist already. You can give configure
|
2818
|
+
# the --cache-file=FILE option to use a different cache file; that is
|
2819
|
+
# what configure does when it calls configure scripts in
|
2820
|
+
# subdirectories, so they share the cache.
|
2821
|
+
# Giving --cache-file=/dev/null disables caching, for debugging configure.
|
2822
|
+
# config.status only pays attention to the cache file if you give it the
|
2823
|
+
# --recheck option to rerun configure.
|
2824
|
+
#
|
2825
|
+
EOF
|
2826
|
+
# The following way of writing the cache mishandles newlines in values,
|
2827
|
+
# but we know of no workaround that is simple, portable, and efficient.
|
2828
|
+
# So, don't put newlines in cache variables' values.
|
2829
|
+
# Ultrix sh set writes to stderr and can't be redirected directly,
|
2830
|
+
# and sets the high bit in the cache file unless we assign to the vars.
|
2831
|
+
(set) 2>&1 |
|
2832
|
+
case `(ac_space=' '; set | grep ac_space) 2>&1` in
|
2833
|
+
*ac_space=\ *)
|
2834
|
+
# `set' does not quote correctly, so add quotes (double-quote substitution
|
2835
|
+
# turns \\\\ into \\, and sed turns \\ into \).
|
2836
|
+
sed -n \
|
2837
|
+
-e "s/'/'\\\\''/g" \
|
2838
|
+
-e "s/^\\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\\)=\\(.*\\)/\\1=\${\\1='\\2'}/p"
|
2839
|
+
;;
|
2840
|
+
*)
|
2841
|
+
# `set' quotes correctly as required by POSIX, so do not add quotes.
|
2842
|
+
sed -n -e 's/^\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\)=\(.*\)/\1=${\1=\2}/p'
|
2843
|
+
;;
|
2844
|
+
esac >> confcache
|
2845
|
+
if cmp -s $cache_file confcache; then
|
2846
|
+
:
|
2847
|
+
else
|
2848
|
+
if test -w $cache_file; then
|
2849
|
+
echo "updating cache $cache_file"
|
2850
|
+
cat confcache > $cache_file
|
2851
|
+
else
|
2852
|
+
echo "not updating unwritable cache $cache_file"
|
2853
|
+
fi
|
2854
|
+
fi
|
2855
|
+
rm -f confcache
|
2856
|
+
|
2857
|
+
exit 0
|
2858
|
+
|
2859
|
+
# Local Variables:
|
2860
|
+
# mode:shell-script
|
2861
|
+
# sh-indentation:2
|
2862
|
+
# End:
|