From 00f493c3fbebe46418f89a2f3d6ce08041c88d3e Mon Sep 17 00:00:00 2001 From: Guy Stone Date: Fri, 10 May 2019 22:03:16 +0100 Subject: [PATCH] reverted --- .../em-websocket-0.5.1/em-websocket.gemspec | 24 + .../ffi-1.10.0/ext/ffi_c/AbstractMemory.o | Bin 0 -> 235004 bytes .../gems/ffi-1.10.0/ext/ffi_c/ArrayType.o | Bin 0 -> 9620 bytes .../2.5.0/gems/ffi-1.10.0/ext/ffi_c/Buffer.o | Bin 0 -> 22692 bytes .../2.5.0/gems/ffi-1.10.0/ext/ffi_c/Call.o | Bin 0 -> 29824 bytes .../gems/ffi-1.10.0/ext/ffi_c/ClosurePool.o | Bin 0 -> 9884 bytes .../gems/ffi-1.10.0/ext/ffi_c/DataConverter.o | Bin 0 -> 5072 bytes .../ffi-1.10.0/ext/ffi_c/DynamicLibrary.o | Bin 0 -> 14244 bytes .../gems/ffi-1.10.0/ext/ffi_c/Function.o | Bin 0 -> 42932 bytes .../gems/ffi-1.10.0/ext/ffi_c/FunctionInfo.o | Bin 0 -> 17852 bytes .../gems/ffi-1.10.0/ext/ffi_c/LastError.o | Bin 0 -> 5604 bytes .../gems/ffi-1.10.0/ext/ffi_c/LongDouble.o | Bin 0 -> 8380 bytes .../gems/ffi-1.10.0/ext/ffi_c/MappedType.o | Bin 0 -> 11568 bytes .../gems/ffi-1.10.0/ext/ffi_c/MemoryPointer.o | Bin 0 -> 14632 bytes .../gems/ffi-1.10.0/ext/ffi_c/MethodHandle.o | Bin 0 -> 10080 bytes .../gems/ffi-1.10.0/ext/ffi_c/Platform.o | Bin 0 -> 4028 bytes .../2.5.0/gems/ffi-1.10.0/ext/ffi_c/Pointer.o | Bin 0 -> 29424 bytes .../2.5.0/gems/ffi-1.10.0/ext/ffi_c/Struct.o | Bin 0 -> 50920 bytes .../ffi-1.10.0/ext/ffi_c/StructByReference.o | Bin 0 -> 13440 bytes .../gems/ffi-1.10.0/ext/ffi_c/StructByValue.o | Bin 0 -> 11580 bytes .../gems/ffi-1.10.0/ext/ffi_c/StructLayout.o | Bin 0 -> 37128 bytes .../2.5.0/gems/ffi-1.10.0/ext/ffi_c/Thread.o | Bin 0 -> 4732 bytes .../2.5.0/gems/ffi-1.10.0/ext/ffi_c/Type.o | Bin 0 -> 40268 bytes .../2.5.0/gems/ffi-1.10.0/ext/ffi_c/Types.o | Bin 0 -> 10512 bytes .../gems/ffi-1.10.0/ext/ffi_c/Variadic.o | Bin 0 -> 19968 bytes .../2.5.0/gems/ffi-1.10.0/ext/ffi_c/ffi.o | Bin 0 -> 3864 bytes .../.libs/libffi_convenience.a | Bin 0 -> 63752 bytes .../ffi_c/libffi-x86_64-darwin18/doc/Makefile | 811 + .../src/.libs/closures.o | Bin 0 -> 33456 bytes .../src/.libs/java_raw_api.o | Bin 0 -> 3468 bytes .../src/.libs/prep_cif.o | Bin 0 -> 2552 bytes .../src/.libs/raw_api.o | Bin 0 -> 3112 bytes .../libffi-x86_64-darwin18/src/.libs/types.o | Bin 0 -> 1736 bytes .../src/x86/.libs/ffi64.o | Bin 0 -> 9200 bytes .../src/x86/.libs/ffiw64.o | Bin 0 -> 4132 bytes .../src/x86/.libs/unix64.o | Bin 0 -> 1764 bytes .../src/x86/.libs/win64.o | Bin 0 -> 1980 bytes .../ffi-1.10.0/ext/ffi_c/libffi/Makefile.in | 1809 ++ .../ffi-1.10.0/ext/ffi_c/libffi/configure | 21978 ++++++++++++++++ .../ext/ffi_c/libffi/doc/Makefile.am | 3 + .../ext/ffi_c/libffi/doc/Makefile.in | 811 + .../ext/ffi_c/libffi/doc/libffi.texi | 985 + .../ext/ffi_c/libffi/doc/version.texi | 4 + .../ext/ffi_c/libffi/fficonfig.h.in | 210 + .../ext/ffi_c/libffi/include/Makefile.in | 604 + .../ffi-1.10.0/ext/ffi_c/libffi/install-sh | 508 + .../ext/ffi_c/libffi/libtool-ldflags | 106 + .../ffi-1.10.0/ext/ffi_c/libffi/ltmain.sh | 11156 ++++++++ .../ext/ffi_c/libffi/man/Makefile.in | 558 + .../gems/ffi-1.10.0/ext/ffi_c/libffi/missing | 215 + .../ext/ffi_c/libffi/testsuite/Makefile.in | 608 + .../2.5.0/gems/ffi-1.10.0/lib/ffi_c.bundle | Bin 0 -> 197020 bytes .../ext/ruby_http_parser/Makefile | 264 + .../ruby_http_parser/ruby_http_parser.bundle | Bin 0 -> 40572 bytes .../ext/ruby_http_parser/ruby_http_parser.o | Bin 0 -> 39212 bytes .../ext/ruby_http_parser/ryah_http_parser.c | 2058 ++ .../ext/ruby_http_parser/ryah_http_parser.h | 312 + .../ext/ruby_http_parser/ryah_http_parser.o | Bin 0 -> 50448 bytes .../vendor/http-parser-java/Makefile | 58 + .../http-parser-java/ext/primitives.jar | Bin 0 -> 54971 bytes .../vendor/http-parser/Makefile | 58 + .../lib/ruby_http_parser.bundle | Bin 0 -> 40572 bytes 62 files changed, 43140 insertions(+) create mode 100644 vendor/bundle/ruby/2.5.0/gems/em-websocket-0.5.1/em-websocket.gemspec create mode 100644 vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/AbstractMemory.o create mode 100644 vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/ArrayType.o create mode 100644 vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/Buffer.o create mode 100644 vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/Call.o create mode 100644 vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/ClosurePool.o create mode 100644 vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/DataConverter.o create mode 100644 vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/DynamicLibrary.o create mode 100644 vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/Function.o create mode 100644 vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/FunctionInfo.o create mode 100644 vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/LastError.o create mode 100644 vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/LongDouble.o create mode 100644 vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/MappedType.o create mode 100644 vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/MemoryPointer.o create mode 100644 vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/MethodHandle.o create mode 100644 vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/Platform.o create mode 100644 vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/Pointer.o create mode 100644 vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/Struct.o create mode 100644 vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/StructByReference.o create mode 100644 vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/StructByValue.o create mode 100644 vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/StructLayout.o create mode 100644 vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/Thread.o create mode 100644 vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/Type.o create mode 100644 vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/Types.o create mode 100644 vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/Variadic.o create mode 100644 vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/ffi.o create mode 100644 vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi-x86_64-darwin18/.libs/libffi_convenience.a create mode 100644 vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi-x86_64-darwin18/doc/Makefile create mode 100644 vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi-x86_64-darwin18/src/.libs/closures.o create mode 100644 vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi-x86_64-darwin18/src/.libs/java_raw_api.o create mode 100644 vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi-x86_64-darwin18/src/.libs/prep_cif.o create mode 100644 vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi-x86_64-darwin18/src/.libs/raw_api.o create mode 100644 vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi-x86_64-darwin18/src/.libs/types.o create mode 100644 vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi-x86_64-darwin18/src/x86/.libs/ffi64.o create mode 100644 vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi-x86_64-darwin18/src/x86/.libs/ffiw64.o create mode 100644 vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi-x86_64-darwin18/src/x86/.libs/unix64.o create mode 100644 vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi-x86_64-darwin18/src/x86/.libs/win64.o create mode 100644 vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi/Makefile.in create mode 100755 vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi/configure create mode 100644 vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi/doc/Makefile.am create mode 100644 vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi/doc/Makefile.in create mode 100644 vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi/doc/libffi.texi create mode 100644 vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi/doc/version.texi create mode 100644 vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi/fficonfig.h.in create mode 100644 vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi/include/Makefile.in create mode 100755 vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi/install-sh create mode 100755 vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi/libtool-ldflags create mode 100644 vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi/ltmain.sh create mode 100644 vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi/man/Makefile.in create mode 100755 vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi/missing create mode 100644 vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/Makefile.in create mode 100755 vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/lib/ffi_c.bundle create mode 100644 vendor/bundle/ruby/2.5.0/gems/http_parser.rb-0.6.0/ext/ruby_http_parser/Makefile create mode 100755 vendor/bundle/ruby/2.5.0/gems/http_parser.rb-0.6.0/ext/ruby_http_parser/ruby_http_parser.bundle create mode 100644 vendor/bundle/ruby/2.5.0/gems/http_parser.rb-0.6.0/ext/ruby_http_parser/ruby_http_parser.o create mode 100644 vendor/bundle/ruby/2.5.0/gems/http_parser.rb-0.6.0/ext/ruby_http_parser/ryah_http_parser.c create mode 100644 vendor/bundle/ruby/2.5.0/gems/http_parser.rb-0.6.0/ext/ruby_http_parser/ryah_http_parser.h create mode 100644 vendor/bundle/ruby/2.5.0/gems/http_parser.rb-0.6.0/ext/ruby_http_parser/ryah_http_parser.o create mode 100644 vendor/bundle/ruby/2.5.0/gems/http_parser.rb-0.6.0/ext/ruby_http_parser/vendor/http-parser-java/Makefile create mode 100644 vendor/bundle/ruby/2.5.0/gems/http_parser.rb-0.6.0/ext/ruby_http_parser/vendor/http-parser-java/ext/primitives.jar create mode 100644 vendor/bundle/ruby/2.5.0/gems/http_parser.rb-0.6.0/ext/ruby_http_parser/vendor/http-parser/Makefile create mode 100755 vendor/bundle/ruby/2.5.0/gems/http_parser.rb-0.6.0/lib/ruby_http_parser.bundle diff --git a/vendor/bundle/ruby/2.5.0/gems/em-websocket-0.5.1/em-websocket.gemspec b/vendor/bundle/ruby/2.5.0/gems/em-websocket-0.5.1/em-websocket.gemspec new file mode 100644 index 0000000000..f69d9d6da6 --- /dev/null +++ b/vendor/bundle/ruby/2.5.0/gems/em-websocket-0.5.1/em-websocket.gemspec @@ -0,0 +1,24 @@ +# -*- encoding: utf-8 -*- +$:.push File.expand_path("../lib", __FILE__) +require "em-websocket/version" + +Gem::Specification.new do |s| + s.name = "em-websocket" + s.version = EventMachine::Websocket::VERSION + s.platform = Gem::Platform::RUBY + s.authors = ["Ilya Grigorik", "Martyn Loughran"] + s.email = ["ilya@igvita.com", "me@mloughran.com"] + s.homepage = "http://github.com/igrigorik/em-websocket" + s.summary = %q{EventMachine based WebSocket server} + s.description = %q{EventMachine based WebSocket server} + + s.rubyforge_project = "em-websocket" + + s.files = `git ls-files`.split("\n") + s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n") + s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) } + s.require_paths = ["lib"] + + s.add_dependency("eventmachine", ">= 0.12.9") + s.add_dependency("http_parser.rb", '~> 0.6.0') +end diff --git a/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/AbstractMemory.o b/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/AbstractMemory.o new file mode 100644 index 0000000000000000000000000000000000000000..e9d414382e9d28dae33b75af301209acc11b5de3 GIT binary patch literal 235004 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 INl*9vA0(Ruo&W#< literal 0 HcmV?d00001 diff --git a/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/ArrayType.o b/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/ArrayType.o new file mode 100644 index 0000000000000000000000000000000000000000..22bf424ea7876b95855e5248c2ff40c6b27ff996 GIT binary patch literal 9620 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 E0W%A$QUCw| literal 0 HcmV?d00001 diff --git a/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/Buffer.o b/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/Buffer.o new file mode 100644 index 0000000000000000000000000000000000000000..98df102d2f0a3223e3c345528110a2ffe92b5096 GIT binary patch literal 22692 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 literal 0 HcmV?d00001 diff --git a/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/FunctionInfo.o b/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/FunctionInfo.o new file mode 100644 index 0000000000000000000000000000000000000000..bd16952ba48770bad48018a81b80bb4c7b8027a4 GIT binary patch literal 17852 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 literal 0 HcmV?d00001 diff --git a/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/LastError.o b/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/LastError.o new file mode 100644 index 0000000000000000000000000000000000000000..da4a5d1eaf34326a264b3c647c7883f416caa203 GIT binary patch literal 5604 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 literal 0 HcmV?d00001 diff --git a/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/LongDouble.o b/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/LongDouble.o new file mode 100644 index 0000000000000000000000000000000000000000..c2a17a03310562fc3d9540b36005faa67a537c2b GIT binary patch literal 8380 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 literal 0 HcmV?d00001 diff --git a/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/MappedType.o b/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/MappedType.o new file mode 100644 index 0000000000000000000000000000000000000000..be9387308a1b17eb46ab880f0ad1167112ff51dc GIT binary patch literal 11568 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 literal 0 HcmV?d00001 diff --git a/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/MemoryPointer.o b/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/MemoryPointer.o new file mode 100644 index 0000000000000000000000000000000000000000..9798bdf0c78b8655e4f604717fbd9a0b04be7421 GIT binary patch literal 14632 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 Z#-?ytY%{6$!Z^?7or@P~uHPCN`#*!!J>LKT literal 0 HcmV?d00001 diff --git a/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/MethodHandle.o b/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/MethodHandle.o new file mode 100644 index 0000000000000000000000000000000000000000..203646f2f54d87d1ab073a734d86a6550fbfd55c GIT binary patch literal 10080 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 literal 0 HcmV?d00001 diff --git a/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/Pointer.o b/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/Pointer.o new file mode 100644 index 0000000000000000000000000000000000000000..59cbf7988e788956d25dc1aeec55f920d939a7d8 GIT binary patch literal 29424 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 literal 0 HcmV?d00001 diff --git a/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/Struct.o b/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/Struct.o new file mode 100644 index 0000000000000000000000000000000000000000..d60891f367069759dbaa89fd247f980f17b1f43b GIT binary patch literal 50920 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 D{M4Pw literal 0 HcmV?d00001 diff --git a/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/StructByValue.o b/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/StructByValue.o new file mode 100644 index 0000000000000000000000000000000000000000..cc54acdc8b0f3295e134950dc913abafb3294f32 GIT binary patch literal 11580 zcmcIq3ve98neNf+3w5LjcU0p0 z{_dXHheSf9DqS`IyZ`R~r>CFu(*M2nyGq6s7X!fK#&cW+2;f0lhUYyJen9fC7K+bN z9wbfj@X6@$kr2r=^VadapannFJvvn2ZR(*4L6JWy_MyudYbBAJog!o>(@Z7vRyLMu z+rmYrS?bUB(XySty7duEa)#5k7uo;yuBs$+ax>I zH)X?KG;B8xUeI4MJ)R+p^7j5pc9ivAk^d7*1a4U8^x*~lO~n%2Wx2oQ%SC=W?tiyR z@I`Pzf73JZbZpAXmHS&E{ryln_}Yi}mp?H*-`{Vfzp$*uU4f#S39_tyiOke=ERi>7 z(#MkNG1H9fD$dc-D7e?9@Ril#`?wqNqj3PK%%3%Bj%U$Sp)CJC0v8E+yA0stYf8U2 zbf-ySVdoe9Ih9OvkLB?jmGQE_dh~)o-d=$dz z^^Cm;BkJD$cqmbO=^mw~ z2XR6)w=FbR&y{y>zRfY5;}*zUWN3>fU=_NP=Xru!DgD^$!GgN&xiZ}~#k$bxXS9RY z{hUe|Z}F}AI1%h_s()}~P!Rp*a!8xecM&*M#uabNS&Xb>y-ok-0>G3nH@@xJh_!cOWu5 z?GMe4HiYInwD4Ty5-l{h4}yMwXs$Li7uG_vAw2%b?0W};hk}QL=5>X#+VL_B)UE9t zcQzEvIUgYEsl-##>VvtPRZh;&`{?tH88Wjp?1 zuL=9v*NR@XM(+fv91rHRGl_iXiIG@p#$tkF$#gQGjHQw%EtZO%$jsy!rX84>iBt@; zT89)K%VyFO0UE9X$#g(U1IeSYY@o?HK5ZrP)>xpYCw%qQ!f%B8TE~LZ(HldNG&g0&9kkg4@ZBDJw~BAK6@ ziMLKekV(f<&Bv^G4$F+zqgHw>lWmR9q{mWLYj!4nqIF}-=9Ueu6V_C&b$mS8+}1)x zwqlJ#teIfhIN_3Tbn(`vsF5@2Tyi3f<|Na3HWG{scO!!d#>%G6WpR%9|t}#Gm%N>@;Tvo$n1;ub=!2bb5A!K$XhXF zc141NgErF}-8GC?B~|=g+Kh~uR1I|R?jG&8bs|Vo6$%c9Yy~n=ETyJ1yc-R)xt?&L zB)))^R=vTYF2_Mvw6{OfJ!NYprx2wCy zX2QMQy-}O#i|%qfgiB&{ZM3&D?CAL0;(p0Y4HI73BlGLy|SUY3=zNS9+K4KiHh5ailq zynt+6j6Y)Fu{kkpmX3pFDND6aCfIl?Hj!gT_^>t5$wgyRvFs5xHlDRC#&=8uyJ+9U z2Q?bY#*i*YibMm}jWfxtHO9=&OeTe~P}aYX z7Kjt@B&Ue!3?Cy|Y-}uRVd_Xs#$=}gKb|7eMzd!IBGp+bL1>f)#N!(IBenl@%DcQ}sB^5SiigfyvO?O(9z^G>$G`Q^`x$O5^_3!9S;pK}}^ zDmQsRs%SewNpUuLf(LwCs{Yq88MaA3_DPf!Hm`c`{!zIqrNe5+vAyRM1px-6YMo;; zY?B?1XkK;J{!zKM%3RwV$MdSwFI5K|lVO`Y;)v!|=af{vk@?x_Vo61-6#1B`jR$sv#CtOAx1G0AWfe<>p0wJg64u+OwAGQ1(dq+mSVhKdFspVe)zzXry$R*5 z#BO+zTXEHJDR!YXPL;s;e5fB|{(9vyoW9nooLfxiU3GPK9(Xqv@ph5hcChu14lb5B zI`wwNN9v^o39$_YYZ%~|cP%evdA$;@qf%GYIW=BMGR7KdQ+`n$%G?h9s`6OvgfLLe z1IXCLEvP3drcw+8C~mcid?X-GYs&M&@ntwCaRVcy{KL>$3+EWSMq)w_;oVo<3t}gp zitS#PeVXIi1Hm~w%6|7(fGRaLAU`lVJy1q|jiZ2y0m|li7C?ovV$|!>R)ayR{9Ax1 z_OimJ@;$K25J$mk$6­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 literal 0 HcmV?d00001 diff --git a/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/StructLayout.o b/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/StructLayout.o new file mode 100644 index 0000000000000000000000000000000000000000..de7b9635d433816578275f958821b740623818b8 GIT binary patch literal 37128 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 literal 0 HcmV?d00001 diff --git a/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/Type.o b/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/Type.o new file mode 100644 index 0000000000000000000000000000000000000000..bae715a821147ea55be4d831a15cd0ed892d5a8e GIT binary patch literal 40268 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 Fe*rjQ6OI4? literal 0 HcmV?d00001 diff --git a/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/Types.o b/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/Types.o new file mode 100644 index 0000000000000000000000000000000000000000..847cf45670c6d8589355a7c7d80d8765185ed9b8 GIT binary patch literal 10512 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 literal 0 HcmV?d00001 diff --git a/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/Variadic.o b/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/Variadic.o new file mode 100644 index 0000000000000000000000000000000000000000..205c4cf120be66e459cfaac4db21b96b5f9726d0 GIT binary patch literal 19968 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 WU9;2$>Z{}W;dkcS1$U%72g=_yRY8>i literal 0 HcmV?d00001 diff --git a/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi-x86_64-darwin18/.libs/libffi_convenience.a b/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi-x86_64-darwin18/.libs/libffi_convenience.a new file mode 100644 index 0000000000000000000000000000000000000000..b7a1a294a967528ff8918318e8fd1992f2ea9eac GIT binary patch literal 63752 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 + +#### End of system configuration section. #### + +preload = +libpath = . $(libdir) +LIBPATH = -L. -L$(libdir) +DEFFILE = + +CLEANFILES = mkmf.log +DISTCLEANFILES = +DISTCLEANDIRS = + +extout = +extout_prefix = +target_prefix = +LOCAL_LIBS = +LIBS = -lpthread -lgmp -ldl -lobjc +ORIG_SRCS = ruby_http_parser.c ryah_http_parser.c +SRCS = $(ORIG_SRCS) +OBJS = ruby_http_parser.o ryah_http_parser.o +HDRS = $(srcdir)/ext_help.h $(srcdir)/ryah_http_parser.h +LOCAL_HDRS = +TARGET = ruby_http_parser +TARGET_NAME = ruby_http_parser +TARGET_ENTRY = Init_$(TARGET_NAME) +DLLIB = $(TARGET).bundle +EXTSTATIC = +STATIC_LIB = + +TIMESTAMP_DIR = . +BINDIR = $(bindir) +RUBYCOMMONDIR = $(sitedir)$(target_prefix) +RUBYLIBDIR = $(sitelibdir)$(target_prefix) +RUBYARCHDIR = $(sitearchdir)$(target_prefix) +HDRDIR = $(rubyhdrdir)/ruby$(target_prefix) +ARCHHDRDIR = $(rubyhdrdir)/$(arch)/ruby$(target_prefix) +TARGET_SO_DIR = +TARGET_SO = $(TARGET_SO_DIR)$(DLLIB) +CLEANLIBS = $(TARGET_SO) +CLEANOBJS = *.o *.bak + +all: $(DLLIB) +static: $(STATIC_LIB) +.PHONY: all install static install-so install-rb +.PHONY: clean clean-so clean-static clean-rb + +clean-static:: +clean-rb-default:: +clean-rb:: +clean-so:: +clean: clean-so clean-static clean-rb-default clean-rb + -$(Q)$(RM) $(CLEANLIBS) $(CLEANOBJS) $(CLEANFILES) .*.time + +distclean-rb-default:: +distclean-rb:: +distclean-so:: +distclean-static:: +distclean: clean distclean-so distclean-static distclean-rb-default distclean-rb + -$(Q)$(RM) Makefile $(RUBY_EXTCONF_H) conftest.* mkmf.log + -$(Q)$(RM) core ruby$(EXEEXT) *~ $(DISTCLEANFILES) + -$(Q)$(RMDIRS) $(DISTCLEANDIRS) 2> /dev/null || true + +realclean: distclean +install: install-so install-rb + +install-so: $(DLLIB) $(TIMESTAMP_DIR)/.sitearchdir.time + $(INSTALL_PROG) $(DLLIB) $(RUBYARCHDIR) +clean-static:: + -$(Q)$(RM) $(STATIC_LIB) +install-rb: pre-install-rb do-install-rb install-rb-default +install-rb-default: pre-install-rb-default do-install-rb-default +pre-install-rb: Makefile +pre-install-rb-default: Makefile +do-install-rb: +do-install-rb-default: +pre-install-rb-default: + @$(NULLCMD) +$(TIMESTAMP_DIR)/.sitearchdir.time: + $(Q) $(MAKEDIRS) $(@D) $(RUBYARCHDIR) + $(Q) $(TOUCH) $@ + +site-install: site-install-so site-install-rb +site-install-so: install-so +site-install-rb: install-rb + +.SUFFIXES: .c .m .cc .mm .cxx .cpp .o .S + +.cc.o: + $(ECHO) compiling $(<) + $(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -c $(CSRCFLAG)$< + +.cc.S: + $(ECHO) translating $(<) + $(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -S $(CSRCFLAG)$< + +.mm.o: + $(ECHO) compiling $(<) + $(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -c $(CSRCFLAG)$< + +.mm.S: + $(ECHO) translating $(<) + $(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -S $(CSRCFLAG)$< + +.cxx.o: + $(ECHO) compiling $(<) + $(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -c $(CSRCFLAG)$< + +.cxx.S: + $(ECHO) translating $(<) + $(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -S $(CSRCFLAG)$< + +.cpp.o: + $(ECHO) compiling $(<) + $(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -c $(CSRCFLAG)$< + +.cpp.S: + $(ECHO) translating $(<) + $(Q) $(CXX) $(INCFLAGS) $(CPPFLAGS) $(CXXFLAGS) $(COUTFLAG)$@ -S $(CSRCFLAG)$< + +.c.o: + $(ECHO) compiling $(<) + $(Q) $(CC) $(INCFLAGS) $(CPPFLAGS) $(CFLAGS) $(COUTFLAG)$@ -c $(CSRCFLAG)$< + +.c.S: + $(ECHO) translating $(<) + $(Q) $(CC) $(INCFLAGS) $(CPPFLAGS) $(CFLAGS) $(COUTFLAG)$@ -S $(CSRCFLAG)$< + +.m.o: + $(ECHO) compiling $(<) + $(Q) $(CC) $(INCFLAGS) $(CPPFLAGS) $(CFLAGS) $(COUTFLAG)$@ -c $(CSRCFLAG)$< + +.m.S: + $(ECHO) translating $(<) + $(Q) $(CC) $(INCFLAGS) $(CPPFLAGS) $(CFLAGS) $(COUTFLAG)$@ -S $(CSRCFLAG)$< + +$(TARGET_SO): $(OBJS) Makefile + $(ECHO) linking shared-object $(DLLIB) + -$(Q)$(RM) $(@) + $(Q) $(LDSHARED) -o $@ $(OBJS) $(LIBPATH) $(DLDFLAGS) $(LOCAL_LIBS) $(LIBS) + $(Q) $(POSTLINK) + + + +$(OBJS): $(HDRS) $(ruby_headers) diff --git a/vendor/bundle/ruby/2.5.0/gems/http_parser.rb-0.6.0/ext/ruby_http_parser/ruby_http_parser.bundle b/vendor/bundle/ruby/2.5.0/gems/http_parser.rb-0.6.0/ext/ruby_http_parser/ruby_http_parser.bundle new file mode 100755 index 0000000000000000000000000000000000000000..5c80f260bf14a4ab601d8cec7ca47e30ec7ea717 GIT binary patch literal 40572 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 ZM5Tf}(H56K@%t!GD)>I03osRH{}<{TQ277= literal 0 HcmV?d00001 diff --git a/vendor/bundle/ruby/2.5.0/gems/http_parser.rb-0.6.0/ext/ruby_http_parser/ryah_http_parser.c b/vendor/bundle/ruby/2.5.0/gems/http_parser.rb-0.6.0/ext/ruby_http_parser/ryah_http_parser.c new file mode 100644 index 0000000000..a50c13bddc --- /dev/null +++ b/vendor/bundle/ruby/2.5.0/gems/http_parser.rb-0.6.0/ext/ruby_http_parser/ryah_http_parser.c @@ -0,0 +1,2058 @@ +/* Based on src/http/ngx_http_parse.c from NGINX copyright Igor Sysoev + * + * Additional changes are licensed under the same terms as NGINX and + * copyright Joyent, Inc. and other Node contributors. All rights reserved. + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to + * deal in the Software without restriction, including without limitation the + * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or + * sell copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS + * IN THE SOFTWARE. + */ +#include "ryah_http_parser.h" +#include +#include +#include +#include +#include +#include + +#ifndef ULLONG_MAX +# define ULLONG_MAX ((uint64_t) -1) /* 2^64-1 */ +#endif + +#ifndef MIN +# define MIN(a,b) ((a) < (b) ? (a) : (b)) +#endif + + +#if HTTP_PARSER_DEBUG +#define SET_ERRNO(e) \ +do { \ + parser->http_errno = (e); \ + parser->error_lineno = __LINE__; \ +} while (0) +#else +#define SET_ERRNO(e) \ +do { \ + parser->http_errno = (e); \ +} while(0) +#endif + + +/* Run the notify callback FOR, returning ER if it fails */ +#define CALLBACK_NOTIFY_(FOR, ER) \ +do { \ + assert(HTTP_PARSER_ERRNO(parser) == HPE_OK); \ + \ + if (settings->on_##FOR) { \ + if (0 != settings->on_##FOR(parser)) { \ + SET_ERRNO(HPE_CB_##FOR); \ + } \ + \ + /* We either errored above or got paused; get out */ \ + if (HTTP_PARSER_ERRNO(parser) != HPE_OK) { \ + return (ER); \ + } \ + } \ +} while (0) + +/* Run the notify callback FOR and consume the current byte */ +#define CALLBACK_NOTIFY(FOR) CALLBACK_NOTIFY_(FOR, p - data + 1) + +/* Run the notify callback FOR and don't consume the current byte */ +#define CALLBACK_NOTIFY_NOADVANCE(FOR) CALLBACK_NOTIFY_(FOR, p - data) + +/* Run data callback FOR with LEN bytes, returning ER if it fails */ +#define CALLBACK_DATA_(FOR, LEN, ER) \ +do { \ + assert(HTTP_PARSER_ERRNO(parser) == HPE_OK); \ + \ + if (FOR##_mark) { \ + if (settings->on_##FOR) { \ + if (0 != settings->on_##FOR(parser, FOR##_mark, (LEN))) { \ + SET_ERRNO(HPE_CB_##FOR); \ + } \ + \ + /* We either errored above or got paused; get out */ \ + if (HTTP_PARSER_ERRNO(parser) != HPE_OK) { \ + return (ER); \ + } \ + } \ + FOR##_mark = NULL; \ + } \ +} while (0) + +/* Run the data callback FOR and consume the current byte */ +#define CALLBACK_DATA(FOR) \ + CALLBACK_DATA_(FOR, p - FOR##_mark, p - data + 1) + +/* Run the data callback FOR and don't consume the current byte */ +#define CALLBACK_DATA_NOADVANCE(FOR) \ + CALLBACK_DATA_(FOR, p - FOR##_mark, p - data) + +/* Set the mark FOR; non-destructive if mark is already set */ +#define MARK(FOR) \ +do { \ + if (!FOR##_mark) { \ + FOR##_mark = p; \ + } \ +} while (0) + + +#define PROXY_CONNECTION "proxy-connection" +#define CONNECTION "connection" +#define CONTENT_LENGTH "content-length" +#define TRANSFER_ENCODING "transfer-encoding" +#define UPGRADE "upgrade" +#define CHUNKED "chunked" +#define KEEP_ALIVE "keep-alive" +#define CLOSE "close" + + +static const char *method_strings[] = + { "DELETE" + , "GET" + , "HEAD" + , "POST" + , "PUT" + , "CONNECT" + , "OPTIONS" + , "TRACE" + , "COPY" + , "LOCK" + , "MKCOL" + , "MOVE" + , "PROPFIND" + , "PROPPATCH" + , "UNLOCK" + , "REPORT" + , "MKACTIVITY" + , "CHECKOUT" + , "MERGE" + , "M-SEARCH" + , "NOTIFY" + , "SUBSCRIBE" + , "UNSUBSCRIBE" + , "PATCH" + , "PURGE" + }; + + +/* Tokens as defined by rfc 2616. Also lowercases them. + * token = 1* + * separators = "(" | ")" | "<" | ">" | "@" + * | "," | ";" | ":" | "\" | <"> + * | "/" | "[" | "]" | "?" | "=" + * | "{" | "}" | SP | HT + */ +static const char tokens[256] = { +/* 0 nul 1 soh 2 stx 3 etx 4 eot 5 enq 6 ack 7 bel */ + 0, 0, 0, 0, 0, 0, 0, 0, +/* 8 bs 9 ht 10 nl 11 vt 12 np 13 cr 14 so 15 si */ + 0, 0, 0, 0, 0, 0, 0, 0, +/* 16 dle 17 dc1 18 dc2 19 dc3 20 dc4 21 nak 22 syn 23 etb */ + 0, 0, 0, 0, 0, 0, 0, 0, +/* 24 can 25 em 26 sub 27 esc 28 fs 29 gs 30 rs 31 us */ + 0, 0, 0, 0, 0, 0, 0, 0, +/* 32 sp 33 ! 34 " 35 # 36 $ 37 % 38 & 39 ' */ + 0, '!', 0, '#', '$', '%', '&', '\'', +/* 40 ( 41 ) 42 * 43 + 44 , 45 - 46 . 47 / */ + 0, 0, '*', '+', 0, '-', '.', 0, +/* 48 0 49 1 50 2 51 3 52 4 53 5 54 6 55 7 */ + '0', '1', '2', '3', '4', '5', '6', '7', +/* 56 8 57 9 58 : 59 ; 60 < 61 = 62 > 63 ? */ + '8', '9', 0, 0, 0, 0, 0, 0, +/* 64 @ 65 A 66 B 67 C 68 D 69 E 70 F 71 G */ + 0, 'a', 'b', 'c', 'd', 'e', 'f', 'g', +/* 72 H 73 I 74 J 75 K 76 L 77 M 78 N 79 O */ + 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', +/* 80 P 81 Q 82 R 83 S 84 T 85 U 86 V 87 W */ + 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', +/* 88 X 89 Y 90 Z 91 [ 92 \ 93 ] 94 ^ 95 _ */ + 'x', 'y', 'z', 0, 0, 0, '^', '_', +/* 96 ` 97 a 98 b 99 c 100 d 101 e 102 f 103 g */ + '`', 'a', 'b', 'c', 'd', 'e', 'f', 'g', +/* 104 h 105 i 106 j 107 k 108 l 109 m 110 n 111 o */ + 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', +/* 112 p 113 q 114 r 115 s 116 t 117 u 118 v 119 w */ + 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', +/* 120 x 121 y 122 z 123 { 124 | 125 } 126 ~ 127 del */ + 'x', 'y', 'z', 0, '|', 0, '~', 0 }; + + +static const int8_t unhex[256] = + {-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1 + ,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1 + ,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1 + , 0, 1, 2, 3, 4, 5, 6, 7, 8, 9,-1,-1,-1,-1,-1,-1 + ,-1,10,11,12,13,14,15,-1,-1,-1,-1,-1,-1,-1,-1,-1 + ,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1 + ,-1,10,11,12,13,14,15,-1,-1,-1,-1,-1,-1,-1,-1,-1 + ,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1 + }; + + +static const uint8_t normal_url_char[256] = { +/* 0 nul 1 soh 2 stx 3 etx 4 eot 5 enq 6 ack 7 bel */ + 0, 0, 0, 0, 0, 0, 0, 0, +/* 8 bs 9 ht 10 nl 11 vt 12 np 13 cr 14 so 15 si */ + 0, 0, 0, 0, 0, 0, 0, 0, +/* 16 dle 17 dc1 18 dc2 19 dc3 20 dc4 21 nak 22 syn 23 etb */ + 0, 0, 0, 0, 0, 0, 0, 0, +/* 24 can 25 em 26 sub 27 esc 28 fs 29 gs 30 rs 31 us */ + 0, 0, 0, 0, 0, 0, 0, 0, +/* 32 sp 33 ! 34 " 35 # 36 $ 37 % 38 & 39 ' */ + 0, 1, 1, 0, 1, 1, 1, 1, +/* 40 ( 41 ) 42 * 43 + 44 , 45 - 46 . 47 / */ + 1, 1, 1, 1, 1, 1, 1, 1, +/* 48 0 49 1 50 2 51 3 52 4 53 5 54 6 55 7 */ + 1, 1, 1, 1, 1, 1, 1, 1, +/* 56 8 57 9 58 : 59 ; 60 < 61 = 62 > 63 ? */ + 1, 1, 1, 1, 1, 1, 1, 0, +/* 64 @ 65 A 66 B 67 C 68 D 69 E 70 F 71 G */ + 1, 1, 1, 1, 1, 1, 1, 1, +/* 72 H 73 I 74 J 75 K 76 L 77 M 78 N 79 O */ + 1, 1, 1, 1, 1, 1, 1, 1, +/* 80 P 81 Q 82 R 83 S 84 T 85 U 86 V 87 W */ + 1, 1, 1, 1, 1, 1, 1, 1, +/* 88 X 89 Y 90 Z 91 [ 92 \ 93 ] 94 ^ 95 _ */ + 1, 1, 1, 1, 1, 1, 1, 1, +/* 96 ` 97 a 98 b 99 c 100 d 101 e 102 f 103 g */ + 1, 1, 1, 1, 1, 1, 1, 1, +/* 104 h 105 i 106 j 107 k 108 l 109 m 110 n 111 o */ + 1, 1, 1, 1, 1, 1, 1, 1, +/* 112 p 113 q 114 r 115 s 116 t 117 u 118 v 119 w */ + 1, 1, 1, 1, 1, 1, 1, 1, +/* 120 x 121 y 122 z 123 { 124 | 125 } 126 ~ 127 del */ + 1, 1, 1, 1, 1, 1, 1, 0, }; + + +enum state + { s_dead = 1 /* important that this is > 0 */ + + , s_start_req_or_res + , s_res_or_resp_H + , s_start_res + , s_res_H + , s_res_HT + , s_res_HTT + , s_res_HTTP + , s_res_first_http_major + , s_res_http_major + , s_res_first_http_minor + , s_res_http_minor + , s_res_first_status_code + , s_res_status_code + , s_res_status + , s_res_line_almost_done + + , s_start_req + + , s_req_method + , s_req_spaces_before_url + , s_req_schema + , s_req_schema_slash + , s_req_schema_slash_slash + , s_req_host_start + , s_req_host_v6_start + , s_req_host_v6 + , s_req_host_v6_end + , s_req_host + , s_req_port_start + , s_req_port + , s_req_path + , s_req_query_string_start + , s_req_query_string + , s_req_fragment_start + , s_req_fragment + , s_req_http_start + , s_req_http_H + , s_req_http_HT + , s_req_http_HTT + , s_req_http_HTTP + , s_req_first_http_major + , s_req_http_major + , s_req_first_http_minor + , s_req_http_minor + , s_req_line_almost_done + + , s_header_field_start + , s_header_field + , s_header_value_start + , s_header_value + , s_header_value_lws + + , s_header_almost_done + + , s_chunk_size_start + , s_chunk_size + , s_chunk_parameters + , s_chunk_size_almost_done + + , s_headers_almost_done + , s_headers_done + + /* Important: 's_headers_done' must be the last 'header' state. All + * states beyond this must be 'body' states. It is used for overflow + * checking. See the PARSING_HEADER() macro. + */ + + , s_chunk_data + , s_chunk_data_almost_done + , s_chunk_data_done + + , s_body_identity + , s_body_identity_eof + + , s_message_done + }; + + +#define PARSING_HEADER(state) (state <= s_headers_done) + + +enum header_states + { h_general = 0 + , h_C + , h_CO + , h_CON + + , h_matching_connection + , h_matching_proxy_connection + , h_matching_content_length + , h_matching_transfer_encoding + , h_matching_upgrade + + , h_connection + , h_content_length + , h_transfer_encoding + , h_upgrade + + , h_matching_transfer_encoding_chunked + , h_matching_connection_keep_alive + , h_matching_connection_close + + , h_transfer_encoding_chunked + , h_connection_keep_alive + , h_connection_close + }; + + +/* Macros for character classes; depends on strict-mode */ +#define CR '\r' +#define LF '\n' +#define LOWER(c) (unsigned char)(c | 0x20) +#define IS_ALPHA(c) (LOWER(c) >= 'a' && LOWER(c) <= 'z') +#define IS_NUM(c) ((c) >= '0' && (c) <= '9') +#define IS_ALPHANUM(c) (IS_ALPHA(c) || IS_NUM(c)) +#define IS_HEX(c) (IS_NUM(c) || (LOWER(c) >= 'a' && LOWER(c) <= 'f')) + +#if HTTP_PARSER_STRICT +#define TOKEN(c) (tokens[(unsigned char)c]) +#define IS_URL_CHAR(c) (normal_url_char[(unsigned char) (c)]) +#define IS_HOST_CHAR(c) (IS_ALPHANUM(c) || (c) == '.' || (c) == '-') +#else +#define TOKEN(c) ((c == ' ') ? ' ' : tokens[(unsigned char)c]) +#define IS_URL_CHAR(c) \ + (normal_url_char[(unsigned char) (c)] || ((c) & 0x80)) +#define IS_HOST_CHAR(c) \ + (IS_ALPHANUM(c) || (c) == '.' || (c) == '-' || (c) == '_') +#endif + + +#define start_state (parser->type == HTTP_REQUEST ? s_start_req : s_start_res) + + +#if HTTP_PARSER_STRICT +# define STRICT_CHECK(cond) \ +do { \ + if (cond) { \ + SET_ERRNO(HPE_STRICT); \ + goto error; \ + } \ +} while (0) +# define NEW_MESSAGE() (http_should_keep_alive(parser) ? start_state : s_dead) +#else +# define STRICT_CHECK(cond) +# define NEW_MESSAGE() start_state +#endif + + +/* Map errno values to strings for human-readable output */ +#define HTTP_STRERROR_GEN(n, s) { "HPE_" #n, s }, +static struct { + const char *name; + const char *description; +} http_strerror_tab[] = { + HTTP_ERRNO_MAP(HTTP_STRERROR_GEN) +}; +#undef HTTP_STRERROR_GEN + +int http_message_needs_eof(ryah_http_parser *parser); + +/* Our URL parser. + * + * This is designed to be shared by ryah_http_parser_execute() for URL validation, + * hence it has a state transition + byte-for-byte interface. In addition, it + * is meant to be embedded in ryah_http_parser_parse_url(), which does the dirty + * work of turning state transitions URL components for its API. + * + * This function should only be invoked with non-space characters. It is + * assumed that the caller cares about (and can detect) the transition between + * URL and non-URL states by looking for these. + */ +static enum state +parse_url_char(enum state s, const char ch) +{ + assert(!isspace(ch)); + + switch (s) { + case s_req_spaces_before_url: + /* Proxied requests are followed by scheme of an absolute URI (alpha). + * All methods except CONNECT are followed by '/' or '*'. + */ + + if (ch == '/' || ch == '*') { + return s_req_path; + } + + if (IS_ALPHA(ch)) { + return s_req_schema; + } + + break; + + case s_req_schema: + if (IS_ALPHA(ch)) { + return s; + } + + if (ch == ':') { + return s_req_schema_slash; + } + + break; + + case s_req_schema_slash: + if (ch == '/') { + return s_req_schema_slash_slash; + } + + break; + + case s_req_schema_slash_slash: + if (ch == '/') { + return s_req_host_start; + } + + break; + + case s_req_host_start: + if (ch == '[') { + return s_req_host_v6_start; + } + + if (IS_HOST_CHAR(ch)) { + return s_req_host; + } + + break; + + case s_req_host: + if (IS_HOST_CHAR(ch)) { + return s_req_host; + } + + /* FALLTHROUGH */ + case s_req_host_v6_end: + switch (ch) { + case ':': + return s_req_port_start; + + case '/': + return s_req_path; + + case '?': + return s_req_query_string_start; + } + + break; + + case s_req_host_v6: + if (ch == ']') { + return s_req_host_v6_end; + } + + /* FALLTHROUGH */ + case s_req_host_v6_start: + if (IS_HEX(ch) || ch == ':') { + return s_req_host_v6; + } + break; + + case s_req_port: + switch (ch) { + case '/': + return s_req_path; + + case '?': + return s_req_query_string_start; + } + + /* FALLTHROUGH */ + case s_req_port_start: + if (IS_NUM(ch)) { + return s_req_port; + } + + break; + + case s_req_path: + if (IS_URL_CHAR(ch)) { + return s; + } + + switch (ch) { + case '?': + return s_req_query_string_start; + + case '#': + return s_req_fragment_start; + } + + break; + + case s_req_query_string_start: + case s_req_query_string: + if (IS_URL_CHAR(ch)) { + return s_req_query_string; + } + + switch (ch) { + case '?': + /* allow extra '?' in query string */ + return s_req_query_string; + + case '#': + return s_req_fragment_start; + } + + break; + + case s_req_fragment_start: + if (IS_URL_CHAR(ch)) { + return s_req_fragment; + } + + switch (ch) { + case '?': + return s_req_fragment; + + case '#': + return s; + } + + break; + + case s_req_fragment: + if (IS_URL_CHAR(ch)) { + return s; + } + + switch (ch) { + case '?': + case '#': + return s; + } + + break; + + default: + break; + } + + /* We should never fall out of the switch above unless there's an error */ + return s_dead; +} + +size_t ryah_http_parser_execute (ryah_http_parser *parser, + const ryah_http_parser_settings *settings, + const char *data, + size_t len) +{ + char c, ch; + int8_t unhex_val; + const char *p = data; + const char *header_field_mark = 0; + const char *header_value_mark = 0; + const char *url_mark = 0; + const char *body_mark = 0; + + /* We're in an error state. Don't bother doing anything. */ + if (HTTP_PARSER_ERRNO(parser) != HPE_OK) { + return 0; + } + + if (len == 0) { + switch (parser->state) { + case s_body_identity_eof: + /* Use of CALLBACK_NOTIFY() here would erroneously return 1 byte read if + * we got paused. + */ + CALLBACK_NOTIFY_NOADVANCE(message_complete); + return 0; + + case s_dead: + case s_start_req_or_res: + case s_start_res: + case s_start_req: + return 0; + + default: + SET_ERRNO(HPE_INVALID_EOF_STATE); + return 1; + } + } + + + if (parser->state == s_header_field) + header_field_mark = data; + if (parser->state == s_header_value) + header_value_mark = data; + switch (parser->state) { + case s_req_path: + case s_req_schema: + case s_req_schema_slash: + case s_req_schema_slash_slash: + case s_req_host_start: + case s_req_host_v6_start: + case s_req_host_v6: + case s_req_host_v6_end: + case s_req_host: + case s_req_port_start: + case s_req_port: + case s_req_query_string_start: + case s_req_query_string: + case s_req_fragment_start: + case s_req_fragment: + url_mark = data; + break; + } + + for (p=data; p != data + len; p++) { + ch = *p; + + if (PARSING_HEADER(parser->state)) { + ++parser->nread; + /* Buffer overflow attack */ + if (parser->nread > HTTP_MAX_HEADER_SIZE) { + SET_ERRNO(HPE_HEADER_OVERFLOW); + goto error; + } + } + + reexecute_byte: + switch (parser->state) { + + case s_dead: + /* this state is used after a 'Connection: close' message + * the parser will error out if it reads another message + */ + if (ch == CR || ch == LF) + break; + + SET_ERRNO(HPE_CLOSED_CONNECTION); + goto error; + + case s_start_req_or_res: + { + if (ch == CR || ch == LF) + break; + parser->flags = 0; + parser->content_length = ULLONG_MAX; + + if (ch == 'H') { + parser->state = s_res_or_resp_H; + + CALLBACK_NOTIFY(message_begin); + } else { + parser->type = HTTP_REQUEST; + parser->state = s_start_req; + goto reexecute_byte; + } + + break; + } + + case s_res_or_resp_H: + if (ch == 'T') { + parser->type = HTTP_RESPONSE; + parser->state = s_res_HT; + } else { + if (ch != 'E') { + SET_ERRNO(HPE_INVALID_CONSTANT); + goto error; + } + + parser->type = HTTP_REQUEST; + parser->method = HTTP_HEAD; + parser->index = 2; + parser->state = s_req_method; + } + break; + + case s_start_res: + { + parser->flags = 0; + parser->content_length = ULLONG_MAX; + + switch (ch) { + case 'H': + parser->state = s_res_H; + break; + + case CR: + case LF: + break; + + default: + SET_ERRNO(HPE_INVALID_CONSTANT); + goto error; + } + + CALLBACK_NOTIFY(message_begin); + break; + } + + case s_res_H: + STRICT_CHECK(ch != 'T'); + parser->state = s_res_HT; + break; + + case s_res_HT: + STRICT_CHECK(ch != 'T'); + parser->state = s_res_HTT; + break; + + case s_res_HTT: + STRICT_CHECK(ch != 'P'); + parser->state = s_res_HTTP; + break; + + case s_res_HTTP: + STRICT_CHECK(ch != '/'); + parser->state = s_res_first_http_major; + break; + + case s_res_first_http_major: + if (ch < '0' || ch > '9') { + SET_ERRNO(HPE_INVALID_VERSION); + goto error; + } + + parser->http_major = ch - '0'; + parser->state = s_res_http_major; + break; + + /* major HTTP version or dot */ + case s_res_http_major: + { + if (ch == '.') { + parser->state = s_res_first_http_minor; + break; + } + + if (!IS_NUM(ch)) { + SET_ERRNO(HPE_INVALID_VERSION); + goto error; + } + + parser->http_major *= 10; + parser->http_major += ch - '0'; + + if (parser->http_major > 999) { + SET_ERRNO(HPE_INVALID_VERSION); + goto error; + } + + break; + } + + /* first digit of minor HTTP version */ + case s_res_first_http_minor: + if (!IS_NUM(ch)) { + SET_ERRNO(HPE_INVALID_VERSION); + goto error; + } + + parser->http_minor = ch - '0'; + parser->state = s_res_http_minor; + break; + + /* minor HTTP version or end of request line */ + case s_res_http_minor: + { + if (ch == ' ') { + parser->state = s_res_first_status_code; + break; + } + + if (!IS_NUM(ch)) { + SET_ERRNO(HPE_INVALID_VERSION); + goto error; + } + + parser->http_minor *= 10; + parser->http_minor += ch - '0'; + + if (parser->http_minor > 999) { + SET_ERRNO(HPE_INVALID_VERSION); + goto error; + } + + break; + } + + case s_res_first_status_code: + { + if (!IS_NUM(ch)) { + if (ch == ' ') { + break; + } + + SET_ERRNO(HPE_INVALID_STATUS); + goto error; + } + parser->status_code = ch - '0'; + parser->state = s_res_status_code; + break; + } + + case s_res_status_code: + { + if (!IS_NUM(ch)) { + switch (ch) { + case ' ': + parser->state = s_res_status; + break; + case CR: + parser->state = s_res_line_almost_done; + break; + case LF: + parser->state = s_header_field_start; + break; + default: + SET_ERRNO(HPE_INVALID_STATUS); + goto error; + } + break; + } + + parser->status_code *= 10; + parser->status_code += ch - '0'; + + if (parser->status_code > 999) { + SET_ERRNO(HPE_INVALID_STATUS); + goto error; + } + + break; + } + + case s_res_status: + /* the human readable status. e.g. "NOT FOUND" + * we are not humans so just ignore this */ + if (ch == CR) { + parser->state = s_res_line_almost_done; + break; + } + + if (ch == LF) { + parser->state = s_header_field_start; + break; + } + break; + + case s_res_line_almost_done: + STRICT_CHECK(ch != LF); + parser->state = s_header_field_start; + break; + + case s_start_req: + { + if (ch == CR || ch == LF) + break; + parser->flags = 0; + parser->content_length = ULLONG_MAX; + + if (!IS_ALPHA(ch)) { + SET_ERRNO(HPE_INVALID_METHOD); + goto error; + } + + parser->method = (enum http_method) 0; + parser->index = 1; + switch (ch) { + case 'C': parser->method = HTTP_CONNECT; /* or COPY, CHECKOUT */ break; + case 'D': parser->method = HTTP_DELETE; break; + case 'G': parser->method = HTTP_GET; break; + case 'H': parser->method = HTTP_HEAD; break; + case 'L': parser->method = HTTP_LOCK; break; + case 'M': parser->method = HTTP_MKCOL; /* or MOVE, MKACTIVITY, MERGE, M-SEARCH */ break; + case 'N': parser->method = HTTP_NOTIFY; break; + case 'O': parser->method = HTTP_OPTIONS; break; + case 'P': parser->method = HTTP_POST; + /* or PROPFIND|PROPPATCH|PUT|PATCH|PURGE */ + break; + case 'R': parser->method = HTTP_REPORT; break; + case 'S': parser->method = HTTP_SUBSCRIBE; break; + case 'T': parser->method = HTTP_TRACE; break; + case 'U': parser->method = HTTP_UNLOCK; /* or UNSUBSCRIBE */ break; + default: + SET_ERRNO(HPE_INVALID_METHOD); + goto error; + } + parser->state = s_req_method; + + CALLBACK_NOTIFY(message_begin); + + break; + } + + case s_req_method: + { + const char *matcher; + if (ch == '\0') { + SET_ERRNO(HPE_INVALID_METHOD); + goto error; + } + + matcher = method_strings[parser->method]; + if (ch == ' ' && matcher[parser->index] == '\0') { + parser->state = s_req_spaces_before_url; + } else if (ch == matcher[parser->index]) { + ; /* nada */ + } else if (parser->method == HTTP_CONNECT) { + if (parser->index == 1 && ch == 'H') { + parser->method = HTTP_CHECKOUT; + } else if (parser->index == 2 && ch == 'P') { + parser->method = HTTP_COPY; + } else { + goto error; + } + } else if (parser->method == HTTP_MKCOL) { + if (parser->index == 1 && ch == 'O') { + parser->method = HTTP_MOVE; + } else if (parser->index == 1 && ch == 'E') { + parser->method = HTTP_MERGE; + } else if (parser->index == 1 && ch == '-') { + parser->method = HTTP_MSEARCH; + } else if (parser->index == 2 && ch == 'A') { + parser->method = HTTP_MKACTIVITY; + } else { + goto error; + } + } else if (parser->index == 1 && parser->method == HTTP_POST) { + if (ch == 'R') { + parser->method = HTTP_PROPFIND; /* or HTTP_PROPPATCH */ + } else if (ch == 'U') { + parser->method = HTTP_PUT; /* or HTTP_PURGE */ + } else if (ch == 'A') { + parser->method = HTTP_PATCH; + } else { + goto error; + } + } else if (parser->index == 2) { + if (parser->method == HTTP_PUT) { + if (ch == 'R') parser->method = HTTP_PURGE; + } else if (parser->method == HTTP_UNLOCK) { + if (ch == 'S') parser->method = HTTP_UNSUBSCRIBE; + } + } else if (parser->index == 4 && parser->method == HTTP_PROPFIND && ch == 'P') { + parser->method = HTTP_PROPPATCH; + } else { + SET_ERRNO(HPE_INVALID_METHOD); + goto error; + } + + ++parser->index; + break; + } + + case s_req_spaces_before_url: + { + if (ch == ' ') break; + + MARK(url); + if (parser->method == HTTP_CONNECT) { + parser->state = s_req_host_start; + } + + parser->state = parse_url_char((enum state)parser->state, ch); + if (parser->state == s_dead) { + SET_ERRNO(HPE_INVALID_URL); + goto error; + } + + break; + } + + case s_req_schema: + case s_req_schema_slash: + case s_req_schema_slash_slash: + case s_req_host_start: + case s_req_host_v6_start: + case s_req_host_v6: + case s_req_port_start: + { + switch (ch) { + /* No whitespace allowed here */ + case ' ': + case CR: + case LF: + SET_ERRNO(HPE_INVALID_URL); + goto error; + default: + parser->state = parse_url_char((enum state)parser->state, ch); + if (parser->state == s_dead) { + SET_ERRNO(HPE_INVALID_URL); + goto error; + } + } + + break; + } + + case s_req_host: + case s_req_host_v6_end: + case s_req_port: + case s_req_path: + case s_req_query_string_start: + case s_req_query_string: + case s_req_fragment_start: + case s_req_fragment: + { + switch (ch) { + case ' ': + parser->state = s_req_http_start; + CALLBACK_DATA(url); + break; + case CR: + case LF: + parser->http_major = 0; + parser->http_minor = 9; + parser->state = (ch == CR) ? + s_req_line_almost_done : + s_header_field_start; + CALLBACK_DATA(url); + break; + default: + parser->state = parse_url_char((enum state)parser->state, ch); + if (parser->state == s_dead) { + SET_ERRNO(HPE_INVALID_URL); + goto error; + } + } + break; + } + + case s_req_http_start: + switch (ch) { + case 'H': + parser->state = s_req_http_H; + break; + case ' ': + break; + default: + SET_ERRNO(HPE_INVALID_CONSTANT); + goto error; + } + break; + + case s_req_http_H: + STRICT_CHECK(ch != 'T'); + parser->state = s_req_http_HT; + break; + + case s_req_http_HT: + STRICT_CHECK(ch != 'T'); + parser->state = s_req_http_HTT; + break; + + case s_req_http_HTT: + STRICT_CHECK(ch != 'P'); + parser->state = s_req_http_HTTP; + break; + + case s_req_http_HTTP: + STRICT_CHECK(ch != '/'); + parser->state = s_req_first_http_major; + break; + + /* first digit of major HTTP version */ + case s_req_first_http_major: + if (ch < '1' || ch > '9') { + SET_ERRNO(HPE_INVALID_VERSION); + goto error; + } + + parser->http_major = ch - '0'; + parser->state = s_req_http_major; + break; + + /* major HTTP version or dot */ + case s_req_http_major: + { + if (ch == '.') { + parser->state = s_req_first_http_minor; + break; + } + + if (!IS_NUM(ch)) { + SET_ERRNO(HPE_INVALID_VERSION); + goto error; + } + + parser->http_major *= 10; + parser->http_major += ch - '0'; + + if (parser->http_major > 999) { + SET_ERRNO(HPE_INVALID_VERSION); + goto error; + } + + break; + } + + /* first digit of minor HTTP version */ + case s_req_first_http_minor: + if (!IS_NUM(ch)) { + SET_ERRNO(HPE_INVALID_VERSION); + goto error; + } + + parser->http_minor = ch - '0'; + parser->state = s_req_http_minor; + break; + + /* minor HTTP version or end of request line */ + case s_req_http_minor: + { + if (ch == CR) { + parser->state = s_req_line_almost_done; + break; + } + + if (ch == LF) { + parser->state = s_header_field_start; + break; + } + + /* XXX allow spaces after digit? */ + + if (!IS_NUM(ch)) { + SET_ERRNO(HPE_INVALID_VERSION); + goto error; + } + + parser->http_minor *= 10; + parser->http_minor += ch - '0'; + + if (parser->http_minor > 999) { + SET_ERRNO(HPE_INVALID_VERSION); + goto error; + } + + break; + } + + /* end of request line */ + case s_req_line_almost_done: + { + if (ch != LF) { + SET_ERRNO(HPE_LF_EXPECTED); + goto error; + } + + parser->state = s_header_field_start; + break; + } + + case s_header_field_start: + { + if (ch == CR) { + parser->state = s_headers_almost_done; + break; + } + + if (ch == LF) { + /* they might be just sending \n instead of \r\n so this would be + * the second \n to denote the end of headers*/ + parser->state = s_headers_almost_done; + goto reexecute_byte; + } + + c = TOKEN(ch); + + if (!c) { + SET_ERRNO(HPE_INVALID_HEADER_TOKEN); + goto error; + } + + MARK(header_field); + + parser->index = 0; + parser->state = s_header_field; + + switch (c) { + case 'c': + parser->header_state = h_C; + break; + + case 'p': + parser->header_state = h_matching_proxy_connection; + break; + + case 't': + parser->header_state = h_matching_transfer_encoding; + break; + + case 'u': + parser->header_state = h_matching_upgrade; + break; + + default: + parser->header_state = h_general; + break; + } + break; + } + + case s_header_field: + { + c = TOKEN(ch); + + if (c) { + switch (parser->header_state) { + case h_general: + break; + + case h_C: + parser->index++; + parser->header_state = (c == 'o' ? h_CO : h_general); + break; + + case h_CO: + parser->index++; + parser->header_state = (c == 'n' ? h_CON : h_general); + break; + + case h_CON: + parser->index++; + switch (c) { + case 'n': + parser->header_state = h_matching_connection; + break; + case 't': + parser->header_state = h_matching_content_length; + break; + default: + parser->header_state = h_general; + break; + } + break; + + /* connection */ + + case h_matching_connection: + parser->index++; + if (parser->index > sizeof(CONNECTION)-1 + || c != CONNECTION[parser->index]) { + parser->header_state = h_general; + } else if (parser->index == sizeof(CONNECTION)-2) { + parser->header_state = h_connection; + } + break; + + /* proxy-connection */ + + case h_matching_proxy_connection: + parser->index++; + if (parser->index > sizeof(PROXY_CONNECTION)-1 + || c != PROXY_CONNECTION[parser->index]) { + parser->header_state = h_general; + } else if (parser->index == sizeof(PROXY_CONNECTION)-2) { + parser->header_state = h_connection; + } + break; + + /* content-length */ + + case h_matching_content_length: + parser->index++; + if (parser->index > sizeof(CONTENT_LENGTH)-1 + || c != CONTENT_LENGTH[parser->index]) { + parser->header_state = h_general; + } else if (parser->index == sizeof(CONTENT_LENGTH)-2) { + parser->header_state = h_content_length; + } + break; + + /* transfer-encoding */ + + case h_matching_transfer_encoding: + parser->index++; + if (parser->index > sizeof(TRANSFER_ENCODING)-1 + || c != TRANSFER_ENCODING[parser->index]) { + parser->header_state = h_general; + } else if (parser->index == sizeof(TRANSFER_ENCODING)-2) { + parser->header_state = h_transfer_encoding; + } + break; + + /* upgrade */ + + case h_matching_upgrade: + parser->index++; + if (parser->index > sizeof(UPGRADE)-1 + || c != UPGRADE[parser->index]) { + parser->header_state = h_general; + } else if (parser->index == sizeof(UPGRADE)-2) { + parser->header_state = h_upgrade; + } + break; + + case h_connection: + case h_content_length: + case h_transfer_encoding: + case h_upgrade: + if (ch != ' ') parser->header_state = h_general; + break; + + default: + assert(0 && "Unknown header_state"); + break; + } + break; + } + + if (ch == ':') { + parser->state = s_header_value_start; + CALLBACK_DATA(header_field); + break; + } + + if (ch == CR) { + parser->state = s_header_almost_done; + CALLBACK_DATA(header_field); + break; + } + + if (ch == LF) { + parser->state = s_header_field_start; + CALLBACK_DATA(header_field); + break; + } + + SET_ERRNO(HPE_INVALID_HEADER_TOKEN); + goto error; + } + + case s_header_value_start: + { + if (ch == ' ' || ch == '\t') break; + + MARK(header_value); + + parser->state = s_header_value; + parser->index = 0; + + if (ch == CR) { + parser->header_state = h_general; + parser->state = s_header_almost_done; + CALLBACK_DATA(header_value); + break; + } + + if (ch == LF) { + parser->state = s_header_field_start; + CALLBACK_DATA(header_value); + break; + } + + c = LOWER(ch); + + switch (parser->header_state) { + case h_upgrade: + parser->flags |= F_UPGRADE; + parser->header_state = h_general; + break; + + case h_transfer_encoding: + /* looking for 'Transfer-Encoding: chunked' */ + if ('c' == c) { + parser->header_state = h_matching_transfer_encoding_chunked; + } else { + parser->header_state = h_general; + } + break; + + case h_content_length: + if (!IS_NUM(ch)) { + SET_ERRNO(HPE_INVALID_CONTENT_LENGTH); + goto error; + } + + parser->content_length = ch - '0'; + break; + + case h_connection: + /* looking for 'Connection: keep-alive' */ + if (c == 'k') { + parser->header_state = h_matching_connection_keep_alive; + /* looking for 'Connection: close' */ + } else if (c == 'c') { + parser->header_state = h_matching_connection_close; + } else { + parser->header_state = h_general; + } + break; + + default: + parser->header_state = h_general; + break; + } + break; + } + + case s_header_value: + { + + if (ch == CR) { + parser->state = s_header_almost_done; + CALLBACK_DATA(header_value); + break; + } + + if (ch == LF) { + parser->state = s_header_almost_done; + CALLBACK_DATA_NOADVANCE(header_value); + goto reexecute_byte; + } + + c = LOWER(ch); + + switch (parser->header_state) { + case h_general: + break; + + case h_connection: + case h_transfer_encoding: + assert(0 && "Shouldn't get here."); + break; + + case h_content_length: + { + uint64_t t; + + if (ch == ' ') break; + + if (!IS_NUM(ch)) { + SET_ERRNO(HPE_INVALID_CONTENT_LENGTH); + goto error; + } + + t = parser->content_length; + t *= 10; + t += ch - '0'; + + /* Overflow? */ + if (t < parser->content_length || t == ULLONG_MAX) { + SET_ERRNO(HPE_INVALID_CONTENT_LENGTH); + goto error; + } + + parser->content_length = t; + break; + } + + /* Transfer-Encoding: chunked */ + case h_matching_transfer_encoding_chunked: + parser->index++; + if (parser->index > sizeof(CHUNKED)-1 + || c != CHUNKED[parser->index]) { + parser->header_state = h_general; + } else if (parser->index == sizeof(CHUNKED)-2) { + parser->header_state = h_transfer_encoding_chunked; + } + break; + + /* looking for 'Connection: keep-alive' */ + case h_matching_connection_keep_alive: + parser->index++; + if (parser->index > sizeof(KEEP_ALIVE)-1 + || c != KEEP_ALIVE[parser->index]) { + parser->header_state = h_general; + } else if (parser->index == sizeof(KEEP_ALIVE)-2) { + parser->header_state = h_connection_keep_alive; + } + break; + + /* looking for 'Connection: close' */ + case h_matching_connection_close: + parser->index++; + if (parser->index > sizeof(CLOSE)-1 || c != CLOSE[parser->index]) { + parser->header_state = h_general; + } else if (parser->index == sizeof(CLOSE)-2) { + parser->header_state = h_connection_close; + } + break; + + case h_transfer_encoding_chunked: + case h_connection_keep_alive: + case h_connection_close: + if (ch != ' ') parser->header_state = h_general; + break; + + default: + parser->state = s_header_value; + parser->header_state = h_general; + break; + } + break; + } + + case s_header_almost_done: + { + STRICT_CHECK(ch != LF); + + parser->state = s_header_value_lws; + + switch (parser->header_state) { + case h_connection_keep_alive: + parser->flags |= F_CONNECTION_KEEP_ALIVE; + break; + case h_connection_close: + parser->flags |= F_CONNECTION_CLOSE; + break; + case h_transfer_encoding_chunked: + parser->flags |= F_CHUNKED; + break; + default: + break; + } + + break; + } + + case s_header_value_lws: + { + if (ch == ' ' || ch == '\t') + parser->state = s_header_value_start; + else + { + parser->state = s_header_field_start; + goto reexecute_byte; + } + break; + } + + case s_headers_almost_done: + { + STRICT_CHECK(ch != LF); + + if (parser->flags & F_TRAILING) { + /* End of a chunked request */ + parser->state = NEW_MESSAGE(); + CALLBACK_NOTIFY(message_complete); + break; + } + + parser->state = s_headers_done; + + /* Set this here so that on_headers_complete() callbacks can see it */ + parser->upgrade = + (parser->flags & F_UPGRADE || parser->method == HTTP_CONNECT); + + /* Here we call the headers_complete callback. This is somewhat + * different than other callbacks because if the user returns 1, we + * will interpret that as saying that this message has no body. This + * is needed for the annoying case of recieving a response to a HEAD + * request. + * + * We'd like to use CALLBACK_NOTIFY_NOADVANCE() here but we cannot, so + * we have to simulate it by handling a change in errno below. + */ + if (settings->on_headers_complete) { + switch (settings->on_headers_complete(parser)) { + case 0: + break; + + case 1: + parser->flags |= F_SKIPBODY; + break; + + default: + SET_ERRNO(HPE_CB_headers_complete); + return p - data; /* Error */ + } + } + + if (HTTP_PARSER_ERRNO(parser) != HPE_OK) { + return p - data; + } + + goto reexecute_byte; + } + + case s_headers_done: + { + STRICT_CHECK(ch != LF); + + parser->nread = 0; + + /* Exit, the rest of the connect is in a different protocol. */ + if (parser->upgrade) { + parser->state = NEW_MESSAGE(); + CALLBACK_NOTIFY(message_complete); + return (p - data) + 1; + } + + if (parser->flags & F_SKIPBODY) { + parser->state = NEW_MESSAGE(); + CALLBACK_NOTIFY(message_complete); + } else if (parser->flags & F_CHUNKED) { + /* chunked encoding - ignore Content-Length header */ + parser->state = s_chunk_size_start; + } else { + if (parser->content_length == 0) { + /* Content-Length header given but zero: Content-Length: 0\r\n */ + parser->state = NEW_MESSAGE(); + CALLBACK_NOTIFY(message_complete); + } else if (parser->content_length != ULLONG_MAX) { + /* Content-Length header given and non-zero */ + parser->state = s_body_identity; + } else { + if (parser->type == HTTP_REQUEST || + !http_message_needs_eof(parser)) { + /* Assume content-length 0 - read the next */ + parser->state = NEW_MESSAGE(); + CALLBACK_NOTIFY(message_complete); + } else { + /* Read body until EOF */ + parser->state = s_body_identity_eof; + } + } + } + + break; + } + + case s_body_identity: + { + uint64_t to_read = MIN(parser->content_length, + (uint64_t) ((data + len) - p)); + + assert(parser->content_length != 0 + && parser->content_length != ULLONG_MAX); + + /* The difference between advancing content_length and p is because + * the latter will automaticaly advance on the next loop iteration. + * Further, if content_length ends up at 0, we want to see the last + * byte again for our message complete callback. + */ + MARK(body); + parser->content_length -= to_read; + p += to_read - 1; + + if (parser->content_length == 0) { + parser->state = s_message_done; + + /* Mimic CALLBACK_DATA_NOADVANCE() but with one extra byte. + * + * The alternative to doing this is to wait for the next byte to + * trigger the data callback, just as in every other case. The + * problem with this is that this makes it difficult for the test + * harness to distinguish between complete-on-EOF and + * complete-on-length. It's not clear that this distinction is + * important for applications, but let's keep it for now. + */ + CALLBACK_DATA_(body, p - body_mark + 1, p - data); + goto reexecute_byte; + } + + break; + } + + /* read until EOF */ + case s_body_identity_eof: + MARK(body); + p = data + len - 1; + + break; + + case s_message_done: + parser->state = NEW_MESSAGE(); + CALLBACK_NOTIFY(message_complete); + break; + + case s_chunk_size_start: + { + assert(parser->nread == 1); + assert(parser->flags & F_CHUNKED); + + unhex_val = unhex[(unsigned char)ch]; + if (unhex_val == -1) { + SET_ERRNO(HPE_INVALID_CHUNK_SIZE); + goto error; + } + + parser->content_length = unhex_val; + parser->state = s_chunk_size; + break; + } + + case s_chunk_size: + { + uint64_t t; + + assert(parser->flags & F_CHUNKED); + + if (ch == CR) { + parser->state = s_chunk_size_almost_done; + break; + } + + unhex_val = unhex[(unsigned char)ch]; + + if (unhex_val == -1) { + if (ch == ';' || ch == ' ') { + parser->state = s_chunk_parameters; + break; + } + + SET_ERRNO(HPE_INVALID_CHUNK_SIZE); + goto error; + } + + t = parser->content_length; + t *= 16; + t += unhex_val; + + /* Overflow? */ + if (t < parser->content_length || t == ULLONG_MAX) { + SET_ERRNO(HPE_INVALID_CONTENT_LENGTH); + goto error; + } + + parser->content_length = t; + break; + } + + case s_chunk_parameters: + { + assert(parser->flags & F_CHUNKED); + /* just ignore this shit. TODO check for overflow */ + if (ch == CR) { + parser->state = s_chunk_size_almost_done; + break; + } + break; + } + + case s_chunk_size_almost_done: + { + assert(parser->flags & F_CHUNKED); + STRICT_CHECK(ch != LF); + + parser->nread = 0; + + if (parser->content_length == 0) { + parser->flags |= F_TRAILING; + parser->state = s_header_field_start; + } else { + parser->state = s_chunk_data; + } + break; + } + + case s_chunk_data: + { + uint64_t to_read = MIN(parser->content_length, + (uint64_t) ((data + len) - p)); + + assert(parser->flags & F_CHUNKED); + assert(parser->content_length != 0 + && parser->content_length != ULLONG_MAX); + + /* See the explanation in s_body_identity for why the content + * length and data pointers are managed this way. + */ + MARK(body); + parser->content_length -= to_read; + p += to_read - 1; + + if (parser->content_length == 0) { + parser->state = s_chunk_data_almost_done; + } + + break; + } + + case s_chunk_data_almost_done: + assert(parser->flags & F_CHUNKED); + assert(parser->content_length == 0); + STRICT_CHECK(ch != CR); + parser->state = s_chunk_data_done; + CALLBACK_DATA(body); + break; + + case s_chunk_data_done: + assert(parser->flags & F_CHUNKED); + STRICT_CHECK(ch != LF); + parser->nread = 0; + parser->state = s_chunk_size_start; + break; + + default: + assert(0 && "unhandled state"); + SET_ERRNO(HPE_INVALID_INTERNAL_STATE); + goto error; + } + } + + /* Run callbacks for any marks that we have leftover after we ran our of + * bytes. There should be at most one of these set, so it's OK to invoke + * them in series (unset marks will not result in callbacks). + * + * We use the NOADVANCE() variety of callbacks here because 'p' has already + * overflowed 'data' and this allows us to correct for the off-by-one that + * we'd otherwise have (since CALLBACK_DATA() is meant to be run with a 'p' + * value that's in-bounds). + */ + + assert(((header_field_mark ? 1 : 0) + + (header_value_mark ? 1 : 0) + + (url_mark ? 1 : 0) + + (body_mark ? 1 : 0)) <= 1); + + CALLBACK_DATA_NOADVANCE(header_field); + CALLBACK_DATA_NOADVANCE(header_value); + CALLBACK_DATA_NOADVANCE(url); + CALLBACK_DATA_NOADVANCE(body); + + return len; + +error: + if (HTTP_PARSER_ERRNO(parser) == HPE_OK) { + SET_ERRNO(HPE_UNKNOWN); + } + + return (p - data); +} + + +/* Does the parser need to see an EOF to find the end of the message? */ +int +http_message_needs_eof (ryah_http_parser *parser) +{ + if (parser->type == HTTP_REQUEST) { + return 0; + } + + /* See RFC 2616 section 4.4 */ + if (parser->status_code / 100 == 1 || /* 1xx e.g. Continue */ + parser->status_code == 204 || /* No Content */ + parser->status_code == 304 || /* Not Modified */ + parser->flags & F_SKIPBODY) { /* response to a HEAD request */ + return 0; + } + + if ((parser->flags & F_CHUNKED) || parser->content_length != ULLONG_MAX) { + return 0; + } + + return 1; +} + + +int +http_should_keep_alive (ryah_http_parser *parser) +{ + if (parser->http_major > 0 && parser->http_minor > 0) { + /* HTTP/1.1 */ + if (parser->flags & F_CONNECTION_CLOSE) { + return 0; + } + } else { + /* HTTP/1.0 or earlier */ + if (!(parser->flags & F_CONNECTION_KEEP_ALIVE)) { + return 0; + } + } + + return !http_message_needs_eof(parser); +} + + +const char * http_method_str (enum http_method m) +{ + return method_strings[m]; +} + + +void +ryah_http_parser_init (ryah_http_parser *parser, enum ryah_http_parser_type t) +{ + void *data = parser->data; /* preserve application data */ + memset(parser, 0, sizeof(*parser)); + parser->data = data; + parser->type = t; + parser->state = (t == HTTP_REQUEST ? s_start_req : (t == HTTP_RESPONSE ? s_start_res : s_start_req_or_res)); + parser->http_errno = HPE_OK; +} + +const char * +http_errno_name(enum http_errno err) { + assert(err < (sizeof(http_strerror_tab)/sizeof(http_strerror_tab[0]))); + return http_strerror_tab[err].name; +} + +const char * +http_errno_description(enum http_errno err) { + assert(err < (sizeof(http_strerror_tab)/sizeof(http_strerror_tab[0]))); + return http_strerror_tab[err].description; +} + +int +ryah_http_parser_parse_url(const char *buf, size_t buflen, int is_connect, + struct ryah_http_parser_url *u) +{ + enum state s; + const char *p; + enum ryah_http_parser_url_fields uf, old_uf; + + u->port = u->field_set = 0; + s = is_connect ? s_req_host_start : s_req_spaces_before_url; + uf = old_uf = UF_MAX; + + for (p = buf; p < buf + buflen; p++) { + s = parse_url_char(s, *p); + + /* Figure out the next field that we're operating on */ + switch (s) { + case s_dead: + return 1; + + /* Skip delimeters */ + case s_req_schema_slash: + case s_req_schema_slash_slash: + case s_req_host_start: + case s_req_host_v6_start: + case s_req_host_v6_end: + case s_req_port_start: + case s_req_query_string_start: + case s_req_fragment_start: + continue; + + case s_req_schema: + uf = UF_SCHEMA; + break; + + case s_req_host: + case s_req_host_v6: + uf = UF_HOST; + break; + + case s_req_port: + uf = UF_PORT; + break; + + case s_req_path: + uf = UF_PATH; + break; + + case s_req_query_string: + uf = UF_QUERY; + break; + + case s_req_fragment: + uf = UF_FRAGMENT; + break; + + default: + assert(!"Unexpected state"); + return 1; + } + + /* Nothing's changed; soldier on */ + if (uf == old_uf) { + u->field_data[uf].len++; + continue; + } + + u->field_data[uf].off = p - buf; + u->field_data[uf].len = 1; + + u->field_set |= (1 << uf); + old_uf = uf; + } + + /* CONNECT requests can only contain "hostname:port" */ + if (is_connect && u->field_set != ((1 << UF_HOST)|(1 << UF_PORT))) { + return 1; + } + + /* Make sure we don't end somewhere unexpected */ + switch (s) { + case s_req_host_v6_start: + case s_req_host_v6: + case s_req_host_v6_end: + case s_req_host: + case s_req_port_start: + return 1; + default: + break; + } + + if (u->field_set & (1 << UF_PORT)) { + /* Don't bother with endp; we've already validated the string */ + unsigned long v = strtoul(buf + u->field_data[UF_PORT].off, NULL, 10); + + /* Ports have a max value of 2^16 */ + if (v > 0xffff) { + return 1; + } + + u->port = (uint16_t) v; + } + + return 0; +} + +void +ryah_http_parser_pause(ryah_http_parser *parser, int paused) { + /* Users should only be pausing/unpausing a parser that is not in an error + * state. In non-debug builds, there's not much that we can do about this + * other than ignore it. + */ + if (HTTP_PARSER_ERRNO(parser) == HPE_OK || + HTTP_PARSER_ERRNO(parser) == HPE_PAUSED) { + SET_ERRNO((paused) ? HPE_PAUSED : HPE_OK); + } else { + assert(0 && "Attempting to pause parser in error state"); + } +} diff --git a/vendor/bundle/ruby/2.5.0/gems/http_parser.rb-0.6.0/ext/ruby_http_parser/ryah_http_parser.h b/vendor/bundle/ruby/2.5.0/gems/http_parser.rb-0.6.0/ext/ruby_http_parser/ryah_http_parser.h new file mode 100644 index 0000000000..f23a41b3aa --- /dev/null +++ b/vendor/bundle/ruby/2.5.0/gems/http_parser.rb-0.6.0/ext/ruby_http_parser/ryah_http_parser.h @@ -0,0 +1,312 @@ +/* Copyright Joyent, Inc. and other Node contributors. All rights reserved. + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to + * deal in the Software without restriction, including without limitation the + * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or + * sell copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS + * IN THE SOFTWARE. + */ +#ifndef ryah_http_parser_h +#define ryah_http_parser_h +#ifdef __cplusplus +extern "C" { +#endif + +#define HTTP_PARSER_VERSION_MAJOR 1 +#define HTTP_PARSER_VERSION_MINOR 0 + +#include +#if defined(_WIN32) && !defined(__MINGW32__) && (!defined(_MSC_VER) || _MSC_VER<1600) +typedef __int8 int8_t; +typedef unsigned __int8 uint8_t; +typedef __int16 int16_t; +typedef unsigned __int16 uint16_t; +typedef __int32 int32_t; +typedef unsigned __int32 uint32_t; +typedef __int64 int64_t; +typedef unsigned __int64 uint64_t; + +typedef unsigned int size_t; +typedef int ssize_t; +#else +#include +#endif + +/* Compile with -DHTTP_PARSER_STRICT=0 to make less checks, but run + * faster + */ +#ifndef HTTP_PARSER_STRICT +# define HTTP_PARSER_STRICT 1 +#endif + +/* Compile with -DHTTP_PARSER_DEBUG=1 to add extra debugging information to + * the error reporting facility. + */ +#ifndef HTTP_PARSER_DEBUG +# define HTTP_PARSER_DEBUG 0 +#endif + + +/* Maximium header size allowed */ +#define HTTP_MAX_HEADER_SIZE (80*1024) + + +typedef struct ryah_http_parser ryah_http_parser; +typedef struct ryah_http_parser_settings ryah_http_parser_settings; +typedef struct ryah_http_parser_result ryah_http_parser_result; + + +/* Callbacks should return non-zero to indicate an error. The parser will + * then halt execution. + * + * The one exception is on_headers_complete. In a HTTP_RESPONSE parser + * returning '1' from on_headers_complete will tell the parser that it + * should not expect a body. This is used when receiving a response to a + * HEAD request which may contain 'Content-Length' or 'Transfer-Encoding: + * chunked' headers that indicate the presence of a body. + * + * http_data_cb does not return data chunks. It will be call arbitrarally + * many times for each string. E.G. you might get 10 callbacks for "on_path" + * each providing just a few characters more data. + */ +typedef int (*http_data_cb) (ryah_http_parser*, const char *at, size_t length); +typedef int (*http_cb) (ryah_http_parser*); + + +/* Request Methods */ +enum http_method + { HTTP_DELETE = 0 + , HTTP_GET + , HTTP_HEAD + , HTTP_POST + , HTTP_PUT + /* pathological */ + , HTTP_CONNECT + , HTTP_OPTIONS + , HTTP_TRACE + /* webdav */ + , HTTP_COPY + , HTTP_LOCK + , HTTP_MKCOL + , HTTP_MOVE + , HTTP_PROPFIND + , HTTP_PROPPATCH + , HTTP_UNLOCK + /* subversion */ + , HTTP_REPORT + , HTTP_MKACTIVITY + , HTTP_CHECKOUT + , HTTP_MERGE + /* upnp */ + , HTTP_MSEARCH + , HTTP_NOTIFY + , HTTP_SUBSCRIBE + , HTTP_UNSUBSCRIBE + /* RFC-5789 */ + , HTTP_PATCH + , HTTP_PURGE + }; + + +enum ryah_http_parser_type { HTTP_REQUEST, HTTP_RESPONSE, HTTP_BOTH }; + + +/* Flag values for ryah_http_parser.flags field */ +enum flags + { F_CHUNKED = 1 << 0 + , F_CONNECTION_KEEP_ALIVE = 1 << 1 + , F_CONNECTION_CLOSE = 1 << 2 + , F_TRAILING = 1 << 3 + , F_UPGRADE = 1 << 4 + , F_SKIPBODY = 1 << 5 + }; + + +/* Map for errno-related constants + * + * The provided argument should be a macro that takes 2 arguments. + */ +#define HTTP_ERRNO_MAP(XX) \ + /* No error */ \ + XX(OK, "success") \ + \ + /* Callback-related errors */ \ + XX(CB_message_begin, "the on_message_begin callback failed") \ + XX(CB_url, "the on_url callback failed") \ + XX(CB_header_field, "the on_header_field callback failed") \ + XX(CB_header_value, "the on_header_value callback failed") \ + XX(CB_headers_complete, "the on_headers_complete callback failed") \ + XX(CB_body, "the on_body callback failed") \ + XX(CB_message_complete, "the on_message_complete callback failed") \ + \ + /* Parsing-related errors */ \ + XX(INVALID_EOF_STATE, "stream ended at an unexpected time") \ + XX(HEADER_OVERFLOW, \ + "too many header bytes seen; overflow detected") \ + XX(CLOSED_CONNECTION, \ + "data received after completed connection: close message") \ + XX(INVALID_VERSION, "invalid HTTP version") \ + XX(INVALID_STATUS, "invalid HTTP status code") \ + XX(INVALID_METHOD, "invalid HTTP method") \ + XX(INVALID_URL, "invalid URL") \ + XX(INVALID_HOST, "invalid host") \ + XX(INVALID_PORT, "invalid port") \ + XX(INVALID_PATH, "invalid path") \ + XX(INVALID_QUERY_STRING, "invalid query string") \ + XX(INVALID_FRAGMENT, "invalid fragment") \ + XX(LF_EXPECTED, "LF character expected") \ + XX(INVALID_HEADER_TOKEN, "invalid character in header") \ + XX(INVALID_CONTENT_LENGTH, \ + "invalid character in content-length header") \ + XX(INVALID_CHUNK_SIZE, \ + "invalid character in chunk size header") \ + XX(INVALID_CONSTANT, "invalid constant string") \ + XX(INVALID_INTERNAL_STATE, "encountered unexpected internal state")\ + XX(STRICT, "strict mode assertion failed") \ + XX(PAUSED, "parser is paused") \ + XX(UNKNOWN, "an unknown error occurred") + + +/* Define HPE_* values for each errno value above */ +#define HTTP_ERRNO_GEN(n, s) HPE_##n, +enum http_errno { + HTTP_ERRNO_MAP(HTTP_ERRNO_GEN) +}; +#undef HTTP_ERRNO_GEN + + +/* Get an http_errno value from an ryah_http_parser */ +#define HTTP_PARSER_ERRNO(p) ((enum http_errno) (p)->http_errno) + +/* Get the line number that generated the current error */ +#if HTTP_PARSER_DEBUG +#define HTTP_PARSER_ERRNO_LINE(p) ((p)->error_lineno) +#else +#define HTTP_PARSER_ERRNO_LINE(p) 0 +#endif + + +struct ryah_http_parser { + /** PRIVATE **/ + unsigned char type : 2; /* enum ryah_http_parser_type */ + unsigned char flags : 6; /* F_* values from 'flags' enum; semi-public */ + unsigned char state; /* enum state from ryah_http_parser.c */ + unsigned char header_state; /* enum header_state from ryah_http_parser.c */ + unsigned char index; /* index into current matcher */ + + uint32_t nread; /* # bytes read in various scenarios */ + uint64_t content_length; /* # bytes in body (0 if no Content-Length header) */ + + /** READ-ONLY **/ + unsigned short http_major; + unsigned short http_minor; + unsigned short status_code; /* responses only */ + unsigned char method; /* requests only */ + unsigned char http_errno : 7; + + /* 1 = Upgrade header was present and the parser has exited because of that. + * 0 = No upgrade header present. + * Should be checked when ryah_http_parser_execute() returns in addition to + * error checking. + */ + unsigned char upgrade : 1; + +#if HTTP_PARSER_DEBUG + uint32_t error_lineno; +#endif + + /** PUBLIC **/ + void *data; /* A pointer to get hook to the "connection" or "socket" object */ +}; + + +struct ryah_http_parser_settings { + http_cb on_message_begin; + http_data_cb on_url; + http_data_cb on_header_field; + http_data_cb on_header_value; + http_cb on_headers_complete; + http_data_cb on_body; + http_cb on_message_complete; +}; + + +enum ryah_http_parser_url_fields + { UF_SCHEMA = 0 + , UF_HOST = 1 + , UF_PORT = 2 + , UF_PATH = 3 + , UF_QUERY = 4 + , UF_FRAGMENT = 5 + , UF_MAX = 6 + }; + + +/* Result structure for ryah_http_parser_parse_url(). + * + * Callers should index into field_data[] with UF_* values iff field_set + * has the relevant (1 << UF_*) bit set. As a courtesy to clients (and + * because we probably have padding left over), we convert any port to + * a uint16_t. + */ +struct ryah_http_parser_url { + uint16_t field_set; /* Bitmask of (1 << UF_*) values */ + uint16_t port; /* Converted UF_PORT string */ + + struct { + uint16_t off; /* Offset into buffer in which field starts */ + uint16_t len; /* Length of run in buffer */ + } field_data[UF_MAX]; +}; + + +void ryah_http_parser_init(ryah_http_parser *parser, enum ryah_http_parser_type type); + + +size_t ryah_http_parser_execute(ryah_http_parser *parser, + const ryah_http_parser_settings *settings, + const char *data, + size_t len); + + +/* If http_should_keep_alive() in the on_headers_complete or + * on_message_complete callback returns true, then this will be should be + * the last message on the connection. + * If you are the server, respond with the "Connection: close" header. + * If you are the client, close the connection. + */ +int http_should_keep_alive(ryah_http_parser *parser); + +/* Returns a string version of the HTTP method. */ +const char *http_method_str(enum http_method m); + +/* Return a string name of the given error */ +const char *http_errno_name(enum http_errno err); + +/* Return a string description of the given error */ +const char *http_errno_description(enum http_errno err); + +/* Parse a URL; return nonzero on failure */ +int ryah_http_parser_parse_url(const char *buf, size_t buflen, + int is_connect, + struct ryah_http_parser_url *u); + +/* Pause or un-pause the parser; a nonzero value pauses */ +void ryah_http_parser_pause(ryah_http_parser *parser, int paused); + +#ifdef __cplusplus +} +#endif +#endif diff --git a/vendor/bundle/ruby/2.5.0/gems/http_parser.rb-0.6.0/ext/ruby_http_parser/ryah_http_parser.o b/vendor/bundle/ruby/2.5.0/gems/http_parser.rb-0.6.0/ext/ruby_http_parser/ryah_http_parser.o new file mode 100644 index 0000000000000000000000000000000000000000..6872509e075689de5ab7f69557d8bbc0bc4a5ca0 GIT binary patch literal 50448 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 literal 0 HcmV?d00001 diff --git a/vendor/bundle/ruby/2.5.0/gems/http_parser.rb-0.6.0/ext/ruby_http_parser/vendor/http-parser-java/Makefile b/vendor/bundle/ruby/2.5.0/gems/http_parser.rb-0.6.0/ext/ruby_http_parser/vendor/http-parser-java/Makefile new file mode 100644 index 0000000000..8d90f8dddb --- /dev/null +++ b/vendor/bundle/ruby/2.5.0/gems/http_parser.rb-0.6.0/ext/ruby_http_parser/vendor/http-parser-java/Makefile @@ -0,0 +1,58 @@ +CC?=gcc +AR?=ar + +CPPFLAGS += -I. +CPPFLAGS_DEBUG = $(CPPFLAGS) -DHTTP_PARSER_STRICT=1 -DHTTP_PARSER_DEBUG=1 +CPPFLAGS_DEBUG += $(CPPFLAGS_DEBUG_EXTRA) +CPPFLAGS_FAST = $(CPPFLAGS) -DHTTP_PARSER_STRICT=0 -DHTTP_PARSER_DEBUG=0 +CPPFLAGS_FAST += $(CPPFLAGS_FAST_EXTRA) + +CFLAGS += -Wall -Wextra -Werror +CFLAGS_DEBUG = $(CFLAGS) -O0 -g $(CFLAGS_DEBUG_EXTRA) +CFLAGS_FAST = $(CFLAGS) -O3 $(CFLAGS_FAST_EXTRA) +CFLAGS_LIB = $(CFLAGS_FAST) -fPIC + +test: test_g test_fast + ./test_g + ./test_fast + +test_g: http_parser_g.o test_g.o + $(CC) $(CFLAGS_DEBUG) $(LDFLAGS) http_parser_g.o test_g.o -o $@ + +test_g.o: test.c http_parser.h Makefile + $(CC) $(CPPFLAGS_DEBUG) $(CFLAGS_DEBUG) -c test.c -o $@ + +http_parser_g.o: http_parser.c http_parser.h Makefile + $(CC) $(CPPFLAGS_DEBUG) $(CFLAGS_DEBUG) -c http_parser.c -o $@ + +test_fast: http_parser.o test.o http_parser.h + $(CC) $(CFLAGS_FAST) $(LDFLAGS) http_parser.o test.o -o $@ + +test.o: test.c http_parser.h Makefile + $(CC) $(CPPFLAGS_FAST) $(CFLAGS_FAST) -c test.c -o $@ + +http_parser.o: http_parser.c http_parser.h Makefile + $(CC) $(CPPFLAGS_FAST) $(CFLAGS_FAST) -c http_parser.c + +test-run-timed: test_fast + while(true) do time ./test_fast > /dev/null; done + +test-valgrind: test_g + valgrind ./test_g + +libhttp_parser.o: http_parser.c http_parser.h Makefile + $(CC) $(CPPFLAGS_FAST) $(CFLAGS_LIB) -c http_parser.c -o libhttp_parser.o + +library: libhttp_parser.o + $(CC) -shared -o libhttp_parser.so libhttp_parser.o + +package: http_parser.o + $(AR) rcs libhttp_parser.a http_parser.o + +tags: http_parser.c http_parser.h test.c + ctags $^ + +clean: + rm -f *.o *.a test test_fast test_g http_parser.tar tags libhttp_parser.so libhttp_parser.o + +.PHONY: clean package test-run test-run-timed test-valgrind diff --git a/vendor/bundle/ruby/2.5.0/gems/http_parser.rb-0.6.0/ext/ruby_http_parser/vendor/http-parser-java/ext/primitives.jar b/vendor/bundle/ruby/2.5.0/gems/http_parser.rb-0.6.0/ext/ruby_http_parser/vendor/http-parser-java/ext/primitives.jar new file mode 100644 index 0000000000000000000000000000000000000000..2900c5fe6b3768aa977161f9b347bb54ecf23840 GIT binary patch literal 54971 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°S4J}iINu}lAaOaL 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 nXb17;07$^c<= /dev/null; done + +test-valgrind: test_g + valgrind ./test_g + +libhttp_parser.o: http_parser.c http_parser.h Makefile + $(CC) $(CPPFLAGS_FAST) $(CFLAGS_LIB) -c http_parser.c -o libhttp_parser.o + +library: libhttp_parser.o + $(CC) -shared -o libhttp_parser.so libhttp_parser.o + +package: http_parser.o + $(AR) rcs libhttp_parser.a http_parser.o + +tags: http_parser.c http_parser.h test.c + ctags $^ + +clean: + rm -f *.o *.a test test_fast test_g http_parser.tar tags libhttp_parser.so libhttp_parser.o + +.PHONY: clean package test-run test-run-timed test-valgrind diff --git a/vendor/bundle/ruby/2.5.0/gems/http_parser.rb-0.6.0/lib/ruby_http_parser.bundle b/vendor/bundle/ruby/2.5.0/gems/http_parser.rb-0.6.0/lib/ruby_http_parser.bundle new file mode 100755 index 0000000000000000000000000000000000000000..5c80f260bf14a4ab601d8cec7ca47e30ec7ea717 GIT binary patch literal 40572 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

r z?DF!*YJr5Tl>bwU4{nv&%05WQ?l1qE;zj^pzqsf=SeO?M8_oqZTuSTTWjsuPy+h8# zu$-X_8!+#LEA=o7iOJw~k%I7#r8@^1;H+EpPtvl9Jfsz+kv>eM)Wb1E$9@mTW^-X5 z=-iwOJ4u!uVurhu%D7af4Dr`Qa$s2unkUG2{{Mx{fv7F}FN_3B&^au-z_2b-=5l-y zE(cP-;$%^?eKO+MKYl#S3Ws&0*5;iS{40ZVI^kCOa+j~Q!dk~bX+&)%2+g1Kj zLOlA^Kej?#c}orP$yoR;Dm9u*k@;*iVU_x2Tt(r17Jgru@J0&qxV9)LihsbuSE$fw z)D)RdPUyVK?lajwNxP$5;=57Jh`$zJwB%)cDB34k0-VjbyA99yQ4;SS;7!PG;_>6g zmy&o70dLCij6WsujskBN_JesDpNjCV0S@<>GKOdT%HhqqE?w1M`4_eOUiqoB|NB{= zuDN&7|5*5$1)r@RQK|Y!wSMQK7Z9THwJ(D2gdYLKq;l;HI1kb0T7KsNDD_7Hk=%J7 z0K`?l2yi~&3#cc?`w1W<)B1k|65Z726EA}YUgwP%>@(PIu+d<`Ab{Yr{t{RjosDz| z;gtQ13}0}0xVa8@>#679mi-9}r;3hl*IsGmL$_;RUo$s=T<0K6;%oV0zk#pBxAsV( z#z+f(U4eUBf&0z^_x=L+pB1hKUX*Zhv*xYU3JwJPTwHeFLSP!&0u4s!cV53r~aJRfW>icE;e}UaC++c z`FB`5Bt7)M*d)5GBvGVqSl9Kwo(lTr>T<d^T(Bbzs9|^%CrH+$g(IE&gOSf$IM+mGS?}6;-DE*z36&yKvXld8uP-pO2r} zykrHQ*j~c(mL(pZw=P+;dJr2!(ttdS4s{q3@Wk4D?IS8TQl6^9Xj-w$eJxn`7}=%V zb(#%YH!Yl3gWZi^$nHkd=`9AYH+X}=H3r{m@Fs(v!DfRF-??uze;3c;JNk1zUzJ*M{(QS)AMErofiR=Fbr;9OX literal 0 HcmV?d00001 diff --git a/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi-x86_64-darwin18/doc/Makefile b/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi-x86_64-darwin18/doc/Makefile new file mode 100644 index 0000000000..89e56c5755 --- /dev/null +++ b/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi-x86_64-darwin18/doc/Makefile @@ -0,0 +1,811 @@ +# Makefile.in generated by automake 1.15 from Makefile.am. +# doc/Makefile. Generated from Makefile.in by configure. + +# Copyright (C) 1994-2014 Free Software Foundation, Inc. + +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. + + +VPATH = /Users/kcl2/github/personal-website/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi/doc +am__is_gnu_make = { \ + if test -z '$(MAKELEVEL)'; then \ + false; \ + elif test -n '$(MAKE_HOST)'; then \ + true; \ + elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ + true; \ + else \ + false; \ + fi; \ +} +am__make_running_with_option = \ + case $${target_option-} in \ + ?) ;; \ + *) echo "am__make_running_with_option: internal error: invalid" \ + "target option '$${target_option-}' specified" >&2; \ + exit 1;; \ + esac; \ + has_opt=no; \ + sane_makeflags=$$MAKEFLAGS; \ + if $(am__is_gnu_make); then \ + sane_makeflags=$$MFLAGS; \ + else \ + case $$MAKEFLAGS in \ + *\\[\ \ ]*) \ + bs=\\; \ + sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ + | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \ + esac; \ + fi; \ + skip_next=no; \ + strip_trailopt () \ + { \ + flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ + }; \ + for flg in $$sane_makeflags; do \ + test $$skip_next = yes && { skip_next=no; continue; }; \ + case $$flg in \ + *=*|--*) continue;; \ + -*I) strip_trailopt 'I'; skip_next=yes;; \ + -*I?*) strip_trailopt 'I';; \ + -*O) strip_trailopt 'O'; skip_next=yes;; \ + -*O?*) strip_trailopt 'O';; \ + -*l) strip_trailopt 'l'; skip_next=yes;; \ + -*l?*) strip_trailopt 'l';; \ + -[dEDm]) skip_next=yes;; \ + -[JT]) skip_next=yes;; \ + esac; \ + case $$flg in \ + *$$target_option*) has_opt=yes; break;; \ + esac; \ + done; \ + test $$has_opt = yes +am__make_dryrun = (target_option=n; $(am__make_running_with_option)) +am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) +pkgdatadir = $(datadir)/libffi +pkgincludedir = $(includedir)/libffi +pkglibdir = $(libdir)/libffi +pkglibexecdir = $(libexecdir)/libffi +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +install_sh_DATA = $(install_sh) -c -m 644 +install_sh_PROGRAM = $(install_sh) -c +install_sh_SCRIPT = $(install_sh) -c +INSTALL_HEADER = $(INSTALL_DATA) +transform = $(program_transform_name) +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_triplet = x86_64-apple-darwin18.5.0 +host_triplet = x86_64-apple-darwin18.5.0 +target_triplet = x86_64-apple-darwin18.5.0 +subdir = doc +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/m4/asmcfi.m4 \ + $(top_srcdir)/m4/ax_append_flag.m4 \ + $(top_srcdir)/m4/ax_cc_maxopt.m4 \ + $(top_srcdir)/m4/ax_cflags_warn_all.m4 \ + $(top_srcdir)/m4/ax_check_compile_flag.m4 \ + $(top_srcdir)/m4/ax_compiler_vendor.m4 \ + $(top_srcdir)/m4/ax_configure_args.m4 \ + $(top_srcdir)/m4/ax_enable_builddir.m4 \ + $(top_srcdir)/m4/ax_gcc_archflag.m4 \ + $(top_srcdir)/m4/ax_gcc_x86_cpuid.m4 \ + $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ + $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ + $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/acinclude.m4 \ + $(top_srcdir)/configure.ac +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) +DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/version.texi \ + $(srcdir)/stamp-vti $(am__DIST_COMMON) +mkinstalldirs = $(install_sh) -d +CONFIG_HEADER = $(top_builddir)/fficonfig.h +CONFIG_CLEAN_FILES = +CONFIG_CLEAN_VPATH_FILES = +AM_V_P = $(am__v_P_$(V)) +am__v_P_ = $(am__v_P_$(AM_DEFAULT_VERBOSITY)) +am__v_P_0 = false +am__v_P_1 = : +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +am__v_GEN_1 = +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ +am__v_at_1 = +SOURCES = +DIST_SOURCES = +AM_V_DVIPS = $(am__v_DVIPS_$(V)) +am__v_DVIPS_ = $(am__v_DVIPS_$(AM_DEFAULT_VERBOSITY)) +am__v_DVIPS_0 = @echo " DVIPS " $@; +am__v_DVIPS_1 = +AM_V_MAKEINFO = $(am__v_MAKEINFO_$(V)) +am__v_MAKEINFO_ = $(am__v_MAKEINFO_$(AM_DEFAULT_VERBOSITY)) +am__v_MAKEINFO_0 = @echo " MAKEINFO" $@; +am__v_MAKEINFO_1 = +AM_V_INFOHTML = $(am__v_INFOHTML_$(V)) +am__v_INFOHTML_ = $(am__v_INFOHTML_$(AM_DEFAULT_VERBOSITY)) +am__v_INFOHTML_0 = @echo " INFOHTML" $@; +am__v_INFOHTML_1 = +AM_V_TEXI2DVI = $(am__v_TEXI2DVI_$(V)) +am__v_TEXI2DVI_ = $(am__v_TEXI2DVI_$(AM_DEFAULT_VERBOSITY)) +am__v_TEXI2DVI_0 = @echo " TEXI2DVI" $@; +am__v_TEXI2DVI_1 = +AM_V_TEXI2PDF = $(am__v_TEXI2PDF_$(V)) +am__v_TEXI2PDF_ = $(am__v_TEXI2PDF_$(AM_DEFAULT_VERBOSITY)) +am__v_TEXI2PDF_0 = @echo " TEXI2PDF" $@; +am__v_TEXI2PDF_1 = +AM_V_texinfo = $(am__v_texinfo_$(V)) +am__v_texinfo_ = $(am__v_texinfo_$(AM_DEFAULT_VERBOSITY)) +am__v_texinfo_0 = -q +am__v_texinfo_1 = +AM_V_texidevnull = $(am__v_texidevnull_$(V)) +am__v_texidevnull_ = $(am__v_texidevnull_$(AM_DEFAULT_VERBOSITY)) +am__v_texidevnull_0 = > /dev/null +am__v_texidevnull_1 = +INFO_DEPS = $(srcdir)/libffi.info +am__TEXINFO_TEX_DIR = $(srcdir) +DVIS = libffi.dvi +PDFS = libffi.pdf +PSS = libffi.ps +HTMLS = libffi.html +TEXINFOS = libffi.texi +TEXI2DVI = texi2dvi +TEXI2PDF = $(TEXI2DVI) --pdf --batch +MAKEINFOHTML = $(MAKEINFO) --html +AM_MAKEINFOHTMLFLAGS = $(AM_MAKEINFOFLAGS) +DVIPS = dvips +am__can_run_installinfo = \ + case $$AM_UPDATE_INFO_DIR in \ + n|no|NO) false;; \ + *) (install-info --version) >/dev/null 2>&1;; \ + esac +am__installdirs = "$(DESTDIR)$(infodir)" +am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; +am__vpath_adj = case $$p in \ + $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ + *) f=$$p;; \ + esac; +am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; +am__install_max = 40 +am__nobase_strip_setup = \ + srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` +am__nobase_strip = \ + for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" +am__nobase_list = $(am__nobase_strip_setup); \ + for p in $$list; do echo "$$p $$p"; done | \ + sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ + $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ + if (++n[$$2] == $(am__install_max)) \ + { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ + END { for (dir in files) print dir, files[dir] }' +am__base_list = \ + sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ + sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' +am__uninstall_files_from_dir = { \ + test -z "$$files" \ + || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \ + || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ + $(am__cd) "$$dir" && rm -f $$files; }; \ + } +am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) +am__DIST_COMMON = $(srcdir)/Makefile.in mdate-sh texinfo.tex +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +ACLOCAL = ${SHELL} /Users/kcl2/github/personal-website/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi/missing aclocal-1.15 +ALLOCA = +AMTAR = $${TAR-tar} +AM_DEFAULT_VERBOSITY = 1 +AM_LTLDFLAGS = +AM_RUNTESTFLAGS = +AR = ar +AUTOCONF = ${SHELL} /Users/kcl2/github/personal-website/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi/missing autoconf +AUTOHEADER = ${SHELL} /Users/kcl2/github/personal-website/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi/missing autoheader +AUTOMAKE = ${SHELL} /Users/kcl2/github/personal-website/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi/missing automake-1.15 +AWK = awk +CC = clang +CCAS = clang +CCASDEPMODE = depmode=none +CCASFLAGS = +CCDEPMODE = depmode=none +CFLAGS = -Wall -fexceptions +CPP = clang -E +CPPFLAGS = +CXX = g++ +CXXCPP = g++ -E +CXXDEPMODE = depmode=none +CXXFLAGS = -g -O2 +CYGPATH_W = echo +DEFS = -DHAVE_CONFIG_H +DEPDIR = .deps +DLLTOOL = false +DSYMUTIL = dsymutil +DUMPBIN = +ECHO_C = \c +ECHO_N = +ECHO_T = +EGREP = /usr/bin/grep -E +EXEEXT = +FFI_EXEC_TRAMPOLINE_TABLE = 0 +FGREP = /usr/bin/grep -F +GREP = /usr/bin/grep +HAVE_LONG_DOUBLE = 1 +HAVE_LONG_DOUBLE_VARIANT = 0 +INSTALL = /usr/bin/install -c +INSTALL_DATA = ${INSTALL} -m 644 +INSTALL_PROGRAM = ${INSTALL} +INSTALL_SCRIPT = ${INSTALL} +INSTALL_STRIP_PROGRAM = $(install_sh) -c -s +LD = ld +LDFLAGS = +LIBOBJS = +LIBS = +LIBTOOL = $(SHELL) $(top_builddir)/libtool +LIPO = lipo +LN_S = ln -s +LTLIBOBJS = +LT_SYS_LIBRARY_PATH = +MAINT = # +MAKEINFO = ${SHELL} /Users/kcl2/github/personal-website/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi/missing makeinfo +MANIFEST_TOOL = : +MKDIR_P = /Users/kcl2/github/personal-website/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi/install-sh -c -d +NM = /usr/bin/nm -B +NMEDIT = nmedit +OBJDUMP = objdump +OBJEXT = o +OPT_LDFLAGS = +OTOOL = otool +OTOOL64 = : +PACKAGE = libffi +PACKAGE_BUGREPORT = http://github.com/libffi/libffi/issues +PACKAGE_NAME = libffi +PACKAGE_STRING = libffi 3.99999 +PACKAGE_TARNAME = libffi +PACKAGE_URL = +PACKAGE_VERSION = 3.99999 +PATH_SEPARATOR = : +PRTDIAG = +RANLIB = ranlib +SECTION_LDFLAGS = +SED = /usr/bin/sed +SET_MAKE = +SHELL = /bin/sh +STRIP = strip +TARGET = X86_64 +TARGETDIR = x86 +TARGET_OBJ = src/x86/ffi64.lo src/x86/unix64.lo src/x86/ffiw64.lo src/x86/win64.lo +VERSION = 3.99999 +abs_builddir = /Users/kcl2/github/personal-website/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi-x86_64-darwin18/doc +abs_srcdir = /Users/kcl2/github/personal-website/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi/doc +abs_top_builddir = /Users/kcl2/github/personal-website/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi-x86_64-darwin18 +abs_top_srcdir = /Users/kcl2/github/personal-website/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi +ac_ct_AR = ar +ac_ct_CC = clang +ac_ct_CXX = g++ +ac_ct_DUMPBIN = +am__include = include +am__leading_dot = . +am__quote = +am__tar = $${TAR-tar} chof - "$$tardir" +am__untar = $${TAR-tar} xf - +ax_enable_builddir_sed = sed +bindir = ${exec_prefix}/bin +build = x86_64-apple-darwin18.5.0 +build_alias = +build_cpu = x86_64 +build_os = darwin18.5.0 +build_vendor = apple +builddir = . +datadir = ${datarootdir} +datarootdir = ${prefix}/share +docdir = ${datarootdir}/doc/${PACKAGE_TARNAME} +dvidir = ${docdir} +exec_prefix = ${prefix} +host = x86_64-apple-darwin18.5.0 +host_alias = +host_cpu = x86_64 +host_os = darwin18.5.0 +host_vendor = apple +htmldir = ${docdir} +includedir = ${prefix}/include +infodir = ${datarootdir}/info +install_sh = ${SHELL} /Users/kcl2/github/personal-website/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi/install-sh +libdir = ${exec_prefix}/lib +libexecdir = ${exec_prefix}/libexec +localedir = ${datarootdir}/locale +localstatedir = ${prefix}/var +mandir = ${datarootdir}/man +mkdir_p = $(MKDIR_P) +oldincludedir = /usr/include +pdfdir = ${docdir} +prefix = /usr/local +program_transform_name = s,x,x, +psdir = ${docdir} +runstatedir = ${localstatedir}/run +sbindir = ${exec_prefix}/sbin +sharedstatedir = ${prefix}/com +srcdir = /Users/kcl2/github/personal-website/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi/doc +sys_symbol_underscore = yes +sysconfdir = ${prefix}/etc +target = x86_64-apple-darwin18.5.0 +target_alias = +target_cpu = x86_64 +target_os = darwin18.5.0 +target_vendor = apple +toolexecdir = ${exec_prefix}/lib/gcc-lib/$(target_alias) +toolexeclibdir = ${exec_prefix}/lib +top_build_prefix = ../ +top_builddir = .. +top_srcdir = /Users/kcl2/github/personal-website/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi +info_TEXINFOS = libffi.texi +all: all-am + +.SUFFIXES: +.SUFFIXES: .dvi .html .info .pdf .ps .texi +$(srcdir)/Makefile.in: # $(srcdir)/Makefile.am $(am__configure_deps) + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ + && { if test -f $@; then exit 0; else break; fi; }; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu doc/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --gnu doc/Makefile +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + @case '$?' in \ + *config.status*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ + *) \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + esac; + +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh + +$(top_srcdir)/configure: # $(am__configure_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(ACLOCAL_M4): # $(am__aclocal_m4_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(am__aclocal_m4_deps): + +mostlyclean-libtool: + -rm -f *.lo + +clean-libtool: + -rm -rf .libs _libs + +.texi.info: + $(AM_V_MAKEINFO)restore=: && backupdir="$(am__leading_dot)am$$$$" && \ + am__cwd=`pwd` && $(am__cd) $(srcdir) && \ + rm -rf $$backupdir && mkdir $$backupdir && \ + if ($(MAKEINFO) --version) >/dev/null 2>&1; then \ + for f in $@ $@-[0-9] $@-[0-9][0-9] $(@:.info=).i[0-9] $(@:.info=).i[0-9][0-9]; do \ + if test -f $$f; then mv $$f $$backupdir; restore=mv; else :; fi; \ + done; \ + else :; fi && \ + cd "$$am__cwd"; \ + if $(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir) \ + -o $@ $<; \ + then \ + rc=0; \ + $(am__cd) $(srcdir); \ + else \ + rc=$$?; \ + $(am__cd) $(srcdir) && \ + $$restore $$backupdir/* `echo "./$@" | sed 's|[^/]*$$||'`; \ + fi; \ + rm -rf $$backupdir; exit $$rc + +.texi.dvi: + $(AM_V_TEXI2DVI)TEXINPUTS="$(am__TEXINFO_TEX_DIR)$(PATH_SEPARATOR)$$TEXINPUTS" \ + MAKEINFO='$(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir)' \ + $(TEXI2DVI) $(AM_V_texinfo) --build-dir=$(@:.dvi=.t2d) -o $@ $(AM_V_texidevnull) \ + $< + +.texi.pdf: + $(AM_V_TEXI2PDF)TEXINPUTS="$(am__TEXINFO_TEX_DIR)$(PATH_SEPARATOR)$$TEXINPUTS" \ + MAKEINFO='$(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir)' \ + $(TEXI2PDF) $(AM_V_texinfo) --build-dir=$(@:.pdf=.t2p) -o $@ $(AM_V_texidevnull) \ + $< + +.texi.html: + $(AM_V_MAKEINFO)rm -rf $(@:.html=.htp) + $(AM_V_at)if $(MAKEINFOHTML) $(AM_MAKEINFOHTMLFLAGS) $(MAKEINFOFLAGS) -I $(srcdir) \ + -o $(@:.html=.htp) $<; \ + then \ + rm -rf $@ && mv $(@:.html=.htp) $@; \ + else \ + rm -rf $(@:.html=.htp); exit 1; \ + fi +$(srcdir)/libffi.info: libffi.texi $(srcdir)/version.texi +libffi.dvi: libffi.texi $(srcdir)/version.texi +libffi.pdf: libffi.texi $(srcdir)/version.texi +libffi.html: libffi.texi $(srcdir)/version.texi +$(srcdir)/version.texi: # $(srcdir)/stamp-vti +$(srcdir)/stamp-vti: libffi.texi $(top_srcdir)/configure + @(dir=.; test -f ./libffi.texi || dir=$(srcdir); \ + set `$(SHELL) $(srcdir)/mdate-sh $$dir/libffi.texi`; \ + echo "@set UPDATED $$1 $$2 $$3"; \ + echo "@set UPDATED-MONTH $$2 $$3"; \ + echo "@set EDITION $(VERSION)"; \ + echo "@set VERSION $(VERSION)") > vti.tmp$$$$ && \ + (cmp -s vti.tmp$$$$ $(srcdir)/version.texi \ + || (echo "Updating $(srcdir)/version.texi" && \ + cp vti.tmp$$$$ $(srcdir)/version.texi.tmp$$$$ && \ + mv $(srcdir)/version.texi.tmp$$$$ $(srcdir)/version.texi)) && \ + rm -f vti.tmp$$$$ $(srcdir)/version.texi.$$$$ + @cp $(srcdir)/version.texi $@ + +mostlyclean-vti: + -rm -f vti.tmp* $(srcdir)/version.texi.tmp* + +maintainer-clean-vti: +# -rm -f $(srcdir)/stamp-vti $(srcdir)/version.texi +.dvi.ps: + $(AM_V_DVIPS)TEXINPUTS="$(am__TEXINFO_TEX_DIR)$(PATH_SEPARATOR)$$TEXINPUTS" \ + $(DVIPS) $(AM_V_texinfo) -o $@ $< + +uninstall-dvi-am: + @$(NORMAL_UNINSTALL) + @list='$(DVIS)'; test -n "$(dvidir)" || list=; \ + for p in $$list; do \ + $(am__strip_dir) \ + echo " rm -f '$(DESTDIR)$(dvidir)/$$f'"; \ + rm -f "$(DESTDIR)$(dvidir)/$$f"; \ + done + +uninstall-html-am: + @$(NORMAL_UNINSTALL) + @list='$(HTMLS)'; test -n "$(htmldir)" || list=; \ + for p in $$list; do \ + $(am__strip_dir) \ + echo " rm -rf '$(DESTDIR)$(htmldir)/$$f'"; \ + rm -rf "$(DESTDIR)$(htmldir)/$$f"; \ + done + +uninstall-info-am: + @$(PRE_UNINSTALL) + @if test -d '$(DESTDIR)$(infodir)' && $(am__can_run_installinfo); then \ + list='$(INFO_DEPS)'; \ + for file in $$list; do \ + relfile=`echo "$$file" | sed 's|^.*/||'`; \ + echo " install-info --info-dir='$(DESTDIR)$(infodir)' --remove '$(DESTDIR)$(infodir)/$$relfile'"; \ + if install-info --info-dir="$(DESTDIR)$(infodir)" --remove "$(DESTDIR)$(infodir)/$$relfile"; \ + then :; else test ! -f "$(DESTDIR)$(infodir)/$$relfile" || exit 1; fi; \ + done; \ + else :; fi + @$(NORMAL_UNINSTALL) + @list='$(INFO_DEPS)'; \ + for file in $$list; do \ + relfile=`echo "$$file" | sed 's|^.*/||'`; \ + relfile_i=`echo "$$relfile" | sed 's|\.info$$||;s|$$|.i|'`; \ + (if test -d "$(DESTDIR)$(infodir)" && cd "$(DESTDIR)$(infodir)"; then \ + echo " cd '$(DESTDIR)$(infodir)' && rm -f $$relfile $$relfile-[0-9] $$relfile-[0-9][0-9] $$relfile_i[0-9] $$relfile_i[0-9][0-9]"; \ + rm -f $$relfile $$relfile-[0-9] $$relfile-[0-9][0-9] $$relfile_i[0-9] $$relfile_i[0-9][0-9]; \ + else :; fi); \ + done + +uninstall-pdf-am: + @$(NORMAL_UNINSTALL) + @list='$(PDFS)'; test -n "$(pdfdir)" || list=; \ + for p in $$list; do \ + $(am__strip_dir) \ + echo " rm -f '$(DESTDIR)$(pdfdir)/$$f'"; \ + rm -f "$(DESTDIR)$(pdfdir)/$$f"; \ + done + +uninstall-ps-am: + @$(NORMAL_UNINSTALL) + @list='$(PSS)'; test -n "$(psdir)" || list=; \ + for p in $$list; do \ + $(am__strip_dir) \ + echo " rm -f '$(DESTDIR)$(psdir)/$$f'"; \ + rm -f "$(DESTDIR)$(psdir)/$$f"; \ + done + +dist-info: $(INFO_DEPS) + @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ + list='$(INFO_DEPS)'; \ + for base in $$list; do \ + case $$base in \ + $(srcdir)/*) base=`echo "$$base" | sed "s|^$$srcdirstrip/||"`;; \ + esac; \ + if test -f $$base; then d=.; else d=$(srcdir); fi; \ + base_i=`echo "$$base" | sed 's|\.info$$||;s|$$|.i|'`; \ + for file in $$d/$$base $$d/$$base-[0-9] $$d/$$base-[0-9][0-9] $$d/$$base_i[0-9] $$d/$$base_i[0-9][0-9]; do \ + if test -f $$file; then \ + relfile=`expr "$$file" : "$$d/\(.*\)"`; \ + test -f "$(distdir)/$$relfile" || \ + cp -p $$file "$(distdir)/$$relfile"; \ + else :; fi; \ + done; \ + done + +mostlyclean-aminfo: + -rm -rf libffi.t2d libffi.t2p + +clean-aminfo: + -test -z "libffi.dvi libffi.pdf libffi.ps libffi.html" \ + || rm -rf libffi.dvi libffi.pdf libffi.ps libffi.html + +maintainer-clean-aminfo: + @list='$(INFO_DEPS)'; for i in $$list; do \ + i_i=`echo "$$i" | sed 's|\.info$$||;s|$$|.i|'`; \ + echo " rm -f $$i $$i-[0-9] $$i-[0-9][0-9] $$i_i[0-9] $$i_i[0-9][0-9]"; \ + rm -f $$i $$i-[0-9] $$i-[0-9][0-9] $$i_i[0-9] $$i_i[0-9][0-9]; \ + done +tags TAGS: + +ctags CTAGS: + +cscope cscopelist: + + +distdir: $(DISTFILES) + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ + else \ + test -f "$(distdir)/$$file" \ + || cp -p $$d/$$file "$(distdir)/$$file" \ + || exit 1; \ + fi; \ + done + $(MAKE) $(AM_MAKEFLAGS) \ + top_distdir="$(top_distdir)" distdir="$(distdir)" \ + dist-info +check-am: all-am +check: check-am +all-am: Makefile $(INFO_DEPS) +installdirs: + for dir in "$(DESTDIR)$(infodir)"; do \ + test -z "$$dir" || $(MKDIR_P) "$$dir"; \ + done +install: install-am +install-exec: install-exec-am +install-data: install-data-am +uninstall: uninstall-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am + +installcheck: installcheck-am +install-strip: + if test -z '$(STRIP)'; then \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + install; \ + else \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ + fi +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) + +maintainer-clean-generic: + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." +clean: clean-am + +clean-am: clean-aminfo clean-generic clean-libtool mostlyclean-am + +distclean: distclean-am + -rm -f Makefile +distclean-am: clean-am distclean-generic + +dvi: dvi-am + +dvi-am: $(DVIS) + +html: html-am + +html-am: $(HTMLS) + +info: info-am + +info-am: $(INFO_DEPS) + +install-data-am: install-info-am + +install-dvi: install-dvi-am + +install-dvi-am: $(DVIS) + @$(NORMAL_INSTALL) + @list='$(DVIS)'; test -n "$(dvidir)" || list=; \ + if test -n "$$list"; then \ + echo " $(MKDIR_P) '$(DESTDIR)$(dvidir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(dvidir)" || exit 1; \ + fi; \ + for p in $$list; do \ + if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ + echo "$$d$$p"; \ + done | $(am__base_list) | \ + while read files; do \ + echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(dvidir)'"; \ + $(INSTALL_DATA) $$files "$(DESTDIR)$(dvidir)" || exit $$?; \ + done +install-exec-am: + +install-html: install-html-am + +install-html-am: $(HTMLS) + @$(NORMAL_INSTALL) + @list='$(HTMLS)'; list2=; test -n "$(htmldir)" || list=; \ + if test -n "$$list"; then \ + echo " $(MKDIR_P) '$(DESTDIR)$(htmldir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(htmldir)" || exit 1; \ + fi; \ + for p in $$list; do \ + if test -f "$$p" || test -d "$$p"; then d=; else d="$(srcdir)/"; fi; \ + $(am__strip_dir) \ + d2=$$d$$p; \ + if test -d "$$d2"; then \ + echo " $(MKDIR_P) '$(DESTDIR)$(htmldir)/$$f'"; \ + $(MKDIR_P) "$(DESTDIR)$(htmldir)/$$f" || exit 1; \ + echo " $(INSTALL_DATA) '$$d2'/* '$(DESTDIR)$(htmldir)/$$f'"; \ + $(INSTALL_DATA) "$$d2"/* "$(DESTDIR)$(htmldir)/$$f" || exit $$?; \ + else \ + list2="$$list2 $$d2"; \ + fi; \ + done; \ + test -z "$$list2" || { echo "$$list2" | $(am__base_list) | \ + while read files; do \ + echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(htmldir)'"; \ + $(INSTALL_DATA) $$files "$(DESTDIR)$(htmldir)" || exit $$?; \ + done; } +install-info: install-info-am + +install-info-am: $(INFO_DEPS) + @$(NORMAL_INSTALL) + @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ + list='$(INFO_DEPS)'; test -n "$(infodir)" || list=; \ + if test -n "$$list"; then \ + echo " $(MKDIR_P) '$(DESTDIR)$(infodir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(infodir)" || exit 1; \ + fi; \ + for file in $$list; do \ + case $$file in \ + $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \ + esac; \ + if test -f $$file; then d=.; else d=$(srcdir); fi; \ + file_i=`echo "$$file" | sed 's|\.info$$||;s|$$|.i|'`; \ + for ifile in $$d/$$file $$d/$$file-[0-9] $$d/$$file-[0-9][0-9] \ + $$d/$$file_i[0-9] $$d/$$file_i[0-9][0-9] ; do \ + if test -f $$ifile; then \ + echo "$$ifile"; \ + else : ; fi; \ + done; \ + done | $(am__base_list) | \ + while read files; do \ + echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(infodir)'"; \ + $(INSTALL_DATA) $$files "$(DESTDIR)$(infodir)" || exit $$?; done + @$(POST_INSTALL) + @if $(am__can_run_installinfo); then \ + list='$(INFO_DEPS)'; test -n "$(infodir)" || list=; \ + for file in $$list; do \ + relfile=`echo "$$file" | sed 's|^.*/||'`; \ + echo " install-info --info-dir='$(DESTDIR)$(infodir)' '$(DESTDIR)$(infodir)/$$relfile'";\ + install-info --info-dir="$(DESTDIR)$(infodir)" "$(DESTDIR)$(infodir)/$$relfile" || :;\ + done; \ + else : ; fi +install-man: + +install-pdf: install-pdf-am + +install-pdf-am: $(PDFS) + @$(NORMAL_INSTALL) + @list='$(PDFS)'; test -n "$(pdfdir)" || list=; \ + if test -n "$$list"; then \ + echo " $(MKDIR_P) '$(DESTDIR)$(pdfdir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(pdfdir)" || exit 1; \ + fi; \ + for p in $$list; do \ + if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ + echo "$$d$$p"; \ + done | $(am__base_list) | \ + while read files; do \ + echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(pdfdir)'"; \ + $(INSTALL_DATA) $$files "$(DESTDIR)$(pdfdir)" || exit $$?; done +install-ps: install-ps-am + +install-ps-am: $(PSS) + @$(NORMAL_INSTALL) + @list='$(PSS)'; test -n "$(psdir)" || list=; \ + if test -n "$$list"; then \ + echo " $(MKDIR_P) '$(DESTDIR)$(psdir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(psdir)" || exit 1; \ + fi; \ + for p in $$list; do \ + if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ + echo "$$d$$p"; \ + done | $(am__base_list) | \ + while read files; do \ + echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(psdir)'"; \ + $(INSTALL_DATA) $$files "$(DESTDIR)$(psdir)" || exit $$?; done +installcheck-am: + +maintainer-clean: maintainer-clean-am + -rm -f Makefile +maintainer-clean-am: distclean-am maintainer-clean-aminfo \ + maintainer-clean-generic maintainer-clean-vti + +mostlyclean: mostlyclean-am + +mostlyclean-am: mostlyclean-aminfo mostlyclean-generic \ + mostlyclean-libtool mostlyclean-vti + +pdf: pdf-am + +pdf-am: $(PDFS) + +ps: ps-am + +ps-am: $(PSS) + +uninstall-am: uninstall-dvi-am uninstall-html-am uninstall-info-am \ + uninstall-pdf-am uninstall-ps-am + +.MAKE: install-am install-strip + +.PHONY: all all-am check check-am clean clean-aminfo clean-generic \ + clean-libtool cscopelist-am ctags-am dist-info distclean \ + distclean-generic distclean-libtool distdir dvi dvi-am html \ + html-am info info-am install install-am install-data \ + install-data-am install-dvi install-dvi-am install-exec \ + install-exec-am install-html install-html-am install-info \ + install-info-am install-man install-pdf install-pdf-am \ + install-ps install-ps-am install-strip installcheck \ + installcheck-am installdirs maintainer-clean \ + maintainer-clean-aminfo maintainer-clean-generic \ + maintainer-clean-vti mostlyclean mostlyclean-aminfo \ + mostlyclean-generic mostlyclean-libtool mostlyclean-vti pdf \ + pdf-am ps ps-am tags-am uninstall uninstall-am \ + uninstall-dvi-am uninstall-html-am uninstall-info-am \ + uninstall-pdf-am uninstall-ps-am + +.PRECIOUS: Makefile + + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff --git a/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi-x86_64-darwin18/src/.libs/closures.o b/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi-x86_64-darwin18/src/.libs/closures.o new file mode 100644 index 0000000000000000000000000000000000000000..e3a68711ee80e7b5a055ab378e028f2c0634153a GIT binary patch literal 33456 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 literal 0 HcmV?d00001 diff --git a/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi-x86_64-darwin18/src/.libs/java_raw_api.o b/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi-x86_64-darwin18/src/.libs/java_raw_api.o new file mode 100644 index 0000000000000000000000000000000000000000..5f7a73278fb3cf87d240a2614a06ff5e6fde6343 GIT binary patch literal 3468 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 VnVQLEIy69!r#e;A$(l^X+5f`%i_8E3 literal 0 HcmV?d00001 diff --git a/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi-x86_64-darwin18/src/.libs/raw_api.o b/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi-x86_64-darwin18/src/.libs/raw_api.o new file mode 100644 index 0000000000000000000000000000000000000000..a846c0bcc02ba2cc308ccd58f2d4c6ced52c4484 GIT binary patch literal 3112 zcma)8UuauZ7(Z#Vwd=oIrHBKyeb~#WkvSi%ikfOKos=ljm@ z`_6ZM=bU@*y{*3v1wlIs=^=ZcRz@(jqQ+Eha+6SAYC@!Am(!}R z>@()MGp=3j{YC|#Q9eKP>Ji4;$l+(xq^eDb=;&}V5>1Qok%^&^3qthwRmVsdbe@8C z=1>gP!kbiG=+@~Wsf36Pig+qA98+E)cGj0Uto$eRI=^mo*G41Fj14M;`acQvBt*j7 zFsW|Gq1z$Ta3O^(f^f62Tc9}-6`-NmI}mD=gM>;TPW95zd-N9O_8;7y+T=@SnWDIZ zzVl%td&>!+0Kpt2%~X(@JD~!%vIq_pO4llt3U|!%z@pKKo!hR@9!F%j$el3iI}L1j zb;(>;dDf9(^Oat|Vck(vuh!P5%RzWn&r+tcoKTV5z7p*Y=5r$qW9Hz9=T!uf$P7Ao z_e!(HdY&!R?^tn3mkTCrlZsx|1z~pNQWO+R-JoD#G48J4+6c-$dNdAx#hIvGQT87@ zXO)`3d)^K$8=t;L<8y~@NLVP(qaCx{w@~?=SSQ|YG}<}P40e9u)=yx19NoH7Sf!QR z89!?N?s97Z2m<>`FSrQfrgxHd7s8EOUP=DmW|ukMIhI`nk9wu}rUoGQXh)TE2ab-` zj(R13n*d8$Y!Mw(I*(xFBoy}War)UyML;MNo+I?LO1J<&;{s%TJX^xCSi`ZPvqNHL z4m=gORq|q#OGh7IM(cKPVDT(^laMbVw;*efderlgmSfQ8A#XtB{joMqa7R8J=#<*# zCQcKs1MO?LfHF|1S?+U!{ysay=lpjJs^2OAvc`{RxxEZb9!~?TbR5`lUawF(h=KxE zTXk;FgFDGz${91{;P%GAqKq<{q|i3|?zJ;?2+D{9~4 zbFCDJx^vvV3qVdLwapc4YK0jy^vG1(f>65`%cf_Q?Dsh4isH{LAbwTz6MPsyQ)RVg zD`R*tL$#T>G?EZZxXlnbgQ#MgsXW!pol`v(^d3%CwZ5($_aFSwvsrV44ItaxJY{Ee zk+-`B7KtafeWALzemmQ|Hn)`CJFYz)>aDnEyr5s?pYIbt?NI;WR&h0!_XA>E;PmUL*o-A@FFxg z4g85D{)pI(bZ5pFSFquzUj16g@Hrd%-Hk~7#T0%m*?A$J!iFkZSq#_d{ zJt~svR3w#(Tv5)dMI!(xClDiJiAXvoBB_gGZgez~NGMD7gcwUlqL)N;@REo}hA<|? yaBMi5yh1KFZfs~WrmSQtmXw7=6Qg6}DR^shTpW+2E_ee)Vl-MaqQj+^vHt-h{#+FR literal 0 HcmV?d00001 diff --git a/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi-x86_64-darwin18/src/.libs/types.o b/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi-x86_64-darwin18/src/.libs/types.o new file mode 100644 index 0000000000000000000000000000000000000000..456207391dfc1942695ec0371609448cb36f40a3 GIT binary patch literal 1736 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 Jr)lt+{{_;74ZQ#W literal 0 HcmV?d00001 diff --git a/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi-x86_64-darwin18/src/x86/.libs/ffiw64.o b/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi-x86_64-darwin18/src/x86/.libs/ffiw64.o new file mode 100644 index 0000000000000000000000000000000000000000..73a07092b826866a95945954cdff03bbbd22c5da GIT binary patch literal 4132 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 Cr9OlJ literal 0 HcmV?d00001 diff --git a/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi/Makefile.in b/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi/Makefile.in new file mode 100644 index 0000000000..d532f013ce --- /dev/null +++ b/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi/Makefile.in @@ -0,0 +1,1809 @@ +# Makefile.in generated by automake 1.15 from Makefile.am. +# @configure_input@ + +# Copyright (C) 1994-2014 Free Software Foundation, Inc. + +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. + +@SET_MAKE@ + + + +VPATH = @srcdir@ +am__is_gnu_make = { \ + if test -z '$(MAKELEVEL)'; then \ + false; \ + elif test -n '$(MAKE_HOST)'; then \ + true; \ + elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ + true; \ + else \ + false; \ + fi; \ +} +am__make_running_with_option = \ + case $${target_option-} in \ + ?) ;; \ + *) echo "am__make_running_with_option: internal error: invalid" \ + "target option '$${target_option-}' specified" >&2; \ + exit 1;; \ + esac; \ + has_opt=no; \ + sane_makeflags=$$MAKEFLAGS; \ + if $(am__is_gnu_make); then \ + sane_makeflags=$$MFLAGS; \ + else \ + case $$MAKEFLAGS in \ + *\\[\ \ ]*) \ + bs=\\; \ + sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ + | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \ + esac; \ + fi; \ + skip_next=no; \ + strip_trailopt () \ + { \ + flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ + }; \ + for flg in $$sane_makeflags; do \ + test $$skip_next = yes && { skip_next=no; continue; }; \ + case $$flg in \ + *=*|--*) continue;; \ + -*I) strip_trailopt 'I'; skip_next=yes;; \ + -*I?*) strip_trailopt 'I';; \ + -*O) strip_trailopt 'O'; skip_next=yes;; \ + -*O?*) strip_trailopt 'O';; \ + -*l) strip_trailopt 'l'; skip_next=yes;; \ + -*l?*) strip_trailopt 'l';; \ + -[dEDm]) skip_next=yes;; \ + -[JT]) skip_next=yes;; \ + esac; \ + case $$flg in \ + *$$target_option*) has_opt=yes; break;; \ + esac; \ + done; \ + test $$has_opt = yes +am__make_dryrun = (target_option=n; $(am__make_running_with_option)) +am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) +pkgdatadir = $(datadir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +install_sh_DATA = $(install_sh) -c -m 644 +install_sh_PROGRAM = $(install_sh) -c +install_sh_SCRIPT = $(install_sh) -c +INSTALL_HEADER = $(INSTALL_DATA) +transform = $(program_transform_name) +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_triplet = @build@ +host_triplet = @host@ +target_triplet = @target@ +@BUILD_DOCS_TRUE@am__append_1 = doc +@FFI_DEBUG_TRUE@am__append_2 = src/debug.c +# Build debug. Define FFI_DEBUG on the commandline so that, when building with +# MSVC, it can link against the debug CRT. +@FFI_DEBUG_TRUE@am__append_3 = -DFFI_DEBUG +subdir = . +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/m4/asmcfi.m4 \ + $(top_srcdir)/m4/ax_append_flag.m4 \ + $(top_srcdir)/m4/ax_cc_maxopt.m4 \ + $(top_srcdir)/m4/ax_cflags_warn_all.m4 \ + $(top_srcdir)/m4/ax_check_compile_flag.m4 \ + $(top_srcdir)/m4/ax_compiler_vendor.m4 \ + $(top_srcdir)/m4/ax_configure_args.m4 \ + $(top_srcdir)/m4/ax_enable_builddir.m4 \ + $(top_srcdir)/m4/ax_gcc_archflag.m4 \ + $(top_srcdir)/m4/ax_gcc_x86_cpuid.m4 \ + $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ + $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ + $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/acinclude.m4 \ + $(top_srcdir)/configure.ac +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) +DIST_COMMON = $(srcdir)/Makefile.am $(top_srcdir)/configure \ + $(am__configure_deps) $(noinst_HEADERS) $(am__DIST_COMMON) +am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \ + configure.lineno config.status.lineno +mkinstalldirs = $(install_sh) -d +CONFIG_HEADER = fficonfig.h +CONFIG_CLEAN_FILES = libffi.pc +CONFIG_CLEAN_VPATH_FILES = +am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; +am__vpath_adj = case $$p in \ + $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ + *) f=$$p;; \ + esac; +am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; +am__install_max = 40 +am__nobase_strip_setup = \ + srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` +am__nobase_strip = \ + for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" +am__nobase_list = $(am__nobase_strip_setup); \ + for p in $$list; do echo "$$p $$p"; done | \ + sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ + $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ + if (++n[$$2] == $(am__install_max)) \ + { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ + END { for (dir in files) print dir, files[dir] }' +am__base_list = \ + sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ + sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' +am__uninstall_files_from_dir = { \ + test -z "$$files" \ + || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \ + || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ + $(am__cd) "$$dir" && rm -f $$files; }; \ + } +am__installdirs = "$(DESTDIR)$(toolexeclibdir)" \ + "$(DESTDIR)$(pkgconfigdir)" +LTLIBRARIES = $(noinst_LTLIBRARIES) $(toolexeclib_LTLIBRARIES) +am__DEPENDENCIES_1 = +am__libffi_la_SOURCES_DIST = src/prep_cif.c src/types.c src/raw_api.c \ + src/java_raw_api.c src/closures.c src/debug.c +am__dirstamp = $(am__leading_dot)dirstamp +@FFI_DEBUG_TRUE@am__objects_1 = src/debug.lo +am_libffi_la_OBJECTS = src/prep_cif.lo src/types.lo src/raw_api.lo \ + src/java_raw_api.lo src/closures.lo $(am__objects_1) +libffi_la_OBJECTS = $(am_libffi_la_OBJECTS) +AM_V_lt = $(am__v_lt_@AM_V@) +am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@) +am__v_lt_0 = --silent +am__v_lt_1 = +libffi_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ + $(libffi_la_LDFLAGS) $(LDFLAGS) -o $@ +am__DEPENDENCIES_2 = $(am__DEPENDENCIES_1) +am__libffi_convenience_la_SOURCES_DIST = src/prep_cif.c src/types.c \ + src/raw_api.c src/java_raw_api.c src/closures.c src/debug.c +am__objects_2 = src/prep_cif.lo src/types.lo src/raw_api.lo \ + src/java_raw_api.lo src/closures.lo $(am__objects_1) +am_libffi_convenience_la_OBJECTS = $(am__objects_2) +nodist_libffi_convenience_la_OBJECTS = +libffi_convenience_la_OBJECTS = $(am_libffi_convenience_la_OBJECTS) \ + $(nodist_libffi_convenience_la_OBJECTS) +AM_V_P = $(am__v_P_@AM_V@) +am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) +am__v_P_0 = false +am__v_P_1 = : +AM_V_GEN = $(am__v_GEN_@AM_V@) +am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) +am__v_GEN_0 = @echo " GEN " $@; +am__v_GEN_1 = +AM_V_at = $(am__v_at_@AM_V@) +am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) +am__v_at_0 = @ +am__v_at_1 = +DEFAULT_INCLUDES = -I.@am__isrc@ +depcomp = $(SHELL) $(top_srcdir)/depcomp +am__depfiles_maybe = depfiles +am__mv = mv -f +CPPASCOMPILE = $(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ + $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CCASFLAGS) $(CCASFLAGS) +LTCPPASCOMPILE = $(LIBTOOL) $(AM_V_lt) $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=compile $(CCAS) $(DEFS) \ + $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ + $(AM_CCASFLAGS) $(CCASFLAGS) +AM_V_CPPAS = $(am__v_CPPAS_@AM_V@) +am__v_CPPAS_ = $(am__v_CPPAS_@AM_DEFAULT_V@) +am__v_CPPAS_0 = @echo " CPPAS " $@; +am__v_CPPAS_1 = +COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ + $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) +LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \ + $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ + $(AM_CFLAGS) $(CFLAGS) +AM_V_CC = $(am__v_CC_@AM_V@) +am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@) +am__v_CC_0 = @echo " CC " $@; +am__v_CC_1 = +CCLD = $(CC) +LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ + $(AM_LDFLAGS) $(LDFLAGS) -o $@ +AM_V_CCLD = $(am__v_CCLD_@AM_V@) +am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@) +am__v_CCLD_0 = @echo " CCLD " $@; +am__v_CCLD_1 = +SOURCES = $(libffi_la_SOURCES) $(EXTRA_libffi_la_SOURCES) \ + $(libffi_convenience_la_SOURCES) \ + $(EXTRA_libffi_convenience_la_SOURCES) \ + $(nodist_libffi_convenience_la_SOURCES) +DIST_SOURCES = $(am__libffi_la_SOURCES_DIST) \ + $(EXTRA_libffi_la_SOURCES) \ + $(am__libffi_convenience_la_SOURCES_DIST) \ + $(EXTRA_libffi_convenience_la_SOURCES) +RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \ + ctags-recursive dvi-recursive html-recursive info-recursive \ + install-data-recursive install-dvi-recursive \ + install-exec-recursive install-html-recursive \ + install-info-recursive install-pdf-recursive \ + install-ps-recursive install-recursive installcheck-recursive \ + installdirs-recursive pdf-recursive ps-recursive \ + tags-recursive uninstall-recursive +am__can_run_installinfo = \ + case $$AM_UPDATE_INFO_DIR in \ + n|no|NO) false;; \ + *) (install-info --version) >/dev/null 2>&1;; \ + esac +DATA = $(pkgconfig_DATA) +HEADERS = $(noinst_HEADERS) +RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \ + distclean-recursive maintainer-clean-recursive +am__recursive_targets = \ + $(RECURSIVE_TARGETS) \ + $(RECURSIVE_CLEAN_TARGETS) \ + $(am__extra_recursive_targets) +AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ + cscope distdir dist dist-all distcheck +am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) \ + $(LISP)fficonfig.h.in +# Read a list of newline-separated strings from the standard input, +# and print each of them once, without duplicates. Input order is +# *not* preserved. +am__uniquify_input = $(AWK) '\ + BEGIN { nonempty = 0; } \ + { items[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in items) print i; }; } \ +' +# Make sure the list of sources is unique. This is necessary because, +# e.g., the same source file might be shared among _SOURCES variables +# for different programs/libraries. +am__define_uniq_tagged_files = \ + list='$(am__tagged_files)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | $(am__uniquify_input)` +ETAGS = etags +CTAGS = ctags +CSCOPE = cscope +DIST_SUBDIRS = include testsuite man doc +am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/fficonfig.h.in \ + $(srcdir)/libffi.pc.in README compile config.guess config.sub \ + depcomp install-sh ltmain.sh missing +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +distdir = $(PACKAGE)-$(VERSION) +top_distdir = $(distdir) +am__remove_distdir = \ + if test -d "$(distdir)"; then \ + find "$(distdir)" -type d ! -perm -200 -exec chmod u+w {} ';' \ + && rm -rf "$(distdir)" \ + || { sleep 5 && rm -rf "$(distdir)"; }; \ + else :; fi +am__post_remove_distdir = $(am__remove_distdir) +am__relativize = \ + dir0=`pwd`; \ + sed_first='s,^\([^/]*\)/.*$$,\1,'; \ + sed_rest='s,^[^/]*/*,,'; \ + sed_last='s,^.*/\([^/]*\)$$,\1,'; \ + sed_butlast='s,/*[^/]*$$,,'; \ + while test -n "$$dir1"; do \ + first=`echo "$$dir1" | sed -e "$$sed_first"`; \ + if test "$$first" != "."; then \ + if test "$$first" = ".."; then \ + dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \ + dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \ + else \ + first2=`echo "$$dir2" | sed -e "$$sed_first"`; \ + if test "$$first2" = "$$first"; then \ + dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \ + else \ + dir2="../$$dir2"; \ + fi; \ + dir0="$$dir0"/"$$first"; \ + fi; \ + fi; \ + dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \ + done; \ + reldir="$$dir2" +DIST_ARCHIVES = $(distdir).tar.gz +GZIP_ENV = --best +DIST_TARGETS = dist-gzip +distuninstallcheck_listfiles = find . -type f -print +am__distuninstallcheck_listfiles = $(distuninstallcheck_listfiles) \ + | sed 's|^\./|$(prefix)/|' | grep -v '$(infodir)/dir$$' +distcleancheck_listfiles = find . -type f -print +ACLOCAL = @ACLOCAL@ +ALLOCA = @ALLOCA@ +AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ +AM_LTLDFLAGS = @AM_LTLDFLAGS@ +AM_RUNTESTFLAGS = @AM_RUNTESTFLAGS@ +AR = @AR@ +AUTOCONF = @AUTOCONF@ +AUTOHEADER = @AUTOHEADER@ +AUTOMAKE = @AUTOMAKE@ +AWK = @AWK@ +CC = @CC@ +CCAS = @CCAS@ +CCASDEPMODE = @CCASDEPMODE@ +CCASFLAGS = @CCASFLAGS@ +CCDEPMODE = @CCDEPMODE@ +CFLAGS = @CFLAGS@ +CPP = @CPP@ +CPPFLAGS = @CPPFLAGS@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +CXXDEPMODE = @CXXDEPMODE@ +CXXFLAGS = @CXXFLAGS@ +CYGPATH_W = @CYGPATH_W@ +DEFS = @DEFS@ +DEPDIR = @DEPDIR@ +DLLTOOL = @DLLTOOL@ +DSYMUTIL = @DSYMUTIL@ +DUMPBIN = @DUMPBIN@ +ECHO_C = @ECHO_C@ +ECHO_N = @ECHO_N@ +ECHO_T = @ECHO_T@ +EGREP = @EGREP@ +EXEEXT = @EXEEXT@ +FFI_EXEC_TRAMPOLINE_TABLE = @FFI_EXEC_TRAMPOLINE_TABLE@ +FGREP = @FGREP@ +GREP = @GREP@ +HAVE_LONG_DOUBLE = @HAVE_LONG_DOUBLE@ +HAVE_LONG_DOUBLE_VARIANT = @HAVE_LONG_DOUBLE_VARIANT@ +INSTALL = @INSTALL@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +LD = @LD@ +LDFLAGS = @LDFLAGS@ +LIBOBJS = @LIBOBJS@ +LIBS = @LIBS@ +LIBTOOL = @LIBTOOL@ +LIPO = @LIPO@ +LN_S = @LN_S@ +LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MANIFEST_TOOL = @MANIFEST_TOOL@ +MKDIR_P = @MKDIR_P@ +NM = @NM@ +NMEDIT = @NMEDIT@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +OPT_LDFLAGS = @OPT_LDFLAGS@ +OTOOL = @OTOOL@ +OTOOL64 = @OTOOL64@ +PACKAGE = @PACKAGE@ +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ +PACKAGE_NAME = @PACKAGE_NAME@ +PACKAGE_STRING = @PACKAGE_STRING@ +PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_URL = @PACKAGE_URL@ +PACKAGE_VERSION = @PACKAGE_VERSION@ +PATH_SEPARATOR = @PATH_SEPARATOR@ +PRTDIAG = @PRTDIAG@ +RANLIB = @RANLIB@ +SECTION_LDFLAGS = @SECTION_LDFLAGS@ +SED = @SED@ +SET_MAKE = @SET_MAKE@ +SHELL = @SHELL@ +STRIP = @STRIP@ +TARGET = @TARGET@ +TARGETDIR = @TARGETDIR@ +TARGET_OBJ = @TARGET_OBJ@ +VERSION = @VERSION@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ +ac_ct_AR = @ac_ct_AR@ +ac_ct_CC = @ac_ct_CC@ +ac_ct_CXX = @ac_ct_CXX@ +ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ +am__include = @am__include@ +am__leading_dot = @am__leading_dot@ +am__quote = @am__quote@ +am__tar = @am__tar@ +am__untar = @am__untar@ +ax_enable_builddir_sed = @ax_enable_builddir_sed@ +bindir = @bindir@ +build = @build@ +build_alias = @build_alias@ +build_cpu = @build_cpu@ +build_os = @build_os@ +build_vendor = @build_vendor@ +builddir = @builddir@ +datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ +exec_prefix = @exec_prefix@ +host = @host@ +host_alias = @host_alias@ +host_cpu = @host_cpu@ +host_os = @host_os@ +host_vendor = @host_vendor@ +htmldir = @htmldir@ +includedir = @includedir@ +infodir = @infodir@ +install_sh = @install_sh@ +libdir = @libdir@ +libexecdir = @libexecdir@ +localedir = @localedir@ +localstatedir = @localstatedir@ +mandir = @mandir@ +mkdir_p = @mkdir_p@ +oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ +prefix = @prefix@ +program_transform_name = @program_transform_name@ +psdir = @psdir@ +runstatedir = @runstatedir@ +sbindir = @sbindir@ +sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ +sys_symbol_underscore = @sys_symbol_underscore@ +sysconfdir = @sysconfdir@ +target = @target@ +target_alias = @target_alias@ +target_cpu = @target_cpu@ +target_os = @target_os@ +target_vendor = @target_vendor@ +toolexecdir = @toolexecdir@ +toolexeclibdir = @toolexeclibdir@ +top_build_prefix = @top_build_prefix@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ +AUTOMAKE_OPTIONS = foreign subdir-objects +ACLOCAL_AMFLAGS = -I m4 +SUBDIRS = include testsuite man $(am__append_1) +EXTRA_DIST = LICENSE ChangeLog.v1 ChangeLog.libgcj \ + ChangeLog.libffi ChangeLog.libffi-3.1 \ + m4/libtool.m4 m4/lt~obsolete.m4 \ + m4/ltoptions.m4 m4/ltsugar.m4 m4/ltversion.m4 \ + m4/ltversion.m4 src/debug.c msvcc.sh \ + generate-darwin-source-and-headers.py \ + libffi.xcodeproj/project.pbxproj \ + libtool-ldflags libtool-version configure.host + + +# local.exp is generated by configure +DISTCLEANFILES = local.exp + +# Work around what appears to be a GNU make bug handling MAKEFLAGS +# values defined in terms of make variables, as is the case for CC and +# friends when we are called from the top level Makefile. +AM_MAKEFLAGS = \ + 'AR_FLAGS=$(AR_FLAGS)' \ + 'CC_FOR_BUILD=$(CC_FOR_BUILD)' \ + 'CFLAGS=$(CFLAGS)' \ + 'CXXFLAGS=$(CXXFLAGS)' \ + 'CFLAGS_FOR_BUILD=$(CFLAGS_FOR_BUILD)' \ + 'CFLAGS_FOR_TARGET=$(CFLAGS_FOR_TARGET)' \ + 'INSTALL=$(INSTALL)' \ + 'INSTALL_DATA=$(INSTALL_DATA)' \ + 'INSTALL_PROGRAM=$(INSTALL_PROGRAM)' \ + 'INSTALL_SCRIPT=$(INSTALL_SCRIPT)' \ + 'JC1FLAGS=$(JC1FLAGS)' \ + 'LDFLAGS=$(LDFLAGS)' \ + 'LIBCFLAGS=$(LIBCFLAGS)' \ + 'LIBCFLAGS_FOR_TARGET=$(LIBCFLAGS_FOR_TARGET)' \ + 'MAKE=$(MAKE)' \ + 'MAKEINFO=$(MAKEINFO) $(MAKEINFOFLAGS)' \ + 'PICFLAG=$(PICFLAG)' \ + 'PICFLAG_FOR_TARGET=$(PICFLAG_FOR_TARGET)' \ + 'RUNTESTFLAGS=$(RUNTESTFLAGS)' \ + 'SHELL=$(SHELL)' \ + 'exec_prefix=$(exec_prefix)' \ + 'infodir=$(infodir)' \ + 'libdir=$(libdir)' \ + 'mandir=$(mandir)' \ + 'prefix=$(prefix)' \ + 'AR=$(AR)' \ + 'AS=$(AS)' \ + 'CC=$(CC)' \ + 'CXX=$(CXX)' \ + 'LD=$(LD)' \ + 'NM=$(NM)' \ + 'RANLIB=$(RANLIB)' \ + 'DESTDIR=$(DESTDIR)' + + +# Subdir rules rely on $(FLAGS_TO_PASS) +FLAGS_TO_PASS = $(AM_MAKEFLAGS) +MAKEOVERRIDES = +pkgconfigdir = $(libdir)/pkgconfig +pkgconfig_DATA = libffi.pc +toolexeclib_LTLIBRARIES = libffi.la +noinst_LTLIBRARIES = libffi_convenience.la +libffi_la_SOURCES = src/prep_cif.c src/types.c src/raw_api.c \ + src/java_raw_api.c src/closures.c $(am__append_2) +noinst_HEADERS = \ + src/aarch64/ffitarget.h src/aarch64/internal.h \ + src/alpha/ffitarget.h src/alpha/internal.h \ + src/arc/ffitarget.h \ + src/arm/ffitarget.h src/arm/internal.h \ + src/avr32/ffitarget.h \ + src/bfin/ffitarget.h \ + src/cris/ffitarget.h \ + src/frv/ffitarget.h \ + src/ia64/ffitarget.h src/ia64/ia64_flags.h \ + src/m32r/ffitarget.h \ + src/m68k/ffitarget.h \ + src/m88k/ffitarget.h \ + src/metag/ffitarget.h \ + src/microblaze/ffitarget.h \ + src/mips/ffitarget.h \ + src/moxie/ffitarget.h \ + src/nios2/ffitarget.h \ + src/or1k/ffitarget.h \ + src/pa/ffitarget.h \ + src/powerpc/ffitarget.h src/powerpc/asm.h src/powerpc/ffi_powerpc.h \ + src/s390/ffitarget.h src/s390/internal.h \ + src/sh/ffitarget.h \ + src/sh64/ffitarget.h \ + src/sparc/ffitarget.h src/sparc/internal.h \ + src/tile/ffitarget.h \ + src/vax/ffitarget.h \ + src/x86/ffitarget.h src/x86/internal.h src/x86/internal64.h src/x86/asmnames.h \ + src/xtensa/ffitarget.h \ + src/dlmalloc.c + +EXTRA_libffi_la_SOURCES = \ + src/aarch64/ffi.c src/aarch64/sysv.S \ + src/alpha/ffi.c src/alpha/osf.S \ + src/arc/ffi.c src/arc/arcompact.S \ + src/arm/ffi.c src/arm/sysv.S \ + src/avr32/ffi.c src/avr32/sysv.S \ + src/bfin/ffi.c src/bfin/sysv.S \ + src/cris/ffi.c src/cris/sysv.S \ + src/frv/ffi.c src/frv/eabi.S \ + src/ia64/ffi.c src/ia64/unix.S \ + src/m32r/ffi.c src/m32r/sysv.S \ + src/m68k/ffi.c src/m68k/sysv.S \ + src/m88k/ffi.c src/m88k/obsd.S \ + src/metag/ffi.c src/metag/sysv.S \ + src/microblaze/ffi.c src/microblaze/sysv.S \ + src/mips/ffi.c src/mips/o32.S src/mips/n32.S \ + src/moxie/ffi.c src/moxie/eabi.S \ + src/nios2/ffi.c src/nios2/sysv.S \ + src/or1k/ffi.c src/or1k/sysv.S \ + src/pa/ffi.c src/pa/linux.S src/pa/hpux32.S \ + src/powerpc/ffi.c src/powerpc/ffi_sysv.c src/powerpc/ffi_linux64.c \ + src/powerpc/sysv.S src/powerpc/linux64.S \ + src/powerpc/linux64_closure.S src/powerpc/ppc_closure.S \ + src/powerpc/aix.S src/powerpc/darwin.S src/powerpc/aix_closure.S \ + src/powerpc/darwin_closure.S src/powerpc/ffi_darwin.c \ + src/s390/ffi.c src/s390/sysv.S \ + src/sh/ffi.c src/sh/sysv.S \ + src/sh64/ffi.c src/sh64/sysv.S \ + src/sparc/ffi.c src/sparc/ffi64.c src/sparc/v8.S src/sparc/v9.S \ + src/tile/ffi.c src/tile/tile.S \ + src/vax/ffi.c src/vax/elfbsd.S \ + src/x86/ffi.c src/x86/sysv.S \ + src/x86/ffiw64.c src/x86/win64.S \ + src/x86/ffi64.c src/x86/unix64.S \ + src/xtensa/ffi.c src/xtensa/sysv.S + +libffi_la_LIBADD = $(TARGET_OBJ) +libffi_convenience_la_SOURCES = $(libffi_la_SOURCES) +EXTRA_libffi_convenience_la_SOURCES = $(EXTRA_libffi_la_SOURCES) +libffi_convenience_la_LIBADD = $(libffi_la_LIBADD) +libffi_convenience_la_DEPENDENCIES = $(libffi_la_DEPENDENCIES) +nodist_libffi_convenience_la_SOURCES = $(nodist_libffi_la_SOURCES) +LTLDFLAGS = $(shell $(SHELL) $(top_srcdir)/libtool-ldflags $(LDFLAGS)) +AM_CFLAGS = $(am__append_3) +@LIBFFI_BUILD_VERSIONED_SHLIB_FALSE@libffi_version_script = +@LIBFFI_BUILD_VERSIONED_SHLIB_GNU_TRUE@@LIBFFI_BUILD_VERSIONED_SHLIB_TRUE@libffi_version_script = -Wl,--version-script,libffi.map +@LIBFFI_BUILD_VERSIONED_SHLIB_SUN_TRUE@@LIBFFI_BUILD_VERSIONED_SHLIB_TRUE@libffi_version_script = -Wl,-M,libffi.map-sun +@LIBFFI_BUILD_VERSIONED_SHLIB_FALSE@libffi_version_dep = +@LIBFFI_BUILD_VERSIONED_SHLIB_GNU_TRUE@@LIBFFI_BUILD_VERSIONED_SHLIB_TRUE@libffi_version_dep = libffi.map +@LIBFFI_BUILD_VERSIONED_SHLIB_SUN_TRUE@@LIBFFI_BUILD_VERSIONED_SHLIB_TRUE@libffi_version_dep = libffi.map-sun +libffi_version_info = -version-info `grep -v '^\#' $(srcdir)/libtool-version` +libffi_la_LDFLAGS = -no-undefined $(libffi_version_info) $(libffi_version_script) $(LTLDFLAGS) $(AM_LTLDFLAGS) +libffi_la_DEPENDENCIES = $(libffi_la_LIBADD) $(libffi_version_dep) +AM_CPPFLAGS = -I. -I$(top_srcdir)/include -Iinclude -I$(top_srcdir)/src +AM_CCASFLAGS = $(AM_CPPFLAGS) +all: fficonfig.h + $(MAKE) $(AM_MAKEFLAGS) all-recursive + +.SUFFIXES: +.SUFFIXES: .S .c .lo .o .obj +am--refresh: Makefile + @: +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + echo ' cd $(srcdir) && $(AUTOMAKE) --foreign'; \ + $(am__cd) $(srcdir) && $(AUTOMAKE) --foreign \ + && exit 0; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --foreign Makefile +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + @case '$?' in \ + *config.status*) \ + echo ' $(SHELL) ./config.status'; \ + $(SHELL) ./config.status;; \ + *) \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe);; \ + esac; + +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) + $(SHELL) ./config.status --recheck + +$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) + $(am__cd) $(srcdir) && $(AUTOCONF) +$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) + $(am__cd) $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS) +$(am__aclocal_m4_deps): + +fficonfig.h: stamp-h1 + @test -f $@ || rm -f stamp-h1 + @test -f $@ || $(MAKE) $(AM_MAKEFLAGS) stamp-h1 + +stamp-h1: $(srcdir)/fficonfig.h.in $(top_builddir)/config.status + @rm -f stamp-h1 + cd $(top_builddir) && $(SHELL) ./config.status fficonfig.h +$(srcdir)/fficonfig.h.in: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) + ($(am__cd) $(top_srcdir) && $(AUTOHEADER)) + rm -f stamp-h1 + touch $@ + +distclean-hdr: + -rm -f fficonfig.h stamp-h1 +libffi.pc: $(top_builddir)/config.status $(srcdir)/libffi.pc.in + cd $(top_builddir) && $(SHELL) ./config.status $@ + +clean-noinstLTLIBRARIES: + -test -z "$(noinst_LTLIBRARIES)" || rm -f $(noinst_LTLIBRARIES) + @list='$(noinst_LTLIBRARIES)'; \ + locs=`for p in $$list; do echo $$p; done | \ + sed 's|^[^/]*$$|.|; s|/[^/]*$$||; s|$$|/so_locations|' | \ + sort -u`; \ + test -z "$$locs" || { \ + echo rm -f $${locs}; \ + rm -f $${locs}; \ + } + +install-toolexeclibLTLIBRARIES: $(toolexeclib_LTLIBRARIES) + @$(NORMAL_INSTALL) + @list='$(toolexeclib_LTLIBRARIES)'; test -n "$(toolexeclibdir)" || list=; \ + list2=; for p in $$list; do \ + if test -f $$p; then \ + list2="$$list2 $$p"; \ + else :; fi; \ + done; \ + test -z "$$list2" || { \ + echo " $(MKDIR_P) '$(DESTDIR)$(toolexeclibdir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(toolexeclibdir)" || exit 1; \ + echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 '$(DESTDIR)$(toolexeclibdir)'"; \ + $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 "$(DESTDIR)$(toolexeclibdir)"; \ + } + +uninstall-toolexeclibLTLIBRARIES: + @$(NORMAL_UNINSTALL) + @list='$(toolexeclib_LTLIBRARIES)'; test -n "$(toolexeclibdir)" || list=; \ + for p in $$list; do \ + $(am__strip_dir) \ + echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f '$(DESTDIR)$(toolexeclibdir)/$$f'"; \ + $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f "$(DESTDIR)$(toolexeclibdir)/$$f"; \ + done + +clean-toolexeclibLTLIBRARIES: + -test -z "$(toolexeclib_LTLIBRARIES)" || rm -f $(toolexeclib_LTLIBRARIES) + @list='$(toolexeclib_LTLIBRARIES)'; \ + locs=`for p in $$list; do echo $$p; done | \ + sed 's|^[^/]*$$|.|; s|/[^/]*$$||; s|$$|/so_locations|' | \ + sort -u`; \ + test -z "$$locs" || { \ + echo rm -f $${locs}; \ + rm -f $${locs}; \ + } +src/$(am__dirstamp): + @$(MKDIR_P) src + @: > src/$(am__dirstamp) +src/$(DEPDIR)/$(am__dirstamp): + @$(MKDIR_P) src/$(DEPDIR) + @: > src/$(DEPDIR)/$(am__dirstamp) +src/prep_cif.lo: src/$(am__dirstamp) src/$(DEPDIR)/$(am__dirstamp) +src/types.lo: src/$(am__dirstamp) src/$(DEPDIR)/$(am__dirstamp) +src/raw_api.lo: src/$(am__dirstamp) src/$(DEPDIR)/$(am__dirstamp) +src/java_raw_api.lo: src/$(am__dirstamp) src/$(DEPDIR)/$(am__dirstamp) +src/closures.lo: src/$(am__dirstamp) src/$(DEPDIR)/$(am__dirstamp) +src/debug.lo: src/$(am__dirstamp) src/$(DEPDIR)/$(am__dirstamp) +src/aarch64/$(am__dirstamp): + @$(MKDIR_P) src/aarch64 + @: > src/aarch64/$(am__dirstamp) +src/aarch64/$(DEPDIR)/$(am__dirstamp): + @$(MKDIR_P) src/aarch64/$(DEPDIR) + @: > src/aarch64/$(DEPDIR)/$(am__dirstamp) +src/aarch64/ffi.lo: src/aarch64/$(am__dirstamp) \ + src/aarch64/$(DEPDIR)/$(am__dirstamp) +src/aarch64/sysv.lo: src/aarch64/$(am__dirstamp) \ + src/aarch64/$(DEPDIR)/$(am__dirstamp) +src/alpha/$(am__dirstamp): + @$(MKDIR_P) src/alpha + @: > src/alpha/$(am__dirstamp) +src/alpha/$(DEPDIR)/$(am__dirstamp): + @$(MKDIR_P) src/alpha/$(DEPDIR) + @: > src/alpha/$(DEPDIR)/$(am__dirstamp) +src/alpha/ffi.lo: src/alpha/$(am__dirstamp) \ + src/alpha/$(DEPDIR)/$(am__dirstamp) +src/alpha/osf.lo: src/alpha/$(am__dirstamp) \ + src/alpha/$(DEPDIR)/$(am__dirstamp) +src/arc/$(am__dirstamp): + @$(MKDIR_P) src/arc + @: > src/arc/$(am__dirstamp) +src/arc/$(DEPDIR)/$(am__dirstamp): + @$(MKDIR_P) src/arc/$(DEPDIR) + @: > src/arc/$(DEPDIR)/$(am__dirstamp) +src/arc/ffi.lo: src/arc/$(am__dirstamp) \ + src/arc/$(DEPDIR)/$(am__dirstamp) +src/arc/arcompact.lo: src/arc/$(am__dirstamp) \ + src/arc/$(DEPDIR)/$(am__dirstamp) +src/arm/$(am__dirstamp): + @$(MKDIR_P) src/arm + @: > src/arm/$(am__dirstamp) +src/arm/$(DEPDIR)/$(am__dirstamp): + @$(MKDIR_P) src/arm/$(DEPDIR) + @: > src/arm/$(DEPDIR)/$(am__dirstamp) +src/arm/ffi.lo: src/arm/$(am__dirstamp) \ + src/arm/$(DEPDIR)/$(am__dirstamp) +src/arm/sysv.lo: src/arm/$(am__dirstamp) \ + src/arm/$(DEPDIR)/$(am__dirstamp) +src/avr32/$(am__dirstamp): + @$(MKDIR_P) src/avr32 + @: > src/avr32/$(am__dirstamp) +src/avr32/$(DEPDIR)/$(am__dirstamp): + @$(MKDIR_P) src/avr32/$(DEPDIR) + @: > src/avr32/$(DEPDIR)/$(am__dirstamp) +src/avr32/ffi.lo: src/avr32/$(am__dirstamp) \ + src/avr32/$(DEPDIR)/$(am__dirstamp) +src/avr32/sysv.lo: src/avr32/$(am__dirstamp) \ + src/avr32/$(DEPDIR)/$(am__dirstamp) +src/bfin/$(am__dirstamp): + @$(MKDIR_P) src/bfin + @: > src/bfin/$(am__dirstamp) +src/bfin/$(DEPDIR)/$(am__dirstamp): + @$(MKDIR_P) src/bfin/$(DEPDIR) + @: > src/bfin/$(DEPDIR)/$(am__dirstamp) +src/bfin/ffi.lo: src/bfin/$(am__dirstamp) \ + src/bfin/$(DEPDIR)/$(am__dirstamp) +src/bfin/sysv.lo: src/bfin/$(am__dirstamp) \ + src/bfin/$(DEPDIR)/$(am__dirstamp) +src/cris/$(am__dirstamp): + @$(MKDIR_P) src/cris + @: > src/cris/$(am__dirstamp) +src/cris/$(DEPDIR)/$(am__dirstamp): + @$(MKDIR_P) src/cris/$(DEPDIR) + @: > src/cris/$(DEPDIR)/$(am__dirstamp) +src/cris/ffi.lo: src/cris/$(am__dirstamp) \ + src/cris/$(DEPDIR)/$(am__dirstamp) +src/cris/sysv.lo: src/cris/$(am__dirstamp) \ + src/cris/$(DEPDIR)/$(am__dirstamp) +src/frv/$(am__dirstamp): + @$(MKDIR_P) src/frv + @: > src/frv/$(am__dirstamp) +src/frv/$(DEPDIR)/$(am__dirstamp): + @$(MKDIR_P) src/frv/$(DEPDIR) + @: > src/frv/$(DEPDIR)/$(am__dirstamp) +src/frv/ffi.lo: src/frv/$(am__dirstamp) \ + src/frv/$(DEPDIR)/$(am__dirstamp) +src/frv/eabi.lo: src/frv/$(am__dirstamp) \ + src/frv/$(DEPDIR)/$(am__dirstamp) +src/ia64/$(am__dirstamp): + @$(MKDIR_P) src/ia64 + @: > src/ia64/$(am__dirstamp) +src/ia64/$(DEPDIR)/$(am__dirstamp): + @$(MKDIR_P) src/ia64/$(DEPDIR) + @: > src/ia64/$(DEPDIR)/$(am__dirstamp) +src/ia64/ffi.lo: src/ia64/$(am__dirstamp) \ + src/ia64/$(DEPDIR)/$(am__dirstamp) +src/ia64/unix.lo: src/ia64/$(am__dirstamp) \ + src/ia64/$(DEPDIR)/$(am__dirstamp) +src/m32r/$(am__dirstamp): + @$(MKDIR_P) src/m32r + @: > src/m32r/$(am__dirstamp) +src/m32r/$(DEPDIR)/$(am__dirstamp): + @$(MKDIR_P) src/m32r/$(DEPDIR) + @: > src/m32r/$(DEPDIR)/$(am__dirstamp) +src/m32r/ffi.lo: src/m32r/$(am__dirstamp) \ + src/m32r/$(DEPDIR)/$(am__dirstamp) +src/m32r/sysv.lo: src/m32r/$(am__dirstamp) \ + src/m32r/$(DEPDIR)/$(am__dirstamp) +src/m68k/$(am__dirstamp): + @$(MKDIR_P) src/m68k + @: > src/m68k/$(am__dirstamp) +src/m68k/$(DEPDIR)/$(am__dirstamp): + @$(MKDIR_P) src/m68k/$(DEPDIR) + @: > src/m68k/$(DEPDIR)/$(am__dirstamp) +src/m68k/ffi.lo: src/m68k/$(am__dirstamp) \ + src/m68k/$(DEPDIR)/$(am__dirstamp) +src/m68k/sysv.lo: src/m68k/$(am__dirstamp) \ + src/m68k/$(DEPDIR)/$(am__dirstamp) +src/m88k/$(am__dirstamp): + @$(MKDIR_P) src/m88k + @: > src/m88k/$(am__dirstamp) +src/m88k/$(DEPDIR)/$(am__dirstamp): + @$(MKDIR_P) src/m88k/$(DEPDIR) + @: > src/m88k/$(DEPDIR)/$(am__dirstamp) +src/m88k/ffi.lo: src/m88k/$(am__dirstamp) \ + src/m88k/$(DEPDIR)/$(am__dirstamp) +src/m88k/obsd.lo: src/m88k/$(am__dirstamp) \ + src/m88k/$(DEPDIR)/$(am__dirstamp) +src/metag/$(am__dirstamp): + @$(MKDIR_P) src/metag + @: > src/metag/$(am__dirstamp) +src/metag/$(DEPDIR)/$(am__dirstamp): + @$(MKDIR_P) src/metag/$(DEPDIR) + @: > src/metag/$(DEPDIR)/$(am__dirstamp) +src/metag/ffi.lo: src/metag/$(am__dirstamp) \ + src/metag/$(DEPDIR)/$(am__dirstamp) +src/metag/sysv.lo: src/metag/$(am__dirstamp) \ + src/metag/$(DEPDIR)/$(am__dirstamp) +src/microblaze/$(am__dirstamp): + @$(MKDIR_P) src/microblaze + @: > src/microblaze/$(am__dirstamp) +src/microblaze/$(DEPDIR)/$(am__dirstamp): + @$(MKDIR_P) src/microblaze/$(DEPDIR) + @: > src/microblaze/$(DEPDIR)/$(am__dirstamp) +src/microblaze/ffi.lo: src/microblaze/$(am__dirstamp) \ + src/microblaze/$(DEPDIR)/$(am__dirstamp) +src/microblaze/sysv.lo: src/microblaze/$(am__dirstamp) \ + src/microblaze/$(DEPDIR)/$(am__dirstamp) +src/mips/$(am__dirstamp): + @$(MKDIR_P) src/mips + @: > src/mips/$(am__dirstamp) +src/mips/$(DEPDIR)/$(am__dirstamp): + @$(MKDIR_P) src/mips/$(DEPDIR) + @: > src/mips/$(DEPDIR)/$(am__dirstamp) +src/mips/ffi.lo: src/mips/$(am__dirstamp) \ + src/mips/$(DEPDIR)/$(am__dirstamp) +src/mips/o32.lo: src/mips/$(am__dirstamp) \ + src/mips/$(DEPDIR)/$(am__dirstamp) +src/mips/n32.lo: src/mips/$(am__dirstamp) \ + src/mips/$(DEPDIR)/$(am__dirstamp) +src/moxie/$(am__dirstamp): + @$(MKDIR_P) src/moxie + @: > src/moxie/$(am__dirstamp) +src/moxie/$(DEPDIR)/$(am__dirstamp): + @$(MKDIR_P) src/moxie/$(DEPDIR) + @: > src/moxie/$(DEPDIR)/$(am__dirstamp) +src/moxie/ffi.lo: src/moxie/$(am__dirstamp) \ + src/moxie/$(DEPDIR)/$(am__dirstamp) +src/moxie/eabi.lo: src/moxie/$(am__dirstamp) \ + src/moxie/$(DEPDIR)/$(am__dirstamp) +src/nios2/$(am__dirstamp): + @$(MKDIR_P) src/nios2 + @: > src/nios2/$(am__dirstamp) +src/nios2/$(DEPDIR)/$(am__dirstamp): + @$(MKDIR_P) src/nios2/$(DEPDIR) + @: > src/nios2/$(DEPDIR)/$(am__dirstamp) +src/nios2/ffi.lo: src/nios2/$(am__dirstamp) \ + src/nios2/$(DEPDIR)/$(am__dirstamp) +src/nios2/sysv.lo: src/nios2/$(am__dirstamp) \ + src/nios2/$(DEPDIR)/$(am__dirstamp) +src/or1k/$(am__dirstamp): + @$(MKDIR_P) src/or1k + @: > src/or1k/$(am__dirstamp) +src/or1k/$(DEPDIR)/$(am__dirstamp): + @$(MKDIR_P) src/or1k/$(DEPDIR) + @: > src/or1k/$(DEPDIR)/$(am__dirstamp) +src/or1k/ffi.lo: src/or1k/$(am__dirstamp) \ + src/or1k/$(DEPDIR)/$(am__dirstamp) +src/or1k/sysv.lo: src/or1k/$(am__dirstamp) \ + src/or1k/$(DEPDIR)/$(am__dirstamp) +src/pa/$(am__dirstamp): + @$(MKDIR_P) src/pa + @: > src/pa/$(am__dirstamp) +src/pa/$(DEPDIR)/$(am__dirstamp): + @$(MKDIR_P) src/pa/$(DEPDIR) + @: > src/pa/$(DEPDIR)/$(am__dirstamp) +src/pa/ffi.lo: src/pa/$(am__dirstamp) src/pa/$(DEPDIR)/$(am__dirstamp) +src/pa/linux.lo: src/pa/$(am__dirstamp) \ + src/pa/$(DEPDIR)/$(am__dirstamp) +src/pa/hpux32.lo: src/pa/$(am__dirstamp) \ + src/pa/$(DEPDIR)/$(am__dirstamp) +src/powerpc/$(am__dirstamp): + @$(MKDIR_P) src/powerpc + @: > src/powerpc/$(am__dirstamp) +src/powerpc/$(DEPDIR)/$(am__dirstamp): + @$(MKDIR_P) src/powerpc/$(DEPDIR) + @: > src/powerpc/$(DEPDIR)/$(am__dirstamp) +src/powerpc/ffi.lo: src/powerpc/$(am__dirstamp) \ + src/powerpc/$(DEPDIR)/$(am__dirstamp) +src/powerpc/ffi_sysv.lo: src/powerpc/$(am__dirstamp) \ + src/powerpc/$(DEPDIR)/$(am__dirstamp) +src/powerpc/ffi_linux64.lo: src/powerpc/$(am__dirstamp) \ + src/powerpc/$(DEPDIR)/$(am__dirstamp) +src/powerpc/sysv.lo: src/powerpc/$(am__dirstamp) \ + src/powerpc/$(DEPDIR)/$(am__dirstamp) +src/powerpc/linux64.lo: src/powerpc/$(am__dirstamp) \ + src/powerpc/$(DEPDIR)/$(am__dirstamp) +src/powerpc/linux64_closure.lo: src/powerpc/$(am__dirstamp) \ + src/powerpc/$(DEPDIR)/$(am__dirstamp) +src/powerpc/ppc_closure.lo: src/powerpc/$(am__dirstamp) \ + src/powerpc/$(DEPDIR)/$(am__dirstamp) +src/powerpc/aix.lo: src/powerpc/$(am__dirstamp) \ + src/powerpc/$(DEPDIR)/$(am__dirstamp) +src/powerpc/darwin.lo: src/powerpc/$(am__dirstamp) \ + src/powerpc/$(DEPDIR)/$(am__dirstamp) +src/powerpc/aix_closure.lo: src/powerpc/$(am__dirstamp) \ + src/powerpc/$(DEPDIR)/$(am__dirstamp) +src/powerpc/darwin_closure.lo: src/powerpc/$(am__dirstamp) \ + src/powerpc/$(DEPDIR)/$(am__dirstamp) +src/powerpc/ffi_darwin.lo: src/powerpc/$(am__dirstamp) \ + src/powerpc/$(DEPDIR)/$(am__dirstamp) +src/s390/$(am__dirstamp): + @$(MKDIR_P) src/s390 + @: > src/s390/$(am__dirstamp) +src/s390/$(DEPDIR)/$(am__dirstamp): + @$(MKDIR_P) src/s390/$(DEPDIR) + @: > src/s390/$(DEPDIR)/$(am__dirstamp) +src/s390/ffi.lo: src/s390/$(am__dirstamp) \ + src/s390/$(DEPDIR)/$(am__dirstamp) +src/s390/sysv.lo: src/s390/$(am__dirstamp) \ + src/s390/$(DEPDIR)/$(am__dirstamp) +src/sh/$(am__dirstamp): + @$(MKDIR_P) src/sh + @: > src/sh/$(am__dirstamp) +src/sh/$(DEPDIR)/$(am__dirstamp): + @$(MKDIR_P) src/sh/$(DEPDIR) + @: > src/sh/$(DEPDIR)/$(am__dirstamp) +src/sh/ffi.lo: src/sh/$(am__dirstamp) src/sh/$(DEPDIR)/$(am__dirstamp) +src/sh/sysv.lo: src/sh/$(am__dirstamp) \ + src/sh/$(DEPDIR)/$(am__dirstamp) +src/sh64/$(am__dirstamp): + @$(MKDIR_P) src/sh64 + @: > src/sh64/$(am__dirstamp) +src/sh64/$(DEPDIR)/$(am__dirstamp): + @$(MKDIR_P) src/sh64/$(DEPDIR) + @: > src/sh64/$(DEPDIR)/$(am__dirstamp) +src/sh64/ffi.lo: src/sh64/$(am__dirstamp) \ + src/sh64/$(DEPDIR)/$(am__dirstamp) +src/sh64/sysv.lo: src/sh64/$(am__dirstamp) \ + src/sh64/$(DEPDIR)/$(am__dirstamp) +src/sparc/$(am__dirstamp): + @$(MKDIR_P) src/sparc + @: > src/sparc/$(am__dirstamp) +src/sparc/$(DEPDIR)/$(am__dirstamp): + @$(MKDIR_P) src/sparc/$(DEPDIR) + @: > src/sparc/$(DEPDIR)/$(am__dirstamp) +src/sparc/ffi.lo: src/sparc/$(am__dirstamp) \ + src/sparc/$(DEPDIR)/$(am__dirstamp) +src/sparc/ffi64.lo: src/sparc/$(am__dirstamp) \ + src/sparc/$(DEPDIR)/$(am__dirstamp) +src/sparc/v8.lo: src/sparc/$(am__dirstamp) \ + src/sparc/$(DEPDIR)/$(am__dirstamp) +src/sparc/v9.lo: src/sparc/$(am__dirstamp) \ + src/sparc/$(DEPDIR)/$(am__dirstamp) +src/tile/$(am__dirstamp): + @$(MKDIR_P) src/tile + @: > src/tile/$(am__dirstamp) +src/tile/$(DEPDIR)/$(am__dirstamp): + @$(MKDIR_P) src/tile/$(DEPDIR) + @: > src/tile/$(DEPDIR)/$(am__dirstamp) +src/tile/ffi.lo: src/tile/$(am__dirstamp) \ + src/tile/$(DEPDIR)/$(am__dirstamp) +src/tile/tile.lo: src/tile/$(am__dirstamp) \ + src/tile/$(DEPDIR)/$(am__dirstamp) +src/vax/$(am__dirstamp): + @$(MKDIR_P) src/vax + @: > src/vax/$(am__dirstamp) +src/vax/$(DEPDIR)/$(am__dirstamp): + @$(MKDIR_P) src/vax/$(DEPDIR) + @: > src/vax/$(DEPDIR)/$(am__dirstamp) +src/vax/ffi.lo: src/vax/$(am__dirstamp) \ + src/vax/$(DEPDIR)/$(am__dirstamp) +src/vax/elfbsd.lo: src/vax/$(am__dirstamp) \ + src/vax/$(DEPDIR)/$(am__dirstamp) +src/x86/$(am__dirstamp): + @$(MKDIR_P) src/x86 + @: > src/x86/$(am__dirstamp) +src/x86/$(DEPDIR)/$(am__dirstamp): + @$(MKDIR_P) src/x86/$(DEPDIR) + @: > src/x86/$(DEPDIR)/$(am__dirstamp) +src/x86/ffi.lo: src/x86/$(am__dirstamp) \ + src/x86/$(DEPDIR)/$(am__dirstamp) +src/x86/sysv.lo: src/x86/$(am__dirstamp) \ + src/x86/$(DEPDIR)/$(am__dirstamp) +src/x86/ffiw64.lo: src/x86/$(am__dirstamp) \ + src/x86/$(DEPDIR)/$(am__dirstamp) +src/x86/win64.lo: src/x86/$(am__dirstamp) \ + src/x86/$(DEPDIR)/$(am__dirstamp) +src/x86/ffi64.lo: src/x86/$(am__dirstamp) \ + src/x86/$(DEPDIR)/$(am__dirstamp) +src/x86/unix64.lo: src/x86/$(am__dirstamp) \ + src/x86/$(DEPDIR)/$(am__dirstamp) +src/xtensa/$(am__dirstamp): + @$(MKDIR_P) src/xtensa + @: > src/xtensa/$(am__dirstamp) +src/xtensa/$(DEPDIR)/$(am__dirstamp): + @$(MKDIR_P) src/xtensa/$(DEPDIR) + @: > src/xtensa/$(DEPDIR)/$(am__dirstamp) +src/xtensa/ffi.lo: src/xtensa/$(am__dirstamp) \ + src/xtensa/$(DEPDIR)/$(am__dirstamp) +src/xtensa/sysv.lo: src/xtensa/$(am__dirstamp) \ + src/xtensa/$(DEPDIR)/$(am__dirstamp) + +libffi.la: $(libffi_la_OBJECTS) $(libffi_la_DEPENDENCIES) $(EXTRA_libffi_la_DEPENDENCIES) + $(AM_V_CCLD)$(libffi_la_LINK) -rpath $(toolexeclibdir) $(libffi_la_OBJECTS) $(libffi_la_LIBADD) $(LIBS) + +libffi_convenience.la: $(libffi_convenience_la_OBJECTS) $(libffi_convenience_la_DEPENDENCIES) $(EXTRA_libffi_convenience_la_DEPENDENCIES) + $(AM_V_CCLD)$(LINK) $(libffi_convenience_la_OBJECTS) $(libffi_convenience_la_LIBADD) $(LIBS) + +mostlyclean-compile: + -rm -f *.$(OBJEXT) + -rm -f src/*.$(OBJEXT) + -rm -f src/*.lo + -rm -f src/aarch64/*.$(OBJEXT) + -rm -f src/aarch64/*.lo + -rm -f src/alpha/*.$(OBJEXT) + -rm -f src/alpha/*.lo + -rm -f src/arc/*.$(OBJEXT) + -rm -f src/arc/*.lo + -rm -f src/arm/*.$(OBJEXT) + -rm -f src/arm/*.lo + -rm -f src/avr32/*.$(OBJEXT) + -rm -f src/avr32/*.lo + -rm -f src/bfin/*.$(OBJEXT) + -rm -f src/bfin/*.lo + -rm -f src/cris/*.$(OBJEXT) + -rm -f src/cris/*.lo + -rm -f src/frv/*.$(OBJEXT) + -rm -f src/frv/*.lo + -rm -f src/ia64/*.$(OBJEXT) + -rm -f src/ia64/*.lo + -rm -f src/m32r/*.$(OBJEXT) + -rm -f src/m32r/*.lo + -rm -f src/m68k/*.$(OBJEXT) + -rm -f src/m68k/*.lo + -rm -f src/m88k/*.$(OBJEXT) + -rm -f src/m88k/*.lo + -rm -f src/metag/*.$(OBJEXT) + -rm -f src/metag/*.lo + -rm -f src/microblaze/*.$(OBJEXT) + -rm -f src/microblaze/*.lo + -rm -f src/mips/*.$(OBJEXT) + -rm -f src/mips/*.lo + -rm -f src/moxie/*.$(OBJEXT) + -rm -f src/moxie/*.lo + -rm -f src/nios2/*.$(OBJEXT) + -rm -f src/nios2/*.lo + -rm -f src/or1k/*.$(OBJEXT) + -rm -f src/or1k/*.lo + -rm -f src/pa/*.$(OBJEXT) + -rm -f src/pa/*.lo + -rm -f src/powerpc/*.$(OBJEXT) + -rm -f src/powerpc/*.lo + -rm -f src/s390/*.$(OBJEXT) + -rm -f src/s390/*.lo + -rm -f src/sh/*.$(OBJEXT) + -rm -f src/sh/*.lo + -rm -f src/sh64/*.$(OBJEXT) + -rm -f src/sh64/*.lo + -rm -f src/sparc/*.$(OBJEXT) + -rm -f src/sparc/*.lo + -rm -f src/tile/*.$(OBJEXT) + -rm -f src/tile/*.lo + -rm -f src/vax/*.$(OBJEXT) + -rm -f src/vax/*.lo + -rm -f src/x86/*.$(OBJEXT) + -rm -f src/x86/*.lo + -rm -f src/xtensa/*.$(OBJEXT) + -rm -f src/xtensa/*.lo + +distclean-compile: + -rm -f *.tab.c + +@AMDEP_TRUE@@am__include@ @am__quote@src/$(DEPDIR)/closures.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/$(DEPDIR)/debug.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/$(DEPDIR)/java_raw_api.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/$(DEPDIR)/prep_cif.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/$(DEPDIR)/raw_api.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/$(DEPDIR)/types.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/aarch64/$(DEPDIR)/ffi.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/aarch64/$(DEPDIR)/sysv.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/alpha/$(DEPDIR)/ffi.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/alpha/$(DEPDIR)/osf.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/arc/$(DEPDIR)/arcompact.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/arc/$(DEPDIR)/ffi.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/arm/$(DEPDIR)/ffi.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/arm/$(DEPDIR)/sysv.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/avr32/$(DEPDIR)/ffi.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/avr32/$(DEPDIR)/sysv.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/bfin/$(DEPDIR)/ffi.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/bfin/$(DEPDIR)/sysv.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/cris/$(DEPDIR)/ffi.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/cris/$(DEPDIR)/sysv.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/frv/$(DEPDIR)/eabi.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/frv/$(DEPDIR)/ffi.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/ia64/$(DEPDIR)/ffi.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/ia64/$(DEPDIR)/unix.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/m32r/$(DEPDIR)/ffi.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/m32r/$(DEPDIR)/sysv.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/m68k/$(DEPDIR)/ffi.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/m68k/$(DEPDIR)/sysv.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/m88k/$(DEPDIR)/ffi.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/m88k/$(DEPDIR)/obsd.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/metag/$(DEPDIR)/ffi.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/metag/$(DEPDIR)/sysv.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/microblaze/$(DEPDIR)/ffi.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/microblaze/$(DEPDIR)/sysv.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/mips/$(DEPDIR)/ffi.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/mips/$(DEPDIR)/n32.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/mips/$(DEPDIR)/o32.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/moxie/$(DEPDIR)/eabi.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/moxie/$(DEPDIR)/ffi.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/nios2/$(DEPDIR)/ffi.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/nios2/$(DEPDIR)/sysv.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/or1k/$(DEPDIR)/ffi.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/or1k/$(DEPDIR)/sysv.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/pa/$(DEPDIR)/ffi.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/pa/$(DEPDIR)/hpux32.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/pa/$(DEPDIR)/linux.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/powerpc/$(DEPDIR)/aix.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/powerpc/$(DEPDIR)/aix_closure.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/powerpc/$(DEPDIR)/darwin.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/powerpc/$(DEPDIR)/darwin_closure.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/powerpc/$(DEPDIR)/ffi.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/powerpc/$(DEPDIR)/ffi_darwin.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/powerpc/$(DEPDIR)/ffi_linux64.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/powerpc/$(DEPDIR)/ffi_sysv.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/powerpc/$(DEPDIR)/linux64.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/powerpc/$(DEPDIR)/linux64_closure.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/powerpc/$(DEPDIR)/ppc_closure.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/powerpc/$(DEPDIR)/sysv.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/s390/$(DEPDIR)/ffi.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/s390/$(DEPDIR)/sysv.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/sh/$(DEPDIR)/ffi.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/sh/$(DEPDIR)/sysv.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/sh64/$(DEPDIR)/ffi.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/sh64/$(DEPDIR)/sysv.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/sparc/$(DEPDIR)/ffi.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/sparc/$(DEPDIR)/ffi64.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/sparc/$(DEPDIR)/v8.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/sparc/$(DEPDIR)/v9.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/tile/$(DEPDIR)/ffi.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/tile/$(DEPDIR)/tile.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/vax/$(DEPDIR)/elfbsd.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/vax/$(DEPDIR)/ffi.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/x86/$(DEPDIR)/ffi.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/x86/$(DEPDIR)/ffi64.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/x86/$(DEPDIR)/ffiw64.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/x86/$(DEPDIR)/sysv.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/x86/$(DEPDIR)/unix64.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/x86/$(DEPDIR)/win64.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/xtensa/$(DEPDIR)/ffi.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@src/xtensa/$(DEPDIR)/sysv.Plo@am__quote@ + +.S.o: +@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\ +@am__fastdepCCAS_TRUE@ $(CPPASCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\ +@am__fastdepCCAS_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po +@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CPPASCOMPILE) -c -o $@ $< + +.S.obj: +@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.obj$$||'`;\ +@am__fastdepCCAS_TRUE@ $(CPPASCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ `$(CYGPATH_W) '$<'` &&\ +@am__fastdepCCAS_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po +@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CPPASCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'` + +.S.lo: +@am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.lo$$||'`;\ +@am__fastdepCCAS_TRUE@ $(LTCPPASCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\ +@am__fastdepCCAS_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Plo +@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(LTCPPASCOMPILE) -c -o $@ $< + +.c.o: +@am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\ +@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\ +@am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $< + +.c.obj: +@am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.obj$$||'`;\ +@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ `$(CYGPATH_W) '$<'` &&\ +@am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'` + +.c.lo: +@am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.lo$$||'`;\ +@am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\ +@am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $< + +mostlyclean-libtool: + -rm -f *.lo + +clean-libtool: + -rm -rf .libs _libs + -rm -rf src/.libs src/_libs + -rm -rf src/aarch64/.libs src/aarch64/_libs + -rm -rf src/alpha/.libs src/alpha/_libs + -rm -rf src/arc/.libs src/arc/_libs + -rm -rf src/arm/.libs src/arm/_libs + -rm -rf src/avr32/.libs src/avr32/_libs + -rm -rf src/bfin/.libs src/bfin/_libs + -rm -rf src/cris/.libs src/cris/_libs + -rm -rf src/frv/.libs src/frv/_libs + -rm -rf src/ia64/.libs src/ia64/_libs + -rm -rf src/m32r/.libs src/m32r/_libs + -rm -rf src/m68k/.libs src/m68k/_libs + -rm -rf src/m88k/.libs src/m88k/_libs + -rm -rf src/metag/.libs src/metag/_libs + -rm -rf src/microblaze/.libs src/microblaze/_libs + -rm -rf src/mips/.libs src/mips/_libs + -rm -rf src/moxie/.libs src/moxie/_libs + -rm -rf src/nios2/.libs src/nios2/_libs + -rm -rf src/or1k/.libs src/or1k/_libs + -rm -rf src/pa/.libs src/pa/_libs + -rm -rf src/powerpc/.libs src/powerpc/_libs + -rm -rf src/s390/.libs src/s390/_libs + -rm -rf src/sh/.libs src/sh/_libs + -rm -rf src/sh64/.libs src/sh64/_libs + -rm -rf src/sparc/.libs src/sparc/_libs + -rm -rf src/tile/.libs src/tile/_libs + -rm -rf src/vax/.libs src/vax/_libs + -rm -rf src/x86/.libs src/x86/_libs + -rm -rf src/xtensa/.libs src/xtensa/_libs + +distclean-libtool: + -rm -f libtool config.lt +install-pkgconfigDATA: $(pkgconfig_DATA) + @$(NORMAL_INSTALL) + @list='$(pkgconfig_DATA)'; test -n "$(pkgconfigdir)" || list=; \ + if test -n "$$list"; then \ + echo " $(MKDIR_P) '$(DESTDIR)$(pkgconfigdir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(pkgconfigdir)" || exit 1; \ + fi; \ + for p in $$list; do \ + if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ + echo "$$d$$p"; \ + done | $(am__base_list) | \ + while read files; do \ + echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(pkgconfigdir)'"; \ + $(INSTALL_DATA) $$files "$(DESTDIR)$(pkgconfigdir)" || exit $$?; \ + done + +uninstall-pkgconfigDATA: + @$(NORMAL_UNINSTALL) + @list='$(pkgconfig_DATA)'; test -n "$(pkgconfigdir)" || list=; \ + files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ + dir='$(DESTDIR)$(pkgconfigdir)'; $(am__uninstall_files_from_dir) + +# This directory's subdirectories are mostly independent; you can cd +# into them and run 'make' without going through this Makefile. +# To change the values of 'make' variables: instead of editing Makefiles, +# (1) if the variable is set in 'config.status', edit 'config.status' +# (which will cause the Makefiles to be regenerated when you run 'make'); +# (2) otherwise, pass the desired values on the 'make' command line. +$(am__recursive_targets): + @fail=; \ + if $(am__make_keepgoing); then \ + failcom='fail=yes'; \ + else \ + failcom='exit 1'; \ + fi; \ + dot_seen=no; \ + target=`echo $@ | sed s/-recursive//`; \ + case "$@" in \ + distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ + *) list='$(SUBDIRS)' ;; \ + esac; \ + for subdir in $$list; do \ + echo "Making $$target in $$subdir"; \ + if test "$$subdir" = "."; then \ + dot_seen=yes; \ + local_target="$$target-am"; \ + else \ + local_target="$$target"; \ + fi; \ + ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ + || eval $$failcom; \ + done; \ + if test "$$dot_seen" = "no"; then \ + $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ + fi; test -z "$$fail" + +ID: $(am__tagged_files) + $(am__define_uniq_tagged_files); mkid -fID $$unique +tags: tags-recursive +TAGS: tags + +tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) + set x; \ + here=`pwd`; \ + if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \ + include_option=--etags-include; \ + empty_fix=.; \ + else \ + include_option=--include; \ + empty_fix=; \ + fi; \ + list='$(SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + test ! -f $$subdir/TAGS || \ + set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \ + fi; \ + done; \ + $(am__define_uniq_tagged_files); \ + shift; \ + if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ + test -n "$$unique" || unique=$$empty_fix; \ + if test $$# -gt 0; then \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + "$$@" $$unique; \ + else \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$unique; \ + fi; \ + fi +ctags: ctags-recursive + +CTAGS: ctags +ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) + $(am__define_uniq_tagged_files); \ + test -z "$(CTAGS_ARGS)$$unique" \ + || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ + $$unique + +GTAGS: + here=`$(am__cd) $(top_builddir) && pwd` \ + && $(am__cd) $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) "$$here" +cscope: cscope.files + test ! -s cscope.files \ + || $(CSCOPE) -b -q $(AM_CSCOPEFLAGS) $(CSCOPEFLAGS) -i cscope.files $(CSCOPE_ARGS) +clean-cscope: + -rm -f cscope.files +cscope.files: clean-cscope cscopelist +cscopelist: cscopelist-recursive + +cscopelist-am: $(am__tagged_files) + list='$(am__tagged_files)'; \ + case "$(srcdir)" in \ + [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \ + *) sdir=$(subdir)/$(srcdir) ;; \ + esac; \ + for i in $$list; do \ + if test -f "$$i"; then \ + echo "$(subdir)/$$i"; \ + else \ + echo "$$sdir/$$i"; \ + fi; \ + done >> $(top_builddir)/cscope.files + +distclean-tags: + -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags + -rm -f cscope.out cscope.in.out cscope.po.out cscope.files + +distdir: $(DISTFILES) + $(am__remove_distdir) + test -d "$(distdir)" || mkdir "$(distdir)" + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ + else \ + test -f "$(distdir)/$$file" \ + || cp -p $$d/$$file "$(distdir)/$$file" \ + || exit 1; \ + fi; \ + done + @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + $(am__make_dryrun) \ + || test -d "$(distdir)/$$subdir" \ + || $(MKDIR_P) "$(distdir)/$$subdir" \ + || exit 1; \ + dir1=$$subdir; dir2="$(distdir)/$$subdir"; \ + $(am__relativize); \ + new_distdir=$$reldir; \ + dir1=$$subdir; dir2="$(top_distdir)"; \ + $(am__relativize); \ + new_top_distdir=$$reldir; \ + echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \ + echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \ + ($(am__cd) $$subdir && \ + $(MAKE) $(AM_MAKEFLAGS) \ + top_distdir="$$new_top_distdir" \ + distdir="$$new_distdir" \ + am__remove_distdir=: \ + am__skip_length_check=: \ + am__skip_mode_fix=: \ + distdir) \ + || exit 1; \ + fi; \ + done + $(MAKE) $(AM_MAKEFLAGS) \ + top_distdir="$(top_distdir)" distdir="$(distdir)" \ + dist-hook + -test -n "$(am__skip_mode_fix)" \ + || find "$(distdir)" -type d ! -perm -755 \ + -exec chmod u+rwx,go+rx {} \; -o \ + ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \ + ! -type d ! -perm -400 -exec chmod a+r {} \; -o \ + ! -type d ! -perm -444 -exec $(install_sh) -c -m a+r {} {} \; \ + || chmod -R a+r "$(distdir)" +dist-gzip: distdir + tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz + $(am__post_remove_distdir) + +dist-bzip2: distdir + tardir=$(distdir) && $(am__tar) | BZIP2=$${BZIP2--9} bzip2 -c >$(distdir).tar.bz2 + $(am__post_remove_distdir) + +dist-lzip: distdir + tardir=$(distdir) && $(am__tar) | lzip -c $${LZIP_OPT--9} >$(distdir).tar.lz + $(am__post_remove_distdir) + +dist-xz: distdir + tardir=$(distdir) && $(am__tar) | XZ_OPT=$${XZ_OPT--e} xz -c >$(distdir).tar.xz + $(am__post_remove_distdir) + +dist-tarZ: distdir + @echo WARNING: "Support for distribution archives compressed with" \ + "legacy program 'compress' is deprecated." >&2 + @echo WARNING: "It will be removed altogether in Automake 2.0" >&2 + tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z + $(am__post_remove_distdir) + +dist-shar: distdir + @echo WARNING: "Support for shar distribution archives is" \ + "deprecated." >&2 + @echo WARNING: "It will be removed altogether in Automake 2.0" >&2 + shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz + $(am__post_remove_distdir) + +dist-zip: distdir + -rm -f $(distdir).zip + zip -rq $(distdir).zip $(distdir) + $(am__post_remove_distdir) + +dist dist-all: + $(MAKE) $(AM_MAKEFLAGS) $(DIST_TARGETS) am__post_remove_distdir='@:' + $(am__post_remove_distdir) + +# This target untars the dist file and tries a VPATH configuration. Then +# it guarantees that the distribution is self-contained by making another +# tarfile. +distcheck: dist + case '$(DIST_ARCHIVES)' in \ + *.tar.gz*) \ + GZIP=$(GZIP_ENV) gzip -dc $(distdir).tar.gz | $(am__untar) ;;\ + *.tar.bz2*) \ + bzip2 -dc $(distdir).tar.bz2 | $(am__untar) ;;\ + *.tar.lz*) \ + lzip -dc $(distdir).tar.lz | $(am__untar) ;;\ + *.tar.xz*) \ + xz -dc $(distdir).tar.xz | $(am__untar) ;;\ + *.tar.Z*) \ + uncompress -c $(distdir).tar.Z | $(am__untar) ;;\ + *.shar.gz*) \ + GZIP=$(GZIP_ENV) gzip -dc $(distdir).shar.gz | unshar ;;\ + *.zip*) \ + unzip $(distdir).zip ;;\ + esac + chmod -R a-w $(distdir) + chmod u+w $(distdir) + mkdir $(distdir)/_build $(distdir)/_build/sub $(distdir)/_inst + chmod a-w $(distdir) + test -d $(distdir)/_build || exit 0; \ + dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \ + && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \ + && am__cwd=`pwd` \ + && $(am__cd) $(distdir)/_build/sub \ + && ../../configure \ + $(AM_DISTCHECK_CONFIGURE_FLAGS) \ + $(DISTCHECK_CONFIGURE_FLAGS) \ + --srcdir=../.. --prefix="$$dc_install_base" \ + && $(MAKE) $(AM_MAKEFLAGS) \ + && $(MAKE) $(AM_MAKEFLAGS) dvi \ + && $(MAKE) $(AM_MAKEFLAGS) check \ + && $(MAKE) $(AM_MAKEFLAGS) install \ + && $(MAKE) $(AM_MAKEFLAGS) installcheck \ + && $(MAKE) $(AM_MAKEFLAGS) uninstall \ + && $(MAKE) $(AM_MAKEFLAGS) distuninstallcheck_dir="$$dc_install_base" \ + distuninstallcheck \ + && chmod -R a-w "$$dc_install_base" \ + && ({ \ + (cd ../.. && umask 077 && mkdir "$$dc_destdir") \ + && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \ + && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \ + && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \ + distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \ + } || { rm -rf "$$dc_destdir"; exit 1; }) \ + && rm -rf "$$dc_destdir" \ + && $(MAKE) $(AM_MAKEFLAGS) dist \ + && rm -rf $(DIST_ARCHIVES) \ + && $(MAKE) $(AM_MAKEFLAGS) distcleancheck \ + && cd "$$am__cwd" \ + || exit 1 + $(am__post_remove_distdir) + @(echo "$(distdir) archives ready for distribution: "; \ + list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \ + sed -e 1h -e 1s/./=/g -e 1p -e 1x -e '$$p' -e '$$x' +distuninstallcheck: + @test -n '$(distuninstallcheck_dir)' || { \ + echo 'ERROR: trying to run $@ with an empty' \ + '$$(distuninstallcheck_dir)' >&2; \ + exit 1; \ + }; \ + $(am__cd) '$(distuninstallcheck_dir)' || { \ + echo 'ERROR: cannot chdir into $(distuninstallcheck_dir)' >&2; \ + exit 1; \ + }; \ + test `$(am__distuninstallcheck_listfiles) | wc -l` -eq 0 \ + || { echo "ERROR: files left after uninstall:" ; \ + if test -n "$(DESTDIR)"; then \ + echo " (check DESTDIR support)"; \ + fi ; \ + $(distuninstallcheck_listfiles) ; \ + exit 1; } >&2 +distcleancheck: distclean + @if test '$(srcdir)' = . ; then \ + echo "ERROR: distcleancheck can only run from a VPATH build" ; \ + exit 1 ; \ + fi + @test `$(distcleancheck_listfiles) | wc -l` -eq 0 \ + || { echo "ERROR: files left in build directory after distclean:" ; \ + $(distcleancheck_listfiles) ; \ + exit 1; } >&2 +check-am: all-am +check: check-recursive +all-am: Makefile $(LTLIBRARIES) $(DATA) $(HEADERS) fficonfig.h +installdirs: installdirs-recursive +installdirs-am: + for dir in "$(DESTDIR)$(toolexeclibdir)" "$(DESTDIR)$(pkgconfigdir)"; do \ + test -z "$$dir" || $(MKDIR_P) "$$dir"; \ + done +install: install-recursive +install-exec: install-exec-recursive +install-data: install-data-recursive +uninstall: uninstall-recursive + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am + +installcheck: installcheck-recursive +install-strip: + if test -z '$(STRIP)'; then \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + install; \ + else \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ + fi +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) + -rm -f src/$(DEPDIR)/$(am__dirstamp) + -rm -f src/$(am__dirstamp) + -rm -f src/aarch64/$(DEPDIR)/$(am__dirstamp) + -rm -f src/aarch64/$(am__dirstamp) + -rm -f src/alpha/$(DEPDIR)/$(am__dirstamp) + -rm -f src/alpha/$(am__dirstamp) + -rm -f src/arc/$(DEPDIR)/$(am__dirstamp) + -rm -f src/arc/$(am__dirstamp) + -rm -f src/arm/$(DEPDIR)/$(am__dirstamp) + -rm -f src/arm/$(am__dirstamp) + -rm -f src/avr32/$(DEPDIR)/$(am__dirstamp) + -rm -f src/avr32/$(am__dirstamp) + -rm -f src/bfin/$(DEPDIR)/$(am__dirstamp) + -rm -f src/bfin/$(am__dirstamp) + -rm -f src/cris/$(DEPDIR)/$(am__dirstamp) + -rm -f src/cris/$(am__dirstamp) + -rm -f src/frv/$(DEPDIR)/$(am__dirstamp) + -rm -f src/frv/$(am__dirstamp) + -rm -f src/ia64/$(DEPDIR)/$(am__dirstamp) + -rm -f src/ia64/$(am__dirstamp) + -rm -f src/m32r/$(DEPDIR)/$(am__dirstamp) + -rm -f src/m32r/$(am__dirstamp) + -rm -f src/m68k/$(DEPDIR)/$(am__dirstamp) + -rm -f src/m68k/$(am__dirstamp) + -rm -f src/m88k/$(DEPDIR)/$(am__dirstamp) + -rm -f src/m88k/$(am__dirstamp) + -rm -f src/metag/$(DEPDIR)/$(am__dirstamp) + -rm -f src/metag/$(am__dirstamp) + -rm -f src/microblaze/$(DEPDIR)/$(am__dirstamp) + -rm -f src/microblaze/$(am__dirstamp) + -rm -f src/mips/$(DEPDIR)/$(am__dirstamp) + -rm -f src/mips/$(am__dirstamp) + -rm -f src/moxie/$(DEPDIR)/$(am__dirstamp) + -rm -f src/moxie/$(am__dirstamp) + -rm -f src/nios2/$(DEPDIR)/$(am__dirstamp) + -rm -f src/nios2/$(am__dirstamp) + -rm -f src/or1k/$(DEPDIR)/$(am__dirstamp) + -rm -f src/or1k/$(am__dirstamp) + -rm -f src/pa/$(DEPDIR)/$(am__dirstamp) + -rm -f src/pa/$(am__dirstamp) + -rm -f src/powerpc/$(DEPDIR)/$(am__dirstamp) + -rm -f src/powerpc/$(am__dirstamp) + -rm -f src/s390/$(DEPDIR)/$(am__dirstamp) + -rm -f src/s390/$(am__dirstamp) + -rm -f src/sh/$(DEPDIR)/$(am__dirstamp) + -rm -f src/sh/$(am__dirstamp) + -rm -f src/sh64/$(DEPDIR)/$(am__dirstamp) + -rm -f src/sh64/$(am__dirstamp) + -rm -f src/sparc/$(DEPDIR)/$(am__dirstamp) + -rm -f src/sparc/$(am__dirstamp) + -rm -f src/tile/$(DEPDIR)/$(am__dirstamp) + -rm -f src/tile/$(am__dirstamp) + -rm -f src/vax/$(DEPDIR)/$(am__dirstamp) + -rm -f src/vax/$(am__dirstamp) + -rm -f src/x86/$(DEPDIR)/$(am__dirstamp) + -rm -f src/x86/$(am__dirstamp) + -rm -f src/xtensa/$(DEPDIR)/$(am__dirstamp) + -rm -f src/xtensa/$(am__dirstamp) + -test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES) + +maintainer-clean-generic: + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." +clean: clean-recursive + +clean-am: clean-generic clean-libtool clean-noinstLTLIBRARIES \ + clean-toolexeclibLTLIBRARIES mostlyclean-am + +distclean: distclean-recursive + -rm -f $(am__CONFIG_DISTCLEAN_FILES) + -rm -rf src/$(DEPDIR) src/aarch64/$(DEPDIR) src/alpha/$(DEPDIR) src/arc/$(DEPDIR) src/arm/$(DEPDIR) src/avr32/$(DEPDIR) src/bfin/$(DEPDIR) src/cris/$(DEPDIR) src/frv/$(DEPDIR) src/ia64/$(DEPDIR) src/m32r/$(DEPDIR) src/m68k/$(DEPDIR) src/m88k/$(DEPDIR) src/metag/$(DEPDIR) src/microblaze/$(DEPDIR) src/mips/$(DEPDIR) src/moxie/$(DEPDIR) src/nios2/$(DEPDIR) src/or1k/$(DEPDIR) src/pa/$(DEPDIR) src/powerpc/$(DEPDIR) src/s390/$(DEPDIR) src/sh/$(DEPDIR) src/sh64/$(DEPDIR) src/sparc/$(DEPDIR) src/tile/$(DEPDIR) src/vax/$(DEPDIR) src/x86/$(DEPDIR) src/xtensa/$(DEPDIR) + -rm -f Makefile +distclean-am: clean-am distclean-compile distclean-generic \ + distclean-hdr distclean-libtool distclean-tags + +dvi: dvi-recursive + +dvi-am: + +html: html-recursive + +html-am: + +info: info-recursive + +info-am: + +install-data-am: install-pkgconfigDATA + +install-dvi: install-dvi-recursive + +install-dvi-am: + +install-exec-am: install-toolexeclibLTLIBRARIES + +install-html: install-html-recursive + +install-html-am: + +install-info: install-info-recursive + +install-info-am: + +install-man: + +install-pdf: install-pdf-recursive + +install-pdf-am: + +install-ps: install-ps-recursive + +install-ps-am: + +installcheck-am: + +maintainer-clean: maintainer-clean-recursive + -rm -f $(am__CONFIG_DISTCLEAN_FILES) + -rm -rf $(top_srcdir)/autom4te.cache + -rm -rf src/$(DEPDIR) src/aarch64/$(DEPDIR) src/alpha/$(DEPDIR) src/arc/$(DEPDIR) src/arm/$(DEPDIR) src/avr32/$(DEPDIR) src/bfin/$(DEPDIR) src/cris/$(DEPDIR) src/frv/$(DEPDIR) src/ia64/$(DEPDIR) src/m32r/$(DEPDIR) src/m68k/$(DEPDIR) src/m88k/$(DEPDIR) src/metag/$(DEPDIR) src/microblaze/$(DEPDIR) src/mips/$(DEPDIR) src/moxie/$(DEPDIR) src/nios2/$(DEPDIR) src/or1k/$(DEPDIR) src/pa/$(DEPDIR) src/powerpc/$(DEPDIR) src/s390/$(DEPDIR) src/sh/$(DEPDIR) src/sh64/$(DEPDIR) src/sparc/$(DEPDIR) src/tile/$(DEPDIR) src/vax/$(DEPDIR) src/x86/$(DEPDIR) src/xtensa/$(DEPDIR) + -rm -f Makefile +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-recursive + +mostlyclean-am: mostlyclean-compile mostlyclean-generic \ + mostlyclean-libtool + +pdf: pdf-recursive + +pdf-am: + +ps: ps-recursive + +ps-am: + +uninstall-am: uninstall-pkgconfigDATA uninstall-toolexeclibLTLIBRARIES + +.MAKE: $(am__recursive_targets) all install-am install-strip + +.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \ + am--refresh check check-am clean clean-cscope clean-generic \ + clean-libtool clean-noinstLTLIBRARIES \ + clean-toolexeclibLTLIBRARIES cscope cscopelist-am ctags \ + ctags-am dist dist-all dist-bzip2 dist-gzip dist-hook \ + dist-lzip dist-shar dist-tarZ dist-xz dist-zip distcheck \ + distclean distclean-compile distclean-generic distclean-hdr \ + distclean-libtool distclean-tags distcleancheck distdir \ + distuninstallcheck dvi dvi-am html html-am info info-am \ + install install-am install-data install-data-am install-dvi \ + install-dvi-am install-exec install-exec-am install-html \ + install-html-am install-info install-info-am install-man \ + install-pdf install-pdf-am install-pkgconfigDATA install-ps \ + install-ps-am install-strip install-toolexeclibLTLIBRARIES \ + installcheck installcheck-am installdirs installdirs-am \ + maintainer-clean maintainer-clean-generic mostlyclean \ + mostlyclean-compile mostlyclean-generic mostlyclean-libtool \ + pdf pdf-am ps ps-am tags tags-am uninstall uninstall-am \ + uninstall-pkgconfigDATA uninstall-toolexeclibLTLIBRARIES + +.PRECIOUS: Makefile + +@LIBFFI_BUILD_VERSIONED_SHLIB_SUN_TRUE@@LIBFFI_BUILD_VERSIONED_SHLIB_TRUE@libffi.map-sun : libffi.map $(top_srcdir)/../contrib/make_sunver.pl \ +@LIBFFI_BUILD_VERSIONED_SHLIB_SUN_TRUE@@LIBFFI_BUILD_VERSIONED_SHLIB_TRUE@ $(libffi_la_OBJECTS) $(libffi_la_LIBADD) +@LIBFFI_BUILD_VERSIONED_SHLIB_SUN_TRUE@@LIBFFI_BUILD_VERSIONED_SHLIB_TRUE@ perl $(top_srcdir)/../contrib/make_sunver.pl libffi.map \ +@LIBFFI_BUILD_VERSIONED_SHLIB_SUN_TRUE@@LIBFFI_BUILD_VERSIONED_SHLIB_TRUE@ `echo $(libffi_la_OBJECTS) $(libffi_la_LIBADD) | \ +@LIBFFI_BUILD_VERSIONED_SHLIB_SUN_TRUE@@LIBFFI_BUILD_VERSIONED_SHLIB_TRUE@ sed 's,\([^/ ]*\)\.l\([ao]\),.libs/\1.\2,g'` \ +@LIBFFI_BUILD_VERSIONED_SHLIB_SUN_TRUE@@LIBFFI_BUILD_VERSIONED_SHLIB_TRUE@ > $@ || (rm -f $@ ; exit 1) + +libffi.map: $(top_srcdir)/libffi.map.in + $(COMPILE) -D$(TARGET) -E -x assembler-with-cpp -o $@ $< + +dist-hook: + if [ -d $(top_srcdir)/.git ] ; then (cd $(top_srcdir); git log --no-decorate) ; else echo 'See git log for history.' ; fi > $(distdir)/ChangeLog + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff --git a/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi/configure b/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi/configure new file mode 100755 index 0000000000..d3ee16b8cf --- /dev/null +++ b/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi/configure @@ -0,0 +1,21978 @@ +#! /bin/sh +# Guess values for system-dependent variables and create Makefiles. +# Generated by GNU Autoconf 2.69 for libffi 3.99999. +# +# Report bugs to . +# +# +# Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc. +# +# +# This configure script is free software; the Free Software Foundation +# gives unlimited permission to copy, distribute and modify it. +## -------------------- ## +## M4sh Initialization. ## +## -------------------- ## + +# Be more Bourne compatible +DUALCASE=1; export DUALCASE # for MKS sh +if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then : + emulate sh + NULLCMD=: + # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which + # is contrary to our usage. Disable this feature. + alias -g '${1+"$@"}'='"$@"' + setopt NO_GLOB_SUBST +else + case `(set -o) 2>/dev/null` in #( + *posix*) : + set -o posix ;; #( + *) : + ;; +esac +fi + + +as_nl=' +' +export as_nl +# Printing a long string crashes Solaris 7 /usr/bin/printf. +as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' +as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo +as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo +# Prefer a ksh shell builtin over an external printf program on Solaris, +# but without wasting forks for bash or zsh. +if test -z "$BASH_VERSION$ZSH_VERSION" \ + && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then + as_echo='print -r --' + as_echo_n='print -rn --' +elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then + as_echo='printf %s\n' + as_echo_n='printf %s' +else + if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then + as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"' + as_echo_n='/usr/ucb/echo -n' + else + as_echo_body='eval expr "X$1" : "X\\(.*\\)"' + as_echo_n_body='eval + arg=$1; + case $arg in #( + *"$as_nl"*) + expr "X$arg" : "X\\(.*\\)$as_nl"; + arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;; + esac; + expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl" + ' + export as_echo_n_body + as_echo_n='sh -c $as_echo_n_body as_echo' + fi + export as_echo_body + as_echo='sh -c $as_echo_body as_echo' +fi + +# The user is always right. +if test "${PATH_SEPARATOR+set}" != set; then + PATH_SEPARATOR=: + (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { + (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || + PATH_SEPARATOR=';' + } +fi + + +# IFS +# We need space, tab and new line, in precisely that order. Quoting is +# there to prevent editors from complaining about space-tab. +# (If _AS_PATH_WALK were called with IFS unset, it would disable word +# splitting by setting IFS to empty value.) +IFS=" "" $as_nl" + +# Find who we are. Look in the path if we contain no directory separator. +as_myself= +case $0 in #(( + *[\\/]* ) as_myself=$0 ;; + *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break + done +IFS=$as_save_IFS + + ;; +esac +# We did not find ourselves, most probably we were run as `sh COMMAND' +# in which case we are not to be found in the path. +if test "x$as_myself" = x; then + as_myself=$0 +fi +if test ! -f "$as_myself"; then + $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 + exit 1 +fi + +# Unset variables that we do not need and which cause bugs (e.g. in +# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1" +# suppresses any "Segmentation fault" message there. '((' could +# trigger a bug in pdksh 5.2.14. +for as_var in BASH_ENV ENV MAIL MAILPATH +do eval test x\${$as_var+set} = xset \ + && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : +done +PS1='$ ' +PS2='> ' +PS4='+ ' + +# NLS nuisances. +LC_ALL=C +export LC_ALL +LANGUAGE=C +export LANGUAGE + +# CDPATH. +(unset CDPATH) >/dev/null 2>&1 && unset CDPATH + +# Use a proper internal environment variable to ensure we don't fall + # into an infinite loop, continuously re-executing ourselves. + if test x"${_as_can_reexec}" != xno && test "x$CONFIG_SHELL" != x; then + _as_can_reexec=no; export _as_can_reexec; + # We cannot yet assume a decent shell, so we have to provide a +# neutralization value for shells without unset; and this also +# works around shells that cannot unset nonexistent variables. +# Preserve -v and -x to the replacement shell. +BASH_ENV=/dev/null +ENV=/dev/null +(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV +case $- in # (((( + *v*x* | *x*v* ) as_opts=-vx ;; + *v* ) as_opts=-v ;; + *x* ) as_opts=-x ;; + * ) as_opts= ;; +esac +exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"} +# Admittedly, this is quite paranoid, since all the known shells bail +# out after a failed `exec'. +$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2 +as_fn_exit 255 + fi + # We don't want this to propagate to other subprocesses. + { _as_can_reexec=; unset _as_can_reexec;} +if test "x$CONFIG_SHELL" = x; then + as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then : + emulate sh + NULLCMD=: + # Pre-4.2 versions of Zsh do word splitting on \${1+\"\$@\"}, which + # is contrary to our usage. Disable this feature. + alias -g '\${1+\"\$@\"}'='\"\$@\"' + setopt NO_GLOB_SUBST +else + case \`(set -o) 2>/dev/null\` in #( + *posix*) : + set -o posix ;; #( + *) : + ;; +esac +fi +" + as_required="as_fn_return () { (exit \$1); } +as_fn_success () { as_fn_return 0; } +as_fn_failure () { as_fn_return 1; } +as_fn_ret_success () { return 0; } +as_fn_ret_failure () { return 1; } + +exitcode=0 +as_fn_success || { exitcode=1; echo as_fn_success failed.; } +as_fn_failure && { exitcode=1; echo as_fn_failure succeeded.; } +as_fn_ret_success || { exitcode=1; echo as_fn_ret_success failed.; } +as_fn_ret_failure && { exitcode=1; echo as_fn_ret_failure succeeded.; } +if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then : + +else + exitcode=1; echo positional parameters were not saved. +fi +test x\$exitcode = x0 || exit 1 +test -x / || exit 1" + as_suggested=" as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO + as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO + eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" && + test \"x\`expr \$as_lineno_1'\$as_run' + 1\`\" = \"x\$as_lineno_2'\$as_run'\"' || exit 1 + + test -n \"\${ZSH_VERSION+set}\${BASH_VERSION+set}\" || ( + ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' + ECHO=\$ECHO\$ECHO\$ECHO\$ECHO\$ECHO + ECHO=\$ECHO\$ECHO\$ECHO\$ECHO\$ECHO\$ECHO + PATH=/empty FPATH=/empty; export PATH FPATH + test \"X\`printf %s \$ECHO\`\" = \"X\$ECHO\" \\ + || test \"X\`print -r -- \$ECHO\`\" = \"X\$ECHO\" ) || exit 1 +test \$(( 1 + 1 )) = 2 || exit 1" + if (eval "$as_required") 2>/dev/null; then : + as_have_required=yes +else + as_have_required=no +fi + if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null; then : + +else + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +as_found=false +for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + as_found=: + case $as_dir in #( + /*) + for as_base in sh bash ksh sh5; do + # Try only shells that exist, to save several forks. + as_shell=$as_dir/$as_base + if { test -f "$as_shell" || test -f "$as_shell.exe"; } && + { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$as_shell"; } 2>/dev/null; then : + CONFIG_SHELL=$as_shell as_have_required=yes + if { $as_echo "$as_bourne_compatible""$as_suggested" | as_run=a "$as_shell"; } 2>/dev/null; then : + break 2 +fi +fi + done;; + esac + as_found=false +done +$as_found || { if { test -f "$SHELL" || test -f "$SHELL.exe"; } && + { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$SHELL"; } 2>/dev/null; then : + CONFIG_SHELL=$SHELL as_have_required=yes +fi; } +IFS=$as_save_IFS + + + if test "x$CONFIG_SHELL" != x; then : + export CONFIG_SHELL + # We cannot yet assume a decent shell, so we have to provide a +# neutralization value for shells without unset; and this also +# works around shells that cannot unset nonexistent variables. +# Preserve -v and -x to the replacement shell. +BASH_ENV=/dev/null +ENV=/dev/null +(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV +case $- in # (((( + *v*x* | *x*v* ) as_opts=-vx ;; + *v* ) as_opts=-v ;; + *x* ) as_opts=-x ;; + * ) as_opts= ;; +esac +exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"} +# Admittedly, this is quite paranoid, since all the known shells bail +# out after a failed `exec'. +$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2 +exit 255 +fi + + if test x$as_have_required = xno; then : + $as_echo "$0: This script requires a shell more modern than all" + $as_echo "$0: the shells that I found on your system." + if test x${ZSH_VERSION+set} = xset ; then + $as_echo "$0: In particular, zsh $ZSH_VERSION has bugs and should" + $as_echo "$0: be upgraded to zsh 4.3.4 or later." + else + $as_echo "$0: Please tell bug-autoconf@gnu.org and +$0: http://github.com/libffi/libffi/issues about your +$0: system, including any error possibly output before this +$0: message. Then install a modern shell, or manually run +$0: the script under such a shell if you do have one." + fi + exit 1 +fi +fi +fi +SHELL=${CONFIG_SHELL-/bin/sh} +export SHELL +# Unset more variables known to interfere with behavior of common tools. +CLICOLOR_FORCE= GREP_OPTIONS= +unset CLICOLOR_FORCE GREP_OPTIONS + +## --------------------- ## +## M4sh Shell Functions. ## +## --------------------- ## +# as_fn_unset VAR +# --------------- +# Portably unset VAR. +as_fn_unset () +{ + { eval $1=; unset $1;} +} +as_unset=as_fn_unset + +# as_fn_set_status STATUS +# ----------------------- +# Set $? to STATUS, without forking. +as_fn_set_status () +{ + return $1 +} # as_fn_set_status + +# as_fn_exit STATUS +# ----------------- +# Exit the shell with STATUS, even in a "trap 0" or "set -e" context. +as_fn_exit () +{ + set +e + as_fn_set_status $1 + exit $1 +} # as_fn_exit + +# as_fn_mkdir_p +# ------------- +# Create "$as_dir" as a directory, including parents if necessary. +as_fn_mkdir_p () +{ + + case $as_dir in #( + -*) as_dir=./$as_dir;; + esac + test -d "$as_dir" || eval $as_mkdir_p || { + as_dirs= + while :; do + case $as_dir in #( + *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( + *) as_qdir=$as_dir;; + esac + as_dirs="'$as_qdir' $as_dirs" + as_dir=`$as_dirname -- "$as_dir" || +$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$as_dir" : 'X\(//\)[^/]' \| \ + X"$as_dir" : 'X\(//\)$' \| \ + X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X"$as_dir" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + test -d "$as_dir" && break + done + test -z "$as_dirs" || eval "mkdir $as_dirs" + } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir" + + +} # as_fn_mkdir_p + +# as_fn_executable_p FILE +# ----------------------- +# Test if FILE is an executable regular file. +as_fn_executable_p () +{ + test -f "$1" && test -x "$1" +} # as_fn_executable_p +# as_fn_append VAR VALUE +# ---------------------- +# Append the text in VALUE to the end of the definition contained in VAR. Take +# advantage of any shell optimizations that allow amortized linear growth over +# repeated appends, instead of the typical quadratic growth present in naive +# implementations. +if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then : + eval 'as_fn_append () + { + eval $1+=\$2 + }' +else + as_fn_append () + { + eval $1=\$$1\$2 + } +fi # as_fn_append + +# as_fn_arith ARG... +# ------------------ +# Perform arithmetic evaluation on the ARGs, and store the result in the +# global $as_val. Take advantage of shells that can avoid forks. The arguments +# must be portable across $(()) and expr. +if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then : + eval 'as_fn_arith () + { + as_val=$(( $* )) + }' +else + as_fn_arith () + { + as_val=`expr "$@" || test $? -eq 1` + } +fi # as_fn_arith + + +# as_fn_error STATUS ERROR [LINENO LOG_FD] +# ---------------------------------------- +# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are +# provided, also output the error to LOG_FD, referencing LINENO. Then exit the +# script with STATUS, using 1 if that was 0. +as_fn_error () +{ + as_status=$1; test $as_status -eq 0 && as_status=1 + if test "$4"; then + as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4 + fi + $as_echo "$as_me: error: $2" >&2 + as_fn_exit $as_status +} # as_fn_error + +if expr a : '\(a\)' >/dev/null 2>&1 && + test "X`expr 00001 : '.*\(...\)'`" = X001; then + as_expr=expr +else + as_expr=false +fi + +if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then + as_basename=basename +else + as_basename=false +fi + +if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then + as_dirname=dirname +else + as_dirname=false +fi + +as_me=`$as_basename -- "$0" || +$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ + X"$0" : 'X\(//\)$' \| \ + X"$0" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X/"$0" | + sed '/^.*\/\([^/][^/]*\)\/*$/{ + s//\1/ + q + } + /^X\/\(\/\/\)$/{ + s//\1/ + q + } + /^X\/\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + +# Avoid depending upon Character Ranges. +as_cr_letters='abcdefghijklmnopqrstuvwxyz' +as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' +as_cr_Letters=$as_cr_letters$as_cr_LETTERS +as_cr_digits='0123456789' +as_cr_alnum=$as_cr_Letters$as_cr_digits + + + as_lineno_1=$LINENO as_lineno_1a=$LINENO + as_lineno_2=$LINENO as_lineno_2a=$LINENO + eval 'test "x$as_lineno_1'$as_run'" != "x$as_lineno_2'$as_run'" && + test "x`expr $as_lineno_1'$as_run' + 1`" = "x$as_lineno_2'$as_run'"' || { + # Blame Lee E. McMahon (1931-1989) for sed's syntax. :-) + sed -n ' + p + /[$]LINENO/= + ' <$as_myself | + sed ' + s/[$]LINENO.*/&-/ + t lineno + b + :lineno + N + :loop + s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/ + t loop + s/-\n.*// + ' >$as_me.lineno && + chmod +x "$as_me.lineno" || + { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; } + + # If we had to re-execute with $CONFIG_SHELL, we're ensured to have + # already done that, so ensure we don't try to do so again and fall + # in an infinite loop. This has already happened in practice. + _as_can_reexec=no; export _as_can_reexec + # Don't try to exec as it changes $[0], causing all sort of problems + # (the dirname of $[0] is not the place where we might find the + # original and so on. Autoconf is especially sensitive to this). + . "./$as_me.lineno" + # Exit status is that of the last command. + exit +} + +ECHO_C= ECHO_N= ECHO_T= +case `echo -n x` in #((((( +-n*) + case `echo 'xy\c'` in + *c*) ECHO_T=' ';; # ECHO_T is single tab character. + xy) ECHO_C='\c';; + *) echo `echo ksh88 bug on AIX 6.1` > /dev/null + ECHO_T=' ';; + esac;; +*) + ECHO_N='-n';; +esac + +rm -f conf$$ conf$$.exe conf$$.file +if test -d conf$$.dir; then + rm -f conf$$.dir/conf$$.file +else + rm -f conf$$.dir + mkdir conf$$.dir 2>/dev/null +fi +if (echo >conf$$.file) 2>/dev/null; then + if ln -s conf$$.file conf$$ 2>/dev/null; then + as_ln_s='ln -s' + # ... but there are two gotchas: + # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. + # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. + # In both cases, we have to default to `cp -pR'. + ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || + as_ln_s='cp -pR' + elif ln conf$$.file conf$$ 2>/dev/null; then + as_ln_s=ln + else + as_ln_s='cp -pR' + fi +else + as_ln_s='cp -pR' +fi +rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file +rmdir conf$$.dir 2>/dev/null + +if mkdir -p . 2>/dev/null; then + as_mkdir_p='mkdir -p "$as_dir"' +else + test -d ./-p && rmdir ./-p + as_mkdir_p=false +fi + +as_test_x='test -x' +as_executable_p=as_fn_executable_p + +# Sed expression to map a string onto a valid CPP name. +as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" + +# Sed expression to map a string onto a valid variable name. +as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" + +SHELL=${CONFIG_SHELL-/bin/sh} + + +test -n "$DJDIR" || exec 7<&0 &1 + +# Name of the host. +# hostname on some systems (SVR3.2, old GNU/Linux) returns a bogus exit status, +# so uname gets run too. +ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q` + +# +# Initializations. +# +ac_default_prefix=/usr/local +ac_clean_files= +ac_config_libobj_dir=. +LIBOBJS= +cross_compiling=no +subdirs= +MFLAGS= +MAKEFLAGS= + +# Identity of this package. +PACKAGE_NAME='libffi' +PACKAGE_TARNAME='libffi' +PACKAGE_VERSION='3.99999' +PACKAGE_STRING='libffi 3.99999' +PACKAGE_BUGREPORT='http://github.com/libffi/libffi/issues' +PACKAGE_URL='' + +# Factoring default headers for most tests. +ac_includes_default="\ +#include +#ifdef HAVE_SYS_TYPES_H +# include +#endif +#ifdef HAVE_SYS_STAT_H +# include +#endif +#ifdef STDC_HEADERS +# include +# include +#else +# ifdef HAVE_STDLIB_H +# include +# endif +#endif +#ifdef HAVE_STRING_H +# if !defined STDC_HEADERS && defined HAVE_MEMORY_H +# include +# endif +# include +#endif +#ifdef HAVE_STRINGS_H +# include +#endif +#ifdef HAVE_INTTYPES_H +# include +#endif +#ifdef HAVE_STDINT_H +# include +#endif +#ifdef HAVE_UNISTD_H +# include +#endif" + +ac_subst_vars='am__EXEEXT_FALSE +am__EXEEXT_TRUE +LTLIBOBJS +LIBOBJS +LIBFFI_BUILD_VERSIONED_SHLIB_SUN_FALSE +LIBFFI_BUILD_VERSIONED_SHLIB_SUN_TRUE +LIBFFI_BUILD_VERSIONED_SHLIB_GNU_FALSE +LIBFFI_BUILD_VERSIONED_SHLIB_GNU_TRUE +LIBFFI_BUILD_VERSIONED_SHLIB_FALSE +LIBFFI_BUILD_VERSIONED_SHLIB_TRUE +OPT_LDFLAGS +SECTION_LDFLAGS +toolexeclibdir +toolexecdir +FFI_DEBUG_FALSE +FFI_DEBUG_TRUE +TARGET_OBJ +TARGETDIR +TARGET +BUILD_DOCS_FALSE +BUILD_DOCS_TRUE +FFI_EXEC_TRAMPOLINE_TABLE +FFI_EXEC_TRAMPOLINE_TABLE_FALSE +FFI_EXEC_TRAMPOLINE_TABLE_TRUE +sys_symbol_underscore +HAVE_LONG_DOUBLE_VARIANT +HAVE_LONG_DOUBLE +ALLOCA +AM_LTLDFLAGS +AM_RUNTESTFLAGS +TESTSUBDIR_FALSE +TESTSUBDIR_TRUE +MAINT +MAINTAINER_MODE_FALSE +MAINTAINER_MODE_TRUE +PRTDIAG +CXXCPP +CPP +LT_SYS_LIBRARY_PATH +OTOOL64 +OTOOL +LIPO +NMEDIT +DSYMUTIL +MANIFEST_TOOL +RANLIB +ac_ct_AR +AR +DLLTOOL +OBJDUMP +LN_S +NM +ac_ct_DUMPBIN +DUMPBIN +LD +FGREP +EGREP +GREP +SED +LIBTOOL +am__fastdepCCAS_FALSE +am__fastdepCCAS_TRUE +CCASDEPMODE +CCASFLAGS +CCAS +am__fastdepCXX_FALSE +am__fastdepCXX_TRUE +CXXDEPMODE +ac_ct_CXX +CXXFLAGS +CXX +am__fastdepCC_FALSE +am__fastdepCC_TRUE +CCDEPMODE +am__nodep +AMDEPBACKSLASH +AMDEP_FALSE +AMDEP_TRUE +am__quote +am__include +DEPDIR +OBJEXT +EXEEXT +ac_ct_CC +CPPFLAGS +LDFLAGS +CFLAGS +CC +AM_BACKSLASH +AM_DEFAULT_VERBOSITY +AM_DEFAULT_V +AM_V +am__untar +am__tar +AMTAR +am__leading_dot +SET_MAKE +AWK +mkdir_p +MKDIR_P +INSTALL_STRIP_PROGRAM +STRIP +install_sh +MAKEINFO +AUTOHEADER +AUTOMAKE +AUTOCONF +ACLOCAL +VERSION +PACKAGE +CYGPATH_W +am__isrc +INSTALL_DATA +INSTALL_SCRIPT +INSTALL_PROGRAM +ax_enable_builddir_sed +target_os +target_vendor +target_cpu +target +host_os +host_vendor +host_cpu +host +build_os +build_vendor +build_cpu +build +target_alias +host_alias +build_alias +LIBS +ECHO_T +ECHO_N +ECHO_C +DEFS +mandir +localedir +libdir +psdir +pdfdir +dvidir +htmldir +infodir +docdir +oldincludedir +includedir +runstatedir +localstatedir +sharedstatedir +sysconfdir +datadir +datarootdir +libexecdir +sbindir +bindir +program_transform_name +prefix +exec_prefix +PACKAGE_URL +PACKAGE_BUGREPORT +PACKAGE_STRING +PACKAGE_VERSION +PACKAGE_TARNAME +PACKAGE_NAME +PATH_SEPARATOR +SHELL' +ac_subst_files='' +ac_user_opts=' +enable_option_checking +enable_builddir +enable_silent_rules +enable_dependency_tracking +enable_shared +enable_static +with_pic +enable_fast_install +with_aix_soname +with_gnu_ld +with_sysroot +enable_libtool_lock +enable_portable_binary +with_gcc_arch +enable_maintainer_mode +enable_pax_emutramp +enable_docs +enable_debug +enable_structs +enable_raw_api +enable_purify_safety +enable_multi_os_directory +enable_symvers +' + ac_precious_vars='build_alias +host_alias +target_alias +CCAS +CCASFLAGS +LT_SYS_LIBRARY_PATH +CPP +CPPFLAGS +CXXCPP' + + +# Initialize some variables set by options. +ac_init_help= +ac_init_version=false +ac_unrecognized_opts= +ac_unrecognized_sep= +# The variables have the same names as the options, with +# dashes changed to underlines. +cache_file=/dev/null +exec_prefix=NONE +no_create= +no_recursion= +prefix=NONE +program_prefix=NONE +program_suffix=NONE +program_transform_name=s,x,x, +silent= +site= +srcdir= +verbose= +x_includes=NONE +x_libraries=NONE + +# Installation directory options. +# These are left unexpanded so users can "make install exec_prefix=/foo" +# and all the variables that are supposed to be based on exec_prefix +# by default will actually change. +# Use braces instead of parens because sh, perl, etc. also accept them. +# (The list follows the same order as the GNU Coding Standards.) +bindir='${exec_prefix}/bin' +sbindir='${exec_prefix}/sbin' +libexecdir='${exec_prefix}/libexec' +datarootdir='${prefix}/share' +datadir='${datarootdir}' +sysconfdir='${prefix}/etc' +sharedstatedir='${prefix}/com' +localstatedir='${prefix}/var' +runstatedir='${localstatedir}/run' +includedir='${prefix}/include' +oldincludedir='/usr/include' +docdir='${datarootdir}/doc/${PACKAGE_TARNAME}' +infodir='${datarootdir}/info' +htmldir='${docdir}' +dvidir='${docdir}' +pdfdir='${docdir}' +psdir='${docdir}' +libdir='${exec_prefix}/lib' +localedir='${datarootdir}/locale' +mandir='${datarootdir}/man' + +ac_prev= +ac_dashdash= +for ac_option +do + # If the previous option needs an argument, assign it. + if test -n "$ac_prev"; then + eval $ac_prev=\$ac_option + ac_prev= + continue + fi + + case $ac_option in + *=?*) ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;; + *=) ac_optarg= ;; + *) ac_optarg=yes ;; + esac + + # Accept the important Cygnus configure options, so we can diagnose typos. + + case $ac_dashdash$ac_option in + --) + ac_dashdash=yes ;; + + -bindir | --bindir | --bindi | --bind | --bin | --bi) + ac_prev=bindir ;; + -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*) + bindir=$ac_optarg ;; + + -build | --build | --buil | --bui | --bu) + ac_prev=build_alias ;; + -build=* | --build=* | --buil=* | --bui=* | --bu=*) + build_alias=$ac_optarg ;; + + -cache-file | --cache-file | --cache-fil | --cache-fi \ + | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c) + ac_prev=cache_file ;; + -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \ + | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*) + cache_file=$ac_optarg ;; + + --config-cache | -C) + cache_file=config.cache ;; + + -datadir | --datadir | --datadi | --datad) + ac_prev=datadir ;; + -datadir=* | --datadir=* | --datadi=* | --datad=*) + datadir=$ac_optarg ;; + + -datarootdir | --datarootdir | --datarootdi | --datarootd | --dataroot \ + | --dataroo | --dataro | --datar) + ac_prev=datarootdir ;; + -datarootdir=* | --datarootdir=* | --datarootdi=* | --datarootd=* \ + | --dataroot=* | --dataroo=* | --dataro=* | --datar=*) + datarootdir=$ac_optarg ;; + + -disable-* | --disable-*) + ac_useropt=`expr "x$ac_option" : 'x-*disable-\(.*\)'` + # Reject names that are not valid shell variable names. + expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && + as_fn_error $? "invalid feature name: $ac_useropt" + ac_useropt_orig=$ac_useropt + ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` + case $ac_user_opts in + *" +"enable_$ac_useropt" +"*) ;; + *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--disable-$ac_useropt_orig" + ac_unrecognized_sep=', ';; + esac + eval enable_$ac_useropt=no ;; + + -docdir | --docdir | --docdi | --doc | --do) + ac_prev=docdir ;; + -docdir=* | --docdir=* | --docdi=* | --doc=* | --do=*) + docdir=$ac_optarg ;; + + -dvidir | --dvidir | --dvidi | --dvid | --dvi | --dv) + ac_prev=dvidir ;; + -dvidir=* | --dvidir=* | --dvidi=* | --dvid=* | --dvi=* | --dv=*) + dvidir=$ac_optarg ;; + + -enable-* | --enable-*) + ac_useropt=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'` + # Reject names that are not valid shell variable names. + expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && + as_fn_error $? "invalid feature name: $ac_useropt" + ac_useropt_orig=$ac_useropt + ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` + case $ac_user_opts in + *" +"enable_$ac_useropt" +"*) ;; + *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--enable-$ac_useropt_orig" + ac_unrecognized_sep=', ';; + esac + eval enable_$ac_useropt=\$ac_optarg ;; + + -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \ + | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \ + | --exec | --exe | --ex) + ac_prev=exec_prefix ;; + -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \ + | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \ + | --exec=* | --exe=* | --ex=*) + exec_prefix=$ac_optarg ;; + + -gas | --gas | --ga | --g) + # Obsolete; use --with-gas. + with_gas=yes ;; + + -help | --help | --hel | --he | -h) + ac_init_help=long ;; + -help=r* | --help=r* | --hel=r* | --he=r* | -hr*) + ac_init_help=recursive ;; + -help=s* | --help=s* | --hel=s* | --he=s* | -hs*) + ac_init_help=short ;; + + -host | --host | --hos | --ho) + ac_prev=host_alias ;; + -host=* | --host=* | --hos=* | --ho=*) + host_alias=$ac_optarg ;; + + -htmldir | --htmldir | --htmldi | --htmld | --html | --htm | --ht) + ac_prev=htmldir ;; + -htmldir=* | --htmldir=* | --htmldi=* | --htmld=* | --html=* | --htm=* \ + | --ht=*) + htmldir=$ac_optarg ;; + + -includedir | --includedir | --includedi | --included | --include \ + | --includ | --inclu | --incl | --inc) + ac_prev=includedir ;; + -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \ + | --includ=* | --inclu=* | --incl=* | --inc=*) + includedir=$ac_optarg ;; + + -infodir | --infodir | --infodi | --infod | --info | --inf) + ac_prev=infodir ;; + -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*) + infodir=$ac_optarg ;; + + -libdir | --libdir | --libdi | --libd) + ac_prev=libdir ;; + -libdir=* | --libdir=* | --libdi=* | --libd=*) + libdir=$ac_optarg ;; + + -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \ + | --libexe | --libex | --libe) + ac_prev=libexecdir ;; + -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \ + | --libexe=* | --libex=* | --libe=*) + libexecdir=$ac_optarg ;; + + -localedir | --localedir | --localedi | --localed | --locale) + ac_prev=localedir ;; + -localedir=* | --localedir=* | --localedi=* | --localed=* | --locale=*) + localedir=$ac_optarg ;; + + -localstatedir | --localstatedir | --localstatedi | --localstated \ + | --localstate | --localstat | --localsta | --localst | --locals) + ac_prev=localstatedir ;; + -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \ + | --localstate=* | --localstat=* | --localsta=* | --localst=* | --locals=*) + localstatedir=$ac_optarg ;; + + -mandir | --mandir | --mandi | --mand | --man | --ma | --m) + ac_prev=mandir ;; + -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*) + mandir=$ac_optarg ;; + + -nfp | --nfp | --nf) + # Obsolete; use --without-fp. + with_fp=no ;; + + -no-create | --no-create | --no-creat | --no-crea | --no-cre \ + | --no-cr | --no-c | -n) + no_create=yes ;; + + -no-recursion | --no-recursion | --no-recursio | --no-recursi \ + | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) + no_recursion=yes ;; + + -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \ + | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \ + | --oldin | --oldi | --old | --ol | --o) + ac_prev=oldincludedir ;; + -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \ + | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \ + | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*) + oldincludedir=$ac_optarg ;; + + -prefix | --prefix | --prefi | --pref | --pre | --pr | --p) + ac_prev=prefix ;; + -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*) + prefix=$ac_optarg ;; + + -program-prefix | --program-prefix | --program-prefi | --program-pref \ + | --program-pre | --program-pr | --program-p) + ac_prev=program_prefix ;; + -program-prefix=* | --program-prefix=* | --program-prefi=* \ + | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*) + program_prefix=$ac_optarg ;; + + -program-suffix | --program-suffix | --program-suffi | --program-suff \ + | --program-suf | --program-su | --program-s) + ac_prev=program_suffix ;; + -program-suffix=* | --program-suffix=* | --program-suffi=* \ + | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*) + program_suffix=$ac_optarg ;; + + -program-transform-name | --program-transform-name \ + | --program-transform-nam | --program-transform-na \ + | --program-transform-n | --program-transform- \ + | --program-transform | --program-transfor \ + | --program-transfo | --program-transf \ + | --program-trans | --program-tran \ + | --progr-tra | --program-tr | --program-t) + ac_prev=program_transform_name ;; + -program-transform-name=* | --program-transform-name=* \ + | --program-transform-nam=* | --program-transform-na=* \ + | --program-transform-n=* | --program-transform-=* \ + | --program-transform=* | --program-transfor=* \ + | --program-transfo=* | --program-transf=* \ + | --program-trans=* | --program-tran=* \ + | --progr-tra=* | --program-tr=* | --program-t=*) + program_transform_name=$ac_optarg ;; + + -pdfdir | --pdfdir | --pdfdi | --pdfd | --pdf | --pd) + ac_prev=pdfdir ;; + -pdfdir=* | --pdfdir=* | --pdfdi=* | --pdfd=* | --pdf=* | --pd=*) + pdfdir=$ac_optarg ;; + + -psdir | --psdir | --psdi | --psd | --ps) + ac_prev=psdir ;; + -psdir=* | --psdir=* | --psdi=* | --psd=* | --ps=*) + psdir=$ac_optarg ;; + + -q | -quiet | --quiet | --quie | --qui | --qu | --q \ + | -silent | --silent | --silen | --sile | --sil) + silent=yes ;; + + -runstatedir | --runstatedir | --runstatedi | --runstated \ + | --runstate | --runstat | --runsta | --runst | --runs \ + | --run | --ru | --r) + ac_prev=runstatedir ;; + -runstatedir=* | --runstatedir=* | --runstatedi=* | --runstated=* \ + | --runstate=* | --runstat=* | --runsta=* | --runst=* | --runs=* \ + | --run=* | --ru=* | --r=*) + runstatedir=$ac_optarg ;; + + -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb) + ac_prev=sbindir ;; + -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \ + | --sbi=* | --sb=*) + sbindir=$ac_optarg ;; + + -sharedstatedir | --sharedstatedir | --sharedstatedi \ + | --sharedstated | --sharedstate | --sharedstat | --sharedsta \ + | --sharedst | --shareds | --shared | --share | --shar \ + | --sha | --sh) + ac_prev=sharedstatedir ;; + -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \ + | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \ + | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \ + | --sha=* | --sh=*) + sharedstatedir=$ac_optarg ;; + + -site | --site | --sit) + ac_prev=site ;; + -site=* | --site=* | --sit=*) + site=$ac_optarg ;; + + -srcdir | --srcdir | --srcdi | --srcd | --src | --sr) + ac_prev=srcdir ;; + -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*) + srcdir=$ac_optarg ;; + + -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \ + | --syscon | --sysco | --sysc | --sys | --sy) + ac_prev=sysconfdir ;; + -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \ + | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*) + sysconfdir=$ac_optarg ;; + + -target | --target | --targe | --targ | --tar | --ta | --t) + ac_prev=target_alias ;; + -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*) + target_alias=$ac_optarg ;; + + -v | -verbose | --verbose | --verbos | --verbo | --verb) + verbose=yes ;; + + -version | --version | --versio | --versi | --vers | -V) + ac_init_version=: ;; + + -with-* | --with-*) + ac_useropt=`expr "x$ac_option" : 'x-*with-\([^=]*\)'` + # Reject names that are not valid shell variable names. + expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && + as_fn_error $? "invalid package name: $ac_useropt" + ac_useropt_orig=$ac_useropt + ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` + case $ac_user_opts in + *" +"with_$ac_useropt" +"*) ;; + *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--with-$ac_useropt_orig" + ac_unrecognized_sep=', ';; + esac + eval with_$ac_useropt=\$ac_optarg ;; + + -without-* | --without-*) + ac_useropt=`expr "x$ac_option" : 'x-*without-\(.*\)'` + # Reject names that are not valid shell variable names. + expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && + as_fn_error $? "invalid package name: $ac_useropt" + ac_useropt_orig=$ac_useropt + ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` + case $ac_user_opts in + *" +"with_$ac_useropt" +"*) ;; + *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--without-$ac_useropt_orig" + ac_unrecognized_sep=', ';; + esac + eval with_$ac_useropt=no ;; + + --x) + # Obsolete; use --with-x. + with_x=yes ;; + + -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \ + | --x-incl | --x-inc | --x-in | --x-i) + ac_prev=x_includes ;; + -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \ + | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*) + x_includes=$ac_optarg ;; + + -x-libraries | --x-libraries | --x-librarie | --x-librari \ + | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l) + ac_prev=x_libraries ;; + -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \ + | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*) + x_libraries=$ac_optarg ;; + + -*) as_fn_error $? "unrecognized option: \`$ac_option' +Try \`$0 --help' for more information" + ;; + + *=*) + ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='` + # Reject names that are not valid shell variable names. + case $ac_envvar in #( + '' | [0-9]* | *[!_$as_cr_alnum]* ) + as_fn_error $? "invalid variable name: \`$ac_envvar'" ;; + esac + eval $ac_envvar=\$ac_optarg + export $ac_envvar ;; + + *) + # FIXME: should be removed in autoconf 3.0. + $as_echo "$as_me: WARNING: you should use --build, --host, --target" >&2 + expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null && + $as_echo "$as_me: WARNING: invalid host type: $ac_option" >&2 + : "${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}" + ;; + + esac +done + +if test -n "$ac_prev"; then + ac_option=--`echo $ac_prev | sed 's/_/-/g'` + as_fn_error $? "missing argument to $ac_option" +fi + +if test -n "$ac_unrecognized_opts"; then + case $enable_option_checking in + no) ;; + fatal) as_fn_error $? "unrecognized options: $ac_unrecognized_opts" ;; + *) $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;; + esac +fi + +# Check all directory arguments for consistency. +for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \ + datadir sysconfdir sharedstatedir localstatedir includedir \ + oldincludedir docdir infodir htmldir dvidir pdfdir psdir \ + libdir localedir mandir runstatedir +do + eval ac_val=\$$ac_var + # Remove trailing slashes. + case $ac_val in + */ ) + ac_val=`expr "X$ac_val" : 'X\(.*[^/]\)' \| "X$ac_val" : 'X\(.*\)'` + eval $ac_var=\$ac_val;; + esac + # Be sure to have absolute directory names. + case $ac_val in + [\\/$]* | ?:[\\/]* ) continue;; + NONE | '' ) case $ac_var in *prefix ) continue;; esac;; + esac + as_fn_error $? "expected an absolute directory name for --$ac_var: $ac_val" +done + +# There might be people who depend on the old broken behavior: `$host' +# used to hold the argument of --host etc. +# FIXME: To remove some day. +build=$build_alias +host=$host_alias +target=$target_alias + +# FIXME: To remove some day. +if test "x$host_alias" != x; then + if test "x$build_alias" = x; then + cross_compiling=maybe + elif test "x$build_alias" != "x$host_alias"; then + cross_compiling=yes + fi +fi + +ac_tool_prefix= +test -n "$host_alias" && ac_tool_prefix=$host_alias- + +test "$silent" = yes && exec 6>/dev/null + + +ac_pwd=`pwd` && test -n "$ac_pwd" && +ac_ls_di=`ls -di .` && +ac_pwd_ls_di=`cd "$ac_pwd" && ls -di .` || + as_fn_error $? "working directory cannot be determined" +test "X$ac_ls_di" = "X$ac_pwd_ls_di" || + as_fn_error $? "pwd does not report name of working directory" + + +# Find the source files, if location was not specified. +if test -z "$srcdir"; then + ac_srcdir_defaulted=yes + # Try the directory containing this script, then the parent directory. + ac_confdir=`$as_dirname -- "$as_myself" || +$as_expr X"$as_myself" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$as_myself" : 'X\(//\)[^/]' \| \ + X"$as_myself" : 'X\(//\)$' \| \ + X"$as_myself" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X"$as_myself" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + srcdir=$ac_confdir + if test ! -r "$srcdir/$ac_unique_file"; then + srcdir=.. + fi +else + ac_srcdir_defaulted=no +fi +if test ! -r "$srcdir/$ac_unique_file"; then + test "$ac_srcdir_defaulted" = yes && srcdir="$ac_confdir or .." + as_fn_error $? "cannot find sources ($ac_unique_file) in $srcdir" +fi +ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work" +ac_abs_confdir=`( + cd "$srcdir" && test -r "./$ac_unique_file" || as_fn_error $? "$ac_msg" + pwd)` +# When building in place, set srcdir=. +if test "$ac_abs_confdir" = "$ac_pwd"; then + srcdir=. +fi +# Remove unnecessary trailing slashes from srcdir. +# Double slashes in file names in object file debugging info +# mess up M-x gdb in Emacs. +case $srcdir in +*/) srcdir=`expr "X$srcdir" : 'X\(.*[^/]\)' \| "X$srcdir" : 'X\(.*\)'`;; +esac +for ac_var in $ac_precious_vars; do + eval ac_env_${ac_var}_set=\${${ac_var}+set} + eval ac_env_${ac_var}_value=\$${ac_var} + eval ac_cv_env_${ac_var}_set=\${${ac_var}+set} + eval ac_cv_env_${ac_var}_value=\$${ac_var} +done + +# +# Report the --help message. +# +if test "$ac_init_help" = "long"; then + # Omit some internal or obsolete options to make the list less imposing. + # This message is too long to be a string in the A/UX 3.1 sh. + cat <<_ACEOF +\`configure' configures libffi 3.99999 to adapt to many kinds of systems. + +Usage: $0 [OPTION]... [VAR=VALUE]... + +To assign environment variables (e.g., CC, CFLAGS...), specify them as +VAR=VALUE. See below for descriptions of some of the useful variables. + +Defaults for the options are specified in brackets. + +Configuration: + -h, --help display this help and exit + --help=short display options specific to this package + --help=recursive display the short help of all the included packages + -V, --version display version information and exit + -q, --quiet, --silent do not print \`checking ...' messages + --cache-file=FILE cache test results in FILE [disabled] + -C, --config-cache alias for \`--cache-file=config.cache' + -n, --no-create do not create output files + --srcdir=DIR find the sources in DIR [configure dir or \`..'] + +Installation directories: + --prefix=PREFIX install architecture-independent files in PREFIX + [$ac_default_prefix] + --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX + [PREFIX] + +By default, \`make install' will install all the files in +\`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify +an installation prefix other than \`$ac_default_prefix' using \`--prefix', +for instance \`--prefix=\$HOME'. + +For better control, use the options below. + +Fine tuning of the installation directories: + --bindir=DIR user executables [EPREFIX/bin] + --sbindir=DIR system admin executables [EPREFIX/sbin] + --libexecdir=DIR program executables [EPREFIX/libexec] + --sysconfdir=DIR read-only single-machine data [PREFIX/etc] + --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] + --localstatedir=DIR modifiable single-machine data [PREFIX/var] + --runstatedir=DIR modifiable per-process data [LOCALSTATEDIR/run] + --libdir=DIR object code libraries [EPREFIX/lib] + --includedir=DIR C header files [PREFIX/include] + --oldincludedir=DIR C header files for non-gcc [/usr/include] + --datarootdir=DIR read-only arch.-independent data root [PREFIX/share] + --datadir=DIR read-only architecture-independent data [DATAROOTDIR] + --infodir=DIR info documentation [DATAROOTDIR/info] + --localedir=DIR locale-dependent data [DATAROOTDIR/locale] + --mandir=DIR man documentation [DATAROOTDIR/man] + --docdir=DIR documentation root [DATAROOTDIR/doc/libffi] + --htmldir=DIR html documentation [DOCDIR] + --dvidir=DIR dvi documentation [DOCDIR] + --pdfdir=DIR pdf documentation [DOCDIR] + --psdir=DIR ps documentation [DOCDIR] +_ACEOF + + cat <<\_ACEOF + +Program names: + --program-prefix=PREFIX prepend PREFIX to installed program names + --program-suffix=SUFFIX append SUFFIX to installed program names + --program-transform-name=PROGRAM run sed PROGRAM on installed program names + +System types: + --build=BUILD configure for building on BUILD [guessed] + --host=HOST cross-compile to build programs to run on HOST [BUILD] + --target=TARGET configure for building compilers for TARGET [HOST] +_ACEOF +fi + +if test -n "$ac_init_help"; then + case $ac_init_help in + short | recursive ) echo "Configuration of libffi 3.99999:";; + esac + cat <<\_ACEOF + +Optional Features: + --disable-option-checking ignore unrecognized --enable/--with options + --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no) + --enable-FEATURE[=ARG] include FEATURE [ARG=yes] + --disable-builddir disable automatic build in subdir of sources + + --enable-silent-rules less verbose build output (undo: "make V=1") + --disable-silent-rules verbose build output (undo: "make V=0") + --enable-dependency-tracking + do not reject slow dependency extractors + --disable-dependency-tracking + speeds up one-time build + --enable-shared[=PKGS] build shared libraries [default=yes] + --enable-static[=PKGS] build static libraries [default=yes] + --enable-fast-install[=PKGS] + optimize for fast installation [default=yes] + --disable-libtool-lock avoid locking (might break parallel builds) + --enable-portable-binary + disable compiler optimizations that would produce + unportable binaries + --enable-maintainer-mode + enable make rules and dependencies not useful (and + sometimes confusing) to the casual installer + --enable-pax_emutramp enable pax emulated trampolines, for we can't use PROT_EXEC + --disable-docs Disable building of docs (default: no) + --enable-debug debugging mode + --disable-structs omit code for struct support + --disable-raw-api make the raw api unavailable + --enable-purify-safety purify-safe mode + --disable-multi-os-directory + disable use of gcc --print-multi-os-directory to change the library installation directory + --enable-symvers=STYLE enables symbol versioning of the shared library + [default=yes] + +Optional Packages: + --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] + --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) + --with-pic[=PKGS] try to use only PIC/non-PIC objects [default=use + both] + --with-aix-soname=aix|svr4|both + shared library versioning (aka "SONAME") variant to + provide on AIX, [default=aix]. + --with-gnu-ld assume the C compiler uses GNU ld [default=no] + --with-sysroot[=DIR] Search for dependent libraries within DIR (or the + compiler's sysroot if not specified). + --with-gcc-arch= use architecture for gcc -march/-mtune, + instead of guessing + +Some influential environment variables: + CC C compiler command + CFLAGS C compiler flags + LDFLAGS linker flags, e.g. -L if you have libraries in a + nonstandard directory + LIBS libraries to pass to the linker, e.g. -l + CPPFLAGS (Objective) C/C++ preprocessor flags, e.g. -I if + you have headers in a nonstandard directory + CXX C++ compiler command + CXXFLAGS C++ compiler flags + CCAS assembler compiler command (defaults to CC) + CCASFLAGS assembler compiler flags (defaults to CFLAGS) + LT_SYS_LIBRARY_PATH + User-defined run-time library search path. + CPP C preprocessor + CXXCPP C++ preprocessor + +Use these variables to override the choices made by `configure' or to help +it to find libraries and programs with nonstandard names/locations. + +Report bugs to . +_ACEOF +ac_status=$? +fi + +if test "$ac_init_help" = "recursive"; then + # If there are subdirs, report their specific --help. + for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue + test -d "$ac_dir" || + { cd "$srcdir" && ac_pwd=`pwd` && srcdir=. && test -d "$ac_dir"; } || + continue + ac_builddir=. + +case "$ac_dir" in +.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; +*) + ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'` + # A ".." for each directory in $ac_dir_suffix. + ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'` + case $ac_top_builddir_sub in + "") ac_top_builddir_sub=. ac_top_build_prefix= ;; + *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; + esac ;; +esac +ac_abs_top_builddir=$ac_pwd +ac_abs_builddir=$ac_pwd$ac_dir_suffix +# for backward compatibility: +ac_top_builddir=$ac_top_build_prefix + +case $srcdir in + .) # We are building in place. + ac_srcdir=. + ac_top_srcdir=$ac_top_builddir_sub + ac_abs_top_srcdir=$ac_pwd ;; + [\\/]* | ?:[\\/]* ) # Absolute name. + ac_srcdir=$srcdir$ac_dir_suffix; + ac_top_srcdir=$srcdir + ac_abs_top_srcdir=$srcdir ;; + *) # Relative name. + ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix + ac_top_srcdir=$ac_top_build_prefix$srcdir + ac_abs_top_srcdir=$ac_pwd/$srcdir ;; +esac +ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix + + cd "$ac_dir" || { ac_status=$?; continue; } + # Check for guested configure. + if test -f "$ac_srcdir/configure.gnu"; then + echo && + $SHELL "$ac_srcdir/configure.gnu" --help=recursive + elif test -f "$ac_srcdir/configure"; then + echo && + $SHELL "$ac_srcdir/configure" --help=recursive + else + $as_echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2 + fi || ac_status=$? + cd "$ac_pwd" || { ac_status=$?; break; } + done +fi + +test -n "$ac_init_help" && exit $ac_status +if $ac_init_version; then + cat <<\_ACEOF +libffi configure 3.99999 +generated by GNU Autoconf 2.69 + +Copyright (C) 2012 Free Software Foundation, Inc. +This configure script is free software; the Free Software Foundation +gives unlimited permission to copy, distribute and modify it. +_ACEOF + exit +fi + +## ------------------------ ## +## Autoconf initialization. ## +## ------------------------ ## + +# ac_fn_c_try_compile LINENO +# -------------------------- +# Try to compile conftest.$ac_ext, and return whether this succeeded. +ac_fn_c_try_compile () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + rm -f conftest.$ac_objext + if { { ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_compile") 2>conftest.err + ac_status=$? + if test -s conftest.err; then + grep -v '^ *+' conftest.err >conftest.er1 + cat conftest.er1 >&5 + mv -f conftest.er1 conftest.err + fi + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then : + ac_retval=0 +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_retval=1 +fi + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + as_fn_set_status $ac_retval + +} # ac_fn_c_try_compile + +# ac_fn_cxx_try_compile LINENO +# ---------------------------- +# Try to compile conftest.$ac_ext, and return whether this succeeded. +ac_fn_cxx_try_compile () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + rm -f conftest.$ac_objext + if { { ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_compile") 2>conftest.err + ac_status=$? + if test -s conftest.err; then + grep -v '^ *+' conftest.err >conftest.er1 + cat conftest.er1 >&5 + mv -f conftest.er1 conftest.err + fi + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && { + test -z "$ac_cxx_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then : + ac_retval=0 +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_retval=1 +fi + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + as_fn_set_status $ac_retval + +} # ac_fn_cxx_try_compile + +# ac_fn_c_try_link LINENO +# ----------------------- +# Try to link conftest.$ac_ext, and return whether this succeeded. +ac_fn_c_try_link () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + rm -f conftest.$ac_objext conftest$ac_exeext + if { { ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_link") 2>conftest.err + ac_status=$? + if test -s conftest.err; then + grep -v '^ *+' conftest.err >conftest.er1 + cat conftest.er1 >&5 + mv -f conftest.er1 conftest.err + fi + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + test -x conftest$ac_exeext + }; then : + ac_retval=0 +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_retval=1 +fi + # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information + # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would + # interfere with the next link command; also delete a directory that is + # left behind by Apple's compiler. We do this before executing the actions. + rm -rf conftest.dSYM conftest_ipa8_conftest.oo + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + as_fn_set_status $ac_retval + +} # ac_fn_c_try_link + +# ac_fn_c_check_header_compile LINENO HEADER VAR INCLUDES +# ------------------------------------------------------- +# Tests whether HEADER exists and can be compiled using the include files in +# INCLUDES, setting the cache variable VAR accordingly. +ac_fn_c_check_header_compile () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 +$as_echo_n "checking for $2... " >&6; } +if eval \${$3+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +$4 +#include <$2> +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + eval "$3=yes" +else + eval "$3=no" +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +eval ac_res=\$$3 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + +} # ac_fn_c_check_header_compile + +# ac_fn_c_try_cpp LINENO +# ---------------------- +# Try to preprocess conftest.$ac_ext, and return whether this succeeded. +ac_fn_c_try_cpp () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + if { { ac_try="$ac_cpp conftest.$ac_ext" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err + ac_status=$? + if test -s conftest.err; then + grep -v '^ *+' conftest.err >conftest.er1 + cat conftest.er1 >&5 + mv -f conftest.er1 conftest.err + fi + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } > conftest.i && { + test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || + test ! -s conftest.err + }; then : + ac_retval=0 +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_retval=1 +fi + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + as_fn_set_status $ac_retval + +} # ac_fn_c_try_cpp + +# ac_fn_c_try_run LINENO +# ---------------------- +# Try to link conftest.$ac_ext, and return whether this succeeded. Assumes +# that executables *can* be run. +ac_fn_c_try_run () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + if { { ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && { ac_try='./conftest$ac_exeext' + { { case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; }; then : + ac_retval=0 +else + $as_echo "$as_me: program exited with status $ac_status" >&5 + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_retval=$ac_status +fi + rm -rf conftest.dSYM conftest_ipa8_conftest.oo + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + as_fn_set_status $ac_retval + +} # ac_fn_c_try_run + +# ac_fn_c_check_func LINENO FUNC VAR +# ---------------------------------- +# Tests whether FUNC exists, setting the cache variable VAR accordingly +ac_fn_c_check_func () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 +$as_echo_n "checking for $2... " >&6; } +if eval \${$3+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +/* Define $2 to an innocuous variant, in case declares $2. + For example, HP-UX 11i declares gettimeofday. */ +#define $2 innocuous_$2 + +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char $2 (); below. + Prefer to if __STDC__ is defined, since + exists even on freestanding compilers. */ + +#ifdef __STDC__ +# include +#else +# include +#endif + +#undef $2 + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char $2 (); +/* The GNU C library defines this for functions which it implements + to always fail with ENOSYS. Some functions are actually named + something starting with __ and the normal name is an alias. */ +#if defined __stub_$2 || defined __stub___$2 +choke me +#endif + +int +main () +{ +return $2 (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + eval "$3=yes" +else + eval "$3=no" +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +fi +eval ac_res=\$$3 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + +} # ac_fn_c_check_func + +# ac_fn_cxx_try_cpp LINENO +# ------------------------ +# Try to preprocess conftest.$ac_ext, and return whether this succeeded. +ac_fn_cxx_try_cpp () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + if { { ac_try="$ac_cpp conftest.$ac_ext" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err + ac_status=$? + if test -s conftest.err; then + grep -v '^ *+' conftest.err >conftest.er1 + cat conftest.er1 >&5 + mv -f conftest.er1 conftest.err + fi + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } > conftest.i && { + test -z "$ac_cxx_preproc_warn_flag$ac_cxx_werror_flag" || + test ! -s conftest.err + }; then : + ac_retval=0 +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_retval=1 +fi + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + as_fn_set_status $ac_retval + +} # ac_fn_cxx_try_cpp + +# ac_fn_cxx_try_link LINENO +# ------------------------- +# Try to link conftest.$ac_ext, and return whether this succeeded. +ac_fn_cxx_try_link () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + rm -f conftest.$ac_objext conftest$ac_exeext + if { { ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_link") 2>conftest.err + ac_status=$? + if test -s conftest.err; then + grep -v '^ *+' conftest.err >conftest.er1 + cat conftest.er1 >&5 + mv -f conftest.er1 conftest.err + fi + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && { + test -z "$ac_cxx_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + test -x conftest$ac_exeext + }; then : + ac_retval=0 +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_retval=1 +fi + # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information + # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would + # interfere with the next link command; also delete a directory that is + # left behind by Apple's compiler. We do this before executing the actions. + rm -rf conftest.dSYM conftest_ipa8_conftest.oo + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + as_fn_set_status $ac_retval + +} # ac_fn_cxx_try_link + +# ac_fn_c_compute_int LINENO EXPR VAR INCLUDES +# -------------------------------------------- +# Tries to find the compile-time value of EXPR in a program that includes +# INCLUDES, setting VAR accordingly. Returns whether the value could be +# computed +ac_fn_c_compute_int () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + if test "$cross_compiling" = yes; then + # Depending upon the size, compute the lo and hi bounds. +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +$4 +int +main () +{ +static int test_array [1 - 2 * !(($2) >= 0)]; +test_array [0] = 0; +return test_array [0]; + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_lo=0 ac_mid=0 + while :; do + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +$4 +int +main () +{ +static int test_array [1 - 2 * !(($2) <= $ac_mid)]; +test_array [0] = 0; +return test_array [0]; + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_hi=$ac_mid; break +else + as_fn_arith $ac_mid + 1 && ac_lo=$as_val + if test $ac_lo -le $ac_mid; then + ac_lo= ac_hi= + break + fi + as_fn_arith 2 '*' $ac_mid + 1 && ac_mid=$as_val +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + done +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +$4 +int +main () +{ +static int test_array [1 - 2 * !(($2) < 0)]; +test_array [0] = 0; +return test_array [0]; + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_hi=-1 ac_mid=-1 + while :; do + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +$4 +int +main () +{ +static int test_array [1 - 2 * !(($2) >= $ac_mid)]; +test_array [0] = 0; +return test_array [0]; + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_lo=$ac_mid; break +else + as_fn_arith '(' $ac_mid ')' - 1 && ac_hi=$as_val + if test $ac_mid -le $ac_hi; then + ac_lo= ac_hi= + break + fi + as_fn_arith 2 '*' $ac_mid && ac_mid=$as_val +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + done +else + ac_lo= ac_hi= +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +# Binary search between lo and hi bounds. +while test "x$ac_lo" != "x$ac_hi"; do + as_fn_arith '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo && ac_mid=$as_val + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +$4 +int +main () +{ +static int test_array [1 - 2 * !(($2) <= $ac_mid)]; +test_array [0] = 0; +return test_array [0]; + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_hi=$ac_mid +else + as_fn_arith '(' $ac_mid ')' + 1 && ac_lo=$as_val +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +done +case $ac_lo in #(( +?*) eval "$3=\$ac_lo"; ac_retval=0 ;; +'') ac_retval=1 ;; +esac + else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +$4 +static long int longval () { return $2; } +static unsigned long int ulongval () { return $2; } +#include +#include +int +main () +{ + + FILE *f = fopen ("conftest.val", "w"); + if (! f) + return 1; + if (($2) < 0) + { + long int i = longval (); + if (i != ($2)) + return 1; + fprintf (f, "%ld", i); + } + else + { + unsigned long int i = ulongval (); + if (i != ($2)) + return 1; + fprintf (f, "%lu", i); + } + /* Do not output a trailing newline, as this causes \r\n confusion + on some platforms. */ + return ferror (f) || fclose (f) != 0; + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + echo >>conftest.val; read $3 &5 +$as_echo_n "checking for $2... " >&6; } +if eval \${$3+:} false; then : + $as_echo_n "(cached) " >&6 +fi +eval ac_res=\$$3 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +else + # Is the header compilable? +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 usability" >&5 +$as_echo_n "checking $2 usability... " >&6; } +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +$4 +#include <$2> +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_header_compiler=yes +else + ac_header_compiler=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_compiler" >&5 +$as_echo "$ac_header_compiler" >&6; } + +# Is the header present? +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 presence" >&5 +$as_echo_n "checking $2 presence... " >&6; } +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include <$2> +_ACEOF +if ac_fn_c_try_cpp "$LINENO"; then : + ac_header_preproc=yes +else + ac_header_preproc=no +fi +rm -f conftest.err conftest.i conftest.$ac_ext +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_preproc" >&5 +$as_echo "$ac_header_preproc" >&6; } + +# So? What about this header? +case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in #(( + yes:no: ) + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&5 +$as_echo "$as_me: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5 +$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;} + ;; + no:yes:* ) + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: present but cannot be compiled" >&5 +$as_echo "$as_me: WARNING: $2: present but cannot be compiled" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: check for missing prerequisite headers?" >&5 +$as_echo "$as_me: WARNING: $2: check for missing prerequisite headers?" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: see the Autoconf documentation" >&5 +$as_echo "$as_me: WARNING: $2: see the Autoconf documentation" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&5 +$as_echo "$as_me: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5 +$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;} +( $as_echo "## ----------------------------------------------------- ## +## Report this to http://github.com/libffi/libffi/issues ## +## ----------------------------------------------------- ##" + ) | sed "s/^/$as_me: WARNING: /" >&2 + ;; +esac + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 +$as_echo_n "checking for $2... " >&6; } +if eval \${$3+:} false; then : + $as_echo_n "(cached) " >&6 +else + eval "$3=\$ac_header_compiler" +fi +eval ac_res=\$$3 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +fi + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + +} # ac_fn_c_check_header_mongrel + +# ac_fn_c_check_type LINENO TYPE VAR INCLUDES +# ------------------------------------------- +# Tests whether TYPE exists after having included INCLUDES, setting cache +# variable VAR accordingly. +ac_fn_c_check_type () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 +$as_echo_n "checking for $2... " >&6; } +if eval \${$3+:} false; then : + $as_echo_n "(cached) " >&6 +else + eval "$3=no" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +$4 +int +main () +{ +if (sizeof ($2)) + return 0; + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +$4 +int +main () +{ +if (sizeof (($2))) + return 0; + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + +else + eval "$3=yes" +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +eval ac_res=\$$3 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + +} # ac_fn_c_check_type +cat >config.log <<_ACEOF +This file contains any messages produced by compilers while +running configure, to aid debugging if configure makes a mistake. + +It was created by libffi $as_me 3.99999, which was +generated by GNU Autoconf 2.69. Invocation command line was + + $ $0 $@ + +_ACEOF +exec 5>>config.log +{ +cat <<_ASUNAME +## --------- ## +## Platform. ## +## --------- ## + +hostname = `(hostname || uname -n) 2>/dev/null | sed 1q` +uname -m = `(uname -m) 2>/dev/null || echo unknown` +uname -r = `(uname -r) 2>/dev/null || echo unknown` +uname -s = `(uname -s) 2>/dev/null || echo unknown` +uname -v = `(uname -v) 2>/dev/null || echo unknown` + +/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown` +/bin/uname -X = `(/bin/uname -X) 2>/dev/null || echo unknown` + +/bin/arch = `(/bin/arch) 2>/dev/null || echo unknown` +/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null || echo unknown` +/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown` +/usr/bin/hostinfo = `(/usr/bin/hostinfo) 2>/dev/null || echo unknown` +/bin/machine = `(/bin/machine) 2>/dev/null || echo unknown` +/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null || echo unknown` +/bin/universe = `(/bin/universe) 2>/dev/null || echo unknown` + +_ASUNAME + +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + $as_echo "PATH: $as_dir" + done +IFS=$as_save_IFS + +} >&5 + +cat >&5 <<_ACEOF + + +## ----------- ## +## Core tests. ## +## ----------- ## + +_ACEOF + + +# Keep a trace of the command line. +# Strip out --no-create and --no-recursion so they do not pile up. +# Strip out --silent because we don't want to record it for future runs. +# Also quote any args containing shell meta-characters. +# Make two passes to allow for proper duplicate-argument suppression. +ac_configure_args= +ac_configure_args0= +ac_configure_args1= +ac_must_keep_next=false +for ac_pass in 1 2 +do + for ac_arg + do + case $ac_arg in + -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;; + -q | -quiet | --quiet | --quie | --qui | --qu | --q \ + | -silent | --silent | --silen | --sile | --sil) + continue ;; + *\'*) + ac_arg=`$as_echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;; + esac + case $ac_pass in + 1) as_fn_append ac_configure_args0 " '$ac_arg'" ;; + 2) + as_fn_append ac_configure_args1 " '$ac_arg'" + if test $ac_must_keep_next = true; then + ac_must_keep_next=false # Got value, back to normal. + else + case $ac_arg in + *=* | --config-cache | -C | -disable-* | --disable-* \ + | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \ + | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \ + | -with-* | --with-* | -without-* | --without-* | --x) + case "$ac_configure_args0 " in + "$ac_configure_args1"*" '$ac_arg' "* ) continue ;; + esac + ;; + -* ) ac_must_keep_next=true ;; + esac + fi + as_fn_append ac_configure_args " '$ac_arg'" + ;; + esac + done +done +{ ac_configure_args0=; unset ac_configure_args0;} +{ ac_configure_args1=; unset ac_configure_args1;} + +# When interrupted or exit'd, cleanup temporary files, and complete +# config.log. We remove comments because anyway the quotes in there +# would cause problems or look ugly. +# WARNING: Use '\'' to represent an apostrophe within the trap. +# WARNING: Do not start the trap code with a newline, due to a FreeBSD 4.0 bug. +trap 'exit_status=$? + # Save into config.log some information that might help in debugging. + { + echo + + $as_echo "## ---------------- ## +## Cache variables. ## +## ---------------- ##" + echo + # The following way of writing the cache mishandles newlines in values, +( + for ac_var in `(set) 2>&1 | sed -n '\''s/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'\''`; do + eval ac_val=\$$ac_var + case $ac_val in #( + *${as_nl}*) + case $ac_var in #( + *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5 +$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;; + esac + case $ac_var in #( + _ | IFS | as_nl) ;; #( + BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #( + *) { eval $ac_var=; unset $ac_var;} ;; + esac ;; + esac + done + (set) 2>&1 | + case $as_nl`(ac_space='\'' '\''; set) 2>&1` in #( + *${as_nl}ac_space=\ *) + sed -n \ + "s/'\''/'\''\\\\'\'''\''/g; + s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\''\\2'\''/p" + ;; #( + *) + sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p" + ;; + esac | + sort +) + echo + + $as_echo "## ----------------- ## +## Output variables. ## +## ----------------- ##" + echo + for ac_var in $ac_subst_vars + do + eval ac_val=\$$ac_var + case $ac_val in + *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; + esac + $as_echo "$ac_var='\''$ac_val'\''" + done | sort + echo + + if test -n "$ac_subst_files"; then + $as_echo "## ------------------- ## +## File substitutions. ## +## ------------------- ##" + echo + for ac_var in $ac_subst_files + do + eval ac_val=\$$ac_var + case $ac_val in + *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; + esac + $as_echo "$ac_var='\''$ac_val'\''" + done | sort + echo + fi + + if test -s confdefs.h; then + $as_echo "## ----------- ## +## confdefs.h. ## +## ----------- ##" + echo + cat confdefs.h + echo + fi + test "$ac_signal" != 0 && + $as_echo "$as_me: caught signal $ac_signal" + $as_echo "$as_me: exit $exit_status" + } >&5 + rm -f core *.core core.conftest.* && + rm -f -r conftest* confdefs* conf$$* $ac_clean_files && + exit $exit_status +' 0 +for ac_signal in 1 2 13 15; do + trap 'ac_signal='$ac_signal'; as_fn_exit 1' $ac_signal +done +ac_signal=0 + +# confdefs.h avoids OS command line length limits that DEFS can exceed. +rm -f -r conftest* confdefs.h + +$as_echo "/* confdefs.h */" > confdefs.h + +# Predefined preprocessor variables. + +cat >>confdefs.h <<_ACEOF +#define PACKAGE_NAME "$PACKAGE_NAME" +_ACEOF + +cat >>confdefs.h <<_ACEOF +#define PACKAGE_TARNAME "$PACKAGE_TARNAME" +_ACEOF + +cat >>confdefs.h <<_ACEOF +#define PACKAGE_VERSION "$PACKAGE_VERSION" +_ACEOF + +cat >>confdefs.h <<_ACEOF +#define PACKAGE_STRING "$PACKAGE_STRING" +_ACEOF + +cat >>confdefs.h <<_ACEOF +#define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT" +_ACEOF + +cat >>confdefs.h <<_ACEOF +#define PACKAGE_URL "$PACKAGE_URL" +_ACEOF + + +# Let the site file select an alternate cache file if it wants to. +# Prefer an explicitly selected file to automatically selected ones. +ac_site_file1=NONE +ac_site_file2=NONE +if test -n "$CONFIG_SITE"; then + # We do not want a PATH search for config.site. + case $CONFIG_SITE in #(( + -*) ac_site_file1=./$CONFIG_SITE;; + */*) ac_site_file1=$CONFIG_SITE;; + *) ac_site_file1=./$CONFIG_SITE;; + esac +elif test "x$prefix" != xNONE; then + ac_site_file1=$prefix/share/config.site + ac_site_file2=$prefix/etc/config.site +else + ac_site_file1=$ac_default_prefix/share/config.site + ac_site_file2=$ac_default_prefix/etc/config.site +fi +for ac_site_file in "$ac_site_file1" "$ac_site_file2" +do + test "x$ac_site_file" = xNONE && continue + if test /dev/null != "$ac_site_file" && test -r "$ac_site_file"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5 +$as_echo "$as_me: loading site script $ac_site_file" >&6;} + sed 's/^/| /' "$ac_site_file" >&5 + . "$ac_site_file" \ + || { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "failed to load site script $ac_site_file +See \`config.log' for more details" "$LINENO" 5; } + fi +done + +if test -r "$cache_file"; then + # Some versions of bash will fail to source /dev/null (special files + # actually), so we avoid doing that. DJGPP emulates it as a regular file. + if test /dev/null != "$cache_file" && test -f "$cache_file"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: loading cache $cache_file" >&5 +$as_echo "$as_me: loading cache $cache_file" >&6;} + case $cache_file in + [\\/]* | ?:[\\/]* ) . "$cache_file";; + *) . "./$cache_file";; + esac + fi +else + { $as_echo "$as_me:${as_lineno-$LINENO}: creating cache $cache_file" >&5 +$as_echo "$as_me: creating cache $cache_file" >&6;} + >$cache_file +fi + +# Check that the precious variables saved in the cache have kept the same +# value. +ac_cache_corrupted=false +for ac_var in $ac_precious_vars; do + eval ac_old_set=\$ac_cv_env_${ac_var}_set + eval ac_new_set=\$ac_env_${ac_var}_set + eval ac_old_val=\$ac_cv_env_${ac_var}_value + eval ac_new_val=\$ac_env_${ac_var}_value + case $ac_old_set,$ac_new_set in + set,) + { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5 +$as_echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;} + ac_cache_corrupted=: ;; + ,set) + { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was not set in the previous run" >&5 +$as_echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;} + ac_cache_corrupted=: ;; + ,);; + *) + if test "x$ac_old_val" != "x$ac_new_val"; then + # differences in whitespace do not lead to failure. + ac_old_val_w=`echo x $ac_old_val` + ac_new_val_w=`echo x $ac_new_val` + if test "$ac_old_val_w" != "$ac_new_val_w"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' has changed since the previous run:" >&5 +$as_echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;} + ac_cache_corrupted=: + else + { $as_echo "$as_me:${as_lineno-$LINENO}: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5 +$as_echo "$as_me: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&2;} + eval $ac_var=\$ac_old_val + fi + { $as_echo "$as_me:${as_lineno-$LINENO}: former value: \`$ac_old_val'" >&5 +$as_echo "$as_me: former value: \`$ac_old_val'" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: current value: \`$ac_new_val'" >&5 +$as_echo "$as_me: current value: \`$ac_new_val'" >&2;} + fi;; + esac + # Pass precious variables to config.status. + if test "$ac_new_set" = set; then + case $ac_new_val in + *\'*) ac_arg=$ac_var=`$as_echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;; + *) ac_arg=$ac_var=$ac_new_val ;; + esac + case " $ac_configure_args " in + *" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy. + *) as_fn_append ac_configure_args " '$ac_arg'" ;; + esac + fi +done +if $ac_cache_corrupted; then + { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: error: changes in the environment can compromise the build" >&5 +$as_echo "$as_me: error: changes in the environment can compromise the build" >&2;} + as_fn_error $? "run \`make distclean' and/or \`rm $cache_file' and start over" "$LINENO" 5 +fi +## -------------------- ## +## Main body of script. ## +## -------------------- ## + +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu + + +ac_config_headers="$ac_config_headers fficonfig.h" + + +ac_aux_dir= +for ac_dir in "$srcdir" "$srcdir/.." "$srcdir/../.."; do + if test -f "$ac_dir/install-sh"; then + ac_aux_dir=$ac_dir + ac_install_sh="$ac_aux_dir/install-sh -c" + break + elif test -f "$ac_dir/install.sh"; then + ac_aux_dir=$ac_dir + ac_install_sh="$ac_aux_dir/install.sh -c" + break + elif test -f "$ac_dir/shtool"; then + ac_aux_dir=$ac_dir + ac_install_sh="$ac_aux_dir/shtool install -c" + break + fi +done +if test -z "$ac_aux_dir"; then + as_fn_error $? "cannot find install-sh, install.sh, or shtool in \"$srcdir\" \"$srcdir/..\" \"$srcdir/../..\"" "$LINENO" 5 +fi + +# These three variables are undocumented and unsupported, +# and are intended to be withdrawn in a future Autoconf release. +# They can cause serious problems if a builder's source tree is in a directory +# whose full name contains unusual characters. +ac_config_guess="$SHELL $ac_aux_dir/config.guess" # Please don't use this var. +ac_config_sub="$SHELL $ac_aux_dir/config.sub" # Please don't use this var. +ac_configure="$SHELL $ac_aux_dir/configure" # Please don't use this var. + + +# Make sure we can run config.sub. +$SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 || + as_fn_error $? "cannot run $SHELL $ac_aux_dir/config.sub" "$LINENO" 5 + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking build system type" >&5 +$as_echo_n "checking build system type... " >&6; } +if ${ac_cv_build+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_build_alias=$build_alias +test "x$ac_build_alias" = x && + ac_build_alias=`$SHELL "$ac_aux_dir/config.guess"` +test "x$ac_build_alias" = x && + as_fn_error $? "cannot guess build type; you must specify one" "$LINENO" 5 +ac_cv_build=`$SHELL "$ac_aux_dir/config.sub" $ac_build_alias` || + as_fn_error $? "$SHELL $ac_aux_dir/config.sub $ac_build_alias failed" "$LINENO" 5 + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build" >&5 +$as_echo "$ac_cv_build" >&6; } +case $ac_cv_build in +*-*-*) ;; +*) as_fn_error $? "invalid value of canonical build" "$LINENO" 5;; +esac +build=$ac_cv_build +ac_save_IFS=$IFS; IFS='-' +set x $ac_cv_build +shift +build_cpu=$1 +build_vendor=$2 +shift; shift +# Remember, the first character of IFS is used to create $*, +# except with old shells: +build_os=$* +IFS=$ac_save_IFS +case $build_os in *\ *) build_os=`echo "$build_os" | sed 's/ /-/g'`;; esac + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking host system type" >&5 +$as_echo_n "checking host system type... " >&6; } +if ${ac_cv_host+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test "x$host_alias" = x; then + ac_cv_host=$ac_cv_build +else + ac_cv_host=`$SHELL "$ac_aux_dir/config.sub" $host_alias` || + as_fn_error $? "$SHELL $ac_aux_dir/config.sub $host_alias failed" "$LINENO" 5 +fi + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_host" >&5 +$as_echo "$ac_cv_host" >&6; } +case $ac_cv_host in +*-*-*) ;; +*) as_fn_error $? "invalid value of canonical host" "$LINENO" 5;; +esac +host=$ac_cv_host +ac_save_IFS=$IFS; IFS='-' +set x $ac_cv_host +shift +host_cpu=$1 +host_vendor=$2 +shift; shift +# Remember, the first character of IFS is used to create $*, +# except with old shells: +host_os=$* +IFS=$ac_save_IFS +case $host_os in *\ *) host_os=`echo "$host_os" | sed 's/ /-/g'`;; esac + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking target system type" >&5 +$as_echo_n "checking target system type... " >&6; } +if ${ac_cv_target+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test "x$target_alias" = x; then + ac_cv_target=$ac_cv_host +else + ac_cv_target=`$SHELL "$ac_aux_dir/config.sub" $target_alias` || + as_fn_error $? "$SHELL $ac_aux_dir/config.sub $target_alias failed" "$LINENO" 5 +fi + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_target" >&5 +$as_echo "$ac_cv_target" >&6; } +case $ac_cv_target in +*-*-*) ;; +*) as_fn_error $? "invalid value of canonical target" "$LINENO" 5;; +esac +target=$ac_cv_target +ac_save_IFS=$IFS; IFS='-' +set x $ac_cv_target +shift +target_cpu=$1 +target_vendor=$2 +shift; shift +# Remember, the first character of IFS is used to create $*, +# except with old shells: +target_os=$* +IFS=$ac_save_IFS +case $target_os in *\ *) target_os=`echo "$target_os" | sed 's/ /-/g'`;; esac + + +# The aliases save the names the user supplied, while $host etc. +# will get canonicalized. +test -n "$target_alias" && + test "$program_prefix$program_suffix$program_transform_name" = \ + NONENONEs,x,x, && + program_prefix=${target_alias}- + +target_alias=${target_alias-$host_alias} + +case "${host}" in + frv*-elf) + LDFLAGS=`echo $LDFLAGS | sed "s/\-B^ *libgloss\/frv\///"`\ -B`pwd`/../libgloss/frv/ + ;; +esac + + + # [$]@ is unsable in 2.60+ but earlier autoconf had no ac_configure_args + if test "${ac_configure_args+set}" != "set" ; then + ac_configure_args= + for ac_arg in ${1+"$@"}; do + ac_configure_args="$ac_configure_args '$ac_arg'" + done + fi + +# Expand $ac_aux_dir to an absolute path. +am_aux_dir=`cd "$ac_aux_dir" && pwd` + + +ax_enable_builddir="." +# Check whether --enable-builddir was given. +if test "${enable_builddir+set}" = set; then : + enableval=$enable_builddir; ax_enable_builddir="$enableval" +else + ax_enable_builddir="auto" +fi + +if test ".$ac_srcdir_defaulted" != ".no" ; then +if test ".$srcdir" = ".." ; then + if test -f config.status ; then + { $as_echo "$as_me:${as_lineno-$LINENO}: toplevel srcdir already configured... skipping subdir build" >&5 +$as_echo "$as_me: toplevel srcdir already configured... skipping subdir build" >&6;} + else + test ".$ax_enable_builddir" = "." && ax_enable_builddir="." + test ".$ax_enable_builddir" = ".no" && ax_enable_builddir="." + test ".$TARGET" = "." && TARGET="$target" + test ".$ax_enable_builddir" = ".auto" && ax_enable_builddir="$TARGET" + if test ".$ax_enable_builddir" != ".." ; then # we know where to go and + as_dir=$ax_enable_builddir; as_fn_mkdir_p + echo __.$ax_enable_builddir.__ > $ax_enable_builddir/conftest.tmp + cd $ax_enable_builddir + if grep __.$ax_enable_builddir.__ conftest.tmp >/dev/null 2>/dev/null ; then + rm conftest.tmp + { $as_echo "$as_me:${as_lineno-$LINENO}: result: continue configure in default builddir \"./$ax_enable_builddir\"" >&5 +$as_echo "continue configure in default builddir \"./$ax_enable_builddir\"" >&6; } + else + as_fn_error $? "could not change to default builddir \"./$ax_enable_builddir\"" "$LINENO" 5 + fi + srcdir=`echo "$ax_enable_builddir" | + sed -e 's,^\./,,;s,[^/]$,&/,;s,[^/]*/,../,g;s,[/]$,,;'` + # going to restart from subdirectory location + test -f $srcdir/config.log && mv $srcdir/config.log . + test -f $srcdir/confdefs.h && mv $srcdir/confdefs.h . + test -f $srcdir/conftest.log && mv $srcdir/conftest.log . + test -f $srcdir/$cache_file && mv $srcdir/$cache_file . + { $as_echo "$as_me:${as_lineno-$LINENO}: result: ....exec $SHELL $srcdir/$0 \"--srcdir=$srcdir\" \"--enable-builddir=$ax_enable_builddir\" ${1+\"$@\"}" >&5 +$as_echo "....exec $SHELL $srcdir/$0 \"--srcdir=$srcdir\" \"--enable-builddir=$ax_enable_builddir\" ${1+\"$@\"}" >&6; } + case "$0" in # restart + [\\/]* | ?:[\\/]*) # Asbolute name + eval $SHELL "'$0'" "'--srcdir=$srcdir'" "'--enable-builddir=$ax_enable_builddir'" $ac_configure_args ;; + *) eval $SHELL "'$srcdir/$0'" "'--srcdir=$srcdir'" "'--enable-builddir=$ax_enable_builddir'" $ac_configure_args ;; + esac ; exit $? + fi + fi +fi fi +test ".$ax_enable_builddir" = ".auto" && ax_enable_builddir="." +# Extract the first word of "gsed sed", so it can be a program name with args. +set dummy gsed sed; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_path_ax_enable_builddir_sed+:} false; then : + $as_echo_n "(cached) " >&6 +else + case $ax_enable_builddir_sed in + [\\/]* | ?:[\\/]*) + ac_cv_path_ax_enable_builddir_sed="$ax_enable_builddir_sed" # Let the user override the test with a path. + ;; + *) + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_path_ax_enable_builddir_sed="$as_dir/$ac_word$ac_exec_ext" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + + test -z "$ac_cv_path_ax_enable_builddir_sed" && ac_cv_path_ax_enable_builddir_sed="sed" + ;; +esac +fi +ax_enable_builddir_sed=$ac_cv_path_ax_enable_builddir_sed +if test -n "$ax_enable_builddir_sed"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_enable_builddir_sed" >&5 +$as_echo "$ax_enable_builddir_sed" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + +ax_enable_builddir_auxdir="$am_aux_dir" +ac_config_commands="$ac_config_commands buildir" + + +am__api_version='1.15' + +# Find a good install program. We prefer a C program (faster), +# so one script is as good as another. But avoid the broken or +# incompatible versions: +# SysV /etc/install, /usr/sbin/install +# SunOS /usr/etc/install +# IRIX /sbin/install +# AIX /bin/install +# AmigaOS /C/install, which installs bootblocks on floppy discs +# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag +# AFS /usr/afsws/bin/install, which mishandles nonexistent args +# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" +# OS/2's system install, which has a completely different semantic +# ./install, which can be erroneously created by make from ./install.sh. +# Reject install programs that cannot install multiple files. +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a BSD-compatible install" >&5 +$as_echo_n "checking for a BSD-compatible install... " >&6; } +if test -z "$INSTALL"; then +if ${ac_cv_path_install+:} false; then : + $as_echo_n "(cached) " >&6 +else + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + # Account for people who put trailing slashes in PATH elements. +case $as_dir/ in #(( + ./ | .// | /[cC]/* | \ + /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \ + ?:[\\/]os2[\\/]install[\\/]* | ?:[\\/]OS2[\\/]INSTALL[\\/]* | \ + /usr/ucb/* ) ;; + *) + # OSF1 and SCO ODT 3.0 have their own names for install. + # Don't use installbsd from OSF since it installs stuff as root + # by default. + for ac_prog in ginstall scoinst install; do + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then + if test $ac_prog = install && + grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then + # AIX install. It has an incompatible calling convention. + : + elif test $ac_prog = install && + grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then + # program-specific install script used by HP pwplus--don't use. + : + else + rm -rf conftest.one conftest.two conftest.dir + echo one > conftest.one + echo two > conftest.two + mkdir conftest.dir + if "$as_dir/$ac_prog$ac_exec_ext" -c conftest.one conftest.two "`pwd`/conftest.dir" && + test -s conftest.one && test -s conftest.two && + test -s conftest.dir/conftest.one && + test -s conftest.dir/conftest.two + then + ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c" + break 3 + fi + fi + fi + done + done + ;; +esac + + done +IFS=$as_save_IFS + +rm -rf conftest.one conftest.two conftest.dir + +fi + if test "${ac_cv_path_install+set}" = set; then + INSTALL=$ac_cv_path_install + else + # As a last resort, use the slow shell script. Don't cache a + # value for INSTALL within a source directory, because that will + # break other packages using the cache if that directory is + # removed, or if the value is a relative name. + INSTALL=$ac_install_sh + fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $INSTALL" >&5 +$as_echo "$INSTALL" >&6; } + +# Use test -z because SunOS4 sh mishandles braces in ${var-val}. +# It thinks the first close brace ends the variable substitution. +test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}' + +test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}' + +test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether build environment is sane" >&5 +$as_echo_n "checking whether build environment is sane... " >&6; } +# Reject unsafe characters in $srcdir or the absolute working directory +# name. Accept space and tab only in the latter. +am_lf=' +' +case `pwd` in + *[\\\"\#\$\&\'\`$am_lf]*) + as_fn_error $? "unsafe absolute working directory name" "$LINENO" 5;; +esac +case $srcdir in + *[\\\"\#\$\&\'\`$am_lf\ \ ]*) + as_fn_error $? "unsafe srcdir value: '$srcdir'" "$LINENO" 5;; +esac + +# Do 'set' in a subshell so we don't clobber the current shell's +# arguments. Must try -L first in case configure is actually a +# symlink; some systems play weird games with the mod time of symlinks +# (eg FreeBSD returns the mod time of the symlink's containing +# directory). +if ( + am_has_slept=no + for am_try in 1 2; do + echo "timestamp, slept: $am_has_slept" > conftest.file + set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null` + if test "$*" = "X"; then + # -L didn't work. + set X `ls -t "$srcdir/configure" conftest.file` + fi + if test "$*" != "X $srcdir/configure conftest.file" \ + && test "$*" != "X conftest.file $srcdir/configure"; then + + # If neither matched, then we have a broken ls. This can happen + # if, for instance, CONFIG_SHELL is bash and it inherits a + # broken ls alias from the environment. This has actually + # happened. Such a system could not be considered "sane". + as_fn_error $? "ls -t appears to fail. Make sure there is not a broken + alias in your environment" "$LINENO" 5 + fi + if test "$2" = conftest.file || test $am_try -eq 2; then + break + fi + # Just in case. + sleep 1 + am_has_slept=yes + done + test "$2" = conftest.file + ) +then + # Ok. + : +else + as_fn_error $? "newly created file is older than distributed files! +Check your system clock" "$LINENO" 5 +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } +# If we didn't sleep, we still need to ensure time stamps of config.status and +# generated files are strictly newer. +am_sleep_pid= +if grep 'slept: no' conftest.file >/dev/null 2>&1; then + ( sleep 1 ) & + am_sleep_pid=$! +fi + +rm -f conftest.file + +test "$program_prefix" != NONE && + program_transform_name="s&^&$program_prefix&;$program_transform_name" +# Use a double $ so make ignores it. +test "$program_suffix" != NONE && + program_transform_name="s&\$&$program_suffix&;$program_transform_name" +# Double any \ or $. +# By default was `s,x,x', remove it if useless. +ac_script='s/[\\$]/&&/g;s/;s,x,x,$//' +program_transform_name=`$as_echo "$program_transform_name" | sed "$ac_script"` + +if test x"${MISSING+set}" != xset; then + case $am_aux_dir in + *\ * | *\ *) + MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;; + *) + MISSING="\${SHELL} $am_aux_dir/missing" ;; + esac +fi +# Use eval to expand $SHELL +if eval "$MISSING --is-lightweight"; then + am_missing_run="$MISSING " +else + am_missing_run= + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: 'missing' script is too old or missing" >&5 +$as_echo "$as_me: WARNING: 'missing' script is too old or missing" >&2;} +fi + +if test x"${install_sh+set}" != xset; then + case $am_aux_dir in + *\ * | *\ *) + install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;; + *) + install_sh="\${SHELL} $am_aux_dir/install-sh" + esac +fi + +# Installed binaries are usually stripped using 'strip' when the user +# run "make install-strip". However 'strip' might not be the right +# tool to use in cross-compilation environments, therefore Automake +# will honor the 'STRIP' environment variable to overrule this program. +if test "$cross_compiling" != no; then + if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args. +set dummy ${ac_tool_prefix}strip; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_STRIP+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$STRIP"; then + ac_cv_prog_STRIP="$STRIP" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_STRIP="${ac_tool_prefix}strip" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +STRIP=$ac_cv_prog_STRIP +if test -n "$STRIP"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5 +$as_echo "$STRIP" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + +fi +if test -z "$ac_cv_prog_STRIP"; then + ac_ct_STRIP=$STRIP + # Extract the first word of "strip", so it can be a program name with args. +set dummy strip; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ac_ct_STRIP+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$ac_ct_STRIP"; then + ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_ac_ct_STRIP="strip" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP +if test -n "$ac_ct_STRIP"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5 +$as_echo "$ac_ct_STRIP" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + if test "x$ac_ct_STRIP" = x; then + STRIP=":" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + STRIP=$ac_ct_STRIP + fi +else + STRIP="$ac_cv_prog_STRIP" +fi + +fi +INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s" + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a thread-safe mkdir -p" >&5 +$as_echo_n "checking for a thread-safe mkdir -p... " >&6; } +if test -z "$MKDIR_P"; then + if ${ac_cv_path_mkdir+:} false; then : + $as_echo_n "(cached) " >&6 +else + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH$PATH_SEPARATOR/opt/sfw/bin +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_prog in mkdir gmkdir; do + for ac_exec_ext in '' $ac_executable_extensions; do + as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext" || continue + case `"$as_dir/$ac_prog$ac_exec_ext" --version 2>&1` in #( + 'mkdir (GNU coreutils) '* | \ + 'mkdir (coreutils) '* | \ + 'mkdir (fileutils) '4.1*) + ac_cv_path_mkdir=$as_dir/$ac_prog$ac_exec_ext + break 3;; + esac + done + done + done +IFS=$as_save_IFS + +fi + + test -d ./--version && rmdir ./--version + if test "${ac_cv_path_mkdir+set}" = set; then + MKDIR_P="$ac_cv_path_mkdir -p" + else + # As a last resort, use the slow shell script. Don't cache a + # value for MKDIR_P within a source directory, because that will + # break other packages using the cache if that directory is + # removed, or if the value is a relative name. + MKDIR_P="$ac_install_sh -d" + fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $MKDIR_P" >&5 +$as_echo "$MKDIR_P" >&6; } + +for ac_prog in gawk mawk nawk awk +do + # Extract the first word of "$ac_prog", so it can be a program name with args. +set dummy $ac_prog; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_AWK+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$AWK"; then + ac_cv_prog_AWK="$AWK" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_AWK="$ac_prog" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +AWK=$ac_cv_prog_AWK +if test -n "$AWK"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AWK" >&5 +$as_echo "$AWK" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + test -n "$AWK" && break +done + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5 +$as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; } +set x ${MAKE-make} +ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'` +if eval \${ac_cv_prog_make_${ac_make}_set+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat >conftest.make <<\_ACEOF +SHELL = /bin/sh +all: + @echo '@@@%%%=$(MAKE)=@@@%%%' +_ACEOF +# GNU make sometimes prints "make[1]: Entering ...", which would confuse us. +case `${MAKE-make} -f conftest.make 2>/dev/null` in + *@@@%%%=?*=@@@%%%*) + eval ac_cv_prog_make_${ac_make}_set=yes;; + *) + eval ac_cv_prog_make_${ac_make}_set=no;; +esac +rm -f conftest.make +fi +if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + SET_MAKE= +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + SET_MAKE="MAKE=${MAKE-make}" +fi + +rm -rf .tst 2>/dev/null +mkdir .tst 2>/dev/null +if test -d .tst; then + am__leading_dot=. +else + am__leading_dot=_ +fi +rmdir .tst 2>/dev/null + +# Check whether --enable-silent-rules was given. +if test "${enable_silent_rules+set}" = set; then : + enableval=$enable_silent_rules; +fi + +case $enable_silent_rules in # ((( + yes) AM_DEFAULT_VERBOSITY=0;; + no) AM_DEFAULT_VERBOSITY=1;; + *) AM_DEFAULT_VERBOSITY=1;; +esac +am_make=${MAKE-make} +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $am_make supports nested variables" >&5 +$as_echo_n "checking whether $am_make supports nested variables... " >&6; } +if ${am_cv_make_support_nested_variables+:} false; then : + $as_echo_n "(cached) " >&6 +else + if $as_echo 'TRUE=$(BAR$(V)) +BAR0=false +BAR1=true +V=1 +am__doit: + @$(TRUE) +.PHONY: am__doit' | $am_make -f - >/dev/null 2>&1; then + am_cv_make_support_nested_variables=yes +else + am_cv_make_support_nested_variables=no +fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_make_support_nested_variables" >&5 +$as_echo "$am_cv_make_support_nested_variables" >&6; } +if test $am_cv_make_support_nested_variables = yes; then + AM_V='$(V)' + AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)' +else + AM_V=$AM_DEFAULT_VERBOSITY + AM_DEFAULT_V=$AM_DEFAULT_VERBOSITY +fi +AM_BACKSLASH='\' + +if test "`cd $srcdir && pwd`" != "`pwd`"; then + # Use -I$(srcdir) only when $(srcdir) != ., so that make's output + # is not polluted with repeated "-I." + am__isrc=' -I$(srcdir)' + # test to see if srcdir already configured + if test -f $srcdir/config.status; then + as_fn_error $? "source directory already configured; run \"make distclean\" there first" "$LINENO" 5 + fi +fi + +# test whether we have cygpath +if test -z "$CYGPATH_W"; then + if (cygpath --version) >/dev/null 2>/dev/null; then + CYGPATH_W='cygpath -w' + else + CYGPATH_W=echo + fi +fi + + +# Define the identity of the package. + PACKAGE='libffi' + VERSION='3.99999' + + +cat >>confdefs.h <<_ACEOF +#define PACKAGE "$PACKAGE" +_ACEOF + + +cat >>confdefs.h <<_ACEOF +#define VERSION "$VERSION" +_ACEOF + +# Some tools Automake needs. + +ACLOCAL=${ACLOCAL-"${am_missing_run}aclocal-${am__api_version}"} + + +AUTOCONF=${AUTOCONF-"${am_missing_run}autoconf"} + + +AUTOMAKE=${AUTOMAKE-"${am_missing_run}automake-${am__api_version}"} + + +AUTOHEADER=${AUTOHEADER-"${am_missing_run}autoheader"} + + +MAKEINFO=${MAKEINFO-"${am_missing_run}makeinfo"} + +# For better backward compatibility. To be removed once Automake 1.9.x +# dies out for good. For more background, see: +# +# +mkdir_p='$(MKDIR_P)' + +# We need awk for the "check" target (and possibly the TAP driver). The +# system "awk" is bad on some platforms. +# Always define AMTAR for backward compatibility. Yes, it's still used +# in the wild :-( We should find a proper way to deprecate it ... +AMTAR='$${TAR-tar}' + + +# We'll loop over all known methods to create a tar archive until one works. +_am_tools='gnutar pax cpio none' + +am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -' + + + + + + +# POSIX will say in a future version that running "rm -f" with no argument +# is OK; and we want to be able to make that assumption in our Makefile +# recipes. So use an aggressive probe to check that the usage we want is +# actually supported "in the wild" to an acceptable degree. +# See automake bug#10828. +# To make any issue more visible, cause the running configure to be aborted +# by default if the 'rm' program in use doesn't match our expectations; the +# user can still override this though. +if rm -f && rm -fr && rm -rf; then : OK; else + cat >&2 <<'END' +Oops! + +Your 'rm' program seems unable to run without file operands specified +on the command line, even when the '-f' option is present. This is contrary +to the behaviour of most rm programs out there, and not conforming with +the upcoming POSIX standard: + +Please tell bug-automake@gnu.org about your system, including the value +of your $PATH and any error possibly output before this message. This +can help us improve future automake versions. + +END + if test x"$ACCEPT_INFERIOR_RM_PROGRAM" = x"yes"; then + echo 'Configuration will proceed anyway, since you have set the' >&2 + echo 'ACCEPT_INFERIOR_RM_PROGRAM variable to "yes"' >&2 + echo >&2 + else + cat >&2 <<'END' +Aborting the configuration process, to ensure you take notice of the issue. + +You can download and install GNU coreutils to get an 'rm' implementation +that behaves properly: . + +If you want to complete the configuration process using your problematic +'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM +to "yes", and re-run configure. + +END + as_fn_error $? "Your 'rm' program is bad, sorry." "$LINENO" 5 + fi +fi + + +# The same as in boehm-gc and libstdc++. Have to borrow it from there. +# We must force CC to /not/ be precious variables; otherwise +# the wrong, non-multilib-adjusted value will be used in multilibs. +# As a side effect, we have to subst CFLAGS ourselves. +# Also save and restore CFLAGS, since AC_PROG_CC will come up with +# defaults of its own if none are provided. + + + +save_CFLAGS=$CFLAGS +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu +if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args. +set dummy ${ac_tool_prefix}gcc; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_CC+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$CC"; then + ac_cv_prog_CC="$CC" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_CC="${ac_tool_prefix}gcc" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +CC=$ac_cv_prog_CC +if test -n "$CC"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 +$as_echo "$CC" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + +fi +if test -z "$ac_cv_prog_CC"; then + ac_ct_CC=$CC + # Extract the first word of "gcc", so it can be a program name with args. +set dummy gcc; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ac_ct_CC+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$ac_ct_CC"; then + ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_ac_ct_CC="gcc" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +ac_ct_CC=$ac_cv_prog_ac_ct_CC +if test -n "$ac_ct_CC"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 +$as_echo "$ac_ct_CC" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + if test "x$ac_ct_CC" = x; then + CC="" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + CC=$ac_ct_CC + fi +else + CC="$ac_cv_prog_CC" +fi + +if test -z "$CC"; then + if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args. +set dummy ${ac_tool_prefix}cc; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_CC+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$CC"; then + ac_cv_prog_CC="$CC" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_CC="${ac_tool_prefix}cc" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +CC=$ac_cv_prog_CC +if test -n "$CC"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 +$as_echo "$CC" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + fi +fi +if test -z "$CC"; then + # Extract the first word of "cc", so it can be a program name with args. +set dummy cc; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_CC+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$CC"; then + ac_cv_prog_CC="$CC" # Let the user override the test. +else + ac_prog_rejected=no +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then + ac_prog_rejected=yes + continue + fi + ac_cv_prog_CC="cc" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +if test $ac_prog_rejected = yes; then + # We found a bogon in the path, so make sure we never use it. + set dummy $ac_cv_prog_CC + shift + if test $# != 0; then + # We chose a different compiler from the bogus one. + # However, it has the same basename, so the bogon will be chosen + # first if we set CC to just the basename; use the full file name. + shift + ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@" + fi +fi +fi +fi +CC=$ac_cv_prog_CC +if test -n "$CC"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 +$as_echo "$CC" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + +fi +if test -z "$CC"; then + if test -n "$ac_tool_prefix"; then + for ac_prog in cl.exe + do + # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. +set dummy $ac_tool_prefix$ac_prog; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_CC+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$CC"; then + ac_cv_prog_CC="$CC" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_CC="$ac_tool_prefix$ac_prog" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +CC=$ac_cv_prog_CC +if test -n "$CC"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 +$as_echo "$CC" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + test -n "$CC" && break + done +fi +if test -z "$CC"; then + ac_ct_CC=$CC + for ac_prog in cl.exe +do + # Extract the first word of "$ac_prog", so it can be a program name with args. +set dummy $ac_prog; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ac_ct_CC+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$ac_ct_CC"; then + ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_ac_ct_CC="$ac_prog" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +ac_ct_CC=$ac_cv_prog_ac_ct_CC +if test -n "$ac_ct_CC"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 +$as_echo "$ac_ct_CC" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + test -n "$ac_ct_CC" && break +done + + if test "x$ac_ct_CC" = x; then + CC="" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + CC=$ac_ct_CC + fi +fi + +fi + + +test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "no acceptable C compiler found in \$PATH +See \`config.log' for more details" "$LINENO" 5; } + +# Provide some information about the compiler. +$as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5 +set X $ac_compile +ac_compiler=$2 +for ac_option in --version -v -V -qversion; do + { { ac_try="$ac_compiler $ac_option >&5" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_compiler $ac_option >&5") 2>conftest.err + ac_status=$? + if test -s conftest.err; then + sed '10a\ +... rest of stderr output deleted ... + 10q' conftest.err >conftest.er1 + cat conftest.er1 >&5 + fi + rm -f conftest.er1 conftest.err + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } +done + +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +ac_clean_files_save=$ac_clean_files +ac_clean_files="$ac_clean_files a.out a.out.dSYM a.exe b.out" +# Try to create an executable without -o first, disregard a.out. +# It will help us diagnose broken compilers, and finding out an intuition +# of exeext. +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler works" >&5 +$as_echo_n "checking whether the C compiler works... " >&6; } +ac_link_default=`$as_echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'` + +# The possible output files: +ac_files="a.out conftest.exe conftest a.exe a_out.exe b.out conftest.*" + +ac_rmfiles= +for ac_file in $ac_files +do + case $ac_file in + *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;; + * ) ac_rmfiles="$ac_rmfiles $ac_file";; + esac +done +rm -f $ac_rmfiles + +if { { ac_try="$ac_link_default" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_link_default") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then : + # Autoconf-2.13 could set the ac_cv_exeext variable to `no'. +# So ignore a value of `no', otherwise this would lead to `EXEEXT = no' +# in a Makefile. We should not override ac_cv_exeext if it was cached, +# so that the user can short-circuit this test for compilers unknown to +# Autoconf. +for ac_file in $ac_files '' +do + test -f "$ac_file" || continue + case $ac_file in + *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) + ;; + [ab].out ) + # We found the default executable, but exeext='' is most + # certainly right. + break;; + *.* ) + if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no; + then :; else + ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` + fi + # We set ac_cv_exeext here because the later test for it is not + # safe: cross compilers may not add the suffix if given an `-o' + # argument, so we may need to know it at that point already. + # Even if this section looks crufty: it has the advantage of + # actually working. + break;; + * ) + break;; + esac +done +test "$ac_cv_exeext" = no && ac_cv_exeext= + +else + ac_file='' +fi +if test -z "$ac_file"; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +$as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error 77 "C compiler cannot create executables +See \`config.log' for more details" "$LINENO" 5; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler default output file name" >&5 +$as_echo_n "checking for C compiler default output file name... " >&6; } +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_file" >&5 +$as_echo "$ac_file" >&6; } +ac_exeext=$ac_cv_exeext + +rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_exeext b.out +ac_clean_files=$ac_clean_files_save +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of executables" >&5 +$as_echo_n "checking for suffix of executables... " >&6; } +if { { ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then : + # If both `conftest.exe' and `conftest' are `present' (well, observable) +# catch `conftest.exe'. For instance with Cygwin, `ls conftest' will +# work properly (i.e., refer to `conftest.exe'), while it won't with +# `rm'. +for ac_file in conftest.exe conftest conftest.*; do + test -f "$ac_file" || continue + case $ac_file in + *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;; + *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` + break;; + * ) break;; + esac +done +else + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "cannot compute suffix of executables: cannot compile and link +See \`config.log' for more details" "$LINENO" 5; } +fi +rm -f conftest conftest$ac_cv_exeext +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_exeext" >&5 +$as_echo "$ac_cv_exeext" >&6; } + +rm -f conftest.$ac_ext +EXEEXT=$ac_cv_exeext +ac_exeext=$EXEEXT +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +int +main () +{ +FILE *f = fopen ("conftest.out", "w"); + return ferror (f) || fclose (f) != 0; + + ; + return 0; +} +_ACEOF +ac_clean_files="$ac_clean_files conftest.out" +# Check that the compiler produces executables we can run. If not, either +# the compiler is broken, or we cross compile. +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5 +$as_echo_n "checking whether we are cross compiling... " >&6; } +if test "$cross_compiling" != yes; then + { { ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } + if { ac_try='./conftest$ac_cv_exeext' + { { case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; }; then + cross_compiling=no + else + if test "$cross_compiling" = maybe; then + cross_compiling=yes + else + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "cannot run C compiled programs. +If you meant to cross compile, use \`--host'. +See \`config.log' for more details" "$LINENO" 5; } + fi + fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5 +$as_echo "$cross_compiling" >&6; } + +rm -f conftest.$ac_ext conftest$ac_cv_exeext conftest.out +ac_clean_files=$ac_clean_files_save +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of object files" >&5 +$as_echo_n "checking for suffix of object files... " >&6; } +if ${ac_cv_objext+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +rm -f conftest.o conftest.obj +if { { ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_compile") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then : + for ac_file in conftest.o conftest.obj conftest.*; do + test -f "$ac_file" || continue; + case $ac_file in + *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM ) ;; + *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'` + break;; + esac +done +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "cannot compute suffix of object files: cannot compile +See \`config.log' for more details" "$LINENO" 5; } +fi +rm -f conftest.$ac_cv_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_objext" >&5 +$as_echo "$ac_cv_objext" >&6; } +OBJEXT=$ac_cv_objext +ac_objext=$OBJEXT +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5 +$as_echo_n "checking whether we are using the GNU C compiler... " >&6; } +if ${ac_cv_c_compiler_gnu+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ +#ifndef __GNUC__ + choke me +#endif + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_compiler_gnu=yes +else + ac_compiler_gnu=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +ac_cv_c_compiler_gnu=$ac_compiler_gnu + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5 +$as_echo "$ac_cv_c_compiler_gnu" >&6; } +if test $ac_compiler_gnu = yes; then + GCC=yes +else + GCC= +fi +ac_test_CFLAGS=${CFLAGS+set} +ac_save_CFLAGS=$CFLAGS +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5 +$as_echo_n "checking whether $CC accepts -g... " >&6; } +if ${ac_cv_prog_cc_g+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_save_c_werror_flag=$ac_c_werror_flag + ac_c_werror_flag=yes + ac_cv_prog_cc_g=no + CFLAGS="-g" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_cv_prog_cc_g=yes +else + CFLAGS="" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + +else + ac_c_werror_flag=$ac_save_c_werror_flag + CFLAGS="-g" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_cv_prog_cc_g=yes +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + ac_c_werror_flag=$ac_save_c_werror_flag +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5 +$as_echo "$ac_cv_prog_cc_g" >&6; } +if test "$ac_test_CFLAGS" = set; then + CFLAGS=$ac_save_CFLAGS +elif test $ac_cv_prog_cc_g = yes; then + if test "$GCC" = yes; then + CFLAGS="-g -O2" + else + CFLAGS="-g" + fi +else + if test "$GCC" = yes; then + CFLAGS="-O2" + else + CFLAGS= + fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5 +$as_echo_n "checking for $CC option to accept ISO C89... " >&6; } +if ${ac_cv_prog_cc_c89+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_cv_prog_cc_c89=no +ac_save_CC=$CC +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +#include +struct stat; +/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */ +struct buf { int x; }; +FILE * (*rcsopen) (struct buf *, struct stat *, int); +static char *e (p, i) + char **p; + int i; +{ + return p[i]; +} +static char *f (char * (*g) (char **, int), char **p, ...) +{ + char *s; + va_list v; + va_start (v,p); + s = g (p, va_arg (v,int)); + va_end (v); + return s; +} + +/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has + function prototypes and stuff, but not '\xHH' hex character constants. + These don't provoke an error unfortunately, instead are silently treated + as 'x'. The following induces an error, until -std is added to get + proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an + array size at least. It's necessary to write '\x00'==0 to get something + that's true only with -std. */ +int osf4_cc_array ['\x00' == 0 ? 1 : -1]; + +/* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters + inside strings and character constants. */ +#define FOO(x) 'x' +int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1]; + +int test (int i, double x); +struct s1 {int (*f) (int a);}; +struct s2 {int (*f) (double a);}; +int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int); +int argc; +char **argv; +int +main () +{ +return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]; + ; + return 0; +} +_ACEOF +for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \ + -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" +do + CC="$ac_save_CC $ac_arg" + if ac_fn_c_try_compile "$LINENO"; then : + ac_cv_prog_cc_c89=$ac_arg +fi +rm -f core conftest.err conftest.$ac_objext + test "x$ac_cv_prog_cc_c89" != "xno" && break +done +rm -f conftest.$ac_ext +CC=$ac_save_CC + +fi +# AC_CACHE_VAL +case "x$ac_cv_prog_cc_c89" in + x) + { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5 +$as_echo "none needed" >&6; } ;; + xno) + { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5 +$as_echo "unsupported" >&6; } ;; + *) + CC="$CC $ac_cv_prog_cc_c89" + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5 +$as_echo "$ac_cv_prog_cc_c89" >&6; } ;; +esac +if test "x$ac_cv_prog_cc_c89" != xno; then : + +fi + +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu + +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC understands -c and -o together" >&5 +$as_echo_n "checking whether $CC understands -c and -o together... " >&6; } +if ${am_cv_prog_cc_c_o+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF + # Make sure it works both with $CC and with simple cc. + # Following AC_PROG_CC_C_O, we do the test twice because some + # compilers refuse to overwrite an existing .o file with -o, + # though they will create one. + am_cv_prog_cc_c_o=yes + for am_i in 1 2; do + if { echo "$as_me:$LINENO: $CC -c conftest.$ac_ext -o conftest2.$ac_objext" >&5 + ($CC -c conftest.$ac_ext -o conftest2.$ac_objext) >&5 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } \ + && test -f conftest2.$ac_objext; then + : OK + else + am_cv_prog_cc_c_o=no + break + fi + done + rm -f core conftest* + unset am_i +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_prog_cc_c_o" >&5 +$as_echo "$am_cv_prog_cc_c_o" >&6; } +if test "$am_cv_prog_cc_c_o" != yes; then + # Losing compiler, so override with the script. + # FIXME: It is wrong to rewrite CC. + # But if we don't then we get into trouble of one sort or another. + # A longer-term fix would be to have automake use am__CC in this case, + # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)" + CC="$am_aux_dir/compile $CC" +fi +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu + +DEPDIR="${am__leading_dot}deps" + +ac_config_commands="$ac_config_commands depfiles" + + +am_make=${MAKE-make} +cat > confinc << 'END' +am__doit: + @echo this is the am__doit target +.PHONY: am__doit +END +# If we don't find an include directive, just comment out the code. +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for style of include used by $am_make" >&5 +$as_echo_n "checking for style of include used by $am_make... " >&6; } +am__include="#" +am__quote= +_am_result=none +# First try GNU make style include. +echo "include confinc" > confmf +# Ignore all kinds of additional output from 'make'. +case `$am_make -s -f confmf 2> /dev/null` in #( +*the\ am__doit\ target*) + am__include=include + am__quote= + _am_result=GNU + ;; +esac +# Now try BSD make style include. +if test "$am__include" = "#"; then + echo '.include "confinc"' > confmf + case `$am_make -s -f confmf 2> /dev/null` in #( + *the\ am__doit\ target*) + am__include=.include + am__quote="\"" + _am_result=BSD + ;; + esac +fi + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $_am_result" >&5 +$as_echo "$_am_result" >&6; } +rm -f confinc confmf + +# Check whether --enable-dependency-tracking was given. +if test "${enable_dependency_tracking+set}" = set; then : + enableval=$enable_dependency_tracking; +fi + +if test "x$enable_dependency_tracking" != xno; then + am_depcomp="$ac_aux_dir/depcomp" + AMDEPBACKSLASH='\' + am__nodep='_no' +fi + if test "x$enable_dependency_tracking" != xno; then + AMDEP_TRUE= + AMDEP_FALSE='#' +else + AMDEP_TRUE='#' + AMDEP_FALSE= +fi + + + +depcc="$CC" am_compiler_list= + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5 +$as_echo_n "checking dependency style of $depcc... " >&6; } +if ${am_cv_CC_dependencies_compiler_type+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then + # We make a subdir and do the tests there. Otherwise we can end up + # making bogus files that we don't know about and never remove. For + # instance it was reported that on HP-UX the gcc test will end up + # making a dummy file named 'D' -- because '-MD' means "put the output + # in D". + rm -rf conftest.dir + mkdir conftest.dir + # Copy depcomp to subdir because otherwise we won't find it if we're + # using a relative directory. + cp "$am_depcomp" conftest.dir + cd conftest.dir + # We will build objects and dependencies in a subdirectory because + # it helps to detect inapplicable dependency modes. For instance + # both Tru64's cc and ICC support -MD to output dependencies as a + # side effect of compilation, but ICC will put the dependencies in + # the current directory while Tru64 will put them in the object + # directory. + mkdir sub + + am_cv_CC_dependencies_compiler_type=none + if test "$am_compiler_list" = ""; then + am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp` + fi + am__universal=false + case " $depcc " in #( + *\ -arch\ *\ -arch\ *) am__universal=true ;; + esac + + for depmode in $am_compiler_list; do + # Setup a source with many dependencies, because some compilers + # like to wrap large dependency lists on column 80 (with \), and + # we should not choose a depcomp mode which is confused by this. + # + # We need to recreate these files for each test, as the compiler may + # overwrite some of them when testing with obscure command lines. + # This happens at least with the AIX C compiler. + : > sub/conftest.c + for i in 1 2 3 4 5 6; do + echo '#include "conftst'$i'.h"' >> sub/conftest.c + # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with + # Solaris 10 /bin/sh. + echo '/* dummy */' > sub/conftst$i.h + done + echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf + + # We check with '-c' and '-o' for the sake of the "dashmstdout" + # mode. It turns out that the SunPro C++ compiler does not properly + # handle '-M -o', and we need to detect this. Also, some Intel + # versions had trouble with output in subdirs. + am__obj=sub/conftest.${OBJEXT-o} + am__minus_obj="-o $am__obj" + case $depmode in + gcc) + # This depmode causes a compiler race in universal mode. + test "$am__universal" = false || continue + ;; + nosideeffect) + # After this tag, mechanisms are not by side-effect, so they'll + # only be used when explicitly requested. + if test "x$enable_dependency_tracking" = xyes; then + continue + else + break + fi + ;; + msvc7 | msvc7msys | msvisualcpp | msvcmsys) + # This compiler won't grok '-c -o', but also, the minuso test has + # not run yet. These depmodes are late enough in the game, and + # so weak that their functioning should not be impacted. + am__obj=conftest.${OBJEXT-o} + am__minus_obj= + ;; + none) break ;; + esac + if depmode=$depmode \ + source=sub/conftest.c object=$am__obj \ + depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ + $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \ + >/dev/null 2>conftest.err && + grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 && + grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 && + grep $am__obj sub/conftest.Po > /dev/null 2>&1 && + ${MAKE-make} -s -f confmf > /dev/null 2>&1; then + # icc doesn't choke on unknown options, it will just issue warnings + # or remarks (even with -Werror). So we grep stderr for any message + # that says an option was ignored or not supported. + # When given -MP, icc 7.0 and 7.1 complain thusly: + # icc: Command line warning: ignoring option '-M'; no argument required + # The diagnosis changed in icc 8.0: + # icc: Command line remark: option '-MP' not supported + if (grep 'ignoring option' conftest.err || + grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else + am_cv_CC_dependencies_compiler_type=$depmode + break + fi + fi + done + + cd .. + rm -rf conftest.dir +else + am_cv_CC_dependencies_compiler_type=none +fi + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CC_dependencies_compiler_type" >&5 +$as_echo "$am_cv_CC_dependencies_compiler_type" >&6; } +CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type + + if + test "x$enable_dependency_tracking" != xno \ + && test "$am_cv_CC_dependencies_compiler_type" = gcc3; then + am__fastdepCC_TRUE= + am__fastdepCC_FALSE='#' +else + am__fastdepCC_TRUE='#' + am__fastdepCC_FALSE= +fi + + +ac_ext=cpp +ac_cpp='$CXXCPP $CPPFLAGS' +ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_cxx_compiler_gnu +if test -z "$CXX"; then + if test -n "$CCC"; then + CXX=$CCC + else + if test -n "$ac_tool_prefix"; then + for ac_prog in g++ c++ gpp aCC CC cxx cc++ cl.exe FCC KCC RCC xlC_r xlC + do + # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. +set dummy $ac_tool_prefix$ac_prog; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_CXX+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$CXX"; then + ac_cv_prog_CXX="$CXX" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_CXX="$ac_tool_prefix$ac_prog" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +CXX=$ac_cv_prog_CXX +if test -n "$CXX"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CXX" >&5 +$as_echo "$CXX" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + test -n "$CXX" && break + done +fi +if test -z "$CXX"; then + ac_ct_CXX=$CXX + for ac_prog in g++ c++ gpp aCC CC cxx cc++ cl.exe FCC KCC RCC xlC_r xlC +do + # Extract the first word of "$ac_prog", so it can be a program name with args. +set dummy $ac_prog; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ac_ct_CXX+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$ac_ct_CXX"; then + ac_cv_prog_ac_ct_CXX="$ac_ct_CXX" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_ac_ct_CXX="$ac_prog" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +ac_ct_CXX=$ac_cv_prog_ac_ct_CXX +if test -n "$ac_ct_CXX"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CXX" >&5 +$as_echo "$ac_ct_CXX" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + test -n "$ac_ct_CXX" && break +done + + if test "x$ac_ct_CXX" = x; then + CXX="g++" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + CXX=$ac_ct_CXX + fi +fi + + fi +fi +# Provide some information about the compiler. +$as_echo "$as_me:${as_lineno-$LINENO}: checking for C++ compiler version" >&5 +set X $ac_compile +ac_compiler=$2 +for ac_option in --version -v -V -qversion; do + { { ac_try="$ac_compiler $ac_option >&5" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_compiler $ac_option >&5") 2>conftest.err + ac_status=$? + if test -s conftest.err; then + sed '10a\ +... rest of stderr output deleted ... + 10q' conftest.err >conftest.er1 + cat conftest.er1 >&5 + fi + rm -f conftest.er1 conftest.err + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } +done + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C++ compiler" >&5 +$as_echo_n "checking whether we are using the GNU C++ compiler... " >&6; } +if ${ac_cv_cxx_compiler_gnu+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ +#ifndef __GNUC__ + choke me +#endif + + ; + return 0; +} +_ACEOF +if ac_fn_cxx_try_compile "$LINENO"; then : + ac_compiler_gnu=yes +else + ac_compiler_gnu=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +ac_cv_cxx_compiler_gnu=$ac_compiler_gnu + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_cxx_compiler_gnu" >&5 +$as_echo "$ac_cv_cxx_compiler_gnu" >&6; } +if test $ac_compiler_gnu = yes; then + GXX=yes +else + GXX= +fi +ac_test_CXXFLAGS=${CXXFLAGS+set} +ac_save_CXXFLAGS=$CXXFLAGS +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CXX accepts -g" >&5 +$as_echo_n "checking whether $CXX accepts -g... " >&6; } +if ${ac_cv_prog_cxx_g+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_save_cxx_werror_flag=$ac_cxx_werror_flag + ac_cxx_werror_flag=yes + ac_cv_prog_cxx_g=no + CXXFLAGS="-g" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_cxx_try_compile "$LINENO"; then : + ac_cv_prog_cxx_g=yes +else + CXXFLAGS="" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_cxx_try_compile "$LINENO"; then : + +else + ac_cxx_werror_flag=$ac_save_cxx_werror_flag + CXXFLAGS="-g" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_cxx_try_compile "$LINENO"; then : + ac_cv_prog_cxx_g=yes +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + ac_cxx_werror_flag=$ac_save_cxx_werror_flag +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cxx_g" >&5 +$as_echo "$ac_cv_prog_cxx_g" >&6; } +if test "$ac_test_CXXFLAGS" = set; then + CXXFLAGS=$ac_save_CXXFLAGS +elif test $ac_cv_prog_cxx_g = yes; then + if test "$GXX" = yes; then + CXXFLAGS="-g -O2" + else + CXXFLAGS="-g" + fi +else + if test "$GXX" = yes; then + CXXFLAGS="-O2" + else + CXXFLAGS= + fi +fi +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu + +depcc="$CXX" am_compiler_list= + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5 +$as_echo_n "checking dependency style of $depcc... " >&6; } +if ${am_cv_CXX_dependencies_compiler_type+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then + # We make a subdir and do the tests there. Otherwise we can end up + # making bogus files that we don't know about and never remove. For + # instance it was reported that on HP-UX the gcc test will end up + # making a dummy file named 'D' -- because '-MD' means "put the output + # in D". + rm -rf conftest.dir + mkdir conftest.dir + # Copy depcomp to subdir because otherwise we won't find it if we're + # using a relative directory. + cp "$am_depcomp" conftest.dir + cd conftest.dir + # We will build objects and dependencies in a subdirectory because + # it helps to detect inapplicable dependency modes. For instance + # both Tru64's cc and ICC support -MD to output dependencies as a + # side effect of compilation, but ICC will put the dependencies in + # the current directory while Tru64 will put them in the object + # directory. + mkdir sub + + am_cv_CXX_dependencies_compiler_type=none + if test "$am_compiler_list" = ""; then + am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp` + fi + am__universal=false + case " $depcc " in #( + *\ -arch\ *\ -arch\ *) am__universal=true ;; + esac + + for depmode in $am_compiler_list; do + # Setup a source with many dependencies, because some compilers + # like to wrap large dependency lists on column 80 (with \), and + # we should not choose a depcomp mode which is confused by this. + # + # We need to recreate these files for each test, as the compiler may + # overwrite some of them when testing with obscure command lines. + # This happens at least with the AIX C compiler. + : > sub/conftest.c + for i in 1 2 3 4 5 6; do + echo '#include "conftst'$i'.h"' >> sub/conftest.c + # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with + # Solaris 10 /bin/sh. + echo '/* dummy */' > sub/conftst$i.h + done + echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf + + # We check with '-c' and '-o' for the sake of the "dashmstdout" + # mode. It turns out that the SunPro C++ compiler does not properly + # handle '-M -o', and we need to detect this. Also, some Intel + # versions had trouble with output in subdirs. + am__obj=sub/conftest.${OBJEXT-o} + am__minus_obj="-o $am__obj" + case $depmode in + gcc) + # This depmode causes a compiler race in universal mode. + test "$am__universal" = false || continue + ;; + nosideeffect) + # After this tag, mechanisms are not by side-effect, so they'll + # only be used when explicitly requested. + if test "x$enable_dependency_tracking" = xyes; then + continue + else + break + fi + ;; + msvc7 | msvc7msys | msvisualcpp | msvcmsys) + # This compiler won't grok '-c -o', but also, the minuso test has + # not run yet. These depmodes are late enough in the game, and + # so weak that their functioning should not be impacted. + am__obj=conftest.${OBJEXT-o} + am__minus_obj= + ;; + none) break ;; + esac + if depmode=$depmode \ + source=sub/conftest.c object=$am__obj \ + depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ + $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \ + >/dev/null 2>conftest.err && + grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 && + grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 && + grep $am__obj sub/conftest.Po > /dev/null 2>&1 && + ${MAKE-make} -s -f confmf > /dev/null 2>&1; then + # icc doesn't choke on unknown options, it will just issue warnings + # or remarks (even with -Werror). So we grep stderr for any message + # that says an option was ignored or not supported. + # When given -MP, icc 7.0 and 7.1 complain thusly: + # icc: Command line warning: ignoring option '-M'; no argument required + # The diagnosis changed in icc 8.0: + # icc: Command line remark: option '-MP' not supported + if (grep 'ignoring option' conftest.err || + grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else + am_cv_CXX_dependencies_compiler_type=$depmode + break + fi + fi + done + + cd .. + rm -rf conftest.dir +else + am_cv_CXX_dependencies_compiler_type=none +fi + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CXX_dependencies_compiler_type" >&5 +$as_echo "$am_cv_CXX_dependencies_compiler_type" >&6; } +CXXDEPMODE=depmode=$am_cv_CXX_dependencies_compiler_type + + if + test "x$enable_dependency_tracking" != xno \ + && test "$am_cv_CXX_dependencies_compiler_type" = gcc3; then + am__fastdepCXX_TRUE= + am__fastdepCXX_FALSE='#' +else + am__fastdepCXX_TRUE='#' + am__fastdepCXX_FALSE= +fi + + +CFLAGS=$save_CFLAGS + + + + + +# By default we simply use the C compiler to build assembly code. + +test "${CCAS+set}" = set || CCAS=$CC +test "${CCASFLAGS+set}" = set || CCASFLAGS=$CFLAGS + + + +depcc="$CCAS" am_compiler_list= + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5 +$as_echo_n "checking dependency style of $depcc... " >&6; } +if ${am_cv_CCAS_dependencies_compiler_type+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then + # We make a subdir and do the tests there. Otherwise we can end up + # making bogus files that we don't know about and never remove. For + # instance it was reported that on HP-UX the gcc test will end up + # making a dummy file named 'D' -- because '-MD' means "put the output + # in D". + rm -rf conftest.dir + mkdir conftest.dir + # Copy depcomp to subdir because otherwise we won't find it if we're + # using a relative directory. + cp "$am_depcomp" conftest.dir + cd conftest.dir + # We will build objects and dependencies in a subdirectory because + # it helps to detect inapplicable dependency modes. For instance + # both Tru64's cc and ICC support -MD to output dependencies as a + # side effect of compilation, but ICC will put the dependencies in + # the current directory while Tru64 will put them in the object + # directory. + mkdir sub + + am_cv_CCAS_dependencies_compiler_type=none + if test "$am_compiler_list" = ""; then + am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp` + fi + am__universal=false + + + for depmode in $am_compiler_list; do + # Setup a source with many dependencies, because some compilers + # like to wrap large dependency lists on column 80 (with \), and + # we should not choose a depcomp mode which is confused by this. + # + # We need to recreate these files for each test, as the compiler may + # overwrite some of them when testing with obscure command lines. + # This happens at least with the AIX C compiler. + : > sub/conftest.c + for i in 1 2 3 4 5 6; do + echo '#include "conftst'$i'.h"' >> sub/conftest.c + # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with + # Solaris 10 /bin/sh. + echo '/* dummy */' > sub/conftst$i.h + done + echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf + + # We check with '-c' and '-o' for the sake of the "dashmstdout" + # mode. It turns out that the SunPro C++ compiler does not properly + # handle '-M -o', and we need to detect this. Also, some Intel + # versions had trouble with output in subdirs. + am__obj=sub/conftest.${OBJEXT-o} + am__minus_obj="-o $am__obj" + case $depmode in + gcc) + # This depmode causes a compiler race in universal mode. + test "$am__universal" = false || continue + ;; + nosideeffect) + # After this tag, mechanisms are not by side-effect, so they'll + # only be used when explicitly requested. + if test "x$enable_dependency_tracking" = xyes; then + continue + else + break + fi + ;; + msvc7 | msvc7msys | msvisualcpp | msvcmsys) + # This compiler won't grok '-c -o', but also, the minuso test has + # not run yet. These depmodes are late enough in the game, and + # so weak that their functioning should not be impacted. + am__obj=conftest.${OBJEXT-o} + am__minus_obj= + ;; + none) break ;; + esac + if depmode=$depmode \ + source=sub/conftest.c object=$am__obj \ + depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ + $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \ + >/dev/null 2>conftest.err && + grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 && + grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 && + grep $am__obj sub/conftest.Po > /dev/null 2>&1 && + ${MAKE-make} -s -f confmf > /dev/null 2>&1; then + # icc doesn't choke on unknown options, it will just issue warnings + # or remarks (even with -Werror). So we grep stderr for any message + # that says an option was ignored or not supported. + # When given -MP, icc 7.0 and 7.1 complain thusly: + # icc: Command line warning: ignoring option '-M'; no argument required + # The diagnosis changed in icc 8.0: + # icc: Command line remark: option '-MP' not supported + if (grep 'ignoring option' conftest.err || + grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else + am_cv_CCAS_dependencies_compiler_type=$depmode + break + fi + fi + done + + cd .. + rm -rf conftest.dir +else + am_cv_CCAS_dependencies_compiler_type=none +fi + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CCAS_dependencies_compiler_type" >&5 +$as_echo "$am_cv_CCAS_dependencies_compiler_type" >&6; } +CCASDEPMODE=depmode=$am_cv_CCAS_dependencies_compiler_type + + if + test "x$enable_dependency_tracking" != xno \ + && test "$am_cv_CCAS_dependencies_compiler_type" = gcc3; then + am__fastdepCCAS_TRUE= + am__fastdepCCAS_FALSE='#' +else + am__fastdepCCAS_TRUE='#' + am__fastdepCCAS_FALSE= +fi + + + +case `pwd` in + *\ * | *\ *) + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&5 +$as_echo "$as_me: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&2;} ;; +esac + + + +macro_version='2.4.6' +macro_revision='2.4.6' + + + + + + + + + + + + + +ltmain=$ac_aux_dir/ltmain.sh + +# Backslashify metacharacters that are still active within +# double-quoted strings. +sed_quote_subst='s/\(["`$\\]\)/\\\1/g' + +# Same as above, but do not quote variable references. +double_quote_subst='s/\(["`\\]\)/\\\1/g' + +# Sed substitution to delay expansion of an escaped shell variable in a +# double_quote_subst'ed string. +delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g' + +# Sed substitution to delay expansion of an escaped single quote. +delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g' + +# Sed substitution to avoid accidental globbing in evaled expressions +no_glob_subst='s/\*/\\\*/g' + +ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' +ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO +ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to print strings" >&5 +$as_echo_n "checking how to print strings... " >&6; } +# Test print first, because it will be a builtin if present. +if test "X`( print -r -- -n ) 2>/dev/null`" = X-n && \ + test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then + ECHO='print -r --' +elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then + ECHO='printf %s\n' +else + # Use this function as a fallback that always works. + func_fallback_echo () + { + eval 'cat <<_LTECHO_EOF +$1 +_LTECHO_EOF' + } + ECHO='func_fallback_echo' +fi + +# func_echo_all arg... +# Invoke $ECHO with all args, space-separated. +func_echo_all () +{ + $ECHO "" +} + +case $ECHO in + printf*) { $as_echo "$as_me:${as_lineno-$LINENO}: result: printf" >&5 +$as_echo "printf" >&6; } ;; + print*) { $as_echo "$as_me:${as_lineno-$LINENO}: result: print -r" >&5 +$as_echo "print -r" >&6; } ;; + *) { $as_echo "$as_me:${as_lineno-$LINENO}: result: cat" >&5 +$as_echo "cat" >&6; } ;; +esac + + + + + + + + + + + + + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a sed that does not truncate output" >&5 +$as_echo_n "checking for a sed that does not truncate output... " >&6; } +if ${ac_cv_path_SED+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_script=s/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb/ + for ac_i in 1 2 3 4 5 6 7; do + ac_script="$ac_script$as_nl$ac_script" + done + echo "$ac_script" 2>/dev/null | sed 99q >conftest.sed + { ac_script=; unset ac_script;} + if test -z "$SED"; then + ac_path_SED_found=false + # Loop through the user's path and test for each of PROGNAME-LIST + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_prog in sed gsed; do + for ac_exec_ext in '' $ac_executable_extensions; do + ac_path_SED="$as_dir/$ac_prog$ac_exec_ext" + as_fn_executable_p "$ac_path_SED" || continue +# Check for GNU ac_path_SED and select it if it is found. + # Check for GNU $ac_path_SED +case `"$ac_path_SED" --version 2>&1` in +*GNU*) + ac_cv_path_SED="$ac_path_SED" ac_path_SED_found=:;; +*) + ac_count=0 + $as_echo_n 0123456789 >"conftest.in" + while : + do + cat "conftest.in" "conftest.in" >"conftest.tmp" + mv "conftest.tmp" "conftest.in" + cp "conftest.in" "conftest.nl" + $as_echo '' >> "conftest.nl" + "$ac_path_SED" -f conftest.sed < "conftest.nl" >"conftest.out" 2>/dev/null || break + diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break + as_fn_arith $ac_count + 1 && ac_count=$as_val + if test $ac_count -gt ${ac_path_SED_max-0}; then + # Best one so far, save it but keep looking for a better one + ac_cv_path_SED="$ac_path_SED" + ac_path_SED_max=$ac_count + fi + # 10*(2^10) chars as input seems more than enough + test $ac_count -gt 10 && break + done + rm -f conftest.in conftest.tmp conftest.nl conftest.out;; +esac + + $ac_path_SED_found && break 3 + done + done + done +IFS=$as_save_IFS + if test -z "$ac_cv_path_SED"; then + as_fn_error $? "no acceptable sed could be found in \$PATH" "$LINENO" 5 + fi +else + ac_cv_path_SED=$SED +fi + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_SED" >&5 +$as_echo "$ac_cv_path_SED" >&6; } + SED="$ac_cv_path_SED" + rm -f conftest.sed + +test -z "$SED" && SED=sed +Xsed="$SED -e 1s/^X//" + + + + + + + + + + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5 +$as_echo_n "checking for grep that handles long lines and -e... " >&6; } +if ${ac_cv_path_GREP+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -z "$GREP"; then + ac_path_GREP_found=false + # Loop through the user's path and test for each of PROGNAME-LIST + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_prog in grep ggrep; do + for ac_exec_ext in '' $ac_executable_extensions; do + ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext" + as_fn_executable_p "$ac_path_GREP" || continue +# Check for GNU ac_path_GREP and select it if it is found. + # Check for GNU $ac_path_GREP +case `"$ac_path_GREP" --version 2>&1` in +*GNU*) + ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;; +*) + ac_count=0 + $as_echo_n 0123456789 >"conftest.in" + while : + do + cat "conftest.in" "conftest.in" >"conftest.tmp" + mv "conftest.tmp" "conftest.in" + cp "conftest.in" "conftest.nl" + $as_echo 'GREP' >> "conftest.nl" + "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break + diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break + as_fn_arith $ac_count + 1 && ac_count=$as_val + if test $ac_count -gt ${ac_path_GREP_max-0}; then + # Best one so far, save it but keep looking for a better one + ac_cv_path_GREP="$ac_path_GREP" + ac_path_GREP_max=$ac_count + fi + # 10*(2^10) chars as input seems more than enough + test $ac_count -gt 10 && break + done + rm -f conftest.in conftest.tmp conftest.nl conftest.out;; +esac + + $ac_path_GREP_found && break 3 + done + done + done +IFS=$as_save_IFS + if test -z "$ac_cv_path_GREP"; then + as_fn_error $? "no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 + fi +else + ac_cv_path_GREP=$GREP +fi + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5 +$as_echo "$ac_cv_path_GREP" >&6; } + GREP="$ac_cv_path_GREP" + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5 +$as_echo_n "checking for egrep... " >&6; } +if ${ac_cv_path_EGREP+:} false; then : + $as_echo_n "(cached) " >&6 +else + if echo a | $GREP -E '(a|b)' >/dev/null 2>&1 + then ac_cv_path_EGREP="$GREP -E" + else + if test -z "$EGREP"; then + ac_path_EGREP_found=false + # Loop through the user's path and test for each of PROGNAME-LIST + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_prog in egrep; do + for ac_exec_ext in '' $ac_executable_extensions; do + ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext" + as_fn_executable_p "$ac_path_EGREP" || continue +# Check for GNU ac_path_EGREP and select it if it is found. + # Check for GNU $ac_path_EGREP +case `"$ac_path_EGREP" --version 2>&1` in +*GNU*) + ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;; +*) + ac_count=0 + $as_echo_n 0123456789 >"conftest.in" + while : + do + cat "conftest.in" "conftest.in" >"conftest.tmp" + mv "conftest.tmp" "conftest.in" + cp "conftest.in" "conftest.nl" + $as_echo 'EGREP' >> "conftest.nl" + "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break + diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break + as_fn_arith $ac_count + 1 && ac_count=$as_val + if test $ac_count -gt ${ac_path_EGREP_max-0}; then + # Best one so far, save it but keep looking for a better one + ac_cv_path_EGREP="$ac_path_EGREP" + ac_path_EGREP_max=$ac_count + fi + # 10*(2^10) chars as input seems more than enough + test $ac_count -gt 10 && break + done + rm -f conftest.in conftest.tmp conftest.nl conftest.out;; +esac + + $ac_path_EGREP_found && break 3 + done + done + done +IFS=$as_save_IFS + if test -z "$ac_cv_path_EGREP"; then + as_fn_error $? "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 + fi +else + ac_cv_path_EGREP=$EGREP +fi + + fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5 +$as_echo "$ac_cv_path_EGREP" >&6; } + EGREP="$ac_cv_path_EGREP" + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for fgrep" >&5 +$as_echo_n "checking for fgrep... " >&6; } +if ${ac_cv_path_FGREP+:} false; then : + $as_echo_n "(cached) " >&6 +else + if echo 'ab*c' | $GREP -F 'ab*c' >/dev/null 2>&1 + then ac_cv_path_FGREP="$GREP -F" + else + if test -z "$FGREP"; then + ac_path_FGREP_found=false + # Loop through the user's path and test for each of PROGNAME-LIST + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_prog in fgrep; do + for ac_exec_ext in '' $ac_executable_extensions; do + ac_path_FGREP="$as_dir/$ac_prog$ac_exec_ext" + as_fn_executable_p "$ac_path_FGREP" || continue +# Check for GNU ac_path_FGREP and select it if it is found. + # Check for GNU $ac_path_FGREP +case `"$ac_path_FGREP" --version 2>&1` in +*GNU*) + ac_cv_path_FGREP="$ac_path_FGREP" ac_path_FGREP_found=:;; +*) + ac_count=0 + $as_echo_n 0123456789 >"conftest.in" + while : + do + cat "conftest.in" "conftest.in" >"conftest.tmp" + mv "conftest.tmp" "conftest.in" + cp "conftest.in" "conftest.nl" + $as_echo 'FGREP' >> "conftest.nl" + "$ac_path_FGREP" FGREP < "conftest.nl" >"conftest.out" 2>/dev/null || break + diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break + as_fn_arith $ac_count + 1 && ac_count=$as_val + if test $ac_count -gt ${ac_path_FGREP_max-0}; then + # Best one so far, save it but keep looking for a better one + ac_cv_path_FGREP="$ac_path_FGREP" + ac_path_FGREP_max=$ac_count + fi + # 10*(2^10) chars as input seems more than enough + test $ac_count -gt 10 && break + done + rm -f conftest.in conftest.tmp conftest.nl conftest.out;; +esac + + $ac_path_FGREP_found && break 3 + done + done + done +IFS=$as_save_IFS + if test -z "$ac_cv_path_FGREP"; then + as_fn_error $? "no acceptable fgrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 + fi +else + ac_cv_path_FGREP=$FGREP +fi + + fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_FGREP" >&5 +$as_echo "$ac_cv_path_FGREP" >&6; } + FGREP="$ac_cv_path_FGREP" + + +test -z "$GREP" && GREP=grep + + + + + + + + + + + + + + + + + + + +# Check whether --with-gnu-ld was given. +if test "${with_gnu_ld+set}" = set; then : + withval=$with_gnu_ld; test no = "$withval" || with_gnu_ld=yes +else + with_gnu_ld=no +fi + +ac_prog=ld +if test yes = "$GCC"; then + # Check if gcc -print-prog-name=ld gives a path. + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld used by $CC" >&5 +$as_echo_n "checking for ld used by $CC... " >&6; } + case $host in + *-*-mingw*) + # gcc leaves a trailing carriage return, which upsets mingw + ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; + *) + ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; + esac + case $ac_prog in + # Accept absolute paths. + [\\/]* | ?:[\\/]*) + re_direlt='/[^/][^/]*/\.\./' + # Canonicalize the pathname of ld + ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'` + while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do + ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"` + done + test -z "$LD" && LD=$ac_prog + ;; + "") + # If it fails, then pretend we aren't using GCC. + ac_prog=ld + ;; + *) + # If it is relative, then search for the first ld in PATH. + with_gnu_ld=unknown + ;; + esac +elif test yes = "$with_gnu_ld"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5 +$as_echo_n "checking for GNU ld... " >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5 +$as_echo_n "checking for non-GNU ld... " >&6; } +fi +if ${lt_cv_path_LD+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -z "$LD"; then + lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR + for ac_dir in $PATH; do + IFS=$lt_save_ifs + test -z "$ac_dir" && ac_dir=. + if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then + lt_cv_path_LD=$ac_dir/$ac_prog + # Check to see if the program is GNU ld. I'd rather use --version, + # but apparently some variants of GNU ld only accept -v. + # Break only if it was the GNU/non-GNU ld that we prefer. + case `"$lt_cv_path_LD" -v 2>&1 &5 +$as_echo "$LD" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi +test -z "$LD" && as_fn_error $? "no acceptable ld found in \$PATH" "$LINENO" 5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5 +$as_echo_n "checking if the linker ($LD) is GNU ld... " >&6; } +if ${lt_cv_prog_gnu_ld+:} false; then : + $as_echo_n "(cached) " >&6 +else + # I'd rather use --version here, but apparently some GNU lds only accept -v. +case `$LD -v 2>&1 &5 +$as_echo "$lt_cv_prog_gnu_ld" >&6; } +with_gnu_ld=$lt_cv_prog_gnu_ld + + + + + + + + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for BSD- or MS-compatible name lister (nm)" >&5 +$as_echo_n "checking for BSD- or MS-compatible name lister (nm)... " >&6; } +if ${lt_cv_path_NM+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$NM"; then + # Let the user override the test. + lt_cv_path_NM=$NM +else + lt_nm_to_check=${ac_tool_prefix}nm + if test -n "$ac_tool_prefix" && test "$build" = "$host"; then + lt_nm_to_check="$lt_nm_to_check nm" + fi + for lt_tmp_nm in $lt_nm_to_check; do + lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR + for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do + IFS=$lt_save_ifs + test -z "$ac_dir" && ac_dir=. + tmp_nm=$ac_dir/$lt_tmp_nm + if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext"; then + # Check to see if the nm accepts a BSD-compat flag. + # Adding the 'sed 1q' prevents false positives on HP-UX, which says: + # nm: unknown option "B" ignored + # Tru64's nm complains that /dev/null is an invalid object file + # MSYS converts /dev/null to NUL, MinGW nm treats NUL as empty + case $build_os in + mingw*) lt_bad_file=conftest.nm/nofile ;; + *) lt_bad_file=/dev/null ;; + esac + case `"$tmp_nm" -B $lt_bad_file 2>&1 | sed '1q'` in + *$lt_bad_file* | *'Invalid file or object type'*) + lt_cv_path_NM="$tmp_nm -B" + break 2 + ;; + *) + case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in + */dev/null*) + lt_cv_path_NM="$tmp_nm -p" + break 2 + ;; + *) + lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but + continue # so that we can try to find one that supports BSD flags + ;; + esac + ;; + esac + fi + done + IFS=$lt_save_ifs + done + : ${lt_cv_path_NM=no} +fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_NM" >&5 +$as_echo "$lt_cv_path_NM" >&6; } +if test no != "$lt_cv_path_NM"; then + NM=$lt_cv_path_NM +else + # Didn't find any BSD compatible name lister, look for dumpbin. + if test -n "$DUMPBIN"; then : + # Let the user override the test. + else + if test -n "$ac_tool_prefix"; then + for ac_prog in dumpbin "link -dump" + do + # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. +set dummy $ac_tool_prefix$ac_prog; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_DUMPBIN+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$DUMPBIN"; then + ac_cv_prog_DUMPBIN="$DUMPBIN" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_DUMPBIN="$ac_tool_prefix$ac_prog" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +DUMPBIN=$ac_cv_prog_DUMPBIN +if test -n "$DUMPBIN"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DUMPBIN" >&5 +$as_echo "$DUMPBIN" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + test -n "$DUMPBIN" && break + done +fi +if test -z "$DUMPBIN"; then + ac_ct_DUMPBIN=$DUMPBIN + for ac_prog in dumpbin "link -dump" +do + # Extract the first word of "$ac_prog", so it can be a program name with args. +set dummy $ac_prog; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ac_ct_DUMPBIN+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$ac_ct_DUMPBIN"; then + ac_cv_prog_ac_ct_DUMPBIN="$ac_ct_DUMPBIN" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_ac_ct_DUMPBIN="$ac_prog" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +ac_ct_DUMPBIN=$ac_cv_prog_ac_ct_DUMPBIN +if test -n "$ac_ct_DUMPBIN"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DUMPBIN" >&5 +$as_echo "$ac_ct_DUMPBIN" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + test -n "$ac_ct_DUMPBIN" && break +done + + if test "x$ac_ct_DUMPBIN" = x; then + DUMPBIN=":" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + DUMPBIN=$ac_ct_DUMPBIN + fi +fi + + case `$DUMPBIN -symbols -headers /dev/null 2>&1 | sed '1q'` in + *COFF*) + DUMPBIN="$DUMPBIN -symbols -headers" + ;; + *) + DUMPBIN=: + ;; + esac + fi + + if test : != "$DUMPBIN"; then + NM=$DUMPBIN + fi +fi +test -z "$NM" && NM=nm + + + + + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking the name lister ($NM) interface" >&5 +$as_echo_n "checking the name lister ($NM) interface... " >&6; } +if ${lt_cv_nm_interface+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_nm_interface="BSD nm" + echo "int some_variable = 0;" > conftest.$ac_ext + (eval echo "\"\$as_me:$LINENO: $ac_compile\"" >&5) + (eval "$ac_compile" 2>conftest.err) + cat conftest.err >&5 + (eval echo "\"\$as_me:$LINENO: $NM \\\"conftest.$ac_objext\\\"\"" >&5) + (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out) + cat conftest.err >&5 + (eval echo "\"\$as_me:$LINENO: output\"" >&5) + cat conftest.out >&5 + if $GREP 'External.*some_variable' conftest.out > /dev/null; then + lt_cv_nm_interface="MS dumpbin" + fi + rm -f conftest* +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_nm_interface" >&5 +$as_echo "$lt_cv_nm_interface" >&6; } + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ln -s works" >&5 +$as_echo_n "checking whether ln -s works... " >&6; } +LN_S=$as_ln_s +if test "$LN_S" = "ln -s"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no, using $LN_S" >&5 +$as_echo "no, using $LN_S" >&6; } +fi + +# find the maximum length of command line arguments +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking the maximum length of command line arguments" >&5 +$as_echo_n "checking the maximum length of command line arguments... " >&6; } +if ${lt_cv_sys_max_cmd_len+:} false; then : + $as_echo_n "(cached) " >&6 +else + i=0 + teststring=ABCD + + case $build_os in + msdosdjgpp*) + # On DJGPP, this test can blow up pretty badly due to problems in libc + # (any single argument exceeding 2000 bytes causes a buffer overrun + # during glob expansion). Even if it were fixed, the result of this + # check would be larger than it should be. + lt_cv_sys_max_cmd_len=12288; # 12K is about right + ;; + + gnu*) + # Under GNU Hurd, this test is not required because there is + # no limit to the length of command line arguments. + # Libtool will interpret -1 as no limit whatsoever + lt_cv_sys_max_cmd_len=-1; + ;; + + cygwin* | mingw* | cegcc*) + # On Win9x/ME, this test blows up -- it succeeds, but takes + # about 5 minutes as the teststring grows exponentially. + # Worse, since 9x/ME are not pre-emptively multitasking, + # you end up with a "frozen" computer, even though with patience + # the test eventually succeeds (with a max line length of 256k). + # Instead, let's just punt: use the minimum linelength reported by + # all of the supported platforms: 8192 (on NT/2K/XP). + lt_cv_sys_max_cmd_len=8192; + ;; + + mint*) + # On MiNT this can take a long time and run out of memory. + lt_cv_sys_max_cmd_len=8192; + ;; + + amigaos*) + # On AmigaOS with pdksh, this test takes hours, literally. + # So we just punt and use a minimum line length of 8192. + lt_cv_sys_max_cmd_len=8192; + ;; + + bitrig* | darwin* | dragonfly* | freebsd* | netbsd* | openbsd*) + # This has been around since 386BSD, at least. Likely further. + if test -x /sbin/sysctl; then + lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax` + elif test -x /usr/sbin/sysctl; then + lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax` + else + lt_cv_sys_max_cmd_len=65536 # usable default for all BSDs + fi + # And add a safety zone + lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4` + lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3` + ;; + + interix*) + # We know the value 262144 and hardcode it with a safety zone (like BSD) + lt_cv_sys_max_cmd_len=196608 + ;; + + os2*) + # The test takes a long time on OS/2. + lt_cv_sys_max_cmd_len=8192 + ;; + + osf*) + # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure + # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not + # nice to cause kernel panics so lets avoid the loop below. + # First set a reasonable default. + lt_cv_sys_max_cmd_len=16384 + # + if test -x /sbin/sysconfig; then + case `/sbin/sysconfig -q proc exec_disable_arg_limit` in + *1*) lt_cv_sys_max_cmd_len=-1 ;; + esac + fi + ;; + sco3.2v5*) + lt_cv_sys_max_cmd_len=102400 + ;; + sysv5* | sco5v6* | sysv4.2uw2*) + kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null` + if test -n "$kargmax"; then + lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[ ]//'` + else + lt_cv_sys_max_cmd_len=32768 + fi + ;; + *) + lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null` + if test -n "$lt_cv_sys_max_cmd_len" && \ + test undefined != "$lt_cv_sys_max_cmd_len"; then + lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4` + lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3` + else + # Make teststring a little bigger before we do anything with it. + # a 1K string should be a reasonable start. + for i in 1 2 3 4 5 6 7 8; do + teststring=$teststring$teststring + done + SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}} + # If test is not a shell built-in, we'll probably end up computing a + # maximum length that is only half of the actual maximum length, but + # we can't tell. + while { test X`env echo "$teststring$teststring" 2>/dev/null` \ + = "X$teststring$teststring"; } >/dev/null 2>&1 && + test 17 != "$i" # 1/2 MB should be enough + do + i=`expr $i + 1` + teststring=$teststring$teststring + done + # Only check the string length outside the loop. + lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1` + teststring= + # Add a significant safety factor because C++ compilers can tack on + # massive amounts of additional arguments before passing them to the + # linker. It appears as though 1/2 is a usable value. + lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2` + fi + ;; + esac + +fi + +if test -n "$lt_cv_sys_max_cmd_len"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sys_max_cmd_len" >&5 +$as_echo "$lt_cv_sys_max_cmd_len" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: none" >&5 +$as_echo "none" >&6; } +fi +max_cmd_len=$lt_cv_sys_max_cmd_len + + + + + + +: ${CP="cp -f"} +: ${MV="mv -f"} +: ${RM="rm -f"} + +if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then + lt_unset=unset +else + lt_unset=false +fi + + + + + +# test EBCDIC or ASCII +case `echo X|tr X '\101'` in + A) # ASCII based system + # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr + lt_SP2NL='tr \040 \012' + lt_NL2SP='tr \015\012 \040\040' + ;; + *) # EBCDIC based system + lt_SP2NL='tr \100 \n' + lt_NL2SP='tr \r\n \100\100' + ;; +esac + + + + + + + + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to $host format" >&5 +$as_echo_n "checking how to convert $build file names to $host format... " >&6; } +if ${lt_cv_to_host_file_cmd+:} false; then : + $as_echo_n "(cached) " >&6 +else + case $host in + *-*-mingw* ) + case $build in + *-*-mingw* ) # actually msys + lt_cv_to_host_file_cmd=func_convert_file_msys_to_w32 + ;; + *-*-cygwin* ) + lt_cv_to_host_file_cmd=func_convert_file_cygwin_to_w32 + ;; + * ) # otherwise, assume *nix + lt_cv_to_host_file_cmd=func_convert_file_nix_to_w32 + ;; + esac + ;; + *-*-cygwin* ) + case $build in + *-*-mingw* ) # actually msys + lt_cv_to_host_file_cmd=func_convert_file_msys_to_cygwin + ;; + *-*-cygwin* ) + lt_cv_to_host_file_cmd=func_convert_file_noop + ;; + * ) # otherwise, assume *nix + lt_cv_to_host_file_cmd=func_convert_file_nix_to_cygwin + ;; + esac + ;; + * ) # unhandled hosts (and "normal" native builds) + lt_cv_to_host_file_cmd=func_convert_file_noop + ;; +esac + +fi + +to_host_file_cmd=$lt_cv_to_host_file_cmd +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_to_host_file_cmd" >&5 +$as_echo "$lt_cv_to_host_file_cmd" >&6; } + + + + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to toolchain format" >&5 +$as_echo_n "checking how to convert $build file names to toolchain format... " >&6; } +if ${lt_cv_to_tool_file_cmd+:} false; then : + $as_echo_n "(cached) " >&6 +else + #assume ordinary cross tools, or native build. +lt_cv_to_tool_file_cmd=func_convert_file_noop +case $host in + *-*-mingw* ) + case $build in + *-*-mingw* ) # actually msys + lt_cv_to_tool_file_cmd=func_convert_file_msys_to_w32 + ;; + esac + ;; +esac + +fi + +to_tool_file_cmd=$lt_cv_to_tool_file_cmd +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_to_tool_file_cmd" >&5 +$as_echo "$lt_cv_to_tool_file_cmd" >&6; } + + + + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $LD option to reload object files" >&5 +$as_echo_n "checking for $LD option to reload object files... " >&6; } +if ${lt_cv_ld_reload_flag+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_ld_reload_flag='-r' +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_reload_flag" >&5 +$as_echo "$lt_cv_ld_reload_flag" >&6; } +reload_flag=$lt_cv_ld_reload_flag +case $reload_flag in +"" | " "*) ;; +*) reload_flag=" $reload_flag" ;; +esac +reload_cmds='$LD$reload_flag -o $output$reload_objs' +case $host_os in + cygwin* | mingw* | pw32* | cegcc*) + if test yes != "$GCC"; then + reload_cmds=false + fi + ;; + darwin*) + if test yes = "$GCC"; then + reload_cmds='$LTCC $LTCFLAGS -nostdlib $wl-r -o $output$reload_objs' + else + reload_cmds='$LD$reload_flag -o $output$reload_objs' + fi + ;; +esac + + + + + + + + + +if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}objdump", so it can be a program name with args. +set dummy ${ac_tool_prefix}objdump; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_OBJDUMP+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$OBJDUMP"; then + ac_cv_prog_OBJDUMP="$OBJDUMP" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_OBJDUMP="${ac_tool_prefix}objdump" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +OBJDUMP=$ac_cv_prog_OBJDUMP +if test -n "$OBJDUMP"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OBJDUMP" >&5 +$as_echo "$OBJDUMP" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + +fi +if test -z "$ac_cv_prog_OBJDUMP"; then + ac_ct_OBJDUMP=$OBJDUMP + # Extract the first word of "objdump", so it can be a program name with args. +set dummy objdump; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ac_ct_OBJDUMP+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$ac_ct_OBJDUMP"; then + ac_cv_prog_ac_ct_OBJDUMP="$ac_ct_OBJDUMP" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_ac_ct_OBJDUMP="objdump" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +ac_ct_OBJDUMP=$ac_cv_prog_ac_ct_OBJDUMP +if test -n "$ac_ct_OBJDUMP"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OBJDUMP" >&5 +$as_echo "$ac_ct_OBJDUMP" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + if test "x$ac_ct_OBJDUMP" = x; then + OBJDUMP="false" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + OBJDUMP=$ac_ct_OBJDUMP + fi +else + OBJDUMP="$ac_cv_prog_OBJDUMP" +fi + +test -z "$OBJDUMP" && OBJDUMP=objdump + + + + + + + + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to recognize dependent libraries" >&5 +$as_echo_n "checking how to recognize dependent libraries... " >&6; } +if ${lt_cv_deplibs_check_method+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_file_magic_cmd='$MAGIC_CMD' +lt_cv_file_magic_test_file= +lt_cv_deplibs_check_method='unknown' +# Need to set the preceding variable on all platforms that support +# interlibrary dependencies. +# 'none' -- dependencies not supported. +# 'unknown' -- same as none, but documents that we really don't know. +# 'pass_all' -- all dependencies passed with no checks. +# 'test_compile' -- check by making test program. +# 'file_magic [[regex]]' -- check by looking for files in library path +# that responds to the $file_magic_cmd with a given extended regex. +# If you have 'file' or equivalent on your system and you're not sure +# whether 'pass_all' will *always* work, you probably want this one. + +case $host_os in +aix[4-9]*) + lt_cv_deplibs_check_method=pass_all + ;; + +beos*) + lt_cv_deplibs_check_method=pass_all + ;; + +bsdi[45]*) + lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib)' + lt_cv_file_magic_cmd='/usr/bin/file -L' + lt_cv_file_magic_test_file=/shlib/libc.so + ;; + +cygwin*) + # func_win32_libid is a shell function defined in ltmain.sh + lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL' + lt_cv_file_magic_cmd='func_win32_libid' + ;; + +mingw* | pw32*) + # Base MSYS/MinGW do not provide the 'file' command needed by + # func_win32_libid shell function, so use a weaker test based on 'objdump', + # unless we find 'file', for example because we are cross-compiling. + if ( file / ) >/dev/null 2>&1; then + lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL' + lt_cv_file_magic_cmd='func_win32_libid' + else + # Keep this pattern in sync with the one in func_win32_libid. + lt_cv_deplibs_check_method='file_magic file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)' + lt_cv_file_magic_cmd='$OBJDUMP -f' + fi + ;; + +cegcc*) + # use the weaker test based on 'objdump'. See mingw*. + lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?' + lt_cv_file_magic_cmd='$OBJDUMP -f' + ;; + +darwin* | rhapsody*) + lt_cv_deplibs_check_method=pass_all + ;; + +freebsd* | dragonfly*) + if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then + case $host_cpu in + i*86 ) + # Not sure whether the presence of OpenBSD here was a mistake. + # Let's accept both of them until this is cleared up. + lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[3-9]86 (compact )?demand paged shared library' + lt_cv_file_magic_cmd=/usr/bin/file + lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` + ;; + esac + else + lt_cv_deplibs_check_method=pass_all + fi + ;; + +haiku*) + lt_cv_deplibs_check_method=pass_all + ;; + +hpux10.20* | hpux11*) + lt_cv_file_magic_cmd=/usr/bin/file + case $host_cpu in + ia64*) + lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF-[0-9][0-9]) shared object file - IA64' + lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so + ;; + hppa*64*) + lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF[ -][0-9][0-9])(-bit)?( [LM]SB)? shared object( file)?[, -]* PA-RISC [0-9]\.[0-9]' + lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl + ;; + *) + lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|PA-RISC[0-9]\.[0-9]) shared library' + lt_cv_file_magic_test_file=/usr/lib/libc.sl + ;; + esac + ;; + +interix[3-9]*) + # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here + lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so|\.a)$' + ;; + +irix5* | irix6* | nonstopux*) + case $LD in + *-32|*"-32 ") libmagic=32-bit;; + *-n32|*"-n32 ") libmagic=N32;; + *-64|*"-64 ") libmagic=64-bit;; + *) libmagic=never-match;; + esac + lt_cv_deplibs_check_method=pass_all + ;; + +# This must be glibc/ELF. +linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) + lt_cv_deplibs_check_method=pass_all + ;; + +netbsd* | netbsdelf*-gnu) + if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then + lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|_pic\.a)$' + else + lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so|_pic\.a)$' + fi + ;; + +newos6*) + lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (executable|dynamic lib)' + lt_cv_file_magic_cmd=/usr/bin/file + lt_cv_file_magic_test_file=/usr/lib/libnls.so + ;; + +*nto* | *qnx*) + lt_cv_deplibs_check_method=pass_all + ;; + +openbsd* | bitrig*) + if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then + lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|\.so|_pic\.a)$' + else + lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|_pic\.a)$' + fi + ;; + +osf3* | osf4* | osf5*) + lt_cv_deplibs_check_method=pass_all + ;; + +rdos*) + lt_cv_deplibs_check_method=pass_all + ;; + +solaris*) + lt_cv_deplibs_check_method=pass_all + ;; + +sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*) + lt_cv_deplibs_check_method=pass_all + ;; + +sysv4 | sysv4.3*) + case $host_vendor in + motorola) + lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib) M[0-9][0-9]* Version [0-9]' + lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*` + ;; + ncr) + lt_cv_deplibs_check_method=pass_all + ;; + sequent) + lt_cv_file_magic_cmd='/bin/file' + lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )' + ;; + sni) + lt_cv_file_magic_cmd='/bin/file' + lt_cv_deplibs_check_method="file_magic ELF [0-9][0-9]*-bit [LM]SB dynamic lib" + lt_cv_file_magic_test_file=/lib/libc.so + ;; + siemens) + lt_cv_deplibs_check_method=pass_all + ;; + pc) + lt_cv_deplibs_check_method=pass_all + ;; + esac + ;; + +tpf*) + lt_cv_deplibs_check_method=pass_all + ;; +os2*) + lt_cv_deplibs_check_method=pass_all + ;; +esac + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_deplibs_check_method" >&5 +$as_echo "$lt_cv_deplibs_check_method" >&6; } + +file_magic_glob= +want_nocaseglob=no +if test "$build" = "$host"; then + case $host_os in + mingw* | pw32*) + if ( shopt | grep nocaseglob ) >/dev/null 2>&1; then + want_nocaseglob=yes + else + file_magic_glob=`echo aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ | $SED -e "s/\(..\)/s\/[\1]\/[\1]\/g;/g"` + fi + ;; + esac +fi + +file_magic_cmd=$lt_cv_file_magic_cmd +deplibs_check_method=$lt_cv_deplibs_check_method +test -z "$deplibs_check_method" && deplibs_check_method=unknown + + + + + + + + + + + + + + + + + + + + + + +if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}dlltool", so it can be a program name with args. +set dummy ${ac_tool_prefix}dlltool; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_DLLTOOL+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$DLLTOOL"; then + ac_cv_prog_DLLTOOL="$DLLTOOL" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_DLLTOOL="${ac_tool_prefix}dlltool" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +DLLTOOL=$ac_cv_prog_DLLTOOL +if test -n "$DLLTOOL"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DLLTOOL" >&5 +$as_echo "$DLLTOOL" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + +fi +if test -z "$ac_cv_prog_DLLTOOL"; then + ac_ct_DLLTOOL=$DLLTOOL + # Extract the first word of "dlltool", so it can be a program name with args. +set dummy dlltool; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ac_ct_DLLTOOL+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$ac_ct_DLLTOOL"; then + ac_cv_prog_ac_ct_DLLTOOL="$ac_ct_DLLTOOL" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_ac_ct_DLLTOOL="dlltool" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +ac_ct_DLLTOOL=$ac_cv_prog_ac_ct_DLLTOOL +if test -n "$ac_ct_DLLTOOL"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DLLTOOL" >&5 +$as_echo "$ac_ct_DLLTOOL" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + if test "x$ac_ct_DLLTOOL" = x; then + DLLTOOL="false" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + DLLTOOL=$ac_ct_DLLTOOL + fi +else + DLLTOOL="$ac_cv_prog_DLLTOOL" +fi + +test -z "$DLLTOOL" && DLLTOOL=dlltool + + + + + + + + + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to associate runtime and link libraries" >&5 +$as_echo_n "checking how to associate runtime and link libraries... " >&6; } +if ${lt_cv_sharedlib_from_linklib_cmd+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_sharedlib_from_linklib_cmd='unknown' + +case $host_os in +cygwin* | mingw* | pw32* | cegcc*) + # two different shell functions defined in ltmain.sh; + # decide which one to use based on capabilities of $DLLTOOL + case `$DLLTOOL --help 2>&1` in + *--identify-strict*) + lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib + ;; + *) + lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib_fallback + ;; + esac + ;; +*) + # fallback: assume linklib IS sharedlib + lt_cv_sharedlib_from_linklib_cmd=$ECHO + ;; +esac + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sharedlib_from_linklib_cmd" >&5 +$as_echo "$lt_cv_sharedlib_from_linklib_cmd" >&6; } +sharedlib_from_linklib_cmd=$lt_cv_sharedlib_from_linklib_cmd +test -z "$sharedlib_from_linklib_cmd" && sharedlib_from_linklib_cmd=$ECHO + + + + + + + + +if test -n "$ac_tool_prefix"; then + for ac_prog in ar + do + # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. +set dummy $ac_tool_prefix$ac_prog; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_AR+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$AR"; then + ac_cv_prog_AR="$AR" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_AR="$ac_tool_prefix$ac_prog" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +AR=$ac_cv_prog_AR +if test -n "$AR"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AR" >&5 +$as_echo "$AR" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + test -n "$AR" && break + done +fi +if test -z "$AR"; then + ac_ct_AR=$AR + for ac_prog in ar +do + # Extract the first word of "$ac_prog", so it can be a program name with args. +set dummy $ac_prog; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ac_ct_AR+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$ac_ct_AR"; then + ac_cv_prog_ac_ct_AR="$ac_ct_AR" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_ac_ct_AR="$ac_prog" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +ac_ct_AR=$ac_cv_prog_ac_ct_AR +if test -n "$ac_ct_AR"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_AR" >&5 +$as_echo "$ac_ct_AR" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + test -n "$ac_ct_AR" && break +done + + if test "x$ac_ct_AR" = x; then + AR="false" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + AR=$ac_ct_AR + fi +fi + +: ${AR=ar} +: ${AR_FLAGS=cru} + + + + + + + + + + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for archiver @FILE support" >&5 +$as_echo_n "checking for archiver @FILE support... " >&6; } +if ${lt_cv_ar_at_file+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_ar_at_file=no + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + echo conftest.$ac_objext > conftest.lst + lt_ar_try='$AR $AR_FLAGS libconftest.a @conftest.lst >&5' + { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$lt_ar_try\""; } >&5 + (eval $lt_ar_try) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } + if test 0 -eq "$ac_status"; then + # Ensure the archiver fails upon bogus file names. + rm -f conftest.$ac_objext libconftest.a + { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$lt_ar_try\""; } >&5 + (eval $lt_ar_try) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } + if test 0 -ne "$ac_status"; then + lt_cv_ar_at_file=@ + fi + fi + rm -f conftest.* libconftest.a + +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ar_at_file" >&5 +$as_echo "$lt_cv_ar_at_file" >&6; } + +if test no = "$lt_cv_ar_at_file"; then + archiver_list_spec= +else + archiver_list_spec=$lt_cv_ar_at_file +fi + + + + + + + +if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args. +set dummy ${ac_tool_prefix}strip; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_STRIP+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$STRIP"; then + ac_cv_prog_STRIP="$STRIP" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_STRIP="${ac_tool_prefix}strip" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +STRIP=$ac_cv_prog_STRIP +if test -n "$STRIP"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5 +$as_echo "$STRIP" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + +fi +if test -z "$ac_cv_prog_STRIP"; then + ac_ct_STRIP=$STRIP + # Extract the first word of "strip", so it can be a program name with args. +set dummy strip; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ac_ct_STRIP+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$ac_ct_STRIP"; then + ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_ac_ct_STRIP="strip" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP +if test -n "$ac_ct_STRIP"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5 +$as_echo "$ac_ct_STRIP" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + if test "x$ac_ct_STRIP" = x; then + STRIP=":" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + STRIP=$ac_ct_STRIP + fi +else + STRIP="$ac_cv_prog_STRIP" +fi + +test -z "$STRIP" && STRIP=: + + + + + + +if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args. +set dummy ${ac_tool_prefix}ranlib; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_RANLIB+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$RANLIB"; then + ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +RANLIB=$ac_cv_prog_RANLIB +if test -n "$RANLIB"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $RANLIB" >&5 +$as_echo "$RANLIB" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + +fi +if test -z "$ac_cv_prog_RANLIB"; then + ac_ct_RANLIB=$RANLIB + # Extract the first word of "ranlib", so it can be a program name with args. +set dummy ranlib; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ac_ct_RANLIB+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$ac_ct_RANLIB"; then + ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_ac_ct_RANLIB="ranlib" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB +if test -n "$ac_ct_RANLIB"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_RANLIB" >&5 +$as_echo "$ac_ct_RANLIB" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + if test "x$ac_ct_RANLIB" = x; then + RANLIB=":" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + RANLIB=$ac_ct_RANLIB + fi +else + RANLIB="$ac_cv_prog_RANLIB" +fi + +test -z "$RANLIB" && RANLIB=: + + + + + + +# Determine commands to create old-style static archives. +old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs' +old_postinstall_cmds='chmod 644 $oldlib' +old_postuninstall_cmds= + +if test -n "$RANLIB"; then + case $host_os in + bitrig* | openbsd*) + old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$tool_oldlib" + ;; + *) + old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$tool_oldlib" + ;; + esac + old_archive_cmds="$old_archive_cmds~\$RANLIB \$tool_oldlib" +fi + +case $host_os in + darwin*) + lock_old_archive_extraction=yes ;; + *) + lock_old_archive_extraction=no ;; +esac + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +# If no C compiler was specified, use CC. +LTCC=${LTCC-"$CC"} + +# If no C compiler flags were specified, use CFLAGS. +LTCFLAGS=${LTCFLAGS-"$CFLAGS"} + +# Allow CC to be a program name with arguments. +compiler=$CC + + +# Check for command to grab the raw symbol name followed by C symbol from nm. +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking command to parse $NM output from $compiler object" >&5 +$as_echo_n "checking command to parse $NM output from $compiler object... " >&6; } +if ${lt_cv_sys_global_symbol_pipe+:} false; then : + $as_echo_n "(cached) " >&6 +else + +# These are sane defaults that work on at least a few old systems. +# [They come from Ultrix. What could be older than Ultrix?!! ;)] + +# Character class describing NM global symbol codes. +symcode='[BCDEGRST]' + +# Regexp to match symbols that can be accessed directly from C. +sympat='\([_A-Za-z][_A-Za-z0-9]*\)' + +# Define system-specific variables. +case $host_os in +aix*) + symcode='[BCDT]' + ;; +cygwin* | mingw* | pw32* | cegcc*) + symcode='[ABCDGISTW]' + ;; +hpux*) + if test ia64 = "$host_cpu"; then + symcode='[ABCDEGRST]' + fi + ;; +irix* | nonstopux*) + symcode='[BCDEGRST]' + ;; +osf*) + symcode='[BCDEGQRST]' + ;; +solaris*) + symcode='[BDRT]' + ;; +sco3.2v5*) + symcode='[DT]' + ;; +sysv4.2uw2*) + symcode='[DT]' + ;; +sysv5* | sco5v6* | unixware* | OpenUNIX*) + symcode='[ABDT]' + ;; +sysv4) + symcode='[DFNSTU]' + ;; +esac + +# If we're using GNU nm, then use its standard symbol codes. +case `$NM -V 2>&1` in +*GNU* | *'with BFD'*) + symcode='[ABCDGIRSTW]' ;; +esac + +if test "$lt_cv_nm_interface" = "MS dumpbin"; then + # Gets list of data symbols to import. + lt_cv_sys_global_symbol_to_import="sed -n -e 's/^I .* \(.*\)$/\1/p'" + # Adjust the below global symbol transforms to fixup imported variables. + lt_cdecl_hook=" -e 's/^I .* \(.*\)$/extern __declspec(dllimport) char \1;/p'" + lt_c_name_hook=" -e 's/^I .* \(.*\)$/ {\"\1\", (void *) 0},/p'" + lt_c_name_lib_hook="\ + -e 's/^I .* \(lib.*\)$/ {\"\1\", (void *) 0},/p'\ + -e 's/^I .* \(.*\)$/ {\"lib\1\", (void *) 0},/p'" +else + # Disable hooks by default. + lt_cv_sys_global_symbol_to_import= + lt_cdecl_hook= + lt_c_name_hook= + lt_c_name_lib_hook= +fi + +# Transform an extracted symbol line into a proper C declaration. +# Some systems (esp. on ia64) link data and code symbols differently, +# so use this general approach. +lt_cv_sys_global_symbol_to_cdecl="sed -n"\ +$lt_cdecl_hook\ +" -e 's/^T .* \(.*\)$/extern int \1();/p'"\ +" -e 's/^$symcode$symcode* .* \(.*\)$/extern char \1;/p'" + +# Transform an extracted symbol line into symbol name and symbol address +lt_cv_sys_global_symbol_to_c_name_address="sed -n"\ +$lt_c_name_hook\ +" -e 's/^: \(.*\) .*$/ {\"\1\", (void *) 0},/p'"\ +" -e 's/^$symcode$symcode* .* \(.*\)$/ {\"\1\", (void *) \&\1},/p'" + +# Transform an extracted symbol line into symbol name with lib prefix and +# symbol address. +lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n"\ +$lt_c_name_lib_hook\ +" -e 's/^: \(.*\) .*$/ {\"\1\", (void *) 0},/p'"\ +" -e 's/^$symcode$symcode* .* \(lib.*\)$/ {\"\1\", (void *) \&\1},/p'"\ +" -e 's/^$symcode$symcode* .* \(.*\)$/ {\"lib\1\", (void *) \&\1},/p'" + +# Handle CRLF in mingw tool chain +opt_cr= +case $build_os in +mingw*) + opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp + ;; +esac + +# Try without a prefix underscore, then with it. +for ac_symprfx in "" "_"; do + + # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol. + symxfrm="\\1 $ac_symprfx\\2 \\2" + + # Write the raw and C identifiers. + if test "$lt_cv_nm_interface" = "MS dumpbin"; then + # Fake it for dumpbin and say T for any non-static function, + # D for any global variable and I for any imported variable. + # Also find C++ and __fastcall symbols from MSVC++, + # which start with @ or ?. + lt_cv_sys_global_symbol_pipe="$AWK '"\ +" {last_section=section; section=\$ 3};"\ +" /^COFF SYMBOL TABLE/{for(i in hide) delete hide[i]};"\ +" /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\ +" /^ *Symbol name *: /{split(\$ 0,sn,\":\"); si=substr(sn[2],2)};"\ +" /^ *Type *: code/{print \"T\",si,substr(si,length(prfx))};"\ +" /^ *Type *: data/{print \"I\",si,substr(si,length(prfx))};"\ +" \$ 0!~/External *\|/{next};"\ +" / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\ +" {if(hide[section]) next};"\ +" {f=\"D\"}; \$ 0~/\(\).*\|/{f=\"T\"};"\ +" {split(\$ 0,a,/\||\r/); split(a[2],s)};"\ +" s[1]~/^[@?]/{print f,s[1],s[1]; next};"\ +" s[1]~prfx {split(s[1],t,\"@\"); print f,t[1],substr(t[1],length(prfx))}"\ +" ' prfx=^$ac_symprfx" + else + lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[ ]\($symcode$symcode*\)[ ][ ]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'" + fi + lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | sed '/ __gnu_lto/d'" + + # Check to see that the pipe works correctly. + pipe_works=no + + rm -f conftest* + cat > conftest.$ac_ext <<_LT_EOF +#ifdef __cplusplus +extern "C" { +#endif +char nm_test_var; +void nm_test_func(void); +void nm_test_func(void){} +#ifdef __cplusplus +} +#endif +int main(){nm_test_var='a';nm_test_func();return(0);} +_LT_EOF + + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 + (eval $ac_compile) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + # Now try to grab the symbols. + nlist=conftest.nm + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist\""; } >&5 + (eval $NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && test -s "$nlist"; then + # Try sorting and uniquifying the output. + if sort "$nlist" | uniq > "$nlist"T; then + mv -f "$nlist"T "$nlist" + else + rm -f "$nlist"T + fi + + # Make sure that we snagged all the symbols we need. + if $GREP ' nm_test_var$' "$nlist" >/dev/null; then + if $GREP ' nm_test_func$' "$nlist" >/dev/null; then + cat <<_LT_EOF > conftest.$ac_ext +/* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests. */ +#if defined _WIN32 || defined __CYGWIN__ || defined _WIN32_WCE +/* DATA imports from DLLs on WIN32 can't be const, because runtime + relocations are performed -- see ld's documentation on pseudo-relocs. */ +# define LT_DLSYM_CONST +#elif defined __osf__ +/* This system does not cope well with relocations in const data. */ +# define LT_DLSYM_CONST +#else +# define LT_DLSYM_CONST const +#endif + +#ifdef __cplusplus +extern "C" { +#endif + +_LT_EOF + # Now generate the symbol file. + eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext' + + cat <<_LT_EOF >> conftest.$ac_ext + +/* The mapping between symbol names and symbols. */ +LT_DLSYM_CONST struct { + const char *name; + void *address; +} +lt__PROGRAM__LTX_preloaded_symbols[] = +{ + { "@PROGRAM@", (void *) 0 }, +_LT_EOF + $SED "s/^$symcode$symcode* .* \(.*\)$/ {\"\1\", (void *) \&\1},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext + cat <<\_LT_EOF >> conftest.$ac_ext + {0, (void *) 0} +}; + +/* This works around a problem in FreeBSD linker */ +#ifdef FREEBSD_WORKAROUND +static const void *lt_preloaded_setup() { + return lt__PROGRAM__LTX_preloaded_symbols; +} +#endif + +#ifdef __cplusplus +} +#endif +_LT_EOF + # Now try linking the two files. + mv conftest.$ac_objext conftstm.$ac_objext + lt_globsym_save_LIBS=$LIBS + lt_globsym_save_CFLAGS=$CFLAGS + LIBS=conftstm.$ac_objext + CFLAGS="$CFLAGS$lt_prog_compiler_no_builtin_flag" + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 + (eval $ac_link) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && test -s conftest$ac_exeext; then + pipe_works=yes + fi + LIBS=$lt_globsym_save_LIBS + CFLAGS=$lt_globsym_save_CFLAGS + else + echo "cannot find nm_test_func in $nlist" >&5 + fi + else + echo "cannot find nm_test_var in $nlist" >&5 + fi + else + echo "cannot run $lt_cv_sys_global_symbol_pipe" >&5 + fi + else + echo "$progname: failed program was:" >&5 + cat conftest.$ac_ext >&5 + fi + rm -rf conftest* conftst* + + # Do not use the global_symbol_pipe unless it works. + if test yes = "$pipe_works"; then + break + else + lt_cv_sys_global_symbol_pipe= + fi +done + +fi + +if test -z "$lt_cv_sys_global_symbol_pipe"; then + lt_cv_sys_global_symbol_to_cdecl= +fi +if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: failed" >&5 +$as_echo "failed" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: ok" >&5 +$as_echo "ok" >&6; } +fi + +# Response file support. +if test "$lt_cv_nm_interface" = "MS dumpbin"; then + nm_file_list_spec='@' +elif $NM --help 2>/dev/null | grep '[@]FILE' >/dev/null; then + nm_file_list_spec='@' +fi + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sysroot" >&5 +$as_echo_n "checking for sysroot... " >&6; } + +# Check whether --with-sysroot was given. +if test "${with_sysroot+set}" = set; then : + withval=$with_sysroot; +else + with_sysroot=no +fi + + +lt_sysroot= +case $with_sysroot in #( + yes) + if test yes = "$GCC"; then + lt_sysroot=`$CC --print-sysroot 2>/dev/null` + fi + ;; #( + /*) + lt_sysroot=`echo "$with_sysroot" | sed -e "$sed_quote_subst"` + ;; #( + no|'') + ;; #( + *) + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_sysroot" >&5 +$as_echo "$with_sysroot" >&6; } + as_fn_error $? "The sysroot must be an absolute path." "$LINENO" 5 + ;; +esac + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${lt_sysroot:-no}" >&5 +$as_echo "${lt_sysroot:-no}" >&6; } + + + + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a working dd" >&5 +$as_echo_n "checking for a working dd... " >&6; } +if ${ac_cv_path_lt_DD+:} false; then : + $as_echo_n "(cached) " >&6 +else + printf 0123456789abcdef0123456789abcdef >conftest.i +cat conftest.i conftest.i >conftest2.i +: ${lt_DD:=$DD} +if test -z "$lt_DD"; then + ac_path_lt_DD_found=false + # Loop through the user's path and test for each of PROGNAME-LIST + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_prog in dd; do + for ac_exec_ext in '' $ac_executable_extensions; do + ac_path_lt_DD="$as_dir/$ac_prog$ac_exec_ext" + as_fn_executable_p "$ac_path_lt_DD" || continue +if "$ac_path_lt_DD" bs=32 count=1 conftest.out 2>/dev/null; then + cmp -s conftest.i conftest.out \ + && ac_cv_path_lt_DD="$ac_path_lt_DD" ac_path_lt_DD_found=: +fi + $ac_path_lt_DD_found && break 3 + done + done + done +IFS=$as_save_IFS + if test -z "$ac_cv_path_lt_DD"; then + : + fi +else + ac_cv_path_lt_DD=$lt_DD +fi + +rm -f conftest.i conftest2.i conftest.out +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_lt_DD" >&5 +$as_echo "$ac_cv_path_lt_DD" >&6; } + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to truncate binary pipes" >&5 +$as_echo_n "checking how to truncate binary pipes... " >&6; } +if ${lt_cv_truncate_bin+:} false; then : + $as_echo_n "(cached) " >&6 +else + printf 0123456789abcdef0123456789abcdef >conftest.i +cat conftest.i conftest.i >conftest2.i +lt_cv_truncate_bin= +if "$ac_cv_path_lt_DD" bs=32 count=1 conftest.out 2>/dev/null; then + cmp -s conftest.i conftest.out \ + && lt_cv_truncate_bin="$ac_cv_path_lt_DD bs=4096 count=1" +fi +rm -f conftest.i conftest2.i conftest.out +test -z "$lt_cv_truncate_bin" && lt_cv_truncate_bin="$SED -e 4q" +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_truncate_bin" >&5 +$as_echo "$lt_cv_truncate_bin" >&6; } + + + + + + + +# Calculate cc_basename. Skip known compiler wrappers and cross-prefix. +func_cc_basename () +{ + for cc_temp in $*""; do + case $cc_temp in + compile | *[\\/]compile | ccache | *[\\/]ccache ) ;; + distcc | *[\\/]distcc | purify | *[\\/]purify ) ;; + \-*) ;; + *) break;; + esac + done + func_cc_basename_result=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"` +} + +# Check whether --enable-libtool-lock was given. +if test "${enable_libtool_lock+set}" = set; then : + enableval=$enable_libtool_lock; +fi + +test no = "$enable_libtool_lock" || enable_libtool_lock=yes + +# Some flags need to be propagated to the compiler or linker for good +# libtool support. +case $host in +ia64-*-hpux*) + # Find out what ABI is being produced by ac_compile, and set mode + # options accordingly. + echo 'int i;' > conftest.$ac_ext + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 + (eval $ac_compile) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + case `/usr/bin/file conftest.$ac_objext` in + *ELF-32*) + HPUX_IA64_MODE=32 + ;; + *ELF-64*) + HPUX_IA64_MODE=64 + ;; + esac + fi + rm -rf conftest* + ;; +*-*-irix6*) + # Find out what ABI is being produced by ac_compile, and set linker + # options accordingly. + echo '#line '$LINENO' "configure"' > conftest.$ac_ext + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 + (eval $ac_compile) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + if test yes = "$lt_cv_prog_gnu_ld"; then + case `/usr/bin/file conftest.$ac_objext` in + *32-bit*) + LD="${LD-ld} -melf32bsmip" + ;; + *N32*) + LD="${LD-ld} -melf32bmipn32" + ;; + *64-bit*) + LD="${LD-ld} -melf64bmip" + ;; + esac + else + case `/usr/bin/file conftest.$ac_objext` in + *32-bit*) + LD="${LD-ld} -32" + ;; + *N32*) + LD="${LD-ld} -n32" + ;; + *64-bit*) + LD="${LD-ld} -64" + ;; + esac + fi + fi + rm -rf conftest* + ;; + +mips64*-*linux*) + # Find out what ABI is being produced by ac_compile, and set linker + # options accordingly. + echo '#line '$LINENO' "configure"' > conftest.$ac_ext + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 + (eval $ac_compile) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + emul=elf + case `/usr/bin/file conftest.$ac_objext` in + *32-bit*) + emul="${emul}32" + ;; + *64-bit*) + emul="${emul}64" + ;; + esac + case `/usr/bin/file conftest.$ac_objext` in + *MSB*) + emul="${emul}btsmip" + ;; + *LSB*) + emul="${emul}ltsmip" + ;; + esac + case `/usr/bin/file conftest.$ac_objext` in + *N32*) + emul="${emul}n32" + ;; + esac + LD="${LD-ld} -m $emul" + fi + rm -rf conftest* + ;; + +x86_64-*kfreebsd*-gnu|x86_64-*linux*|powerpc*-*linux*| \ +s390*-*linux*|s390*-*tpf*|sparc*-*linux*) + # Find out what ABI is being produced by ac_compile, and set linker + # options accordingly. Note that the listed cases only cover the + # situations where additional linker options are needed (such as when + # doing 32-bit compilation for a host where ld defaults to 64-bit, or + # vice versa); the common cases where no linker options are needed do + # not appear in the list. + echo 'int i;' > conftest.$ac_ext + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 + (eval $ac_compile) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + case `/usr/bin/file conftest.o` in + *32-bit*) + case $host in + x86_64-*kfreebsd*-gnu) + LD="${LD-ld} -m elf_i386_fbsd" + ;; + x86_64-*linux*) + case `/usr/bin/file conftest.o` in + *x86-64*) + LD="${LD-ld} -m elf32_x86_64" + ;; + *) + LD="${LD-ld} -m elf_i386" + ;; + esac + ;; + powerpc64le-*linux*) + LD="${LD-ld} -m elf32lppclinux" + ;; + powerpc64-*linux*) + LD="${LD-ld} -m elf32ppclinux" + ;; + s390x-*linux*) + LD="${LD-ld} -m elf_s390" + ;; + sparc64-*linux*) + LD="${LD-ld} -m elf32_sparc" + ;; + esac + ;; + *64-bit*) + case $host in + x86_64-*kfreebsd*-gnu) + LD="${LD-ld} -m elf_x86_64_fbsd" + ;; + x86_64-*linux*) + LD="${LD-ld} -m elf_x86_64" + ;; + powerpcle-*linux*) + LD="${LD-ld} -m elf64lppc" + ;; + powerpc-*linux*) + LD="${LD-ld} -m elf64ppc" + ;; + s390*-*linux*|s390*-*tpf*) + LD="${LD-ld} -m elf64_s390" + ;; + sparc*-*linux*) + LD="${LD-ld} -m elf64_sparc" + ;; + esac + ;; + esac + fi + rm -rf conftest* + ;; + +*-*-sco3.2v5*) + # On SCO OpenServer 5, we need -belf to get full-featured binaries. + SAVE_CFLAGS=$CFLAGS + CFLAGS="$CFLAGS -belf" + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler needs -belf" >&5 +$as_echo_n "checking whether the C compiler needs -belf... " >&6; } +if ${lt_cv_cc_needs_belf+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu + + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + lt_cv_cc_needs_belf=yes +else + lt_cv_cc_needs_belf=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_cc_needs_belf" >&5 +$as_echo "$lt_cv_cc_needs_belf" >&6; } + if test yes != "$lt_cv_cc_needs_belf"; then + # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf + CFLAGS=$SAVE_CFLAGS + fi + ;; +*-*solaris*) + # Find out what ABI is being produced by ac_compile, and set linker + # options accordingly. + echo 'int i;' > conftest.$ac_ext + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 + (eval $ac_compile) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + case `/usr/bin/file conftest.o` in + *64-bit*) + case $lt_cv_prog_gnu_ld in + yes*) + case $host in + i?86-*-solaris*|x86_64-*-solaris*) + LD="${LD-ld} -m elf_x86_64" + ;; + sparc*-*-solaris*) + LD="${LD-ld} -m elf64_sparc" + ;; + esac + # GNU ld 2.21 introduced _sol2 emulations. Use them if available. + if ${LD-ld} -V | grep _sol2 >/dev/null 2>&1; then + LD=${LD-ld}_sol2 + fi + ;; + *) + if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then + LD="${LD-ld} -64" + fi + ;; + esac + ;; + esac + fi + rm -rf conftest* + ;; +esac + +need_locks=$enable_libtool_lock + +if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}mt", so it can be a program name with args. +set dummy ${ac_tool_prefix}mt; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_MANIFEST_TOOL+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$MANIFEST_TOOL"; then + ac_cv_prog_MANIFEST_TOOL="$MANIFEST_TOOL" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_MANIFEST_TOOL="${ac_tool_prefix}mt" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +MANIFEST_TOOL=$ac_cv_prog_MANIFEST_TOOL +if test -n "$MANIFEST_TOOL"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MANIFEST_TOOL" >&5 +$as_echo "$MANIFEST_TOOL" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + +fi +if test -z "$ac_cv_prog_MANIFEST_TOOL"; then + ac_ct_MANIFEST_TOOL=$MANIFEST_TOOL + # Extract the first word of "mt", so it can be a program name with args. +set dummy mt; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ac_ct_MANIFEST_TOOL+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$ac_ct_MANIFEST_TOOL"; then + ac_cv_prog_ac_ct_MANIFEST_TOOL="$ac_ct_MANIFEST_TOOL" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_ac_ct_MANIFEST_TOOL="mt" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +ac_ct_MANIFEST_TOOL=$ac_cv_prog_ac_ct_MANIFEST_TOOL +if test -n "$ac_ct_MANIFEST_TOOL"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_MANIFEST_TOOL" >&5 +$as_echo "$ac_ct_MANIFEST_TOOL" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + if test "x$ac_ct_MANIFEST_TOOL" = x; then + MANIFEST_TOOL=":" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + MANIFEST_TOOL=$ac_ct_MANIFEST_TOOL + fi +else + MANIFEST_TOOL="$ac_cv_prog_MANIFEST_TOOL" +fi + +test -z "$MANIFEST_TOOL" && MANIFEST_TOOL=mt +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $MANIFEST_TOOL is a manifest tool" >&5 +$as_echo_n "checking if $MANIFEST_TOOL is a manifest tool... " >&6; } +if ${lt_cv_path_mainfest_tool+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_path_mainfest_tool=no + echo "$as_me:$LINENO: $MANIFEST_TOOL '-?'" >&5 + $MANIFEST_TOOL '-?' 2>conftest.err > conftest.out + cat conftest.err >&5 + if $GREP 'Manifest Tool' conftest.out > /dev/null; then + lt_cv_path_mainfest_tool=yes + fi + rm -f conftest* +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_mainfest_tool" >&5 +$as_echo "$lt_cv_path_mainfest_tool" >&6; } +if test yes != "$lt_cv_path_mainfest_tool"; then + MANIFEST_TOOL=: +fi + + + + + + + case $host_os in + rhapsody* | darwin*) + if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}dsymutil", so it can be a program name with args. +set dummy ${ac_tool_prefix}dsymutil; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_DSYMUTIL+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$DSYMUTIL"; then + ac_cv_prog_DSYMUTIL="$DSYMUTIL" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_DSYMUTIL="${ac_tool_prefix}dsymutil" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +DSYMUTIL=$ac_cv_prog_DSYMUTIL +if test -n "$DSYMUTIL"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DSYMUTIL" >&5 +$as_echo "$DSYMUTIL" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + +fi +if test -z "$ac_cv_prog_DSYMUTIL"; then + ac_ct_DSYMUTIL=$DSYMUTIL + # Extract the first word of "dsymutil", so it can be a program name with args. +set dummy dsymutil; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ac_ct_DSYMUTIL+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$ac_ct_DSYMUTIL"; then + ac_cv_prog_ac_ct_DSYMUTIL="$ac_ct_DSYMUTIL" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_ac_ct_DSYMUTIL="dsymutil" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +ac_ct_DSYMUTIL=$ac_cv_prog_ac_ct_DSYMUTIL +if test -n "$ac_ct_DSYMUTIL"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DSYMUTIL" >&5 +$as_echo "$ac_ct_DSYMUTIL" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + if test "x$ac_ct_DSYMUTIL" = x; then + DSYMUTIL=":" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + DSYMUTIL=$ac_ct_DSYMUTIL + fi +else + DSYMUTIL="$ac_cv_prog_DSYMUTIL" +fi + + if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}nmedit", so it can be a program name with args. +set dummy ${ac_tool_prefix}nmedit; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_NMEDIT+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$NMEDIT"; then + ac_cv_prog_NMEDIT="$NMEDIT" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_NMEDIT="${ac_tool_prefix}nmedit" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +NMEDIT=$ac_cv_prog_NMEDIT +if test -n "$NMEDIT"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $NMEDIT" >&5 +$as_echo "$NMEDIT" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + +fi +if test -z "$ac_cv_prog_NMEDIT"; then + ac_ct_NMEDIT=$NMEDIT + # Extract the first word of "nmedit", so it can be a program name with args. +set dummy nmedit; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ac_ct_NMEDIT+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$ac_ct_NMEDIT"; then + ac_cv_prog_ac_ct_NMEDIT="$ac_ct_NMEDIT" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_ac_ct_NMEDIT="nmedit" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +ac_ct_NMEDIT=$ac_cv_prog_ac_ct_NMEDIT +if test -n "$ac_ct_NMEDIT"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_NMEDIT" >&5 +$as_echo "$ac_ct_NMEDIT" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + if test "x$ac_ct_NMEDIT" = x; then + NMEDIT=":" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + NMEDIT=$ac_ct_NMEDIT + fi +else + NMEDIT="$ac_cv_prog_NMEDIT" +fi + + if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}lipo", so it can be a program name with args. +set dummy ${ac_tool_prefix}lipo; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_LIPO+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$LIPO"; then + ac_cv_prog_LIPO="$LIPO" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_LIPO="${ac_tool_prefix}lipo" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +LIPO=$ac_cv_prog_LIPO +if test -n "$LIPO"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIPO" >&5 +$as_echo "$LIPO" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + +fi +if test -z "$ac_cv_prog_LIPO"; then + ac_ct_LIPO=$LIPO + # Extract the first word of "lipo", so it can be a program name with args. +set dummy lipo; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ac_ct_LIPO+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$ac_ct_LIPO"; then + ac_cv_prog_ac_ct_LIPO="$ac_ct_LIPO" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_ac_ct_LIPO="lipo" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +ac_ct_LIPO=$ac_cv_prog_ac_ct_LIPO +if test -n "$ac_ct_LIPO"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_LIPO" >&5 +$as_echo "$ac_ct_LIPO" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + if test "x$ac_ct_LIPO" = x; then + LIPO=":" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + LIPO=$ac_ct_LIPO + fi +else + LIPO="$ac_cv_prog_LIPO" +fi + + if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}otool", so it can be a program name with args. +set dummy ${ac_tool_prefix}otool; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_OTOOL+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$OTOOL"; then + ac_cv_prog_OTOOL="$OTOOL" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_OTOOL="${ac_tool_prefix}otool" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +OTOOL=$ac_cv_prog_OTOOL +if test -n "$OTOOL"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OTOOL" >&5 +$as_echo "$OTOOL" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + +fi +if test -z "$ac_cv_prog_OTOOL"; then + ac_ct_OTOOL=$OTOOL + # Extract the first word of "otool", so it can be a program name with args. +set dummy otool; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ac_ct_OTOOL+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$ac_ct_OTOOL"; then + ac_cv_prog_ac_ct_OTOOL="$ac_ct_OTOOL" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_ac_ct_OTOOL="otool" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +ac_ct_OTOOL=$ac_cv_prog_ac_ct_OTOOL +if test -n "$ac_ct_OTOOL"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OTOOL" >&5 +$as_echo "$ac_ct_OTOOL" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + if test "x$ac_ct_OTOOL" = x; then + OTOOL=":" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + OTOOL=$ac_ct_OTOOL + fi +else + OTOOL="$ac_cv_prog_OTOOL" +fi + + if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}otool64", so it can be a program name with args. +set dummy ${ac_tool_prefix}otool64; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_OTOOL64+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$OTOOL64"; then + ac_cv_prog_OTOOL64="$OTOOL64" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_OTOOL64="${ac_tool_prefix}otool64" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +OTOOL64=$ac_cv_prog_OTOOL64 +if test -n "$OTOOL64"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OTOOL64" >&5 +$as_echo "$OTOOL64" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + +fi +if test -z "$ac_cv_prog_OTOOL64"; then + ac_ct_OTOOL64=$OTOOL64 + # Extract the first word of "otool64", so it can be a program name with args. +set dummy otool64; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ac_ct_OTOOL64+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$ac_ct_OTOOL64"; then + ac_cv_prog_ac_ct_OTOOL64="$ac_ct_OTOOL64" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_ac_ct_OTOOL64="otool64" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +ac_ct_OTOOL64=$ac_cv_prog_ac_ct_OTOOL64 +if test -n "$ac_ct_OTOOL64"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OTOOL64" >&5 +$as_echo "$ac_ct_OTOOL64" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + if test "x$ac_ct_OTOOL64" = x; then + OTOOL64=":" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + OTOOL64=$ac_ct_OTOOL64 + fi +else + OTOOL64="$ac_cv_prog_OTOOL64" +fi + + + + + + + + + + + + + + + + + + + + + + + + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -single_module linker flag" >&5 +$as_echo_n "checking for -single_module linker flag... " >&6; } +if ${lt_cv_apple_cc_single_mod+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_apple_cc_single_mod=no + if test -z "$LT_MULTI_MODULE"; then + # By default we will add the -single_module flag. You can override + # by either setting the environment variable LT_MULTI_MODULE + # non-empty at configure time, or by adding -multi_module to the + # link flags. + rm -rf libconftest.dylib* + echo "int foo(void){return 1;}" > conftest.c + echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \ +-dynamiclib -Wl,-single_module conftest.c" >&5 + $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \ + -dynamiclib -Wl,-single_module conftest.c 2>conftest.err + _lt_result=$? + # If there is a non-empty error log, and "single_module" + # appears in it, assume the flag caused a linker warning + if test -s conftest.err && $GREP single_module conftest.err; then + cat conftest.err >&5 + # Otherwise, if the output was created with a 0 exit code from + # the compiler, it worked. + elif test -f libconftest.dylib && test 0 = "$_lt_result"; then + lt_cv_apple_cc_single_mod=yes + else + cat conftest.err >&5 + fi + rm -rf libconftest.dylib* + rm -f conftest.* + fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_apple_cc_single_mod" >&5 +$as_echo "$lt_cv_apple_cc_single_mod" >&6; } + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -exported_symbols_list linker flag" >&5 +$as_echo_n "checking for -exported_symbols_list linker flag... " >&6; } +if ${lt_cv_ld_exported_symbols_list+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_ld_exported_symbols_list=no + save_LDFLAGS=$LDFLAGS + echo "_main" > conftest.sym + LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + lt_cv_ld_exported_symbols_list=yes +else + lt_cv_ld_exported_symbols_list=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + LDFLAGS=$save_LDFLAGS + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_exported_symbols_list" >&5 +$as_echo "$lt_cv_ld_exported_symbols_list" >&6; } + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -force_load linker flag" >&5 +$as_echo_n "checking for -force_load linker flag... " >&6; } +if ${lt_cv_ld_force_load+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_ld_force_load=no + cat > conftest.c << _LT_EOF +int forced_loaded() { return 2;} +_LT_EOF + echo "$LTCC $LTCFLAGS -c -o conftest.o conftest.c" >&5 + $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&5 + echo "$AR cru libconftest.a conftest.o" >&5 + $AR cru libconftest.a conftest.o 2>&5 + echo "$RANLIB libconftest.a" >&5 + $RANLIB libconftest.a 2>&5 + cat > conftest.c << _LT_EOF +int main() { return 0;} +_LT_EOF + echo "$LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a" >&5 + $LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a 2>conftest.err + _lt_result=$? + if test -s conftest.err && $GREP force_load conftest.err; then + cat conftest.err >&5 + elif test -f conftest && test 0 = "$_lt_result" && $GREP forced_load conftest >/dev/null 2>&1; then + lt_cv_ld_force_load=yes + else + cat conftest.err >&5 + fi + rm -f conftest.err libconftest.a conftest conftest.c + rm -rf conftest.dSYM + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_force_load" >&5 +$as_echo "$lt_cv_ld_force_load" >&6; } + case $host_os in + rhapsody* | darwin1.[012]) + _lt_dar_allow_undefined='$wl-undefined ${wl}suppress' ;; + darwin1.*) + _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;; + darwin*) # darwin 5.x on + # if running on 10.5 or later, the deployment target defaults + # to the OS version, if on x86, and 10.4, the deployment + # target defaults to 10.4. Don't you love it? + case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in + 10.0,*86*-darwin8*|10.0,*-darwin[91]*) + _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;; + 10.[012][,.]*) + _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;; + 10.*) + _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;; + esac + ;; + esac + if test yes = "$lt_cv_apple_cc_single_mod"; then + _lt_dar_single_mod='$single_module' + fi + if test yes = "$lt_cv_ld_exported_symbols_list"; then + _lt_dar_export_syms=' $wl-exported_symbols_list,$output_objdir/$libname-symbols.expsym' + else + _lt_dar_export_syms='~$NMEDIT -s $output_objdir/$libname-symbols.expsym $lib' + fi + if test : != "$DSYMUTIL" && test no = "$lt_cv_ld_force_load"; then + _lt_dsymutil='~$DSYMUTIL $lib || :' + else + _lt_dsymutil= + fi + ;; + esac + +# func_munge_path_list VARIABLE PATH +# ----------------------------------- +# VARIABLE is name of variable containing _space_ separated list of +# directories to be munged by the contents of PATH, which is string +# having a format: +# "DIR[:DIR]:" +# string "DIR[ DIR]" will be prepended to VARIABLE +# ":DIR[:DIR]" +# string "DIR[ DIR]" will be appended to VARIABLE +# "DIRP[:DIRP]::[DIRA:]DIRA" +# string "DIRP[ DIRP]" will be prepended to VARIABLE and string +# "DIRA[ DIRA]" will be appended to VARIABLE +# "DIR[:DIR]" +# VARIABLE will be replaced by "DIR[ DIR]" +func_munge_path_list () +{ + case x$2 in + x) + ;; + *:) + eval $1=\"`$ECHO $2 | $SED 's/:/ /g'` \$$1\" + ;; + x:*) + eval $1=\"\$$1 `$ECHO $2 | $SED 's/:/ /g'`\" + ;; + *::*) + eval $1=\"\$$1\ `$ECHO $2 | $SED -e 's/.*:://' -e 's/:/ /g'`\" + eval $1=\"`$ECHO $2 | $SED -e 's/::.*//' -e 's/:/ /g'`\ \$$1\" + ;; + *) + eval $1=\"`$ECHO $2 | $SED 's/:/ /g'`\" + ;; + esac +} + +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&5 +$as_echo_n "checking how to run the C preprocessor... " >&6; } +# On Suns, sometimes $CPP names a directory. +if test -n "$CPP" && test -d "$CPP"; then + CPP= +fi +if test -z "$CPP"; then + if ${ac_cv_prog_CPP+:} false; then : + $as_echo_n "(cached) " >&6 +else + # Double quotes because CPP needs to be expanded + for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp" + do + ac_preproc_ok=false +for ac_c_preproc_warn_flag in '' yes +do + # Use a header file that comes with gcc, so configuring glibc + # with a fresh cross-compiler works. + # Prefer to if __STDC__ is defined, since + # exists even on freestanding compilers. + # On the NeXT, cc -E runs the code through the compiler's parser, + # not just through cpp. "Syntax error" is here to catch this case. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#ifdef __STDC__ +# include +#else +# include +#endif + Syntax error +_ACEOF +if ac_fn_c_try_cpp "$LINENO"; then : + +else + # Broken: fails on valid input. +continue +fi +rm -f conftest.err conftest.i conftest.$ac_ext + + # OK, works on sane cases. Now check whether nonexistent headers + # can be detected and how. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +_ACEOF +if ac_fn_c_try_cpp "$LINENO"; then : + # Broken: success on invalid input. +continue +else + # Passes both tests. +ac_preproc_ok=: +break +fi +rm -f conftest.err conftest.i conftest.$ac_ext + +done +# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. +rm -f conftest.i conftest.err conftest.$ac_ext +if $ac_preproc_ok; then : + break +fi + + done + ac_cv_prog_CPP=$CPP + +fi + CPP=$ac_cv_prog_CPP +else + ac_cv_prog_CPP=$CPP +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $CPP" >&5 +$as_echo "$CPP" >&6; } +ac_preproc_ok=false +for ac_c_preproc_warn_flag in '' yes +do + # Use a header file that comes with gcc, so configuring glibc + # with a fresh cross-compiler works. + # Prefer to if __STDC__ is defined, since + # exists even on freestanding compilers. + # On the NeXT, cc -E runs the code through the compiler's parser, + # not just through cpp. "Syntax error" is here to catch this case. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#ifdef __STDC__ +# include +#else +# include +#endif + Syntax error +_ACEOF +if ac_fn_c_try_cpp "$LINENO"; then : + +else + # Broken: fails on valid input. +continue +fi +rm -f conftest.err conftest.i conftest.$ac_ext + + # OK, works on sane cases. Now check whether nonexistent headers + # can be detected and how. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +_ACEOF +if ac_fn_c_try_cpp "$LINENO"; then : + # Broken: success on invalid input. +continue +else + # Passes both tests. +ac_preproc_ok=: +break +fi +rm -f conftest.err conftest.i conftest.$ac_ext + +done +# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. +rm -f conftest.i conftest.err conftest.$ac_ext +if $ac_preproc_ok; then : + +else + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "C preprocessor \"$CPP\" fails sanity check +See \`config.log' for more details" "$LINENO" 5; } +fi + +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5 +$as_echo_n "checking for ANSI C header files... " >&6; } +if ${ac_cv_header_stdc+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +#include +#include +#include + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_cv_header_stdc=yes +else + ac_cv_header_stdc=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + +if test $ac_cv_header_stdc = yes; then + # SunOS 4.x string.h does not declare mem*, contrary to ANSI. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "memchr" >/dev/null 2>&1; then : + +else + ac_cv_header_stdc=no +fi +rm -f conftest* + +fi + +if test $ac_cv_header_stdc = yes; then + # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "free" >/dev/null 2>&1; then : + +else + ac_cv_header_stdc=no +fi +rm -f conftest* + +fi + +if test $ac_cv_header_stdc = yes; then + # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi. + if test "$cross_compiling" = yes; then : + : +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +#include +#if ((' ' & 0x0FF) == 0x020) +# define ISLOWER(c) ('a' <= (c) && (c) <= 'z') +# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) +#else +# define ISLOWER(c) \ + (('a' <= (c) && (c) <= 'i') \ + || ('j' <= (c) && (c) <= 'r') \ + || ('s' <= (c) && (c) <= 'z')) +# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c)) +#endif + +#define XOR(e, f) (((e) && !(f)) || (!(e) && (f))) +int +main () +{ + int i; + for (i = 0; i < 256; i++) + if (XOR (islower (i), ISLOWER (i)) + || toupper (i) != TOUPPER (i)) + return 2; + return 0; +} +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + +else + ac_cv_header_stdc=no +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext +fi + +fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5 +$as_echo "$ac_cv_header_stdc" >&6; } +if test $ac_cv_header_stdc = yes; then + +$as_echo "#define STDC_HEADERS 1" >>confdefs.h + +fi + +# On IRIX 5.3, sys/types and inttypes.h are conflicting. +for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \ + inttypes.h stdint.h unistd.h +do : + as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` +ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default +" +if eval test \"x\$"$as_ac_Header"\" = x"yes"; then : + cat >>confdefs.h <<_ACEOF +#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 +_ACEOF + +fi + +done + + +for ac_header in dlfcn.h +do : + ac_fn_c_check_header_compile "$LINENO" "dlfcn.h" "ac_cv_header_dlfcn_h" "$ac_includes_default +" +if test "x$ac_cv_header_dlfcn_h" = xyes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_DLFCN_H 1 +_ACEOF + +fi + +done + + + + +func_stripname_cnf () +{ + case $2 in + .*) func_stripname_result=`$ECHO "$3" | $SED "s%^$1%%; s%\\\\$2\$%%"`;; + *) func_stripname_result=`$ECHO "$3" | $SED "s%^$1%%; s%$2\$%%"`;; + esac +} # func_stripname_cnf + + + + + +# Set options + + + + enable_dlopen=no + + + enable_win32_dll=no + + + # Check whether --enable-shared was given. +if test "${enable_shared+set}" = set; then : + enableval=$enable_shared; p=${PACKAGE-default} + case $enableval in + yes) enable_shared=yes ;; + no) enable_shared=no ;; + *) + enable_shared=no + # Look at the argument we got. We use all the common list separators. + lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR, + for pkg in $enableval; do + IFS=$lt_save_ifs + if test "X$pkg" = "X$p"; then + enable_shared=yes + fi + done + IFS=$lt_save_ifs + ;; + esac +else + enable_shared=yes +fi + + + + + + + + + + # Check whether --enable-static was given. +if test "${enable_static+set}" = set; then : + enableval=$enable_static; p=${PACKAGE-default} + case $enableval in + yes) enable_static=yes ;; + no) enable_static=no ;; + *) + enable_static=no + # Look at the argument we got. We use all the common list separators. + lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR, + for pkg in $enableval; do + IFS=$lt_save_ifs + if test "X$pkg" = "X$p"; then + enable_static=yes + fi + done + IFS=$lt_save_ifs + ;; + esac +else + enable_static=yes +fi + + + + + + + + + + +# Check whether --with-pic was given. +if test "${with_pic+set}" = set; then : + withval=$with_pic; lt_p=${PACKAGE-default} + case $withval in + yes|no) pic_mode=$withval ;; + *) + pic_mode=default + # Look at the argument we got. We use all the common list separators. + lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR, + for lt_pkg in $withval; do + IFS=$lt_save_ifs + if test "X$lt_pkg" = "X$lt_p"; then + pic_mode=yes + fi + done + IFS=$lt_save_ifs + ;; + esac +else + pic_mode=default +fi + + + + + + + + + # Check whether --enable-fast-install was given. +if test "${enable_fast_install+set}" = set; then : + enableval=$enable_fast_install; p=${PACKAGE-default} + case $enableval in + yes) enable_fast_install=yes ;; + no) enable_fast_install=no ;; + *) + enable_fast_install=no + # Look at the argument we got. We use all the common list separators. + lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR, + for pkg in $enableval; do + IFS=$lt_save_ifs + if test "X$pkg" = "X$p"; then + enable_fast_install=yes + fi + done + IFS=$lt_save_ifs + ;; + esac +else + enable_fast_install=yes +fi + + + + + + + + + shared_archive_member_spec= +case $host,$enable_shared in +power*-*-aix[5-9]*,yes) + { $as_echo "$as_me:${as_lineno-$LINENO}: checking which variant of shared library versioning to provide" >&5 +$as_echo_n "checking which variant of shared library versioning to provide... " >&6; } + +# Check whether --with-aix-soname was given. +if test "${with_aix_soname+set}" = set; then : + withval=$with_aix_soname; case $withval in + aix|svr4|both) + ;; + *) + as_fn_error $? "Unknown argument to --with-aix-soname" "$LINENO" 5 + ;; + esac + lt_cv_with_aix_soname=$with_aix_soname +else + if ${lt_cv_with_aix_soname+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_with_aix_soname=aix +fi + + with_aix_soname=$lt_cv_with_aix_soname +fi + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_aix_soname" >&5 +$as_echo "$with_aix_soname" >&6; } + if test aix != "$with_aix_soname"; then + # For the AIX way of multilib, we name the shared archive member + # based on the bitwidth used, traditionally 'shr.o' or 'shr_64.o', + # and 'shr.imp' or 'shr_64.imp', respectively, for the Import File. + # Even when GNU compilers ignore OBJECT_MODE but need '-maix64' flag, + # the AIX toolchain works better with OBJECT_MODE set (default 32). + if test 64 = "${OBJECT_MODE-32}"; then + shared_archive_member_spec=shr_64 + else + shared_archive_member_spec=shr + fi + fi + ;; +*) + with_aix_soname=aix + ;; +esac + + + + + + + + + + +# This can be used to rebuild libtool when needed +LIBTOOL_DEPS=$ltmain + +# Always use our own libtool. +LIBTOOL='$(SHELL) $(top_builddir)/libtool' + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +test -z "$LN_S" && LN_S="ln -s" + + + + + + + + + + + + + + +if test -n "${ZSH_VERSION+set}"; then + setopt NO_GLOB_SUBST +fi + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for objdir" >&5 +$as_echo_n "checking for objdir... " >&6; } +if ${lt_cv_objdir+:} false; then : + $as_echo_n "(cached) " >&6 +else + rm -f .libs 2>/dev/null +mkdir .libs 2>/dev/null +if test -d .libs; then + lt_cv_objdir=.libs +else + # MS-DOS does not allow filenames that begin with a dot. + lt_cv_objdir=_libs +fi +rmdir .libs 2>/dev/null +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_objdir" >&5 +$as_echo "$lt_cv_objdir" >&6; } +objdir=$lt_cv_objdir + + + + + +cat >>confdefs.h <<_ACEOF +#define LT_OBJDIR "$lt_cv_objdir/" +_ACEOF + + + + +case $host_os in +aix3*) + # AIX sometimes has problems with the GCC collect2 program. For some + # reason, if we set the COLLECT_NAMES environment variable, the problems + # vanish in a puff of smoke. + if test set != "${COLLECT_NAMES+set}"; then + COLLECT_NAMES= + export COLLECT_NAMES + fi + ;; +esac + +# Global variables: +ofile=libtool +can_build_shared=yes + +# All known linkers require a '.a' archive for static linking (except MSVC, +# which needs '.lib'). +libext=a + +with_gnu_ld=$lt_cv_prog_gnu_ld + +old_CC=$CC +old_CFLAGS=$CFLAGS + +# Set sane defaults for various variables +test -z "$CC" && CC=cc +test -z "$LTCC" && LTCC=$CC +test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS +test -z "$LD" && LD=ld +test -z "$ac_objext" && ac_objext=o + +func_cc_basename $compiler +cc_basename=$func_cc_basename_result + + +# Only perform the check for file, if the check method requires it +test -z "$MAGIC_CMD" && MAGIC_CMD=file +case $deplibs_check_method in +file_magic*) + if test "$file_magic_cmd" = '$MAGIC_CMD'; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ${ac_tool_prefix}file" >&5 +$as_echo_n "checking for ${ac_tool_prefix}file... " >&6; } +if ${lt_cv_path_MAGIC_CMD+:} false; then : + $as_echo_n "(cached) " >&6 +else + case $MAGIC_CMD in +[\\/*] | ?:[\\/]*) + lt_cv_path_MAGIC_CMD=$MAGIC_CMD # Let the user override the test with a path. + ;; +*) + lt_save_MAGIC_CMD=$MAGIC_CMD + lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR + ac_dummy="/usr/bin$PATH_SEPARATOR$PATH" + for ac_dir in $ac_dummy; do + IFS=$lt_save_ifs + test -z "$ac_dir" && ac_dir=. + if test -f "$ac_dir/${ac_tool_prefix}file"; then + lt_cv_path_MAGIC_CMD=$ac_dir/"${ac_tool_prefix}file" + if test -n "$file_magic_test_file"; then + case $deplibs_check_method in + "file_magic "*) + file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"` + MAGIC_CMD=$lt_cv_path_MAGIC_CMD + if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | + $EGREP "$file_magic_regex" > /dev/null; then + : + else + cat <<_LT_EOF 1>&2 + +*** Warning: the command libtool uses to detect shared libraries, +*** $file_magic_cmd, produces output that libtool cannot recognize. +*** The result is that libtool may fail to recognize shared libraries +*** as such. This will affect the creation of libtool libraries that +*** depend on shared libraries, but programs linked with such libtool +*** libraries will work regardless of this problem. Nevertheless, you +*** may want to report the problem to your system manager and/or to +*** bug-libtool@gnu.org + +_LT_EOF + fi ;; + esac + fi + break + fi + done + IFS=$lt_save_ifs + MAGIC_CMD=$lt_save_MAGIC_CMD + ;; +esac +fi + +MAGIC_CMD=$lt_cv_path_MAGIC_CMD +if test -n "$MAGIC_CMD"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5 +$as_echo "$MAGIC_CMD" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + + + +if test -z "$lt_cv_path_MAGIC_CMD"; then + if test -n "$ac_tool_prefix"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for file" >&5 +$as_echo_n "checking for file... " >&6; } +if ${lt_cv_path_MAGIC_CMD+:} false; then : + $as_echo_n "(cached) " >&6 +else + case $MAGIC_CMD in +[\\/*] | ?:[\\/]*) + lt_cv_path_MAGIC_CMD=$MAGIC_CMD # Let the user override the test with a path. + ;; +*) + lt_save_MAGIC_CMD=$MAGIC_CMD + lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR + ac_dummy="/usr/bin$PATH_SEPARATOR$PATH" + for ac_dir in $ac_dummy; do + IFS=$lt_save_ifs + test -z "$ac_dir" && ac_dir=. + if test -f "$ac_dir/file"; then + lt_cv_path_MAGIC_CMD=$ac_dir/"file" + if test -n "$file_magic_test_file"; then + case $deplibs_check_method in + "file_magic "*) + file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"` + MAGIC_CMD=$lt_cv_path_MAGIC_CMD + if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | + $EGREP "$file_magic_regex" > /dev/null; then + : + else + cat <<_LT_EOF 1>&2 + +*** Warning: the command libtool uses to detect shared libraries, +*** $file_magic_cmd, produces output that libtool cannot recognize. +*** The result is that libtool may fail to recognize shared libraries +*** as such. This will affect the creation of libtool libraries that +*** depend on shared libraries, but programs linked with such libtool +*** libraries will work regardless of this problem. Nevertheless, you +*** may want to report the problem to your system manager and/or to +*** bug-libtool@gnu.org + +_LT_EOF + fi ;; + esac + fi + break + fi + done + IFS=$lt_save_ifs + MAGIC_CMD=$lt_save_MAGIC_CMD + ;; +esac +fi + +MAGIC_CMD=$lt_cv_path_MAGIC_CMD +if test -n "$MAGIC_CMD"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5 +$as_echo "$MAGIC_CMD" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + else + MAGIC_CMD=: + fi +fi + + fi + ;; +esac + +# Use C for the default configuration in the libtool script + +lt_save_CC=$CC +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu + + +# Source file extension for C test sources. +ac_ext=c + +# Object file extension for compiled C test sources. +objext=o +objext=$objext + +# Code to be used in simple compile tests +lt_simple_compile_test_code="int some_variable = 0;" + +# Code to be used in simple link tests +lt_simple_link_test_code='int main(){return(0);}' + + + + + + + +# If no C compiler was specified, use CC. +LTCC=${LTCC-"$CC"} + +# If no C compiler flags were specified, use CFLAGS. +LTCFLAGS=${LTCFLAGS-"$CFLAGS"} + +# Allow CC to be a program name with arguments. +compiler=$CC + +# Save the default compiler, since it gets overwritten when the other +# tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP. +compiler_DEFAULT=$CC + +# save warnings/boilerplate of simple test code +ac_outfile=conftest.$ac_objext +echo "$lt_simple_compile_test_code" >conftest.$ac_ext +eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err +_lt_compiler_boilerplate=`cat conftest.err` +$RM conftest* + +ac_outfile=conftest.$ac_objext +echo "$lt_simple_link_test_code" >conftest.$ac_ext +eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err +_lt_linker_boilerplate=`cat conftest.err` +$RM -r conftest* + + +## CAVEAT EMPTOR: +## There is no encapsulation within the following macros, do not change +## the running order or otherwise move them around unless you know exactly +## what you are doing... +if test -n "$compiler"; then + +lt_prog_compiler_no_builtin_flag= + +if test yes = "$GCC"; then + case $cc_basename in + nvcc*) + lt_prog_compiler_no_builtin_flag=' -Xcompiler -fno-builtin' ;; + *) + lt_prog_compiler_no_builtin_flag=' -fno-builtin' ;; + esac + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -fno-rtti -fno-exceptions" >&5 +$as_echo_n "checking if $compiler supports -fno-rtti -fno-exceptions... " >&6; } +if ${lt_cv_prog_compiler_rtti_exceptions+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_prog_compiler_rtti_exceptions=no + ac_outfile=conftest.$ac_objext + echo "$lt_simple_compile_test_code" > conftest.$ac_ext + lt_compiler_flag="-fno-rtti -fno-exceptions" ## exclude from sc_useless_quotes_in_assignment + # Insert the option either (1) after the last *FLAGS variable, or + # (2) before a word containing "conftest.", or (3) at the end. + # Note that $ac_compile itself does not contain backslashes and begins + # with a dollar sign (not a hyphen), so the echo should work correctly. + # The option is referenced via a variable to avoid confusing sed. + lt_compile=`echo "$ac_compile" | $SED \ + -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ + -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ + -e 's:$: $lt_compiler_flag:'` + (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5) + (eval "$lt_compile" 2>conftest.err) + ac_status=$? + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + if (exit $ac_status) && test -s "$ac_outfile"; then + # The compiler can only warn and ignore the option if not recognized + # So say no if there are warnings other than the usual output. + $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp + $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 + if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then + lt_cv_prog_compiler_rtti_exceptions=yes + fi + fi + $RM conftest* + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_rtti_exceptions" >&5 +$as_echo "$lt_cv_prog_compiler_rtti_exceptions" >&6; } + +if test yes = "$lt_cv_prog_compiler_rtti_exceptions"; then + lt_prog_compiler_no_builtin_flag="$lt_prog_compiler_no_builtin_flag -fno-rtti -fno-exceptions" +else + : +fi + +fi + + + + + + + lt_prog_compiler_wl= +lt_prog_compiler_pic= +lt_prog_compiler_static= + + + if test yes = "$GCC"; then + lt_prog_compiler_wl='-Wl,' + lt_prog_compiler_static='-static' + + case $host_os in + aix*) + # All AIX code is PIC. + if test ia64 = "$host_cpu"; then + # AIX 5 now supports IA64 processor + lt_prog_compiler_static='-Bstatic' + fi + lt_prog_compiler_pic='-fPIC' + ;; + + amigaos*) + case $host_cpu in + powerpc) + # see comment about AmigaOS4 .so support + lt_prog_compiler_pic='-fPIC' + ;; + m68k) + # FIXME: we need at least 68020 code to build shared libraries, but + # adding the '-m68020' flag to GCC prevents building anything better, + # like '-m68040'. + lt_prog_compiler_pic='-m68020 -resident32 -malways-restore-a4' + ;; + esac + ;; + + beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) + # PIC is the default for these OSes. + ;; + + mingw* | cygwin* | pw32* | os2* | cegcc*) + # This hack is so that the source file can tell whether it is being + # built for inclusion in a dll (and should export symbols for example). + # Although the cygwin gcc ignores -fPIC, still need this for old-style + # (--disable-auto-import) libraries + lt_prog_compiler_pic='-DDLL_EXPORT' + case $host_os in + os2*) + lt_prog_compiler_static='$wl-static' + ;; + esac + ;; + + darwin* | rhapsody*) + # PIC is the default on this platform + # Common symbols not allowed in MH_DYLIB files + lt_prog_compiler_pic='-fno-common' + ;; + + haiku*) + # PIC is the default for Haiku. + # The "-static" flag exists, but is broken. + lt_prog_compiler_static= + ;; + + hpux*) + # PIC is the default for 64-bit PA HP-UX, but not for 32-bit + # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag + # sets the default TLS model and affects inlining. + case $host_cpu in + hppa*64*) + # +Z the default + ;; + *) + lt_prog_compiler_pic='-fPIC' + ;; + esac + ;; + + interix[3-9]*) + # Interix 3.x gcc -fpic/-fPIC options generate broken code. + # Instead, we relocate shared libraries at runtime. + ;; + + msdosdjgpp*) + # Just because we use GCC doesn't mean we suddenly get shared libraries + # on systems that don't support them. + lt_prog_compiler_can_build_shared=no + enable_shared=no + ;; + + *nto* | *qnx*) + # QNX uses GNU C++, but need to define -shared option too, otherwise + # it will coredump. + lt_prog_compiler_pic='-fPIC -shared' + ;; + + sysv4*MP*) + if test -d /usr/nec; then + lt_prog_compiler_pic=-Kconform_pic + fi + ;; + + *) + lt_prog_compiler_pic='-fPIC' + ;; + esac + + case $cc_basename in + nvcc*) # Cuda Compiler Driver 2.2 + lt_prog_compiler_wl='-Xlinker ' + if test -n "$lt_prog_compiler_pic"; then + lt_prog_compiler_pic="-Xcompiler $lt_prog_compiler_pic" + fi + ;; + esac + else + # PORTME Check for flag to pass linker flags through the system compiler. + case $host_os in + aix*) + lt_prog_compiler_wl='-Wl,' + if test ia64 = "$host_cpu"; then + # AIX 5 now supports IA64 processor + lt_prog_compiler_static='-Bstatic' + else + lt_prog_compiler_static='-bnso -bI:/lib/syscalls.exp' + fi + ;; + + darwin* | rhapsody*) + # PIC is the default on this platform + # Common symbols not allowed in MH_DYLIB files + lt_prog_compiler_pic='-fno-common' + case $cc_basename in + nagfor*) + # NAG Fortran compiler + lt_prog_compiler_wl='-Wl,-Wl,,' + lt_prog_compiler_pic='-PIC' + lt_prog_compiler_static='-Bstatic' + ;; + esac + ;; + + mingw* | cygwin* | pw32* | os2* | cegcc*) + # This hack is so that the source file can tell whether it is being + # built for inclusion in a dll (and should export symbols for example). + lt_prog_compiler_pic='-DDLL_EXPORT' + case $host_os in + os2*) + lt_prog_compiler_static='$wl-static' + ;; + esac + ;; + + hpux9* | hpux10* | hpux11*) + lt_prog_compiler_wl='-Wl,' + # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but + # not for PA HP-UX. + case $host_cpu in + hppa*64*|ia64*) + # +Z the default + ;; + *) + lt_prog_compiler_pic='+Z' + ;; + esac + # Is there a better lt_prog_compiler_static that works with the bundled CC? + lt_prog_compiler_static='$wl-a ${wl}archive' + ;; + + irix5* | irix6* | nonstopux*) + lt_prog_compiler_wl='-Wl,' + # PIC (with -KPIC) is the default. + lt_prog_compiler_static='-non_shared' + ;; + + linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) + case $cc_basename in + # old Intel for x86_64, which still supported -KPIC. + ecc*) + lt_prog_compiler_wl='-Wl,' + lt_prog_compiler_pic='-KPIC' + lt_prog_compiler_static='-static' + ;; + # icc used to be incompatible with GCC. + # ICC 10 doesn't accept -KPIC any more. + icc* | ifort*) + lt_prog_compiler_wl='-Wl,' + lt_prog_compiler_pic='-fPIC' + lt_prog_compiler_static='-static' + ;; + # Lahey Fortran 8.1. + lf95*) + lt_prog_compiler_wl='-Wl,' + lt_prog_compiler_pic='--shared' + lt_prog_compiler_static='--static' + ;; + nagfor*) + # NAG Fortran compiler + lt_prog_compiler_wl='-Wl,-Wl,,' + lt_prog_compiler_pic='-PIC' + lt_prog_compiler_static='-Bstatic' + ;; + tcc*) + # Fabrice Bellard et al's Tiny C Compiler + lt_prog_compiler_wl='-Wl,' + lt_prog_compiler_pic='-fPIC' + lt_prog_compiler_static='-static' + ;; + pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*) + # Portland Group compilers (*not* the Pentium gcc compiler, + # which looks to be a dead project) + lt_prog_compiler_wl='-Wl,' + lt_prog_compiler_pic='-fpic' + lt_prog_compiler_static='-Bstatic' + ;; + ccc*) + lt_prog_compiler_wl='-Wl,' + # All Alpha code is PIC. + lt_prog_compiler_static='-non_shared' + ;; + xl* | bgxl* | bgf* | mpixl*) + # IBM XL C 8.0/Fortran 10.1, 11.1 on PPC and BlueGene + lt_prog_compiler_wl='-Wl,' + lt_prog_compiler_pic='-qpic' + lt_prog_compiler_static='-qstaticlink' + ;; + *) + case `$CC -V 2>&1 | sed 5q` in + *Sun\ Ceres\ Fortran* | *Sun*Fortran*\ [1-7].* | *Sun*Fortran*\ 8.[0-3]*) + # Sun Fortran 8.3 passes all unrecognized flags to the linker + lt_prog_compiler_pic='-KPIC' + lt_prog_compiler_static='-Bstatic' + lt_prog_compiler_wl='' + ;; + *Sun\ F* | *Sun*Fortran*) + lt_prog_compiler_pic='-KPIC' + lt_prog_compiler_static='-Bstatic' + lt_prog_compiler_wl='-Qoption ld ' + ;; + *Sun\ C*) + # Sun C 5.9 + lt_prog_compiler_pic='-KPIC' + lt_prog_compiler_static='-Bstatic' + lt_prog_compiler_wl='-Wl,' + ;; + *Intel*\ [CF]*Compiler*) + lt_prog_compiler_wl='-Wl,' + lt_prog_compiler_pic='-fPIC' + lt_prog_compiler_static='-static' + ;; + *Portland\ Group*) + lt_prog_compiler_wl='-Wl,' + lt_prog_compiler_pic='-fpic' + lt_prog_compiler_static='-Bstatic' + ;; + esac + ;; + esac + ;; + + newsos6) + lt_prog_compiler_pic='-KPIC' + lt_prog_compiler_static='-Bstatic' + ;; + + *nto* | *qnx*) + # QNX uses GNU C++, but need to define -shared option too, otherwise + # it will coredump. + lt_prog_compiler_pic='-fPIC -shared' + ;; + + osf3* | osf4* | osf5*) + lt_prog_compiler_wl='-Wl,' + # All OSF/1 code is PIC. + lt_prog_compiler_static='-non_shared' + ;; + + rdos*) + lt_prog_compiler_static='-non_shared' + ;; + + solaris*) + lt_prog_compiler_pic='-KPIC' + lt_prog_compiler_static='-Bstatic' + case $cc_basename in + f77* | f90* | f95* | sunf77* | sunf90* | sunf95*) + lt_prog_compiler_wl='-Qoption ld ';; + *) + lt_prog_compiler_wl='-Wl,';; + esac + ;; + + sunos4*) + lt_prog_compiler_wl='-Qoption ld ' + lt_prog_compiler_pic='-PIC' + lt_prog_compiler_static='-Bstatic' + ;; + + sysv4 | sysv4.2uw2* | sysv4.3*) + lt_prog_compiler_wl='-Wl,' + lt_prog_compiler_pic='-KPIC' + lt_prog_compiler_static='-Bstatic' + ;; + + sysv4*MP*) + if test -d /usr/nec; then + lt_prog_compiler_pic='-Kconform_pic' + lt_prog_compiler_static='-Bstatic' + fi + ;; + + sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*) + lt_prog_compiler_wl='-Wl,' + lt_prog_compiler_pic='-KPIC' + lt_prog_compiler_static='-Bstatic' + ;; + + unicos*) + lt_prog_compiler_wl='-Wl,' + lt_prog_compiler_can_build_shared=no + ;; + + uts4*) + lt_prog_compiler_pic='-pic' + lt_prog_compiler_static='-Bstatic' + ;; + + *) + lt_prog_compiler_can_build_shared=no + ;; + esac + fi + +case $host_os in + # For platforms that do not support PIC, -DPIC is meaningless: + *djgpp*) + lt_prog_compiler_pic= + ;; + *) + lt_prog_compiler_pic="$lt_prog_compiler_pic -DPIC" + ;; +esac + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&5 +$as_echo_n "checking for $compiler option to produce PIC... " >&6; } +if ${lt_cv_prog_compiler_pic+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_prog_compiler_pic=$lt_prog_compiler_pic +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic" >&5 +$as_echo "$lt_cv_prog_compiler_pic" >&6; } +lt_prog_compiler_pic=$lt_cv_prog_compiler_pic + +# +# Check to make sure the PIC flag actually works. +# +if test -n "$lt_prog_compiler_pic"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler PIC flag $lt_prog_compiler_pic works" >&5 +$as_echo_n "checking if $compiler PIC flag $lt_prog_compiler_pic works... " >&6; } +if ${lt_cv_prog_compiler_pic_works+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_prog_compiler_pic_works=no + ac_outfile=conftest.$ac_objext + echo "$lt_simple_compile_test_code" > conftest.$ac_ext + lt_compiler_flag="$lt_prog_compiler_pic -DPIC" ## exclude from sc_useless_quotes_in_assignment + # Insert the option either (1) after the last *FLAGS variable, or + # (2) before a word containing "conftest.", or (3) at the end. + # Note that $ac_compile itself does not contain backslashes and begins + # with a dollar sign (not a hyphen), so the echo should work correctly. + # The option is referenced via a variable to avoid confusing sed. + lt_compile=`echo "$ac_compile" | $SED \ + -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ + -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ + -e 's:$: $lt_compiler_flag:'` + (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5) + (eval "$lt_compile" 2>conftest.err) + ac_status=$? + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + if (exit $ac_status) && test -s "$ac_outfile"; then + # The compiler can only warn and ignore the option if not recognized + # So say no if there are warnings other than the usual output. + $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp + $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 + if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then + lt_cv_prog_compiler_pic_works=yes + fi + fi + $RM conftest* + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic_works" >&5 +$as_echo "$lt_cv_prog_compiler_pic_works" >&6; } + +if test yes = "$lt_cv_prog_compiler_pic_works"; then + case $lt_prog_compiler_pic in + "" | " "*) ;; + *) lt_prog_compiler_pic=" $lt_prog_compiler_pic" ;; + esac +else + lt_prog_compiler_pic= + lt_prog_compiler_can_build_shared=no +fi + +fi + + + + + + + + + + + +# +# Check to make sure the static flag actually works. +# +wl=$lt_prog_compiler_wl eval lt_tmp_static_flag=\"$lt_prog_compiler_static\" +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler static flag $lt_tmp_static_flag works" >&5 +$as_echo_n "checking if $compiler static flag $lt_tmp_static_flag works... " >&6; } +if ${lt_cv_prog_compiler_static_works+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_prog_compiler_static_works=no + save_LDFLAGS=$LDFLAGS + LDFLAGS="$LDFLAGS $lt_tmp_static_flag" + echo "$lt_simple_link_test_code" > conftest.$ac_ext + if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then + # The linker can only warn and ignore the option if not recognized + # So say no if there are warnings + if test -s conftest.err; then + # Append any errors to the config.log. + cat conftest.err 1>&5 + $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp + $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 + if diff conftest.exp conftest.er2 >/dev/null; then + lt_cv_prog_compiler_static_works=yes + fi + else + lt_cv_prog_compiler_static_works=yes + fi + fi + $RM -r conftest* + LDFLAGS=$save_LDFLAGS + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_static_works" >&5 +$as_echo "$lt_cv_prog_compiler_static_works" >&6; } + +if test yes = "$lt_cv_prog_compiler_static_works"; then + : +else + lt_prog_compiler_static= +fi + + + + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5 +$as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; } +if ${lt_cv_prog_compiler_c_o+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_prog_compiler_c_o=no + $RM -r conftest 2>/dev/null + mkdir conftest + cd conftest + mkdir out + echo "$lt_simple_compile_test_code" > conftest.$ac_ext + + lt_compiler_flag="-o out/conftest2.$ac_objext" + # Insert the option either (1) after the last *FLAGS variable, or + # (2) before a word containing "conftest.", or (3) at the end. + # Note that $ac_compile itself does not contain backslashes and begins + # with a dollar sign (not a hyphen), so the echo should work correctly. + lt_compile=`echo "$ac_compile" | $SED \ + -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ + -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ + -e 's:$: $lt_compiler_flag:'` + (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5) + (eval "$lt_compile" 2>out/conftest.err) + ac_status=$? + cat out/conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + if (exit $ac_status) && test -s out/conftest2.$ac_objext + then + # The compiler can only warn and ignore the option if not recognized + # So say no if there are warnings + $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp + $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2 + if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then + lt_cv_prog_compiler_c_o=yes + fi + fi + chmod u+w . 2>&5 + $RM conftest* + # SGI C++ compiler will create directory out/ii_files/ for + # template instantiation + test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files + $RM out/* && rmdir out + cd .. + $RM -r conftest + $RM conftest* + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o" >&5 +$as_echo "$lt_cv_prog_compiler_c_o" >&6; } + + + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5 +$as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; } +if ${lt_cv_prog_compiler_c_o+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_prog_compiler_c_o=no + $RM -r conftest 2>/dev/null + mkdir conftest + cd conftest + mkdir out + echo "$lt_simple_compile_test_code" > conftest.$ac_ext + + lt_compiler_flag="-o out/conftest2.$ac_objext" + # Insert the option either (1) after the last *FLAGS variable, or + # (2) before a word containing "conftest.", or (3) at the end. + # Note that $ac_compile itself does not contain backslashes and begins + # with a dollar sign (not a hyphen), so the echo should work correctly. + lt_compile=`echo "$ac_compile" | $SED \ + -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ + -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ + -e 's:$: $lt_compiler_flag:'` + (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5) + (eval "$lt_compile" 2>out/conftest.err) + ac_status=$? + cat out/conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + if (exit $ac_status) && test -s out/conftest2.$ac_objext + then + # The compiler can only warn and ignore the option if not recognized + # So say no if there are warnings + $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp + $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2 + if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then + lt_cv_prog_compiler_c_o=yes + fi + fi + chmod u+w . 2>&5 + $RM conftest* + # SGI C++ compiler will create directory out/ii_files/ for + # template instantiation + test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files + $RM out/* && rmdir out + cd .. + $RM -r conftest + $RM conftest* + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o" >&5 +$as_echo "$lt_cv_prog_compiler_c_o" >&6; } + + + + +hard_links=nottested +if test no = "$lt_cv_prog_compiler_c_o" && test no != "$need_locks"; then + # do not overwrite the value of need_locks provided by the user + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if we can lock with hard links" >&5 +$as_echo_n "checking if we can lock with hard links... " >&6; } + hard_links=yes + $RM conftest* + ln conftest.a conftest.b 2>/dev/null && hard_links=no + touch conftest.a + ln conftest.a conftest.b 2>&5 || hard_links=no + ln conftest.a conftest.b 2>/dev/null && hard_links=no + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $hard_links" >&5 +$as_echo "$hard_links" >&6; } + if test no = "$hard_links"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&5 +$as_echo "$as_me: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&2;} + need_locks=warn + fi +else + need_locks=no +fi + + + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&5 +$as_echo_n "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; } + + runpath_var= + allow_undefined_flag= + always_export_symbols=no + archive_cmds= + archive_expsym_cmds= + compiler_needs_object=no + enable_shared_with_static_runtimes=no + export_dynamic_flag_spec= + export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' + hardcode_automatic=no + hardcode_direct=no + hardcode_direct_absolute=no + hardcode_libdir_flag_spec= + hardcode_libdir_separator= + hardcode_minus_L=no + hardcode_shlibpath_var=unsupported + inherit_rpath=no + link_all_deplibs=unknown + module_cmds= + module_expsym_cmds= + old_archive_from_new_cmds= + old_archive_from_expsyms_cmds= + thread_safe_flag_spec= + whole_archive_flag_spec= + # include_expsyms should be a list of space-separated symbols to be *always* + # included in the symbol list + include_expsyms= + # exclude_expsyms can be an extended regexp of symbols to exclude + # it will be wrapped by ' (' and ')$', so one must not match beginning or + # end of line. Example: 'a|bc|.*d.*' will exclude the symbols 'a' and 'bc', + # as well as any symbol that contains 'd'. + exclude_expsyms='_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*' + # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out + # platforms (ab)use it in PIC code, but their linkers get confused if + # the symbol is explicitly referenced. Since portable code cannot + # rely on this symbol name, it's probably fine to never include it in + # preloaded symbol tables. + # Exclude shared library initialization/finalization symbols. + extract_expsyms_cmds= + + case $host_os in + cygwin* | mingw* | pw32* | cegcc*) + # FIXME: the MSVC++ port hasn't been tested in a loooong time + # When not using gcc, we currently assume that we are using + # Microsoft Visual C++. + if test yes != "$GCC"; then + with_gnu_ld=no + fi + ;; + interix*) + # we just hope/assume this is gcc and not c89 (= MSVC++) + with_gnu_ld=yes + ;; + openbsd* | bitrig*) + with_gnu_ld=no + ;; + linux* | k*bsd*-gnu | gnu*) + link_all_deplibs=no + ;; + esac + + ld_shlibs=yes + + # On some targets, GNU ld is compatible enough with the native linker + # that we're better off using the native interface for both. + lt_use_gnu_ld_interface=no + if test yes = "$with_gnu_ld"; then + case $host_os in + aix*) + # The AIX port of GNU ld has always aspired to compatibility + # with the native linker. However, as the warning in the GNU ld + # block says, versions before 2.19.5* couldn't really create working + # shared libraries, regardless of the interface used. + case `$LD -v 2>&1` in + *\ \(GNU\ Binutils\)\ 2.19.5*) ;; + *\ \(GNU\ Binutils\)\ 2.[2-9]*) ;; + *\ \(GNU\ Binutils\)\ [3-9]*) ;; + *) + lt_use_gnu_ld_interface=yes + ;; + esac + ;; + *) + lt_use_gnu_ld_interface=yes + ;; + esac + fi + + if test yes = "$lt_use_gnu_ld_interface"; then + # If archive_cmds runs LD, not CC, wlarc should be empty + wlarc='$wl' + + # Set some defaults for GNU ld with shared library support. These + # are reset later if shared libraries are not supported. Putting them + # here allows them to be overridden if necessary. + runpath_var=LD_RUN_PATH + hardcode_libdir_flag_spec='$wl-rpath $wl$libdir' + export_dynamic_flag_spec='$wl--export-dynamic' + # ancient GNU ld didn't support --whole-archive et. al. + if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then + whole_archive_flag_spec=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive' + else + whole_archive_flag_spec= + fi + supports_anon_versioning=no + case `$LD -v | $SED -e 's/(^)\+)\s\+//' 2>&1` in + *GNU\ gold*) supports_anon_versioning=yes ;; + *\ [01].* | *\ 2.[0-9].* | *\ 2.10.*) ;; # catch versions < 2.11 + *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ... + *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ... + *\ 2.11.*) ;; # other 2.11 versions + *) supports_anon_versioning=yes ;; + esac + + # See if GNU ld supports shared libraries. + case $host_os in + aix[3-9]*) + # On AIX/PPC, the GNU linker is very broken + if test ia64 != "$host_cpu"; then + ld_shlibs=no + cat <<_LT_EOF 1>&2 + +*** Warning: the GNU linker, at least up to release 2.19, is reported +*** to be unable to reliably create shared libraries on AIX. +*** Therefore, libtool is disabling shared libraries support. If you +*** really care for shared libraries, you may want to install binutils +*** 2.20 or above, or modify your PATH so that a non-GNU linker is found. +*** You will then need to restart the configuration process. + +_LT_EOF + fi + ;; + + amigaos*) + case $host_cpu in + powerpc) + # see comment about AmigaOS4 .so support + archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' + archive_expsym_cmds='' + ;; + m68k) + archive_cmds='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' + hardcode_libdir_flag_spec='-L$libdir' + hardcode_minus_L=yes + ;; + esac + ;; + + beos*) + if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then + allow_undefined_flag=unsupported + # Joseph Beckenbach says some releases of gcc + # support --undefined. This deserves some investigation. FIXME + archive_cmds='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' + else + ld_shlibs=no + fi + ;; + + cygwin* | mingw* | pw32* | cegcc*) + # _LT_TAGVAR(hardcode_libdir_flag_spec, ) is actually meaningless, + # as there is no search path for DLLs. + hardcode_libdir_flag_spec='-L$libdir' + export_dynamic_flag_spec='$wl--export-all-symbols' + allow_undefined_flag=unsupported + always_export_symbols=no + enable_shared_with_static_runtimes=yes + export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[BCDGRS][ ]/s/.*[ ]\([^ ]*\)/\1 DATA/;s/^.*[ ]__nm__\([^ ]*\)[ ][^ ]*/\1 DATA/;/^I[ ]/d;/^[AITW][ ]/s/.* //'\'' | sort | uniq > $export_symbols' + exclude_expsyms='[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname' + + if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then + archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' + # If the export-symbols file already is a .def file, use it as + # is; otherwise, prepend EXPORTS... + archive_expsym_cmds='if test DEF = "`$SED -n -e '\''s/^[ ]*//'\'' -e '\''/^\(;.*\)*$/d'\'' -e '\''s/^\(EXPORTS\|LIBRARY\)\([ ].*\)*$/DEF/p'\'' -e q $export_symbols`" ; then + cp $export_symbols $output_objdir/$soname.def; + else + echo EXPORTS > $output_objdir/$soname.def; + cat $export_symbols >> $output_objdir/$soname.def; + fi~ + $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' + else + ld_shlibs=no + fi + ;; + + haiku*) + archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' + link_all_deplibs=yes + ;; + + os2*) + hardcode_libdir_flag_spec='-L$libdir' + hardcode_minus_L=yes + allow_undefined_flag=unsupported + shrext_cmds=.dll + archive_cmds='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ + $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ + $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ + $ECHO EXPORTS >> $output_objdir/$libname.def~ + emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~ + $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ + emximp -o $lib $output_objdir/$libname.def' + archive_expsym_cmds='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ + $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ + $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ + $ECHO EXPORTS >> $output_objdir/$libname.def~ + prefix_cmds="$SED"~ + if test EXPORTS = "`$SED 1q $export_symbols`"; then + prefix_cmds="$prefix_cmds -e 1d"; + fi~ + prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~ + cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~ + $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ + emximp -o $lib $output_objdir/$libname.def' + old_archive_From_new_cmds='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def' + enable_shared_with_static_runtimes=yes + ;; + + interix[3-9]*) + hardcode_direct=no + hardcode_shlibpath_var=no + hardcode_libdir_flag_spec='$wl-rpath,$libdir' + export_dynamic_flag_spec='$wl-E' + # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc. + # Instead, shared libraries are loaded at an image base (0x10000000 by + # default) and relocated if they conflict, which is a slow very memory + # consuming and fragmenting process. To avoid this, we pick a random, + # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link + # time. Moving up from 0x10000000 also allows more sbrk(2) space. + archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' + archive_expsym_cmds='sed "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--retain-symbols-file,$output_objdir/$soname.expsym $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' + ;; + + gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu) + tmp_diet=no + if test linux-dietlibc = "$host_os"; then + case $cc_basename in + diet\ *) tmp_diet=yes;; # linux-dietlibc with static linking (!diet-dyn) + esac + fi + if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \ + && test no = "$tmp_diet" + then + tmp_addflag=' $pic_flag' + tmp_sharedflag='-shared' + case $cc_basename,$host_cpu in + pgcc*) # Portland Group C compiler + whole_archive_flag_spec='$wl--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive' + tmp_addflag=' $pic_flag' + ;; + pgf77* | pgf90* | pgf95* | pgfortran*) + # Portland Group f77 and f90 compilers + whole_archive_flag_spec='$wl--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive' + tmp_addflag=' $pic_flag -Mnomain' ;; + ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64 + tmp_addflag=' -i_dynamic' ;; + efc*,ia64* | ifort*,ia64*) # Intel Fortran compiler on ia64 + tmp_addflag=' -i_dynamic -nofor_main' ;; + ifc* | ifort*) # Intel Fortran compiler + tmp_addflag=' -nofor_main' ;; + lf95*) # Lahey Fortran 8.1 + whole_archive_flag_spec= + tmp_sharedflag='--shared' ;; + nagfor*) # NAGFOR 5.3 + tmp_sharedflag='-Wl,-shared' ;; + xl[cC]* | bgxl[cC]* | mpixl[cC]*) # IBM XL C 8.0 on PPC (deal with xlf below) + tmp_sharedflag='-qmkshrobj' + tmp_addflag= ;; + nvcc*) # Cuda Compiler Driver 2.2 + whole_archive_flag_spec='$wl--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive' + compiler_needs_object=yes + ;; + esac + case `$CC -V 2>&1 | sed 5q` in + *Sun\ C*) # Sun C 5.9 + whole_archive_flag_spec='$wl--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive' + compiler_needs_object=yes + tmp_sharedflag='-G' ;; + *Sun\ F*) # Sun Fortran 8.3 + tmp_sharedflag='-G' ;; + esac + archive_cmds='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' + + if test yes = "$supports_anon_versioning"; then + archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~ + cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ + echo "local: *; };" >> $output_objdir/$libname.ver~ + $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib' + fi + + case $cc_basename in + tcc*) + export_dynamic_flag_spec='-rdynamic' + ;; + xlf* | bgf* | bgxlf* | mpixlf*) + # IBM XL Fortran 10.1 on PPC cannot create shared libs itself + whole_archive_flag_spec='--whole-archive$convenience --no-whole-archive' + hardcode_libdir_flag_spec='$wl-rpath $wl$libdir' + archive_cmds='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib' + if test yes = "$supports_anon_versioning"; then + archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~ + cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ + echo "local: *; };" >> $output_objdir/$libname.ver~ + $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib' + fi + ;; + esac + else + ld_shlibs=no + fi + ;; + + netbsd* | netbsdelf*-gnu) + if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then + archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib' + wlarc= + else + archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' + archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' + fi + ;; + + solaris*) + if $LD -v 2>&1 | $GREP 'BFD 2\.8' > /dev/null; then + ld_shlibs=no + cat <<_LT_EOF 1>&2 + +*** Warning: The releases 2.8.* of the GNU linker cannot reliably +*** create shared libraries on Solaris systems. Therefore, libtool +*** is disabling shared libraries support. We urge you to upgrade GNU +*** binutils to release 2.9.1 or newer. Another option is to modify +*** your PATH or compiler configuration so that the native linker is +*** used, and then restart. + +_LT_EOF + elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then + archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' + archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' + else + ld_shlibs=no + fi + ;; + + sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*) + case `$LD -v 2>&1` in + *\ [01].* | *\ 2.[0-9].* | *\ 2.1[0-5].*) + ld_shlibs=no + cat <<_LT_EOF 1>&2 + +*** Warning: Releases of the GNU linker prior to 2.16.91.0.3 cannot +*** reliably create shared libraries on SCO systems. Therefore, libtool +*** is disabling shared libraries support. We urge you to upgrade GNU +*** binutils to release 2.16.91.0.3 or newer. Another option is to modify +*** your PATH or compiler configuration so that the native linker is +*** used, and then restart. + +_LT_EOF + ;; + *) + # For security reasons, it is highly recommended that you always + # use absolute paths for naming shared libraries, and exclude the + # DT_RUNPATH tag from executables and libraries. But doing so + # requires that you compile everything twice, which is a pain. + if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then + hardcode_libdir_flag_spec='$wl-rpath $wl$libdir' + archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' + archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' + else + ld_shlibs=no + fi + ;; + esac + ;; + + sunos4*) + archive_cmds='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags' + wlarc= + hardcode_direct=yes + hardcode_shlibpath_var=no + ;; + + *) + if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then + archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' + archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' + else + ld_shlibs=no + fi + ;; + esac + + if test no = "$ld_shlibs"; then + runpath_var= + hardcode_libdir_flag_spec= + export_dynamic_flag_spec= + whole_archive_flag_spec= + fi + else + # PORTME fill in a description of your system's linker (not GNU ld) + case $host_os in + aix3*) + allow_undefined_flag=unsupported + always_export_symbols=yes + archive_expsym_cmds='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname' + # Note: this linker hardcodes the directories in LIBPATH if there + # are no directories specified by -L. + hardcode_minus_L=yes + if test yes = "$GCC" && test -z "$lt_prog_compiler_static"; then + # Neither direct hardcoding nor static linking is supported with a + # broken collect2. + hardcode_direct=unsupported + fi + ;; + + aix[4-9]*) + if test ia64 = "$host_cpu"; then + # On IA64, the linker does run time linking by default, so we don't + # have to do anything special. + aix_use_runtimelinking=no + exp_sym_flag='-Bexport' + no_entry_flag= + else + # If we're using GNU nm, then we don't want the "-C" option. + # -C means demangle to GNU nm, but means don't demangle to AIX nm. + # Without the "-l" option, or with the "-B" option, AIX nm treats + # weak defined symbols like other global defined symbols, whereas + # GNU nm marks them as "W". + # While the 'weak' keyword is ignored in the Export File, we need + # it in the Import File for the 'aix-soname' feature, so we have + # to replace the "-B" option with "-P" for AIX nm. + if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then + export_symbols_cmds='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && (substr(\$ 3,1,1) != ".")) { if (\$ 2 == "W") { print \$ 3 " weak" } else { print \$ 3 } } }'\'' | sort -u > $export_symbols' + else + export_symbols_cmds='`func_echo_all $NM | $SED -e '\''s/B\([^B]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && (substr(\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols' + fi + aix_use_runtimelinking=no + + # Test if we are trying to use run time linking or normal + # AIX style linking. If -brtl is somewhere in LDFLAGS, we + # have runtime linking enabled, and use it for executables. + # For shared libraries, we enable/disable runtime linking + # depending on the kind of the shared library created - + # when "with_aix_soname,aix_use_runtimelinking" is: + # "aix,no" lib.a(lib.so.V) shared, rtl:no, for executables + # "aix,yes" lib.so shared, rtl:yes, for executables + # lib.a static archive + # "both,no" lib.so.V(shr.o) shared, rtl:yes + # lib.a(lib.so.V) shared, rtl:no, for executables + # "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables + # lib.a(lib.so.V) shared, rtl:no + # "svr4,*" lib.so.V(shr.o) shared, rtl:yes, for executables + # lib.a static archive + case $host_os in aix4.[23]|aix4.[23].*|aix[5-9]*) + for ld_flag in $LDFLAGS; do + if (test x-brtl = "x$ld_flag" || test x-Wl,-brtl = "x$ld_flag"); then + aix_use_runtimelinking=yes + break + fi + done + if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then + # With aix-soname=svr4, we create the lib.so.V shared archives only, + # so we don't have lib.a shared libs to link our executables. + # We have to force runtime linking in this case. + aix_use_runtimelinking=yes + LDFLAGS="$LDFLAGS -Wl,-brtl" + fi + ;; + esac + + exp_sym_flag='-bexport' + no_entry_flag='-bnoentry' + fi + + # When large executables or shared objects are built, AIX ld can + # have problems creating the table of contents. If linking a library + # or program results in "error TOC overflow" add -mminimal-toc to + # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not + # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. + + archive_cmds='' + hardcode_direct=yes + hardcode_direct_absolute=yes + hardcode_libdir_separator=':' + link_all_deplibs=yes + file_list_spec='$wl-f,' + case $with_aix_soname,$aix_use_runtimelinking in + aix,*) ;; # traditional, no import file + svr4,* | *,yes) # use import file + # The Import File defines what to hardcode. + hardcode_direct=no + hardcode_direct_absolute=no + ;; + esac + + if test yes = "$GCC"; then + case $host_os in aix4.[012]|aix4.[012].*) + # We only want to do this on AIX 4.2 and lower, the check + # below for broken collect2 doesn't work under 4.3+ + collect2name=`$CC -print-prog-name=collect2` + if test -f "$collect2name" && + strings "$collect2name" | $GREP resolve_lib_name >/dev/null + then + # We have reworked collect2 + : + else + # We have old collect2 + hardcode_direct=unsupported + # It fails to find uninstalled libraries when the uninstalled + # path is not listed in the libpath. Setting hardcode_minus_L + # to unsupported forces relinking + hardcode_minus_L=yes + hardcode_libdir_flag_spec='-L$libdir' + hardcode_libdir_separator= + fi + ;; + esac + shared_flag='-shared' + if test yes = "$aix_use_runtimelinking"; then + shared_flag="$shared_flag "'$wl-G' + fi + # Need to ensure runtime linking is disabled for the traditional + # shared library, or the linker may eventually find shared libraries + # /with/ Import File - we do not want to mix them. + shared_flag_aix='-shared' + shared_flag_svr4='-shared $wl-G' + else + # not using gcc + if test ia64 = "$host_cpu"; then + # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release + # chokes on -Wl,-G. The following line is correct: + shared_flag='-G' + else + if test yes = "$aix_use_runtimelinking"; then + shared_flag='$wl-G' + else + shared_flag='$wl-bM:SRE' + fi + shared_flag_aix='$wl-bM:SRE' + shared_flag_svr4='$wl-G' + fi + fi + + export_dynamic_flag_spec='$wl-bexpall' + # It seems that -bexpall does not export symbols beginning with + # underscore (_), so it is better to generate a list of symbols to export. + always_export_symbols=yes + if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then + # Warning - without using the other runtime loading flags (-brtl), + # -berok will link without error, but may produce a broken library. + allow_undefined_flag='-berok' + # Determine the default libpath from the value encoded in an + # empty executable. + if test set = "${lt_cv_aix_libpath+set}"; then + aix_libpath=$lt_cv_aix_libpath +else + if ${lt_cv_aix_libpath_+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + + lt_aix_libpath_sed=' + /Import File Strings/,/^$/ { + /^0/ { + s/^0 *\([^ ]*\) *$/\1/ + p + } + }' + lt_cv_aix_libpath_=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` + # Check for a 64-bit object if we didn't find anything. + if test -z "$lt_cv_aix_libpath_"; then + lt_cv_aix_libpath_=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` + fi +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + if test -z "$lt_cv_aix_libpath_"; then + lt_cv_aix_libpath_=/usr/lib:/lib + fi + +fi + + aix_libpath=$lt_cv_aix_libpath_ +fi + + hardcode_libdir_flag_spec='$wl-blibpath:$libdir:'"$aix_libpath" + archive_expsym_cmds='$CC -o $output_objdir/$soname $libobjs $deplibs $wl'$no_entry_flag' $compiler_flags `if test -n "$allow_undefined_flag"; then func_echo_all "$wl$allow_undefined_flag"; else :; fi` $wl'$exp_sym_flag:\$export_symbols' '$shared_flag + else + if test ia64 = "$host_cpu"; then + hardcode_libdir_flag_spec='$wl-R $libdir:/usr/lib:/lib' + allow_undefined_flag="-z nodefs" + archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\$wl$no_entry_flag"' $compiler_flags $wl$allow_undefined_flag '"\$wl$exp_sym_flag:\$export_symbols" + else + # Determine the default libpath from the value encoded in an + # empty executable. + if test set = "${lt_cv_aix_libpath+set}"; then + aix_libpath=$lt_cv_aix_libpath +else + if ${lt_cv_aix_libpath_+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + + lt_aix_libpath_sed=' + /Import File Strings/,/^$/ { + /^0/ { + s/^0 *\([^ ]*\) *$/\1/ + p + } + }' + lt_cv_aix_libpath_=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` + # Check for a 64-bit object if we didn't find anything. + if test -z "$lt_cv_aix_libpath_"; then + lt_cv_aix_libpath_=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` + fi +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + if test -z "$lt_cv_aix_libpath_"; then + lt_cv_aix_libpath_=/usr/lib:/lib + fi + +fi + + aix_libpath=$lt_cv_aix_libpath_ +fi + + hardcode_libdir_flag_spec='$wl-blibpath:$libdir:'"$aix_libpath" + # Warning - without using the other run time loading flags, + # -berok will link without error, but may produce a broken library. + no_undefined_flag=' $wl-bernotok' + allow_undefined_flag=' $wl-berok' + if test yes = "$with_gnu_ld"; then + # We only use this code for GNU lds that support --whole-archive. + whole_archive_flag_spec='$wl--whole-archive$convenience $wl--no-whole-archive' + else + # Exported symbols can be pulled into shared objects from archives + whole_archive_flag_spec='$convenience' + fi + archive_cmds_need_lc=yes + archive_expsym_cmds='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d' + # -brtl affects multiple linker settings, -berok does not and is overridden later + compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([, ]\\)%-berok\\1%g"`' + if test svr4 != "$with_aix_soname"; then + # This is similar to how AIX traditionally builds its shared libraries. + archive_expsym_cmds="$archive_expsym_cmds"'~$CC '$shared_flag_aix' -o $output_objdir/$realname.d/$soname $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$realname.d/$soname' + fi + if test aix != "$with_aix_soname"; then + archive_expsym_cmds="$archive_expsym_cmds"'~$CC '$shared_flag_svr4' -o $output_objdir/$realname.d/$shared_archive_member_spec.o $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$STRIP -e $output_objdir/$realname.d/$shared_archive_member_spec.o~( func_echo_all "#! $soname($shared_archive_member_spec.o)"; if test shr_64 = "$shared_archive_member_spec"; then func_echo_all "# 64"; else func_echo_all "# 32"; fi; cat $export_symbols ) > $output_objdir/$realname.d/$shared_archive_member_spec.imp~$AR $AR_FLAGS $output_objdir/$soname $output_objdir/$realname.d/$shared_archive_member_spec.o $output_objdir/$realname.d/$shared_archive_member_spec.imp' + else + # used by -dlpreopen to get the symbols + archive_expsym_cmds="$archive_expsym_cmds"'~$MV $output_objdir/$realname.d/$soname $output_objdir' + fi + archive_expsym_cmds="$archive_expsym_cmds"'~$RM -r $output_objdir/$realname.d' + fi + fi + ;; + + amigaos*) + case $host_cpu in + powerpc) + # see comment about AmigaOS4 .so support + archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' + archive_expsym_cmds='' + ;; + m68k) + archive_cmds='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' + hardcode_libdir_flag_spec='-L$libdir' + hardcode_minus_L=yes + ;; + esac + ;; + + bsdi[45]*) + export_dynamic_flag_spec=-rdynamic + ;; + + cygwin* | mingw* | pw32* | cegcc*) + # When not using gcc, we currently assume that we are using + # Microsoft Visual C++. + # hardcode_libdir_flag_spec is actually meaningless, as there is + # no search path for DLLs. + case $cc_basename in + cl*) + # Native MSVC + hardcode_libdir_flag_spec=' ' + allow_undefined_flag=unsupported + always_export_symbols=yes + file_list_spec='@' + # Tell ltmain to make .lib files, not .a files. + libext=lib + # Tell ltmain to make .dll files, not .so files. + shrext_cmds=.dll + # FIXME: Setting linknames here is a bad hack. + archive_cmds='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames=' + archive_expsym_cmds='if test DEF = "`$SED -n -e '\''s/^[ ]*//'\'' -e '\''/^\(;.*\)*$/d'\'' -e '\''s/^\(EXPORTS\|LIBRARY\)\([ ].*\)*$/DEF/p'\'' -e q $export_symbols`" ; then + cp "$export_symbols" "$output_objdir/$soname.def"; + echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp"; + else + $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp; + fi~ + $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~ + linknames=' + # The linker will not automatically build a static lib if we build a DLL. + # _LT_TAGVAR(old_archive_from_new_cmds, )='true' + enable_shared_with_static_runtimes=yes + exclude_expsyms='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*' + export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[BCDGRS][ ]/s/.*[ ]\([^ ]*\)/\1,DATA/'\'' | $SED -e '\''/^[AITW][ ]/s/.*[ ]//'\'' | sort | uniq > $export_symbols' + # Don't use ranlib + old_postinstall_cmds='chmod 644 $oldlib' + postlink_cmds='lt_outputfile="@OUTPUT@"~ + lt_tool_outputfile="@TOOL_OUTPUT@"~ + case $lt_outputfile in + *.exe|*.EXE) ;; + *) + lt_outputfile=$lt_outputfile.exe + lt_tool_outputfile=$lt_tool_outputfile.exe + ;; + esac~ + if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then + $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1; + $RM "$lt_outputfile.manifest"; + fi' + ;; + *) + # Assume MSVC wrapper + hardcode_libdir_flag_spec=' ' + allow_undefined_flag=unsupported + # Tell ltmain to make .lib files, not .a files. + libext=lib + # Tell ltmain to make .dll files, not .so files. + shrext_cmds=.dll + # FIXME: Setting linknames here is a bad hack. + archive_cmds='$CC -o $lib $libobjs $compiler_flags `func_echo_all "$deplibs" | $SED '\''s/ -lc$//'\''` -link -dll~linknames=' + # The linker will automatically build a .lib file if we build a DLL. + old_archive_from_new_cmds='true' + # FIXME: Should let the user specify the lib program. + old_archive_cmds='lib -OUT:$oldlib$oldobjs$old_deplibs' + enable_shared_with_static_runtimes=yes + ;; + esac + ;; + + darwin* | rhapsody*) + + + archive_cmds_need_lc=no + hardcode_direct=no + hardcode_automatic=yes + hardcode_shlibpath_var=unsupported + if test yes = "$lt_cv_ld_force_load"; then + whole_archive_flag_spec='`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience $wl-force_load,$conv\"; done; func_echo_all \"$new_convenience\"`' + + else + whole_archive_flag_spec='' + fi + link_all_deplibs=yes + allow_undefined_flag=$_lt_dar_allow_undefined + case $cc_basename in + ifort*|nagfor*) _lt_dar_can_shared=yes ;; + *) _lt_dar_can_shared=$GCC ;; + esac + if test yes = "$_lt_dar_can_shared"; then + output_verbose_link_cmd=func_echo_all + archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dsymutil" + module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dsymutil" + archive_expsym_cmds="sed 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dar_export_syms$_lt_dsymutil" + module_expsym_cmds="sed -e 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dar_export_syms$_lt_dsymutil" + + else + ld_shlibs=no + fi + + ;; + + dgux*) + archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + hardcode_libdir_flag_spec='-L$libdir' + hardcode_shlibpath_var=no + ;; + + # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor + # support. Future versions do this automatically, but an explicit c++rt0.o + # does not break anything, and helps significantly (at the cost of a little + # extra space). + freebsd2.2*) + archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o' + hardcode_libdir_flag_spec='-R$libdir' + hardcode_direct=yes + hardcode_shlibpath_var=no + ;; + + # Unfortunately, older versions of FreeBSD 2 do not have this feature. + freebsd2.*) + archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' + hardcode_direct=yes + hardcode_minus_L=yes + hardcode_shlibpath_var=no + ;; + + # FreeBSD 3 and greater uses gcc -shared to do shared libraries. + freebsd* | dragonfly*) + archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' + hardcode_libdir_flag_spec='-R$libdir' + hardcode_direct=yes + hardcode_shlibpath_var=no + ;; + + hpux9*) + if test yes = "$GCC"; then + archive_cmds='$RM $output_objdir/$soname~$CC -shared $pic_flag $wl+b $wl$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib' + else + archive_cmds='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib' + fi + hardcode_libdir_flag_spec='$wl+b $wl$libdir' + hardcode_libdir_separator=: + hardcode_direct=yes + + # hardcode_minus_L: Not really in the search PATH, + # but as the default location of the library. + hardcode_minus_L=yes + export_dynamic_flag_spec='$wl-E' + ;; + + hpux10*) + if test yes,no = "$GCC,$with_gnu_ld"; then + archive_cmds='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags' + else + archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' + fi + if test no = "$with_gnu_ld"; then + hardcode_libdir_flag_spec='$wl+b $wl$libdir' + hardcode_libdir_separator=: + hardcode_direct=yes + hardcode_direct_absolute=yes + export_dynamic_flag_spec='$wl-E' + # hardcode_minus_L: Not really in the search PATH, + # but as the default location of the library. + hardcode_minus_L=yes + fi + ;; + + hpux11*) + if test yes,no = "$GCC,$with_gnu_ld"; then + case $host_cpu in + hppa*64*) + archive_cmds='$CC -shared $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags' + ;; + ia64*) + archive_cmds='$CC -shared $pic_flag $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags' + ;; + *) + archive_cmds='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags' + ;; + esac + else + case $host_cpu in + hppa*64*) + archive_cmds='$CC -b $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags' + ;; + ia64*) + archive_cmds='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags' + ;; + *) + + # Older versions of the 11.00 compiler do not understand -b yet + # (HP92453-01 A.11.01.20 doesn't, HP92453-01 B.11.X.35175-35176.GP does) + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC understands -b" >&5 +$as_echo_n "checking if $CC understands -b... " >&6; } +if ${lt_cv_prog_compiler__b+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_prog_compiler__b=no + save_LDFLAGS=$LDFLAGS + LDFLAGS="$LDFLAGS -b" + echo "$lt_simple_link_test_code" > conftest.$ac_ext + if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then + # The linker can only warn and ignore the option if not recognized + # So say no if there are warnings + if test -s conftest.err; then + # Append any errors to the config.log. + cat conftest.err 1>&5 + $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp + $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 + if diff conftest.exp conftest.er2 >/dev/null; then + lt_cv_prog_compiler__b=yes + fi + else + lt_cv_prog_compiler__b=yes + fi + fi + $RM -r conftest* + LDFLAGS=$save_LDFLAGS + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler__b" >&5 +$as_echo "$lt_cv_prog_compiler__b" >&6; } + +if test yes = "$lt_cv_prog_compiler__b"; then + archive_cmds='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags' +else + archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' +fi + + ;; + esac + fi + if test no = "$with_gnu_ld"; then + hardcode_libdir_flag_spec='$wl+b $wl$libdir' + hardcode_libdir_separator=: + + case $host_cpu in + hppa*64*|ia64*) + hardcode_direct=no + hardcode_shlibpath_var=no + ;; + *) + hardcode_direct=yes + hardcode_direct_absolute=yes + export_dynamic_flag_spec='$wl-E' + + # hardcode_minus_L: Not really in the search PATH, + # but as the default location of the library. + hardcode_minus_L=yes + ;; + esac + fi + ;; + + irix5* | irix6* | nonstopux*) + if test yes = "$GCC"; then + archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib' + # Try to use the -exported_symbol ld option, if it does not + # work, assume that -exports_file does not work either and + # implicitly export all symbols. + # This should be the same for all languages, so no per-tag cache variable. + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $host_os linker accepts -exported_symbol" >&5 +$as_echo_n "checking whether the $host_os linker accepts -exported_symbol... " >&6; } +if ${lt_cv_irix_exported_symbol+:} false; then : + $as_echo_n "(cached) " >&6 +else + save_LDFLAGS=$LDFLAGS + LDFLAGS="$LDFLAGS -shared $wl-exported_symbol ${wl}foo $wl-update_registry $wl/dev/null" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +int foo (void) { return 0; } +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + lt_cv_irix_exported_symbol=yes +else + lt_cv_irix_exported_symbol=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + LDFLAGS=$save_LDFLAGS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_irix_exported_symbol" >&5 +$as_echo "$lt_cv_irix_exported_symbol" >&6; } + if test yes = "$lt_cv_irix_exported_symbol"; then + archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations $wl-exports_file $wl$export_symbols -o $lib' + fi + link_all_deplibs=no + else + archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib' + archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -exports_file $export_symbols -o $lib' + fi + archive_cmds_need_lc='no' + hardcode_libdir_flag_spec='$wl-rpath $wl$libdir' + hardcode_libdir_separator=: + inherit_rpath=yes + link_all_deplibs=yes + ;; + + linux*) + case $cc_basename in + tcc*) + # Fabrice Bellard et al's Tiny C Compiler + ld_shlibs=yes + archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' + ;; + esac + ;; + + netbsd* | netbsdelf*-gnu) + if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then + archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out + else + archive_cmds='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF + fi + hardcode_libdir_flag_spec='-R$libdir' + hardcode_direct=yes + hardcode_shlibpath_var=no + ;; + + newsos6) + archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + hardcode_direct=yes + hardcode_libdir_flag_spec='$wl-rpath $wl$libdir' + hardcode_libdir_separator=: + hardcode_shlibpath_var=no + ;; + + *nto* | *qnx*) + ;; + + openbsd* | bitrig*) + if test -f /usr/libexec/ld.so; then + hardcode_direct=yes + hardcode_shlibpath_var=no + hardcode_direct_absolute=yes + if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then + archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' + archive_expsym_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags $wl-retain-symbols-file,$export_symbols' + hardcode_libdir_flag_spec='$wl-rpath,$libdir' + export_dynamic_flag_spec='$wl-E' + else + archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' + hardcode_libdir_flag_spec='$wl-rpath,$libdir' + fi + else + ld_shlibs=no + fi + ;; + + os2*) + hardcode_libdir_flag_spec='-L$libdir' + hardcode_minus_L=yes + allow_undefined_flag=unsupported + shrext_cmds=.dll + archive_cmds='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ + $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ + $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ + $ECHO EXPORTS >> $output_objdir/$libname.def~ + emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~ + $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ + emximp -o $lib $output_objdir/$libname.def' + archive_expsym_cmds='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ + $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ + $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ + $ECHO EXPORTS >> $output_objdir/$libname.def~ + prefix_cmds="$SED"~ + if test EXPORTS = "`$SED 1q $export_symbols`"; then + prefix_cmds="$prefix_cmds -e 1d"; + fi~ + prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~ + cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~ + $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ + emximp -o $lib $output_objdir/$libname.def' + old_archive_From_new_cmds='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def' + enable_shared_with_static_runtimes=yes + ;; + + osf3*) + if test yes = "$GCC"; then + allow_undefined_flag=' $wl-expect_unresolved $wl\*' + archive_cmds='$CC -shared$allow_undefined_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib' + else + allow_undefined_flag=' -expect_unresolved \*' + archive_cmds='$CC -shared$allow_undefined_flag $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib' + fi + archive_cmds_need_lc='no' + hardcode_libdir_flag_spec='$wl-rpath $wl$libdir' + hardcode_libdir_separator=: + ;; + + osf4* | osf5*) # as osf3* with the addition of -msym flag + if test yes = "$GCC"; then + allow_undefined_flag=' $wl-expect_unresolved $wl\*' + archive_cmds='$CC -shared$allow_undefined_flag $pic_flag $libobjs $deplibs $compiler_flags $wl-msym $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib' + hardcode_libdir_flag_spec='$wl-rpath $wl$libdir' + else + allow_undefined_flag=' -expect_unresolved \*' + archive_cmds='$CC -shared$allow_undefined_flag $libobjs $deplibs $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib' + archive_expsym_cmds='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; printf "%s\\n" "-hidden">> $lib.exp~ + $CC -shared$allow_undefined_flag $wl-input $wl$lib.exp $compiler_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib~$RM $lib.exp' + + # Both c and cxx compiler support -rpath directly + hardcode_libdir_flag_spec='-rpath $libdir' + fi + archive_cmds_need_lc='no' + hardcode_libdir_separator=: + ;; + + solaris*) + no_undefined_flag=' -z defs' + if test yes = "$GCC"; then + wlarc='$wl' + archive_cmds='$CC -shared $pic_flag $wl-z ${wl}text $wl-h $wl$soname -o $lib $libobjs $deplibs $compiler_flags' + archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ + $CC -shared $pic_flag $wl-z ${wl}text $wl-M $wl$lib.exp $wl-h $wl$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp' + else + case `$CC -V 2>&1` in + *"Compilers 5.0"*) + wlarc='' + archive_cmds='$LD -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $linker_flags' + archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ + $LD -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp' + ;; + *) + wlarc='$wl' + archive_cmds='$CC -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $compiler_flags' + archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ + $CC -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp' + ;; + esac + fi + hardcode_libdir_flag_spec='-R$libdir' + hardcode_shlibpath_var=no + case $host_os in + solaris2.[0-5] | solaris2.[0-5].*) ;; + *) + # The compiler driver will combine and reorder linker options, + # but understands '-z linker_flag'. GCC discards it without '$wl', + # but is careful enough not to reorder. + # Supported since Solaris 2.6 (maybe 2.5.1?) + if test yes = "$GCC"; then + whole_archive_flag_spec='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract' + else + whole_archive_flag_spec='-z allextract$convenience -z defaultextract' + fi + ;; + esac + link_all_deplibs=yes + ;; + + sunos4*) + if test sequent = "$host_vendor"; then + # Use $CC to link under sequent, because it throws in some extra .o + # files that make .init and .fini sections work. + archive_cmds='$CC -G $wl-h $soname -o $lib $libobjs $deplibs $compiler_flags' + else + archive_cmds='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags' + fi + hardcode_libdir_flag_spec='-L$libdir' + hardcode_direct=yes + hardcode_minus_L=yes + hardcode_shlibpath_var=no + ;; + + sysv4) + case $host_vendor in + sni) + archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + hardcode_direct=yes # is this really true??? + ;; + siemens) + ## LD is ld it makes a PLAMLIB + ## CC just makes a GrossModule. + archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags' + reload_cmds='$CC -r -o $output$reload_objs' + hardcode_direct=no + ;; + motorola) + archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + hardcode_direct=no #Motorola manual says yes, but my tests say they lie + ;; + esac + runpath_var='LD_RUN_PATH' + hardcode_shlibpath_var=no + ;; + + sysv4.3*) + archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + hardcode_shlibpath_var=no + export_dynamic_flag_spec='-Bexport' + ;; + + sysv4*MP*) + if test -d /usr/nec; then + archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + hardcode_shlibpath_var=no + runpath_var=LD_RUN_PATH + hardcode_runpath_var=yes + ld_shlibs=yes + fi + ;; + + sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[01].[10]* | unixware7* | sco3.2v5.0.[024]*) + no_undefined_flag='$wl-z,text' + archive_cmds_need_lc=no + hardcode_shlibpath_var=no + runpath_var='LD_RUN_PATH' + + if test yes = "$GCC"; then + archive_cmds='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + archive_expsym_cmds='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + else + archive_cmds='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + archive_expsym_cmds='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + fi + ;; + + sysv5* | sco3.2v5* | sco5v6*) + # Note: We CANNOT use -z defs as we might desire, because we do not + # link with -lc, and that would cause any symbols used from libc to + # always be unresolved, which means just about no library would + # ever link correctly. If we're not using GNU ld we use -z text + # though, which does catch some bad symbols but isn't as heavy-handed + # as -z defs. + no_undefined_flag='$wl-z,text' + allow_undefined_flag='$wl-z,nodefs' + archive_cmds_need_lc=no + hardcode_shlibpath_var=no + hardcode_libdir_flag_spec='$wl-R,$libdir' + hardcode_libdir_separator=':' + link_all_deplibs=yes + export_dynamic_flag_spec='$wl-Bexport' + runpath_var='LD_RUN_PATH' + + if test yes = "$GCC"; then + archive_cmds='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + archive_expsym_cmds='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + else + archive_cmds='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + archive_expsym_cmds='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + fi + ;; + + uts4*) + archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + hardcode_libdir_flag_spec='-L$libdir' + hardcode_shlibpath_var=no + ;; + + *) + ld_shlibs=no + ;; + esac + + if test sni = "$host_vendor"; then + case $host in + sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) + export_dynamic_flag_spec='$wl-Blargedynsym' + ;; + esac + fi + fi + +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs" >&5 +$as_echo "$ld_shlibs" >&6; } +test no = "$ld_shlibs" && can_build_shared=no + +with_gnu_ld=$with_gnu_ld + + + + + + + + + + + + + + + +# +# Do we need to explicitly link libc? +# +case "x$archive_cmds_need_lc" in +x|xyes) + # Assume -lc should be added + archive_cmds_need_lc=yes + + if test yes,yes = "$GCC,$enable_shared"; then + case $archive_cmds in + *'~'*) + # FIXME: we may have to deal with multi-command sequences. + ;; + '$CC '*) + # Test whether the compiler implicitly links with -lc since on some + # systems, -lgcc has to come before -lc. If gcc already passes -lc + # to ld, don't add -lc before -lgcc. + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -lc should be explicitly linked in" >&5 +$as_echo_n "checking whether -lc should be explicitly linked in... " >&6; } +if ${lt_cv_archive_cmds_need_lc+:} false; then : + $as_echo_n "(cached) " >&6 +else + $RM conftest* + echo "$lt_simple_compile_test_code" > conftest.$ac_ext + + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 + (eval $ac_compile) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } 2>conftest.err; then + soname=conftest + lib=conftest + libobjs=conftest.$ac_objext + deplibs= + wl=$lt_prog_compiler_wl + pic_flag=$lt_prog_compiler_pic + compiler_flags=-v + linker_flags=-v + verstring= + output_objdir=. + libname=conftest + lt_save_allow_undefined_flag=$allow_undefined_flag + allow_undefined_flag= + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$archive_cmds 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1\""; } >&5 + (eval $archive_cmds 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } + then + lt_cv_archive_cmds_need_lc=no + else + lt_cv_archive_cmds_need_lc=yes + fi + allow_undefined_flag=$lt_save_allow_undefined_flag + else + cat conftest.err 1>&5 + fi + $RM conftest* + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_archive_cmds_need_lc" >&5 +$as_echo "$lt_cv_archive_cmds_need_lc" >&6; } + archive_cmds_need_lc=$lt_cv_archive_cmds_need_lc + ;; + esac + fi + ;; +esac + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking dynamic linker characteristics" >&5 +$as_echo_n "checking dynamic linker characteristics... " >&6; } + +if test yes = "$GCC"; then + case $host_os in + darwin*) lt_awk_arg='/^libraries:/,/LR/' ;; + *) lt_awk_arg='/^libraries:/' ;; + esac + case $host_os in + mingw* | cegcc*) lt_sed_strip_eq='s|=\([A-Za-z]:\)|\1|g' ;; + *) lt_sed_strip_eq='s|=/|/|g' ;; + esac + lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e $lt_sed_strip_eq` + case $lt_search_path_spec in + *\;*) + # if the path contains ";" then we assume it to be the separator + # otherwise default to the standard path separator (i.e. ":") - it is + # assumed that no part of a normal pathname contains ";" but that should + # okay in the real world where ";" in dirpaths is itself problematic. + lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED 's/;/ /g'` + ;; + *) + lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED "s/$PATH_SEPARATOR/ /g"` + ;; + esac + # Ok, now we have the path, separated by spaces, we can step through it + # and add multilib dir if necessary... + lt_tmp_lt_search_path_spec= + lt_multi_os_dir=/`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null` + # ...but if some path component already ends with the multilib dir we assume + # that all is fine and trust -print-search-dirs as is (GCC 4.2? or newer). + case "$lt_multi_os_dir; $lt_search_path_spec " in + "/; "* | "/.; "* | "/./; "* | *"$lt_multi_os_dir "* | *"$lt_multi_os_dir/ "*) + lt_multi_os_dir= + ;; + esac + for lt_sys_path in $lt_search_path_spec; do + if test -d "$lt_sys_path$lt_multi_os_dir"; then + lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path$lt_multi_os_dir" + elif test -n "$lt_multi_os_dir"; then + test -d "$lt_sys_path" && \ + lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path" + fi + done + lt_search_path_spec=`$ECHO "$lt_tmp_lt_search_path_spec" | awk ' +BEGIN {RS = " "; FS = "/|\n";} { + lt_foo = ""; + lt_count = 0; + for (lt_i = NF; lt_i > 0; lt_i--) { + if ($lt_i != "" && $lt_i != ".") { + if ($lt_i == "..") { + lt_count++; + } else { + if (lt_count == 0) { + lt_foo = "/" $lt_i lt_foo; + } else { + lt_count--; + } + } + } + } + if (lt_foo != "") { lt_freq[lt_foo]++; } + if (lt_freq[lt_foo] == 1) { print lt_foo; } +}'` + # AWK program above erroneously prepends '/' to C:/dos/paths + # for these hosts. + case $host_os in + mingw* | cegcc*) lt_search_path_spec=`$ECHO "$lt_search_path_spec" |\ + $SED 's|/\([A-Za-z]:\)|\1|g'` ;; + esac + sys_lib_search_path_spec=`$ECHO "$lt_search_path_spec" | $lt_NL2SP` +else + sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" +fi +library_names_spec= +libname_spec='lib$name' +soname_spec= +shrext_cmds=.so +postinstall_cmds= +postuninstall_cmds= +finish_cmds= +finish_eval= +shlibpath_var= +shlibpath_overrides_runpath=unknown +version_type=none +dynamic_linker="$host_os ld.so" +sys_lib_dlsearch_path_spec="/lib /usr/lib" +need_lib_prefix=unknown +hardcode_into_libs=no + +# when you set need_version to no, make sure it does not cause -set_version +# flags to be left without arguments +need_version=unknown + + + +case $host_os in +aix3*) + version_type=linux # correct to gnu/linux during the next big refactor + library_names_spec='$libname$release$shared_ext$versuffix $libname.a' + shlibpath_var=LIBPATH + + # AIX 3 has no versioning support, so we append a major version to the name. + soname_spec='$libname$release$shared_ext$major' + ;; + +aix[4-9]*) + version_type=linux # correct to gnu/linux during the next big refactor + need_lib_prefix=no + need_version=no + hardcode_into_libs=yes + if test ia64 = "$host_cpu"; then + # AIX 5 supports IA64 + library_names_spec='$libname$release$shared_ext$major $libname$release$shared_ext$versuffix $libname$shared_ext' + shlibpath_var=LD_LIBRARY_PATH + else + # With GCC up to 2.95.x, collect2 would create an import file + # for dependence libraries. The import file would start with + # the line '#! .'. This would cause the generated library to + # depend on '.', always an invalid library. This was fixed in + # development snapshots of GCC prior to 3.0. + case $host_os in + aix4 | aix4.[01] | aix4.[01].*) + if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)' + echo ' yes ' + echo '#endif'; } | $CC -E - | $GREP yes > /dev/null; then + : + else + can_build_shared=no + fi + ;; + esac + # Using Import Files as archive members, it is possible to support + # filename-based versioning of shared library archives on AIX. While + # this would work for both with and without runtime linking, it will + # prevent static linking of such archives. So we do filename-based + # shared library versioning with .so extension only, which is used + # when both runtime linking and shared linking is enabled. + # Unfortunately, runtime linking may impact performance, so we do + # not want this to be the default eventually. Also, we use the + # versioned .so libs for executables only if there is the -brtl + # linker flag in LDFLAGS as well, or --with-aix-soname=svr4 only. + # To allow for filename-based versioning support, we need to create + # libNAME.so.V as an archive file, containing: + # *) an Import File, referring to the versioned filename of the + # archive as well as the shared archive member, telling the + # bitwidth (32 or 64) of that shared object, and providing the + # list of exported symbols of that shared object, eventually + # decorated with the 'weak' keyword + # *) the shared object with the F_LOADONLY flag set, to really avoid + # it being seen by the linker. + # At run time we better use the real file rather than another symlink, + # but for link time we create the symlink libNAME.so -> libNAME.so.V + + case $with_aix_soname,$aix_use_runtimelinking in + # AIX (on Power*) has no versioning support, so currently we cannot hardcode correct + # soname into executable. Probably we can add versioning support to + # collect2, so additional links can be useful in future. + aix,yes) # traditional libtool + dynamic_linker='AIX unversionable lib.so' + # If using run time linking (on AIX 4.2 or later) use lib.so + # instead of lib.a to let people know that these are not + # typical AIX shared libraries. + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + ;; + aix,no) # traditional AIX only + dynamic_linker='AIX lib.a(lib.so.V)' + # We preserve .a as extension for shared libraries through AIX4.2 + # and later when we are not doing run time linking. + library_names_spec='$libname$release.a $libname.a' + soname_spec='$libname$release$shared_ext$major' + ;; + svr4,*) # full svr4 only + dynamic_linker="AIX lib.so.V($shared_archive_member_spec.o)" + library_names_spec='$libname$release$shared_ext$major $libname$shared_ext' + # We do not specify a path in Import Files, so LIBPATH fires. + shlibpath_overrides_runpath=yes + ;; + *,yes) # both, prefer svr4 + dynamic_linker="AIX lib.so.V($shared_archive_member_spec.o), lib.a(lib.so.V)" + library_names_spec='$libname$release$shared_ext$major $libname$shared_ext' + # unpreferred sharedlib libNAME.a needs extra handling + postinstall_cmds='test -n "$linkname" || linkname="$realname"~func_stripname "" ".so" "$linkname"~$install_shared_prog "$dir/$func_stripname_result.$libext" "$destdir/$func_stripname_result.$libext"~test -z "$tstripme" || test -z "$striplib" || $striplib "$destdir/$func_stripname_result.$libext"' + postuninstall_cmds='for n in $library_names $old_library; do :; done~func_stripname "" ".so" "$n"~test "$func_stripname_result" = "$n" || func_append rmfiles " $odir/$func_stripname_result.$libext"' + # We do not specify a path in Import Files, so LIBPATH fires. + shlibpath_overrides_runpath=yes + ;; + *,no) # both, prefer aix + dynamic_linker="AIX lib.a(lib.so.V), lib.so.V($shared_archive_member_spec.o)" + library_names_spec='$libname$release.a $libname.a' + soname_spec='$libname$release$shared_ext$major' + # unpreferred sharedlib libNAME.so.V and symlink libNAME.so need extra handling + postinstall_cmds='test -z "$dlname" || $install_shared_prog $dir/$dlname $destdir/$dlname~test -z "$tstripme" || test -z "$striplib" || $striplib $destdir/$dlname~test -n "$linkname" || linkname=$realname~func_stripname "" ".a" "$linkname"~(cd "$destdir" && $LN_S -f $dlname $func_stripname_result.so)' + postuninstall_cmds='test -z "$dlname" || func_append rmfiles " $odir/$dlname"~for n in $old_library $library_names; do :; done~func_stripname "" ".a" "$n"~func_append rmfiles " $odir/$func_stripname_result.so"' + ;; + esac + shlibpath_var=LIBPATH + fi + ;; + +amigaos*) + case $host_cpu in + powerpc) + # Since July 2007 AmigaOS4 officially supports .so libraries. + # When compiling the executable, add -use-dynld -Lsobjs: to the compileline. + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + ;; + m68k) + library_names_spec='$libname.ixlibrary $libname.a' + # Create ${libname}_ixlibrary.a entries in /sys/libs. + finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`func_echo_all "$lib" | $SED '\''s%^.*/\([^/]*\)\.ixlibrary$%\1%'\''`; $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' + ;; + esac + ;; + +beos*) + library_names_spec='$libname$shared_ext' + dynamic_linker="$host_os ld.so" + shlibpath_var=LIBRARY_PATH + ;; + +bsdi[45]*) + version_type=linux # correct to gnu/linux during the next big refactor + need_version=no + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' + finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir' + shlibpath_var=LD_LIBRARY_PATH + sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib" + sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib" + # the default ld.so.conf also contains /usr/contrib/lib and + # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow + # libtool to hard-code these into programs + ;; + +cygwin* | mingw* | pw32* | cegcc*) + version_type=windows + shrext_cmds=.dll + need_version=no + need_lib_prefix=no + + case $GCC,$cc_basename in + yes,*) + # gcc + library_names_spec='$libname.dll.a' + # DLL is installed to $(libdir)/../bin by postinstall_cmds + postinstall_cmds='base_file=`basename \$file`~ + dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~ + dldir=$destdir/`dirname \$dlpath`~ + test -d \$dldir || mkdir -p \$dldir~ + $install_prog $dir/$dlname \$dldir/$dlname~ + chmod a+x \$dldir/$dlname~ + if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then + eval '\''$striplib \$dldir/$dlname'\'' || exit \$?; + fi' + postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~ + dlpath=$dir/\$dldll~ + $RM \$dlpath' + shlibpath_overrides_runpath=yes + + case $host_os in + cygwin*) + # Cygwin DLLs use 'cyg' prefix rather than 'lib' + soname_spec='`echo $libname | sed -e 's/^lib/cyg/'``echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext' + + sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api" + ;; + mingw* | cegcc*) + # MinGW DLLs use traditional 'lib' prefix + soname_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext' + ;; + pw32*) + # pw32 DLLs use 'pw' prefix rather than 'lib' + library_names_spec='`echo $libname | sed -e 's/^lib/pw/'``echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext' + ;; + esac + dynamic_linker='Win32 ld.exe' + ;; + + *,cl*) + # Native MSVC + libname_spec='$name' + soname_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext' + library_names_spec='$libname.dll.lib' + + case $build_os in + mingw*) + sys_lib_search_path_spec= + lt_save_ifs=$IFS + IFS=';' + for lt_path in $LIB + do + IFS=$lt_save_ifs + # Let DOS variable expansion print the short 8.3 style file name. + lt_path=`cd "$lt_path" 2>/dev/null && cmd //C "for %i in (".") do @echo %~si"` + sys_lib_search_path_spec="$sys_lib_search_path_spec $lt_path" + done + IFS=$lt_save_ifs + # Convert to MSYS style. + sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | sed -e 's|\\\\|/|g' -e 's| \\([a-zA-Z]\\):| /\\1|g' -e 's|^ ||'` + ;; + cygwin*) + # Convert to unix form, then to dos form, then back to unix form + # but this time dos style (no spaces!) so that the unix form looks + # like /cygdrive/c/PROGRA~1:/cygdr... + sys_lib_search_path_spec=`cygpath --path --unix "$LIB"` + sys_lib_search_path_spec=`cygpath --path --dos "$sys_lib_search_path_spec" 2>/dev/null` + sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` + ;; + *) + sys_lib_search_path_spec=$LIB + if $ECHO "$sys_lib_search_path_spec" | $GREP ';[c-zC-Z]:/' >/dev/null; then + # It is most probably a Windows format PATH. + sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'` + else + sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` + fi + # FIXME: find the short name or the path components, as spaces are + # common. (e.g. "Program Files" -> "PROGRA~1") + ;; + esac + + # DLL is installed to $(libdir)/../bin by postinstall_cmds + postinstall_cmds='base_file=`basename \$file`~ + dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~ + dldir=$destdir/`dirname \$dlpath`~ + test -d \$dldir || mkdir -p \$dldir~ + $install_prog $dir/$dlname \$dldir/$dlname' + postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~ + dlpath=$dir/\$dldll~ + $RM \$dlpath' + shlibpath_overrides_runpath=yes + dynamic_linker='Win32 link.exe' + ;; + + *) + # Assume MSVC wrapper + library_names_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext $libname.lib' + dynamic_linker='Win32 ld.exe' + ;; + esac + # FIXME: first we should search . and the directory the executable is in + shlibpath_var=PATH + ;; + +darwin* | rhapsody*) + dynamic_linker="$host_os dyld" + version_type=darwin + need_lib_prefix=no + need_version=no + library_names_spec='$libname$release$major$shared_ext $libname$shared_ext' + soname_spec='$libname$release$major$shared_ext' + shlibpath_overrides_runpath=yes + shlibpath_var=DYLD_LIBRARY_PATH + shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`' + + sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib" + sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib' + ;; + +dgux*) + version_type=linux # correct to gnu/linux during the next big refactor + need_lib_prefix=no + need_version=no + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' + shlibpath_var=LD_LIBRARY_PATH + ;; + +freebsd* | dragonfly*) + # DragonFly does not have aout. When/if they implement a new + # versioning mechanism, adjust this. + if test -x /usr/bin/objformat; then + objformat=`/usr/bin/objformat` + else + case $host_os in + freebsd[23].*) objformat=aout ;; + *) objformat=elf ;; + esac + fi + version_type=freebsd-$objformat + case $version_type in + freebsd-elf*) + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' + need_version=no + need_lib_prefix=no + ;; + freebsd-*) + library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix' + need_version=yes + ;; + esac + shlibpath_var=LD_LIBRARY_PATH + case $host_os in + freebsd2.*) + shlibpath_overrides_runpath=yes + ;; + freebsd3.[01]* | freebsdelf3.[01]*) + shlibpath_overrides_runpath=yes + hardcode_into_libs=yes + ;; + freebsd3.[2-9]* | freebsdelf3.[2-9]* | \ + freebsd4.[0-5] | freebsdelf4.[0-5] | freebsd4.1.1 | freebsdelf4.1.1) + shlibpath_overrides_runpath=no + hardcode_into_libs=yes + ;; + *) # from 4.6 on, and DragonFly + shlibpath_overrides_runpath=yes + hardcode_into_libs=yes + ;; + esac + ;; + +haiku*) + version_type=linux # correct to gnu/linux during the next big refactor + need_lib_prefix=no + need_version=no + dynamic_linker="$host_os runtime_loader" + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' + shlibpath_var=LIBRARY_PATH + shlibpath_overrides_runpath=no + sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib' + hardcode_into_libs=yes + ;; + +hpux9* | hpux10* | hpux11*) + # Give a soname corresponding to the major version so that dld.sl refuses to + # link against other versions. + version_type=sunos + need_lib_prefix=no + need_version=no + case $host_cpu in + ia64*) + shrext_cmds='.so' + hardcode_into_libs=yes + dynamic_linker="$host_os dld.so" + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' + if test 32 = "$HPUX_IA64_MODE"; then + sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib" + sys_lib_dlsearch_path_spec=/usr/lib/hpux32 + else + sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64" + sys_lib_dlsearch_path_spec=/usr/lib/hpux64 + fi + ;; + hppa*64*) + shrext_cmds='.sl' + hardcode_into_libs=yes + dynamic_linker="$host_os dld.sl" + shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH + shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' + sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64" + sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec + ;; + *) + shrext_cmds='.sl' + dynamic_linker="$host_os dld.sl" + shlibpath_var=SHLIB_PATH + shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' + ;; + esac + # HP-UX runs *really* slowly unless shared libraries are mode 555, ... + postinstall_cmds='chmod 555 $lib' + # or fails outright, so override atomically: + install_override_mode=555 + ;; + +interix[3-9]*) + version_type=linux # correct to gnu/linux during the next big refactor + need_lib_prefix=no + need_version=no + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' + dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=no + hardcode_into_libs=yes + ;; + +irix5* | irix6* | nonstopux*) + case $host_os in + nonstopux*) version_type=nonstopux ;; + *) + if test yes = "$lt_cv_prog_gnu_ld"; then + version_type=linux # correct to gnu/linux during the next big refactor + else + version_type=irix + fi ;; + esac + need_lib_prefix=no + need_version=no + soname_spec='$libname$release$shared_ext$major' + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$release$shared_ext $libname$shared_ext' + case $host_os in + irix5* | nonstopux*) + libsuff= shlibsuff= + ;; + *) + case $LD in # libtool.m4 will add one of these switches to LD + *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ") + libsuff= shlibsuff= libmagic=32-bit;; + *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ") + libsuff=32 shlibsuff=N32 libmagic=N32;; + *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ") + libsuff=64 shlibsuff=64 libmagic=64-bit;; + *) libsuff= shlibsuff= libmagic=never-match;; + esac + ;; + esac + shlibpath_var=LD_LIBRARY${shlibsuff}_PATH + shlibpath_overrides_runpath=no + sys_lib_search_path_spec="/usr/lib$libsuff /lib$libsuff /usr/local/lib$libsuff" + sys_lib_dlsearch_path_spec="/usr/lib$libsuff /lib$libsuff" + hardcode_into_libs=yes + ;; + +# No shared lib support for Linux oldld, aout, or coff. +linux*oldld* | linux*aout* | linux*coff*) + dynamic_linker=no + ;; + +linux*android*) + version_type=none # Android doesn't support versioned libraries. + need_lib_prefix=no + need_version=no + library_names_spec='$libname$release$shared_ext' + soname_spec='$libname$release$shared_ext' + finish_cmds= + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + + # This implies no fast_install, which is unacceptable. + # Some rework will be needed to allow for fast_install + # before this can be enabled. + hardcode_into_libs=yes + + dynamic_linker='Android linker' + # Don't embed -rpath directories since the linker doesn't support them. + hardcode_libdir_flag_spec='-L$libdir' + ;; + +# This must be glibc/ELF. +linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) + version_type=linux # correct to gnu/linux during the next big refactor + need_lib_prefix=no + need_version=no + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' + finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=no + + # Some binutils ld are patched to set DT_RUNPATH + if ${lt_cv_shlibpath_overrides_runpath+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_shlibpath_overrides_runpath=no + save_LDFLAGS=$LDFLAGS + save_libdir=$libdir + eval "libdir=/foo; wl=\"$lt_prog_compiler_wl\"; \ + LDFLAGS=\"\$LDFLAGS $hardcode_libdir_flag_spec\"" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + if ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null; then : + lt_cv_shlibpath_overrides_runpath=yes +fi +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + LDFLAGS=$save_LDFLAGS + libdir=$save_libdir + +fi + + shlibpath_overrides_runpath=$lt_cv_shlibpath_overrides_runpath + + # This implies no fast_install, which is unacceptable. + # Some rework will be needed to allow for fast_install + # before this can be enabled. + hardcode_into_libs=yes + + # Ideally, we could use ldconfig to report *all* directores which are + # searched for libraries, however this is still not possible. Aside from not + # being certain /sbin/ldconfig is available, command + # 'ldconfig -N -X -v | grep ^/' on 64bit Fedora does not report /usr/lib64, + # even though it is searched at run-time. Try to do the best guess by + # appending ld.so.conf contents (and includes) to the search path. + if test -f /etc/ld.so.conf; then + lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;s/"//g;/^$/d' | tr '\n' ' '` + sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra" + fi + + # We used to test for /lib/ld.so.1 and disable shared libraries on + # powerpc, because MkLinux only supported shared libraries with the + # GNU dynamic linker. Since this was broken with cross compilers, + # most powerpc-linux boxes support dynamic linking these days and + # people can always --disable-shared, the test was removed, and we + # assume the GNU/Linux dynamic linker is in use. + dynamic_linker='GNU/Linux ld.so' + ;; + +netbsdelf*-gnu) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=no + hardcode_into_libs=yes + dynamic_linker='NetBSD ld.elf_so' + ;; + +netbsd*) + version_type=sunos + need_lib_prefix=no + need_version=no + if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then + library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix' + finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' + dynamic_linker='NetBSD (a.out) ld.so' + else + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' + dynamic_linker='NetBSD ld.elf_so' + fi + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + hardcode_into_libs=yes + ;; + +newsos6) + version_type=linux # correct to gnu/linux during the next big refactor + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + ;; + +*nto* | *qnx*) + version_type=qnx + need_lib_prefix=no + need_version=no + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=no + hardcode_into_libs=yes + dynamic_linker='ldqnx.so' + ;; + +openbsd* | bitrig*) + version_type=sunos + sys_lib_dlsearch_path_spec=/usr/lib + need_lib_prefix=no + if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then + need_version=no + else + need_version=yes + fi + library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix' + finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + ;; + +os2*) + libname_spec='$name' + version_type=windows + shrext_cmds=.dll + need_version=no + need_lib_prefix=no + # OS/2 can only load a DLL with a base name of 8 characters or less. + soname_spec='`test -n "$os2dllname" && libname="$os2dllname"; + v=$($ECHO $release$versuffix | tr -d .-); + n=$($ECHO $libname | cut -b -$((8 - ${#v})) | tr . _); + $ECHO $n$v`$shared_ext' + library_names_spec='${libname}_dll.$libext' + dynamic_linker='OS/2 ld.exe' + shlibpath_var=BEGINLIBPATH + sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" + sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec + postinstall_cmds='base_file=`basename \$file`~ + dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; $ECHO \$dlname'\''`~ + dldir=$destdir/`dirname \$dlpath`~ + test -d \$dldir || mkdir -p \$dldir~ + $install_prog $dir/$dlname \$dldir/$dlname~ + chmod a+x \$dldir/$dlname~ + if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then + eval '\''$striplib \$dldir/$dlname'\'' || exit \$?; + fi' + postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; $ECHO \$dlname'\''`~ + dlpath=$dir/\$dldll~ + $RM \$dlpath' + ;; + +osf3* | osf4* | osf5*) + version_type=osf + need_lib_prefix=no + need_version=no + soname_spec='$libname$release$shared_ext$major' + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + shlibpath_var=LD_LIBRARY_PATH + sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib" + sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec + ;; + +rdos*) + dynamic_linker=no + ;; + +solaris*) + version_type=linux # correct to gnu/linux during the next big refactor + need_lib_prefix=no + need_version=no + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + hardcode_into_libs=yes + # ldd complains unless libraries are executable + postinstall_cmds='chmod +x $lib' + ;; + +sunos4*) + version_type=sunos + library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix' + finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + if test yes = "$with_gnu_ld"; then + need_lib_prefix=no + fi + need_version=yes + ;; + +sysv4 | sysv4.3*) + version_type=linux # correct to gnu/linux during the next big refactor + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' + shlibpath_var=LD_LIBRARY_PATH + case $host_vendor in + sni) + shlibpath_overrides_runpath=no + need_lib_prefix=no + runpath_var=LD_RUN_PATH + ;; + siemens) + need_lib_prefix=no + ;; + motorola) + need_lib_prefix=no + need_version=no + shlibpath_overrides_runpath=no + sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib' + ;; + esac + ;; + +sysv4*MP*) + if test -d /usr/nec; then + version_type=linux # correct to gnu/linux during the next big refactor + library_names_spec='$libname$shared_ext.$versuffix $libname$shared_ext.$major $libname$shared_ext' + soname_spec='$libname$shared_ext.$major' + shlibpath_var=LD_LIBRARY_PATH + fi + ;; + +sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*) + version_type=sco + need_lib_prefix=no + need_version=no + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + hardcode_into_libs=yes + if test yes = "$with_gnu_ld"; then + sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib' + else + sys_lib_search_path_spec='/usr/ccs/lib /usr/lib' + case $host_os in + sco3.2v5*) + sys_lib_search_path_spec="$sys_lib_search_path_spec /lib" + ;; + esac + fi + sys_lib_dlsearch_path_spec='/usr/lib' + ;; + +tpf*) + # TPF is a cross-target only. Preferred cross-host = GNU/Linux. + version_type=linux # correct to gnu/linux during the next big refactor + need_lib_prefix=no + need_version=no + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=no + hardcode_into_libs=yes + ;; + +uts4*) + version_type=linux # correct to gnu/linux during the next big refactor + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' + shlibpath_var=LD_LIBRARY_PATH + ;; + +*) + dynamic_linker=no + ;; +esac +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $dynamic_linker" >&5 +$as_echo "$dynamic_linker" >&6; } +test no = "$dynamic_linker" && can_build_shared=no + +variables_saved_for_relink="PATH $shlibpath_var $runpath_var" +if test yes = "$GCC"; then + variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" +fi + +if test set = "${lt_cv_sys_lib_search_path_spec+set}"; then + sys_lib_search_path_spec=$lt_cv_sys_lib_search_path_spec +fi + +if test set = "${lt_cv_sys_lib_dlsearch_path_spec+set}"; then + sys_lib_dlsearch_path_spec=$lt_cv_sys_lib_dlsearch_path_spec +fi + +# remember unaugmented sys_lib_dlsearch_path content for libtool script decls... +configure_time_dlsearch_path=$sys_lib_dlsearch_path_spec + +# ... but it needs LT_SYS_LIBRARY_PATH munging for other configure-time code +func_munge_path_list sys_lib_dlsearch_path_spec "$LT_SYS_LIBRARY_PATH" + +# to be used as default LT_SYS_LIBRARY_PATH value in generated libtool +configure_time_lt_sys_library_path=$LT_SYS_LIBRARY_PATH + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to hardcode library paths into programs" >&5 +$as_echo_n "checking how to hardcode library paths into programs... " >&6; } +hardcode_action= +if test -n "$hardcode_libdir_flag_spec" || + test -n "$runpath_var" || + test yes = "$hardcode_automatic"; then + + # We can hardcode non-existent directories. + if test no != "$hardcode_direct" && + # If the only mechanism to avoid hardcoding is shlibpath_var, we + # have to relink, otherwise we might link with an installed library + # when we should be linking with a yet-to-be-installed one + ## test no != "$_LT_TAGVAR(hardcode_shlibpath_var, )" && + test no != "$hardcode_minus_L"; then + # Linking always hardcodes the temporary library directory. + hardcode_action=relink + else + # We can link without hardcoding, and we can hardcode nonexisting dirs. + hardcode_action=immediate + fi +else + # We cannot hardcode anything, or else we can only hardcode existing + # directories. + hardcode_action=unsupported +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $hardcode_action" >&5 +$as_echo "$hardcode_action" >&6; } + +if test relink = "$hardcode_action" || + test yes = "$inherit_rpath"; then + # Fast installation is not supported + enable_fast_install=no +elif test yes = "$shlibpath_overrides_runpath" || + test no = "$enable_shared"; then + # Fast installation is not necessary + enable_fast_install=needless +fi + + + + + + + if test yes != "$enable_dlopen"; then + enable_dlopen=unknown + enable_dlopen_self=unknown + enable_dlopen_self_static=unknown +else + lt_cv_dlopen=no + lt_cv_dlopen_libs= + + case $host_os in + beos*) + lt_cv_dlopen=load_add_on + lt_cv_dlopen_libs= + lt_cv_dlopen_self=yes + ;; + + mingw* | pw32* | cegcc*) + lt_cv_dlopen=LoadLibrary + lt_cv_dlopen_libs= + ;; + + cygwin*) + lt_cv_dlopen=dlopen + lt_cv_dlopen_libs= + ;; + + darwin*) + # if libdl is installed we need to link against it + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5 +$as_echo_n "checking for dlopen in -ldl... " >&6; } +if ${ac_cv_lib_dl_dlopen+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-ldl $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char dlopen (); +int +main () +{ +return dlopen (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_dl_dlopen=yes +else + ac_cv_lib_dl_dlopen=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5 +$as_echo "$ac_cv_lib_dl_dlopen" >&6; } +if test "x$ac_cv_lib_dl_dlopen" = xyes; then : + lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl +else + + lt_cv_dlopen=dyld + lt_cv_dlopen_libs= + lt_cv_dlopen_self=yes + +fi + + ;; + + tpf*) + # Don't try to run any link tests for TPF. We know it's impossible + # because TPF is a cross-compiler, and we know how we open DSOs. + lt_cv_dlopen=dlopen + lt_cv_dlopen_libs= + lt_cv_dlopen_self=no + ;; + + *) + ac_fn_c_check_func "$LINENO" "shl_load" "ac_cv_func_shl_load" +if test "x$ac_cv_func_shl_load" = xyes; then : + lt_cv_dlopen=shl_load +else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for shl_load in -ldld" >&5 +$as_echo_n "checking for shl_load in -ldld... " >&6; } +if ${ac_cv_lib_dld_shl_load+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-ldld $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char shl_load (); +int +main () +{ +return shl_load (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_dld_shl_load=yes +else + ac_cv_lib_dld_shl_load=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_shl_load" >&5 +$as_echo "$ac_cv_lib_dld_shl_load" >&6; } +if test "x$ac_cv_lib_dld_shl_load" = xyes; then : + lt_cv_dlopen=shl_load lt_cv_dlopen_libs=-ldld +else + ac_fn_c_check_func "$LINENO" "dlopen" "ac_cv_func_dlopen" +if test "x$ac_cv_func_dlopen" = xyes; then : + lt_cv_dlopen=dlopen +else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5 +$as_echo_n "checking for dlopen in -ldl... " >&6; } +if ${ac_cv_lib_dl_dlopen+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-ldl $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char dlopen (); +int +main () +{ +return dlopen (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_dl_dlopen=yes +else + ac_cv_lib_dl_dlopen=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5 +$as_echo "$ac_cv_lib_dl_dlopen" >&6; } +if test "x$ac_cv_lib_dl_dlopen" = xyes; then : + lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl +else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -lsvld" >&5 +$as_echo_n "checking for dlopen in -lsvld... " >&6; } +if ${ac_cv_lib_svld_dlopen+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-lsvld $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char dlopen (); +int +main () +{ +return dlopen (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_svld_dlopen=yes +else + ac_cv_lib_svld_dlopen=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_svld_dlopen" >&5 +$as_echo "$ac_cv_lib_svld_dlopen" >&6; } +if test "x$ac_cv_lib_svld_dlopen" = xyes; then : + lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-lsvld +else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dld_link in -ldld" >&5 +$as_echo_n "checking for dld_link in -ldld... " >&6; } +if ${ac_cv_lib_dld_dld_link+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-ldld $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char dld_link (); +int +main () +{ +return dld_link (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_dld_dld_link=yes +else + ac_cv_lib_dld_dld_link=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_dld_link" >&5 +$as_echo "$ac_cv_lib_dld_dld_link" >&6; } +if test "x$ac_cv_lib_dld_dld_link" = xyes; then : + lt_cv_dlopen=dld_link lt_cv_dlopen_libs=-ldld +fi + + +fi + + +fi + + +fi + + +fi + + +fi + + ;; + esac + + if test no = "$lt_cv_dlopen"; then + enable_dlopen=no + else + enable_dlopen=yes + fi + + case $lt_cv_dlopen in + dlopen) + save_CPPFLAGS=$CPPFLAGS + test yes = "$ac_cv_header_dlfcn_h" && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H" + + save_LDFLAGS=$LDFLAGS + wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\" + + save_LIBS=$LIBS + LIBS="$lt_cv_dlopen_libs $LIBS" + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a program can dlopen itself" >&5 +$as_echo_n "checking whether a program can dlopen itself... " >&6; } +if ${lt_cv_dlopen_self+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test yes = "$cross_compiling"; then : + lt_cv_dlopen_self=cross +else + lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 + lt_status=$lt_dlunknown + cat > conftest.$ac_ext <<_LT_EOF +#line $LINENO "configure" +#include "confdefs.h" + +#if HAVE_DLFCN_H +#include +#endif + +#include + +#ifdef RTLD_GLOBAL +# define LT_DLGLOBAL RTLD_GLOBAL +#else +# ifdef DL_GLOBAL +# define LT_DLGLOBAL DL_GLOBAL +# else +# define LT_DLGLOBAL 0 +# endif +#endif + +/* We may have to define LT_DLLAZY_OR_NOW in the command line if we + find out it does not work in some platform. */ +#ifndef LT_DLLAZY_OR_NOW +# ifdef RTLD_LAZY +# define LT_DLLAZY_OR_NOW RTLD_LAZY +# else +# ifdef DL_LAZY +# define LT_DLLAZY_OR_NOW DL_LAZY +# else +# ifdef RTLD_NOW +# define LT_DLLAZY_OR_NOW RTLD_NOW +# else +# ifdef DL_NOW +# define LT_DLLAZY_OR_NOW DL_NOW +# else +# define LT_DLLAZY_OR_NOW 0 +# endif +# endif +# endif +# endif +#endif + +/* When -fvisibility=hidden is used, assume the code has been annotated + correspondingly for the symbols needed. */ +#if defined __GNUC__ && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3)) +int fnord () __attribute__((visibility("default"))); +#endif + +int fnord () { return 42; } +int main () +{ + void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW); + int status = $lt_dlunknown; + + if (self) + { + if (dlsym (self,"fnord")) status = $lt_dlno_uscore; + else + { + if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore; + else puts (dlerror ()); + } + /* dlclose (self); */ + } + else + puts (dlerror ()); + + return status; +} +_LT_EOF + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 + (eval $ac_link) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && test -s "conftest$ac_exeext" 2>/dev/null; then + (./conftest; exit; ) >&5 2>/dev/null + lt_status=$? + case x$lt_status in + x$lt_dlno_uscore) lt_cv_dlopen_self=yes ;; + x$lt_dlneed_uscore) lt_cv_dlopen_self=yes ;; + x$lt_dlunknown|x*) lt_cv_dlopen_self=no ;; + esac + else : + # compilation failed + lt_cv_dlopen_self=no + fi +fi +rm -fr conftest* + + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self" >&5 +$as_echo "$lt_cv_dlopen_self" >&6; } + + if test yes = "$lt_cv_dlopen_self"; then + wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\" + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a statically linked program can dlopen itself" >&5 +$as_echo_n "checking whether a statically linked program can dlopen itself... " >&6; } +if ${lt_cv_dlopen_self_static+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test yes = "$cross_compiling"; then : + lt_cv_dlopen_self_static=cross +else + lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 + lt_status=$lt_dlunknown + cat > conftest.$ac_ext <<_LT_EOF +#line $LINENO "configure" +#include "confdefs.h" + +#if HAVE_DLFCN_H +#include +#endif + +#include + +#ifdef RTLD_GLOBAL +# define LT_DLGLOBAL RTLD_GLOBAL +#else +# ifdef DL_GLOBAL +# define LT_DLGLOBAL DL_GLOBAL +# else +# define LT_DLGLOBAL 0 +# endif +#endif + +/* We may have to define LT_DLLAZY_OR_NOW in the command line if we + find out it does not work in some platform. */ +#ifndef LT_DLLAZY_OR_NOW +# ifdef RTLD_LAZY +# define LT_DLLAZY_OR_NOW RTLD_LAZY +# else +# ifdef DL_LAZY +# define LT_DLLAZY_OR_NOW DL_LAZY +# else +# ifdef RTLD_NOW +# define LT_DLLAZY_OR_NOW RTLD_NOW +# else +# ifdef DL_NOW +# define LT_DLLAZY_OR_NOW DL_NOW +# else +# define LT_DLLAZY_OR_NOW 0 +# endif +# endif +# endif +# endif +#endif + +/* When -fvisibility=hidden is used, assume the code has been annotated + correspondingly for the symbols needed. */ +#if defined __GNUC__ && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3)) +int fnord () __attribute__((visibility("default"))); +#endif + +int fnord () { return 42; } +int main () +{ + void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW); + int status = $lt_dlunknown; + + if (self) + { + if (dlsym (self,"fnord")) status = $lt_dlno_uscore; + else + { + if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore; + else puts (dlerror ()); + } + /* dlclose (self); */ + } + else + puts (dlerror ()); + + return status; +} +_LT_EOF + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 + (eval $ac_link) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && test -s "conftest$ac_exeext" 2>/dev/null; then + (./conftest; exit; ) >&5 2>/dev/null + lt_status=$? + case x$lt_status in + x$lt_dlno_uscore) lt_cv_dlopen_self_static=yes ;; + x$lt_dlneed_uscore) lt_cv_dlopen_self_static=yes ;; + x$lt_dlunknown|x*) lt_cv_dlopen_self_static=no ;; + esac + else : + # compilation failed + lt_cv_dlopen_self_static=no + fi +fi +rm -fr conftest* + + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self_static" >&5 +$as_echo "$lt_cv_dlopen_self_static" >&6; } + fi + + CPPFLAGS=$save_CPPFLAGS + LDFLAGS=$save_LDFLAGS + LIBS=$save_LIBS + ;; + esac + + case $lt_cv_dlopen_self in + yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;; + *) enable_dlopen_self=unknown ;; + esac + + case $lt_cv_dlopen_self_static in + yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;; + *) enable_dlopen_self_static=unknown ;; + esac +fi + + + + + + + + + + + + + + + + + +striplib= +old_striplib= +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether stripping libraries is possible" >&5 +$as_echo_n "checking whether stripping libraries is possible... " >&6; } +if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then + test -z "$old_striplib" && old_striplib="$STRIP --strip-debug" + test -z "$striplib" && striplib="$STRIP --strip-unneeded" + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } +else +# FIXME - insert some real tests, host_os isn't really good enough + case $host_os in + darwin*) + if test -n "$STRIP"; then + striplib="$STRIP -x" + old_striplib="$STRIP -S" + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + fi + ;; + *) + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + ;; + esac +fi + + + + + + + + + + + + + # Report what library types will actually be built + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libtool supports shared libraries" >&5 +$as_echo_n "checking if libtool supports shared libraries... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $can_build_shared" >&5 +$as_echo "$can_build_shared" >&6; } + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build shared libraries" >&5 +$as_echo_n "checking whether to build shared libraries... " >&6; } + test no = "$can_build_shared" && enable_shared=no + + # On AIX, shared libraries and static libraries use the same namespace, and + # are all built from PIC. + case $host_os in + aix3*) + test yes = "$enable_shared" && enable_static=no + if test -n "$RANLIB"; then + archive_cmds="$archive_cmds~\$RANLIB \$lib" + postinstall_cmds='$RANLIB $lib' + fi + ;; + + aix[4-9]*) + if test ia64 != "$host_cpu"; then + case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in + yes,aix,yes) ;; # shared object as lib.so file only + yes,svr4,*) ;; # shared object as lib.so archive member only + yes,*) enable_static=no ;; # shared object in lib.a archive as well + esac + fi + ;; + esac + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_shared" >&5 +$as_echo "$enable_shared" >&6; } + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build static libraries" >&5 +$as_echo_n "checking whether to build static libraries... " >&6; } + # Make sure either enable_shared or enable_static is yes. + test yes = "$enable_shared" || enable_static=yes + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_static" >&5 +$as_echo "$enable_static" >&6; } + + + + +fi +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu + +CC=$lt_save_CC + + if test -n "$CXX" && ( test no != "$CXX" && + ( (test g++ = "$CXX" && `g++ -v >/dev/null 2>&1` ) || + (test g++ != "$CXX"))); then + ac_ext=cpp +ac_cpp='$CXXCPP $CPPFLAGS' +ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_cxx_compiler_gnu +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C++ preprocessor" >&5 +$as_echo_n "checking how to run the C++ preprocessor... " >&6; } +if test -z "$CXXCPP"; then + if ${ac_cv_prog_CXXCPP+:} false; then : + $as_echo_n "(cached) " >&6 +else + # Double quotes because CXXCPP needs to be expanded + for CXXCPP in "$CXX -E" "/lib/cpp" + do + ac_preproc_ok=false +for ac_cxx_preproc_warn_flag in '' yes +do + # Use a header file that comes with gcc, so configuring glibc + # with a fresh cross-compiler works. + # Prefer to if __STDC__ is defined, since + # exists even on freestanding compilers. + # On the NeXT, cc -E runs the code through the compiler's parser, + # not just through cpp. "Syntax error" is here to catch this case. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#ifdef __STDC__ +# include +#else +# include +#endif + Syntax error +_ACEOF +if ac_fn_cxx_try_cpp "$LINENO"; then : + +else + # Broken: fails on valid input. +continue +fi +rm -f conftest.err conftest.i conftest.$ac_ext + + # OK, works on sane cases. Now check whether nonexistent headers + # can be detected and how. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +_ACEOF +if ac_fn_cxx_try_cpp "$LINENO"; then : + # Broken: success on invalid input. +continue +else + # Passes both tests. +ac_preproc_ok=: +break +fi +rm -f conftest.err conftest.i conftest.$ac_ext + +done +# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. +rm -f conftest.i conftest.err conftest.$ac_ext +if $ac_preproc_ok; then : + break +fi + + done + ac_cv_prog_CXXCPP=$CXXCPP + +fi + CXXCPP=$ac_cv_prog_CXXCPP +else + ac_cv_prog_CXXCPP=$CXXCPP +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $CXXCPP" >&5 +$as_echo "$CXXCPP" >&6; } +ac_preproc_ok=false +for ac_cxx_preproc_warn_flag in '' yes +do + # Use a header file that comes with gcc, so configuring glibc + # with a fresh cross-compiler works. + # Prefer to if __STDC__ is defined, since + # exists even on freestanding compilers. + # On the NeXT, cc -E runs the code through the compiler's parser, + # not just through cpp. "Syntax error" is here to catch this case. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#ifdef __STDC__ +# include +#else +# include +#endif + Syntax error +_ACEOF +if ac_fn_cxx_try_cpp "$LINENO"; then : + +else + # Broken: fails on valid input. +continue +fi +rm -f conftest.err conftest.i conftest.$ac_ext + + # OK, works on sane cases. Now check whether nonexistent headers + # can be detected and how. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +_ACEOF +if ac_fn_cxx_try_cpp "$LINENO"; then : + # Broken: success on invalid input. +continue +else + # Passes both tests. +ac_preproc_ok=: +break +fi +rm -f conftest.err conftest.i conftest.$ac_ext + +done +# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. +rm -f conftest.i conftest.err conftest.$ac_ext +if $ac_preproc_ok; then : + +else + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "C++ preprocessor \"$CXXCPP\" fails sanity check +See \`config.log' for more details" "$LINENO" 5; } +fi + +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu + +else + _lt_caught_CXX_error=yes +fi + +ac_ext=cpp +ac_cpp='$CXXCPP $CPPFLAGS' +ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_cxx_compiler_gnu + +archive_cmds_need_lc_CXX=no +allow_undefined_flag_CXX= +always_export_symbols_CXX=no +archive_expsym_cmds_CXX= +compiler_needs_object_CXX=no +export_dynamic_flag_spec_CXX= +hardcode_direct_CXX=no +hardcode_direct_absolute_CXX=no +hardcode_libdir_flag_spec_CXX= +hardcode_libdir_separator_CXX= +hardcode_minus_L_CXX=no +hardcode_shlibpath_var_CXX=unsupported +hardcode_automatic_CXX=no +inherit_rpath_CXX=no +module_cmds_CXX= +module_expsym_cmds_CXX= +link_all_deplibs_CXX=unknown +old_archive_cmds_CXX=$old_archive_cmds +reload_flag_CXX=$reload_flag +reload_cmds_CXX=$reload_cmds +no_undefined_flag_CXX= +whole_archive_flag_spec_CXX= +enable_shared_with_static_runtimes_CXX=no + +# Source file extension for C++ test sources. +ac_ext=cpp + +# Object file extension for compiled C++ test sources. +objext=o +objext_CXX=$objext + +# No sense in running all these tests if we already determined that +# the CXX compiler isn't working. Some variables (like enable_shared) +# are currently assumed to apply to all compilers on this platform, +# and will be corrupted by setting them based on a non-working compiler. +if test yes != "$_lt_caught_CXX_error"; then + # Code to be used in simple compile tests + lt_simple_compile_test_code="int some_variable = 0;" + + # Code to be used in simple link tests + lt_simple_link_test_code='int main(int, char *[]) { return(0); }' + + # ltmain only uses $CC for tagged configurations so make sure $CC is set. + + + + + + +# If no C compiler was specified, use CC. +LTCC=${LTCC-"$CC"} + +# If no C compiler flags were specified, use CFLAGS. +LTCFLAGS=${LTCFLAGS-"$CFLAGS"} + +# Allow CC to be a program name with arguments. +compiler=$CC + + + # save warnings/boilerplate of simple test code + ac_outfile=conftest.$ac_objext +echo "$lt_simple_compile_test_code" >conftest.$ac_ext +eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err +_lt_compiler_boilerplate=`cat conftest.err` +$RM conftest* + + ac_outfile=conftest.$ac_objext +echo "$lt_simple_link_test_code" >conftest.$ac_ext +eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err +_lt_linker_boilerplate=`cat conftest.err` +$RM -r conftest* + + + # Allow CC to be a program name with arguments. + lt_save_CC=$CC + lt_save_CFLAGS=$CFLAGS + lt_save_LD=$LD + lt_save_GCC=$GCC + GCC=$GXX + lt_save_with_gnu_ld=$with_gnu_ld + lt_save_path_LD=$lt_cv_path_LD + if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then + lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx + else + $as_unset lt_cv_prog_gnu_ld + fi + if test -n "${lt_cv_path_LDCXX+set}"; then + lt_cv_path_LD=$lt_cv_path_LDCXX + else + $as_unset lt_cv_path_LD + fi + test -z "${LDCXX+set}" || LD=$LDCXX + CC=${CXX-"c++"} + CFLAGS=$CXXFLAGS + compiler=$CC + compiler_CXX=$CC + func_cc_basename $compiler +cc_basename=$func_cc_basename_result + + + if test -n "$compiler"; then + # We don't want -fno-exception when compiling C++ code, so set the + # no_builtin_flag separately + if test yes = "$GXX"; then + lt_prog_compiler_no_builtin_flag_CXX=' -fno-builtin' + else + lt_prog_compiler_no_builtin_flag_CXX= + fi + + if test yes = "$GXX"; then + # Set up default GNU C++ configuration + + + +# Check whether --with-gnu-ld was given. +if test "${with_gnu_ld+set}" = set; then : + withval=$with_gnu_ld; test no = "$withval" || with_gnu_ld=yes +else + with_gnu_ld=no +fi + +ac_prog=ld +if test yes = "$GCC"; then + # Check if gcc -print-prog-name=ld gives a path. + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld used by $CC" >&5 +$as_echo_n "checking for ld used by $CC... " >&6; } + case $host in + *-*-mingw*) + # gcc leaves a trailing carriage return, which upsets mingw + ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; + *) + ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; + esac + case $ac_prog in + # Accept absolute paths. + [\\/]* | ?:[\\/]*) + re_direlt='/[^/][^/]*/\.\./' + # Canonicalize the pathname of ld + ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'` + while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do + ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"` + done + test -z "$LD" && LD=$ac_prog + ;; + "") + # If it fails, then pretend we aren't using GCC. + ac_prog=ld + ;; + *) + # If it is relative, then search for the first ld in PATH. + with_gnu_ld=unknown + ;; + esac +elif test yes = "$with_gnu_ld"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5 +$as_echo_n "checking for GNU ld... " >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5 +$as_echo_n "checking for non-GNU ld... " >&6; } +fi +if ${lt_cv_path_LD+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -z "$LD"; then + lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR + for ac_dir in $PATH; do + IFS=$lt_save_ifs + test -z "$ac_dir" && ac_dir=. + if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then + lt_cv_path_LD=$ac_dir/$ac_prog + # Check to see if the program is GNU ld. I'd rather use --version, + # but apparently some variants of GNU ld only accept -v. + # Break only if it was the GNU/non-GNU ld that we prefer. + case `"$lt_cv_path_LD" -v 2>&1 &5 +$as_echo "$LD" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi +test -z "$LD" && as_fn_error $? "no acceptable ld found in \$PATH" "$LINENO" 5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5 +$as_echo_n "checking if the linker ($LD) is GNU ld... " >&6; } +if ${lt_cv_prog_gnu_ld+:} false; then : + $as_echo_n "(cached) " >&6 +else + # I'd rather use --version here, but apparently some GNU lds only accept -v. +case `$LD -v 2>&1 &5 +$as_echo "$lt_cv_prog_gnu_ld" >&6; } +with_gnu_ld=$lt_cv_prog_gnu_ld + + + + + + + + # Check if GNU C++ uses GNU ld as the underlying linker, since the + # archiving commands below assume that GNU ld is being used. + if test yes = "$with_gnu_ld"; then + archive_cmds_CXX='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib' + archive_expsym_cmds_CXX='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' + + hardcode_libdir_flag_spec_CXX='$wl-rpath $wl$libdir' + export_dynamic_flag_spec_CXX='$wl--export-dynamic' + + # If archive_cmds runs LD, not CC, wlarc should be empty + # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to + # investigate it a little bit more. (MM) + wlarc='$wl' + + # ancient GNU ld didn't support --whole-archive et. al. + if eval "`$CC -print-prog-name=ld` --help 2>&1" | + $GREP 'no-whole-archive' > /dev/null; then + whole_archive_flag_spec_CXX=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive' + else + whole_archive_flag_spec_CXX= + fi + else + with_gnu_ld=no + wlarc= + + # A generic and very simple default shared library creation + # command for GNU C++ for the case where it uses the native + # linker, instead of GNU ld. If possible, this setting should + # overridden to take advantage of the native linker features on + # the platform it is being used on. + archive_cmds_CXX='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib' + fi + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"' + + else + GXX=no + with_gnu_ld=no + wlarc= + fi + + # PORTME: fill in a description of your system's C++ link characteristics + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&5 +$as_echo_n "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; } + ld_shlibs_CXX=yes + case $host_os in + aix3*) + # FIXME: insert proper C++ library support + ld_shlibs_CXX=no + ;; + aix[4-9]*) + if test ia64 = "$host_cpu"; then + # On IA64, the linker does run time linking by default, so we don't + # have to do anything special. + aix_use_runtimelinking=no + exp_sym_flag='-Bexport' + no_entry_flag= + else + aix_use_runtimelinking=no + + # Test if we are trying to use run time linking or normal + # AIX style linking. If -brtl is somewhere in LDFLAGS, we + # have runtime linking enabled, and use it for executables. + # For shared libraries, we enable/disable runtime linking + # depending on the kind of the shared library created - + # when "with_aix_soname,aix_use_runtimelinking" is: + # "aix,no" lib.a(lib.so.V) shared, rtl:no, for executables + # "aix,yes" lib.so shared, rtl:yes, for executables + # lib.a static archive + # "both,no" lib.so.V(shr.o) shared, rtl:yes + # lib.a(lib.so.V) shared, rtl:no, for executables + # "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables + # lib.a(lib.so.V) shared, rtl:no + # "svr4,*" lib.so.V(shr.o) shared, rtl:yes, for executables + # lib.a static archive + case $host_os in aix4.[23]|aix4.[23].*|aix[5-9]*) + for ld_flag in $LDFLAGS; do + case $ld_flag in + *-brtl*) + aix_use_runtimelinking=yes + break + ;; + esac + done + if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then + # With aix-soname=svr4, we create the lib.so.V shared archives only, + # so we don't have lib.a shared libs to link our executables. + # We have to force runtime linking in this case. + aix_use_runtimelinking=yes + LDFLAGS="$LDFLAGS -Wl,-brtl" + fi + ;; + esac + + exp_sym_flag='-bexport' + no_entry_flag='-bnoentry' + fi + + # When large executables or shared objects are built, AIX ld can + # have problems creating the table of contents. If linking a library + # or program results in "error TOC overflow" add -mminimal-toc to + # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not + # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. + + archive_cmds_CXX='' + hardcode_direct_CXX=yes + hardcode_direct_absolute_CXX=yes + hardcode_libdir_separator_CXX=':' + link_all_deplibs_CXX=yes + file_list_spec_CXX='$wl-f,' + case $with_aix_soname,$aix_use_runtimelinking in + aix,*) ;; # no import file + svr4,* | *,yes) # use import file + # The Import File defines what to hardcode. + hardcode_direct_CXX=no + hardcode_direct_absolute_CXX=no + ;; + esac + + if test yes = "$GXX"; then + case $host_os in aix4.[012]|aix4.[012].*) + # We only want to do this on AIX 4.2 and lower, the check + # below for broken collect2 doesn't work under 4.3+ + collect2name=`$CC -print-prog-name=collect2` + if test -f "$collect2name" && + strings "$collect2name" | $GREP resolve_lib_name >/dev/null + then + # We have reworked collect2 + : + else + # We have old collect2 + hardcode_direct_CXX=unsupported + # It fails to find uninstalled libraries when the uninstalled + # path is not listed in the libpath. Setting hardcode_minus_L + # to unsupported forces relinking + hardcode_minus_L_CXX=yes + hardcode_libdir_flag_spec_CXX='-L$libdir' + hardcode_libdir_separator_CXX= + fi + esac + shared_flag='-shared' + if test yes = "$aix_use_runtimelinking"; then + shared_flag=$shared_flag' $wl-G' + fi + # Need to ensure runtime linking is disabled for the traditional + # shared library, or the linker may eventually find shared libraries + # /with/ Import File - we do not want to mix them. + shared_flag_aix='-shared' + shared_flag_svr4='-shared $wl-G' + else + # not using gcc + if test ia64 = "$host_cpu"; then + # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release + # chokes on -Wl,-G. The following line is correct: + shared_flag='-G' + else + if test yes = "$aix_use_runtimelinking"; then + shared_flag='$wl-G' + else + shared_flag='$wl-bM:SRE' + fi + shared_flag_aix='$wl-bM:SRE' + shared_flag_svr4='$wl-G' + fi + fi + + export_dynamic_flag_spec_CXX='$wl-bexpall' + # It seems that -bexpall does not export symbols beginning with + # underscore (_), so it is better to generate a list of symbols to + # export. + always_export_symbols_CXX=yes + if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then + # Warning - without using the other runtime loading flags (-brtl), + # -berok will link without error, but may produce a broken library. + # The "-G" linker flag allows undefined symbols. + no_undefined_flag_CXX='-bernotok' + # Determine the default libpath from the value encoded in an empty + # executable. + if test set = "${lt_cv_aix_libpath+set}"; then + aix_libpath=$lt_cv_aix_libpath +else + if ${lt_cv_aix_libpath__CXX+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_cxx_try_link "$LINENO"; then : + + lt_aix_libpath_sed=' + /Import File Strings/,/^$/ { + /^0/ { + s/^0 *\([^ ]*\) *$/\1/ + p + } + }' + lt_cv_aix_libpath__CXX=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` + # Check for a 64-bit object if we didn't find anything. + if test -z "$lt_cv_aix_libpath__CXX"; then + lt_cv_aix_libpath__CXX=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` + fi +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + if test -z "$lt_cv_aix_libpath__CXX"; then + lt_cv_aix_libpath__CXX=/usr/lib:/lib + fi + +fi + + aix_libpath=$lt_cv_aix_libpath__CXX +fi + + hardcode_libdir_flag_spec_CXX='$wl-blibpath:$libdir:'"$aix_libpath" + + archive_expsym_cmds_CXX='$CC -o $output_objdir/$soname $libobjs $deplibs $wl'$no_entry_flag' $compiler_flags `if test -n "$allow_undefined_flag"; then func_echo_all "$wl$allow_undefined_flag"; else :; fi` $wl'$exp_sym_flag:\$export_symbols' '$shared_flag + else + if test ia64 = "$host_cpu"; then + hardcode_libdir_flag_spec_CXX='$wl-R $libdir:/usr/lib:/lib' + allow_undefined_flag_CXX="-z nodefs" + archive_expsym_cmds_CXX="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\$wl$no_entry_flag"' $compiler_flags $wl$allow_undefined_flag '"\$wl$exp_sym_flag:\$export_symbols" + else + # Determine the default libpath from the value encoded in an + # empty executable. + if test set = "${lt_cv_aix_libpath+set}"; then + aix_libpath=$lt_cv_aix_libpath +else + if ${lt_cv_aix_libpath__CXX+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_cxx_try_link "$LINENO"; then : + + lt_aix_libpath_sed=' + /Import File Strings/,/^$/ { + /^0/ { + s/^0 *\([^ ]*\) *$/\1/ + p + } + }' + lt_cv_aix_libpath__CXX=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` + # Check for a 64-bit object if we didn't find anything. + if test -z "$lt_cv_aix_libpath__CXX"; then + lt_cv_aix_libpath__CXX=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` + fi +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + if test -z "$lt_cv_aix_libpath__CXX"; then + lt_cv_aix_libpath__CXX=/usr/lib:/lib + fi + +fi + + aix_libpath=$lt_cv_aix_libpath__CXX +fi + + hardcode_libdir_flag_spec_CXX='$wl-blibpath:$libdir:'"$aix_libpath" + # Warning - without using the other run time loading flags, + # -berok will link without error, but may produce a broken library. + no_undefined_flag_CXX=' $wl-bernotok' + allow_undefined_flag_CXX=' $wl-berok' + if test yes = "$with_gnu_ld"; then + # We only use this code for GNU lds that support --whole-archive. + whole_archive_flag_spec_CXX='$wl--whole-archive$convenience $wl--no-whole-archive' + else + # Exported symbols can be pulled into shared objects from archives + whole_archive_flag_spec_CXX='$convenience' + fi + archive_cmds_need_lc_CXX=yes + archive_expsym_cmds_CXX='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d' + # -brtl affects multiple linker settings, -berok does not and is overridden later + compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([, ]\\)%-berok\\1%g"`' + if test svr4 != "$with_aix_soname"; then + # This is similar to how AIX traditionally builds its shared + # libraries. Need -bnortl late, we may have -brtl in LDFLAGS. + archive_expsym_cmds_CXX="$archive_expsym_cmds_CXX"'~$CC '$shared_flag_aix' -o $output_objdir/$realname.d/$soname $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$realname.d/$soname' + fi + if test aix != "$with_aix_soname"; then + archive_expsym_cmds_CXX="$archive_expsym_cmds_CXX"'~$CC '$shared_flag_svr4' -o $output_objdir/$realname.d/$shared_archive_member_spec.o $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$STRIP -e $output_objdir/$realname.d/$shared_archive_member_spec.o~( func_echo_all "#! $soname($shared_archive_member_spec.o)"; if test shr_64 = "$shared_archive_member_spec"; then func_echo_all "# 64"; else func_echo_all "# 32"; fi; cat $export_symbols ) > $output_objdir/$realname.d/$shared_archive_member_spec.imp~$AR $AR_FLAGS $output_objdir/$soname $output_objdir/$realname.d/$shared_archive_member_spec.o $output_objdir/$realname.d/$shared_archive_member_spec.imp' + else + # used by -dlpreopen to get the symbols + archive_expsym_cmds_CXX="$archive_expsym_cmds_CXX"'~$MV $output_objdir/$realname.d/$soname $output_objdir' + fi + archive_expsym_cmds_CXX="$archive_expsym_cmds_CXX"'~$RM -r $output_objdir/$realname.d' + fi + fi + ;; + + beos*) + if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then + allow_undefined_flag_CXX=unsupported + # Joseph Beckenbach says some releases of gcc + # support --undefined. This deserves some investigation. FIXME + archive_cmds_CXX='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' + else + ld_shlibs_CXX=no + fi + ;; + + chorus*) + case $cc_basename in + *) + # FIXME: insert proper C++ library support + ld_shlibs_CXX=no + ;; + esac + ;; + + cygwin* | mingw* | pw32* | cegcc*) + case $GXX,$cc_basename in + ,cl* | no,cl*) + # Native MSVC + # hardcode_libdir_flag_spec is actually meaningless, as there is + # no search path for DLLs. + hardcode_libdir_flag_spec_CXX=' ' + allow_undefined_flag_CXX=unsupported + always_export_symbols_CXX=yes + file_list_spec_CXX='@' + # Tell ltmain to make .lib files, not .a files. + libext=lib + # Tell ltmain to make .dll files, not .so files. + shrext_cmds=.dll + # FIXME: Setting linknames here is a bad hack. + archive_cmds_CXX='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames=' + archive_expsym_cmds_CXX='if test DEF = "`$SED -n -e '\''s/^[ ]*//'\'' -e '\''/^\(;.*\)*$/d'\'' -e '\''s/^\(EXPORTS\|LIBRARY\)\([ ].*\)*$/DEF/p'\'' -e q $export_symbols`" ; then + cp "$export_symbols" "$output_objdir/$soname.def"; + echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp"; + else + $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp; + fi~ + $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~ + linknames=' + # The linker will not automatically build a static lib if we build a DLL. + # _LT_TAGVAR(old_archive_from_new_cmds, CXX)='true' + enable_shared_with_static_runtimes_CXX=yes + # Don't use ranlib + old_postinstall_cmds_CXX='chmod 644 $oldlib' + postlink_cmds_CXX='lt_outputfile="@OUTPUT@"~ + lt_tool_outputfile="@TOOL_OUTPUT@"~ + case $lt_outputfile in + *.exe|*.EXE) ;; + *) + lt_outputfile=$lt_outputfile.exe + lt_tool_outputfile=$lt_tool_outputfile.exe + ;; + esac~ + func_to_tool_file "$lt_outputfile"~ + if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then + $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1; + $RM "$lt_outputfile.manifest"; + fi' + ;; + *) + # g++ + # _LT_TAGVAR(hardcode_libdir_flag_spec, CXX) is actually meaningless, + # as there is no search path for DLLs. + hardcode_libdir_flag_spec_CXX='-L$libdir' + export_dynamic_flag_spec_CXX='$wl--export-all-symbols' + allow_undefined_flag_CXX=unsupported + always_export_symbols_CXX=no + enable_shared_with_static_runtimes_CXX=yes + + if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then + archive_cmds_CXX='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' + # If the export-symbols file already is a .def file, use it as + # is; otherwise, prepend EXPORTS... + archive_expsym_cmds_CXX='if test DEF = "`$SED -n -e '\''s/^[ ]*//'\'' -e '\''/^\(;.*\)*$/d'\'' -e '\''s/^\(EXPORTS\|LIBRARY\)\([ ].*\)*$/DEF/p'\'' -e q $export_symbols`" ; then + cp $export_symbols $output_objdir/$soname.def; + else + echo EXPORTS > $output_objdir/$soname.def; + cat $export_symbols >> $output_objdir/$soname.def; + fi~ + $CC -shared -nostdlib $output_objdir/$soname.def $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' + else + ld_shlibs_CXX=no + fi + ;; + esac + ;; + darwin* | rhapsody*) + + + archive_cmds_need_lc_CXX=no + hardcode_direct_CXX=no + hardcode_automatic_CXX=yes + hardcode_shlibpath_var_CXX=unsupported + if test yes = "$lt_cv_ld_force_load"; then + whole_archive_flag_spec_CXX='`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience $wl-force_load,$conv\"; done; func_echo_all \"$new_convenience\"`' + + else + whole_archive_flag_spec_CXX='' + fi + link_all_deplibs_CXX=yes + allow_undefined_flag_CXX=$_lt_dar_allow_undefined + case $cc_basename in + ifort*|nagfor*) _lt_dar_can_shared=yes ;; + *) _lt_dar_can_shared=$GCC ;; + esac + if test yes = "$_lt_dar_can_shared"; then + output_verbose_link_cmd=func_echo_all + archive_cmds_CXX="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dsymutil" + module_cmds_CXX="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dsymutil" + archive_expsym_cmds_CXX="sed 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dar_export_syms$_lt_dsymutil" + module_expsym_cmds_CXX="sed -e 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dar_export_syms$_lt_dsymutil" + if test yes != "$lt_cv_apple_cc_single_mod"; then + archive_cmds_CXX="\$CC -r -keep_private_externs -nostdlib -o \$lib-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$lib-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring$_lt_dsymutil" + archive_expsym_cmds_CXX="sed 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC -r -keep_private_externs -nostdlib -o \$lib-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$lib-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring$_lt_dar_export_syms$_lt_dsymutil" + fi + + else + ld_shlibs_CXX=no + fi + + ;; + + os2*) + hardcode_libdir_flag_spec_CXX='-L$libdir' + hardcode_minus_L_CXX=yes + allow_undefined_flag_CXX=unsupported + shrext_cmds=.dll + archive_cmds_CXX='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ + $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ + $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ + $ECHO EXPORTS >> $output_objdir/$libname.def~ + emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~ + $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ + emximp -o $lib $output_objdir/$libname.def' + archive_expsym_cmds_CXX='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ + $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ + $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ + $ECHO EXPORTS >> $output_objdir/$libname.def~ + prefix_cmds="$SED"~ + if test EXPORTS = "`$SED 1q $export_symbols`"; then + prefix_cmds="$prefix_cmds -e 1d"; + fi~ + prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~ + cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~ + $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ + emximp -o $lib $output_objdir/$libname.def' + old_archive_From_new_cmds_CXX='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def' + enable_shared_with_static_runtimes_CXX=yes + ;; + + dgux*) + case $cc_basename in + ec++*) + # FIXME: insert proper C++ library support + ld_shlibs_CXX=no + ;; + ghcx*) + # Green Hills C++ Compiler + # FIXME: insert proper C++ library support + ld_shlibs_CXX=no + ;; + *) + # FIXME: insert proper C++ library support + ld_shlibs_CXX=no + ;; + esac + ;; + + freebsd2.*) + # C++ shared libraries reported to be fairly broken before + # switch to ELF + ld_shlibs_CXX=no + ;; + + freebsd-elf*) + archive_cmds_need_lc_CXX=no + ;; + + freebsd* | dragonfly*) + # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF + # conventions + ld_shlibs_CXX=yes + ;; + + haiku*) + archive_cmds_CXX='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' + link_all_deplibs_CXX=yes + ;; + + hpux9*) + hardcode_libdir_flag_spec_CXX='$wl+b $wl$libdir' + hardcode_libdir_separator_CXX=: + export_dynamic_flag_spec_CXX='$wl-E' + hardcode_direct_CXX=yes + hardcode_minus_L_CXX=yes # Not in the search PATH, + # but as the default + # location of the library. + + case $cc_basename in + CC*) + # FIXME: insert proper C++ library support + ld_shlibs_CXX=no + ;; + aCC*) + archive_cmds_CXX='$RM $output_objdir/$soname~$CC -b $wl+b $wl$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib' + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + # + # There doesn't appear to be a way to prevent this compiler from + # explicitly linking system object files so we need to strip them + # from the output so that they don't get included in the library + # dependencies. + output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $EGREP "\-L"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"' + ;; + *) + if test yes = "$GXX"; then + archive_cmds_CXX='$RM $output_objdir/$soname~$CC -shared -nostdlib $pic_flag $wl+b $wl$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib' + else + # FIXME: insert proper C++ library support + ld_shlibs_CXX=no + fi + ;; + esac + ;; + + hpux10*|hpux11*) + if test no = "$with_gnu_ld"; then + hardcode_libdir_flag_spec_CXX='$wl+b $wl$libdir' + hardcode_libdir_separator_CXX=: + + case $host_cpu in + hppa*64*|ia64*) + ;; + *) + export_dynamic_flag_spec_CXX='$wl-E' + ;; + esac + fi + case $host_cpu in + hppa*64*|ia64*) + hardcode_direct_CXX=no + hardcode_shlibpath_var_CXX=no + ;; + *) + hardcode_direct_CXX=yes + hardcode_direct_absolute_CXX=yes + hardcode_minus_L_CXX=yes # Not in the search PATH, + # but as the default + # location of the library. + ;; + esac + + case $cc_basename in + CC*) + # FIXME: insert proper C++ library support + ld_shlibs_CXX=no + ;; + aCC*) + case $host_cpu in + hppa*64*) + archive_cmds_CXX='$CC -b $wl+h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + ;; + ia64*) + archive_cmds_CXX='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + ;; + *) + archive_cmds_CXX='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + ;; + esac + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + # + # There doesn't appear to be a way to prevent this compiler from + # explicitly linking system object files so we need to strip them + # from the output so that they don't get included in the library + # dependencies. + output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $GREP "\-L"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"' + ;; + *) + if test yes = "$GXX"; then + if test no = "$with_gnu_ld"; then + case $host_cpu in + hppa*64*) + archive_cmds_CXX='$CC -shared -nostdlib -fPIC $wl+h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + ;; + ia64*) + archive_cmds_CXX='$CC -shared -nostdlib $pic_flag $wl+h $wl$soname $wl+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + ;; + *) + archive_cmds_CXX='$CC -shared -nostdlib $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + ;; + esac + fi + else + # FIXME: insert proper C++ library support + ld_shlibs_CXX=no + fi + ;; + esac + ;; + + interix[3-9]*) + hardcode_direct_CXX=no + hardcode_shlibpath_var_CXX=no + hardcode_libdir_flag_spec_CXX='$wl-rpath,$libdir' + export_dynamic_flag_spec_CXX='$wl-E' + # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc. + # Instead, shared libraries are loaded at an image base (0x10000000 by + # default) and relocated if they conflict, which is a slow very memory + # consuming and fragmenting process. To avoid this, we pick a random, + # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link + # time. Moving up from 0x10000000 also allows more sbrk(2) space. + archive_cmds_CXX='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' + archive_expsym_cmds_CXX='sed "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--retain-symbols-file,$output_objdir/$soname.expsym $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' + ;; + irix5* | irix6*) + case $cc_basename in + CC*) + # SGI C++ + archive_cmds_CXX='$CC -shared -all -multigot $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib' + + # Archives containing C++ object files must be created using + # "CC -ar", where "CC" is the IRIX C++ compiler. This is + # necessary to make sure instantiated templates are included + # in the archive. + old_archive_cmds_CXX='$CC -ar -WR,-u -o $oldlib $oldobjs' + ;; + *) + if test yes = "$GXX"; then + if test no = "$with_gnu_ld"; then + archive_cmds_CXX='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib' + else + archive_cmds_CXX='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` -o $lib' + fi + fi + link_all_deplibs_CXX=yes + ;; + esac + hardcode_libdir_flag_spec_CXX='$wl-rpath $wl$libdir' + hardcode_libdir_separator_CXX=: + inherit_rpath_CXX=yes + ;; + + linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) + case $cc_basename in + KCC*) + # Kuck and Associates, Inc. (KAI) C++ Compiler + + # KCC will only create a shared library if the output file + # ends with ".so" (or ".sl" for HP-UX), so rename the library + # to its proper name (with version) after linking. + archive_cmds_CXX='tempext=`echo $shared_ext | $SED -e '\''s/\([^()0-9A-Za-z{}]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\$tempext\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib' + archive_expsym_cmds_CXX='tempext=`echo $shared_ext | $SED -e '\''s/\([^()0-9A-Za-z{}]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\$tempext\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib $wl-retain-symbols-file,$export_symbols; mv \$templib $lib' + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + # + # There doesn't appear to be a way to prevent this compiler from + # explicitly linking system object files so we need to strip them + # from the output so that they don't get included in the library + # dependencies. + output_verbose_link_cmd='templist=`$CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 | $GREP "ld"`; rm -f libconftest$shared_ext; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"' + + hardcode_libdir_flag_spec_CXX='$wl-rpath,$libdir' + export_dynamic_flag_spec_CXX='$wl--export-dynamic' + + # Archives containing C++ object files must be created using + # "CC -Bstatic", where "CC" is the KAI C++ compiler. + old_archive_cmds_CXX='$CC -Bstatic -o $oldlib $oldobjs' + ;; + icpc* | ecpc* ) + # Intel C++ + with_gnu_ld=yes + # version 8.0 and above of icpc choke on multiply defined symbols + # if we add $predep_objects and $postdep_objects, however 7.1 and + # earlier do not add the objects themselves. + case `$CC -V 2>&1` in + *"Version 7."*) + archive_cmds_CXX='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib' + archive_expsym_cmds_CXX='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' + ;; + *) # Version 8.0 or newer + tmp_idyn= + case $host_cpu in + ia64*) tmp_idyn=' -i_dynamic';; + esac + archive_cmds_CXX='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' + archive_expsym_cmds_CXX='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' + ;; + esac + archive_cmds_need_lc_CXX=no + hardcode_libdir_flag_spec_CXX='$wl-rpath,$libdir' + export_dynamic_flag_spec_CXX='$wl--export-dynamic' + whole_archive_flag_spec_CXX='$wl--whole-archive$convenience $wl--no-whole-archive' + ;; + pgCC* | pgcpp*) + # Portland Group C++ compiler + case `$CC -V` in + *pgCC\ [1-5].* | *pgcpp\ [1-5].*) + prelink_cmds_CXX='tpldir=Template.dir~ + rm -rf $tpldir~ + $CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~ + compile_command="$compile_command `find $tpldir -name \*.o | sort | $NL2SP`"' + old_archive_cmds_CXX='tpldir=Template.dir~ + rm -rf $tpldir~ + $CC --prelink_objects --instantiation_dir $tpldir $oldobjs$old_deplibs~ + $AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | sort | $NL2SP`~ + $RANLIB $oldlib' + archive_cmds_CXX='tpldir=Template.dir~ + rm -rf $tpldir~ + $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~ + $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib' + archive_expsym_cmds_CXX='tpldir=Template.dir~ + rm -rf $tpldir~ + $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~ + $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' + ;; + *) # Version 6 and above use weak symbols + archive_cmds_CXX='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib' + archive_expsym_cmds_CXX='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' + ;; + esac + + hardcode_libdir_flag_spec_CXX='$wl--rpath $wl$libdir' + export_dynamic_flag_spec_CXX='$wl--export-dynamic' + whole_archive_flag_spec_CXX='$wl--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive' + ;; + cxx*) + # Compaq C++ + archive_cmds_CXX='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib' + archive_expsym_cmds_CXX='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib $wl-retain-symbols-file $wl$export_symbols' + + runpath_var=LD_RUN_PATH + hardcode_libdir_flag_spec_CXX='-rpath $libdir' + hardcode_libdir_separator_CXX=: + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + # + # There doesn't appear to be a way to prevent this compiler from + # explicitly linking system object files so we need to strip them + # from the output so that they don't get included in the library + # dependencies. + output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld"`; templist=`func_echo_all "$templist" | $SED "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "X$list" | $Xsed' + ;; + xl* | mpixl* | bgxl*) + # IBM XL 8.0 on PPC, with GNU ld + hardcode_libdir_flag_spec_CXX='$wl-rpath $wl$libdir' + export_dynamic_flag_spec_CXX='$wl--export-dynamic' + archive_cmds_CXX='$CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' + if test yes = "$supports_anon_versioning"; then + archive_expsym_cmds_CXX='echo "{ global:" > $output_objdir/$libname.ver~ + cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ + echo "local: *; };" >> $output_objdir/$libname.ver~ + $CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib' + fi + ;; + *) + case `$CC -V 2>&1 | sed 5q` in + *Sun\ C*) + # Sun C++ 5.9 + no_undefined_flag_CXX=' -zdefs' + archive_cmds_CXX='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + archive_expsym_cmds_CXX='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-retain-symbols-file $wl$export_symbols' + hardcode_libdir_flag_spec_CXX='-R$libdir' + whole_archive_flag_spec_CXX='$wl--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive' + compiler_needs_object_CXX=yes + + # Not sure whether something based on + # $CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 + # would be better. + output_verbose_link_cmd='func_echo_all' + + # Archives containing C++ object files must be created using + # "CC -xar", where "CC" is the Sun C++ compiler. This is + # necessary to make sure instantiated templates are included + # in the archive. + old_archive_cmds_CXX='$CC -xar -o $oldlib $oldobjs' + ;; + esac + ;; + esac + ;; + + lynxos*) + # FIXME: insert proper C++ library support + ld_shlibs_CXX=no + ;; + + m88k*) + # FIXME: insert proper C++ library support + ld_shlibs_CXX=no + ;; + + mvs*) + case $cc_basename in + cxx*) + # FIXME: insert proper C++ library support + ld_shlibs_CXX=no + ;; + *) + # FIXME: insert proper C++ library support + ld_shlibs_CXX=no + ;; + esac + ;; + + netbsd*) + if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then + archive_cmds_CXX='$LD -Bshareable -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags' + wlarc= + hardcode_libdir_flag_spec_CXX='-R$libdir' + hardcode_direct_CXX=yes + hardcode_shlibpath_var_CXX=no + fi + # Workaround some broken pre-1.5 toolchains + output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"' + ;; + + *nto* | *qnx*) + ld_shlibs_CXX=yes + ;; + + openbsd* | bitrig*) + if test -f /usr/libexec/ld.so; then + hardcode_direct_CXX=yes + hardcode_shlibpath_var_CXX=no + hardcode_direct_absolute_CXX=yes + archive_cmds_CXX='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib' + hardcode_libdir_flag_spec_CXX='$wl-rpath,$libdir' + if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`"; then + archive_expsym_cmds_CXX='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-retain-symbols-file,$export_symbols -o $lib' + export_dynamic_flag_spec_CXX='$wl-E' + whole_archive_flag_spec_CXX=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive' + fi + output_verbose_link_cmd=func_echo_all + else + ld_shlibs_CXX=no + fi + ;; + + osf3* | osf4* | osf5*) + case $cc_basename in + KCC*) + # Kuck and Associates, Inc. (KAI) C++ Compiler + + # KCC will only create a shared library if the output file + # ends with ".so" (or ".sl" for HP-UX), so rename the library + # to its proper name (with version) after linking. + archive_cmds_CXX='tempext=`echo $shared_ext | $SED -e '\''s/\([^()0-9A-Za-z{}]\)/\\\\\1/g'\''`; templib=`echo "$lib" | $SED -e "s/\$tempext\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib' + + hardcode_libdir_flag_spec_CXX='$wl-rpath,$libdir' + hardcode_libdir_separator_CXX=: + + # Archives containing C++ object files must be created using + # the KAI C++ compiler. + case $host in + osf3*) old_archive_cmds_CXX='$CC -Bstatic -o $oldlib $oldobjs' ;; + *) old_archive_cmds_CXX='$CC -o $oldlib $oldobjs' ;; + esac + ;; + RCC*) + # Rational C++ 2.4.1 + # FIXME: insert proper C++ library support + ld_shlibs_CXX=no + ;; + cxx*) + case $host in + osf3*) + allow_undefined_flag_CXX=' $wl-expect_unresolved $wl\*' + archive_cmds_CXX='$CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $soname `test -n "$verstring" && func_echo_all "$wl-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib' + hardcode_libdir_flag_spec_CXX='$wl-rpath $wl$libdir' + ;; + *) + allow_undefined_flag_CXX=' -expect_unresolved \*' + archive_cmds_CXX='$CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib' + archive_expsym_cmds_CXX='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~ + echo "-hidden">> $lib.exp~ + $CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname $wl-input $wl$lib.exp `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib~ + $RM $lib.exp' + hardcode_libdir_flag_spec_CXX='-rpath $libdir' + ;; + esac + + hardcode_libdir_separator_CXX=: + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + # + # There doesn't appear to be a way to prevent this compiler from + # explicitly linking system object files so we need to strip them + # from the output so that they don't get included in the library + # dependencies. + output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld" | $GREP -v "ld:"`; templist=`func_echo_all "$templist" | $SED "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"' + ;; + *) + if test yes,no = "$GXX,$with_gnu_ld"; then + allow_undefined_flag_CXX=' $wl-expect_unresolved $wl\*' + case $host in + osf3*) + archive_cmds_CXX='$CC -shared -nostdlib $allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib' + ;; + *) + archive_cmds_CXX='$CC -shared $pic_flag -nostdlib $allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-msym $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib' + ;; + esac + + hardcode_libdir_flag_spec_CXX='$wl-rpath $wl$libdir' + hardcode_libdir_separator_CXX=: + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"' + + else + # FIXME: insert proper C++ library support + ld_shlibs_CXX=no + fi + ;; + esac + ;; + + psos*) + # FIXME: insert proper C++ library support + ld_shlibs_CXX=no + ;; + + sunos4*) + case $cc_basename in + CC*) + # Sun C++ 4.x + # FIXME: insert proper C++ library support + ld_shlibs_CXX=no + ;; + lcc*) + # Lucid + # FIXME: insert proper C++ library support + ld_shlibs_CXX=no + ;; + *) + # FIXME: insert proper C++ library support + ld_shlibs_CXX=no + ;; + esac + ;; + + solaris*) + case $cc_basename in + CC* | sunCC*) + # Sun C++ 4.2, 5.x and Centerline C++ + archive_cmds_need_lc_CXX=yes + no_undefined_flag_CXX=' -zdefs' + archive_cmds_CXX='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + archive_expsym_cmds_CXX='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ + $CC -G$allow_undefined_flag $wl-M $wl$lib.exp -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp' + + hardcode_libdir_flag_spec_CXX='-R$libdir' + hardcode_shlibpath_var_CXX=no + case $host_os in + solaris2.[0-5] | solaris2.[0-5].*) ;; + *) + # The compiler driver will combine and reorder linker options, + # but understands '-z linker_flag'. + # Supported since Solaris 2.6 (maybe 2.5.1?) + whole_archive_flag_spec_CXX='-z allextract$convenience -z defaultextract' + ;; + esac + link_all_deplibs_CXX=yes + + output_verbose_link_cmd='func_echo_all' + + # Archives containing C++ object files must be created using + # "CC -xar", where "CC" is the Sun C++ compiler. This is + # necessary to make sure instantiated templates are included + # in the archive. + old_archive_cmds_CXX='$CC -xar -o $oldlib $oldobjs' + ;; + gcx*) + # Green Hills C++ Compiler + archive_cmds_CXX='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib' + + # The C++ compiler must be used to create the archive. + old_archive_cmds_CXX='$CC $LDFLAGS -archive -o $oldlib $oldobjs' + ;; + *) + # GNU C++ compiler with Solaris linker + if test yes,no = "$GXX,$with_gnu_ld"; then + no_undefined_flag_CXX=' $wl-z ${wl}defs' + if $CC --version | $GREP -v '^2\.7' > /dev/null; then + archive_cmds_CXX='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib' + archive_expsym_cmds_CXX='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ + $CC -shared $pic_flag -nostdlib $wl-M $wl$lib.exp $wl-h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp' + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"' + else + # g++ 2.7 appears to require '-G' NOT '-shared' on this + # platform. + archive_cmds_CXX='$CC -G -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib' + archive_expsym_cmds_CXX='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ + $CC -G -nostdlib $wl-M $wl$lib.exp $wl-h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp' + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"' + fi + + hardcode_libdir_flag_spec_CXX='$wl-R $wl$libdir' + case $host_os in + solaris2.[0-5] | solaris2.[0-5].*) ;; + *) + whole_archive_flag_spec_CXX='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract' + ;; + esac + fi + ;; + esac + ;; + + sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[01].[10]* | unixware7* | sco3.2v5.0.[024]*) + no_undefined_flag_CXX='$wl-z,text' + archive_cmds_need_lc_CXX=no + hardcode_shlibpath_var_CXX=no + runpath_var='LD_RUN_PATH' + + case $cc_basename in + CC*) + archive_cmds_CXX='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + archive_expsym_cmds_CXX='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + ;; + *) + archive_cmds_CXX='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + archive_expsym_cmds_CXX='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + ;; + esac + ;; + + sysv5* | sco3.2v5* | sco5v6*) + # Note: We CANNOT use -z defs as we might desire, because we do not + # link with -lc, and that would cause any symbols used from libc to + # always be unresolved, which means just about no library would + # ever link correctly. If we're not using GNU ld we use -z text + # though, which does catch some bad symbols but isn't as heavy-handed + # as -z defs. + no_undefined_flag_CXX='$wl-z,text' + allow_undefined_flag_CXX='$wl-z,nodefs' + archive_cmds_need_lc_CXX=no + hardcode_shlibpath_var_CXX=no + hardcode_libdir_flag_spec_CXX='$wl-R,$libdir' + hardcode_libdir_separator_CXX=':' + link_all_deplibs_CXX=yes + export_dynamic_flag_spec_CXX='$wl-Bexport' + runpath_var='LD_RUN_PATH' + + case $cc_basename in + CC*) + archive_cmds_CXX='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + archive_expsym_cmds_CXX='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + old_archive_cmds_CXX='$CC -Tprelink_objects $oldobjs~ + '"$old_archive_cmds_CXX" + reload_cmds_CXX='$CC -Tprelink_objects $reload_objs~ + '"$reload_cmds_CXX" + ;; + *) + archive_cmds_CXX='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + archive_expsym_cmds_CXX='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + ;; + esac + ;; + + tandem*) + case $cc_basename in + NCC*) + # NonStop-UX NCC 3.20 + # FIXME: insert proper C++ library support + ld_shlibs_CXX=no + ;; + *) + # FIXME: insert proper C++ library support + ld_shlibs_CXX=no + ;; + esac + ;; + + vxworks*) + # FIXME: insert proper C++ library support + ld_shlibs_CXX=no + ;; + + *) + # FIXME: insert proper C++ library support + ld_shlibs_CXX=no + ;; + esac + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs_CXX" >&5 +$as_echo "$ld_shlibs_CXX" >&6; } + test no = "$ld_shlibs_CXX" && can_build_shared=no + + GCC_CXX=$GXX + LD_CXX=$LD + + ## CAVEAT EMPTOR: + ## There is no encapsulation within the following macros, do not change + ## the running order or otherwise move them around unless you know exactly + ## what you are doing... + # Dependencies to place before and after the object being linked: +predep_objects_CXX= +postdep_objects_CXX= +predeps_CXX= +postdeps_CXX= +compiler_lib_search_path_CXX= + +cat > conftest.$ac_ext <<_LT_EOF +class Foo +{ +public: + Foo (void) { a = 0; } +private: + int a; +}; +_LT_EOF + + +_lt_libdeps_save_CFLAGS=$CFLAGS +case "$CC $CFLAGS " in #( +*\ -flto*\ *) CFLAGS="$CFLAGS -fno-lto" ;; +*\ -fwhopr*\ *) CFLAGS="$CFLAGS -fno-whopr" ;; +*\ -fuse-linker-plugin*\ *) CFLAGS="$CFLAGS -fno-use-linker-plugin" ;; +esac + +if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 + (eval $ac_compile) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + # Parse the compiler output and extract the necessary + # objects, libraries and library flags. + + # Sentinel used to keep track of whether or not we are before + # the conftest object file. + pre_test_object_deps_done=no + + for p in `eval "$output_verbose_link_cmd"`; do + case $prev$p in + + -L* | -R* | -l*) + # Some compilers place space between "-{L,R}" and the path. + # Remove the space. + if test x-L = "$p" || + test x-R = "$p"; then + prev=$p + continue + fi + + # Expand the sysroot to ease extracting the directories later. + if test -z "$prev"; then + case $p in + -L*) func_stripname_cnf '-L' '' "$p"; prev=-L; p=$func_stripname_result ;; + -R*) func_stripname_cnf '-R' '' "$p"; prev=-R; p=$func_stripname_result ;; + -l*) func_stripname_cnf '-l' '' "$p"; prev=-l; p=$func_stripname_result ;; + esac + fi + case $p in + =*) func_stripname_cnf '=' '' "$p"; p=$lt_sysroot$func_stripname_result ;; + esac + if test no = "$pre_test_object_deps_done"; then + case $prev in + -L | -R) + # Internal compiler library paths should come after those + # provided the user. The postdeps already come after the + # user supplied libs so there is no need to process them. + if test -z "$compiler_lib_search_path_CXX"; then + compiler_lib_search_path_CXX=$prev$p + else + compiler_lib_search_path_CXX="${compiler_lib_search_path_CXX} $prev$p" + fi + ;; + # The "-l" case would never come before the object being + # linked, so don't bother handling this case. + esac + else + if test -z "$postdeps_CXX"; then + postdeps_CXX=$prev$p + else + postdeps_CXX="${postdeps_CXX} $prev$p" + fi + fi + prev= + ;; + + *.lto.$objext) ;; # Ignore GCC LTO objects + *.$objext) + # This assumes that the test object file only shows up + # once in the compiler output. + if test "$p" = "conftest.$objext"; then + pre_test_object_deps_done=yes + continue + fi + + if test no = "$pre_test_object_deps_done"; then + if test -z "$predep_objects_CXX"; then + predep_objects_CXX=$p + else + predep_objects_CXX="$predep_objects_CXX $p" + fi + else + if test -z "$postdep_objects_CXX"; then + postdep_objects_CXX=$p + else + postdep_objects_CXX="$postdep_objects_CXX $p" + fi + fi + ;; + + *) ;; # Ignore the rest. + + esac + done + + # Clean up. + rm -f a.out a.exe +else + echo "libtool.m4: error: problem compiling CXX test program" +fi + +$RM -f confest.$objext +CFLAGS=$_lt_libdeps_save_CFLAGS + +# PORTME: override above test on systems where it is broken +case $host_os in +interix[3-9]*) + # Interix 3.5 installs completely hosed .la files for C++, so rather than + # hack all around it, let's just trust "g++" to DTRT. + predep_objects_CXX= + postdep_objects_CXX= + postdeps_CXX= + ;; +esac + + +case " $postdeps_CXX " in +*" -lc "*) archive_cmds_need_lc_CXX=no ;; +esac + compiler_lib_search_dirs_CXX= +if test -n "${compiler_lib_search_path_CXX}"; then + compiler_lib_search_dirs_CXX=`echo " ${compiler_lib_search_path_CXX}" | $SED -e 's! -L! !g' -e 's!^ !!'` +fi + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + lt_prog_compiler_wl_CXX= +lt_prog_compiler_pic_CXX= +lt_prog_compiler_static_CXX= + + + # C++ specific cases for pic, static, wl, etc. + if test yes = "$GXX"; then + lt_prog_compiler_wl_CXX='-Wl,' + lt_prog_compiler_static_CXX='-static' + + case $host_os in + aix*) + # All AIX code is PIC. + if test ia64 = "$host_cpu"; then + # AIX 5 now supports IA64 processor + lt_prog_compiler_static_CXX='-Bstatic' + fi + lt_prog_compiler_pic_CXX='-fPIC' + ;; + + amigaos*) + case $host_cpu in + powerpc) + # see comment about AmigaOS4 .so support + lt_prog_compiler_pic_CXX='-fPIC' + ;; + m68k) + # FIXME: we need at least 68020 code to build shared libraries, but + # adding the '-m68020' flag to GCC prevents building anything better, + # like '-m68040'. + lt_prog_compiler_pic_CXX='-m68020 -resident32 -malways-restore-a4' + ;; + esac + ;; + + beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) + # PIC is the default for these OSes. + ;; + mingw* | cygwin* | os2* | pw32* | cegcc*) + # This hack is so that the source file can tell whether it is being + # built for inclusion in a dll (and should export symbols for example). + # Although the cygwin gcc ignores -fPIC, still need this for old-style + # (--disable-auto-import) libraries + lt_prog_compiler_pic_CXX='-DDLL_EXPORT' + case $host_os in + os2*) + lt_prog_compiler_static_CXX='$wl-static' + ;; + esac + ;; + darwin* | rhapsody*) + # PIC is the default on this platform + # Common symbols not allowed in MH_DYLIB files + lt_prog_compiler_pic_CXX='-fno-common' + ;; + *djgpp*) + # DJGPP does not support shared libraries at all + lt_prog_compiler_pic_CXX= + ;; + haiku*) + # PIC is the default for Haiku. + # The "-static" flag exists, but is broken. + lt_prog_compiler_static_CXX= + ;; + interix[3-9]*) + # Interix 3.x gcc -fpic/-fPIC options generate broken code. + # Instead, we relocate shared libraries at runtime. + ;; + sysv4*MP*) + if test -d /usr/nec; then + lt_prog_compiler_pic_CXX=-Kconform_pic + fi + ;; + hpux*) + # PIC is the default for 64-bit PA HP-UX, but not for 32-bit + # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag + # sets the default TLS model and affects inlining. + case $host_cpu in + hppa*64*) + ;; + *) + lt_prog_compiler_pic_CXX='-fPIC' + ;; + esac + ;; + *qnx* | *nto*) + # QNX uses GNU C++, but need to define -shared option too, otherwise + # it will coredump. + lt_prog_compiler_pic_CXX='-fPIC -shared' + ;; + *) + lt_prog_compiler_pic_CXX='-fPIC' + ;; + esac + else + case $host_os in + aix[4-9]*) + # All AIX code is PIC. + if test ia64 = "$host_cpu"; then + # AIX 5 now supports IA64 processor + lt_prog_compiler_static_CXX='-Bstatic' + else + lt_prog_compiler_static_CXX='-bnso -bI:/lib/syscalls.exp' + fi + ;; + chorus*) + case $cc_basename in + cxch68*) + # Green Hills C++ Compiler + # _LT_TAGVAR(lt_prog_compiler_static, CXX)="--no_auto_instantiation -u __main -u __premain -u _abort -r $COOL_DIR/lib/libOrb.a $MVME_DIR/lib/CC/libC.a $MVME_DIR/lib/classix/libcx.s.a" + ;; + esac + ;; + mingw* | cygwin* | os2* | pw32* | cegcc*) + # This hack is so that the source file can tell whether it is being + # built for inclusion in a dll (and should export symbols for example). + lt_prog_compiler_pic_CXX='-DDLL_EXPORT' + ;; + dgux*) + case $cc_basename in + ec++*) + lt_prog_compiler_pic_CXX='-KPIC' + ;; + ghcx*) + # Green Hills C++ Compiler + lt_prog_compiler_pic_CXX='-pic' + ;; + *) + ;; + esac + ;; + freebsd* | dragonfly*) + # FreeBSD uses GNU C++ + ;; + hpux9* | hpux10* | hpux11*) + case $cc_basename in + CC*) + lt_prog_compiler_wl_CXX='-Wl,' + lt_prog_compiler_static_CXX='$wl-a ${wl}archive' + if test ia64 != "$host_cpu"; then + lt_prog_compiler_pic_CXX='+Z' + fi + ;; + aCC*) + lt_prog_compiler_wl_CXX='-Wl,' + lt_prog_compiler_static_CXX='$wl-a ${wl}archive' + case $host_cpu in + hppa*64*|ia64*) + # +Z the default + ;; + *) + lt_prog_compiler_pic_CXX='+Z' + ;; + esac + ;; + *) + ;; + esac + ;; + interix*) + # This is c89, which is MS Visual C++ (no shared libs) + # Anyone wants to do a port? + ;; + irix5* | irix6* | nonstopux*) + case $cc_basename in + CC*) + lt_prog_compiler_wl_CXX='-Wl,' + lt_prog_compiler_static_CXX='-non_shared' + # CC pic flag -KPIC is the default. + ;; + *) + ;; + esac + ;; + linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) + case $cc_basename in + KCC*) + # KAI C++ Compiler + lt_prog_compiler_wl_CXX='--backend -Wl,' + lt_prog_compiler_pic_CXX='-fPIC' + ;; + ecpc* ) + # old Intel C++ for x86_64, which still supported -KPIC. + lt_prog_compiler_wl_CXX='-Wl,' + lt_prog_compiler_pic_CXX='-KPIC' + lt_prog_compiler_static_CXX='-static' + ;; + icpc* ) + # Intel C++, used to be incompatible with GCC. + # ICC 10 doesn't accept -KPIC any more. + lt_prog_compiler_wl_CXX='-Wl,' + lt_prog_compiler_pic_CXX='-fPIC' + lt_prog_compiler_static_CXX='-static' + ;; + pgCC* | pgcpp*) + # Portland Group C++ compiler + lt_prog_compiler_wl_CXX='-Wl,' + lt_prog_compiler_pic_CXX='-fpic' + lt_prog_compiler_static_CXX='-Bstatic' + ;; + cxx*) + # Compaq C++ + # Make sure the PIC flag is empty. It appears that all Alpha + # Linux and Compaq Tru64 Unix objects are PIC. + lt_prog_compiler_pic_CXX= + lt_prog_compiler_static_CXX='-non_shared' + ;; + xlc* | xlC* | bgxl[cC]* | mpixl[cC]*) + # IBM XL 8.0, 9.0 on PPC and BlueGene + lt_prog_compiler_wl_CXX='-Wl,' + lt_prog_compiler_pic_CXX='-qpic' + lt_prog_compiler_static_CXX='-qstaticlink' + ;; + *) + case `$CC -V 2>&1 | sed 5q` in + *Sun\ C*) + # Sun C++ 5.9 + lt_prog_compiler_pic_CXX='-KPIC' + lt_prog_compiler_static_CXX='-Bstatic' + lt_prog_compiler_wl_CXX='-Qoption ld ' + ;; + esac + ;; + esac + ;; + lynxos*) + ;; + m88k*) + ;; + mvs*) + case $cc_basename in + cxx*) + lt_prog_compiler_pic_CXX='-W c,exportall' + ;; + *) + ;; + esac + ;; + netbsd* | netbsdelf*-gnu) + ;; + *qnx* | *nto*) + # QNX uses GNU C++, but need to define -shared option too, otherwise + # it will coredump. + lt_prog_compiler_pic_CXX='-fPIC -shared' + ;; + osf3* | osf4* | osf5*) + case $cc_basename in + KCC*) + lt_prog_compiler_wl_CXX='--backend -Wl,' + ;; + RCC*) + # Rational C++ 2.4.1 + lt_prog_compiler_pic_CXX='-pic' + ;; + cxx*) + # Digital/Compaq C++ + lt_prog_compiler_wl_CXX='-Wl,' + # Make sure the PIC flag is empty. It appears that all Alpha + # Linux and Compaq Tru64 Unix objects are PIC. + lt_prog_compiler_pic_CXX= + lt_prog_compiler_static_CXX='-non_shared' + ;; + *) + ;; + esac + ;; + psos*) + ;; + solaris*) + case $cc_basename in + CC* | sunCC*) + # Sun C++ 4.2, 5.x and Centerline C++ + lt_prog_compiler_pic_CXX='-KPIC' + lt_prog_compiler_static_CXX='-Bstatic' + lt_prog_compiler_wl_CXX='-Qoption ld ' + ;; + gcx*) + # Green Hills C++ Compiler + lt_prog_compiler_pic_CXX='-PIC' + ;; + *) + ;; + esac + ;; + sunos4*) + case $cc_basename in + CC*) + # Sun C++ 4.x + lt_prog_compiler_pic_CXX='-pic' + lt_prog_compiler_static_CXX='-Bstatic' + ;; + lcc*) + # Lucid + lt_prog_compiler_pic_CXX='-pic' + ;; + *) + ;; + esac + ;; + sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*) + case $cc_basename in + CC*) + lt_prog_compiler_wl_CXX='-Wl,' + lt_prog_compiler_pic_CXX='-KPIC' + lt_prog_compiler_static_CXX='-Bstatic' + ;; + esac + ;; + tandem*) + case $cc_basename in + NCC*) + # NonStop-UX NCC 3.20 + lt_prog_compiler_pic_CXX='-KPIC' + ;; + *) + ;; + esac + ;; + vxworks*) + ;; + *) + lt_prog_compiler_can_build_shared_CXX=no + ;; + esac + fi + +case $host_os in + # For platforms that do not support PIC, -DPIC is meaningless: + *djgpp*) + lt_prog_compiler_pic_CXX= + ;; + *) + lt_prog_compiler_pic_CXX="$lt_prog_compiler_pic_CXX -DPIC" + ;; +esac + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&5 +$as_echo_n "checking for $compiler option to produce PIC... " >&6; } +if ${lt_cv_prog_compiler_pic_CXX+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_prog_compiler_pic_CXX=$lt_prog_compiler_pic_CXX +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic_CXX" >&5 +$as_echo "$lt_cv_prog_compiler_pic_CXX" >&6; } +lt_prog_compiler_pic_CXX=$lt_cv_prog_compiler_pic_CXX + +# +# Check to make sure the PIC flag actually works. +# +if test -n "$lt_prog_compiler_pic_CXX"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler PIC flag $lt_prog_compiler_pic_CXX works" >&5 +$as_echo_n "checking if $compiler PIC flag $lt_prog_compiler_pic_CXX works... " >&6; } +if ${lt_cv_prog_compiler_pic_works_CXX+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_prog_compiler_pic_works_CXX=no + ac_outfile=conftest.$ac_objext + echo "$lt_simple_compile_test_code" > conftest.$ac_ext + lt_compiler_flag="$lt_prog_compiler_pic_CXX -DPIC" ## exclude from sc_useless_quotes_in_assignment + # Insert the option either (1) after the last *FLAGS variable, or + # (2) before a word containing "conftest.", or (3) at the end. + # Note that $ac_compile itself does not contain backslashes and begins + # with a dollar sign (not a hyphen), so the echo should work correctly. + # The option is referenced via a variable to avoid confusing sed. + lt_compile=`echo "$ac_compile" | $SED \ + -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ + -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ + -e 's:$: $lt_compiler_flag:'` + (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5) + (eval "$lt_compile" 2>conftest.err) + ac_status=$? + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + if (exit $ac_status) && test -s "$ac_outfile"; then + # The compiler can only warn and ignore the option if not recognized + # So say no if there are warnings other than the usual output. + $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp + $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 + if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then + lt_cv_prog_compiler_pic_works_CXX=yes + fi + fi + $RM conftest* + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic_works_CXX" >&5 +$as_echo "$lt_cv_prog_compiler_pic_works_CXX" >&6; } + +if test yes = "$lt_cv_prog_compiler_pic_works_CXX"; then + case $lt_prog_compiler_pic_CXX in + "" | " "*) ;; + *) lt_prog_compiler_pic_CXX=" $lt_prog_compiler_pic_CXX" ;; + esac +else + lt_prog_compiler_pic_CXX= + lt_prog_compiler_can_build_shared_CXX=no +fi + +fi + + + + + +# +# Check to make sure the static flag actually works. +# +wl=$lt_prog_compiler_wl_CXX eval lt_tmp_static_flag=\"$lt_prog_compiler_static_CXX\" +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler static flag $lt_tmp_static_flag works" >&5 +$as_echo_n "checking if $compiler static flag $lt_tmp_static_flag works... " >&6; } +if ${lt_cv_prog_compiler_static_works_CXX+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_prog_compiler_static_works_CXX=no + save_LDFLAGS=$LDFLAGS + LDFLAGS="$LDFLAGS $lt_tmp_static_flag" + echo "$lt_simple_link_test_code" > conftest.$ac_ext + if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then + # The linker can only warn and ignore the option if not recognized + # So say no if there are warnings + if test -s conftest.err; then + # Append any errors to the config.log. + cat conftest.err 1>&5 + $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp + $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 + if diff conftest.exp conftest.er2 >/dev/null; then + lt_cv_prog_compiler_static_works_CXX=yes + fi + else + lt_cv_prog_compiler_static_works_CXX=yes + fi + fi + $RM -r conftest* + LDFLAGS=$save_LDFLAGS + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_static_works_CXX" >&5 +$as_echo "$lt_cv_prog_compiler_static_works_CXX" >&6; } + +if test yes = "$lt_cv_prog_compiler_static_works_CXX"; then + : +else + lt_prog_compiler_static_CXX= +fi + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5 +$as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; } +if ${lt_cv_prog_compiler_c_o_CXX+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_prog_compiler_c_o_CXX=no + $RM -r conftest 2>/dev/null + mkdir conftest + cd conftest + mkdir out + echo "$lt_simple_compile_test_code" > conftest.$ac_ext + + lt_compiler_flag="-o out/conftest2.$ac_objext" + # Insert the option either (1) after the last *FLAGS variable, or + # (2) before a word containing "conftest.", or (3) at the end. + # Note that $ac_compile itself does not contain backslashes and begins + # with a dollar sign (not a hyphen), so the echo should work correctly. + lt_compile=`echo "$ac_compile" | $SED \ + -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ + -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ + -e 's:$: $lt_compiler_flag:'` + (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5) + (eval "$lt_compile" 2>out/conftest.err) + ac_status=$? + cat out/conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + if (exit $ac_status) && test -s out/conftest2.$ac_objext + then + # The compiler can only warn and ignore the option if not recognized + # So say no if there are warnings + $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp + $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2 + if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then + lt_cv_prog_compiler_c_o_CXX=yes + fi + fi + chmod u+w . 2>&5 + $RM conftest* + # SGI C++ compiler will create directory out/ii_files/ for + # template instantiation + test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files + $RM out/* && rmdir out + cd .. + $RM -r conftest + $RM conftest* + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o_CXX" >&5 +$as_echo "$lt_cv_prog_compiler_c_o_CXX" >&6; } + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5 +$as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; } +if ${lt_cv_prog_compiler_c_o_CXX+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_prog_compiler_c_o_CXX=no + $RM -r conftest 2>/dev/null + mkdir conftest + cd conftest + mkdir out + echo "$lt_simple_compile_test_code" > conftest.$ac_ext + + lt_compiler_flag="-o out/conftest2.$ac_objext" + # Insert the option either (1) after the last *FLAGS variable, or + # (2) before a word containing "conftest.", or (3) at the end. + # Note that $ac_compile itself does not contain backslashes and begins + # with a dollar sign (not a hyphen), so the echo should work correctly. + lt_compile=`echo "$ac_compile" | $SED \ + -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ + -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ + -e 's:$: $lt_compiler_flag:'` + (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5) + (eval "$lt_compile" 2>out/conftest.err) + ac_status=$? + cat out/conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + if (exit $ac_status) && test -s out/conftest2.$ac_objext + then + # The compiler can only warn and ignore the option if not recognized + # So say no if there are warnings + $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp + $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2 + if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then + lt_cv_prog_compiler_c_o_CXX=yes + fi + fi + chmod u+w . 2>&5 + $RM conftest* + # SGI C++ compiler will create directory out/ii_files/ for + # template instantiation + test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files + $RM out/* && rmdir out + cd .. + $RM -r conftest + $RM conftest* + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o_CXX" >&5 +$as_echo "$lt_cv_prog_compiler_c_o_CXX" >&6; } + + + + +hard_links=nottested +if test no = "$lt_cv_prog_compiler_c_o_CXX" && test no != "$need_locks"; then + # do not overwrite the value of need_locks provided by the user + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if we can lock with hard links" >&5 +$as_echo_n "checking if we can lock with hard links... " >&6; } + hard_links=yes + $RM conftest* + ln conftest.a conftest.b 2>/dev/null && hard_links=no + touch conftest.a + ln conftest.a conftest.b 2>&5 || hard_links=no + ln conftest.a conftest.b 2>/dev/null && hard_links=no + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $hard_links" >&5 +$as_echo "$hard_links" >&6; } + if test no = "$hard_links"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&5 +$as_echo "$as_me: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&2;} + need_locks=warn + fi +else + need_locks=no +fi + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&5 +$as_echo_n "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; } + + export_symbols_cmds_CXX='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' + exclude_expsyms_CXX='_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*' + case $host_os in + aix[4-9]*) + # If we're using GNU nm, then we don't want the "-C" option. + # -C means demangle to GNU nm, but means don't demangle to AIX nm. + # Without the "-l" option, or with the "-B" option, AIX nm treats + # weak defined symbols like other global defined symbols, whereas + # GNU nm marks them as "W". + # While the 'weak' keyword is ignored in the Export File, we need + # it in the Import File for the 'aix-soname' feature, so we have + # to replace the "-B" option with "-P" for AIX nm. + if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then + export_symbols_cmds_CXX='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && (substr(\$ 3,1,1) != ".")) { if (\$ 2 == "W") { print \$ 3 " weak" } else { print \$ 3 } } }'\'' | sort -u > $export_symbols' + else + export_symbols_cmds_CXX='`func_echo_all $NM | $SED -e '\''s/B\([^B]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && (substr(\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols' + fi + ;; + pw32*) + export_symbols_cmds_CXX=$ltdll_cmds + ;; + cygwin* | mingw* | cegcc*) + case $cc_basename in + cl*) + exclude_expsyms_CXX='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*' + ;; + *) + export_symbols_cmds_CXX='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[BCDGRS][ ]/s/.*[ ]\([^ ]*\)/\1 DATA/;s/^.*[ ]__nm__\([^ ]*\)[ ][^ ]*/\1 DATA/;/^I[ ]/d;/^[AITW][ ]/s/.* //'\'' | sort | uniq > $export_symbols' + exclude_expsyms_CXX='[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname' + ;; + esac + ;; + linux* | k*bsd*-gnu | gnu*) + link_all_deplibs_CXX=no + ;; + *) + export_symbols_cmds_CXX='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' + ;; + esac + +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs_CXX" >&5 +$as_echo "$ld_shlibs_CXX" >&6; } +test no = "$ld_shlibs_CXX" && can_build_shared=no + +with_gnu_ld_CXX=$with_gnu_ld + + + + + + +# +# Do we need to explicitly link libc? +# +case "x$archive_cmds_need_lc_CXX" in +x|xyes) + # Assume -lc should be added + archive_cmds_need_lc_CXX=yes + + if test yes,yes = "$GCC,$enable_shared"; then + case $archive_cmds_CXX in + *'~'*) + # FIXME: we may have to deal with multi-command sequences. + ;; + '$CC '*) + # Test whether the compiler implicitly links with -lc since on some + # systems, -lgcc has to come before -lc. If gcc already passes -lc + # to ld, don't add -lc before -lgcc. + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -lc should be explicitly linked in" >&5 +$as_echo_n "checking whether -lc should be explicitly linked in... " >&6; } +if ${lt_cv_archive_cmds_need_lc_CXX+:} false; then : + $as_echo_n "(cached) " >&6 +else + $RM conftest* + echo "$lt_simple_compile_test_code" > conftest.$ac_ext + + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 + (eval $ac_compile) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } 2>conftest.err; then + soname=conftest + lib=conftest + libobjs=conftest.$ac_objext + deplibs= + wl=$lt_prog_compiler_wl_CXX + pic_flag=$lt_prog_compiler_pic_CXX + compiler_flags=-v + linker_flags=-v + verstring= + output_objdir=. + libname=conftest + lt_save_allow_undefined_flag=$allow_undefined_flag_CXX + allow_undefined_flag_CXX= + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$archive_cmds_CXX 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1\""; } >&5 + (eval $archive_cmds_CXX 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } + then + lt_cv_archive_cmds_need_lc_CXX=no + else + lt_cv_archive_cmds_need_lc_CXX=yes + fi + allow_undefined_flag_CXX=$lt_save_allow_undefined_flag + else + cat conftest.err 1>&5 + fi + $RM conftest* + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_archive_cmds_need_lc_CXX" >&5 +$as_echo "$lt_cv_archive_cmds_need_lc_CXX" >&6; } + archive_cmds_need_lc_CXX=$lt_cv_archive_cmds_need_lc_CXX + ;; + esac + fi + ;; +esac + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking dynamic linker characteristics" >&5 +$as_echo_n "checking dynamic linker characteristics... " >&6; } + +library_names_spec= +libname_spec='lib$name' +soname_spec= +shrext_cmds=.so +postinstall_cmds= +postuninstall_cmds= +finish_cmds= +finish_eval= +shlibpath_var= +shlibpath_overrides_runpath=unknown +version_type=none +dynamic_linker="$host_os ld.so" +sys_lib_dlsearch_path_spec="/lib /usr/lib" +need_lib_prefix=unknown +hardcode_into_libs=no + +# when you set need_version to no, make sure it does not cause -set_version +# flags to be left without arguments +need_version=unknown + + + +case $host_os in +aix3*) + version_type=linux # correct to gnu/linux during the next big refactor + library_names_spec='$libname$release$shared_ext$versuffix $libname.a' + shlibpath_var=LIBPATH + + # AIX 3 has no versioning support, so we append a major version to the name. + soname_spec='$libname$release$shared_ext$major' + ;; + +aix[4-9]*) + version_type=linux # correct to gnu/linux during the next big refactor + need_lib_prefix=no + need_version=no + hardcode_into_libs=yes + if test ia64 = "$host_cpu"; then + # AIX 5 supports IA64 + library_names_spec='$libname$release$shared_ext$major $libname$release$shared_ext$versuffix $libname$shared_ext' + shlibpath_var=LD_LIBRARY_PATH + else + # With GCC up to 2.95.x, collect2 would create an import file + # for dependence libraries. The import file would start with + # the line '#! .'. This would cause the generated library to + # depend on '.', always an invalid library. This was fixed in + # development snapshots of GCC prior to 3.0. + case $host_os in + aix4 | aix4.[01] | aix4.[01].*) + if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)' + echo ' yes ' + echo '#endif'; } | $CC -E - | $GREP yes > /dev/null; then + : + else + can_build_shared=no + fi + ;; + esac + # Using Import Files as archive members, it is possible to support + # filename-based versioning of shared library archives on AIX. While + # this would work for both with and without runtime linking, it will + # prevent static linking of such archives. So we do filename-based + # shared library versioning with .so extension only, which is used + # when both runtime linking and shared linking is enabled. + # Unfortunately, runtime linking may impact performance, so we do + # not want this to be the default eventually. Also, we use the + # versioned .so libs for executables only if there is the -brtl + # linker flag in LDFLAGS as well, or --with-aix-soname=svr4 only. + # To allow for filename-based versioning support, we need to create + # libNAME.so.V as an archive file, containing: + # *) an Import File, referring to the versioned filename of the + # archive as well as the shared archive member, telling the + # bitwidth (32 or 64) of that shared object, and providing the + # list of exported symbols of that shared object, eventually + # decorated with the 'weak' keyword + # *) the shared object with the F_LOADONLY flag set, to really avoid + # it being seen by the linker. + # At run time we better use the real file rather than another symlink, + # but for link time we create the symlink libNAME.so -> libNAME.so.V + + case $with_aix_soname,$aix_use_runtimelinking in + # AIX (on Power*) has no versioning support, so currently we cannot hardcode correct + # soname into executable. Probably we can add versioning support to + # collect2, so additional links can be useful in future. + aix,yes) # traditional libtool + dynamic_linker='AIX unversionable lib.so' + # If using run time linking (on AIX 4.2 or later) use lib.so + # instead of lib.a to let people know that these are not + # typical AIX shared libraries. + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + ;; + aix,no) # traditional AIX only + dynamic_linker='AIX lib.a(lib.so.V)' + # We preserve .a as extension for shared libraries through AIX4.2 + # and later when we are not doing run time linking. + library_names_spec='$libname$release.a $libname.a' + soname_spec='$libname$release$shared_ext$major' + ;; + svr4,*) # full svr4 only + dynamic_linker="AIX lib.so.V($shared_archive_member_spec.o)" + library_names_spec='$libname$release$shared_ext$major $libname$shared_ext' + # We do not specify a path in Import Files, so LIBPATH fires. + shlibpath_overrides_runpath=yes + ;; + *,yes) # both, prefer svr4 + dynamic_linker="AIX lib.so.V($shared_archive_member_spec.o), lib.a(lib.so.V)" + library_names_spec='$libname$release$shared_ext$major $libname$shared_ext' + # unpreferred sharedlib libNAME.a needs extra handling + postinstall_cmds='test -n "$linkname" || linkname="$realname"~func_stripname "" ".so" "$linkname"~$install_shared_prog "$dir/$func_stripname_result.$libext" "$destdir/$func_stripname_result.$libext"~test -z "$tstripme" || test -z "$striplib" || $striplib "$destdir/$func_stripname_result.$libext"' + postuninstall_cmds='for n in $library_names $old_library; do :; done~func_stripname "" ".so" "$n"~test "$func_stripname_result" = "$n" || func_append rmfiles " $odir/$func_stripname_result.$libext"' + # We do not specify a path in Import Files, so LIBPATH fires. + shlibpath_overrides_runpath=yes + ;; + *,no) # both, prefer aix + dynamic_linker="AIX lib.a(lib.so.V), lib.so.V($shared_archive_member_spec.o)" + library_names_spec='$libname$release.a $libname.a' + soname_spec='$libname$release$shared_ext$major' + # unpreferred sharedlib libNAME.so.V and symlink libNAME.so need extra handling + postinstall_cmds='test -z "$dlname" || $install_shared_prog $dir/$dlname $destdir/$dlname~test -z "$tstripme" || test -z "$striplib" || $striplib $destdir/$dlname~test -n "$linkname" || linkname=$realname~func_stripname "" ".a" "$linkname"~(cd "$destdir" && $LN_S -f $dlname $func_stripname_result.so)' + postuninstall_cmds='test -z "$dlname" || func_append rmfiles " $odir/$dlname"~for n in $old_library $library_names; do :; done~func_stripname "" ".a" "$n"~func_append rmfiles " $odir/$func_stripname_result.so"' + ;; + esac + shlibpath_var=LIBPATH + fi + ;; + +amigaos*) + case $host_cpu in + powerpc) + # Since July 2007 AmigaOS4 officially supports .so libraries. + # When compiling the executable, add -use-dynld -Lsobjs: to the compileline. + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + ;; + m68k) + library_names_spec='$libname.ixlibrary $libname.a' + # Create ${libname}_ixlibrary.a entries in /sys/libs. + finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`func_echo_all "$lib" | $SED '\''s%^.*/\([^/]*\)\.ixlibrary$%\1%'\''`; $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' + ;; + esac + ;; + +beos*) + library_names_spec='$libname$shared_ext' + dynamic_linker="$host_os ld.so" + shlibpath_var=LIBRARY_PATH + ;; + +bsdi[45]*) + version_type=linux # correct to gnu/linux during the next big refactor + need_version=no + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' + finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir' + shlibpath_var=LD_LIBRARY_PATH + sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib" + sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib" + # the default ld.so.conf also contains /usr/contrib/lib and + # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow + # libtool to hard-code these into programs + ;; + +cygwin* | mingw* | pw32* | cegcc*) + version_type=windows + shrext_cmds=.dll + need_version=no + need_lib_prefix=no + + case $GCC,$cc_basename in + yes,*) + # gcc + library_names_spec='$libname.dll.a' + # DLL is installed to $(libdir)/../bin by postinstall_cmds + postinstall_cmds='base_file=`basename \$file`~ + dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~ + dldir=$destdir/`dirname \$dlpath`~ + test -d \$dldir || mkdir -p \$dldir~ + $install_prog $dir/$dlname \$dldir/$dlname~ + chmod a+x \$dldir/$dlname~ + if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then + eval '\''$striplib \$dldir/$dlname'\'' || exit \$?; + fi' + postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~ + dlpath=$dir/\$dldll~ + $RM \$dlpath' + shlibpath_overrides_runpath=yes + + case $host_os in + cygwin*) + # Cygwin DLLs use 'cyg' prefix rather than 'lib' + soname_spec='`echo $libname | sed -e 's/^lib/cyg/'``echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext' + + ;; + mingw* | cegcc*) + # MinGW DLLs use traditional 'lib' prefix + soname_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext' + ;; + pw32*) + # pw32 DLLs use 'pw' prefix rather than 'lib' + library_names_spec='`echo $libname | sed -e 's/^lib/pw/'``echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext' + ;; + esac + dynamic_linker='Win32 ld.exe' + ;; + + *,cl*) + # Native MSVC + libname_spec='$name' + soname_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext' + library_names_spec='$libname.dll.lib' + + case $build_os in + mingw*) + sys_lib_search_path_spec= + lt_save_ifs=$IFS + IFS=';' + for lt_path in $LIB + do + IFS=$lt_save_ifs + # Let DOS variable expansion print the short 8.3 style file name. + lt_path=`cd "$lt_path" 2>/dev/null && cmd //C "for %i in (".") do @echo %~si"` + sys_lib_search_path_spec="$sys_lib_search_path_spec $lt_path" + done + IFS=$lt_save_ifs + # Convert to MSYS style. + sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | sed -e 's|\\\\|/|g' -e 's| \\([a-zA-Z]\\):| /\\1|g' -e 's|^ ||'` + ;; + cygwin*) + # Convert to unix form, then to dos form, then back to unix form + # but this time dos style (no spaces!) so that the unix form looks + # like /cygdrive/c/PROGRA~1:/cygdr... + sys_lib_search_path_spec=`cygpath --path --unix "$LIB"` + sys_lib_search_path_spec=`cygpath --path --dos "$sys_lib_search_path_spec" 2>/dev/null` + sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` + ;; + *) + sys_lib_search_path_spec=$LIB + if $ECHO "$sys_lib_search_path_spec" | $GREP ';[c-zC-Z]:/' >/dev/null; then + # It is most probably a Windows format PATH. + sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'` + else + sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` + fi + # FIXME: find the short name or the path components, as spaces are + # common. (e.g. "Program Files" -> "PROGRA~1") + ;; + esac + + # DLL is installed to $(libdir)/../bin by postinstall_cmds + postinstall_cmds='base_file=`basename \$file`~ + dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~ + dldir=$destdir/`dirname \$dlpath`~ + test -d \$dldir || mkdir -p \$dldir~ + $install_prog $dir/$dlname \$dldir/$dlname' + postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~ + dlpath=$dir/\$dldll~ + $RM \$dlpath' + shlibpath_overrides_runpath=yes + dynamic_linker='Win32 link.exe' + ;; + + *) + # Assume MSVC wrapper + library_names_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext $libname.lib' + dynamic_linker='Win32 ld.exe' + ;; + esac + # FIXME: first we should search . and the directory the executable is in + shlibpath_var=PATH + ;; + +darwin* | rhapsody*) + dynamic_linker="$host_os dyld" + version_type=darwin + need_lib_prefix=no + need_version=no + library_names_spec='$libname$release$major$shared_ext $libname$shared_ext' + soname_spec='$libname$release$major$shared_ext' + shlibpath_overrides_runpath=yes + shlibpath_var=DYLD_LIBRARY_PATH + shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`' + + sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib' + ;; + +dgux*) + version_type=linux # correct to gnu/linux during the next big refactor + need_lib_prefix=no + need_version=no + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' + shlibpath_var=LD_LIBRARY_PATH + ;; + +freebsd* | dragonfly*) + # DragonFly does not have aout. When/if they implement a new + # versioning mechanism, adjust this. + if test -x /usr/bin/objformat; then + objformat=`/usr/bin/objformat` + else + case $host_os in + freebsd[23].*) objformat=aout ;; + *) objformat=elf ;; + esac + fi + version_type=freebsd-$objformat + case $version_type in + freebsd-elf*) + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' + need_version=no + need_lib_prefix=no + ;; + freebsd-*) + library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix' + need_version=yes + ;; + esac + shlibpath_var=LD_LIBRARY_PATH + case $host_os in + freebsd2.*) + shlibpath_overrides_runpath=yes + ;; + freebsd3.[01]* | freebsdelf3.[01]*) + shlibpath_overrides_runpath=yes + hardcode_into_libs=yes + ;; + freebsd3.[2-9]* | freebsdelf3.[2-9]* | \ + freebsd4.[0-5] | freebsdelf4.[0-5] | freebsd4.1.1 | freebsdelf4.1.1) + shlibpath_overrides_runpath=no + hardcode_into_libs=yes + ;; + *) # from 4.6 on, and DragonFly + shlibpath_overrides_runpath=yes + hardcode_into_libs=yes + ;; + esac + ;; + +haiku*) + version_type=linux # correct to gnu/linux during the next big refactor + need_lib_prefix=no + need_version=no + dynamic_linker="$host_os runtime_loader" + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' + shlibpath_var=LIBRARY_PATH + shlibpath_overrides_runpath=no + sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib' + hardcode_into_libs=yes + ;; + +hpux9* | hpux10* | hpux11*) + # Give a soname corresponding to the major version so that dld.sl refuses to + # link against other versions. + version_type=sunos + need_lib_prefix=no + need_version=no + case $host_cpu in + ia64*) + shrext_cmds='.so' + hardcode_into_libs=yes + dynamic_linker="$host_os dld.so" + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' + if test 32 = "$HPUX_IA64_MODE"; then + sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib" + sys_lib_dlsearch_path_spec=/usr/lib/hpux32 + else + sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64" + sys_lib_dlsearch_path_spec=/usr/lib/hpux64 + fi + ;; + hppa*64*) + shrext_cmds='.sl' + hardcode_into_libs=yes + dynamic_linker="$host_os dld.sl" + shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH + shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' + sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64" + sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec + ;; + *) + shrext_cmds='.sl' + dynamic_linker="$host_os dld.sl" + shlibpath_var=SHLIB_PATH + shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' + ;; + esac + # HP-UX runs *really* slowly unless shared libraries are mode 555, ... + postinstall_cmds='chmod 555 $lib' + # or fails outright, so override atomically: + install_override_mode=555 + ;; + +interix[3-9]*) + version_type=linux # correct to gnu/linux during the next big refactor + need_lib_prefix=no + need_version=no + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' + dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=no + hardcode_into_libs=yes + ;; + +irix5* | irix6* | nonstopux*) + case $host_os in + nonstopux*) version_type=nonstopux ;; + *) + if test yes = "$lt_cv_prog_gnu_ld"; then + version_type=linux # correct to gnu/linux during the next big refactor + else + version_type=irix + fi ;; + esac + need_lib_prefix=no + need_version=no + soname_spec='$libname$release$shared_ext$major' + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$release$shared_ext $libname$shared_ext' + case $host_os in + irix5* | nonstopux*) + libsuff= shlibsuff= + ;; + *) + case $LD in # libtool.m4 will add one of these switches to LD + *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ") + libsuff= shlibsuff= libmagic=32-bit;; + *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ") + libsuff=32 shlibsuff=N32 libmagic=N32;; + *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ") + libsuff=64 shlibsuff=64 libmagic=64-bit;; + *) libsuff= shlibsuff= libmagic=never-match;; + esac + ;; + esac + shlibpath_var=LD_LIBRARY${shlibsuff}_PATH + shlibpath_overrides_runpath=no + sys_lib_search_path_spec="/usr/lib$libsuff /lib$libsuff /usr/local/lib$libsuff" + sys_lib_dlsearch_path_spec="/usr/lib$libsuff /lib$libsuff" + hardcode_into_libs=yes + ;; + +# No shared lib support for Linux oldld, aout, or coff. +linux*oldld* | linux*aout* | linux*coff*) + dynamic_linker=no + ;; + +linux*android*) + version_type=none # Android doesn't support versioned libraries. + need_lib_prefix=no + need_version=no + library_names_spec='$libname$release$shared_ext' + soname_spec='$libname$release$shared_ext' + finish_cmds= + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + + # This implies no fast_install, which is unacceptable. + # Some rework will be needed to allow for fast_install + # before this can be enabled. + hardcode_into_libs=yes + + dynamic_linker='Android linker' + # Don't embed -rpath directories since the linker doesn't support them. + hardcode_libdir_flag_spec_CXX='-L$libdir' + ;; + +# This must be glibc/ELF. +linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) + version_type=linux # correct to gnu/linux during the next big refactor + need_lib_prefix=no + need_version=no + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' + finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=no + + # Some binutils ld are patched to set DT_RUNPATH + if ${lt_cv_shlibpath_overrides_runpath+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_shlibpath_overrides_runpath=no + save_LDFLAGS=$LDFLAGS + save_libdir=$libdir + eval "libdir=/foo; wl=\"$lt_prog_compiler_wl_CXX\"; \ + LDFLAGS=\"\$LDFLAGS $hardcode_libdir_flag_spec_CXX\"" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_cxx_try_link "$LINENO"; then : + if ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null; then : + lt_cv_shlibpath_overrides_runpath=yes +fi +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + LDFLAGS=$save_LDFLAGS + libdir=$save_libdir + +fi + + shlibpath_overrides_runpath=$lt_cv_shlibpath_overrides_runpath + + # This implies no fast_install, which is unacceptable. + # Some rework will be needed to allow for fast_install + # before this can be enabled. + hardcode_into_libs=yes + + # Ideally, we could use ldconfig to report *all* directores which are + # searched for libraries, however this is still not possible. Aside from not + # being certain /sbin/ldconfig is available, command + # 'ldconfig -N -X -v | grep ^/' on 64bit Fedora does not report /usr/lib64, + # even though it is searched at run-time. Try to do the best guess by + # appending ld.so.conf contents (and includes) to the search path. + if test -f /etc/ld.so.conf; then + lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;s/"//g;/^$/d' | tr '\n' ' '` + sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra" + fi + + # We used to test for /lib/ld.so.1 and disable shared libraries on + # powerpc, because MkLinux only supported shared libraries with the + # GNU dynamic linker. Since this was broken with cross compilers, + # most powerpc-linux boxes support dynamic linking these days and + # people can always --disable-shared, the test was removed, and we + # assume the GNU/Linux dynamic linker is in use. + dynamic_linker='GNU/Linux ld.so' + ;; + +netbsdelf*-gnu) + version_type=linux + need_lib_prefix=no + need_version=no + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=no + hardcode_into_libs=yes + dynamic_linker='NetBSD ld.elf_so' + ;; + +netbsd*) + version_type=sunos + need_lib_prefix=no + need_version=no + if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then + library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix' + finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' + dynamic_linker='NetBSD (a.out) ld.so' + else + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' + dynamic_linker='NetBSD ld.elf_so' + fi + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + hardcode_into_libs=yes + ;; + +newsos6) + version_type=linux # correct to gnu/linux during the next big refactor + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + ;; + +*nto* | *qnx*) + version_type=qnx + need_lib_prefix=no + need_version=no + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=no + hardcode_into_libs=yes + dynamic_linker='ldqnx.so' + ;; + +openbsd* | bitrig*) + version_type=sunos + sys_lib_dlsearch_path_spec=/usr/lib + need_lib_prefix=no + if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then + need_version=no + else + need_version=yes + fi + library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix' + finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + ;; + +os2*) + libname_spec='$name' + version_type=windows + shrext_cmds=.dll + need_version=no + need_lib_prefix=no + # OS/2 can only load a DLL with a base name of 8 characters or less. + soname_spec='`test -n "$os2dllname" && libname="$os2dllname"; + v=$($ECHO $release$versuffix | tr -d .-); + n=$($ECHO $libname | cut -b -$((8 - ${#v})) | tr . _); + $ECHO $n$v`$shared_ext' + library_names_spec='${libname}_dll.$libext' + dynamic_linker='OS/2 ld.exe' + shlibpath_var=BEGINLIBPATH + sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" + sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec + postinstall_cmds='base_file=`basename \$file`~ + dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; $ECHO \$dlname'\''`~ + dldir=$destdir/`dirname \$dlpath`~ + test -d \$dldir || mkdir -p \$dldir~ + $install_prog $dir/$dlname \$dldir/$dlname~ + chmod a+x \$dldir/$dlname~ + if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then + eval '\''$striplib \$dldir/$dlname'\'' || exit \$?; + fi' + postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; $ECHO \$dlname'\''`~ + dlpath=$dir/\$dldll~ + $RM \$dlpath' + ;; + +osf3* | osf4* | osf5*) + version_type=osf + need_lib_prefix=no + need_version=no + soname_spec='$libname$release$shared_ext$major' + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + shlibpath_var=LD_LIBRARY_PATH + sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib" + sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec + ;; + +rdos*) + dynamic_linker=no + ;; + +solaris*) + version_type=linux # correct to gnu/linux during the next big refactor + need_lib_prefix=no + need_version=no + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + hardcode_into_libs=yes + # ldd complains unless libraries are executable + postinstall_cmds='chmod +x $lib' + ;; + +sunos4*) + version_type=sunos + library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix' + finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + if test yes = "$with_gnu_ld"; then + need_lib_prefix=no + fi + need_version=yes + ;; + +sysv4 | sysv4.3*) + version_type=linux # correct to gnu/linux during the next big refactor + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' + shlibpath_var=LD_LIBRARY_PATH + case $host_vendor in + sni) + shlibpath_overrides_runpath=no + need_lib_prefix=no + runpath_var=LD_RUN_PATH + ;; + siemens) + need_lib_prefix=no + ;; + motorola) + need_lib_prefix=no + need_version=no + shlibpath_overrides_runpath=no + sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib' + ;; + esac + ;; + +sysv4*MP*) + if test -d /usr/nec; then + version_type=linux # correct to gnu/linux during the next big refactor + library_names_spec='$libname$shared_ext.$versuffix $libname$shared_ext.$major $libname$shared_ext' + soname_spec='$libname$shared_ext.$major' + shlibpath_var=LD_LIBRARY_PATH + fi + ;; + +sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*) + version_type=sco + need_lib_prefix=no + need_version=no + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + hardcode_into_libs=yes + if test yes = "$with_gnu_ld"; then + sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib' + else + sys_lib_search_path_spec='/usr/ccs/lib /usr/lib' + case $host_os in + sco3.2v5*) + sys_lib_search_path_spec="$sys_lib_search_path_spec /lib" + ;; + esac + fi + sys_lib_dlsearch_path_spec='/usr/lib' + ;; + +tpf*) + # TPF is a cross-target only. Preferred cross-host = GNU/Linux. + version_type=linux # correct to gnu/linux during the next big refactor + need_lib_prefix=no + need_version=no + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=no + hardcode_into_libs=yes + ;; + +uts4*) + version_type=linux # correct to gnu/linux during the next big refactor + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' + shlibpath_var=LD_LIBRARY_PATH + ;; + +*) + dynamic_linker=no + ;; +esac +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $dynamic_linker" >&5 +$as_echo "$dynamic_linker" >&6; } +test no = "$dynamic_linker" && can_build_shared=no + +variables_saved_for_relink="PATH $shlibpath_var $runpath_var" +if test yes = "$GCC"; then + variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" +fi + +if test set = "${lt_cv_sys_lib_search_path_spec+set}"; then + sys_lib_search_path_spec=$lt_cv_sys_lib_search_path_spec +fi + +if test set = "${lt_cv_sys_lib_dlsearch_path_spec+set}"; then + sys_lib_dlsearch_path_spec=$lt_cv_sys_lib_dlsearch_path_spec +fi + +# remember unaugmented sys_lib_dlsearch_path content for libtool script decls... +configure_time_dlsearch_path=$sys_lib_dlsearch_path_spec + +# ... but it needs LT_SYS_LIBRARY_PATH munging for other configure-time code +func_munge_path_list sys_lib_dlsearch_path_spec "$LT_SYS_LIBRARY_PATH" + +# to be used as default LT_SYS_LIBRARY_PATH value in generated libtool +configure_time_lt_sys_library_path=$LT_SYS_LIBRARY_PATH + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to hardcode library paths into programs" >&5 +$as_echo_n "checking how to hardcode library paths into programs... " >&6; } +hardcode_action_CXX= +if test -n "$hardcode_libdir_flag_spec_CXX" || + test -n "$runpath_var_CXX" || + test yes = "$hardcode_automatic_CXX"; then + + # We can hardcode non-existent directories. + if test no != "$hardcode_direct_CXX" && + # If the only mechanism to avoid hardcoding is shlibpath_var, we + # have to relink, otherwise we might link with an installed library + # when we should be linking with a yet-to-be-installed one + ## test no != "$_LT_TAGVAR(hardcode_shlibpath_var, CXX)" && + test no != "$hardcode_minus_L_CXX"; then + # Linking always hardcodes the temporary library directory. + hardcode_action_CXX=relink + else + # We can link without hardcoding, and we can hardcode nonexisting dirs. + hardcode_action_CXX=immediate + fi +else + # We cannot hardcode anything, or else we can only hardcode existing + # directories. + hardcode_action_CXX=unsupported +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $hardcode_action_CXX" >&5 +$as_echo "$hardcode_action_CXX" >&6; } + +if test relink = "$hardcode_action_CXX" || + test yes = "$inherit_rpath_CXX"; then + # Fast installation is not supported + enable_fast_install=no +elif test yes = "$shlibpath_overrides_runpath" || + test no = "$enable_shared"; then + # Fast installation is not necessary + enable_fast_install=needless +fi + + + + + + + + fi # test -n "$compiler" + + CC=$lt_save_CC + CFLAGS=$lt_save_CFLAGS + LDCXX=$LD + LD=$lt_save_LD + GCC=$lt_save_GCC + with_gnu_ld=$lt_save_with_gnu_ld + lt_cv_path_LDCXX=$lt_cv_path_LD + lt_cv_path_LD=$lt_save_path_LD + lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld + lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld +fi # test yes != "$_lt_caught_CXX_error" + +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu + + + + + + + + + + + + + + + + ac_config_commands="$ac_config_commands libtool" + + + + +# Only expand once: + + + + +# Test for 64-bit build. +# The cast to long int works around a bug in the HP C Compiler +# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects +# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'. +# This bug is HP SR number 8606223364. +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of size_t" >&5 +$as_echo_n "checking size of size_t... " >&6; } +if ${ac_cv_sizeof_size_t+:} false; then : + $as_echo_n "(cached) " >&6 +else + if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (size_t))" "ac_cv_sizeof_size_t" "$ac_includes_default"; then : + +else + if test "$ac_cv_type_size_t" = yes; then + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error 77 "cannot compute sizeof (size_t) +See \`config.log' for more details" "$LINENO" 5; } + else + ac_cv_sizeof_size_t=0 + fi +fi + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_size_t" >&5 +$as_echo "$ac_cv_sizeof_size_t" >&6; } + + + +cat >>confdefs.h <<_ACEOF +#define SIZEOF_SIZE_T $ac_cv_sizeof_size_t +_ACEOF + + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler vendor" >&5 +$as_echo_n "checking for C compiler vendor... " >&6; } +if ${ax_cv_c_compiler_vendor+:} false; then : + $as_echo_n "(cached) " >&6 +else + # note: don't check for gcc first since some other compilers define __GNUC__ + vendors="intel: __ICC,__ECC,__INTEL_COMPILER + ibm: __xlc__,__xlC__,__IBMC__,__IBMCPP__ + pathscale: __PATHCC__,__PATHSCALE__ + clang: __clang__ + gnu: __GNUC__ + sun: __SUNPRO_C,__SUNPRO_CC + hp: __HP_cc,__HP_aCC + dec: __DECC,__DECCXX,__DECC_VER,__DECCXX_VER + borland: __BORLANDC__,__TURBOC__ + comeau: __COMO__ + cray: _CRAYC + kai: __KCC + lcc: __LCC__ + sgi: __sgi,sgi + microsoft: _MSC_VER + metrowerks: __MWERKS__ + watcom: __WATCOMC__ + portland: __PGI + unknown: UNKNOWN" + for ventest in $vendors; do + case $ventest in + *:) vendor=$ventest; continue ;; + *) vencpp="defined("`echo $ventest | sed 's/,/) || defined(/g'`")" ;; + esac + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + #if !($vencpp) + thisisanerror; + #endif + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + break +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + done + ax_cv_c_compiler_vendor=`echo $vendor | cut -d: -f1` + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_c_compiler_vendor" >&5 +$as_echo "$ax_cv_c_compiler_vendor" >&6; } + + + + + + +# Check whether --enable-portable-binary was given. +if test "${enable_portable_binary+set}" = set; then : + enableval=$enable_portable_binary; acx_maxopt_portable=$enableval +else + acx_maxopt_portable=no +fi + + +# Try to determine "good" native compiler flags if none specified via CFLAGS +if test "$ac_test_CFLAGS" != "set"; then + CFLAGS="" + case $ax_cv_c_compiler_vendor in + dec) CFLAGS="-newc -w0 -O5 -ansi_alias -ansi_args -fp_reorder -tune host" + if test "x$acx_maxopt_portable" = xno; then + CFLAGS="$CFLAGS -arch host" + fi;; + + sun) CFLAGS="-native -fast -xO5 -dalign" + if test "x$acx_maxopt_portable" = xyes; then + CFLAGS="$CFLAGS -xarch=generic" + fi;; + + hp) CFLAGS="+Oall +Optrs_ansi +DSnative" + if test "x$acx_maxopt_portable" = xyes; then + CFLAGS="$CFLAGS +DAportable" + fi;; + + ibm) if test "x$acx_maxopt_portable" = xno; then + xlc_opt="-qarch=auto -qtune=auto" + else + xlc_opt="-qtune=auto" + fi + as_CACHEVAR=`$as_echo "ax_cv_check_cflags__$xlc_opt" | $as_tr_sh` +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts $xlc_opt" >&5 +$as_echo_n "checking whether C compiler accepts $xlc_opt... " >&6; } +if eval \${$as_CACHEVAR+:} false; then : + $as_echo_n "(cached) " >&6 +else + + ax_check_save_flags=$CFLAGS + CFLAGS="$CFLAGS $xlc_opt" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + eval "$as_CACHEVAR=yes" +else + eval "$as_CACHEVAR=no" +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + CFLAGS=$ax_check_save_flags +fi +eval ac_res=\$$as_CACHEVAR + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +if test x"`eval 'as_val=${'$as_CACHEVAR'};$as_echo "$as_val"'`" = xyes; then : + CFLAGS="-O3 -qansialias -w $xlc_opt" +else + CFLAGS="-O3 -qansialias -w" + echo "******************************************************" + echo "* You seem to have the IBM C compiler. It is *" + echo "* recommended for best performance that you use: *" + echo "* *" + echo "* CFLAGS=-O3 -qarch=xxx -qtune=xxx -qansialias -w *" + echo "* ^^^ ^^^ *" + echo "* where xxx is pwr2, pwr3, 604, or whatever kind of *" + echo "* CPU you have. (Set the CFLAGS environment var. *" + echo "* and re-run configure.) For more info, man cc. *" + echo "******************************************************" +fi + + ;; + + intel) CFLAGS="-O3 -ansi_alias" + if test "x$acx_maxopt_portable" = xno; then + icc_archflag=unknown + icc_flags="" + case $host_cpu in + i686*|x86_64*) + # icc accepts gcc assembly syntax, so these should work: + +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for x86 cpuid 0 output" >&5 +$as_echo_n "checking for x86 cpuid 0 output... " >&6; } +if ${ax_cv_gcc_x86_cpuid_0+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then : + ax_cv_gcc_x86_cpuid_0=unknown +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +int +main () +{ + + int op = 0, eax, ebx, ecx, edx; + FILE *f; + __asm__("cpuid" + : "=a" (eax), "=b" (ebx), "=c" (ecx), "=d" (edx) + : "a" (op)); + f = fopen("conftest_cpuid", "w"); if (!f) return 1; + fprintf(f, "%x:%x:%x:%x\n", eax, ebx, ecx, edx); + fclose(f); + return 0; + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + ax_cv_gcc_x86_cpuid_0=`cat conftest_cpuid`; rm -f conftest_cpuid +else + ax_cv_gcc_x86_cpuid_0=unknown; rm -f conftest_cpuid +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext +fi + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_gcc_x86_cpuid_0" >&5 +$as_echo "$ax_cv_gcc_x86_cpuid_0" >&6; } +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu + + + +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for x86 cpuid 1 output" >&5 +$as_echo_n "checking for x86 cpuid 1 output... " >&6; } +if ${ax_cv_gcc_x86_cpuid_1+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then : + ax_cv_gcc_x86_cpuid_1=unknown +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +int +main () +{ + + int op = 1, eax, ebx, ecx, edx; + FILE *f; + __asm__("cpuid" + : "=a" (eax), "=b" (ebx), "=c" (ecx), "=d" (edx) + : "a" (op)); + f = fopen("conftest_cpuid", "w"); if (!f) return 1; + fprintf(f, "%x:%x:%x:%x\n", eax, ebx, ecx, edx); + fclose(f); + return 0; + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + ax_cv_gcc_x86_cpuid_1=`cat conftest_cpuid`; rm -f conftest_cpuid +else + ax_cv_gcc_x86_cpuid_1=unknown; rm -f conftest_cpuid +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext +fi + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_gcc_x86_cpuid_1" >&5 +$as_echo "$ax_cv_gcc_x86_cpuid_1" >&6; } +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu + + + case $ax_cv_gcc_x86_cpuid_0 in # see AX_GCC_ARCHFLAG + *:756e6547:*:*) # Intel + case $ax_cv_gcc_x86_cpuid_1 in + *6a?:*[234]:*:*|*6[789b]?:*:*:*) icc_flags="-xK";; + *f3[347]:*:*:*|*f41347:*:*:*) icc_flags="-xP -xN -xW -xK";; + *f??:*:*:*) icc_flags="-xN -xW -xK";; + esac ;; + esac ;; + esac + if test "x$icc_flags" != x; then + for flag in $icc_flags; do + as_CACHEVAR=`$as_echo "ax_cv_check_cflags__$flag" | $as_tr_sh` +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts $flag" >&5 +$as_echo_n "checking whether C compiler accepts $flag... " >&6; } +if eval \${$as_CACHEVAR+:} false; then : + $as_echo_n "(cached) " >&6 +else + + ax_check_save_flags=$CFLAGS + CFLAGS="$CFLAGS $flag" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + eval "$as_CACHEVAR=yes" +else + eval "$as_CACHEVAR=no" +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + CFLAGS=$ax_check_save_flags +fi +eval ac_res=\$$as_CACHEVAR + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +if test x"`eval 'as_val=${'$as_CACHEVAR'};$as_echo "$as_val"'`" = xyes; then : + icc_archflag=$flag; break +else + : +fi + + done + fi + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for icc architecture flag" >&5 +$as_echo_n "checking for icc architecture flag... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $icc_archflag" >&5 +$as_echo "$icc_archflag" >&6; } + if test "x$icc_archflag" != xunknown; then + CFLAGS="$CFLAGS $icc_archflag" + fi + fi + ;; + + gnu) + # default optimization flags for gcc on all systems + CFLAGS="-O3 -fomit-frame-pointer" + + # -malign-double for x86 systems + # LIBFFI -- DON'T DO THIS - CHANGES ABI + # AX_CHECK_COMPILE_FLAG(-malign-double, CFLAGS="$CFLAGS -malign-double") + + # -fstrict-aliasing for gcc-2.95+ + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts -fstrict-aliasing" >&5 +$as_echo_n "checking whether C compiler accepts -fstrict-aliasing... " >&6; } +if ${ax_cv_check_cflags___fstrict_aliasing+:} false; then : + $as_echo_n "(cached) " >&6 +else + + ax_check_save_flags=$CFLAGS + CFLAGS="$CFLAGS -fstrict-aliasing" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ax_cv_check_cflags___fstrict_aliasing=yes +else + ax_cv_check_cflags___fstrict_aliasing=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + CFLAGS=$ax_check_save_flags +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_check_cflags___fstrict_aliasing" >&5 +$as_echo "$ax_cv_check_cflags___fstrict_aliasing" >&6; } +if test x"$ax_cv_check_cflags___fstrict_aliasing" = xyes; then : + CFLAGS="$CFLAGS -fstrict-aliasing" +else + : +fi + + + # note that we enable "unsafe" fp optimization with other compilers, too + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts -ffast-math" >&5 +$as_echo_n "checking whether C compiler accepts -ffast-math... " >&6; } +if ${ax_cv_check_cflags___ffast_math+:} false; then : + $as_echo_n "(cached) " >&6 +else + + ax_check_save_flags=$CFLAGS + CFLAGS="$CFLAGS -ffast-math" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ax_cv_check_cflags___ffast_math=yes +else + ax_cv_check_cflags___ffast_math=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + CFLAGS=$ax_check_save_flags +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_check_cflags___ffast_math" >&5 +$as_echo "$ax_cv_check_cflags___ffast_math" >&6; } +if test x"$ax_cv_check_cflags___ffast_math" = xyes; then : + CFLAGS="$CFLAGS -ffast-math" +else + : +fi + + + + + + +# Check whether --with-gcc-arch was given. +if test "${with_gcc_arch+set}" = set; then : + withval=$with_gcc_arch; ax_gcc_arch=$withval +else + ax_gcc_arch=yes +fi + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for gcc architecture flag" >&5 +$as_echo_n "checking for gcc architecture flag... " >&6; } +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: " >&5 +$as_echo "" >&6; } +if ${ax_cv_gcc_archflag+:} false; then : + $as_echo_n "(cached) " >&6 +else + +ax_cv_gcc_archflag="unknown" + +if test "$GCC" = yes; then + +if test "x$ax_gcc_arch" = xyes; then +ax_gcc_arch="" +if test "$cross_compiling" = no; then +case $host_cpu in + i[3456]86*|x86_64*) # use cpuid codes + +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for x86 cpuid 0 output" >&5 +$as_echo_n "checking for x86 cpuid 0 output... " >&6; } +if ${ax_cv_gcc_x86_cpuid_0+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then : + ax_cv_gcc_x86_cpuid_0=unknown +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +int +main () +{ + + int op = 0, eax, ebx, ecx, edx; + FILE *f; + __asm__("cpuid" + : "=a" (eax), "=b" (ebx), "=c" (ecx), "=d" (edx) + : "a" (op)); + f = fopen("conftest_cpuid", "w"); if (!f) return 1; + fprintf(f, "%x:%x:%x:%x\n", eax, ebx, ecx, edx); + fclose(f); + return 0; + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + ax_cv_gcc_x86_cpuid_0=`cat conftest_cpuid`; rm -f conftest_cpuid +else + ax_cv_gcc_x86_cpuid_0=unknown; rm -f conftest_cpuid +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext +fi + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_gcc_x86_cpuid_0" >&5 +$as_echo "$ax_cv_gcc_x86_cpuid_0" >&6; } +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu + + + +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for x86 cpuid 1 output" >&5 +$as_echo_n "checking for x86 cpuid 1 output... " >&6; } +if ${ax_cv_gcc_x86_cpuid_1+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then : + ax_cv_gcc_x86_cpuid_1=unknown +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +int +main () +{ + + int op = 1, eax, ebx, ecx, edx; + FILE *f; + __asm__("cpuid" + : "=a" (eax), "=b" (ebx), "=c" (ecx), "=d" (edx) + : "a" (op)); + f = fopen("conftest_cpuid", "w"); if (!f) return 1; + fprintf(f, "%x:%x:%x:%x\n", eax, ebx, ecx, edx); + fclose(f); + return 0; + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + ax_cv_gcc_x86_cpuid_1=`cat conftest_cpuid`; rm -f conftest_cpuid +else + ax_cv_gcc_x86_cpuid_1=unknown; rm -f conftest_cpuid +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext +fi + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_gcc_x86_cpuid_1" >&5 +$as_echo "$ax_cv_gcc_x86_cpuid_1" >&6; } +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu + + + case $ax_cv_gcc_x86_cpuid_0 in + *:756e6547:*:*) # Intel + case $ax_cv_gcc_x86_cpuid_1 in + *5[48]?:*:*:*) ax_gcc_arch="pentium-mmx pentium" ;; + *5??:*:*:*) ax_gcc_arch=pentium ;; + *0?6[3456]?:*:*:*) ax_gcc_arch="pentium2 pentiumpro" ;; + *0?6a?:*[01]:*:*) ax_gcc_arch="pentium2 pentiumpro" ;; + *0?6a?:*[234]:*:*) ax_gcc_arch="pentium3 pentiumpro" ;; + *0?6[9de]?:*:*:*) ax_gcc_arch="pentium-m pentium3 pentiumpro" ;; + *0?6[78b]?:*:*:*) ax_gcc_arch="pentium3 pentiumpro" ;; + *0?6f?:*:*:*|*1?66?:*:*:*) ax_gcc_arch="core2 pentium-m pentium3 pentiumpro" ;; + *1?6[7d]?:*:*:*) ax_gcc_arch="penryn core2 pentium-m pentium3 pentiumpro" ;; + *1?6[aef]?:*:*:*|*2?6[5cef]?:*:*:*) ax_gcc_arch="corei7 core2 pentium-m pentium3 pentiumpro" ;; + *1?6c?:*:*:*|*[23]?66?:*:*:*) ax_gcc_arch="atom core2 pentium-m pentium3 pentiumpro" ;; + *2?6[ad]?:*:*:*) ax_gcc_arch="corei7-avx corei7 core2 pentium-m pentium3 pentiumpro" ;; + *0?6??:*:*:*) ax_gcc_arch=pentiumpro ;; + *6??:*:*:*) ax_gcc_arch="core2 pentiumpro" ;; + ?000?f3[347]:*:*:*|?000?f41347:*:*:*|?000?f6?:*:*:*) + case $host_cpu in + x86_64*) ax_gcc_arch="nocona pentium4 pentiumpro" ;; + *) ax_gcc_arch="prescott pentium4 pentiumpro" ;; + esac ;; + ?000?f??:*:*:*) ax_gcc_arch="pentium4 pentiumpro";; + esac ;; + *:68747541:*:*) # AMD + case $ax_cv_gcc_x86_cpuid_1 in + *5[67]?:*:*:*) ax_gcc_arch=k6 ;; + *5[8d]?:*:*:*) ax_gcc_arch="k6-2 k6" ;; + *5[9]?:*:*:*) ax_gcc_arch="k6-3 k6" ;; + *60?:*:*:*) ax_gcc_arch=k7 ;; + *6[12]?:*:*:*) ax_gcc_arch="athlon k7" ;; + *6[34]?:*:*:*) ax_gcc_arch="athlon-tbird k7" ;; + *67?:*:*:*) ax_gcc_arch="athlon-4 athlon k7" ;; + *6[68a]?:*:*:*) + +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for x86 cpuid 0x80000006 output" >&5 +$as_echo_n "checking for x86 cpuid 0x80000006 output... " >&6; } +if ${ax_cv_gcc_x86_cpuid_0x80000006+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then : + ax_cv_gcc_x86_cpuid_0x80000006=unknown +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +int +main () +{ + + int op = 0x80000006, eax, ebx, ecx, edx; + FILE *f; + __asm__("cpuid" + : "=a" (eax), "=b" (ebx), "=c" (ecx), "=d" (edx) + : "a" (op)); + f = fopen("conftest_cpuid", "w"); if (!f) return 1; + fprintf(f, "%x:%x:%x:%x\n", eax, ebx, ecx, edx); + fclose(f); + return 0; + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + ax_cv_gcc_x86_cpuid_0x80000006=`cat conftest_cpuid`; rm -f conftest_cpuid +else + ax_cv_gcc_x86_cpuid_0x80000006=unknown; rm -f conftest_cpuid +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext +fi + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_gcc_x86_cpuid_0x80000006" >&5 +$as_echo "$ax_cv_gcc_x86_cpuid_0x80000006" >&6; } +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu + + # L2 cache size + case $ax_cv_gcc_x86_cpuid_0x80000006 in + *:*:*[1-9a-f]??????:*) # (L2 = ecx >> 16) >= 256 + ax_gcc_arch="athlon-xp athlon-4 athlon k7" ;; + *) ax_gcc_arch="athlon-4 athlon k7" ;; + esac ;; + ?00??f[4cef8b]?:*:*:*) ax_gcc_arch="athlon64 k8" ;; + ?00??f5?:*:*:*) ax_gcc_arch="opteron k8" ;; + ?00??f7?:*:*:*) ax_gcc_arch="athlon-fx opteron k8" ;; + ?00??f??:*:*:*) ax_gcc_arch="k8" ;; + ?05??f??:*:*:*) ax_gcc_arch="btver1 amdfam10 k8" ;; + ?06??f??:*:*:*) ax_gcc_arch="bdver1 amdfam10 k8" ;; + *f??:*:*:*) ax_gcc_arch="amdfam10 k8" ;; + esac ;; + *:746e6543:*:*) # IDT + case $ax_cv_gcc_x86_cpuid_1 in + *54?:*:*:*) ax_gcc_arch=winchip-c6 ;; + *58?:*:*:*) ax_gcc_arch=winchip2 ;; + *6[78]?:*:*:*) ax_gcc_arch=c3 ;; + *69?:*:*:*) ax_gcc_arch="c3-2 c3" ;; + esac ;; + esac + if test x"$ax_gcc_arch" = x; then # fallback + case $host_cpu in + i586*) ax_gcc_arch=pentium ;; + i686*) ax_gcc_arch=pentiumpro ;; + esac + fi + ;; + + sparc*) + # Extract the first word of "prtdiag", so it can be a program name with args. +set dummy prtdiag; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_path_PRTDIAG+:} false; then : + $as_echo_n "(cached) " >&6 +else + case $PRTDIAG in + [\\/]* | ?:[\\/]*) + ac_cv_path_PRTDIAG="$PRTDIAG" # Let the user override the test with a path. + ;; + *) + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +as_dummy="$PATH:/usr/platform/`uname -i`/sbin/:/usr/platform/`uname -m`/sbin/" +for as_dir in $as_dummy +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_path_PRTDIAG="$as_dir/$ac_word$ac_exec_ext" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + + test -z "$ac_cv_path_PRTDIAG" && ac_cv_path_PRTDIAG="prtdiag" + ;; +esac +fi +PRTDIAG=$ac_cv_path_PRTDIAG +if test -n "$PRTDIAG"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PRTDIAG" >&5 +$as_echo "$PRTDIAG" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + cputype=`(((grep cpu /proc/cpuinfo | cut -d: -f2) ; ($PRTDIAG -v |grep -i sparc) ; grep -i cpu /var/run/dmesg.boot ) | head -n 1) 2> /dev/null` + cputype=`echo "$cputype" | tr -d ' -' | sed 's/SPARCIIi/SPARCII/' | tr $as_cr_LETTERS $as_cr_letters` + case $cputype in + *ultrasparciv*) ax_gcc_arch="ultrasparc4 ultrasparc3 ultrasparc v9" ;; + *ultrasparciii*) ax_gcc_arch="ultrasparc3 ultrasparc v9" ;; + *ultrasparc*) ax_gcc_arch="ultrasparc v9" ;; + *supersparc*|*tms390z5[05]*) ax_gcc_arch="supersparc v8" ;; + *hypersparc*|*rt62[056]*) ax_gcc_arch="hypersparc v8" ;; + *cypress*) ax_gcc_arch=cypress ;; + esac ;; + + alphaev5) ax_gcc_arch=ev5 ;; + alphaev56) ax_gcc_arch=ev56 ;; + alphapca56) ax_gcc_arch="pca56 ev56" ;; + alphapca57) ax_gcc_arch="pca57 pca56 ev56" ;; + alphaev6) ax_gcc_arch=ev6 ;; + alphaev67) ax_gcc_arch=ev67 ;; + alphaev68) ax_gcc_arch="ev68 ev67" ;; + alphaev69) ax_gcc_arch="ev69 ev68 ev67" ;; + alphaev7) ax_gcc_arch="ev7 ev69 ev68 ev67" ;; + alphaev79) ax_gcc_arch="ev79 ev7 ev69 ev68 ev67" ;; + + powerpc*) + cputype=`((grep cpu /proc/cpuinfo | head -n 1 | cut -d: -f2 | cut -d, -f1 | sed 's/ //g') ; /usr/bin/machine ; /bin/machine; grep CPU /var/run/dmesg.boot | head -n 1 | cut -d" " -f2) 2> /dev/null` + cputype=`echo $cputype | sed -e 's/ppc//g;s/ *//g'` + case $cputype in + *750*) ax_gcc_arch="750 G3" ;; + *740[0-9]*) ax_gcc_arch="$cputype 7400 G4" ;; + *74[4-5][0-9]*) ax_gcc_arch="$cputype 7450 G4" ;; + *74[0-9][0-9]*) ax_gcc_arch="$cputype G4" ;; + *970*) ax_gcc_arch="970 G5 power4";; + *POWER4*|*power4*|*gq*) ax_gcc_arch="power4 970";; + *POWER5*|*power5*|*gr*|*gs*) ax_gcc_arch="power5 power4 970";; + 603ev|8240) ax_gcc_arch="$cputype 603e 603";; + *) ax_gcc_arch=$cputype ;; + esac + ax_gcc_arch="$ax_gcc_arch powerpc" + ;; +esac +fi # not cross-compiling +fi # guess arch + +if test "x$ax_gcc_arch" != x -a "x$ax_gcc_arch" != xno; then +for arch in $ax_gcc_arch; do + if test "x$acx_maxopt_portable" = xyes; then # if we require portable code + flags="-mtune=$arch" + # -mcpu=$arch and m$arch generate nonportable code on every arch except + # x86. And some other arches (e.g. Alpha) don't accept -mtune. Grrr. + case $host_cpu in i*86|x86_64*) flags="$flags -mcpu=$arch -m$arch";; esac + else + flags="-march=$arch -mcpu=$arch -m$arch" + fi + for flag in $flags; do + as_CACHEVAR=`$as_echo "ax_cv_check_cflags__$flag" | $as_tr_sh` +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts $flag" >&5 +$as_echo_n "checking whether C compiler accepts $flag... " >&6; } +if eval \${$as_CACHEVAR+:} false; then : + $as_echo_n "(cached) " >&6 +else + + ax_check_save_flags=$CFLAGS + CFLAGS="$CFLAGS $flag" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + eval "$as_CACHEVAR=yes" +else + eval "$as_CACHEVAR=no" +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + CFLAGS=$ax_check_save_flags +fi +eval ac_res=\$$as_CACHEVAR + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +if test x"`eval 'as_val=${'$as_CACHEVAR'};$as_echo "$as_val"'`" = xyes; then : + ax_cv_gcc_archflag=$flag; break +else + : +fi + + done + test "x$ax_cv_gcc_archflag" = xunknown || break +done +fi + +fi # $GCC=yes + +fi + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for gcc architecture flag" >&5 +$as_echo_n "checking for gcc architecture flag... " >&6; } +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_gcc_archflag" >&5 +$as_echo "$ax_cv_gcc_archflag" >&6; } +if test "x$ax_cv_gcc_archflag" = xunknown; then + : +else + CFLAGS="$CFLAGS $ax_cv_gcc_archflag" +fi + + ;; + esac + + if test -z "$CFLAGS"; then + echo "" + echo "********************************************************" + echo "* WARNING: Don't know the best CFLAGS for this system *" + echo "* Use ./configure CFLAGS=... to specify your own flags *" + echo "* (otherwise, a default of CFLAGS=-O3 will be used) *" + echo "********************************************************" + echo "" + CFLAGS="-O3" + fi + + as_CACHEVAR=`$as_echo "ax_cv_check_cflags__$CFLAGS" | $as_tr_sh` +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts $CFLAGS" >&5 +$as_echo_n "checking whether C compiler accepts $CFLAGS... " >&6; } +if eval \${$as_CACHEVAR+:} false; then : + $as_echo_n "(cached) " >&6 +else + + ax_check_save_flags=$CFLAGS + CFLAGS="$CFLAGS $CFLAGS" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + eval "$as_CACHEVAR=yes" +else + eval "$as_CACHEVAR=no" +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + CFLAGS=$ax_check_save_flags +fi +eval ac_res=\$$as_CACHEVAR + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +if test x"`eval 'as_val=${'$as_CACHEVAR'};$as_echo "$as_val"'`" = xyes; then : + : +else + + echo "" + echo "********************************************************" + echo "* WARNING: The guessed CFLAGS don't seem to work with *" + echo "* your compiler. *" + echo "* Use ./configure CFLAGS=... to specify your own flags *" + echo "********************************************************" + echo "" + CFLAGS="" + +fi + + +fi + +# The AX_CFLAGS_WARN_ALL macro doesn't currently work for sunpro +# compiler. +if test "$ax_cv_c_compiler_vendor" != "sun"; then + if ${CFLAGS+:} false; then : + case " $CFLAGS " in + *" "*) + { { $as_echo "$as_me:${as_lineno-$LINENO}: : CFLAGS already contains "; } >&5 + (: CFLAGS already contains ) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } + ;; + *) + { { $as_echo "$as_me:${as_lineno-$LINENO}: : CFLAGS=\"\$CFLAGS \""; } >&5 + (: CFLAGS="$CFLAGS ") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } + CFLAGS="$CFLAGS " + ;; + esac +else + CFLAGS="" +fi + +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking CFLAGS for maximum warnings" >&5 +$as_echo_n "checking CFLAGS for maximum warnings... " >&6; } +if ${ac_cv_cflags_warn_all+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_cv_cflags_warn_all="no, unknown" +ac_save_CFLAGS="$CFLAGS" +for ac_arg in "-warn all % -warn all" "-pedantic % -Wall" "-xstrconst % -v" "-std1 % -verbose -w0 -warnprotos" "-qlanglvl=ansi % -qsrcmsg -qinfo=all:noppt:noppc:noobs:nocnd" "-ansi -ansiE % -fullwarn" "+ESlit % +w1" "-Xc % -pvctl,fullmsg" "-h conform % -h msglevel 2" # +do CFLAGS="$ac_save_CFLAGS "`echo $ac_arg | sed -e 's,%%.*,,' -e 's,%,,'` + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_cv_cflags_warn_all=`echo $ac_arg | sed -e 's,.*% *,,'` ; break +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +done +CFLAGS="$ac_save_CFLAGS" + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_cflags_warn_all" >&5 +$as_echo "$ac_cv_cflags_warn_all" >&6; } + +case ".$ac_cv_cflags_warn_all" in + .ok|.ok,*) ;; + .|.no|.no,*) ;; + *) if ${CFLAGS+:} false; then : + case " $CFLAGS " in + *" $ac_cv_cflags_warn_all "*) + { { $as_echo "$as_me:${as_lineno-$LINENO}: : CFLAGS already contains \$ac_cv_cflags_warn_all"; } >&5 + (: CFLAGS already contains $ac_cv_cflags_warn_all) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } + ;; + *) + { { $as_echo "$as_me:${as_lineno-$LINENO}: : CFLAGS=\"\$CFLAGS \$ac_cv_cflags_warn_all\""; } >&5 + (: CFLAGS="$CFLAGS $ac_cv_cflags_warn_all") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } + CFLAGS="$CFLAGS $ac_cv_cflags_warn_all" + ;; + esac +else + CFLAGS="$ac_cv_cflags_warn_all" +fi + ;; +esac + +ac_ext=c +ac_cpp='$CPP $CPPFLAGS' +ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' +ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' +ac_compiler_gnu=$ac_cv_c_compiler_gnu + + +fi + +if test "x$GCC" = "xyes"; then + CFLAGS="$CFLAGS -fexceptions" +fi + +cat > local.exp <&5 +$as_echo_n "checking whether to enable maintainer-specific portions of Makefiles... " >&6; } + # Check whether --enable-maintainer-mode was given. +if test "${enable_maintainer_mode+set}" = set; then : + enableval=$enable_maintainer_mode; USE_MAINTAINER_MODE=$enableval +else + USE_MAINTAINER_MODE=no +fi + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $USE_MAINTAINER_MODE" >&5 +$as_echo "$USE_MAINTAINER_MODE" >&6; } + if test $USE_MAINTAINER_MODE = yes; then + MAINTAINER_MODE_TRUE= + MAINTAINER_MODE_FALSE='#' +else + MAINTAINER_MODE_TRUE='#' + MAINTAINER_MODE_FALSE= +fi + + MAINT=$MAINTAINER_MODE_TRUE + + + +for ac_header in sys/mman.h +do : + ac_fn_c_check_header_mongrel "$LINENO" "sys/mman.h" "ac_cv_header_sys_mman_h" "$ac_includes_default" +if test "x$ac_cv_header_sys_mman_h" = xyes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_SYS_MMAN_H 1 +_ACEOF + +fi + +done + +for ac_func in mmap mkostemp +do : + as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` +ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" +if eval test \"x\$"$as_ac_var"\" = x"yes"; then : + cat >>confdefs.h <<_ACEOF +#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 +_ACEOF + +fi +done + + +ac_fn_c_check_header_mongrel "$LINENO" "sys/mman.h" "ac_cv_header_sys_mman_h" "$ac_includes_default" +if test "x$ac_cv_header_sys_mman_h" = xyes; then : + libffi_header_sys_mman_h=yes +else + libffi_header_sys_mman_h=no +fi + + +ac_fn_c_check_func "$LINENO" "mmap" "ac_cv_func_mmap" +if test "x$ac_cv_func_mmap" = xyes; then : + libffi_func_mmap=yes +else + libffi_func_mmap=no +fi + +if test "$libffi_header_sys_mman_h" != yes \ + || test "$libffi_func_mmap" != yes; then + ac_cv_func_mmap_file=no + ac_cv_func_mmap_dev_zero=no + ac_cv_func_mmap_anon=no +else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether read-only mmap of a plain file works" >&5 +$as_echo_n "checking whether read-only mmap of a plain file works... " >&6; } +if ${ac_cv_func_mmap_file+:} false; then : + $as_echo_n "(cached) " >&6 +else + # Add a system to this blacklist if + # mmap(0, stat_size, PROT_READ, MAP_PRIVATE, fd, 0) doesn't return a + # memory area containing the same data that you'd get if you applied + # read() to the same fd. The only system known to have a problem here + # is VMS, where text files have record structure. + case "$host_os" in + vms* | ultrix*) + ac_cv_func_mmap_file=no ;; + *) + ac_cv_func_mmap_file=yes;; + esac +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_mmap_file" >&5 +$as_echo "$ac_cv_func_mmap_file" >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether mmap from /dev/zero works" >&5 +$as_echo_n "checking whether mmap from /dev/zero works... " >&6; } +if ${ac_cv_func_mmap_dev_zero+:} false; then : + $as_echo_n "(cached) " >&6 +else + # Add a system to this blacklist if it has mmap() but /dev/zero + # does not exist, or if mmapping /dev/zero does not give anonymous + # zeroed pages with both the following properties: + # 1. If you map N consecutive pages in with one call, and then + # unmap any subset of those pages, the pages that were not + # explicitly unmapped remain accessible. + # 2. If you map two adjacent blocks of memory and then unmap them + # both at once, they must both go away. + # Systems known to be in this category are Windows (all variants), + # VMS, and Darwin. + case "$host_os" in + vms* | cygwin* | pe | mingw* | darwin* | ultrix* | hpux10* | hpux11.00) + ac_cv_func_mmap_dev_zero=no ;; + *) + ac_cv_func_mmap_dev_zero=yes;; + esac +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_mmap_dev_zero" >&5 +$as_echo "$ac_cv_func_mmap_dev_zero" >&6; } + + # Unlike /dev/zero, the MAP_ANON(YMOUS) defines can be probed for. + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for MAP_ANON(YMOUS)" >&5 +$as_echo_n "checking for MAP_ANON(YMOUS)... " >&6; } +if ${ac_cv_decl_map_anon+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +#include +#include + +#ifndef MAP_ANONYMOUS +#define MAP_ANONYMOUS MAP_ANON +#endif + +int +main () +{ +int n = MAP_ANONYMOUS; + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_cv_decl_map_anon=yes +else + ac_cv_decl_map_anon=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_decl_map_anon" >&5 +$as_echo "$ac_cv_decl_map_anon" >&6; } + + if test $ac_cv_decl_map_anon = no; then + ac_cv_func_mmap_anon=no + else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether mmap with MAP_ANON(YMOUS) works" >&5 +$as_echo_n "checking whether mmap with MAP_ANON(YMOUS) works... " >&6; } +if ${ac_cv_func_mmap_anon+:} false; then : + $as_echo_n "(cached) " >&6 +else + # Add a system to this blacklist if it has mmap() and MAP_ANON or + # MAP_ANONYMOUS, but using mmap(..., MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) + # doesn't give anonymous zeroed pages with the same properties listed + # above for use of /dev/zero. + # Systems known to be in this category are Windows, VMS, and SCO Unix. + case "$host_os" in + vms* | cygwin* | pe | mingw* | sco* | udk* ) + ac_cv_func_mmap_anon=no ;; + *) + ac_cv_func_mmap_anon=yes;; + esac +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_mmap_anon" >&5 +$as_echo "$ac_cv_func_mmap_anon" >&6; } + fi +fi + +if test $ac_cv_func_mmap_file = yes; then + +$as_echo "#define HAVE_MMAP_FILE 1" >>confdefs.h + +fi +if test $ac_cv_func_mmap_dev_zero = yes; then + +$as_echo "#define HAVE_MMAP_DEV_ZERO 1" >>confdefs.h + +fi +if test $ac_cv_func_mmap_anon = yes; then + +$as_echo "#define HAVE_MMAP_ANON 1" >>confdefs.h + +fi + + + if test -d $srcdir/testsuite; then + TESTSUBDIR_TRUE= + TESTSUBDIR_FALSE='#' +else + TESTSUBDIR_TRUE='#' + TESTSUBDIR_FALSE= +fi + + +TARGETDIR="unknown" +HAVE_LONG_DOUBLE_VARIANT=0 + +. ${srcdir}/configure.host + +if test -n "${UNSUPPORTED}"; then + as_fn_error $? "\"libffi has not been ported to $host.\"" "$LINENO" 5 +fi + + + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5 +$as_echo_n "checking for ANSI C header files... " >&6; } +if ${ac_cv_header_stdc+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +#include +#include +#include + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_cv_header_stdc=yes +else + ac_cv_header_stdc=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + +if test $ac_cv_header_stdc = yes; then + # SunOS 4.x string.h does not declare mem*, contrary to ANSI. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "memchr" >/dev/null 2>&1; then : + +else + ac_cv_header_stdc=no +fi +rm -f conftest* + +fi + +if test $ac_cv_header_stdc = yes; then + # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "free" >/dev/null 2>&1; then : + +else + ac_cv_header_stdc=no +fi +rm -f conftest* + +fi + +if test $ac_cv_header_stdc = yes; then + # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi. + if test "$cross_compiling" = yes; then : + : +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +#include +#if ((' ' & 0x0FF) == 0x020) +# define ISLOWER(c) ('a' <= (c) && (c) <= 'z') +# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) +#else +# define ISLOWER(c) \ + (('a' <= (c) && (c) <= 'i') \ + || ('j' <= (c) && (c) <= 'r') \ + || ('s' <= (c) && (c) <= 'z')) +# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c)) +#endif + +#define XOR(e, f) (((e) && !(f)) || (!(e) && (f))) +int +main () +{ + int i; + for (i = 0; i < 256; i++) + if (XOR (islower (i), ISLOWER (i)) + || toupper (i) != TOUPPER (i)) + return 2; + return 0; +} +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + +else + ac_cv_header_stdc=no +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext +fi + +fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5 +$as_echo "$ac_cv_header_stdc" >&6; } +if test $ac_cv_header_stdc = yes; then + +$as_echo "#define STDC_HEADERS 1" >>confdefs.h + +fi + +for ac_func in memcpy +do : + ac_fn_c_check_func "$LINENO" "memcpy" "ac_cv_func_memcpy" +if test "x$ac_cv_func_memcpy" = xyes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_MEMCPY 1 +_ACEOF + +fi +done + +ac_fn_c_check_type "$LINENO" "size_t" "ac_cv_type_size_t" "$ac_includes_default" +if test "x$ac_cv_type_size_t" = xyes; then : + +else + +cat >>confdefs.h <<_ACEOF +#define size_t unsigned int +_ACEOF + +fi + +# The Ultrix 4.2 mips builtin alloca declared by alloca.h only works +# for constant arguments. Useless! +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for working alloca.h" >&5 +$as_echo_n "checking for working alloca.h... " >&6; } +if ${ac_cv_working_alloca_h+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +int +main () +{ +char *p = (char *) alloca (2 * sizeof (int)); + if (p) return 0; + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_working_alloca_h=yes +else + ac_cv_working_alloca_h=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_working_alloca_h" >&5 +$as_echo "$ac_cv_working_alloca_h" >&6; } +if test $ac_cv_working_alloca_h = yes; then + +$as_echo "#define HAVE_ALLOCA_H 1" >>confdefs.h + +fi + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for alloca" >&5 +$as_echo_n "checking for alloca... " >&6; } +if ${ac_cv_func_alloca_works+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#ifdef __GNUC__ +# define alloca __builtin_alloca +#else +# ifdef _MSC_VER +# include +# define alloca _alloca +# else +# ifdef HAVE_ALLOCA_H +# include +# else +# ifdef _AIX + #pragma alloca +# else +# ifndef alloca /* predefined by HP cc +Olibcalls */ +void *alloca (size_t); +# endif +# endif +# endif +# endif +#endif + +int +main () +{ +char *p = (char *) alloca (1); + if (p) return 0; + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_func_alloca_works=yes +else + ac_cv_func_alloca_works=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_func_alloca_works" >&5 +$as_echo "$ac_cv_func_alloca_works" >&6; } + +if test $ac_cv_func_alloca_works = yes; then + +$as_echo "#define HAVE_ALLOCA 1" >>confdefs.h + +else + # The SVR3 libPW and SVR4 libucb both contain incompatible functions +# that cause trouble. Some versions do not even contain alloca or +# contain a buggy version. If you still want to use their alloca, +# use ar to extract alloca.o from them instead of compiling alloca.c. + +ALLOCA=\${LIBOBJDIR}alloca.$ac_objext + +$as_echo "#define C_ALLOCA 1" >>confdefs.h + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether \`alloca.c' needs Cray hooks" >&5 +$as_echo_n "checking whether \`alloca.c' needs Cray hooks... " >&6; } +if ${ac_cv_os_cray+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#if defined CRAY && ! defined CRAY2 +webecray +#else +wenotbecray +#endif + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "webecray" >/dev/null 2>&1; then : + ac_cv_os_cray=yes +else + ac_cv_os_cray=no +fi +rm -f conftest* + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_os_cray" >&5 +$as_echo "$ac_cv_os_cray" >&6; } +if test $ac_cv_os_cray = yes; then + for ac_func in _getb67 GETB67 getb67; do + as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` +ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" +if eval test \"x\$"$as_ac_var"\" = x"yes"; then : + +cat >>confdefs.h <<_ACEOF +#define CRAY_STACKSEG_END $ac_func +_ACEOF + + break +fi + + done +fi + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking stack direction for C alloca" >&5 +$as_echo_n "checking stack direction for C alloca... " >&6; } +if ${ac_cv_c_stack_direction+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test "$cross_compiling" = yes; then : + ac_cv_c_stack_direction=0 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +$ac_includes_default +int +find_stack_direction (int *addr, int depth) +{ + int dir, dummy = 0; + if (! addr) + addr = &dummy; + *addr = addr < &dummy ? 1 : addr == &dummy ? 0 : -1; + dir = depth ? find_stack_direction (addr, depth - 1) : 0; + return dir + dummy; +} + +int +main (int argc, char **argv) +{ + return find_stack_direction (0, argc + !argv + 20) < 0; +} +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + ac_cv_c_stack_direction=1 +else + ac_cv_c_stack_direction=-1 +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext +fi + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_stack_direction" >&5 +$as_echo "$ac_cv_c_stack_direction" >&6; } +cat >>confdefs.h <<_ACEOF +#define STACK_DIRECTION $ac_cv_c_stack_direction +_ACEOF + + +fi + + +# The cast to long int works around a bug in the HP C Compiler +# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects +# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'. +# This bug is HP SR number 8606223364. +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of double" >&5 +$as_echo_n "checking size of double... " >&6; } +if ${ac_cv_sizeof_double+:} false; then : + $as_echo_n "(cached) " >&6 +else + if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (double))" "ac_cv_sizeof_double" "$ac_includes_default"; then : + +else + if test "$ac_cv_type_double" = yes; then + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error 77 "cannot compute sizeof (double) +See \`config.log' for more details" "$LINENO" 5; } + else + ac_cv_sizeof_double=0 + fi +fi + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_double" >&5 +$as_echo "$ac_cv_sizeof_double" >&6; } + + + +cat >>confdefs.h <<_ACEOF +#define SIZEOF_DOUBLE $ac_cv_sizeof_double +_ACEOF + + +# The cast to long int works around a bug in the HP C Compiler +# version HP92453-01 B.11.11.23709.GP, which incorrectly rejects +# declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'. +# This bug is HP SR number 8606223364. +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of long double" >&5 +$as_echo_n "checking size of long double... " >&6; } +if ${ac_cv_sizeof_long_double+:} false; then : + $as_echo_n "(cached) " >&6 +else + if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (long double))" "ac_cv_sizeof_long_double" "$ac_includes_default"; then : + +else + if test "$ac_cv_type_long_double" = yes; then + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error 77 "cannot compute sizeof (long double) +See \`config.log' for more details" "$LINENO" 5; } + else + ac_cv_sizeof_long_double=0 + fi +fi + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_long_double" >&5 +$as_echo "$ac_cv_sizeof_long_double" >&6; } + + + +cat >>confdefs.h <<_ACEOF +#define SIZEOF_LONG_DOUBLE $ac_cv_sizeof_long_double +_ACEOF + + + +# Also AC_SUBST this variable for ffi.h. +if test -z "$HAVE_LONG_DOUBLE"; then + HAVE_LONG_DOUBLE=0 + if test $ac_cv_sizeof_long_double != 0; then + if test $HAVE_LONG_DOUBLE_VARIANT != 0; then + +$as_echo "#define HAVE_LONG_DOUBLE_VARIANT 1" >>confdefs.h + + HAVE_LONG_DOUBLE=1 + else + if test $ac_cv_sizeof_double != $ac_cv_sizeof_long_double; then + HAVE_LONG_DOUBLE=1 + +$as_echo "#define HAVE_LONG_DOUBLE 1" >>confdefs.h + + fi + fi + fi +fi + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether byte ordering is bigendian" >&5 +$as_echo_n "checking whether byte ordering is bigendian... " >&6; } +if ${ac_cv_c_bigendian+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_cv_c_bigendian=unknown + # See if we're dealing with a universal compiler. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#ifndef __APPLE_CC__ + not a universal capable compiler + #endif + typedef int dummy; + +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + + # Check for potential -arch flags. It is not universal unless + # there are at least two -arch flags with different values. + ac_arch= + ac_prev= + for ac_word in $CC $CFLAGS $CPPFLAGS $LDFLAGS; do + if test -n "$ac_prev"; then + case $ac_word in + i?86 | x86_64 | ppc | ppc64) + if test -z "$ac_arch" || test "$ac_arch" = "$ac_word"; then + ac_arch=$ac_word + else + ac_cv_c_bigendian=universal + break + fi + ;; + esac + ac_prev= + elif test "x$ac_word" = "x-arch"; then + ac_prev=arch + fi + done +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + if test $ac_cv_c_bigendian = unknown; then + # See if sys/param.h defines the BYTE_ORDER macro. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + #include + +int +main () +{ +#if ! (defined BYTE_ORDER && defined BIG_ENDIAN \ + && defined LITTLE_ENDIAN && BYTE_ORDER && BIG_ENDIAN \ + && LITTLE_ENDIAN) + bogus endian macros + #endif + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + # It does; now see whether it defined to BIG_ENDIAN or not. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + #include + +int +main () +{ +#if BYTE_ORDER != BIG_ENDIAN + not big endian + #endif + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_cv_c_bigendian=yes +else + ac_cv_c_bigendian=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + fi + if test $ac_cv_c_bigendian = unknown; then + # See if defines _LITTLE_ENDIAN or _BIG_ENDIAN (e.g., Solaris). + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + +int +main () +{ +#if ! (defined _LITTLE_ENDIAN || defined _BIG_ENDIAN) + bogus endian macros + #endif + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + # It does; now see whether it defined to _BIG_ENDIAN or not. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include + +int +main () +{ +#ifndef _BIG_ENDIAN + not big endian + #endif + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_cv_c_bigendian=yes +else + ac_cv_c_bigendian=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + fi + if test $ac_cv_c_bigendian = unknown; then + # Compile a test program. + if test "$cross_compiling" = yes; then : + # Try to guess by grepping values from an object file. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +short int ascii_mm[] = + { 0x4249, 0x4765, 0x6E44, 0x6961, 0x6E53, 0x7953, 0 }; + short int ascii_ii[] = + { 0x694C, 0x5454, 0x656C, 0x6E45, 0x6944, 0x6E61, 0 }; + int use_ascii (int i) { + return ascii_mm[i] + ascii_ii[i]; + } + short int ebcdic_ii[] = + { 0x89D3, 0xE3E3, 0x8593, 0x95C5, 0x89C4, 0x9581, 0 }; + short int ebcdic_mm[] = + { 0xC2C9, 0xC785, 0x95C4, 0x8981, 0x95E2, 0xA8E2, 0 }; + int use_ebcdic (int i) { + return ebcdic_mm[i] + ebcdic_ii[i]; + } + extern int foo; + +int +main () +{ +return use_ascii (foo) == use_ebcdic (foo); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + if grep BIGenDianSyS conftest.$ac_objext >/dev/null; then + ac_cv_c_bigendian=yes + fi + if grep LiTTleEnDian conftest.$ac_objext >/dev/null ; then + if test "$ac_cv_c_bigendian" = unknown; then + ac_cv_c_bigendian=no + else + # finding both strings is unlikely to happen, but who knows? + ac_cv_c_bigendian=unknown + fi + fi +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ + + /* Are we little or big endian? From Harbison&Steele. */ + union + { + long int l; + char c[sizeof (long int)]; + } u; + u.l = 1; + return u.c[sizeof (long int) - 1] == 1; + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + ac_cv_c_bigendian=no +else + ac_cv_c_bigendian=yes +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext +fi + + fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_bigendian" >&5 +$as_echo "$ac_cv_c_bigendian" >&6; } + case $ac_cv_c_bigendian in #( + yes) + $as_echo "#define WORDS_BIGENDIAN 1" >>confdefs.h +;; #( + no) + ;; #( + universal) + +$as_echo "#define AC_APPLE_UNIVERSAL_BUILD 1" >>confdefs.h + + ;; #( + *) + as_fn_error $? "unknown endianness + presetting ac_cv_c_bigendian=no (or yes) will help" "$LINENO" 5 ;; + esac + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking assembler .cfi pseudo-op support" >&5 +$as_echo_n "checking assembler .cfi pseudo-op support... " >&6; } +if ${gcc_cv_as_cfi_pseudo_op+:} false; then : + $as_echo_n "(cached) " >&6 +else + + gcc_cv_as_cfi_pseudo_op=unknown + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +asm (".cfi_startproc\n\t.cfi_endproc"); +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + gcc_cv_as_cfi_pseudo_op=yes +else + gcc_cv_as_cfi_pseudo_op=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gcc_cv_as_cfi_pseudo_op" >&5 +$as_echo "$gcc_cv_as_cfi_pseudo_op" >&6; } + if test "x$gcc_cv_as_cfi_pseudo_op" = xyes; then + +$as_echo "#define HAVE_AS_CFI_PSEUDO_OP 1" >>confdefs.h + + fi + + +case "$TARGET" in + SPARC) + { $as_echo "$as_me:${as_lineno-$LINENO}: checking assembler and linker support unaligned pc related relocs" >&5 +$as_echo_n "checking assembler and linker support unaligned pc related relocs... " >&6; } +if ${libffi_cv_as_sparc_ua_pcrel+:} false; then : + $as_echo_n "(cached) " >&6 +else + + save_CFLAGS="$CFLAGS" + save_LDFLAGS="$LDFLAGS" + CFLAGS="$CFLAGS -fpic" + LDFLAGS="$LDFLAGS -shared" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +asm (".text; foo: nop; .data; .align 4; .byte 0; .uaword %r_disp32(foo); .text"); +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + libffi_cv_as_sparc_ua_pcrel=yes +else + libffi_cv_as_sparc_ua_pcrel=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + CFLAGS="$save_CFLAGS" + LDFLAGS="$save_LDFLAGS" +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libffi_cv_as_sparc_ua_pcrel" >&5 +$as_echo "$libffi_cv_as_sparc_ua_pcrel" >&6; } + if test "x$libffi_cv_as_sparc_ua_pcrel" = xyes; then + +$as_echo "#define HAVE_AS_SPARC_UA_PCREL 1" >>confdefs.h + + fi + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking assembler .register pseudo-op support" >&5 +$as_echo_n "checking assembler .register pseudo-op support... " >&6; } +if ${libffi_cv_as_register_pseudo_op+:} false; then : + $as_echo_n "(cached) " >&6 +else + + libffi_cv_as_register_pseudo_op=unknown + # Check if we have .register + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ +asm (".register %g2, #scratch"); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + libffi_cv_as_register_pseudo_op=yes +else + libffi_cv_as_register_pseudo_op=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libffi_cv_as_register_pseudo_op" >&5 +$as_echo "$libffi_cv_as_register_pseudo_op" >&6; } + if test "x$libffi_cv_as_register_pseudo_op" = xyes; then + +$as_echo "#define HAVE_AS_REGISTER_PSEUDO_OP 1" >>confdefs.h + + fi + ;; + + X86*) + { $as_echo "$as_me:${as_lineno-$LINENO}: checking assembler supports pc related relocs" >&5 +$as_echo_n "checking assembler supports pc related relocs... " >&6; } +if ${libffi_cv_as_x86_pcrel+:} false; then : + $as_echo_n "(cached) " >&6 +else + + libffi_cv_as_x86_pcrel=no + echo '.text; foo: nop; .data; .long foo-.; .text' > conftest.s + if $CC $CFLAGS -c conftest.s > /dev/null 2>&1; then + libffi_cv_as_x86_pcrel=yes + fi + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libffi_cv_as_x86_pcrel" >&5 +$as_echo "$libffi_cv_as_x86_pcrel" >&6; } + if test "x$libffi_cv_as_x86_pcrel" = xyes; then + +$as_echo "#define HAVE_AS_X86_PCREL 1" >>confdefs.h + + fi + ;; + + S390) + { $as_echo "$as_me:${as_lineno-$LINENO}: checking compiler uses zarch features" >&5 +$as_echo_n "checking compiler uses zarch features... " >&6; } +if ${libffi_cv_as_s390_zarch+:} false; then : + $as_echo_n "(cached) " >&6 +else + + libffi_cv_as_s390_zarch=no + echo 'void foo(void) { bar(); bar(); }' > conftest.c + if $CC $CFLAGS -S conftest.c > /dev/null 2>&1; then + if grep -q brasl conftest.s; then + libffi_cv_as_s390_zarch=yes + fi + fi + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libffi_cv_as_s390_zarch" >&5 +$as_echo "$libffi_cv_as_s390_zarch" >&6; } + if test "x$libffi_cv_as_s390_zarch" = xyes; then + +$as_echo "#define HAVE_AS_S390_ZARCH 1" >>confdefs.h + + fi + ;; +esac + +# On PaX enable kernels that have MPROTECT enable we can't use PROT_EXEC. +# Check whether --enable-pax_emutramp was given. +if test "${enable_pax_emutramp+set}" = set; then : + enableval=$enable_pax_emutramp; if test "$enable_pax_emutramp" = "yes"; then + +$as_echo "#define FFI_MMAP_EXEC_EMUTRAMP_PAX 1" >>confdefs.h + + fi +fi + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for _ prefix in compiled symbols" >&5 +$as_echo_n "checking for _ prefix in compiled symbols... " >&6; } +if ${lt_cv_sys_symbol_underscore+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_sys_symbol_underscore=no + cat > conftest.$ac_ext <<_LT_EOF +void nm_test_func(){} +int main(){nm_test_func;return 0;} +_LT_EOF + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 + (eval $ac_compile) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + # Now try to grab the symbols. + ac_nlist=conftest.nm + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $ac_nlist\""; } >&5 + (eval $NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $ac_nlist) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && test -s "$ac_nlist"; then + # See whether the symbols have a leading underscore. + if grep '^. _nm_test_func' "$ac_nlist" >/dev/null; then + lt_cv_sys_symbol_underscore=yes + else + if grep '^. nm_test_func ' "$ac_nlist" >/dev/null; then + : + else + echo "configure: cannot find nm_test_func in $ac_nlist" >&5 + fi + fi + else + echo "configure: cannot run $lt_cv_sys_global_symbol_pipe" >&5 + fi + else + echo "configure: failed program was:" >&5 + cat conftest.c >&5 + fi + rm -rf conftest* + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sys_symbol_underscore" >&5 +$as_echo "$lt_cv_sys_symbol_underscore" >&6; } + sys_symbol_underscore=$lt_cv_sys_symbol_underscore + + +if test "x$sys_symbol_underscore" = xyes; then + +$as_echo "#define SYMBOL_UNDERSCORE 1" >>confdefs.h + +fi + +FFI_EXEC_TRAMPOLINE_TABLE=0 +case "$target" in + *arm*-apple-* | aarch64-apple-*) + FFI_EXEC_TRAMPOLINE_TABLE=1 + +$as_echo "#define FFI_EXEC_TRAMPOLINE_TABLE 1" >>confdefs.h + + ;; + *-apple-* | *-*-freebsd* | *-*-kfreebsd* | *-*-openbsd* | *-pc-solaris* | *-linux-android*) + +$as_echo "#define FFI_MMAP_EXEC_WRIT 1" >>confdefs.h + + ;; +esac + if test x$FFI_EXEC_TRAMPOLINE_TABLE = x1; then + FFI_EXEC_TRAMPOLINE_TABLE_TRUE= + FFI_EXEC_TRAMPOLINE_TABLE_FALSE='#' +else + FFI_EXEC_TRAMPOLINE_TABLE_TRUE='#' + FFI_EXEC_TRAMPOLINE_TABLE_FALSE= +fi + + + +if test x$TARGET = xX86_64; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking toolchain supports unwind section type" >&5 +$as_echo_n "checking toolchain supports unwind section type... " >&6; } +if ${libffi_cv_as_x86_64_unwind_section_type+:} false; then : + $as_echo_n "(cached) " >&6 +else + + cat > conftest1.s << EOF +.text +.globl foo +foo: +jmp bar +.section .eh_frame,"a",@unwind +bar: +EOF + + cat > conftest2.c << EOF +extern void foo(); +int main(){foo();} +EOF + + libffi_cv_as_x86_64_unwind_section_type=no + # we ensure that we can compile _and_ link an assembly file containing an @unwind section + # since the compiler can support it and not the linker (ie old binutils) + if $CC -Wa,--fatal-warnings $CFLAGS -c conftest1.s > /dev/null 2>&1 && \ + $CC conftest2.c conftest1.o > /dev/null 2>&1 ; then + libffi_cv_as_x86_64_unwind_section_type=yes + fi + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libffi_cv_as_x86_64_unwind_section_type" >&5 +$as_echo "$libffi_cv_as_x86_64_unwind_section_type" >&6; } + if test "x$libffi_cv_as_x86_64_unwind_section_type" = xyes; then + +$as_echo "#define HAVE_AS_X86_64_UNWIND_SECTION_TYPE 1" >>confdefs.h + + fi +fi + +if test "x$GCC" = "xyes"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether .eh_frame section should be read-only" >&5 +$as_echo_n "checking whether .eh_frame section should be read-only... " >&6; } +if ${libffi_cv_ro_eh_frame+:} false; then : + $as_echo_n "(cached) " >&6 +else + + libffi_cv_ro_eh_frame=no + echo 'extern void foo (void); void bar (void) { foo (); foo (); }' > conftest.c + if $CC $CFLAGS -c -fpic -fexceptions -o conftest.o conftest.c > /dev/null 2>&1; then + objdump -h conftest.o > conftest.dump 2>&1 + libffi_eh_frame_line=`grep -n eh_frame conftest.dump | cut -d: -f 1` + if test "x$libffi_eh_frame_line" != "x"; then + libffi_test_line=`expr $libffi_eh_frame_line + 1`p + sed -n $libffi_test_line conftest.dump > conftest.line + if grep READONLY conftest.line > /dev/null; then + libffi_cv_ro_eh_frame=yes + fi + fi + fi + rm -f conftest.* + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libffi_cv_ro_eh_frame" >&5 +$as_echo "$libffi_cv_ro_eh_frame" >&6; } + if test "x$libffi_cv_ro_eh_frame" = xyes; then + +$as_echo "#define HAVE_RO_EH_FRAME 1" >>confdefs.h + + +$as_echo "#define EH_FRAME_FLAGS \"a\"" >>confdefs.h + + else + +$as_echo "#define EH_FRAME_FLAGS \"aw\"" >>confdefs.h + + fi + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for __attribute__((visibility(\"hidden\")))" >&5 +$as_echo_n "checking for __attribute__((visibility(\"hidden\")))... " >&6; } +if ${libffi_cv_hidden_visibility_attribute+:} false; then : + $as_echo_n "(cached) " >&6 +else + + echo 'int __attribute__ ((visibility ("hidden"))) foo (void) { return 1 ; }' > conftest.c + libffi_cv_hidden_visibility_attribute=no + if { ac_try='${CC-cc} -Werror -S conftest.c -o conftest.s 1>&5' + { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5 + (eval $ac_try) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; }; then + if grep '\.hidden.*foo' conftest.s >/dev/null; then + libffi_cv_hidden_visibility_attribute=yes + fi + fi + rm -f conftest.* + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $libffi_cv_hidden_visibility_attribute" >&5 +$as_echo "$libffi_cv_hidden_visibility_attribute" >&6; } + if test $libffi_cv_hidden_visibility_attribute = yes; then + +$as_echo "#define HAVE_HIDDEN_VISIBILITY_ATTRIBUTE 1" >>confdefs.h + + fi +fi + +# Check whether --enable-docs was given. +if test "${enable_docs+set}" = set; then : + enableval=$enable_docs; enable_docs=no +else + enable_docs=yes +fi + + if test x$enable_docs = xyes; then + BUILD_DOCS_TRUE= + BUILD_DOCS_FALSE='#' +else + BUILD_DOCS_TRUE='#' + BUILD_DOCS_FALSE= +fi + + + + + + + + +TARGET_OBJ= +for i in $SOURCES; do + TARGET_OBJ="${TARGET_OBJ} src/${TARGETDIR}/"`echo $i | sed 's/[cS]$/lo/'` +done + + + + + +# Check whether --enable-debug was given. +if test "${enable_debug+set}" = set; then : + enableval=$enable_debug; if test "$enable_debug" = "yes"; then + +$as_echo "#define FFI_DEBUG 1" >>confdefs.h + + fi +fi + + if test "$enable_debug" = "yes"; then + FFI_DEBUG_TRUE= + FFI_DEBUG_FALSE='#' +else + FFI_DEBUG_TRUE='#' + FFI_DEBUG_FALSE= +fi + + +# Check whether --enable-structs was given. +if test "${enable_structs+set}" = set; then : + enableval=$enable_structs; if test "$enable_structs" = "no"; then + +$as_echo "#define FFI_NO_STRUCTS 1" >>confdefs.h + + fi +fi + + if test "$enable_debug" = "yes"; then + FFI_DEBUG_TRUE= + FFI_DEBUG_FALSE='#' +else + FFI_DEBUG_TRUE='#' + FFI_DEBUG_FALSE= +fi + + +# Check whether --enable-raw-api was given. +if test "${enable_raw_api+set}" = set; then : + enableval=$enable_raw_api; if test "$enable_raw_api" = "no"; then + +$as_echo "#define FFI_NO_RAW_API 1" >>confdefs.h + + fi +fi + + +# Check whether --enable-purify-safety was given. +if test "${enable_purify_safety+set}" = set; then : + enableval=$enable_purify_safety; if test "$enable_purify_safety" = "yes"; then + +$as_echo "#define USING_PURIFY 1" >>confdefs.h + + fi +fi + + +# Check whether --enable-multi-os-directory was given. +if test "${enable_multi_os_directory+set}" = set; then : + enableval=$enable_multi_os_directory; +fi + + +# These variables are only ever used when we cross-build to X86_WIN32. +# And we only support this with GCC, so... +if test "x$GCC" = "xyes"; then + if test -n "$with_cross_host" && + test x"$with_cross_host" != x"no"; then + toolexecdir="${exec_prefix}"/'$(target_alias)' + toolexeclibdir="${toolexecdir}"/lib + else + toolexecdir="${libdir}"/gcc-lib/'$(target_alias)' + toolexeclibdir="${libdir}" + fi + if test x"$enable_multi_os_directory" != x"no"; then + multi_os_directory=`$CC $CFLAGS -print-multi-os-directory` + case $multi_os_directory in + .) ;; # Avoid trailing /. + ../*) toolexeclibdir=$toolexeclibdir/$multi_os_directory ;; + esac + fi + +else + toolexeclibdir="${libdir}" +fi + + +# Check linker support. + + +# Check whether --with-gnu-ld was given. +if test "${with_gnu_ld+set}" = set; then : + withval=$with_gnu_ld; test no = "$withval" || with_gnu_ld=yes +else + with_gnu_ld=no +fi + +ac_prog=ld +if test yes = "$GCC"; then + # Check if gcc -print-prog-name=ld gives a path. + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld used by $CC" >&5 +$as_echo_n "checking for ld used by $CC... " >&6; } + case $host in + *-*-mingw*) + # gcc leaves a trailing carriage return, which upsets mingw + ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; + *) + ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; + esac + case $ac_prog in + # Accept absolute paths. + [\\/]* | ?:[\\/]*) + re_direlt='/[^/][^/]*/\.\./' + # Canonicalize the pathname of ld + ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'` + while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do + ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"` + done + test -z "$LD" && LD=$ac_prog + ;; + "") + # If it fails, then pretend we aren't using GCC. + ac_prog=ld + ;; + *) + # If it is relative, then search for the first ld in PATH. + with_gnu_ld=unknown + ;; + esac +elif test yes = "$with_gnu_ld"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5 +$as_echo_n "checking for GNU ld... " >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5 +$as_echo_n "checking for non-GNU ld... " >&6; } +fi +if ${lt_cv_path_LD+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -z "$LD"; then + lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR + for ac_dir in $PATH; do + IFS=$lt_save_ifs + test -z "$ac_dir" && ac_dir=. + if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then + lt_cv_path_LD=$ac_dir/$ac_prog + # Check to see if the program is GNU ld. I'd rather use --version, + # but apparently some variants of GNU ld only accept -v. + # Break only if it was the GNU/non-GNU ld that we prefer. + case `"$lt_cv_path_LD" -v 2>&1 &5 +$as_echo "$LD" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi +test -z "$LD" && as_fn_error $? "no acceptable ld found in \$PATH" "$LINENO" 5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5 +$as_echo_n "checking if the linker ($LD) is GNU ld... " >&6; } +if ${lt_cv_prog_gnu_ld+:} false; then : + $as_echo_n "(cached) " >&6 +else + # I'd rather use --version here, but apparently some GNU lds only accept -v. +case `$LD -v 2>&1 &5 +$as_echo "$lt_cv_prog_gnu_ld" >&6; } +with_gnu_ld=$lt_cv_prog_gnu_ld + + + + + + + + # If we're not using GNU ld, then there's no point in even trying these + # tests. Check for that first. We should have already tested for gld + # by now (in libtool), but require it now just to be safe... + test -z "$SECTION_LDFLAGS" && SECTION_LDFLAGS='' + test -z "$OPT_LDFLAGS" && OPT_LDFLAGS='' + + + + # The name set by libtool depends on the version of libtool. Shame on us + # for depending on an impl detail, but c'est la vie. Older versions used + # ac_cv_prog_gnu_ld, but now it's lt_cv_prog_gnu_ld, and is copied back on + # top of with_gnu_ld (which is also set by --with-gnu-ld, so that actually + # makes sense). We'll test with_gnu_ld everywhere else, so if that isn't + # set (hence we're using an older libtool), then set it. + if test x${with_gnu_ld+set} != xset; then + if test x${ac_cv_prog_gnu_ld+set} != xset; then + # We got through "ac_require(ac_prog_ld)" and still not set? Huh? + with_gnu_ld=no + else + with_gnu_ld=$ac_cv_prog_gnu_ld + fi + fi + + # Start by getting the version number. I think the libtool test already + # does some of this, but throws away the result. + libat_ld_is_gold=no + if $LD --version 2>/dev/null | grep 'GNU gold'> /dev/null 2>&1; then + libat_ld_is_gold=yes + fi + libat_ld_is_lld=no + if $LD --version 2>/dev/null | grep 'LLD '> /dev/null 2>&1; then + libat_ld_is_lld=yes + fi + + ldver=`$LD --version 2>/dev/null | + sed -e 's/GNU gold /GNU ld /;s/GNU ld version /GNU ld /;s/GNU ld ([^)]*) /GNU ld /;s/GNU ld \([0-9.][0-9.]*\).*/\1/; q'` + + libat_gnu_ld_version=`echo $ldver | \ + $AWK -F. '{ if (NF<3) $3=0; print ($1*100+$2)*100+$3 }'` + + # Set --gc-sections. + if test "$with_gnu_ld" = "notbroken"; then + # GNU ld it is! Joy and bunny rabbits! + + # All these tests are for C++; save the language and the compiler flags. + # Need to do this so that g++ won't try to link in libstdc++ + ac_test_CFLAGS="${CFLAGS+set}" + ac_save_CFLAGS="$CFLAGS" + CFLAGS='-x c++ -Wl,--gc-sections' + + # Check for -Wl,--gc-sections + # XXX This test is broken at the moment, as symbols required for linking + # are now in libsupc++ (not built yet). In addition, this test has + # cored on solaris in the past. In addition, --gc-sections doesn't + # really work at the moment (keeps on discarding used sections, first + # .eh_frame and now some of the glibc sections for iconv). + # Bzzzzt. Thanks for playing, maybe next time. + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld that supports -Wl,--gc-sections" >&5 +$as_echo_n "checking for ld that supports -Wl,--gc-sections... " >&6; } + if test "$cross_compiling" = yes; then : + ac_sectionLDflags=yes +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + + int main(void) + { + try { throw 1; } + catch (...) { }; + return 0; + } + +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + ac_sectionLDflags=yes +else + ac_sectionLDflags=no +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext +fi + + if test "$ac_test_CFLAGS" = set; then + CFLAGS="$ac_save_CFLAGS" + else + # this is the suspicious part + CFLAGS='' + fi + if test "$ac_sectionLDflags" = "yes"; then + SECTION_LDFLAGS="-Wl,--gc-sections $SECTION_LDFLAGS" + fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_sectionLDflags" >&5 +$as_echo "$ac_sectionLDflags" >&6; } + fi + + # Set linker optimization flags. + if test x"$with_gnu_ld" = x"yes"; then + OPT_LDFLAGS="-Wl,-O1 $OPT_LDFLAGS" + fi + + + + + + + # Check whether --enable-symvers was given. +if test "${enable_symvers+set}" = set; then : + enableval=$enable_symvers; + case "$enableval" in + yes|no|gnu*|sun) ;; + *) as_fn_error $? "Unknown argument to enable/disable symvers" "$LINENO" 5 ;; + esac + +else + enable_symvers=yes +fi + + + +# If we never went through the LIBFFI_CHECK_LINKER_FEATURES macro, then we +# don't know enough about $LD to do tricks... + + +# Turn a 'yes' into a suitable default. +if test x$enable_symvers = xyes ; then + # FIXME The following test is too strict, in theory. + if test $enable_shared = no || test "x$LD" = x; then + enable_symvers=no + else + if test $with_gnu_ld = yes ; then + enable_symvers=gnu + else + case ${target_os} in + # Sun symbol versioning exists since Solaris 2.5. + solaris2.[5-9]* | solaris2.1[0-9]*) + enable_symvers=sun ;; + *) + enable_symvers=no ;; + esac + fi + fi +fi + +# Check if 'sun' was requested on non-Solaris 2 platforms. +if test x$enable_symvers = xsun ; then + case ${target_os} in + solaris2*) + # All fine. + ;; + *) + # Unlikely to work. + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: === You have requested Sun symbol versioning, but" >&5 +$as_echo "$as_me: WARNING: === You have requested Sun symbol versioning, but" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: === you are not targetting Solaris 2." >&5 +$as_echo "$as_me: WARNING: === you are not targetting Solaris 2." >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: === Symbol versioning will be disabled." >&5 +$as_echo "$as_me: WARNING: === Symbol versioning will be disabled." >&2;} + enable_symvers=no + ;; + esac +fi + +# Check to see if libgcc_s exists, indicating that shared libgcc is possible. +if test $enable_symvers != no; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for shared libgcc" >&5 +$as_echo_n "checking for shared libgcc... " >&6; } + ac_save_CFLAGS="$CFLAGS" + CFLAGS=' -lgcc_s' + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ +return 0; + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + libat_shared_libgcc=yes +else + libat_shared_libgcc=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + CFLAGS="$ac_save_CFLAGS" + if test $libat_shared_libgcc = no; then + cat > conftest.c <&1 >/dev/null \ + | sed -n 's/^.* -lgcc_s\([^ ]*\) .*$/\1/p'` + rm -f conftest.c conftest.so + if test x${libat_libgcc_s_suffix+set} = xset; then + CFLAGS=" -lgcc_s$libat_libgcc_s_suffix" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ +return 0; + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + libat_shared_libgcc=yes +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + CFLAGS="$ac_save_CFLAGS" + fi + fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $libat_shared_libgcc" >&5 +$as_echo "$libat_shared_libgcc" >&6; } +fi + +# For GNU ld, we need at least this version. The format is described in +# LIBFFI_CHECK_LINKER_FEATURES above. +libat_min_gnu_ld_version=21400 +# XXXXXXXXXXX libat_gnu_ld_version=21390 + +# Check to see if unspecified "yes" value can win, given results above. +# Change "yes" into either "no" or a style name. +if test $enable_symvers != no && test $libat_shared_libgcc = yes; then + if test $with_gnu_ld = yes; then + if test $libat_gnu_ld_version -ge $libat_min_gnu_ld_version ; then + enable_symvers=gnu + elif test $libat_ld_is_gold = yes ; then + enable_symvers=gnu + elif test $libat_ld_is_lld = yes ; then + enable_symvers=gnu + else + # The right tools, the right setup, but too old. Fallbacks? + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: === Linker version $libat_gnu_ld_version is too old for" >&5 +$as_echo "$as_me: WARNING: === Linker version $libat_gnu_ld_version is too old for" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: === full symbol versioning support in this release of GCC." >&5 +$as_echo "$as_me: WARNING: === full symbol versioning support in this release of GCC." >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: === You would need to upgrade your binutils to version" >&5 +$as_echo "$as_me: WARNING: === You would need to upgrade your binutils to version" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: === $libat_min_gnu_ld_version or later and rebuild GCC." >&5 +$as_echo "$as_me: WARNING: === $libat_min_gnu_ld_version or later and rebuild GCC." >&2;} + if test $libat_gnu_ld_version -ge 21200 ; then + # Globbing fix is present, proper block support is not. + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: === Symbol versioning will be disabled." >&5 +$as_echo "$as_me: WARNING: === Symbol versioning will be disabled." >&2;} + enable_symvers=no + else + # 2.11 or older. + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: === Symbol versioning will be disabled." >&5 +$as_echo "$as_me: WARNING: === Symbol versioning will be disabled." >&2;} + enable_symvers=no + fi + fi + elif test $enable_symvers = sun; then + : All interesting versions of Sun ld support sun style symbol versioning. + else + # just fail for now + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: === You have requested some kind of symbol versioning, but" >&5 +$as_echo "$as_me: WARNING: === You have requested some kind of symbol versioning, but" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: === either you are not using a supported linker, or you are" >&5 +$as_echo "$as_me: WARNING: === either you are not using a supported linker, or you are" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: === not building a shared libgcc_s (which is required)." >&5 +$as_echo "$as_me: WARNING: === not building a shared libgcc_s (which is required)." >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: === Symbol versioning will be disabled." >&5 +$as_echo "$as_me: WARNING: === Symbol versioning will be disabled." >&2;} + enable_symvers=no + fi +fi +if test $enable_symvers = gnu; then + +$as_echo "#define LIBFFI_GNU_SYMBOL_VERSIONING 1" >>confdefs.h + +fi + + if test $enable_symvers != no; then + LIBFFI_BUILD_VERSIONED_SHLIB_TRUE= + LIBFFI_BUILD_VERSIONED_SHLIB_FALSE='#' +else + LIBFFI_BUILD_VERSIONED_SHLIB_TRUE='#' + LIBFFI_BUILD_VERSIONED_SHLIB_FALSE= +fi + + if test $enable_symvers = gnu; then + LIBFFI_BUILD_VERSIONED_SHLIB_GNU_TRUE= + LIBFFI_BUILD_VERSIONED_SHLIB_GNU_FALSE='#' +else + LIBFFI_BUILD_VERSIONED_SHLIB_GNU_TRUE='#' + LIBFFI_BUILD_VERSIONED_SHLIB_GNU_FALSE= +fi + + if test $enable_symvers = sun; then + LIBFFI_BUILD_VERSIONED_SHLIB_SUN_TRUE= + LIBFFI_BUILD_VERSIONED_SHLIB_SUN_FALSE='#' +else + LIBFFI_BUILD_VERSIONED_SHLIB_SUN_TRUE='#' + LIBFFI_BUILD_VERSIONED_SHLIB_SUN_FALSE= +fi + +{ $as_echo "$as_me:${as_lineno-$LINENO}: versioning on shared library symbols is $enable_symvers" >&5 +$as_echo "$as_me: versioning on shared library symbols is $enable_symvers" >&6;} + + +ac_config_commands="$ac_config_commands include" + +ac_config_commands="$ac_config_commands src" + + +ac_config_links="$ac_config_links include/ffitarget.h:src/$TARGETDIR/ffitarget.h" + + +ac_config_files="$ac_config_files include/Makefile include/ffi.h Makefile testsuite/Makefile man/Makefile doc/Makefile libffi.pc" + + +cat >confcache <<\_ACEOF +# This file is a shell script that caches the results of configure +# tests run on this system so they can be shared between configure +# scripts and configure runs, see configure's option --config-cache. +# It is not useful on other systems. If it contains results you don't +# want to keep, you may remove or edit it. +# +# config.status only pays attention to the cache file if you give it +# the --recheck option to rerun configure. +# +# `ac_cv_env_foo' variables (set or unset) will be overridden when +# loading this file, other *unset* `ac_cv_foo' will be assigned the +# following values. + +_ACEOF + +# The following way of writing the cache mishandles newlines in values, +# but we know of no workaround that is simple, portable, and efficient. +# So, we kill variables containing newlines. +# Ultrix sh set writes to stderr and can't be redirected directly, +# and sets the high bit in the cache file unless we assign to the vars. +( + for ac_var in `(set) 2>&1 | sed -n 's/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'`; do + eval ac_val=\$$ac_var + case $ac_val in #( + *${as_nl}*) + case $ac_var in #( + *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5 +$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;; + esac + case $ac_var in #( + _ | IFS | as_nl) ;; #( + BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #( + *) { eval $ac_var=; unset $ac_var;} ;; + esac ;; + esac + done + + (set) 2>&1 | + case $as_nl`(ac_space=' '; set) 2>&1` in #( + *${as_nl}ac_space=\ *) + # `set' does not quote correctly, so add quotes: double-quote + # substitution turns \\\\ into \\, and sed turns \\ into \. + sed -n \ + "s/'/'\\\\''/g; + s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p" + ;; #( + *) + # `set' quotes correctly as required by POSIX, so do not add quotes. + sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p" + ;; + esac | + sort +) | + sed ' + /^ac_cv_env_/b end + t clear + :clear + s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/ + t end + s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/ + :end' >>confcache +if diff "$cache_file" confcache >/dev/null 2>&1; then :; else + if test -w "$cache_file"; then + if test "x$cache_file" != "x/dev/null"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5 +$as_echo "$as_me: updating cache $cache_file" >&6;} + if test ! -f "$cache_file" || test -h "$cache_file"; then + cat confcache >"$cache_file" + else + case $cache_file in #( + */* | ?:*) + mv -f confcache "$cache_file"$$ && + mv -f "$cache_file"$$ "$cache_file" ;; #( + *) + mv -f confcache "$cache_file" ;; + esac + fi + fi + else + { $as_echo "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5 +$as_echo "$as_me: not updating unwritable cache $cache_file" >&6;} + fi +fi +rm -f confcache + +test "x$prefix" = xNONE && prefix=$ac_default_prefix +# Let make expand exec_prefix. +test "x$exec_prefix" = xNONE && exec_prefix='${prefix}' + +DEFS=-DHAVE_CONFIG_H + +ac_libobjs= +ac_ltlibobjs= +U= +for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue + # 1. Remove the extension, and $U if already installed. + ac_script='s/\$U\././;s/\.o$//;s/\.obj$//' + ac_i=`$as_echo "$ac_i" | sed "$ac_script"` + # 2. Prepend LIBOBJDIR. When used with automake>=1.10 LIBOBJDIR + # will be set to the directory where LIBOBJS objects are built. + as_fn_append ac_libobjs " \${LIBOBJDIR}$ac_i\$U.$ac_objext" + as_fn_append ac_ltlibobjs " \${LIBOBJDIR}$ac_i"'$U.lo' +done +LIBOBJS=$ac_libobjs + +LTLIBOBJS=$ac_ltlibobjs + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking that generated files are newer than configure" >&5 +$as_echo_n "checking that generated files are newer than configure... " >&6; } + if test -n "$am_sleep_pid"; then + # Hide warnings about reused PIDs. + wait $am_sleep_pid 2>/dev/null + fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: done" >&5 +$as_echo "done" >&6; } + if test -n "$EXEEXT"; then + am__EXEEXT_TRUE= + am__EXEEXT_FALSE='#' +else + am__EXEEXT_TRUE='#' + am__EXEEXT_FALSE= +fi + +if test -z "${AMDEP_TRUE}" && test -z "${AMDEP_FALSE}"; then + as_fn_error $? "conditional \"AMDEP\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then + as_fn_error $? "conditional \"am__fastdepCC\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${am__fastdepCXX_TRUE}" && test -z "${am__fastdepCXX_FALSE}"; then + as_fn_error $? "conditional \"am__fastdepCXX\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${am__fastdepCCAS_TRUE}" && test -z "${am__fastdepCCAS_FALSE}"; then + as_fn_error $? "conditional \"am__fastdepCCAS\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${MAINTAINER_MODE_TRUE}" && test -z "${MAINTAINER_MODE_FALSE}"; then + as_fn_error $? "conditional \"MAINTAINER_MODE\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${TESTSUBDIR_TRUE}" && test -z "${TESTSUBDIR_FALSE}"; then + as_fn_error $? "conditional \"TESTSUBDIR\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi + +if test -z "${FFI_EXEC_TRAMPOLINE_TABLE_TRUE}" && test -z "${FFI_EXEC_TRAMPOLINE_TABLE_FALSE}"; then + as_fn_error $? "conditional \"FFI_EXEC_TRAMPOLINE_TABLE\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${BUILD_DOCS_TRUE}" && test -z "${BUILD_DOCS_FALSE}"; then + as_fn_error $? "conditional \"BUILD_DOCS\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${FFI_DEBUG_TRUE}" && test -z "${FFI_DEBUG_FALSE}"; then + as_fn_error $? "conditional \"FFI_DEBUG\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${FFI_DEBUG_TRUE}" && test -z "${FFI_DEBUG_FALSE}"; then + as_fn_error $? "conditional \"FFI_DEBUG\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${LIBFFI_BUILD_VERSIONED_SHLIB_TRUE}" && test -z "${LIBFFI_BUILD_VERSIONED_SHLIB_FALSE}"; then + as_fn_error $? "conditional \"LIBFFI_BUILD_VERSIONED_SHLIB\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${LIBFFI_BUILD_VERSIONED_SHLIB_GNU_TRUE}" && test -z "${LIBFFI_BUILD_VERSIONED_SHLIB_GNU_FALSE}"; then + as_fn_error $? "conditional \"LIBFFI_BUILD_VERSIONED_SHLIB_GNU\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${LIBFFI_BUILD_VERSIONED_SHLIB_SUN_TRUE}" && test -z "${LIBFFI_BUILD_VERSIONED_SHLIB_SUN_FALSE}"; then + as_fn_error $? "conditional \"LIBFFI_BUILD_VERSIONED_SHLIB_SUN\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi + +: "${CONFIG_STATUS=./config.status}" +ac_write_fail=0 +ac_clean_files_save=$ac_clean_files +ac_clean_files="$ac_clean_files $CONFIG_STATUS" +{ $as_echo "$as_me:${as_lineno-$LINENO}: creating $CONFIG_STATUS" >&5 +$as_echo "$as_me: creating $CONFIG_STATUS" >&6;} +as_write_fail=0 +cat >$CONFIG_STATUS <<_ASEOF || as_write_fail=1 +#! $SHELL +# Generated by $as_me. +# Run this file to recreate the current configuration. +# Compiler output produced by configure, useful for debugging +# configure, is in config.log if it exists. + +debug=false +ac_cs_recheck=false +ac_cs_silent=false + +SHELL=\${CONFIG_SHELL-$SHELL} +export SHELL +_ASEOF +cat >>$CONFIG_STATUS <<\_ASEOF || as_write_fail=1 +## -------------------- ## +## M4sh Initialization. ## +## -------------------- ## + +# Be more Bourne compatible +DUALCASE=1; export DUALCASE # for MKS sh +if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then : + emulate sh + NULLCMD=: + # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which + # is contrary to our usage. Disable this feature. + alias -g '${1+"$@"}'='"$@"' + setopt NO_GLOB_SUBST +else + case `(set -o) 2>/dev/null` in #( + *posix*) : + set -o posix ;; #( + *) : + ;; +esac +fi + + +as_nl=' +' +export as_nl +# Printing a long string crashes Solaris 7 /usr/bin/printf. +as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' +as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo +as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo +# Prefer a ksh shell builtin over an external printf program on Solaris, +# but without wasting forks for bash or zsh. +if test -z "$BASH_VERSION$ZSH_VERSION" \ + && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then + as_echo='print -r --' + as_echo_n='print -rn --' +elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then + as_echo='printf %s\n' + as_echo_n='printf %s' +else + if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then + as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"' + as_echo_n='/usr/ucb/echo -n' + else + as_echo_body='eval expr "X$1" : "X\\(.*\\)"' + as_echo_n_body='eval + arg=$1; + case $arg in #( + *"$as_nl"*) + expr "X$arg" : "X\\(.*\\)$as_nl"; + arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;; + esac; + expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl" + ' + export as_echo_n_body + as_echo_n='sh -c $as_echo_n_body as_echo' + fi + export as_echo_body + as_echo='sh -c $as_echo_body as_echo' +fi + +# The user is always right. +if test "${PATH_SEPARATOR+set}" != set; then + PATH_SEPARATOR=: + (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { + (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || + PATH_SEPARATOR=';' + } +fi + + +# IFS +# We need space, tab and new line, in precisely that order. Quoting is +# there to prevent editors from complaining about space-tab. +# (If _AS_PATH_WALK were called with IFS unset, it would disable word +# splitting by setting IFS to empty value.) +IFS=" "" $as_nl" + +# Find who we are. Look in the path if we contain no directory separator. +as_myself= +case $0 in #(( + *[\\/]* ) as_myself=$0 ;; + *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break + done +IFS=$as_save_IFS + + ;; +esac +# We did not find ourselves, most probably we were run as `sh COMMAND' +# in which case we are not to be found in the path. +if test "x$as_myself" = x; then + as_myself=$0 +fi +if test ! -f "$as_myself"; then + $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 + exit 1 +fi + +# Unset variables that we do not need and which cause bugs (e.g. in +# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1" +# suppresses any "Segmentation fault" message there. '((' could +# trigger a bug in pdksh 5.2.14. +for as_var in BASH_ENV ENV MAIL MAILPATH +do eval test x\${$as_var+set} = xset \ + && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : +done +PS1='$ ' +PS2='> ' +PS4='+ ' + +# NLS nuisances. +LC_ALL=C +export LC_ALL +LANGUAGE=C +export LANGUAGE + +# CDPATH. +(unset CDPATH) >/dev/null 2>&1 && unset CDPATH + + +# as_fn_error STATUS ERROR [LINENO LOG_FD] +# ---------------------------------------- +# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are +# provided, also output the error to LOG_FD, referencing LINENO. Then exit the +# script with STATUS, using 1 if that was 0. +as_fn_error () +{ + as_status=$1; test $as_status -eq 0 && as_status=1 + if test "$4"; then + as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4 + fi + $as_echo "$as_me: error: $2" >&2 + as_fn_exit $as_status +} # as_fn_error + + +# as_fn_set_status STATUS +# ----------------------- +# Set $? to STATUS, without forking. +as_fn_set_status () +{ + return $1 +} # as_fn_set_status + +# as_fn_exit STATUS +# ----------------- +# Exit the shell with STATUS, even in a "trap 0" or "set -e" context. +as_fn_exit () +{ + set +e + as_fn_set_status $1 + exit $1 +} # as_fn_exit + +# as_fn_unset VAR +# --------------- +# Portably unset VAR. +as_fn_unset () +{ + { eval $1=; unset $1;} +} +as_unset=as_fn_unset +# as_fn_append VAR VALUE +# ---------------------- +# Append the text in VALUE to the end of the definition contained in VAR. Take +# advantage of any shell optimizations that allow amortized linear growth over +# repeated appends, instead of the typical quadratic growth present in naive +# implementations. +if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then : + eval 'as_fn_append () + { + eval $1+=\$2 + }' +else + as_fn_append () + { + eval $1=\$$1\$2 + } +fi # as_fn_append + +# as_fn_arith ARG... +# ------------------ +# Perform arithmetic evaluation on the ARGs, and store the result in the +# global $as_val. Take advantage of shells that can avoid forks. The arguments +# must be portable across $(()) and expr. +if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then : + eval 'as_fn_arith () + { + as_val=$(( $* )) + }' +else + as_fn_arith () + { + as_val=`expr "$@" || test $? -eq 1` + } +fi # as_fn_arith + + +if expr a : '\(a\)' >/dev/null 2>&1 && + test "X`expr 00001 : '.*\(...\)'`" = X001; then + as_expr=expr +else + as_expr=false +fi + +if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then + as_basename=basename +else + as_basename=false +fi + +if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then + as_dirname=dirname +else + as_dirname=false +fi + +as_me=`$as_basename -- "$0" || +$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ + X"$0" : 'X\(//\)$' \| \ + X"$0" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X/"$0" | + sed '/^.*\/\([^/][^/]*\)\/*$/{ + s//\1/ + q + } + /^X\/\(\/\/\)$/{ + s//\1/ + q + } + /^X\/\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + +# Avoid depending upon Character Ranges. +as_cr_letters='abcdefghijklmnopqrstuvwxyz' +as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' +as_cr_Letters=$as_cr_letters$as_cr_LETTERS +as_cr_digits='0123456789' +as_cr_alnum=$as_cr_Letters$as_cr_digits + +ECHO_C= ECHO_N= ECHO_T= +case `echo -n x` in #((((( +-n*) + case `echo 'xy\c'` in + *c*) ECHO_T=' ';; # ECHO_T is single tab character. + xy) ECHO_C='\c';; + *) echo `echo ksh88 bug on AIX 6.1` > /dev/null + ECHO_T=' ';; + esac;; +*) + ECHO_N='-n';; +esac + +rm -f conf$$ conf$$.exe conf$$.file +if test -d conf$$.dir; then + rm -f conf$$.dir/conf$$.file +else + rm -f conf$$.dir + mkdir conf$$.dir 2>/dev/null +fi +if (echo >conf$$.file) 2>/dev/null; then + if ln -s conf$$.file conf$$ 2>/dev/null; then + as_ln_s='ln -s' + # ... but there are two gotchas: + # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. + # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. + # In both cases, we have to default to `cp -pR'. + ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || + as_ln_s='cp -pR' + elif ln conf$$.file conf$$ 2>/dev/null; then + as_ln_s=ln + else + as_ln_s='cp -pR' + fi +else + as_ln_s='cp -pR' +fi +rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file +rmdir conf$$.dir 2>/dev/null + + +# as_fn_mkdir_p +# ------------- +# Create "$as_dir" as a directory, including parents if necessary. +as_fn_mkdir_p () +{ + + case $as_dir in #( + -*) as_dir=./$as_dir;; + esac + test -d "$as_dir" || eval $as_mkdir_p || { + as_dirs= + while :; do + case $as_dir in #( + *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( + *) as_qdir=$as_dir;; + esac + as_dirs="'$as_qdir' $as_dirs" + as_dir=`$as_dirname -- "$as_dir" || +$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$as_dir" : 'X\(//\)[^/]' \| \ + X"$as_dir" : 'X\(//\)$' \| \ + X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X"$as_dir" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + test -d "$as_dir" && break + done + test -z "$as_dirs" || eval "mkdir $as_dirs" + } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir" + + +} # as_fn_mkdir_p +if mkdir -p . 2>/dev/null; then + as_mkdir_p='mkdir -p "$as_dir"' +else + test -d ./-p && rmdir ./-p + as_mkdir_p=false +fi + + +# as_fn_executable_p FILE +# ----------------------- +# Test if FILE is an executable regular file. +as_fn_executable_p () +{ + test -f "$1" && test -x "$1" +} # as_fn_executable_p +as_test_x='test -x' +as_executable_p=as_fn_executable_p + +# Sed expression to map a string onto a valid CPP name. +as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" + +# Sed expression to map a string onto a valid variable name. +as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" + + +exec 6>&1 +## ----------------------------------- ## +## Main body of $CONFIG_STATUS script. ## +## ----------------------------------- ## +_ASEOF +test $as_write_fail = 0 && chmod +x $CONFIG_STATUS || ac_write_fail=1 + +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 +# Save the log message, to keep $0 and so on meaningful, and to +# report actual input values of CONFIG_FILES etc. instead of their +# values after options handling. +ac_log=" +This file was extended by libffi $as_me 3.99999, which was +generated by GNU Autoconf 2.69. Invocation command line was + + CONFIG_FILES = $CONFIG_FILES + CONFIG_HEADERS = $CONFIG_HEADERS + CONFIG_LINKS = $CONFIG_LINKS + CONFIG_COMMANDS = $CONFIG_COMMANDS + $ $0 $@ + +on `(hostname || uname -n) 2>/dev/null | sed 1q` +" + +_ACEOF + +case $ac_config_files in *" +"*) set x $ac_config_files; shift; ac_config_files=$*;; +esac + +case $ac_config_headers in *" +"*) set x $ac_config_headers; shift; ac_config_headers=$*;; +esac + + +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 +# Files that config.status was made for. +config_files="$ac_config_files" +config_headers="$ac_config_headers" +config_links="$ac_config_links" +config_commands="$ac_config_commands" + +_ACEOF + +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 +ac_cs_usage="\ +\`$as_me' instantiates files and other configuration actions +from templates according to the current configuration. Unless the files +and actions are specified as TAGs, all are instantiated by default. + +Usage: $0 [OPTION]... [TAG]... + + -h, --help print this help, then exit + -V, --version print version number and configuration settings, then exit + --config print configuration, then exit + -q, --quiet, --silent + do not print progress messages + -d, --debug don't remove temporary files + --recheck update $as_me by reconfiguring in the same conditions + --file=FILE[:TEMPLATE] + instantiate the configuration file FILE + --header=FILE[:TEMPLATE] + instantiate the configuration header FILE + +Configuration files: +$config_files + +Configuration headers: +$config_headers + +Configuration links: +$config_links + +Configuration commands: +$config_commands + +Report bugs to ." + +_ACEOF +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 +ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" +ac_cs_version="\\ +libffi config.status 3.99999 +configured by $0, generated by GNU Autoconf 2.69, + with options \\"\$ac_cs_config\\" + +Copyright (C) 2012 Free Software Foundation, Inc. +This config.status script is free software; the Free Software Foundation +gives unlimited permission to copy, distribute and modify it." + +ac_pwd='$ac_pwd' +srcdir='$srcdir' +INSTALL='$INSTALL' +MKDIR_P='$MKDIR_P' +AWK='$AWK' +test -n "\$AWK" || AWK=awk +_ACEOF + +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 +# The default lists apply if the user does not specify any file. +ac_need_defaults=: +while test $# != 0 +do + case $1 in + --*=?*) + ac_option=`expr "X$1" : 'X\([^=]*\)='` + ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'` + ac_shift=: + ;; + --*=) + ac_option=`expr "X$1" : 'X\([^=]*\)='` + ac_optarg= + ac_shift=: + ;; + *) + ac_option=$1 + ac_optarg=$2 + ac_shift=shift + ;; + esac + + case $ac_option in + # Handling of the options. + -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) + ac_cs_recheck=: ;; + --version | --versio | --versi | --vers | --ver | --ve | --v | -V ) + $as_echo "$ac_cs_version"; exit ;; + --config | --confi | --conf | --con | --co | --c ) + $as_echo "$ac_cs_config"; exit ;; + --debug | --debu | --deb | --de | --d | -d ) + debug=: ;; + --file | --fil | --fi | --f ) + $ac_shift + case $ac_optarg in + *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; + '') as_fn_error $? "missing file argument" ;; + esac + as_fn_append CONFIG_FILES " '$ac_optarg'" + ac_need_defaults=false;; + --header | --heade | --head | --hea ) + $ac_shift + case $ac_optarg in + *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; + esac + as_fn_append CONFIG_HEADERS " '$ac_optarg'" + ac_need_defaults=false;; + --he | --h) + # Conflict between --help and --header + as_fn_error $? "ambiguous option: \`$1' +Try \`$0 --help' for more information.";; + --help | --hel | -h ) + $as_echo "$ac_cs_usage"; exit ;; + -q | -quiet | --quiet | --quie | --qui | --qu | --q \ + | -silent | --silent | --silen | --sile | --sil | --si | --s) + ac_cs_silent=: ;; + + # This is an error. + -*) as_fn_error $? "unrecognized option: \`$1' +Try \`$0 --help' for more information." ;; + + *) as_fn_append ac_config_targets " $1" + ac_need_defaults=false ;; + + esac + shift +done + +ac_configure_extra_args= + +if $ac_cs_silent; then + exec 6>/dev/null + ac_configure_extra_args="$ac_configure_extra_args --silent" +fi + +_ACEOF +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 +if \$ac_cs_recheck; then + set X $SHELL '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion + shift + \$as_echo "running CONFIG_SHELL=$SHELL \$*" >&6 + CONFIG_SHELL='$SHELL' + export CONFIG_SHELL + exec "\$@" +fi + +_ACEOF +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 +exec 5>>config.log +{ + echo + sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX +## Running $as_me. ## +_ASBOX + $as_echo "$ac_log" +} >&5 + +_ACEOF +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 +# +# INIT-COMMANDS +# +ax_enable_builddir_srcdir="$srcdir" # $srcdir +ax_enable_builddir_host="$HOST" # $HOST / $host +ax_enable_builddir_version="$VERSION" # $VERSION +ax_enable_builddir_package="$PACKAGE" # $PACKAGE +ax_enable_builddir_auxdir="$ax_enable_builddir_auxdir" # $AUX +ax_enable_builddir_sed="$ax_enable_builddir_sed" # $SED +ax_enable_builddir="$ax_enable_builddir" # $SUB + +AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir" + + +# The HP-UX ksh and POSIX shell print the target directory to stdout +# if CDPATH is set. +(unset CDPATH) >/dev/null 2>&1 && unset CDPATH + +sed_quote_subst='$sed_quote_subst' +double_quote_subst='$double_quote_subst' +delay_variable_subst='$delay_variable_subst' +macro_version='`$ECHO "$macro_version" | $SED "$delay_single_quote_subst"`' +macro_revision='`$ECHO "$macro_revision" | $SED "$delay_single_quote_subst"`' +enable_shared='`$ECHO "$enable_shared" | $SED "$delay_single_quote_subst"`' +enable_static='`$ECHO "$enable_static" | $SED "$delay_single_quote_subst"`' +pic_mode='`$ECHO "$pic_mode" | $SED "$delay_single_quote_subst"`' +enable_fast_install='`$ECHO "$enable_fast_install" | $SED "$delay_single_quote_subst"`' +shared_archive_member_spec='`$ECHO "$shared_archive_member_spec" | $SED "$delay_single_quote_subst"`' +SHELL='`$ECHO "$SHELL" | $SED "$delay_single_quote_subst"`' +ECHO='`$ECHO "$ECHO" | $SED "$delay_single_quote_subst"`' +PATH_SEPARATOR='`$ECHO "$PATH_SEPARATOR" | $SED "$delay_single_quote_subst"`' +host_alias='`$ECHO "$host_alias" | $SED "$delay_single_quote_subst"`' +host='`$ECHO "$host" | $SED "$delay_single_quote_subst"`' +host_os='`$ECHO "$host_os" | $SED "$delay_single_quote_subst"`' +build_alias='`$ECHO "$build_alias" | $SED "$delay_single_quote_subst"`' +build='`$ECHO "$build" | $SED "$delay_single_quote_subst"`' +build_os='`$ECHO "$build_os" | $SED "$delay_single_quote_subst"`' +SED='`$ECHO "$SED" | $SED "$delay_single_quote_subst"`' +Xsed='`$ECHO "$Xsed" | $SED "$delay_single_quote_subst"`' +GREP='`$ECHO "$GREP" | $SED "$delay_single_quote_subst"`' +EGREP='`$ECHO "$EGREP" | $SED "$delay_single_quote_subst"`' +FGREP='`$ECHO "$FGREP" | $SED "$delay_single_quote_subst"`' +LD='`$ECHO "$LD" | $SED "$delay_single_quote_subst"`' +NM='`$ECHO "$NM" | $SED "$delay_single_quote_subst"`' +LN_S='`$ECHO "$LN_S" | $SED "$delay_single_quote_subst"`' +max_cmd_len='`$ECHO "$max_cmd_len" | $SED "$delay_single_quote_subst"`' +ac_objext='`$ECHO "$ac_objext" | $SED "$delay_single_quote_subst"`' +exeext='`$ECHO "$exeext" | $SED "$delay_single_quote_subst"`' +lt_unset='`$ECHO "$lt_unset" | $SED "$delay_single_quote_subst"`' +lt_SP2NL='`$ECHO "$lt_SP2NL" | $SED "$delay_single_quote_subst"`' +lt_NL2SP='`$ECHO "$lt_NL2SP" | $SED "$delay_single_quote_subst"`' +lt_cv_to_host_file_cmd='`$ECHO "$lt_cv_to_host_file_cmd" | $SED "$delay_single_quote_subst"`' +lt_cv_to_tool_file_cmd='`$ECHO "$lt_cv_to_tool_file_cmd" | $SED "$delay_single_quote_subst"`' +reload_flag='`$ECHO "$reload_flag" | $SED "$delay_single_quote_subst"`' +reload_cmds='`$ECHO "$reload_cmds" | $SED "$delay_single_quote_subst"`' +OBJDUMP='`$ECHO "$OBJDUMP" | $SED "$delay_single_quote_subst"`' +deplibs_check_method='`$ECHO "$deplibs_check_method" | $SED "$delay_single_quote_subst"`' +file_magic_cmd='`$ECHO "$file_magic_cmd" | $SED "$delay_single_quote_subst"`' +file_magic_glob='`$ECHO "$file_magic_glob" | $SED "$delay_single_quote_subst"`' +want_nocaseglob='`$ECHO "$want_nocaseglob" | $SED "$delay_single_quote_subst"`' +DLLTOOL='`$ECHO "$DLLTOOL" | $SED "$delay_single_quote_subst"`' +sharedlib_from_linklib_cmd='`$ECHO "$sharedlib_from_linklib_cmd" | $SED "$delay_single_quote_subst"`' +AR='`$ECHO "$AR" | $SED "$delay_single_quote_subst"`' +AR_FLAGS='`$ECHO "$AR_FLAGS" | $SED "$delay_single_quote_subst"`' +archiver_list_spec='`$ECHO "$archiver_list_spec" | $SED "$delay_single_quote_subst"`' +STRIP='`$ECHO "$STRIP" | $SED "$delay_single_quote_subst"`' +RANLIB='`$ECHO "$RANLIB" | $SED "$delay_single_quote_subst"`' +old_postinstall_cmds='`$ECHO "$old_postinstall_cmds" | $SED "$delay_single_quote_subst"`' +old_postuninstall_cmds='`$ECHO "$old_postuninstall_cmds" | $SED "$delay_single_quote_subst"`' +old_archive_cmds='`$ECHO "$old_archive_cmds" | $SED "$delay_single_quote_subst"`' +lock_old_archive_extraction='`$ECHO "$lock_old_archive_extraction" | $SED "$delay_single_quote_subst"`' +CC='`$ECHO "$CC" | $SED "$delay_single_quote_subst"`' +CFLAGS='`$ECHO "$CFLAGS" | $SED "$delay_single_quote_subst"`' +compiler='`$ECHO "$compiler" | $SED "$delay_single_quote_subst"`' +GCC='`$ECHO "$GCC" | $SED "$delay_single_quote_subst"`' +lt_cv_sys_global_symbol_pipe='`$ECHO "$lt_cv_sys_global_symbol_pipe" | $SED "$delay_single_quote_subst"`' +lt_cv_sys_global_symbol_to_cdecl='`$ECHO "$lt_cv_sys_global_symbol_to_cdecl" | $SED "$delay_single_quote_subst"`' +lt_cv_sys_global_symbol_to_import='`$ECHO "$lt_cv_sys_global_symbol_to_import" | $SED "$delay_single_quote_subst"`' +lt_cv_sys_global_symbol_to_c_name_address='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address" | $SED "$delay_single_quote_subst"`' +lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address_lib_prefix" | $SED "$delay_single_quote_subst"`' +lt_cv_nm_interface='`$ECHO "$lt_cv_nm_interface" | $SED "$delay_single_quote_subst"`' +nm_file_list_spec='`$ECHO "$nm_file_list_spec" | $SED "$delay_single_quote_subst"`' +lt_sysroot='`$ECHO "$lt_sysroot" | $SED "$delay_single_quote_subst"`' +lt_cv_truncate_bin='`$ECHO "$lt_cv_truncate_bin" | $SED "$delay_single_quote_subst"`' +objdir='`$ECHO "$objdir" | $SED "$delay_single_quote_subst"`' +MAGIC_CMD='`$ECHO "$MAGIC_CMD" | $SED "$delay_single_quote_subst"`' +lt_prog_compiler_no_builtin_flag='`$ECHO "$lt_prog_compiler_no_builtin_flag" | $SED "$delay_single_quote_subst"`' +lt_prog_compiler_pic='`$ECHO "$lt_prog_compiler_pic" | $SED "$delay_single_quote_subst"`' +lt_prog_compiler_wl='`$ECHO "$lt_prog_compiler_wl" | $SED "$delay_single_quote_subst"`' +lt_prog_compiler_static='`$ECHO "$lt_prog_compiler_static" | $SED "$delay_single_quote_subst"`' +lt_cv_prog_compiler_c_o='`$ECHO "$lt_cv_prog_compiler_c_o" | $SED "$delay_single_quote_subst"`' +need_locks='`$ECHO "$need_locks" | $SED "$delay_single_quote_subst"`' +MANIFEST_TOOL='`$ECHO "$MANIFEST_TOOL" | $SED "$delay_single_quote_subst"`' +DSYMUTIL='`$ECHO "$DSYMUTIL" | $SED "$delay_single_quote_subst"`' +NMEDIT='`$ECHO "$NMEDIT" | $SED "$delay_single_quote_subst"`' +LIPO='`$ECHO "$LIPO" | $SED "$delay_single_quote_subst"`' +OTOOL='`$ECHO "$OTOOL" | $SED "$delay_single_quote_subst"`' +OTOOL64='`$ECHO "$OTOOL64" | $SED "$delay_single_quote_subst"`' +libext='`$ECHO "$libext" | $SED "$delay_single_quote_subst"`' +shrext_cmds='`$ECHO "$shrext_cmds" | $SED "$delay_single_quote_subst"`' +extract_expsyms_cmds='`$ECHO "$extract_expsyms_cmds" | $SED "$delay_single_quote_subst"`' +archive_cmds_need_lc='`$ECHO "$archive_cmds_need_lc" | $SED "$delay_single_quote_subst"`' +enable_shared_with_static_runtimes='`$ECHO "$enable_shared_with_static_runtimes" | $SED "$delay_single_quote_subst"`' +export_dynamic_flag_spec='`$ECHO "$export_dynamic_flag_spec" | $SED "$delay_single_quote_subst"`' +whole_archive_flag_spec='`$ECHO "$whole_archive_flag_spec" | $SED "$delay_single_quote_subst"`' +compiler_needs_object='`$ECHO "$compiler_needs_object" | $SED "$delay_single_quote_subst"`' +old_archive_from_new_cmds='`$ECHO "$old_archive_from_new_cmds" | $SED "$delay_single_quote_subst"`' +old_archive_from_expsyms_cmds='`$ECHO "$old_archive_from_expsyms_cmds" | $SED "$delay_single_quote_subst"`' +archive_cmds='`$ECHO "$archive_cmds" | $SED "$delay_single_quote_subst"`' +archive_expsym_cmds='`$ECHO "$archive_expsym_cmds" | $SED "$delay_single_quote_subst"`' +module_cmds='`$ECHO "$module_cmds" | $SED "$delay_single_quote_subst"`' +module_expsym_cmds='`$ECHO "$module_expsym_cmds" | $SED "$delay_single_quote_subst"`' +with_gnu_ld='`$ECHO "$with_gnu_ld" | $SED "$delay_single_quote_subst"`' +allow_undefined_flag='`$ECHO "$allow_undefined_flag" | $SED "$delay_single_quote_subst"`' +no_undefined_flag='`$ECHO "$no_undefined_flag" | $SED "$delay_single_quote_subst"`' +hardcode_libdir_flag_spec='`$ECHO "$hardcode_libdir_flag_spec" | $SED "$delay_single_quote_subst"`' +hardcode_libdir_separator='`$ECHO "$hardcode_libdir_separator" | $SED "$delay_single_quote_subst"`' +hardcode_direct='`$ECHO "$hardcode_direct" | $SED "$delay_single_quote_subst"`' +hardcode_direct_absolute='`$ECHO "$hardcode_direct_absolute" | $SED "$delay_single_quote_subst"`' +hardcode_minus_L='`$ECHO "$hardcode_minus_L" | $SED "$delay_single_quote_subst"`' +hardcode_shlibpath_var='`$ECHO "$hardcode_shlibpath_var" | $SED "$delay_single_quote_subst"`' +hardcode_automatic='`$ECHO "$hardcode_automatic" | $SED "$delay_single_quote_subst"`' +inherit_rpath='`$ECHO "$inherit_rpath" | $SED "$delay_single_quote_subst"`' +link_all_deplibs='`$ECHO "$link_all_deplibs" | $SED "$delay_single_quote_subst"`' +always_export_symbols='`$ECHO "$always_export_symbols" | $SED "$delay_single_quote_subst"`' +export_symbols_cmds='`$ECHO "$export_symbols_cmds" | $SED "$delay_single_quote_subst"`' +exclude_expsyms='`$ECHO "$exclude_expsyms" | $SED "$delay_single_quote_subst"`' +include_expsyms='`$ECHO "$include_expsyms" | $SED "$delay_single_quote_subst"`' +prelink_cmds='`$ECHO "$prelink_cmds" | $SED "$delay_single_quote_subst"`' +postlink_cmds='`$ECHO "$postlink_cmds" | $SED "$delay_single_quote_subst"`' +file_list_spec='`$ECHO "$file_list_spec" | $SED "$delay_single_quote_subst"`' +variables_saved_for_relink='`$ECHO "$variables_saved_for_relink" | $SED "$delay_single_quote_subst"`' +need_lib_prefix='`$ECHO "$need_lib_prefix" | $SED "$delay_single_quote_subst"`' +need_version='`$ECHO "$need_version" | $SED "$delay_single_quote_subst"`' +version_type='`$ECHO "$version_type" | $SED "$delay_single_quote_subst"`' +runpath_var='`$ECHO "$runpath_var" | $SED "$delay_single_quote_subst"`' +shlibpath_var='`$ECHO "$shlibpath_var" | $SED "$delay_single_quote_subst"`' +shlibpath_overrides_runpath='`$ECHO "$shlibpath_overrides_runpath" | $SED "$delay_single_quote_subst"`' +libname_spec='`$ECHO "$libname_spec" | $SED "$delay_single_quote_subst"`' +library_names_spec='`$ECHO "$library_names_spec" | $SED "$delay_single_quote_subst"`' +soname_spec='`$ECHO "$soname_spec" | $SED "$delay_single_quote_subst"`' +install_override_mode='`$ECHO "$install_override_mode" | $SED "$delay_single_quote_subst"`' +postinstall_cmds='`$ECHO "$postinstall_cmds" | $SED "$delay_single_quote_subst"`' +postuninstall_cmds='`$ECHO "$postuninstall_cmds" | $SED "$delay_single_quote_subst"`' +finish_cmds='`$ECHO "$finish_cmds" | $SED "$delay_single_quote_subst"`' +finish_eval='`$ECHO "$finish_eval" | $SED "$delay_single_quote_subst"`' +hardcode_into_libs='`$ECHO "$hardcode_into_libs" | $SED "$delay_single_quote_subst"`' +sys_lib_search_path_spec='`$ECHO "$sys_lib_search_path_spec" | $SED "$delay_single_quote_subst"`' +configure_time_dlsearch_path='`$ECHO "$configure_time_dlsearch_path" | $SED "$delay_single_quote_subst"`' +configure_time_lt_sys_library_path='`$ECHO "$configure_time_lt_sys_library_path" | $SED "$delay_single_quote_subst"`' +hardcode_action='`$ECHO "$hardcode_action" | $SED "$delay_single_quote_subst"`' +enable_dlopen='`$ECHO "$enable_dlopen" | $SED "$delay_single_quote_subst"`' +enable_dlopen_self='`$ECHO "$enable_dlopen_self" | $SED "$delay_single_quote_subst"`' +enable_dlopen_self_static='`$ECHO "$enable_dlopen_self_static" | $SED "$delay_single_quote_subst"`' +old_striplib='`$ECHO "$old_striplib" | $SED "$delay_single_quote_subst"`' +striplib='`$ECHO "$striplib" | $SED "$delay_single_quote_subst"`' +compiler_lib_search_dirs='`$ECHO "$compiler_lib_search_dirs" | $SED "$delay_single_quote_subst"`' +predep_objects='`$ECHO "$predep_objects" | $SED "$delay_single_quote_subst"`' +postdep_objects='`$ECHO "$postdep_objects" | $SED "$delay_single_quote_subst"`' +predeps='`$ECHO "$predeps" | $SED "$delay_single_quote_subst"`' +postdeps='`$ECHO "$postdeps" | $SED "$delay_single_quote_subst"`' +compiler_lib_search_path='`$ECHO "$compiler_lib_search_path" | $SED "$delay_single_quote_subst"`' +LD_CXX='`$ECHO "$LD_CXX" | $SED "$delay_single_quote_subst"`' +reload_flag_CXX='`$ECHO "$reload_flag_CXX" | $SED "$delay_single_quote_subst"`' +reload_cmds_CXX='`$ECHO "$reload_cmds_CXX" | $SED "$delay_single_quote_subst"`' +old_archive_cmds_CXX='`$ECHO "$old_archive_cmds_CXX" | $SED "$delay_single_quote_subst"`' +compiler_CXX='`$ECHO "$compiler_CXX" | $SED "$delay_single_quote_subst"`' +GCC_CXX='`$ECHO "$GCC_CXX" | $SED "$delay_single_quote_subst"`' +lt_prog_compiler_no_builtin_flag_CXX='`$ECHO "$lt_prog_compiler_no_builtin_flag_CXX" | $SED "$delay_single_quote_subst"`' +lt_prog_compiler_pic_CXX='`$ECHO "$lt_prog_compiler_pic_CXX" | $SED "$delay_single_quote_subst"`' +lt_prog_compiler_wl_CXX='`$ECHO "$lt_prog_compiler_wl_CXX" | $SED "$delay_single_quote_subst"`' +lt_prog_compiler_static_CXX='`$ECHO "$lt_prog_compiler_static_CXX" | $SED "$delay_single_quote_subst"`' +lt_cv_prog_compiler_c_o_CXX='`$ECHO "$lt_cv_prog_compiler_c_o_CXX" | $SED "$delay_single_quote_subst"`' +archive_cmds_need_lc_CXX='`$ECHO "$archive_cmds_need_lc_CXX" | $SED "$delay_single_quote_subst"`' +enable_shared_with_static_runtimes_CXX='`$ECHO "$enable_shared_with_static_runtimes_CXX" | $SED "$delay_single_quote_subst"`' +export_dynamic_flag_spec_CXX='`$ECHO "$export_dynamic_flag_spec_CXX" | $SED "$delay_single_quote_subst"`' +whole_archive_flag_spec_CXX='`$ECHO "$whole_archive_flag_spec_CXX" | $SED "$delay_single_quote_subst"`' +compiler_needs_object_CXX='`$ECHO "$compiler_needs_object_CXX" | $SED "$delay_single_quote_subst"`' +old_archive_from_new_cmds_CXX='`$ECHO "$old_archive_from_new_cmds_CXX" | $SED "$delay_single_quote_subst"`' +old_archive_from_expsyms_cmds_CXX='`$ECHO "$old_archive_from_expsyms_cmds_CXX" | $SED "$delay_single_quote_subst"`' +archive_cmds_CXX='`$ECHO "$archive_cmds_CXX" | $SED "$delay_single_quote_subst"`' +archive_expsym_cmds_CXX='`$ECHO "$archive_expsym_cmds_CXX" | $SED "$delay_single_quote_subst"`' +module_cmds_CXX='`$ECHO "$module_cmds_CXX" | $SED "$delay_single_quote_subst"`' +module_expsym_cmds_CXX='`$ECHO "$module_expsym_cmds_CXX" | $SED "$delay_single_quote_subst"`' +with_gnu_ld_CXX='`$ECHO "$with_gnu_ld_CXX" | $SED "$delay_single_quote_subst"`' +allow_undefined_flag_CXX='`$ECHO "$allow_undefined_flag_CXX" | $SED "$delay_single_quote_subst"`' +no_undefined_flag_CXX='`$ECHO "$no_undefined_flag_CXX" | $SED "$delay_single_quote_subst"`' +hardcode_libdir_flag_spec_CXX='`$ECHO "$hardcode_libdir_flag_spec_CXX" | $SED "$delay_single_quote_subst"`' +hardcode_libdir_separator_CXX='`$ECHO "$hardcode_libdir_separator_CXX" | $SED "$delay_single_quote_subst"`' +hardcode_direct_CXX='`$ECHO "$hardcode_direct_CXX" | $SED "$delay_single_quote_subst"`' +hardcode_direct_absolute_CXX='`$ECHO "$hardcode_direct_absolute_CXX" | $SED "$delay_single_quote_subst"`' +hardcode_minus_L_CXX='`$ECHO "$hardcode_minus_L_CXX" | $SED "$delay_single_quote_subst"`' +hardcode_shlibpath_var_CXX='`$ECHO "$hardcode_shlibpath_var_CXX" | $SED "$delay_single_quote_subst"`' +hardcode_automatic_CXX='`$ECHO "$hardcode_automatic_CXX" | $SED "$delay_single_quote_subst"`' +inherit_rpath_CXX='`$ECHO "$inherit_rpath_CXX" | $SED "$delay_single_quote_subst"`' +link_all_deplibs_CXX='`$ECHO "$link_all_deplibs_CXX" | $SED "$delay_single_quote_subst"`' +always_export_symbols_CXX='`$ECHO "$always_export_symbols_CXX" | $SED "$delay_single_quote_subst"`' +export_symbols_cmds_CXX='`$ECHO "$export_symbols_cmds_CXX" | $SED "$delay_single_quote_subst"`' +exclude_expsyms_CXX='`$ECHO "$exclude_expsyms_CXX" | $SED "$delay_single_quote_subst"`' +include_expsyms_CXX='`$ECHO "$include_expsyms_CXX" | $SED "$delay_single_quote_subst"`' +prelink_cmds_CXX='`$ECHO "$prelink_cmds_CXX" | $SED "$delay_single_quote_subst"`' +postlink_cmds_CXX='`$ECHO "$postlink_cmds_CXX" | $SED "$delay_single_quote_subst"`' +file_list_spec_CXX='`$ECHO "$file_list_spec_CXX" | $SED "$delay_single_quote_subst"`' +hardcode_action_CXX='`$ECHO "$hardcode_action_CXX" | $SED "$delay_single_quote_subst"`' +compiler_lib_search_dirs_CXX='`$ECHO "$compiler_lib_search_dirs_CXX" | $SED "$delay_single_quote_subst"`' +predep_objects_CXX='`$ECHO "$predep_objects_CXX" | $SED "$delay_single_quote_subst"`' +postdep_objects_CXX='`$ECHO "$postdep_objects_CXX" | $SED "$delay_single_quote_subst"`' +predeps_CXX='`$ECHO "$predeps_CXX" | $SED "$delay_single_quote_subst"`' +postdeps_CXX='`$ECHO "$postdeps_CXX" | $SED "$delay_single_quote_subst"`' +compiler_lib_search_path_CXX='`$ECHO "$compiler_lib_search_path_CXX" | $SED "$delay_single_quote_subst"`' + +LTCC='$LTCC' +LTCFLAGS='$LTCFLAGS' +compiler='$compiler_DEFAULT' + +# A function that is used when there is no print builtin or printf. +func_fallback_echo () +{ + eval 'cat <<_LTECHO_EOF +\$1 +_LTECHO_EOF' +} + +# Quote evaled strings. +for var in SHELL \ +ECHO \ +PATH_SEPARATOR \ +SED \ +GREP \ +EGREP \ +FGREP \ +LD \ +NM \ +LN_S \ +lt_SP2NL \ +lt_NL2SP \ +reload_flag \ +OBJDUMP \ +deplibs_check_method \ +file_magic_cmd \ +file_magic_glob \ +want_nocaseglob \ +DLLTOOL \ +sharedlib_from_linklib_cmd \ +AR \ +AR_FLAGS \ +archiver_list_spec \ +STRIP \ +RANLIB \ +CC \ +CFLAGS \ +compiler \ +lt_cv_sys_global_symbol_pipe \ +lt_cv_sys_global_symbol_to_cdecl \ +lt_cv_sys_global_symbol_to_import \ +lt_cv_sys_global_symbol_to_c_name_address \ +lt_cv_sys_global_symbol_to_c_name_address_lib_prefix \ +lt_cv_nm_interface \ +nm_file_list_spec \ +lt_cv_truncate_bin \ +lt_prog_compiler_no_builtin_flag \ +lt_prog_compiler_pic \ +lt_prog_compiler_wl \ +lt_prog_compiler_static \ +lt_cv_prog_compiler_c_o \ +need_locks \ +MANIFEST_TOOL \ +DSYMUTIL \ +NMEDIT \ +LIPO \ +OTOOL \ +OTOOL64 \ +shrext_cmds \ +export_dynamic_flag_spec \ +whole_archive_flag_spec \ +compiler_needs_object \ +with_gnu_ld \ +allow_undefined_flag \ +no_undefined_flag \ +hardcode_libdir_flag_spec \ +hardcode_libdir_separator \ +exclude_expsyms \ +include_expsyms \ +file_list_spec \ +variables_saved_for_relink \ +libname_spec \ +library_names_spec \ +soname_spec \ +install_override_mode \ +finish_eval \ +old_striplib \ +striplib \ +compiler_lib_search_dirs \ +predep_objects \ +postdep_objects \ +predeps \ +postdeps \ +compiler_lib_search_path \ +LD_CXX \ +reload_flag_CXX \ +compiler_CXX \ +lt_prog_compiler_no_builtin_flag_CXX \ +lt_prog_compiler_pic_CXX \ +lt_prog_compiler_wl_CXX \ +lt_prog_compiler_static_CXX \ +lt_cv_prog_compiler_c_o_CXX \ +export_dynamic_flag_spec_CXX \ +whole_archive_flag_spec_CXX \ +compiler_needs_object_CXX \ +with_gnu_ld_CXX \ +allow_undefined_flag_CXX \ +no_undefined_flag_CXX \ +hardcode_libdir_flag_spec_CXX \ +hardcode_libdir_separator_CXX \ +exclude_expsyms_CXX \ +include_expsyms_CXX \ +file_list_spec_CXX \ +compiler_lib_search_dirs_CXX \ +predep_objects_CXX \ +postdep_objects_CXX \ +predeps_CXX \ +postdeps_CXX \ +compiler_lib_search_path_CXX; do + case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in + *[\\\\\\\`\\"\\\$]*) + eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED \\"\\\$sed_quote_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes + ;; + *) + eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\"" + ;; + esac +done + +# Double-quote double-evaled strings. +for var in reload_cmds \ +old_postinstall_cmds \ +old_postuninstall_cmds \ +old_archive_cmds \ +extract_expsyms_cmds \ +old_archive_from_new_cmds \ +old_archive_from_expsyms_cmds \ +archive_cmds \ +archive_expsym_cmds \ +module_cmds \ +module_expsym_cmds \ +export_symbols_cmds \ +prelink_cmds \ +postlink_cmds \ +postinstall_cmds \ +postuninstall_cmds \ +finish_cmds \ +sys_lib_search_path_spec \ +configure_time_dlsearch_path \ +configure_time_lt_sys_library_path \ +reload_cmds_CXX \ +old_archive_cmds_CXX \ +old_archive_from_new_cmds_CXX \ +old_archive_from_expsyms_cmds_CXX \ +archive_cmds_CXX \ +archive_expsym_cmds_CXX \ +module_cmds_CXX \ +module_expsym_cmds_CXX \ +export_symbols_cmds_CXX \ +prelink_cmds_CXX \ +postlink_cmds_CXX; do + case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in + *[\\\\\\\`\\"\\\$]*) + eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes + ;; + *) + eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\"" + ;; + esac +done + +ac_aux_dir='$ac_aux_dir' + +# See if we are running on zsh, and set the options that allow our +# commands through without removal of \ escapes INIT. +if test -n "\${ZSH_VERSION+set}"; then + setopt NO_GLOB_SUBST +fi + + + PACKAGE='$PACKAGE' + VERSION='$VERSION' + RM='$RM' + ofile='$ofile' + + + + + +TARGETDIR="$TARGETDIR" + +_ACEOF + +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 + +# Handling of arguments. +for ac_config_target in $ac_config_targets +do + case $ac_config_target in + "fficonfig.h") CONFIG_HEADERS="$CONFIG_HEADERS fficonfig.h" ;; + "buildir") CONFIG_COMMANDS="$CONFIG_COMMANDS buildir" ;; + "depfiles") CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;; + "libtool") CONFIG_COMMANDS="$CONFIG_COMMANDS libtool" ;; + "include") CONFIG_COMMANDS="$CONFIG_COMMANDS include" ;; + "src") CONFIG_COMMANDS="$CONFIG_COMMANDS src" ;; + "include/ffitarget.h") CONFIG_LINKS="$CONFIG_LINKS include/ffitarget.h:src/$TARGETDIR/ffitarget.h" ;; + "include/Makefile") CONFIG_FILES="$CONFIG_FILES include/Makefile" ;; + "include/ffi.h") CONFIG_FILES="$CONFIG_FILES include/ffi.h" ;; + "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;; + "testsuite/Makefile") CONFIG_FILES="$CONFIG_FILES testsuite/Makefile" ;; + "man/Makefile") CONFIG_FILES="$CONFIG_FILES man/Makefile" ;; + "doc/Makefile") CONFIG_FILES="$CONFIG_FILES doc/Makefile" ;; + "libffi.pc") CONFIG_FILES="$CONFIG_FILES libffi.pc" ;; + + *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;; + esac +done + + +# If the user did not use the arguments to specify the items to instantiate, +# then the envvar interface is used. Set only those that are not. +# We use the long form for the default assignment because of an extremely +# bizarre bug on SunOS 4.1.3. +if $ac_need_defaults; then + test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files + test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers + test "${CONFIG_LINKS+set}" = set || CONFIG_LINKS=$config_links + test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands +fi + +# Have a temporary directory for convenience. Make it in the build tree +# simply because there is no reason against having it here, and in addition, +# creating and moving files from /tmp can sometimes cause problems. +# Hook for its removal unless debugging. +# Note that there is a small window in which the directory will not be cleaned: +# after its creation but before its name has been assigned to `$tmp'. +$debug || +{ + tmp= ac_tmp= + trap 'exit_status=$? + : "${ac_tmp:=$tmp}" + { test ! -d "$ac_tmp" || rm -fr "$ac_tmp"; } && exit $exit_status +' 0 + trap 'as_fn_exit 1' 1 2 13 15 +} +# Create a (secure) tmp directory for tmp files. + +{ + tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` && + test -d "$tmp" +} || +{ + tmp=./conf$$-$RANDOM + (umask 077 && mkdir "$tmp") +} || as_fn_error $? "cannot create a temporary directory in ." "$LINENO" 5 +ac_tmp=$tmp + +# Set up the scripts for CONFIG_FILES section. +# No need to generate them if there are no CONFIG_FILES. +# This happens for instance with `./config.status config.h'. +if test -n "$CONFIG_FILES"; then + + +ac_cr=`echo X | tr X '\015'` +# On cygwin, bash can eat \r inside `` if the user requested igncr. +# But we know of no other shell where ac_cr would be empty at this +# point, so we can use a bashism as a fallback. +if test "x$ac_cr" = x; then + eval ac_cr=\$\'\\r\' +fi +ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' /dev/null` +if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then + ac_cs_awk_cr='\\r' +else + ac_cs_awk_cr=$ac_cr +fi + +echo 'BEGIN {' >"$ac_tmp/subs1.awk" && +_ACEOF + + +{ + echo "cat >conf$$subs.awk <<_ACEOF" && + echo "$ac_subst_vars" | sed 's/.*/&!$&$ac_delim/' && + echo "_ACEOF" +} >conf$$subs.sh || + as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5 +ac_delim_num=`echo "$ac_subst_vars" | grep -c '^'` +ac_delim='%!_!# ' +for ac_last_try in false false false false false :; do + . ./conf$$subs.sh || + as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5 + + ac_delim_n=`sed -n "s/.*$ac_delim\$/X/p" conf$$subs.awk | grep -c X` + if test $ac_delim_n = $ac_delim_num; then + break + elif $ac_last_try; then + as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5 + else + ac_delim="$ac_delim!$ac_delim _$ac_delim!! " + fi +done +rm -f conf$$subs.sh + +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 +cat >>"\$ac_tmp/subs1.awk" <<\\_ACAWK && +_ACEOF +sed -n ' +h +s/^/S["/; s/!.*/"]=/ +p +g +s/^[^!]*!// +:repl +t repl +s/'"$ac_delim"'$// +t delim +:nl +h +s/\(.\{148\}\)..*/\1/ +t more1 +s/["\\]/\\&/g; s/^/"/; s/$/\\n"\\/ +p +n +b repl +:more1 +s/["\\]/\\&/g; s/^/"/; s/$/"\\/ +p +g +s/.\{148\}// +t nl +:delim +h +s/\(.\{148\}\)..*/\1/ +t more2 +s/["\\]/\\&/g; s/^/"/; s/$/"/ +p +b +:more2 +s/["\\]/\\&/g; s/^/"/; s/$/"\\/ +p +g +s/.\{148\}// +t delim +' >$CONFIG_STATUS || ac_write_fail=1 +rm -f conf$$subs.awk +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 +_ACAWK +cat >>"\$ac_tmp/subs1.awk" <<_ACAWK && + for (key in S) S_is_set[key] = 1 + FS = "" + +} +{ + line = $ 0 + nfields = split(line, field, "@") + substed = 0 + len = length(field[1]) + for (i = 2; i < nfields; i++) { + key = field[i] + keylen = length(key) + if (S_is_set[key]) { + value = S[key] + line = substr(line, 1, len) "" value "" substr(line, len + keylen + 3) + len += length(value) + length(field[++i]) + substed = 1 + } else + len += 1 + keylen + } + + print line +} + +_ACAWK +_ACEOF +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 +if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then + sed "s/$ac_cr\$//; s/$ac_cr/$ac_cs_awk_cr/g" +else + cat +fi < "$ac_tmp/subs1.awk" > "$ac_tmp/subs.awk" \ + || as_fn_error $? "could not setup config files machinery" "$LINENO" 5 +_ACEOF + +# VPATH may cause trouble with some makes, so we remove sole $(srcdir), +# ${srcdir} and @srcdir@ entries from VPATH if srcdir is ".", strip leading and +# trailing colons and then remove the whole line if VPATH becomes empty +# (actually we leave an empty line to preserve line numbers). +if test "x$srcdir" = x.; then + ac_vpsub='/^[ ]*VPATH[ ]*=[ ]*/{ +h +s/// +s/^/:/ +s/[ ]*$/:/ +s/:\$(srcdir):/:/g +s/:\${srcdir}:/:/g +s/:@srcdir@:/:/g +s/^:*// +s/:*$// +x +s/\(=[ ]*\).*/\1/ +G +s/\n// +s/^[^=]*=[ ]*$// +}' +fi + +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 +fi # test -n "$CONFIG_FILES" + +# Set up the scripts for CONFIG_HEADERS section. +# No need to generate them if there are no CONFIG_HEADERS. +# This happens for instance with `./config.status Makefile'. +if test -n "$CONFIG_HEADERS"; then +cat >"$ac_tmp/defines.awk" <<\_ACAWK || +BEGIN { +_ACEOF + +# Transform confdefs.h into an awk script `defines.awk', embedded as +# here-document in config.status, that substitutes the proper values into +# config.h.in to produce config.h. + +# Create a delimiter string that does not exist in confdefs.h, to ease +# handling of long lines. +ac_delim='%!_!# ' +for ac_last_try in false false :; do + ac_tt=`sed -n "/$ac_delim/p" confdefs.h` + if test -z "$ac_tt"; then + break + elif $ac_last_try; then + as_fn_error $? "could not make $CONFIG_HEADERS" "$LINENO" 5 + else + ac_delim="$ac_delim!$ac_delim _$ac_delim!! " + fi +done + +# For the awk script, D is an array of macro values keyed by name, +# likewise P contains macro parameters if any. Preserve backslash +# newline sequences. + +ac_word_re=[_$as_cr_Letters][_$as_cr_alnum]* +sed -n ' +s/.\{148\}/&'"$ac_delim"'/g +t rset +:rset +s/^[ ]*#[ ]*define[ ][ ]*/ / +t def +d +:def +s/\\$// +t bsnl +s/["\\]/\\&/g +s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\ +D["\1"]=" \3"/p +s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2"/p +d +:bsnl +s/["\\]/\\&/g +s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\ +D["\1"]=" \3\\\\\\n"\\/p +t cont +s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2\\\\\\n"\\/p +t cont +d +:cont +n +s/.\{148\}/&'"$ac_delim"'/g +t clear +:clear +s/\\$// +t bsnlc +s/["\\]/\\&/g; s/^/"/; s/$/"/p +d +:bsnlc +s/["\\]/\\&/g; s/^/"/; s/$/\\\\\\n"\\/p +b cont +' >$CONFIG_STATUS || ac_write_fail=1 + +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 + for (key in D) D_is_set[key] = 1 + FS = "" +} +/^[\t ]*#[\t ]*(define|undef)[\t ]+$ac_word_re([\t (]|\$)/ { + line = \$ 0 + split(line, arg, " ") + if (arg[1] == "#") { + defundef = arg[2] + mac1 = arg[3] + } else { + defundef = substr(arg[1], 2) + mac1 = arg[2] + } + split(mac1, mac2, "(") #) + macro = mac2[1] + prefix = substr(line, 1, index(line, defundef) - 1) + if (D_is_set[macro]) { + # Preserve the white space surrounding the "#". + print prefix "define", macro P[macro] D[macro] + next + } else { + # Replace #undef with comments. This is necessary, for example, + # in the case of _POSIX_SOURCE, which is predefined and required + # on some systems where configure will not decide to define it. + if (defundef == "undef") { + print "/*", prefix defundef, macro, "*/" + next + } + } +} +{ print } +_ACAWK +_ACEOF +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 + as_fn_error $? "could not setup config headers machinery" "$LINENO" 5 +fi # test -n "$CONFIG_HEADERS" + + +eval set X " :F $CONFIG_FILES :H $CONFIG_HEADERS :L $CONFIG_LINKS :C $CONFIG_COMMANDS" +shift +for ac_tag +do + case $ac_tag in + :[FHLC]) ac_mode=$ac_tag; continue;; + esac + case $ac_mode$ac_tag in + :[FHL]*:*);; + :L* | :C*:*) as_fn_error $? "invalid tag \`$ac_tag'" "$LINENO" 5;; + :[FH]-) ac_tag=-:-;; + :[FH]*) ac_tag=$ac_tag:$ac_tag.in;; + esac + ac_save_IFS=$IFS + IFS=: + set x $ac_tag + IFS=$ac_save_IFS + shift + ac_file=$1 + shift + + case $ac_mode in + :L) ac_source=$1;; + :[FH]) + ac_file_inputs= + for ac_f + do + case $ac_f in + -) ac_f="$ac_tmp/stdin";; + *) # Look for the file first in the build tree, then in the source tree + # (if the path is not absolute). The absolute path cannot be DOS-style, + # because $ac_f cannot contain `:'. + test -f "$ac_f" || + case $ac_f in + [\\/$]*) false;; + *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";; + esac || + as_fn_error 1 "cannot find input file: \`$ac_f'" "$LINENO" 5;; + esac + case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac + as_fn_append ac_file_inputs " '$ac_f'" + done + + # Let's still pretend it is `configure' which instantiates (i.e., don't + # use $as_me), people would be surprised to read: + # /* config.h. Generated by config.status. */ + configure_input='Generated from '` + $as_echo "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g' + `' by configure.' + if test x"$ac_file" != x-; then + configure_input="$ac_file. $configure_input" + { $as_echo "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5 +$as_echo "$as_me: creating $ac_file" >&6;} + fi + # Neutralize special characters interpreted by sed in replacement strings. + case $configure_input in #( + *\&* | *\|* | *\\* ) + ac_sed_conf_input=`$as_echo "$configure_input" | + sed 's/[\\\\&|]/\\\\&/g'`;; #( + *) ac_sed_conf_input=$configure_input;; + esac + + case $ac_tag in + *:-:* | *:-) cat >"$ac_tmp/stdin" \ + || as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;; + esac + ;; + esac + + ac_dir=`$as_dirname -- "$ac_file" || +$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$ac_file" : 'X\(//\)[^/]' \| \ + X"$ac_file" : 'X\(//\)$' \| \ + X"$ac_file" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X"$ac_file" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + as_dir="$ac_dir"; as_fn_mkdir_p + ac_builddir=. + +case "$ac_dir" in +.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; +*) + ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'` + # A ".." for each directory in $ac_dir_suffix. + ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'` + case $ac_top_builddir_sub in + "") ac_top_builddir_sub=. ac_top_build_prefix= ;; + *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; + esac ;; +esac +ac_abs_top_builddir=$ac_pwd +ac_abs_builddir=$ac_pwd$ac_dir_suffix +# for backward compatibility: +ac_top_builddir=$ac_top_build_prefix + +case $srcdir in + .) # We are building in place. + ac_srcdir=. + ac_top_srcdir=$ac_top_builddir_sub + ac_abs_top_srcdir=$ac_pwd ;; + [\\/]* | ?:[\\/]* ) # Absolute name. + ac_srcdir=$srcdir$ac_dir_suffix; + ac_top_srcdir=$srcdir + ac_abs_top_srcdir=$srcdir ;; + *) # Relative name. + ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix + ac_top_srcdir=$ac_top_build_prefix$srcdir + ac_abs_top_srcdir=$ac_pwd/$srcdir ;; +esac +ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix + + + case $ac_mode in + :F) + # + # CONFIG_FILE + # + + case $INSTALL in + [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;; + *) ac_INSTALL=$ac_top_build_prefix$INSTALL ;; + esac + ac_MKDIR_P=$MKDIR_P + case $MKDIR_P in + [\\/$]* | ?:[\\/]* ) ;; + */*) ac_MKDIR_P=$ac_top_build_prefix$MKDIR_P ;; + esac +_ACEOF + +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 +# If the template does not know about datarootdir, expand it. +# FIXME: This hack should be removed a few years after 2.60. +ac_datarootdir_hack=; ac_datarootdir_seen= +ac_sed_dataroot=' +/datarootdir/ { + p + q +} +/@datadir@/p +/@docdir@/p +/@infodir@/p +/@localedir@/p +/@mandir@/p' +case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in +*datarootdir*) ac_datarootdir_seen=yes;; +*@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*) + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5 +$as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;} +_ACEOF +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 + ac_datarootdir_hack=' + s&@datadir@&$datadir&g + s&@docdir@&$docdir&g + s&@infodir@&$infodir&g + s&@localedir@&$localedir&g + s&@mandir@&$mandir&g + s&\\\${datarootdir}&$datarootdir&g' ;; +esac +_ACEOF + +# Neutralize VPATH when `$srcdir' = `.'. +# Shell code in configure.ac might set extrasub. +# FIXME: do we really want to maintain this feature? +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 +ac_sed_extra="$ac_vpsub +$extrasub +_ACEOF +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 +:t +/@[a-zA-Z_][a-zA-Z_0-9]*@/!b +s|@configure_input@|$ac_sed_conf_input|;t t +s&@top_builddir@&$ac_top_builddir_sub&;t t +s&@top_build_prefix@&$ac_top_build_prefix&;t t +s&@srcdir@&$ac_srcdir&;t t +s&@abs_srcdir@&$ac_abs_srcdir&;t t +s&@top_srcdir@&$ac_top_srcdir&;t t +s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t +s&@builddir@&$ac_builddir&;t t +s&@abs_builddir@&$ac_abs_builddir&;t t +s&@abs_top_builddir@&$ac_abs_top_builddir&;t t +s&@INSTALL@&$ac_INSTALL&;t t +s&@MKDIR_P@&$ac_MKDIR_P&;t t +$ac_datarootdir_hack +" +eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$ac_tmp/subs.awk" \ + >$ac_tmp/out || as_fn_error $? "could not create $ac_file" "$LINENO" 5 + +test -z "$ac_datarootdir_hack$ac_datarootdir_seen" && + { ac_out=`sed -n '/\${datarootdir}/p' "$ac_tmp/out"`; test -n "$ac_out"; } && + { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' \ + "$ac_tmp/out"`; test -z "$ac_out"; } && + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir' +which seems to be undefined. Please make sure it is defined" >&5 +$as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir' +which seems to be undefined. Please make sure it is defined" >&2;} + + rm -f "$ac_tmp/stdin" + case $ac_file in + -) cat "$ac_tmp/out" && rm -f "$ac_tmp/out";; + *) rm -f "$ac_file" && mv "$ac_tmp/out" "$ac_file";; + esac \ + || as_fn_error $? "could not create $ac_file" "$LINENO" 5 + ;; + :H) + # + # CONFIG_HEADER + # + if test x"$ac_file" != x-; then + { + $as_echo "/* $configure_input */" \ + && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" + } >"$ac_tmp/config.h" \ + || as_fn_error $? "could not create $ac_file" "$LINENO" 5 + if diff "$ac_file" "$ac_tmp/config.h" >/dev/null 2>&1; then + { $as_echo "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5 +$as_echo "$as_me: $ac_file is unchanged" >&6;} + else + rm -f "$ac_file" + mv "$ac_tmp/config.h" "$ac_file" \ + || as_fn_error $? "could not create $ac_file" "$LINENO" 5 + fi + else + $as_echo "/* $configure_input */" \ + && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" \ + || as_fn_error $? "could not create -" "$LINENO" 5 + fi +# Compute "$ac_file"'s index in $config_headers. +_am_arg="$ac_file" +_am_stamp_count=1 +for _am_header in $config_headers :; do + case $_am_header in + $_am_arg | $_am_arg:* ) + break ;; + * ) + _am_stamp_count=`expr $_am_stamp_count + 1` ;; + esac +done +echo "timestamp for $_am_arg" >`$as_dirname -- "$_am_arg" || +$as_expr X"$_am_arg" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$_am_arg" : 'X\(//\)[^/]' \| \ + X"$_am_arg" : 'X\(//\)$' \| \ + X"$_am_arg" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X"$_am_arg" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'`/stamp-h$_am_stamp_count + ;; + :L) + # + # CONFIG_LINK + # + + if test "$ac_source" = "$ac_file" && test "$srcdir" = '.'; then + : + else + # Prefer the file from the source tree if names are identical. + if test "$ac_source" = "$ac_file" || test ! -r "$ac_source"; then + ac_source=$srcdir/$ac_source + fi + + { $as_echo "$as_me:${as_lineno-$LINENO}: linking $ac_source to $ac_file" >&5 +$as_echo "$as_me: linking $ac_source to $ac_file" >&6;} + + if test ! -r "$ac_source"; then + as_fn_error $? "$ac_source: file not found" "$LINENO" 5 + fi + rm -f "$ac_file" + + # Try a relative symlink, then a hard link, then a copy. + case $ac_source in + [\\/$]* | ?:[\\/]* ) ac_rel_source=$ac_source ;; + *) ac_rel_source=$ac_top_build_prefix$ac_source ;; + esac + ln -s "$ac_rel_source" "$ac_file" 2>/dev/null || + ln "$ac_source" "$ac_file" 2>/dev/null || + cp -p "$ac_source" "$ac_file" || + as_fn_error $? "cannot link or copy $ac_source to $ac_file" "$LINENO" 5 + fi + ;; + :C) { $as_echo "$as_me:${as_lineno-$LINENO}: executing $ac_file commands" >&5 +$as_echo "$as_me: executing $ac_file commands" >&6;} + ;; + esac + + + case $ac_file$ac_mode in + "buildir":C) ac_top_srcdir="$ax_enable_builddir_srcdir" + if test ".$ax_enable_builddir" = ".." ; then + if test -f "$top_srcdir/Makefile" ; then + { $as_echo "$as_me:${as_lineno-$LINENO}: skipping top_srcdir/Makefile - left untouched" >&5 +$as_echo "$as_me: skipping top_srcdir/Makefile - left untouched" >&6;} + else + { $as_echo "$as_me:${as_lineno-$LINENO}: skipping top_srcdir/Makefile - not created" >&5 +$as_echo "$as_me: skipping top_srcdir/Makefile - not created" >&6;} + fi + else + if test -f "$ac_top_srcdir/Makefile" ; then + a=`grep "^VERSION " "$ac_top_srcdir/Makefile"` ; b=`grep "^VERSION " Makefile` + test "$a" != "$b" && rm "$ac_top_srcdir/Makefile" + fi + if test -f "$ac_top_srcdir/Makefile" ; then + echo "$ac_top_srcdir/Makefile : $ac_top_srcdir/Makefile.in" > $tmp/conftemp.mk + echo " @ echo 'REMOVED,,,' >\$@" >> $tmp/conftemp.mk + eval "${MAKE-make} -f $tmp/conftemp.mk 2>/dev/null >/dev/null" + if grep '^REMOVED,,,' "$ac_top_srcdir/Makefile" >/dev/null + then rm $ac_top_srcdir/Makefile ; fi + cp $tmp/conftemp.mk $ac_top_srcdir/makefiles.mk~ ## DEBUGGING + fi + if test ! -f "$ac_top_srcdir/Makefile" ; then + { $as_echo "$as_me:${as_lineno-$LINENO}: create top_srcdir/Makefile guessed from local Makefile" >&5 +$as_echo "$as_me: create top_srcdir/Makefile guessed from local Makefile" >&6;} + x='`' ; cat >$tmp/conftemp.sed <<_EOF +/^\$/n +x +/^\$/bS +x +/\\\\\$/{H;d;} +{H;s/.*//;x;} +bM +:S +x +/\\\\\$/{h;d;} +{h;s/.*//;x;} +:M +s/\\(\\n\\) /\\1 /g +/^ /d +/^[ ]*[\\#]/d +/^VPATH *=/d +s/^srcdir *=.*/srcdir = ./ +s/^top_srcdir *=.*/top_srcdir = ./ +/[:=]/!d +/^\\./d +/ = /b +/ .= /b +/:/!b +s/:.*/:/ +s/ / /g +s/ \\([a-z][a-z-]*[a-zA-Z0-9]\\)\\([ :]\\)/ \\1 \\1-all\\2/g +s/^\\([a-z][a-z-]*[a-zA-Z0-9]\\)\\([ :]\\)/\\1 \\1-all\\2/ +s/ / /g +/^all all-all[ :]/i\\ +all-configured : all-all +s/ [a-zA-Z0-9-]*-all [a-zA-Z0-9-]*-all-all//g +/-all-all/d +a\\ + @ HOST="\$(HOST)\" \\\\\\ + ; test ".\$\$HOST" = "." && HOST=$x sh $ax_enable_builddir_auxdir/config.guess $x \\\\\\ + ; BUILD=$x grep "^#### \$\$HOST " Makefile | sed -e 's/.*|//' $x \\\\\\ + ; use=$x basename "\$\@" -all $x; n=$x echo \$\$BUILD | wc -w $x \\\\\\ + ; echo "MAKE \$\$HOST : \$\$n * \$\@"; if test "\$\$n" -eq "0" ; then : \\\\\\ + ; BUILD=$x grep "^####.*|" Makefile |tail -1| sed -e 's/.*|//' $x ; fi \\\\\\ + ; test ".\$\$BUILD" = "." && BUILD="." \\\\\\ + ; test "\$\$use" = "\$\@" && BUILD=$x echo "\$\$BUILD" | tail -1 $x \\\\\\ + ; for i in \$\$BUILD ; do test ".\$\$i" = "." && continue \\\\\\ + ; (cd "\$\$i" && test ! -f configure && \$(MAKE) \$\$use) || exit; done +/dist-all *:/a\\ + @ HOST="\$(HOST)\" \\\\\\ + ; test ".\$\$HOST" = "." && HOST=$x sh $ax_enable_builddir_auxdir/config.guess $x \\\\\\ + ; BUILD=$x grep "^#### \$\$HOST " Makefile | sed -e 's/.*|//' $x \\\\\\ + ; found=$x echo \$\$BUILD | wc -w $x \\\\\\ + ; echo "MAKE \$\$HOST : \$\$found \$(PACKAGE)-\$(VERSION).tar.*" \\\\\\ + ; if test "\$\$found" -eq "0" ; then : \\\\\\ + ; BUILD=$x grep "^#### .*|" Makefile |tail -1| sed -e 's/.*|//' $x \\\\\\ + ; fi ; for i in \$\$BUILD ; do test ".\$\$i" = "." && continue \\\\\\ + ; for f in \$\$i/\$(PACKAGE)-\$(VERSION).tar.* \\\\\\ + ; do test -f "\$\$f" && mv "\$\$f" \$(PUB). ; done ; break ; done +/dist-[a-zA-Z0-9]*-all *:/a\\ + @ HOST="\$(HOST)\" \\\\\\ + ; test ".\$\$HOST" = "." && HOST=$x sh ./config.guess $x \\\\\\ + ; BUILD=$x grep "^#### \$\$HOST " Makefile | sed -e 's/.*|//' $x \\\\\\ + ; found=$x echo \$\$BUILD | wc -w $x \\\\\\ + ; echo "MAKE \$\$HOST : \$\$found \$(PACKAGE)-\$(VERSION).*" \\\\\\ + ; if test "\$\$found" -eq "0" ; then : \\\\\\ + ; BUILD=$x grep "^#### .*|" Makefile |tail -1| sed -e 's/.*|//' $x \\\\\\ + ; fi ; for i in \$\$BUILD ; do test ".\$\$i" = "." && continue \\\\\\ + ; for f in \$\$i/\$(PACKAGE)-\$(VERSION).* \\\\\\ + ; do test -f "\$\$f" && mv "\$\$f" \$(PUB). ; done ; break ; done +/distclean-all *:/a\\ + @ HOST="\$(HOST)\" \\\\\\ + ; test ".\$\$HOST" = "." && HOST=$x sh $ax_enable_builddir_auxdir/config.guess $x \\\\\\ + ; BUILD=$x grep "^#### .*|" Makefile | sed -e 's/.*|//' $x \\\\\\ + ; use=$x basename "\$\@" -all $x; n=$x echo \$\$BUILD | wc -w $x \\\\\\ + ; echo "MAKE \$\$HOST : \$\$n * \$\@ (all local builds)" \\\\\\ + ; test ".\$\$BUILD" = "." && BUILD="." \\\\\\ + ; for i in \$\$BUILD ; do test ".\$\$i" = "." && continue \\\\\\ + ; echo "# rm -r \$\$i"; done ; echo "# (sleep 3)" ; sleep 3 \\\\\\ + ; for i in \$\$BUILD ; do test ".\$\$i" = "." && continue \\\\\\ + ; echo "\$\$i" | grep "^/" > /dev/null && continue \\\\\\ + ; echo "\$\$i" | grep "^../" > /dev/null && continue \\\\\\ + ; echo "rm -r \$\$i"; (rm -r "\$\$i") ; done ; rm Makefile +_EOF + cp "$tmp/conftemp.sed" "$ac_top_srcdir/makefile.sed~" ## DEBUGGING + $ax_enable_builddir_sed -f $tmp/conftemp.sed Makefile >$ac_top_srcdir/Makefile + if test -f "$ac_top_srcdir/Makefile.mk" ; then + { $as_echo "$as_me:${as_lineno-$LINENO}: extend top_srcdir/Makefile with top_srcdir/Makefile.mk" >&5 +$as_echo "$as_me: extend top_srcdir/Makefile with top_srcdir/Makefile.mk" >&6;} + cat $ac_top_srcdir/Makefile.mk >>$ac_top_srcdir/Makefile + fi ; xxxx="####" + echo "$xxxx CONFIGURATIONS FOR TOPLEVEL MAKEFILE: " >>$ac_top_srcdir/Makefile + # sanity check + if grep '^; echo "MAKE ' $ac_top_srcdir/Makefile >/dev/null ; then + { $as_echo "$as_me:${as_lineno-$LINENO}: buggy sed found - it deletes tab in \"a\" text parts" >&5 +$as_echo "$as_me: buggy sed found - it deletes tab in \"a\" text parts" >&6;} + $ax_enable_builddir_sed -e '/^@ HOST=/s/^/ /' -e '/^; /s/^/ /' $ac_top_srcdir/Makefile \ + >$ac_top_srcdir/Makefile~ + (test -s $ac_top_srcdir/Makefile~ && mv $ac_top_srcdir/Makefile~ $ac_top_srcdir/Makefile) 2>/dev/null + fi + else + xxxx="\\#\\#\\#\\#" + # echo "/^$xxxx *$ax_enable_builddir_host /d" >$tmp/conftemp.sed + echo "s!^$xxxx [^|]* | *$ax_enable_builddir *\$!$xxxx ...... $ax_enable_builddir!" >$tmp/conftemp.sed + $ax_enable_builddir_sed -f "$tmp/conftemp.sed" "$ac_top_srcdir/Makefile" >$tmp/mkfile.tmp + cp "$tmp/conftemp.sed" "$ac_top_srcdir/makefiles.sed~" ## DEBUGGING + cp "$tmp/mkfile.tmp" "$ac_top_srcdir/makefiles.out~" ## DEBUGGING + if cmp -s "$ac_top_srcdir/Makefile" "$tmp/mkfile.tmp" 2>/dev/null ; then + { $as_echo "$as_me:${as_lineno-$LINENO}: keeping top_srcdir/Makefile from earlier configure" >&5 +$as_echo "$as_me: keeping top_srcdir/Makefile from earlier configure" >&6;} + rm "$tmp/mkfile.tmp" + else + { $as_echo "$as_me:${as_lineno-$LINENO}: reusing top_srcdir/Makefile from earlier configure" >&5 +$as_echo "$as_me: reusing top_srcdir/Makefile from earlier configure" >&6;} + mv "$tmp/mkfile.tmp" "$ac_top_srcdir/Makefile" + fi + fi + { $as_echo "$as_me:${as_lineno-$LINENO}: build in $ax_enable_builddir (HOST=$ax_enable_builddir_host)" >&5 +$as_echo "$as_me: build in $ax_enable_builddir (HOST=$ax_enable_builddir_host)" >&6;} + xxxx="####" + echo "$xxxx" "$ax_enable_builddir_host" "|$ax_enable_builddir" >>$ac_top_srcdir/Makefile + fi + ;; + "depfiles":C) test x"$AMDEP_TRUE" != x"" || { + # Older Autoconf quotes --file arguments for eval, but not when files + # are listed without --file. Let's play safe and only enable the eval + # if we detect the quoting. + case $CONFIG_FILES in + *\'*) eval set x "$CONFIG_FILES" ;; + *) set x $CONFIG_FILES ;; + esac + shift + for mf + do + # Strip MF so we end up with the name of the file. + mf=`echo "$mf" | sed -e 's/:.*$//'` + # Check whether this is an Automake generated Makefile or not. + # We used to match only the files named 'Makefile.in', but + # some people rename them; so instead we look at the file content. + # Grep'ing the first line is not enough: some people post-process + # each Makefile.in and add a new line on top of each file to say so. + # Grep'ing the whole file is not good either: AIX grep has a line + # limit of 2048, but all sed's we know have understand at least 4000. + if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then + dirpart=`$as_dirname -- "$mf" || +$as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$mf" : 'X\(//\)[^/]' \| \ + X"$mf" : 'X\(//\)$' \| \ + X"$mf" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X"$mf" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + else + continue + fi + # Extract the definition of DEPDIR, am__include, and am__quote + # from the Makefile without running 'make'. + DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"` + test -z "$DEPDIR" && continue + am__include=`sed -n 's/^am__include = //p' < "$mf"` + test -z "$am__include" && continue + am__quote=`sed -n 's/^am__quote = //p' < "$mf"` + # Find all dependency output files, they are included files with + # $(DEPDIR) in their names. We invoke sed twice because it is the + # simplest approach to changing $(DEPDIR) to its actual value in the + # expansion. + for file in `sed -n " + s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \ + sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g'`; do + # Make sure the directory exists. + test -f "$dirpart/$file" && continue + fdir=`$as_dirname -- "$file" || +$as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$file" : 'X\(//\)[^/]' \| \ + X"$file" : 'X\(//\)$' \| \ + X"$file" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X"$file" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + as_dir=$dirpart/$fdir; as_fn_mkdir_p + # echo "creating $dirpart/$file" + echo '# dummy' > "$dirpart/$file" + done + done +} + ;; + "libtool":C) + + # See if we are running on zsh, and set the options that allow our + # commands through without removal of \ escapes. + if test -n "${ZSH_VERSION+set}"; then + setopt NO_GLOB_SUBST + fi + + cfgfile=${ofile}T + trap "$RM \"$cfgfile\"; exit 1" 1 2 15 + $RM "$cfgfile" + + cat <<_LT_EOF >> "$cfgfile" +#! $SHELL +# Generated automatically by $as_me ($PACKAGE) $VERSION +# NOTE: Changes made to this file will be lost: look at ltmain.sh. + +# Provide generalized library-building support services. +# Written by Gordon Matzigkeit, 1996 + +# Copyright (C) 2014 Free Software Foundation, Inc. +# This is free software; see the source for copying conditions. There is NO +# warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + +# GNU Libtool is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of of the License, or +# (at your option) any later version. +# +# As a special exception to the GNU General Public License, if you +# distribute this file as part of a program or library that is built +# using GNU Libtool, you may include this file under the same +# distribution terms that you use for the rest of that program. +# +# GNU Libtool is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + + +# The names of the tagged configurations supported by this script. +available_tags='CXX ' + +# Configured defaults for sys_lib_dlsearch_path munging. +: \${LT_SYS_LIBRARY_PATH="$configure_time_lt_sys_library_path"} + +# ### BEGIN LIBTOOL CONFIG + +# Which release of libtool.m4 was used? +macro_version=$macro_version +macro_revision=$macro_revision + +# Whether or not to build shared libraries. +build_libtool_libs=$enable_shared + +# Whether or not to build static libraries. +build_old_libs=$enable_static + +# What type of objects to build. +pic_mode=$pic_mode + +# Whether or not to optimize for fast installation. +fast_install=$enable_fast_install + +# Shared archive member basename,for filename based shared library versioning on AIX. +shared_archive_member_spec=$shared_archive_member_spec + +# Shell to use when invoking shell scripts. +SHELL=$lt_SHELL + +# An echo program that protects backslashes. +ECHO=$lt_ECHO + +# The PATH separator for the build system. +PATH_SEPARATOR=$lt_PATH_SEPARATOR + +# The host system. +host_alias=$host_alias +host=$host +host_os=$host_os + +# The build system. +build_alias=$build_alias +build=$build +build_os=$build_os + +# A sed program that does not truncate output. +SED=$lt_SED + +# Sed that helps us avoid accidentally triggering echo(1) options like -n. +Xsed="\$SED -e 1s/^X//" + +# A grep program that handles long lines. +GREP=$lt_GREP + +# An ERE matcher. +EGREP=$lt_EGREP + +# A literal string matcher. +FGREP=$lt_FGREP + +# A BSD- or MS-compatible name lister. +NM=$lt_NM + +# Whether we need soft or hard links. +LN_S=$lt_LN_S + +# What is the maximum length of a command? +max_cmd_len=$max_cmd_len + +# Object file suffix (normally "o"). +objext=$ac_objext + +# Executable file suffix (normally ""). +exeext=$exeext + +# whether the shell understands "unset". +lt_unset=$lt_unset + +# turn spaces into newlines. +SP2NL=$lt_lt_SP2NL + +# turn newlines into spaces. +NL2SP=$lt_lt_NL2SP + +# convert \$build file names to \$host format. +to_host_file_cmd=$lt_cv_to_host_file_cmd + +# convert \$build files to toolchain format. +to_tool_file_cmd=$lt_cv_to_tool_file_cmd + +# An object symbol dumper. +OBJDUMP=$lt_OBJDUMP + +# Method to check whether dependent libraries are shared objects. +deplibs_check_method=$lt_deplibs_check_method + +# Command to use when deplibs_check_method = "file_magic". +file_magic_cmd=$lt_file_magic_cmd + +# How to find potential files when deplibs_check_method = "file_magic". +file_magic_glob=$lt_file_magic_glob + +# Find potential files using nocaseglob when deplibs_check_method = "file_magic". +want_nocaseglob=$lt_want_nocaseglob + +# DLL creation program. +DLLTOOL=$lt_DLLTOOL + +# Command to associate shared and link libraries. +sharedlib_from_linklib_cmd=$lt_sharedlib_from_linklib_cmd + +# The archiver. +AR=$lt_AR + +# Flags to create an archive. +AR_FLAGS=$lt_AR_FLAGS + +# How to feed a file listing to the archiver. +archiver_list_spec=$lt_archiver_list_spec + +# A symbol stripping program. +STRIP=$lt_STRIP + +# Commands used to install an old-style archive. +RANLIB=$lt_RANLIB +old_postinstall_cmds=$lt_old_postinstall_cmds +old_postuninstall_cmds=$lt_old_postuninstall_cmds + +# Whether to use a lock for old archive extraction. +lock_old_archive_extraction=$lock_old_archive_extraction + +# A C compiler. +LTCC=$lt_CC + +# LTCC compiler flags. +LTCFLAGS=$lt_CFLAGS + +# Take the output of nm and produce a listing of raw symbols and C names. +global_symbol_pipe=$lt_lt_cv_sys_global_symbol_pipe + +# Transform the output of nm in a proper C declaration. +global_symbol_to_cdecl=$lt_lt_cv_sys_global_symbol_to_cdecl + +# Transform the output of nm into a list of symbols to manually relocate. +global_symbol_to_import=$lt_lt_cv_sys_global_symbol_to_import + +# Transform the output of nm in a C name address pair. +global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address + +# Transform the output of nm in a C name address pair when lib prefix is needed. +global_symbol_to_c_name_address_lib_prefix=$lt_lt_cv_sys_global_symbol_to_c_name_address_lib_prefix + +# The name lister interface. +nm_interface=$lt_lt_cv_nm_interface + +# Specify filename containing input files for \$NM. +nm_file_list_spec=$lt_nm_file_list_spec + +# The root where to search for dependent libraries,and where our libraries should be installed. +lt_sysroot=$lt_sysroot + +# Command to truncate a binary pipe. +lt_truncate_bin=$lt_lt_cv_truncate_bin + +# The name of the directory that contains temporary libtool files. +objdir=$objdir + +# Used to examine libraries when file_magic_cmd begins with "file". +MAGIC_CMD=$MAGIC_CMD + +# Must we lock files when doing compilation? +need_locks=$lt_need_locks + +# Manifest tool. +MANIFEST_TOOL=$lt_MANIFEST_TOOL + +# Tool to manipulate archived DWARF debug symbol files on Mac OS X. +DSYMUTIL=$lt_DSYMUTIL + +# Tool to change global to local symbols on Mac OS X. +NMEDIT=$lt_NMEDIT + +# Tool to manipulate fat objects and archives on Mac OS X. +LIPO=$lt_LIPO + +# ldd/readelf like tool for Mach-O binaries on Mac OS X. +OTOOL=$lt_OTOOL + +# ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4. +OTOOL64=$lt_OTOOL64 + +# Old archive suffix (normally "a"). +libext=$libext + +# Shared library suffix (normally ".so"). +shrext_cmds=$lt_shrext_cmds + +# The commands to extract the exported symbol list from a shared archive. +extract_expsyms_cmds=$lt_extract_expsyms_cmds + +# Variables whose values should be saved in libtool wrapper scripts and +# restored at link time. +variables_saved_for_relink=$lt_variables_saved_for_relink + +# Do we need the "lib" prefix for modules? +need_lib_prefix=$need_lib_prefix + +# Do we need a version for libraries? +need_version=$need_version + +# Library versioning type. +version_type=$version_type + +# Shared library runtime path variable. +runpath_var=$runpath_var + +# Shared library path variable. +shlibpath_var=$shlibpath_var + +# Is shlibpath searched before the hard-coded library search path? +shlibpath_overrides_runpath=$shlibpath_overrides_runpath + +# Format of library name prefix. +libname_spec=$lt_libname_spec + +# List of archive names. First name is the real one, the rest are links. +# The last name is the one that the linker finds with -lNAME +library_names_spec=$lt_library_names_spec + +# The coded name of the library, if different from the real name. +soname_spec=$lt_soname_spec + +# Permission mode override for installation of shared libraries. +install_override_mode=$lt_install_override_mode + +# Command to use after installation of a shared archive. +postinstall_cmds=$lt_postinstall_cmds + +# Command to use after uninstallation of a shared archive. +postuninstall_cmds=$lt_postuninstall_cmds + +# Commands used to finish a libtool library installation in a directory. +finish_cmds=$lt_finish_cmds + +# As "finish_cmds", except a single script fragment to be evaled but +# not shown. +finish_eval=$lt_finish_eval + +# Whether we should hardcode library paths into libraries. +hardcode_into_libs=$hardcode_into_libs + +# Compile-time system search path for libraries. +sys_lib_search_path_spec=$lt_sys_lib_search_path_spec + +# Detected run-time system search path for libraries. +sys_lib_dlsearch_path_spec=$lt_configure_time_dlsearch_path + +# Explicit LT_SYS_LIBRARY_PATH set during ./configure time. +configure_time_lt_sys_library_path=$lt_configure_time_lt_sys_library_path + +# Whether dlopen is supported. +dlopen_support=$enable_dlopen + +# Whether dlopen of programs is supported. +dlopen_self=$enable_dlopen_self + +# Whether dlopen of statically linked programs is supported. +dlopen_self_static=$enable_dlopen_self_static + +# Commands to strip libraries. +old_striplib=$lt_old_striplib +striplib=$lt_striplib + + +# The linker used to build libraries. +LD=$lt_LD + +# How to create reloadable object files. +reload_flag=$lt_reload_flag +reload_cmds=$lt_reload_cmds + +# Commands used to build an old-style archive. +old_archive_cmds=$lt_old_archive_cmds + +# A language specific compiler. +CC=$lt_compiler + +# Is the compiler the GNU compiler? +with_gcc=$GCC + +# Compiler flag to turn off builtin functions. +no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag + +# Additional compiler flags for building library objects. +pic_flag=$lt_lt_prog_compiler_pic + +# How to pass a linker flag through the compiler. +wl=$lt_lt_prog_compiler_wl + +# Compiler flag to prevent dynamic linking. +link_static_flag=$lt_lt_prog_compiler_static + +# Does compiler simultaneously support -c and -o options? +compiler_c_o=$lt_lt_cv_prog_compiler_c_o + +# Whether or not to add -lc for building shared libraries. +build_libtool_need_lc=$archive_cmds_need_lc + +# Whether or not to disallow shared libs when runtime libs are static. +allow_libtool_libs_with_static_runtimes=$enable_shared_with_static_runtimes + +# Compiler flag to allow reflexive dlopens. +export_dynamic_flag_spec=$lt_export_dynamic_flag_spec + +# Compiler flag to generate shared objects directly from archives. +whole_archive_flag_spec=$lt_whole_archive_flag_spec + +# Whether the compiler copes with passing no objects directly. +compiler_needs_object=$lt_compiler_needs_object + +# Create an old-style archive from a shared archive. +old_archive_from_new_cmds=$lt_old_archive_from_new_cmds + +# Create a temporary old-style archive to link instead of a shared archive. +old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds + +# Commands used to build a shared archive. +archive_cmds=$lt_archive_cmds +archive_expsym_cmds=$lt_archive_expsym_cmds + +# Commands used to build a loadable module if different from building +# a shared archive. +module_cmds=$lt_module_cmds +module_expsym_cmds=$lt_module_expsym_cmds + +# Whether we are building with GNU ld or not. +with_gnu_ld=$lt_with_gnu_ld + +# Flag that allows shared libraries with undefined symbols to be built. +allow_undefined_flag=$lt_allow_undefined_flag + +# Flag that enforces no undefined symbols. +no_undefined_flag=$lt_no_undefined_flag + +# Flag to hardcode \$libdir into a binary during linking. +# This must work even if \$libdir does not exist +hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec + +# Whether we need a single "-rpath" flag with a separated argument. +hardcode_libdir_separator=$lt_hardcode_libdir_separator + +# Set to "yes" if using DIR/libNAME\$shared_ext during linking hardcodes +# DIR into the resulting binary. +hardcode_direct=$hardcode_direct + +# Set to "yes" if using DIR/libNAME\$shared_ext during linking hardcodes +# DIR into the resulting binary and the resulting library dependency is +# "absolute",i.e impossible to change by setting \$shlibpath_var if the +# library is relocated. +hardcode_direct_absolute=$hardcode_direct_absolute + +# Set to "yes" if using the -LDIR flag during linking hardcodes DIR +# into the resulting binary. +hardcode_minus_L=$hardcode_minus_L + +# Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR +# into the resulting binary. +hardcode_shlibpath_var=$hardcode_shlibpath_var + +# Set to "yes" if building a shared library automatically hardcodes DIR +# into the library and all subsequent libraries and executables linked +# against it. +hardcode_automatic=$hardcode_automatic + +# Set to yes if linker adds runtime paths of dependent libraries +# to runtime path list. +inherit_rpath=$inherit_rpath + +# Whether libtool must link a program against all its dependency libraries. +link_all_deplibs=$link_all_deplibs + +# Set to "yes" if exported symbols are required. +always_export_symbols=$always_export_symbols + +# The commands to list exported symbols. +export_symbols_cmds=$lt_export_symbols_cmds + +# Symbols that should not be listed in the preloaded symbols. +exclude_expsyms=$lt_exclude_expsyms + +# Symbols that must always be exported. +include_expsyms=$lt_include_expsyms + +# Commands necessary for linking programs (against libraries) with templates. +prelink_cmds=$lt_prelink_cmds + +# Commands necessary for finishing linking programs. +postlink_cmds=$lt_postlink_cmds + +# Specify filename containing input files. +file_list_spec=$lt_file_list_spec + +# How to hardcode a shared library path into an executable. +hardcode_action=$hardcode_action + +# The directories searched by this compiler when creating a shared library. +compiler_lib_search_dirs=$lt_compiler_lib_search_dirs + +# Dependencies to place before and after the objects being linked to +# create a shared library. +predep_objects=$lt_predep_objects +postdep_objects=$lt_postdep_objects +predeps=$lt_predeps +postdeps=$lt_postdeps + +# The library search path used internally by the compiler when linking +# a shared library. +compiler_lib_search_path=$lt_compiler_lib_search_path + +# ### END LIBTOOL CONFIG + +_LT_EOF + + cat <<'_LT_EOF' >> "$cfgfile" + +# ### BEGIN FUNCTIONS SHARED WITH CONFIGURE + +# func_munge_path_list VARIABLE PATH +# ----------------------------------- +# VARIABLE is name of variable containing _space_ separated list of +# directories to be munged by the contents of PATH, which is string +# having a format: +# "DIR[:DIR]:" +# string "DIR[ DIR]" will be prepended to VARIABLE +# ":DIR[:DIR]" +# string "DIR[ DIR]" will be appended to VARIABLE +# "DIRP[:DIRP]::[DIRA:]DIRA" +# string "DIRP[ DIRP]" will be prepended to VARIABLE and string +# "DIRA[ DIRA]" will be appended to VARIABLE +# "DIR[:DIR]" +# VARIABLE will be replaced by "DIR[ DIR]" +func_munge_path_list () +{ + case x$2 in + x) + ;; + *:) + eval $1=\"`$ECHO $2 | $SED 's/:/ /g'` \$$1\" + ;; + x:*) + eval $1=\"\$$1 `$ECHO $2 | $SED 's/:/ /g'`\" + ;; + *::*) + eval $1=\"\$$1\ `$ECHO $2 | $SED -e 's/.*:://' -e 's/:/ /g'`\" + eval $1=\"`$ECHO $2 | $SED -e 's/::.*//' -e 's/:/ /g'`\ \$$1\" + ;; + *) + eval $1=\"`$ECHO $2 | $SED 's/:/ /g'`\" + ;; + esac +} + + +# Calculate cc_basename. Skip known compiler wrappers and cross-prefix. +func_cc_basename () +{ + for cc_temp in $*""; do + case $cc_temp in + compile | *[\\/]compile | ccache | *[\\/]ccache ) ;; + distcc | *[\\/]distcc | purify | *[\\/]purify ) ;; + \-*) ;; + *) break;; + esac + done + func_cc_basename_result=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"` +} + + +# ### END FUNCTIONS SHARED WITH CONFIGURE + +_LT_EOF + + case $host_os in + aix3*) + cat <<\_LT_EOF >> "$cfgfile" +# AIX sometimes has problems with the GCC collect2 program. For some +# reason, if we set the COLLECT_NAMES environment variable, the problems +# vanish in a puff of smoke. +if test set != "${COLLECT_NAMES+set}"; then + COLLECT_NAMES= + export COLLECT_NAMES +fi +_LT_EOF + ;; + esac + + +ltmain=$ac_aux_dir/ltmain.sh + + + # We use sed instead of cat because bash on DJGPP gets confused if + # if finds mixed CR/LF and LF-only lines. Since sed operates in + # text mode, it properly converts lines to CR/LF. This bash problem + # is reportedly fixed, but why not run on old versions too? + sed '$q' "$ltmain" >> "$cfgfile" \ + || (rm -f "$cfgfile"; exit 1) + + mv -f "$cfgfile" "$ofile" || + (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile") + chmod +x "$ofile" + + + cat <<_LT_EOF >> "$ofile" + +# ### BEGIN LIBTOOL TAG CONFIG: CXX + +# The linker used to build libraries. +LD=$lt_LD_CXX + +# How to create reloadable object files. +reload_flag=$lt_reload_flag_CXX +reload_cmds=$lt_reload_cmds_CXX + +# Commands used to build an old-style archive. +old_archive_cmds=$lt_old_archive_cmds_CXX + +# A language specific compiler. +CC=$lt_compiler_CXX + +# Is the compiler the GNU compiler? +with_gcc=$GCC_CXX + +# Compiler flag to turn off builtin functions. +no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag_CXX + +# Additional compiler flags for building library objects. +pic_flag=$lt_lt_prog_compiler_pic_CXX + +# How to pass a linker flag through the compiler. +wl=$lt_lt_prog_compiler_wl_CXX + +# Compiler flag to prevent dynamic linking. +link_static_flag=$lt_lt_prog_compiler_static_CXX + +# Does compiler simultaneously support -c and -o options? +compiler_c_o=$lt_lt_cv_prog_compiler_c_o_CXX + +# Whether or not to add -lc for building shared libraries. +build_libtool_need_lc=$archive_cmds_need_lc_CXX + +# Whether or not to disallow shared libs when runtime libs are static. +allow_libtool_libs_with_static_runtimes=$enable_shared_with_static_runtimes_CXX + +# Compiler flag to allow reflexive dlopens. +export_dynamic_flag_spec=$lt_export_dynamic_flag_spec_CXX + +# Compiler flag to generate shared objects directly from archives. +whole_archive_flag_spec=$lt_whole_archive_flag_spec_CXX + +# Whether the compiler copes with passing no objects directly. +compiler_needs_object=$lt_compiler_needs_object_CXX + +# Create an old-style archive from a shared archive. +old_archive_from_new_cmds=$lt_old_archive_from_new_cmds_CXX + +# Create a temporary old-style archive to link instead of a shared archive. +old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds_CXX + +# Commands used to build a shared archive. +archive_cmds=$lt_archive_cmds_CXX +archive_expsym_cmds=$lt_archive_expsym_cmds_CXX + +# Commands used to build a loadable module if different from building +# a shared archive. +module_cmds=$lt_module_cmds_CXX +module_expsym_cmds=$lt_module_expsym_cmds_CXX + +# Whether we are building with GNU ld or not. +with_gnu_ld=$lt_with_gnu_ld_CXX + +# Flag that allows shared libraries with undefined symbols to be built. +allow_undefined_flag=$lt_allow_undefined_flag_CXX + +# Flag that enforces no undefined symbols. +no_undefined_flag=$lt_no_undefined_flag_CXX + +# Flag to hardcode \$libdir into a binary during linking. +# This must work even if \$libdir does not exist +hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec_CXX + +# Whether we need a single "-rpath" flag with a separated argument. +hardcode_libdir_separator=$lt_hardcode_libdir_separator_CXX + +# Set to "yes" if using DIR/libNAME\$shared_ext during linking hardcodes +# DIR into the resulting binary. +hardcode_direct=$hardcode_direct_CXX + +# Set to "yes" if using DIR/libNAME\$shared_ext during linking hardcodes +# DIR into the resulting binary and the resulting library dependency is +# "absolute",i.e impossible to change by setting \$shlibpath_var if the +# library is relocated. +hardcode_direct_absolute=$hardcode_direct_absolute_CXX + +# Set to "yes" if using the -LDIR flag during linking hardcodes DIR +# into the resulting binary. +hardcode_minus_L=$hardcode_minus_L_CXX + +# Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR +# into the resulting binary. +hardcode_shlibpath_var=$hardcode_shlibpath_var_CXX + +# Set to "yes" if building a shared library automatically hardcodes DIR +# into the library and all subsequent libraries and executables linked +# against it. +hardcode_automatic=$hardcode_automatic_CXX + +# Set to yes if linker adds runtime paths of dependent libraries +# to runtime path list. +inherit_rpath=$inherit_rpath_CXX + +# Whether libtool must link a program against all its dependency libraries. +link_all_deplibs=$link_all_deplibs_CXX + +# Set to "yes" if exported symbols are required. +always_export_symbols=$always_export_symbols_CXX + +# The commands to list exported symbols. +export_symbols_cmds=$lt_export_symbols_cmds_CXX + +# Symbols that should not be listed in the preloaded symbols. +exclude_expsyms=$lt_exclude_expsyms_CXX + +# Symbols that must always be exported. +include_expsyms=$lt_include_expsyms_CXX + +# Commands necessary for linking programs (against libraries) with templates. +prelink_cmds=$lt_prelink_cmds_CXX + +# Commands necessary for finishing linking programs. +postlink_cmds=$lt_postlink_cmds_CXX + +# Specify filename containing input files. +file_list_spec=$lt_file_list_spec_CXX + +# How to hardcode a shared library path into an executable. +hardcode_action=$hardcode_action_CXX + +# The directories searched by this compiler when creating a shared library. +compiler_lib_search_dirs=$lt_compiler_lib_search_dirs_CXX + +# Dependencies to place before and after the objects being linked to +# create a shared library. +predep_objects=$lt_predep_objects_CXX +postdep_objects=$lt_postdep_objects_CXX +predeps=$lt_predeps_CXX +postdeps=$lt_postdeps_CXX + +# The library search path used internally by the compiler when linking +# a shared library. +compiler_lib_search_path=$lt_compiler_lib_search_path_CXX + +# ### END LIBTOOL TAG CONFIG: CXX +_LT_EOF + + ;; + "include":C) test -d include || mkdir include ;; + "src":C) +test -d src || mkdir src +test -d src/$TARGETDIR || mkdir src/$TARGETDIR + ;; + + esac +done # for ac_tag + + +as_fn_exit 0 +_ACEOF +ac_clean_files=$ac_clean_files_save + +test $ac_write_fail = 0 || + as_fn_error $? "write failure creating $CONFIG_STATUS" "$LINENO" 5 + + +# configure is writing to config.log, and then calls config.status. +# config.status does its own redirection, appending to config.log. +# Unfortunately, on DOS this fails, as config.log is still kept open +# by configure, so config.status won't be able to write to it; its +# output is simply discarded. So we exec the FD to /dev/null, +# effectively closing config.log, so it can be properly (re)opened and +# appended to by config.status. When coming back to configure, we +# need to make the FD available again. +if test "$no_create" != yes; then + ac_cs_success=: + ac_config_status_args= + test "$silent" = yes && + ac_config_status_args="$ac_config_status_args --quiet" + exec 5>/dev/null + $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false + exec 5>>config.log + # Use ||, not &&, to avoid exiting from the if with $? = 1, which + # would make configure fail if this is the last instruction. + $ac_cs_success || as_fn_exit 1 +fi +if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5 +$as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;} +fi + diff --git a/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi/doc/Makefile.am b/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi/doc/Makefile.am new file mode 100644 index 0000000000..43b650aea7 --- /dev/null +++ b/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi/doc/Makefile.am @@ -0,0 +1,3 @@ +## Process this with automake to create Makefile.in + +info_TEXINFOS = libffi.texi diff --git a/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi/doc/Makefile.in b/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi/doc/Makefile.in new file mode 100644 index 0000000000..bf7215fdb3 --- /dev/null +++ b/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi/doc/Makefile.in @@ -0,0 +1,811 @@ +# Makefile.in generated by automake 1.15 from Makefile.am. +# @configure_input@ + +# Copyright (C) 1994-2014 Free Software Foundation, Inc. + +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. + +@SET_MAKE@ +VPATH = @srcdir@ +am__is_gnu_make = { \ + if test -z '$(MAKELEVEL)'; then \ + false; \ + elif test -n '$(MAKE_HOST)'; then \ + true; \ + elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ + true; \ + else \ + false; \ + fi; \ +} +am__make_running_with_option = \ + case $${target_option-} in \ + ?) ;; \ + *) echo "am__make_running_with_option: internal error: invalid" \ + "target option '$${target_option-}' specified" >&2; \ + exit 1;; \ + esac; \ + has_opt=no; \ + sane_makeflags=$$MAKEFLAGS; \ + if $(am__is_gnu_make); then \ + sane_makeflags=$$MFLAGS; \ + else \ + case $$MAKEFLAGS in \ + *\\[\ \ ]*) \ + bs=\\; \ + sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ + | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \ + esac; \ + fi; \ + skip_next=no; \ + strip_trailopt () \ + { \ + flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ + }; \ + for flg in $$sane_makeflags; do \ + test $$skip_next = yes && { skip_next=no; continue; }; \ + case $$flg in \ + *=*|--*) continue;; \ + -*I) strip_trailopt 'I'; skip_next=yes;; \ + -*I?*) strip_trailopt 'I';; \ + -*O) strip_trailopt 'O'; skip_next=yes;; \ + -*O?*) strip_trailopt 'O';; \ + -*l) strip_trailopt 'l'; skip_next=yes;; \ + -*l?*) strip_trailopt 'l';; \ + -[dEDm]) skip_next=yes;; \ + -[JT]) skip_next=yes;; \ + esac; \ + case $$flg in \ + *$$target_option*) has_opt=yes; break;; \ + esac; \ + done; \ + test $$has_opt = yes +am__make_dryrun = (target_option=n; $(am__make_running_with_option)) +am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) +pkgdatadir = $(datadir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +install_sh_DATA = $(install_sh) -c -m 644 +install_sh_PROGRAM = $(install_sh) -c +install_sh_SCRIPT = $(install_sh) -c +INSTALL_HEADER = $(INSTALL_DATA) +transform = $(program_transform_name) +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_triplet = @build@ +host_triplet = @host@ +target_triplet = @target@ +subdir = doc +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/m4/asmcfi.m4 \ + $(top_srcdir)/m4/ax_append_flag.m4 \ + $(top_srcdir)/m4/ax_cc_maxopt.m4 \ + $(top_srcdir)/m4/ax_cflags_warn_all.m4 \ + $(top_srcdir)/m4/ax_check_compile_flag.m4 \ + $(top_srcdir)/m4/ax_compiler_vendor.m4 \ + $(top_srcdir)/m4/ax_configure_args.m4 \ + $(top_srcdir)/m4/ax_enable_builddir.m4 \ + $(top_srcdir)/m4/ax_gcc_archflag.m4 \ + $(top_srcdir)/m4/ax_gcc_x86_cpuid.m4 \ + $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ + $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ + $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/acinclude.m4 \ + $(top_srcdir)/configure.ac +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) +DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/version.texi \ + $(srcdir)/stamp-vti $(am__DIST_COMMON) +mkinstalldirs = $(install_sh) -d +CONFIG_HEADER = $(top_builddir)/fficonfig.h +CONFIG_CLEAN_FILES = +CONFIG_CLEAN_VPATH_FILES = +AM_V_P = $(am__v_P_@AM_V@) +am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) +am__v_P_0 = false +am__v_P_1 = : +AM_V_GEN = $(am__v_GEN_@AM_V@) +am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) +am__v_GEN_0 = @echo " GEN " $@; +am__v_GEN_1 = +AM_V_at = $(am__v_at_@AM_V@) +am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) +am__v_at_0 = @ +am__v_at_1 = +SOURCES = +DIST_SOURCES = +AM_V_DVIPS = $(am__v_DVIPS_@AM_V@) +am__v_DVIPS_ = $(am__v_DVIPS_@AM_DEFAULT_V@) +am__v_DVIPS_0 = @echo " DVIPS " $@; +am__v_DVIPS_1 = +AM_V_MAKEINFO = $(am__v_MAKEINFO_@AM_V@) +am__v_MAKEINFO_ = $(am__v_MAKEINFO_@AM_DEFAULT_V@) +am__v_MAKEINFO_0 = @echo " MAKEINFO" $@; +am__v_MAKEINFO_1 = +AM_V_INFOHTML = $(am__v_INFOHTML_@AM_V@) +am__v_INFOHTML_ = $(am__v_INFOHTML_@AM_DEFAULT_V@) +am__v_INFOHTML_0 = @echo " INFOHTML" $@; +am__v_INFOHTML_1 = +AM_V_TEXI2DVI = $(am__v_TEXI2DVI_@AM_V@) +am__v_TEXI2DVI_ = $(am__v_TEXI2DVI_@AM_DEFAULT_V@) +am__v_TEXI2DVI_0 = @echo " TEXI2DVI" $@; +am__v_TEXI2DVI_1 = +AM_V_TEXI2PDF = $(am__v_TEXI2PDF_@AM_V@) +am__v_TEXI2PDF_ = $(am__v_TEXI2PDF_@AM_DEFAULT_V@) +am__v_TEXI2PDF_0 = @echo " TEXI2PDF" $@; +am__v_TEXI2PDF_1 = +AM_V_texinfo = $(am__v_texinfo_@AM_V@) +am__v_texinfo_ = $(am__v_texinfo_@AM_DEFAULT_V@) +am__v_texinfo_0 = -q +am__v_texinfo_1 = +AM_V_texidevnull = $(am__v_texidevnull_@AM_V@) +am__v_texidevnull_ = $(am__v_texidevnull_@AM_DEFAULT_V@) +am__v_texidevnull_0 = > /dev/null +am__v_texidevnull_1 = +INFO_DEPS = $(srcdir)/libffi.info +am__TEXINFO_TEX_DIR = $(srcdir) +DVIS = libffi.dvi +PDFS = libffi.pdf +PSS = libffi.ps +HTMLS = libffi.html +TEXINFOS = libffi.texi +TEXI2DVI = texi2dvi +TEXI2PDF = $(TEXI2DVI) --pdf --batch +MAKEINFOHTML = $(MAKEINFO) --html +AM_MAKEINFOHTMLFLAGS = $(AM_MAKEINFOFLAGS) +DVIPS = dvips +am__can_run_installinfo = \ + case $$AM_UPDATE_INFO_DIR in \ + n|no|NO) false;; \ + *) (install-info --version) >/dev/null 2>&1;; \ + esac +am__installdirs = "$(DESTDIR)$(infodir)" +am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; +am__vpath_adj = case $$p in \ + $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ + *) f=$$p;; \ + esac; +am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; +am__install_max = 40 +am__nobase_strip_setup = \ + srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` +am__nobase_strip = \ + for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" +am__nobase_list = $(am__nobase_strip_setup); \ + for p in $$list; do echo "$$p $$p"; done | \ + sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ + $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ + if (++n[$$2] == $(am__install_max)) \ + { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ + END { for (dir in files) print dir, files[dir] }' +am__base_list = \ + sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ + sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' +am__uninstall_files_from_dir = { \ + test -z "$$files" \ + || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \ + || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ + $(am__cd) "$$dir" && rm -f $$files; }; \ + } +am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) +am__DIST_COMMON = $(srcdir)/Makefile.in mdate-sh texinfo.tex +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +ACLOCAL = @ACLOCAL@ +ALLOCA = @ALLOCA@ +AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ +AM_LTLDFLAGS = @AM_LTLDFLAGS@ +AM_RUNTESTFLAGS = @AM_RUNTESTFLAGS@ +AR = @AR@ +AUTOCONF = @AUTOCONF@ +AUTOHEADER = @AUTOHEADER@ +AUTOMAKE = @AUTOMAKE@ +AWK = @AWK@ +CC = @CC@ +CCAS = @CCAS@ +CCASDEPMODE = @CCASDEPMODE@ +CCASFLAGS = @CCASFLAGS@ +CCDEPMODE = @CCDEPMODE@ +CFLAGS = @CFLAGS@ +CPP = @CPP@ +CPPFLAGS = @CPPFLAGS@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +CXXDEPMODE = @CXXDEPMODE@ +CXXFLAGS = @CXXFLAGS@ +CYGPATH_W = @CYGPATH_W@ +DEFS = @DEFS@ +DEPDIR = @DEPDIR@ +DLLTOOL = @DLLTOOL@ +DSYMUTIL = @DSYMUTIL@ +DUMPBIN = @DUMPBIN@ +ECHO_C = @ECHO_C@ +ECHO_N = @ECHO_N@ +ECHO_T = @ECHO_T@ +EGREP = @EGREP@ +EXEEXT = @EXEEXT@ +FFI_EXEC_TRAMPOLINE_TABLE = @FFI_EXEC_TRAMPOLINE_TABLE@ +FGREP = @FGREP@ +GREP = @GREP@ +HAVE_LONG_DOUBLE = @HAVE_LONG_DOUBLE@ +HAVE_LONG_DOUBLE_VARIANT = @HAVE_LONG_DOUBLE_VARIANT@ +INSTALL = @INSTALL@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +LD = @LD@ +LDFLAGS = @LDFLAGS@ +LIBOBJS = @LIBOBJS@ +LIBS = @LIBS@ +LIBTOOL = @LIBTOOL@ +LIPO = @LIPO@ +LN_S = @LN_S@ +LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MANIFEST_TOOL = @MANIFEST_TOOL@ +MKDIR_P = @MKDIR_P@ +NM = @NM@ +NMEDIT = @NMEDIT@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +OPT_LDFLAGS = @OPT_LDFLAGS@ +OTOOL = @OTOOL@ +OTOOL64 = @OTOOL64@ +PACKAGE = @PACKAGE@ +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ +PACKAGE_NAME = @PACKAGE_NAME@ +PACKAGE_STRING = @PACKAGE_STRING@ +PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_URL = @PACKAGE_URL@ +PACKAGE_VERSION = @PACKAGE_VERSION@ +PATH_SEPARATOR = @PATH_SEPARATOR@ +PRTDIAG = @PRTDIAG@ +RANLIB = @RANLIB@ +SECTION_LDFLAGS = @SECTION_LDFLAGS@ +SED = @SED@ +SET_MAKE = @SET_MAKE@ +SHELL = @SHELL@ +STRIP = @STRIP@ +TARGET = @TARGET@ +TARGETDIR = @TARGETDIR@ +TARGET_OBJ = @TARGET_OBJ@ +VERSION = @VERSION@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ +ac_ct_AR = @ac_ct_AR@ +ac_ct_CC = @ac_ct_CC@ +ac_ct_CXX = @ac_ct_CXX@ +ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ +am__include = @am__include@ +am__leading_dot = @am__leading_dot@ +am__quote = @am__quote@ +am__tar = @am__tar@ +am__untar = @am__untar@ +ax_enable_builddir_sed = @ax_enable_builddir_sed@ +bindir = @bindir@ +build = @build@ +build_alias = @build_alias@ +build_cpu = @build_cpu@ +build_os = @build_os@ +build_vendor = @build_vendor@ +builddir = @builddir@ +datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ +exec_prefix = @exec_prefix@ +host = @host@ +host_alias = @host_alias@ +host_cpu = @host_cpu@ +host_os = @host_os@ +host_vendor = @host_vendor@ +htmldir = @htmldir@ +includedir = @includedir@ +infodir = @infodir@ +install_sh = @install_sh@ +libdir = @libdir@ +libexecdir = @libexecdir@ +localedir = @localedir@ +localstatedir = @localstatedir@ +mandir = @mandir@ +mkdir_p = @mkdir_p@ +oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ +prefix = @prefix@ +program_transform_name = @program_transform_name@ +psdir = @psdir@ +runstatedir = @runstatedir@ +sbindir = @sbindir@ +sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ +sys_symbol_underscore = @sys_symbol_underscore@ +sysconfdir = @sysconfdir@ +target = @target@ +target_alias = @target_alias@ +target_cpu = @target_cpu@ +target_os = @target_os@ +target_vendor = @target_vendor@ +toolexecdir = @toolexecdir@ +toolexeclibdir = @toolexeclibdir@ +top_build_prefix = @top_build_prefix@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ +info_TEXINFOS = libffi.texi +all: all-am + +.SUFFIXES: +.SUFFIXES: .dvi .html .info .pdf .ps .texi +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ + && { if test -f $@; then exit 0; else break; fi; }; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu doc/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --gnu doc/Makefile +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + @case '$?' in \ + *config.status*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ + *) \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + esac; + +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh + +$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(am__aclocal_m4_deps): + +mostlyclean-libtool: + -rm -f *.lo + +clean-libtool: + -rm -rf .libs _libs + +.texi.info: + $(AM_V_MAKEINFO)restore=: && backupdir="$(am__leading_dot)am$$$$" && \ + am__cwd=`pwd` && $(am__cd) $(srcdir) && \ + rm -rf $$backupdir && mkdir $$backupdir && \ + if ($(MAKEINFO) --version) >/dev/null 2>&1; then \ + for f in $@ $@-[0-9] $@-[0-9][0-9] $(@:.info=).i[0-9] $(@:.info=).i[0-9][0-9]; do \ + if test -f $$f; then mv $$f $$backupdir; restore=mv; else :; fi; \ + done; \ + else :; fi && \ + cd "$$am__cwd"; \ + if $(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir) \ + -o $@ $<; \ + then \ + rc=0; \ + $(am__cd) $(srcdir); \ + else \ + rc=$$?; \ + $(am__cd) $(srcdir) && \ + $$restore $$backupdir/* `echo "./$@" | sed 's|[^/]*$$||'`; \ + fi; \ + rm -rf $$backupdir; exit $$rc + +.texi.dvi: + $(AM_V_TEXI2DVI)TEXINPUTS="$(am__TEXINFO_TEX_DIR)$(PATH_SEPARATOR)$$TEXINPUTS" \ + MAKEINFO='$(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir)' \ + $(TEXI2DVI) $(AM_V_texinfo) --build-dir=$(@:.dvi=.t2d) -o $@ $(AM_V_texidevnull) \ + $< + +.texi.pdf: + $(AM_V_TEXI2PDF)TEXINPUTS="$(am__TEXINFO_TEX_DIR)$(PATH_SEPARATOR)$$TEXINPUTS" \ + MAKEINFO='$(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I $(srcdir)' \ + $(TEXI2PDF) $(AM_V_texinfo) --build-dir=$(@:.pdf=.t2p) -o $@ $(AM_V_texidevnull) \ + $< + +.texi.html: + $(AM_V_MAKEINFO)rm -rf $(@:.html=.htp) + $(AM_V_at)if $(MAKEINFOHTML) $(AM_MAKEINFOHTMLFLAGS) $(MAKEINFOFLAGS) -I $(srcdir) \ + -o $(@:.html=.htp) $<; \ + then \ + rm -rf $@ && mv $(@:.html=.htp) $@; \ + else \ + rm -rf $(@:.html=.htp); exit 1; \ + fi +$(srcdir)/libffi.info: libffi.texi $(srcdir)/version.texi +libffi.dvi: libffi.texi $(srcdir)/version.texi +libffi.pdf: libffi.texi $(srcdir)/version.texi +libffi.html: libffi.texi $(srcdir)/version.texi +$(srcdir)/version.texi: @MAINTAINER_MODE_TRUE@ $(srcdir)/stamp-vti +$(srcdir)/stamp-vti: libffi.texi $(top_srcdir)/configure + @(dir=.; test -f ./libffi.texi || dir=$(srcdir); \ + set `$(SHELL) $(srcdir)/mdate-sh $$dir/libffi.texi`; \ + echo "@set UPDATED $$1 $$2 $$3"; \ + echo "@set UPDATED-MONTH $$2 $$3"; \ + echo "@set EDITION $(VERSION)"; \ + echo "@set VERSION $(VERSION)") > vti.tmp$$$$ && \ + (cmp -s vti.tmp$$$$ $(srcdir)/version.texi \ + || (echo "Updating $(srcdir)/version.texi" && \ + cp vti.tmp$$$$ $(srcdir)/version.texi.tmp$$$$ && \ + mv $(srcdir)/version.texi.tmp$$$$ $(srcdir)/version.texi)) && \ + rm -f vti.tmp$$$$ $(srcdir)/version.texi.$$$$ + @cp $(srcdir)/version.texi $@ + +mostlyclean-vti: + -rm -f vti.tmp* $(srcdir)/version.texi.tmp* + +maintainer-clean-vti: +@MAINTAINER_MODE_TRUE@ -rm -f $(srcdir)/stamp-vti $(srcdir)/version.texi +.dvi.ps: + $(AM_V_DVIPS)TEXINPUTS="$(am__TEXINFO_TEX_DIR)$(PATH_SEPARATOR)$$TEXINPUTS" \ + $(DVIPS) $(AM_V_texinfo) -o $@ $< + +uninstall-dvi-am: + @$(NORMAL_UNINSTALL) + @list='$(DVIS)'; test -n "$(dvidir)" || list=; \ + for p in $$list; do \ + $(am__strip_dir) \ + echo " rm -f '$(DESTDIR)$(dvidir)/$$f'"; \ + rm -f "$(DESTDIR)$(dvidir)/$$f"; \ + done + +uninstall-html-am: + @$(NORMAL_UNINSTALL) + @list='$(HTMLS)'; test -n "$(htmldir)" || list=; \ + for p in $$list; do \ + $(am__strip_dir) \ + echo " rm -rf '$(DESTDIR)$(htmldir)/$$f'"; \ + rm -rf "$(DESTDIR)$(htmldir)/$$f"; \ + done + +uninstall-info-am: + @$(PRE_UNINSTALL) + @if test -d '$(DESTDIR)$(infodir)' && $(am__can_run_installinfo); then \ + list='$(INFO_DEPS)'; \ + for file in $$list; do \ + relfile=`echo "$$file" | sed 's|^.*/||'`; \ + echo " install-info --info-dir='$(DESTDIR)$(infodir)' --remove '$(DESTDIR)$(infodir)/$$relfile'"; \ + if install-info --info-dir="$(DESTDIR)$(infodir)" --remove "$(DESTDIR)$(infodir)/$$relfile"; \ + then :; else test ! -f "$(DESTDIR)$(infodir)/$$relfile" || exit 1; fi; \ + done; \ + else :; fi + @$(NORMAL_UNINSTALL) + @list='$(INFO_DEPS)'; \ + for file in $$list; do \ + relfile=`echo "$$file" | sed 's|^.*/||'`; \ + relfile_i=`echo "$$relfile" | sed 's|\.info$$||;s|$$|.i|'`; \ + (if test -d "$(DESTDIR)$(infodir)" && cd "$(DESTDIR)$(infodir)"; then \ + echo " cd '$(DESTDIR)$(infodir)' && rm -f $$relfile $$relfile-[0-9] $$relfile-[0-9][0-9] $$relfile_i[0-9] $$relfile_i[0-9][0-9]"; \ + rm -f $$relfile $$relfile-[0-9] $$relfile-[0-9][0-9] $$relfile_i[0-9] $$relfile_i[0-9][0-9]; \ + else :; fi); \ + done + +uninstall-pdf-am: + @$(NORMAL_UNINSTALL) + @list='$(PDFS)'; test -n "$(pdfdir)" || list=; \ + for p in $$list; do \ + $(am__strip_dir) \ + echo " rm -f '$(DESTDIR)$(pdfdir)/$$f'"; \ + rm -f "$(DESTDIR)$(pdfdir)/$$f"; \ + done + +uninstall-ps-am: + @$(NORMAL_UNINSTALL) + @list='$(PSS)'; test -n "$(psdir)" || list=; \ + for p in $$list; do \ + $(am__strip_dir) \ + echo " rm -f '$(DESTDIR)$(psdir)/$$f'"; \ + rm -f "$(DESTDIR)$(psdir)/$$f"; \ + done + +dist-info: $(INFO_DEPS) + @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ + list='$(INFO_DEPS)'; \ + for base in $$list; do \ + case $$base in \ + $(srcdir)/*) base=`echo "$$base" | sed "s|^$$srcdirstrip/||"`;; \ + esac; \ + if test -f $$base; then d=.; else d=$(srcdir); fi; \ + base_i=`echo "$$base" | sed 's|\.info$$||;s|$$|.i|'`; \ + for file in $$d/$$base $$d/$$base-[0-9] $$d/$$base-[0-9][0-9] $$d/$$base_i[0-9] $$d/$$base_i[0-9][0-9]; do \ + if test -f $$file; then \ + relfile=`expr "$$file" : "$$d/\(.*\)"`; \ + test -f "$(distdir)/$$relfile" || \ + cp -p $$file "$(distdir)/$$relfile"; \ + else :; fi; \ + done; \ + done + +mostlyclean-aminfo: + -rm -rf libffi.t2d libffi.t2p + +clean-aminfo: + -test -z "libffi.dvi libffi.pdf libffi.ps libffi.html" \ + || rm -rf libffi.dvi libffi.pdf libffi.ps libffi.html + +maintainer-clean-aminfo: + @list='$(INFO_DEPS)'; for i in $$list; do \ + i_i=`echo "$$i" | sed 's|\.info$$||;s|$$|.i|'`; \ + echo " rm -f $$i $$i-[0-9] $$i-[0-9][0-9] $$i_i[0-9] $$i_i[0-9][0-9]"; \ + rm -f $$i $$i-[0-9] $$i-[0-9][0-9] $$i_i[0-9] $$i_i[0-9][0-9]; \ + done +tags TAGS: + +ctags CTAGS: + +cscope cscopelist: + + +distdir: $(DISTFILES) + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ + else \ + test -f "$(distdir)/$$file" \ + || cp -p $$d/$$file "$(distdir)/$$file" \ + || exit 1; \ + fi; \ + done + $(MAKE) $(AM_MAKEFLAGS) \ + top_distdir="$(top_distdir)" distdir="$(distdir)" \ + dist-info +check-am: all-am +check: check-am +all-am: Makefile $(INFO_DEPS) +installdirs: + for dir in "$(DESTDIR)$(infodir)"; do \ + test -z "$$dir" || $(MKDIR_P) "$$dir"; \ + done +install: install-am +install-exec: install-exec-am +install-data: install-data-am +uninstall: uninstall-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am + +installcheck: installcheck-am +install-strip: + if test -z '$(STRIP)'; then \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + install; \ + else \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ + fi +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) + +maintainer-clean-generic: + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." +clean: clean-am + +clean-am: clean-aminfo clean-generic clean-libtool mostlyclean-am + +distclean: distclean-am + -rm -f Makefile +distclean-am: clean-am distclean-generic + +dvi: dvi-am + +dvi-am: $(DVIS) + +html: html-am + +html-am: $(HTMLS) + +info: info-am + +info-am: $(INFO_DEPS) + +install-data-am: install-info-am + +install-dvi: install-dvi-am + +install-dvi-am: $(DVIS) + @$(NORMAL_INSTALL) + @list='$(DVIS)'; test -n "$(dvidir)" || list=; \ + if test -n "$$list"; then \ + echo " $(MKDIR_P) '$(DESTDIR)$(dvidir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(dvidir)" || exit 1; \ + fi; \ + for p in $$list; do \ + if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ + echo "$$d$$p"; \ + done | $(am__base_list) | \ + while read files; do \ + echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(dvidir)'"; \ + $(INSTALL_DATA) $$files "$(DESTDIR)$(dvidir)" || exit $$?; \ + done +install-exec-am: + +install-html: install-html-am + +install-html-am: $(HTMLS) + @$(NORMAL_INSTALL) + @list='$(HTMLS)'; list2=; test -n "$(htmldir)" || list=; \ + if test -n "$$list"; then \ + echo " $(MKDIR_P) '$(DESTDIR)$(htmldir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(htmldir)" || exit 1; \ + fi; \ + for p in $$list; do \ + if test -f "$$p" || test -d "$$p"; then d=; else d="$(srcdir)/"; fi; \ + $(am__strip_dir) \ + d2=$$d$$p; \ + if test -d "$$d2"; then \ + echo " $(MKDIR_P) '$(DESTDIR)$(htmldir)/$$f'"; \ + $(MKDIR_P) "$(DESTDIR)$(htmldir)/$$f" || exit 1; \ + echo " $(INSTALL_DATA) '$$d2'/* '$(DESTDIR)$(htmldir)/$$f'"; \ + $(INSTALL_DATA) "$$d2"/* "$(DESTDIR)$(htmldir)/$$f" || exit $$?; \ + else \ + list2="$$list2 $$d2"; \ + fi; \ + done; \ + test -z "$$list2" || { echo "$$list2" | $(am__base_list) | \ + while read files; do \ + echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(htmldir)'"; \ + $(INSTALL_DATA) $$files "$(DESTDIR)$(htmldir)" || exit $$?; \ + done; } +install-info: install-info-am + +install-info-am: $(INFO_DEPS) + @$(NORMAL_INSTALL) + @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ + list='$(INFO_DEPS)'; test -n "$(infodir)" || list=; \ + if test -n "$$list"; then \ + echo " $(MKDIR_P) '$(DESTDIR)$(infodir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(infodir)" || exit 1; \ + fi; \ + for file in $$list; do \ + case $$file in \ + $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \ + esac; \ + if test -f $$file; then d=.; else d=$(srcdir); fi; \ + file_i=`echo "$$file" | sed 's|\.info$$||;s|$$|.i|'`; \ + for ifile in $$d/$$file $$d/$$file-[0-9] $$d/$$file-[0-9][0-9] \ + $$d/$$file_i[0-9] $$d/$$file_i[0-9][0-9] ; do \ + if test -f $$ifile; then \ + echo "$$ifile"; \ + else : ; fi; \ + done; \ + done | $(am__base_list) | \ + while read files; do \ + echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(infodir)'"; \ + $(INSTALL_DATA) $$files "$(DESTDIR)$(infodir)" || exit $$?; done + @$(POST_INSTALL) + @if $(am__can_run_installinfo); then \ + list='$(INFO_DEPS)'; test -n "$(infodir)" || list=; \ + for file in $$list; do \ + relfile=`echo "$$file" | sed 's|^.*/||'`; \ + echo " install-info --info-dir='$(DESTDIR)$(infodir)' '$(DESTDIR)$(infodir)/$$relfile'";\ + install-info --info-dir="$(DESTDIR)$(infodir)" "$(DESTDIR)$(infodir)/$$relfile" || :;\ + done; \ + else : ; fi +install-man: + +install-pdf: install-pdf-am + +install-pdf-am: $(PDFS) + @$(NORMAL_INSTALL) + @list='$(PDFS)'; test -n "$(pdfdir)" || list=; \ + if test -n "$$list"; then \ + echo " $(MKDIR_P) '$(DESTDIR)$(pdfdir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(pdfdir)" || exit 1; \ + fi; \ + for p in $$list; do \ + if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ + echo "$$d$$p"; \ + done | $(am__base_list) | \ + while read files; do \ + echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(pdfdir)'"; \ + $(INSTALL_DATA) $$files "$(DESTDIR)$(pdfdir)" || exit $$?; done +install-ps: install-ps-am + +install-ps-am: $(PSS) + @$(NORMAL_INSTALL) + @list='$(PSS)'; test -n "$(psdir)" || list=; \ + if test -n "$$list"; then \ + echo " $(MKDIR_P) '$(DESTDIR)$(psdir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(psdir)" || exit 1; \ + fi; \ + for p in $$list; do \ + if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ + echo "$$d$$p"; \ + done | $(am__base_list) | \ + while read files; do \ + echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(psdir)'"; \ + $(INSTALL_DATA) $$files "$(DESTDIR)$(psdir)" || exit $$?; done +installcheck-am: + +maintainer-clean: maintainer-clean-am + -rm -f Makefile +maintainer-clean-am: distclean-am maintainer-clean-aminfo \ + maintainer-clean-generic maintainer-clean-vti + +mostlyclean: mostlyclean-am + +mostlyclean-am: mostlyclean-aminfo mostlyclean-generic \ + mostlyclean-libtool mostlyclean-vti + +pdf: pdf-am + +pdf-am: $(PDFS) + +ps: ps-am + +ps-am: $(PSS) + +uninstall-am: uninstall-dvi-am uninstall-html-am uninstall-info-am \ + uninstall-pdf-am uninstall-ps-am + +.MAKE: install-am install-strip + +.PHONY: all all-am check check-am clean clean-aminfo clean-generic \ + clean-libtool cscopelist-am ctags-am dist-info distclean \ + distclean-generic distclean-libtool distdir dvi dvi-am html \ + html-am info info-am install install-am install-data \ + install-data-am install-dvi install-dvi-am install-exec \ + install-exec-am install-html install-html-am install-info \ + install-info-am install-man install-pdf install-pdf-am \ + install-ps install-ps-am install-strip installcheck \ + installcheck-am installdirs maintainer-clean \ + maintainer-clean-aminfo maintainer-clean-generic \ + maintainer-clean-vti mostlyclean mostlyclean-aminfo \ + mostlyclean-generic mostlyclean-libtool mostlyclean-vti pdf \ + pdf-am ps ps-am tags-am uninstall uninstall-am \ + uninstall-dvi-am uninstall-html-am uninstall-info-am \ + uninstall-pdf-am uninstall-ps-am + +.PRECIOUS: Makefile + + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff --git a/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi/doc/libffi.texi b/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi/doc/libffi.texi new file mode 100644 index 0000000000..8cfa1c0f44 --- /dev/null +++ b/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi/doc/libffi.texi @@ -0,0 +1,985 @@ +\input texinfo @c -*-texinfo-*- +@c %**start of header +@setfilename libffi.info +@settitle libffi +@setchapternewpage off +@c %**end of header + +@c Merge the standard indexes into a single one. +@syncodeindex fn cp +@syncodeindex vr cp +@syncodeindex ky cp +@syncodeindex pg cp +@syncodeindex tp cp + +@include version.texi + +@copying + +This manual is for Libffi, a portable foreign-function interface +library. + +Copyright @copyright{} 2008, 2010, 2011 Red Hat, Inc. + +@quotation +Permission is granted to copy, distribute and/or modify this document +under the terms of the GNU General Public License as published by the +Free Software Foundation; either version 2, or (at your option) any +later version. A copy of the license is included in the +section entitled ``GNU General Public License''. + +@end quotation +@end copying + +@dircategory Development +@direntry +* libffi: (libffi). Portable foreign-function interface library. +@end direntry + +@titlepage +@title Libffi +@page +@vskip 0pt plus 1filll +@insertcopying +@end titlepage + + +@ifnottex +@node Top +@top libffi + +@insertcopying + +@menu +* Introduction:: What is libffi? +* Using libffi:: How to use libffi. +* Missing Features:: Things libffi can't do. +* Index:: Index. +@end menu + +@end ifnottex + + +@node Introduction +@chapter What is libffi? + +Compilers for high level languages generate code that follow certain +conventions. These conventions are necessary, in part, for separate +compilation to work. One such convention is the @dfn{calling +convention}. The calling convention is a set of assumptions made by +the compiler about where function arguments will be found on entry to +a function. A calling convention also specifies where the return +value for a function is found. The calling convention is also +sometimes called the @dfn{ABI} or @dfn{Application Binary Interface}. +@cindex calling convention +@cindex ABI +@cindex Application Binary Interface + +Some programs may not know at the time of compilation what arguments +are to be passed to a function. For instance, an interpreter may be +told at run-time about the number and types of arguments used to call +a given function. @samp{Libffi} can be used in such programs to +provide a bridge from the interpreter program to compiled code. + +The @samp{libffi} library provides a portable, high level programming +interface to various calling conventions. This allows a programmer to +call any function specified by a call interface description at run +time. + +@acronym{FFI} stands for Foreign Function Interface. A foreign +function interface is the popular name for the interface that allows +code written in one language to call code written in another language. +The @samp{libffi} library really only provides the lowest, machine +dependent layer of a fully featured foreign function interface. A +layer must exist above @samp{libffi} that handles type conversions for +values passed between the two languages. +@cindex FFI +@cindex Foreign Function Interface + + +@node Using libffi +@chapter Using libffi + +@menu +* The Basics:: The basic libffi API. +* Simple Example:: A simple example. +* Types:: libffi type descriptions. +* Multiple ABIs:: Different passing styles on one platform. +* The Closure API:: Writing a generic function. +* Closure Example:: A closure example. +* Thread Safety:: Thread safety. +@end menu + + +@node The Basics +@section The Basics + +@samp{Libffi} assumes that you have a pointer to the function you wish +to call and that you know the number and types of arguments to pass +it, as well as the return type of the function. + +The first thing you must do is create an @code{ffi_cif} object that +matches the signature of the function you wish to call. This is a +separate step because it is common to make multiple calls using a +single @code{ffi_cif}. The @dfn{cif} in @code{ffi_cif} stands for +Call InterFace. To prepare a call interface object, use the function +@code{ffi_prep_cif}. +@cindex cif + +@findex ffi_prep_cif +@defun ffi_status ffi_prep_cif (ffi_cif *@var{cif}, ffi_abi @var{abi}, unsigned int @var{nargs}, ffi_type *@var{rtype}, ffi_type **@var{argtypes}) +This initializes @var{cif} according to the given parameters. + +@var{abi} is the ABI to use; normally @code{FFI_DEFAULT_ABI} is what +you want. @ref{Multiple ABIs} for more information. + +@var{nargs} is the number of arguments that this function accepts. + +@var{rtype} is a pointer to an @code{ffi_type} structure that +describes the return type of the function. @xref{Types}. + +@var{argtypes} is a vector of @code{ffi_type} pointers. +@var{argtypes} must have @var{nargs} elements. If @var{nargs} is 0, +this argument is ignored. + +@code{ffi_prep_cif} returns a @code{libffi} status code, of type +@code{ffi_status}. This will be either @code{FFI_OK} if everything +worked properly; @code{FFI_BAD_TYPEDEF} if one of the @code{ffi_type} +objects is incorrect; or @code{FFI_BAD_ABI} if the @var{abi} parameter +is invalid. +@end defun + +If the function being called is variadic (varargs) then +@code{ffi_prep_cif_var} must be used instead of @code{ffi_prep_cif}. + +@findex ffi_prep_cif_var +@defun ffi_status ffi_prep_cif_var (ffi_cif *@var{cif}, ffi_abi @var{abi}, unsigned int @var{nfixedargs}, unsigned int @var{ntotalargs}, ffi_type *@var{rtype}, ffi_type **@var{argtypes}) +This initializes @var{cif} according to the given parameters for +a call to a variadic function. In general its operation is the +same as for @code{ffi_prep_cif} except that: + +@var{nfixedargs} is the number of fixed arguments, prior to any +variadic arguments. It must be greater than zero. + +@var{ntotalargs} the total number of arguments, including variadic +and fixed arguments. @var{argtypes} must have this many elements. + +Note that, different cif's must be prepped for calls to the same +function when different numbers of arguments are passed. + +Also note that a call to @code{ffi_prep_cif_var} with +@var{nfixedargs}=@var{nototalargs} is NOT equivalent to a call to +@code{ffi_prep_cif}. + +@end defun + +Note that the resulting @code{ffi_cif} holds pointers to all the +@code{ffi_type} objects that were used during initialization. You +must ensure that these type objects have a lifetime at least as long +as that of the @code{ffi_cif}. + +To call a function using an initialized @code{ffi_cif}, use the +@code{ffi_call} function: + +@findex ffi_call +@defun void ffi_call (ffi_cif *@var{cif}, void *@var{fn}, void *@var{rvalue}, void **@var{avalues}) +This calls the function @var{fn} according to the description given in +@var{cif}. @var{cif} must have already been prepared using +@code{ffi_prep_cif}. + +@var{rvalue} is a pointer to a chunk of memory that will hold the +result of the function call. This must be large enough to hold the +result, no smaller than the system register size (generally 32 or 64 +bits), and must be suitably aligned; it is the caller's responsibility +to ensure this. If @var{cif} declares that the function returns +@code{void} (using @code{ffi_type_void}), then @var{rvalue} is +ignored. + +In most situations, @samp{libffi} will handle promotion according to +the ABI. However, for historical reasons, there is a special case +with return values that must be handled by your code. In particular, +for integral (not @code{struct}) types that are narrower than the +system register size, the return value will be widened by +@samp{libffi}. @samp{libffi} provides a type, @code{ffi_arg}, that +can be used as the return type. For example, if the CIF was defined +with a return type of @code{char}, @samp{libffi} will try to store a +full @code{ffi_arg} into the return value. + +@var{avalues} is a vector of @code{void *} pointers that point to the +memory locations holding the argument values for a call. If @var{cif} +declares that the function has no arguments (i.e., @var{nargs} was 0), +then @var{avalues} is ignored. Note that argument values may be +modified by the callee (for instance, structs passed by value); the +burden of copying pass-by-value arguments is placed on the caller. + +Note that while the return value must be register-sized, arguments +should exactly match their declared type. For example, if an argument +is a @code{short}, then the entry in @var{avalues} should point to an +object declared as @code{short}; but if the return type is +@code{short}, then @var{rvalue} should point to an object declared as +a larger type -- usually @code{ffi_arg}. +@end defun + + +@node Simple Example +@section Simple Example + +Here is a trivial example that calls @code{puts} a few times. + +@example +#include +#include + +int main() +@{ + ffi_cif cif; + ffi_type *args[1]; + void *values[1]; + char *s; + ffi_arg rc; + + /* Initialize the argument info vectors */ + args[0] = &ffi_type_pointer; + values[0] = &s; + + /* Initialize the cif */ + if (ffi_prep_cif(&cif, FFI_DEFAULT_ABI, 1, + &ffi_type_sint, args) == FFI_OK) + @{ + s = "Hello World!"; + ffi_call(&cif, puts, &rc, values); + /* rc now holds the result of the call to puts */ + + /* values holds a pointer to the function's arg, so to + call puts() again all we need to do is change the + value of s */ + s = "This is cool!"; + ffi_call(&cif, puts, &rc, values); + @} + + return 0; +@} +@end example + + +@node Types +@section Types + +@menu +* Primitive Types:: Built-in types. +* Structures:: Structure types. +* Size and Alignment:: Size and alignment of types. +* Arrays Unions Enums:: Arrays, unions, and enumerations. +* Type Example:: Structure type example. +* Complex:: Complex types. +* Complex Type Example:: Complex type example. +@end menu + +@node Primitive Types +@subsection Primitive Types + +@code{Libffi} provides a number of built-in type descriptors that can +be used to describe argument and return types: + +@table @code +@item ffi_type_void +@tindex ffi_type_void +The type @code{void}. This cannot be used for argument types, only +for return values. + +@item ffi_type_uint8 +@tindex ffi_type_uint8 +An unsigned, 8-bit integer type. + +@item ffi_type_sint8 +@tindex ffi_type_sint8 +A signed, 8-bit integer type. + +@item ffi_type_uint16 +@tindex ffi_type_uint16 +An unsigned, 16-bit integer type. + +@item ffi_type_sint16 +@tindex ffi_type_sint16 +A signed, 16-bit integer type. + +@item ffi_type_uint32 +@tindex ffi_type_uint32 +An unsigned, 32-bit integer type. + +@item ffi_type_sint32 +@tindex ffi_type_sint32 +A signed, 32-bit integer type. + +@item ffi_type_uint64 +@tindex ffi_type_uint64 +An unsigned, 64-bit integer type. + +@item ffi_type_sint64 +@tindex ffi_type_sint64 +A signed, 64-bit integer type. + +@item ffi_type_float +@tindex ffi_type_float +The C @code{float} type. + +@item ffi_type_double +@tindex ffi_type_double +The C @code{double} type. + +@item ffi_type_uchar +@tindex ffi_type_uchar +The C @code{unsigned char} type. + +@item ffi_type_schar +@tindex ffi_type_schar +The C @code{signed char} type. (Note that there is not an exact +equivalent to the C @code{char} type in @code{libffi}; ordinarily you +should either use @code{ffi_type_schar} or @code{ffi_type_uchar} +depending on whether @code{char} is signed.) + +@item ffi_type_ushort +@tindex ffi_type_ushort +The C @code{unsigned short} type. + +@item ffi_type_sshort +@tindex ffi_type_sshort +The C @code{short} type. + +@item ffi_type_uint +@tindex ffi_type_uint +The C @code{unsigned int} type. + +@item ffi_type_sint +@tindex ffi_type_sint +The C @code{int} type. + +@item ffi_type_ulong +@tindex ffi_type_ulong +The C @code{unsigned long} type. + +@item ffi_type_slong +@tindex ffi_type_slong +The C @code{long} type. + +@item ffi_type_longdouble +@tindex ffi_type_longdouble +On platforms that have a C @code{long double} type, this is defined. +On other platforms, it is not. + +@item ffi_type_pointer +@tindex ffi_type_pointer +A generic @code{void *} pointer. You should use this for all +pointers, regardless of their real type. + +@item ffi_type_complex_float +@tindex ffi_type_complex_float +The C @code{_Complex float} type. + +@item ffi_type_complex_double +@tindex ffi_type_complex_double +The C @code{_Complex double} type. + +@item ffi_type_complex_longdouble +@tindex ffi_type_complex_longdouble +The C @code{_Complex long double} type. +On platforms that have a C @code{long double} type, this is defined. +On other platforms, it is not. +@end table + +Each of these is of type @code{ffi_type}, so you must take the address +when passing to @code{ffi_prep_cif}. + + +@node Structures +@subsection Structures + +@samp{libffi} is perfectly happy passing structures back and forth. +You must first describe the structure to @samp{libffi} by creating a +new @code{ffi_type} object for it. + +@tindex ffi_type +@deftp {Data type} ffi_type +The @code{ffi_type} has the following members: +@table @code +@item size_t size +This is set by @code{libffi}; you should initialize it to zero. + +@item unsigned short alignment +This is set by @code{libffi}; you should initialize it to zero. + +@item unsigned short type +For a structure, this should be set to @code{FFI_TYPE_STRUCT}. + +@item ffi_type **elements +This is a @samp{NULL}-terminated array of pointers to @code{ffi_type} +objects. There is one element per field of the struct. + +Note that @samp{libffi} has no special support for bit-fields. You +must manage these manually. +@end table +@end deftp + +The @code{size} and @code{alignment} fields will be filled in by +@code{ffi_prep_cif} or @code{ffi_prep_cif_var}, as needed. + +@node Size and Alignment +@subsection Size and Alignment + +@code{libffi} will set the @code{size} and @code{alignment} fields of +an @code{ffi_type} object for you. It does so using its knowledge of +the ABI. + +You might expect that you can simply read these fields for a type that +has been laid out by @code{libffi}. However, there are some caveats. + +@itemize @bullet +@item +The size or alignment of some of the built-in types may vary depending +on the chosen ABI. + +@item +The size and alignment of a new structure type will not be set by +@code{libffi} until it has been passed to @code{ffi_prep_cif} or +@code{ffi_get_struct_offsets}. + +@item +A structure type cannot be shared across ABIs. Instead each ABI needs +its own copy of the structure type. +@end itemize + +So, before examining these fields, it is safest to pass the +@code{ffi_type} object to @code{ffi_prep_cif} or +@code{ffi_get_struct_offsets} first. This function will do all the +needed setup. + +@example +ffi_type *desired_type; +ffi_abi desired_abi; +@dots{} +ffi_cif cif; +if (ffi_prep_cif (&cif, desired_abi, 0, desired_type, NULL) == FFI_OK) + @{ + size_t size = desired_type->size; + unsigned short alignment = desired_type->alignment; + @} +@end example + +@code{libffi} also provides a way to get the offsets of the members of +a structure. + +@findex ffi_get_struct_offsets +@defun ffi_status ffi_get_struct_offsets (ffi_abi abi, ffi_type *struct_type, size_t *offsets) +Compute the offset of each element of the given structure type. +@var{abi} is the ABI to use; this is needed because in some cases the +layout depends on the ABI. + +@var{offsets} is an out parameter. The caller is responsible for +providing enough space for all the results to be written -- one +element per element type in @var{struct_type}. If @var{offsets} is +@code{NULL}, then the type will be laid out but not otherwise +modified. This can be useful for accessing the type's size or layout, +as mentioned above. + +This function returns @code{FFI_OK} on success; @code{FFI_BAD_ABI} if +@var{abi} is invalid; or @code{FFI_BAD_TYPEDEF} if @var{struct_type} +is invalid in some way. Note that only @code{FFI_STRUCT} types are +valid here. +@end defun + +@node Arrays Unions Enums +@subsection Arrays, Unions, and Enumerations + +@subsubsection Arrays + +@samp{libffi} does not have direct support for arrays or unions. +However, they can be emulated using structures. + +To emulate an array, simply create an @code{ffi_type} using +@code{FFI_TYPE_STRUCT} with as many members as there are elements in +the array. + +@example +ffi_type array_type; +ffi_type **elements +int i; + +elements = malloc ((n + 1) * sizeof (ffi_type *)); +for (i = 0; i < n; ++i) + elements[i] = array_element_type; +elements[n] = NULL; + +array_type.size = array_type.alignment = 0; +array_type.type = FFI_TYPE_STRUCT; +array_type.elements = elements; +@end example + +Note that arrays cannot be passed or returned by value in C -- +structure types created like this should only be used to refer to +members of real @code{FFI_TYPE_STRUCT} objects. + +However, a phony array type like this will not cause any errors from +@samp{libffi} if you use it as an argument or return type. This may +be confusing. + +@subsubsection Unions + +A union can also be emulated using @code{FFI_TYPE_STRUCT}. In this +case, however, you must make sure that the size and alignment match +the real requirements of the union. + +One simple way to do this is to ensue that each element type is laid +out. Then, give the new structure type a single element; the size of +the largest element; and the largest alignment seen as well. + +This example uses the @code{ffi_prep_cif} trick to ensure that each +element type is laid out. + +@example +ffi_abi desired_abi; +ffi_type union_type; +ffi_type **union_elements; + +int i; +ffi_type element_types[2]; + +element_types[1] = NULL; + +union_type.size = union_type.alignment = 0; +union_type.type = FFI_TYPE_STRUCT; +union_type.elements = element_types; + +for (i = 0; union_elements[i]; ++i) + @{ + ffi_cif cif; + if (ffi_prep_cif (&cif, desired_abi, 0, union_elements[i], NULL) == FFI_OK) + @{ + if (union_elements[i]->size > union_type.size) + @{ + union_type.size = union_elements[i]; + size = union_elements[i]->size; + @} + if (union_elements[i]->alignment > union_type.alignment) + union_type.alignment = union_elements[i]->alignment; + @} + @} +@end example + +@subsubsection Enumerations + +@code{libffi} does not have any special support for C @code{enum}s. +Although any given @code{enum} is implemented using a specific +underlying integral type, exactly which type will be used cannot be +determined by @code{libffi} -- it may depend on the values in the +enumeration or on compiler flags such as @option{-fshort-enums}. +@xref{Structures unions enumerations and bit-fields implementation, , , gcc}, +for more information about how GCC handles enumerations. + +@node Type Example +@subsection Type Example + +The following example initializes a @code{ffi_type} object +representing the @code{tm} struct from Linux's @file{time.h}. + +Here is how the struct is defined: + +@example +struct tm @{ + int tm_sec; + int tm_min; + int tm_hour; + int tm_mday; + int tm_mon; + int tm_year; + int tm_wday; + int tm_yday; + int tm_isdst; + /* Those are for future use. */ + long int __tm_gmtoff__; + __const char *__tm_zone__; +@}; +@end example + +Here is the corresponding code to describe this struct to +@code{libffi}: + +@example + @{ + ffi_type tm_type; + ffi_type *tm_type_elements[12]; + int i; + + tm_type.size = tm_type.alignment = 0; + tm_type.type = FFI_TYPE_STRUCT; + tm_type.elements = &tm_type_elements; + + for (i = 0; i < 9; i++) + tm_type_elements[i] = &ffi_type_sint; + + tm_type_elements[9] = &ffi_type_slong; + tm_type_elements[10] = &ffi_type_pointer; + tm_type_elements[11] = NULL; + + /* tm_type can now be used to represent tm argument types and + return types for ffi_prep_cif() */ + @} +@end example + +@node Complex +@subsection Complex Types + +@samp{libffi} supports the complex types defined by the C99 +standard (@code{_Complex float}, @code{_Complex double} and +@code{_Complex long double} with the built-in type descriptors +@code{ffi_type_complex_float}, @code{ffi_type_complex_double} and +@code{ffi_type_complex_longdouble}. + +Custom complex types like @code{_Complex int} can also be used. +An @code{ffi_type} object has to be defined to describe the +complex type to @samp{libffi}. + +@tindex ffi_type +@deftp {Data type} ffi_type +@table @code +@item size_t size +This must be manually set to the size of the complex type. + +@item unsigned short alignment +This must be manually set to the alignment of the complex type. + +@item unsigned short type +For a complex type, this must be set to @code{FFI_TYPE_COMPLEX}. + +@item ffi_type **elements + +This is a @samp{NULL}-terminated array of pointers to +@code{ffi_type} objects. The first element is set to the +@code{ffi_type} of the complex's base type. The second element +must be set to @code{NULL}. +@end table +@end deftp + +The section @ref{Complex Type Example} shows a way to determine +the @code{size} and @code{alignment} members in a platform +independent way. + +For platforms that have no complex support in @code{libffi} yet, +the functions @code{ffi_prep_cif} and @code{ffi_prep_args} abort +the program if they encounter a complex type. + +@node Complex Type Example +@subsection Complex Type Example + +This example demonstrates how to use complex types: + +@example +#include +#include +#include + +void complex_fn(_Complex float cf, + _Complex double cd, + _Complex long double cld) +@{ + printf("cf=%f+%fi\ncd=%f+%fi\ncld=%f+%fi\n", + (float)creal (cf), (float)cimag (cf), + (float)creal (cd), (float)cimag (cd), + (float)creal (cld), (float)cimag (cld)); +@} + +int main() +@{ + ffi_cif cif; + ffi_type *args[3]; + void *values[3]; + _Complex float cf; + _Complex double cd; + _Complex long double cld; + + /* Initialize the argument info vectors */ + args[0] = &ffi_type_complex_float; + args[1] = &ffi_type_complex_double; + args[2] = &ffi_type_complex_longdouble; + values[0] = &cf; + values[1] = &cd; + values[2] = &cld; + + /* Initialize the cif */ + if (ffi_prep_cif(&cif, FFI_DEFAULT_ABI, 3, + &ffi_type_void, args) == FFI_OK) + @{ + cf = 1.0 + 20.0 * I; + cd = 300.0 + 4000.0 * I; + cld = 50000.0 + 600000.0 * I; + /* Call the function */ + ffi_call(&cif, (void (*)(void))complex_fn, 0, values); + @} + + return 0; +@} +@end example + +This is an example for defining a custom complex type descriptor +for compilers that support them: + +@example +/* + * This macro can be used to define new complex type descriptors + * in a platform independent way. + * + * name: Name of the new descriptor is ffi_type_complex_. + * type: The C base type of the complex type. + */ +#define FFI_COMPLEX_TYPEDEF(name, type, ffitype) \ + static ffi_type *ffi_elements_complex_##name [2] = @{ \ + (ffi_type *)(&ffitype), NULL \ + @}; \ + struct struct_align_complex_##name @{ \ + char c; \ + _Complex type x; \ + @}; \ + ffi_type ffi_type_complex_##name = @{ \ + sizeof(_Complex type), \ + offsetof(struct struct_align_complex_##name, x), \ + FFI_TYPE_COMPLEX, \ + (ffi_type **)ffi_elements_complex_##name \ + @} + +/* Define new complex type descriptors using the macro: */ +/* ffi_type_complex_sint */ +FFI_COMPLEX_TYPEDEF(sint, int, ffi_type_sint); +/* ffi_type_complex_uchar */ +FFI_COMPLEX_TYPEDEF(uchar, unsigned char, ffi_type_uint8); +@end example + +The new type descriptors can then be used like one of the built-in +type descriptors in the previous example. + +@node Multiple ABIs +@section Multiple ABIs + +A given platform may provide multiple different ABIs at once. For +instance, the x86 platform has both @samp{stdcall} and @samp{fastcall} +functions. + +@code{libffi} provides some support for this. However, this is +necessarily platform-specific. + +@c FIXME: document the platforms + +@node The Closure API +@section The Closure API + +@code{libffi} also provides a way to write a generic function -- a +function that can accept and decode any combination of arguments. +This can be useful when writing an interpreter, or to provide wrappers +for arbitrary functions. + +This facility is called the @dfn{closure API}. Closures are not +supported on all platforms; you can check the @code{FFI_CLOSURES} +define to determine whether they are supported on the current +platform. +@cindex closures +@cindex closure API +@findex FFI_CLOSURES + +Because closures work by assembling a tiny function at runtime, they +require special allocation on platforms that have a non-executable +heap. Memory management for closures is handled by a pair of +functions: + +@findex ffi_closure_alloc +@defun void *ffi_closure_alloc (size_t @var{size}, void **@var{code}) +Allocate a chunk of memory holding @var{size} bytes. This returns a +pointer to the writable address, and sets *@var{code} to the +corresponding executable address. + +@var{size} should be sufficient to hold a @code{ffi_closure} object. +@end defun + +@findex ffi_closure_free +@defun void ffi_closure_free (void *@var{writable}) +Free memory allocated using @code{ffi_closure_alloc}. The argument is +the writable address that was returned. +@end defun + + +Once you have allocated the memory for a closure, you must construct a +@code{ffi_cif} describing the function call. Finally you can prepare +the closure function: + +@findex ffi_prep_closure_loc +@defun ffi_status ffi_prep_closure_loc (ffi_closure *@var{closure}, ffi_cif *@var{cif}, void (*@var{fun}) (ffi_cif *@var{cif}, void *@var{ret}, void **@var{args}, void *@var{user_data}), void *@var{user_data}, void *@var{codeloc}) +Prepare a closure function. The arguments to +@code{ffi_prep_closure_loc} are: + +@table @var +@item closure +The address of a @code{ffi_closure} object; this is the writable +address returned by @code{ffi_closure_alloc}. + +@item cif +The @code{ffi_cif} describing the function parameters. Note that this +object, and the types to which it refers, must be kept alive until the +closure itself is freed. + +@item user_data +An arbitrary datum that is passed, uninterpreted, to your closure +function. + +@item codeloc +The executable address returned by @code{ffi_closure_alloc}. + +@item fun +The function which will be called when the closure is invoked. It is +called with the arguments: + +@table @var +@item cif +The @code{ffi_cif} passed to @code{ffi_prep_closure_loc}. + +@item ret +A pointer to the memory used for the function's return value. + +If the function is declared as returning @code{void}, then this value +is garbage and should not be used. + +Otherwise, @var{fun} must fill the object to which this points, +following the same special promotion behavior as @code{ffi_call}. +That is, in most cases, @var{ret} points to an object of exactly the +size of the type specified when @var{cif} was constructed. However, +integral types narrower than the system register size are widened. In +these cases your program may assume that @var{ret} points to an +@code{ffi_arg} object. + +@item args +A vector of pointers to memory holding the arguments to the function. + +@item user_data +The same @var{user_data} that was passed to +@code{ffi_prep_closure_loc}. +@end table +@end table + +@code{ffi_prep_closure_loc} will return @code{FFI_OK} if everything +went ok, and one of the other @code{ffi_status} values on error. + +After calling @code{ffi_prep_closure_loc}, you can cast @var{codeloc} +to the appropriate pointer-to-function type. +@end defun + +You may see old code referring to @code{ffi_prep_closure}. This +function is deprecated, as it cannot handle the need for separate +writable and executable addresses. + +@node Closure Example +@section Closure Example + +A trivial example that creates a new @code{puts} by binding +@code{fputs} with @code{stdout}. + +@example +#include +#include + +/* Acts like puts with the file given at time of enclosure. */ +void puts_binding(ffi_cif *cif, void *ret, void* args[], + void *stream) +@{ + *(ffi_arg *)ret = fputs(*(char **)args[0], (FILE *)stream); +@} + +typedef int (*puts_t)(char *); + +int main() +@{ + ffi_cif cif; + ffi_type *args[1]; + ffi_closure *closure; + + void *bound_puts; + int rc; + + /* Allocate closure and bound_puts */ + closure = ffi_closure_alloc(sizeof(ffi_closure), &bound_puts); + + if (closure) + @{ + /* Initialize the argument info vectors */ + args[0] = &ffi_type_pointer; + + /* Initialize the cif */ + if (ffi_prep_cif(&cif, FFI_DEFAULT_ABI, 1, + &ffi_type_sint, args) == FFI_OK) + @{ + /* Initialize the closure, setting stream to stdout */ + if (ffi_prep_closure_loc(closure, &cif, puts_binding, + stdout, bound_puts) == FFI_OK) + @{ + rc = ((puts_t)bound_puts)("Hello World!"); + /* rc now holds the result of the call to fputs */ + @} + @} + @} + + /* Deallocate both closure, and bound_puts */ + ffi_closure_free(closure); + + return 0; +@} + +@end example + +@node Thread Safety +@section Thread Safety + +@code{libffi} is not completely thread-safe. However, many parts are, +and if you follow some simple rules, you can use it safely in a +multi-threaded program. + +@itemize @bullet +@item +@code{ffi_prep_cif} may modify the @code{ffi_type} objects passed to +it. It is best to ensure that only a single thread prepares a given +@code{ffi_cif} at a time. + +@item +On some platforms, @code{ffi_prep_cif} may modify the size and +alignment of some types, depending on the chosen ABI. On these +platforms, if you switch between ABIs, you must ensure that there is +only one call to @code{ffi_prep_cif} at a time. + +Currently the only affected platform is PowerPC and the only affected +type is @code{long double}. +@end itemize + +@node Missing Features +@chapter Missing Features + +@code{libffi} is missing a few features. We welcome patches to add +support for these. + +@itemize @bullet +@item +Variadic closures. + +@item +There is no support for bit fields in structures. + +@item +The ``raw'' API is undocumented. +@c anything else? + +@item +The Go API is undocumented. +@end itemize + +Note that variadic support is very new and tested on a relatively +small number of platforms. + +@node Index +@unnumbered Index + +@printindex cp + +@bye diff --git a/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi/doc/version.texi b/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi/doc/version.texi new file mode 100644 index 0000000000..4d2f574487 --- /dev/null +++ b/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi/doc/version.texi @@ -0,0 +1,4 @@ +@set UPDATED 2 April 2018 +@set UPDATED-MONTH April 2018 +@set EDITION 3.3-rc0 +@set VERSION 3.3-rc0 diff --git a/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi/fficonfig.h.in b/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi/fficonfig.h.in new file mode 100644 index 0000000000..d5dc05f67b --- /dev/null +++ b/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi/fficonfig.h.in @@ -0,0 +1,210 @@ +/* fficonfig.h.in. Generated from configure.ac by autoheader. */ + +/* Define if building universal (internal helper macro) */ +#undef AC_APPLE_UNIVERSAL_BUILD + +/* Define to one of `_getb67', `GETB67', `getb67' for Cray-2 and Cray-YMP + systems. This function is required for `alloca.c' support on those systems. + */ +#undef CRAY_STACKSEG_END + +/* Define to 1 if using `alloca.c'. */ +#undef C_ALLOCA + +/* Define to the flags needed for the .section .eh_frame directive. */ +#undef EH_FRAME_FLAGS + +/* Define this if you want extra debugging. */ +#undef FFI_DEBUG + +/* Cannot use PROT_EXEC on this target, so, we revert to alternative means */ +#undef FFI_EXEC_TRAMPOLINE_TABLE + +/* Define this if you want to enable pax emulated trampolines */ +#undef FFI_MMAP_EXEC_EMUTRAMP_PAX + +/* Cannot use malloc on this target, so, we revert to alternative means */ +#undef FFI_MMAP_EXEC_WRIT + +/* Define this if you do not want support for the raw API. */ +#undef FFI_NO_RAW_API + +/* Define this if you do not want support for aggregate types. */ +#undef FFI_NO_STRUCTS + +/* Define to 1 if you have `alloca', as a function or macro. */ +#undef HAVE_ALLOCA + +/* Define to 1 if you have and it should be used (not on Ultrix). + */ +#undef HAVE_ALLOCA_H + +/* Define if your assembler supports .cfi_* directives. */ +#undef HAVE_AS_CFI_PSEUDO_OP + +/* Define if your assembler supports .register. */ +#undef HAVE_AS_REGISTER_PSEUDO_OP + +/* Define if the compiler uses zarch features. */ +#undef HAVE_AS_S390_ZARCH + +/* Define if your assembler and linker support unaligned PC relative relocs. + */ +#undef HAVE_AS_SPARC_UA_PCREL + +/* Define if your assembler supports unwind section type. */ +#undef HAVE_AS_X86_64_UNWIND_SECTION_TYPE + +/* Define if your assembler supports PC relative relocs. */ +#undef HAVE_AS_X86_PCREL + +/* Define to 1 if you have the header file. */ +#undef HAVE_DLFCN_H + +/* Define if __attribute__((visibility("hidden"))) is supported. */ +#undef HAVE_HIDDEN_VISIBILITY_ATTRIBUTE + +/* Define to 1 if you have the header file. */ +#undef HAVE_INTTYPES_H + +/* Define if you have the long double type and it is bigger than a double */ +#undef HAVE_LONG_DOUBLE + +/* Define if you support more than one size of the long double type */ +#undef HAVE_LONG_DOUBLE_VARIANT + +/* Define to 1 if you have the `memcpy' function. */ +#undef HAVE_MEMCPY + +/* Define to 1 if you have the header file. */ +#undef HAVE_MEMORY_H + +/* Define to 1 if you have the `mkostemp' function. */ +#undef HAVE_MKOSTEMP + +/* Define to 1 if you have the `mmap' function. */ +#undef HAVE_MMAP + +/* Define if mmap with MAP_ANON(YMOUS) works. */ +#undef HAVE_MMAP_ANON + +/* Define if mmap of /dev/zero works. */ +#undef HAVE_MMAP_DEV_ZERO + +/* Define if read-only mmap of a plain file works. */ +#undef HAVE_MMAP_FILE + +/* Define if .eh_frame sections should be read-only. */ +#undef HAVE_RO_EH_FRAME + +/* Define to 1 if you have the header file. */ +#undef HAVE_STDINT_H + +/* Define to 1 if you have the header file. */ +#undef HAVE_STDLIB_H + +/* Define to 1 if you have the header file. */ +#undef HAVE_STRINGS_H + +/* Define to 1 if you have the header file. */ +#undef HAVE_STRING_H + +/* Define to 1 if you have the header file. */ +#undef HAVE_SYS_MMAN_H + +/* Define to 1 if you have the header file. */ +#undef HAVE_SYS_STAT_H + +/* Define to 1 if you have the header file. */ +#undef HAVE_SYS_TYPES_H + +/* Define to 1 if you have the header file. */ +#undef HAVE_UNISTD_H + +/* Define to 1 if GNU symbol versioning is used for libatomic. */ +#undef LIBFFI_GNU_SYMBOL_VERSIONING + +/* Define to the sub-directory where libtool stores uninstalled libraries. */ +#undef LT_OBJDIR + +/* Name of package */ +#undef PACKAGE + +/* Define to the address where bug reports for this package should be sent. */ +#undef PACKAGE_BUGREPORT + +/* Define to the full name of this package. */ +#undef PACKAGE_NAME + +/* Define to the full name and version of this package. */ +#undef PACKAGE_STRING + +/* Define to the one symbol short name of this package. */ +#undef PACKAGE_TARNAME + +/* Define to the home page for this package. */ +#undef PACKAGE_URL + +/* Define to the version of this package. */ +#undef PACKAGE_VERSION + +/* The size of `double', as computed by sizeof. */ +#undef SIZEOF_DOUBLE + +/* The size of `long double', as computed by sizeof. */ +#undef SIZEOF_LONG_DOUBLE + +/* The size of `size_t', as computed by sizeof. */ +#undef SIZEOF_SIZE_T + +/* If using the C implementation of alloca, define if you know the + direction of stack growth for your system; otherwise it will be + automatically deduced at runtime. + STACK_DIRECTION > 0 => grows toward higher addresses + STACK_DIRECTION < 0 => grows toward lower addresses + STACK_DIRECTION = 0 => direction of growth unknown */ +#undef STACK_DIRECTION + +/* Define to 1 if you have the ANSI C header files. */ +#undef STDC_HEADERS + +/* Define if symbols are underscored. */ +#undef SYMBOL_UNDERSCORE + +/* Define this if you are using Purify and want to suppress spurious messages. + */ +#undef USING_PURIFY + +/* Version number of package */ +#undef VERSION + +/* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most + significant byte first (like Motorola and SPARC, unlike Intel). */ +#if defined AC_APPLE_UNIVERSAL_BUILD +# if defined __BIG_ENDIAN__ +# define WORDS_BIGENDIAN 1 +# endif +#else +# ifndef WORDS_BIGENDIAN +# undef WORDS_BIGENDIAN +# endif +#endif + +/* Define to `unsigned int' if does not define. */ +#undef size_t + + +#ifdef HAVE_HIDDEN_VISIBILITY_ATTRIBUTE +#ifdef LIBFFI_ASM +#define FFI_HIDDEN(name) .hidden name +#else +#define FFI_HIDDEN __attribute__ ((visibility ("hidden"))) +#endif +#else +#ifdef LIBFFI_ASM +#define FFI_HIDDEN(name) +#else +#define FFI_HIDDEN +#endif +#endif + diff --git a/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi/include/Makefile.in b/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi/include/Makefile.in new file mode 100644 index 0000000000..f051688ffc --- /dev/null +++ b/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi/include/Makefile.in @@ -0,0 +1,604 @@ +# Makefile.in generated by automake 1.15 from Makefile.am. +# @configure_input@ + +# Copyright (C) 1994-2014 Free Software Foundation, Inc. + +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. + +@SET_MAKE@ + +VPATH = @srcdir@ +am__is_gnu_make = { \ + if test -z '$(MAKELEVEL)'; then \ + false; \ + elif test -n '$(MAKE_HOST)'; then \ + true; \ + elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ + true; \ + else \ + false; \ + fi; \ +} +am__make_running_with_option = \ + case $${target_option-} in \ + ?) ;; \ + *) echo "am__make_running_with_option: internal error: invalid" \ + "target option '$${target_option-}' specified" >&2; \ + exit 1;; \ + esac; \ + has_opt=no; \ + sane_makeflags=$$MAKEFLAGS; \ + if $(am__is_gnu_make); then \ + sane_makeflags=$$MFLAGS; \ + else \ + case $$MAKEFLAGS in \ + *\\[\ \ ]*) \ + bs=\\; \ + sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ + | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \ + esac; \ + fi; \ + skip_next=no; \ + strip_trailopt () \ + { \ + flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ + }; \ + for flg in $$sane_makeflags; do \ + test $$skip_next = yes && { skip_next=no; continue; }; \ + case $$flg in \ + *=*|--*) continue;; \ + -*I) strip_trailopt 'I'; skip_next=yes;; \ + -*I?*) strip_trailopt 'I';; \ + -*O) strip_trailopt 'O'; skip_next=yes;; \ + -*O?*) strip_trailopt 'O';; \ + -*l) strip_trailopt 'l'; skip_next=yes;; \ + -*l?*) strip_trailopt 'l';; \ + -[dEDm]) skip_next=yes;; \ + -[JT]) skip_next=yes;; \ + esac; \ + case $$flg in \ + *$$target_option*) has_opt=yes; break;; \ + esac; \ + done; \ + test $$has_opt = yes +am__make_dryrun = (target_option=n; $(am__make_running_with_option)) +am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) +pkgdatadir = $(datadir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +install_sh_DATA = $(install_sh) -c -m 644 +install_sh_PROGRAM = $(install_sh) -c +install_sh_SCRIPT = $(install_sh) -c +INSTALL_HEADER = $(INSTALL_DATA) +transform = $(program_transform_name) +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_triplet = @build@ +host_triplet = @host@ +target_triplet = @target@ +subdir = include +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/m4/asmcfi.m4 \ + $(top_srcdir)/m4/ax_append_flag.m4 \ + $(top_srcdir)/m4/ax_cc_maxopt.m4 \ + $(top_srcdir)/m4/ax_cflags_warn_all.m4 \ + $(top_srcdir)/m4/ax_check_compile_flag.m4 \ + $(top_srcdir)/m4/ax_compiler_vendor.m4 \ + $(top_srcdir)/m4/ax_configure_args.m4 \ + $(top_srcdir)/m4/ax_enable_builddir.m4 \ + $(top_srcdir)/m4/ax_gcc_archflag.m4 \ + $(top_srcdir)/m4/ax_gcc_x86_cpuid.m4 \ + $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ + $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ + $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/acinclude.m4 \ + $(top_srcdir)/configure.ac +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) +DIST_COMMON = $(srcdir)/Makefile.am $(noinst_HEADERS) \ + $(am__DIST_COMMON) +mkinstalldirs = $(install_sh) -d +CONFIG_HEADER = $(top_builddir)/fficonfig.h +CONFIG_CLEAN_FILES = ffi.h ffitarget.h +CONFIG_CLEAN_VPATH_FILES = +AM_V_P = $(am__v_P_@AM_V@) +am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) +am__v_P_0 = false +am__v_P_1 = : +AM_V_GEN = $(am__v_GEN_@AM_V@) +am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) +am__v_GEN_0 = @echo " GEN " $@; +am__v_GEN_1 = +AM_V_at = $(am__v_at_@AM_V@) +am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) +am__v_at_0 = @ +am__v_at_1 = +SOURCES = +DIST_SOURCES = +am__can_run_installinfo = \ + case $$AM_UPDATE_INFO_DIR in \ + n|no|NO) false;; \ + *) (install-info --version) >/dev/null 2>&1;; \ + esac +am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; +am__vpath_adj = case $$p in \ + $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ + *) f=$$p;; \ + esac; +am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; +am__install_max = 40 +am__nobase_strip_setup = \ + srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` +am__nobase_strip = \ + for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" +am__nobase_list = $(am__nobase_strip_setup); \ + for p in $$list; do echo "$$p $$p"; done | \ + sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ + $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ + if (++n[$$2] == $(am__install_max)) \ + { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ + END { for (dir in files) print dir, files[dir] }' +am__base_list = \ + sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ + sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' +am__uninstall_files_from_dir = { \ + test -z "$$files" \ + || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \ + || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ + $(am__cd) "$$dir" && rm -f $$files; }; \ + } +am__installdirs = "$(DESTDIR)$(includedir)" +HEADERS = $(nodist_include_HEADERS) $(noinst_HEADERS) +am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) +# Read a list of newline-separated strings from the standard input, +# and print each of them once, without duplicates. Input order is +# *not* preserved. +am__uniquify_input = $(AWK) '\ + BEGIN { nonempty = 0; } \ + { items[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in items) print i; }; } \ +' +# Make sure the list of sources is unique. This is necessary because, +# e.g., the same source file might be shared among _SOURCES variables +# for different programs/libraries. +am__define_uniq_tagged_files = \ + list='$(am__tagged_files)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | $(am__uniquify_input)` +ETAGS = etags +CTAGS = ctags +am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/ffi.h.in +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +ACLOCAL = @ACLOCAL@ +ALLOCA = @ALLOCA@ +AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ +AM_LTLDFLAGS = @AM_LTLDFLAGS@ +AM_RUNTESTFLAGS = @AM_RUNTESTFLAGS@ +AR = @AR@ +AUTOCONF = @AUTOCONF@ +AUTOHEADER = @AUTOHEADER@ +AUTOMAKE = @AUTOMAKE@ +AWK = @AWK@ +CC = @CC@ +CCAS = @CCAS@ +CCASDEPMODE = @CCASDEPMODE@ +CCASFLAGS = @CCASFLAGS@ +CCDEPMODE = @CCDEPMODE@ +CFLAGS = @CFLAGS@ +CPP = @CPP@ +CPPFLAGS = @CPPFLAGS@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +CXXDEPMODE = @CXXDEPMODE@ +CXXFLAGS = @CXXFLAGS@ +CYGPATH_W = @CYGPATH_W@ +DEFS = @DEFS@ +DEPDIR = @DEPDIR@ +DLLTOOL = @DLLTOOL@ +DSYMUTIL = @DSYMUTIL@ +DUMPBIN = @DUMPBIN@ +ECHO_C = @ECHO_C@ +ECHO_N = @ECHO_N@ +ECHO_T = @ECHO_T@ +EGREP = @EGREP@ +EXEEXT = @EXEEXT@ +FFI_EXEC_TRAMPOLINE_TABLE = @FFI_EXEC_TRAMPOLINE_TABLE@ +FGREP = @FGREP@ +GREP = @GREP@ +HAVE_LONG_DOUBLE = @HAVE_LONG_DOUBLE@ +HAVE_LONG_DOUBLE_VARIANT = @HAVE_LONG_DOUBLE_VARIANT@ +INSTALL = @INSTALL@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +LD = @LD@ +LDFLAGS = @LDFLAGS@ +LIBOBJS = @LIBOBJS@ +LIBS = @LIBS@ +LIBTOOL = @LIBTOOL@ +LIPO = @LIPO@ +LN_S = @LN_S@ +LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MANIFEST_TOOL = @MANIFEST_TOOL@ +MKDIR_P = @MKDIR_P@ +NM = @NM@ +NMEDIT = @NMEDIT@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +OPT_LDFLAGS = @OPT_LDFLAGS@ +OTOOL = @OTOOL@ +OTOOL64 = @OTOOL64@ +PACKAGE = @PACKAGE@ +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ +PACKAGE_NAME = @PACKAGE_NAME@ +PACKAGE_STRING = @PACKAGE_STRING@ +PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_URL = @PACKAGE_URL@ +PACKAGE_VERSION = @PACKAGE_VERSION@ +PATH_SEPARATOR = @PATH_SEPARATOR@ +PRTDIAG = @PRTDIAG@ +RANLIB = @RANLIB@ +SECTION_LDFLAGS = @SECTION_LDFLAGS@ +SED = @SED@ +SET_MAKE = @SET_MAKE@ +SHELL = @SHELL@ +STRIP = @STRIP@ +TARGET = @TARGET@ +TARGETDIR = @TARGETDIR@ +TARGET_OBJ = @TARGET_OBJ@ +VERSION = @VERSION@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ +ac_ct_AR = @ac_ct_AR@ +ac_ct_CC = @ac_ct_CC@ +ac_ct_CXX = @ac_ct_CXX@ +ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ +am__include = @am__include@ +am__leading_dot = @am__leading_dot@ +am__quote = @am__quote@ +am__tar = @am__tar@ +am__untar = @am__untar@ +ax_enable_builddir_sed = @ax_enable_builddir_sed@ +bindir = @bindir@ +build = @build@ +build_alias = @build_alias@ +build_cpu = @build_cpu@ +build_os = @build_os@ +build_vendor = @build_vendor@ +builddir = @builddir@ +datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ +exec_prefix = @exec_prefix@ +host = @host@ +host_alias = @host_alias@ +host_cpu = @host_cpu@ +host_os = @host_os@ +host_vendor = @host_vendor@ +htmldir = @htmldir@ +includedir = @includedir@ +infodir = @infodir@ +install_sh = @install_sh@ +libdir = @libdir@ +libexecdir = @libexecdir@ +localedir = @localedir@ +localstatedir = @localstatedir@ +mandir = @mandir@ +mkdir_p = @mkdir_p@ +oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ +prefix = @prefix@ +program_transform_name = @program_transform_name@ +psdir = @psdir@ +runstatedir = @runstatedir@ +sbindir = @sbindir@ +sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ +sys_symbol_underscore = @sys_symbol_underscore@ +sysconfdir = @sysconfdir@ +target = @target@ +target_alias = @target_alias@ +target_cpu = @target_cpu@ +target_os = @target_os@ +target_vendor = @target_vendor@ +toolexecdir = @toolexecdir@ +toolexeclibdir = @toolexeclibdir@ +top_build_prefix = @top_build_prefix@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ +AUTOMAKE_OPTIONS = foreign +DISTCLEANFILES = ffitarget.h +noinst_HEADERS = ffi_common.h ffi_cfi.h +EXTRA_DIST = ffi.h.in +nodist_include_HEADERS = ffi.h ffitarget.h +all: all-am + +.SUFFIXES: +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ + && { if test -f $@; then exit 0; else break; fi; }; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign include/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --foreign include/Makefile +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + @case '$?' in \ + *config.status*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ + *) \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + esac; + +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh + +$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(am__aclocal_m4_deps): +ffi.h: $(top_builddir)/config.status $(srcdir)/ffi.h.in + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ + +mostlyclean-libtool: + -rm -f *.lo + +clean-libtool: + -rm -rf .libs _libs +install-nodist_includeHEADERS: $(nodist_include_HEADERS) + @$(NORMAL_INSTALL) + @list='$(nodist_include_HEADERS)'; test -n "$(includedir)" || list=; \ + if test -n "$$list"; then \ + echo " $(MKDIR_P) '$(DESTDIR)$(includedir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(includedir)" || exit 1; \ + fi; \ + for p in $$list; do \ + if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ + echo "$$d$$p"; \ + done | $(am__base_list) | \ + while read files; do \ + echo " $(INSTALL_HEADER) $$files '$(DESTDIR)$(includedir)'"; \ + $(INSTALL_HEADER) $$files "$(DESTDIR)$(includedir)" || exit $$?; \ + done + +uninstall-nodist_includeHEADERS: + @$(NORMAL_UNINSTALL) + @list='$(nodist_include_HEADERS)'; test -n "$(includedir)" || list=; \ + files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ + dir='$(DESTDIR)$(includedir)'; $(am__uninstall_files_from_dir) + +ID: $(am__tagged_files) + $(am__define_uniq_tagged_files); mkid -fID $$unique +tags: tags-am +TAGS: tags + +tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) + set x; \ + here=`pwd`; \ + $(am__define_uniq_tagged_files); \ + shift; \ + if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ + test -n "$$unique" || unique=$$empty_fix; \ + if test $$# -gt 0; then \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + "$$@" $$unique; \ + else \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$unique; \ + fi; \ + fi +ctags: ctags-am + +CTAGS: ctags +ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) + $(am__define_uniq_tagged_files); \ + test -z "$(CTAGS_ARGS)$$unique" \ + || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ + $$unique + +GTAGS: + here=`$(am__cd) $(top_builddir) && pwd` \ + && $(am__cd) $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) "$$here" +cscopelist: cscopelist-am + +cscopelist-am: $(am__tagged_files) + list='$(am__tagged_files)'; \ + case "$(srcdir)" in \ + [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \ + *) sdir=$(subdir)/$(srcdir) ;; \ + esac; \ + for i in $$list; do \ + if test -f "$$i"; then \ + echo "$(subdir)/$$i"; \ + else \ + echo "$$sdir/$$i"; \ + fi; \ + done >> $(top_builddir)/cscope.files + +distclean-tags: + -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags + +distdir: $(DISTFILES) + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ + else \ + test -f "$(distdir)/$$file" \ + || cp -p $$d/$$file "$(distdir)/$$file" \ + || exit 1; \ + fi; \ + done +check-am: all-am +check: check-am +all-am: Makefile $(HEADERS) +installdirs: + for dir in "$(DESTDIR)$(includedir)"; do \ + test -z "$$dir" || $(MKDIR_P) "$$dir"; \ + done +install: install-am +install-exec: install-exec-am +install-data: install-data-am +uninstall: uninstall-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am + +installcheck: installcheck-am +install-strip: + if test -z '$(STRIP)'; then \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + install; \ + else \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ + fi +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) + -test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES) + +maintainer-clean-generic: + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." +clean: clean-am + +clean-am: clean-generic clean-libtool mostlyclean-am + +distclean: distclean-am + -rm -f Makefile +distclean-am: clean-am distclean-generic distclean-tags + +dvi: dvi-am + +dvi-am: + +html: html-am + +html-am: + +info: info-am + +info-am: + +install-data-am: install-nodist_includeHEADERS + +install-dvi: install-dvi-am + +install-dvi-am: + +install-exec-am: + +install-html: install-html-am + +install-html-am: + +install-info: install-info-am + +install-info-am: + +install-man: + +install-pdf: install-pdf-am + +install-pdf-am: + +install-ps: install-ps-am + +install-ps-am: + +installcheck-am: + +maintainer-clean: maintainer-clean-am + -rm -f Makefile +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-am + +mostlyclean-am: mostlyclean-generic mostlyclean-libtool + +pdf: pdf-am + +pdf-am: + +ps: ps-am + +ps-am: + +uninstall-am: uninstall-nodist_includeHEADERS + +.MAKE: install-am install-strip + +.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \ + clean-libtool cscopelist-am ctags ctags-am distclean \ + distclean-generic distclean-libtool distclean-tags distdir dvi \ + dvi-am html html-am info info-am install install-am \ + install-data install-data-am install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man \ + install-nodist_includeHEADERS install-pdf install-pdf-am \ + install-ps install-ps-am install-strip installcheck \ + installcheck-am installdirs maintainer-clean \ + maintainer-clean-generic mostlyclean mostlyclean-generic \ + mostlyclean-libtool pdf pdf-am ps ps-am tags tags-am uninstall \ + uninstall-am uninstall-nodist_includeHEADERS + +.PRECIOUS: Makefile + + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff --git a/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi/install-sh b/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi/install-sh new file mode 100755 index 0000000000..59990a1049 --- /dev/null +++ b/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi/install-sh @@ -0,0 +1,508 @@ +#!/bin/sh +# install - install a program, script, or datafile + +scriptversion=2014-09-12.12; # UTC + +# This originates from X11R5 (mit/util/scripts/install.sh), which was +# later released in X11R6 (xc/config/util/install.sh) with the +# following copyright and license. +# +# Copyright (C) 1994 X Consortium +# +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to +# deal in the Software without restriction, including without limitation the +# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or +# sell copies of the Software, and to permit persons to whom the Software is +# furnished to do so, subject to the following conditions: +# +# The above copyright notice and this permission notice shall be included in +# all copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +# X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN +# AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC- +# TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +# +# Except as contained in this notice, the name of the X Consortium shall not +# be used in advertising or otherwise to promote the sale, use or other deal- +# ings in this Software without prior written authorization from the X Consor- +# tium. +# +# +# FSF changes to this file are in the public domain. +# +# Calling this script install-sh is preferred over install.sh, to prevent +# 'make' implicit rules from creating a file called install from it +# when there is no Makefile. +# +# This script is compatible with the BSD install script, but was written +# from scratch. + +tab=' ' +nl=' +' +IFS=" $tab$nl" + +# Set DOITPROG to "echo" to test this script. + +doit=${DOITPROG-} +doit_exec=${doit:-exec} + +# Put in absolute file names if you don't have them in your path; +# or use environment vars. + +chgrpprog=${CHGRPPROG-chgrp} +chmodprog=${CHMODPROG-chmod} +chownprog=${CHOWNPROG-chown} +cmpprog=${CMPPROG-cmp} +cpprog=${CPPROG-cp} +mkdirprog=${MKDIRPROG-mkdir} +mvprog=${MVPROG-mv} +rmprog=${RMPROG-rm} +stripprog=${STRIPPROG-strip} + +posix_mkdir= + +# Desired mode of installed file. +mode=0755 + +chgrpcmd= +chmodcmd=$chmodprog +chowncmd= +mvcmd=$mvprog +rmcmd="$rmprog -f" +stripcmd= + +src= +dst= +dir_arg= +dst_arg= + +copy_on_change=false +is_target_a_directory=possibly + +usage="\ +Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE + or: $0 [OPTION]... SRCFILES... DIRECTORY + or: $0 [OPTION]... -t DIRECTORY SRCFILES... + or: $0 [OPTION]... -d DIRECTORIES... + +In the 1st form, copy SRCFILE to DSTFILE. +In the 2nd and 3rd, copy all SRCFILES to DIRECTORY. +In the 4th, create DIRECTORIES. + +Options: + --help display this help and exit. + --version display version info and exit. + + -c (ignored) + -C install only if different (preserve the last data modification time) + -d create directories instead of installing files. + -g GROUP $chgrpprog installed files to GROUP. + -m MODE $chmodprog installed files to MODE. + -o USER $chownprog installed files to USER. + -s $stripprog installed files. + -t DIRECTORY install into DIRECTORY. + -T report an error if DSTFILE is a directory. + +Environment variables override the default commands: + CHGRPPROG CHMODPROG CHOWNPROG CMPPROG CPPROG MKDIRPROG MVPROG + RMPROG STRIPPROG +" + +while test $# -ne 0; do + case $1 in + -c) ;; + + -C) copy_on_change=true;; + + -d) dir_arg=true;; + + -g) chgrpcmd="$chgrpprog $2" + shift;; + + --help) echo "$usage"; exit $?;; + + -m) mode=$2 + case $mode in + *' '* | *"$tab"* | *"$nl"* | *'*'* | *'?'* | *'['*) + echo "$0: invalid mode: $mode" >&2 + exit 1;; + esac + shift;; + + -o) chowncmd="$chownprog $2" + shift;; + + -s) stripcmd=$stripprog;; + + -t) + is_target_a_directory=always + dst_arg=$2 + # Protect names problematic for 'test' and other utilities. + case $dst_arg in + -* | [=\(\)!]) dst_arg=./$dst_arg;; + esac + shift;; + + -T) is_target_a_directory=never;; + + --version) echo "$0 $scriptversion"; exit $?;; + + --) shift + break;; + + -*) echo "$0: invalid option: $1" >&2 + exit 1;; + + *) break;; + esac + shift +done + +# We allow the use of options -d and -T together, by making -d +# take the precedence; this is for compatibility with GNU install. + +if test -n "$dir_arg"; then + if test -n "$dst_arg"; then + echo "$0: target directory not allowed when installing a directory." >&2 + exit 1 + fi +fi + +if test $# -ne 0 && test -z "$dir_arg$dst_arg"; then + # When -d is used, all remaining arguments are directories to create. + # When -t is used, the destination is already specified. + # Otherwise, the last argument is the destination. Remove it from $@. + for arg + do + if test -n "$dst_arg"; then + # $@ is not empty: it contains at least $arg. + set fnord "$@" "$dst_arg" + shift # fnord + fi + shift # arg + dst_arg=$arg + # Protect names problematic for 'test' and other utilities. + case $dst_arg in + -* | [=\(\)!]) dst_arg=./$dst_arg;; + esac + done +fi + +if test $# -eq 0; then + if test -z "$dir_arg"; then + echo "$0: no input file specified." >&2 + exit 1 + fi + # It's OK to call 'install-sh -d' without argument. + # This can happen when creating conditional directories. + exit 0 +fi + +if test -z "$dir_arg"; then + if test $# -gt 1 || test "$is_target_a_directory" = always; then + if test ! -d "$dst_arg"; then + echo "$0: $dst_arg: Is not a directory." >&2 + exit 1 + fi + fi +fi + +if test -z "$dir_arg"; then + do_exit='(exit $ret); exit $ret' + trap "ret=129; $do_exit" 1 + trap "ret=130; $do_exit" 2 + trap "ret=141; $do_exit" 13 + trap "ret=143; $do_exit" 15 + + # Set umask so as not to create temps with too-generous modes. + # However, 'strip' requires both read and write access to temps. + case $mode in + # Optimize common cases. + *644) cp_umask=133;; + *755) cp_umask=22;; + + *[0-7]) + if test -z "$stripcmd"; then + u_plus_rw= + else + u_plus_rw='% 200' + fi + cp_umask=`expr '(' 777 - $mode % 1000 ')' $u_plus_rw`;; + *) + if test -z "$stripcmd"; then + u_plus_rw= + else + u_plus_rw=,u+rw + fi + cp_umask=$mode$u_plus_rw;; + esac +fi + +for src +do + # Protect names problematic for 'test' and other utilities. + case $src in + -* | [=\(\)!]) src=./$src;; + esac + + if test -n "$dir_arg"; then + dst=$src + dstdir=$dst + test -d "$dstdir" + dstdir_status=$? + else + + # Waiting for this to be detected by the "$cpprog $src $dsttmp" command + # might cause directories to be created, which would be especially bad + # if $src (and thus $dsttmp) contains '*'. + if test ! -f "$src" && test ! -d "$src"; then + echo "$0: $src does not exist." >&2 + exit 1 + fi + + if test -z "$dst_arg"; then + echo "$0: no destination specified." >&2 + exit 1 + fi + dst=$dst_arg + + # If destination is a directory, append the input filename; won't work + # if double slashes aren't ignored. + if test -d "$dst"; then + if test "$is_target_a_directory" = never; then + echo "$0: $dst_arg: Is a directory" >&2 + exit 1 + fi + dstdir=$dst + dst=$dstdir/`basename "$src"` + dstdir_status=0 + else + dstdir=`dirname "$dst"` + test -d "$dstdir" + dstdir_status=$? + fi + fi + + obsolete_mkdir_used=false + + if test $dstdir_status != 0; then + case $posix_mkdir in + '') + # Create intermediate dirs using mode 755 as modified by the umask. + # This is like FreeBSD 'install' as of 1997-10-28. + umask=`umask` + case $stripcmd.$umask in + # Optimize common cases. + *[2367][2367]) mkdir_umask=$umask;; + .*0[02][02] | .[02][02] | .[02]) mkdir_umask=22;; + + *[0-7]) + mkdir_umask=`expr $umask + 22 \ + - $umask % 100 % 40 + $umask % 20 \ + - $umask % 10 % 4 + $umask % 2 + `;; + *) mkdir_umask=$umask,go-w;; + esac + + # With -d, create the new directory with the user-specified mode. + # Otherwise, rely on $mkdir_umask. + if test -n "$dir_arg"; then + mkdir_mode=-m$mode + else + mkdir_mode= + fi + + posix_mkdir=false + case $umask in + *[123567][0-7][0-7]) + # POSIX mkdir -p sets u+wx bits regardless of umask, which + # is incompatible with FreeBSD 'install' when (umask & 300) != 0. + ;; + *) + # $RANDOM is not portable (e.g. dash); use it when possible to + # lower collision chance + tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$ + trap 'ret=$?; rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir" 2>/dev/null; exit $ret' 0 + + # As "mkdir -p" follows symlinks and we work in /tmp possibly; so + # create the $tmpdir first (and fail if unsuccessful) to make sure + # that nobody tries to guess the $tmpdir name. + if (umask $mkdir_umask && + $mkdirprog $mkdir_mode "$tmpdir" && + exec $mkdirprog $mkdir_mode -p -- "$tmpdir/a/b") >/dev/null 2>&1 + then + if test -z "$dir_arg" || { + # Check for POSIX incompatibilities with -m. + # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or + # other-writable bit of parent directory when it shouldn't. + # FreeBSD 6.1 mkdir -m -p sets mode of existing directory. + test_tmpdir="$tmpdir/a" + ls_ld_tmpdir=`ls -ld "$test_tmpdir"` + case $ls_ld_tmpdir in + d????-?r-*) different_mode=700;; + d????-?--*) different_mode=755;; + *) false;; + esac && + $mkdirprog -m$different_mode -p -- "$test_tmpdir" && { + ls_ld_tmpdir_1=`ls -ld "$test_tmpdir"` + test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1" + } + } + then posix_mkdir=: + fi + rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir" + else + # Remove any dirs left behind by ancient mkdir implementations. + rmdir ./$mkdir_mode ./-p ./-- "$tmpdir" 2>/dev/null + fi + trap '' 0;; + esac;; + esac + + if + $posix_mkdir && ( + umask $mkdir_umask && + $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir" + ) + then : + else + + # The umask is ridiculous, or mkdir does not conform to POSIX, + # or it failed possibly due to a race condition. Create the + # directory the slow way, step by step, checking for races as we go. + + case $dstdir in + /*) prefix='/';; + [-=\(\)!]*) prefix='./';; + *) prefix='';; + esac + + oIFS=$IFS + IFS=/ + set -f + set fnord $dstdir + shift + set +f + IFS=$oIFS + + prefixes= + + for d + do + test X"$d" = X && continue + + prefix=$prefix$d + if test -d "$prefix"; then + prefixes= + else + if $posix_mkdir; then + (umask=$mkdir_umask && + $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir") && break + # Don't fail if two instances are running concurrently. + test -d "$prefix" || exit 1 + else + case $prefix in + *\'*) qprefix=`echo "$prefix" | sed "s/'/'\\\\\\\\''/g"`;; + *) qprefix=$prefix;; + esac + prefixes="$prefixes '$qprefix'" + fi + fi + prefix=$prefix/ + done + + if test -n "$prefixes"; then + # Don't fail if two instances are running concurrently. + (umask $mkdir_umask && + eval "\$doit_exec \$mkdirprog $prefixes") || + test -d "$dstdir" || exit 1 + obsolete_mkdir_used=true + fi + fi + fi + + if test -n "$dir_arg"; then + { test -z "$chowncmd" || $doit $chowncmd "$dst"; } && + { test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } && + { test "$obsolete_mkdir_used$chowncmd$chgrpcmd" = false || + test -z "$chmodcmd" || $doit $chmodcmd $mode "$dst"; } || exit 1 + else + + # Make a couple of temp file names in the proper directory. + dsttmp=$dstdir/_inst.$$_ + rmtmp=$dstdir/_rm.$$_ + + # Trap to clean up those temp files at exit. + trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0 + + # Copy the file name to the temp name. + (umask $cp_umask && $doit_exec $cpprog "$src" "$dsttmp") && + + # and set any options; do chmod last to preserve setuid bits. + # + # If any of these fail, we abort the whole thing. If we want to + # ignore errors from any of these, just make sure not to ignore + # errors from the above "$doit $cpprog $src $dsttmp" command. + # + { test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } && + { test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } && + { test -z "$stripcmd" || $doit $stripcmd "$dsttmp"; } && + { test -z "$chmodcmd" || $doit $chmodcmd $mode "$dsttmp"; } && + + # If -C, don't bother to copy if it wouldn't change the file. + if $copy_on_change && + old=`LC_ALL=C ls -dlL "$dst" 2>/dev/null` && + new=`LC_ALL=C ls -dlL "$dsttmp" 2>/dev/null` && + set -f && + set X $old && old=:$2:$4:$5:$6 && + set X $new && new=:$2:$4:$5:$6 && + set +f && + test "$old" = "$new" && + $cmpprog "$dst" "$dsttmp" >/dev/null 2>&1 + then + rm -f "$dsttmp" + else + # Rename the file to the real destination. + $doit $mvcmd -f "$dsttmp" "$dst" 2>/dev/null || + + # The rename failed, perhaps because mv can't rename something else + # to itself, or perhaps because mv is so ancient that it does not + # support -f. + { + # Now remove or move aside any old file at destination location. + # We try this two ways since rm can't unlink itself on some + # systems and the destination file might be busy for other + # reasons. In this case, the final cleanup might fail but the new + # file should still install successfully. + { + test ! -f "$dst" || + $doit $rmcmd -f "$dst" 2>/dev/null || + { $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null && + { $doit $rmcmd -f "$rmtmp" 2>/dev/null; :; } + } || + { echo "$0: cannot unlink or rename $dst" >&2 + (exit 1); exit 1 + } + } && + + # Now rename the file to the real destination. + $doit $mvcmd "$dsttmp" "$dst" + } + fi || exit 1 + + trap '' 0 + fi +done + +# Local variables: +# eval: (add-hook 'write-file-hooks 'time-stamp) +# time-stamp-start: "scriptversion=" +# time-stamp-format: "%:y-%02m-%02d.%02H" +# time-stamp-time-zone: "UTC" +# time-stamp-end: "; # UTC" +# End: diff --git a/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi/libtool-ldflags b/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi/libtool-ldflags new file mode 100755 index 0000000000..e32e37bf10 --- /dev/null +++ b/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi/libtool-ldflags @@ -0,0 +1,106 @@ +#! /bin/sh + +# Script to translate LDFLAGS into a form suitable for use with libtool. + +# Copyright (C) 2005 Free Software Foundation, Inc. +# +# This file is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, +# MA 02110-1301, USA. + +# Contributed by CodeSourcery, LLC. + +# This script is designed to be used from a Makefile that uses libtool +# to build libraries as follows: +# +# LTLDFLAGS = $(shell libtool-ldflags $(LDFLAGS)) +# +# Then, use (LTLDFLAGS) in place of $(LDFLAGS) in your link line. + +# The output of the script. This string is built up as we process the +# arguments. +result= +prev_arg= + +for arg +do + case $arg in + -f*|--*) + # Libtool does not ascribe any special meaning options + # that begin with -f or with a double-dash. So, it will + # think these options are linker options, and prefix them + # with "-Wl,". Then, the compiler driver will ignore the + # options. So, we prefix these options with -Xcompiler to + # make clear to libtool that they are in fact compiler + # options. + case $prev_arg in + -Xpreprocessor|-Xcompiler|-Xlinker) + # This option is already prefixed; don't prefix it again. + ;; + *) + result="$result -Xcompiler" + ;; + esac + ;; + *) + # We do not want to add -Xcompiler to other options because + # that would prevent libtool itself from recognizing them. + ;; + esac + prev_arg=$arg + + # If $(LDFLAGS) is (say): + # a "b'c d" e + # then the user expects that: + # $(LD) $(LDFLAGS) + # will pass three arguments to $(LD): + # 1) a + # 2) b'c d + # 3) e + # We must ensure, therefore, that the arguments are appropriately + # quoted so that using: + # libtool --mode=link ... $(LTLDFLAGS) + # will result in the same number of arguments being passed to + # libtool. In other words, when this script was invoked, the shell + # removed one level of quoting, present in $(LDFLAGS); we have to put + # it back. + + # Quote any embedded single quotes. + case $arg in + *"'"*) + # The following command creates the script: + # 1s,^X,,;s|'|'"'"'|g + # which removes a leading X, and then quotes and embedded single + # quotes. + sed_script="1s,^X,,;s|'|'\"'\"'|g" + # Add a leading "X" so that if $arg starts with a dash, + # the echo command will not try to interpret the argument + # as a command-line option. + arg="X$arg" + # Generate the quoted string. + quoted_arg=`echo "$arg" | sed -e "$sed_script"` + ;; + *) + quoted_arg=$arg + ;; + esac + # Surround the entire argument with single quotes. + quoted_arg="'"$quoted_arg"'" + + # Add it to the string. + result="$result $quoted_arg" +done + +# Output the string we have built up. +echo "$result" diff --git a/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi/ltmain.sh b/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi/ltmain.sh new file mode 100644 index 0000000000..a736cf9942 --- /dev/null +++ b/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi/ltmain.sh @@ -0,0 +1,11156 @@ +#! /bin/sh +## DO NOT EDIT - This file generated from ./build-aux/ltmain.in +## by inline-source v2014-01-03.01 + +# libtool (GNU libtool) 2.4.6 +# Provide generalized library-building support services. +# Written by Gordon Matzigkeit , 1996 + +# Copyright (C) 1996-2015 Free Software Foundation, Inc. +# This is free software; see the source for copying conditions. There is NO +# warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + +# GNU Libtool is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# As a special exception to the GNU General Public License, +# if you distribute this file as part of a program or library that +# is built using GNU Libtool, you may include this file under the +# same distribution terms that you use for the rest of that program. +# +# GNU Libtool is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + + +PROGRAM=libtool +PACKAGE=libtool +VERSION="2.4.6 Debian-2.4.6-2" +package_revision=2.4.6 + + +## ------ ## +## Usage. ## +## ------ ## + +# Run './libtool --help' for help with using this script from the +# command line. + + +## ------------------------------- ## +## User overridable command paths. ## +## ------------------------------- ## + +# After configure completes, it has a better idea of some of the +# shell tools we need than the defaults used by the functions shared +# with bootstrap, so set those here where they can still be over- +# ridden by the user, but otherwise take precedence. + +: ${AUTOCONF="autoconf"} +: ${AUTOMAKE="automake"} + + +## -------------------------- ## +## Source external libraries. ## +## -------------------------- ## + +# Much of our low-level functionality needs to be sourced from external +# libraries, which are installed to $pkgauxdir. + +# Set a version string for this script. +scriptversion=2015-01-20.17; # UTC + +# General shell script boiler plate, and helper functions. +# Written by Gary V. Vaughan, 2004 + +# Copyright (C) 2004-2015 Free Software Foundation, Inc. +# This is free software; see the source for copying conditions. There is NO +# warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 3 of the License, or +# (at your option) any later version. + +# As a special exception to the GNU General Public License, if you distribute +# this file as part of a program or library that is built using GNU Libtool, +# you may include this file under the same distribution terms that you use +# for the rest of that program. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNES FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +# Please report bugs or propose patches to gary@gnu.org. + + +## ------ ## +## Usage. ## +## ------ ## + +# Evaluate this file near the top of your script to gain access to +# the functions and variables defined here: +# +# . `echo "$0" | ${SED-sed} 's|[^/]*$||'`/build-aux/funclib.sh +# +# If you need to override any of the default environment variable +# settings, do that before evaluating this file. + + +## -------------------- ## +## Shell normalisation. ## +## -------------------- ## + +# Some shells need a little help to be as Bourne compatible as possible. +# Before doing anything else, make sure all that help has been provided! + +DUALCASE=1; export DUALCASE # for MKS sh +if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then : + emulate sh + NULLCMD=: + # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which + # is contrary to our usage. Disable this feature. + alias -g '${1+"$@"}'='"$@"' + setopt NO_GLOB_SUBST +else + case `(set -o) 2>/dev/null` in *posix*) set -o posix ;; esac +fi + +# NLS nuisances: We save the old values in case they are required later. +_G_user_locale= +_G_safe_locale= +for _G_var in LANG LANGUAGE LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES +do + eval "if test set = \"\${$_G_var+set}\"; then + save_$_G_var=\$$_G_var + $_G_var=C + export $_G_var + _G_user_locale=\"$_G_var=\\\$save_\$_G_var; \$_G_user_locale\" + _G_safe_locale=\"$_G_var=C; \$_G_safe_locale\" + fi" +done + +# CDPATH. +(unset CDPATH) >/dev/null 2>&1 && unset CDPATH + +# Make sure IFS has a sensible default +sp=' ' +nl=' +' +IFS="$sp $nl" + +# There are apparently some retarded systems that use ';' as a PATH separator! +if test "${PATH_SEPARATOR+set}" != set; then + PATH_SEPARATOR=: + (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { + (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || + PATH_SEPARATOR=';' + } +fi + + + +## ------------------------- ## +## Locate command utilities. ## +## ------------------------- ## + + +# func_executable_p FILE +# ---------------------- +# Check that FILE is an executable regular file. +func_executable_p () +{ + test -f "$1" && test -x "$1" +} + + +# func_path_progs PROGS_LIST CHECK_FUNC [PATH] +# -------------------------------------------- +# Search for either a program that responds to --version with output +# containing "GNU", or else returned by CHECK_FUNC otherwise, by +# trying all the directories in PATH with each of the elements of +# PROGS_LIST. +# +# CHECK_FUNC should accept the path to a candidate program, and +# set $func_check_prog_result if it truncates its output less than +# $_G_path_prog_max characters. +func_path_progs () +{ + _G_progs_list=$1 + _G_check_func=$2 + _G_PATH=${3-"$PATH"} + + _G_path_prog_max=0 + _G_path_prog_found=false + _G_save_IFS=$IFS; IFS=${PATH_SEPARATOR-:} + for _G_dir in $_G_PATH; do + IFS=$_G_save_IFS + test -z "$_G_dir" && _G_dir=. + for _G_prog_name in $_G_progs_list; do + for _exeext in '' .EXE; do + _G_path_prog=$_G_dir/$_G_prog_name$_exeext + func_executable_p "$_G_path_prog" || continue + case `"$_G_path_prog" --version 2>&1` in + *GNU*) func_path_progs_result=$_G_path_prog _G_path_prog_found=: ;; + *) $_G_check_func $_G_path_prog + func_path_progs_result=$func_check_prog_result + ;; + esac + $_G_path_prog_found && break 3 + done + done + done + IFS=$_G_save_IFS + test -z "$func_path_progs_result" && { + echo "no acceptable sed could be found in \$PATH" >&2 + exit 1 + } +} + + +# We want to be able to use the functions in this file before configure +# has figured out where the best binaries are kept, which means we have +# to search for them ourselves - except when the results are already set +# where we skip the searches. + +# Unless the user overrides by setting SED, search the path for either GNU +# sed, or the sed that truncates its output the least. +test -z "$SED" && { + _G_sed_script=s/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb/ + for _G_i in 1 2 3 4 5 6 7; do + _G_sed_script=$_G_sed_script$nl$_G_sed_script + done + echo "$_G_sed_script" 2>/dev/null | sed 99q >conftest.sed + _G_sed_script= + + func_check_prog_sed () + { + _G_path_prog=$1 + + _G_count=0 + printf 0123456789 >conftest.in + while : + do + cat conftest.in conftest.in >conftest.tmp + mv conftest.tmp conftest.in + cp conftest.in conftest.nl + echo '' >> conftest.nl + "$_G_path_prog" -f conftest.sed conftest.out 2>/dev/null || break + diff conftest.out conftest.nl >/dev/null 2>&1 || break + _G_count=`expr $_G_count + 1` + if test "$_G_count" -gt "$_G_path_prog_max"; then + # Best one so far, save it but keep looking for a better one + func_check_prog_result=$_G_path_prog + _G_path_prog_max=$_G_count + fi + # 10*(2^10) chars as input seems more than enough + test 10 -lt "$_G_count" && break + done + rm -f conftest.in conftest.tmp conftest.nl conftest.out + } + + func_path_progs "sed gsed" func_check_prog_sed $PATH:/usr/xpg4/bin + rm -f conftest.sed + SED=$func_path_progs_result +} + + +# Unless the user overrides by setting GREP, search the path for either GNU +# grep, or the grep that truncates its output the least. +test -z "$GREP" && { + func_check_prog_grep () + { + _G_path_prog=$1 + + _G_count=0 + _G_path_prog_max=0 + printf 0123456789 >conftest.in + while : + do + cat conftest.in conftest.in >conftest.tmp + mv conftest.tmp conftest.in + cp conftest.in conftest.nl + echo 'GREP' >> conftest.nl + "$_G_path_prog" -e 'GREP$' -e '-(cannot match)-' conftest.out 2>/dev/null || break + diff conftest.out conftest.nl >/dev/null 2>&1 || break + _G_count=`expr $_G_count + 1` + if test "$_G_count" -gt "$_G_path_prog_max"; then + # Best one so far, save it but keep looking for a better one + func_check_prog_result=$_G_path_prog + _G_path_prog_max=$_G_count + fi + # 10*(2^10) chars as input seems more than enough + test 10 -lt "$_G_count" && break + done + rm -f conftest.in conftest.tmp conftest.nl conftest.out + } + + func_path_progs "grep ggrep" func_check_prog_grep $PATH:/usr/xpg4/bin + GREP=$func_path_progs_result +} + + +## ------------------------------- ## +## User overridable command paths. ## +## ------------------------------- ## + +# All uppercase variable names are used for environment variables. These +# variables can be overridden by the user before calling a script that +# uses them if a suitable command of that name is not already available +# in the command search PATH. + +: ${CP="cp -f"} +: ${ECHO="printf %s\n"} +: ${EGREP="$GREP -E"} +: ${FGREP="$GREP -F"} +: ${LN_S="ln -s"} +: ${MAKE="make"} +: ${MKDIR="mkdir"} +: ${MV="mv -f"} +: ${RM="rm -f"} +: ${SHELL="${CONFIG_SHELL-/bin/sh}"} + + +## -------------------- ## +## Useful sed snippets. ## +## -------------------- ## + +sed_dirname='s|/[^/]*$||' +sed_basename='s|^.*/||' + +# Sed substitution that helps us do robust quoting. It backslashifies +# metacharacters that are still active within double-quoted strings. +sed_quote_subst='s|\([`"$\\]\)|\\\1|g' + +# Same as above, but do not quote variable references. +sed_double_quote_subst='s/\(["`\\]\)/\\\1/g' + +# Sed substitution that turns a string into a regex matching for the +# string literally. +sed_make_literal_regex='s|[].[^$\\*\/]|\\&|g' + +# Sed substitution that converts a w32 file name or path +# that contains forward slashes, into one that contains +# (escaped) backslashes. A very naive implementation. +sed_naive_backslashify='s|\\\\*|\\|g;s|/|\\|g;s|\\|\\\\|g' + +# Re-'\' parameter expansions in output of sed_double_quote_subst that +# were '\'-ed in input to the same. If an odd number of '\' preceded a +# '$' in input to sed_double_quote_subst, that '$' was protected from +# expansion. Since each input '\' is now two '\'s, look for any number +# of runs of four '\'s followed by two '\'s and then a '$'. '\' that '$'. +_G_bs='\\' +_G_bs2='\\\\' +_G_bs4='\\\\\\\\' +_G_dollar='\$' +sed_double_backslash="\ + s/$_G_bs4/&\\ +/g + s/^$_G_bs2$_G_dollar/$_G_bs&/ + s/\\([^$_G_bs]\\)$_G_bs2$_G_dollar/\\1$_G_bs2$_G_bs$_G_dollar/g + s/\n//g" + + +## ----------------- ## +## Global variables. ## +## ----------------- ## + +# Except for the global variables explicitly listed below, the following +# functions in the '^func_' namespace, and the '^require_' namespace +# variables initialised in the 'Resource management' section, sourcing +# this file will not pollute your global namespace with anything +# else. There's no portable way to scope variables in Bourne shell +# though, so actually running these functions will sometimes place +# results into a variable named after the function, and often use +# temporary variables in the '^_G_' namespace. If you are careful to +# avoid using those namespaces casually in your sourcing script, things +# should continue to work as you expect. And, of course, you can freely +# overwrite any of the functions or variables defined here before +# calling anything to customize them. + +EXIT_SUCCESS=0 +EXIT_FAILURE=1 +EXIT_MISMATCH=63 # $? = 63 is used to indicate version mismatch to missing. +EXIT_SKIP=77 # $? = 77 is used to indicate a skipped test to automake. + +# Allow overriding, eg assuming that you follow the convention of +# putting '$debug_cmd' at the start of all your functions, you can get +# bash to show function call trace with: +# +# debug_cmd='eval echo "${FUNCNAME[0]} $*" >&2' bash your-script-name +debug_cmd=${debug_cmd-":"} +exit_cmd=: + +# By convention, finish your script with: +# +# exit $exit_status +# +# so that you can set exit_status to non-zero if you want to indicate +# something went wrong during execution without actually bailing out at +# the point of failure. +exit_status=$EXIT_SUCCESS + +# Work around backward compatibility issue on IRIX 6.5. On IRIX 6.4+, sh +# is ksh but when the shell is invoked as "sh" and the current value of +# the _XPG environment variable is not equal to 1 (one), the special +# positional parameter $0, within a function call, is the name of the +# function. +progpath=$0 + +# The name of this program. +progname=`$ECHO "$progpath" |$SED "$sed_basename"` + +# Make sure we have an absolute progpath for reexecution: +case $progpath in + [\\/]*|[A-Za-z]:\\*) ;; + *[\\/]*) + progdir=`$ECHO "$progpath" |$SED "$sed_dirname"` + progdir=`cd "$progdir" && pwd` + progpath=$progdir/$progname + ;; + *) + _G_IFS=$IFS + IFS=${PATH_SEPARATOR-:} + for progdir in $PATH; do + IFS=$_G_IFS + test -x "$progdir/$progname" && break + done + IFS=$_G_IFS + test -n "$progdir" || progdir=`pwd` + progpath=$progdir/$progname + ;; +esac + + +## ----------------- ## +## Standard options. ## +## ----------------- ## + +# The following options affect the operation of the functions defined +# below, and should be set appropriately depending on run-time para- +# meters passed on the command line. + +opt_dry_run=false +opt_quiet=false +opt_verbose=false + +# Categories 'all' and 'none' are always available. Append any others +# you will pass as the first argument to func_warning from your own +# code. +warning_categories= + +# By default, display warnings according to 'opt_warning_types'. Set +# 'warning_func' to ':' to elide all warnings, or func_fatal_error to +# treat the next displayed warning as a fatal error. +warning_func=func_warn_and_continue + +# Set to 'all' to display all warnings, 'none' to suppress all +# warnings, or a space delimited list of some subset of +# 'warning_categories' to display only the listed warnings. +opt_warning_types=all + + +## -------------------- ## +## Resource management. ## +## -------------------- ## + +# This section contains definitions for functions that each ensure a +# particular resource (a file, or a non-empty configuration variable for +# example) is available, and if appropriate to extract default values +# from pertinent package files. Call them using their associated +# 'require_*' variable to ensure that they are executed, at most, once. +# +# It's entirely deliberate that calling these functions can set +# variables that don't obey the namespace limitations obeyed by the rest +# of this file, in order that that they be as useful as possible to +# callers. + + +# require_term_colors +# ------------------- +# Allow display of bold text on terminals that support it. +require_term_colors=func_require_term_colors +func_require_term_colors () +{ + $debug_cmd + + test -t 1 && { + # COLORTERM and USE_ANSI_COLORS environment variables take + # precedence, because most terminfo databases neglect to describe + # whether color sequences are supported. + test -n "${COLORTERM+set}" && : ${USE_ANSI_COLORS="1"} + + if test 1 = "$USE_ANSI_COLORS"; then + # Standard ANSI escape sequences + tc_reset='' + tc_bold=''; tc_standout='' + tc_red=''; tc_green='' + tc_blue=''; tc_cyan='' + else + # Otherwise trust the terminfo database after all. + test -n "`tput sgr0 2>/dev/null`" && { + tc_reset=`tput sgr0` + test -n "`tput bold 2>/dev/null`" && tc_bold=`tput bold` + tc_standout=$tc_bold + test -n "`tput smso 2>/dev/null`" && tc_standout=`tput smso` + test -n "`tput setaf 1 2>/dev/null`" && tc_red=`tput setaf 1` + test -n "`tput setaf 2 2>/dev/null`" && tc_green=`tput setaf 2` + test -n "`tput setaf 4 2>/dev/null`" && tc_blue=`tput setaf 4` + test -n "`tput setaf 5 2>/dev/null`" && tc_cyan=`tput setaf 5` + } + fi + } + + require_term_colors=: +} + + +## ----------------- ## +## Function library. ## +## ----------------- ## + +# This section contains a variety of useful functions to call in your +# scripts. Take note of the portable wrappers for features provided by +# some modern shells, which will fall back to slower equivalents on +# less featureful shells. + + +# func_append VAR VALUE +# --------------------- +# Append VALUE onto the existing contents of VAR. + + # We should try to minimise forks, especially on Windows where they are + # unreasonably slow, so skip the feature probes when bash or zsh are + # being used: + if test set = "${BASH_VERSION+set}${ZSH_VERSION+set}"; then + : ${_G_HAVE_ARITH_OP="yes"} + : ${_G_HAVE_XSI_OPS="yes"} + # The += operator was introduced in bash 3.1 + case $BASH_VERSION in + [12].* | 3.0 | 3.0*) ;; + *) + : ${_G_HAVE_PLUSEQ_OP="yes"} + ;; + esac + fi + + # _G_HAVE_PLUSEQ_OP + # Can be empty, in which case the shell is probed, "yes" if += is + # useable or anything else if it does not work. + test -z "$_G_HAVE_PLUSEQ_OP" \ + && (eval 'x=a; x+=" b"; test "a b" = "$x"') 2>/dev/null \ + && _G_HAVE_PLUSEQ_OP=yes + +if test yes = "$_G_HAVE_PLUSEQ_OP" +then + # This is an XSI compatible shell, allowing a faster implementation... + eval 'func_append () + { + $debug_cmd + + eval "$1+=\$2" + }' +else + # ...otherwise fall back to using expr, which is often a shell builtin. + func_append () + { + $debug_cmd + + eval "$1=\$$1\$2" + } +fi + + +# func_append_quoted VAR VALUE +# ---------------------------- +# Quote VALUE and append to the end of shell variable VAR, separated +# by a space. +if test yes = "$_G_HAVE_PLUSEQ_OP"; then + eval 'func_append_quoted () + { + $debug_cmd + + func_quote_for_eval "$2" + eval "$1+=\\ \$func_quote_for_eval_result" + }' +else + func_append_quoted () + { + $debug_cmd + + func_quote_for_eval "$2" + eval "$1=\$$1\\ \$func_quote_for_eval_result" + } +fi + + +# func_append_uniq VAR VALUE +# -------------------------- +# Append unique VALUE onto the existing contents of VAR, assuming +# entries are delimited by the first character of VALUE. For example: +# +# func_append_uniq options " --another-option option-argument" +# +# will only append to $options if " --another-option option-argument " +# is not already present somewhere in $options already (note spaces at +# each end implied by leading space in second argument). +func_append_uniq () +{ + $debug_cmd + + eval _G_current_value='`$ECHO $'$1'`' + _G_delim=`expr "$2" : '\(.\)'` + + case $_G_delim$_G_current_value$_G_delim in + *"$2$_G_delim"*) ;; + *) func_append "$@" ;; + esac +} + + +# func_arith TERM... +# ------------------ +# Set func_arith_result to the result of evaluating TERMs. + test -z "$_G_HAVE_ARITH_OP" \ + && (eval 'test 2 = $(( 1 + 1 ))') 2>/dev/null \ + && _G_HAVE_ARITH_OP=yes + +if test yes = "$_G_HAVE_ARITH_OP"; then + eval 'func_arith () + { + $debug_cmd + + func_arith_result=$(( $* )) + }' +else + func_arith () + { + $debug_cmd + + func_arith_result=`expr "$@"` + } +fi + + +# func_basename FILE +# ------------------ +# Set func_basename_result to FILE with everything up to and including +# the last / stripped. +if test yes = "$_G_HAVE_XSI_OPS"; then + # If this shell supports suffix pattern removal, then use it to avoid + # forking. Hide the definitions single quotes in case the shell chokes + # on unsupported syntax... + _b='func_basename_result=${1##*/}' + _d='case $1 in + */*) func_dirname_result=${1%/*}$2 ;; + * ) func_dirname_result=$3 ;; + esac' + +else + # ...otherwise fall back to using sed. + _b='func_basename_result=`$ECHO "$1" |$SED "$sed_basename"`' + _d='func_dirname_result=`$ECHO "$1" |$SED "$sed_dirname"` + if test "X$func_dirname_result" = "X$1"; then + func_dirname_result=$3 + else + func_append func_dirname_result "$2" + fi' +fi + +eval 'func_basename () +{ + $debug_cmd + + '"$_b"' +}' + + +# func_dirname FILE APPEND NONDIR_REPLACEMENT +# ------------------------------------------- +# Compute the dirname of FILE. If nonempty, add APPEND to the result, +# otherwise set result to NONDIR_REPLACEMENT. +eval 'func_dirname () +{ + $debug_cmd + + '"$_d"' +}' + + +# func_dirname_and_basename FILE APPEND NONDIR_REPLACEMENT +# -------------------------------------------------------- +# Perform func_basename and func_dirname in a single function +# call: +# dirname: Compute the dirname of FILE. If nonempty, +# add APPEND to the result, otherwise set result +# to NONDIR_REPLACEMENT. +# value returned in "$func_dirname_result" +# basename: Compute filename of FILE. +# value retuned in "$func_basename_result" +# For efficiency, we do not delegate to the functions above but instead +# duplicate the functionality here. +eval 'func_dirname_and_basename () +{ + $debug_cmd + + '"$_b"' + '"$_d"' +}' + + +# func_echo ARG... +# ---------------- +# Echo program name prefixed message. +func_echo () +{ + $debug_cmd + + _G_message=$* + + func_echo_IFS=$IFS + IFS=$nl + for _G_line in $_G_message; do + IFS=$func_echo_IFS + $ECHO "$progname: $_G_line" + done + IFS=$func_echo_IFS +} + + +# func_echo_all ARG... +# -------------------- +# Invoke $ECHO with all args, space-separated. +func_echo_all () +{ + $ECHO "$*" +} + + +# func_echo_infix_1 INFIX ARG... +# ------------------------------ +# Echo program name, followed by INFIX on the first line, with any +# additional lines not showing INFIX. +func_echo_infix_1 () +{ + $debug_cmd + + $require_term_colors + + _G_infix=$1; shift + _G_indent=$_G_infix + _G_prefix="$progname: $_G_infix: " + _G_message=$* + + # Strip color escape sequences before counting printable length + for _G_tc in "$tc_reset" "$tc_bold" "$tc_standout" "$tc_red" "$tc_green" "$tc_blue" "$tc_cyan" + do + test -n "$_G_tc" && { + _G_esc_tc=`$ECHO "$_G_tc" | $SED "$sed_make_literal_regex"` + _G_indent=`$ECHO "$_G_indent" | $SED "s|$_G_esc_tc||g"` + } + done + _G_indent="$progname: "`echo "$_G_indent" | $SED 's|.| |g'`" " ## exclude from sc_prohibit_nested_quotes + + func_echo_infix_1_IFS=$IFS + IFS=$nl + for _G_line in $_G_message; do + IFS=$func_echo_infix_1_IFS + $ECHO "$_G_prefix$tc_bold$_G_line$tc_reset" >&2 + _G_prefix=$_G_indent + done + IFS=$func_echo_infix_1_IFS +} + + +# func_error ARG... +# ----------------- +# Echo program name prefixed message to standard error. +func_error () +{ + $debug_cmd + + $require_term_colors + + func_echo_infix_1 " $tc_standout${tc_red}error$tc_reset" "$*" >&2 +} + + +# func_fatal_error ARG... +# ----------------------- +# Echo program name prefixed message to standard error, and exit. +func_fatal_error () +{ + $debug_cmd + + func_error "$*" + exit $EXIT_FAILURE +} + + +# func_grep EXPRESSION FILENAME +# ----------------------------- +# Check whether EXPRESSION matches any line of FILENAME, without output. +func_grep () +{ + $debug_cmd + + $GREP "$1" "$2" >/dev/null 2>&1 +} + + +# func_len STRING +# --------------- +# Set func_len_result to the length of STRING. STRING may not +# start with a hyphen. + test -z "$_G_HAVE_XSI_OPS" \ + && (eval 'x=a/b/c; + test 5aa/bb/cc = "${#x}${x%%/*}${x%/*}${x#*/}${x##*/}"') 2>/dev/null \ + && _G_HAVE_XSI_OPS=yes + +if test yes = "$_G_HAVE_XSI_OPS"; then + eval 'func_len () + { + $debug_cmd + + func_len_result=${#1} + }' +else + func_len () + { + $debug_cmd + + func_len_result=`expr "$1" : ".*" 2>/dev/null || echo $max_cmd_len` + } +fi + + +# func_mkdir_p DIRECTORY-PATH +# --------------------------- +# Make sure the entire path to DIRECTORY-PATH is available. +func_mkdir_p () +{ + $debug_cmd + + _G_directory_path=$1 + _G_dir_list= + + if test -n "$_G_directory_path" && test : != "$opt_dry_run"; then + + # Protect directory names starting with '-' + case $_G_directory_path in + -*) _G_directory_path=./$_G_directory_path ;; + esac + + # While some portion of DIR does not yet exist... + while test ! -d "$_G_directory_path"; do + # ...make a list in topmost first order. Use a colon delimited + # list incase some portion of path contains whitespace. + _G_dir_list=$_G_directory_path:$_G_dir_list + + # If the last portion added has no slash in it, the list is done + case $_G_directory_path in */*) ;; *) break ;; esac + + # ...otherwise throw away the child directory and loop + _G_directory_path=`$ECHO "$_G_directory_path" | $SED -e "$sed_dirname"` + done + _G_dir_list=`$ECHO "$_G_dir_list" | $SED 's|:*$||'` + + func_mkdir_p_IFS=$IFS; IFS=: + for _G_dir in $_G_dir_list; do + IFS=$func_mkdir_p_IFS + # mkdir can fail with a 'File exist' error if two processes + # try to create one of the directories concurrently. Don't + # stop in that case! + $MKDIR "$_G_dir" 2>/dev/null || : + done + IFS=$func_mkdir_p_IFS + + # Bail out if we (or some other process) failed to create a directory. + test -d "$_G_directory_path" || \ + func_fatal_error "Failed to create '$1'" + fi +} + + +# func_mktempdir [BASENAME] +# ------------------------- +# Make a temporary directory that won't clash with other running +# libtool processes, and avoids race conditions if possible. If +# given, BASENAME is the basename for that directory. +func_mktempdir () +{ + $debug_cmd + + _G_template=${TMPDIR-/tmp}/${1-$progname} + + if test : = "$opt_dry_run"; then + # Return a directory name, but don't create it in dry-run mode + _G_tmpdir=$_G_template-$$ + else + + # If mktemp works, use that first and foremost + _G_tmpdir=`mktemp -d "$_G_template-XXXXXXXX" 2>/dev/null` + + if test ! -d "$_G_tmpdir"; then + # Failing that, at least try and use $RANDOM to avoid a race + _G_tmpdir=$_G_template-${RANDOM-0}$$ + + func_mktempdir_umask=`umask` + umask 0077 + $MKDIR "$_G_tmpdir" + umask $func_mktempdir_umask + fi + + # If we're not in dry-run mode, bomb out on failure + test -d "$_G_tmpdir" || \ + func_fatal_error "cannot create temporary directory '$_G_tmpdir'" + fi + + $ECHO "$_G_tmpdir" +} + + +# func_normal_abspath PATH +# ------------------------ +# Remove doubled-up and trailing slashes, "." path components, +# and cancel out any ".." path components in PATH after making +# it an absolute path. +func_normal_abspath () +{ + $debug_cmd + + # These SED scripts presuppose an absolute path with a trailing slash. + _G_pathcar='s|^/\([^/]*\).*$|\1|' + _G_pathcdr='s|^/[^/]*||' + _G_removedotparts=':dotsl + s|/\./|/|g + t dotsl + s|/\.$|/|' + _G_collapseslashes='s|/\{1,\}|/|g' + _G_finalslash='s|/*$|/|' + + # Start from root dir and reassemble the path. + func_normal_abspath_result= + func_normal_abspath_tpath=$1 + func_normal_abspath_altnamespace= + case $func_normal_abspath_tpath in + "") + # Empty path, that just means $cwd. + func_stripname '' '/' "`pwd`" + func_normal_abspath_result=$func_stripname_result + return + ;; + # The next three entries are used to spot a run of precisely + # two leading slashes without using negated character classes; + # we take advantage of case's first-match behaviour. + ///*) + # Unusual form of absolute path, do nothing. + ;; + //*) + # Not necessarily an ordinary path; POSIX reserves leading '//' + # and for example Cygwin uses it to access remote file shares + # over CIFS/SMB, so we conserve a leading double slash if found. + func_normal_abspath_altnamespace=/ + ;; + /*) + # Absolute path, do nothing. + ;; + *) + # Relative path, prepend $cwd. + func_normal_abspath_tpath=`pwd`/$func_normal_abspath_tpath + ;; + esac + + # Cancel out all the simple stuff to save iterations. We also want + # the path to end with a slash for ease of parsing, so make sure + # there is one (and only one) here. + func_normal_abspath_tpath=`$ECHO "$func_normal_abspath_tpath" | $SED \ + -e "$_G_removedotparts" -e "$_G_collapseslashes" -e "$_G_finalslash"` + while :; do + # Processed it all yet? + if test / = "$func_normal_abspath_tpath"; then + # If we ascended to the root using ".." the result may be empty now. + if test -z "$func_normal_abspath_result"; then + func_normal_abspath_result=/ + fi + break + fi + func_normal_abspath_tcomponent=`$ECHO "$func_normal_abspath_tpath" | $SED \ + -e "$_G_pathcar"` + func_normal_abspath_tpath=`$ECHO "$func_normal_abspath_tpath" | $SED \ + -e "$_G_pathcdr"` + # Figure out what to do with it + case $func_normal_abspath_tcomponent in + "") + # Trailing empty path component, ignore it. + ;; + ..) + # Parent dir; strip last assembled component from result. + func_dirname "$func_normal_abspath_result" + func_normal_abspath_result=$func_dirname_result + ;; + *) + # Actual path component, append it. + func_append func_normal_abspath_result "/$func_normal_abspath_tcomponent" + ;; + esac + done + # Restore leading double-slash if one was found on entry. + func_normal_abspath_result=$func_normal_abspath_altnamespace$func_normal_abspath_result +} + + +# func_notquiet ARG... +# -------------------- +# Echo program name prefixed message only when not in quiet mode. +func_notquiet () +{ + $debug_cmd + + $opt_quiet || func_echo ${1+"$@"} + + # A bug in bash halts the script if the last line of a function + # fails when set -e is in force, so we need another command to + # work around that: + : +} + + +# func_relative_path SRCDIR DSTDIR +# -------------------------------- +# Set func_relative_path_result to the relative path from SRCDIR to DSTDIR. +func_relative_path () +{ + $debug_cmd + + func_relative_path_result= + func_normal_abspath "$1" + func_relative_path_tlibdir=$func_normal_abspath_result + func_normal_abspath "$2" + func_relative_path_tbindir=$func_normal_abspath_result + + # Ascend the tree starting from libdir + while :; do + # check if we have found a prefix of bindir + case $func_relative_path_tbindir in + $func_relative_path_tlibdir) + # found an exact match + func_relative_path_tcancelled= + break + ;; + $func_relative_path_tlibdir*) + # found a matching prefix + func_stripname "$func_relative_path_tlibdir" '' "$func_relative_path_tbindir" + func_relative_path_tcancelled=$func_stripname_result + if test -z "$func_relative_path_result"; then + func_relative_path_result=. + fi + break + ;; + *) + func_dirname $func_relative_path_tlibdir + func_relative_path_tlibdir=$func_dirname_result + if test -z "$func_relative_path_tlibdir"; then + # Have to descend all the way to the root! + func_relative_path_result=../$func_relative_path_result + func_relative_path_tcancelled=$func_relative_path_tbindir + break + fi + func_relative_path_result=../$func_relative_path_result + ;; + esac + done + + # Now calculate path; take care to avoid doubling-up slashes. + func_stripname '' '/' "$func_relative_path_result" + func_relative_path_result=$func_stripname_result + func_stripname '/' '/' "$func_relative_path_tcancelled" + if test -n "$func_stripname_result"; then + func_append func_relative_path_result "/$func_stripname_result" + fi + + # Normalisation. If bindir is libdir, return '.' else relative path. + if test -n "$func_relative_path_result"; then + func_stripname './' '' "$func_relative_path_result" + func_relative_path_result=$func_stripname_result + fi + + test -n "$func_relative_path_result" || func_relative_path_result=. + + : +} + + +# func_quote_for_eval ARG... +# -------------------------- +# Aesthetically quote ARGs to be evaled later. +# This function returns two values: +# i) func_quote_for_eval_result +# double-quoted, suitable for a subsequent eval +# ii) func_quote_for_eval_unquoted_result +# has all characters that are still active within double +# quotes backslashified. +func_quote_for_eval () +{ + $debug_cmd + + func_quote_for_eval_unquoted_result= + func_quote_for_eval_result= + while test 0 -lt $#; do + case $1 in + *[\\\`\"\$]*) + _G_unquoted_arg=`printf '%s\n' "$1" |$SED "$sed_quote_subst"` ;; + *) + _G_unquoted_arg=$1 ;; + esac + if test -n "$func_quote_for_eval_unquoted_result"; then + func_append func_quote_for_eval_unquoted_result " $_G_unquoted_arg" + else + func_append func_quote_for_eval_unquoted_result "$_G_unquoted_arg" + fi + + case $_G_unquoted_arg in + # Double-quote args containing shell metacharacters to delay + # word splitting, command substitution and variable expansion + # for a subsequent eval. + # Many Bourne shells cannot handle close brackets correctly + # in scan sets, so we specify it separately. + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") + _G_quoted_arg=\"$_G_unquoted_arg\" + ;; + *) + _G_quoted_arg=$_G_unquoted_arg + ;; + esac + + if test -n "$func_quote_for_eval_result"; then + func_append func_quote_for_eval_result " $_G_quoted_arg" + else + func_append func_quote_for_eval_result "$_G_quoted_arg" + fi + shift + done +} + + +# func_quote_for_expand ARG +# ------------------------- +# Aesthetically quote ARG to be evaled later; same as above, +# but do not quote variable references. +func_quote_for_expand () +{ + $debug_cmd + + case $1 in + *[\\\`\"]*) + _G_arg=`$ECHO "$1" | $SED \ + -e "$sed_double_quote_subst" -e "$sed_double_backslash"` ;; + *) + _G_arg=$1 ;; + esac + + case $_G_arg in + # Double-quote args containing shell metacharacters to delay + # word splitting and command substitution for a subsequent eval. + # Many Bourne shells cannot handle close brackets correctly + # in scan sets, so we specify it separately. + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") + _G_arg=\"$_G_arg\" + ;; + esac + + func_quote_for_expand_result=$_G_arg +} + + +# func_stripname PREFIX SUFFIX NAME +# --------------------------------- +# strip PREFIX and SUFFIX from NAME, and store in func_stripname_result. +# PREFIX and SUFFIX must not contain globbing or regex special +# characters, hashes, percent signs, but SUFFIX may contain a leading +# dot (in which case that matches only a dot). +if test yes = "$_G_HAVE_XSI_OPS"; then + eval 'func_stripname () + { + $debug_cmd + + # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are + # positional parameters, so assign one to ordinary variable first. + func_stripname_result=$3 + func_stripname_result=${func_stripname_result#"$1"} + func_stripname_result=${func_stripname_result%"$2"} + }' +else + func_stripname () + { + $debug_cmd + + case $2 in + .*) func_stripname_result=`$ECHO "$3" | $SED -e "s%^$1%%" -e "s%\\\\$2\$%%"`;; + *) func_stripname_result=`$ECHO "$3" | $SED -e "s%^$1%%" -e "s%$2\$%%"`;; + esac + } +fi + + +# func_show_eval CMD [FAIL_EXP] +# ----------------------------- +# Unless opt_quiet is true, then output CMD. Then, if opt_dryrun is +# not true, evaluate CMD. If the evaluation of CMD fails, and FAIL_EXP +# is given, then evaluate it. +func_show_eval () +{ + $debug_cmd + + _G_cmd=$1 + _G_fail_exp=${2-':'} + + func_quote_for_expand "$_G_cmd" + eval "func_notquiet $func_quote_for_expand_result" + + $opt_dry_run || { + eval "$_G_cmd" + _G_status=$? + if test 0 -ne "$_G_status"; then + eval "(exit $_G_status); $_G_fail_exp" + fi + } +} + + +# func_show_eval_locale CMD [FAIL_EXP] +# ------------------------------------ +# Unless opt_quiet is true, then output CMD. Then, if opt_dryrun is +# not true, evaluate CMD. If the evaluation of CMD fails, and FAIL_EXP +# is given, then evaluate it. Use the saved locale for evaluation. +func_show_eval_locale () +{ + $debug_cmd + + _G_cmd=$1 + _G_fail_exp=${2-':'} + + $opt_quiet || { + func_quote_for_expand "$_G_cmd" + eval "func_echo $func_quote_for_expand_result" + } + + $opt_dry_run || { + eval "$_G_user_locale + $_G_cmd" + _G_status=$? + eval "$_G_safe_locale" + if test 0 -ne "$_G_status"; then + eval "(exit $_G_status); $_G_fail_exp" + fi + } +} + + +# func_tr_sh +# ---------- +# Turn $1 into a string suitable for a shell variable name. +# Result is stored in $func_tr_sh_result. All characters +# not in the set a-zA-Z0-9_ are replaced with '_'. Further, +# if $1 begins with a digit, a '_' is prepended as well. +func_tr_sh () +{ + $debug_cmd + + case $1 in + [0-9]* | *[!a-zA-Z0-9_]*) + func_tr_sh_result=`$ECHO "$1" | $SED -e 's/^\([0-9]\)/_\1/' -e 's/[^a-zA-Z0-9_]/_/g'` + ;; + * ) + func_tr_sh_result=$1 + ;; + esac +} + + +# func_verbose ARG... +# ------------------- +# Echo program name prefixed message in verbose mode only. +func_verbose () +{ + $debug_cmd + + $opt_verbose && func_echo "$*" + + : +} + + +# func_warn_and_continue ARG... +# ----------------------------- +# Echo program name prefixed warning message to standard error. +func_warn_and_continue () +{ + $debug_cmd + + $require_term_colors + + func_echo_infix_1 "${tc_red}warning$tc_reset" "$*" >&2 +} + + +# func_warning CATEGORY ARG... +# ---------------------------- +# Echo program name prefixed warning message to standard error. Warning +# messages can be filtered according to CATEGORY, where this function +# elides messages where CATEGORY is not listed in the global variable +# 'opt_warning_types'. +func_warning () +{ + $debug_cmd + + # CATEGORY must be in the warning_categories list! + case " $warning_categories " in + *" $1 "*) ;; + *) func_internal_error "invalid warning category '$1'" ;; + esac + + _G_category=$1 + shift + + case " $opt_warning_types " in + *" $_G_category "*) $warning_func ${1+"$@"} ;; + esac +} + + +# func_sort_ver VER1 VER2 +# ----------------------- +# 'sort -V' is not generally available. +# Note this deviates from the version comparison in automake +# in that it treats 1.5 < 1.5.0, and treats 1.4.4a < 1.4-p3a +# but this should suffice as we won't be specifying old +# version formats or redundant trailing .0 in bootstrap.conf. +# If we did want full compatibility then we should probably +# use m4_version_compare from autoconf. +func_sort_ver () +{ + $debug_cmd + + printf '%s\n%s\n' "$1" "$2" \ + | sort -t. -k 1,1n -k 2,2n -k 3,3n -k 4,4n -k 5,5n -k 6,6n -k 7,7n -k 8,8n -k 9,9n +} + +# func_lt_ver PREV CURR +# --------------------- +# Return true if PREV and CURR are in the correct order according to +# func_sort_ver, otherwise false. Use it like this: +# +# func_lt_ver "$prev_ver" "$proposed_ver" || func_fatal_error "..." +func_lt_ver () +{ + $debug_cmd + + test "x$1" = x`func_sort_ver "$1" "$2" | $SED 1q` +} + + +# Local variables: +# mode: shell-script +# sh-indentation: 2 +# eval: (add-hook 'before-save-hook 'time-stamp) +# time-stamp-pattern: "10/scriptversion=%:y-%02m-%02d.%02H; # UTC" +# time-stamp-time-zone: "UTC" +# End: +#! /bin/sh + +# Set a version string for this script. +scriptversion=2014-01-07.03; # UTC + +# A portable, pluggable option parser for Bourne shell. +# Written by Gary V. Vaughan, 2010 + +# Copyright (C) 2010-2015 Free Software Foundation, Inc. +# This is free software; see the source for copying conditions. There is NO +# warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +# Please report bugs or propose patches to gary@gnu.org. + + +## ------ ## +## Usage. ## +## ------ ## + +# This file is a library for parsing options in your shell scripts along +# with assorted other useful supporting features that you can make use +# of too. +# +# For the simplest scripts you might need only: +# +# #!/bin/sh +# . relative/path/to/funclib.sh +# . relative/path/to/options-parser +# scriptversion=1.0 +# func_options ${1+"$@"} +# eval set dummy "$func_options_result"; shift +# ...rest of your script... +# +# In order for the '--version' option to work, you will need to have a +# suitably formatted comment like the one at the top of this file +# starting with '# Written by ' and ending with '# warranty; '. +# +# For '-h' and '--help' to work, you will also need a one line +# description of your script's purpose in a comment directly above the +# '# Written by ' line, like the one at the top of this file. +# +# The default options also support '--debug', which will turn on shell +# execution tracing (see the comment above debug_cmd below for another +# use), and '--verbose' and the func_verbose function to allow your script +# to display verbose messages only when your user has specified +# '--verbose'. +# +# After sourcing this file, you can plug processing for additional +# options by amending the variables from the 'Configuration' section +# below, and following the instructions in the 'Option parsing' +# section further down. + +## -------------- ## +## Configuration. ## +## -------------- ## + +# You should override these variables in your script after sourcing this +# file so that they reflect the customisations you have added to the +# option parser. + +# The usage line for option parsing errors and the start of '-h' and +# '--help' output messages. You can embed shell variables for delayed +# expansion at the time the message is displayed, but you will need to +# quote other shell meta-characters carefully to prevent them being +# expanded when the contents are evaled. +usage='$progpath [OPTION]...' + +# Short help message in response to '-h' and '--help'. Add to this or +# override it after sourcing this library to reflect the full set of +# options your script accepts. +usage_message="\ + --debug enable verbose shell tracing + -W, --warnings=CATEGORY + report the warnings falling in CATEGORY [all] + -v, --verbose verbosely report processing + --version print version information and exit + -h, --help print short or long help message and exit +" + +# Additional text appended to 'usage_message' in response to '--help'. +long_help_message=" +Warning categories include: + 'all' show all warnings + 'none' turn off all the warnings + 'error' warnings are treated as fatal errors" + +# Help message printed before fatal option parsing errors. +fatal_help="Try '\$progname --help' for more information." + + + +## ------------------------- ## +## Hook function management. ## +## ------------------------- ## + +# This section contains functions for adding, removing, and running hooks +# to the main code. A hook is just a named list of of function, that can +# be run in order later on. + +# func_hookable FUNC_NAME +# ----------------------- +# Declare that FUNC_NAME will run hooks added with +# 'func_add_hook FUNC_NAME ...'. +func_hookable () +{ + $debug_cmd + + func_append hookable_fns " $1" +} + + +# func_add_hook FUNC_NAME HOOK_FUNC +# --------------------------------- +# Request that FUNC_NAME call HOOK_FUNC before it returns. FUNC_NAME must +# first have been declared "hookable" by a call to 'func_hookable'. +func_add_hook () +{ + $debug_cmd + + case " $hookable_fns " in + *" $1 "*) ;; + *) func_fatal_error "'$1' does not accept hook functions." ;; + esac + + eval func_append ${1}_hooks '" $2"' +} + + +# func_remove_hook FUNC_NAME HOOK_FUNC +# ------------------------------------ +# Remove HOOK_FUNC from the list of functions called by FUNC_NAME. +func_remove_hook () +{ + $debug_cmd + + eval ${1}_hooks='`$ECHO "\$'$1'_hooks" |$SED "s| '$2'||"`' +} + + +# func_run_hooks FUNC_NAME [ARG]... +# --------------------------------- +# Run all hook functions registered to FUNC_NAME. +# It is assumed that the list of hook functions contains nothing more +# than a whitespace-delimited list of legal shell function names, and +# no effort is wasted trying to catch shell meta-characters or preserve +# whitespace. +func_run_hooks () +{ + $debug_cmd + + case " $hookable_fns " in + *" $1 "*) ;; + *) func_fatal_error "'$1' does not support hook funcions.n" ;; + esac + + eval _G_hook_fns=\$$1_hooks; shift + + for _G_hook in $_G_hook_fns; do + eval $_G_hook '"$@"' + + # store returned options list back into positional + # parameters for next 'cmd' execution. + eval _G_hook_result=\$${_G_hook}_result + eval set dummy "$_G_hook_result"; shift + done + + func_quote_for_eval ${1+"$@"} + func_run_hooks_result=$func_quote_for_eval_result +} + + + +## --------------- ## +## Option parsing. ## +## --------------- ## + +# In order to add your own option parsing hooks, you must accept the +# full positional parameter list in your hook function, remove any +# options that you action, and then pass back the remaining unprocessed +# options in '_result', escaped suitably for +# 'eval'. Like this: +# +# my_options_prep () +# { +# $debug_cmd +# +# # Extend the existing usage message. +# usage_message=$usage_message' +# -s, --silent don'\''t print informational messages +# ' +# +# func_quote_for_eval ${1+"$@"} +# my_options_prep_result=$func_quote_for_eval_result +# } +# func_add_hook func_options_prep my_options_prep +# +# +# my_silent_option () +# { +# $debug_cmd +# +# # Note that for efficiency, we parse as many options as we can +# # recognise in a loop before passing the remainder back to the +# # caller on the first unrecognised argument we encounter. +# while test $# -gt 0; do +# opt=$1; shift +# case $opt in +# --silent|-s) opt_silent=: ;; +# # Separate non-argument short options: +# -s*) func_split_short_opt "$_G_opt" +# set dummy "$func_split_short_opt_name" \ +# "-$func_split_short_opt_arg" ${1+"$@"} +# shift +# ;; +# *) set dummy "$_G_opt" "$*"; shift; break ;; +# esac +# done +# +# func_quote_for_eval ${1+"$@"} +# my_silent_option_result=$func_quote_for_eval_result +# } +# func_add_hook func_parse_options my_silent_option +# +# +# my_option_validation () +# { +# $debug_cmd +# +# $opt_silent && $opt_verbose && func_fatal_help "\ +# '--silent' and '--verbose' options are mutually exclusive." +# +# func_quote_for_eval ${1+"$@"} +# my_option_validation_result=$func_quote_for_eval_result +# } +# func_add_hook func_validate_options my_option_validation +# +# You'll alse need to manually amend $usage_message to reflect the extra +# options you parse. It's preferable to append if you can, so that +# multiple option parsing hooks can be added safely. + + +# func_options [ARG]... +# --------------------- +# All the functions called inside func_options are hookable. See the +# individual implementations for details. +func_hookable func_options +func_options () +{ + $debug_cmd + + func_options_prep ${1+"$@"} + eval func_parse_options \ + ${func_options_prep_result+"$func_options_prep_result"} + eval func_validate_options \ + ${func_parse_options_result+"$func_parse_options_result"} + + eval func_run_hooks func_options \ + ${func_validate_options_result+"$func_validate_options_result"} + + # save modified positional parameters for caller + func_options_result=$func_run_hooks_result +} + + +# func_options_prep [ARG]... +# -------------------------- +# All initialisations required before starting the option parse loop. +# Note that when calling hook functions, we pass through the list of +# positional parameters. If a hook function modifies that list, and +# needs to propogate that back to rest of this script, then the complete +# modified list must be put in 'func_run_hooks_result' before +# returning. +func_hookable func_options_prep +func_options_prep () +{ + $debug_cmd + + # Option defaults: + opt_verbose=false + opt_warning_types= + + func_run_hooks func_options_prep ${1+"$@"} + + # save modified positional parameters for caller + func_options_prep_result=$func_run_hooks_result +} + + +# func_parse_options [ARG]... +# --------------------------- +# The main option parsing loop. +func_hookable func_parse_options +func_parse_options () +{ + $debug_cmd + + func_parse_options_result= + + # this just eases exit handling + while test $# -gt 0; do + # Defer to hook functions for initial option parsing, so they + # get priority in the event of reusing an option name. + func_run_hooks func_parse_options ${1+"$@"} + + # Adjust func_parse_options positional parameters to match + eval set dummy "$func_run_hooks_result"; shift + + # Break out of the loop if we already parsed every option. + test $# -gt 0 || break + + _G_opt=$1 + shift + case $_G_opt in + --debug|-x) debug_cmd='set -x' + func_echo "enabling shell trace mode" + $debug_cmd + ;; + + --no-warnings|--no-warning|--no-warn) + set dummy --warnings none ${1+"$@"} + shift + ;; + + --warnings|--warning|-W) + test $# = 0 && func_missing_arg $_G_opt && break + case " $warning_categories $1" in + *" $1 "*) + # trailing space prevents matching last $1 above + func_append_uniq opt_warning_types " $1" + ;; + *all) + opt_warning_types=$warning_categories + ;; + *none) + opt_warning_types=none + warning_func=: + ;; + *error) + opt_warning_types=$warning_categories + warning_func=func_fatal_error + ;; + *) + func_fatal_error \ + "unsupported warning category: '$1'" + ;; + esac + shift + ;; + + --verbose|-v) opt_verbose=: ;; + --version) func_version ;; + -\?|-h) func_usage ;; + --help) func_help ;; + + # Separate optargs to long options (plugins may need this): + --*=*) func_split_equals "$_G_opt" + set dummy "$func_split_equals_lhs" \ + "$func_split_equals_rhs" ${1+"$@"} + shift + ;; + + # Separate optargs to short options: + -W*) + func_split_short_opt "$_G_opt" + set dummy "$func_split_short_opt_name" \ + "$func_split_short_opt_arg" ${1+"$@"} + shift + ;; + + # Separate non-argument short options: + -\?*|-h*|-v*|-x*) + func_split_short_opt "$_G_opt" + set dummy "$func_split_short_opt_name" \ + "-$func_split_short_opt_arg" ${1+"$@"} + shift + ;; + + --) break ;; + -*) func_fatal_help "unrecognised option: '$_G_opt'" ;; + *) set dummy "$_G_opt" ${1+"$@"}; shift; break ;; + esac + done + + # save modified positional parameters for caller + func_quote_for_eval ${1+"$@"} + func_parse_options_result=$func_quote_for_eval_result +} + + +# func_validate_options [ARG]... +# ------------------------------ +# Perform any sanity checks on option settings and/or unconsumed +# arguments. +func_hookable func_validate_options +func_validate_options () +{ + $debug_cmd + + # Display all warnings if -W was not given. + test -n "$opt_warning_types" || opt_warning_types=" $warning_categories" + + func_run_hooks func_validate_options ${1+"$@"} + + # Bail if the options were screwed! + $exit_cmd $EXIT_FAILURE + + # save modified positional parameters for caller + func_validate_options_result=$func_run_hooks_result +} + + + +## ----------------- ## +## Helper functions. ## +## ----------------- ## + +# This section contains the helper functions used by the rest of the +# hookable option parser framework in ascii-betical order. + + +# func_fatal_help ARG... +# ---------------------- +# Echo program name prefixed message to standard error, followed by +# a help hint, and exit. +func_fatal_help () +{ + $debug_cmd + + eval \$ECHO \""Usage: $usage"\" + eval \$ECHO \""$fatal_help"\" + func_error ${1+"$@"} + exit $EXIT_FAILURE +} + + +# func_help +# --------- +# Echo long help message to standard output and exit. +func_help () +{ + $debug_cmd + + func_usage_message + $ECHO "$long_help_message" + exit 0 +} + + +# func_missing_arg ARGNAME +# ------------------------ +# Echo program name prefixed message to standard error and set global +# exit_cmd. +func_missing_arg () +{ + $debug_cmd + + func_error "Missing argument for '$1'." + exit_cmd=exit +} + + +# func_split_equals STRING +# ------------------------ +# Set func_split_equals_lhs and func_split_equals_rhs shell variables after +# splitting STRING at the '=' sign. +test -z "$_G_HAVE_XSI_OPS" \ + && (eval 'x=a/b/c; + test 5aa/bb/cc = "${#x}${x%%/*}${x%/*}${x#*/}${x##*/}"') 2>/dev/null \ + && _G_HAVE_XSI_OPS=yes + +if test yes = "$_G_HAVE_XSI_OPS" +then + # This is an XSI compatible shell, allowing a faster implementation... + eval 'func_split_equals () + { + $debug_cmd + + func_split_equals_lhs=${1%%=*} + func_split_equals_rhs=${1#*=} + test "x$func_split_equals_lhs" = "x$1" \ + && func_split_equals_rhs= + }' +else + # ...otherwise fall back to using expr, which is often a shell builtin. + func_split_equals () + { + $debug_cmd + + func_split_equals_lhs=`expr "x$1" : 'x\([^=]*\)'` + func_split_equals_rhs= + test "x$func_split_equals_lhs" = "x$1" \ + || func_split_equals_rhs=`expr "x$1" : 'x[^=]*=\(.*\)$'` + } +fi #func_split_equals + + +# func_split_short_opt SHORTOPT +# ----------------------------- +# Set func_split_short_opt_name and func_split_short_opt_arg shell +# variables after splitting SHORTOPT after the 2nd character. +if test yes = "$_G_HAVE_XSI_OPS" +then + # This is an XSI compatible shell, allowing a faster implementation... + eval 'func_split_short_opt () + { + $debug_cmd + + func_split_short_opt_arg=${1#??} + func_split_short_opt_name=${1%"$func_split_short_opt_arg"} + }' +else + # ...otherwise fall back to using expr, which is often a shell builtin. + func_split_short_opt () + { + $debug_cmd + + func_split_short_opt_name=`expr "x$1" : 'x-\(.\)'` + func_split_short_opt_arg=`expr "x$1" : 'x-.\(.*\)$'` + } +fi #func_split_short_opt + + +# func_usage +# ---------- +# Echo short help message to standard output and exit. +func_usage () +{ + $debug_cmd + + func_usage_message + $ECHO "Run '$progname --help |${PAGER-more}' for full usage" + exit 0 +} + + +# func_usage_message +# ------------------ +# Echo short help message to standard output. +func_usage_message () +{ + $debug_cmd + + eval \$ECHO \""Usage: $usage"\" + echo + $SED -n 's|^# || + /^Written by/{ + x;p;x + } + h + /^Written by/q' < "$progpath" + echo + eval \$ECHO \""$usage_message"\" +} + + +# func_version +# ------------ +# Echo version message to standard output and exit. +func_version () +{ + $debug_cmd + + printf '%s\n' "$progname $scriptversion" + $SED -n ' + /(C)/!b go + :more + /\./!{ + N + s|\n# | | + b more + } + :go + /^# Written by /,/# warranty; / { + s|^# || + s|^# *$|| + s|\((C)\)[ 0-9,-]*[ ,-]\([1-9][0-9]* \)|\1 \2| + p + } + /^# Written by / { + s|^# || + p + } + /^warranty; /q' < "$progpath" + + exit $? +} + + +# Local variables: +# mode: shell-script +# sh-indentation: 2 +# eval: (add-hook 'before-save-hook 'time-stamp) +# time-stamp-pattern: "10/scriptversion=%:y-%02m-%02d.%02H; # UTC" +# time-stamp-time-zone: "UTC" +# End: + +# Set a version string. +scriptversion='(GNU libtool) 2.4.6' + + +# func_echo ARG... +# ---------------- +# Libtool also displays the current mode in messages, so override +# funclib.sh func_echo with this custom definition. +func_echo () +{ + $debug_cmd + + _G_message=$* + + func_echo_IFS=$IFS + IFS=$nl + for _G_line in $_G_message; do + IFS=$func_echo_IFS + $ECHO "$progname${opt_mode+: $opt_mode}: $_G_line" + done + IFS=$func_echo_IFS +} + + +# func_warning ARG... +# ------------------- +# Libtool warnings are not categorized, so override funclib.sh +# func_warning with this simpler definition. +func_warning () +{ + $debug_cmd + + $warning_func ${1+"$@"} +} + + +## ---------------- ## +## Options parsing. ## +## ---------------- ## + +# Hook in the functions to make sure our own options are parsed during +# the option parsing loop. + +usage='$progpath [OPTION]... [MODE-ARG]...' + +# Short help message in response to '-h'. +usage_message="Options: + --config show all configuration variables + --debug enable verbose shell tracing + -n, --dry-run display commands without modifying any files + --features display basic configuration information and exit + --mode=MODE use operation mode MODE + --no-warnings equivalent to '-Wnone' + --preserve-dup-deps don't remove duplicate dependency libraries + --quiet, --silent don't print informational messages + --tag=TAG use configuration variables from tag TAG + -v, --verbose print more informational messages than default + --version print version information + -W, --warnings=CATEGORY report the warnings falling in CATEGORY [all] + -h, --help, --help-all print short, long, or detailed help message +" + +# Additional text appended to 'usage_message' in response to '--help'. +func_help () +{ + $debug_cmd + + func_usage_message + $ECHO "$long_help_message + +MODE must be one of the following: + + clean remove files from the build directory + compile compile a source file into a libtool object + execute automatically set library path, then run a program + finish complete the installation of libtool libraries + install install libraries or executables + link create a library or an executable + uninstall remove libraries from an installed directory + +MODE-ARGS vary depending on the MODE. When passed as first option, +'--mode=MODE' may be abbreviated as 'MODE' or a unique abbreviation of that. +Try '$progname --help --mode=MODE' for a more detailed description of MODE. + +When reporting a bug, please describe a test case to reproduce it and +include the following information: + + host-triplet: $host + shell: $SHELL + compiler: $LTCC + compiler flags: $LTCFLAGS + linker: $LD (gnu? $with_gnu_ld) + version: $progname $scriptversion Debian-2.4.6-2 + automake: `($AUTOMAKE --version) 2>/dev/null |$SED 1q` + autoconf: `($AUTOCONF --version) 2>/dev/null |$SED 1q` + +Report bugs to . +GNU libtool home page: . +General help using GNU software: ." + exit 0 +} + + +# func_lo2o OBJECT-NAME +# --------------------- +# Transform OBJECT-NAME from a '.lo' suffix to the platform specific +# object suffix. + +lo2o=s/\\.lo\$/.$objext/ +o2lo=s/\\.$objext\$/.lo/ + +if test yes = "$_G_HAVE_XSI_OPS"; then + eval 'func_lo2o () + { + case $1 in + *.lo) func_lo2o_result=${1%.lo}.$objext ;; + * ) func_lo2o_result=$1 ;; + esac + }' + + # func_xform LIBOBJ-OR-SOURCE + # --------------------------- + # Transform LIBOBJ-OR-SOURCE from a '.o' or '.c' (or otherwise) + # suffix to a '.lo' libtool-object suffix. + eval 'func_xform () + { + func_xform_result=${1%.*}.lo + }' +else + # ...otherwise fall back to using sed. + func_lo2o () + { + func_lo2o_result=`$ECHO "$1" | $SED "$lo2o"` + } + + func_xform () + { + func_xform_result=`$ECHO "$1" | $SED 's|\.[^.]*$|.lo|'` + } +fi + + +# func_fatal_configuration ARG... +# ------------------------------- +# Echo program name prefixed message to standard error, followed by +# a configuration failure hint, and exit. +func_fatal_configuration () +{ + func__fatal_error ${1+"$@"} \ + "See the $PACKAGE documentation for more information." \ + "Fatal configuration error." +} + + +# func_config +# ----------- +# Display the configuration for all the tags in this script. +func_config () +{ + re_begincf='^# ### BEGIN LIBTOOL' + re_endcf='^# ### END LIBTOOL' + + # Default configuration. + $SED "1,/$re_begincf CONFIG/d;/$re_endcf CONFIG/,\$d" < "$progpath" + + # Now print the configurations for the tags. + for tagname in $taglist; do + $SED -n "/$re_begincf TAG CONFIG: $tagname\$/,/$re_endcf TAG CONFIG: $tagname\$/p" < "$progpath" + done + + exit $? +} + + +# func_features +# ------------- +# Display the features supported by this script. +func_features () +{ + echo "host: $host" + if test yes = "$build_libtool_libs"; then + echo "enable shared libraries" + else + echo "disable shared libraries" + fi + if test yes = "$build_old_libs"; then + echo "enable static libraries" + else + echo "disable static libraries" + fi + + exit $? +} + + +# func_enable_tag TAGNAME +# ----------------------- +# Verify that TAGNAME is valid, and either flag an error and exit, or +# enable the TAGNAME tag. We also add TAGNAME to the global $taglist +# variable here. +func_enable_tag () +{ + # Global variable: + tagname=$1 + + re_begincf="^# ### BEGIN LIBTOOL TAG CONFIG: $tagname\$" + re_endcf="^# ### END LIBTOOL TAG CONFIG: $tagname\$" + sed_extractcf=/$re_begincf/,/$re_endcf/p + + # Validate tagname. + case $tagname in + *[!-_A-Za-z0-9,/]*) + func_fatal_error "invalid tag name: $tagname" + ;; + esac + + # Don't test for the "default" C tag, as we know it's + # there but not specially marked. + case $tagname in + CC) ;; + *) + if $GREP "$re_begincf" "$progpath" >/dev/null 2>&1; then + taglist="$taglist $tagname" + + # Evaluate the configuration. Be careful to quote the path + # and the sed script, to avoid splitting on whitespace, but + # also don't use non-portable quotes within backquotes within + # quotes we have to do it in 2 steps: + extractedcf=`$SED -n -e "$sed_extractcf" < "$progpath"` + eval "$extractedcf" + else + func_error "ignoring unknown tag $tagname" + fi + ;; + esac +} + + +# func_check_version_match +# ------------------------ +# Ensure that we are using m4 macros, and libtool script from the same +# release of libtool. +func_check_version_match () +{ + if test "$package_revision" != "$macro_revision"; then + if test "$VERSION" != "$macro_version"; then + if test -z "$macro_version"; then + cat >&2 <<_LT_EOF +$progname: Version mismatch error. This is $PACKAGE $VERSION, but the +$progname: definition of this LT_INIT comes from an older release. +$progname: You should recreate aclocal.m4 with macros from $PACKAGE $VERSION +$progname: and run autoconf again. +_LT_EOF + else + cat >&2 <<_LT_EOF +$progname: Version mismatch error. This is $PACKAGE $VERSION, but the +$progname: definition of this LT_INIT comes from $PACKAGE $macro_version. +$progname: You should recreate aclocal.m4 with macros from $PACKAGE $VERSION +$progname: and run autoconf again. +_LT_EOF + fi + else + cat >&2 <<_LT_EOF +$progname: Version mismatch error. This is $PACKAGE $VERSION, revision $package_revision, +$progname: but the definition of this LT_INIT comes from revision $macro_revision. +$progname: You should recreate aclocal.m4 with macros from revision $package_revision +$progname: of $PACKAGE $VERSION and run autoconf again. +_LT_EOF + fi + + exit $EXIT_MISMATCH + fi +} + + +# libtool_options_prep [ARG]... +# ----------------------------- +# Preparation for options parsed by libtool. +libtool_options_prep () +{ + $debug_mode + + # Option defaults: + opt_config=false + opt_dlopen= + opt_dry_run=false + opt_help=false + opt_mode= + opt_preserve_dup_deps=false + opt_quiet=false + + nonopt= + preserve_args= + + # Shorthand for --mode=foo, only valid as the first argument + case $1 in + clean|clea|cle|cl) + shift; set dummy --mode clean ${1+"$@"}; shift + ;; + compile|compil|compi|comp|com|co|c) + shift; set dummy --mode compile ${1+"$@"}; shift + ;; + execute|execut|execu|exec|exe|ex|e) + shift; set dummy --mode execute ${1+"$@"}; shift + ;; + finish|finis|fini|fin|fi|f) + shift; set dummy --mode finish ${1+"$@"}; shift + ;; + install|instal|insta|inst|ins|in|i) + shift; set dummy --mode install ${1+"$@"}; shift + ;; + link|lin|li|l) + shift; set dummy --mode link ${1+"$@"}; shift + ;; + uninstall|uninstal|uninsta|uninst|unins|unin|uni|un|u) + shift; set dummy --mode uninstall ${1+"$@"}; shift + ;; + esac + + # Pass back the list of options. + func_quote_for_eval ${1+"$@"} + libtool_options_prep_result=$func_quote_for_eval_result +} +func_add_hook func_options_prep libtool_options_prep + + +# libtool_parse_options [ARG]... +# --------------------------------- +# Provide handling for libtool specific options. +libtool_parse_options () +{ + $debug_cmd + + # Perform our own loop to consume as many options as possible in + # each iteration. + while test $# -gt 0; do + _G_opt=$1 + shift + case $_G_opt in + --dry-run|--dryrun|-n) + opt_dry_run=: + ;; + + --config) func_config ;; + + --dlopen|-dlopen) + opt_dlopen="${opt_dlopen+$opt_dlopen +}$1" + shift + ;; + + --preserve-dup-deps) + opt_preserve_dup_deps=: ;; + + --features) func_features ;; + + --finish) set dummy --mode finish ${1+"$@"}; shift ;; + + --help) opt_help=: ;; + + --help-all) opt_help=': help-all' ;; + + --mode) test $# = 0 && func_missing_arg $_G_opt && break + opt_mode=$1 + case $1 in + # Valid mode arguments: + clean|compile|execute|finish|install|link|relink|uninstall) ;; + + # Catch anything else as an error + *) func_error "invalid argument for $_G_opt" + exit_cmd=exit + break + ;; + esac + shift + ;; + + --no-silent|--no-quiet) + opt_quiet=false + func_append preserve_args " $_G_opt" + ;; + + --no-warnings|--no-warning|--no-warn) + opt_warning=false + func_append preserve_args " $_G_opt" + ;; + + --no-verbose) + opt_verbose=false + func_append preserve_args " $_G_opt" + ;; + + --silent|--quiet) + opt_quiet=: + opt_verbose=false + func_append preserve_args " $_G_opt" + ;; + + --tag) test $# = 0 && func_missing_arg $_G_opt && break + opt_tag=$1 + func_append preserve_args " $_G_opt $1" + func_enable_tag "$1" + shift + ;; + + --verbose|-v) opt_quiet=false + opt_verbose=: + func_append preserve_args " $_G_opt" + ;; + + # An option not handled by this hook function: + *) set dummy "$_G_opt" ${1+"$@"}; shift; break ;; + esac + done + + + # save modified positional parameters for caller + func_quote_for_eval ${1+"$@"} + libtool_parse_options_result=$func_quote_for_eval_result +} +func_add_hook func_parse_options libtool_parse_options + + + +# libtool_validate_options [ARG]... +# --------------------------------- +# Perform any sanity checks on option settings and/or unconsumed +# arguments. +libtool_validate_options () +{ + # save first non-option argument + if test 0 -lt $#; then + nonopt=$1 + shift + fi + + # preserve --debug + test : = "$debug_cmd" || func_append preserve_args " --debug" + + case $host in + # Solaris2 added to fix http://debbugs.gnu.org/cgi/bugreport.cgi?bug=16452 + # see also: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59788 + *cygwin* | *mingw* | *pw32* | *cegcc* | *solaris2* | *os2*) + # don't eliminate duplications in $postdeps and $predeps + opt_duplicate_compiler_generated_deps=: + ;; + *) + opt_duplicate_compiler_generated_deps=$opt_preserve_dup_deps + ;; + esac + + $opt_help || { + # Sanity checks first: + func_check_version_match + + test yes != "$build_libtool_libs" \ + && test yes != "$build_old_libs" \ + && func_fatal_configuration "not configured to build any kind of library" + + # Darwin sucks + eval std_shrext=\"$shrext_cmds\" + + # Only execute mode is allowed to have -dlopen flags. + if test -n "$opt_dlopen" && test execute != "$opt_mode"; then + func_error "unrecognized option '-dlopen'" + $ECHO "$help" 1>&2 + exit $EXIT_FAILURE + fi + + # Change the help message to a mode-specific one. + generic_help=$help + help="Try '$progname --help --mode=$opt_mode' for more information." + } + + # Pass back the unparsed argument list + func_quote_for_eval ${1+"$@"} + libtool_validate_options_result=$func_quote_for_eval_result +} +func_add_hook func_validate_options libtool_validate_options + + +# Process options as early as possible so that --help and --version +# can return quickly. +func_options ${1+"$@"} +eval set dummy "$func_options_result"; shift + + + +## ----------- ## +## Main. ## +## ----------- ## + +magic='%%%MAGIC variable%%%' +magic_exe='%%%MAGIC EXE variable%%%' + +# Global variables. +extracted_archives= +extracted_serial=0 + +# If this variable is set in any of the actions, the command in it +# will be execed at the end. This prevents here-documents from being +# left over by shells. +exec_cmd= + + +# A function that is used when there is no print builtin or printf. +func_fallback_echo () +{ + eval 'cat <<_LTECHO_EOF +$1 +_LTECHO_EOF' +} + +# func_generated_by_libtool +# True iff stdin has been generated by Libtool. This function is only +# a basic sanity check; it will hardly flush out determined imposters. +func_generated_by_libtool_p () +{ + $GREP "^# Generated by .*$PACKAGE" > /dev/null 2>&1 +} + +# func_lalib_p file +# True iff FILE is a libtool '.la' library or '.lo' object file. +# This function is only a basic sanity check; it will hardly flush out +# determined imposters. +func_lalib_p () +{ + test -f "$1" && + $SED -e 4q "$1" 2>/dev/null | func_generated_by_libtool_p +} + +# func_lalib_unsafe_p file +# True iff FILE is a libtool '.la' library or '.lo' object file. +# This function implements the same check as func_lalib_p without +# resorting to external programs. To this end, it redirects stdin and +# closes it afterwards, without saving the original file descriptor. +# As a safety measure, use it only where a negative result would be +# fatal anyway. Works if 'file' does not exist. +func_lalib_unsafe_p () +{ + lalib_p=no + if test -f "$1" && test -r "$1" && exec 5<&0 <"$1"; then + for lalib_p_l in 1 2 3 4 + do + read lalib_p_line + case $lalib_p_line in + \#\ Generated\ by\ *$PACKAGE* ) lalib_p=yes; break;; + esac + done + exec 0<&5 5<&- + fi + test yes = "$lalib_p" +} + +# func_ltwrapper_script_p file +# True iff FILE is a libtool wrapper script +# This function is only a basic sanity check; it will hardly flush out +# determined imposters. +func_ltwrapper_script_p () +{ + test -f "$1" && + $lt_truncate_bin < "$1" 2>/dev/null | func_generated_by_libtool_p +} + +# func_ltwrapper_executable_p file +# True iff FILE is a libtool wrapper executable +# This function is only a basic sanity check; it will hardly flush out +# determined imposters. +func_ltwrapper_executable_p () +{ + func_ltwrapper_exec_suffix= + case $1 in + *.exe) ;; + *) func_ltwrapper_exec_suffix=.exe ;; + esac + $GREP "$magic_exe" "$1$func_ltwrapper_exec_suffix" >/dev/null 2>&1 +} + +# func_ltwrapper_scriptname file +# Assumes file is an ltwrapper_executable +# uses $file to determine the appropriate filename for a +# temporary ltwrapper_script. +func_ltwrapper_scriptname () +{ + func_dirname_and_basename "$1" "" "." + func_stripname '' '.exe' "$func_basename_result" + func_ltwrapper_scriptname_result=$func_dirname_result/$objdir/${func_stripname_result}_ltshwrapper +} + +# func_ltwrapper_p file +# True iff FILE is a libtool wrapper script or wrapper executable +# This function is only a basic sanity check; it will hardly flush out +# determined imposters. +func_ltwrapper_p () +{ + func_ltwrapper_script_p "$1" || func_ltwrapper_executable_p "$1" +} + + +# func_execute_cmds commands fail_cmd +# Execute tilde-delimited COMMANDS. +# If FAIL_CMD is given, eval that upon failure. +# FAIL_CMD may read-access the current command in variable CMD! +func_execute_cmds () +{ + $debug_cmd + + save_ifs=$IFS; IFS='~' + for cmd in $1; do + IFS=$sp$nl + eval cmd=\"$cmd\" + IFS=$save_ifs + func_show_eval "$cmd" "${2-:}" + done + IFS=$save_ifs +} + + +# func_source file +# Source FILE, adding directory component if necessary. +# Note that it is not necessary on cygwin/mingw to append a dot to +# FILE even if both FILE and FILE.exe exist: automatic-append-.exe +# behavior happens only for exec(3), not for open(2)! Also, sourcing +# 'FILE.' does not work on cygwin managed mounts. +func_source () +{ + $debug_cmd + + case $1 in + */* | *\\*) . "$1" ;; + *) . "./$1" ;; + esac +} + + +# func_resolve_sysroot PATH +# Replace a leading = in PATH with a sysroot. Store the result into +# func_resolve_sysroot_result +func_resolve_sysroot () +{ + func_resolve_sysroot_result=$1 + case $func_resolve_sysroot_result in + =*) + func_stripname '=' '' "$func_resolve_sysroot_result" + func_resolve_sysroot_result=$lt_sysroot$func_stripname_result + ;; + esac +} + +# func_replace_sysroot PATH +# If PATH begins with the sysroot, replace it with = and +# store the result into func_replace_sysroot_result. +func_replace_sysroot () +{ + case $lt_sysroot:$1 in + ?*:"$lt_sysroot"*) + func_stripname "$lt_sysroot" '' "$1" + func_replace_sysroot_result='='$func_stripname_result + ;; + *) + # Including no sysroot. + func_replace_sysroot_result=$1 + ;; + esac +} + +# func_infer_tag arg +# Infer tagged configuration to use if any are available and +# if one wasn't chosen via the "--tag" command line option. +# Only attempt this if the compiler in the base compile +# command doesn't match the default compiler. +# arg is usually of the form 'gcc ...' +func_infer_tag () +{ + $debug_cmd + + if test -n "$available_tags" && test -z "$tagname"; then + CC_quoted= + for arg in $CC; do + func_append_quoted CC_quoted "$arg" + done + CC_expanded=`func_echo_all $CC` + CC_quoted_expanded=`func_echo_all $CC_quoted` + case $@ in + # Blanks in the command may have been stripped by the calling shell, + # but not from the CC environment variable when configure was run. + " $CC "* | "$CC "* | " $CC_expanded "* | "$CC_expanded "* | \ + " $CC_quoted"* | "$CC_quoted "* | " $CC_quoted_expanded "* | "$CC_quoted_expanded "*) ;; + # Blanks at the start of $base_compile will cause this to fail + # if we don't check for them as well. + *) + for z in $available_tags; do + if $GREP "^# ### BEGIN LIBTOOL TAG CONFIG: $z$" < "$progpath" > /dev/null; then + # Evaluate the configuration. + eval "`$SED -n -e '/^# ### BEGIN LIBTOOL TAG CONFIG: '$z'$/,/^# ### END LIBTOOL TAG CONFIG: '$z'$/p' < $progpath`" + CC_quoted= + for arg in $CC; do + # Double-quote args containing other shell metacharacters. + func_append_quoted CC_quoted "$arg" + done + CC_expanded=`func_echo_all $CC` + CC_quoted_expanded=`func_echo_all $CC_quoted` + case "$@ " in + " $CC "* | "$CC "* | " $CC_expanded "* | "$CC_expanded "* | \ + " $CC_quoted"* | "$CC_quoted "* | " $CC_quoted_expanded "* | "$CC_quoted_expanded "*) + # The compiler in the base compile command matches + # the one in the tagged configuration. + # Assume this is the tagged configuration we want. + tagname=$z + break + ;; + esac + fi + done + # If $tagname still isn't set, then no tagged configuration + # was found and let the user know that the "--tag" command + # line option must be used. + if test -z "$tagname"; then + func_echo "unable to infer tagged configuration" + func_fatal_error "specify a tag with '--tag'" +# else +# func_verbose "using $tagname tagged configuration" + fi + ;; + esac + fi +} + + + +# func_write_libtool_object output_name pic_name nonpic_name +# Create a libtool object file (analogous to a ".la" file), +# but don't create it if we're doing a dry run. +func_write_libtool_object () +{ + write_libobj=$1 + if test yes = "$build_libtool_libs"; then + write_lobj=\'$2\' + else + write_lobj=none + fi + + if test yes = "$build_old_libs"; then + write_oldobj=\'$3\' + else + write_oldobj=none + fi + + $opt_dry_run || { + cat >${write_libobj}T </dev/null` + if test "$?" -eq 0 && test -n "$func_convert_core_file_wine_to_w32_tmp"; then + func_convert_core_file_wine_to_w32_result=`$ECHO "$func_convert_core_file_wine_to_w32_tmp" | + $SED -e "$sed_naive_backslashify"` + else + func_convert_core_file_wine_to_w32_result= + fi + fi +} +# end: func_convert_core_file_wine_to_w32 + + +# func_convert_core_path_wine_to_w32 ARG +# Helper function used by path conversion functions when $build is *nix, and +# $host is mingw, cygwin, or some other w32 environment. Relies on a correctly +# configured wine environment available, with the winepath program in $build's +# $PATH. Assumes ARG has no leading or trailing path separator characters. +# +# ARG is path to be converted from $build format to win32. +# Result is available in $func_convert_core_path_wine_to_w32_result. +# Unconvertible file (directory) names in ARG are skipped; if no directory names +# are convertible, then the result may be empty. +func_convert_core_path_wine_to_w32 () +{ + $debug_cmd + + # unfortunately, winepath doesn't convert paths, only file names + func_convert_core_path_wine_to_w32_result= + if test -n "$1"; then + oldIFS=$IFS + IFS=: + for func_convert_core_path_wine_to_w32_f in $1; do + IFS=$oldIFS + func_convert_core_file_wine_to_w32 "$func_convert_core_path_wine_to_w32_f" + if test -n "$func_convert_core_file_wine_to_w32_result"; then + if test -z "$func_convert_core_path_wine_to_w32_result"; then + func_convert_core_path_wine_to_w32_result=$func_convert_core_file_wine_to_w32_result + else + func_append func_convert_core_path_wine_to_w32_result ";$func_convert_core_file_wine_to_w32_result" + fi + fi + done + IFS=$oldIFS + fi +} +# end: func_convert_core_path_wine_to_w32 + + +# func_cygpath ARGS... +# Wrapper around calling the cygpath program via LT_CYGPATH. This is used when +# when (1) $build is *nix and Cygwin is hosted via a wine environment; or (2) +# $build is MSYS and $host is Cygwin, or (3) $build is Cygwin. In case (1) or +# (2), returns the Cygwin file name or path in func_cygpath_result (input +# file name or path is assumed to be in w32 format, as previously converted +# from $build's *nix or MSYS format). In case (3), returns the w32 file name +# or path in func_cygpath_result (input file name or path is assumed to be in +# Cygwin format). Returns an empty string on error. +# +# ARGS are passed to cygpath, with the last one being the file name or path to +# be converted. +# +# Specify the absolute *nix (or w32) name to cygpath in the LT_CYGPATH +# environment variable; do not put it in $PATH. +func_cygpath () +{ + $debug_cmd + + if test -n "$LT_CYGPATH" && test -f "$LT_CYGPATH"; then + func_cygpath_result=`$LT_CYGPATH "$@" 2>/dev/null` + if test "$?" -ne 0; then + # on failure, ensure result is empty + func_cygpath_result= + fi + else + func_cygpath_result= + func_error "LT_CYGPATH is empty or specifies non-existent file: '$LT_CYGPATH'" + fi +} +#end: func_cygpath + + +# func_convert_core_msys_to_w32 ARG +# Convert file name or path ARG from MSYS format to w32 format. Return +# result in func_convert_core_msys_to_w32_result. +func_convert_core_msys_to_w32 () +{ + $debug_cmd + + # awkward: cmd appends spaces to result + func_convert_core_msys_to_w32_result=`( cmd //c echo "$1" ) 2>/dev/null | + $SED -e 's/[ ]*$//' -e "$sed_naive_backslashify"` +} +#end: func_convert_core_msys_to_w32 + + +# func_convert_file_check ARG1 ARG2 +# Verify that ARG1 (a file name in $build format) was converted to $host +# format in ARG2. Otherwise, emit an error message, but continue (resetting +# func_to_host_file_result to ARG1). +func_convert_file_check () +{ + $debug_cmd + + if test -z "$2" && test -n "$1"; then + func_error "Could not determine host file name corresponding to" + func_error " '$1'" + func_error "Continuing, but uninstalled executables may not work." + # Fallback: + func_to_host_file_result=$1 + fi +} +# end func_convert_file_check + + +# func_convert_path_check FROM_PATHSEP TO_PATHSEP FROM_PATH TO_PATH +# Verify that FROM_PATH (a path in $build format) was converted to $host +# format in TO_PATH. Otherwise, emit an error message, but continue, resetting +# func_to_host_file_result to a simplistic fallback value (see below). +func_convert_path_check () +{ + $debug_cmd + + if test -z "$4" && test -n "$3"; then + func_error "Could not determine the host path corresponding to" + func_error " '$3'" + func_error "Continuing, but uninstalled executables may not work." + # Fallback. This is a deliberately simplistic "conversion" and + # should not be "improved". See libtool.info. + if test "x$1" != "x$2"; then + lt_replace_pathsep_chars="s|$1|$2|g" + func_to_host_path_result=`echo "$3" | + $SED -e "$lt_replace_pathsep_chars"` + else + func_to_host_path_result=$3 + fi + fi +} +# end func_convert_path_check + + +# func_convert_path_front_back_pathsep FRONTPAT BACKPAT REPL ORIG +# Modifies func_to_host_path_result by prepending REPL if ORIG matches FRONTPAT +# and appending REPL if ORIG matches BACKPAT. +func_convert_path_front_back_pathsep () +{ + $debug_cmd + + case $4 in + $1 ) func_to_host_path_result=$3$func_to_host_path_result + ;; + esac + case $4 in + $2 ) func_append func_to_host_path_result "$3" + ;; + esac +} +# end func_convert_path_front_back_pathsep + + +################################################## +# $build to $host FILE NAME CONVERSION FUNCTIONS # +################################################## +# invoked via '$to_host_file_cmd ARG' +# +# In each case, ARG is the path to be converted from $build to $host format. +# Result will be available in $func_to_host_file_result. + + +# func_to_host_file ARG +# Converts the file name ARG from $build format to $host format. Return result +# in func_to_host_file_result. +func_to_host_file () +{ + $debug_cmd + + $to_host_file_cmd "$1" +} +# end func_to_host_file + + +# func_to_tool_file ARG LAZY +# converts the file name ARG from $build format to toolchain format. Return +# result in func_to_tool_file_result. If the conversion in use is listed +# in (the comma separated) LAZY, no conversion takes place. +func_to_tool_file () +{ + $debug_cmd + + case ,$2, in + *,"$to_tool_file_cmd",*) + func_to_tool_file_result=$1 + ;; + *) + $to_tool_file_cmd "$1" + func_to_tool_file_result=$func_to_host_file_result + ;; + esac +} +# end func_to_tool_file + + +# func_convert_file_noop ARG +# Copy ARG to func_to_host_file_result. +func_convert_file_noop () +{ + func_to_host_file_result=$1 +} +# end func_convert_file_noop + + +# func_convert_file_msys_to_w32 ARG +# Convert file name ARG from (mingw) MSYS to (mingw) w32 format; automatic +# conversion to w32 is not available inside the cwrapper. Returns result in +# func_to_host_file_result. +func_convert_file_msys_to_w32 () +{ + $debug_cmd + + func_to_host_file_result=$1 + if test -n "$1"; then + func_convert_core_msys_to_w32 "$1" + func_to_host_file_result=$func_convert_core_msys_to_w32_result + fi + func_convert_file_check "$1" "$func_to_host_file_result" +} +# end func_convert_file_msys_to_w32 + + +# func_convert_file_cygwin_to_w32 ARG +# Convert file name ARG from Cygwin to w32 format. Returns result in +# func_to_host_file_result. +func_convert_file_cygwin_to_w32 () +{ + $debug_cmd + + func_to_host_file_result=$1 + if test -n "$1"; then + # because $build is cygwin, we call "the" cygpath in $PATH; no need to use + # LT_CYGPATH in this case. + func_to_host_file_result=`cygpath -m "$1"` + fi + func_convert_file_check "$1" "$func_to_host_file_result" +} +# end func_convert_file_cygwin_to_w32 + + +# func_convert_file_nix_to_w32 ARG +# Convert file name ARG from *nix to w32 format. Requires a wine environment +# and a working winepath. Returns result in func_to_host_file_result. +func_convert_file_nix_to_w32 () +{ + $debug_cmd + + func_to_host_file_result=$1 + if test -n "$1"; then + func_convert_core_file_wine_to_w32 "$1" + func_to_host_file_result=$func_convert_core_file_wine_to_w32_result + fi + func_convert_file_check "$1" "$func_to_host_file_result" +} +# end func_convert_file_nix_to_w32 + + +# func_convert_file_msys_to_cygwin ARG +# Convert file name ARG from MSYS to Cygwin format. Requires LT_CYGPATH set. +# Returns result in func_to_host_file_result. +func_convert_file_msys_to_cygwin () +{ + $debug_cmd + + func_to_host_file_result=$1 + if test -n "$1"; then + func_convert_core_msys_to_w32 "$1" + func_cygpath -u "$func_convert_core_msys_to_w32_result" + func_to_host_file_result=$func_cygpath_result + fi + func_convert_file_check "$1" "$func_to_host_file_result" +} +# end func_convert_file_msys_to_cygwin + + +# func_convert_file_nix_to_cygwin ARG +# Convert file name ARG from *nix to Cygwin format. Requires Cygwin installed +# in a wine environment, working winepath, and LT_CYGPATH set. Returns result +# in func_to_host_file_result. +func_convert_file_nix_to_cygwin () +{ + $debug_cmd + + func_to_host_file_result=$1 + if test -n "$1"; then + # convert from *nix to w32, then use cygpath to convert from w32 to cygwin. + func_convert_core_file_wine_to_w32 "$1" + func_cygpath -u "$func_convert_core_file_wine_to_w32_result" + func_to_host_file_result=$func_cygpath_result + fi + func_convert_file_check "$1" "$func_to_host_file_result" +} +# end func_convert_file_nix_to_cygwin + + +############################################# +# $build to $host PATH CONVERSION FUNCTIONS # +############################################# +# invoked via '$to_host_path_cmd ARG' +# +# In each case, ARG is the path to be converted from $build to $host format. +# The result will be available in $func_to_host_path_result. +# +# Path separators are also converted from $build format to $host format. If +# ARG begins or ends with a path separator character, it is preserved (but +# converted to $host format) on output. +# +# All path conversion functions are named using the following convention: +# file name conversion function : func_convert_file_X_to_Y () +# path conversion function : func_convert_path_X_to_Y () +# where, for any given $build/$host combination the 'X_to_Y' value is the +# same. If conversion functions are added for new $build/$host combinations, +# the two new functions must follow this pattern, or func_init_to_host_path_cmd +# will break. + + +# func_init_to_host_path_cmd +# Ensures that function "pointer" variable $to_host_path_cmd is set to the +# appropriate value, based on the value of $to_host_file_cmd. +to_host_path_cmd= +func_init_to_host_path_cmd () +{ + $debug_cmd + + if test -z "$to_host_path_cmd"; then + func_stripname 'func_convert_file_' '' "$to_host_file_cmd" + to_host_path_cmd=func_convert_path_$func_stripname_result + fi +} + + +# func_to_host_path ARG +# Converts the path ARG from $build format to $host format. Return result +# in func_to_host_path_result. +func_to_host_path () +{ + $debug_cmd + + func_init_to_host_path_cmd + $to_host_path_cmd "$1" +} +# end func_to_host_path + + +# func_convert_path_noop ARG +# Copy ARG to func_to_host_path_result. +func_convert_path_noop () +{ + func_to_host_path_result=$1 +} +# end func_convert_path_noop + + +# func_convert_path_msys_to_w32 ARG +# Convert path ARG from (mingw) MSYS to (mingw) w32 format; automatic +# conversion to w32 is not available inside the cwrapper. Returns result in +# func_to_host_path_result. +func_convert_path_msys_to_w32 () +{ + $debug_cmd + + func_to_host_path_result=$1 + if test -n "$1"; then + # Remove leading and trailing path separator characters from ARG. MSYS + # behavior is inconsistent here; cygpath turns them into '.;' and ';.'; + # and winepath ignores them completely. + func_stripname : : "$1" + func_to_host_path_tmp1=$func_stripname_result + func_convert_core_msys_to_w32 "$func_to_host_path_tmp1" + func_to_host_path_result=$func_convert_core_msys_to_w32_result + func_convert_path_check : ";" \ + "$func_to_host_path_tmp1" "$func_to_host_path_result" + func_convert_path_front_back_pathsep ":*" "*:" ";" "$1" + fi +} +# end func_convert_path_msys_to_w32 + + +# func_convert_path_cygwin_to_w32 ARG +# Convert path ARG from Cygwin to w32 format. Returns result in +# func_to_host_file_result. +func_convert_path_cygwin_to_w32 () +{ + $debug_cmd + + func_to_host_path_result=$1 + if test -n "$1"; then + # See func_convert_path_msys_to_w32: + func_stripname : : "$1" + func_to_host_path_tmp1=$func_stripname_result + func_to_host_path_result=`cygpath -m -p "$func_to_host_path_tmp1"` + func_convert_path_check : ";" \ + "$func_to_host_path_tmp1" "$func_to_host_path_result" + func_convert_path_front_back_pathsep ":*" "*:" ";" "$1" + fi +} +# end func_convert_path_cygwin_to_w32 + + +# func_convert_path_nix_to_w32 ARG +# Convert path ARG from *nix to w32 format. Requires a wine environment and +# a working winepath. Returns result in func_to_host_file_result. +func_convert_path_nix_to_w32 () +{ + $debug_cmd + + func_to_host_path_result=$1 + if test -n "$1"; then + # See func_convert_path_msys_to_w32: + func_stripname : : "$1" + func_to_host_path_tmp1=$func_stripname_result + func_convert_core_path_wine_to_w32 "$func_to_host_path_tmp1" + func_to_host_path_result=$func_convert_core_path_wine_to_w32_result + func_convert_path_check : ";" \ + "$func_to_host_path_tmp1" "$func_to_host_path_result" + func_convert_path_front_back_pathsep ":*" "*:" ";" "$1" + fi +} +# end func_convert_path_nix_to_w32 + + +# func_convert_path_msys_to_cygwin ARG +# Convert path ARG from MSYS to Cygwin format. Requires LT_CYGPATH set. +# Returns result in func_to_host_file_result. +func_convert_path_msys_to_cygwin () +{ + $debug_cmd + + func_to_host_path_result=$1 + if test -n "$1"; then + # See func_convert_path_msys_to_w32: + func_stripname : : "$1" + func_to_host_path_tmp1=$func_stripname_result + func_convert_core_msys_to_w32 "$func_to_host_path_tmp1" + func_cygpath -u -p "$func_convert_core_msys_to_w32_result" + func_to_host_path_result=$func_cygpath_result + func_convert_path_check : : \ + "$func_to_host_path_tmp1" "$func_to_host_path_result" + func_convert_path_front_back_pathsep ":*" "*:" : "$1" + fi +} +# end func_convert_path_msys_to_cygwin + + +# func_convert_path_nix_to_cygwin ARG +# Convert path ARG from *nix to Cygwin format. Requires Cygwin installed in a +# a wine environment, working winepath, and LT_CYGPATH set. Returns result in +# func_to_host_file_result. +func_convert_path_nix_to_cygwin () +{ + $debug_cmd + + func_to_host_path_result=$1 + if test -n "$1"; then + # Remove leading and trailing path separator characters from + # ARG. msys behavior is inconsistent here, cygpath turns them + # into '.;' and ';.', and winepath ignores them completely. + func_stripname : : "$1" + func_to_host_path_tmp1=$func_stripname_result + func_convert_core_path_wine_to_w32 "$func_to_host_path_tmp1" + func_cygpath -u -p "$func_convert_core_path_wine_to_w32_result" + func_to_host_path_result=$func_cygpath_result + func_convert_path_check : : \ + "$func_to_host_path_tmp1" "$func_to_host_path_result" + func_convert_path_front_back_pathsep ":*" "*:" : "$1" + fi +} +# end func_convert_path_nix_to_cygwin + + +# func_dll_def_p FILE +# True iff FILE is a Windows DLL '.def' file. +# Keep in sync with _LT_DLL_DEF_P in libtool.m4 +func_dll_def_p () +{ + $debug_cmd + + func_dll_def_p_tmp=`$SED -n \ + -e 's/^[ ]*//' \ + -e '/^\(;.*\)*$/d' \ + -e 's/^\(EXPORTS\|LIBRARY\)\([ ].*\)*$/DEF/p' \ + -e q \ + "$1"` + test DEF = "$func_dll_def_p_tmp" +} + + +# func_mode_compile arg... +func_mode_compile () +{ + $debug_cmd + + # Get the compilation command and the source file. + base_compile= + srcfile=$nonopt # always keep a non-empty value in "srcfile" + suppress_opt=yes + suppress_output= + arg_mode=normal + libobj= + later= + pie_flag= + + for arg + do + case $arg_mode in + arg ) + # do not "continue". Instead, add this to base_compile + lastarg=$arg + arg_mode=normal + ;; + + target ) + libobj=$arg + arg_mode=normal + continue + ;; + + normal ) + # Accept any command-line options. + case $arg in + -o) + test -n "$libobj" && \ + func_fatal_error "you cannot specify '-o' more than once" + arg_mode=target + continue + ;; + + -pie | -fpie | -fPIE) + func_append pie_flag " $arg" + continue + ;; + + -shared | -static | -prefer-pic | -prefer-non-pic) + func_append later " $arg" + continue + ;; + + -no-suppress) + suppress_opt=no + continue + ;; + + -Xcompiler) + arg_mode=arg # the next one goes into the "base_compile" arg list + continue # The current "srcfile" will either be retained or + ;; # replaced later. I would guess that would be a bug. + + -Wc,*) + func_stripname '-Wc,' '' "$arg" + args=$func_stripname_result + lastarg= + save_ifs=$IFS; IFS=, + for arg in $args; do + IFS=$save_ifs + func_append_quoted lastarg "$arg" + done + IFS=$save_ifs + func_stripname ' ' '' "$lastarg" + lastarg=$func_stripname_result + + # Add the arguments to base_compile. + func_append base_compile " $lastarg" + continue + ;; + + *) + # Accept the current argument as the source file. + # The previous "srcfile" becomes the current argument. + # + lastarg=$srcfile + srcfile=$arg + ;; + esac # case $arg + ;; + esac # case $arg_mode + + # Aesthetically quote the previous argument. + func_append_quoted base_compile "$lastarg" + done # for arg + + case $arg_mode in + arg) + func_fatal_error "you must specify an argument for -Xcompile" + ;; + target) + func_fatal_error "you must specify a target with '-o'" + ;; + *) + # Get the name of the library object. + test -z "$libobj" && { + func_basename "$srcfile" + libobj=$func_basename_result + } + ;; + esac + + # Recognize several different file suffixes. + # If the user specifies -o file.o, it is replaced with file.lo + case $libobj in + *.[cCFSifmso] | \ + *.ada | *.adb | *.ads | *.asm | \ + *.c++ | *.cc | *.ii | *.class | *.cpp | *.cxx | \ + *.[fF][09]? | *.for | *.java | *.go | *.obj | *.sx | *.cu | *.cup) + func_xform "$libobj" + libobj=$func_xform_result + ;; + esac + + case $libobj in + *.lo) func_lo2o "$libobj"; obj=$func_lo2o_result ;; + *) + func_fatal_error "cannot determine name of library object from '$libobj'" + ;; + esac + + func_infer_tag $base_compile + + for arg in $later; do + case $arg in + -shared) + test yes = "$build_libtool_libs" \ + || func_fatal_configuration "cannot build a shared library" + build_old_libs=no + continue + ;; + + -static) + build_libtool_libs=no + build_old_libs=yes + continue + ;; + + -prefer-pic) + pic_mode=yes + continue + ;; + + -prefer-non-pic) + pic_mode=no + continue + ;; + esac + done + + func_quote_for_eval "$libobj" + test "X$libobj" != "X$func_quote_for_eval_result" \ + && $ECHO "X$libobj" | $GREP '[]~#^*{};<>?"'"'"' &()|`$[]' \ + && func_warning "libobj name '$libobj' may not contain shell special characters." + func_dirname_and_basename "$obj" "/" "" + objname=$func_basename_result + xdir=$func_dirname_result + lobj=$xdir$objdir/$objname + + test -z "$base_compile" && \ + func_fatal_help "you must specify a compilation command" + + # Delete any leftover library objects. + if test yes = "$build_old_libs"; then + removelist="$obj $lobj $libobj ${libobj}T" + else + removelist="$lobj $libobj ${libobj}T" + fi + + # On Cygwin there's no "real" PIC flag so we must build both object types + case $host_os in + cygwin* | mingw* | pw32* | os2* | cegcc*) + pic_mode=default + ;; + esac + if test no = "$pic_mode" && test pass_all != "$deplibs_check_method"; then + # non-PIC code in shared libraries is not supported + pic_mode=default + fi + + # Calculate the filename of the output object if compiler does + # not support -o with -c + if test no = "$compiler_c_o"; then + output_obj=`$ECHO "$srcfile" | $SED 's%^.*/%%; s%\.[^.]*$%%'`.$objext + lockfile=$output_obj.lock + else + output_obj= + need_locks=no + lockfile= + fi + + # Lock this critical section if it is needed + # We use this script file to make the link, it avoids creating a new file + if test yes = "$need_locks"; then + until $opt_dry_run || ln "$progpath" "$lockfile" 2>/dev/null; do + func_echo "Waiting for $lockfile to be removed" + sleep 2 + done + elif test warn = "$need_locks"; then + if test -f "$lockfile"; then + $ECHO "\ +*** ERROR, $lockfile exists and contains: +`cat $lockfile 2>/dev/null` + +This indicates that another process is trying to use the same +temporary object file, and libtool could not work around it because +your compiler does not support '-c' and '-o' together. If you +repeat this compilation, it may succeed, by chance, but you had better +avoid parallel builds (make -j) in this platform, or get a better +compiler." + + $opt_dry_run || $RM $removelist + exit $EXIT_FAILURE + fi + func_append removelist " $output_obj" + $ECHO "$srcfile" > "$lockfile" + fi + + $opt_dry_run || $RM $removelist + func_append removelist " $lockfile" + trap '$opt_dry_run || $RM $removelist; exit $EXIT_FAILURE' 1 2 15 + + func_to_tool_file "$srcfile" func_convert_file_msys_to_w32 + srcfile=$func_to_tool_file_result + func_quote_for_eval "$srcfile" + qsrcfile=$func_quote_for_eval_result + + # Only build a PIC object if we are building libtool libraries. + if test yes = "$build_libtool_libs"; then + # Without this assignment, base_compile gets emptied. + fbsd_hideous_sh_bug=$base_compile + + if test no != "$pic_mode"; then + command="$base_compile $qsrcfile $pic_flag" + else + # Don't build PIC code + command="$base_compile $qsrcfile" + fi + + func_mkdir_p "$xdir$objdir" + + if test -z "$output_obj"; then + # Place PIC objects in $objdir + func_append command " -o $lobj" + fi + + func_show_eval_locale "$command" \ + 'test -n "$output_obj" && $RM $removelist; exit $EXIT_FAILURE' + + if test warn = "$need_locks" && + test "X`cat $lockfile 2>/dev/null`" != "X$srcfile"; then + $ECHO "\ +*** ERROR, $lockfile contains: +`cat $lockfile 2>/dev/null` + +but it should contain: +$srcfile + +This indicates that another process is trying to use the same +temporary object file, and libtool could not work around it because +your compiler does not support '-c' and '-o' together. If you +repeat this compilation, it may succeed, by chance, but you had better +avoid parallel builds (make -j) in this platform, or get a better +compiler." + + $opt_dry_run || $RM $removelist + exit $EXIT_FAILURE + fi + + # Just move the object if needed, then go on to compile the next one + if test -n "$output_obj" && test "X$output_obj" != "X$lobj"; then + func_show_eval '$MV "$output_obj" "$lobj"' \ + 'error=$?; $opt_dry_run || $RM $removelist; exit $error' + fi + + # Allow error messages only from the first compilation. + if test yes = "$suppress_opt"; then + suppress_output=' >/dev/null 2>&1' + fi + fi + + # Only build a position-dependent object if we build old libraries. + if test yes = "$build_old_libs"; then + if test yes != "$pic_mode"; then + # Don't build PIC code + command="$base_compile $qsrcfile$pie_flag" + else + command="$base_compile $qsrcfile $pic_flag" + fi + if test yes = "$compiler_c_o"; then + func_append command " -o $obj" + fi + + # Suppress compiler output if we already did a PIC compilation. + func_append command "$suppress_output" + func_show_eval_locale "$command" \ + '$opt_dry_run || $RM $removelist; exit $EXIT_FAILURE' + + if test warn = "$need_locks" && + test "X`cat $lockfile 2>/dev/null`" != "X$srcfile"; then + $ECHO "\ +*** ERROR, $lockfile contains: +`cat $lockfile 2>/dev/null` + +but it should contain: +$srcfile + +This indicates that another process is trying to use the same +temporary object file, and libtool could not work around it because +your compiler does not support '-c' and '-o' together. If you +repeat this compilation, it may succeed, by chance, but you had better +avoid parallel builds (make -j) in this platform, or get a better +compiler." + + $opt_dry_run || $RM $removelist + exit $EXIT_FAILURE + fi + + # Just move the object if needed + if test -n "$output_obj" && test "X$output_obj" != "X$obj"; then + func_show_eval '$MV "$output_obj" "$obj"' \ + 'error=$?; $opt_dry_run || $RM $removelist; exit $error' + fi + fi + + $opt_dry_run || { + func_write_libtool_object "$libobj" "$objdir/$objname" "$objname" + + # Unlock the critical section if it was locked + if test no != "$need_locks"; then + removelist=$lockfile + $RM "$lockfile" + fi + } + + exit $EXIT_SUCCESS +} + +$opt_help || { + test compile = "$opt_mode" && func_mode_compile ${1+"$@"} +} + +func_mode_help () +{ + # We need to display help for each of the modes. + case $opt_mode in + "") + # Generic help is extracted from the usage comments + # at the start of this file. + func_help + ;; + + clean) + $ECHO \ +"Usage: $progname [OPTION]... --mode=clean RM [RM-OPTION]... FILE... + +Remove files from the build directory. + +RM is the name of the program to use to delete files associated with each FILE +(typically '/bin/rm'). RM-OPTIONS are options (such as '-f') to be passed +to RM. + +If FILE is a libtool library, object or program, all the files associated +with it are deleted. Otherwise, only FILE itself is deleted using RM." + ;; + + compile) + $ECHO \ +"Usage: $progname [OPTION]... --mode=compile COMPILE-COMMAND... SOURCEFILE + +Compile a source file into a libtool library object. + +This mode accepts the following additional options: + + -o OUTPUT-FILE set the output file name to OUTPUT-FILE + -no-suppress do not suppress compiler output for multiple passes + -prefer-pic try to build PIC objects only + -prefer-non-pic try to build non-PIC objects only + -shared do not build a '.o' file suitable for static linking + -static only build a '.o' file suitable for static linking + -Wc,FLAG pass FLAG directly to the compiler + +COMPILE-COMMAND is a command to be used in creating a 'standard' object file +from the given SOURCEFILE. + +The output file name is determined by removing the directory component from +SOURCEFILE, then substituting the C source code suffix '.c' with the +library object suffix, '.lo'." + ;; + + execute) + $ECHO \ +"Usage: $progname [OPTION]... --mode=execute COMMAND [ARGS]... + +Automatically set library path, then run a program. + +This mode accepts the following additional options: + + -dlopen FILE add the directory containing FILE to the library path + +This mode sets the library path environment variable according to '-dlopen' +flags. + +If any of the ARGS are libtool executable wrappers, then they are translated +into their corresponding uninstalled binary, and any of their required library +directories are added to the library path. + +Then, COMMAND is executed, with ARGS as arguments." + ;; + + finish) + $ECHO \ +"Usage: $progname [OPTION]... --mode=finish [LIBDIR]... + +Complete the installation of libtool libraries. + +Each LIBDIR is a directory that contains libtool libraries. + +The commands that this mode executes may require superuser privileges. Use +the '--dry-run' option if you just want to see what would be executed." + ;; + + install) + $ECHO \ +"Usage: $progname [OPTION]... --mode=install INSTALL-COMMAND... + +Install executables or libraries. + +INSTALL-COMMAND is the installation command. The first component should be +either the 'install' or 'cp' program. + +The following components of INSTALL-COMMAND are treated specially: + + -inst-prefix-dir PREFIX-DIR Use PREFIX-DIR as a staging area for installation + +The rest of the components are interpreted as arguments to that command (only +BSD-compatible install options are recognized)." + ;; + + link) + $ECHO \ +"Usage: $progname [OPTION]... --mode=link LINK-COMMAND... + +Link object files or libraries together to form another library, or to +create an executable program. + +LINK-COMMAND is a command using the C compiler that you would use to create +a program from several object files. + +The following components of LINK-COMMAND are treated specially: + + -all-static do not do any dynamic linking at all + -avoid-version do not add a version suffix if possible + -bindir BINDIR specify path to binaries directory (for systems where + libraries must be found in the PATH setting at runtime) + -dlopen FILE '-dlpreopen' FILE if it cannot be dlopened at runtime + -dlpreopen FILE link in FILE and add its symbols to lt_preloaded_symbols + -export-dynamic allow symbols from OUTPUT-FILE to be resolved with dlsym(3) + -export-symbols SYMFILE + try to export only the symbols listed in SYMFILE + -export-symbols-regex REGEX + try to export only the symbols matching REGEX + -LLIBDIR search LIBDIR for required installed libraries + -lNAME OUTPUT-FILE requires the installed library libNAME + -module build a library that can dlopened + -no-fast-install disable the fast-install mode + -no-install link a not-installable executable + -no-undefined declare that a library does not refer to external symbols + -o OUTPUT-FILE create OUTPUT-FILE from the specified objects + -objectlist FILE use a list of object files found in FILE to specify objects + -os2dllname NAME force a short DLL name on OS/2 (no effect on other OSes) + -precious-files-regex REGEX + don't remove output files matching REGEX + -release RELEASE specify package release information + -rpath LIBDIR the created library will eventually be installed in LIBDIR + -R[ ]LIBDIR add LIBDIR to the runtime path of programs and libraries + -shared only do dynamic linking of libtool libraries + -shrext SUFFIX override the standard shared library file extension + -static do not do any dynamic linking of uninstalled libtool libraries + -static-libtool-libs + do not do any dynamic linking of libtool libraries + -version-info CURRENT[:REVISION[:AGE]] + specify library version info [each variable defaults to 0] + -weak LIBNAME declare that the target provides the LIBNAME interface + -Wc,FLAG + -Xcompiler FLAG pass linker-specific FLAG directly to the compiler + -Wl,FLAG + -Xlinker FLAG pass linker-specific FLAG directly to the linker + -XCClinker FLAG pass link-specific FLAG to the compiler driver (CC) + +All other options (arguments beginning with '-') are ignored. + +Every other argument is treated as a filename. Files ending in '.la' are +treated as uninstalled libtool libraries, other files are standard or library +object files. + +If the OUTPUT-FILE ends in '.la', then a libtool library is created, +only library objects ('.lo' files) may be specified, and '-rpath' is +required, except when creating a convenience library. + +If OUTPUT-FILE ends in '.a' or '.lib', then a standard library is created +using 'ar' and 'ranlib', or on Windows using 'lib'. + +If OUTPUT-FILE ends in '.lo' or '.$objext', then a reloadable object file +is created, otherwise an executable program is created." + ;; + + uninstall) + $ECHO \ +"Usage: $progname [OPTION]... --mode=uninstall RM [RM-OPTION]... FILE... + +Remove libraries from an installation directory. + +RM is the name of the program to use to delete files associated with each FILE +(typically '/bin/rm'). RM-OPTIONS are options (such as '-f') to be passed +to RM. + +If FILE is a libtool library, all the files associated with it are deleted. +Otherwise, only FILE itself is deleted using RM." + ;; + + *) + func_fatal_help "invalid operation mode '$opt_mode'" + ;; + esac + + echo + $ECHO "Try '$progname --help' for more information about other modes." +} + +# Now that we've collected a possible --mode arg, show help if necessary +if $opt_help; then + if test : = "$opt_help"; then + func_mode_help + else + { + func_help noexit + for opt_mode in compile link execute install finish uninstall clean; do + func_mode_help + done + } | $SED -n '1p; 2,$s/^Usage:/ or: /p' + { + func_help noexit + for opt_mode in compile link execute install finish uninstall clean; do + echo + func_mode_help + done + } | + $SED '1d + /^When reporting/,/^Report/{ + H + d + } + $x + /information about other modes/d + /more detailed .*MODE/d + s/^Usage:.*--mode=\([^ ]*\) .*/Description of \1 mode:/' + fi + exit $? +fi + + +# func_mode_execute arg... +func_mode_execute () +{ + $debug_cmd + + # The first argument is the command name. + cmd=$nonopt + test -z "$cmd" && \ + func_fatal_help "you must specify a COMMAND" + + # Handle -dlopen flags immediately. + for file in $opt_dlopen; do + test -f "$file" \ + || func_fatal_help "'$file' is not a file" + + dir= + case $file in + *.la) + func_resolve_sysroot "$file" + file=$func_resolve_sysroot_result + + # Check to see that this really is a libtool archive. + func_lalib_unsafe_p "$file" \ + || func_fatal_help "'$lib' is not a valid libtool archive" + + # Read the libtool library. + dlname= + library_names= + func_source "$file" + + # Skip this library if it cannot be dlopened. + if test -z "$dlname"; then + # Warn if it was a shared library. + test -n "$library_names" && \ + func_warning "'$file' was not linked with '-export-dynamic'" + continue + fi + + func_dirname "$file" "" "." + dir=$func_dirname_result + + if test -f "$dir/$objdir/$dlname"; then + func_append dir "/$objdir" + else + if test ! -f "$dir/$dlname"; then + func_fatal_error "cannot find '$dlname' in '$dir' or '$dir/$objdir'" + fi + fi + ;; + + *.lo) + # Just add the directory containing the .lo file. + func_dirname "$file" "" "." + dir=$func_dirname_result + ;; + + *) + func_warning "'-dlopen' is ignored for non-libtool libraries and objects" + continue + ;; + esac + + # Get the absolute pathname. + absdir=`cd "$dir" && pwd` + test -n "$absdir" && dir=$absdir + + # Now add the directory to shlibpath_var. + if eval "test -z \"\$$shlibpath_var\""; then + eval "$shlibpath_var=\"\$dir\"" + else + eval "$shlibpath_var=\"\$dir:\$$shlibpath_var\"" + fi + done + + # This variable tells wrapper scripts just to set shlibpath_var + # rather than running their programs. + libtool_execute_magic=$magic + + # Check if any of the arguments is a wrapper script. + args= + for file + do + case $file in + -* | *.la | *.lo ) ;; + *) + # Do a test to see if this is really a libtool program. + if func_ltwrapper_script_p "$file"; then + func_source "$file" + # Transform arg to wrapped name. + file=$progdir/$program + elif func_ltwrapper_executable_p "$file"; then + func_ltwrapper_scriptname "$file" + func_source "$func_ltwrapper_scriptname_result" + # Transform arg to wrapped name. + file=$progdir/$program + fi + ;; + esac + # Quote arguments (to preserve shell metacharacters). + func_append_quoted args "$file" + done + + if $opt_dry_run; then + # Display what would be done. + if test -n "$shlibpath_var"; then + eval "\$ECHO \"\$shlibpath_var=\$$shlibpath_var\"" + echo "export $shlibpath_var" + fi + $ECHO "$cmd$args" + exit $EXIT_SUCCESS + else + if test -n "$shlibpath_var"; then + # Export the shlibpath_var. + eval "export $shlibpath_var" + fi + + # Restore saved environment variables + for lt_var in LANG LANGUAGE LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES + do + eval "if test \"\${save_$lt_var+set}\" = set; then + $lt_var=\$save_$lt_var; export $lt_var + else + $lt_unset $lt_var + fi" + done + + # Now prepare to actually exec the command. + exec_cmd=\$cmd$args + fi +} + +test execute = "$opt_mode" && func_mode_execute ${1+"$@"} + + +# func_mode_finish arg... +func_mode_finish () +{ + $debug_cmd + + libs= + libdirs= + admincmds= + + for opt in "$nonopt" ${1+"$@"} + do + if test -d "$opt"; then + func_append libdirs " $opt" + + elif test -f "$opt"; then + if func_lalib_unsafe_p "$opt"; then + func_append libs " $opt" + else + func_warning "'$opt' is not a valid libtool archive" + fi + + else + func_fatal_error "invalid argument '$opt'" + fi + done + + if test -n "$libs"; then + if test -n "$lt_sysroot"; then + sysroot_regex=`$ECHO "$lt_sysroot" | $SED "$sed_make_literal_regex"` + sysroot_cmd="s/\([ ']\)$sysroot_regex/\1/g;" + else + sysroot_cmd= + fi + + # Remove sysroot references + if $opt_dry_run; then + for lib in $libs; do + echo "removing references to $lt_sysroot and '=' prefixes from $lib" + done + else + tmpdir=`func_mktempdir` + for lib in $libs; do + $SED -e "$sysroot_cmd s/\([ ']-[LR]\)=/\1/g; s/\([ ']\)=/\1/g" $lib \ + > $tmpdir/tmp-la + mv -f $tmpdir/tmp-la $lib + done + ${RM}r "$tmpdir" + fi + fi + + if test -n "$finish_cmds$finish_eval" && test -n "$libdirs"; then + for libdir in $libdirs; do + if test -n "$finish_cmds"; then + # Do each command in the finish commands. + func_execute_cmds "$finish_cmds" 'admincmds="$admincmds +'"$cmd"'"' + fi + if test -n "$finish_eval"; then + # Do the single finish_eval. + eval cmds=\"$finish_eval\" + $opt_dry_run || eval "$cmds" || func_append admincmds " + $cmds" + fi + done + fi + + # Exit here if they wanted silent mode. + $opt_quiet && exit $EXIT_SUCCESS + + if test -n "$finish_cmds$finish_eval" && test -n "$libdirs"; then + echo "----------------------------------------------------------------------" + echo "Libraries have been installed in:" + for libdir in $libdirs; do + $ECHO " $libdir" + done + echo + echo "If you ever happen to want to link against installed libraries" + echo "in a given directory, LIBDIR, you must either use libtool, and" + echo "specify the full pathname of the library, or use the '-LLIBDIR'" + echo "flag during linking and do at least one of the following:" + if test -n "$shlibpath_var"; then + echo " - add LIBDIR to the '$shlibpath_var' environment variable" + echo " during execution" + fi + if test -n "$runpath_var"; then + echo " - add LIBDIR to the '$runpath_var' environment variable" + echo " during linking" + fi + if test -n "$hardcode_libdir_flag_spec"; then + libdir=LIBDIR + eval flag=\"$hardcode_libdir_flag_spec\" + + $ECHO " - use the '$flag' linker flag" + fi + if test -n "$admincmds"; then + $ECHO " - have your system administrator run these commands:$admincmds" + fi + if test -f /etc/ld.so.conf; then + echo " - have your system administrator add LIBDIR to '/etc/ld.so.conf'" + fi + echo + + echo "See any operating system documentation about shared libraries for" + case $host in + solaris2.[6789]|solaris2.1[0-9]) + echo "more information, such as the ld(1), crle(1) and ld.so(8) manual" + echo "pages." + ;; + *) + echo "more information, such as the ld(1) and ld.so(8) manual pages." + ;; + esac + echo "----------------------------------------------------------------------" + fi + exit $EXIT_SUCCESS +} + +test finish = "$opt_mode" && func_mode_finish ${1+"$@"} + + +# func_mode_install arg... +func_mode_install () +{ + $debug_cmd + + # There may be an optional sh(1) argument at the beginning of + # install_prog (especially on Windows NT). + if test "$SHELL" = "$nonopt" || test /bin/sh = "$nonopt" || + # Allow the use of GNU shtool's install command. + case $nonopt in *shtool*) :;; *) false;; esac + then + # Aesthetically quote it. + func_quote_for_eval "$nonopt" + install_prog="$func_quote_for_eval_result " + arg=$1 + shift + else + install_prog= + arg=$nonopt + fi + + # The real first argument should be the name of the installation program. + # Aesthetically quote it. + func_quote_for_eval "$arg" + func_append install_prog "$func_quote_for_eval_result" + install_shared_prog=$install_prog + case " $install_prog " in + *[\\\ /]cp\ *) install_cp=: ;; + *) install_cp=false ;; + esac + + # We need to accept at least all the BSD install flags. + dest= + files= + opts= + prev= + install_type= + isdir=false + stripme= + no_mode=: + for arg + do + arg2= + if test -n "$dest"; then + func_append files " $dest" + dest=$arg + continue + fi + + case $arg in + -d) isdir=: ;; + -f) + if $install_cp; then :; else + prev=$arg + fi + ;; + -g | -m | -o) + prev=$arg + ;; + -s) + stripme=" -s" + continue + ;; + -*) + ;; + *) + # If the previous option needed an argument, then skip it. + if test -n "$prev"; then + if test X-m = "X$prev" && test -n "$install_override_mode"; then + arg2=$install_override_mode + no_mode=false + fi + prev= + else + dest=$arg + continue + fi + ;; + esac + + # Aesthetically quote the argument. + func_quote_for_eval "$arg" + func_append install_prog " $func_quote_for_eval_result" + if test -n "$arg2"; then + func_quote_for_eval "$arg2" + fi + func_append install_shared_prog " $func_quote_for_eval_result" + done + + test -z "$install_prog" && \ + func_fatal_help "you must specify an install program" + + test -n "$prev" && \ + func_fatal_help "the '$prev' option requires an argument" + + if test -n "$install_override_mode" && $no_mode; then + if $install_cp; then :; else + func_quote_for_eval "$install_override_mode" + func_append install_shared_prog " -m $func_quote_for_eval_result" + fi + fi + + if test -z "$files"; then + if test -z "$dest"; then + func_fatal_help "no file or destination specified" + else + func_fatal_help "you must specify a destination" + fi + fi + + # Strip any trailing slash from the destination. + func_stripname '' '/' "$dest" + dest=$func_stripname_result + + # Check to see that the destination is a directory. + test -d "$dest" && isdir=: + if $isdir; then + destdir=$dest + destname= + else + func_dirname_and_basename "$dest" "" "." + destdir=$func_dirname_result + destname=$func_basename_result + + # Not a directory, so check to see that there is only one file specified. + set dummy $files; shift + test "$#" -gt 1 && \ + func_fatal_help "'$dest' is not a directory" + fi + case $destdir in + [\\/]* | [A-Za-z]:[\\/]*) ;; + *) + for file in $files; do + case $file in + *.lo) ;; + *) + func_fatal_help "'$destdir' must be an absolute directory name" + ;; + esac + done + ;; + esac + + # This variable tells wrapper scripts just to set variables rather + # than running their programs. + libtool_install_magic=$magic + + staticlibs= + future_libdirs= + current_libdirs= + for file in $files; do + + # Do each installation. + case $file in + *.$libext) + # Do the static libraries later. + func_append staticlibs " $file" + ;; + + *.la) + func_resolve_sysroot "$file" + file=$func_resolve_sysroot_result + + # Check to see that this really is a libtool archive. + func_lalib_unsafe_p "$file" \ + || func_fatal_help "'$file' is not a valid libtool archive" + + library_names= + old_library= + relink_command= + func_source "$file" + + # Add the libdir to current_libdirs if it is the destination. + if test "X$destdir" = "X$libdir"; then + case "$current_libdirs " in + *" $libdir "*) ;; + *) func_append current_libdirs " $libdir" ;; + esac + else + # Note the libdir as a future libdir. + case "$future_libdirs " in + *" $libdir "*) ;; + *) func_append future_libdirs " $libdir" ;; + esac + fi + + func_dirname "$file" "/" "" + dir=$func_dirname_result + func_append dir "$objdir" + + if test -n "$relink_command"; then + # Determine the prefix the user has applied to our future dir. + inst_prefix_dir=`$ECHO "$destdir" | $SED -e "s%$libdir\$%%"` + + # Don't allow the user to place us outside of our expected + # location b/c this prevents finding dependent libraries that + # are installed to the same prefix. + # At present, this check doesn't affect windows .dll's that + # are installed into $libdir/../bin (currently, that works fine) + # but it's something to keep an eye on. + test "$inst_prefix_dir" = "$destdir" && \ + func_fatal_error "error: cannot install '$file' to a directory not ending in $libdir" + + if test -n "$inst_prefix_dir"; then + # Stick the inst_prefix_dir data into the link command. + relink_command=`$ECHO "$relink_command" | $SED "s%@inst_prefix_dir@%-inst-prefix-dir $inst_prefix_dir%"` + else + relink_command=`$ECHO "$relink_command" | $SED "s%@inst_prefix_dir@%%"` + fi + + func_warning "relinking '$file'" + func_show_eval "$relink_command" \ + 'func_fatal_error "error: relink '\''$file'\'' with the above command before installing it"' + fi + + # See the names of the shared library. + set dummy $library_names; shift + if test -n "$1"; then + realname=$1 + shift + + srcname=$realname + test -n "$relink_command" && srcname=${realname}T + + # Install the shared library and build the symlinks. + func_show_eval "$install_shared_prog $dir/$srcname $destdir/$realname" \ + 'exit $?' + tstripme=$stripme + case $host_os in + cygwin* | mingw* | pw32* | cegcc*) + case $realname in + *.dll.a) + tstripme= + ;; + esac + ;; + os2*) + case $realname in + *_dll.a) + tstripme= + ;; + esac + ;; + esac + if test -n "$tstripme" && test -n "$striplib"; then + func_show_eval "$striplib $destdir/$realname" 'exit $?' + fi + + if test "$#" -gt 0; then + # Delete the old symlinks, and create new ones. + # Try 'ln -sf' first, because the 'ln' binary might depend on + # the symlink we replace! Solaris /bin/ln does not understand -f, + # so we also need to try rm && ln -s. + for linkname + do + test "$linkname" != "$realname" \ + && func_show_eval "(cd $destdir && { $LN_S -f $realname $linkname || { $RM $linkname && $LN_S $realname $linkname; }; })" + done + fi + + # Do each command in the postinstall commands. + lib=$destdir/$realname + func_execute_cmds "$postinstall_cmds" 'exit $?' + fi + + # Install the pseudo-library for information purposes. + func_basename "$file" + name=$func_basename_result + instname=$dir/${name}i + func_show_eval "$install_prog $instname $destdir/$name" 'exit $?' + + # Maybe install the static library, too. + test -n "$old_library" && func_append staticlibs " $dir/$old_library" + ;; + + *.lo) + # Install (i.e. copy) a libtool object. + + # Figure out destination file name, if it wasn't already specified. + if test -n "$destname"; then + destfile=$destdir/$destname + else + func_basename "$file" + destfile=$func_basename_result + destfile=$destdir/$destfile + fi + + # Deduce the name of the destination old-style object file. + case $destfile in + *.lo) + func_lo2o "$destfile" + staticdest=$func_lo2o_result + ;; + *.$objext) + staticdest=$destfile + destfile= + ;; + *) + func_fatal_help "cannot copy a libtool object to '$destfile'" + ;; + esac + + # Install the libtool object if requested. + test -n "$destfile" && \ + func_show_eval "$install_prog $file $destfile" 'exit $?' + + # Install the old object if enabled. + if test yes = "$build_old_libs"; then + # Deduce the name of the old-style object file. + func_lo2o "$file" + staticobj=$func_lo2o_result + func_show_eval "$install_prog \$staticobj \$staticdest" 'exit $?' + fi + exit $EXIT_SUCCESS + ;; + + *) + # Figure out destination file name, if it wasn't already specified. + if test -n "$destname"; then + destfile=$destdir/$destname + else + func_basename "$file" + destfile=$func_basename_result + destfile=$destdir/$destfile + fi + + # If the file is missing, and there is a .exe on the end, strip it + # because it is most likely a libtool script we actually want to + # install + stripped_ext= + case $file in + *.exe) + if test ! -f "$file"; then + func_stripname '' '.exe' "$file" + file=$func_stripname_result + stripped_ext=.exe + fi + ;; + esac + + # Do a test to see if this is really a libtool program. + case $host in + *cygwin* | *mingw*) + if func_ltwrapper_executable_p "$file"; then + func_ltwrapper_scriptname "$file" + wrapper=$func_ltwrapper_scriptname_result + else + func_stripname '' '.exe' "$file" + wrapper=$func_stripname_result + fi + ;; + *) + wrapper=$file + ;; + esac + if func_ltwrapper_script_p "$wrapper"; then + notinst_deplibs= + relink_command= + + func_source "$wrapper" + + # Check the variables that should have been set. + test -z "$generated_by_libtool_version" && \ + func_fatal_error "invalid libtool wrapper script '$wrapper'" + + finalize=: + for lib in $notinst_deplibs; do + # Check to see that each library is installed. + libdir= + if test -f "$lib"; then + func_source "$lib" + fi + libfile=$libdir/`$ECHO "$lib" | $SED 's%^.*/%%g'` + if test -n "$libdir" && test ! -f "$libfile"; then + func_warning "'$lib' has not been installed in '$libdir'" + finalize=false + fi + done + + relink_command= + func_source "$wrapper" + + outputname= + if test no = "$fast_install" && test -n "$relink_command"; then + $opt_dry_run || { + if $finalize; then + tmpdir=`func_mktempdir` + func_basename "$file$stripped_ext" + file=$func_basename_result + outputname=$tmpdir/$file + # Replace the output file specification. + relink_command=`$ECHO "$relink_command" | $SED 's%@OUTPUT@%'"$outputname"'%g'` + + $opt_quiet || { + func_quote_for_expand "$relink_command" + eval "func_echo $func_quote_for_expand_result" + } + if eval "$relink_command"; then : + else + func_error "error: relink '$file' with the above command before installing it" + $opt_dry_run || ${RM}r "$tmpdir" + continue + fi + file=$outputname + else + func_warning "cannot relink '$file'" + fi + } + else + # Install the binary that we compiled earlier. + file=`$ECHO "$file$stripped_ext" | $SED "s%\([^/]*\)$%$objdir/\1%"` + fi + fi + + # remove .exe since cygwin /usr/bin/install will append another + # one anyway + case $install_prog,$host in + */usr/bin/install*,*cygwin*) + case $file:$destfile in + *.exe:*.exe) + # this is ok + ;; + *.exe:*) + destfile=$destfile.exe + ;; + *:*.exe) + func_stripname '' '.exe' "$destfile" + destfile=$func_stripname_result + ;; + esac + ;; + esac + func_show_eval "$install_prog\$stripme \$file \$destfile" 'exit $?' + $opt_dry_run || if test -n "$outputname"; then + ${RM}r "$tmpdir" + fi + ;; + esac + done + + for file in $staticlibs; do + func_basename "$file" + name=$func_basename_result + + # Set up the ranlib parameters. + oldlib=$destdir/$name + func_to_tool_file "$oldlib" func_convert_file_msys_to_w32 + tool_oldlib=$func_to_tool_file_result + + func_show_eval "$install_prog \$file \$oldlib" 'exit $?' + + if test -n "$stripme" && test -n "$old_striplib"; then + func_show_eval "$old_striplib $tool_oldlib" 'exit $?' + fi + + # Do each command in the postinstall commands. + func_execute_cmds "$old_postinstall_cmds" 'exit $?' + done + + test -n "$future_libdirs" && \ + func_warning "remember to run '$progname --finish$future_libdirs'" + + if test -n "$current_libdirs"; then + # Maybe just do a dry run. + $opt_dry_run && current_libdirs=" -n$current_libdirs" + exec_cmd='$SHELL "$progpath" $preserve_args --finish$current_libdirs' + else + exit $EXIT_SUCCESS + fi +} + +test install = "$opt_mode" && func_mode_install ${1+"$@"} + + +# func_generate_dlsyms outputname originator pic_p +# Extract symbols from dlprefiles and create ${outputname}S.o with +# a dlpreopen symbol table. +func_generate_dlsyms () +{ + $debug_cmd + + my_outputname=$1 + my_originator=$2 + my_pic_p=${3-false} + my_prefix=`$ECHO "$my_originator" | $SED 's%[^a-zA-Z0-9]%_%g'` + my_dlsyms= + + if test -n "$dlfiles$dlprefiles" || test no != "$dlself"; then + if test -n "$NM" && test -n "$global_symbol_pipe"; then + my_dlsyms=${my_outputname}S.c + else + func_error "not configured to extract global symbols from dlpreopened files" + fi + fi + + if test -n "$my_dlsyms"; then + case $my_dlsyms in + "") ;; + *.c) + # Discover the nlist of each of the dlfiles. + nlist=$output_objdir/$my_outputname.nm + + func_show_eval "$RM $nlist ${nlist}S ${nlist}T" + + # Parse the name list into a source file. + func_verbose "creating $output_objdir/$my_dlsyms" + + $opt_dry_run || $ECHO > "$output_objdir/$my_dlsyms" "\ +/* $my_dlsyms - symbol resolution table for '$my_outputname' dlsym emulation. */ +/* Generated by $PROGRAM (GNU $PACKAGE) $VERSION */ + +#ifdef __cplusplus +extern \"C\" { +#endif + +#if defined __GNUC__ && (((__GNUC__ == 4) && (__GNUC_MINOR__ >= 4)) || (__GNUC__ > 4)) +#pragma GCC diagnostic ignored \"-Wstrict-prototypes\" +#endif + +/* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests. */ +#if defined _WIN32 || defined __CYGWIN__ || defined _WIN32_WCE +/* DATA imports from DLLs on WIN32 can't be const, because runtime + relocations are performed -- see ld's documentation on pseudo-relocs. */ +# define LT_DLSYM_CONST +#elif defined __osf__ +/* This system does not cope well with relocations in const data. */ +# define LT_DLSYM_CONST +#else +# define LT_DLSYM_CONST const +#endif + +#define STREQ(s1, s2) (strcmp ((s1), (s2)) == 0) + +/* External symbol declarations for the compiler. */\ +" + + if test yes = "$dlself"; then + func_verbose "generating symbol list for '$output'" + + $opt_dry_run || echo ': @PROGRAM@ ' > "$nlist" + + # Add our own program objects to the symbol list. + progfiles=`$ECHO "$objs$old_deplibs" | $SP2NL | $SED "$lo2o" | $NL2SP` + for progfile in $progfiles; do + func_to_tool_file "$progfile" func_convert_file_msys_to_w32 + func_verbose "extracting global C symbols from '$func_to_tool_file_result'" + $opt_dry_run || eval "$NM $func_to_tool_file_result | $global_symbol_pipe >> '$nlist'" + done + + if test -n "$exclude_expsyms"; then + $opt_dry_run || { + eval '$EGREP -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T' + eval '$MV "$nlist"T "$nlist"' + } + fi + + if test -n "$export_symbols_regex"; then + $opt_dry_run || { + eval '$EGREP -e "$export_symbols_regex" "$nlist" > "$nlist"T' + eval '$MV "$nlist"T "$nlist"' + } + fi + + # Prepare the list of exported symbols + if test -z "$export_symbols"; then + export_symbols=$output_objdir/$outputname.exp + $opt_dry_run || { + $RM $export_symbols + eval "$SED -n -e '/^: @PROGRAM@ $/d' -e 's/^.* \(.*\)$/\1/p' "'< "$nlist" > "$export_symbols"' + case $host in + *cygwin* | *mingw* | *cegcc* ) + eval "echo EXPORTS "'> "$output_objdir/$outputname.def"' + eval 'cat "$export_symbols" >> "$output_objdir/$outputname.def"' + ;; + esac + } + else + $opt_dry_run || { + eval "$SED -e 's/\([].[*^$]\)/\\\\\1/g' -e 's/^/ /' -e 's/$/$/'"' < "$export_symbols" > "$output_objdir/$outputname.exp"' + eval '$GREP -f "$output_objdir/$outputname.exp" < "$nlist" > "$nlist"T' + eval '$MV "$nlist"T "$nlist"' + case $host in + *cygwin* | *mingw* | *cegcc* ) + eval "echo EXPORTS "'> "$output_objdir/$outputname.def"' + eval 'cat "$nlist" >> "$output_objdir/$outputname.def"' + ;; + esac + } + fi + fi + + for dlprefile in $dlprefiles; do + func_verbose "extracting global C symbols from '$dlprefile'" + func_basename "$dlprefile" + name=$func_basename_result + case $host in + *cygwin* | *mingw* | *cegcc* ) + # if an import library, we need to obtain dlname + if func_win32_import_lib_p "$dlprefile"; then + func_tr_sh "$dlprefile" + eval "curr_lafile=\$libfile_$func_tr_sh_result" + dlprefile_dlbasename= + if test -n "$curr_lafile" && func_lalib_p "$curr_lafile"; then + # Use subshell, to avoid clobbering current variable values + dlprefile_dlname=`source "$curr_lafile" && echo "$dlname"` + if test -n "$dlprefile_dlname"; then + func_basename "$dlprefile_dlname" + dlprefile_dlbasename=$func_basename_result + else + # no lafile. user explicitly requested -dlpreopen . + $sharedlib_from_linklib_cmd "$dlprefile" + dlprefile_dlbasename=$sharedlib_from_linklib_result + fi + fi + $opt_dry_run || { + if test -n "$dlprefile_dlbasename"; then + eval '$ECHO ": $dlprefile_dlbasename" >> "$nlist"' + else + func_warning "Could not compute DLL name from $name" + eval '$ECHO ": $name " >> "$nlist"' + fi + func_to_tool_file "$dlprefile" func_convert_file_msys_to_w32 + eval "$NM \"$func_to_tool_file_result\" 2>/dev/null | $global_symbol_pipe | + $SED -e '/I __imp/d' -e 's/I __nm_/D /;s/_nm__//' >> '$nlist'" + } + else # not an import lib + $opt_dry_run || { + eval '$ECHO ": $name " >> "$nlist"' + func_to_tool_file "$dlprefile" func_convert_file_msys_to_w32 + eval "$NM \"$func_to_tool_file_result\" 2>/dev/null | $global_symbol_pipe >> '$nlist'" + } + fi + ;; + *) + $opt_dry_run || { + eval '$ECHO ": $name " >> "$nlist"' + func_to_tool_file "$dlprefile" func_convert_file_msys_to_w32 + eval "$NM \"$func_to_tool_file_result\" 2>/dev/null | $global_symbol_pipe >> '$nlist'" + } + ;; + esac + done + + $opt_dry_run || { + # Make sure we have at least an empty file. + test -f "$nlist" || : > "$nlist" + + if test -n "$exclude_expsyms"; then + $EGREP -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T + $MV "$nlist"T "$nlist" + fi + + # Try sorting and uniquifying the output. + if $GREP -v "^: " < "$nlist" | + if sort -k 3 /dev/null 2>&1; then + sort -k 3 + else + sort +2 + fi | + uniq > "$nlist"S; then + : + else + $GREP -v "^: " < "$nlist" > "$nlist"S + fi + + if test -f "$nlist"S; then + eval "$global_symbol_to_cdecl"' < "$nlist"S >> "$output_objdir/$my_dlsyms"' + else + echo '/* NONE */' >> "$output_objdir/$my_dlsyms" + fi + + func_show_eval '$RM "${nlist}I"' + if test -n "$global_symbol_to_import"; then + eval "$global_symbol_to_import"' < "$nlist"S > "$nlist"I' + fi + + echo >> "$output_objdir/$my_dlsyms" "\ + +/* The mapping between symbol names and symbols. */ +typedef struct { + const char *name; + void *address; +} lt_dlsymlist; +extern LT_DLSYM_CONST lt_dlsymlist +lt_${my_prefix}_LTX_preloaded_symbols[];\ +" + + if test -s "$nlist"I; then + echo >> "$output_objdir/$my_dlsyms" "\ +static void lt_syminit(void) +{ + LT_DLSYM_CONST lt_dlsymlist *symbol = lt_${my_prefix}_LTX_preloaded_symbols; + for (; symbol->name; ++symbol) + {" + $SED 's/.*/ if (STREQ (symbol->name, \"&\")) symbol->address = (void *) \&&;/' < "$nlist"I >> "$output_objdir/$my_dlsyms" + echo >> "$output_objdir/$my_dlsyms" "\ + } +}" + fi + echo >> "$output_objdir/$my_dlsyms" "\ +LT_DLSYM_CONST lt_dlsymlist +lt_${my_prefix}_LTX_preloaded_symbols[] = +{ {\"$my_originator\", (void *) 0}," + + if test -s "$nlist"I; then + echo >> "$output_objdir/$my_dlsyms" "\ + {\"@INIT@\", (void *) <_syminit}," + fi + + case $need_lib_prefix in + no) + eval "$global_symbol_to_c_name_address" < "$nlist" >> "$output_objdir/$my_dlsyms" + ;; + *) + eval "$global_symbol_to_c_name_address_lib_prefix" < "$nlist" >> "$output_objdir/$my_dlsyms" + ;; + esac + echo >> "$output_objdir/$my_dlsyms" "\ + {0, (void *) 0} +}; + +/* This works around a problem in FreeBSD linker */ +#ifdef FREEBSD_WORKAROUND +static const void *lt_preloaded_setup() { + return lt_${my_prefix}_LTX_preloaded_symbols; +} +#endif + +#ifdef __cplusplus +} +#endif\ +" + } # !$opt_dry_run + + pic_flag_for_symtable= + case "$compile_command " in + *" -static "*) ;; + *) + case $host in + # compiling the symbol table file with pic_flag works around + # a FreeBSD bug that causes programs to crash when -lm is + # linked before any other PIC object. But we must not use + # pic_flag when linking with -static. The problem exists in + # FreeBSD 2.2.6 and is fixed in FreeBSD 3.1. + *-*-freebsd2.*|*-*-freebsd3.0*|*-*-freebsdelf3.0*) + pic_flag_for_symtable=" $pic_flag -DFREEBSD_WORKAROUND" ;; + *-*-hpux*) + pic_flag_for_symtable=" $pic_flag" ;; + *) + $my_pic_p && pic_flag_for_symtable=" $pic_flag" + ;; + esac + ;; + esac + symtab_cflags= + for arg in $LTCFLAGS; do + case $arg in + -pie | -fpie | -fPIE) ;; + *) func_append symtab_cflags " $arg" ;; + esac + done + + # Now compile the dynamic symbol file. + func_show_eval '(cd $output_objdir && $LTCC$symtab_cflags -c$no_builtin_flag$pic_flag_for_symtable "$my_dlsyms")' 'exit $?' + + # Clean up the generated files. + func_show_eval '$RM "$output_objdir/$my_dlsyms" "$nlist" "${nlist}S" "${nlist}T" "${nlist}I"' + + # Transform the symbol file into the correct name. + symfileobj=$output_objdir/${my_outputname}S.$objext + case $host in + *cygwin* | *mingw* | *cegcc* ) + if test -f "$output_objdir/$my_outputname.def"; then + compile_command=`$ECHO "$compile_command" | $SED "s%@SYMFILE@%$output_objdir/$my_outputname.def $symfileobj%"` + finalize_command=`$ECHO "$finalize_command" | $SED "s%@SYMFILE@%$output_objdir/$my_outputname.def $symfileobj%"` + else + compile_command=`$ECHO "$compile_command" | $SED "s%@SYMFILE@%$symfileobj%"` + finalize_command=`$ECHO "$finalize_command" | $SED "s%@SYMFILE@%$symfileobj%"` + fi + ;; + *) + compile_command=`$ECHO "$compile_command" | $SED "s%@SYMFILE@%$symfileobj%"` + finalize_command=`$ECHO "$finalize_command" | $SED "s%@SYMFILE@%$symfileobj%"` + ;; + esac + ;; + *) + func_fatal_error "unknown suffix for '$my_dlsyms'" + ;; + esac + else + # We keep going just in case the user didn't refer to + # lt_preloaded_symbols. The linker will fail if global_symbol_pipe + # really was required. + + # Nullify the symbol file. + compile_command=`$ECHO "$compile_command" | $SED "s% @SYMFILE@%%"` + finalize_command=`$ECHO "$finalize_command" | $SED "s% @SYMFILE@%%"` + fi +} + +# func_cygming_gnu_implib_p ARG +# This predicate returns with zero status (TRUE) if +# ARG is a GNU/binutils-style import library. Returns +# with nonzero status (FALSE) otherwise. +func_cygming_gnu_implib_p () +{ + $debug_cmd + + func_to_tool_file "$1" func_convert_file_msys_to_w32 + func_cygming_gnu_implib_tmp=`$NM "$func_to_tool_file_result" | eval "$global_symbol_pipe" | $EGREP ' (_head_[A-Za-z0-9_]+_[ad]l*|[A-Za-z0-9_]+_[ad]l*_iname)$'` + test -n "$func_cygming_gnu_implib_tmp" +} + +# func_cygming_ms_implib_p ARG +# This predicate returns with zero status (TRUE) if +# ARG is an MS-style import library. Returns +# with nonzero status (FALSE) otherwise. +func_cygming_ms_implib_p () +{ + $debug_cmd + + func_to_tool_file "$1" func_convert_file_msys_to_w32 + func_cygming_ms_implib_tmp=`$NM "$func_to_tool_file_result" | eval "$global_symbol_pipe" | $GREP '_NULL_IMPORT_DESCRIPTOR'` + test -n "$func_cygming_ms_implib_tmp" +} + +# func_win32_libid arg +# return the library type of file 'arg' +# +# Need a lot of goo to handle *both* DLLs and import libs +# Has to be a shell function in order to 'eat' the argument +# that is supplied when $file_magic_command is called. +# Despite the name, also deal with 64 bit binaries. +func_win32_libid () +{ + $debug_cmd + + win32_libid_type=unknown + win32_fileres=`file -L $1 2>/dev/null` + case $win32_fileres in + *ar\ archive\ import\ library*) # definitely import + win32_libid_type="x86 archive import" + ;; + *ar\ archive*) # could be an import, or static + # Keep the egrep pattern in sync with the one in _LT_CHECK_MAGIC_METHOD. + if eval $OBJDUMP -f $1 | $SED -e '10q' 2>/dev/null | + $EGREP 'file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)' >/dev/null; then + case $nm_interface in + "MS dumpbin") + if func_cygming_ms_implib_p "$1" || + func_cygming_gnu_implib_p "$1" + then + win32_nmres=import + else + win32_nmres= + fi + ;; + *) + func_to_tool_file "$1" func_convert_file_msys_to_w32 + win32_nmres=`eval $NM -f posix -A \"$func_to_tool_file_result\" | + $SED -n -e ' + 1,100{ + / I /{ + s|.*|import| + p + q + } + }'` + ;; + esac + case $win32_nmres in + import*) win32_libid_type="x86 archive import";; + *) win32_libid_type="x86 archive static";; + esac + fi + ;; + *DLL*) + win32_libid_type="x86 DLL" + ;; + *executable*) # but shell scripts are "executable" too... + case $win32_fileres in + *MS\ Windows\ PE\ Intel*) + win32_libid_type="x86 DLL" + ;; + esac + ;; + esac + $ECHO "$win32_libid_type" +} + +# func_cygming_dll_for_implib ARG +# +# Platform-specific function to extract the +# name of the DLL associated with the specified +# import library ARG. +# Invoked by eval'ing the libtool variable +# $sharedlib_from_linklib_cmd +# Result is available in the variable +# $sharedlib_from_linklib_result +func_cygming_dll_for_implib () +{ + $debug_cmd + + sharedlib_from_linklib_result=`$DLLTOOL --identify-strict --identify "$1"` +} + +# func_cygming_dll_for_implib_fallback_core SECTION_NAME LIBNAMEs +# +# The is the core of a fallback implementation of a +# platform-specific function to extract the name of the +# DLL associated with the specified import library LIBNAME. +# +# SECTION_NAME is either .idata$6 or .idata$7, depending +# on the platform and compiler that created the implib. +# +# Echos the name of the DLL associated with the +# specified import library. +func_cygming_dll_for_implib_fallback_core () +{ + $debug_cmd + + match_literal=`$ECHO "$1" | $SED "$sed_make_literal_regex"` + $OBJDUMP -s --section "$1" "$2" 2>/dev/null | + $SED '/^Contents of section '"$match_literal"':/{ + # Place marker at beginning of archive member dllname section + s/.*/====MARK====/ + p + d + } + # These lines can sometimes be longer than 43 characters, but + # are always uninteresting + /:[ ]*file format pe[i]\{,1\}-/d + /^In archive [^:]*:/d + # Ensure marker is printed + /^====MARK====/p + # Remove all lines with less than 43 characters + /^.\{43\}/!d + # From remaining lines, remove first 43 characters + s/^.\{43\}//' | + $SED -n ' + # Join marker and all lines until next marker into a single line + /^====MARK====/ b para + H + $ b para + b + :para + x + s/\n//g + # Remove the marker + s/^====MARK====// + # Remove trailing dots and whitespace + s/[\. \t]*$// + # Print + /./p' | + # we now have a list, one entry per line, of the stringified + # contents of the appropriate section of all members of the + # archive that possess that section. Heuristic: eliminate + # all those that have a first or second character that is + # a '.' (that is, objdump's representation of an unprintable + # character.) This should work for all archives with less than + # 0x302f exports -- but will fail for DLLs whose name actually + # begins with a literal '.' or a single character followed by + # a '.'. + # + # Of those that remain, print the first one. + $SED -e '/^\./d;/^.\./d;q' +} + +# func_cygming_dll_for_implib_fallback ARG +# Platform-specific function to extract the +# name of the DLL associated with the specified +# import library ARG. +# +# This fallback implementation is for use when $DLLTOOL +# does not support the --identify-strict option. +# Invoked by eval'ing the libtool variable +# $sharedlib_from_linklib_cmd +# Result is available in the variable +# $sharedlib_from_linklib_result +func_cygming_dll_for_implib_fallback () +{ + $debug_cmd + + if func_cygming_gnu_implib_p "$1"; then + # binutils import library + sharedlib_from_linklib_result=`func_cygming_dll_for_implib_fallback_core '.idata$7' "$1"` + elif func_cygming_ms_implib_p "$1"; then + # ms-generated import library + sharedlib_from_linklib_result=`func_cygming_dll_for_implib_fallback_core '.idata$6' "$1"` + else + # unknown + sharedlib_from_linklib_result= + fi +} + + +# func_extract_an_archive dir oldlib +func_extract_an_archive () +{ + $debug_cmd + + f_ex_an_ar_dir=$1; shift + f_ex_an_ar_oldlib=$1 + if test yes = "$lock_old_archive_extraction"; then + lockfile=$f_ex_an_ar_oldlib.lock + until $opt_dry_run || ln "$progpath" "$lockfile" 2>/dev/null; do + func_echo "Waiting for $lockfile to be removed" + sleep 2 + done + fi + func_show_eval "(cd \$f_ex_an_ar_dir && $AR x \"\$f_ex_an_ar_oldlib\")" \ + 'stat=$?; rm -f "$lockfile"; exit $stat' + if test yes = "$lock_old_archive_extraction"; then + $opt_dry_run || rm -f "$lockfile" + fi + if ($AR t "$f_ex_an_ar_oldlib" | sort | sort -uc >/dev/null 2>&1); then + : + else + func_fatal_error "object name conflicts in archive: $f_ex_an_ar_dir/$f_ex_an_ar_oldlib" + fi +} + + +# func_extract_archives gentop oldlib ... +func_extract_archives () +{ + $debug_cmd + + my_gentop=$1; shift + my_oldlibs=${1+"$@"} + my_oldobjs= + my_xlib= + my_xabs= + my_xdir= + + for my_xlib in $my_oldlibs; do + # Extract the objects. + case $my_xlib in + [\\/]* | [A-Za-z]:[\\/]*) my_xabs=$my_xlib ;; + *) my_xabs=`pwd`"/$my_xlib" ;; + esac + func_basename "$my_xlib" + my_xlib=$func_basename_result + my_xlib_u=$my_xlib + while :; do + case " $extracted_archives " in + *" $my_xlib_u "*) + func_arith $extracted_serial + 1 + extracted_serial=$func_arith_result + my_xlib_u=lt$extracted_serial-$my_xlib ;; + *) break ;; + esac + done + extracted_archives="$extracted_archives $my_xlib_u" + my_xdir=$my_gentop/$my_xlib_u + + func_mkdir_p "$my_xdir" + + case $host in + *-darwin*) + func_verbose "Extracting $my_xabs" + # Do not bother doing anything if just a dry run + $opt_dry_run || { + darwin_orig_dir=`pwd` + cd $my_xdir || exit $? + darwin_archive=$my_xabs + darwin_curdir=`pwd` + func_basename "$darwin_archive" + darwin_base_archive=$func_basename_result + darwin_arches=`$LIPO -info "$darwin_archive" 2>/dev/null | $GREP Architectures 2>/dev/null || true` + if test -n "$darwin_arches"; then + darwin_arches=`$ECHO "$darwin_arches" | $SED -e 's/.*are://'` + darwin_arch= + func_verbose "$darwin_base_archive has multiple architectures $darwin_arches" + for darwin_arch in $darwin_arches; do + func_mkdir_p "unfat-$$/$darwin_base_archive-$darwin_arch" + $LIPO -thin $darwin_arch -output "unfat-$$/$darwin_base_archive-$darwin_arch/$darwin_base_archive" "$darwin_archive" + cd "unfat-$$/$darwin_base_archive-$darwin_arch" + func_extract_an_archive "`pwd`" "$darwin_base_archive" + cd "$darwin_curdir" + $RM "unfat-$$/$darwin_base_archive-$darwin_arch/$darwin_base_archive" + done # $darwin_arches + ## Okay now we've a bunch of thin objects, gotta fatten them up :) + darwin_filelist=`find unfat-$$ -type f -name \*.o -print -o -name \*.lo -print | $SED -e "$sed_basename" | sort -u` + darwin_file= + darwin_files= + for darwin_file in $darwin_filelist; do + darwin_files=`find unfat-$$ -name $darwin_file -print | sort | $NL2SP` + $LIPO -create -output "$darwin_file" $darwin_files + done # $darwin_filelist + $RM -rf unfat-$$ + cd "$darwin_orig_dir" + else + cd $darwin_orig_dir + func_extract_an_archive "$my_xdir" "$my_xabs" + fi # $darwin_arches + } # !$opt_dry_run + ;; + *) + func_extract_an_archive "$my_xdir" "$my_xabs" + ;; + esac + my_oldobjs="$my_oldobjs "`find $my_xdir -name \*.$objext -print -o -name \*.lo -print | sort | $NL2SP` + done + + func_extract_archives_result=$my_oldobjs +} + + +# func_emit_wrapper [arg=no] +# +# Emit a libtool wrapper script on stdout. +# Don't directly open a file because we may want to +# incorporate the script contents within a cygwin/mingw +# wrapper executable. Must ONLY be called from within +# func_mode_link because it depends on a number of variables +# set therein. +# +# ARG is the value that the WRAPPER_SCRIPT_BELONGS_IN_OBJDIR +# variable will take. If 'yes', then the emitted script +# will assume that the directory where it is stored is +# the $objdir directory. This is a cygwin/mingw-specific +# behavior. +func_emit_wrapper () +{ + func_emit_wrapper_arg1=${1-no} + + $ECHO "\ +#! $SHELL + +# $output - temporary wrapper script for $objdir/$outputname +# Generated by $PROGRAM (GNU $PACKAGE) $VERSION +# +# The $output program cannot be directly executed until all the libtool +# libraries that it depends on are installed. +# +# This wrapper script should never be moved out of the build directory. +# If it is, it will not operate correctly. + +# Sed substitution that helps us do robust quoting. It backslashifies +# metacharacters that are still active within double-quoted strings. +sed_quote_subst='$sed_quote_subst' + +# Be Bourne compatible +if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then + emulate sh + NULLCMD=: + # Zsh 3.x and 4.x performs word splitting on \${1+\"\$@\"}, which + # is contrary to our usage. Disable this feature. + alias -g '\${1+\"\$@\"}'='\"\$@\"' + setopt NO_GLOB_SUBST +else + case \`(set -o) 2>/dev/null\` in *posix*) set -o posix;; esac +fi +BIN_SH=xpg4; export BIN_SH # for Tru64 +DUALCASE=1; export DUALCASE # for MKS sh + +# The HP-UX ksh and POSIX shell print the target directory to stdout +# if CDPATH is set. +(unset CDPATH) >/dev/null 2>&1 && unset CDPATH + +relink_command=\"$relink_command\" + +# This environment variable determines our operation mode. +if test \"\$libtool_install_magic\" = \"$magic\"; then + # install mode needs the following variables: + generated_by_libtool_version='$macro_version' + notinst_deplibs='$notinst_deplibs' +else + # When we are sourced in execute mode, \$file and \$ECHO are already set. + if test \"\$libtool_execute_magic\" != \"$magic\"; then + file=\"\$0\"" + + qECHO=`$ECHO "$ECHO" | $SED "$sed_quote_subst"` + $ECHO "\ + +# A function that is used when there is no print builtin or printf. +func_fallback_echo () +{ + eval 'cat <<_LTECHO_EOF +\$1 +_LTECHO_EOF' +} + ECHO=\"$qECHO\" + fi + +# Very basic option parsing. These options are (a) specific to +# the libtool wrapper, (b) are identical between the wrapper +# /script/ and the wrapper /executable/ that is used only on +# windows platforms, and (c) all begin with the string "--lt-" +# (application programs are unlikely to have options that match +# this pattern). +# +# There are only two supported options: --lt-debug and +# --lt-dump-script. There is, deliberately, no --lt-help. +# +# The first argument to this parsing function should be the +# script's $0 value, followed by "$@". +lt_option_debug= +func_parse_lt_options () +{ + lt_script_arg0=\$0 + shift + for lt_opt + do + case \"\$lt_opt\" in + --lt-debug) lt_option_debug=1 ;; + --lt-dump-script) + lt_dump_D=\`\$ECHO \"X\$lt_script_arg0\" | $SED -e 's/^X//' -e 's%/[^/]*$%%'\` + test \"X\$lt_dump_D\" = \"X\$lt_script_arg0\" && lt_dump_D=. + lt_dump_F=\`\$ECHO \"X\$lt_script_arg0\" | $SED -e 's/^X//' -e 's%^.*/%%'\` + cat \"\$lt_dump_D/\$lt_dump_F\" + exit 0 + ;; + --lt-*) + \$ECHO \"Unrecognized --lt- option: '\$lt_opt'\" 1>&2 + exit 1 + ;; + esac + done + + # Print the debug banner immediately: + if test -n \"\$lt_option_debug\"; then + echo \"$outputname:$output:\$LINENO: libtool wrapper (GNU $PACKAGE) $VERSION\" 1>&2 + fi +} + +# Used when --lt-debug. Prints its arguments to stdout +# (redirection is the responsibility of the caller) +func_lt_dump_args () +{ + lt_dump_args_N=1; + for lt_arg + do + \$ECHO \"$outputname:$output:\$LINENO: newargv[\$lt_dump_args_N]: \$lt_arg\" + lt_dump_args_N=\`expr \$lt_dump_args_N + 1\` + done +} + +# Core function for launching the target application +func_exec_program_core () +{ +" + case $host in + # Backslashes separate directories on plain windows + *-*-mingw | *-*-os2* | *-cegcc*) + $ECHO "\ + if test -n \"\$lt_option_debug\"; then + \$ECHO \"$outputname:$output:\$LINENO: newargv[0]: \$progdir\\\\\$program\" 1>&2 + func_lt_dump_args \${1+\"\$@\"} 1>&2 + fi + exec \"\$progdir\\\\\$program\" \${1+\"\$@\"} +" + ;; + + *) + $ECHO "\ + if test -n \"\$lt_option_debug\"; then + \$ECHO \"$outputname:$output:\$LINENO: newargv[0]: \$progdir/\$program\" 1>&2 + func_lt_dump_args \${1+\"\$@\"} 1>&2 + fi + exec \"\$progdir/\$program\" \${1+\"\$@\"} +" + ;; + esac + $ECHO "\ + \$ECHO \"\$0: cannot exec \$program \$*\" 1>&2 + exit 1 +} + +# A function to encapsulate launching the target application +# Strips options in the --lt-* namespace from \$@ and +# launches target application with the remaining arguments. +func_exec_program () +{ + case \" \$* \" in + *\\ --lt-*) + for lt_wr_arg + do + case \$lt_wr_arg in + --lt-*) ;; + *) set x \"\$@\" \"\$lt_wr_arg\"; shift;; + esac + shift + done ;; + esac + func_exec_program_core \${1+\"\$@\"} +} + + # Parse options + func_parse_lt_options \"\$0\" \${1+\"\$@\"} + + # Find the directory that this script lives in. + thisdir=\`\$ECHO \"\$file\" | $SED 's%/[^/]*$%%'\` + test \"x\$thisdir\" = \"x\$file\" && thisdir=. + + # Follow symbolic links until we get to the real thisdir. + file=\`ls -ld \"\$file\" | $SED -n 's/.*-> //p'\` + while test -n \"\$file\"; do + destdir=\`\$ECHO \"\$file\" | $SED 's%/[^/]*\$%%'\` + + # If there was a directory component, then change thisdir. + if test \"x\$destdir\" != \"x\$file\"; then + case \"\$destdir\" in + [\\\\/]* | [A-Za-z]:[\\\\/]*) thisdir=\"\$destdir\" ;; + *) thisdir=\"\$thisdir/\$destdir\" ;; + esac + fi + + file=\`\$ECHO \"\$file\" | $SED 's%^.*/%%'\` + file=\`ls -ld \"\$thisdir/\$file\" | $SED -n 's/.*-> //p'\` + done + + # Usually 'no', except on cygwin/mingw when embedded into + # the cwrapper. + WRAPPER_SCRIPT_BELONGS_IN_OBJDIR=$func_emit_wrapper_arg1 + if test \"\$WRAPPER_SCRIPT_BELONGS_IN_OBJDIR\" = \"yes\"; then + # special case for '.' + if test \"\$thisdir\" = \".\"; then + thisdir=\`pwd\` + fi + # remove .libs from thisdir + case \"\$thisdir\" in + *[\\\\/]$objdir ) thisdir=\`\$ECHO \"\$thisdir\" | $SED 's%[\\\\/][^\\\\/]*$%%'\` ;; + $objdir ) thisdir=. ;; + esac + fi + + # Try to get the absolute directory name. + absdir=\`cd \"\$thisdir\" && pwd\` + test -n \"\$absdir\" && thisdir=\"\$absdir\" +" + + if test yes = "$fast_install"; then + $ECHO "\ + program=lt-'$outputname'$exeext + progdir=\"\$thisdir/$objdir\" + + if test ! -f \"\$progdir/\$program\" || + { file=\`ls -1dt \"\$progdir/\$program\" \"\$progdir/../\$program\" 2>/dev/null | $SED 1q\`; \\ + test \"X\$file\" != \"X\$progdir/\$program\"; }; then + + file=\"\$\$-\$program\" + + if test ! -d \"\$progdir\"; then + $MKDIR \"\$progdir\" + else + $RM \"\$progdir/\$file\" + fi" + + $ECHO "\ + + # relink executable if necessary + if test -n \"\$relink_command\"; then + if relink_command_output=\`eval \$relink_command 2>&1\`; then : + else + \$ECHO \"\$relink_command_output\" >&2 + $RM \"\$progdir/\$file\" + exit 1 + fi + fi + + $MV \"\$progdir/\$file\" \"\$progdir/\$program\" 2>/dev/null || + { $RM \"\$progdir/\$program\"; + $MV \"\$progdir/\$file\" \"\$progdir/\$program\"; } + $RM \"\$progdir/\$file\" + fi" + else + $ECHO "\ + program='$outputname' + progdir=\"\$thisdir/$objdir\" +" + fi + + $ECHO "\ + + if test -f \"\$progdir/\$program\"; then" + + # fixup the dll searchpath if we need to. + # + # Fix the DLL searchpath if we need to. Do this before prepending + # to shlibpath, because on Windows, both are PATH and uninstalled + # libraries must come first. + if test -n "$dllsearchpath"; then + $ECHO "\ + # Add the dll search path components to the executable PATH + PATH=$dllsearchpath:\$PATH +" + fi + + # Export our shlibpath_var if we have one. + if test yes = "$shlibpath_overrides_runpath" && test -n "$shlibpath_var" && test -n "$temp_rpath"; then + $ECHO "\ + # Add our own library path to $shlibpath_var + $shlibpath_var=\"$temp_rpath\$$shlibpath_var\" + + # Some systems cannot cope with colon-terminated $shlibpath_var + # The second colon is a workaround for a bug in BeOS R4 sed + $shlibpath_var=\`\$ECHO \"\$$shlibpath_var\" | $SED 's/::*\$//'\` + + export $shlibpath_var +" + fi + + $ECHO "\ + if test \"\$libtool_execute_magic\" != \"$magic\"; then + # Run the actual program with our arguments. + func_exec_program \${1+\"\$@\"} + fi + else + # The program doesn't exist. + \$ECHO \"\$0: error: '\$progdir/\$program' does not exist\" 1>&2 + \$ECHO \"This script is just a wrapper for \$program.\" 1>&2 + \$ECHO \"See the $PACKAGE documentation for more information.\" 1>&2 + exit 1 + fi +fi\ +" +} + + +# func_emit_cwrapperexe_src +# emit the source code for a wrapper executable on stdout +# Must ONLY be called from within func_mode_link because +# it depends on a number of variable set therein. +func_emit_cwrapperexe_src () +{ + cat < +#include +#ifdef _MSC_VER +# include +# include +# include +#else +# include +# include +# ifdef __CYGWIN__ +# include +# endif +#endif +#include +#include +#include +#include +#include +#include +#include +#include + +#define STREQ(s1, s2) (strcmp ((s1), (s2)) == 0) + +/* declarations of non-ANSI functions */ +#if defined __MINGW32__ +# ifdef __STRICT_ANSI__ +int _putenv (const char *); +# endif +#elif defined __CYGWIN__ +# ifdef __STRICT_ANSI__ +char *realpath (const char *, char *); +int putenv (char *); +int setenv (const char *, const char *, int); +# endif +/* #elif defined other_platform || defined ... */ +#endif + +/* portability defines, excluding path handling macros */ +#if defined _MSC_VER +# define setmode _setmode +# define stat _stat +# define chmod _chmod +# define getcwd _getcwd +# define putenv _putenv +# define S_IXUSR _S_IEXEC +#elif defined __MINGW32__ +# define setmode _setmode +# define stat _stat +# define chmod _chmod +# define getcwd _getcwd +# define putenv _putenv +#elif defined __CYGWIN__ +# define HAVE_SETENV +# define FOPEN_WB "wb" +/* #elif defined other platforms ... */ +#endif + +#if defined PATH_MAX +# define LT_PATHMAX PATH_MAX +#elif defined MAXPATHLEN +# define LT_PATHMAX MAXPATHLEN +#else +# define LT_PATHMAX 1024 +#endif + +#ifndef S_IXOTH +# define S_IXOTH 0 +#endif +#ifndef S_IXGRP +# define S_IXGRP 0 +#endif + +/* path handling portability macros */ +#ifndef DIR_SEPARATOR +# define DIR_SEPARATOR '/' +# define PATH_SEPARATOR ':' +#endif + +#if defined _WIN32 || defined __MSDOS__ || defined __DJGPP__ || \ + defined __OS2__ +# define HAVE_DOS_BASED_FILE_SYSTEM +# define FOPEN_WB "wb" +# ifndef DIR_SEPARATOR_2 +# define DIR_SEPARATOR_2 '\\' +# endif +# ifndef PATH_SEPARATOR_2 +# define PATH_SEPARATOR_2 ';' +# endif +#endif + +#ifndef DIR_SEPARATOR_2 +# define IS_DIR_SEPARATOR(ch) ((ch) == DIR_SEPARATOR) +#else /* DIR_SEPARATOR_2 */ +# define IS_DIR_SEPARATOR(ch) \ + (((ch) == DIR_SEPARATOR) || ((ch) == DIR_SEPARATOR_2)) +#endif /* DIR_SEPARATOR_2 */ + +#ifndef PATH_SEPARATOR_2 +# define IS_PATH_SEPARATOR(ch) ((ch) == PATH_SEPARATOR) +#else /* PATH_SEPARATOR_2 */ +# define IS_PATH_SEPARATOR(ch) ((ch) == PATH_SEPARATOR_2) +#endif /* PATH_SEPARATOR_2 */ + +#ifndef FOPEN_WB +# define FOPEN_WB "w" +#endif +#ifndef _O_BINARY +# define _O_BINARY 0 +#endif + +#define XMALLOC(type, num) ((type *) xmalloc ((num) * sizeof(type))) +#define XFREE(stale) do { \ + if (stale) { free (stale); stale = 0; } \ +} while (0) + +#if defined LT_DEBUGWRAPPER +static int lt_debug = 1; +#else +static int lt_debug = 0; +#endif + +const char *program_name = "libtool-wrapper"; /* in case xstrdup fails */ + +void *xmalloc (size_t num); +char *xstrdup (const char *string); +const char *base_name (const char *name); +char *find_executable (const char *wrapper); +char *chase_symlinks (const char *pathspec); +int make_executable (const char *path); +int check_executable (const char *path); +char *strendzap (char *str, const char *pat); +void lt_debugprintf (const char *file, int line, const char *fmt, ...); +void lt_fatal (const char *file, int line, const char *message, ...); +static const char *nonnull (const char *s); +static const char *nonempty (const char *s); +void lt_setenv (const char *name, const char *value); +char *lt_extend_str (const char *orig_value, const char *add, int to_end); +void lt_update_exe_path (const char *name, const char *value); +void lt_update_lib_path (const char *name, const char *value); +char **prepare_spawn (char **argv); +void lt_dump_script (FILE *f); +EOF + + cat <= 0) + && (st.st_mode & (S_IXUSR | S_IXGRP | S_IXOTH))) + return 1; + else + return 0; +} + +int +make_executable (const char *path) +{ + int rval = 0; + struct stat st; + + lt_debugprintf (__FILE__, __LINE__, "(make_executable): %s\n", + nonempty (path)); + if ((!path) || (!*path)) + return 0; + + if (stat (path, &st) >= 0) + { + rval = chmod (path, st.st_mode | S_IXOTH | S_IXGRP | S_IXUSR); + } + return rval; +} + +/* Searches for the full path of the wrapper. Returns + newly allocated full path name if found, NULL otherwise + Does not chase symlinks, even on platforms that support them. +*/ +char * +find_executable (const char *wrapper) +{ + int has_slash = 0; + const char *p; + const char *p_next; + /* static buffer for getcwd */ + char tmp[LT_PATHMAX + 1]; + size_t tmp_len; + char *concat_name; + + lt_debugprintf (__FILE__, __LINE__, "(find_executable): %s\n", + nonempty (wrapper)); + + if ((wrapper == NULL) || (*wrapper == '\0')) + return NULL; + + /* Absolute path? */ +#if defined HAVE_DOS_BASED_FILE_SYSTEM + if (isalpha ((unsigned char) wrapper[0]) && wrapper[1] == ':') + { + concat_name = xstrdup (wrapper); + if (check_executable (concat_name)) + return concat_name; + XFREE (concat_name); + } + else + { +#endif + if (IS_DIR_SEPARATOR (wrapper[0])) + { + concat_name = xstrdup (wrapper); + if (check_executable (concat_name)) + return concat_name; + XFREE (concat_name); + } +#if defined HAVE_DOS_BASED_FILE_SYSTEM + } +#endif + + for (p = wrapper; *p; p++) + if (*p == '/') + { + has_slash = 1; + break; + } + if (!has_slash) + { + /* no slashes; search PATH */ + const char *path = getenv ("PATH"); + if (path != NULL) + { + for (p = path; *p; p = p_next) + { + const char *q; + size_t p_len; + for (q = p; *q; q++) + if (IS_PATH_SEPARATOR (*q)) + break; + p_len = (size_t) (q - p); + p_next = (*q == '\0' ? q : q + 1); + if (p_len == 0) + { + /* empty path: current directory */ + if (getcwd (tmp, LT_PATHMAX) == NULL) + lt_fatal (__FILE__, __LINE__, "getcwd failed: %s", + nonnull (strerror (errno))); + tmp_len = strlen (tmp); + concat_name = + XMALLOC (char, tmp_len + 1 + strlen (wrapper) + 1); + memcpy (concat_name, tmp, tmp_len); + concat_name[tmp_len] = '/'; + strcpy (concat_name + tmp_len + 1, wrapper); + } + else + { + concat_name = + XMALLOC (char, p_len + 1 + strlen (wrapper) + 1); + memcpy (concat_name, p, p_len); + concat_name[p_len] = '/'; + strcpy (concat_name + p_len + 1, wrapper); + } + if (check_executable (concat_name)) + return concat_name; + XFREE (concat_name); + } + } + /* not found in PATH; assume curdir */ + } + /* Relative path | not found in path: prepend cwd */ + if (getcwd (tmp, LT_PATHMAX) == NULL) + lt_fatal (__FILE__, __LINE__, "getcwd failed: %s", + nonnull (strerror (errno))); + tmp_len = strlen (tmp); + concat_name = XMALLOC (char, tmp_len + 1 + strlen (wrapper) + 1); + memcpy (concat_name, tmp, tmp_len); + concat_name[tmp_len] = '/'; + strcpy (concat_name + tmp_len + 1, wrapper); + + if (check_executable (concat_name)) + return concat_name; + XFREE (concat_name); + return NULL; +} + +char * +chase_symlinks (const char *pathspec) +{ +#ifndef S_ISLNK + return xstrdup (pathspec); +#else + char buf[LT_PATHMAX]; + struct stat s; + char *tmp_pathspec = xstrdup (pathspec); + char *p; + int has_symlinks = 0; + while (strlen (tmp_pathspec) && !has_symlinks) + { + lt_debugprintf (__FILE__, __LINE__, + "checking path component for symlinks: %s\n", + tmp_pathspec); + if (lstat (tmp_pathspec, &s) == 0) + { + if (S_ISLNK (s.st_mode) != 0) + { + has_symlinks = 1; + break; + } + + /* search backwards for last DIR_SEPARATOR */ + p = tmp_pathspec + strlen (tmp_pathspec) - 1; + while ((p > tmp_pathspec) && (!IS_DIR_SEPARATOR (*p))) + p--; + if ((p == tmp_pathspec) && (!IS_DIR_SEPARATOR (*p))) + { + /* no more DIR_SEPARATORS left */ + break; + } + *p = '\0'; + } + else + { + lt_fatal (__FILE__, __LINE__, + "error accessing file \"%s\": %s", + tmp_pathspec, nonnull (strerror (errno))); + } + } + XFREE (tmp_pathspec); + + if (!has_symlinks) + { + return xstrdup (pathspec); + } + + tmp_pathspec = realpath (pathspec, buf); + if (tmp_pathspec == 0) + { + lt_fatal (__FILE__, __LINE__, + "could not follow symlinks for %s", pathspec); + } + return xstrdup (tmp_pathspec); +#endif +} + +char * +strendzap (char *str, const char *pat) +{ + size_t len, patlen; + + assert (str != NULL); + assert (pat != NULL); + + len = strlen (str); + patlen = strlen (pat); + + if (patlen <= len) + { + str += len - patlen; + if (STREQ (str, pat)) + *str = '\0'; + } + return str; +} + +void +lt_debugprintf (const char *file, int line, const char *fmt, ...) +{ + va_list args; + if (lt_debug) + { + (void) fprintf (stderr, "%s:%s:%d: ", program_name, file, line); + va_start (args, fmt); + (void) vfprintf (stderr, fmt, args); + va_end (args); + } +} + +static void +lt_error_core (int exit_status, const char *file, + int line, const char *mode, + const char *message, va_list ap) +{ + fprintf (stderr, "%s:%s:%d: %s: ", program_name, file, line, mode); + vfprintf (stderr, message, ap); + fprintf (stderr, ".\n"); + + if (exit_status >= 0) + exit (exit_status); +} + +void +lt_fatal (const char *file, int line, const char *message, ...) +{ + va_list ap; + va_start (ap, message); + lt_error_core (EXIT_FAILURE, file, line, "FATAL", message, ap); + va_end (ap); +} + +static const char * +nonnull (const char *s) +{ + return s ? s : "(null)"; +} + +static const char * +nonempty (const char *s) +{ + return (s && !*s) ? "(empty)" : nonnull (s); +} + +void +lt_setenv (const char *name, const char *value) +{ + lt_debugprintf (__FILE__, __LINE__, + "(lt_setenv) setting '%s' to '%s'\n", + nonnull (name), nonnull (value)); + { +#ifdef HAVE_SETENV + /* always make a copy, for consistency with !HAVE_SETENV */ + char *str = xstrdup (value); + setenv (name, str, 1); +#else + size_t len = strlen (name) + 1 + strlen (value) + 1; + char *str = XMALLOC (char, len); + sprintf (str, "%s=%s", name, value); + if (putenv (str) != EXIT_SUCCESS) + { + XFREE (str); + } +#endif + } +} + +char * +lt_extend_str (const char *orig_value, const char *add, int to_end) +{ + char *new_value; + if (orig_value && *orig_value) + { + size_t orig_value_len = strlen (orig_value); + size_t add_len = strlen (add); + new_value = XMALLOC (char, add_len + orig_value_len + 1); + if (to_end) + { + strcpy (new_value, orig_value); + strcpy (new_value + orig_value_len, add); + } + else + { + strcpy (new_value, add); + strcpy (new_value + add_len, orig_value); + } + } + else + { + new_value = xstrdup (add); + } + return new_value; +} + +void +lt_update_exe_path (const char *name, const char *value) +{ + lt_debugprintf (__FILE__, __LINE__, + "(lt_update_exe_path) modifying '%s' by prepending '%s'\n", + nonnull (name), nonnull (value)); + + if (name && *name && value && *value) + { + char *new_value = lt_extend_str (getenv (name), value, 0); + /* some systems can't cope with a ':'-terminated path #' */ + size_t len = strlen (new_value); + while ((len > 0) && IS_PATH_SEPARATOR (new_value[len-1])) + { + new_value[--len] = '\0'; + } + lt_setenv (name, new_value); + XFREE (new_value); + } +} + +void +lt_update_lib_path (const char *name, const char *value) +{ + lt_debugprintf (__FILE__, __LINE__, + "(lt_update_lib_path) modifying '%s' by prepending '%s'\n", + nonnull (name), nonnull (value)); + + if (name && *name && value && *value) + { + char *new_value = lt_extend_str (getenv (name), value, 0); + lt_setenv (name, new_value); + XFREE (new_value); + } +} + +EOF + case $host_os in + mingw*) + cat <<"EOF" + +/* Prepares an argument vector before calling spawn(). + Note that spawn() does not by itself call the command interpreter + (getenv ("COMSPEC") != NULL ? getenv ("COMSPEC") : + ({ OSVERSIONINFO v; v.dwOSVersionInfoSize = sizeof(OSVERSIONINFO); + GetVersionEx(&v); + v.dwPlatformId == VER_PLATFORM_WIN32_NT; + }) ? "cmd.exe" : "command.com"). + Instead it simply concatenates the arguments, separated by ' ', and calls + CreateProcess(). We must quote the arguments since Win32 CreateProcess() + interprets characters like ' ', '\t', '\\', '"' (but not '<' and '>') in a + special way: + - Space and tab are interpreted as delimiters. They are not treated as + delimiters if they are surrounded by double quotes: "...". + - Unescaped double quotes are removed from the input. Their only effect is + that within double quotes, space and tab are treated like normal + characters. + - Backslashes not followed by double quotes are not special. + - But 2*n+1 backslashes followed by a double quote become + n backslashes followed by a double quote (n >= 0): + \" -> " + \\\" -> \" + \\\\\" -> \\" + */ +#define SHELL_SPECIAL_CHARS "\"\\ \001\002\003\004\005\006\007\010\011\012\013\014\015\016\017\020\021\022\023\024\025\026\027\030\031\032\033\034\035\036\037" +#define SHELL_SPACE_CHARS " \001\002\003\004\005\006\007\010\011\012\013\014\015\016\017\020\021\022\023\024\025\026\027\030\031\032\033\034\035\036\037" +char ** +prepare_spawn (char **argv) +{ + size_t argc; + char **new_argv; + size_t i; + + /* Count number of arguments. */ + for (argc = 0; argv[argc] != NULL; argc++) + ; + + /* Allocate new argument vector. */ + new_argv = XMALLOC (char *, argc + 1); + + /* Put quoted arguments into the new argument vector. */ + for (i = 0; i < argc; i++) + { + const char *string = argv[i]; + + if (string[0] == '\0') + new_argv[i] = xstrdup ("\"\""); + else if (strpbrk (string, SHELL_SPECIAL_CHARS) != NULL) + { + int quote_around = (strpbrk (string, SHELL_SPACE_CHARS) != NULL); + size_t length; + unsigned int backslashes; + const char *s; + char *quoted_string; + char *p; + + length = 0; + backslashes = 0; + if (quote_around) + length++; + for (s = string; *s != '\0'; s++) + { + char c = *s; + if (c == '"') + length += backslashes + 1; + length++; + if (c == '\\') + backslashes++; + else + backslashes = 0; + } + if (quote_around) + length += backslashes + 1; + + quoted_string = XMALLOC (char, length + 1); + + p = quoted_string; + backslashes = 0; + if (quote_around) + *p++ = '"'; + for (s = string; *s != '\0'; s++) + { + char c = *s; + if (c == '"') + { + unsigned int j; + for (j = backslashes + 1; j > 0; j--) + *p++ = '\\'; + } + *p++ = c; + if (c == '\\') + backslashes++; + else + backslashes = 0; + } + if (quote_around) + { + unsigned int j; + for (j = backslashes; j > 0; j--) + *p++ = '\\'; + *p++ = '"'; + } + *p = '\0'; + + new_argv[i] = quoted_string; + } + else + new_argv[i] = (char *) string; + } + new_argv[argc] = NULL; + + return new_argv; +} +EOF + ;; + esac + + cat <<"EOF" +void lt_dump_script (FILE* f) +{ +EOF + func_emit_wrapper yes | + $SED -n -e ' +s/^\(.\{79\}\)\(..*\)/\1\ +\2/ +h +s/\([\\"]\)/\\\1/g +s/$/\\n/ +s/\([^\n]*\).*/ fputs ("\1", f);/p +g +D' + cat <<"EOF" +} +EOF +} +# end: func_emit_cwrapperexe_src + +# func_win32_import_lib_p ARG +# True if ARG is an import lib, as indicated by $file_magic_cmd +func_win32_import_lib_p () +{ + $debug_cmd + + case `eval $file_magic_cmd \"\$1\" 2>/dev/null | $SED -e 10q` in + *import*) : ;; + *) false ;; + esac +} + +# func_suncc_cstd_abi +# !!ONLY CALL THIS FOR SUN CC AFTER $compile_command IS FULLY EXPANDED!! +# Several compiler flags select an ABI that is incompatible with the +# Cstd library. Avoid specifying it if any are in CXXFLAGS. +func_suncc_cstd_abi () +{ + $debug_cmd + + case " $compile_command " in + *" -compat=g "*|*\ -std=c++[0-9][0-9]\ *|*" -library=stdcxx4 "*|*" -library=stlport4 "*) + suncc_use_cstd_abi=no + ;; + *) + suncc_use_cstd_abi=yes + ;; + esac +} + +# func_mode_link arg... +func_mode_link () +{ + $debug_cmd + + case $host in + *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*) + # It is impossible to link a dll without this setting, and + # we shouldn't force the makefile maintainer to figure out + # what system we are compiling for in order to pass an extra + # flag for every libtool invocation. + # allow_undefined=no + + # FIXME: Unfortunately, there are problems with the above when trying + # to make a dll that has undefined symbols, in which case not + # even a static library is built. For now, we need to specify + # -no-undefined on the libtool link line when we can be certain + # that all symbols are satisfied, otherwise we get a static library. + allow_undefined=yes + ;; + *) + allow_undefined=yes + ;; + esac + libtool_args=$nonopt + base_compile="$nonopt $@" + compile_command=$nonopt + finalize_command=$nonopt + + compile_rpath= + finalize_rpath= + compile_shlibpath= + finalize_shlibpath= + convenience= + old_convenience= + deplibs= + old_deplibs= + compiler_flags= + linker_flags= + dllsearchpath= + lib_search_path=`pwd` + inst_prefix_dir= + new_inherited_linker_flags= + + avoid_version=no + bindir= + dlfiles= + dlprefiles= + dlself=no + export_dynamic=no + export_symbols= + export_symbols_regex= + generated= + libobjs= + ltlibs= + module=no + no_install=no + objs= + os2dllname= + non_pic_objects= + precious_files_regex= + prefer_static_libs=no + preload=false + prev= + prevarg= + release= + rpath= + xrpath= + perm_rpath= + temp_rpath= + thread_safe=no + vinfo= + vinfo_number=no + weak_libs= + single_module=$wl-single_module + func_infer_tag $base_compile + + # We need to know -static, to get the right output filenames. + for arg + do + case $arg in + -shared) + test yes != "$build_libtool_libs" \ + && func_fatal_configuration "cannot build a shared library" + build_old_libs=no + break + ;; + -all-static | -static | -static-libtool-libs) + case $arg in + -all-static) + if test yes = "$build_libtool_libs" && test -z "$link_static_flag"; then + func_warning "complete static linking is impossible in this configuration" + fi + if test -n "$link_static_flag"; then + dlopen_self=$dlopen_self_static + fi + prefer_static_libs=yes + ;; + -static) + if test -z "$pic_flag" && test -n "$link_static_flag"; then + dlopen_self=$dlopen_self_static + fi + prefer_static_libs=built + ;; + -static-libtool-libs) + if test -z "$pic_flag" && test -n "$link_static_flag"; then + dlopen_self=$dlopen_self_static + fi + prefer_static_libs=yes + ;; + esac + build_libtool_libs=no + build_old_libs=yes + break + ;; + esac + done + + # See if our shared archives depend on static archives. + test -n "$old_archive_from_new_cmds" && build_old_libs=yes + + # Go through the arguments, transforming them on the way. + while test "$#" -gt 0; do + arg=$1 + shift + func_quote_for_eval "$arg" + qarg=$func_quote_for_eval_unquoted_result + func_append libtool_args " $func_quote_for_eval_result" + + # If the previous option needs an argument, assign it. + if test -n "$prev"; then + case $prev in + output) + func_append compile_command " @OUTPUT@" + func_append finalize_command " @OUTPUT@" + ;; + esac + + case $prev in + bindir) + bindir=$arg + prev= + continue + ;; + dlfiles|dlprefiles) + $preload || { + # Add the symbol object into the linking commands. + func_append compile_command " @SYMFILE@" + func_append finalize_command " @SYMFILE@" + preload=: + } + case $arg in + *.la | *.lo) ;; # We handle these cases below. + force) + if test no = "$dlself"; then + dlself=needless + export_dynamic=yes + fi + prev= + continue + ;; + self) + if test dlprefiles = "$prev"; then + dlself=yes + elif test dlfiles = "$prev" && test yes != "$dlopen_self"; then + dlself=yes + else + dlself=needless + export_dynamic=yes + fi + prev= + continue + ;; + *) + if test dlfiles = "$prev"; then + func_append dlfiles " $arg" + else + func_append dlprefiles " $arg" + fi + prev= + continue + ;; + esac + ;; + expsyms) + export_symbols=$arg + test -f "$arg" \ + || func_fatal_error "symbol file '$arg' does not exist" + prev= + continue + ;; + expsyms_regex) + export_symbols_regex=$arg + prev= + continue + ;; + framework) + case $host in + *-*-darwin*) + case "$deplibs " in + *" $qarg.ltframework "*) ;; + *) func_append deplibs " $qarg.ltframework" # this is fixed later + ;; + esac + ;; + esac + prev= + continue + ;; + inst_prefix) + inst_prefix_dir=$arg + prev= + continue + ;; + mllvm) + # Clang does not use LLVM to link, so we can simply discard any + # '-mllvm $arg' options when doing the link step. + prev= + continue + ;; + objectlist) + if test -f "$arg"; then + save_arg=$arg + moreargs= + for fil in `cat "$save_arg"` + do +# func_append moreargs " $fil" + arg=$fil + # A libtool-controlled object. + + # Check to see that this really is a libtool object. + if func_lalib_unsafe_p "$arg"; then + pic_object= + non_pic_object= + + # Read the .lo file + func_source "$arg" + + if test -z "$pic_object" || + test -z "$non_pic_object" || + test none = "$pic_object" && + test none = "$non_pic_object"; then + func_fatal_error "cannot find name of object for '$arg'" + fi + + # Extract subdirectory from the argument. + func_dirname "$arg" "/" "" + xdir=$func_dirname_result + + if test none != "$pic_object"; then + # Prepend the subdirectory the object is found in. + pic_object=$xdir$pic_object + + if test dlfiles = "$prev"; then + if test yes = "$build_libtool_libs" && test yes = "$dlopen_support"; then + func_append dlfiles " $pic_object" + prev= + continue + else + # If libtool objects are unsupported, then we need to preload. + prev=dlprefiles + fi + fi + + # CHECK ME: I think I busted this. -Ossama + if test dlprefiles = "$prev"; then + # Preload the old-style object. + func_append dlprefiles " $pic_object" + prev= + fi + + # A PIC object. + func_append libobjs " $pic_object" + arg=$pic_object + fi + + # Non-PIC object. + if test none != "$non_pic_object"; then + # Prepend the subdirectory the object is found in. + non_pic_object=$xdir$non_pic_object + + # A standard non-PIC object + func_append non_pic_objects " $non_pic_object" + if test -z "$pic_object" || test none = "$pic_object"; then + arg=$non_pic_object + fi + else + # If the PIC object exists, use it instead. + # $xdir was prepended to $pic_object above. + non_pic_object=$pic_object + func_append non_pic_objects " $non_pic_object" + fi + else + # Only an error if not doing a dry-run. + if $opt_dry_run; then + # Extract subdirectory from the argument. + func_dirname "$arg" "/" "" + xdir=$func_dirname_result + + func_lo2o "$arg" + pic_object=$xdir$objdir/$func_lo2o_result + non_pic_object=$xdir$func_lo2o_result + func_append libobjs " $pic_object" + func_append non_pic_objects " $non_pic_object" + else + func_fatal_error "'$arg' is not a valid libtool object" + fi + fi + done + else + func_fatal_error "link input file '$arg' does not exist" + fi + arg=$save_arg + prev= + continue + ;; + os2dllname) + os2dllname=$arg + prev= + continue + ;; + precious_regex) + precious_files_regex=$arg + prev= + continue + ;; + release) + release=-$arg + prev= + continue + ;; + rpath | xrpath) + # We need an absolute path. + case $arg in + [\\/]* | [A-Za-z]:[\\/]*) ;; + *) + func_fatal_error "only absolute run-paths are allowed" + ;; + esac + if test rpath = "$prev"; then + case "$rpath " in + *" $arg "*) ;; + *) func_append rpath " $arg" ;; + esac + else + case "$xrpath " in + *" $arg "*) ;; + *) func_append xrpath " $arg" ;; + esac + fi + prev= + continue + ;; + shrext) + shrext_cmds=$arg + prev= + continue + ;; + weak) + func_append weak_libs " $arg" + prev= + continue + ;; + xcclinker) + func_append linker_flags " $qarg" + func_append compiler_flags " $qarg" + prev= + func_append compile_command " $qarg" + func_append finalize_command " $qarg" + continue + ;; + xcompiler) + func_append compiler_flags " $qarg" + prev= + func_append compile_command " $qarg" + func_append finalize_command " $qarg" + continue + ;; + xlinker) + func_append linker_flags " $qarg" + func_append compiler_flags " $wl$qarg" + prev= + func_append compile_command " $wl$qarg" + func_append finalize_command " $wl$qarg" + continue + ;; + *) + eval "$prev=\"\$arg\"" + prev= + continue + ;; + esac + fi # test -n "$prev" + + prevarg=$arg + + case $arg in + -all-static) + if test -n "$link_static_flag"; then + # See comment for -static flag below, for more details. + func_append compile_command " $link_static_flag" + func_append finalize_command " $link_static_flag" + fi + continue + ;; + + -allow-undefined) + # FIXME: remove this flag sometime in the future. + func_fatal_error "'-allow-undefined' must not be used because it is the default" + ;; + + -avoid-version) + avoid_version=yes + continue + ;; + + -bindir) + prev=bindir + continue + ;; + + -dlopen) + prev=dlfiles + continue + ;; + + -dlpreopen) + prev=dlprefiles + continue + ;; + + -export-dynamic) + export_dynamic=yes + continue + ;; + + -export-symbols | -export-symbols-regex) + if test -n "$export_symbols" || test -n "$export_symbols_regex"; then + func_fatal_error "more than one -exported-symbols argument is not allowed" + fi + if test X-export-symbols = "X$arg"; then + prev=expsyms + else + prev=expsyms_regex + fi + continue + ;; + + -framework) + prev=framework + continue + ;; + + -inst-prefix-dir) + prev=inst_prefix + continue + ;; + + # The native IRIX linker understands -LANG:*, -LIST:* and -LNO:* + # so, if we see these flags be careful not to treat them like -L + -L[A-Z][A-Z]*:*) + case $with_gcc/$host in + no/*-*-irix* | /*-*-irix*) + func_append compile_command " $arg" + func_append finalize_command " $arg" + ;; + esac + continue + ;; + + -L*) + func_stripname "-L" '' "$arg" + if test -z "$func_stripname_result"; then + if test "$#" -gt 0; then + func_fatal_error "require no space between '-L' and '$1'" + else + func_fatal_error "need path for '-L' option" + fi + fi + func_resolve_sysroot "$func_stripname_result" + dir=$func_resolve_sysroot_result + # We need an absolute path. + case $dir in + [\\/]* | [A-Za-z]:[\\/]*) ;; + *) + absdir=`cd "$dir" && pwd` + test -z "$absdir" && \ + func_fatal_error "cannot determine absolute directory name of '$dir'" + dir=$absdir + ;; + esac + case "$deplibs " in + *" -L$dir "* | *" $arg "*) + # Will only happen for absolute or sysroot arguments + ;; + *) + # Preserve sysroot, but never include relative directories + case $dir in + [\\/]* | [A-Za-z]:[\\/]* | =*) func_append deplibs " $arg" ;; + *) func_append deplibs " -L$dir" ;; + esac + func_append lib_search_path " $dir" + ;; + esac + case $host in + *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*) + testbindir=`$ECHO "$dir" | $SED 's*/lib$*/bin*'` + case :$dllsearchpath: in + *":$dir:"*) ;; + ::) dllsearchpath=$dir;; + *) func_append dllsearchpath ":$dir";; + esac + case :$dllsearchpath: in + *":$testbindir:"*) ;; + ::) dllsearchpath=$testbindir;; + *) func_append dllsearchpath ":$testbindir";; + esac + ;; + esac + continue + ;; + + -l*) + if test X-lc = "X$arg" || test X-lm = "X$arg"; then + case $host in + *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-beos* | *-cegcc* | *-*-haiku*) + # These systems don't actually have a C or math library (as such) + continue + ;; + *-*-os2*) + # These systems don't actually have a C library (as such) + test X-lc = "X$arg" && continue + ;; + *-*-openbsd* | *-*-freebsd* | *-*-dragonfly* | *-*-bitrig*) + # Do not include libc due to us having libc/libc_r. + test X-lc = "X$arg" && continue + ;; + *-*-rhapsody* | *-*-darwin1.[012]) + # Rhapsody C and math libraries are in the System framework + func_append deplibs " System.ltframework" + continue + ;; + *-*-sco3.2v5* | *-*-sco5v6*) + # Causes problems with __ctype + test X-lc = "X$arg" && continue + ;; + *-*-sysv4.2uw2* | *-*-sysv5* | *-*-unixware* | *-*-OpenUNIX*) + # Compiler inserts libc in the correct place for threads to work + test X-lc = "X$arg" && continue + ;; + esac + elif test X-lc_r = "X$arg"; then + case $host in + *-*-openbsd* | *-*-freebsd* | *-*-dragonfly* | *-*-bitrig*) + # Do not include libc_r directly, use -pthread flag. + continue + ;; + esac + fi + func_append deplibs " $arg" + continue + ;; + + -mllvm) + prev=mllvm + continue + ;; + + -module) + module=yes + continue + ;; + + # Tru64 UNIX uses -model [arg] to determine the layout of C++ + # classes, name mangling, and exception handling. + # Darwin uses the -arch flag to determine output architecture. + -model|-arch|-isysroot|--sysroot) + func_append compiler_flags " $arg" + func_append compile_command " $arg" + func_append finalize_command " $arg" + prev=xcompiler + continue + ;; + + -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe \ + |-threads|-fopenmp|-openmp|-mp|-xopenmp|-omp|-qsmp=*) + func_append compiler_flags " $arg" + func_append compile_command " $arg" + func_append finalize_command " $arg" + case "$new_inherited_linker_flags " in + *" $arg "*) ;; + * ) func_append new_inherited_linker_flags " $arg" ;; + esac + continue + ;; + + -multi_module) + single_module=$wl-multi_module + continue + ;; + + -no-fast-install) + fast_install=no + continue + ;; + + -no-install) + case $host in + *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-darwin* | *-cegcc*) + # The PATH hackery in wrapper scripts is required on Windows + # and Darwin in order for the loader to find any dlls it needs. + func_warning "'-no-install' is ignored for $host" + func_warning "assuming '-no-fast-install' instead" + fast_install=no + ;; + *) no_install=yes ;; + esac + continue + ;; + + -no-undefined) + allow_undefined=no + continue + ;; + + -objectlist) + prev=objectlist + continue + ;; + + -os2dllname) + prev=os2dllname + continue + ;; + + -o) prev=output ;; + + -precious-files-regex) + prev=precious_regex + continue + ;; + + -release) + prev=release + continue + ;; + + -rpath) + prev=rpath + continue + ;; + + -R) + prev=xrpath + continue + ;; + + -R*) + func_stripname '-R' '' "$arg" + dir=$func_stripname_result + # We need an absolute path. + case $dir in + [\\/]* | [A-Za-z]:[\\/]*) ;; + =*) + func_stripname '=' '' "$dir" + dir=$lt_sysroot$func_stripname_result + ;; + *) + func_fatal_error "only absolute run-paths are allowed" + ;; + esac + case "$xrpath " in + *" $dir "*) ;; + *) func_append xrpath " $dir" ;; + esac + continue + ;; + + -shared) + # The effects of -shared are defined in a previous loop. + continue + ;; + + -shrext) + prev=shrext + continue + ;; + + -static | -static-libtool-libs) + # The effects of -static are defined in a previous loop. + # We used to do the same as -all-static on platforms that + # didn't have a PIC flag, but the assumption that the effects + # would be equivalent was wrong. It would break on at least + # Digital Unix and AIX. + continue + ;; + + -thread-safe) + thread_safe=yes + continue + ;; + + -version-info) + prev=vinfo + continue + ;; + + -version-number) + prev=vinfo + vinfo_number=yes + continue + ;; + + -weak) + prev=weak + continue + ;; + + -Wc,*) + func_stripname '-Wc,' '' "$arg" + args=$func_stripname_result + arg= + save_ifs=$IFS; IFS=, + for flag in $args; do + IFS=$save_ifs + func_quote_for_eval "$flag" + func_append arg " $func_quote_for_eval_result" + func_append compiler_flags " $func_quote_for_eval_result" + done + IFS=$save_ifs + func_stripname ' ' '' "$arg" + arg=$func_stripname_result + ;; + + -Wl,*) + func_stripname '-Wl,' '' "$arg" + args=$func_stripname_result + arg= + save_ifs=$IFS; IFS=, + for flag in $args; do + IFS=$save_ifs + func_quote_for_eval "$flag" + func_append arg " $wl$func_quote_for_eval_result" + func_append compiler_flags " $wl$func_quote_for_eval_result" + func_append linker_flags " $func_quote_for_eval_result" + done + IFS=$save_ifs + func_stripname ' ' '' "$arg" + arg=$func_stripname_result + ;; + + -Xcompiler) + prev=xcompiler + continue + ;; + + -Xlinker) + prev=xlinker + continue + ;; + + -XCClinker) + prev=xcclinker + continue + ;; + + # -msg_* for osf cc + -msg_*) + func_quote_for_eval "$arg" + arg=$func_quote_for_eval_result + ;; + + # Flags to be passed through unchanged, with rationale: + # -64, -mips[0-9] enable 64-bit mode for the SGI compiler + # -r[0-9][0-9]* specify processor for the SGI compiler + # -xarch=*, -xtarget=* enable 64-bit mode for the Sun compiler + # +DA*, +DD* enable 64-bit mode for the HP compiler + # -q* compiler args for the IBM compiler + # -m*, -t[45]*, -txscale* architecture-specific flags for GCC + # -F/path path to uninstalled frameworks, gcc on darwin + # -p, -pg, --coverage, -fprofile-* profiling flags for GCC + # -fstack-protector* stack protector flags for GCC + # @file GCC response files + # -tp=* Portland pgcc target processor selection + # --sysroot=* for sysroot support + # -O*, -g*, -flto*, -fwhopr*, -fuse-linker-plugin GCC link-time optimization + # -specs=* GCC specs files + # -stdlib=* select c++ std lib with clang + # -fsanitize=* Clang/GCC memory and address sanitizer + -64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*| \ + -t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*|-tp=*|--sysroot=*| \ + -O*|-g*|-flto*|-fwhopr*|-fuse-linker-plugin|-fstack-protector*|-stdlib=*| \ + -specs=*|-fsanitize=*) + func_quote_for_eval "$arg" + arg=$func_quote_for_eval_result + func_append compile_command " $arg" + func_append finalize_command " $arg" + func_append compiler_flags " $arg" + continue + ;; + + -Z*) + if test os2 = "`expr $host : '.*\(os2\)'`"; then + # OS/2 uses -Zxxx to specify OS/2-specific options + compiler_flags="$compiler_flags $arg" + func_append compile_command " $arg" + func_append finalize_command " $arg" + case $arg in + -Zlinker | -Zstack) + prev=xcompiler + ;; + esac + continue + else + # Otherwise treat like 'Some other compiler flag' below + func_quote_for_eval "$arg" + arg=$func_quote_for_eval_result + fi + ;; + + # Some other compiler flag. + -* | +*) + func_quote_for_eval "$arg" + arg=$func_quote_for_eval_result + ;; + + *.$objext) + # A standard object. + func_append objs " $arg" + ;; + + *.lo) + # A libtool-controlled object. + + # Check to see that this really is a libtool object. + if func_lalib_unsafe_p "$arg"; then + pic_object= + non_pic_object= + + # Read the .lo file + func_source "$arg" + + if test -z "$pic_object" || + test -z "$non_pic_object" || + test none = "$pic_object" && + test none = "$non_pic_object"; then + func_fatal_error "cannot find name of object for '$arg'" + fi + + # Extract subdirectory from the argument. + func_dirname "$arg" "/" "" + xdir=$func_dirname_result + + test none = "$pic_object" || { + # Prepend the subdirectory the object is found in. + pic_object=$xdir$pic_object + + if test dlfiles = "$prev"; then + if test yes = "$build_libtool_libs" && test yes = "$dlopen_support"; then + func_append dlfiles " $pic_object" + prev= + continue + else + # If libtool objects are unsupported, then we need to preload. + prev=dlprefiles + fi + fi + + # CHECK ME: I think I busted this. -Ossama + if test dlprefiles = "$prev"; then + # Preload the old-style object. + func_append dlprefiles " $pic_object" + prev= + fi + + # A PIC object. + func_append libobjs " $pic_object" + arg=$pic_object + } + + # Non-PIC object. + if test none != "$non_pic_object"; then + # Prepend the subdirectory the object is found in. + non_pic_object=$xdir$non_pic_object + + # A standard non-PIC object + func_append non_pic_objects " $non_pic_object" + if test -z "$pic_object" || test none = "$pic_object"; then + arg=$non_pic_object + fi + else + # If the PIC object exists, use it instead. + # $xdir was prepended to $pic_object above. + non_pic_object=$pic_object + func_append non_pic_objects " $non_pic_object" + fi + else + # Only an error if not doing a dry-run. + if $opt_dry_run; then + # Extract subdirectory from the argument. + func_dirname "$arg" "/" "" + xdir=$func_dirname_result + + func_lo2o "$arg" + pic_object=$xdir$objdir/$func_lo2o_result + non_pic_object=$xdir$func_lo2o_result + func_append libobjs " $pic_object" + func_append non_pic_objects " $non_pic_object" + else + func_fatal_error "'$arg' is not a valid libtool object" + fi + fi + ;; + + *.$libext) + # An archive. + func_append deplibs " $arg" + func_append old_deplibs " $arg" + continue + ;; + + *.la) + # A libtool-controlled library. + + func_resolve_sysroot "$arg" + if test dlfiles = "$prev"; then + # This library was specified with -dlopen. + func_append dlfiles " $func_resolve_sysroot_result" + prev= + elif test dlprefiles = "$prev"; then + # The library was specified with -dlpreopen. + func_append dlprefiles " $func_resolve_sysroot_result" + prev= + else + func_append deplibs " $func_resolve_sysroot_result" + fi + continue + ;; + + # Some other compiler argument. + *) + # Unknown arguments in both finalize_command and compile_command need + # to be aesthetically quoted because they are evaled later. + func_quote_for_eval "$arg" + arg=$func_quote_for_eval_result + ;; + esac # arg + + # Now actually substitute the argument into the commands. + if test -n "$arg"; then + func_append compile_command " $arg" + func_append finalize_command " $arg" + fi + done # argument parsing loop + + test -n "$prev" && \ + func_fatal_help "the '$prevarg' option requires an argument" + + if test yes = "$export_dynamic" && test -n "$export_dynamic_flag_spec"; then + eval arg=\"$export_dynamic_flag_spec\" + func_append compile_command " $arg" + func_append finalize_command " $arg" + fi + + oldlibs= + # calculate the name of the file, without its directory + func_basename "$output" + outputname=$func_basename_result + libobjs_save=$libobjs + + if test -n "$shlibpath_var"; then + # get the directories listed in $shlibpath_var + eval shlib_search_path=\`\$ECHO \"\$$shlibpath_var\" \| \$SED \'s/:/ /g\'\` + else + shlib_search_path= + fi + eval sys_lib_search_path=\"$sys_lib_search_path_spec\" + eval sys_lib_dlsearch_path=\"$sys_lib_dlsearch_path_spec\" + + # Definition is injected by LT_CONFIG during libtool generation. + func_munge_path_list sys_lib_dlsearch_path "$LT_SYS_LIBRARY_PATH" + + func_dirname "$output" "/" "" + output_objdir=$func_dirname_result$objdir + func_to_tool_file "$output_objdir/" + tool_output_objdir=$func_to_tool_file_result + # Create the object directory. + func_mkdir_p "$output_objdir" + + # Determine the type of output + case $output in + "") + func_fatal_help "you must specify an output file" + ;; + *.$libext) linkmode=oldlib ;; + *.lo | *.$objext) linkmode=obj ;; + *.la) linkmode=lib ;; + *) linkmode=prog ;; # Anything else should be a program. + esac + + specialdeplibs= + + libs= + # Find all interdependent deplibs by searching for libraries + # that are linked more than once (e.g. -la -lb -la) + for deplib in $deplibs; do + if $opt_preserve_dup_deps; then + case "$libs " in + *" $deplib "*) func_append specialdeplibs " $deplib" ;; + esac + fi + func_append libs " $deplib" + done + + if test lib = "$linkmode"; then + libs="$predeps $libs $compiler_lib_search_path $postdeps" + + # Compute libraries that are listed more than once in $predeps + # $postdeps and mark them as special (i.e., whose duplicates are + # not to be eliminated). + pre_post_deps= + if $opt_duplicate_compiler_generated_deps; then + for pre_post_dep in $predeps $postdeps; do + case "$pre_post_deps " in + *" $pre_post_dep "*) func_append specialdeplibs " $pre_post_deps" ;; + esac + func_append pre_post_deps " $pre_post_dep" + done + fi + pre_post_deps= + fi + + deplibs= + newdependency_libs= + newlib_search_path= + need_relink=no # whether we're linking any uninstalled libtool libraries + notinst_deplibs= # not-installed libtool libraries + notinst_path= # paths that contain not-installed libtool libraries + + case $linkmode in + lib) + passes="conv dlpreopen link" + for file in $dlfiles $dlprefiles; do + case $file in + *.la) ;; + *) + func_fatal_help "libraries can '-dlopen' only libtool libraries: $file" + ;; + esac + done + ;; + prog) + compile_deplibs= + finalize_deplibs= + alldeplibs=false + newdlfiles= + newdlprefiles= + passes="conv scan dlopen dlpreopen link" + ;; + *) passes="conv" + ;; + esac + + for pass in $passes; do + # The preopen pass in lib mode reverses $deplibs; put it back here + # so that -L comes before libs that need it for instance... + if test lib,link = "$linkmode,$pass"; then + ## FIXME: Find the place where the list is rebuilt in the wrong + ## order, and fix it there properly + tmp_deplibs= + for deplib in $deplibs; do + tmp_deplibs="$deplib $tmp_deplibs" + done + deplibs=$tmp_deplibs + fi + + if test lib,link = "$linkmode,$pass" || + test prog,scan = "$linkmode,$pass"; then + libs=$deplibs + deplibs= + fi + if test prog = "$linkmode"; then + case $pass in + dlopen) libs=$dlfiles ;; + dlpreopen) libs=$dlprefiles ;; + link) + libs="$deplibs %DEPLIBS%" + test "X$link_all_deplibs" != Xno && libs="$libs $dependency_libs" + ;; + esac + fi + if test lib,dlpreopen = "$linkmode,$pass"; then + # Collect and forward deplibs of preopened libtool libs + for lib in $dlprefiles; do + # Ignore non-libtool-libs + dependency_libs= + func_resolve_sysroot "$lib" + case $lib in + *.la) func_source "$func_resolve_sysroot_result" ;; + esac + + # Collect preopened libtool deplibs, except any this library + # has declared as weak libs + for deplib in $dependency_libs; do + func_basename "$deplib" + deplib_base=$func_basename_result + case " $weak_libs " in + *" $deplib_base "*) ;; + *) func_append deplibs " $deplib" ;; + esac + done + done + libs=$dlprefiles + fi + if test dlopen = "$pass"; then + # Collect dlpreopened libraries + save_deplibs=$deplibs + deplibs= + fi + + for deplib in $libs; do + lib= + found=false + case $deplib in + -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe \ + |-threads|-fopenmp|-openmp|-mp|-xopenmp|-omp|-qsmp=*) + if test prog,link = "$linkmode,$pass"; then + compile_deplibs="$deplib $compile_deplibs" + finalize_deplibs="$deplib $finalize_deplibs" + else + func_append compiler_flags " $deplib" + if test lib = "$linkmode"; then + case "$new_inherited_linker_flags " in + *" $deplib "*) ;; + * ) func_append new_inherited_linker_flags " $deplib" ;; + esac + fi + fi + continue + ;; + -l*) + if test lib != "$linkmode" && test prog != "$linkmode"; then + func_warning "'-l' is ignored for archives/objects" + continue + fi + func_stripname '-l' '' "$deplib" + name=$func_stripname_result + if test lib = "$linkmode"; then + searchdirs="$newlib_search_path $lib_search_path $compiler_lib_search_dirs $sys_lib_search_path $shlib_search_path" + else + searchdirs="$newlib_search_path $lib_search_path $sys_lib_search_path $shlib_search_path" + fi + for searchdir in $searchdirs; do + for search_ext in .la $std_shrext .so .a; do + # Search the libtool library + lib=$searchdir/lib$name$search_ext + if test -f "$lib"; then + if test .la = "$search_ext"; then + found=: + else + found=false + fi + break 2 + fi + done + done + if $found; then + # deplib is a libtool library + # If $allow_libtool_libs_with_static_runtimes && $deplib is a stdlib, + # We need to do some special things here, and not later. + if test yes = "$allow_libtool_libs_with_static_runtimes"; then + case " $predeps $postdeps " in + *" $deplib "*) + if func_lalib_p "$lib"; then + library_names= + old_library= + func_source "$lib" + for l in $old_library $library_names; do + ll=$l + done + if test "X$ll" = "X$old_library"; then # only static version available + found=false + func_dirname "$lib" "" "." + ladir=$func_dirname_result + lib=$ladir/$old_library + if test prog,link = "$linkmode,$pass"; then + compile_deplibs="$deplib $compile_deplibs" + finalize_deplibs="$deplib $finalize_deplibs" + else + deplibs="$deplib $deplibs" + test lib = "$linkmode" && newdependency_libs="$deplib $newdependency_libs" + fi + continue + fi + fi + ;; + *) ;; + esac + fi + else + # deplib doesn't seem to be a libtool library + if test prog,link = "$linkmode,$pass"; then + compile_deplibs="$deplib $compile_deplibs" + finalize_deplibs="$deplib $finalize_deplibs" + else + deplibs="$deplib $deplibs" + test lib = "$linkmode" && newdependency_libs="$deplib $newdependency_libs" + fi + continue + fi + ;; # -l + *.ltframework) + if test prog,link = "$linkmode,$pass"; then + compile_deplibs="$deplib $compile_deplibs" + finalize_deplibs="$deplib $finalize_deplibs" + else + deplibs="$deplib $deplibs" + if test lib = "$linkmode"; then + case "$new_inherited_linker_flags " in + *" $deplib "*) ;; + * ) func_append new_inherited_linker_flags " $deplib" ;; + esac + fi + fi + continue + ;; + -L*) + case $linkmode in + lib) + deplibs="$deplib $deplibs" + test conv = "$pass" && continue + newdependency_libs="$deplib $newdependency_libs" + func_stripname '-L' '' "$deplib" + func_resolve_sysroot "$func_stripname_result" + func_append newlib_search_path " $func_resolve_sysroot_result" + ;; + prog) + if test conv = "$pass"; then + deplibs="$deplib $deplibs" + continue + fi + if test scan = "$pass"; then + deplibs="$deplib $deplibs" + else + compile_deplibs="$deplib $compile_deplibs" + finalize_deplibs="$deplib $finalize_deplibs" + fi + func_stripname '-L' '' "$deplib" + func_resolve_sysroot "$func_stripname_result" + func_append newlib_search_path " $func_resolve_sysroot_result" + ;; + *) + func_warning "'-L' is ignored for archives/objects" + ;; + esac # linkmode + continue + ;; # -L + -R*) + if test link = "$pass"; then + func_stripname '-R' '' "$deplib" + func_resolve_sysroot "$func_stripname_result" + dir=$func_resolve_sysroot_result + # Make sure the xrpath contains only unique directories. + case "$xrpath " in + *" $dir "*) ;; + *) func_append xrpath " $dir" ;; + esac + fi + deplibs="$deplib $deplibs" + continue + ;; + *.la) + func_resolve_sysroot "$deplib" + lib=$func_resolve_sysroot_result + ;; + *.$libext) + if test conv = "$pass"; then + deplibs="$deplib $deplibs" + continue + fi + case $linkmode in + lib) + # Linking convenience modules into shared libraries is allowed, + # but linking other static libraries is non-portable. + case " $dlpreconveniencelibs " in + *" $deplib "*) ;; + *) + valid_a_lib=false + case $deplibs_check_method in + match_pattern*) + set dummy $deplibs_check_method; shift + match_pattern_regex=`expr "$deplibs_check_method" : "$1 \(.*\)"` + if eval "\$ECHO \"$deplib\"" 2>/dev/null | $SED 10q \ + | $EGREP "$match_pattern_regex" > /dev/null; then + valid_a_lib=: + fi + ;; + pass_all) + valid_a_lib=: + ;; + esac + if $valid_a_lib; then + echo + $ECHO "*** Warning: Linking the shared library $output against the" + $ECHO "*** static library $deplib is not portable!" + deplibs="$deplib $deplibs" + else + echo + $ECHO "*** Warning: Trying to link with static lib archive $deplib." + echo "*** I have the capability to make that library automatically link in when" + echo "*** you link to this library. But I can only do this if you have a" + echo "*** shared version of the library, which you do not appear to have" + echo "*** because the file extensions .$libext of this argument makes me believe" + echo "*** that it is just a static archive that I should not use here." + fi + ;; + esac + continue + ;; + prog) + if test link != "$pass"; then + deplibs="$deplib $deplibs" + else + compile_deplibs="$deplib $compile_deplibs" + finalize_deplibs="$deplib $finalize_deplibs" + fi + continue + ;; + esac # linkmode + ;; # *.$libext + *.lo | *.$objext) + if test conv = "$pass"; then + deplibs="$deplib $deplibs" + elif test prog = "$linkmode"; then + if test dlpreopen = "$pass" || test yes != "$dlopen_support" || test no = "$build_libtool_libs"; then + # If there is no dlopen support or we're linking statically, + # we need to preload. + func_append newdlprefiles " $deplib" + compile_deplibs="$deplib $compile_deplibs" + finalize_deplibs="$deplib $finalize_deplibs" + else + func_append newdlfiles " $deplib" + fi + fi + continue + ;; + %DEPLIBS%) + alldeplibs=: + continue + ;; + esac # case $deplib + + $found || test -f "$lib" \ + || func_fatal_error "cannot find the library '$lib' or unhandled argument '$deplib'" + + # Check to see that this really is a libtool archive. + func_lalib_unsafe_p "$lib" \ + || func_fatal_error "'$lib' is not a valid libtool archive" + + func_dirname "$lib" "" "." + ladir=$func_dirname_result + + dlname= + dlopen= + dlpreopen= + libdir= + library_names= + old_library= + inherited_linker_flags= + # If the library was installed with an old release of libtool, + # it will not redefine variables installed, or shouldnotlink + installed=yes + shouldnotlink=no + avoidtemprpath= + + + # Read the .la file + func_source "$lib" + + # Convert "-framework foo" to "foo.ltframework" + if test -n "$inherited_linker_flags"; then + tmp_inherited_linker_flags=`$ECHO "$inherited_linker_flags" | $SED 's/-framework \([^ $]*\)/\1.ltframework/g'` + for tmp_inherited_linker_flag in $tmp_inherited_linker_flags; do + case " $new_inherited_linker_flags " in + *" $tmp_inherited_linker_flag "*) ;; + *) func_append new_inherited_linker_flags " $tmp_inherited_linker_flag";; + esac + done + fi + dependency_libs=`$ECHO " $dependency_libs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` + if test lib,link = "$linkmode,$pass" || + test prog,scan = "$linkmode,$pass" || + { test prog != "$linkmode" && test lib != "$linkmode"; }; then + test -n "$dlopen" && func_append dlfiles " $dlopen" + test -n "$dlpreopen" && func_append dlprefiles " $dlpreopen" + fi + + if test conv = "$pass"; then + # Only check for convenience libraries + deplibs="$lib $deplibs" + if test -z "$libdir"; then + if test -z "$old_library"; then + func_fatal_error "cannot find name of link library for '$lib'" + fi + # It is a libtool convenience library, so add in its objects. + func_append convenience " $ladir/$objdir/$old_library" + func_append old_convenience " $ladir/$objdir/$old_library" + tmp_libs= + for deplib in $dependency_libs; do + deplibs="$deplib $deplibs" + if $opt_preserve_dup_deps; then + case "$tmp_libs " in + *" $deplib "*) func_append specialdeplibs " $deplib" ;; + esac + fi + func_append tmp_libs " $deplib" + done + elif test prog != "$linkmode" && test lib != "$linkmode"; then + func_fatal_error "'$lib' is not a convenience library" + fi + continue + fi # $pass = conv + + + # Get the name of the library we link against. + linklib= + if test -n "$old_library" && + { test yes = "$prefer_static_libs" || + test built,no = "$prefer_static_libs,$installed"; }; then + linklib=$old_library + else + for l in $old_library $library_names; do + linklib=$l + done + fi + if test -z "$linklib"; then + func_fatal_error "cannot find name of link library for '$lib'" + fi + + # This library was specified with -dlopen. + if test dlopen = "$pass"; then + test -z "$libdir" \ + && func_fatal_error "cannot -dlopen a convenience library: '$lib'" + if test -z "$dlname" || + test yes != "$dlopen_support" || + test no = "$build_libtool_libs" + then + # If there is no dlname, no dlopen support or we're linking + # statically, we need to preload. We also need to preload any + # dependent libraries so libltdl's deplib preloader doesn't + # bomb out in the load deplibs phase. + func_append dlprefiles " $lib $dependency_libs" + else + func_append newdlfiles " $lib" + fi + continue + fi # $pass = dlopen + + # We need an absolute path. + case $ladir in + [\\/]* | [A-Za-z]:[\\/]*) abs_ladir=$ladir ;; + *) + abs_ladir=`cd "$ladir" && pwd` + if test -z "$abs_ladir"; then + func_warning "cannot determine absolute directory name of '$ladir'" + func_warning "passing it literally to the linker, although it might fail" + abs_ladir=$ladir + fi + ;; + esac + func_basename "$lib" + laname=$func_basename_result + + # Find the relevant object directory and library name. + if test yes = "$installed"; then + if test ! -f "$lt_sysroot$libdir/$linklib" && test -f "$abs_ladir/$linklib"; then + func_warning "library '$lib' was moved." + dir=$ladir + absdir=$abs_ladir + libdir=$abs_ladir + else + dir=$lt_sysroot$libdir + absdir=$lt_sysroot$libdir + fi + test yes = "$hardcode_automatic" && avoidtemprpath=yes + else + if test ! -f "$ladir/$objdir/$linklib" && test -f "$abs_ladir/$linklib"; then + dir=$ladir + absdir=$abs_ladir + # Remove this search path later + func_append notinst_path " $abs_ladir" + else + dir=$ladir/$objdir + absdir=$abs_ladir/$objdir + # Remove this search path later + func_append notinst_path " $abs_ladir" + fi + fi # $installed = yes + func_stripname 'lib' '.la' "$laname" + name=$func_stripname_result + + # This library was specified with -dlpreopen. + if test dlpreopen = "$pass"; then + if test -z "$libdir" && test prog = "$linkmode"; then + func_fatal_error "only libraries may -dlpreopen a convenience library: '$lib'" + fi + case $host in + # special handling for platforms with PE-DLLs. + *cygwin* | *mingw* | *cegcc* ) + # Linker will automatically link against shared library if both + # static and shared are present. Therefore, ensure we extract + # symbols from the import library if a shared library is present + # (otherwise, the dlopen module name will be incorrect). We do + # this by putting the import library name into $newdlprefiles. + # We recover the dlopen module name by 'saving' the la file + # name in a special purpose variable, and (later) extracting the + # dlname from the la file. + if test -n "$dlname"; then + func_tr_sh "$dir/$linklib" + eval "libfile_$func_tr_sh_result=\$abs_ladir/\$laname" + func_append newdlprefiles " $dir/$linklib" + else + func_append newdlprefiles " $dir/$old_library" + # Keep a list of preopened convenience libraries to check + # that they are being used correctly in the link pass. + test -z "$libdir" && \ + func_append dlpreconveniencelibs " $dir/$old_library" + fi + ;; + * ) + # Prefer using a static library (so that no silly _DYNAMIC symbols + # are required to link). + if test -n "$old_library"; then + func_append newdlprefiles " $dir/$old_library" + # Keep a list of preopened convenience libraries to check + # that they are being used correctly in the link pass. + test -z "$libdir" && \ + func_append dlpreconveniencelibs " $dir/$old_library" + # Otherwise, use the dlname, so that lt_dlopen finds it. + elif test -n "$dlname"; then + func_append newdlprefiles " $dir/$dlname" + else + func_append newdlprefiles " $dir/$linklib" + fi + ;; + esac + fi # $pass = dlpreopen + + if test -z "$libdir"; then + # Link the convenience library + if test lib = "$linkmode"; then + deplibs="$dir/$old_library $deplibs" + elif test prog,link = "$linkmode,$pass"; then + compile_deplibs="$dir/$old_library $compile_deplibs" + finalize_deplibs="$dir/$old_library $finalize_deplibs" + else + deplibs="$lib $deplibs" # used for prog,scan pass + fi + continue + fi + + + if test prog = "$linkmode" && test link != "$pass"; then + func_append newlib_search_path " $ladir" + deplibs="$lib $deplibs" + + linkalldeplibs=false + if test no != "$link_all_deplibs" || test -z "$library_names" || + test no = "$build_libtool_libs"; then + linkalldeplibs=: + fi + + tmp_libs= + for deplib in $dependency_libs; do + case $deplib in + -L*) func_stripname '-L' '' "$deplib" + func_resolve_sysroot "$func_stripname_result" + func_append newlib_search_path " $func_resolve_sysroot_result" + ;; + esac + # Need to link against all dependency_libs? + if $linkalldeplibs; then + deplibs="$deplib $deplibs" + else + # Need to hardcode shared library paths + # or/and link against static libraries + newdependency_libs="$deplib $newdependency_libs" + fi + if $opt_preserve_dup_deps; then + case "$tmp_libs " in + *" $deplib "*) func_append specialdeplibs " $deplib" ;; + esac + fi + func_append tmp_libs " $deplib" + done # for deplib + continue + fi # $linkmode = prog... + + if test prog,link = "$linkmode,$pass"; then + if test -n "$library_names" && + { { test no = "$prefer_static_libs" || + test built,yes = "$prefer_static_libs,$installed"; } || + test -z "$old_library"; }; then + # We need to hardcode the library path + if test -n "$shlibpath_var" && test -z "$avoidtemprpath"; then + # Make sure the rpath contains only unique directories. + case $temp_rpath: in + *"$absdir:"*) ;; + *) func_append temp_rpath "$absdir:" ;; + esac + fi + + # Hardcode the library path. + # Skip directories that are in the system default run-time + # search path. + case " $sys_lib_dlsearch_path " in + *" $absdir "*) ;; + *) + case "$compile_rpath " in + *" $absdir "*) ;; + *) func_append compile_rpath " $absdir" ;; + esac + ;; + esac + case " $sys_lib_dlsearch_path " in + *" $libdir "*) ;; + *) + case "$finalize_rpath " in + *" $libdir "*) ;; + *) func_append finalize_rpath " $libdir" ;; + esac + ;; + esac + fi # $linkmode,$pass = prog,link... + + if $alldeplibs && + { test pass_all = "$deplibs_check_method" || + { test yes = "$build_libtool_libs" && + test -n "$library_names"; }; }; then + # We only need to search for static libraries + continue + fi + fi + + link_static=no # Whether the deplib will be linked statically + use_static_libs=$prefer_static_libs + if test built = "$use_static_libs" && test yes = "$installed"; then + use_static_libs=no + fi + if test -n "$library_names" && + { test no = "$use_static_libs" || test -z "$old_library"; }; then + case $host in + *cygwin* | *mingw* | *cegcc* | *os2*) + # No point in relinking DLLs because paths are not encoded + func_append notinst_deplibs " $lib" + need_relink=no + ;; + *) + if test no = "$installed"; then + func_append notinst_deplibs " $lib" + need_relink=yes + fi + ;; + esac + # This is a shared library + + # Warn about portability, can't link against -module's on some + # systems (darwin). Don't bleat about dlopened modules though! + dlopenmodule= + for dlpremoduletest in $dlprefiles; do + if test "X$dlpremoduletest" = "X$lib"; then + dlopenmodule=$dlpremoduletest + break + fi + done + if test -z "$dlopenmodule" && test yes = "$shouldnotlink" && test link = "$pass"; then + echo + if test prog = "$linkmode"; then + $ECHO "*** Warning: Linking the executable $output against the loadable module" + else + $ECHO "*** Warning: Linking the shared library $output against the loadable module" + fi + $ECHO "*** $linklib is not portable!" + fi + if test lib = "$linkmode" && + test yes = "$hardcode_into_libs"; then + # Hardcode the library path. + # Skip directories that are in the system default run-time + # search path. + case " $sys_lib_dlsearch_path " in + *" $absdir "*) ;; + *) + case "$compile_rpath " in + *" $absdir "*) ;; + *) func_append compile_rpath " $absdir" ;; + esac + ;; + esac + case " $sys_lib_dlsearch_path " in + *" $libdir "*) ;; + *) + case "$finalize_rpath " in + *" $libdir "*) ;; + *) func_append finalize_rpath " $libdir" ;; + esac + ;; + esac + fi + + if test -n "$old_archive_from_expsyms_cmds"; then + # figure out the soname + set dummy $library_names + shift + realname=$1 + shift + libname=`eval "\\$ECHO \"$libname_spec\""` + # use dlname if we got it. it's perfectly good, no? + if test -n "$dlname"; then + soname=$dlname + elif test -n "$soname_spec"; then + # bleh windows + case $host in + *cygwin* | mingw* | *cegcc* | *os2*) + func_arith $current - $age + major=$func_arith_result + versuffix=-$major + ;; + esac + eval soname=\"$soname_spec\" + else + soname=$realname + fi + + # Make a new name for the extract_expsyms_cmds to use + soroot=$soname + func_basename "$soroot" + soname=$func_basename_result + func_stripname 'lib' '.dll' "$soname" + newlib=libimp-$func_stripname_result.a + + # If the library has no export list, then create one now + if test -f "$output_objdir/$soname-def"; then : + else + func_verbose "extracting exported symbol list from '$soname'" + func_execute_cmds "$extract_expsyms_cmds" 'exit $?' + fi + + # Create $newlib + if test -f "$output_objdir/$newlib"; then :; else + func_verbose "generating import library for '$soname'" + func_execute_cmds "$old_archive_from_expsyms_cmds" 'exit $?' + fi + # make sure the library variables are pointing to the new library + dir=$output_objdir + linklib=$newlib + fi # test -n "$old_archive_from_expsyms_cmds" + + if test prog = "$linkmode" || test relink != "$opt_mode"; then + add_shlibpath= + add_dir= + add= + lib_linked=yes + case $hardcode_action in + immediate | unsupported) + if test no = "$hardcode_direct"; then + add=$dir/$linklib + case $host in + *-*-sco3.2v5.0.[024]*) add_dir=-L$dir ;; + *-*-sysv4*uw2*) add_dir=-L$dir ;; + *-*-sysv5OpenUNIX* | *-*-sysv5UnixWare7.[01].[10]* | \ + *-*-unixware7*) add_dir=-L$dir ;; + *-*-darwin* ) + # if the lib is a (non-dlopened) module then we cannot + # link against it, someone is ignoring the earlier warnings + if /usr/bin/file -L $add 2> /dev/null | + $GREP ": [^:]* bundle" >/dev/null; then + if test "X$dlopenmodule" != "X$lib"; then + $ECHO "*** Warning: lib $linklib is a module, not a shared library" + if test -z "$old_library"; then + echo + echo "*** And there doesn't seem to be a static archive available" + echo "*** The link will probably fail, sorry" + else + add=$dir/$old_library + fi + elif test -n "$old_library"; then + add=$dir/$old_library + fi + fi + esac + elif test no = "$hardcode_minus_L"; then + case $host in + *-*-sunos*) add_shlibpath=$dir ;; + esac + add_dir=-L$dir + add=-l$name + elif test no = "$hardcode_shlibpath_var"; then + add_shlibpath=$dir + add=-l$name + else + lib_linked=no + fi + ;; + relink) + if test yes = "$hardcode_direct" && + test no = "$hardcode_direct_absolute"; then + add=$dir/$linklib + elif test yes = "$hardcode_minus_L"; then + add_dir=-L$absdir + # Try looking first in the location we're being installed to. + if test -n "$inst_prefix_dir"; then + case $libdir in + [\\/]*) + func_append add_dir " -L$inst_prefix_dir$libdir" + ;; + esac + fi + add=-l$name + elif test yes = "$hardcode_shlibpath_var"; then + add_shlibpath=$dir + add=-l$name + else + lib_linked=no + fi + ;; + *) lib_linked=no ;; + esac + + if test yes != "$lib_linked"; then + func_fatal_configuration "unsupported hardcode properties" + fi + + if test -n "$add_shlibpath"; then + case :$compile_shlibpath: in + *":$add_shlibpath:"*) ;; + *) func_append compile_shlibpath "$add_shlibpath:" ;; + esac + fi + if test prog = "$linkmode"; then + test -n "$add_dir" && compile_deplibs="$add_dir $compile_deplibs" + test -n "$add" && compile_deplibs="$add $compile_deplibs" + else + test -n "$add_dir" && deplibs="$add_dir $deplibs" + test -n "$add" && deplibs="$add $deplibs" + if test yes != "$hardcode_direct" && + test yes != "$hardcode_minus_L" && + test yes = "$hardcode_shlibpath_var"; then + case :$finalize_shlibpath: in + *":$libdir:"*) ;; + *) func_append finalize_shlibpath "$libdir:" ;; + esac + fi + fi + fi + + if test prog = "$linkmode" || test relink = "$opt_mode"; then + add_shlibpath= + add_dir= + add= + # Finalize command for both is simple: just hardcode it. + if test yes = "$hardcode_direct" && + test no = "$hardcode_direct_absolute"; then + add=$libdir/$linklib + elif test yes = "$hardcode_minus_L"; then + add_dir=-L$libdir + add=-l$name + elif test yes = "$hardcode_shlibpath_var"; then + case :$finalize_shlibpath: in + *":$libdir:"*) ;; + *) func_append finalize_shlibpath "$libdir:" ;; + esac + add=-l$name + elif test yes = "$hardcode_automatic"; then + if test -n "$inst_prefix_dir" && + test -f "$inst_prefix_dir$libdir/$linklib"; then + add=$inst_prefix_dir$libdir/$linklib + else + add=$libdir/$linklib + fi + else + # We cannot seem to hardcode it, guess we'll fake it. + add_dir=-L$libdir + # Try looking first in the location we're being installed to. + if test -n "$inst_prefix_dir"; then + case $libdir in + [\\/]*) + func_append add_dir " -L$inst_prefix_dir$libdir" + ;; + esac + fi + add=-l$name + fi + + if test prog = "$linkmode"; then + test -n "$add_dir" && finalize_deplibs="$add_dir $finalize_deplibs" + test -n "$add" && finalize_deplibs="$add $finalize_deplibs" + else + test -n "$add_dir" && deplibs="$add_dir $deplibs" + test -n "$add" && deplibs="$add $deplibs" + fi + fi + elif test prog = "$linkmode"; then + # Here we assume that one of hardcode_direct or hardcode_minus_L + # is not unsupported. This is valid on all known static and + # shared platforms. + if test unsupported != "$hardcode_direct"; then + test -n "$old_library" && linklib=$old_library + compile_deplibs="$dir/$linklib $compile_deplibs" + finalize_deplibs="$dir/$linklib $finalize_deplibs" + else + compile_deplibs="-l$name -L$dir $compile_deplibs" + finalize_deplibs="-l$name -L$dir $finalize_deplibs" + fi + elif test yes = "$build_libtool_libs"; then + # Not a shared library + if test pass_all != "$deplibs_check_method"; then + # We're trying link a shared library against a static one + # but the system doesn't support it. + + # Just print a warning and add the library to dependency_libs so + # that the program can be linked against the static library. + echo + $ECHO "*** Warning: This system cannot link to static lib archive $lib." + echo "*** I have the capability to make that library automatically link in when" + echo "*** you link to this library. But I can only do this if you have a" + echo "*** shared version of the library, which you do not appear to have." + if test yes = "$module"; then + echo "*** But as you try to build a module library, libtool will still create " + echo "*** a static module, that should work as long as the dlopening application" + echo "*** is linked with the -dlopen flag to resolve symbols at runtime." + if test -z "$global_symbol_pipe"; then + echo + echo "*** However, this would only work if libtool was able to extract symbol" + echo "*** lists from a program, using 'nm' or equivalent, but libtool could" + echo "*** not find such a program. So, this module is probably useless." + echo "*** 'nm' from GNU binutils and a full rebuild may help." + fi + if test no = "$build_old_libs"; then + build_libtool_libs=module + build_old_libs=yes + else + build_libtool_libs=no + fi + fi + else + deplibs="$dir/$old_library $deplibs" + link_static=yes + fi + fi # link shared/static library? + + if test lib = "$linkmode"; then + if test -n "$dependency_libs" && + { test yes != "$hardcode_into_libs" || + test yes = "$build_old_libs" || + test yes = "$link_static"; }; then + # Extract -R from dependency_libs + temp_deplibs= + for libdir in $dependency_libs; do + case $libdir in + -R*) func_stripname '-R' '' "$libdir" + temp_xrpath=$func_stripname_result + case " $xrpath " in + *" $temp_xrpath "*) ;; + *) func_append xrpath " $temp_xrpath";; + esac;; + *) func_append temp_deplibs " $libdir";; + esac + done + dependency_libs=$temp_deplibs + fi + + func_append newlib_search_path " $absdir" + # Link against this library + test no = "$link_static" && newdependency_libs="$abs_ladir/$laname $newdependency_libs" + # ... and its dependency_libs + tmp_libs= + for deplib in $dependency_libs; do + newdependency_libs="$deplib $newdependency_libs" + case $deplib in + -L*) func_stripname '-L' '' "$deplib" + func_resolve_sysroot "$func_stripname_result";; + *) func_resolve_sysroot "$deplib" ;; + esac + if $opt_preserve_dup_deps; then + case "$tmp_libs " in + *" $func_resolve_sysroot_result "*) + func_append specialdeplibs " $func_resolve_sysroot_result" ;; + esac + fi + func_append tmp_libs " $func_resolve_sysroot_result" + done + + if test no != "$link_all_deplibs"; then + # Add the search paths of all dependency libraries + for deplib in $dependency_libs; do + path= + case $deplib in + -L*) path=$deplib ;; + *.la) + func_resolve_sysroot "$deplib" + deplib=$func_resolve_sysroot_result + func_dirname "$deplib" "" "." + dir=$func_dirname_result + # We need an absolute path. + case $dir in + [\\/]* | [A-Za-z]:[\\/]*) absdir=$dir ;; + *) + absdir=`cd "$dir" && pwd` + if test -z "$absdir"; then + func_warning "cannot determine absolute directory name of '$dir'" + absdir=$dir + fi + ;; + esac + if $GREP "^installed=no" $deplib > /dev/null; then + case $host in + *-*-darwin*) + depdepl= + eval deplibrary_names=`$SED -n -e 's/^library_names=\(.*\)$/\1/p' $deplib` + if test -n "$deplibrary_names"; then + for tmp in $deplibrary_names; do + depdepl=$tmp + done + if test -f "$absdir/$objdir/$depdepl"; then + depdepl=$absdir/$objdir/$depdepl + darwin_install_name=`$OTOOL -L $depdepl | awk '{if (NR == 2) {print $1;exit}}'` + if test -z "$darwin_install_name"; then + darwin_install_name=`$OTOOL64 -L $depdepl | awk '{if (NR == 2) {print $1;exit}}'` + fi + func_append compiler_flags " $wl-dylib_file $wl$darwin_install_name:$depdepl" + func_append linker_flags " -dylib_file $darwin_install_name:$depdepl" + path= + fi + fi + ;; + *) + path=-L$absdir/$objdir + ;; + esac + else + eval libdir=`$SED -n -e 's/^libdir=\(.*\)$/\1/p' $deplib` + test -z "$libdir" && \ + func_fatal_error "'$deplib' is not a valid libtool archive" + test "$absdir" != "$libdir" && \ + func_warning "'$deplib' seems to be moved" + + path=-L$absdir + fi + ;; + esac + case " $deplibs " in + *" $path "*) ;; + *) deplibs="$path $deplibs" ;; + esac + done + fi # link_all_deplibs != no + fi # linkmode = lib + done # for deplib in $libs + if test link = "$pass"; then + if test prog = "$linkmode"; then + compile_deplibs="$new_inherited_linker_flags $compile_deplibs" + finalize_deplibs="$new_inherited_linker_flags $finalize_deplibs" + else + compiler_flags="$compiler_flags "`$ECHO " $new_inherited_linker_flags" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` + fi + fi + dependency_libs=$newdependency_libs + if test dlpreopen = "$pass"; then + # Link the dlpreopened libraries before other libraries + for deplib in $save_deplibs; do + deplibs="$deplib $deplibs" + done + fi + if test dlopen != "$pass"; then + test conv = "$pass" || { + # Make sure lib_search_path contains only unique directories. + lib_search_path= + for dir in $newlib_search_path; do + case "$lib_search_path " in + *" $dir "*) ;; + *) func_append lib_search_path " $dir" ;; + esac + done + newlib_search_path= + } + + if test prog,link = "$linkmode,$pass"; then + vars="compile_deplibs finalize_deplibs" + else + vars=deplibs + fi + for var in $vars dependency_libs; do + # Add libraries to $var in reverse order + eval tmp_libs=\"\$$var\" + new_libs= + for deplib in $tmp_libs; do + # FIXME: Pedantically, this is the right thing to do, so + # that some nasty dependency loop isn't accidentally + # broken: + #new_libs="$deplib $new_libs" + # Pragmatically, this seems to cause very few problems in + # practice: + case $deplib in + -L*) new_libs="$deplib $new_libs" ;; + -R*) ;; + *) + # And here is the reason: when a library appears more + # than once as an explicit dependence of a library, or + # is implicitly linked in more than once by the + # compiler, it is considered special, and multiple + # occurrences thereof are not removed. Compare this + # with having the same library being listed as a + # dependency of multiple other libraries: in this case, + # we know (pedantically, we assume) the library does not + # need to be listed more than once, so we keep only the + # last copy. This is not always right, but it is rare + # enough that we require users that really mean to play + # such unportable linking tricks to link the library + # using -Wl,-lname, so that libtool does not consider it + # for duplicate removal. + case " $specialdeplibs " in + *" $deplib "*) new_libs="$deplib $new_libs" ;; + *) + case " $new_libs " in + *" $deplib "*) ;; + *) new_libs="$deplib $new_libs" ;; + esac + ;; + esac + ;; + esac + done + tmp_libs= + for deplib in $new_libs; do + case $deplib in + -L*) + case " $tmp_libs " in + *" $deplib "*) ;; + *) func_append tmp_libs " $deplib" ;; + esac + ;; + *) func_append tmp_libs " $deplib" ;; + esac + done + eval $var=\"$tmp_libs\" + done # for var + fi + + # Add Sun CC postdeps if required: + test CXX = "$tagname" && { + case $host_os in + linux*) + case `$CC -V 2>&1 | sed 5q` in + *Sun\ C*) # Sun C++ 5.9 + func_suncc_cstd_abi + + if test no != "$suncc_use_cstd_abi"; then + func_append postdeps ' -library=Cstd -library=Crun' + fi + ;; + esac + ;; + + solaris*) + func_cc_basename "$CC" + case $func_cc_basename_result in + CC* | sunCC*) + func_suncc_cstd_abi + + if test no != "$suncc_use_cstd_abi"; then + func_append postdeps ' -library=Cstd -library=Crun' + fi + ;; + esac + ;; + esac + } + + # Last step: remove runtime libs from dependency_libs + # (they stay in deplibs) + tmp_libs= + for i in $dependency_libs; do + case " $predeps $postdeps $compiler_lib_search_path " in + *" $i "*) + i= + ;; + esac + if test -n "$i"; then + func_append tmp_libs " $i" + fi + done + dependency_libs=$tmp_libs + done # for pass + if test prog = "$linkmode"; then + dlfiles=$newdlfiles + fi + if test prog = "$linkmode" || test lib = "$linkmode"; then + dlprefiles=$newdlprefiles + fi + + case $linkmode in + oldlib) + if test -n "$dlfiles$dlprefiles" || test no != "$dlself"; then + func_warning "'-dlopen' is ignored for archives" + fi + + case " $deplibs" in + *\ -l* | *\ -L*) + func_warning "'-l' and '-L' are ignored for archives" ;; + esac + + test -n "$rpath" && \ + func_warning "'-rpath' is ignored for archives" + + test -n "$xrpath" && \ + func_warning "'-R' is ignored for archives" + + test -n "$vinfo" && \ + func_warning "'-version-info/-version-number' is ignored for archives" + + test -n "$release" && \ + func_warning "'-release' is ignored for archives" + + test -n "$export_symbols$export_symbols_regex" && \ + func_warning "'-export-symbols' is ignored for archives" + + # Now set the variables for building old libraries. + build_libtool_libs=no + oldlibs=$output + func_append objs "$old_deplibs" + ;; + + lib) + # Make sure we only generate libraries of the form 'libNAME.la'. + case $outputname in + lib*) + func_stripname 'lib' '.la' "$outputname" + name=$func_stripname_result + eval shared_ext=\"$shrext_cmds\" + eval libname=\"$libname_spec\" + ;; + *) + test no = "$module" \ + && func_fatal_help "libtool library '$output' must begin with 'lib'" + + if test no != "$need_lib_prefix"; then + # Add the "lib" prefix for modules if required + func_stripname '' '.la' "$outputname" + name=$func_stripname_result + eval shared_ext=\"$shrext_cmds\" + eval libname=\"$libname_spec\" + else + func_stripname '' '.la' "$outputname" + libname=$func_stripname_result + fi + ;; + esac + + if test -n "$objs"; then + if test pass_all != "$deplibs_check_method"; then + func_fatal_error "cannot build libtool library '$output' from non-libtool objects on this host:$objs" + else + echo + $ECHO "*** Warning: Linking the shared library $output against the non-libtool" + $ECHO "*** objects $objs is not portable!" + func_append libobjs " $objs" + fi + fi + + test no = "$dlself" \ + || func_warning "'-dlopen self' is ignored for libtool libraries" + + set dummy $rpath + shift + test 1 -lt "$#" \ + && func_warning "ignoring multiple '-rpath's for a libtool library" + + install_libdir=$1 + + oldlibs= + if test -z "$rpath"; then + if test yes = "$build_libtool_libs"; then + # Building a libtool convenience library. + # Some compilers have problems with a '.al' extension so + # convenience libraries should have the same extension an + # archive normally would. + oldlibs="$output_objdir/$libname.$libext $oldlibs" + build_libtool_libs=convenience + build_old_libs=yes + fi + + test -n "$vinfo" && \ + func_warning "'-version-info/-version-number' is ignored for convenience libraries" + + test -n "$release" && \ + func_warning "'-release' is ignored for convenience libraries" + else + + # Parse the version information argument. + save_ifs=$IFS; IFS=: + set dummy $vinfo 0 0 0 + shift + IFS=$save_ifs + + test -n "$7" && \ + func_fatal_help "too many parameters to '-version-info'" + + # convert absolute version numbers to libtool ages + # this retains compatibility with .la files and attempts + # to make the code below a bit more comprehensible + + case $vinfo_number in + yes) + number_major=$1 + number_minor=$2 + number_revision=$3 + # + # There are really only two kinds -- those that + # use the current revision as the major version + # and those that subtract age and use age as + # a minor version. But, then there is irix + # that has an extra 1 added just for fun + # + case $version_type in + # correct linux to gnu/linux during the next big refactor + darwin|freebsd-elf|linux|osf|windows|none) + func_arith $number_major + $number_minor + current=$func_arith_result + age=$number_minor + revision=$number_revision + ;; + freebsd-aout|qnx|sunos) + current=$number_major + revision=$number_minor + age=0 + ;; + irix|nonstopux) + func_arith $number_major + $number_minor + current=$func_arith_result + age=$number_minor + revision=$number_minor + lt_irix_increment=no + ;; + *) + func_fatal_configuration "$modename: unknown library version type '$version_type'" + ;; + esac + ;; + no) + current=$1 + revision=$2 + age=$3 + ;; + esac + + # Check that each of the things are valid numbers. + case $current in + 0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;; + *) + func_error "CURRENT '$current' must be a nonnegative integer" + func_fatal_error "'$vinfo' is not valid version information" + ;; + esac + + case $revision in + 0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;; + *) + func_error "REVISION '$revision' must be a nonnegative integer" + func_fatal_error "'$vinfo' is not valid version information" + ;; + esac + + case $age in + 0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;; + *) + func_error "AGE '$age' must be a nonnegative integer" + func_fatal_error "'$vinfo' is not valid version information" + ;; + esac + + if test "$age" -gt "$current"; then + func_error "AGE '$age' is greater than the current interface number '$current'" + func_fatal_error "'$vinfo' is not valid version information" + fi + + # Calculate the version variables. + major= + versuffix= + verstring= + case $version_type in + none) ;; + + darwin) + # Like Linux, but with the current version available in + # verstring for coding it into the library header + func_arith $current - $age + major=.$func_arith_result + versuffix=$major.$age.$revision + # Darwin ld doesn't like 0 for these options... + func_arith $current + 1 + minor_current=$func_arith_result + xlcverstring="$wl-compatibility_version $wl$minor_current $wl-current_version $wl$minor_current.$revision" + verstring="-compatibility_version $minor_current -current_version $minor_current.$revision" + # On Darwin other compilers + case $CC in + nagfor*) + verstring="$wl-compatibility_version $wl$minor_current $wl-current_version $wl$minor_current.$revision" + ;; + *) + verstring="-compatibility_version $minor_current -current_version $minor_current.$revision" + ;; + esac + ;; + + freebsd-aout) + major=.$current + versuffix=.$current.$revision + ;; + + freebsd-elf) + func_arith $current - $age + major=.$func_arith_result + versuffix=$major.$age.$revision + ;; + + irix | nonstopux) + if test no = "$lt_irix_increment"; then + func_arith $current - $age + else + func_arith $current - $age + 1 + fi + major=$func_arith_result + + case $version_type in + nonstopux) verstring_prefix=nonstopux ;; + *) verstring_prefix=sgi ;; + esac + verstring=$verstring_prefix$major.$revision + + # Add in all the interfaces that we are compatible with. + loop=$revision + while test 0 -ne "$loop"; do + func_arith $revision - $loop + iface=$func_arith_result + func_arith $loop - 1 + loop=$func_arith_result + verstring=$verstring_prefix$major.$iface:$verstring + done + + # Before this point, $major must not contain '.'. + major=.$major + versuffix=$major.$revision + ;; + + linux) # correct to gnu/linux during the next big refactor + func_arith $current - $age + major=.$func_arith_result + versuffix=$major.$age.$revision + ;; + + osf) + func_arith $current - $age + major=.$func_arith_result + versuffix=.$current.$age.$revision + verstring=$current.$age.$revision + + # Add in all the interfaces that we are compatible with. + loop=$age + while test 0 -ne "$loop"; do + func_arith $current - $loop + iface=$func_arith_result + func_arith $loop - 1 + loop=$func_arith_result + verstring=$verstring:$iface.0 + done + + # Make executables depend on our current version. + func_append verstring ":$current.0" + ;; + + qnx) + major=.$current + versuffix=.$current + ;; + + sco) + major=.$current + versuffix=.$current + ;; + + sunos) + major=.$current + versuffix=.$current.$revision + ;; + + windows) + # Use '-' rather than '.', since we only want one + # extension on DOS 8.3 file systems. + func_arith $current - $age + major=$func_arith_result + versuffix=-$major + ;; + + *) + func_fatal_configuration "unknown library version type '$version_type'" + ;; + esac + + # Clear the version info if we defaulted, and they specified a release. + if test -z "$vinfo" && test -n "$release"; then + major= + case $version_type in + darwin) + # we can't check for "0.0" in archive_cmds due to quoting + # problems, so we reset it completely + verstring= + ;; + *) + verstring=0.0 + ;; + esac + if test no = "$need_version"; then + versuffix= + else + versuffix=.0.0 + fi + fi + + # Remove version info from name if versioning should be avoided + if test yes,no = "$avoid_version,$need_version"; then + major= + versuffix= + verstring= + fi + + # Check to see if the archive will have undefined symbols. + if test yes = "$allow_undefined"; then + if test unsupported = "$allow_undefined_flag"; then + if test yes = "$build_old_libs"; then + func_warning "undefined symbols not allowed in $host shared libraries; building static only" + build_libtool_libs=no + else + func_fatal_error "can't build $host shared library unless -no-undefined is specified" + fi + fi + else + # Don't allow undefined symbols. + allow_undefined_flag=$no_undefined_flag + fi + + fi + + func_generate_dlsyms "$libname" "$libname" : + func_append libobjs " $symfileobj" + test " " = "$libobjs" && libobjs= + + if test relink != "$opt_mode"; then + # Remove our outputs, but don't remove object files since they + # may have been created when compiling PIC objects. + removelist= + tempremovelist=`$ECHO "$output_objdir/*"` + for p in $tempremovelist; do + case $p in + *.$objext | *.gcno) + ;; + $output_objdir/$outputname | $output_objdir/$libname.* | $output_objdir/$libname$release.*) + if test -n "$precious_files_regex"; then + if $ECHO "$p" | $EGREP -e "$precious_files_regex" >/dev/null 2>&1 + then + continue + fi + fi + func_append removelist " $p" + ;; + *) ;; + esac + done + test -n "$removelist" && \ + func_show_eval "${RM}r \$removelist" + fi + + # Now set the variables for building old libraries. + if test yes = "$build_old_libs" && test convenience != "$build_libtool_libs"; then + func_append oldlibs " $output_objdir/$libname.$libext" + + # Transform .lo files to .o files. + oldobjs="$objs "`$ECHO "$libobjs" | $SP2NL | $SED "/\.$libext$/d; $lo2o" | $NL2SP` + fi + + # Eliminate all temporary directories. + #for path in $notinst_path; do + # lib_search_path=`$ECHO "$lib_search_path " | $SED "s% $path % %g"` + # deplibs=`$ECHO "$deplibs " | $SED "s% -L$path % %g"` + # dependency_libs=`$ECHO "$dependency_libs " | $SED "s% -L$path % %g"` + #done + + if test -n "$xrpath"; then + # If the user specified any rpath flags, then add them. + temp_xrpath= + for libdir in $xrpath; do + func_replace_sysroot "$libdir" + func_append temp_xrpath " -R$func_replace_sysroot_result" + case "$finalize_rpath " in + *" $libdir "*) ;; + *) func_append finalize_rpath " $libdir" ;; + esac + done + if test yes != "$hardcode_into_libs" || test yes = "$build_old_libs"; then + dependency_libs="$temp_xrpath $dependency_libs" + fi + fi + + # Make sure dlfiles contains only unique files that won't be dlpreopened + old_dlfiles=$dlfiles + dlfiles= + for lib in $old_dlfiles; do + case " $dlprefiles $dlfiles " in + *" $lib "*) ;; + *) func_append dlfiles " $lib" ;; + esac + done + + # Make sure dlprefiles contains only unique files + old_dlprefiles=$dlprefiles + dlprefiles= + for lib in $old_dlprefiles; do + case "$dlprefiles " in + *" $lib "*) ;; + *) func_append dlprefiles " $lib" ;; + esac + done + + if test yes = "$build_libtool_libs"; then + if test -n "$rpath"; then + case $host in + *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-beos* | *-cegcc* | *-*-haiku*) + # these systems don't actually have a c library (as such)! + ;; + *-*-rhapsody* | *-*-darwin1.[012]) + # Rhapsody C library is in the System framework + func_append deplibs " System.ltframework" + ;; + *-*-netbsd*) + # Don't link with libc until the a.out ld.so is fixed. + ;; + *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*) + # Do not include libc due to us having libc/libc_r. + ;; + *-*-sco3.2v5* | *-*-sco5v6*) + # Causes problems with __ctype + ;; + *-*-sysv4.2uw2* | *-*-sysv5* | *-*-unixware* | *-*-OpenUNIX*) + # Compiler inserts libc in the correct place for threads to work + ;; + *) + # Add libc to deplibs on all other systems if necessary. + if test yes = "$build_libtool_need_lc"; then + func_append deplibs " -lc" + fi + ;; + esac + fi + + # Transform deplibs into only deplibs that can be linked in shared. + name_save=$name + libname_save=$libname + release_save=$release + versuffix_save=$versuffix + major_save=$major + # I'm not sure if I'm treating the release correctly. I think + # release should show up in the -l (ie -lgmp5) so we don't want to + # add it in twice. Is that correct? + release= + versuffix= + major= + newdeplibs= + droppeddeps=no + case $deplibs_check_method in + pass_all) + # Don't check for shared/static. Everything works. + # This might be a little naive. We might want to check + # whether the library exists or not. But this is on + # osf3 & osf4 and I'm not really sure... Just + # implementing what was already the behavior. + newdeplibs=$deplibs + ;; + test_compile) + # This code stresses the "libraries are programs" paradigm to its + # limits. Maybe even breaks it. We compile a program, linking it + # against the deplibs as a proxy for the library. Then we can check + # whether they linked in statically or dynamically with ldd. + $opt_dry_run || $RM conftest.c + cat > conftest.c </dev/null` + $nocaseglob + else + potential_libs=`ls $i/$libnameglob[.-]* 2>/dev/null` + fi + for potent_lib in $potential_libs; do + # Follow soft links. + if ls -lLd "$potent_lib" 2>/dev/null | + $GREP " -> " >/dev/null; then + continue + fi + # The statement above tries to avoid entering an + # endless loop below, in case of cyclic links. + # We might still enter an endless loop, since a link + # loop can be closed while we follow links, + # but so what? + potlib=$potent_lib + while test -h "$potlib" 2>/dev/null; do + potliblink=`ls -ld $potlib | $SED 's/.* -> //'` + case $potliblink in + [\\/]* | [A-Za-z]:[\\/]*) potlib=$potliblink;; + *) potlib=`$ECHO "$potlib" | $SED 's|[^/]*$||'`"$potliblink";; + esac + done + if eval $file_magic_cmd \"\$potlib\" 2>/dev/null | + $SED -e 10q | + $EGREP "$file_magic_regex" > /dev/null; then + func_append newdeplibs " $a_deplib" + a_deplib= + break 2 + fi + done + done + fi + if test -n "$a_deplib"; then + droppeddeps=yes + echo + $ECHO "*** Warning: linker path does not have real file for library $a_deplib." + echo "*** I have the capability to make that library automatically link in when" + echo "*** you link to this library. But I can only do this if you have a" + echo "*** shared version of the library, which you do not appear to have" + echo "*** because I did check the linker path looking for a file starting" + if test -z "$potlib"; then + $ECHO "*** with $libname but no candidates were found. (...for file magic test)" + else + $ECHO "*** with $libname and none of the candidates passed a file format test" + $ECHO "*** using a file magic. Last file checked: $potlib" + fi + fi + ;; + *) + # Add a -L argument. + func_append newdeplibs " $a_deplib" + ;; + esac + done # Gone through all deplibs. + ;; + match_pattern*) + set dummy $deplibs_check_method; shift + match_pattern_regex=`expr "$deplibs_check_method" : "$1 \(.*\)"` + for a_deplib in $deplibs; do + case $a_deplib in + -l*) + func_stripname -l '' "$a_deplib" + name=$func_stripname_result + if test yes = "$allow_libtool_libs_with_static_runtimes"; then + case " $predeps $postdeps " in + *" $a_deplib "*) + func_append newdeplibs " $a_deplib" + a_deplib= + ;; + esac + fi + if test -n "$a_deplib"; then + libname=`eval "\\$ECHO \"$libname_spec\""` + for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do + potential_libs=`ls $i/$libname[.-]* 2>/dev/null` + for potent_lib in $potential_libs; do + potlib=$potent_lib # see symlink-check above in file_magic test + if eval "\$ECHO \"$potent_lib\"" 2>/dev/null | $SED 10q | \ + $EGREP "$match_pattern_regex" > /dev/null; then + func_append newdeplibs " $a_deplib" + a_deplib= + break 2 + fi + done + done + fi + if test -n "$a_deplib"; then + droppeddeps=yes + echo + $ECHO "*** Warning: linker path does not have real file for library $a_deplib." + echo "*** I have the capability to make that library automatically link in when" + echo "*** you link to this library. But I can only do this if you have a" + echo "*** shared version of the library, which you do not appear to have" + echo "*** because I did check the linker path looking for a file starting" + if test -z "$potlib"; then + $ECHO "*** with $libname but no candidates were found. (...for regex pattern test)" + else + $ECHO "*** with $libname and none of the candidates passed a file format test" + $ECHO "*** using a regex pattern. Last file checked: $potlib" + fi + fi + ;; + *) + # Add a -L argument. + func_append newdeplibs " $a_deplib" + ;; + esac + done # Gone through all deplibs. + ;; + none | unknown | *) + newdeplibs= + tmp_deplibs=`$ECHO " $deplibs" | $SED 's/ -lc$//; s/ -[LR][^ ]*//g'` + if test yes = "$allow_libtool_libs_with_static_runtimes"; then + for i in $predeps $postdeps; do + # can't use Xsed below, because $i might contain '/' + tmp_deplibs=`$ECHO " $tmp_deplibs" | $SED "s|$i||"` + done + fi + case $tmp_deplibs in + *[!\ \ ]*) + echo + if test none = "$deplibs_check_method"; then + echo "*** Warning: inter-library dependencies are not supported in this platform." + else + echo "*** Warning: inter-library dependencies are not known to be supported." + fi + echo "*** All declared inter-library dependencies are being dropped." + droppeddeps=yes + ;; + esac + ;; + esac + versuffix=$versuffix_save + major=$major_save + release=$release_save + libname=$libname_save + name=$name_save + + case $host in + *-*-rhapsody* | *-*-darwin1.[012]) + # On Rhapsody replace the C library with the System framework + newdeplibs=`$ECHO " $newdeplibs" | $SED 's/ -lc / System.ltframework /'` + ;; + esac + + if test yes = "$droppeddeps"; then + if test yes = "$module"; then + echo + echo "*** Warning: libtool could not satisfy all declared inter-library" + $ECHO "*** dependencies of module $libname. Therefore, libtool will create" + echo "*** a static module, that should work as long as the dlopening" + echo "*** application is linked with the -dlopen flag." + if test -z "$global_symbol_pipe"; then + echo + echo "*** However, this would only work if libtool was able to extract symbol" + echo "*** lists from a program, using 'nm' or equivalent, but libtool could" + echo "*** not find such a program. So, this module is probably useless." + echo "*** 'nm' from GNU binutils and a full rebuild may help." + fi + if test no = "$build_old_libs"; then + oldlibs=$output_objdir/$libname.$libext + build_libtool_libs=module + build_old_libs=yes + else + build_libtool_libs=no + fi + else + echo "*** The inter-library dependencies that have been dropped here will be" + echo "*** automatically added whenever a program is linked with this library" + echo "*** or is declared to -dlopen it." + + if test no = "$allow_undefined"; then + echo + echo "*** Since this library must not contain undefined symbols," + echo "*** because either the platform does not support them or" + echo "*** it was explicitly requested with -no-undefined," + echo "*** libtool will only create a static version of it." + if test no = "$build_old_libs"; then + oldlibs=$output_objdir/$libname.$libext + build_libtool_libs=module + build_old_libs=yes + else + build_libtool_libs=no + fi + fi + fi + fi + # Done checking deplibs! + deplibs=$newdeplibs + fi + # Time to change all our "foo.ltframework" stuff back to "-framework foo" + case $host in + *-*-darwin*) + newdeplibs=`$ECHO " $newdeplibs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` + new_inherited_linker_flags=`$ECHO " $new_inherited_linker_flags" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` + deplibs=`$ECHO " $deplibs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` + ;; + esac + + # move library search paths that coincide with paths to not yet + # installed libraries to the beginning of the library search list + new_libs= + for path in $notinst_path; do + case " $new_libs " in + *" -L$path/$objdir "*) ;; + *) + case " $deplibs " in + *" -L$path/$objdir "*) + func_append new_libs " -L$path/$objdir" ;; + esac + ;; + esac + done + for deplib in $deplibs; do + case $deplib in + -L*) + case " $new_libs " in + *" $deplib "*) ;; + *) func_append new_libs " $deplib" ;; + esac + ;; + *) func_append new_libs " $deplib" ;; + esac + done + deplibs=$new_libs + + # All the library-specific variables (install_libdir is set above). + library_names= + old_library= + dlname= + + # Test again, we may have decided not to build it any more + if test yes = "$build_libtool_libs"; then + # Remove $wl instances when linking with ld. + # FIXME: should test the right _cmds variable. + case $archive_cmds in + *\$LD\ *) wl= ;; + esac + if test yes = "$hardcode_into_libs"; then + # Hardcode the library paths + hardcode_libdirs= + dep_rpath= + rpath=$finalize_rpath + test relink = "$opt_mode" || rpath=$compile_rpath$rpath + for libdir in $rpath; do + if test -n "$hardcode_libdir_flag_spec"; then + if test -n "$hardcode_libdir_separator"; then + func_replace_sysroot "$libdir" + libdir=$func_replace_sysroot_result + if test -z "$hardcode_libdirs"; then + hardcode_libdirs=$libdir + else + # Just accumulate the unique libdirs. + case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in + *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*) + ;; + *) + func_append hardcode_libdirs "$hardcode_libdir_separator$libdir" + ;; + esac + fi + else + eval flag=\"$hardcode_libdir_flag_spec\" + func_append dep_rpath " $flag" + fi + elif test -n "$runpath_var"; then + case "$perm_rpath " in + *" $libdir "*) ;; + *) func_append perm_rpath " $libdir" ;; + esac + fi + done + # Substitute the hardcoded libdirs into the rpath. + if test -n "$hardcode_libdir_separator" && + test -n "$hardcode_libdirs"; then + libdir=$hardcode_libdirs + eval "dep_rpath=\"$hardcode_libdir_flag_spec\"" + fi + if test -n "$runpath_var" && test -n "$perm_rpath"; then + # We should set the runpath_var. + rpath= + for dir in $perm_rpath; do + func_append rpath "$dir:" + done + eval "$runpath_var='$rpath\$$runpath_var'; export $runpath_var" + fi + test -n "$dep_rpath" && deplibs="$dep_rpath $deplibs" + fi + + shlibpath=$finalize_shlibpath + test relink = "$opt_mode" || shlibpath=$compile_shlibpath$shlibpath + if test -n "$shlibpath"; then + eval "$shlibpath_var='$shlibpath\$$shlibpath_var'; export $shlibpath_var" + fi + + # Get the real and link names of the library. + eval shared_ext=\"$shrext_cmds\" + eval library_names=\"$library_names_spec\" + set dummy $library_names + shift + realname=$1 + shift + + if test -n "$soname_spec"; then + eval soname=\"$soname_spec\" + else + soname=$realname + fi + if test -z "$dlname"; then + dlname=$soname + fi + + lib=$output_objdir/$realname + linknames= + for link + do + func_append linknames " $link" + done + + # Use standard objects if they are pic + test -z "$pic_flag" && libobjs=`$ECHO "$libobjs" | $SP2NL | $SED "$lo2o" | $NL2SP` + test "X$libobjs" = "X " && libobjs= + + delfiles= + if test -n "$export_symbols" && test -n "$include_expsyms"; then + $opt_dry_run || cp "$export_symbols" "$output_objdir/$libname.uexp" + export_symbols=$output_objdir/$libname.uexp + func_append delfiles " $export_symbols" + fi + + orig_export_symbols= + case $host_os in + cygwin* | mingw* | cegcc*) + if test -n "$export_symbols" && test -z "$export_symbols_regex"; then + # exporting using user supplied symfile + func_dll_def_p "$export_symbols" || { + # and it's NOT already a .def file. Must figure out + # which of the given symbols are data symbols and tag + # them as such. So, trigger use of export_symbols_cmds. + # export_symbols gets reassigned inside the "prepare + # the list of exported symbols" if statement, so the + # include_expsyms logic still works. + orig_export_symbols=$export_symbols + export_symbols= + always_export_symbols=yes + } + fi + ;; + esac + + # Prepare the list of exported symbols + if test -z "$export_symbols"; then + if test yes = "$always_export_symbols" || test -n "$export_symbols_regex"; then + func_verbose "generating symbol list for '$libname.la'" + export_symbols=$output_objdir/$libname.exp + $opt_dry_run || $RM $export_symbols + cmds=$export_symbols_cmds + save_ifs=$IFS; IFS='~' + for cmd1 in $cmds; do + IFS=$save_ifs + # Take the normal branch if the nm_file_list_spec branch + # doesn't work or if tool conversion is not needed. + case $nm_file_list_spec~$to_tool_file_cmd in + *~func_convert_file_noop | *~func_convert_file_msys_to_w32 | ~*) + try_normal_branch=yes + eval cmd=\"$cmd1\" + func_len " $cmd" + len=$func_len_result + ;; + *) + try_normal_branch=no + ;; + esac + if test yes = "$try_normal_branch" \ + && { test "$len" -lt "$max_cmd_len" \ + || test "$max_cmd_len" -le -1; } + then + func_show_eval "$cmd" 'exit $?' + skipped_export=false + elif test -n "$nm_file_list_spec"; then + func_basename "$output" + output_la=$func_basename_result + save_libobjs=$libobjs + save_output=$output + output=$output_objdir/$output_la.nm + func_to_tool_file "$output" + libobjs=$nm_file_list_spec$func_to_tool_file_result + func_append delfiles " $output" + func_verbose "creating $NM input file list: $output" + for obj in $save_libobjs; do + func_to_tool_file "$obj" + $ECHO "$func_to_tool_file_result" + done > "$output" + eval cmd=\"$cmd1\" + func_show_eval "$cmd" 'exit $?' + output=$save_output + libobjs=$save_libobjs + skipped_export=false + else + # The command line is too long to execute in one step. + func_verbose "using reloadable object file for export list..." + skipped_export=: + # Break out early, otherwise skipped_export may be + # set to false by a later but shorter cmd. + break + fi + done + IFS=$save_ifs + if test -n "$export_symbols_regex" && test : != "$skipped_export"; then + func_show_eval '$EGREP -e "$export_symbols_regex" "$export_symbols" > "${export_symbols}T"' + func_show_eval '$MV "${export_symbols}T" "$export_symbols"' + fi + fi + fi + + if test -n "$export_symbols" && test -n "$include_expsyms"; then + tmp_export_symbols=$export_symbols + test -n "$orig_export_symbols" && tmp_export_symbols=$orig_export_symbols + $opt_dry_run || eval '$ECHO "$include_expsyms" | $SP2NL >> "$tmp_export_symbols"' + fi + + if test : != "$skipped_export" && test -n "$orig_export_symbols"; then + # The given exports_symbols file has to be filtered, so filter it. + func_verbose "filter symbol list for '$libname.la' to tag DATA exports" + # FIXME: $output_objdir/$libname.filter potentially contains lots of + # 's' commands, which not all seds can handle. GNU sed should be fine + # though. Also, the filter scales superlinearly with the number of + # global variables. join(1) would be nice here, but unfortunately + # isn't a blessed tool. + $opt_dry_run || $SED -e '/[ ,]DATA/!d;s,\(.*\)\([ \,].*\),s|^\1$|\1\2|,' < $export_symbols > $output_objdir/$libname.filter + func_append delfiles " $export_symbols $output_objdir/$libname.filter" + export_symbols=$output_objdir/$libname.def + $opt_dry_run || $SED -f $output_objdir/$libname.filter < $orig_export_symbols > $export_symbols + fi + + tmp_deplibs= + for test_deplib in $deplibs; do + case " $convenience " in + *" $test_deplib "*) ;; + *) + func_append tmp_deplibs " $test_deplib" + ;; + esac + done + deplibs=$tmp_deplibs + + if test -n "$convenience"; then + if test -n "$whole_archive_flag_spec" && + test yes = "$compiler_needs_object" && + test -z "$libobjs"; then + # extract the archives, so we have objects to list. + # TODO: could optimize this to just extract one archive. + whole_archive_flag_spec= + fi + if test -n "$whole_archive_flag_spec"; then + save_libobjs=$libobjs + eval libobjs=\"\$libobjs $whole_archive_flag_spec\" + test "X$libobjs" = "X " && libobjs= + else + gentop=$output_objdir/${outputname}x + func_append generated " $gentop" + + func_extract_archives $gentop $convenience + func_append libobjs " $func_extract_archives_result" + test "X$libobjs" = "X " && libobjs= + fi + fi + + if test yes = "$thread_safe" && test -n "$thread_safe_flag_spec"; then + eval flag=\"$thread_safe_flag_spec\" + func_append linker_flags " $flag" + fi + + # Make a backup of the uninstalled library when relinking + if test relink = "$opt_mode"; then + $opt_dry_run || eval '(cd $output_objdir && $RM ${realname}U && $MV $realname ${realname}U)' || exit $? + fi + + # Do each of the archive commands. + if test yes = "$module" && test -n "$module_cmds"; then + if test -n "$export_symbols" && test -n "$module_expsym_cmds"; then + eval test_cmds=\"$module_expsym_cmds\" + cmds=$module_expsym_cmds + else + eval test_cmds=\"$module_cmds\" + cmds=$module_cmds + fi + else + if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then + eval test_cmds=\"$archive_expsym_cmds\" + cmds=$archive_expsym_cmds + else + eval test_cmds=\"$archive_cmds\" + cmds=$archive_cmds + fi + fi + + if test : != "$skipped_export" && + func_len " $test_cmds" && + len=$func_len_result && + test "$len" -lt "$max_cmd_len" || test "$max_cmd_len" -le -1; then + : + else + # The command line is too long to link in one step, link piecewise + # or, if using GNU ld and skipped_export is not :, use a linker + # script. + + # Save the value of $output and $libobjs because we want to + # use them later. If we have whole_archive_flag_spec, we + # want to use save_libobjs as it was before + # whole_archive_flag_spec was expanded, because we can't + # assume the linker understands whole_archive_flag_spec. + # This may have to be revisited, in case too many + # convenience libraries get linked in and end up exceeding + # the spec. + if test -z "$convenience" || test -z "$whole_archive_flag_spec"; then + save_libobjs=$libobjs + fi + save_output=$output + func_basename "$output" + output_la=$func_basename_result + + # Clear the reloadable object creation command queue and + # initialize k to one. + test_cmds= + concat_cmds= + objlist= + last_robj= + k=1 + + if test -n "$save_libobjs" && test : != "$skipped_export" && test yes = "$with_gnu_ld"; then + output=$output_objdir/$output_la.lnkscript + func_verbose "creating GNU ld script: $output" + echo 'INPUT (' > $output + for obj in $save_libobjs + do + func_to_tool_file "$obj" + $ECHO "$func_to_tool_file_result" >> $output + done + echo ')' >> $output + func_append delfiles " $output" + func_to_tool_file "$output" + output=$func_to_tool_file_result + elif test -n "$save_libobjs" && test : != "$skipped_export" && test -n "$file_list_spec"; then + output=$output_objdir/$output_la.lnk + func_verbose "creating linker input file list: $output" + : > $output + set x $save_libobjs + shift + firstobj= + if test yes = "$compiler_needs_object"; then + firstobj="$1 " + shift + fi + for obj + do + func_to_tool_file "$obj" + $ECHO "$func_to_tool_file_result" >> $output + done + func_append delfiles " $output" + func_to_tool_file "$output" + output=$firstobj\"$file_list_spec$func_to_tool_file_result\" + else + if test -n "$save_libobjs"; then + func_verbose "creating reloadable object files..." + output=$output_objdir/$output_la-$k.$objext + eval test_cmds=\"$reload_cmds\" + func_len " $test_cmds" + len0=$func_len_result + len=$len0 + + # Loop over the list of objects to be linked. + for obj in $save_libobjs + do + func_len " $obj" + func_arith $len + $func_len_result + len=$func_arith_result + if test -z "$objlist" || + test "$len" -lt "$max_cmd_len"; then + func_append objlist " $obj" + else + # The command $test_cmds is almost too long, add a + # command to the queue. + if test 1 -eq "$k"; then + # The first file doesn't have a previous command to add. + reload_objs=$objlist + eval concat_cmds=\"$reload_cmds\" + else + # All subsequent reloadable object files will link in + # the last one created. + reload_objs="$objlist $last_robj" + eval concat_cmds=\"\$concat_cmds~$reload_cmds~\$RM $last_robj\" + fi + last_robj=$output_objdir/$output_la-$k.$objext + func_arith $k + 1 + k=$func_arith_result + output=$output_objdir/$output_la-$k.$objext + objlist=" $obj" + func_len " $last_robj" + func_arith $len0 + $func_len_result + len=$func_arith_result + fi + done + # Handle the remaining objects by creating one last + # reloadable object file. All subsequent reloadable object + # files will link in the last one created. + test -z "$concat_cmds" || concat_cmds=$concat_cmds~ + reload_objs="$objlist $last_robj" + eval concat_cmds=\"\$concat_cmds$reload_cmds\" + if test -n "$last_robj"; then + eval concat_cmds=\"\$concat_cmds~\$RM $last_robj\" + fi + func_append delfiles " $output" + + else + output= + fi + + ${skipped_export-false} && { + func_verbose "generating symbol list for '$libname.la'" + export_symbols=$output_objdir/$libname.exp + $opt_dry_run || $RM $export_symbols + libobjs=$output + # Append the command to create the export file. + test -z "$concat_cmds" || concat_cmds=$concat_cmds~ + eval concat_cmds=\"\$concat_cmds$export_symbols_cmds\" + if test -n "$last_robj"; then + eval concat_cmds=\"\$concat_cmds~\$RM $last_robj\" + fi + } + + test -n "$save_libobjs" && + func_verbose "creating a temporary reloadable object file: $output" + + # Loop through the commands generated above and execute them. + save_ifs=$IFS; IFS='~' + for cmd in $concat_cmds; do + IFS=$save_ifs + $opt_quiet || { + func_quote_for_expand "$cmd" + eval "func_echo $func_quote_for_expand_result" + } + $opt_dry_run || eval "$cmd" || { + lt_exit=$? + + # Restore the uninstalled library and exit + if test relink = "$opt_mode"; then + ( cd "$output_objdir" && \ + $RM "${realname}T" && \ + $MV "${realname}U" "$realname" ) + fi + + exit $lt_exit + } + done + IFS=$save_ifs + + if test -n "$export_symbols_regex" && ${skipped_export-false}; then + func_show_eval '$EGREP -e "$export_symbols_regex" "$export_symbols" > "${export_symbols}T"' + func_show_eval '$MV "${export_symbols}T" "$export_symbols"' + fi + fi + + ${skipped_export-false} && { + if test -n "$export_symbols" && test -n "$include_expsyms"; then + tmp_export_symbols=$export_symbols + test -n "$orig_export_symbols" && tmp_export_symbols=$orig_export_symbols + $opt_dry_run || eval '$ECHO "$include_expsyms" | $SP2NL >> "$tmp_export_symbols"' + fi + + if test -n "$orig_export_symbols"; then + # The given exports_symbols file has to be filtered, so filter it. + func_verbose "filter symbol list for '$libname.la' to tag DATA exports" + # FIXME: $output_objdir/$libname.filter potentially contains lots of + # 's' commands, which not all seds can handle. GNU sed should be fine + # though. Also, the filter scales superlinearly with the number of + # global variables. join(1) would be nice here, but unfortunately + # isn't a blessed tool. + $opt_dry_run || $SED -e '/[ ,]DATA/!d;s,\(.*\)\([ \,].*\),s|^\1$|\1\2|,' < $export_symbols > $output_objdir/$libname.filter + func_append delfiles " $export_symbols $output_objdir/$libname.filter" + export_symbols=$output_objdir/$libname.def + $opt_dry_run || $SED -f $output_objdir/$libname.filter < $orig_export_symbols > $export_symbols + fi + } + + libobjs=$output + # Restore the value of output. + output=$save_output + + if test -n "$convenience" && test -n "$whole_archive_flag_spec"; then + eval libobjs=\"\$libobjs $whole_archive_flag_spec\" + test "X$libobjs" = "X " && libobjs= + fi + # Expand the library linking commands again to reset the + # value of $libobjs for piecewise linking. + + # Do each of the archive commands. + if test yes = "$module" && test -n "$module_cmds"; then + if test -n "$export_symbols" && test -n "$module_expsym_cmds"; then + cmds=$module_expsym_cmds + else + cmds=$module_cmds + fi + else + if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then + cmds=$archive_expsym_cmds + else + cmds=$archive_cmds + fi + fi + fi + + if test -n "$delfiles"; then + # Append the command to remove temporary files to $cmds. + eval cmds=\"\$cmds~\$RM $delfiles\" + fi + + # Add any objects from preloaded convenience libraries + if test -n "$dlprefiles"; then + gentop=$output_objdir/${outputname}x + func_append generated " $gentop" + + func_extract_archives $gentop $dlprefiles + func_append libobjs " $func_extract_archives_result" + test "X$libobjs" = "X " && libobjs= + fi + + save_ifs=$IFS; IFS='~' + for cmd in $cmds; do + IFS=$sp$nl + eval cmd=\"$cmd\" + IFS=$save_ifs + $opt_quiet || { + func_quote_for_expand "$cmd" + eval "func_echo $func_quote_for_expand_result" + } + $opt_dry_run || eval "$cmd" || { + lt_exit=$? + + # Restore the uninstalled library and exit + if test relink = "$opt_mode"; then + ( cd "$output_objdir" && \ + $RM "${realname}T" && \ + $MV "${realname}U" "$realname" ) + fi + + exit $lt_exit + } + done + IFS=$save_ifs + + # Restore the uninstalled library and exit + if test relink = "$opt_mode"; then + $opt_dry_run || eval '(cd $output_objdir && $RM ${realname}T && $MV $realname ${realname}T && $MV ${realname}U $realname)' || exit $? + + if test -n "$convenience"; then + if test -z "$whole_archive_flag_spec"; then + func_show_eval '${RM}r "$gentop"' + fi + fi + + exit $EXIT_SUCCESS + fi + + # Create links to the real library. + for linkname in $linknames; do + if test "$realname" != "$linkname"; then + func_show_eval '(cd "$output_objdir" && $RM "$linkname" && $LN_S "$realname" "$linkname")' 'exit $?' + fi + done + + # If -module or -export-dynamic was specified, set the dlname. + if test yes = "$module" || test yes = "$export_dynamic"; then + # On all known operating systems, these are identical. + dlname=$soname + fi + fi + ;; + + obj) + if test -n "$dlfiles$dlprefiles" || test no != "$dlself"; then + func_warning "'-dlopen' is ignored for objects" + fi + + case " $deplibs" in + *\ -l* | *\ -L*) + func_warning "'-l' and '-L' are ignored for objects" ;; + esac + + test -n "$rpath" && \ + func_warning "'-rpath' is ignored for objects" + + test -n "$xrpath" && \ + func_warning "'-R' is ignored for objects" + + test -n "$vinfo" && \ + func_warning "'-version-info' is ignored for objects" + + test -n "$release" && \ + func_warning "'-release' is ignored for objects" + + case $output in + *.lo) + test -n "$objs$old_deplibs" && \ + func_fatal_error "cannot build library object '$output' from non-libtool objects" + + libobj=$output + func_lo2o "$libobj" + obj=$func_lo2o_result + ;; + *) + libobj= + obj=$output + ;; + esac + + # Delete the old objects. + $opt_dry_run || $RM $obj $libobj + + # Objects from convenience libraries. This assumes + # single-version convenience libraries. Whenever we create + # different ones for PIC/non-PIC, this we'll have to duplicate + # the extraction. + reload_conv_objs= + gentop= + # if reload_cmds runs $LD directly, get rid of -Wl from + # whole_archive_flag_spec and hope we can get by with turning comma + # into space. + case $reload_cmds in + *\$LD[\ \$]*) wl= ;; + esac + if test -n "$convenience"; then + if test -n "$whole_archive_flag_spec"; then + eval tmp_whole_archive_flags=\"$whole_archive_flag_spec\" + test -n "$wl" || tmp_whole_archive_flags=`$ECHO "$tmp_whole_archive_flags" | $SED 's|,| |g'` + reload_conv_objs=$reload_objs\ $tmp_whole_archive_flags + else + gentop=$output_objdir/${obj}x + func_append generated " $gentop" + + func_extract_archives $gentop $convenience + reload_conv_objs="$reload_objs $func_extract_archives_result" + fi + fi + + # If we're not building shared, we need to use non_pic_objs + test yes = "$build_libtool_libs" || libobjs=$non_pic_objects + + # Create the old-style object. + reload_objs=$objs$old_deplibs' '`$ECHO "$libobjs" | $SP2NL | $SED "/\.$libext$/d; /\.lib$/d; $lo2o" | $NL2SP`' '$reload_conv_objs + + output=$obj + func_execute_cmds "$reload_cmds" 'exit $?' + + # Exit if we aren't doing a library object file. + if test -z "$libobj"; then + if test -n "$gentop"; then + func_show_eval '${RM}r "$gentop"' + fi + + exit $EXIT_SUCCESS + fi + + test yes = "$build_libtool_libs" || { + if test -n "$gentop"; then + func_show_eval '${RM}r "$gentop"' + fi + + # Create an invalid libtool object if no PIC, so that we don't + # accidentally link it into a program. + # $show "echo timestamp > $libobj" + # $opt_dry_run || eval "echo timestamp > $libobj" || exit $? + exit $EXIT_SUCCESS + } + + if test -n "$pic_flag" || test default != "$pic_mode"; then + # Only do commands if we really have different PIC objects. + reload_objs="$libobjs $reload_conv_objs" + output=$libobj + func_execute_cmds "$reload_cmds" 'exit $?' + fi + + if test -n "$gentop"; then + func_show_eval '${RM}r "$gentop"' + fi + + exit $EXIT_SUCCESS + ;; + + prog) + case $host in + *cygwin*) func_stripname '' '.exe' "$output" + output=$func_stripname_result.exe;; + esac + test -n "$vinfo" && \ + func_warning "'-version-info' is ignored for programs" + + test -n "$release" && \ + func_warning "'-release' is ignored for programs" + + $preload \ + && test unknown,unknown,unknown = "$dlopen_support,$dlopen_self,$dlopen_self_static" \ + && func_warning "'LT_INIT([dlopen])' not used. Assuming no dlopen support." + + case $host in + *-*-rhapsody* | *-*-darwin1.[012]) + # On Rhapsody replace the C library is the System framework + compile_deplibs=`$ECHO " $compile_deplibs" | $SED 's/ -lc / System.ltframework /'` + finalize_deplibs=`$ECHO " $finalize_deplibs" | $SED 's/ -lc / System.ltframework /'` + ;; + esac + + case $host in + *-*-darwin*) + # Don't allow lazy linking, it breaks C++ global constructors + # But is supposedly fixed on 10.4 or later (yay!). + if test CXX = "$tagname"; then + case ${MACOSX_DEPLOYMENT_TARGET-10.0} in + 10.[0123]) + func_append compile_command " $wl-bind_at_load" + func_append finalize_command " $wl-bind_at_load" + ;; + esac + fi + # Time to change all our "foo.ltframework" stuff back to "-framework foo" + compile_deplibs=`$ECHO " $compile_deplibs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` + finalize_deplibs=`$ECHO " $finalize_deplibs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` + ;; + esac + + + # move library search paths that coincide with paths to not yet + # installed libraries to the beginning of the library search list + new_libs= + for path in $notinst_path; do + case " $new_libs " in + *" -L$path/$objdir "*) ;; + *) + case " $compile_deplibs " in + *" -L$path/$objdir "*) + func_append new_libs " -L$path/$objdir" ;; + esac + ;; + esac + done + for deplib in $compile_deplibs; do + case $deplib in + -L*) + case " $new_libs " in + *" $deplib "*) ;; + *) func_append new_libs " $deplib" ;; + esac + ;; + *) func_append new_libs " $deplib" ;; + esac + done + compile_deplibs=$new_libs + + + func_append compile_command " $compile_deplibs" + func_append finalize_command " $finalize_deplibs" + + if test -n "$rpath$xrpath"; then + # If the user specified any rpath flags, then add them. + for libdir in $rpath $xrpath; do + # This is the magic to use -rpath. + case "$finalize_rpath " in + *" $libdir "*) ;; + *) func_append finalize_rpath " $libdir" ;; + esac + done + fi + + # Now hardcode the library paths + rpath= + hardcode_libdirs= + for libdir in $compile_rpath $finalize_rpath; do + if test -n "$hardcode_libdir_flag_spec"; then + if test -n "$hardcode_libdir_separator"; then + if test -z "$hardcode_libdirs"; then + hardcode_libdirs=$libdir + else + # Just accumulate the unique libdirs. + case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in + *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*) + ;; + *) + func_append hardcode_libdirs "$hardcode_libdir_separator$libdir" + ;; + esac + fi + else + eval flag=\"$hardcode_libdir_flag_spec\" + func_append rpath " $flag" + fi + elif test -n "$runpath_var"; then + case "$perm_rpath " in + *" $libdir "*) ;; + *) func_append perm_rpath " $libdir" ;; + esac + fi + case $host in + *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*) + testbindir=`$ECHO "$libdir" | $SED -e 's*/lib$*/bin*'` + case :$dllsearchpath: in + *":$libdir:"*) ;; + ::) dllsearchpath=$libdir;; + *) func_append dllsearchpath ":$libdir";; + esac + case :$dllsearchpath: in + *":$testbindir:"*) ;; + ::) dllsearchpath=$testbindir;; + *) func_append dllsearchpath ":$testbindir";; + esac + ;; + esac + done + # Substitute the hardcoded libdirs into the rpath. + if test -n "$hardcode_libdir_separator" && + test -n "$hardcode_libdirs"; then + libdir=$hardcode_libdirs + eval rpath=\" $hardcode_libdir_flag_spec\" + fi + compile_rpath=$rpath + + rpath= + hardcode_libdirs= + for libdir in $finalize_rpath; do + if test -n "$hardcode_libdir_flag_spec"; then + if test -n "$hardcode_libdir_separator"; then + if test -z "$hardcode_libdirs"; then + hardcode_libdirs=$libdir + else + # Just accumulate the unique libdirs. + case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in + *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*) + ;; + *) + func_append hardcode_libdirs "$hardcode_libdir_separator$libdir" + ;; + esac + fi + else + eval flag=\"$hardcode_libdir_flag_spec\" + func_append rpath " $flag" + fi + elif test -n "$runpath_var"; then + case "$finalize_perm_rpath " in + *" $libdir "*) ;; + *) func_append finalize_perm_rpath " $libdir" ;; + esac + fi + done + # Substitute the hardcoded libdirs into the rpath. + if test -n "$hardcode_libdir_separator" && + test -n "$hardcode_libdirs"; then + libdir=$hardcode_libdirs + eval rpath=\" $hardcode_libdir_flag_spec\" + fi + finalize_rpath=$rpath + + if test -n "$libobjs" && test yes = "$build_old_libs"; then + # Transform all the library objects into standard objects. + compile_command=`$ECHO "$compile_command" | $SP2NL | $SED "$lo2o" | $NL2SP` + finalize_command=`$ECHO "$finalize_command" | $SP2NL | $SED "$lo2o" | $NL2SP` + fi + + func_generate_dlsyms "$outputname" "@PROGRAM@" false + + # template prelinking step + if test -n "$prelink_cmds"; then + func_execute_cmds "$prelink_cmds" 'exit $?' + fi + + wrappers_required=: + case $host in + *cegcc* | *mingw32ce*) + # Disable wrappers for cegcc and mingw32ce hosts, we are cross compiling anyway. + wrappers_required=false + ;; + *cygwin* | *mingw* ) + test yes = "$build_libtool_libs" || wrappers_required=false + ;; + *) + if test no = "$need_relink" || test yes != "$build_libtool_libs"; then + wrappers_required=false + fi + ;; + esac + $wrappers_required || { + # Replace the output file specification. + compile_command=`$ECHO "$compile_command" | $SED 's%@OUTPUT@%'"$output"'%g'` + link_command=$compile_command$compile_rpath + + # We have no uninstalled library dependencies, so finalize right now. + exit_status=0 + func_show_eval "$link_command" 'exit_status=$?' + + if test -n "$postlink_cmds"; then + func_to_tool_file "$output" + postlink_cmds=`func_echo_all "$postlink_cmds" | $SED -e 's%@OUTPUT@%'"$output"'%g' -e 's%@TOOL_OUTPUT@%'"$func_to_tool_file_result"'%g'` + func_execute_cmds "$postlink_cmds" 'exit $?' + fi + + # Delete the generated files. + if test -f "$output_objdir/${outputname}S.$objext"; then + func_show_eval '$RM "$output_objdir/${outputname}S.$objext"' + fi + + exit $exit_status + } + + if test -n "$compile_shlibpath$finalize_shlibpath"; then + compile_command="$shlibpath_var=\"$compile_shlibpath$finalize_shlibpath\$$shlibpath_var\" $compile_command" + fi + if test -n "$finalize_shlibpath"; then + finalize_command="$shlibpath_var=\"$finalize_shlibpath\$$shlibpath_var\" $finalize_command" + fi + + compile_var= + finalize_var= + if test -n "$runpath_var"; then + if test -n "$perm_rpath"; then + # We should set the runpath_var. + rpath= + for dir in $perm_rpath; do + func_append rpath "$dir:" + done + compile_var="$runpath_var=\"$rpath\$$runpath_var\" " + fi + if test -n "$finalize_perm_rpath"; then + # We should set the runpath_var. + rpath= + for dir in $finalize_perm_rpath; do + func_append rpath "$dir:" + done + finalize_var="$runpath_var=\"$rpath\$$runpath_var\" " + fi + fi + + if test yes = "$no_install"; then + # We don't need to create a wrapper script. + link_command=$compile_var$compile_command$compile_rpath + # Replace the output file specification. + link_command=`$ECHO "$link_command" | $SED 's%@OUTPUT@%'"$output"'%g'` + # Delete the old output file. + $opt_dry_run || $RM $output + # Link the executable and exit + func_show_eval "$link_command" 'exit $?' + + if test -n "$postlink_cmds"; then + func_to_tool_file "$output" + postlink_cmds=`func_echo_all "$postlink_cmds" | $SED -e 's%@OUTPUT@%'"$output"'%g' -e 's%@TOOL_OUTPUT@%'"$func_to_tool_file_result"'%g'` + func_execute_cmds "$postlink_cmds" 'exit $?' + fi + + exit $EXIT_SUCCESS + fi + + case $hardcode_action,$fast_install in + relink,*) + # Fast installation is not supported + link_command=$compile_var$compile_command$compile_rpath + relink_command=$finalize_var$finalize_command$finalize_rpath + + func_warning "this platform does not like uninstalled shared libraries" + func_warning "'$output' will be relinked during installation" + ;; + *,yes) + link_command=$finalize_var$compile_command$finalize_rpath + relink_command=`$ECHO "$compile_var$compile_command$compile_rpath" | $SED 's%@OUTPUT@%\$progdir/\$file%g'` + ;; + *,no) + link_command=$compile_var$compile_command$compile_rpath + relink_command=$finalize_var$finalize_command$finalize_rpath + ;; + *,needless) + link_command=$finalize_var$compile_command$finalize_rpath + relink_command= + ;; + esac + + # Replace the output file specification. + link_command=`$ECHO "$link_command" | $SED 's%@OUTPUT@%'"$output_objdir/$outputname"'%g'` + + # Delete the old output files. + $opt_dry_run || $RM $output $output_objdir/$outputname $output_objdir/lt-$outputname + + func_show_eval "$link_command" 'exit $?' + + if test -n "$postlink_cmds"; then + func_to_tool_file "$output_objdir/$outputname" + postlink_cmds=`func_echo_all "$postlink_cmds" | $SED -e 's%@OUTPUT@%'"$output_objdir/$outputname"'%g' -e 's%@TOOL_OUTPUT@%'"$func_to_tool_file_result"'%g'` + func_execute_cmds "$postlink_cmds" 'exit $?' + fi + + # Now create the wrapper script. + func_verbose "creating $output" + + # Quote the relink command for shipping. + if test -n "$relink_command"; then + # Preserve any variables that may affect compiler behavior + for var in $variables_saved_for_relink; do + if eval test -z \"\${$var+set}\"; then + relink_command="{ test -z \"\${$var+set}\" || $lt_unset $var || { $var=; export $var; }; }; $relink_command" + elif eval var_value=\$$var; test -z "$var_value"; then + relink_command="$var=; export $var; $relink_command" + else + func_quote_for_eval "$var_value" + relink_command="$var=$func_quote_for_eval_result; export $var; $relink_command" + fi + done + relink_command="(cd `pwd`; $relink_command)" + relink_command=`$ECHO "$relink_command" | $SED "$sed_quote_subst"` + fi + + # Only actually do things if not in dry run mode. + $opt_dry_run || { + # win32 will think the script is a binary if it has + # a .exe suffix, so we strip it off here. + case $output in + *.exe) func_stripname '' '.exe' "$output" + output=$func_stripname_result ;; + esac + # test for cygwin because mv fails w/o .exe extensions + case $host in + *cygwin*) + exeext=.exe + func_stripname '' '.exe' "$outputname" + outputname=$func_stripname_result ;; + *) exeext= ;; + esac + case $host in + *cygwin* | *mingw* ) + func_dirname_and_basename "$output" "" "." + output_name=$func_basename_result + output_path=$func_dirname_result + cwrappersource=$output_path/$objdir/lt-$output_name.c + cwrapper=$output_path/$output_name.exe + $RM $cwrappersource $cwrapper + trap "$RM $cwrappersource $cwrapper; exit $EXIT_FAILURE" 1 2 15 + + func_emit_cwrapperexe_src > $cwrappersource + + # The wrapper executable is built using the $host compiler, + # because it contains $host paths and files. If cross- + # compiling, it, like the target executable, must be + # executed on the $host or under an emulation environment. + $opt_dry_run || { + $LTCC $LTCFLAGS -o $cwrapper $cwrappersource + $STRIP $cwrapper + } + + # Now, create the wrapper script for func_source use: + func_ltwrapper_scriptname $cwrapper + $RM $func_ltwrapper_scriptname_result + trap "$RM $func_ltwrapper_scriptname_result; exit $EXIT_FAILURE" 1 2 15 + $opt_dry_run || { + # note: this script will not be executed, so do not chmod. + if test "x$build" = "x$host"; then + $cwrapper --lt-dump-script > $func_ltwrapper_scriptname_result + else + func_emit_wrapper no > $func_ltwrapper_scriptname_result + fi + } + ;; + * ) + $RM $output + trap "$RM $output; exit $EXIT_FAILURE" 1 2 15 + + func_emit_wrapper no > $output + chmod +x $output + ;; + esac + } + exit $EXIT_SUCCESS + ;; + esac + + # See if we need to build an old-fashioned archive. + for oldlib in $oldlibs; do + + case $build_libtool_libs in + convenience) + oldobjs="$libobjs_save $symfileobj" + addlibs=$convenience + build_libtool_libs=no + ;; + module) + oldobjs=$libobjs_save + addlibs=$old_convenience + build_libtool_libs=no + ;; + *) + oldobjs="$old_deplibs $non_pic_objects" + $preload && test -f "$symfileobj" \ + && func_append oldobjs " $symfileobj" + addlibs=$old_convenience + ;; + esac + + if test -n "$addlibs"; then + gentop=$output_objdir/${outputname}x + func_append generated " $gentop" + + func_extract_archives $gentop $addlibs + func_append oldobjs " $func_extract_archives_result" + fi + + # Do each command in the archive commands. + if test -n "$old_archive_from_new_cmds" && test yes = "$build_libtool_libs"; then + cmds=$old_archive_from_new_cmds + else + + # Add any objects from preloaded convenience libraries + if test -n "$dlprefiles"; then + gentop=$output_objdir/${outputname}x + func_append generated " $gentop" + + func_extract_archives $gentop $dlprefiles + func_append oldobjs " $func_extract_archives_result" + fi + + # POSIX demands no paths to be encoded in archives. We have + # to avoid creating archives with duplicate basenames if we + # might have to extract them afterwards, e.g., when creating a + # static archive out of a convenience library, or when linking + # the entirety of a libtool archive into another (currently + # not supported by libtool). + if (for obj in $oldobjs + do + func_basename "$obj" + $ECHO "$func_basename_result" + done | sort | sort -uc >/dev/null 2>&1); then + : + else + echo "copying selected object files to avoid basename conflicts..." + gentop=$output_objdir/${outputname}x + func_append generated " $gentop" + func_mkdir_p "$gentop" + save_oldobjs=$oldobjs + oldobjs= + counter=1 + for obj in $save_oldobjs + do + func_basename "$obj" + objbase=$func_basename_result + case " $oldobjs " in + " ") oldobjs=$obj ;; + *[\ /]"$objbase "*) + while :; do + # Make sure we don't pick an alternate name that also + # overlaps. + newobj=lt$counter-$objbase + func_arith $counter + 1 + counter=$func_arith_result + case " $oldobjs " in + *[\ /]"$newobj "*) ;; + *) if test ! -f "$gentop/$newobj"; then break; fi ;; + esac + done + func_show_eval "ln $obj $gentop/$newobj || cp $obj $gentop/$newobj" + func_append oldobjs " $gentop/$newobj" + ;; + *) func_append oldobjs " $obj" ;; + esac + done + fi + func_to_tool_file "$oldlib" func_convert_file_msys_to_w32 + tool_oldlib=$func_to_tool_file_result + eval cmds=\"$old_archive_cmds\" + + func_len " $cmds" + len=$func_len_result + if test "$len" -lt "$max_cmd_len" || test "$max_cmd_len" -le -1; then + cmds=$old_archive_cmds + elif test -n "$archiver_list_spec"; then + func_verbose "using command file archive linking..." + for obj in $oldobjs + do + func_to_tool_file "$obj" + $ECHO "$func_to_tool_file_result" + done > $output_objdir/$libname.libcmd + func_to_tool_file "$output_objdir/$libname.libcmd" + oldobjs=" $archiver_list_spec$func_to_tool_file_result" + cmds=$old_archive_cmds + else + # the command line is too long to link in one step, link in parts + func_verbose "using piecewise archive linking..." + save_RANLIB=$RANLIB + RANLIB=: + objlist= + concat_cmds= + save_oldobjs=$oldobjs + oldobjs= + # Is there a better way of finding the last object in the list? + for obj in $save_oldobjs + do + last_oldobj=$obj + done + eval test_cmds=\"$old_archive_cmds\" + func_len " $test_cmds" + len0=$func_len_result + len=$len0 + for obj in $save_oldobjs + do + func_len " $obj" + func_arith $len + $func_len_result + len=$func_arith_result + func_append objlist " $obj" + if test "$len" -lt "$max_cmd_len"; then + : + else + # the above command should be used before it gets too long + oldobjs=$objlist + if test "$obj" = "$last_oldobj"; then + RANLIB=$save_RANLIB + fi + test -z "$concat_cmds" || concat_cmds=$concat_cmds~ + eval concat_cmds=\"\$concat_cmds$old_archive_cmds\" + objlist= + len=$len0 + fi + done + RANLIB=$save_RANLIB + oldobjs=$objlist + if test -z "$oldobjs"; then + eval cmds=\"\$concat_cmds\" + else + eval cmds=\"\$concat_cmds~\$old_archive_cmds\" + fi + fi + fi + func_execute_cmds "$cmds" 'exit $?' + done + + test -n "$generated" && \ + func_show_eval "${RM}r$generated" + + # Now create the libtool archive. + case $output in + *.la) + old_library= + test yes = "$build_old_libs" && old_library=$libname.$libext + func_verbose "creating $output" + + # Preserve any variables that may affect compiler behavior + for var in $variables_saved_for_relink; do + if eval test -z \"\${$var+set}\"; then + relink_command="{ test -z \"\${$var+set}\" || $lt_unset $var || { $var=; export $var; }; }; $relink_command" + elif eval var_value=\$$var; test -z "$var_value"; then + relink_command="$var=; export $var; $relink_command" + else + func_quote_for_eval "$var_value" + relink_command="$var=$func_quote_for_eval_result; export $var; $relink_command" + fi + done + # Quote the link command for shipping. + relink_command="(cd `pwd`; $SHELL \"$progpath\" $preserve_args --mode=relink $libtool_args @inst_prefix_dir@)" + relink_command=`$ECHO "$relink_command" | $SED "$sed_quote_subst"` + if test yes = "$hardcode_automatic"; then + relink_command= + fi + + # Only create the output if not a dry run. + $opt_dry_run || { + for installed in no yes; do + if test yes = "$installed"; then + if test -z "$install_libdir"; then + break + fi + output=$output_objdir/${outputname}i + # Replace all uninstalled libtool libraries with the installed ones + newdependency_libs= + for deplib in $dependency_libs; do + case $deplib in + *.la) + func_basename "$deplib" + name=$func_basename_result + func_resolve_sysroot "$deplib" + eval libdir=`$SED -n -e 's/^libdir=\(.*\)$/\1/p' $func_resolve_sysroot_result` + test -z "$libdir" && \ + func_fatal_error "'$deplib' is not a valid libtool archive" + func_append newdependency_libs " ${lt_sysroot:+=}$libdir/$name" + ;; + -L*) + func_stripname -L '' "$deplib" + func_replace_sysroot "$func_stripname_result" + func_append newdependency_libs " -L$func_replace_sysroot_result" + ;; + -R*) + func_stripname -R '' "$deplib" + func_replace_sysroot "$func_stripname_result" + func_append newdependency_libs " -R$func_replace_sysroot_result" + ;; + *) func_append newdependency_libs " $deplib" ;; + esac + done + dependency_libs=$newdependency_libs + newdlfiles= + + for lib in $dlfiles; do + case $lib in + *.la) + func_basename "$lib" + name=$func_basename_result + eval libdir=`$SED -n -e 's/^libdir=\(.*\)$/\1/p' $lib` + test -z "$libdir" && \ + func_fatal_error "'$lib' is not a valid libtool archive" + func_append newdlfiles " ${lt_sysroot:+=}$libdir/$name" + ;; + *) func_append newdlfiles " $lib" ;; + esac + done + dlfiles=$newdlfiles + newdlprefiles= + for lib in $dlprefiles; do + case $lib in + *.la) + # Only pass preopened files to the pseudo-archive (for + # eventual linking with the app. that links it) if we + # didn't already link the preopened objects directly into + # the library: + func_basename "$lib" + name=$func_basename_result + eval libdir=`$SED -n -e 's/^libdir=\(.*\)$/\1/p' $lib` + test -z "$libdir" && \ + func_fatal_error "'$lib' is not a valid libtool archive" + func_append newdlprefiles " ${lt_sysroot:+=}$libdir/$name" + ;; + esac + done + dlprefiles=$newdlprefiles + else + newdlfiles= + for lib in $dlfiles; do + case $lib in + [\\/]* | [A-Za-z]:[\\/]*) abs=$lib ;; + *) abs=`pwd`"/$lib" ;; + esac + func_append newdlfiles " $abs" + done + dlfiles=$newdlfiles + newdlprefiles= + for lib in $dlprefiles; do + case $lib in + [\\/]* | [A-Za-z]:[\\/]*) abs=$lib ;; + *) abs=`pwd`"/$lib" ;; + esac + func_append newdlprefiles " $abs" + done + dlprefiles=$newdlprefiles + fi + $RM $output + # place dlname in correct position for cygwin + # In fact, it would be nice if we could use this code for all target + # systems that can't hard-code library paths into their executables + # and that have no shared library path variable independent of PATH, + # but it turns out we can't easily determine that from inspecting + # libtool variables, so we have to hard-code the OSs to which it + # applies here; at the moment, that means platforms that use the PE + # object format with DLL files. See the long comment at the top of + # tests/bindir.at for full details. + tdlname=$dlname + case $host,$output,$installed,$module,$dlname in + *cygwin*,*lai,yes,no,*.dll | *mingw*,*lai,yes,no,*.dll | *cegcc*,*lai,yes,no,*.dll) + # If a -bindir argument was supplied, place the dll there. + if test -n "$bindir"; then + func_relative_path "$install_libdir" "$bindir" + tdlname=$func_relative_path_result/$dlname + else + # Otherwise fall back on heuristic. + tdlname=../bin/$dlname + fi + ;; + esac + $ECHO > $output "\ +# $outputname - a libtool library file +# Generated by $PROGRAM (GNU $PACKAGE) $VERSION +# +# Please DO NOT delete this file! +# It is necessary for linking the library. + +# The name that we can dlopen(3). +dlname='$tdlname' + +# Names of this library. +library_names='$library_names' + +# The name of the static archive. +old_library='$old_library' + +# Linker flags that cannot go in dependency_libs. +inherited_linker_flags='$new_inherited_linker_flags' + +# Libraries that this one depends upon. +dependency_libs='$dependency_libs' + +# Names of additional weak libraries provided by this library +weak_library_names='$weak_libs' + +# Version information for $libname. +current=$current +age=$age +revision=$revision + +# Is this an already installed library? +installed=$installed + +# Should we warn about portability when linking against -modules? +shouldnotlink=$module + +# Files to dlopen/dlpreopen +dlopen='$dlfiles' +dlpreopen='$dlprefiles' + +# Directory that this library needs to be installed in: +libdir='$install_libdir'" + if test no,yes = "$installed,$need_relink"; then + $ECHO >> $output "\ +relink_command=\"$relink_command\"" + fi + done + } + + # Do a symbolic link so that the libtool archive can be found in + # LD_LIBRARY_PATH before the program is installed. + func_show_eval '( cd "$output_objdir" && $RM "$outputname" && $LN_S "../$outputname" "$outputname" )' 'exit $?' + ;; + esac + exit $EXIT_SUCCESS +} + +if test link = "$opt_mode" || test relink = "$opt_mode"; then + func_mode_link ${1+"$@"} +fi + + +# func_mode_uninstall arg... +func_mode_uninstall () +{ + $debug_cmd + + RM=$nonopt + files= + rmforce=false + exit_status=0 + + # This variable tells wrapper scripts just to set variables rather + # than running their programs. + libtool_install_magic=$magic + + for arg + do + case $arg in + -f) func_append RM " $arg"; rmforce=: ;; + -*) func_append RM " $arg" ;; + *) func_append files " $arg" ;; + esac + done + + test -z "$RM" && \ + func_fatal_help "you must specify an RM program" + + rmdirs= + + for file in $files; do + func_dirname "$file" "" "." + dir=$func_dirname_result + if test . = "$dir"; then + odir=$objdir + else + odir=$dir/$objdir + fi + func_basename "$file" + name=$func_basename_result + test uninstall = "$opt_mode" && odir=$dir + + # Remember odir for removal later, being careful to avoid duplicates + if test clean = "$opt_mode"; then + case " $rmdirs " in + *" $odir "*) ;; + *) func_append rmdirs " $odir" ;; + esac + fi + + # Don't error if the file doesn't exist and rm -f was used. + if { test -L "$file"; } >/dev/null 2>&1 || + { test -h "$file"; } >/dev/null 2>&1 || + test -f "$file"; then + : + elif test -d "$file"; then + exit_status=1 + continue + elif $rmforce; then + continue + fi + + rmfiles=$file + + case $name in + *.la) + # Possibly a libtool archive, so verify it. + if func_lalib_p "$file"; then + func_source $dir/$name + + # Delete the libtool libraries and symlinks. + for n in $library_names; do + func_append rmfiles " $odir/$n" + done + test -n "$old_library" && func_append rmfiles " $odir/$old_library" + + case $opt_mode in + clean) + case " $library_names " in + *" $dlname "*) ;; + *) test -n "$dlname" && func_append rmfiles " $odir/$dlname" ;; + esac + test -n "$libdir" && func_append rmfiles " $odir/$name $odir/${name}i" + ;; + uninstall) + if test -n "$library_names"; then + # Do each command in the postuninstall commands. + func_execute_cmds "$postuninstall_cmds" '$rmforce || exit_status=1' + fi + + if test -n "$old_library"; then + # Do each command in the old_postuninstall commands. + func_execute_cmds "$old_postuninstall_cmds" '$rmforce || exit_status=1' + fi + # FIXME: should reinstall the best remaining shared library. + ;; + esac + fi + ;; + + *.lo) + # Possibly a libtool object, so verify it. + if func_lalib_p "$file"; then + + # Read the .lo file + func_source $dir/$name + + # Add PIC object to the list of files to remove. + if test -n "$pic_object" && test none != "$pic_object"; then + func_append rmfiles " $dir/$pic_object" + fi + + # Add non-PIC object to the list of files to remove. + if test -n "$non_pic_object" && test none != "$non_pic_object"; then + func_append rmfiles " $dir/$non_pic_object" + fi + fi + ;; + + *) + if test clean = "$opt_mode"; then + noexename=$name + case $file in + *.exe) + func_stripname '' '.exe' "$file" + file=$func_stripname_result + func_stripname '' '.exe' "$name" + noexename=$func_stripname_result + # $file with .exe has already been added to rmfiles, + # add $file without .exe + func_append rmfiles " $file" + ;; + esac + # Do a test to see if this is a libtool program. + if func_ltwrapper_p "$file"; then + if func_ltwrapper_executable_p "$file"; then + func_ltwrapper_scriptname "$file" + relink_command= + func_source $func_ltwrapper_scriptname_result + func_append rmfiles " $func_ltwrapper_scriptname_result" + else + relink_command= + func_source $dir/$noexename + fi + + # note $name still contains .exe if it was in $file originally + # as does the version of $file that was added into $rmfiles + func_append rmfiles " $odir/$name $odir/${name}S.$objext" + if test yes = "$fast_install" && test -n "$relink_command"; then + func_append rmfiles " $odir/lt-$name" + fi + if test "X$noexename" != "X$name"; then + func_append rmfiles " $odir/lt-$noexename.c" + fi + fi + fi + ;; + esac + func_show_eval "$RM $rmfiles" 'exit_status=1' + done + + # Try to remove the $objdir's in the directories where we deleted files + for dir in $rmdirs; do + if test -d "$dir"; then + func_show_eval "rmdir $dir >/dev/null 2>&1" + fi + done + + exit $exit_status +} + +if test uninstall = "$opt_mode" || test clean = "$opt_mode"; then + func_mode_uninstall ${1+"$@"} +fi + +test -z "$opt_mode" && { + help=$generic_help + func_fatal_help "you must specify a MODE" +} + +test -z "$exec_cmd" && \ + func_fatal_help "invalid operation mode '$opt_mode'" + +if test -n "$exec_cmd"; then + eval exec "$exec_cmd" + exit $EXIT_FAILURE +fi + +exit $exit_status + + +# The TAGs below are defined such that we never get into a situation +# where we disable both kinds of libraries. Given conflicting +# choices, we go for a static library, that is the most portable, +# since we can't tell whether shared libraries were disabled because +# the user asked for that or because the platform doesn't support +# them. This is particularly important on AIX, because we don't +# support having both static and shared libraries enabled at the same +# time on that platform, so we default to a shared-only configuration. +# If a disable-shared tag is given, we'll fallback to a static-only +# configuration. But we'll never go from static-only to shared-only. + +# ### BEGIN LIBTOOL TAG CONFIG: disable-shared +build_libtool_libs=no +build_old_libs=yes +# ### END LIBTOOL TAG CONFIG: disable-shared + +# ### BEGIN LIBTOOL TAG CONFIG: disable-static +build_old_libs=`case $build_libtool_libs in yes) echo no;; *) echo yes;; esac` +# ### END LIBTOOL TAG CONFIG: disable-static + +# Local Variables: +# mode:shell-script +# sh-indentation:2 +# End: diff --git a/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi/man/Makefile.in b/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi/man/Makefile.in new file mode 100644 index 0000000000..c902fce0a9 --- /dev/null +++ b/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi/man/Makefile.in @@ -0,0 +1,558 @@ +# Makefile.in generated by automake 1.15 from Makefile.am. +# @configure_input@ + +# Copyright (C) 1994-2014 Free Software Foundation, Inc. + +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. + +@SET_MAKE@ +VPATH = @srcdir@ +am__is_gnu_make = { \ + if test -z '$(MAKELEVEL)'; then \ + false; \ + elif test -n '$(MAKE_HOST)'; then \ + true; \ + elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ + true; \ + else \ + false; \ + fi; \ +} +am__make_running_with_option = \ + case $${target_option-} in \ + ?) ;; \ + *) echo "am__make_running_with_option: internal error: invalid" \ + "target option '$${target_option-}' specified" >&2; \ + exit 1;; \ + esac; \ + has_opt=no; \ + sane_makeflags=$$MAKEFLAGS; \ + if $(am__is_gnu_make); then \ + sane_makeflags=$$MFLAGS; \ + else \ + case $$MAKEFLAGS in \ + *\\[\ \ ]*) \ + bs=\\; \ + sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ + | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \ + esac; \ + fi; \ + skip_next=no; \ + strip_trailopt () \ + { \ + flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ + }; \ + for flg in $$sane_makeflags; do \ + test $$skip_next = yes && { skip_next=no; continue; }; \ + case $$flg in \ + *=*|--*) continue;; \ + -*I) strip_trailopt 'I'; skip_next=yes;; \ + -*I?*) strip_trailopt 'I';; \ + -*O) strip_trailopt 'O'; skip_next=yes;; \ + -*O?*) strip_trailopt 'O';; \ + -*l) strip_trailopt 'l'; skip_next=yes;; \ + -*l?*) strip_trailopt 'l';; \ + -[dEDm]) skip_next=yes;; \ + -[JT]) skip_next=yes;; \ + esac; \ + case $$flg in \ + *$$target_option*) has_opt=yes; break;; \ + esac; \ + done; \ + test $$has_opt = yes +am__make_dryrun = (target_option=n; $(am__make_running_with_option)) +am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) +pkgdatadir = $(datadir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +install_sh_DATA = $(install_sh) -c -m 644 +install_sh_PROGRAM = $(install_sh) -c +install_sh_SCRIPT = $(install_sh) -c +INSTALL_HEADER = $(INSTALL_DATA) +transform = $(program_transform_name) +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_triplet = @build@ +host_triplet = @host@ +target_triplet = @target@ +subdir = man +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/m4/asmcfi.m4 \ + $(top_srcdir)/m4/ax_append_flag.m4 \ + $(top_srcdir)/m4/ax_cc_maxopt.m4 \ + $(top_srcdir)/m4/ax_cflags_warn_all.m4 \ + $(top_srcdir)/m4/ax_check_compile_flag.m4 \ + $(top_srcdir)/m4/ax_compiler_vendor.m4 \ + $(top_srcdir)/m4/ax_configure_args.m4 \ + $(top_srcdir)/m4/ax_enable_builddir.m4 \ + $(top_srcdir)/m4/ax_gcc_archflag.m4 \ + $(top_srcdir)/m4/ax_gcc_x86_cpuid.m4 \ + $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ + $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ + $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/acinclude.m4 \ + $(top_srcdir)/configure.ac +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) +DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON) +mkinstalldirs = $(install_sh) -d +CONFIG_HEADER = $(top_builddir)/fficonfig.h +CONFIG_CLEAN_FILES = +CONFIG_CLEAN_VPATH_FILES = +AM_V_P = $(am__v_P_@AM_V@) +am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) +am__v_P_0 = false +am__v_P_1 = : +AM_V_GEN = $(am__v_GEN_@AM_V@) +am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) +am__v_GEN_0 = @echo " GEN " $@; +am__v_GEN_1 = +AM_V_at = $(am__v_at_@AM_V@) +am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) +am__v_at_0 = @ +am__v_at_1 = +SOURCES = +DIST_SOURCES = +am__can_run_installinfo = \ + case $$AM_UPDATE_INFO_DIR in \ + n|no|NO) false;; \ + *) (install-info --version) >/dev/null 2>&1;; \ + esac +am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; +am__vpath_adj = case $$p in \ + $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ + *) f=$$p;; \ + esac; +am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; +am__install_max = 40 +am__nobase_strip_setup = \ + srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` +am__nobase_strip = \ + for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" +am__nobase_list = $(am__nobase_strip_setup); \ + for p in $$list; do echo "$$p $$p"; done | \ + sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ + $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ + if (++n[$$2] == $(am__install_max)) \ + { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ + END { for (dir in files) print dir, files[dir] }' +am__base_list = \ + sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ + sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' +am__uninstall_files_from_dir = { \ + test -z "$$files" \ + || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \ + || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ + $(am__cd) "$$dir" && rm -f $$files; }; \ + } +man3dir = $(mandir)/man3 +am__installdirs = "$(DESTDIR)$(man3dir)" +NROFF = nroff +MANS = $(man_MANS) +am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) +am__DIST_COMMON = $(srcdir)/Makefile.in +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +ACLOCAL = @ACLOCAL@ +ALLOCA = @ALLOCA@ +AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ +AM_LTLDFLAGS = @AM_LTLDFLAGS@ +AM_RUNTESTFLAGS = @AM_RUNTESTFLAGS@ +AR = @AR@ +AUTOCONF = @AUTOCONF@ +AUTOHEADER = @AUTOHEADER@ +AUTOMAKE = @AUTOMAKE@ +AWK = @AWK@ +CC = @CC@ +CCAS = @CCAS@ +CCASDEPMODE = @CCASDEPMODE@ +CCASFLAGS = @CCASFLAGS@ +CCDEPMODE = @CCDEPMODE@ +CFLAGS = @CFLAGS@ +CPP = @CPP@ +CPPFLAGS = @CPPFLAGS@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +CXXDEPMODE = @CXXDEPMODE@ +CXXFLAGS = @CXXFLAGS@ +CYGPATH_W = @CYGPATH_W@ +DEFS = @DEFS@ +DEPDIR = @DEPDIR@ +DLLTOOL = @DLLTOOL@ +DSYMUTIL = @DSYMUTIL@ +DUMPBIN = @DUMPBIN@ +ECHO_C = @ECHO_C@ +ECHO_N = @ECHO_N@ +ECHO_T = @ECHO_T@ +EGREP = @EGREP@ +EXEEXT = @EXEEXT@ +FFI_EXEC_TRAMPOLINE_TABLE = @FFI_EXEC_TRAMPOLINE_TABLE@ +FGREP = @FGREP@ +GREP = @GREP@ +HAVE_LONG_DOUBLE = @HAVE_LONG_DOUBLE@ +HAVE_LONG_DOUBLE_VARIANT = @HAVE_LONG_DOUBLE_VARIANT@ +INSTALL = @INSTALL@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +LD = @LD@ +LDFLAGS = @LDFLAGS@ +LIBOBJS = @LIBOBJS@ +LIBS = @LIBS@ +LIBTOOL = @LIBTOOL@ +LIPO = @LIPO@ +LN_S = @LN_S@ +LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MANIFEST_TOOL = @MANIFEST_TOOL@ +MKDIR_P = @MKDIR_P@ +NM = @NM@ +NMEDIT = @NMEDIT@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +OPT_LDFLAGS = @OPT_LDFLAGS@ +OTOOL = @OTOOL@ +OTOOL64 = @OTOOL64@ +PACKAGE = @PACKAGE@ +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ +PACKAGE_NAME = @PACKAGE_NAME@ +PACKAGE_STRING = @PACKAGE_STRING@ +PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_URL = @PACKAGE_URL@ +PACKAGE_VERSION = @PACKAGE_VERSION@ +PATH_SEPARATOR = @PATH_SEPARATOR@ +PRTDIAG = @PRTDIAG@ +RANLIB = @RANLIB@ +SECTION_LDFLAGS = @SECTION_LDFLAGS@ +SED = @SED@ +SET_MAKE = @SET_MAKE@ +SHELL = @SHELL@ +STRIP = @STRIP@ +TARGET = @TARGET@ +TARGETDIR = @TARGETDIR@ +TARGET_OBJ = @TARGET_OBJ@ +VERSION = @VERSION@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ +ac_ct_AR = @ac_ct_AR@ +ac_ct_CC = @ac_ct_CC@ +ac_ct_CXX = @ac_ct_CXX@ +ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ +am__include = @am__include@ +am__leading_dot = @am__leading_dot@ +am__quote = @am__quote@ +am__tar = @am__tar@ +am__untar = @am__untar@ +ax_enable_builddir_sed = @ax_enable_builddir_sed@ +bindir = @bindir@ +build = @build@ +build_alias = @build_alias@ +build_cpu = @build_cpu@ +build_os = @build_os@ +build_vendor = @build_vendor@ +builddir = @builddir@ +datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ +exec_prefix = @exec_prefix@ +host = @host@ +host_alias = @host_alias@ +host_cpu = @host_cpu@ +host_os = @host_os@ +host_vendor = @host_vendor@ +htmldir = @htmldir@ +includedir = @includedir@ +infodir = @infodir@ +install_sh = @install_sh@ +libdir = @libdir@ +libexecdir = @libexecdir@ +localedir = @localedir@ +localstatedir = @localstatedir@ +mandir = @mandir@ +mkdir_p = @mkdir_p@ +oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ +prefix = @prefix@ +program_transform_name = @program_transform_name@ +psdir = @psdir@ +runstatedir = @runstatedir@ +sbindir = @sbindir@ +sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ +sys_symbol_underscore = @sys_symbol_underscore@ +sysconfdir = @sysconfdir@ +target = @target@ +target_alias = @target_alias@ +target_cpu = @target_cpu@ +target_os = @target_os@ +target_vendor = @target_vendor@ +toolexecdir = @toolexecdir@ +toolexeclibdir = @toolexeclibdir@ +top_build_prefix = @top_build_prefix@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ +AUTOMAKE_OPTIONS = foreign +EXTRA_DIST = ffi.3 ffi_call.3 ffi_prep_cif.3 ffi_prep_cif_var.3 +man_MANS = ffi.3 ffi_call.3 ffi_prep_cif.3 ffi_prep_cif_var.3 +all: all-am + +.SUFFIXES: +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ + && { if test -f $@; then exit 0; else break; fi; }; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign man/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --foreign man/Makefile +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + @case '$?' in \ + *config.status*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ + *) \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + esac; + +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh + +$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(am__aclocal_m4_deps): + +mostlyclean-libtool: + -rm -f *.lo + +clean-libtool: + -rm -rf .libs _libs +install-man3: $(man_MANS) + @$(NORMAL_INSTALL) + @list1=''; \ + list2='$(man_MANS)'; \ + test -n "$(man3dir)" \ + && test -n "`echo $$list1$$list2`" \ + || exit 0; \ + echo " $(MKDIR_P) '$(DESTDIR)$(man3dir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(man3dir)" || exit 1; \ + { for i in $$list1; do echo "$$i"; done; \ + if test -n "$$list2"; then \ + for i in $$list2; do echo "$$i"; done \ + | sed -n '/\.3[a-z]*$$/p'; \ + fi; \ + } | while read p; do \ + if test -f $$p; then d=; else d="$(srcdir)/"; fi; \ + echo "$$d$$p"; echo "$$p"; \ + done | \ + sed -e 'n;s,.*/,,;p;h;s,.*\.,,;s,^[^3][0-9a-z]*$$,3,;x' \ + -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,' | \ + sed 'N;N;s,\n, ,g' | { \ + list=; while read file base inst; do \ + if test "$$base" = "$$inst"; then list="$$list $$file"; else \ + echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man3dir)/$$inst'"; \ + $(INSTALL_DATA) "$$file" "$(DESTDIR)$(man3dir)/$$inst" || exit $$?; \ + fi; \ + done; \ + for i in $$list; do echo "$$i"; done | $(am__base_list) | \ + while read files; do \ + test -z "$$files" || { \ + echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(man3dir)'"; \ + $(INSTALL_DATA) $$files "$(DESTDIR)$(man3dir)" || exit $$?; }; \ + done; } + +uninstall-man3: + @$(NORMAL_UNINSTALL) + @list=''; test -n "$(man3dir)" || exit 0; \ + files=`{ for i in $$list; do echo "$$i"; done; \ + l2='$(man_MANS)'; for i in $$l2; do echo "$$i"; done | \ + sed -n '/\.3[a-z]*$$/p'; \ + } | sed -e 's,.*/,,;h;s,.*\.,,;s,^[^3][0-9a-z]*$$,3,;x' \ + -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \ + dir='$(DESTDIR)$(man3dir)'; $(am__uninstall_files_from_dir) +tags TAGS: + +ctags CTAGS: + +cscope cscopelist: + + +distdir: $(DISTFILES) + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ + else \ + test -f "$(distdir)/$$file" \ + || cp -p $$d/$$file "$(distdir)/$$file" \ + || exit 1; \ + fi; \ + done +check-am: all-am +check: check-am +all-am: Makefile $(MANS) +installdirs: + for dir in "$(DESTDIR)$(man3dir)"; do \ + test -z "$$dir" || $(MKDIR_P) "$$dir"; \ + done +install: install-am +install-exec: install-exec-am +install-data: install-data-am +uninstall: uninstall-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am + +installcheck: installcheck-am +install-strip: + if test -z '$(STRIP)'; then \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + install; \ + else \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ + fi +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) + +maintainer-clean-generic: + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." +clean: clean-am + +clean-am: clean-generic clean-libtool mostlyclean-am + +distclean: distclean-am + -rm -f Makefile +distclean-am: clean-am distclean-generic + +dvi: dvi-am + +dvi-am: + +html: html-am + +html-am: + +info: info-am + +info-am: + +install-data-am: install-man + +install-dvi: install-dvi-am + +install-dvi-am: + +install-exec-am: + +install-html: install-html-am + +install-html-am: + +install-info: install-info-am + +install-info-am: + +install-man: install-man3 + +install-pdf: install-pdf-am + +install-pdf-am: + +install-ps: install-ps-am + +install-ps-am: + +installcheck-am: + +maintainer-clean: maintainer-clean-am + -rm -f Makefile +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-am + +mostlyclean-am: mostlyclean-generic mostlyclean-libtool + +pdf: pdf-am + +pdf-am: + +ps: ps-am + +ps-am: + +uninstall-am: uninstall-man + +uninstall-man: uninstall-man3 + +.MAKE: install-am install-strip + +.PHONY: all all-am check check-am clean clean-generic clean-libtool \ + cscopelist-am ctags-am distclean distclean-generic \ + distclean-libtool distdir dvi dvi-am html html-am info info-am \ + install install-am install-data install-data-am install-dvi \ + install-dvi-am install-exec install-exec-am install-html \ + install-html-am install-info install-info-am install-man \ + install-man3 install-pdf install-pdf-am install-ps \ + install-ps-am install-strip installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am tags-am uninstall uninstall-am uninstall-man \ + uninstall-man3 + +.PRECIOUS: Makefile + + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff --git a/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi/missing b/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi/missing new file mode 100755 index 0000000000..f62bbae306 --- /dev/null +++ b/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi/missing @@ -0,0 +1,215 @@ +#! /bin/sh +# Common wrapper for a few potentially missing GNU programs. + +scriptversion=2013-10-28.13; # UTC + +# Copyright (C) 1996-2014 Free Software Foundation, Inc. +# Originally written by Fran,cois Pinard , 1996. + +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +# As a special exception to the GNU General Public License, if you +# distribute this file as part of a program that contains a +# configuration script generated by Autoconf, you may include it under +# the same distribution terms that you use for the rest of that program. + +if test $# -eq 0; then + echo 1>&2 "Try '$0 --help' for more information" + exit 1 +fi + +case $1 in + + --is-lightweight) + # Used by our autoconf macros to check whether the available missing + # script is modern enough. + exit 0 + ;; + + --run) + # Back-compat with the calling convention used by older automake. + shift + ;; + + -h|--h|--he|--hel|--help) + echo "\ +$0 [OPTION]... PROGRAM [ARGUMENT]... + +Run 'PROGRAM [ARGUMENT]...', returning a proper advice when this fails due +to PROGRAM being missing or too old. + +Options: + -h, --help display this help and exit + -v, --version output version information and exit + +Supported PROGRAM values: + aclocal autoconf autoheader autom4te automake makeinfo + bison yacc flex lex help2man + +Version suffixes to PROGRAM as well as the prefixes 'gnu-', 'gnu', and +'g' are ignored when checking the name. + +Send bug reports to ." + exit $? + ;; + + -v|--v|--ve|--ver|--vers|--versi|--versio|--version) + echo "missing $scriptversion (GNU Automake)" + exit $? + ;; + + -*) + echo 1>&2 "$0: unknown '$1' option" + echo 1>&2 "Try '$0 --help' for more information" + exit 1 + ;; + +esac + +# Run the given program, remember its exit status. +"$@"; st=$? + +# If it succeeded, we are done. +test $st -eq 0 && exit 0 + +# Also exit now if we it failed (or wasn't found), and '--version' was +# passed; such an option is passed most likely to detect whether the +# program is present and works. +case $2 in --version|--help) exit $st;; esac + +# Exit code 63 means version mismatch. This often happens when the user +# tries to use an ancient version of a tool on a file that requires a +# minimum version. +if test $st -eq 63; then + msg="probably too old" +elif test $st -eq 127; then + # Program was missing. + msg="missing on your system" +else + # Program was found and executed, but failed. Give up. + exit $st +fi + +perl_URL=http://www.perl.org/ +flex_URL=http://flex.sourceforge.net/ +gnu_software_URL=http://www.gnu.org/software + +program_details () +{ + case $1 in + aclocal|automake) + echo "The '$1' program is part of the GNU Automake package:" + echo "<$gnu_software_URL/automake>" + echo "It also requires GNU Autoconf, GNU m4 and Perl in order to run:" + echo "<$gnu_software_URL/autoconf>" + echo "<$gnu_software_URL/m4/>" + echo "<$perl_URL>" + ;; + autoconf|autom4te|autoheader) + echo "The '$1' program is part of the GNU Autoconf package:" + echo "<$gnu_software_URL/autoconf/>" + echo "It also requires GNU m4 and Perl in order to run:" + echo "<$gnu_software_URL/m4/>" + echo "<$perl_URL>" + ;; + esac +} + +give_advice () +{ + # Normalize program name to check for. + normalized_program=`echo "$1" | sed ' + s/^gnu-//; t + s/^gnu//; t + s/^g//; t'` + + printf '%s\n' "'$1' is $msg." + + configure_deps="'configure.ac' or m4 files included by 'configure.ac'" + case $normalized_program in + autoconf*) + echo "You should only need it if you modified 'configure.ac'," + echo "or m4 files included by it." + program_details 'autoconf' + ;; + autoheader*) + echo "You should only need it if you modified 'acconfig.h' or" + echo "$configure_deps." + program_details 'autoheader' + ;; + automake*) + echo "You should only need it if you modified 'Makefile.am' or" + echo "$configure_deps." + program_details 'automake' + ;; + aclocal*) + echo "You should only need it if you modified 'acinclude.m4' or" + echo "$configure_deps." + program_details 'aclocal' + ;; + autom4te*) + echo "You might have modified some maintainer files that require" + echo "the 'autom4te' program to be rebuilt." + program_details 'autom4te' + ;; + bison*|yacc*) + echo "You should only need it if you modified a '.y' file." + echo "You may want to install the GNU Bison package:" + echo "<$gnu_software_URL/bison/>" + ;; + lex*|flex*) + echo "You should only need it if you modified a '.l' file." + echo "You may want to install the Fast Lexical Analyzer package:" + echo "<$flex_URL>" + ;; + help2man*) + echo "You should only need it if you modified a dependency" \ + "of a man page." + echo "You may want to install the GNU Help2man package:" + echo "<$gnu_software_URL/help2man/>" + ;; + makeinfo*) + echo "You should only need it if you modified a '.texi' file, or" + echo "any other file indirectly affecting the aspect of the manual." + echo "You might want to install the Texinfo package:" + echo "<$gnu_software_URL/texinfo/>" + echo "The spurious makeinfo call might also be the consequence of" + echo "using a buggy 'make' (AIX, DU, IRIX), in which case you might" + echo "want to install GNU make:" + echo "<$gnu_software_URL/make/>" + ;; + *) + echo "You might have modified some files without having the proper" + echo "tools for further handling them. Check the 'README' file, it" + echo "often tells you about the needed prerequisites for installing" + echo "this package. You may also peek at any GNU archive site, in" + echo "case some other package contains this missing '$1' program." + ;; + esac +} + +give_advice "$1" | sed -e '1s/^/WARNING: /' \ + -e '2,$s/^/ /' >&2 + +# Propagate the correct exit status (expected to be 127 for a program +# not found, 63 for a program that failed due to version mismatch). +exit $st + +# Local variables: +# eval: (add-hook 'write-file-hooks 'time-stamp) +# time-stamp-start: "scriptversion=" +# time-stamp-format: "%:y-%02m-%02d.%02H" +# time-stamp-time-zone: "UTC" +# time-stamp-end: "; # UTC" +# End: diff --git a/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/Makefile.in b/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/Makefile.in new file mode 100644 index 0000000000..30c4fdac39 --- /dev/null +++ b/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/ext/ffi_c/libffi/testsuite/Makefile.in @@ -0,0 +1,608 @@ +# Makefile.in generated by automake 1.15 from Makefile.am. +# @configure_input@ + +# Copyright (C) 1994-2014 Free Software Foundation, Inc. + +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. + +@SET_MAKE@ +VPATH = @srcdir@ +am__is_gnu_make = { \ + if test -z '$(MAKELEVEL)'; then \ + false; \ + elif test -n '$(MAKE_HOST)'; then \ + true; \ + elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ + true; \ + else \ + false; \ + fi; \ +} +am__make_running_with_option = \ + case $${target_option-} in \ + ?) ;; \ + *) echo "am__make_running_with_option: internal error: invalid" \ + "target option '$${target_option-}' specified" >&2; \ + exit 1;; \ + esac; \ + has_opt=no; \ + sane_makeflags=$$MAKEFLAGS; \ + if $(am__is_gnu_make); then \ + sane_makeflags=$$MFLAGS; \ + else \ + case $$MAKEFLAGS in \ + *\\[\ \ ]*) \ + bs=\\; \ + sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ + | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \ + esac; \ + fi; \ + skip_next=no; \ + strip_trailopt () \ + { \ + flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ + }; \ + for flg in $$sane_makeflags; do \ + test $$skip_next = yes && { skip_next=no; continue; }; \ + case $$flg in \ + *=*|--*) continue;; \ + -*I) strip_trailopt 'I'; skip_next=yes;; \ + -*I?*) strip_trailopt 'I';; \ + -*O) strip_trailopt 'O'; skip_next=yes;; \ + -*O?*) strip_trailopt 'O';; \ + -*l) strip_trailopt 'l'; skip_next=yes;; \ + -*l?*) strip_trailopt 'l';; \ + -[dEDm]) skip_next=yes;; \ + -[JT]) skip_next=yes;; \ + esac; \ + case $$flg in \ + *$$target_option*) has_opt=yes; break;; \ + esac; \ + done; \ + test $$has_opt = yes +am__make_dryrun = (target_option=n; $(am__make_running_with_option)) +am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) +pkgdatadir = $(datadir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +install_sh_DATA = $(install_sh) -c -m 644 +install_sh_PROGRAM = $(install_sh) -c +install_sh_SCRIPT = $(install_sh) -c +INSTALL_HEADER = $(INSTALL_DATA) +transform = $(program_transform_name) +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_triplet = @build@ +host_triplet = @host@ +target_triplet = @target@ +subdir = testsuite +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/m4/asmcfi.m4 \ + $(top_srcdir)/m4/ax_append_flag.m4 \ + $(top_srcdir)/m4/ax_cc_maxopt.m4 \ + $(top_srcdir)/m4/ax_cflags_warn_all.m4 \ + $(top_srcdir)/m4/ax_check_compile_flag.m4 \ + $(top_srcdir)/m4/ax_compiler_vendor.m4 \ + $(top_srcdir)/m4/ax_configure_args.m4 \ + $(top_srcdir)/m4/ax_enable_builddir.m4 \ + $(top_srcdir)/m4/ax_gcc_archflag.m4 \ + $(top_srcdir)/m4/ax_gcc_x86_cpuid.m4 \ + $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ + $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ + $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/acinclude.m4 \ + $(top_srcdir)/configure.ac +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) +DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON) +mkinstalldirs = $(install_sh) -d +CONFIG_HEADER = $(top_builddir)/fficonfig.h +CONFIG_CLEAN_FILES = +CONFIG_CLEAN_VPATH_FILES = +AM_V_P = $(am__v_P_@AM_V@) +am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) +am__v_P_0 = false +am__v_P_1 = : +AM_V_GEN = $(am__v_GEN_@AM_V@) +am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) +am__v_GEN_0 = @echo " GEN " $@; +am__v_GEN_1 = +AM_V_at = $(am__v_at_@AM_V@) +am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) +am__v_at_0 = @ +am__v_at_1 = +SOURCES = +DIST_SOURCES = +am__can_run_installinfo = \ + case $$AM_UPDATE_INFO_DIR in \ + n|no|NO) false;; \ + *) (install-info --version) >/dev/null 2>&1;; \ + esac +am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) +DEJATOOL = $(PACKAGE) +RUNTESTDEFAULTFLAGS = --tool $$tool --srcdir $$srcdir +EXPECT = expect +RUNTEST = runtest +am__DIST_COMMON = $(srcdir)/Makefile.in +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +ACLOCAL = @ACLOCAL@ +ALLOCA = @ALLOCA@ +AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ +AM_LTLDFLAGS = @AM_LTLDFLAGS@ +AM_RUNTESTFLAGS = @AM_RUNTESTFLAGS@ +AR = @AR@ +AUTOCONF = @AUTOCONF@ +AUTOHEADER = @AUTOHEADER@ +AUTOMAKE = @AUTOMAKE@ +AWK = @AWK@ +CC = @CC@ +CCAS = @CCAS@ +CCASDEPMODE = @CCASDEPMODE@ +CCASFLAGS = @CCASFLAGS@ +CCDEPMODE = @CCDEPMODE@ +CFLAGS = @CFLAGS@ +CPP = @CPP@ +CPPFLAGS = @CPPFLAGS@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +CXXDEPMODE = @CXXDEPMODE@ +CXXFLAGS = @CXXFLAGS@ +CYGPATH_W = @CYGPATH_W@ +DEFS = @DEFS@ +DEPDIR = @DEPDIR@ +DLLTOOL = @DLLTOOL@ +DSYMUTIL = @DSYMUTIL@ +DUMPBIN = @DUMPBIN@ +ECHO_C = @ECHO_C@ +ECHO_N = @ECHO_N@ +ECHO_T = @ECHO_T@ +EGREP = @EGREP@ +EXEEXT = @EXEEXT@ +FFI_EXEC_TRAMPOLINE_TABLE = @FFI_EXEC_TRAMPOLINE_TABLE@ +FGREP = @FGREP@ +GREP = @GREP@ +HAVE_LONG_DOUBLE = @HAVE_LONG_DOUBLE@ +HAVE_LONG_DOUBLE_VARIANT = @HAVE_LONG_DOUBLE_VARIANT@ +INSTALL = @INSTALL@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +LD = @LD@ +LDFLAGS = @LDFLAGS@ +LIBOBJS = @LIBOBJS@ +LIBS = @LIBS@ +LIBTOOL = @LIBTOOL@ +LIPO = @LIPO@ +LN_S = @LN_S@ +LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MANIFEST_TOOL = @MANIFEST_TOOL@ +MKDIR_P = @MKDIR_P@ +NM = @NM@ +NMEDIT = @NMEDIT@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +OPT_LDFLAGS = @OPT_LDFLAGS@ +OTOOL = @OTOOL@ +OTOOL64 = @OTOOL64@ +PACKAGE = @PACKAGE@ +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ +PACKAGE_NAME = @PACKAGE_NAME@ +PACKAGE_STRING = @PACKAGE_STRING@ +PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_URL = @PACKAGE_URL@ +PACKAGE_VERSION = @PACKAGE_VERSION@ +PATH_SEPARATOR = @PATH_SEPARATOR@ +PRTDIAG = @PRTDIAG@ +RANLIB = @RANLIB@ +SECTION_LDFLAGS = @SECTION_LDFLAGS@ +SED = @SED@ +SET_MAKE = @SET_MAKE@ +SHELL = @SHELL@ +STRIP = @STRIP@ +TARGET = @TARGET@ +TARGETDIR = @TARGETDIR@ +TARGET_OBJ = @TARGET_OBJ@ +VERSION = @VERSION@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ +ac_ct_AR = @ac_ct_AR@ +ac_ct_CC = @ac_ct_CC@ +ac_ct_CXX = @ac_ct_CXX@ +ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ +am__include = @am__include@ +am__leading_dot = @am__leading_dot@ +am__quote = @am__quote@ +am__tar = @am__tar@ +am__untar = @am__untar@ +ax_enable_builddir_sed = @ax_enable_builddir_sed@ +bindir = @bindir@ +build = @build@ +build_alias = @build_alias@ +build_cpu = @build_cpu@ +build_os = @build_os@ +build_vendor = @build_vendor@ +builddir = @builddir@ +datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ +exec_prefix = @exec_prefix@ +host = @host@ +host_alias = @host_alias@ +host_cpu = @host_cpu@ +host_os = @host_os@ +host_vendor = @host_vendor@ +htmldir = @htmldir@ +includedir = @includedir@ +infodir = @infodir@ +install_sh = @install_sh@ +libdir = @libdir@ +libexecdir = @libexecdir@ +localedir = @localedir@ +localstatedir = @localstatedir@ +mandir = @mandir@ +mkdir_p = @mkdir_p@ +oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ +prefix = @prefix@ +program_transform_name = @program_transform_name@ +psdir = @psdir@ +runstatedir = @runstatedir@ +sbindir = @sbindir@ +sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ +sys_symbol_underscore = @sys_symbol_underscore@ +sysconfdir = @sysconfdir@ +target = @target@ +target_alias = @target_alias@ +target_cpu = @target_cpu@ +target_os = @target_os@ +target_vendor = @target_vendor@ +toolexecdir = @toolexecdir@ +toolexeclibdir = @toolexeclibdir@ +top_build_prefix = @top_build_prefix@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ +AUTOMAKE_OPTIONS = foreign dejagnu +EXTRA_DEJAGNU_SITE_CONFIG = ../local.exp +CLEANFILES = *.exe core* *.log *.sum +EXTRA_DIST = config/default.exp libffi.call/cls_19byte.c \ +libffi.call/cls_align_longdouble_split.c \ +libffi.call/closure_loc_fn0.c libffi.call/cls_schar.c \ +libffi.call/closure_fn1.c \ +libffi.call/return_ul.c libffi.call/cls_align_double.c \ +libffi.call/return_fl2.c libffi.call/cls_1_1byte.c \ +libffi.call/cls_64byte.c libffi.call/nested_struct7.c \ +libffi.call/cls_align_sint32.c libffi.call/nested_struct2.c \ +libffi.call/ffitest.h libffi.call/nested_struct4.c \ +libffi.call/cls_multi_ushort.c libffi.call/struct3.c \ +libffi.call/cls_3byte1.c libffi.call/cls_16byte.c \ +libffi.call/struct8.c libffi.call/nested_struct8.c \ +libffi.call/cls_multi_sshort.c libffi.call/cls_3byte2.c \ +libffi.call/cls_pointer.c \ +libffi.call/err_bad_typedef.c libffi.call/cls_4_1byte.c \ +libffi.call/cls_9byte2.c libffi.call/cls_multi_schar.c \ +libffi.call/stret_medium2.c libffi.call/cls_5_1_byte.c \ +libffi.call/call.exp libffi.call/cls_double.c \ +libffi.call/cls_align_sint16.c libffi.call/cls_uint.c \ +libffi.call/return_ll1.c libffi.call/nested_struct3.c \ +libffi.call/cls_20byte1.c libffi.call/closure_fn4.c \ +libffi.call/cls_uchar.c libffi.call/struct2.c libffi.call/cls_7byte.c \ +libffi.call/strlen.c libffi.call/many.c libffi.call/testclosure.c \ +libffi.call/return_fl.c libffi.call/struct5.c \ +libffi.call/cls_12byte.c libffi.call/cls_multi_sshortchar.c \ +libffi.call/cls_align_longdouble_split2.c libffi.call/return_dbl2.c \ +libffi.call/return_fl3.c libffi.call/stret_medium.c \ +libffi.call/nested_struct6.c libffi.call/closure_fn3.c \ +libffi.call/float3.c libffi.call/many2.c \ +libffi.call/closure_simple.c libffi.call/cls_align_uint16.c \ +libffi.call/cls_9byte1.c libffi.call/closure_fn6.c \ +libffi.call/cls_double_va.c libffi.call/cls_align_pointer.c \ +libffi.call/cls_align_longdouble.c libffi.call/closure_fn2.c \ +libffi.call/cls_sshort.c \ +libffi.call/nested_struct.c libffi.call/cls_20byte.c \ +libffi.call/cls_longdouble.c libffi.call/cls_multi_uchar.c \ +libffi.call/return_uc.c \ +libffi.call/cls_18byte.c libffi.call/cls_8byte.c \ +libffi.call/promotion.c \ +libffi.call/return_dbl.c libffi.call/cls_24byte.c \ +libffi.call/struct4.c libffi.call/cls_6byte.c \ +libffi.call/cls_align_uint32.c libffi.call/float.c \ +libffi.call/float1.c libffi.call/float_va.c libffi.call/negint.c \ +libffi.call/return_dbl1.c libffi.call/cls_3_1byte.c \ +libffi.call/cls_align_float.c libffi.call/return_fl1.c \ +libffi.call/nested_struct10.c libffi.call/nested_struct5.c \ +libffi.call/cls_align_sint64.c \ +libffi.call/stret_large2.c libffi.call/return_sl.c \ +libffi.call/closure_fn0.c libffi.call/cls_5byte.c \ +libffi.call/cls_2byte.c libffi.call/float2.c \ +libffi.call/cls_dbls_struct.c libffi.call/cls_sint.c \ +libffi.call/stret_large.c libffi.call/cls_ulonglong.c \ +libffi.call/cls_ushort.c libffi.call/nested_struct1.c \ +libffi.call/err_bad_abi.c libffi.call/cls_longdouble_va.c \ +libffi.call/cls_float.c libffi.call/cls_pointer_stack.c \ +libffi.call/pyobjc-tc.c libffi.call/cls_multi_ushortchar.c \ +libffi.call/struct1.c libffi.call/nested_struct9.c \ +libffi.call/huge_struct.c libffi.call/problem1.c \ +libffi.call/float4.c \ +libffi.call/return_ldl.c \ +libffi.call/closure_fn5.c \ +libffi.call/struct6.c libffi.call/return_ll.c libffi.call/struct9.c \ +libffi.call/return_sc.c libffi.call/struct7.c \ +libffi.call/cls_align_uint64.c libffi.call/cls_4byte.c \ +libffi.call/cls_6_1_byte.c \ +libffi.call/cls_7_1_byte.c libffi.call/unwindtest.cc \ +libffi.call/unwindtest_ffi_call.cc \ +lib/wrapper.exp lib/target-libpath.exp \ +lib/libffi.exp libffi.call/cls_struct_va1.c \ +libffi.call/cls_uchar_va.c libffi.call/cls_uint_va.c \ +libffi.call/cls_ulong_va.c libffi.call/cls_ushort_va.c \ +libffi.call/nested_struct11.c libffi.call/uninitialized.c \ +libffi.call/va_1.c libffi.call/va_struct1.c libffi.call/va_struct2.c \ +libffi.call/va_struct3.c \ +libffi.call/strlen2.c \ +libffi.call/strlen3.c \ +libffi.call/strlen4.c \ +libffi.call/cls_3float.c + +all: all-am + +.SUFFIXES: +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ + && { if test -f $@; then exit 0; else break; fi; }; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign testsuite/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --foreign testsuite/Makefile +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + @case '$?' in \ + *config.status*) \ + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ + *) \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ + esac; + +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh + +$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) + cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh +$(am__aclocal_m4_deps): + +mostlyclean-libtool: + -rm -f *.lo + +clean-libtool: + -rm -rf .libs _libs +tags TAGS: + +ctags CTAGS: + +cscope cscopelist: + + +check-DEJAGNU: site.exp + srcdir='$(srcdir)'; export srcdir; \ + EXPECT=$(EXPECT); export EXPECT; \ + if $(SHELL) -c "$(RUNTEST) --version" > /dev/null 2>&1; then \ + exit_status=0; l='$(DEJATOOL)'; for tool in $$l; do \ + if $(RUNTEST) $(AM_RUNTESTFLAGS) $(RUNTESTDEFAULTFLAGS) $(RUNTESTFLAGS); \ + then :; else exit_status=1; fi; \ + done; \ + else echo "WARNING: could not find '$(RUNTEST)'" 1>&2; :;\ + fi; \ + exit $$exit_status +site.exp: Makefile $(EXTRA_DEJAGNU_SITE_CONFIG) + @echo 'Making a new site.exp file ...' + @echo '## these variables are automatically generated by make ##' >site.tmp + @echo '# Do not edit here. If you wish to override these values' >>site.tmp + @echo '# edit the last section' >>site.tmp + @echo 'set srcdir "$(srcdir)"' >>site.tmp + @echo "set objdir `pwd`" >>site.tmp + @echo 'set build_alias "$(build_alias)"' >>site.tmp + @echo 'set build_triplet $(build_triplet)' >>site.tmp + @echo 'set host_alias "$(host_alias)"' >>site.tmp + @echo 'set host_triplet $(host_triplet)' >>site.tmp + @echo 'set target_alias "$(target_alias)"' >>site.tmp + @echo 'set target_triplet $(target_triplet)' >>site.tmp + @list='$(EXTRA_DEJAGNU_SITE_CONFIG)'; for f in $$list; do \ + echo "## Begin content included from file $$f. Do not modify. ##" \ + && cat `test -f "$$f" || echo '$(srcdir)/'`$$f \ + && echo "## End content included from file $$f. ##" \ + || exit 1; \ + done >> site.tmp + @echo "## End of auto-generated content; you can edit from here. ##" >> site.tmp + @if test -f site.exp; then \ + sed -e '1,/^## End of auto-generated content.*##/d' site.exp >> site.tmp; \ + fi + @-rm -f site.bak + @test ! -f site.exp || mv site.exp site.bak + @mv site.tmp site.exp + +distclean-DEJAGNU: + -rm -f site.exp site.bak + -l='$(DEJATOOL)'; for tool in $$l; do \ + rm -f $$tool.sum $$tool.log; \ + done + +distdir: $(DISTFILES) + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ + else \ + test -f "$(distdir)/$$file" \ + || cp -p $$d/$$file "$(distdir)/$$file" \ + || exit 1; \ + fi; \ + done +check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) check-DEJAGNU +check: check-am +all-am: Makefile +installdirs: +install: install-am +install-exec: install-exec-am +install-data: install-data-am +uninstall: uninstall-am + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am + +installcheck: installcheck-am +install-strip: + if test -z '$(STRIP)'; then \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + install; \ + else \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ + fi +mostlyclean-generic: + +clean-generic: + -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) + +distclean-generic: + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) + +maintainer-clean-generic: + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." +clean: clean-am + +clean-am: clean-generic clean-libtool mostlyclean-am + +distclean: distclean-am + -rm -f Makefile +distclean-am: clean-am distclean-DEJAGNU distclean-generic + +dvi: dvi-am + +dvi-am: + +html: html-am + +html-am: + +info: info-am + +info-am: + +install-data-am: + +install-dvi: install-dvi-am + +install-dvi-am: + +install-exec-am: + +install-html: install-html-am + +install-html-am: + +install-info: install-info-am + +install-info-am: + +install-man: + +install-pdf: install-pdf-am + +install-pdf-am: + +install-ps: install-ps-am + +install-ps-am: + +installcheck-am: + +maintainer-clean: maintainer-clean-am + -rm -f Makefile +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-am + +mostlyclean-am: mostlyclean-generic mostlyclean-libtool + +pdf: pdf-am + +pdf-am: + +ps: ps-am + +ps-am: + +uninstall-am: + +.MAKE: check-am install-am install-strip + +.PHONY: all all-am check check-DEJAGNU check-am clean clean-generic \ + clean-libtool cscopelist-am ctags-am distclean \ + distclean-DEJAGNU distclean-generic distclean-libtool distdir \ + dvi dvi-am html html-am info info-am install install-am \ + install-data install-data-am install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + installcheck installcheck-am installdirs maintainer-clean \ + maintainer-clean-generic mostlyclean mostlyclean-generic \ + mostlyclean-libtool pdf pdf-am ps ps-am tags-am uninstall \ + uninstall-am + +.PRECIOUS: Makefile + + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff --git a/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/lib/ffi_c.bundle b/vendor/bundle/ruby/2.5.0/gems/ffi-1.10.0/lib/ffi_c.bundle new file mode 100755 index 0000000000000000000000000000000000000000..1226dc57c4c258a12da194b0a9501c1f2a304d39 GIT binary patch literal 197020 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