Changes in / [95b8aa7:ff5caaf]
- Files:
-
- 142 added
- 181 deleted
- 118 edited
-
INSTALL (modified) (1 diff)
-
Jenkins/TestRegen (modified) (1 diff)
-
Jenkinsfile (deleted)
-
Makefile.am (modified) (1 diff)
-
Makefile.in (modified) (15 diffs)
-
aclocal.m4 (modified) (1 diff)
-
automake/cfa.m4 (modified) (1 diff)
-
automake/libtool.m4 (deleted)
-
automake/ltmain.sh (deleted)
-
automake/ltoptions.m4 (deleted)
-
automake/ltsugar.m4 (deleted)
-
automake/ltversion.m4 (deleted)
-
automake/lt~obsolete.m4 (deleted)
-
benchmark/Makefile.am (modified) (11 diffs)
-
benchmark/Makefile.in (modified) (32 diffs)
-
benchmark/Monitor.c (modified) (1 diff)
-
benchmark/c.c (deleted)
-
benchmark/cxx.cpp (deleted)
-
configure (modified) (26 diffs)
-
configure.ac (modified) (5 diffs)
-
doc/bibliography/pl.bib (modified) (21 diffs)
-
doc/papers/concurrency/Paper.tex (modified) (14 diffs)
-
doc/proposals/flags.md (modified) (2 diffs)
-
doc/proposals/vtable.md (deleted)
-
doc/theses/aaron_moss_PhD/phd/Makefile (modified) (4 diffs)
-
doc/theses/aaron_moss_PhD/phd/evaluation/generic-timing.dat (deleted)
-
doc/theses/aaron_moss_PhD/phd/evaluation/generic-timing.gp (deleted)
-
doc/theses/aaron_moss_PhD/phd/generic-types.tex (modified) (5 diffs)
-
doc/theses/aaron_moss_PhD/phd/introduction.tex (modified) (1 diff)
-
doc/theses/aaron_moss_PhD/phd/macros.tex (modified) (2 diffs)
-
doc/theses/aaron_moss_PhD/phd/thesis.tex (modified) (3 diffs)
-
doc/theses/aaron_moss_PhD/phd/type-environment.tex (modified) (1 diff)
-
doc/theses/lynn_tran_SE499/Bibliography.bib (deleted)
-
doc/theses/lynn_tran_SE499/Chapters/CFA.tex (deleted)
-
doc/theses/lynn_tran_SE499/Chapters/Conclusion.tex (deleted)
-
doc/theses/lynn_tran_SE499/Chapters/Demangler.tex (deleted)
-
doc/theses/lynn_tran_SE499/Chapters/Extensions.tex (deleted)
-
doc/theses/lynn_tran_SE499/Chapters/GDB.tex (deleted)
-
doc/theses/lynn_tran_SE499/Chapters/Introduction.tex (deleted)
-
doc/theses/lynn_tran_SE499/Chapters/uCPP.tex (deleted)
-
doc/theses/lynn_tran_SE499/LICENSE (deleted)
-
doc/theses/lynn_tran_SE499/SE499-master.zip (deleted)
-
doc/theses/lynn_tran_SE499/SE499-master/.gdbinit (deleted)
-
doc/theses/lynn_tran_SE499/SE499-master/README.md (deleted)
-
doc/theses/lynn_tran_SE499/SE499-master/test.cc (deleted)
-
doc/theses/lynn_tran_SE499/SE499-master/utils-gdb.gdb (deleted)
-
doc/theses/lynn_tran_SE499/SE499-master/utils-gdb.py (deleted)
-
doc/theses/lynn_tran_SE499/SE499-master/utils.cpp (deleted)
-
doc/theses/lynn_tran_SE499/Thesis.cls (deleted)
-
doc/theses/lynn_tran_SE499/lstpatch.sty (deleted)
-
doc/theses/lynn_tran_SE499/se499-report.tex (deleted)
-
doc/theses/lynn_tran_SE499/uContext_stack.png (deleted)
-
doc/theses/lynn_tran_SE499/vector.sty (deleted)
-
doc/user/Makefile (modified) (1 diff)
-
doc/user/user.tex (modified) (45 diffs)
-
doc/working/exception/impl/nopic.s (deleted)
-
doc/working/exception/impl/pic.s (deleted)
-
doc/working/exception/impl/test.c (deleted)
-
driver/Makefile.am (modified) (1 diff)
-
driver/Makefile.in (modified) (21 diffs)
-
driver/as.cc (modified) (4 diffs)
-
driver/cfa.cc (modified) (1 diff)
-
examples/ArrayN.c (modified) (2 diffs)
-
examples/gc_no_raii/src/internal/collector.c (modified) (1 diff)
-
examples/gc_no_raii/src/internal/state.h (modified) (1 diff)
-
examples/gc_no_raii/src/tools/print.h (modified) (1 diff)
-
examples/multicore.c (modified) (2 diffs)
-
examples/prolog.c (modified) (1 diff)
-
examples/quad.c (modified) (2 diffs)
-
examples/square.c (modified) (4 diffs)
-
examples/twice.c (modified) (2 diffs)
-
examples/wrapper/src/main.c (modified) (1 diff)
-
examples/wrapper/src/pointer.h (modified) (7 diffs)
-
examples/zero_one.c (modified) (1 diff)
-
libcfa/Makefile.am (modified) (1 diff)
-
libcfa/Makefile.in (modified) (16 diffs)
-
libcfa/aclocal.m4 (modified) (1 diff)
-
libcfa/automake/libtool.m4 (deleted)
-
libcfa/automake/ltmain.sh (deleted)
-
libcfa/automake/ltoptions.m4 (deleted)
-
libcfa/automake/ltsugar.m4 (deleted)
-
libcfa/automake/ltversion.m4 (deleted)
-
libcfa/automake/lt~obsolete.m4 (deleted)
-
libcfa/configure (modified) (41 diffs)
-
libcfa/configure.ac (modified) (6 diffs)
-
libcfa/prelude/Makefile.am (modified) (2 diffs)
-
libcfa/prelude/Makefile.in (modified) (15 diffs)
-
libcfa/src/Makefile.am (modified) (6 diffs)
-
libcfa/src/Makefile.in (modified) (37 diffs)
-
libcfa/src/bits/locks.hfa (modified) (2 diffs)
-
libcfa/src/concurrency/CtxSwitch-arm.S (deleted)
-
libcfa/src/concurrency/CtxSwitch-armv7l.S (added)
-
libcfa/src/concurrency/coroutine.cfa (modified) (5 diffs)
-
libcfa/src/concurrency/invoke.c (modified) (2 diffs)
-
libcfa/src/concurrency/invoke.h (modified) (2 diffs)
-
libcfa/src/concurrency/kernel.cfa (modified) (1 diff)
-
libcfa/src/concurrency/kernel_private.hfa (modified) (1 diff)
-
libcfa/src/exception.c (modified) (2 diffs)
-
libcfa/src/fstream.cfa (modified) (7 diffs)
-
libcfa/src/fstream.hfa (modified) (6 diffs)
-
libcfa/src/gmp.hfa (modified) (2 diffs)
-
libcfa/src/iostream.cfa (modified) (21 diffs)
-
libcfa/src/iostream.hfa (modified) (9 diffs)
-
libcfa/src/iterator.cfa (modified) (2 diffs)
-
libcfa/src/rational.cfa (modified) (3 diffs)
-
libcfa/src/rational.hfa (modified) (2 diffs)
-
libcfa/src/stdlib.hfa (modified) (2 diffs)
-
libcfa/src/time.cfa (modified) (3 diffs)
-
src/CodeTools/ResolvProtoDump.cc (modified) (18 diffs)
-
src/Makefile.am (modified) (1 diff)
-
src/Makefile.in (modified) (27 diffs)
-
src/Parser/DeclarationNode.cc (modified) (2 diffs)
-
src/Parser/ParseNode.h (modified) (2 diffs)
-
src/Parser/TypeData.cc (modified) (8 diffs)
-
src/Parser/TypeData.h (modified) (2 diffs)
-
src/Parser/lex.ll (modified) (2 diffs)
-
src/Parser/parser.yy (modified) (6 diffs)
-
src/ResolvExpr/Alternative.cc (modified) (2 diffs)
-
src/ResolvExpr/AlternativeFinder.cc (modified) (5 diffs)
-
src/ResolvExpr/ConversionCost.cc (modified) (1 diff)
-
src/ResolvExpr/Cost.h (modified) (11 diffs)
-
src/ResolvExpr/ResolveAssertions.cc (modified) (2 diffs)
-
src/ResolvExpr/ResolveTypeof.cc (modified) (1 diff)
-
src/SynTree/Expression.cc (modified) (2 diffs)
-
src/SynTree/FunctionDecl.cc (modified) (1 diff)
-
src/SynTree/FunctionType.cc (modified) (1 diff)
-
src/SynTree/ObjectDecl.cc (modified) (1 diff)
-
src/SynTree/ReferenceToType.cc (modified) (3 diffs)
-
src/SynTree/Type.h (modified) (1 diff)
-
src/SynTree/TypeofType.cc (modified) (2 diffs)
-
src/cfa.make (modified) (2 diffs)
-
src/config.h.in (modified) (3 diffs)
-
src/main.cc (modified) (1 diff)
-
tests/.expect/alloc-ERROR.txt (modified) (4 diffs)
-
tests/.expect/castError.txt (modified) (5 diffs)
-
tests/.expect/completeTypeError.txt (modified) (7 diffs)
-
tests/.expect/declarationErrors.txt (modified) (3 diffs)
-
tests/.expect/forctrl.txt (added)
-
tests/.expect/heap.txt (added)
-
tests/.expect/loopctrl.txt (deleted)
-
tests/.expect/nested-types-ERR1.txt (modified) (1 diff)
-
tests/.expect/nested-types-ERR2.txt (modified) (1 diff)
-
tests/.expect/quotedKeyword.txt (deleted)
-
tests/.expect/quoted_keyword.txt (added)
-
tests/.expect/scopeErrors.txt (modified) (1 diff)
-
tests/.expect/typedefRedef-ERR1.txt (modified) (1 diff)
-
tests/.expect/user_literals.txt (added)
-
tests/.expect/with-statement.txt (added)
-
tests/KRfunctions.c (added)
-
tests/KRfunctions.cfa (deleted)
-
tests/Makefile.am (modified) (5 diffs)
-
tests/Makefile.in (modified) (28 diffs)
-
tests/abs.c (added)
-
tests/abs.cfa (deleted)
-
tests/alloc.c (added)
-
tests/alloc.cfa (deleted)
-
tests/array.c (added)
-
tests/array.cfa (deleted)
-
tests/ato.c (added)
-
tests/ato.cfa (deleted)
-
tests/attributes.c (added)
-
tests/attributes.cfa (deleted)
-
tests/avltree/avl-private.c (added)
-
tests/avltree/avl-private.cfa (deleted)
-
tests/avltree/avl0.c (added)
-
tests/avltree/avl0.cfa (deleted)
-
tests/avltree/avl1.c (added)
-
tests/avltree/avl1.cfa (deleted)
-
tests/avltree/avl2.c (added)
-
tests/avltree/avl2.cfa (deleted)
-
tests/avltree/avl3.c (added)
-
tests/avltree/avl3.cfa (deleted)
-
tests/avltree/avl4.c (added)
-
tests/avltree/avl4.cfa (deleted)
-
tests/avltree/avl_test.c (added)
-
tests/avltree/avl_test.cfa (deleted)
-
tests/builtins/sync.c (added)
-
tests/builtins/sync.cfa (deleted)
-
tests/cast.c (added)
-
tests/cast.cfa (deleted)
-
tests/castError.c (added)
-
tests/castError.cfa (deleted)
-
tests/commentMisc.c (added)
-
tests/commentMisc.cfa (deleted)
-
tests/completeTypeError.c (added)
-
tests/completeTypeError.cfa (deleted)
-
tests/complex.c (added)
-
tests/complex.cfa (deleted)
-
tests/concurrent/coroutineYield.c (added)
-
tests/concurrent/coroutineYield.cfa (deleted)
-
tests/concurrent/examples/boundedBufferEXT.c (added)
-
tests/concurrent/examples/boundedBufferEXT.cfa (deleted)
-
tests/concurrent/examples/boundedBufferINT.c (added)
-
tests/concurrent/examples/boundedBufferINT.cfa (deleted)
-
tests/concurrent/examples/datingService.c (added)
-
tests/concurrent/examples/datingService.cfa (deleted)
-
tests/concurrent/examples/matrixSum.c (added)
-
tests/concurrent/examples/matrixSum.cfa (deleted)
-
tests/concurrent/examples/quickSort.c (added)
-
tests/concurrent/examples/quickSort.cfa (deleted)
-
tests/concurrent/monitor.c (added)
-
tests/concurrent/monitor.cfa (deleted)
-
tests/concurrent/multi-monitor.c (added)
-
tests/concurrent/multi-monitor.cfa (deleted)
-
tests/concurrent/preempt.c (added)
-
tests/concurrent/preempt.cfa (deleted)
-
tests/concurrent/signal/block.c (added)
-
tests/concurrent/signal/block.cfa (deleted)
-
tests/concurrent/signal/disjoint.c (added)
-
tests/concurrent/signal/disjoint.cfa (deleted)
-
tests/concurrent/signal/wait.c (added)
-
tests/concurrent/signal/wait.cfa (deleted)
-
tests/concurrent/thread.c (added)
-
tests/concurrent/thread.cfa (deleted)
-
tests/concurrent/waitfor/barge.c (added)
-
tests/concurrent/waitfor/barge.cfa (deleted)
-
tests/concurrent/waitfor/dtor.c (added)
-
tests/concurrent/waitfor/dtor.cfa (deleted)
-
tests/concurrent/waitfor/else.c (added)
-
tests/concurrent/waitfor/else.cfa (deleted)
-
tests/concurrent/waitfor/parse.c (added)
-
tests/concurrent/waitfor/parse.cfa (deleted)
-
tests/concurrent/waitfor/parse2.c (added)
-
tests/concurrent/waitfor/parse2.cfa (deleted)
-
tests/concurrent/waitfor/recurse.c (added)
-
tests/concurrent/waitfor/recurse.cfa (deleted)
-
tests/concurrent/waitfor/simple.c (added)
-
tests/concurrent/waitfor/simple.cfa (deleted)
-
tests/concurrent/waitfor/statment.c (added)
-
tests/concurrent/waitfor/statment.cfa (deleted)
-
tests/concurrent/waitfor/when.c (added)
-
tests/concurrent/waitfor/when.cfa (deleted)
-
tests/context.c (added)
-
tests/context.cfa (deleted)
-
tests/coroutine/.expect/fmtLines.txt (modified) (2 diffs)
-
tests/coroutine/.in/fmtLines.txt (modified) (3 diffs)
-
tests/coroutine/fibonacci.c (added)
-
tests/coroutine/fibonacci.cfa (deleted)
-
tests/coroutine/fibonacci_1.c (added)
-
tests/coroutine/fibonacci_1.cfa (deleted)
-
tests/coroutine/fmtLines.c (added)
-
tests/coroutine/fmtLines.cfa (deleted)
-
tests/coroutine/pingpong.c (added)
-
tests/coroutine/pingpong.cfa (deleted)
-
tests/coroutine/prodcons.c (added)
-
tests/coroutine/prodcons.cfa (deleted)
-
tests/coroutine/runningTotal.c (added)
-
tests/coroutine/runningTotal.cfa (deleted)
-
tests/counter.c (added)
-
tests/counter.cfa (deleted)
-
tests/declarationErrors.c (added)
-
tests/declarationErrors.cfa (deleted)
-
tests/declarationSpecifier.c (added)
-
tests/declarationSpecifier.cfa (deleted)
-
tests/designations.c (added)
-
tests/designations.cfa (deleted)
-
tests/div.c (added)
-
tests/div.cfa (deleted)
-
tests/enum.c (added)
-
tests/enum.cfa (deleted)
-
tests/except-0.c (added)
-
tests/except-0.cfa (deleted)
-
tests/except-1.c (added)
-
tests/except-1.cfa (deleted)
-
tests/except-2.c (added)
-
tests/except-2.cfa (deleted)
-
tests/except-3.c (added)
-
tests/except-3.cfa (deleted)
-
tests/except-mac.h (added)
-
tests/except-mac.hfa (deleted)
-
tests/expression.c (added)
-
tests/expression.cfa (deleted)
-
tests/extension.c (added)
-
tests/extension.cfa (deleted)
-
tests/fallthrough.c (added)
-
tests/fallthrough.cfa (deleted)
-
tests/forall.c (added)
-
tests/forall.cfa (deleted)
-
tests/forctrl.c (added)
-
tests/fstream_test.c (added)
-
tests/fstream_test.cfa (deleted)
-
tests/function-operator.c (added)
-
tests/function-operator.cfa (deleted)
-
tests/functions.c (added)
-
tests/functions.cfa (deleted)
-
tests/gccExtensions.c (added)
-
tests/gccExtensions.cfa (deleted)
-
tests/genericUnion.c (added)
-
tests/genericUnion.cfa (deleted)
-
tests/gmp.c (added)
-
tests/gmp.cfa (deleted)
-
tests/heap.c (added)
-
tests/heap.cfa (deleted)
-
tests/hello.c (added)
-
tests/hello.cfa (deleted)
-
tests/identFuncDeclarator.c (added)
-
tests/identFuncDeclarator.cfa (deleted)
-
tests/identParamDeclarator.c (added)
-
tests/identParamDeclarator.cfa (deleted)
-
tests/identity.c (added)
-
tests/identity.cfa (deleted)
-
tests/ifwhileCtl.c (added)
-
tests/ifwhileCtl.cfa (deleted)
-
tests/io1.c (added)
-
tests/io1.cfa (deleted)
-
tests/io2.c (added)
-
tests/io2.cfa (deleted)
-
tests/labelledExit.c (added)
-
tests/labelledExit.cfa (deleted)
-
tests/limits.c (added)
-
tests/limits.cfa (deleted)
-
tests/literals.c (added)
-
tests/literals.cfa (deleted)
-
tests/long_tests.h (added)
-
tests/long_tests.hfa (deleted)
-
tests/loopctrl.cfa (deleted)
-
tests/math1.c (added)
-
tests/math1.cfa (deleted)
-
tests/math2.c (added)
-
tests/math2.cfa (deleted)
-
tests/math3.c (added)
-
tests/math3.cfa (deleted)
-
tests/math4.c (added)
-
tests/math4.cfa (deleted)
-
tests/maybe.c (added)
-
tests/maybe.cfa (deleted)
-
tests/minmax.c (added)
-
tests/minmax.cfa (deleted)
-
tests/namedParmArg.c (added)
-
tests/namedParmArg.cfa (deleted)
-
tests/nested-types.c (added)
-
tests/nested-types.cfa (deleted)
-
tests/numericConstants.c (added)
-
tests/numericConstants.cfa (deleted)
-
tests/occursError.c (added)
-
tests/occursError.cfa (deleted)
-
tests/operators.c (added)
-
tests/operators.cfa (deleted)
-
tests/polymorphism.c (added)
-
tests/polymorphism.cfa (deleted)
-
tests/preempt_longrun/Makefile.am (modified) (1 diff)
-
tests/preempt_longrun/Makefile.in (modified) (14 diffs)
-
tests/preempt_longrun/create.c (modified) (1 diff)
-
tests/preempt_longrun/enter3.c (modified) (1 diff)
-
tests/preempt_longrun/processor.c (modified) (1 diff)
-
tests/preempt_longrun/yield.c (modified) (1 diff)
-
tests/pybin/tools.py (modified) (2 diffs)
-
tests/quotedKeyword.cfa (deleted)
-
tests/quoted_keyword.c (added)
-
tests/raii/.expect/ctor-autogen-ERR1.txt (modified) (4 diffs)
-
tests/raii/.expect/dtor-early-exit-ERR1.txt (modified) (1 diff)
-
tests/raii/.expect/dtor-early-exit-ERR2.txt (modified) (1 diff)
-
tests/raii/.expect/memberCtors-ERR1.txt (modified) (1 diff)
-
tests/raii/ctor-autogen.c (added)
-
tests/raii/ctor-autogen.cfa (deleted)
-
tests/raii/dtor-early-exit.c (added)
-
tests/raii/dtor-early-exit.cfa (deleted)
-
tests/raii/globals.c (added)
-
tests/raii/globals.cfa (deleted)
-
tests/raii/init_once.c (added)
-
tests/raii/init_once.cfa (deleted)
-
tests/raii/memberCtors.c (added)
-
tests/raii/memberCtors.cfa (deleted)
-
tests/raii/multiDimension.c (added)
-
tests/raii/multiDimension.cfa (deleted)
-
tests/random.c (added)
-
tests/random.cfa (deleted)
-
tests/rational.c (added)
-
tests/rational.cfa (deleted)
-
tests/references.c (added)
-
tests/references.cfa (deleted)
-
tests/result.c (added)
-
tests/result.cfa (deleted)
-
tests/scope.c (added)
-
tests/scope.cfa (deleted)
-
tests/scopeErrors.c (added)
-
tests/scopeErrors.cfa (deleted)
-
tests/searchsort.c (added)
-
tests/searchsort.cfa (deleted)
-
tests/shortCircuit.c (added)
-
tests/shortCircuit.cfa (deleted)
-
tests/simpleGenericTriple.c (added)
-
tests/simpleGenericTriple.cfa (deleted)
-
tests/stdincludes.c (added)
-
tests/stdincludes.cfa (deleted)
-
tests/structMember.c (added)
-
tests/structMember.cfa (deleted)
-
tests/subrange.c (added)
-
tests/subrange.cfa (deleted)
-
tests/sum.c (added)
-
tests/sum.cfa (deleted)
-
tests/swap.c (added)
-
tests/swap.cfa (deleted)
-
tests/switch.c (added)
-
tests/switch.cfa (deleted)
-
tests/test.py (modified) (2 diffs)
-
tests/time.c (added)
-
tests/time.cfa (deleted)
-
tests/tuple/tupleAssign.c (added)
-
tests/tuple/tupleAssign.cfa (deleted)
-
tests/tuple/tupleCast.c (added)
-
tests/tuple/tupleCast.cfa (deleted)
-
tests/tuple/tupleFunction.c (added)
-
tests/tuple/tupleFunction.cfa (deleted)
-
tests/tuple/tupleMember.c (added)
-
tests/tuple/tupleMember.cfa (deleted)
-
tests/tuple/tuplePolymorphism.c (added)
-
tests/tuple/tuplePolymorphism.cfa (deleted)
-
tests/tuple/tupleVariadic.c (added)
-
tests/tuple/tupleVariadic.cfa (deleted)
-
tests/tuple/tuples.c (added)
-
tests/tuple/tuples.cfa (deleted)
-
tests/typeGenerator.c (added)
-
tests/typeGenerator.cfa (deleted)
-
tests/typedef.c (added)
-
tests/typedef.cfa (deleted)
-
tests/typedefDeclarator.c (added)
-
tests/typedefDeclarator.cfa (deleted)
-
tests/typedefRedef.c (added)
-
tests/typedefRedef.cfa (deleted)
-
tests/typeof.c (added)
-
tests/typeof.cfa (deleted)
-
tests/userLiterals.cfa (deleted)
-
tests/user_literals.c (added)
-
tests/variableDeclarator.c (added)
-
tests/variableDeclarator.cfa (deleted)
-
tests/vector.c (added)
-
tests/vector.cfa (deleted)
-
tests/virtualCast.c (added)
-
tests/virtualCast.cfa (deleted)
-
tests/voidPtr.c (added)
-
tests/voidPtr.cfa (deleted)
-
tests/warnings/.expect/self-assignment.txt (modified) (1 diff)
-
tests/warnings/self-assignment.c (added)
-
tests/warnings/self-assignment.cfa (deleted)
-
tests/with-statement.c (added)
-
tests/withStatement.cfa (deleted)
-
tools/Makefile.am (modified) (1 diff)
-
tools/Makefile.in (modified) (19 diffs)
-
tools/prettyprinter/Makefile.am (modified) (1 diff)
-
tools/prettyprinter/Makefile.in (modified) (26 diffs)
Legend:
- Unmodified
- Added
- Removed
-
INSTALL
r95b8aa7 rff5caaf 22 22 it is important not to put quotes around the directory path; Cforall may 23 23 appear to build, but the installed version may not work properly. 24 25 --with-backend-compiler=PROGRAM specifies the installed path of gcc. It 26 defaults to the first command named 'gcc' in the current PATH. 27 28 cfa-cc itself is built with the version of g++ specified by the environment 29 variable CXX. If CXX is unset, cfa-cc is built using the first command named 30 'g++' in the current PATH. -
Jenkins/TestRegen
r95b8aa7 rff5caaf 70 70 //escapes the sandbox 71 71 //Also specify the compiler by hand 72 sh "./configure CXX=clang++ CC=gcc-6 --host=${arch} --enable-silent-rules --quiet"72 sh "./configure CXX=clang++ --host=${arch} --with-backend-compiler=gcc-6 --prefix=${install_dir} --enable-silent-rules --quiet" 73 73 74 74 //Compile the project 75 sh 'make -j 8 --no-print-directory '75 sh 'make -j 8 --no-print-directory install' 76 76 77 77 //Regenerate the desired tests -
Makefile.am
r95b8aa7 rff5caaf 16 16 17 17 AUTOMAKE_OPTIONS = foreign # do not require all the GNU file names 18 ACLOCAL_AMFLAGS = -I automake 18 BACKEND_CC = @BACKEND_CC@ # C compiler used to compile Cforall programs, versus C++ compiler used to build cfa command 19 19 20 20 MAINTAINERCLEANFILES = lib/* bin/* tests/.deps/* tests/.out/* -
Makefile.in
r95b8aa7 rff5caaf 94 94 subdir = . 95 95 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 96 am__aclocal_m4_deps = $(top_srcdir)/automake/libtool.m4 \ 97 $(top_srcdir)/automake/ltoptions.m4 \ 98 $(top_srcdir)/automake/ltsugar.m4 \ 99 $(top_srcdir)/automake/ltversion.m4 \ 100 $(top_srcdir)/automake/lt~obsolete.m4 \ 101 $(top_srcdir)/automake/cfa.m4 $(top_srcdir)/configure.ac 96 am__aclocal_m4_deps = $(top_srcdir)/automake/cfa.m4 \ 97 $(top_srcdir)/configure.ac 102 98 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ 103 99 $(ACLOCAL_M4) … … 202 198 $(top_srcdir)/automake/config.sub \ 203 199 $(top_srcdir)/automake/install-sh \ 204 $(top_srcdir)/automake/ltmain.sh \205 200 $(top_srcdir)/automake/missing $(top_srcdir)/src/config.h.in \ 206 201 INSTALL README automake/compile automake/config.guess \ 207 202 automake/config.sub automake/depcomp automake/install-sh \ 208 automake/ ltmain.sh automake/missing automake/ylwrap203 automake/missing automake/ylwrap 209 204 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) 210 205 distdir = $(PACKAGE)-$(VERSION) … … 253 248 AMTAR = @AMTAR@ 254 249 AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ 255 AR = @AR@256 250 AUTOCONF = @AUTOCONF@ 257 251 AUTOHEADER = @AUTOHEADER@ 258 252 AUTOMAKE = @AUTOMAKE@ 259 253 AWK = @AWK@ 254 BACKEND_CC = @BACKEND_CC@ # C compiler used to compile Cforall programs, versus C++ compiler used to build cfa command 260 255 BUILD_IN_TREE_FLAGS = @BUILD_IN_TREE_FLAGS@ 261 256 CC = @CC@ … … 277 272 CPPFLAGS = @CPPFLAGS@ 278 273 CXX = @CXX@ 279 CXXCPP = @CXXCPP@280 274 CXXDEPMODE = @CXXDEPMODE@ 281 275 CXXFLAGS = @CXXFLAGS@ … … 283 277 DEFS = @DEFS@ 284 278 DEPDIR = @DEPDIR@ 285 DLLTOOL = @DLLTOOL@286 279 DRIVER_DIR = @DRIVER_DIR@ 287 DSYMUTIL = @DSYMUTIL@288 DUMPBIN = @DUMPBIN@289 280 ECHO_C = @ECHO_C@ 290 281 ECHO_N = @ECHO_N@ … … 292 283 EGREP = @EGREP@ 293 284 EXEEXT = @EXEEXT@ 294 FGREP = @FGREP@295 285 GREP = @GREP@ 296 286 HOST_FLAGS = @HOST_FLAGS@ … … 300 290 INSTALL_SCRIPT = @INSTALL_SCRIPT@ 301 291 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ 302 LD = @LD@303 292 LDFLAGS = @LDFLAGS@ 304 293 LEX = @LEX@ … … 309 298 LIBOBJS = @LIBOBJS@ 310 299 LIBS = @LIBS@ 311 LIBTOOL = @LIBTOOL@312 LIPO = @LIPO@313 LN_S = @LN_S@314 300 LTLIBOBJS = @LTLIBOBJS@ 315 LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@316 301 MAKEINFO = @MAKEINFO@ 317 MANIFEST_TOOL = @MANIFEST_TOOL@318 302 MKDIR_P = @MKDIR_P@ 319 NM = @NM@320 NMEDIT = @NMEDIT@321 OBJDUMP = @OBJDUMP@322 303 OBJEXT = @OBJEXT@ 323 OTOOL = @OTOOL@324 OTOOL64 = @OTOOL64@325 304 PACKAGE = @PACKAGE@ 326 305 PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ … … 332 311 PATH_SEPARATOR = @PATH_SEPARATOR@ 333 312 RANLIB = @RANLIB@ 334 SED = @SED@335 313 SET_MAKE = @SET_MAKE@ 336 314 SHELL = @SHELL@ … … 344 322 abs_top_builddir = @abs_top_builddir@ 345 323 abs_top_srcdir = @abs_top_srcdir@ 346 ac_ct_AR = @ac_ct_AR@347 324 ac_ct_CC = @ac_ct_CC@ 348 325 ac_ct_CXX = @ac_ct_CXX@ 349 ac_ct_DUMPBIN = @ac_ct_DUMPBIN@350 326 am__include = @am__include@ 351 327 am__leading_dot = @am__leading_dot@ … … 395 371 top_srcdir = @top_srcdir@ 396 372 AUTOMAKE_OPTIONS = foreign # do not require all the GNU file names 397 ACLOCAL_AMFLAGS = -I automake398 373 MAINTAINERCLEANFILES = lib/* bin/* tests/.deps/* tests/.out/* 399 374 SUBDIRS = driver src . @LIBCFA_TARGET_DIRS@ … … 453 428 distclean-hdr: 454 429 -rm -f config.h stamp-h1 455 456 mostlyclean-libtool:457 -rm -f *.lo458 459 clean-libtool:460 -rm -rf .libs _libs461 462 distclean-libtool:463 -rm -f libtool config.lt464 430 install-man1: $(man1_MANS) 465 431 @$(NORMAL_INSTALL) … … 837 803 clean: clean-recursive 838 804 839 clean-am: clean-generic clean-libtoolmostlyclean-am805 clean-am: clean-generic mostlyclean-am 840 806 841 807 distclean: distclean-recursive 842 808 -rm -f $(am__CONFIG_DISTCLEAN_FILES) 843 809 -rm -f Makefile 844 distclean-am: clean-am distclean-generic distclean-hdr \ 845 distclean-libtool distclean-tags 810 distclean-am: clean-am distclean-generic distclean-hdr distclean-tags 846 811 847 812 dvi: dvi-recursive … … 893 858 mostlyclean: mostlyclean-recursive 894 859 895 mostlyclean-am: mostlyclean-generic mostlyclean-libtool860 mostlyclean-am: mostlyclean-generic 896 861 897 862 pdf: pdf-recursive … … 911 876 .PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \ 912 877 am--refresh check check-am clean clean-cscope clean-generic \ 913 clean-libtool cscope cscopelist-am ctags ctags-am dist \ 914 dist-all dist-bzip2 dist-gzip dist-lzip dist-shar dist-tarZ \ 915 dist-xz dist-zip distcheck distclean distclean-generic \ 916 distclean-hdr distclean-libtool distclean-tags distcleancheck \ 917 distdir distuninstallcheck dvi dvi-am html html-am info \ 918 info-am install install-am install-data install-data-am \ 919 install-dvi install-dvi-am install-exec install-exec-am \ 920 install-html install-html-am install-info install-info-am \ 921 install-man install-man1 install-pdf install-pdf-am install-ps \ 922 install-ps-am install-strip installcheck installcheck-am \ 923 installdirs installdirs-am maintainer-clean \ 924 maintainer-clean-generic mostlyclean mostlyclean-generic \ 925 mostlyclean-libtool pdf pdf-am ps ps-am tags tags-am uninstall \ 926 uninstall-am uninstall-man uninstall-man1 878 cscope cscopelist-am ctags ctags-am dist dist-all dist-bzip2 \ 879 dist-gzip dist-lzip dist-shar dist-tarZ dist-xz dist-zip \ 880 distcheck distclean distclean-generic distclean-hdr \ 881 distclean-tags distcleancheck distdir distuninstallcheck dvi \ 882 dvi-am html html-am info info-am install install-am \ 883 install-data install-data-am install-dvi install-dvi-am \ 884 install-exec install-exec-am install-html install-html-am \ 885 install-info install-info-am install-man install-man1 \ 886 install-pdf install-pdf-am install-ps install-ps-am \ 887 install-strip installcheck installcheck-am installdirs \ 888 installdirs-am maintainer-clean maintainer-clean-generic \ 889 mostlyclean mostlyclean-generic pdf pdf-am ps ps-am tags \ 890 tags-am uninstall uninstall-am uninstall-man uninstall-man1 927 891 928 892 .PRECIOUS: Makefile -
aclocal.m4
r95b8aa7 rff5caaf 1171 1171 ]) # _AM_PROG_TAR 1172 1172 1173 m4_include([automake/libtool.m4])1174 m4_include([automake/ltoptions.m4])1175 m4_include([automake/ltsugar.m4])1176 m4_include([automake/ltversion.m4])1177 m4_include([automake/lt~obsolete.m4]) -
automake/cfa.m4
r95b8aa7 rff5caaf 73 73 "arm" ) cannon_arch_name="arm";; 74 74 "ARM" ) cannon_arch_name="arm";; 75 "armv7l" ) cannon_arch_name="arm";;76 75 *) 77 76 >&2 echo "Unkown architecture " $arch_name; -
benchmark/Makefile.am
r95b8aa7 rff5caaf 11 11 ## Created On : Sun May 31 09:08:15 2015 12 12 ## Last Modified By : Peter A. Buhr 13 ## Last Modified On : Tue Nov 6 09:01:23 201814 ## Update Count : 2 613 ## Last Modified On : Mon Jan 25 22:31:42 2016 14 ## Update Count : 25 15 15 ############################################################################### 16 16 17 17 AUTOMAKE_OPTIONS = foreign # do not require all the GNU file names 18 ACLOCAL_AMFLAGS = -I automake19 18 20 19 # applies to both programs 21 20 include $(top_srcdir)/src/cfa.make 22 21 23 UPPC C = u++22 UPPCOMPILE = $(UPPCC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_UPPFLAGS) $(UPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_CFLAGS) $(CFLAGS) 24 23 25 24 AM_CFLAGS = -O2 -Wall -I$(srcdir) -lrt -pthread … … 35 34 PRINT_FORMAT = %20s: #Comments needed for spacing 36 35 37 #prevent any tests in parallel38 36 .NOTPARALLEL: 39 37 40 #make sure automake includes the compile rules for C and C++ 41 EXTRA_PROGRAMS = dummy 42 dummy_SOURCES = c.c cxx.cpp 43 44 ## ========================================================================================================= 38 noinst_PROGRAMS = 39 45 40 all : ctxswitch$(EXEEXT) mutex$(EXEEXT) signal$(EXEEXT) waitfor$(EXEEXT) creation$(EXEEXT) 46 41 … … 52 47 @${STATS} .result.log 53 48 @echo "------------------------------------------------------" 54 @rm -f a.out .result.log *.class49 @rm -f a.out .result.log 55 50 56 51 %.runquiet : … … 105 100 ## ========================================================================================================= 106 101 loop$(EXEEXT): 107 $( AM_V_CC)$(COMPILE) -DBENCH_N=5000000000 $(srcdir)/loop.c102 $(COMPILE) -DBENCH_N=5000000000 loop.c 108 103 109 104 function$(EXEEXT): 110 $( AM_V_CC)$(COMPILE) -DBENCH_N=5000000000 $(srcdir)/function.c105 $(COMPILE) -DBENCH_N=5000000000 function.c 111 106 112 107 fetch_add$(EXEEXT): 113 $( AM_V_CC)$(COMPILE) -DBENCH_N=500000000 $(srcdir)/fetch_add.c108 $(COMPILE) -DBENCH_N=500000000 fetch_add.c 114 109 115 110 ## ========================================================================================================= … … 134 129 135 130 ctxswitch-kos_fibre$(EXEEXT): 136 $(AM_V_CXX)$(CXXCOMPILE) -DBENCH_N=50000000 $(srcdir)/ctxswitch/kos_fibre.cpp -I$(LIBFIBRE_DIR) -lfibre131 @$(CXXCOMPILE) -DBENCH_N=50000000 $(srcdir)/ctxswitch/kos_fibre.cpp -I$(LIBFIBRE_DIR) -lfibre 137 132 138 133 ctxswitch-kos_fibre2$(EXEEXT): 139 $(AM_V_CXX)$(CXXCOMPILE) -DBENCH_N=50000000 $(srcdir)/ctxswitch/kos_fibre2.cpp -I$(LIBFIBRE_DIR) -lfibre134 @$(CXXCOMPILE) -DBENCH_N=50000000 $(srcdir)/ctxswitch/kos_fibre2.cpp -I$(LIBFIBRE_DIR) -lfibre 140 135 endif 141 136 … … 143 138 144 139 ctxswitch-pthread$(EXEEXT): 145 $(AM_V_CC)$(COMPILE) -DBENCH_N=50000000 $(srcdir)/ctxswitch/pthreads.c140 @$(COMPILE) -DBENCH_N=50000000 $(srcdir)/ctxswitch/pthreads.c 146 141 147 142 ctxswitch-cfa_coroutine$(EXEEXT): 148 $(AM_V_CFA)$(CFACOMPILE) -DBENCH_N=50000000 $(srcdir)/ctxswitch/cfa_cor.c143 @$(CFACOMPILE) -DBENCH_N=50000000 $(srcdir)/ctxswitch/cfa_cor.c 149 144 150 145 ctxswitch-cfa_thread$(EXEEXT): 151 $(AM_V_CFA)$(CFACOMPILE) -DBENCH_N=50000000 $(srcdir)/ctxswitch/cfa_thrd.c146 @$(CFACOMPILE) -DBENCH_N=50000000 $(srcdir)/ctxswitch/cfa_thrd.c 152 147 153 148 ctxswitch-cfa_thread2$(EXEEXT): 154 $(AM_V_CFA)$(CFACOMPILE) -DBENCH_N=50000000 $(srcdir)/ctxswitch/cfa_thrd2.c149 @$(CFACOMPILE) -DBENCH_N=50000000 $(srcdir)/ctxswitch/cfa_thrd2.c 155 150 156 151 ctxswitch-upp_coroutine$(EXEEXT): 157 $(AM_V_UPP)$(UPPCOMPILE) -DBENCH_N=50000000 $(srcdir)/ctxswitch/upp_cor.cc152 @$(UPPCOMPILE) -DBENCH_N=50000000 $(srcdir)/ctxswitch/upp_cor.cc 158 153 159 154 ctxswitch-upp_thread$(EXEEXT): 160 $(AM_V_UPP)$(UPPCOMPILE) -DBENCH_N=50000000 $(srcdir)/ctxswitch/upp_thrd.cc155 @$(UPPCOMPILE) -DBENCH_N=50000000 $(srcdir)/ctxswitch/upp_thrd.cc 161 156 162 157 ctxswitch-goroutine$(EXEEXT): 163 $(AM_V_GOC)go build -o a.out $(srcdir)/ctxswitch/goroutine.go158 @go build -o a.out $(srcdir)/ctxswitch/goroutine.go 164 159 165 160 ctxswitch-java_thread$(EXEEXT): 166 $(AM_V_JAVAC)javac -d $(builddir)$(srcdir)/ctxswitch/JavaThread.java161 @javac $(srcdir)/ctxswitch/JavaThread.java 167 162 @echo "#!/bin/sh" > a.out 168 @echo " java JavaThread" >> a.out163 @echo "cd ctxswitch && java JavaThread" >> a.out 169 164 @chmod a+x a.out 170 165 … … 182 177 183 178 mutex-pthread_lock$(EXEEXT): 184 $(AM_V_CC)$(COMPILE) -DBENCH_N=50000000 $(srcdir)/mutex/pthreads.c179 @$(COMPILE) -DBENCH_N=50000000 $(srcdir)/mutex/pthreads.c 185 180 186 181 mutex-upp$(EXEEXT): 187 $(AM_V_UPP)$(UPPCOMPILE) -DBENCH_N=50000000 $(srcdir)/mutex/upp.cc182 @$(UPPCOMPILE) -DBENCH_N=50000000 $(srcdir)/mutex/upp.cc 188 183 189 184 mutex-cfa1$(EXEEXT): 190 $(AM_V_CFA)$(CFACOMPILE) -DBENCH_N=5000000 $(srcdir)/mutex/cfa1.c185 @$(CFACOMPILE) -DBENCH_N=5000000 $(srcdir)/mutex/cfa1.c 191 186 192 187 mutex-cfa2$(EXEEXT): 193 $(AM_V_CFA)$(CFACOMPILE) -DBENCH_N=5000000 $(srcdir)/mutex/cfa2.c188 @$(CFACOMPILE) -DBENCH_N=5000000 $(srcdir)/mutex/cfa2.c 194 189 195 190 mutex-cfa4$(EXEEXT): 196 $(AM_V_CFA)$(CFACOMPILE) -DBENCH_N=5000000 $(srcdir)/mutex/cfa4.c191 @$(CFACOMPILE) -DBENCH_N=5000000 $(srcdir)/mutex/cfa4.c 197 192 198 193 mutex-java_thread$(EXEEXT): 199 $(AM_V_JAVAC)javac -d $(builddir)$(srcdir)/mutex/JavaThread.java194 @javac $(srcdir)/mutex/JavaThread.java 200 195 @echo "#!/bin/sh" > a.out 201 @echo " java JavaThread" >> a.out196 @echo "cd mutex && java JavaThread" >> a.out 202 197 @chmod a+x a.out 203 198 … … 212 207 213 208 signal-pthread_cond$(EXEEXT): 214 $(AM_V_CC)$(COMPILE) -DBENCH_N=500000 $(srcdir)/schedint/pthreads.c209 @$(COMPILE) -DBENCH_N=500000 $(srcdir)/schedint/pthreads.c 215 210 216 211 signal-upp$(EXEEXT): 217 $(AM_V_UPP)$(UPPCOMPILE) -DBENCH_N=5000000 $(srcdir)/schedint/upp.cc212 @$(UPPCOMPILE) -DBENCH_N=5000000 $(srcdir)/schedint/upp.cc 218 213 219 214 signal-cfa1$(EXEEXT): 220 $(AM_V_CFA)$(CFACOMPILE) -DBENCH_N=500000 $(srcdir)/schedint/cfa1.c215 @$(CFACOMPILE) -DBENCH_N=500000 $(srcdir)/schedint/cfa1.c 221 216 222 217 signal-cfa2$(EXEEXT): 223 $(AM_V_CFA)$(CFACOMPILE) -DBENCH_N=500000 $(srcdir)/schedint/cfa2.c218 @$(CFACOMPILE) -DBENCH_N=500000 $(srcdir)/schedint/cfa2.c 224 219 225 220 signal-cfa4$(EXEEXT): 226 $(AM_V_CFA)$(CFACOMPILE) -DBENCH_N=500000 $(srcdir)/schedint/cfa4.c221 @$(CFACOMPILE) -DBENCH_N=500000 $(srcdir)/schedint/cfa4.c 227 222 228 223 signal-java_thread$(EXEEXT): 229 $(AM_V_JAVAC)javac -d $(builddir)$(srcdir)/schedint/JavaThread.java224 @javac $(srcdir)/schedint/JavaThread.java 230 225 @echo "#!/bin/sh" > a.out 231 @echo " java JavaThread" >> a.out226 @echo "cd schedint && java JavaThread" >> a.out 232 227 @chmod a+x a.out 233 228 … … 241 236 242 237 waitfor-upp$(EXEEXT): 243 $(AM_V_UPP)$(UPPCOMPILE) -DBENCH_N=5000000 $(srcdir)/schedext/upp.cc238 @$(UPPCOMPILE) -DBENCH_N=5000000 $(srcdir)/schedext/upp.cc 244 239 245 240 waitfor-cfa1$(EXEEXT): 246 $(AM_V_CFA)$(CFACOMPILE) -DBENCH_N=500000 $(srcdir)/schedext/cfa1.c241 @$(CFACOMPILE) -DBENCH_N=500000 $(srcdir)/schedext/cfa1.c 247 242 248 243 waitfor-cfa2$(EXEEXT): 249 $(AM_V_CFA)$(CFACOMPILE) -DBENCH_N=500000 $(srcdir)/schedext/cfa2.c244 @$(CFACOMPILE) -DBENCH_N=500000 $(srcdir)/schedext/cfa2.c 250 245 251 246 waitfor-cfa4$(EXEEXT): 252 $(AM_V_CFA)$(CFACOMPILE) -DBENCH_N=500000 $(srcdir)/schedext/cfa4.c247 @$(CFACOMPILE) -DBENCH_N=500000 $(srcdir)/schedext/cfa4.c 253 248 254 249 ## ========================================================================================================= … … 264 259 265 260 creation-cfa_coroutine$(EXEEXT): 266 $(AM_V_CFA)$(CFACOMPILE) -DBENCH_N=10000000 $(srcdir)/creation/cfa_cor.c261 @$(CFACOMPILE) -DBENCH_N=10000000 $(srcdir)/creation/cfa_cor.c 267 262 268 263 creation-cfa_coroutine_eager$(EXEEXT): 269 $(AM_V_CFA)$(CFACOMPILE) -DBENCH_N=10000000 $(srcdir)/creation/cfa_cor.c264 @$(CFACOMPILE) -DBENCH_N=10000000 $(srcdir)/creation/cfa_cor.c 270 265 271 266 creation-cfa_thread$(EXEEXT): 272 $(AM_V_CFA)$(CFACOMPILE) -DBENCH_N=10000000 $(srcdir)/creation/cfa_thrd.c267 @$(CFACOMPILE) -DBENCH_N=10000000 $(srcdir)/creation/cfa_thrd.c 273 268 274 269 creation-upp_coroutine$(EXEEXT): 275 $(AM_V_UPP)$(UPPCOMPILE) -DBENCH_N=50000000 $(srcdir)/creation/upp_cor.cc270 @$(UPPCOMPILE) -DBENCH_N=50000000 $(srcdir)/creation/upp_cor.cc 276 271 277 272 creation-upp_thread$(EXEEXT): 278 $(AM_V_UPP)$(UPPCOMPILE) -DBENCH_N=50000000 $(srcdir)/creation/upp_thrd.cc273 @$(UPPCOMPILE) -DBENCH_N=50000000 $(srcdir)/creation/upp_thrd.cc 279 274 280 275 creation-pthread$(EXEEXT): 281 $(AM_V_CC)$(COMPILE) -DBENCH_N=250000 $(srcdir)/creation/pthreads.c276 @$(COMPILE) -DBENCH_N=250000 $(srcdir)/creation/pthreads.c 282 277 283 278 creation-goroutine$(EXEEXT): 284 $(AM_V_GOC)go build -o a.out $(srcdir)/creation/goroutine.go279 @go build -o a.out $(srcdir)/creation/goroutine.go 285 280 286 281 creation-java_thread$(EXEEXT): 287 $(AM_V_JAVAC)javac -d $(builddir)$(srcdir)/creation/JavaThread.java282 @javac $(srcdir)/creation/JavaThread.java 288 283 @echo "#!/bin/sh" > a.out 289 @echo " java JavaThread" >> a.out284 @echo "cd creation && java JavaThread" >> a.out 290 285 @chmod a+x a.out 291 286 … … 306 301 307 302 compile-array$(EXEEXT): 308 $(AM_V_CFA)$(CFACOMPILE) -fsyntax-only -w $(testdir)/array.c303 @$(CFACOMPILE) -fsyntax-only -w $(testdir)/array.c 309 304 310 305 compile-attributes$(EXEEXT): 311 $(AM_V_CFA)$(CFACOMPILE) -fsyntax-only -w $(testdir)/attributes.cfa306 @$(CFACOMPILE) -fsyntax-only -w $(testdir)/attributes.c 312 307 313 308 compile-empty$(EXEEXT): 314 $(AM_V_CFA)$(CFACOMPILE) -fsyntax-only -w $(srcdir)/compile/empty.c309 @$(CFACOMPILE) -fsyntax-only -w $(srcdir)/compile/empty.c 315 310 316 311 compile-expression$(EXEEXT): 317 $(AM_V_CFA)$(CFACOMPILE) -fsyntax-only -w $(testdir)/expression.c312 @$(CFACOMPILE) -fsyntax-only -w $(testdir)/expression.c 318 313 319 314 compile-io$(EXEEXT): 320 $(AM_V_CFA)$(CFACOMPILE) -fsyntax-only -w $(testdir)/io1.c315 @$(CFACOMPILE) -fsyntax-only -w $(testdir)/io1.c 321 316 322 317 compile-monitor$(EXEEXT): 323 $(AM_V_CFA)$(CFACOMPILE) -fsyntax-only -w $(testdir)/concurrent/monitor.c318 @$(CFACOMPILE) -fsyntax-only -w $(testdir)/concurrent/monitor.c 324 319 325 320 compile-operators$(EXEEXT): 326 $(AM_V_CFA)$(CFACOMPILE) -fsyntax-only -w $(testdir)/operators.c321 @$(CFACOMPILE) -fsyntax-only -w $(testdir)/operators.c 327 322 328 323 compile-thread$(EXEEXT): 329 $(AM_V_CFA)$(CFACOMPILE) -fsyntax-only -w $(testdir)/concurrent/thread.c324 @$(CFACOMPILE) -fsyntax-only -w $(testdir)/concurrent/thread.c 330 325 331 326 compile-typeof$(EXEEXT): 332 $(AM_V_CFA)$(CFACOMPILE) -fsyntax-only -w $(testdir)/typeof.c333 327 @$(CFACOMPILE) -fsyntax-only -w $(testdir)/typeof.c 328 -
benchmark/Makefile.in
r95b8aa7 rff5caaf 17 17 ######################## -*- Mode: Makefile-Automake -*- ###################### 18 18 ############################################################################### 19 19 20 VPATH = @srcdir@ 20 21 am__is_gnu_make = { \ … … 91 92 build_triplet = @build@ 92 93 host_triplet = @host@ 93 EXTRA_PROGRAMS = dummy$(EXEEXT) 94 noinst_PROGRAMS = 94 95 @WITH_LIBFIBRE_TRUE@am__append_1 = \ 95 96 @WITH_LIBFIBRE_TRUE@ ctxswitch-kos_fibre.run \ … … 98 99 subdir = benchmark 99 100 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 100 am__aclocal_m4_deps = $(top_srcdir)/automake/libtool.m4 \ 101 $(top_srcdir)/automake/ltoptions.m4 \ 102 $(top_srcdir)/automake/ltsugar.m4 \ 103 $(top_srcdir)/automake/ltversion.m4 \ 104 $(top_srcdir)/automake/lt~obsolete.m4 \ 105 $(top_srcdir)/automake/cfa.m4 $(top_srcdir)/configure.ac 101 am__aclocal_m4_deps = $(top_srcdir)/automake/cfa.m4 \ 102 $(top_srcdir)/configure.ac 106 103 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ 107 104 $(ACLOCAL_M4) … … 111 108 CONFIG_CLEAN_FILES = 112 109 CONFIG_CLEAN_VPATH_FILES = 113 am_dummy_OBJECTS = c.$(OBJEXT) cxx.$(OBJEXT) 114 dummy_OBJECTS = $(am_dummy_OBJECTS) 115 dummy_LDADD = $(LDADD) 116 AM_V_lt = $(am__v_lt_@AM_V@) 117 am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@) 118 am__v_lt_0 = --silent 119 am__v_lt_1 = 110 PROGRAMS = $(noinst_PROGRAMS) 120 111 AM_V_P = $(am__v_P_@AM_V@) 121 112 am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) … … 130 121 am__v_at_0 = @ 131 122 am__v_at_1 = 132 DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) 133 depcomp = $(SHELL) $(top_srcdir)/automake/depcomp 134 am__depfiles_maybe = depfiles 135 am__mv = mv -f 136 COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ 137 $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) 138 LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ 139 $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \ 140 $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ 141 $(AM_CFLAGS) $(CFLAGS) 142 AM_V_CC = $(am__v_CC_@AM_V@) 143 am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@) 144 am__v_CC_0 = @echo " CC " $@; 145 am__v_CC_1 = 146 CCLD = $(CC) 147 LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ 148 $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ 149 $(AM_LDFLAGS) $(LDFLAGS) -o $@ 150 AM_V_CCLD = $(am__v_CCLD_@AM_V@) 151 am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@) 152 am__v_CCLD_0 = @echo " CCLD " $@; 153 am__v_CCLD_1 = 154 CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ 155 $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) 156 LTCXXCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \ 157 $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) \ 158 $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ 159 $(AM_CXXFLAGS) $(CXXFLAGS) 160 AM_V_CXX = $(am__v_CXX_@AM_V@) 161 am__v_CXX_ = $(am__v_CXX_@AM_DEFAULT_V@) 162 am__v_CXX_0 = @echo " CXX " $@; 163 am__v_CXX_1 = 164 CXXLD = $(CXX) 165 CXXLINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \ 166 $(LIBTOOLFLAGS) --mode=link $(CXXLD) $(AM_CXXFLAGS) \ 167 $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ 168 AM_V_CXXLD = $(am__v_CXXLD_@AM_V@) 169 am__v_CXXLD_ = $(am__v_CXXLD_@AM_DEFAULT_V@) 170 am__v_CXXLD_0 = @echo " CXXLD " $@; 171 am__v_CXXLD_1 = 172 SOURCES = $(dummy_SOURCES) 173 DIST_SOURCES = $(dummy_SOURCES) 123 SOURCES = 124 DIST_SOURCES = 174 125 am__can_run_installinfo = \ 175 126 case $$AM_UPDATE_INFO_DIR in \ … … 178 129 esac 179 130 am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) 180 # Read a list of newline-separated strings from the standard input, 181 # and print each of them once, without duplicates. Input order is 182 # *not* preserved. 183 am__uniquify_input = $(AWK) '\ 184 BEGIN { nonempty = 0; } \ 185 { items[$$0] = 1; nonempty = 1; } \ 186 END { if (nonempty) { for (i in items) print i; }; } \ 187 ' 188 # Make sure the list of sources is unique. This is necessary because, 189 # e.g., the same source file might be shared among _SOURCES variables 190 # for different programs/libraries. 191 am__define_uniq_tagged_files = \ 192 list='$(am__tagged_files)'; \ 193 unique=`for i in $$list; do \ 194 if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ 195 done | $(am__uniquify_input)` 196 ETAGS = etags 197 CTAGS = ctags 198 am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/automake/depcomp \ 199 $(top_srcdir)/src/cfa.make compile 131 am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/src/cfa.make \ 132 compile 200 133 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) 201 134 ACLOCAL = @ACLOCAL@ … … 203 136 AMTAR = @AMTAR@ 204 137 AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ 205 AR = @AR@206 138 AUTOCONF = @AUTOCONF@ 207 139 AUTOHEADER = @AUTOHEADER@ 208 140 AUTOMAKE = @AUTOMAKE@ 209 141 AWK = @AWK@ 142 BACKEND_CC = @BACKEND_CC@ 210 143 BUILD_IN_TREE_FLAGS = @BUILD_IN_TREE_FLAGS@ 211 144 CC = @CC@ … … 227 160 CPPFLAGS = @CPPFLAGS@ 228 161 CXX = @CXX@ 229 CXXCPP = @CXXCPP@230 162 CXXDEPMODE = @CXXDEPMODE@ 231 163 CXXFLAGS = @CXXFLAGS@ … … 233 165 DEFS = @DEFS@ 234 166 DEPDIR = @DEPDIR@ 235 DLLTOOL = @DLLTOOL@236 167 DRIVER_DIR = @DRIVER_DIR@ 237 DSYMUTIL = @DSYMUTIL@238 DUMPBIN = @DUMPBIN@239 168 ECHO_C = @ECHO_C@ 240 169 ECHO_N = @ECHO_N@ … … 242 171 EGREP = @EGREP@ 243 172 EXEEXT = @EXEEXT@ 244 FGREP = @FGREP@245 173 GREP = @GREP@ 246 174 HOST_FLAGS = @HOST_FLAGS@ … … 250 178 INSTALL_SCRIPT = @INSTALL_SCRIPT@ 251 179 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ 252 LD = @LD@253 180 LDFLAGS = @LDFLAGS@ 254 181 LEX = @LEX@ … … 259 186 LIBOBJS = @LIBOBJS@ 260 187 LIBS = @LIBS@ 261 LIBTOOL = @LIBTOOL@262 LIPO = @LIPO@263 LN_S = @LN_S@264 188 LTLIBOBJS = @LTLIBOBJS@ 265 LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@266 189 MAKEINFO = @MAKEINFO@ 267 MANIFEST_TOOL = @MANIFEST_TOOL@268 190 MKDIR_P = @MKDIR_P@ 269 NM = @NM@270 NMEDIT = @NMEDIT@271 OBJDUMP = @OBJDUMP@272 191 OBJEXT = @OBJEXT@ 273 OTOOL = @OTOOL@274 OTOOL64 = @OTOOL64@275 192 PACKAGE = @PACKAGE@ 276 193 PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ … … 282 199 PATH_SEPARATOR = @PATH_SEPARATOR@ 283 200 RANLIB = @RANLIB@ 284 SED = @SED@285 201 SET_MAKE = @SET_MAKE@ 286 202 SHELL = @SHELL@ … … 294 210 abs_top_builddir = @abs_top_builddir@ 295 211 abs_top_srcdir = @abs_top_srcdir@ 296 ac_ct_AR = @ac_ct_AR@297 212 ac_ct_CC = @ac_ct_CC@ 298 213 ac_ct_CXX = @ac_ct_CXX@ 299 ac_ct_DUMPBIN = @ac_ct_DUMPBIN@300 214 am__include = @am__include@ 301 215 am__leading_dot = @am__leading_dot@ … … 345 259 top_srcdir = @top_srcdir@ 346 260 AUTOMAKE_OPTIONS = foreign # do not require all the GNU file names 347 ACLOCAL_AMFLAGS = -I automake348 261 CFACOMPILE = $(CFACC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CFAFLAGS) $(CFAFLAGS) $(AM_CFLAGS) $(CFLAGS) 349 LTCFACOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \350 $(LIBTOOLFLAGS) --mode=compile $(CFACC) $(DEFS) \351 $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CFAFLAGS) $(CFAFLAGS) \352 $(AM_CFLAGS) $(CFLAGS)353 354 262 AM_V_CFA = $(am__v_CFA_@AM_V@) 355 263 am__v_CFA_ = $(am__v_CFA_@AM_DEFAULT_V@) 356 264 am__v_CFA_0 = @echo " CFA " $@; 357 265 am__v_CFA_1 = 358 AM_V_JAVAC = $(am__v_JAVAC_@AM_V@) 359 am__v_JAVAC_ = $(am__v_JAVAC_@AM_DEFAULT_V@) 360 am__v_JAVAC_0 = @echo " JAVAC " $@; 361 am__v_JAVAC_1 = 362 AM_V_GOC = $(am__v_GOC_@AM_V@) 363 am__v_GOC_ = $(am__v_GOC_@AM_DEFAULT_V@) 364 am__v_GOC_0 = @echo " GOC " $@; 365 am__v_GOC_1 = 266 267 # applies to both programs 366 268 UPPCOMPILE = $(UPPCC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_UPPFLAGS) $(UPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_CFLAGS) $(CFLAGS) 367 AM_V_UPP = $(am__v_UPP_@AM_V@)368 am__v_UPP_ = $(am__v_UPP_@AM_DEFAULT_V@)369 am__v_UPP_0 = @echo " UPP " $@;370 am__v_UPP_1 =371 372 # applies to both programs373 UPPCC = u++374 269 AM_CFLAGS = -O2 -Wall -I$(srcdir) -lrt -pthread 375 270 AM_CFAFLAGS = -quiet -in-tree -nodebug … … 382 277 TIME_FORMAT = "%E" 383 278 PRINT_FORMAT = %20s: #Comments needed for spacing 384 dummy_SOURCES = c.c cxx.cpp385 279 CTXSWITCH_DEPEND = loop.run function.run fetch_add.run \ 386 280 ctxswitch-pthread.run ctxswitch-cfa_coroutine.run \ … … 393 287 394 288 .SUFFIXES: 395 .SUFFIXES: .c .cfa .cpp .lo .o .obj289 .SUFFIXES: .cfa .o 396 290 $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(top_srcdir)/src/cfa.make $(am__configure_deps) 397 291 @for dep in $?; do \ … … 425 319 $(am__aclocal_m4_deps): 426 320 427 dummy$(EXEEXT): $(dummy_OBJECTS) $(dummy_DEPENDENCIES) $(EXTRA_dummy_DEPENDENCIES) 428 @rm -f dummy$(EXEEXT) 429 $(AM_V_CXXLD)$(CXXLINK) $(dummy_OBJECTS) $(dummy_LDADD) $(LIBS) 430 431 mostlyclean-compile: 432 -rm -f *.$(OBJEXT) 433 434 distclean-compile: 435 -rm -f *.tab.c 436 437 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/c.Po@am__quote@ 438 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cxx.Po@am__quote@ 439 440 .c.o: 441 @am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\ 442 @am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\ 443 @am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po 444 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ 445 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ 446 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $< 447 448 .c.obj: 449 @am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.obj$$||'`;\ 450 @am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ `$(CYGPATH_W) '$<'` &&\ 451 @am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po 452 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ 453 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ 454 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'` 455 456 .c.lo: 457 @am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.lo$$||'`;\ 458 @am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\ 459 @am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Plo 460 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ 461 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ 462 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $< 463 464 .cpp.o: 465 @am__fastdepCXX_TRUE@ $(AM_V_CXX)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\ 466 @am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\ 467 @am__fastdepCXX_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po 468 @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ 469 @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ 470 @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXXCOMPILE) -c -o $@ $< 471 472 .cpp.obj: 473 @am__fastdepCXX_TRUE@ $(AM_V_CXX)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.obj$$||'`;\ 474 @am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ `$(CYGPATH_W) '$<'` &&\ 475 @am__fastdepCXX_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po 476 @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ 477 @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ 478 @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'` 479 480 .cpp.lo: 481 @am__fastdepCXX_TRUE@ $(AM_V_CXX)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.lo$$||'`;\ 482 @am__fastdepCXX_TRUE@ $(LTCXXCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\ 483 @am__fastdepCXX_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Plo 484 @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ 485 @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ 486 @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(LTCXXCOMPILE) -c -o $@ $< 487 488 mostlyclean-libtool: 489 -rm -f *.lo 490 491 clean-libtool: 492 -rm -rf .libs _libs 493 494 ID: $(am__tagged_files) 495 $(am__define_uniq_tagged_files); mkid -fID $$unique 496 tags: tags-am 497 TAGS: tags 498 499 tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) 500 set x; \ 501 here=`pwd`; \ 502 $(am__define_uniq_tagged_files); \ 503 shift; \ 504 if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ 505 test -n "$$unique" || unique=$$empty_fix; \ 506 if test $$# -gt 0; then \ 507 $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ 508 "$$@" $$unique; \ 509 else \ 510 $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ 511 $$unique; \ 512 fi; \ 513 fi 514 ctags: ctags-am 515 516 CTAGS: ctags 517 ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) 518 $(am__define_uniq_tagged_files); \ 519 test -z "$(CTAGS_ARGS)$$unique" \ 520 || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ 521 $$unique 522 523 GTAGS: 524 here=`$(am__cd) $(top_builddir) && pwd` \ 525 && $(am__cd) $(top_srcdir) \ 526 && gtags -i $(GTAGS_ARGS) "$$here" 527 cscopelist: cscopelist-am 528 529 cscopelist-am: $(am__tagged_files) 530 list='$(am__tagged_files)'; \ 531 case "$(srcdir)" in \ 532 [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \ 533 *) sdir=$(subdir)/$(srcdir) ;; \ 534 esac; \ 535 for i in $$list; do \ 536 if test -f "$$i"; then \ 537 echo "$(subdir)/$$i"; \ 538 else \ 539 echo "$$sdir/$$i"; \ 540 fi; \ 541 done >> $(top_builddir)/cscope.files 542 543 distclean-tags: 544 -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags 321 clean-noinstPROGRAMS: 322 -test -z "$(noinst_PROGRAMS)" || rm -f $(noinst_PROGRAMS) 323 tags TAGS: 324 325 ctags CTAGS: 326 327 cscope cscopelist: 328 545 329 546 330 distdir: $(DISTFILES) … … 576 360 check-am: all-am 577 361 check: check-am 578 all-am: Makefile 362 all-am: Makefile $(PROGRAMS) 579 363 installdirs: 580 364 install: install-am … … 610 394 clean: clean-am 611 395 612 clean-am: clean-generic clean- libtoolmostlyclean-am396 clean-am: clean-generic clean-noinstPROGRAMS mostlyclean-am 613 397 614 398 distclean: distclean-am 615 -rm -rf ./$(DEPDIR)616 399 -rm -f Makefile 617 distclean-am: clean-am distclean-compile distclean-generic \ 618 distclean-tags 400 distclean-am: clean-am distclean-generic 619 401 620 402 dvi: dvi-am … … 659 441 660 442 maintainer-clean: maintainer-clean-am 661 -rm -rf ./$(DEPDIR)662 443 -rm -f Makefile 663 444 maintainer-clean-am: distclean-am maintainer-clean-generic … … 665 446 mostlyclean: mostlyclean-am 666 447 667 mostlyclean-am: mostlyclean-compile mostlyclean-generic \ 668 mostlyclean-libtool 448 mostlyclean-am: mostlyclean-generic 669 449 670 450 pdf: pdf-am … … 680 460 .MAKE: install-am install-strip 681 461 682 .PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \ 683 clean-libtool cscopelist-am ctags ctags-am distclean \ 684 distclean-compile distclean-generic distclean-libtool \ 685 distclean-tags distdir dvi dvi-am html html-am info info-am \ 462 .PHONY: all all-am check check-am clean clean-generic \ 463 clean-noinstPROGRAMS cscopelist-am ctags-am distclean \ 464 distclean-generic distdir dvi dvi-am html html-am info info-am \ 686 465 install install-am install-data install-data-am install-dvi \ 687 466 install-dvi-am install-exec install-exec-am install-html \ … … 690 469 install-strip installcheck installcheck-am installdirs \ 691 470 maintainer-clean maintainer-clean-generic mostlyclean \ 692 mostlyclean- compile mostlyclean-generic mostlyclean-libtool \693 pdf pdf-am ps ps-am tags tags-am uninstalluninstall-am471 mostlyclean-generic pdf pdf-am ps ps-am tags-am uninstall \ 472 uninstall-am 694 473 695 474 .PRECIOUS: Makefile … … 701 480 $(am__mv) $$depbase.Tpo $$depbase.Po 702 481 703 .cfa.lo:704 $(AM_V_CFA)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.lo$$||'`;\705 $(LTCFACOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\706 $(am__mv) $$depbase.Tpo $$depbase.Plo707 708 #prevent any tests in parallel709 482 .NOTPARALLEL: 710 483 … … 718 491 @${STATS} .result.log 719 492 @echo "------------------------------------------------------" 720 @rm -f a.out .result.log *.class493 @rm -f a.out .result.log 721 494 722 495 %.runquiet : … … 768 541 769 542 loop$(EXEEXT): 770 $( AM_V_CC)$(COMPILE) -DBENCH_N=5000000000 $(srcdir)/loop.c543 $(COMPILE) -DBENCH_N=5000000000 loop.c 771 544 772 545 function$(EXEEXT): 773 $( AM_V_CC)$(COMPILE) -DBENCH_N=5000000000 $(srcdir)/function.c546 $(COMPILE) -DBENCH_N=5000000000 function.c 774 547 775 548 fetch_add$(EXEEXT): 776 $( AM_V_CC)$(COMPILE) -DBENCH_N=500000000 $(srcdir)/fetch_add.c549 $(COMPILE) -DBENCH_N=500000000 fetch_add.c 777 550 778 551 @WITH_LIBFIBRE_TRUE@ctxswitch-kos_fibre$(EXEEXT): 779 @WITH_LIBFIBRE_TRUE@ $(AM_V_CXX)$(CXXCOMPILE) -DBENCH_N=50000000 $(srcdir)/ctxswitch/kos_fibre.cpp -I$(LIBFIBRE_DIR) -lfibre552 @WITH_LIBFIBRE_TRUE@ @$(CXXCOMPILE) -DBENCH_N=50000000 $(srcdir)/ctxswitch/kos_fibre.cpp -I$(LIBFIBRE_DIR) -lfibre 780 553 781 554 @WITH_LIBFIBRE_TRUE@ctxswitch-kos_fibre2$(EXEEXT): 782 @WITH_LIBFIBRE_TRUE@ $(AM_V_CXX)$(CXXCOMPILE) -DBENCH_N=50000000 $(srcdir)/ctxswitch/kos_fibre2.cpp -I$(LIBFIBRE_DIR) -lfibre555 @WITH_LIBFIBRE_TRUE@ @$(CXXCOMPILE) -DBENCH_N=50000000 $(srcdir)/ctxswitch/kos_fibre2.cpp -I$(LIBFIBRE_DIR) -lfibre 783 556 784 557 ctxswitch$(EXEEXT): $(CTXSWITCH_DEPEND) 785 558 786 559 ctxswitch-pthread$(EXEEXT): 787 $(AM_V_CC)$(COMPILE) -DBENCH_N=50000000 $(srcdir)/ctxswitch/pthreads.c560 @$(COMPILE) -DBENCH_N=50000000 $(srcdir)/ctxswitch/pthreads.c 788 561 789 562 ctxswitch-cfa_coroutine$(EXEEXT): 790 $(AM_V_CFA)$(CFACOMPILE) -DBENCH_N=50000000 $(srcdir)/ctxswitch/cfa_cor.c563 @$(CFACOMPILE) -DBENCH_N=50000000 $(srcdir)/ctxswitch/cfa_cor.c 791 564 792 565 ctxswitch-cfa_thread$(EXEEXT): 793 $(AM_V_CFA)$(CFACOMPILE) -DBENCH_N=50000000 $(srcdir)/ctxswitch/cfa_thrd.c566 @$(CFACOMPILE) -DBENCH_N=50000000 $(srcdir)/ctxswitch/cfa_thrd.c 794 567 795 568 ctxswitch-cfa_thread2$(EXEEXT): 796 $(AM_V_CFA)$(CFACOMPILE) -DBENCH_N=50000000 $(srcdir)/ctxswitch/cfa_thrd2.c569 @$(CFACOMPILE) -DBENCH_N=50000000 $(srcdir)/ctxswitch/cfa_thrd2.c 797 570 798 571 ctxswitch-upp_coroutine$(EXEEXT): 799 $(AM_V_UPP)$(UPPCOMPILE) -DBENCH_N=50000000 $(srcdir)/ctxswitch/upp_cor.cc572 @$(UPPCOMPILE) -DBENCH_N=50000000 $(srcdir)/ctxswitch/upp_cor.cc 800 573 801 574 ctxswitch-upp_thread$(EXEEXT): 802 $(AM_V_UPP)$(UPPCOMPILE) -DBENCH_N=50000000 $(srcdir)/ctxswitch/upp_thrd.cc575 @$(UPPCOMPILE) -DBENCH_N=50000000 $(srcdir)/ctxswitch/upp_thrd.cc 803 576 804 577 ctxswitch-goroutine$(EXEEXT): 805 $(AM_V_GOC)go build -o a.out $(srcdir)/ctxswitch/goroutine.go578 @go build -o a.out $(srcdir)/ctxswitch/goroutine.go 806 579 807 580 ctxswitch-java_thread$(EXEEXT): 808 $(AM_V_JAVAC)javac -d $(builddir)$(srcdir)/ctxswitch/JavaThread.java581 @javac $(srcdir)/ctxswitch/JavaThread.java 809 582 @echo "#!/bin/sh" > a.out 810 @echo " java JavaThread" >> a.out583 @echo "cd ctxswitch && java JavaThread" >> a.out 811 584 @chmod a+x a.out 812 585 … … 823 596 824 597 mutex-pthread_lock$(EXEEXT): 825 $(AM_V_CC)$(COMPILE) -DBENCH_N=50000000 $(srcdir)/mutex/pthreads.c598 @$(COMPILE) -DBENCH_N=50000000 $(srcdir)/mutex/pthreads.c 826 599 827 600 mutex-upp$(EXEEXT): 828 $(AM_V_UPP)$(UPPCOMPILE) -DBENCH_N=50000000 $(srcdir)/mutex/upp.cc601 @$(UPPCOMPILE) -DBENCH_N=50000000 $(srcdir)/mutex/upp.cc 829 602 830 603 mutex-cfa1$(EXEEXT): 831 $(AM_V_CFA)$(CFACOMPILE) -DBENCH_N=5000000 $(srcdir)/mutex/cfa1.c604 @$(CFACOMPILE) -DBENCH_N=5000000 $(srcdir)/mutex/cfa1.c 832 605 833 606 mutex-cfa2$(EXEEXT): 834 $(AM_V_CFA)$(CFACOMPILE) -DBENCH_N=5000000 $(srcdir)/mutex/cfa2.c607 @$(CFACOMPILE) -DBENCH_N=5000000 $(srcdir)/mutex/cfa2.c 835 608 836 609 mutex-cfa4$(EXEEXT): 837 $(AM_V_CFA)$(CFACOMPILE) -DBENCH_N=5000000 $(srcdir)/mutex/cfa4.c610 @$(CFACOMPILE) -DBENCH_N=5000000 $(srcdir)/mutex/cfa4.c 838 611 839 612 mutex-java_thread$(EXEEXT): 840 $(AM_V_JAVAC)javac -d $(builddir)$(srcdir)/mutex/JavaThread.java613 @javac $(srcdir)/mutex/JavaThread.java 841 614 @echo "#!/bin/sh" > a.out 842 @echo " java JavaThread" >> a.out615 @echo "cd mutex && java JavaThread" >> a.out 843 616 @chmod a+x a.out 844 617 … … 852 625 853 626 signal-pthread_cond$(EXEEXT): 854 $(AM_V_CC)$(COMPILE) -DBENCH_N=500000 $(srcdir)/schedint/pthreads.c627 @$(COMPILE) -DBENCH_N=500000 $(srcdir)/schedint/pthreads.c 855 628 856 629 signal-upp$(EXEEXT): 857 $(AM_V_UPP)$(UPPCOMPILE) -DBENCH_N=5000000 $(srcdir)/schedint/upp.cc630 @$(UPPCOMPILE) -DBENCH_N=5000000 $(srcdir)/schedint/upp.cc 858 631 859 632 signal-cfa1$(EXEEXT): 860 $(AM_V_CFA)$(CFACOMPILE) -DBENCH_N=500000 $(srcdir)/schedint/cfa1.c633 @$(CFACOMPILE) -DBENCH_N=500000 $(srcdir)/schedint/cfa1.c 861 634 862 635 signal-cfa2$(EXEEXT): 863 $(AM_V_CFA)$(CFACOMPILE) -DBENCH_N=500000 $(srcdir)/schedint/cfa2.c636 @$(CFACOMPILE) -DBENCH_N=500000 $(srcdir)/schedint/cfa2.c 864 637 865 638 signal-cfa4$(EXEEXT): 866 $(AM_V_CFA)$(CFACOMPILE) -DBENCH_N=500000 $(srcdir)/schedint/cfa4.c639 @$(CFACOMPILE) -DBENCH_N=500000 $(srcdir)/schedint/cfa4.c 867 640 868 641 signal-java_thread$(EXEEXT): 869 $(AM_V_JAVAC)javac -d $(builddir)$(srcdir)/schedint/JavaThread.java642 @javac $(srcdir)/schedint/JavaThread.java 870 643 @echo "#!/bin/sh" > a.out 871 @echo " java JavaThread" >> a.out644 @echo "cd schedint && java JavaThread" >> a.out 872 645 @chmod a+x a.out 873 646 … … 879 652 880 653 waitfor-upp$(EXEEXT): 881 $(AM_V_UPP)$(UPPCOMPILE) -DBENCH_N=5000000 $(srcdir)/schedext/upp.cc654 @$(UPPCOMPILE) -DBENCH_N=5000000 $(srcdir)/schedext/upp.cc 882 655 883 656 waitfor-cfa1$(EXEEXT): 884 $(AM_V_CFA)$(CFACOMPILE) -DBENCH_N=500000 $(srcdir)/schedext/cfa1.c657 @$(CFACOMPILE) -DBENCH_N=500000 $(srcdir)/schedext/cfa1.c 885 658 886 659 waitfor-cfa2$(EXEEXT): 887 $(AM_V_CFA)$(CFACOMPILE) -DBENCH_N=500000 $(srcdir)/schedext/cfa2.c660 @$(CFACOMPILE) -DBENCH_N=500000 $(srcdir)/schedext/cfa2.c 888 661 889 662 waitfor-cfa4$(EXEEXT): 890 $(AM_V_CFA)$(CFACOMPILE) -DBENCH_N=500000 $(srcdir)/schedext/cfa4.c663 @$(CFACOMPILE) -DBENCH_N=500000 $(srcdir)/schedext/cfa4.c 891 664 892 665 creation$(EXEEXT) :\ … … 901 674 902 675 creation-cfa_coroutine$(EXEEXT): 903 $(AM_V_CFA)$(CFACOMPILE) -DBENCH_N=10000000 $(srcdir)/creation/cfa_cor.c676 @$(CFACOMPILE) -DBENCH_N=10000000 $(srcdir)/creation/cfa_cor.c 904 677 905 678 creation-cfa_coroutine_eager$(EXEEXT): 906 $(AM_V_CFA)$(CFACOMPILE) -DBENCH_N=10000000 $(srcdir)/creation/cfa_cor.c679 @$(CFACOMPILE) -DBENCH_N=10000000 $(srcdir)/creation/cfa_cor.c 907 680 908 681 creation-cfa_thread$(EXEEXT): 909 $(AM_V_CFA)$(CFACOMPILE) -DBENCH_N=10000000 $(srcdir)/creation/cfa_thrd.c682 @$(CFACOMPILE) -DBENCH_N=10000000 $(srcdir)/creation/cfa_thrd.c 910 683 911 684 creation-upp_coroutine$(EXEEXT): 912 $(AM_V_UPP)$(UPPCOMPILE) -DBENCH_N=50000000 $(srcdir)/creation/upp_cor.cc685 @$(UPPCOMPILE) -DBENCH_N=50000000 $(srcdir)/creation/upp_cor.cc 913 686 914 687 creation-upp_thread$(EXEEXT): 915 $(AM_V_UPP)$(UPPCOMPILE) -DBENCH_N=50000000 $(srcdir)/creation/upp_thrd.cc688 @$(UPPCOMPILE) -DBENCH_N=50000000 $(srcdir)/creation/upp_thrd.cc 916 689 917 690 creation-pthread$(EXEEXT): 918 $(AM_V_CC)$(COMPILE) -DBENCH_N=250000 $(srcdir)/creation/pthreads.c691 @$(COMPILE) -DBENCH_N=250000 $(srcdir)/creation/pthreads.c 919 692 920 693 creation-goroutine$(EXEEXT): 921 $(AM_V_GOC)go build -o a.out $(srcdir)/creation/goroutine.go694 @go build -o a.out $(srcdir)/creation/goroutine.go 922 695 923 696 creation-java_thread$(EXEEXT): 924 $(AM_V_JAVAC)javac -d $(builddir)$(srcdir)/creation/JavaThread.java697 @javac $(srcdir)/creation/JavaThread.java 925 698 @echo "#!/bin/sh" > a.out 926 @echo " java JavaThread" >> a.out699 @echo "cd creation && java JavaThread" >> a.out 927 700 @chmod a+x a.out 928 701 … … 938 711 939 712 compile-array$(EXEEXT): 940 $(AM_V_CFA)$(CFACOMPILE) -fsyntax-only -w $(testdir)/array.c713 @$(CFACOMPILE) -fsyntax-only -w $(testdir)/array.c 941 714 942 715 compile-attributes$(EXEEXT): 943 $(AM_V_CFA)$(CFACOMPILE) -fsyntax-only -w $(testdir)/attributes.cfa716 @$(CFACOMPILE) -fsyntax-only -w $(testdir)/attributes.c 944 717 945 718 compile-empty$(EXEEXT): 946 $(AM_V_CFA)$(CFACOMPILE) -fsyntax-only -w $(srcdir)/compile/empty.c719 @$(CFACOMPILE) -fsyntax-only -w $(srcdir)/compile/empty.c 947 720 948 721 compile-expression$(EXEEXT): 949 $(AM_V_CFA)$(CFACOMPILE) -fsyntax-only -w $(testdir)/expression.c722 @$(CFACOMPILE) -fsyntax-only -w $(testdir)/expression.c 950 723 951 724 compile-io$(EXEEXT): 952 $(AM_V_CFA)$(CFACOMPILE) -fsyntax-only -w $(testdir)/io1.c725 @$(CFACOMPILE) -fsyntax-only -w $(testdir)/io1.c 953 726 954 727 compile-monitor$(EXEEXT): 955 $(AM_V_CFA)$(CFACOMPILE) -fsyntax-only -w $(testdir)/concurrent/monitor.c728 @$(CFACOMPILE) -fsyntax-only -w $(testdir)/concurrent/monitor.c 956 729 957 730 compile-operators$(EXEEXT): 958 $(AM_V_CFA)$(CFACOMPILE) -fsyntax-only -w $(testdir)/operators.c731 @$(CFACOMPILE) -fsyntax-only -w $(testdir)/operators.c 959 732 960 733 compile-thread$(EXEEXT): 961 $(AM_V_CFA)$(CFACOMPILE) -fsyntax-only -w $(testdir)/concurrent/thread.c734 @$(CFACOMPILE) -fsyntax-only -w $(testdir)/concurrent/thread.c 962 735 963 736 compile-typeof$(EXEEXT): 964 $(AM_V_CFA)$(CFACOMPILE) -fsyntax-only -w $(testdir)/typeof.c737 @$(CFACOMPILE) -fsyntax-only -w $(testdir)/typeof.c 965 738 966 739 # Tell versions [3.59,3.63) of GNU make to not export all variables. -
benchmark/Monitor.c
r95b8aa7 rff5caaf 29 29 EndTime = Time(); 30 30 31 sout | ( EndTime - StartTime ) / N ;31 sout | ( EndTime - StartTime ) / N | endl; 32 32 } -
configure
r95b8aa7 rff5caaf 199 199 eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" && 200 200 test \"x\`expr \$as_lineno_1'\$as_run' + 1\`\" = \"x\$as_lineno_2'\$as_run'\"' || exit 1 201 202 test -n \"\${ZSH_VERSION+set}\${BASH_VERSION+set}\" || (203 ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'204 ECHO=\$ECHO\$ECHO\$ECHO\$ECHO\$ECHO205 ECHO=\$ECHO\$ECHO\$ECHO\$ECHO\$ECHO\$ECHO206 PATH=/empty FPATH=/empty; export PATH FPATH207 test \"X\`printf %s \$ECHO\`\" = \"X\$ECHO\" \\208 || test \"X\`print -r -- \$ECHO\`\" = \"X\$ECHO\" ) || exit 1209 201 test \$(( 1 + 1 )) = 2 || exit 1" 210 202 if (eval "$as_required") 2>/dev/null; then : … … 565 557 as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" 566 558 567 SHELL=${CONFIG_SHELL-/bin/sh}568 569 559 570 560 test -n "$DJDIR" || exec 7<&0 </dev/null … … 636 626 LTLIBOBJS 637 627 LIBOBJS 638 CFA_BACKEND_CC639 628 ALLOCA 629 EGREP 630 GREP 631 CPP 640 632 WITH_LIBFIBRE_FALSE 641 633 WITH_LIBFIBRE_TRUE 642 CXXCPP643 CPP644 LT_SYS_LIBRARY_PATH645 OTOOL64646 OTOOL647 LIPO648 NMEDIT649 DSYMUTIL650 MANIFEST_TOOL651 634 RANLIB 652 ac_ct_AR653 AR654 DLLTOOL655 OBJDUMP656 LN_S657 NM658 ac_ct_DUMPBIN659 DUMPBIN660 LD661 FGREP662 EGREP663 GREP664 SED665 LIBTOOL666 635 LEXLIB 667 636 LEX_OUTPUT_ROOT … … 718 687 CFA_INCDIR 719 688 CFA_PREFIX 689 CFA_BACKEND_CC 690 BACKEND_CC 720 691 DOendif 721 692 DOifskipcompile … … 792 763 enable_silent_rules 793 764 with_cfa_name 765 with_backend_compiler 794 766 with_target_hosts 795 767 enable_dependency_tracking 796 enable_shared797 enable_static798 with_pic799 enable_fast_install800 with_aix_soname801 with_gnu_ld802 with_sysroot803 enable_libtool_lock804 768 ' 805 769 ac_precious_vars='build_alias … … 818 782 YACC 819 783 YFLAGS 820 LT_SYS_LIBRARY_PATH 821 CPP 822 CXXCPP' 784 CPP' 823 785 824 786 … … 1456 1418 --disable-dependency-tracking 1457 1419 speeds up one-time build 1458 --enable-shared[=PKGS] build shared libraries [default=yes]1459 --enable-static[=PKGS] build static libraries [default=yes]1460 --enable-fast-install[=PKGS]1461 optimize for fast installation [default=yes]1462 --disable-libtool-lock avoid locking (might break parallel builds)1463 1420 1464 1421 Optional Packages: … … 1466 1423 --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) 1467 1424 --with-cfa-name=NAME NAME too which cfa will be installed 1425 --with-backend-compiler=PROGRAM PROGRAM that performs the final code compilation (must be gcc-compatible) 1468 1426 --with-target-hosts=HOSTS HOSTS comma seperated list of hosts to build for, format ARCH:debug|nodebug|nolib 1469 --with-pic[=PKGS] try to use only PIC/non-PIC objects [default=use1470 both]1471 --with-aix-soname=aix|svr4|both1472 shared library versioning (aka "SONAME") variant to1473 provide on AIX, [default=aix].1474 --with-gnu-ld assume the C compiler uses GNU ld [default=no]1475 --with-sysroot[=DIR] Search for dependent libraries within DIR (or the1476 compiler's sysroot if not specified).1477 1427 1478 1428 Some influential environment variables: … … 1494 1444 This script will default YFLAGS to the empty string to avoid a 1495 1445 default value of `-d' given by some make applications. 1496 LT_SYS_LIBRARY_PATH1497 User-defined run-time library search path.1498 1446 CPP C preprocessor 1499 CXXCPP C++ preprocessor1500 1447 1501 1448 Use these variables to override the choices made by `configure' or to help … … 1701 1648 } # ac_fn_c_try_link 1702 1649 1703 # ac_fn_c_check_ header_compile LINENO HEADERVAR INCLUDES1704 # ------------------------------------------- ------------1705 # Tests whether HEADER exists and can be compiled using the include files in1706 # INCLUDES, setting the cachevariable VAR accordingly.1707 ac_fn_c_check_ header_compile ()1650 # ac_fn_c_check_type LINENO TYPE VAR INCLUDES 1651 # ------------------------------------------- 1652 # Tests whether TYPE exists after having included INCLUDES, setting cache 1653 # variable VAR accordingly. 1654 ac_fn_c_check_type () 1708 1655 { 1709 1656 as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack … … 1713 1660 $as_echo_n "(cached) " >&6 1714 1661 else 1662 eval "$3=no" 1715 1663 cat confdefs.h - <<_ACEOF >conftest.$ac_ext 1716 1664 /* end confdefs.h. */ 1717 1665 $4 1718 #include <$2> 1666 int 1667 main () 1668 { 1669 if (sizeof ($2)) 1670 return 0; 1671 ; 1672 return 0; 1673 } 1719 1674 _ACEOF 1720 1675 if ac_fn_c_try_compile "$LINENO"; then : 1676 cat confdefs.h - <<_ACEOF >conftest.$ac_ext 1677 /* end confdefs.h. */ 1678 $4 1679 int 1680 main () 1681 { 1682 if (sizeof (($2))) 1683 return 0; 1684 ; 1685 return 0; 1686 } 1687 _ACEOF 1688 if ac_fn_c_try_compile "$LINENO"; then : 1689 1690 else 1721 1691 eval "$3=yes" 1722 else 1723 eval "$3=no" 1692 fi 1693 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext 1724 1694 fi 1725 1695 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext … … 1730 1700 eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno 1731 1701 1732 } # ac_fn_c_check_ header_compile1702 } # ac_fn_c_check_type 1733 1703 1734 1704 # ac_fn_c_try_cpp LINENO … … 1811 1781 } # ac_fn_c_try_run 1812 1782 1783 # ac_fn_c_check_header_compile LINENO HEADER VAR INCLUDES 1784 # ------------------------------------------------------- 1785 # Tests whether HEADER exists and can be compiled using the include files in 1786 # INCLUDES, setting the cache variable VAR accordingly. 1787 ac_fn_c_check_header_compile () 1788 { 1789 as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack 1790 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 1791 $as_echo_n "checking for $2... " >&6; } 1792 if eval \${$3+:} false; then : 1793 $as_echo_n "(cached) " >&6 1794 else 1795 cat confdefs.h - <<_ACEOF >conftest.$ac_ext 1796 /* end confdefs.h. */ 1797 $4 1798 #include <$2> 1799 _ACEOF 1800 if ac_fn_c_try_compile "$LINENO"; then : 1801 eval "$3=yes" 1802 else 1803 eval "$3=no" 1804 fi 1805 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext 1806 fi 1807 eval ac_res=\$$3 1808 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 1809 $as_echo "$ac_res" >&6; } 1810 eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno 1811 1812 } # ac_fn_c_check_header_compile 1813 1813 1814 # ac_fn_c_check_func LINENO FUNC VAR 1814 1815 # ---------------------------------- … … 1877 1878 1878 1879 } # ac_fn_c_check_func 1879 1880 # ac_fn_cxx_try_cpp LINENO1881 # ------------------------1882 # Try to preprocess conftest.$ac_ext, and return whether this succeeded.1883 ac_fn_cxx_try_cpp ()1884 {1885 as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack1886 if { { ac_try="$ac_cpp conftest.$ac_ext"1887 case "(($ac_try" in1888 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;1889 *) ac_try_echo=$ac_try;;1890 esac1891 eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""1892 $as_echo "$ac_try_echo"; } >&51893 (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err1894 ac_status=$?1895 if test -s conftest.err; then1896 grep -v '^ *+' conftest.err >conftest.er11897 cat conftest.er1 >&51898 mv -f conftest.er1 conftest.err1899 fi1900 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&51901 test $ac_status = 0; } > conftest.i && {1902 test -z "$ac_cxx_preproc_warn_flag$ac_cxx_werror_flag" ||1903 test ! -s conftest.err1904 }; then :1905 ac_retval=01906 else1907 $as_echo "$as_me: failed program was:" >&51908 sed 's/^/| /' conftest.$ac_ext >&51909 1910 ac_retval=11911 fi1912 eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno1913 as_fn_set_status $ac_retval1914 1915 } # ac_fn_cxx_try_cpp1916 1917 # ac_fn_cxx_try_link LINENO1918 # -------------------------1919 # Try to link conftest.$ac_ext, and return whether this succeeded.1920 ac_fn_cxx_try_link ()1921 {1922 as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack1923 rm -f conftest.$ac_objext conftest$ac_exeext1924 if { { ac_try="$ac_link"1925 case "(($ac_try" in1926 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;1927 *) ac_try_echo=$ac_try;;1928 esac1929 eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""1930 $as_echo "$ac_try_echo"; } >&51931 (eval "$ac_link") 2>conftest.err1932 ac_status=$?1933 if test -s conftest.err; then1934 grep -v '^ *+' conftest.err >conftest.er11935 cat conftest.er1 >&51936 mv -f conftest.er1 conftest.err1937 fi1938 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&51939 test $ac_status = 0; } && {1940 test -z "$ac_cxx_werror_flag" ||1941 test ! -s conftest.err1942 } && test -s conftest$ac_exeext && {1943 test "$cross_compiling" = yes ||1944 test -x conftest$ac_exeext1945 }; then :1946 ac_retval=01947 else1948 $as_echo "$as_me: failed program was:" >&51949 sed 's/^/| /' conftest.$ac_ext >&51950 1951 ac_retval=11952 fi1953 # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information1954 # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would1955 # interfere with the next link command; also delete a directory that is1956 # left behind by Apple's compiler. We do this before executing the actions.1957 rm -rf conftest.dSYM conftest_ipa8_conftest.oo1958 eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno1959 as_fn_set_status $ac_retval1960 1961 } # ac_fn_cxx_try_link1962 1963 # ac_fn_c_check_type LINENO TYPE VAR INCLUDES1964 # -------------------------------------------1965 # Tests whether TYPE exists after having included INCLUDES, setting cache1966 # variable VAR accordingly.1967 ac_fn_c_check_type ()1968 {1969 as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack1970 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&51971 $as_echo_n "checking for $2... " >&6; }1972 if eval \${$3+:} false; then :1973 $as_echo_n "(cached) " >&61974 else1975 eval "$3=no"1976 cat confdefs.h - <<_ACEOF >conftest.$ac_ext1977 /* end confdefs.h. */1978 $41979 int1980 main ()1981 {1982 if (sizeof ($2))1983 return 0;1984 ;1985 return 0;1986 }1987 _ACEOF1988 if ac_fn_c_try_compile "$LINENO"; then :1989 cat confdefs.h - <<_ACEOF >conftest.$ac_ext1990 /* end confdefs.h. */1991 $41992 int1993 main ()1994 {1995 if (sizeof (($2)))1996 return 0;1997 ;1998 return 0;1999 }2000 _ACEOF2001 if ac_fn_c_try_compile "$LINENO"; then :2002 2003 else2004 eval "$3=yes"2005 fi2006 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext2007 fi2008 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext2009 fi2010 eval ac_res=\$$32011 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&52012 $as_echo "$ac_res" >&6; }2013 eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno2014 2015 } # ac_fn_c_check_type2016 1880 2017 1881 # ac_fn_c_check_header_mongrel LINENO HEADER VAR INCLUDES … … 2616 2480 2617 2481 2618 2619 2482 #AC_CONFIG_SRCDIR([src/main.cc]) 2620 2483 ac_config_headers="$ac_config_headers config.h:src/config.h.in" … … 3303 3166 3304 3167 #============================================================================== 3168 # backend compiler implementation 3169 3170 # Check whether --with-backend-compiler was given. 3171 if test "${with_backend_compiler+set}" = set; then : 3172 withval=$with_backend_compiler; backendcompiler=$withval 3173 else 3174 backendcompiler="" 3175 fi 3176 3177 if test "x$backendcompiler" != "x"; then 3178 BACKEND_CC=${backendcompiler} 3179 else 3180 # Extract the first word of "gcc", so it can be a program name with args. 3181 set dummy gcc; ac_word=$2 3182 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 3183 $as_echo_n "checking for $ac_word... " >&6; } 3184 if ${ac_cv_path_BACKEND_CC+:} false; then : 3185 $as_echo_n "(cached) " >&6 3186 else 3187 case $BACKEND_CC in 3188 [\\/]* | ?:[\\/]*) 3189 ac_cv_path_BACKEND_CC="$BACKEND_CC" # Let the user override the test with a path. 3190 ;; 3191 *) 3192 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR 3193 for as_dir in $PATH 3194 do 3195 IFS=$as_save_IFS 3196 test -z "$as_dir" && as_dir=. 3197 for ac_exec_ext in '' $ac_executable_extensions; do 3198 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then 3199 ac_cv_path_BACKEND_CC="$as_dir/$ac_word$ac_exec_ext" 3200 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 3201 break 2 3202 fi 3203 done 3204 done 3205 IFS=$as_save_IFS 3206 3207 ;; 3208 esac 3209 fi 3210 BACKEND_CC=$ac_cv_path_BACKEND_CC 3211 if test -n "$BACKEND_CC"; then 3212 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $BACKEND_CC" >&5 3213 $as_echo "$BACKEND_CC" >&6; } 3214 else 3215 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 3216 $as_echo "no" >&6; } 3217 fi 3218 3219 # check gcc installed 3220 if test "x$BACKEND_CC" = "x"; then 3221 as_fn_error $? "some version of gcc is needed. Get it at ftp://ftp.gnu.org" "$LINENO" 5 3222 exit 1 3223 fi 3224 fi 3225 3226 cat >>confdefs.h <<_ACEOF 3227 #define CFA_BACKEND_CC "${BACKEND_CC}" 3228 _ACEOF 3229 3230 3231 3232 #============================================================================== 3305 3233 # Installation paths 3306 3234 … … 3550 3478 "arm" ) cannon_arch_name="arm";; 3551 3479 "ARM" ) cannon_arch_name="arm";; 3552 "armv7l" ) cannon_arch_name="arm";;3553 3480 *) 3554 3481 >&2 echo "Unkown architecture " $arch_name; … … 3567 3494 echo -n "${LIBCFA_PATHS} " >> ${lib_dir}/config.data 3568 3495 echo -n "ARCHITECTURE=${lib_arch} " >> ${lib_dir}/config.data 3569 echo -n "CONFIGURATION=${lib_config} " >> ${lib_dir}/config.data 3570 echo -n "CFA_VERSION=${ver_major}:${ver_minor}:${ver_patch}" >> ${lib_dir}/config.data 3496 echo -n "CONFIGURATION=${lib_config}" >> ${lib_dir}/config.data 3571 3497 done 3572 3498 … … 3591 3517 "arm" ) cannon_arch_name="arm";; 3592 3518 "ARM" ) cannon_arch_name="arm";; 3593 "armv7l" ) cannon_arch_name="arm";;3594 3519 *) 3595 3520 >&2 echo "Unkown architecture " $arch_name; … … 5390 5315 fi 5391 5316 if test "${LEX}" = "lex" ; then echo "Error: flex required." ; exit 1 ; fi 5392 case `pwd` in 5393 *\ * | *\ *) 5394 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&5 5395 $as_echo "$as_me: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&2;} ;; 5317 5318 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5 5319 $as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; } 5320 set x ${MAKE-make} 5321 ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'` 5322 if eval \${ac_cv_prog_make_${ac_make}_set+:} false; then : 5323 $as_echo_n "(cached) " >&6 5324 else 5325 cat >conftest.make <<\_ACEOF 5326 SHELL = /bin/sh 5327 all: 5328 @echo '@@@%%%=$(MAKE)=@@@%%%' 5329 _ACEOF 5330 # GNU make sometimes prints "make[1]: Entering ...", which would confuse us. 5331 case `${MAKE-make} -f conftest.make 2>/dev/null` in 5332 *@@@%%%=?*=@@@%%%*) 5333 eval ac_cv_prog_make_${ac_make}_set=yes;; 5334 *) 5335 eval ac_cv_prog_make_${ac_make}_set=no;; 5396 5336 esac 5397 5398 5399 5400 macro_version='2.4.6' 5401 macro_revision='2.4.6' 5402 5403 5404 5405 5406 5407 5408 5409 5410 5411 5412 5413 5414 5415 ltmain=$ac_aux_dir/ltmain.sh 5416 5417 # Backslashify metacharacters that are still active within 5418 # double-quoted strings. 5419 sed_quote_subst='s/\(["`$\\]\)/\\\1/g' 5420 5421 # Same as above, but do not quote variable references. 5422 double_quote_subst='s/\(["`\\]\)/\\\1/g' 5423 5424 # Sed substitution to delay expansion of an escaped shell variable in a 5425 # double_quote_subst'ed string. 5426 delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g' 5427 5428 # Sed substitution to delay expansion of an escaped single quote. 5429 delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g' 5430 5431 # Sed substitution to avoid accidental globbing in evaled expressions 5432 no_glob_subst='s/\*/\\\*/g' 5433 5434 ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' 5435 ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO 5436 ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO 5437 5438 { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to print strings" >&5 5439 $as_echo_n "checking how to print strings... " >&6; } 5440 # Test print first, because it will be a builtin if present. 5441 if test "X`( print -r -- -n ) 2>/dev/null`" = X-n && \ 5442 test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then 5443 ECHO='print -r --' 5444 elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then 5445 ECHO='printf %s\n' 5446 else 5447 # Use this function as a fallback that always works. 5448 func_fallback_echo () 5449 { 5450 eval 'cat <<_LTECHO_EOF 5451 $1 5452 _LTECHO_EOF' 5453 } 5454 ECHO='func_fallback_echo' 5455 fi 5456 5457 # func_echo_all arg... 5458 # Invoke $ECHO with all args, space-separated. 5459 func_echo_all () 5460 { 5461 $ECHO "" 5462 } 5463 5464 case $ECHO in 5465 printf*) { $as_echo "$as_me:${as_lineno-$LINENO}: result: printf" >&5 5466 $as_echo "printf" >&6; } ;; 5467 print*) { $as_echo "$as_me:${as_lineno-$LINENO}: result: print -r" >&5 5468 $as_echo "print -r" >&6; } ;; 5469 *) { $as_echo "$as_me:${as_lineno-$LINENO}: result: cat" >&5 5470 $as_echo "cat" >&6; } ;; 5471 esac 5472 5473 5474 5475 5476 5477 5478 5479 5480 5481 5482 5483 5484 5485 5486 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for a sed that does not truncate output" >&5 5487 $as_echo_n "checking for a sed that does not truncate output... " >&6; } 5488 if ${ac_cv_path_SED+:} false; then : 5337 rm -f conftest.make 5338 fi 5339 if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then 5340 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 5341 $as_echo "yes" >&6; } 5342 SET_MAKE= 5343 else 5344 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 5345 $as_echo "no" >&6; } 5346 SET_MAKE="MAKE=${MAKE-make}" 5347 fi 5348 5349 if test -n "$ac_tool_prefix"; then 5350 # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args. 5351 set dummy ${ac_tool_prefix}ranlib; ac_word=$2 5352 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 5353 $as_echo_n "checking for $ac_word... " >&6; } 5354 if ${ac_cv_prog_RANLIB+:} false; then : 5489 5355 $as_echo_n "(cached) " >&6 5490 5356 else 5491 ac_script=s/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb/ 5492 for ac_i in 1 2 3 4 5 6 7; do 5493 ac_script="$ac_script$as_nl$ac_script" 5494 done 5495 echo "$ac_script" 2>/dev/null | sed 99q >conftest.sed 5496 { ac_script=; unset ac_script;} 5497 if test -z "$SED"; then 5498 ac_path_SED_found=false 5499 # Loop through the user's path and test for each of PROGNAME-LIST 5500 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR 5357 if test -n "$RANLIB"; then 5358 ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test. 5359 else 5360 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR 5501 5361 for as_dir in $PATH 5502 5362 do 5503 5363 IFS=$as_save_IFS 5504 5364 test -z "$as_dir" && as_dir=. 5505 for ac_prog in sed gsed; do5506 5365 for ac_exec_ext in '' $ac_executable_extensions; do 5507 ac_path_SED="$as_dir/$ac_prog$ac_exec_ext" 5508 as_fn_executable_p "$ac_path_SED" || continue 5509 # Check for GNU ac_path_SED and select it if it is found. 5510 # Check for GNU $ac_path_SED 5511 case `"$ac_path_SED" --version 2>&1` in 5512 *GNU*) 5513 ac_cv_path_SED="$ac_path_SED" ac_path_SED_found=:;; 5514 *) 5515 ac_count=0 5516 $as_echo_n 0123456789 >"conftest.in" 5517 while : 5518 do 5519 cat "conftest.in" "conftest.in" >"conftest.tmp" 5520 mv "conftest.tmp" "conftest.in" 5521 cp "conftest.in" "conftest.nl" 5522 $as_echo '' >> "conftest.nl" 5523 "$ac_path_SED" -f conftest.sed < "conftest.nl" >"conftest.out" 2>/dev/null || break 5524 diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break 5525 as_fn_arith $ac_count + 1 && ac_count=$as_val 5526 if test $ac_count -gt ${ac_path_SED_max-0}; then 5527 # Best one so far, save it but keep looking for a better one 5528 ac_cv_path_SED="$ac_path_SED" 5529 ac_path_SED_max=$ac_count 5530 fi 5531 # 10*(2^10) chars as input seems more than enough 5532 test $ac_count -gt 10 && break 5533 done 5534 rm -f conftest.in conftest.tmp conftest.nl conftest.out;; 5535 esac 5536 5537 $ac_path_SED_found && break 3 5538 done 5539 done 5366 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then 5367 ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib" 5368 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 5369 break 2 5370 fi 5371 done 5540 5372 done 5541 5373 IFS=$as_save_IFS 5542 if test -z "$ac_cv_path_SED"; then 5543 as_fn_error $? "no acceptable sed could be found in \$PATH" "$LINENO" 5 5374 5375 fi 5376 fi 5377 RANLIB=$ac_cv_prog_RANLIB 5378 if test -n "$RANLIB"; then 5379 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $RANLIB" >&5 5380 $as_echo "$RANLIB" >&6; } 5381 else 5382 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 5383 $as_echo "no" >&6; } 5384 fi 5385 5386 5387 fi 5388 if test -z "$ac_cv_prog_RANLIB"; then 5389 ac_ct_RANLIB=$RANLIB 5390 # Extract the first word of "ranlib", so it can be a program name with args. 5391 set dummy ranlib; ac_word=$2 5392 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 5393 $as_echo_n "checking for $ac_word... " >&6; } 5394 if ${ac_cv_prog_ac_ct_RANLIB+:} false; then : 5395 $as_echo_n "(cached) " >&6 5396 else 5397 if test -n "$ac_ct_RANLIB"; then 5398 ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test. 5399 else 5400 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR 5401 for as_dir in $PATH 5402 do 5403 IFS=$as_save_IFS 5404 test -z "$as_dir" && as_dir=. 5405 for ac_exec_ext in '' $ac_executable_extensions; do 5406 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then 5407 ac_cv_prog_ac_ct_RANLIB="ranlib" 5408 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 5409 break 2 5544 5410 fi 5545 else 5546 ac_cv_path_SED=$SED 5547 fi 5548 5549 fi 5550 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_SED" >&5 5551 $as_echo "$ac_cv_path_SED" >&6; } 5552 SED="$ac_cv_path_SED" 5553 rm -f conftest.sed 5554 5555 test -z "$SED" && SED=sed 5556 Xsed="$SED -e 1s/^X//" 5557 5558 5559 5560 5561 5562 5563 5564 5565 5411 done 5412 done 5413 IFS=$as_save_IFS 5414 5415 fi 5416 fi 5417 ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB 5418 if test -n "$ac_ct_RANLIB"; then 5419 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_RANLIB" >&5 5420 $as_echo "$ac_ct_RANLIB" >&6; } 5421 else 5422 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 5423 $as_echo "no" >&6; } 5424 fi 5425 5426 if test "x$ac_ct_RANLIB" = x; then 5427 RANLIB=":" 5428 else 5429 case $cross_compiling:$ac_tool_warned in 5430 yes:) 5431 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 5432 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} 5433 ac_tool_warned=yes ;; 5434 esac 5435 RANLIB=$ac_ct_RANLIB 5436 fi 5437 else 5438 RANLIB="$ac_cv_prog_RANLIB" 5439 fi 5440 5441 5442 # Checks for libraries. 5443 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for Fibre::yield in -lfibre" >&5 5444 $as_echo_n "checking for Fibre::yield in -lfibre... " >&6; } 5445 if ${ac_cv_lib_fibre_Fibre__yield+:} false; then : 5446 $as_echo_n "(cached) " >&6 5447 else 5448 ac_check_lib_save_LIBS=$LIBS 5449 LIBS="-lfibre $LIBS" 5450 cat confdefs.h - <<_ACEOF >conftest.$ac_ext 5451 /* end confdefs.h. */ 5452 5453 /* Override any GCC internal prototype to avoid an error. 5454 Use char because int might match the return type of a GCC 5455 builtin and then its argument prototype would still apply. */ 5456 #ifdef __cplusplus 5457 extern "C" 5458 #endif 5459 char Fibre::yield (); 5460 int 5461 main () 5462 { 5463 return Fibre::yield (); 5464 ; 5465 return 0; 5466 } 5467 _ACEOF 5468 if ac_fn_c_try_link "$LINENO"; then : 5469 ac_cv_lib_fibre_Fibre__yield=yes 5470 else 5471 ac_cv_lib_fibre_Fibre__yield=no 5472 fi 5473 rm -f core conftest.err conftest.$ac_objext \ 5474 conftest$ac_exeext conftest.$ac_ext 5475 LIBS=$ac_check_lib_save_LIBS 5476 fi 5477 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_fibre_Fibre__yield" >&5 5478 $as_echo "$ac_cv_lib_fibre_Fibre__yield" >&6; } 5479 if test "x$ac_cv_lib_fibre_Fibre__yield" = xyes; then : 5480 HAVE_LIBFIBRE=1 5481 else 5482 HAVE_LIBFIBRE=0 5483 fi 5484 5485 if test "$HAVE_LIBFIBRE" -eq 1; then 5486 WITH_LIBFIBRE_TRUE= 5487 WITH_LIBFIBRE_FALSE='#' 5488 else 5489 WITH_LIBFIBRE_TRUE='#' 5490 WITH_LIBFIBRE_FALSE= 5491 fi 5492 5493 5494 # Checks for header files. 5495 ac_ext=c 5496 ac_cpp='$CPP $CPPFLAGS' 5497 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' 5498 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' 5499 ac_compiler_gnu=$ac_cv_c_compiler_gnu 5500 { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&5 5501 $as_echo_n "checking how to run the C preprocessor... " >&6; } 5502 # On Suns, sometimes $CPP names a directory. 5503 if test -n "$CPP" && test -d "$CPP"; then 5504 CPP= 5505 fi 5506 if test -z "$CPP"; then 5507 if ${ac_cv_prog_CPP+:} false; then : 5508 $as_echo_n "(cached) " >&6 5509 else 5510 # Double quotes because CPP needs to be expanded 5511 for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp" 5512 do 5513 ac_preproc_ok=false 5514 for ac_c_preproc_warn_flag in '' yes 5515 do 5516 # Use a header file that comes with gcc, so configuring glibc 5517 # with a fresh cross-compiler works. 5518 # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since 5519 # <limits.h> exists even on freestanding compilers. 5520 # On the NeXT, cc -E runs the code through the compiler's parser, 5521 # not just through cpp. "Syntax error" is here to catch this case. 5522 cat confdefs.h - <<_ACEOF >conftest.$ac_ext 5523 /* end confdefs.h. */ 5524 #ifdef __STDC__ 5525 # include <limits.h> 5526 #else 5527 # include <assert.h> 5528 #endif 5529 Syntax error 5530 _ACEOF 5531 if ac_fn_c_try_cpp "$LINENO"; then : 5532 5533 else 5534 # Broken: fails on valid input. 5535 continue 5536 fi 5537 rm -f conftest.err conftest.i conftest.$ac_ext 5538 5539 # OK, works on sane cases. Now check whether nonexistent headers 5540 # can be detected and how. 5541 cat confdefs.h - <<_ACEOF >conftest.$ac_ext 5542 /* end confdefs.h. */ 5543 #include <ac_nonexistent.h> 5544 _ACEOF 5545 if ac_fn_c_try_cpp "$LINENO"; then : 5546 # Broken: success on invalid input. 5547 continue 5548 else 5549 # Passes both tests. 5550 ac_preproc_ok=: 5551 break 5552 fi 5553 rm -f conftest.err conftest.i conftest.$ac_ext 5554 5555 done 5556 # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. 5557 rm -f conftest.i conftest.err conftest.$ac_ext 5558 if $ac_preproc_ok; then : 5559 break 5560 fi 5561 5562 done 5563 ac_cv_prog_CPP=$CPP 5564 5565 fi 5566 CPP=$ac_cv_prog_CPP 5567 else 5568 ac_cv_prog_CPP=$CPP 5569 fi 5570 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CPP" >&5 5571 $as_echo "$CPP" >&6; } 5572 ac_preproc_ok=false 5573 for ac_c_preproc_warn_flag in '' yes 5574 do 5575 # Use a header file that comes with gcc, so configuring glibc 5576 # with a fresh cross-compiler works. 5577 # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since 5578 # <limits.h> exists even on freestanding compilers. 5579 # On the NeXT, cc -E runs the code through the compiler's parser, 5580 # not just through cpp. "Syntax error" is here to catch this case. 5581 cat confdefs.h - <<_ACEOF >conftest.$ac_ext 5582 /* end confdefs.h. */ 5583 #ifdef __STDC__ 5584 # include <limits.h> 5585 #else 5586 # include <assert.h> 5587 #endif 5588 Syntax error 5589 _ACEOF 5590 if ac_fn_c_try_cpp "$LINENO"; then : 5591 5592 else 5593 # Broken: fails on valid input. 5594 continue 5595 fi 5596 rm -f conftest.err conftest.i conftest.$ac_ext 5597 5598 # OK, works on sane cases. Now check whether nonexistent headers 5599 # can be detected and how. 5600 cat confdefs.h - <<_ACEOF >conftest.$ac_ext 5601 /* end confdefs.h. */ 5602 #include <ac_nonexistent.h> 5603 _ACEOF 5604 if ac_fn_c_try_cpp "$LINENO"; then : 5605 # Broken: success on invalid input. 5606 continue 5607 else 5608 # Passes both tests. 5609 ac_preproc_ok=: 5610 break 5611 fi 5612 rm -f conftest.err conftest.i conftest.$ac_ext 5613 5614 done 5615 # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. 5616 rm -f conftest.i conftest.err conftest.$ac_ext 5617 if $ac_preproc_ok; then : 5618 5619 else 5620 { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 5621 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} 5622 as_fn_error $? "C preprocessor \"$CPP\" fails sanity check 5623 See \`config.log' for more details" "$LINENO" 5; } 5624 fi 5625 5626 ac_ext=c 5627 ac_cpp='$CPP $CPPFLAGS' 5628 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' 5629 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' 5630 ac_compiler_gnu=$ac_cv_c_compiler_gnu 5566 5631 5567 5632 … … 5696 5761 5697 5762 5698 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for fgrep" >&55699 $as_echo_n "checking for fgrep... " >&6; }5700 if ${ac_cv_path_FGREP+:} false; then :5701 $as_echo_n "(cached) " >&65702 else5703 if echo 'ab*c' | $GREP -F 'ab*c' >/dev/null 2>&15704 then ac_cv_path_FGREP="$GREP -F"5705 else5706 if test -z "$FGREP"; then5707 ac_path_FGREP_found=false5708 # Loop through the user's path and test for each of PROGNAME-LIST5709 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR5710 for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin5711 do5712 IFS=$as_save_IFS5713 test -z "$as_dir" && as_dir=.5714 for ac_prog in fgrep; do5715 for ac_exec_ext in '' $ac_executable_extensions; do5716 ac_path_FGREP="$as_dir/$ac_prog$ac_exec_ext"5717 as_fn_executable_p "$ac_path_FGREP" || continue5718 # Check for GNU ac_path_FGREP and select it if it is found.5719 # Check for GNU $ac_path_FGREP5720 case `"$ac_path_FGREP" --version 2>&1` in5721 *GNU*)5722 ac_cv_path_FGREP="$ac_path_FGREP" ac_path_FGREP_found=:;;5723 *)5724 ac_count=05725 $as_echo_n 0123456789 >"conftest.in"5726 while :5727 do5728 cat "conftest.in" "conftest.in" >"conftest.tmp"5729 mv "conftest.tmp" "conftest.in"5730 cp "conftest.in" "conftest.nl"5731 $as_echo 'FGREP' >> "conftest.nl"5732 "$ac_path_FGREP" FGREP < "conftest.nl" >"conftest.out" 2>/dev/null || break5733 diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break5734 as_fn_arith $ac_count + 1 && ac_count=$as_val5735 if test $ac_count -gt ${ac_path_FGREP_max-0}; then5736 # Best one so far, save it but keep looking for a better one5737 ac_cv_path_FGREP="$ac_path_FGREP"5738 ac_path_FGREP_max=$ac_count5739 fi5740 # 10*(2^10) chars as input seems more than enough5741 test $ac_count -gt 10 && break5742 done5743 rm -f conftest.in conftest.tmp conftest.nl conftest.out;;5744 esac5745 5746 $ac_path_FGREP_found && break 35747 done5748 done5749 done5750 IFS=$as_save_IFS5751 if test -z "$ac_cv_path_FGREP"; then5752 as_fn_error $? "no acceptable fgrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 55753 fi5754 else5755 ac_cv_path_FGREP=$FGREP5756 fi5757 5758 fi5759 fi5760 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_FGREP" >&55761 $as_echo "$ac_cv_path_FGREP" >&6; }5762 FGREP="$ac_cv_path_FGREP"5763 5764 5765 test -z "$GREP" && GREP=grep5766 5767 5768 5769 5770 5771 5772 5773 5774 5775 5776 5777 5778 5779 5780 5781 5782 5783 5784 5785 # Check whether --with-gnu-ld was given.5786 if test "${with_gnu_ld+set}" = set; then :5787 withval=$with_gnu_ld; test no = "$withval" || with_gnu_ld=yes5788 else5789 with_gnu_ld=no5790 fi5791 5792 ac_prog=ld5793 if test yes = "$GCC"; then5794 # Check if gcc -print-prog-name=ld gives a path.5795 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld used by $CC" >&55796 $as_echo_n "checking for ld used by $CC... " >&6; }5797 case $host in5798 *-*-mingw*)5799 # gcc leaves a trailing carriage return, which upsets mingw5800 ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;5801 *)5802 ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;5803 esac5804 case $ac_prog in5805 # Accept absolute paths.5806 [\\/]* | ?:[\\/]*)5807 re_direlt='/[^/][^/]*/\.\./'5808 # Canonicalize the pathname of ld5809 ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'`5810 while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do5811 ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"`5812 done5813 test -z "$LD" && LD=$ac_prog5814 ;;5815 "")5816 # If it fails, then pretend we aren't using GCC.5817 ac_prog=ld5818 ;;5819 *)5820 # If it is relative, then search for the first ld in PATH.5821 with_gnu_ld=unknown5822 ;;5823 esac5824 elif test yes = "$with_gnu_ld"; then5825 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&55826 $as_echo_n "checking for GNU ld... " >&6; }5827 else5828 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&55829 $as_echo_n "checking for non-GNU ld... " >&6; }5830 fi5831 if ${lt_cv_path_LD+:} false; then :5832 $as_echo_n "(cached) " >&65833 else5834 if test -z "$LD"; then5835 lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR5836 for ac_dir in $PATH; do5837 IFS=$lt_save_ifs5838 test -z "$ac_dir" && ac_dir=.5839 if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then5840 lt_cv_path_LD=$ac_dir/$ac_prog5841 # Check to see if the program is GNU ld. I'd rather use --version,5842 # but apparently some variants of GNU ld only accept -v.5843 # Break only if it was the GNU/non-GNU ld that we prefer.5844 case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in5845 *GNU* | *'with BFD'*)5846 test no != "$with_gnu_ld" && break5847 ;;5848 *)5849 test yes != "$with_gnu_ld" && break5850 ;;5851 esac5852 fi5853 done5854 IFS=$lt_save_ifs5855 else5856 lt_cv_path_LD=$LD # Let the user override the test with a path.5857 fi5858 fi5859 5860 LD=$lt_cv_path_LD5861 if test -n "$LD"; then5862 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LD" >&55863 $as_echo "$LD" >&6; }5864 else5865 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&55866 $as_echo "no" >&6; }5867 fi5868 test -z "$LD" && as_fn_error $? "no acceptable ld found in \$PATH" "$LINENO" 55869 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&55870 $as_echo_n "checking if the linker ($LD) is GNU ld... " >&6; }5871 if ${lt_cv_prog_gnu_ld+:} false; then :5872 $as_echo_n "(cached) " >&65873 else5874 # I'd rather use --version here, but apparently some GNU lds only accept -v.5875 case `$LD -v 2>&1 </dev/null` in5876 *GNU* | *'with BFD'*)5877 lt_cv_prog_gnu_ld=yes5878 ;;5879 *)5880 lt_cv_prog_gnu_ld=no5881 ;;5882 esac5883 fi5884 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_gnu_ld" >&55885 $as_echo "$lt_cv_prog_gnu_ld" >&6; }5886 with_gnu_ld=$lt_cv_prog_gnu_ld5887 5888 5889 5890 5891 5892 5893 5894 5895 5896 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for BSD- or MS-compatible name lister (nm)" >&55897 $as_echo_n "checking for BSD- or MS-compatible name lister (nm)... " >&6; }5898 if ${lt_cv_path_NM+:} false; then :5899 $as_echo_n "(cached) " >&65900 else5901 if test -n "$NM"; then5902 # Let the user override the test.5903 lt_cv_path_NM=$NM5904 else5905 lt_nm_to_check=${ac_tool_prefix}nm5906 if test -n "$ac_tool_prefix" && test "$build" = "$host"; then5907 lt_nm_to_check="$lt_nm_to_check nm"5908 fi5909 for lt_tmp_nm in $lt_nm_to_check; do5910 lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR5911 for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do5912 IFS=$lt_save_ifs5913 test -z "$ac_dir" && ac_dir=.5914 tmp_nm=$ac_dir/$lt_tmp_nm5915 if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext"; then5916 # Check to see if the nm accepts a BSD-compat flag.5917 # Adding the 'sed 1q' prevents false positives on HP-UX, which says:5918 # nm: unknown option "B" ignored5919 # Tru64's nm complains that /dev/null is an invalid object file5920 # MSYS converts /dev/null to NUL, MinGW nm treats NUL as empty5921 case $build_os in5922 mingw*) lt_bad_file=conftest.nm/nofile ;;5923 *) lt_bad_file=/dev/null ;;5924 esac5925 case `"$tmp_nm" -B $lt_bad_file 2>&1 | sed '1q'` in5926 *$lt_bad_file* | *'Invalid file or object type'*)5927 lt_cv_path_NM="$tmp_nm -B"5928 break 25929 ;;5930 *)5931 case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in5932 */dev/null*)5933 lt_cv_path_NM="$tmp_nm -p"5934 break 25935 ;;5936 *)5937 lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but5938 continue # so that we can try to find one that supports BSD flags5939 ;;5940 esac5941 ;;5942 esac5943 fi5944 done5945 IFS=$lt_save_ifs5946 done5947 : ${lt_cv_path_NM=no}5948 fi5949 fi5950 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_NM" >&55951 $as_echo "$lt_cv_path_NM" >&6; }5952 if test no != "$lt_cv_path_NM"; then5953 NM=$lt_cv_path_NM5954 else5955 # Didn't find any BSD compatible name lister, look for dumpbin.5956 if test -n "$DUMPBIN"; then :5957 # Let the user override the test.5958 else5959 if test -n "$ac_tool_prefix"; then5960 for ac_prog in dumpbin "link -dump"5961 do5962 # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.5963 set dummy $ac_tool_prefix$ac_prog; ac_word=$25964 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&55965 $as_echo_n "checking for $ac_word... " >&6; }5966 if ${ac_cv_prog_DUMPBIN+:} false; then :5967 $as_echo_n "(cached) " >&65968 else5969 if test -n "$DUMPBIN"; then5970 ac_cv_prog_DUMPBIN="$DUMPBIN" # Let the user override the test.5971 else5972 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR5973 for as_dir in $PATH5974 do5975 IFS=$as_save_IFS5976 test -z "$as_dir" && as_dir=.5977 for ac_exec_ext in '' $ac_executable_extensions; do5978 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then5979 ac_cv_prog_DUMPBIN="$ac_tool_prefix$ac_prog"5980 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&55981 break 25982 fi5983 done5984 done5985 IFS=$as_save_IFS5986 5987 fi5988 fi5989 DUMPBIN=$ac_cv_prog_DUMPBIN5990 if test -n "$DUMPBIN"; then5991 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DUMPBIN" >&55992 $as_echo "$DUMPBIN" >&6; }5993 else5994 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&55995 $as_echo "no" >&6; }5996 fi5997 5998 5999 test -n "$DUMPBIN" && break6000 done6001 fi6002 if test -z "$DUMPBIN"; then6003 ac_ct_DUMPBIN=$DUMPBIN6004 for ac_prog in dumpbin "link -dump"6005 do6006 # Extract the first word of "$ac_prog", so it can be a program name with args.6007 set dummy $ac_prog; ac_word=$26008 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&56009 $as_echo_n "checking for $ac_word... " >&6; }6010 if ${ac_cv_prog_ac_ct_DUMPBIN+:} false; then :6011 $as_echo_n "(cached) " >&66012 else6013 if test -n "$ac_ct_DUMPBIN"; then6014 ac_cv_prog_ac_ct_DUMPBIN="$ac_ct_DUMPBIN" # Let the user override the test.6015 else6016 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR6017 for as_dir in $PATH6018 do6019 IFS=$as_save_IFS6020 test -z "$as_dir" && as_dir=.6021 for ac_exec_ext in '' $ac_executable_extensions; do6022 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then6023 ac_cv_prog_ac_ct_DUMPBIN="$ac_prog"6024 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&56025 break 26026 fi6027 done6028 done6029 IFS=$as_save_IFS6030 6031 fi6032 fi6033 ac_ct_DUMPBIN=$ac_cv_prog_ac_ct_DUMPBIN6034 if test -n "$ac_ct_DUMPBIN"; then6035 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DUMPBIN" >&56036 $as_echo "$ac_ct_DUMPBIN" >&6; }6037 else6038 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&56039 $as_echo "no" >&6; }6040 fi6041 6042 6043 test -n "$ac_ct_DUMPBIN" && break6044 done6045 6046 if test "x$ac_ct_DUMPBIN" = x; then6047 DUMPBIN=":"6048 else6049 case $cross_compiling:$ac_tool_warned in6050 yes:)6051 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&56052 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}6053 ac_tool_warned=yes ;;6054 esac6055 DUMPBIN=$ac_ct_DUMPBIN6056 fi6057 fi6058 6059 case `$DUMPBIN -symbols -headers /dev/null 2>&1 | sed '1q'` in6060 *COFF*)6061 DUMPBIN="$DUMPBIN -symbols -headers"6062 ;;6063 *)6064 DUMPBIN=:6065 ;;6066 esac6067 fi6068 6069 if test : != "$DUMPBIN"; then6070 NM=$DUMPBIN6071 fi6072 fi6073 test -z "$NM" && NM=nm6074 6075 6076 6077 6078 6079 6080 { $as_echo "$as_me:${as_lineno-$LINENO}: checking the name lister ($NM) interface" >&56081 $as_echo_n "checking the name lister ($NM) interface... " >&6; }6082 if ${lt_cv_nm_interface+:} false; then :6083 $as_echo_n "(cached) " >&66084 else6085 lt_cv_nm_interface="BSD nm"6086 echo "int some_variable = 0;" > conftest.$ac_ext6087 (eval echo "\"\$as_me:$LINENO: $ac_compile\"" >&5)6088 (eval "$ac_compile" 2>conftest.err)6089 cat conftest.err >&56090 (eval echo "\"\$as_me:$LINENO: $NM \\\"conftest.$ac_objext\\\"\"" >&5)6091 (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out)6092 cat conftest.err >&56093 (eval echo "\"\$as_me:$LINENO: output\"" >&5)6094 cat conftest.out >&56095 if $GREP 'External.*some_variable' conftest.out > /dev/null; then6096 lt_cv_nm_interface="MS dumpbin"6097 fi6098 rm -f conftest*6099 fi6100 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_nm_interface" >&56101 $as_echo "$lt_cv_nm_interface" >&6; }6102 6103 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ln -s works" >&56104 $as_echo_n "checking whether ln -s works... " >&6; }6105 LN_S=$as_ln_s6106 if test "$LN_S" = "ln -s"; then6107 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&56108 $as_echo "yes" >&6; }6109 else6110 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no, using $LN_S" >&56111 $as_echo "no, using $LN_S" >&6; }6112 fi6113 6114 # find the maximum length of command line arguments6115 { $as_echo "$as_me:${as_lineno-$LINENO}: checking the maximum length of command line arguments" >&56116 $as_echo_n "checking the maximum length of command line arguments... " >&6; }6117 if ${lt_cv_sys_max_cmd_len+:} false; then :6118 $as_echo_n "(cached) " >&66119 else6120 i=06121 teststring=ABCD6122 6123 case $build_os in6124 msdosdjgpp*)6125 # On DJGPP, this test can blow up pretty badly due to problems in libc6126 # (any single argument exceeding 2000 bytes causes a buffer overrun6127 # during glob expansion). Even if it were fixed, the result of this6128 # check would be larger than it should be.6129 lt_cv_sys_max_cmd_len=12288; # 12K is about right6130 ;;6131 6132 gnu*)6133 # Under GNU Hurd, this test is not required because there is6134 # no limit to the length of command line arguments.6135 # Libtool will interpret -1 as no limit whatsoever6136 lt_cv_sys_max_cmd_len=-1;6137 ;;6138 6139 cygwin* | mingw* | cegcc*)6140 # On Win9x/ME, this test blows up -- it succeeds, but takes6141 # about 5 minutes as the teststring grows exponentially.6142 # Worse, since 9x/ME are not pre-emptively multitasking,6143 # you end up with a "frozen" computer, even though with patience6144 # the test eventually succeeds (with a max line length of 256k).6145 # Instead, let's just punt: use the minimum linelength reported by6146 # all of the supported platforms: 8192 (on NT/2K/XP).6147 lt_cv_sys_max_cmd_len=8192;6148 ;;6149 6150 mint*)6151 # On MiNT this can take a long time and run out of memory.6152 lt_cv_sys_max_cmd_len=8192;6153 ;;6154 6155 amigaos*)6156 # On AmigaOS with pdksh, this test takes hours, literally.6157 # So we just punt and use a minimum line length of 8192.6158 lt_cv_sys_max_cmd_len=8192;6159 ;;6160 6161 bitrig* | darwin* | dragonfly* | freebsd* | netbsd* | openbsd*)6162 # This has been around since 386BSD, at least. Likely further.6163 if test -x /sbin/sysctl; then6164 lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`6165 elif test -x /usr/sbin/sysctl; then6166 lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax`6167 else6168 lt_cv_sys_max_cmd_len=65536 # usable default for all BSDs6169 fi6170 # And add a safety zone6171 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`6172 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`6173 ;;6174 6175 interix*)6176 # We know the value 262144 and hardcode it with a safety zone (like BSD)6177 lt_cv_sys_max_cmd_len=1966086178 ;;6179 6180 os2*)6181 # The test takes a long time on OS/2.6182 lt_cv_sys_max_cmd_len=81926183 ;;6184 6185 osf*)6186 # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure6187 # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not6188 # nice to cause kernel panics so lets avoid the loop below.6189 # First set a reasonable default.6190 lt_cv_sys_max_cmd_len=163846191 #6192 if test -x /sbin/sysconfig; then6193 case `/sbin/sysconfig -q proc exec_disable_arg_limit` in6194 *1*) lt_cv_sys_max_cmd_len=-1 ;;6195 esac6196 fi6197 ;;6198 sco3.2v5*)6199 lt_cv_sys_max_cmd_len=1024006200 ;;6201 sysv5* | sco5v6* | sysv4.2uw2*)6202 kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null`6203 if test -n "$kargmax"; then6204 lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[ ]//'`6205 else6206 lt_cv_sys_max_cmd_len=327686207 fi6208 ;;6209 *)6210 lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null`6211 if test -n "$lt_cv_sys_max_cmd_len" && \6212 test undefined != "$lt_cv_sys_max_cmd_len"; then6213 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`6214 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`6215 else6216 # Make teststring a little bigger before we do anything with it.6217 # a 1K string should be a reasonable start.6218 for i in 1 2 3 4 5 6 7 8; do6219 teststring=$teststring$teststring6220 done6221 SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}}6222 # If test is not a shell built-in, we'll probably end up computing a6223 # maximum length that is only half of the actual maximum length, but6224 # we can't tell.6225 while { test X`env echo "$teststring$teststring" 2>/dev/null` \6226 = "X$teststring$teststring"; } >/dev/null 2>&1 &&6227 test 17 != "$i" # 1/2 MB should be enough6228 do6229 i=`expr $i + 1`6230 teststring=$teststring$teststring6231 done6232 # Only check the string length outside the loop.6233 lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1`6234 teststring=6235 # Add a significant safety factor because C++ compilers can tack on6236 # massive amounts of additional arguments before passing them to the6237 # linker. It appears as though 1/2 is a usable value.6238 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2`6239 fi6240 ;;6241 esac6242 6243 fi6244 6245 if test -n "$lt_cv_sys_max_cmd_len"; then6246 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sys_max_cmd_len" >&56247 $as_echo "$lt_cv_sys_max_cmd_len" >&6; }6248 else6249 { $as_echo "$as_me:${as_lineno-$LINENO}: result: none" >&56250 $as_echo "none" >&6; }6251 fi6252 max_cmd_len=$lt_cv_sys_max_cmd_len6253 6254 6255 6256 6257 6258 6259 : ${CP="cp -f"}6260 : ${MV="mv -f"}6261 : ${RM="rm -f"}6262 6263 if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then6264 lt_unset=unset6265 else6266 lt_unset=false6267 fi6268 6269 6270 6271 6272 6273 # test EBCDIC or ASCII6274 case `echo X|tr X '\101'` in6275 A) # ASCII based system6276 # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr6277 lt_SP2NL='tr \040 \012'6278 lt_NL2SP='tr \015\012 \040\040'6279 ;;6280 *) # EBCDIC based system6281 lt_SP2NL='tr \100 \n'6282 lt_NL2SP='tr \r\n \100\100'6283 ;;6284 esac6285 6286 6287 6288 6289 6290 6291 6292 6293 6294 { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to $host format" >&56295 $as_echo_n "checking how to convert $build file names to $host format... " >&6; }6296 if ${lt_cv_to_host_file_cmd+:} false; then :6297 $as_echo_n "(cached) " >&66298 else6299 case $host in6300 *-*-mingw* )6301 case $build in6302 *-*-mingw* ) # actually msys6303 lt_cv_to_host_file_cmd=func_convert_file_msys_to_w326304 ;;6305 *-*-cygwin* )6306 lt_cv_to_host_file_cmd=func_convert_file_cygwin_to_w326307 ;;6308 * ) # otherwise, assume *nix6309 lt_cv_to_host_file_cmd=func_convert_file_nix_to_w326310 ;;6311 esac6312 ;;6313 *-*-cygwin* )6314 case $build in6315 *-*-mingw* ) # actually msys6316 lt_cv_to_host_file_cmd=func_convert_file_msys_to_cygwin6317 ;;6318 *-*-cygwin* )6319 lt_cv_to_host_file_cmd=func_convert_file_noop6320 ;;6321 * ) # otherwise, assume *nix6322 lt_cv_to_host_file_cmd=func_convert_file_nix_to_cygwin6323 ;;6324 esac6325 ;;6326 * ) # unhandled hosts (and "normal" native builds)6327 lt_cv_to_host_file_cmd=func_convert_file_noop6328 ;;6329 esac6330 6331 fi6332 6333 to_host_file_cmd=$lt_cv_to_host_file_cmd6334 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_to_host_file_cmd" >&56335 $as_echo "$lt_cv_to_host_file_cmd" >&6; }6336 6337 6338 6339 6340 6341 { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to toolchain format" >&56342 $as_echo_n "checking how to convert $build file names to toolchain format... " >&6; }6343 if ${lt_cv_to_tool_file_cmd+:} false; then :6344 $as_echo_n "(cached) " >&66345 else6346 #assume ordinary cross tools, or native build.6347 lt_cv_to_tool_file_cmd=func_convert_file_noop6348 case $host in6349 *-*-mingw* )6350 case $build in6351 *-*-mingw* ) # actually msys6352 lt_cv_to_tool_file_cmd=func_convert_file_msys_to_w326353 ;;6354 esac6355 ;;6356 esac6357 6358 fi6359 6360 to_tool_file_cmd=$lt_cv_to_tool_file_cmd6361 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_to_tool_file_cmd" >&56362 $as_echo "$lt_cv_to_tool_file_cmd" >&6; }6363 6364 6365 6366 6367 6368 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $LD option to reload object files" >&56369 $as_echo_n "checking for $LD option to reload object files... " >&6; }6370 if ${lt_cv_ld_reload_flag+:} false; then :6371 $as_echo_n "(cached) " >&66372 else6373 lt_cv_ld_reload_flag='-r'6374 fi6375 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_reload_flag" >&56376 $as_echo "$lt_cv_ld_reload_flag" >&6; }6377 reload_flag=$lt_cv_ld_reload_flag6378 case $reload_flag in6379 "" | " "*) ;;6380 *) reload_flag=" $reload_flag" ;;6381 esac6382 reload_cmds='$LD$reload_flag -o $output$reload_objs'6383 case $host_os in6384 cygwin* | mingw* | pw32* | cegcc*)6385 if test yes != "$GCC"; then6386 reload_cmds=false6387 fi6388 ;;6389 darwin*)6390 if test yes = "$GCC"; then6391 reload_cmds='$LTCC $LTCFLAGS -nostdlib $wl-r -o $output$reload_objs'6392 else6393 reload_cmds='$LD$reload_flag -o $output$reload_objs'6394 fi6395 ;;6396 esac6397 6398 6399 6400 6401 6402 6403 6404 6405 6406 if test -n "$ac_tool_prefix"; then6407 # Extract the first word of "${ac_tool_prefix}objdump", so it can be a program name with args.6408 set dummy ${ac_tool_prefix}objdump; ac_word=$26409 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&56410 $as_echo_n "checking for $ac_word... " >&6; }6411 if ${ac_cv_prog_OBJDUMP+:} false; then :6412 $as_echo_n "(cached) " >&66413 else6414 if test -n "$OBJDUMP"; then6415 ac_cv_prog_OBJDUMP="$OBJDUMP" # Let the user override the test.6416 else6417 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR6418 for as_dir in $PATH6419 do6420 IFS=$as_save_IFS6421 test -z "$as_dir" && as_dir=.6422 for ac_exec_ext in '' $ac_executable_extensions; do6423 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then6424 ac_cv_prog_OBJDUMP="${ac_tool_prefix}objdump"6425 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&56426 break 26427 fi6428 done6429 done6430 IFS=$as_save_IFS6431 6432 fi6433 fi6434 OBJDUMP=$ac_cv_prog_OBJDUMP6435 if test -n "$OBJDUMP"; then6436 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OBJDUMP" >&56437 $as_echo "$OBJDUMP" >&6; }6438 else6439 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&56440 $as_echo "no" >&6; }6441 fi6442 6443 6444 fi6445 if test -z "$ac_cv_prog_OBJDUMP"; then6446 ac_ct_OBJDUMP=$OBJDUMP6447 # Extract the first word of "objdump", so it can be a program name with args.6448 set dummy objdump; ac_word=$26449 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&56450 $as_echo_n "checking for $ac_word... " >&6; }6451 if ${ac_cv_prog_ac_ct_OBJDUMP+:} false; then :6452 $as_echo_n "(cached) " >&66453 else6454 if test -n "$ac_ct_OBJDUMP"; then6455 ac_cv_prog_ac_ct_OBJDUMP="$ac_ct_OBJDUMP" # Let the user override the test.6456 else6457 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR6458 for as_dir in $PATH6459 do6460 IFS=$as_save_IFS6461 test -z "$as_dir" && as_dir=.6462 for ac_exec_ext in '' $ac_executable_extensions; do6463 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then6464 ac_cv_prog_ac_ct_OBJDUMP="objdump"6465 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&56466 break 26467 fi6468 done6469 done6470 IFS=$as_save_IFS6471 6472 fi6473 fi6474 ac_ct_OBJDUMP=$ac_cv_prog_ac_ct_OBJDUMP6475 if test -n "$ac_ct_OBJDUMP"; then6476 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OBJDUMP" >&56477 $as_echo "$ac_ct_OBJDUMP" >&6; }6478 else6479 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&56480 $as_echo "no" >&6; }6481 fi6482 6483 if test "x$ac_ct_OBJDUMP" = x; then6484 OBJDUMP="false"6485 else6486 case $cross_compiling:$ac_tool_warned in6487 yes:)6488 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&56489 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}6490 ac_tool_warned=yes ;;6491 esac6492 OBJDUMP=$ac_ct_OBJDUMP6493 fi6494 else6495 OBJDUMP="$ac_cv_prog_OBJDUMP"6496 fi6497 6498 test -z "$OBJDUMP" && OBJDUMP=objdump6499 6500 6501 6502 6503 6504 6505 6506 6507 6508 { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to recognize dependent libraries" >&56509 $as_echo_n "checking how to recognize dependent libraries... " >&6; }6510 if ${lt_cv_deplibs_check_method+:} false; then :6511 $as_echo_n "(cached) " >&66512 else6513 lt_cv_file_magic_cmd='$MAGIC_CMD'6514 lt_cv_file_magic_test_file=6515 lt_cv_deplibs_check_method='unknown'6516 # Need to set the preceding variable on all platforms that support6517 # interlibrary dependencies.6518 # 'none' -- dependencies not supported.6519 # 'unknown' -- same as none, but documents that we really don't know.6520 # 'pass_all' -- all dependencies passed with no checks.6521 # 'test_compile' -- check by making test program.6522 # 'file_magic [[regex]]' -- check by looking for files in library path6523 # that responds to the $file_magic_cmd with a given extended regex.6524 # If you have 'file' or equivalent on your system and you're not sure6525 # whether 'pass_all' will *always* work, you probably want this one.6526 6527 case $host_os in6528 aix[4-9]*)6529 lt_cv_deplibs_check_method=pass_all6530 ;;6531 6532 beos*)6533 lt_cv_deplibs_check_method=pass_all6534 ;;6535 6536 bsdi[45]*)6537 lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib)'6538 lt_cv_file_magic_cmd='/usr/bin/file -L'6539 lt_cv_file_magic_test_file=/shlib/libc.so6540 ;;6541 6542 cygwin*)6543 # func_win32_libid is a shell function defined in ltmain.sh6544 lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'6545 lt_cv_file_magic_cmd='func_win32_libid'6546 ;;6547 6548 mingw* | pw32*)6549 # Base MSYS/MinGW do not provide the 'file' command needed by6550 # func_win32_libid shell function, so use a weaker test based on 'objdump',6551 # unless we find 'file', for example because we are cross-compiling.6552 if ( file / ) >/dev/null 2>&1; then6553 lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'6554 lt_cv_file_magic_cmd='func_win32_libid'6555 else6556 # Keep this pattern in sync with the one in func_win32_libid.6557 lt_cv_deplibs_check_method='file_magic file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)'6558 lt_cv_file_magic_cmd='$OBJDUMP -f'6559 fi6560 ;;6561 6562 cegcc*)6563 # use the weaker test based on 'objdump'. See mingw*.6564 lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?'6565 lt_cv_file_magic_cmd='$OBJDUMP -f'6566 ;;6567 6568 darwin* | rhapsody*)6569 lt_cv_deplibs_check_method=pass_all6570 ;;6571 6572 freebsd* | dragonfly*)6573 if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then6574 case $host_cpu in6575 i*86 )6576 # Not sure whether the presence of OpenBSD here was a mistake.6577 # Let's accept both of them until this is cleared up.6578 lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[3-9]86 (compact )?demand paged shared library'6579 lt_cv_file_magic_cmd=/usr/bin/file6580 lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`6581 ;;6582 esac6583 else6584 lt_cv_deplibs_check_method=pass_all6585 fi6586 ;;6587 6588 haiku*)6589 lt_cv_deplibs_check_method=pass_all6590 ;;6591 6592 hpux10.20* | hpux11*)6593 lt_cv_file_magic_cmd=/usr/bin/file6594 case $host_cpu in6595 ia64*)6596 lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF-[0-9][0-9]) shared object file - IA64'6597 lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so6598 ;;6599 hppa*64*)6600 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]'6601 lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl6602 ;;6603 *)6604 lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|PA-RISC[0-9]\.[0-9]) shared library'6605 lt_cv_file_magic_test_file=/usr/lib/libc.sl6606 ;;6607 esac6608 ;;6609 6610 interix[3-9]*)6611 # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here6612 lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so|\.a)$'6613 ;;6614 6615 irix5* | irix6* | nonstopux*)6616 case $LD in6617 *-32|*"-32 ") libmagic=32-bit;;6618 *-n32|*"-n32 ") libmagic=N32;;6619 *-64|*"-64 ") libmagic=64-bit;;6620 *) libmagic=never-match;;6621 esac6622 lt_cv_deplibs_check_method=pass_all6623 ;;6624 6625 # This must be glibc/ELF.6626 linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)6627 lt_cv_deplibs_check_method=pass_all6628 ;;6629 6630 netbsd* | netbsdelf*-gnu)6631 if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then6632 lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|_pic\.a)$'6633 else6634 lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so|_pic\.a)$'6635 fi6636 ;;6637 6638 newos6*)6639 lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (executable|dynamic lib)'6640 lt_cv_file_magic_cmd=/usr/bin/file6641 lt_cv_file_magic_test_file=/usr/lib/libnls.so6642 ;;6643 6644 *nto* | *qnx*)6645 lt_cv_deplibs_check_method=pass_all6646 ;;6647 6648 openbsd* | bitrig*)6649 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then6650 lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|\.so|_pic\.a)$'6651 else6652 lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|_pic\.a)$'6653 fi6654 ;;6655 6656 osf3* | osf4* | osf5*)6657 lt_cv_deplibs_check_method=pass_all6658 ;;6659 6660 rdos*)6661 lt_cv_deplibs_check_method=pass_all6662 ;;6663 6664 solaris*)6665 lt_cv_deplibs_check_method=pass_all6666 ;;6667 6668 sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)6669 lt_cv_deplibs_check_method=pass_all6670 ;;6671 6672 sysv4 | sysv4.3*)6673 case $host_vendor in6674 motorola)6675 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]'6676 lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`6677 ;;6678 ncr)6679 lt_cv_deplibs_check_method=pass_all6680 ;;6681 sequent)6682 lt_cv_file_magic_cmd='/bin/file'6683 lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )'6684 ;;6685 sni)6686 lt_cv_file_magic_cmd='/bin/file'6687 lt_cv_deplibs_check_method="file_magic ELF [0-9][0-9]*-bit [LM]SB dynamic lib"6688 lt_cv_file_magic_test_file=/lib/libc.so6689 ;;6690 siemens)6691 lt_cv_deplibs_check_method=pass_all6692 ;;6693 pc)6694 lt_cv_deplibs_check_method=pass_all6695 ;;6696 esac6697 ;;6698 6699 tpf*)6700 lt_cv_deplibs_check_method=pass_all6701 ;;6702 os2*)6703 lt_cv_deplibs_check_method=pass_all6704 ;;6705 esac6706 6707 fi6708 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_deplibs_check_method" >&56709 $as_echo "$lt_cv_deplibs_check_method" >&6; }6710 6711 file_magic_glob=6712 want_nocaseglob=no6713 if test "$build" = "$host"; then6714 case $host_os in6715 mingw* | pw32*)6716 if ( shopt | grep nocaseglob ) >/dev/null 2>&1; then6717 want_nocaseglob=yes6718 else6719 file_magic_glob=`echo aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ | $SED -e "s/\(..\)/s\/[\1]\/[\1]\/g;/g"`6720 fi6721 ;;6722 esac6723 fi6724 6725 file_magic_cmd=$lt_cv_file_magic_cmd6726 deplibs_check_method=$lt_cv_deplibs_check_method6727 test -z "$deplibs_check_method" && deplibs_check_method=unknown6728 6729 6730 6731 6732 6733 6734 6735 6736 6737 6738 6739 6740 6741 6742 6743 6744 6745 6746 6747 6748 6749 6750 if test -n "$ac_tool_prefix"; then6751 # Extract the first word of "${ac_tool_prefix}dlltool", so it can be a program name with args.6752 set dummy ${ac_tool_prefix}dlltool; ac_word=$26753 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&56754 $as_echo_n "checking for $ac_word... " >&6; }6755 if ${ac_cv_prog_DLLTOOL+:} false; then :6756 $as_echo_n "(cached) " >&66757 else6758 if test -n "$DLLTOOL"; then6759 ac_cv_prog_DLLTOOL="$DLLTOOL" # Let the user override the test.6760 else6761 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR6762 for as_dir in $PATH6763 do6764 IFS=$as_save_IFS6765 test -z "$as_dir" && as_dir=.6766 for ac_exec_ext in '' $ac_executable_extensions; do6767 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then6768 ac_cv_prog_DLLTOOL="${ac_tool_prefix}dlltool"6769 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&56770 break 26771 fi6772 done6773 done6774 IFS=$as_save_IFS6775 6776 fi6777 fi6778 DLLTOOL=$ac_cv_prog_DLLTOOL6779 if test -n "$DLLTOOL"; then6780 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DLLTOOL" >&56781 $as_echo "$DLLTOOL" >&6; }6782 else6783 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&56784 $as_echo "no" >&6; }6785 fi6786 6787 6788 fi6789 if test -z "$ac_cv_prog_DLLTOOL"; then6790 ac_ct_DLLTOOL=$DLLTOOL6791 # Extract the first word of "dlltool", so it can be a program name with args.6792 set dummy dlltool; ac_word=$26793 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&56794 $as_echo_n "checking for $ac_word... " >&6; }6795 if ${ac_cv_prog_ac_ct_DLLTOOL+:} false; then :6796 $as_echo_n "(cached) " >&66797 else6798 if test -n "$ac_ct_DLLTOOL"; then6799 ac_cv_prog_ac_ct_DLLTOOL="$ac_ct_DLLTOOL" # Let the user override the test.6800 else6801 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR6802 for as_dir in $PATH6803 do6804 IFS=$as_save_IFS6805 test -z "$as_dir" && as_dir=.6806 for ac_exec_ext in '' $ac_executable_extensions; do6807 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then6808 ac_cv_prog_ac_ct_DLLTOOL="dlltool"6809 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&56810 break 26811 fi6812 done6813 done6814 IFS=$as_save_IFS6815 6816 fi6817 fi6818 ac_ct_DLLTOOL=$ac_cv_prog_ac_ct_DLLTOOL6819 if test -n "$ac_ct_DLLTOOL"; then6820 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DLLTOOL" >&56821 $as_echo "$ac_ct_DLLTOOL" >&6; }6822 else6823 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&56824 $as_echo "no" >&6; }6825 fi6826 6827 if test "x$ac_ct_DLLTOOL" = x; then6828 DLLTOOL="false"6829 else6830 case $cross_compiling:$ac_tool_warned in6831 yes:)6832 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&56833 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}6834 ac_tool_warned=yes ;;6835 esac6836 DLLTOOL=$ac_ct_DLLTOOL6837 fi6838 else6839 DLLTOOL="$ac_cv_prog_DLLTOOL"6840 fi6841 6842 test -z "$DLLTOOL" && DLLTOOL=dlltool6843 6844 6845 6846 6847 6848 6849 6850 6851 6852 6853 { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to associate runtime and link libraries" >&56854 $as_echo_n "checking how to associate runtime and link libraries... " >&6; }6855 if ${lt_cv_sharedlib_from_linklib_cmd+:} false; then :6856 $as_echo_n "(cached) " >&66857 else6858 lt_cv_sharedlib_from_linklib_cmd='unknown'6859 6860 case $host_os in6861 cygwin* | mingw* | pw32* | cegcc*)6862 # two different shell functions defined in ltmain.sh;6863 # decide which one to use based on capabilities of $DLLTOOL6864 case `$DLLTOOL --help 2>&1` in6865 *--identify-strict*)6866 lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib6867 ;;6868 *)6869 lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib_fallback6870 ;;6871 esac6872 ;;6873 *)6874 # fallback: assume linklib IS sharedlib6875 lt_cv_sharedlib_from_linklib_cmd=$ECHO6876 ;;6877 esac6878 6879 fi6880 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sharedlib_from_linklib_cmd" >&56881 $as_echo "$lt_cv_sharedlib_from_linklib_cmd" >&6; }6882 sharedlib_from_linklib_cmd=$lt_cv_sharedlib_from_linklib_cmd6883 test -z "$sharedlib_from_linklib_cmd" && sharedlib_from_linklib_cmd=$ECHO6884 6885 6886 6887 6888 6889 6890 6891 if test -n "$ac_tool_prefix"; then6892 for ac_prog in ar6893 do6894 # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.6895 set dummy $ac_tool_prefix$ac_prog; ac_word=$26896 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&56897 $as_echo_n "checking for $ac_word... " >&6; }6898 if ${ac_cv_prog_AR+:} false; then :6899 $as_echo_n "(cached) " >&66900 else6901 if test -n "$AR"; then6902 ac_cv_prog_AR="$AR" # Let the user override the test.6903 else6904 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR6905 for as_dir in $PATH6906 do6907 IFS=$as_save_IFS6908 test -z "$as_dir" && as_dir=.6909 for ac_exec_ext in '' $ac_executable_extensions; do6910 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then6911 ac_cv_prog_AR="$ac_tool_prefix$ac_prog"6912 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&56913 break 26914 fi6915 done6916 done6917 IFS=$as_save_IFS6918 6919 fi6920 fi6921 AR=$ac_cv_prog_AR6922 if test -n "$AR"; then6923 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AR" >&56924 $as_echo "$AR" >&6; }6925 else6926 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&56927 $as_echo "no" >&6; }6928 fi6929 6930 6931 test -n "$AR" && break6932 done6933 fi6934 if test -z "$AR"; then6935 ac_ct_AR=$AR6936 for ac_prog in ar6937 do6938 # Extract the first word of "$ac_prog", so it can be a program name with args.6939 set dummy $ac_prog; ac_word=$26940 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&56941 $as_echo_n "checking for $ac_word... " >&6; }6942 if ${ac_cv_prog_ac_ct_AR+:} false; then :6943 $as_echo_n "(cached) " >&66944 else6945 if test -n "$ac_ct_AR"; then6946 ac_cv_prog_ac_ct_AR="$ac_ct_AR" # Let the user override the test.6947 else6948 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR6949 for as_dir in $PATH6950 do6951 IFS=$as_save_IFS6952 test -z "$as_dir" && as_dir=.6953 for ac_exec_ext in '' $ac_executable_extensions; do6954 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then6955 ac_cv_prog_ac_ct_AR="$ac_prog"6956 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&56957 break 26958 fi6959 done6960 done6961 IFS=$as_save_IFS6962 6963 fi6964 fi6965 ac_ct_AR=$ac_cv_prog_ac_ct_AR6966 if test -n "$ac_ct_AR"; then6967 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_AR" >&56968 $as_echo "$ac_ct_AR" >&6; }6969 else6970 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&56971 $as_echo "no" >&6; }6972 fi6973 6974 6975 test -n "$ac_ct_AR" && break6976 done6977 6978 if test "x$ac_ct_AR" = x; then6979 AR="false"6980 else6981 case $cross_compiling:$ac_tool_warned in6982 yes:)6983 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&56984 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}6985 ac_tool_warned=yes ;;6986 esac6987 AR=$ac_ct_AR6988 fi6989 fi6990 6991 : ${AR=ar}6992 : ${AR_FLAGS=cru}6993 6994 6995 6996 6997 6998 6999 7000 7001 7002 7003 7004 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for archiver @FILE support" >&57005 $as_echo_n "checking for archiver @FILE support... " >&6; }7006 if ${lt_cv_ar_at_file+:} false; then :7007 $as_echo_n "(cached) " >&67008 else7009 lt_cv_ar_at_file=no7010 cat confdefs.h - <<_ACEOF >conftest.$ac_ext7011 /* end confdefs.h. */7012 7013 int7014 main ()7015 {7016 7017 ;7018 return 0;7019 }7020 _ACEOF7021 if ac_fn_c_try_compile "$LINENO"; then :7022 echo conftest.$ac_objext > conftest.lst7023 lt_ar_try='$AR $AR_FLAGS libconftest.a @conftest.lst >&5'7024 { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$lt_ar_try\""; } >&57025 (eval $lt_ar_try) 2>&57026 ac_status=$?7027 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&57028 test $ac_status = 0; }7029 if test 0 -eq "$ac_status"; then7030 # Ensure the archiver fails upon bogus file names.7031 rm -f conftest.$ac_objext libconftest.a7032 { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$lt_ar_try\""; } >&57033 (eval $lt_ar_try) 2>&57034 ac_status=$?7035 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&57036 test $ac_status = 0; }7037 if test 0 -ne "$ac_status"; then7038 lt_cv_ar_at_file=@7039 fi7040 fi7041 rm -f conftest.* libconftest.a7042 7043 fi7044 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext7045 7046 fi7047 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ar_at_file" >&57048 $as_echo "$lt_cv_ar_at_file" >&6; }7049 7050 if test no = "$lt_cv_ar_at_file"; then7051 archiver_list_spec=7052 else7053 archiver_list_spec=$lt_cv_ar_at_file7054 fi7055 7056 7057 7058 7059 7060 7061 7062 if test -n "$ac_tool_prefix"; then7063 # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.7064 set dummy ${ac_tool_prefix}strip; ac_word=$27065 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&57066 $as_echo_n "checking for $ac_word... " >&6; }7067 if ${ac_cv_prog_STRIP+:} false; then :7068 $as_echo_n "(cached) " >&67069 else7070 if test -n "$STRIP"; then7071 ac_cv_prog_STRIP="$STRIP" # Let the user override the test.7072 else7073 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR7074 for as_dir in $PATH7075 do7076 IFS=$as_save_IFS7077 test -z "$as_dir" && as_dir=.7078 for ac_exec_ext in '' $ac_executable_extensions; do7079 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then7080 ac_cv_prog_STRIP="${ac_tool_prefix}strip"7081 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&57082 break 27083 fi7084 done7085 done7086 IFS=$as_save_IFS7087 7088 fi7089 fi7090 STRIP=$ac_cv_prog_STRIP7091 if test -n "$STRIP"; then7092 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&57093 $as_echo "$STRIP" >&6; }7094 else7095 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&57096 $as_echo "no" >&6; }7097 fi7098 7099 7100 fi7101 if test -z "$ac_cv_prog_STRIP"; then7102 ac_ct_STRIP=$STRIP7103 # Extract the first word of "strip", so it can be a program name with args.7104 set dummy strip; ac_word=$27105 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&57106 $as_echo_n "checking for $ac_word... " >&6; }7107 if ${ac_cv_prog_ac_ct_STRIP+:} false; then :7108 $as_echo_n "(cached) " >&67109 else7110 if test -n "$ac_ct_STRIP"; then7111 ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test.7112 else7113 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR7114 for as_dir in $PATH7115 do7116 IFS=$as_save_IFS7117 test -z "$as_dir" && as_dir=.7118 for ac_exec_ext in '' $ac_executable_extensions; do7119 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then7120 ac_cv_prog_ac_ct_STRIP="strip"7121 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&57122 break 27123 fi7124 done7125 done7126 IFS=$as_save_IFS7127 7128 fi7129 fi7130 ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP7131 if test -n "$ac_ct_STRIP"; then7132 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&57133 $as_echo "$ac_ct_STRIP" >&6; }7134 else7135 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&57136 $as_echo "no" >&6; }7137 fi7138 7139 if test "x$ac_ct_STRIP" = x; then7140 STRIP=":"7141 else7142 case $cross_compiling:$ac_tool_warned in7143 yes:)7144 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&57145 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}7146 ac_tool_warned=yes ;;7147 esac7148 STRIP=$ac_ct_STRIP7149 fi7150 else7151 STRIP="$ac_cv_prog_STRIP"7152 fi7153 7154 test -z "$STRIP" && STRIP=:7155 7156 7157 7158 7159 7160 7161 if test -n "$ac_tool_prefix"; then7162 # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.7163 set dummy ${ac_tool_prefix}ranlib; ac_word=$27164 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&57165 $as_echo_n "checking for $ac_word... " >&6; }7166 if ${ac_cv_prog_RANLIB+:} false; then :7167 $as_echo_n "(cached) " >&67168 else7169 if test -n "$RANLIB"; then7170 ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test.7171 else7172 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR7173 for as_dir in $PATH7174 do7175 IFS=$as_save_IFS7176 test -z "$as_dir" && as_dir=.7177 for ac_exec_ext in '' $ac_executable_extensions; do7178 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then7179 ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib"7180 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&57181 break 27182 fi7183 done7184 done7185 IFS=$as_save_IFS7186 7187 fi7188 fi7189 RANLIB=$ac_cv_prog_RANLIB7190 if test -n "$RANLIB"; then7191 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $RANLIB" >&57192 $as_echo "$RANLIB" >&6; }7193 else7194 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&57195 $as_echo "no" >&6; }7196 fi7197 7198 7199 fi7200 if test -z "$ac_cv_prog_RANLIB"; then7201 ac_ct_RANLIB=$RANLIB7202 # Extract the first word of "ranlib", so it can be a program name with args.7203 set dummy ranlib; ac_word=$27204 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&57205 $as_echo_n "checking for $ac_word... " >&6; }7206 if ${ac_cv_prog_ac_ct_RANLIB+:} false; then :7207 $as_echo_n "(cached) " >&67208 else7209 if test -n "$ac_ct_RANLIB"; then7210 ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test.7211 else7212 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR7213 for as_dir in $PATH7214 do7215 IFS=$as_save_IFS7216 test -z "$as_dir" && as_dir=.7217 for ac_exec_ext in '' $ac_executable_extensions; do7218 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then7219 ac_cv_prog_ac_ct_RANLIB="ranlib"7220 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&57221 break 27222 fi7223 done7224 done7225 IFS=$as_save_IFS7226 7227 fi7228 fi7229 ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB7230 if test -n "$ac_ct_RANLIB"; then7231 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_RANLIB" >&57232 $as_echo "$ac_ct_RANLIB" >&6; }7233 else7234 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&57235 $as_echo "no" >&6; }7236 fi7237 7238 if test "x$ac_ct_RANLIB" = x; then7239 RANLIB=":"7240 else7241 case $cross_compiling:$ac_tool_warned in7242 yes:)7243 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&57244 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}7245 ac_tool_warned=yes ;;7246 esac7247 RANLIB=$ac_ct_RANLIB7248 fi7249 else7250 RANLIB="$ac_cv_prog_RANLIB"7251 fi7252 7253 test -z "$RANLIB" && RANLIB=:7254 7255 7256 7257 7258 7259 7260 # Determine commands to create old-style static archives.7261 old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs'7262 old_postinstall_cmds='chmod 644 $oldlib'7263 old_postuninstall_cmds=7264 7265 if test -n "$RANLIB"; then7266 case $host_os in7267 bitrig* | openbsd*)7268 old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$tool_oldlib"7269 ;;7270 *)7271 old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$tool_oldlib"7272 ;;7273 esac7274 old_archive_cmds="$old_archive_cmds~\$RANLIB \$tool_oldlib"7275 fi7276 7277 case $host_os in7278 darwin*)7279 lock_old_archive_extraction=yes ;;7280 *)7281 lock_old_archive_extraction=no ;;7282 esac7283 7284 7285 7286 7287 7288 7289 7290 7291 7292 7293 7294 7295 7296 7297 7298 7299 7300 7301 7302 7303 7304 7305 7306 7307 7308 7309 7310 7311 7312 7313 7314 7315 7316 7317 7318 7319 7320 7321 7322 # If no C compiler was specified, use CC.7323 LTCC=${LTCC-"$CC"}7324 7325 # If no C compiler flags were specified, use CFLAGS.7326 LTCFLAGS=${LTCFLAGS-"$CFLAGS"}7327 7328 # Allow CC to be a program name with arguments.7329 compiler=$CC7330 7331 7332 # Check for command to grab the raw symbol name followed by C symbol from nm.7333 { $as_echo "$as_me:${as_lineno-$LINENO}: checking command to parse $NM output from $compiler object" >&57334 $as_echo_n "checking command to parse $NM output from $compiler object... " >&6; }7335 if ${lt_cv_sys_global_symbol_pipe+:} false; then :7336 $as_echo_n "(cached) " >&67337 else7338 7339 # These are sane defaults that work on at least a few old systems.7340 # [They come from Ultrix. What could be older than Ultrix?!! ;)]7341 7342 # Character class describing NM global symbol codes.7343 symcode='[BCDEGRST]'7344 7345 # Regexp to match symbols that can be accessed directly from C.7346 sympat='\([_A-Za-z][_A-Za-z0-9]*\)'7347 7348 # Define system-specific variables.7349 case $host_os in7350 aix*)7351 symcode='[BCDT]'7352 ;;7353 cygwin* | mingw* | pw32* | cegcc*)7354 symcode='[ABCDGISTW]'7355 ;;7356 hpux*)7357 if test ia64 = "$host_cpu"; then7358 symcode='[ABCDEGRST]'7359 fi7360 ;;7361 irix* | nonstopux*)7362 symcode='[BCDEGRST]'7363 ;;7364 osf*)7365 symcode='[BCDEGQRST]'7366 ;;7367 solaris*)7368 symcode='[BDRT]'7369 ;;7370 sco3.2v5*)7371 symcode='[DT]'7372 ;;7373 sysv4.2uw2*)7374 symcode='[DT]'7375 ;;7376 sysv5* | sco5v6* | unixware* | OpenUNIX*)7377 symcode='[ABDT]'7378 ;;7379 sysv4)7380 symcode='[DFNSTU]'7381 ;;7382 esac7383 7384 # If we're using GNU nm, then use its standard symbol codes.7385 case `$NM -V 2>&1` in7386 *GNU* | *'with BFD'*)7387 symcode='[ABCDGIRSTW]' ;;7388 esac7389 7390 if test "$lt_cv_nm_interface" = "MS dumpbin"; then7391 # Gets list of data symbols to import.7392 lt_cv_sys_global_symbol_to_import="sed -n -e 's/^I .* \(.*\)$/\1/p'"7393 # Adjust the below global symbol transforms to fixup imported variables.7394 lt_cdecl_hook=" -e 's/^I .* \(.*\)$/extern __declspec(dllimport) char \1;/p'"7395 lt_c_name_hook=" -e 's/^I .* \(.*\)$/ {\"\1\", (void *) 0},/p'"7396 lt_c_name_lib_hook="\7397 -e 's/^I .* \(lib.*\)$/ {\"\1\", (void *) 0},/p'\7398 -e 's/^I .* \(.*\)$/ {\"lib\1\", (void *) 0},/p'"7399 else7400 # Disable hooks by default.7401 lt_cv_sys_global_symbol_to_import=7402 lt_cdecl_hook=7403 lt_c_name_hook=7404 lt_c_name_lib_hook=7405 fi7406 7407 # Transform an extracted symbol line into a proper C declaration.7408 # Some systems (esp. on ia64) link data and code symbols differently,7409 # so use this general approach.7410 lt_cv_sys_global_symbol_to_cdecl="sed -n"\7411 $lt_cdecl_hook\7412 " -e 's/^T .* \(.*\)$/extern int \1();/p'"\7413 " -e 's/^$symcode$symcode* .* \(.*\)$/extern char \1;/p'"7414 7415 # Transform an extracted symbol line into symbol name and symbol address7416 lt_cv_sys_global_symbol_to_c_name_address="sed -n"\7417 $lt_c_name_hook\7418 " -e 's/^: \(.*\) .*$/ {\"\1\", (void *) 0},/p'"\7419 " -e 's/^$symcode$symcode* .* \(.*\)$/ {\"\1\", (void *) \&\1},/p'"7420 7421 # Transform an extracted symbol line into symbol name with lib prefix and7422 # symbol address.7423 lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n"\7424 $lt_c_name_lib_hook\7425 " -e 's/^: \(.*\) .*$/ {\"\1\", (void *) 0},/p'"\7426 " -e 's/^$symcode$symcode* .* \(lib.*\)$/ {\"\1\", (void *) \&\1},/p'"\7427 " -e 's/^$symcode$symcode* .* \(.*\)$/ {\"lib\1\", (void *) \&\1},/p'"7428 7429 # Handle CRLF in mingw tool chain7430 opt_cr=7431 case $build_os in7432 mingw*)7433 opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp7434 ;;7435 esac7436 7437 # Try without a prefix underscore, then with it.7438 for ac_symprfx in "" "_"; do7439 7440 # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol.7441 symxfrm="\\1 $ac_symprfx\\2 \\2"7442 7443 # Write the raw and C identifiers.7444 if test "$lt_cv_nm_interface" = "MS dumpbin"; then7445 # Fake it for dumpbin and say T for any non-static function,7446 # D for any global variable and I for any imported variable.7447 # Also find C++ and __fastcall symbols from MSVC++,7448 # which start with @ or ?.7449 lt_cv_sys_global_symbol_pipe="$AWK '"\7450 " {last_section=section; section=\$ 3};"\7451 " /^COFF SYMBOL TABLE/{for(i in hide) delete hide[i]};"\7452 " /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\7453 " /^ *Symbol name *: /{split(\$ 0,sn,\":\"); si=substr(sn[2],2)};"\7454 " /^ *Type *: code/{print \"T\",si,substr(si,length(prfx))};"\7455 " /^ *Type *: data/{print \"I\",si,substr(si,length(prfx))};"\7456 " \$ 0!~/External *\|/{next};"\7457 " / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\7458 " {if(hide[section]) next};"\7459 " {f=\"D\"}; \$ 0~/\(\).*\|/{f=\"T\"};"\7460 " {split(\$ 0,a,/\||\r/); split(a[2],s)};"\7461 " s[1]~/^[@?]/{print f,s[1],s[1]; next};"\7462 " s[1]~prfx {split(s[1],t,\"@\"); print f,t[1],substr(t[1],length(prfx))}"\7463 " ' prfx=^$ac_symprfx"7464 else7465 lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[ ]\($symcode$symcode*\)[ ][ ]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"7466 fi7467 lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | sed '/ __gnu_lto/d'"7468 7469 # Check to see that the pipe works correctly.7470 pipe_works=no7471 7472 rm -f conftest*7473 cat > conftest.$ac_ext <<_LT_EOF7474 #ifdef __cplusplus7475 extern "C" {7476 #endif7477 char nm_test_var;7478 void nm_test_func(void);7479 void nm_test_func(void){}7480 #ifdef __cplusplus7481 }7482 #endif7483 int main(){nm_test_var='a';nm_test_func();return(0);}7484 _LT_EOF7485 7486 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&57487 (eval $ac_compile) 2>&57488 ac_status=$?7489 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&57490 test $ac_status = 0; }; then7491 # Now try to grab the symbols.7492 nlist=conftest.nm7493 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist\""; } >&57494 (eval $NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist) 2>&57495 ac_status=$?7496 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&57497 test $ac_status = 0; } && test -s "$nlist"; then7498 # Try sorting and uniquifying the output.7499 if sort "$nlist" | uniq > "$nlist"T; then7500 mv -f "$nlist"T "$nlist"7501 else7502 rm -f "$nlist"T7503 fi7504 7505 # Make sure that we snagged all the symbols we need.7506 if $GREP ' nm_test_var$' "$nlist" >/dev/null; then7507 if $GREP ' nm_test_func$' "$nlist" >/dev/null; then7508 cat <<_LT_EOF > conftest.$ac_ext7509 /* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests. */7510 #if defined _WIN32 || defined __CYGWIN__ || defined _WIN32_WCE7511 /* DATA imports from DLLs on WIN32 can't be const, because runtime7512 relocations are performed -- see ld's documentation on pseudo-relocs. */7513 # define LT_DLSYM_CONST7514 #elif defined __osf__7515 /* This system does not cope well with relocations in const data. */7516 # define LT_DLSYM_CONST7517 #else7518 # define LT_DLSYM_CONST const7519 #endif7520 7521 #ifdef __cplusplus7522 extern "C" {7523 #endif7524 7525 _LT_EOF7526 # Now generate the symbol file.7527 eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext'7528 7529 cat <<_LT_EOF >> conftest.$ac_ext7530 7531 /* The mapping between symbol names and symbols. */7532 LT_DLSYM_CONST struct {7533 const char *name;7534 void *address;7535 }7536 lt__PROGRAM__LTX_preloaded_symbols[] =7537 {7538 { "@PROGRAM@", (void *) 0 },7539 _LT_EOF7540 $SED "s/^$symcode$symcode* .* \(.*\)$/ {\"\1\", (void *) \&\1},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext7541 cat <<\_LT_EOF >> conftest.$ac_ext7542 {0, (void *) 0}7543 };7544 7545 /* This works around a problem in FreeBSD linker */7546 #ifdef FREEBSD_WORKAROUND7547 static const void *lt_preloaded_setup() {7548 return lt__PROGRAM__LTX_preloaded_symbols;7549 }7550 #endif7551 7552 #ifdef __cplusplus7553 }7554 #endif7555 _LT_EOF7556 # Now try linking the two files.7557 mv conftest.$ac_objext conftstm.$ac_objext7558 lt_globsym_save_LIBS=$LIBS7559 lt_globsym_save_CFLAGS=$CFLAGS7560 LIBS=conftstm.$ac_objext7561 CFLAGS="$CFLAGS$lt_prog_compiler_no_builtin_flag"7562 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&57563 (eval $ac_link) 2>&57564 ac_status=$?7565 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&57566 test $ac_status = 0; } && test -s conftest$ac_exeext; then7567 pipe_works=yes7568 fi7569 LIBS=$lt_globsym_save_LIBS7570 CFLAGS=$lt_globsym_save_CFLAGS7571 else7572 echo "cannot find nm_test_func in $nlist" >&57573 fi7574 else7575 echo "cannot find nm_test_var in $nlist" >&57576 fi7577 else7578 echo "cannot run $lt_cv_sys_global_symbol_pipe" >&57579 fi7580 else7581 echo "$progname: failed program was:" >&57582 cat conftest.$ac_ext >&57583 fi7584 rm -rf conftest* conftst*7585 7586 # Do not use the global_symbol_pipe unless it works.7587 if test yes = "$pipe_works"; then7588 break7589 else7590 lt_cv_sys_global_symbol_pipe=7591 fi7592 done7593 7594 fi7595 7596 if test -z "$lt_cv_sys_global_symbol_pipe"; then7597 lt_cv_sys_global_symbol_to_cdecl=7598 fi7599 if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then7600 { $as_echo "$as_me:${as_lineno-$LINENO}: result: failed" >&57601 $as_echo "failed" >&6; }7602 else7603 { $as_echo "$as_me:${as_lineno-$LINENO}: result: ok" >&57604 $as_echo "ok" >&6; }7605 fi7606 7607 # Response file support.7608 if test "$lt_cv_nm_interface" = "MS dumpbin"; then7609 nm_file_list_spec='@'7610 elif $NM --help 2>/dev/null | grep '[@]FILE' >/dev/null; then7611 nm_file_list_spec='@'7612 fi7613 7614 7615 7616 7617 7618 7619 7620 7621 7622 7623 7624 7625 7626 7627 7628 7629 7630 7631 7632 7633 7634 7635 7636 7637 7638 7639 7640 7641 7642 7643 7644 7645 7646 7647 7648 7649 7650 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for sysroot" >&57651 $as_echo_n "checking for sysroot... " >&6; }7652 7653 # Check whether --with-sysroot was given.7654 if test "${with_sysroot+set}" = set; then :7655 withval=$with_sysroot;7656 else7657 with_sysroot=no7658 fi7659 7660 7661 lt_sysroot=7662 case $with_sysroot in #(7663 yes)7664 if test yes = "$GCC"; then7665 lt_sysroot=`$CC --print-sysroot 2>/dev/null`7666 fi7667 ;; #(7668 /*)7669 lt_sysroot=`echo "$with_sysroot" | sed -e "$sed_quote_subst"`7670 ;; #(7671 no|'')7672 ;; #(7673 *)7674 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_sysroot" >&57675 $as_echo "$with_sysroot" >&6; }7676 as_fn_error $? "The sysroot must be an absolute path." "$LINENO" 57677 ;;7678 esac7679 7680 { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${lt_sysroot:-no}" >&57681 $as_echo "${lt_sysroot:-no}" >&6; }7682 7683 7684 7685 7686 7687 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for a working dd" >&57688 $as_echo_n "checking for a working dd... " >&6; }7689 if ${ac_cv_path_lt_DD+:} false; then :7690 $as_echo_n "(cached) " >&67691 else7692 printf 0123456789abcdef0123456789abcdef >conftest.i7693 cat conftest.i conftest.i >conftest2.i7694 : ${lt_DD:=$DD}7695 if test -z "$lt_DD"; then7696 ac_path_lt_DD_found=false7697 # Loop through the user's path and test for each of PROGNAME-LIST7698 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR7699 for as_dir in $PATH7700 do7701 IFS=$as_save_IFS7702 test -z "$as_dir" && as_dir=.7703 for ac_prog in dd; do7704 for ac_exec_ext in '' $ac_executable_extensions; do7705 ac_path_lt_DD="$as_dir/$ac_prog$ac_exec_ext"7706 as_fn_executable_p "$ac_path_lt_DD" || continue7707 if "$ac_path_lt_DD" bs=32 count=1 <conftest2.i >conftest.out 2>/dev/null; then7708 cmp -s conftest.i conftest.out \7709 && ac_cv_path_lt_DD="$ac_path_lt_DD" ac_path_lt_DD_found=:7710 fi7711 $ac_path_lt_DD_found && break 37712 done7713 done7714 done7715 IFS=$as_save_IFS7716 if test -z "$ac_cv_path_lt_DD"; then7717 :7718 fi7719 else7720 ac_cv_path_lt_DD=$lt_DD7721 fi7722 7723 rm -f conftest.i conftest2.i conftest.out7724 fi7725 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_lt_DD" >&57726 $as_echo "$ac_cv_path_lt_DD" >&6; }7727 7728 7729 { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to truncate binary pipes" >&57730 $as_echo_n "checking how to truncate binary pipes... " >&6; }7731 if ${lt_cv_truncate_bin+:} false; then :7732 $as_echo_n "(cached) " >&67733 else7734 printf 0123456789abcdef0123456789abcdef >conftest.i7735 cat conftest.i conftest.i >conftest2.i7736 lt_cv_truncate_bin=7737 if "$ac_cv_path_lt_DD" bs=32 count=1 <conftest2.i >conftest.out 2>/dev/null; then7738 cmp -s conftest.i conftest.out \7739 && lt_cv_truncate_bin="$ac_cv_path_lt_DD bs=4096 count=1"7740 fi7741 rm -f conftest.i conftest2.i conftest.out7742 test -z "$lt_cv_truncate_bin" && lt_cv_truncate_bin="$SED -e 4q"7743 fi7744 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_truncate_bin" >&57745 $as_echo "$lt_cv_truncate_bin" >&6; }7746 7747 7748 7749 7750 7751 7752 7753 # Calculate cc_basename. Skip known compiler wrappers and cross-prefix.7754 func_cc_basename ()7755 {7756 for cc_temp in $*""; do7757 case $cc_temp in7758 compile | *[\\/]compile | ccache | *[\\/]ccache ) ;;7759 distcc | *[\\/]distcc | purify | *[\\/]purify ) ;;7760 \-*) ;;7761 *) break;;7762 esac7763 done7764 func_cc_basename_result=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"`7765 }7766 7767 # Check whether --enable-libtool-lock was given.7768 if test "${enable_libtool_lock+set}" = set; then :7769 enableval=$enable_libtool_lock;7770 fi7771 7772 test no = "$enable_libtool_lock" || enable_libtool_lock=yes7773 7774 # Some flags need to be propagated to the compiler or linker for good7775 # libtool support.7776 case $host in7777 ia64-*-hpux*)7778 # Find out what ABI is being produced by ac_compile, and set mode7779 # options accordingly.7780 echo 'int i;' > conftest.$ac_ext7781 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&57782 (eval $ac_compile) 2>&57783 ac_status=$?7784 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&57785 test $ac_status = 0; }; then7786 case `/usr/bin/file conftest.$ac_objext` in7787 *ELF-32*)7788 HPUX_IA64_MODE=327789 ;;7790 *ELF-64*)7791 HPUX_IA64_MODE=647792 ;;7793 esac7794 fi7795 rm -rf conftest*7796 ;;7797 *-*-irix6*)7798 # Find out what ABI is being produced by ac_compile, and set linker7799 # options accordingly.7800 echo '#line '$LINENO' "configure"' > conftest.$ac_ext7801 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&57802 (eval $ac_compile) 2>&57803 ac_status=$?7804 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&57805 test $ac_status = 0; }; then7806 if test yes = "$lt_cv_prog_gnu_ld"; then7807 case `/usr/bin/file conftest.$ac_objext` in7808 *32-bit*)7809 LD="${LD-ld} -melf32bsmip"7810 ;;7811 *N32*)7812 LD="${LD-ld} -melf32bmipn32"7813 ;;7814 *64-bit*)7815 LD="${LD-ld} -melf64bmip"7816 ;;7817 esac7818 else7819 case `/usr/bin/file conftest.$ac_objext` in7820 *32-bit*)7821 LD="${LD-ld} -32"7822 ;;7823 *N32*)7824 LD="${LD-ld} -n32"7825 ;;7826 *64-bit*)7827 LD="${LD-ld} -64"7828 ;;7829 esac7830 fi7831 fi7832 rm -rf conftest*7833 ;;7834 7835 mips64*-*linux*)7836 # Find out what ABI is being produced by ac_compile, and set linker7837 # options accordingly.7838 echo '#line '$LINENO' "configure"' > conftest.$ac_ext7839 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&57840 (eval $ac_compile) 2>&57841 ac_status=$?7842 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&57843 test $ac_status = 0; }; then7844 emul=elf7845 case `/usr/bin/file conftest.$ac_objext` in7846 *32-bit*)7847 emul="${emul}32"7848 ;;7849 *64-bit*)7850 emul="${emul}64"7851 ;;7852 esac7853 case `/usr/bin/file conftest.$ac_objext` in7854 *MSB*)7855 emul="${emul}btsmip"7856 ;;7857 *LSB*)7858 emul="${emul}ltsmip"7859 ;;7860 esac7861 case `/usr/bin/file conftest.$ac_objext` in7862 *N32*)7863 emul="${emul}n32"7864 ;;7865 esac7866 LD="${LD-ld} -m $emul"7867 fi7868 rm -rf conftest*7869 ;;7870 7871 x86_64-*kfreebsd*-gnu|x86_64-*linux*|powerpc*-*linux*| \7872 s390*-*linux*|s390*-*tpf*|sparc*-*linux*)7873 # Find out what ABI is being produced by ac_compile, and set linker7874 # options accordingly. Note that the listed cases only cover the7875 # situations where additional linker options are needed (such as when7876 # doing 32-bit compilation for a host where ld defaults to 64-bit, or7877 # vice versa); the common cases where no linker options are needed do7878 # not appear in the list.7879 echo 'int i;' > conftest.$ac_ext7880 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&57881 (eval $ac_compile) 2>&57882 ac_status=$?7883 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&57884 test $ac_status = 0; }; then7885 case `/usr/bin/file conftest.o` in7886 *32-bit*)7887 case $host in7888 x86_64-*kfreebsd*-gnu)7889 LD="${LD-ld} -m elf_i386_fbsd"7890 ;;7891 x86_64-*linux*)7892 case `/usr/bin/file conftest.o` in7893 *x86-64*)7894 LD="${LD-ld} -m elf32_x86_64"7895 ;;7896 *)7897 LD="${LD-ld} -m elf_i386"7898 ;;7899 esac7900 ;;7901 powerpc64le-*linux*)7902 LD="${LD-ld} -m elf32lppclinux"7903 ;;7904 powerpc64-*linux*)7905 LD="${LD-ld} -m elf32ppclinux"7906 ;;7907 s390x-*linux*)7908 LD="${LD-ld} -m elf_s390"7909 ;;7910 sparc64-*linux*)7911 LD="${LD-ld} -m elf32_sparc"7912 ;;7913 esac7914 ;;7915 *64-bit*)7916 case $host in7917 x86_64-*kfreebsd*-gnu)7918 LD="${LD-ld} -m elf_x86_64_fbsd"7919 ;;7920 x86_64-*linux*)7921 LD="${LD-ld} -m elf_x86_64"7922 ;;7923 powerpcle-*linux*)7924 LD="${LD-ld} -m elf64lppc"7925 ;;7926 powerpc-*linux*)7927 LD="${LD-ld} -m elf64ppc"7928 ;;7929 s390*-*linux*|s390*-*tpf*)7930 LD="${LD-ld} -m elf64_s390"7931 ;;7932 sparc*-*linux*)7933 LD="${LD-ld} -m elf64_sparc"7934 ;;7935 esac7936 ;;7937 esac7938 fi7939 rm -rf conftest*7940 ;;7941 7942 *-*-sco3.2v5*)7943 # On SCO OpenServer 5, we need -belf to get full-featured binaries.7944 SAVE_CFLAGS=$CFLAGS7945 CFLAGS="$CFLAGS -belf"7946 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler needs -belf" >&57947 $as_echo_n "checking whether the C compiler needs -belf... " >&6; }7948 if ${lt_cv_cc_needs_belf+:} false; then :7949 $as_echo_n "(cached) " >&67950 else7951 ac_ext=c7952 ac_cpp='$CPP $CPPFLAGS'7953 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'7954 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'7955 ac_compiler_gnu=$ac_cv_c_compiler_gnu7956 7957 cat confdefs.h - <<_ACEOF >conftest.$ac_ext7958 /* end confdefs.h. */7959 7960 int7961 main ()7962 {7963 7964 ;7965 return 0;7966 }7967 _ACEOF7968 if ac_fn_c_try_link "$LINENO"; then :7969 lt_cv_cc_needs_belf=yes7970 else7971 lt_cv_cc_needs_belf=no7972 fi7973 rm -f core conftest.err conftest.$ac_objext \7974 conftest$ac_exeext conftest.$ac_ext7975 ac_ext=c7976 ac_cpp='$CPP $CPPFLAGS'7977 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'7978 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'7979 ac_compiler_gnu=$ac_cv_c_compiler_gnu7980 7981 fi7982 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_cc_needs_belf" >&57983 $as_echo "$lt_cv_cc_needs_belf" >&6; }7984 if test yes != "$lt_cv_cc_needs_belf"; then7985 # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf7986 CFLAGS=$SAVE_CFLAGS7987 fi7988 ;;7989 *-*solaris*)7990 # Find out what ABI is being produced by ac_compile, and set linker7991 # options accordingly.7992 echo 'int i;' > conftest.$ac_ext7993 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&57994 (eval $ac_compile) 2>&57995 ac_status=$?7996 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&57997 test $ac_status = 0; }; then7998 case `/usr/bin/file conftest.o` in7999 *64-bit*)8000 case $lt_cv_prog_gnu_ld in8001 yes*)8002 case $host in8003 i?86-*-solaris*|x86_64-*-solaris*)8004 LD="${LD-ld} -m elf_x86_64"8005 ;;8006 sparc*-*-solaris*)8007 LD="${LD-ld} -m elf64_sparc"8008 ;;8009 esac8010 # GNU ld 2.21 introduced _sol2 emulations. Use them if available.8011 if ${LD-ld} -V | grep _sol2 >/dev/null 2>&1; then8012 LD=${LD-ld}_sol28013 fi8014 ;;8015 *)8016 if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then8017 LD="${LD-ld} -64"8018 fi8019 ;;8020 esac8021 ;;8022 esac8023 fi8024 rm -rf conftest*8025 ;;8026 esac8027 8028 need_locks=$enable_libtool_lock8029 8030 if test -n "$ac_tool_prefix"; then8031 # Extract the first word of "${ac_tool_prefix}mt", so it can be a program name with args.8032 set dummy ${ac_tool_prefix}mt; ac_word=$28033 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&58034 $as_echo_n "checking for $ac_word... " >&6; }8035 if ${ac_cv_prog_MANIFEST_TOOL+:} false; then :8036 $as_echo_n "(cached) " >&68037 else8038 if test -n "$MANIFEST_TOOL"; then8039 ac_cv_prog_MANIFEST_TOOL="$MANIFEST_TOOL" # Let the user override the test.8040 else8041 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR8042 for as_dir in $PATH8043 do8044 IFS=$as_save_IFS8045 test -z "$as_dir" && as_dir=.8046 for ac_exec_ext in '' $ac_executable_extensions; do8047 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then8048 ac_cv_prog_MANIFEST_TOOL="${ac_tool_prefix}mt"8049 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&58050 break 28051 fi8052 done8053 done8054 IFS=$as_save_IFS8055 8056 fi8057 fi8058 MANIFEST_TOOL=$ac_cv_prog_MANIFEST_TOOL8059 if test -n "$MANIFEST_TOOL"; then8060 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MANIFEST_TOOL" >&58061 $as_echo "$MANIFEST_TOOL" >&6; }8062 else8063 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&58064 $as_echo "no" >&6; }8065 fi8066 8067 8068 fi8069 if test -z "$ac_cv_prog_MANIFEST_TOOL"; then8070 ac_ct_MANIFEST_TOOL=$MANIFEST_TOOL8071 # Extract the first word of "mt", so it can be a program name with args.8072 set dummy mt; ac_word=$28073 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&58074 $as_echo_n "checking for $ac_word... " >&6; }8075 if ${ac_cv_prog_ac_ct_MANIFEST_TOOL+:} false; then :8076 $as_echo_n "(cached) " >&68077 else8078 if test -n "$ac_ct_MANIFEST_TOOL"; then8079 ac_cv_prog_ac_ct_MANIFEST_TOOL="$ac_ct_MANIFEST_TOOL" # Let the user override the test.8080 else8081 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR8082 for as_dir in $PATH8083 do8084 IFS=$as_save_IFS8085 test -z "$as_dir" && as_dir=.8086 for ac_exec_ext in '' $ac_executable_extensions; do8087 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then8088 ac_cv_prog_ac_ct_MANIFEST_TOOL="mt"8089 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&58090 break 28091 fi8092 done8093 done8094 IFS=$as_save_IFS8095 8096 fi8097 fi8098 ac_ct_MANIFEST_TOOL=$ac_cv_prog_ac_ct_MANIFEST_TOOL8099 if test -n "$ac_ct_MANIFEST_TOOL"; then8100 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_MANIFEST_TOOL" >&58101 $as_echo "$ac_ct_MANIFEST_TOOL" >&6; }8102 else8103 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&58104 $as_echo "no" >&6; }8105 fi8106 8107 if test "x$ac_ct_MANIFEST_TOOL" = x; then8108 MANIFEST_TOOL=":"8109 else8110 case $cross_compiling:$ac_tool_warned in8111 yes:)8112 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&58113 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}8114 ac_tool_warned=yes ;;8115 esac8116 MANIFEST_TOOL=$ac_ct_MANIFEST_TOOL8117 fi8118 else8119 MANIFEST_TOOL="$ac_cv_prog_MANIFEST_TOOL"8120 fi8121 8122 test -z "$MANIFEST_TOOL" && MANIFEST_TOOL=mt8123 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $MANIFEST_TOOL is a manifest tool" >&58124 $as_echo_n "checking if $MANIFEST_TOOL is a manifest tool... " >&6; }8125 if ${lt_cv_path_mainfest_tool+:} false; then :8126 $as_echo_n "(cached) " >&68127 else8128 lt_cv_path_mainfest_tool=no8129 echo "$as_me:$LINENO: $MANIFEST_TOOL '-?'" >&58130 $MANIFEST_TOOL '-?' 2>conftest.err > conftest.out8131 cat conftest.err >&58132 if $GREP 'Manifest Tool' conftest.out > /dev/null; then8133 lt_cv_path_mainfest_tool=yes8134 fi8135 rm -f conftest*8136 fi8137 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_mainfest_tool" >&58138 $as_echo "$lt_cv_path_mainfest_tool" >&6; }8139 if test yes != "$lt_cv_path_mainfest_tool"; then8140 MANIFEST_TOOL=:8141 fi8142 8143 8144 8145 8146 8147 8148 case $host_os in8149 rhapsody* | darwin*)8150 if test -n "$ac_tool_prefix"; then8151 # Extract the first word of "${ac_tool_prefix}dsymutil", so it can be a program name with args.8152 set dummy ${ac_tool_prefix}dsymutil; ac_word=$28153 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&58154 $as_echo_n "checking for $ac_word... " >&6; }8155 if ${ac_cv_prog_DSYMUTIL+:} false; then :8156 $as_echo_n "(cached) " >&68157 else8158 if test -n "$DSYMUTIL"; then8159 ac_cv_prog_DSYMUTIL="$DSYMUTIL" # Let the user override the test.8160 else8161 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR8162 for as_dir in $PATH8163 do8164 IFS=$as_save_IFS8165 test -z "$as_dir" && as_dir=.8166 for ac_exec_ext in '' $ac_executable_extensions; do8167 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then8168 ac_cv_prog_DSYMUTIL="${ac_tool_prefix}dsymutil"8169 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&58170 break 28171 fi8172 done8173 done8174 IFS=$as_save_IFS8175 8176 fi8177 fi8178 DSYMUTIL=$ac_cv_prog_DSYMUTIL8179 if test -n "$DSYMUTIL"; then8180 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DSYMUTIL" >&58181 $as_echo "$DSYMUTIL" >&6; }8182 else8183 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&58184 $as_echo "no" >&6; }8185 fi8186 8187 8188 fi8189 if test -z "$ac_cv_prog_DSYMUTIL"; then8190 ac_ct_DSYMUTIL=$DSYMUTIL8191 # Extract the first word of "dsymutil", so it can be a program name with args.8192 set dummy dsymutil; ac_word=$28193 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&58194 $as_echo_n "checking for $ac_word... " >&6; }8195 if ${ac_cv_prog_ac_ct_DSYMUTIL+:} false; then :8196 $as_echo_n "(cached) " >&68197 else8198 if test -n "$ac_ct_DSYMUTIL"; then8199 ac_cv_prog_ac_ct_DSYMUTIL="$ac_ct_DSYMUTIL" # Let the user override the test.8200 else8201 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR8202 for as_dir in $PATH8203 do8204 IFS=$as_save_IFS8205 test -z "$as_dir" && as_dir=.8206 for ac_exec_ext in '' $ac_executable_extensions; do8207 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then8208 ac_cv_prog_ac_ct_DSYMUTIL="dsymutil"8209 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&58210 break 28211 fi8212 done8213 done8214 IFS=$as_save_IFS8215 8216 fi8217 fi8218 ac_ct_DSYMUTIL=$ac_cv_prog_ac_ct_DSYMUTIL8219 if test -n "$ac_ct_DSYMUTIL"; then8220 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DSYMUTIL" >&58221 $as_echo "$ac_ct_DSYMUTIL" >&6; }8222 else8223 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&58224 $as_echo "no" >&6; }8225 fi8226 8227 if test "x$ac_ct_DSYMUTIL" = x; then8228 DSYMUTIL=":"8229 else8230 case $cross_compiling:$ac_tool_warned in8231 yes:)8232 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&58233 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}8234 ac_tool_warned=yes ;;8235 esac8236 DSYMUTIL=$ac_ct_DSYMUTIL8237 fi8238 else8239 DSYMUTIL="$ac_cv_prog_DSYMUTIL"8240 fi8241 8242 if test -n "$ac_tool_prefix"; then8243 # Extract the first word of "${ac_tool_prefix}nmedit", so it can be a program name with args.8244 set dummy ${ac_tool_prefix}nmedit; ac_word=$28245 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&58246 $as_echo_n "checking for $ac_word... " >&6; }8247 if ${ac_cv_prog_NMEDIT+:} false; then :8248 $as_echo_n "(cached) " >&68249 else8250 if test -n "$NMEDIT"; then8251 ac_cv_prog_NMEDIT="$NMEDIT" # Let the user override the test.8252 else8253 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR8254 for as_dir in $PATH8255 do8256 IFS=$as_save_IFS8257 test -z "$as_dir" && as_dir=.8258 for ac_exec_ext in '' $ac_executable_extensions; do8259 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then8260 ac_cv_prog_NMEDIT="${ac_tool_prefix}nmedit"8261 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&58262 break 28263 fi8264 done8265 done8266 IFS=$as_save_IFS8267 8268 fi8269 fi8270 NMEDIT=$ac_cv_prog_NMEDIT8271 if test -n "$NMEDIT"; then8272 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $NMEDIT" >&58273 $as_echo "$NMEDIT" >&6; }8274 else8275 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&58276 $as_echo "no" >&6; }8277 fi8278 8279 8280 fi8281 if test -z "$ac_cv_prog_NMEDIT"; then8282 ac_ct_NMEDIT=$NMEDIT8283 # Extract the first word of "nmedit", so it can be a program name with args.8284 set dummy nmedit; ac_word=$28285 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&58286 $as_echo_n "checking for $ac_word... " >&6; }8287 if ${ac_cv_prog_ac_ct_NMEDIT+:} false; then :8288 $as_echo_n "(cached) " >&68289 else8290 if test -n "$ac_ct_NMEDIT"; then8291 ac_cv_prog_ac_ct_NMEDIT="$ac_ct_NMEDIT" # Let the user override the test.8292 else8293 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR8294 for as_dir in $PATH8295 do8296 IFS=$as_save_IFS8297 test -z "$as_dir" && as_dir=.8298 for ac_exec_ext in '' $ac_executable_extensions; do8299 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then8300 ac_cv_prog_ac_ct_NMEDIT="nmedit"8301 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&58302 break 28303 fi8304 done8305 done8306 IFS=$as_save_IFS8307 8308 fi8309 fi8310 ac_ct_NMEDIT=$ac_cv_prog_ac_ct_NMEDIT8311 if test -n "$ac_ct_NMEDIT"; then8312 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_NMEDIT" >&58313 $as_echo "$ac_ct_NMEDIT" >&6; }8314 else8315 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&58316 $as_echo "no" >&6; }8317 fi8318 8319 if test "x$ac_ct_NMEDIT" = x; then8320 NMEDIT=":"8321 else8322 case $cross_compiling:$ac_tool_warned in8323 yes:)8324 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&58325 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}8326 ac_tool_warned=yes ;;8327 esac8328 NMEDIT=$ac_ct_NMEDIT8329 fi8330 else8331 NMEDIT="$ac_cv_prog_NMEDIT"8332 fi8333 8334 if test -n "$ac_tool_prefix"; then8335 # Extract the first word of "${ac_tool_prefix}lipo", so it can be a program name with args.8336 set dummy ${ac_tool_prefix}lipo; ac_word=$28337 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&58338 $as_echo_n "checking for $ac_word... " >&6; }8339 if ${ac_cv_prog_LIPO+:} false; then :8340 $as_echo_n "(cached) " >&68341 else8342 if test -n "$LIPO"; then8343 ac_cv_prog_LIPO="$LIPO" # Let the user override the test.8344 else8345 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR8346 for as_dir in $PATH8347 do8348 IFS=$as_save_IFS8349 test -z "$as_dir" && as_dir=.8350 for ac_exec_ext in '' $ac_executable_extensions; do8351 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then8352 ac_cv_prog_LIPO="${ac_tool_prefix}lipo"8353 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&58354 break 28355 fi8356 done8357 done8358 IFS=$as_save_IFS8359 8360 fi8361 fi8362 LIPO=$ac_cv_prog_LIPO8363 if test -n "$LIPO"; then8364 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIPO" >&58365 $as_echo "$LIPO" >&6; }8366 else8367 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&58368 $as_echo "no" >&6; }8369 fi8370 8371 8372 fi8373 if test -z "$ac_cv_prog_LIPO"; then8374 ac_ct_LIPO=$LIPO8375 # Extract the first word of "lipo", so it can be a program name with args.8376 set dummy lipo; ac_word=$28377 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&58378 $as_echo_n "checking for $ac_word... " >&6; }8379 if ${ac_cv_prog_ac_ct_LIPO+:} false; then :8380 $as_echo_n "(cached) " >&68381 else8382 if test -n "$ac_ct_LIPO"; then8383 ac_cv_prog_ac_ct_LIPO="$ac_ct_LIPO" # Let the user override the test.8384 else8385 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR8386 for as_dir in $PATH8387 do8388 IFS=$as_save_IFS8389 test -z "$as_dir" && as_dir=.8390 for ac_exec_ext in '' $ac_executable_extensions; do8391 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then8392 ac_cv_prog_ac_ct_LIPO="lipo"8393 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&58394 break 28395 fi8396 done8397 done8398 IFS=$as_save_IFS8399 8400 fi8401 fi8402 ac_ct_LIPO=$ac_cv_prog_ac_ct_LIPO8403 if test -n "$ac_ct_LIPO"; then8404 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_LIPO" >&58405 $as_echo "$ac_ct_LIPO" >&6; }8406 else8407 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&58408 $as_echo "no" >&6; }8409 fi8410 8411 if test "x$ac_ct_LIPO" = x; then8412 LIPO=":"8413 else8414 case $cross_compiling:$ac_tool_warned in8415 yes:)8416 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&58417 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}8418 ac_tool_warned=yes ;;8419 esac8420 LIPO=$ac_ct_LIPO8421 fi8422 else8423 LIPO="$ac_cv_prog_LIPO"8424 fi8425 8426 if test -n "$ac_tool_prefix"; then8427 # Extract the first word of "${ac_tool_prefix}otool", so it can be a program name with args.8428 set dummy ${ac_tool_prefix}otool; ac_word=$28429 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&58430 $as_echo_n "checking for $ac_word... " >&6; }8431 if ${ac_cv_prog_OTOOL+:} false; then :8432 $as_echo_n "(cached) " >&68433 else8434 if test -n "$OTOOL"; then8435 ac_cv_prog_OTOOL="$OTOOL" # Let the user override the test.8436 else8437 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR8438 for as_dir in $PATH8439 do8440 IFS=$as_save_IFS8441 test -z "$as_dir" && as_dir=.8442 for ac_exec_ext in '' $ac_executable_extensions; do8443 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then8444 ac_cv_prog_OTOOL="${ac_tool_prefix}otool"8445 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&58446 break 28447 fi8448 done8449 done8450 IFS=$as_save_IFS8451 8452 fi8453 fi8454 OTOOL=$ac_cv_prog_OTOOL8455 if test -n "$OTOOL"; then8456 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OTOOL" >&58457 $as_echo "$OTOOL" >&6; }8458 else8459 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&58460 $as_echo "no" >&6; }8461 fi8462 8463 8464 fi8465 if test -z "$ac_cv_prog_OTOOL"; then8466 ac_ct_OTOOL=$OTOOL8467 # Extract the first word of "otool", so it can be a program name with args.8468 set dummy otool; ac_word=$28469 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&58470 $as_echo_n "checking for $ac_word... " >&6; }8471 if ${ac_cv_prog_ac_ct_OTOOL+:} false; then :8472 $as_echo_n "(cached) " >&68473 else8474 if test -n "$ac_ct_OTOOL"; then8475 ac_cv_prog_ac_ct_OTOOL="$ac_ct_OTOOL" # Let the user override the test.8476 else8477 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR8478 for as_dir in $PATH8479 do8480 IFS=$as_save_IFS8481 test -z "$as_dir" && as_dir=.8482 for ac_exec_ext in '' $ac_executable_extensions; do8483 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then8484 ac_cv_prog_ac_ct_OTOOL="otool"8485 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&58486 break 28487 fi8488 done8489 done8490 IFS=$as_save_IFS8491 8492 fi8493 fi8494 ac_ct_OTOOL=$ac_cv_prog_ac_ct_OTOOL8495 if test -n "$ac_ct_OTOOL"; then8496 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OTOOL" >&58497 $as_echo "$ac_ct_OTOOL" >&6; }8498 else8499 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&58500 $as_echo "no" >&6; }8501 fi8502 8503 if test "x$ac_ct_OTOOL" = x; then8504 OTOOL=":"8505 else8506 case $cross_compiling:$ac_tool_warned in8507 yes:)8508 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&58509 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}8510 ac_tool_warned=yes ;;8511 esac8512 OTOOL=$ac_ct_OTOOL8513 fi8514 else8515 OTOOL="$ac_cv_prog_OTOOL"8516 fi8517 8518 if test -n "$ac_tool_prefix"; then8519 # Extract the first word of "${ac_tool_prefix}otool64", so it can be a program name with args.8520 set dummy ${ac_tool_prefix}otool64; ac_word=$28521 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&58522 $as_echo_n "checking for $ac_word... " >&6; }8523 if ${ac_cv_prog_OTOOL64+:} false; then :8524 $as_echo_n "(cached) " >&68525 else8526 if test -n "$OTOOL64"; then8527 ac_cv_prog_OTOOL64="$OTOOL64" # Let the user override the test.8528 else8529 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR8530 for as_dir in $PATH8531 do8532 IFS=$as_save_IFS8533 test -z "$as_dir" && as_dir=.8534 for ac_exec_ext in '' $ac_executable_extensions; do8535 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then8536 ac_cv_prog_OTOOL64="${ac_tool_prefix}otool64"8537 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&58538 break 28539 fi8540 done8541 done8542 IFS=$as_save_IFS8543 8544 fi8545 fi8546 OTOOL64=$ac_cv_prog_OTOOL648547 if test -n "$OTOOL64"; then8548 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OTOOL64" >&58549 $as_echo "$OTOOL64" >&6; }8550 else8551 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&58552 $as_echo "no" >&6; }8553 fi8554 8555 8556 fi8557 if test -z "$ac_cv_prog_OTOOL64"; then8558 ac_ct_OTOOL64=$OTOOL648559 # Extract the first word of "otool64", so it can be a program name with args.8560 set dummy otool64; ac_word=$28561 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&58562 $as_echo_n "checking for $ac_word... " >&6; }8563 if ${ac_cv_prog_ac_ct_OTOOL64+:} false; then :8564 $as_echo_n "(cached) " >&68565 else8566 if test -n "$ac_ct_OTOOL64"; then8567 ac_cv_prog_ac_ct_OTOOL64="$ac_ct_OTOOL64" # Let the user override the test.8568 else8569 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR8570 for as_dir in $PATH8571 do8572 IFS=$as_save_IFS8573 test -z "$as_dir" && as_dir=.8574 for ac_exec_ext in '' $ac_executable_extensions; do8575 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then8576 ac_cv_prog_ac_ct_OTOOL64="otool64"8577 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&58578 break 28579 fi8580 done8581 done8582 IFS=$as_save_IFS8583 8584 fi8585 fi8586 ac_ct_OTOOL64=$ac_cv_prog_ac_ct_OTOOL648587 if test -n "$ac_ct_OTOOL64"; then8588 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OTOOL64" >&58589 $as_echo "$ac_ct_OTOOL64" >&6; }8590 else8591 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&58592 $as_echo "no" >&6; }8593 fi8594 8595 if test "x$ac_ct_OTOOL64" = x; then8596 OTOOL64=":"8597 else8598 case $cross_compiling:$ac_tool_warned in8599 yes:)8600 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&58601 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}8602 ac_tool_warned=yes ;;8603 esac8604 OTOOL64=$ac_ct_OTOOL648605 fi8606 else8607 OTOOL64="$ac_cv_prog_OTOOL64"8608 fi8609 8610 8611 8612 8613 8614 8615 8616 8617 8618 8619 8620 8621 8622 8623 8624 8625 8626 8627 8628 8629 8630 8631 8632 8633 8634 8635 8636 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -single_module linker flag" >&58637 $as_echo_n "checking for -single_module linker flag... " >&6; }8638 if ${lt_cv_apple_cc_single_mod+:} false; then :8639 $as_echo_n "(cached) " >&68640 else8641 lt_cv_apple_cc_single_mod=no8642 if test -z "$LT_MULTI_MODULE"; then8643 # By default we will add the -single_module flag. You can override8644 # by either setting the environment variable LT_MULTI_MODULE8645 # non-empty at configure time, or by adding -multi_module to the8646 # link flags.8647 rm -rf libconftest.dylib*8648 echo "int foo(void){return 1;}" > conftest.c8649 echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \8650 -dynamiclib -Wl,-single_module conftest.c" >&58651 $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \8652 -dynamiclib -Wl,-single_module conftest.c 2>conftest.err8653 _lt_result=$?8654 # If there is a non-empty error log, and "single_module"8655 # appears in it, assume the flag caused a linker warning8656 if test -s conftest.err && $GREP single_module conftest.err; then8657 cat conftest.err >&58658 # Otherwise, if the output was created with a 0 exit code from8659 # the compiler, it worked.8660 elif test -f libconftest.dylib && test 0 = "$_lt_result"; then8661 lt_cv_apple_cc_single_mod=yes8662 else8663 cat conftest.err >&58664 fi8665 rm -rf libconftest.dylib*8666 rm -f conftest.*8667 fi8668 fi8669 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_apple_cc_single_mod" >&58670 $as_echo "$lt_cv_apple_cc_single_mod" >&6; }8671 8672 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -exported_symbols_list linker flag" >&58673 $as_echo_n "checking for -exported_symbols_list linker flag... " >&6; }8674 if ${lt_cv_ld_exported_symbols_list+:} false; then :8675 $as_echo_n "(cached) " >&68676 else8677 lt_cv_ld_exported_symbols_list=no8678 save_LDFLAGS=$LDFLAGS8679 echo "_main" > conftest.sym8680 LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym"8681 cat confdefs.h - <<_ACEOF >conftest.$ac_ext8682 /* end confdefs.h. */8683 8684 int8685 main ()8686 {8687 8688 ;8689 return 0;8690 }8691 _ACEOF8692 if ac_fn_c_try_link "$LINENO"; then :8693 lt_cv_ld_exported_symbols_list=yes8694 else8695 lt_cv_ld_exported_symbols_list=no8696 fi8697 rm -f core conftest.err conftest.$ac_objext \8698 conftest$ac_exeext conftest.$ac_ext8699 LDFLAGS=$save_LDFLAGS8700 8701 fi8702 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_exported_symbols_list" >&58703 $as_echo "$lt_cv_ld_exported_symbols_list" >&6; }8704 8705 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -force_load linker flag" >&58706 $as_echo_n "checking for -force_load linker flag... " >&6; }8707 if ${lt_cv_ld_force_load+:} false; then :8708 $as_echo_n "(cached) " >&68709 else8710 lt_cv_ld_force_load=no8711 cat > conftest.c << _LT_EOF8712 int forced_loaded() { return 2;}8713 _LT_EOF8714 echo "$LTCC $LTCFLAGS -c -o conftest.o conftest.c" >&58715 $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&58716 echo "$AR cru libconftest.a conftest.o" >&58717 $AR cru libconftest.a conftest.o 2>&58718 echo "$RANLIB libconftest.a" >&58719 $RANLIB libconftest.a 2>&58720 cat > conftest.c << _LT_EOF8721 int main() { return 0;}8722 _LT_EOF8723 echo "$LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a" >&58724 $LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a 2>conftest.err8725 _lt_result=$?8726 if test -s conftest.err && $GREP force_load conftest.err; then8727 cat conftest.err >&58728 elif test -f conftest && test 0 = "$_lt_result" && $GREP forced_load conftest >/dev/null 2>&1; then8729 lt_cv_ld_force_load=yes8730 else8731 cat conftest.err >&58732 fi8733 rm -f conftest.err libconftest.a conftest conftest.c8734 rm -rf conftest.dSYM8735 8736 fi8737 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_force_load" >&58738 $as_echo "$lt_cv_ld_force_load" >&6; }8739 case $host_os in8740 rhapsody* | darwin1.[012])8741 _lt_dar_allow_undefined='$wl-undefined ${wl}suppress' ;;8742 darwin1.*)8743 _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;;8744 darwin*) # darwin 5.x on8745 # if running on 10.5 or later, the deployment target defaults8746 # to the OS version, if on x86, and 10.4, the deployment8747 # target defaults to 10.4. Don't you love it?8748 case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in8749 10.0,*86*-darwin8*|10.0,*-darwin[91]*)8750 _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;;8751 10.[012][,.]*)8752 _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;;8753 10.*)8754 _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;;8755 esac8756 ;;8757 esac8758 if test yes = "$lt_cv_apple_cc_single_mod"; then8759 _lt_dar_single_mod='$single_module'8760 fi8761 if test yes = "$lt_cv_ld_exported_symbols_list"; then8762 _lt_dar_export_syms=' $wl-exported_symbols_list,$output_objdir/$libname-symbols.expsym'8763 else8764 _lt_dar_export_syms='~$NMEDIT -s $output_objdir/$libname-symbols.expsym $lib'8765 fi8766 if test : != "$DSYMUTIL" && test no = "$lt_cv_ld_force_load"; then8767 _lt_dsymutil='~$DSYMUTIL $lib || :'8768 else8769 _lt_dsymutil=8770 fi8771 ;;8772 esac8773 8774 # func_munge_path_list VARIABLE PATH8775 # -----------------------------------8776 # VARIABLE is name of variable containing _space_ separated list of8777 # directories to be munged by the contents of PATH, which is string8778 # having a format:8779 # "DIR[:DIR]:"8780 # string "DIR[ DIR]" will be prepended to VARIABLE8781 # ":DIR[:DIR]"8782 # string "DIR[ DIR]" will be appended to VARIABLE8783 # "DIRP[:DIRP]::[DIRA:]DIRA"8784 # string "DIRP[ DIRP]" will be prepended to VARIABLE and string8785 # "DIRA[ DIRA]" will be appended to VARIABLE8786 # "DIR[:DIR]"8787 # VARIABLE will be replaced by "DIR[ DIR]"8788 func_munge_path_list ()8789 {8790 case x$2 in8791 x)8792 ;;8793 *:)8794 eval $1=\"`$ECHO $2 | $SED 's/:/ /g'` \$$1\"8795 ;;8796 x:*)8797 eval $1=\"\$$1 `$ECHO $2 | $SED 's/:/ /g'`\"8798 ;;8799 *::*)8800 eval $1=\"\$$1\ `$ECHO $2 | $SED -e 's/.*:://' -e 's/:/ /g'`\"8801 eval $1=\"`$ECHO $2 | $SED -e 's/::.*//' -e 's/:/ /g'`\ \$$1\"8802 ;;8803 *)8804 eval $1=\"`$ECHO $2 | $SED 's/:/ /g'`\"8805 ;;8806 esac8807 }8808 8809 ac_ext=c8810 ac_cpp='$CPP $CPPFLAGS'8811 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'8812 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'8813 ac_compiler_gnu=$ac_cv_c_compiler_gnu8814 { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&58815 $as_echo_n "checking how to run the C preprocessor... " >&6; }8816 # On Suns, sometimes $CPP names a directory.8817 if test -n "$CPP" && test -d "$CPP"; then8818 CPP=8819 fi8820 if test -z "$CPP"; then8821 if ${ac_cv_prog_CPP+:} false; then :8822 $as_echo_n "(cached) " >&68823 else8824 # Double quotes because CPP needs to be expanded8825 for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp"8826 do8827 ac_preproc_ok=false8828 for ac_c_preproc_warn_flag in '' yes8829 do8830 # Use a header file that comes with gcc, so configuring glibc8831 # with a fresh cross-compiler works.8832 # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since8833 # <limits.h> exists even on freestanding compilers.8834 # On the NeXT, cc -E runs the code through the compiler's parser,8835 # not just through cpp. "Syntax error" is here to catch this case.8836 cat confdefs.h - <<_ACEOF >conftest.$ac_ext8837 /* end confdefs.h. */8838 #ifdef __STDC__8839 # include <limits.h>8840 #else8841 # include <assert.h>8842 #endif8843 Syntax error8844 _ACEOF8845 if ac_fn_c_try_cpp "$LINENO"; then :8846 8847 else8848 # Broken: fails on valid input.8849 continue8850 fi8851 rm -f conftest.err conftest.i conftest.$ac_ext8852 8853 # OK, works on sane cases. Now check whether nonexistent headers8854 # can be detected and how.8855 cat confdefs.h - <<_ACEOF >conftest.$ac_ext8856 /* end confdefs.h. */8857 #include <ac_nonexistent.h>8858 _ACEOF8859 if ac_fn_c_try_cpp "$LINENO"; then :8860 # Broken: success on invalid input.8861 continue8862 else8863 # Passes both tests.8864 ac_preproc_ok=:8865 break8866 fi8867 rm -f conftest.err conftest.i conftest.$ac_ext8868 8869 done8870 # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.8871 rm -f conftest.i conftest.err conftest.$ac_ext8872 if $ac_preproc_ok; then :8873 break8874 fi8875 8876 done8877 ac_cv_prog_CPP=$CPP8878 8879 fi8880 CPP=$ac_cv_prog_CPP8881 else8882 ac_cv_prog_CPP=$CPP8883 fi8884 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CPP" >&58885 $as_echo "$CPP" >&6; }8886 ac_preproc_ok=false8887 for ac_c_preproc_warn_flag in '' yes8888 do8889 # Use a header file that comes with gcc, so configuring glibc8890 # with a fresh cross-compiler works.8891 # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since8892 # <limits.h> exists even on freestanding compilers.8893 # On the NeXT, cc -E runs the code through the compiler's parser,8894 # not just through cpp. "Syntax error" is here to catch this case.8895 cat confdefs.h - <<_ACEOF >conftest.$ac_ext8896 /* end confdefs.h. */8897 #ifdef __STDC__8898 # include <limits.h>8899 #else8900 # include <assert.h>8901 #endif8902 Syntax error8903 _ACEOF8904 if ac_fn_c_try_cpp "$LINENO"; then :8905 8906 else8907 # Broken: fails on valid input.8908 continue8909 fi8910 rm -f conftest.err conftest.i conftest.$ac_ext8911 8912 # OK, works on sane cases. Now check whether nonexistent headers8913 # can be detected and how.8914 cat confdefs.h - <<_ACEOF >conftest.$ac_ext8915 /* end confdefs.h. */8916 #include <ac_nonexistent.h>8917 _ACEOF8918 if ac_fn_c_try_cpp "$LINENO"; then :8919 # Broken: success on invalid input.8920 continue8921 else8922 # Passes both tests.8923 ac_preproc_ok=:8924 break8925 fi8926 rm -f conftest.err conftest.i conftest.$ac_ext8927 8928 done8929 # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.8930 rm -f conftest.i conftest.err conftest.$ac_ext8931 if $ac_preproc_ok; then :8932 8933 else8934 { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&58935 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}8936 as_fn_error $? "C preprocessor \"$CPP\" fails sanity check8937 See \`config.log' for more details" "$LINENO" 5; }8938 fi8939 8940 ac_ext=c8941 ac_cpp='$CPP $CPPFLAGS'8942 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'8943 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'8944 ac_compiler_gnu=$ac_cv_c_compiler_gnu8945 8946 8947 5763 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5 8948 5764 $as_echo_n "checking for ANSI C header files... " >&6; } … … 9074 5890 9075 5891 9076 for ac_header in dlfcn.h9077 do :9078 ac_fn_c_check_header_compile "$LINENO" "dlfcn.h" "ac_cv_header_dlfcn_h" "$ac_includes_default9079 "9080 if test "x$ac_cv_header_dlfcn_h" = xyes; then :9081 cat >>confdefs.h <<_ACEOF9082 #define HAVE_DLFCN_H 19083 _ACEOF9084 9085 fi9086 9087 done9088 9089 9090 9091 9092 func_stripname_cnf ()9093 {9094 case $2 in9095 .*) func_stripname_result=`$ECHO "$3" | $SED "s%^$1%%; s%\\\\$2\$%%"`;;9096 *) func_stripname_result=`$ECHO "$3" | $SED "s%^$1%%; s%$2\$%%"`;;9097 esac9098 } # func_stripname_cnf9099 9100 9101 9102 9103 9104 # Set options9105 9106 9107 9108 enable_dlopen=no9109 9110 9111 enable_win32_dll=no9112 9113 9114 # Check whether --enable-shared was given.9115 if test "${enable_shared+set}" = set; then :9116 enableval=$enable_shared; p=${PACKAGE-default}9117 case $enableval in9118 yes) enable_shared=yes ;;9119 no) enable_shared=no ;;9120 *)9121 enable_shared=no9122 # Look at the argument we got. We use all the common list separators.9123 lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,9124 for pkg in $enableval; do9125 IFS=$lt_save_ifs9126 if test "X$pkg" = "X$p"; then9127 enable_shared=yes9128 fi9129 done9130 IFS=$lt_save_ifs9131 ;;9132 esac9133 else9134 enable_shared=yes9135 fi9136 9137 9138 9139 9140 9141 9142 9143 9144 9145 # Check whether --enable-static was given.9146 if test "${enable_static+set}" = set; then :9147 enableval=$enable_static; p=${PACKAGE-default}9148 case $enableval in9149 yes) enable_static=yes ;;9150 no) enable_static=no ;;9151 *)9152 enable_static=no9153 # Look at the argument we got. We use all the common list separators.9154 lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,9155 for pkg in $enableval; do9156 IFS=$lt_save_ifs9157 if test "X$pkg" = "X$p"; then9158 enable_static=yes9159 fi9160 done9161 IFS=$lt_save_ifs9162 ;;9163 esac9164 else9165 enable_static=yes9166 fi9167 9168 9169 9170 9171 9172 9173 9174 9175 9176 9177 # Check whether --with-pic was given.9178 if test "${with_pic+set}" = set; then :9179 withval=$with_pic; lt_p=${PACKAGE-default}9180 case $withval in9181 yes|no) pic_mode=$withval ;;9182 *)9183 pic_mode=default9184 # Look at the argument we got. We use all the common list separators.9185 lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,9186 for lt_pkg in $withval; do9187 IFS=$lt_save_ifs9188 if test "X$lt_pkg" = "X$lt_p"; then9189 pic_mode=yes9190 fi9191 done9192 IFS=$lt_save_ifs9193 ;;9194 esac9195 else9196 pic_mode=default9197 fi9198 9199 9200 9201 9202 9203 9204 9205 9206 # Check whether --enable-fast-install was given.9207 if test "${enable_fast_install+set}" = set; then :9208 enableval=$enable_fast_install; p=${PACKAGE-default}9209 case $enableval in9210 yes) enable_fast_install=yes ;;9211 no) enable_fast_install=no ;;9212 *)9213 enable_fast_install=no9214 # Look at the argument we got. We use all the common list separators.9215 lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,9216 for pkg in $enableval; do9217 IFS=$lt_save_ifs9218 if test "X$pkg" = "X$p"; then9219 enable_fast_install=yes9220 fi9221 done9222 IFS=$lt_save_ifs9223 ;;9224 esac9225 else9226 enable_fast_install=yes9227 fi9228 9229 9230 9231 9232 9233 9234 9235 9236 shared_archive_member_spec=9237 case $host,$enable_shared in9238 power*-*-aix[5-9]*,yes)9239 { $as_echo "$as_me:${as_lineno-$LINENO}: checking which variant of shared library versioning to provide" >&59240 $as_echo_n "checking which variant of shared library versioning to provide... " >&6; }9241 9242 # Check whether --with-aix-soname was given.9243 if test "${with_aix_soname+set}" = set; then :9244 withval=$with_aix_soname; case $withval in9245 aix|svr4|both)9246 ;;9247 *)9248 as_fn_error $? "Unknown argument to --with-aix-soname" "$LINENO" 59249 ;;9250 esac9251 lt_cv_with_aix_soname=$with_aix_soname9252 else9253 if ${lt_cv_with_aix_soname+:} false; then :9254 $as_echo_n "(cached) " >&69255 else9256 lt_cv_with_aix_soname=aix9257 fi9258 9259 with_aix_soname=$lt_cv_with_aix_soname9260 fi9261 9262 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_aix_soname" >&59263 $as_echo "$with_aix_soname" >&6; }9264 if test aix != "$with_aix_soname"; then9265 # For the AIX way of multilib, we name the shared archive member9266 # based on the bitwidth used, traditionally 'shr.o' or 'shr_64.o',9267 # and 'shr.imp' or 'shr_64.imp', respectively, for the Import File.9268 # Even when GNU compilers ignore OBJECT_MODE but need '-maix64' flag,9269 # the AIX toolchain works better with OBJECT_MODE set (default 32).9270 if test 64 = "${OBJECT_MODE-32}"; then9271 shared_archive_member_spec=shr_649272 else9273 shared_archive_member_spec=shr9274 fi9275 fi9276 ;;9277 *)9278 with_aix_soname=aix9279 ;;9280 esac9281 9282 9283 9284 9285 9286 9287 9288 9289 9290 9291 # This can be used to rebuild libtool when needed9292 LIBTOOL_DEPS=$ltmain9293 9294 # Always use our own libtool.9295 LIBTOOL='$(SHELL) $(top_builddir)/libtool'9296 9297 9298 9299 9300 9301 9302 9303 9304 9305 9306 9307 9308 9309 9310 9311 9312 9313 9314 9315 9316 9317 9318 9319 9320 9321 9322 9323 9324 9325 9326 test -z "$LN_S" && LN_S="ln -s"9327 9328 9329 9330 9331 9332 9333 9334 9335 9336 9337 9338 9339 9340 9341 if test -n "${ZSH_VERSION+set}"; then9342 setopt NO_GLOB_SUBST9343 fi9344 9345 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for objdir" >&59346 $as_echo_n "checking for objdir... " >&6; }9347 if ${lt_cv_objdir+:} false; then :9348 $as_echo_n "(cached) " >&69349 else9350 rm -f .libs 2>/dev/null9351 mkdir .libs 2>/dev/null9352 if test -d .libs; then9353 lt_cv_objdir=.libs9354 else9355 # MS-DOS does not allow filenames that begin with a dot.9356 lt_cv_objdir=_libs9357 fi9358 rmdir .libs 2>/dev/null9359 fi9360 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_objdir" >&59361 $as_echo "$lt_cv_objdir" >&6; }9362 objdir=$lt_cv_objdir9363 9364 9365 9366 9367 9368 cat >>confdefs.h <<_ACEOF9369 #define LT_OBJDIR "$lt_cv_objdir/"9370 _ACEOF9371 9372 9373 9374 9375 case $host_os in9376 aix3*)9377 # AIX sometimes has problems with the GCC collect2 program. For some9378 # reason, if we set the COLLECT_NAMES environment variable, the problems9379 # vanish in a puff of smoke.9380 if test set != "${COLLECT_NAMES+set}"; then9381 COLLECT_NAMES=9382 export COLLECT_NAMES9383 fi9384 ;;9385 esac9386 9387 # Global variables:9388 ofile=libtool9389 can_build_shared=yes9390 9391 # All known linkers require a '.a' archive for static linking (except MSVC,9392 # which needs '.lib').9393 libext=a9394 9395 with_gnu_ld=$lt_cv_prog_gnu_ld9396 9397 old_CC=$CC9398 old_CFLAGS=$CFLAGS9399 9400 # Set sane defaults for various variables9401 test -z "$CC" && CC=cc9402 test -z "$LTCC" && LTCC=$CC9403 test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS9404 test -z "$LD" && LD=ld9405 test -z "$ac_objext" && ac_objext=o9406 9407 func_cc_basename $compiler9408 cc_basename=$func_cc_basename_result9409 9410 9411 # Only perform the check for file, if the check method requires it9412 test -z "$MAGIC_CMD" && MAGIC_CMD=file9413 case $deplibs_check_method in9414 file_magic*)9415 if test "$file_magic_cmd" = '$MAGIC_CMD'; then9416 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ${ac_tool_prefix}file" >&59417 $as_echo_n "checking for ${ac_tool_prefix}file... " >&6; }9418 if ${lt_cv_path_MAGIC_CMD+:} false; then :9419 $as_echo_n "(cached) " >&69420 else9421 case $MAGIC_CMD in9422 [\\/*] | ?:[\\/]*)9423 lt_cv_path_MAGIC_CMD=$MAGIC_CMD # Let the user override the test with a path.9424 ;;9425 *)9426 lt_save_MAGIC_CMD=$MAGIC_CMD9427 lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR9428 ac_dummy="/usr/bin$PATH_SEPARATOR$PATH"9429 for ac_dir in $ac_dummy; do9430 IFS=$lt_save_ifs9431 test -z "$ac_dir" && ac_dir=.9432 if test -f "$ac_dir/${ac_tool_prefix}file"; then9433 lt_cv_path_MAGIC_CMD=$ac_dir/"${ac_tool_prefix}file"9434 if test -n "$file_magic_test_file"; then9435 case $deplibs_check_method in9436 "file_magic "*)9437 file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`9438 MAGIC_CMD=$lt_cv_path_MAGIC_CMD9439 if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |9440 $EGREP "$file_magic_regex" > /dev/null; then9441 :9442 else9443 cat <<_LT_EOF 1>&29444 9445 *** Warning: the command libtool uses to detect shared libraries,9446 *** $file_magic_cmd, produces output that libtool cannot recognize.9447 *** The result is that libtool may fail to recognize shared libraries9448 *** as such. This will affect the creation of libtool libraries that9449 *** depend on shared libraries, but programs linked with such libtool9450 *** libraries will work regardless of this problem. Nevertheless, you9451 *** may want to report the problem to your system manager and/or to9452 *** bug-libtool@gnu.org9453 9454 _LT_EOF9455 fi ;;9456 esac9457 fi9458 break9459 fi9460 done9461 IFS=$lt_save_ifs9462 MAGIC_CMD=$lt_save_MAGIC_CMD9463 ;;9464 esac9465 fi9466 9467 MAGIC_CMD=$lt_cv_path_MAGIC_CMD9468 if test -n "$MAGIC_CMD"; then9469 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&59470 $as_echo "$MAGIC_CMD" >&6; }9471 else9472 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&59473 $as_echo "no" >&6; }9474 fi9475 9476 9477 9478 9479 9480 if test -z "$lt_cv_path_MAGIC_CMD"; then9481 if test -n "$ac_tool_prefix"; then9482 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for file" >&59483 $as_echo_n "checking for file... " >&6; }9484 if ${lt_cv_path_MAGIC_CMD+:} false; then :9485 $as_echo_n "(cached) " >&69486 else9487 case $MAGIC_CMD in9488 [\\/*] | ?:[\\/]*)9489 lt_cv_path_MAGIC_CMD=$MAGIC_CMD # Let the user override the test with a path.9490 ;;9491 *)9492 lt_save_MAGIC_CMD=$MAGIC_CMD9493 lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR9494 ac_dummy="/usr/bin$PATH_SEPARATOR$PATH"9495 for ac_dir in $ac_dummy; do9496 IFS=$lt_save_ifs9497 test -z "$ac_dir" && ac_dir=.9498 if test -f "$ac_dir/file"; then9499 lt_cv_path_MAGIC_CMD=$ac_dir/"file"9500 if test -n "$file_magic_test_file"; then9501 case $deplibs_check_method in9502 "file_magic "*)9503 file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`9504 MAGIC_CMD=$lt_cv_path_MAGIC_CMD9505 if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |9506 $EGREP "$file_magic_regex" > /dev/null; then9507 :9508 else9509 cat <<_LT_EOF 1>&29510 9511 *** Warning: the command libtool uses to detect shared libraries,9512 *** $file_magic_cmd, produces output that libtool cannot recognize.9513 *** The result is that libtool may fail to recognize shared libraries9514 *** as such. This will affect the creation of libtool libraries that9515 *** depend on shared libraries, but programs linked with such libtool9516 *** libraries will work regardless of this problem. Nevertheless, you9517 *** may want to report the problem to your system manager and/or to9518 *** bug-libtool@gnu.org9519 9520 _LT_EOF9521 fi ;;9522 esac9523 fi9524 break9525 fi9526 done9527 IFS=$lt_save_ifs9528 MAGIC_CMD=$lt_save_MAGIC_CMD9529 ;;9530 esac9531 fi9532 9533 MAGIC_CMD=$lt_cv_path_MAGIC_CMD9534 if test -n "$MAGIC_CMD"; then9535 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&59536 $as_echo "$MAGIC_CMD" >&6; }9537 else9538 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&59539 $as_echo "no" >&6; }9540 fi9541 9542 9543 else9544 MAGIC_CMD=:9545 fi9546 fi9547 9548 fi9549 ;;9550 esac9551 9552 # Use C for the default configuration in the libtool script9553 9554 lt_save_CC=$CC9555 ac_ext=c9556 ac_cpp='$CPP $CPPFLAGS'9557 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'9558 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'9559 ac_compiler_gnu=$ac_cv_c_compiler_gnu9560 9561 9562 # Source file extension for C test sources.9563 ac_ext=c9564 9565 # Object file extension for compiled C test sources.9566 objext=o9567 objext=$objext9568 9569 # Code to be used in simple compile tests9570 lt_simple_compile_test_code="int some_variable = 0;"9571 9572 # Code to be used in simple link tests9573 lt_simple_link_test_code='int main(){return(0);}'9574 9575 9576 9577 9578 9579 9580 9581 # If no C compiler was specified, use CC.9582 LTCC=${LTCC-"$CC"}9583 9584 # If no C compiler flags were specified, use CFLAGS.9585 LTCFLAGS=${LTCFLAGS-"$CFLAGS"}9586 9587 # Allow CC to be a program name with arguments.9588 compiler=$CC9589 9590 # Save the default compiler, since it gets overwritten when the other9591 # tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP.9592 compiler_DEFAULT=$CC9593 9594 # save warnings/boilerplate of simple test code9595 ac_outfile=conftest.$ac_objext9596 echo "$lt_simple_compile_test_code" >conftest.$ac_ext9597 eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err9598 _lt_compiler_boilerplate=`cat conftest.err`9599 $RM conftest*9600 9601 ac_outfile=conftest.$ac_objext9602 echo "$lt_simple_link_test_code" >conftest.$ac_ext9603 eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err9604 _lt_linker_boilerplate=`cat conftest.err`9605 $RM -r conftest*9606 9607 9608 ## CAVEAT EMPTOR:9609 ## There is no encapsulation within the following macros, do not change9610 ## the running order or otherwise move them around unless you know exactly9611 ## what you are doing...9612 if test -n "$compiler"; then9613 9614 lt_prog_compiler_no_builtin_flag=9615 9616 if test yes = "$GCC"; then9617 case $cc_basename in9618 nvcc*)9619 lt_prog_compiler_no_builtin_flag=' -Xcompiler -fno-builtin' ;;9620 *)9621 lt_prog_compiler_no_builtin_flag=' -fno-builtin' ;;9622 esac9623 9624 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -fno-rtti -fno-exceptions" >&59625 $as_echo_n "checking if $compiler supports -fno-rtti -fno-exceptions... " >&6; }9626 if ${lt_cv_prog_compiler_rtti_exceptions+:} false; then :9627 $as_echo_n "(cached) " >&69628 else9629 lt_cv_prog_compiler_rtti_exceptions=no9630 ac_outfile=conftest.$ac_objext9631 echo "$lt_simple_compile_test_code" > conftest.$ac_ext9632 lt_compiler_flag="-fno-rtti -fno-exceptions" ## exclude from sc_useless_quotes_in_assignment9633 # Insert the option either (1) after the last *FLAGS variable, or9634 # (2) before a word containing "conftest.", or (3) at the end.9635 # Note that $ac_compile itself does not contain backslashes and begins9636 # with a dollar sign (not a hyphen), so the echo should work correctly.9637 # The option is referenced via a variable to avoid confusing sed.9638 lt_compile=`echo "$ac_compile" | $SED \9639 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \9640 -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \9641 -e 's:$: $lt_compiler_flag:'`9642 (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5)9643 (eval "$lt_compile" 2>conftest.err)9644 ac_status=$?9645 cat conftest.err >&59646 echo "$as_me:$LINENO: \$? = $ac_status" >&59647 if (exit $ac_status) && test -s "$ac_outfile"; then9648 # The compiler can only warn and ignore the option if not recognized9649 # So say no if there are warnings other than the usual output.9650 $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp9651 $SED '/^$/d; /^ *+/d' conftest.err >conftest.er29652 if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then9653 lt_cv_prog_compiler_rtti_exceptions=yes9654 fi9655 fi9656 $RM conftest*9657 9658 fi9659 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_rtti_exceptions" >&59660 $as_echo "$lt_cv_prog_compiler_rtti_exceptions" >&6; }9661 9662 if test yes = "$lt_cv_prog_compiler_rtti_exceptions"; then9663 lt_prog_compiler_no_builtin_flag="$lt_prog_compiler_no_builtin_flag -fno-rtti -fno-exceptions"9664 else9665 :9666 fi9667 9668 fi9669 9670 9671 9672 9673 9674 9675 lt_prog_compiler_wl=9676 lt_prog_compiler_pic=9677 lt_prog_compiler_static=9678 9679 9680 if test yes = "$GCC"; then9681 lt_prog_compiler_wl='-Wl,'9682 lt_prog_compiler_static='-static'9683 9684 case $host_os in9685 aix*)9686 # All AIX code is PIC.9687 if test ia64 = "$host_cpu"; then9688 # AIX 5 now supports IA64 processor9689 lt_prog_compiler_static='-Bstatic'9690 fi9691 lt_prog_compiler_pic='-fPIC'9692 ;;9693 9694 amigaos*)9695 case $host_cpu in9696 powerpc)9697 # see comment about AmigaOS4 .so support9698 lt_prog_compiler_pic='-fPIC'9699 ;;9700 m68k)9701 # FIXME: we need at least 68020 code to build shared libraries, but9702 # adding the '-m68020' flag to GCC prevents building anything better,9703 # like '-m68040'.9704 lt_prog_compiler_pic='-m68020 -resident32 -malways-restore-a4'9705 ;;9706 esac9707 ;;9708 9709 beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)9710 # PIC is the default for these OSes.9711 ;;9712 9713 mingw* | cygwin* | pw32* | os2* | cegcc*)9714 # This hack is so that the source file can tell whether it is being9715 # built for inclusion in a dll (and should export symbols for example).9716 # Although the cygwin gcc ignores -fPIC, still need this for old-style9717 # (--disable-auto-import) libraries9718 lt_prog_compiler_pic='-DDLL_EXPORT'9719 case $host_os in9720 os2*)9721 lt_prog_compiler_static='$wl-static'9722 ;;9723 esac9724 ;;9725 9726 darwin* | rhapsody*)9727 # PIC is the default on this platform9728 # Common symbols not allowed in MH_DYLIB files9729 lt_prog_compiler_pic='-fno-common'9730 ;;9731 9732 haiku*)9733 # PIC is the default for Haiku.9734 # The "-static" flag exists, but is broken.9735 lt_prog_compiler_static=9736 ;;9737 9738 hpux*)9739 # PIC is the default for 64-bit PA HP-UX, but not for 32-bit9740 # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag9741 # sets the default TLS model and affects inlining.9742 case $host_cpu in9743 hppa*64*)9744 # +Z the default9745 ;;9746 *)9747 lt_prog_compiler_pic='-fPIC'9748 ;;9749 esac9750 ;;9751 9752 interix[3-9]*)9753 # Interix 3.x gcc -fpic/-fPIC options generate broken code.9754 # Instead, we relocate shared libraries at runtime.9755 ;;9756 9757 msdosdjgpp*)9758 # Just because we use GCC doesn't mean we suddenly get shared libraries9759 # on systems that don't support them.9760 lt_prog_compiler_can_build_shared=no9761 enable_shared=no9762 ;;9763 9764 *nto* | *qnx*)9765 # QNX uses GNU C++, but need to define -shared option too, otherwise9766 # it will coredump.9767 lt_prog_compiler_pic='-fPIC -shared'9768 ;;9769 9770 sysv4*MP*)9771 if test -d /usr/nec; then9772 lt_prog_compiler_pic=-Kconform_pic9773 fi9774 ;;9775 9776 *)9777 lt_prog_compiler_pic='-fPIC'9778 ;;9779 esac9780 9781 case $cc_basename in9782 nvcc*) # Cuda Compiler Driver 2.29783 lt_prog_compiler_wl='-Xlinker '9784 if test -n "$lt_prog_compiler_pic"; then9785 lt_prog_compiler_pic="-Xcompiler $lt_prog_compiler_pic"9786 fi9787 ;;9788 esac9789 else9790 # PORTME Check for flag to pass linker flags through the system compiler.9791 case $host_os in9792 aix*)9793 lt_prog_compiler_wl='-Wl,'9794 if test ia64 = "$host_cpu"; then9795 # AIX 5 now supports IA64 processor9796 lt_prog_compiler_static='-Bstatic'9797 else9798 lt_prog_compiler_static='-bnso -bI:/lib/syscalls.exp'9799 fi9800 ;;9801 9802 darwin* | rhapsody*)9803 # PIC is the default on this platform9804 # Common symbols not allowed in MH_DYLIB files9805 lt_prog_compiler_pic='-fno-common'9806 case $cc_basename in9807 nagfor*)9808 # NAG Fortran compiler9809 lt_prog_compiler_wl='-Wl,-Wl,,'9810 lt_prog_compiler_pic='-PIC'9811 lt_prog_compiler_static='-Bstatic'9812 ;;9813 esac9814 ;;9815 9816 mingw* | cygwin* | pw32* | os2* | cegcc*)9817 # This hack is so that the source file can tell whether it is being9818 # built for inclusion in a dll (and should export symbols for example).9819 lt_prog_compiler_pic='-DDLL_EXPORT'9820 case $host_os in9821 os2*)9822 lt_prog_compiler_static='$wl-static'9823 ;;9824 esac9825 ;;9826 9827 hpux9* | hpux10* | hpux11*)9828 lt_prog_compiler_wl='-Wl,'9829 # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but9830 # not for PA HP-UX.9831 case $host_cpu in9832 hppa*64*|ia64*)9833 # +Z the default9834 ;;9835 *)9836 lt_prog_compiler_pic='+Z'9837 ;;9838 esac9839 # Is there a better lt_prog_compiler_static that works with the bundled CC?9840 lt_prog_compiler_static='$wl-a ${wl}archive'9841 ;;9842 9843 irix5* | irix6* | nonstopux*)9844 lt_prog_compiler_wl='-Wl,'9845 # PIC (with -KPIC) is the default.9846 lt_prog_compiler_static='-non_shared'9847 ;;9848 9849 linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)9850 case $cc_basename in9851 # old Intel for x86_64, which still supported -KPIC.9852 ecc*)9853 lt_prog_compiler_wl='-Wl,'9854 lt_prog_compiler_pic='-KPIC'9855 lt_prog_compiler_static='-static'9856 ;;9857 # icc used to be incompatible with GCC.9858 # ICC 10 doesn't accept -KPIC any more.9859 icc* | ifort*)9860 lt_prog_compiler_wl='-Wl,'9861 lt_prog_compiler_pic='-fPIC'9862 lt_prog_compiler_static='-static'9863 ;;9864 # Lahey Fortran 8.1.9865 lf95*)9866 lt_prog_compiler_wl='-Wl,'9867 lt_prog_compiler_pic='--shared'9868 lt_prog_compiler_static='--static'9869 ;;9870 nagfor*)9871 # NAG Fortran compiler9872 lt_prog_compiler_wl='-Wl,-Wl,,'9873 lt_prog_compiler_pic='-PIC'9874 lt_prog_compiler_static='-Bstatic'9875 ;;9876 tcc*)9877 # Fabrice Bellard et al's Tiny C Compiler9878 lt_prog_compiler_wl='-Wl,'9879 lt_prog_compiler_pic='-fPIC'9880 lt_prog_compiler_static='-static'9881 ;;9882 pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*)9883 # Portland Group compilers (*not* the Pentium gcc compiler,9884 # which looks to be a dead project)9885 lt_prog_compiler_wl='-Wl,'9886 lt_prog_compiler_pic='-fpic'9887 lt_prog_compiler_static='-Bstatic'9888 ;;9889 ccc*)9890 lt_prog_compiler_wl='-Wl,'9891 # All Alpha code is PIC.9892 lt_prog_compiler_static='-non_shared'9893 ;;9894 xl* | bgxl* | bgf* | mpixl*)9895 # IBM XL C 8.0/Fortran 10.1, 11.1 on PPC and BlueGene9896 lt_prog_compiler_wl='-Wl,'9897 lt_prog_compiler_pic='-qpic'9898 lt_prog_compiler_static='-qstaticlink'9899 ;;9900 *)9901 case `$CC -V 2>&1 | sed 5q` in9902 *Sun\ Ceres\ Fortran* | *Sun*Fortran*\ [1-7].* | *Sun*Fortran*\ 8.[0-3]*)9903 # Sun Fortran 8.3 passes all unrecognized flags to the linker9904 lt_prog_compiler_pic='-KPIC'9905 lt_prog_compiler_static='-Bstatic'9906 lt_prog_compiler_wl=''9907 ;;9908 *Sun\ F* | *Sun*Fortran*)9909 lt_prog_compiler_pic='-KPIC'9910 lt_prog_compiler_static='-Bstatic'9911 lt_prog_compiler_wl='-Qoption ld '9912 ;;9913 *Sun\ C*)9914 # Sun C 5.99915 lt_prog_compiler_pic='-KPIC'9916 lt_prog_compiler_static='-Bstatic'9917 lt_prog_compiler_wl='-Wl,'9918 ;;9919 *Intel*\ [CF]*Compiler*)9920 lt_prog_compiler_wl='-Wl,'9921 lt_prog_compiler_pic='-fPIC'9922 lt_prog_compiler_static='-static'9923 ;;9924 *Portland\ Group*)9925 lt_prog_compiler_wl='-Wl,'9926 lt_prog_compiler_pic='-fpic'9927 lt_prog_compiler_static='-Bstatic'9928 ;;9929 esac9930 ;;9931 esac9932 ;;9933 9934 newsos6)9935 lt_prog_compiler_pic='-KPIC'9936 lt_prog_compiler_static='-Bstatic'9937 ;;9938 9939 *nto* | *qnx*)9940 # QNX uses GNU C++, but need to define -shared option too, otherwise9941 # it will coredump.9942 lt_prog_compiler_pic='-fPIC -shared'9943 ;;9944 9945 osf3* | osf4* | osf5*)9946 lt_prog_compiler_wl='-Wl,'9947 # All OSF/1 code is PIC.9948 lt_prog_compiler_static='-non_shared'9949 ;;9950 9951 rdos*)9952 lt_prog_compiler_static='-non_shared'9953 ;;9954 9955 solaris*)9956 lt_prog_compiler_pic='-KPIC'9957 lt_prog_compiler_static='-Bstatic'9958 case $cc_basename in9959 f77* | f90* | f95* | sunf77* | sunf90* | sunf95*)9960 lt_prog_compiler_wl='-Qoption ld ';;9961 *)9962 lt_prog_compiler_wl='-Wl,';;9963 esac9964 ;;9965 9966 sunos4*)9967 lt_prog_compiler_wl='-Qoption ld '9968 lt_prog_compiler_pic='-PIC'9969 lt_prog_compiler_static='-Bstatic'9970 ;;9971 9972 sysv4 | sysv4.2uw2* | sysv4.3*)9973 lt_prog_compiler_wl='-Wl,'9974 lt_prog_compiler_pic='-KPIC'9975 lt_prog_compiler_static='-Bstatic'9976 ;;9977 9978 sysv4*MP*)9979 if test -d /usr/nec; then9980 lt_prog_compiler_pic='-Kconform_pic'9981 lt_prog_compiler_static='-Bstatic'9982 fi9983 ;;9984 9985 sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)9986 lt_prog_compiler_wl='-Wl,'9987 lt_prog_compiler_pic='-KPIC'9988 lt_prog_compiler_static='-Bstatic'9989 ;;9990 9991 unicos*)9992 lt_prog_compiler_wl='-Wl,'9993 lt_prog_compiler_can_build_shared=no9994 ;;9995 9996 uts4*)9997 lt_prog_compiler_pic='-pic'9998 lt_prog_compiler_static='-Bstatic'9999 ;;10000 10001 *)10002 lt_prog_compiler_can_build_shared=no10003 ;;10004 esac10005 fi10006 10007 case $host_os in10008 # For platforms that do not support PIC, -DPIC is meaningless:10009 *djgpp*)10010 lt_prog_compiler_pic=10011 ;;10012 *)10013 lt_prog_compiler_pic="$lt_prog_compiler_pic -DPIC"10014 ;;10015 esac10016 10017 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&510018 $as_echo_n "checking for $compiler option to produce PIC... " >&6; }10019 if ${lt_cv_prog_compiler_pic+:} false; then :10020 $as_echo_n "(cached) " >&610021 else10022 lt_cv_prog_compiler_pic=$lt_prog_compiler_pic10023 fi10024 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic" >&510025 $as_echo "$lt_cv_prog_compiler_pic" >&6; }10026 lt_prog_compiler_pic=$lt_cv_prog_compiler_pic10027 10028 #10029 # Check to make sure the PIC flag actually works.10030 #10031 if test -n "$lt_prog_compiler_pic"; then10032 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler PIC flag $lt_prog_compiler_pic works" >&510033 $as_echo_n "checking if $compiler PIC flag $lt_prog_compiler_pic works... " >&6; }10034 if ${lt_cv_prog_compiler_pic_works+:} false; then :10035 $as_echo_n "(cached) " >&610036 else10037 lt_cv_prog_compiler_pic_works=no10038 ac_outfile=conftest.$ac_objext10039 echo "$lt_simple_compile_test_code" > conftest.$ac_ext10040 lt_compiler_flag="$lt_prog_compiler_pic -DPIC" ## exclude from sc_useless_quotes_in_assignment10041 # Insert the option either (1) after the last *FLAGS variable, or10042 # (2) before a word containing "conftest.", or (3) at the end.10043 # Note that $ac_compile itself does not contain backslashes and begins10044 # with a dollar sign (not a hyphen), so the echo should work correctly.10045 # The option is referenced via a variable to avoid confusing sed.10046 lt_compile=`echo "$ac_compile" | $SED \10047 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \10048 -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \10049 -e 's:$: $lt_compiler_flag:'`10050 (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5)10051 (eval "$lt_compile" 2>conftest.err)10052 ac_status=$?10053 cat conftest.err >&510054 echo "$as_me:$LINENO: \$? = $ac_status" >&510055 if (exit $ac_status) && test -s "$ac_outfile"; then10056 # The compiler can only warn and ignore the option if not recognized10057 # So say no if there are warnings other than the usual output.10058 $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp10059 $SED '/^$/d; /^ *+/d' conftest.err >conftest.er210060 if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then10061 lt_cv_prog_compiler_pic_works=yes10062 fi10063 fi10064 $RM conftest*10065 10066 fi10067 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic_works" >&510068 $as_echo "$lt_cv_prog_compiler_pic_works" >&6; }10069 10070 if test yes = "$lt_cv_prog_compiler_pic_works"; then10071 case $lt_prog_compiler_pic in10072 "" | " "*) ;;10073 *) lt_prog_compiler_pic=" $lt_prog_compiler_pic" ;;10074 esac10075 else10076 lt_prog_compiler_pic=10077 lt_prog_compiler_can_build_shared=no10078 fi10079 10080 fi10081 10082 10083 10084 10085 10086 10087 10088 10089 10090 10091 10092 #10093 # Check to make sure the static flag actually works.10094 #10095 wl=$lt_prog_compiler_wl eval lt_tmp_static_flag=\"$lt_prog_compiler_static\"10096 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler static flag $lt_tmp_static_flag works" >&510097 $as_echo_n "checking if $compiler static flag $lt_tmp_static_flag works... " >&6; }10098 if ${lt_cv_prog_compiler_static_works+:} false; then :10099 $as_echo_n "(cached) " >&610100 else10101 lt_cv_prog_compiler_static_works=no10102 save_LDFLAGS=$LDFLAGS10103 LDFLAGS="$LDFLAGS $lt_tmp_static_flag"10104 echo "$lt_simple_link_test_code" > conftest.$ac_ext10105 if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then10106 # The linker can only warn and ignore the option if not recognized10107 # So say no if there are warnings10108 if test -s conftest.err; then10109 # Append any errors to the config.log.10110 cat conftest.err 1>&510111 $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp10112 $SED '/^$/d; /^ *+/d' conftest.err >conftest.er210113 if diff conftest.exp conftest.er2 >/dev/null; then10114 lt_cv_prog_compiler_static_works=yes10115 fi10116 else10117 lt_cv_prog_compiler_static_works=yes10118 fi10119 fi10120 $RM -r conftest*10121 LDFLAGS=$save_LDFLAGS10122 10123 fi10124 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_static_works" >&510125 $as_echo "$lt_cv_prog_compiler_static_works" >&6; }10126 10127 if test yes = "$lt_cv_prog_compiler_static_works"; then10128 :10129 else10130 lt_prog_compiler_static=10131 fi10132 10133 10134 10135 10136 10137 10138 10139 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&510140 $as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; }10141 if ${lt_cv_prog_compiler_c_o+:} false; then :10142 $as_echo_n "(cached) " >&610143 else10144 lt_cv_prog_compiler_c_o=no10145 $RM -r conftest 2>/dev/null10146 mkdir conftest10147 cd conftest10148 mkdir out10149 echo "$lt_simple_compile_test_code" > conftest.$ac_ext10150 10151 lt_compiler_flag="-o out/conftest2.$ac_objext"10152 # Insert the option either (1) after the last *FLAGS variable, or10153 # (2) before a word containing "conftest.", or (3) at the end.10154 # Note that $ac_compile itself does not contain backslashes and begins10155 # with a dollar sign (not a hyphen), so the echo should work correctly.10156 lt_compile=`echo "$ac_compile" | $SED \10157 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \10158 -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \10159 -e 's:$: $lt_compiler_flag:'`10160 (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5)10161 (eval "$lt_compile" 2>out/conftest.err)10162 ac_status=$?10163 cat out/conftest.err >&510164 echo "$as_me:$LINENO: \$? = $ac_status" >&510165 if (exit $ac_status) && test -s out/conftest2.$ac_objext10166 then10167 # The compiler can only warn and ignore the option if not recognized10168 # So say no if there are warnings10169 $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp10170 $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er210171 if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then10172 lt_cv_prog_compiler_c_o=yes10173 fi10174 fi10175 chmod u+w . 2>&510176 $RM conftest*10177 # SGI C++ compiler will create directory out/ii_files/ for10178 # template instantiation10179 test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files10180 $RM out/* && rmdir out10181 cd ..10182 $RM -r conftest10183 $RM conftest*10184 10185 fi10186 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o" >&510187 $as_echo "$lt_cv_prog_compiler_c_o" >&6; }10188 10189 10190 10191 10192 10193 10194 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&510195 $as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; }10196 if ${lt_cv_prog_compiler_c_o+:} false; then :10197 $as_echo_n "(cached) " >&610198 else10199 lt_cv_prog_compiler_c_o=no10200 $RM -r conftest 2>/dev/null10201 mkdir conftest10202 cd conftest10203 mkdir out10204 echo "$lt_simple_compile_test_code" > conftest.$ac_ext10205 10206 lt_compiler_flag="-o out/conftest2.$ac_objext"10207 # Insert the option either (1) after the last *FLAGS variable, or10208 # (2) before a word containing "conftest.", or (3) at the end.10209 # Note that $ac_compile itself does not contain backslashes and begins10210 # with a dollar sign (not a hyphen), so the echo should work correctly.10211 lt_compile=`echo "$ac_compile" | $SED \10212 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \10213 -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \10214 -e 's:$: $lt_compiler_flag:'`10215 (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5)10216 (eval "$lt_compile" 2>out/conftest.err)10217 ac_status=$?10218 cat out/conftest.err >&510219 echo "$as_me:$LINENO: \$? = $ac_status" >&510220 if (exit $ac_status) && test -s out/conftest2.$ac_objext10221 then10222 # The compiler can only warn and ignore the option if not recognized10223 # So say no if there are warnings10224 $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp10225 $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er210226 if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then10227 lt_cv_prog_compiler_c_o=yes10228 fi10229 fi10230 chmod u+w . 2>&510231 $RM conftest*10232 # SGI C++ compiler will create directory out/ii_files/ for10233 # template instantiation10234 test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files10235 $RM out/* && rmdir out10236 cd ..10237 $RM -r conftest10238 $RM conftest*10239 10240 fi10241 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o" >&510242 $as_echo "$lt_cv_prog_compiler_c_o" >&6; }10243 10244 10245 10246 10247 hard_links=nottested10248 if test no = "$lt_cv_prog_compiler_c_o" && test no != "$need_locks"; then10249 # do not overwrite the value of need_locks provided by the user10250 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if we can lock with hard links" >&510251 $as_echo_n "checking if we can lock with hard links... " >&6; }10252 hard_links=yes10253 $RM conftest*10254 ln conftest.a conftest.b 2>/dev/null && hard_links=no10255 touch conftest.a10256 ln conftest.a conftest.b 2>&5 || hard_links=no10257 ln conftest.a conftest.b 2>/dev/null && hard_links=no10258 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $hard_links" >&510259 $as_echo "$hard_links" >&6; }10260 if test no = "$hard_links"; then10261 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&510262 $as_echo "$as_me: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&2;}10263 need_locks=warn10264 fi10265 else10266 need_locks=no10267 fi10268 10269 10270 10271 10272 10273 10274 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&510275 $as_echo_n "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; }10276 10277 runpath_var=10278 allow_undefined_flag=10279 always_export_symbols=no10280 archive_cmds=10281 archive_expsym_cmds=10282 compiler_needs_object=no10283 enable_shared_with_static_runtimes=no10284 export_dynamic_flag_spec=10285 export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'10286 hardcode_automatic=no10287 hardcode_direct=no10288 hardcode_direct_absolute=no10289 hardcode_libdir_flag_spec=10290 hardcode_libdir_separator=10291 hardcode_minus_L=no10292 hardcode_shlibpath_var=unsupported10293 inherit_rpath=no10294 link_all_deplibs=unknown10295 module_cmds=10296 module_expsym_cmds=10297 old_archive_from_new_cmds=10298 old_archive_from_expsyms_cmds=10299 thread_safe_flag_spec=10300 whole_archive_flag_spec=10301 # include_expsyms should be a list of space-separated symbols to be *always*10302 # included in the symbol list10303 include_expsyms=10304 # exclude_expsyms can be an extended regexp of symbols to exclude10305 # it will be wrapped by ' (' and ')$', so one must not match beginning or10306 # end of line. Example: 'a|bc|.*d.*' will exclude the symbols 'a' and 'bc',10307 # as well as any symbol that contains 'd'.10308 exclude_expsyms='_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'10309 # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out10310 # platforms (ab)use it in PIC code, but their linkers get confused if10311 # the symbol is explicitly referenced. Since portable code cannot10312 # rely on this symbol name, it's probably fine to never include it in10313 # preloaded symbol tables.10314 # Exclude shared library initialization/finalization symbols.10315 extract_expsyms_cmds=10316 10317 case $host_os in10318 cygwin* | mingw* | pw32* | cegcc*)10319 # FIXME: the MSVC++ port hasn't been tested in a loooong time10320 # When not using gcc, we currently assume that we are using10321 # Microsoft Visual C++.10322 if test yes != "$GCC"; then10323 with_gnu_ld=no10324 fi10325 ;;10326 interix*)10327 # we just hope/assume this is gcc and not c89 (= MSVC++)10328 with_gnu_ld=yes10329 ;;10330 openbsd* | bitrig*)10331 with_gnu_ld=no10332 ;;10333 linux* | k*bsd*-gnu | gnu*)10334 link_all_deplibs=no10335 ;;10336 esac10337 10338 ld_shlibs=yes10339 10340 # On some targets, GNU ld is compatible enough with the native linker10341 # that we're better off using the native interface for both.10342 lt_use_gnu_ld_interface=no10343 if test yes = "$with_gnu_ld"; then10344 case $host_os in10345 aix*)10346 # The AIX port of GNU ld has always aspired to compatibility10347 # with the native linker. However, as the warning in the GNU ld10348 # block says, versions before 2.19.5* couldn't really create working10349 # shared libraries, regardless of the interface used.10350 case `$LD -v 2>&1` in10351 *\ \(GNU\ Binutils\)\ 2.19.5*) ;;10352 *\ \(GNU\ Binutils\)\ 2.[2-9]*) ;;10353 *\ \(GNU\ Binutils\)\ [3-9]*) ;;10354 *)10355 lt_use_gnu_ld_interface=yes10356 ;;10357 esac10358 ;;10359 *)10360 lt_use_gnu_ld_interface=yes10361 ;;10362 esac10363 fi10364 10365 if test yes = "$lt_use_gnu_ld_interface"; then10366 # If archive_cmds runs LD, not CC, wlarc should be empty10367 wlarc='$wl'10368 10369 # Set some defaults for GNU ld with shared library support. These10370 # are reset later if shared libraries are not supported. Putting them10371 # here allows them to be overridden if necessary.10372 runpath_var=LD_RUN_PATH10373 hardcode_libdir_flag_spec='$wl-rpath $wl$libdir'10374 export_dynamic_flag_spec='$wl--export-dynamic'10375 # ancient GNU ld didn't support --whole-archive et. al.10376 if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then10377 whole_archive_flag_spec=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive'10378 else10379 whole_archive_flag_spec=10380 fi10381 supports_anon_versioning=no10382 case `$LD -v | $SED -e 's/(^)\+)\s\+//' 2>&1` in10383 *GNU\ gold*) supports_anon_versioning=yes ;;10384 *\ [01].* | *\ 2.[0-9].* | *\ 2.10.*) ;; # catch versions < 2.1110385 *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ...10386 *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ...10387 *\ 2.11.*) ;; # other 2.11 versions10388 *) supports_anon_versioning=yes ;;10389 esac10390 10391 # See if GNU ld supports shared libraries.10392 case $host_os in10393 aix[3-9]*)10394 # On AIX/PPC, the GNU linker is very broken10395 if test ia64 != "$host_cpu"; then10396 ld_shlibs=no10397 cat <<_LT_EOF 1>&210398 10399 *** Warning: the GNU linker, at least up to release 2.19, is reported10400 *** to be unable to reliably create shared libraries on AIX.10401 *** Therefore, libtool is disabling shared libraries support. If you10402 *** really care for shared libraries, you may want to install binutils10403 *** 2.20 or above, or modify your PATH so that a non-GNU linker is found.10404 *** You will then need to restart the configuration process.10405 10406 _LT_EOF10407 fi10408 ;;10409 10410 amigaos*)10411 case $host_cpu in10412 powerpc)10413 # see comment about AmigaOS4 .so support10414 archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'10415 archive_expsym_cmds=''10416 ;;10417 m68k)10418 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)'10419 hardcode_libdir_flag_spec='-L$libdir'10420 hardcode_minus_L=yes10421 ;;10422 esac10423 ;;10424 10425 beos*)10426 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then10427 allow_undefined_flag=unsupported10428 # Joseph Beckenbach <jrb3@best.com> says some releases of gcc10429 # support --undefined. This deserves some investigation. FIXME10430 archive_cmds='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'10431 else10432 ld_shlibs=no10433 fi10434 ;;10435 10436 cygwin* | mingw* | pw32* | cegcc*)10437 # _LT_TAGVAR(hardcode_libdir_flag_spec, ) is actually meaningless,10438 # as there is no search path for DLLs.10439 hardcode_libdir_flag_spec='-L$libdir'10440 export_dynamic_flag_spec='$wl--export-all-symbols'10441 allow_undefined_flag=unsupported10442 always_export_symbols=no10443 enable_shared_with_static_runtimes=yes10444 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'10445 exclude_expsyms='[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname'10446 10447 if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then10448 archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'10449 # If the export-symbols file already is a .def file, use it as10450 # is; otherwise, prepend EXPORTS...10451 archive_expsym_cmds='if test DEF = "`$SED -n -e '\''s/^[ ]*//'\'' -e '\''/^\(;.*\)*$/d'\'' -e '\''s/^\(EXPORTS\|LIBRARY\)\([ ].*\)*$/DEF/p'\'' -e q $export_symbols`" ; then10452 cp $export_symbols $output_objdir/$soname.def;10453 else10454 echo EXPORTS > $output_objdir/$soname.def;10455 cat $export_symbols >> $output_objdir/$soname.def;10456 fi~10457 $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'10458 else10459 ld_shlibs=no10460 fi10461 ;;10462 10463 haiku*)10464 archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'10465 link_all_deplibs=yes10466 ;;10467 10468 os2*)10469 hardcode_libdir_flag_spec='-L$libdir'10470 hardcode_minus_L=yes10471 allow_undefined_flag=unsupported10472 shrext_cmds=.dll10473 archive_cmds='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~10474 $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~10475 $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~10476 $ECHO EXPORTS >> $output_objdir/$libname.def~10477 emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~10478 $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~10479 emximp -o $lib $output_objdir/$libname.def'10480 archive_expsym_cmds='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~10481 $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~10482 $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~10483 $ECHO EXPORTS >> $output_objdir/$libname.def~10484 prefix_cmds="$SED"~10485 if test EXPORTS = "`$SED 1q $export_symbols`"; then10486 prefix_cmds="$prefix_cmds -e 1d";10487 fi~10488 prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~10489 cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~10490 $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~10491 emximp -o $lib $output_objdir/$libname.def'10492 old_archive_From_new_cmds='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'10493 enable_shared_with_static_runtimes=yes10494 ;;10495 10496 interix[3-9]*)10497 hardcode_direct=no10498 hardcode_shlibpath_var=no10499 hardcode_libdir_flag_spec='$wl-rpath,$libdir'10500 export_dynamic_flag_spec='$wl-E'10501 # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.10502 # Instead, shared libraries are loaded at an image base (0x10000000 by10503 # default) and relocated if they conflict, which is a slow very memory10504 # consuming and fragmenting process. To avoid this, we pick a random,10505 # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link10506 # time. Moving up from 0x10000000 also allows more sbrk(2) space.10507 archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'10508 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'10509 ;;10510 10511 gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)10512 tmp_diet=no10513 if test linux-dietlibc = "$host_os"; then10514 case $cc_basename in10515 diet\ *) tmp_diet=yes;; # linux-dietlibc with static linking (!diet-dyn)10516 esac10517 fi10518 if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \10519 && test no = "$tmp_diet"10520 then10521 tmp_addflag=' $pic_flag'10522 tmp_sharedflag='-shared'10523 case $cc_basename,$host_cpu in10524 pgcc*) # Portland Group C compiler10525 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'10526 tmp_addflag=' $pic_flag'10527 ;;10528 pgf77* | pgf90* | pgf95* | pgfortran*)10529 # Portland Group f77 and f90 compilers10530 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'10531 tmp_addflag=' $pic_flag -Mnomain' ;;10532 ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia6410533 tmp_addflag=' -i_dynamic' ;;10534 efc*,ia64* | ifort*,ia64*) # Intel Fortran compiler on ia6410535 tmp_addflag=' -i_dynamic -nofor_main' ;;10536 ifc* | ifort*) # Intel Fortran compiler10537 tmp_addflag=' -nofor_main' ;;10538 lf95*) # Lahey Fortran 8.110539 whole_archive_flag_spec=10540 tmp_sharedflag='--shared' ;;10541 nagfor*) # NAGFOR 5.310542 tmp_sharedflag='-Wl,-shared' ;;10543 xl[cC]* | bgxl[cC]* | mpixl[cC]*) # IBM XL C 8.0 on PPC (deal with xlf below)10544 tmp_sharedflag='-qmkshrobj'10545 tmp_addflag= ;;10546 nvcc*) # Cuda Compiler Driver 2.210547 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'10548 compiler_needs_object=yes10549 ;;10550 esac10551 case `$CC -V 2>&1 | sed 5q` in10552 *Sun\ C*) # Sun C 5.910553 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'10554 compiler_needs_object=yes10555 tmp_sharedflag='-G' ;;10556 *Sun\ F*) # Sun Fortran 8.310557 tmp_sharedflag='-G' ;;10558 esac10559 archive_cmds='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'10560 10561 if test yes = "$supports_anon_versioning"; then10562 archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~10563 cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~10564 echo "local: *; };" >> $output_objdir/$libname.ver~10565 $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib'10566 fi10567 10568 case $cc_basename in10569 tcc*)10570 export_dynamic_flag_spec='-rdynamic'10571 ;;10572 xlf* | bgf* | bgxlf* | mpixlf*)10573 # IBM XL Fortran 10.1 on PPC cannot create shared libs itself10574 whole_archive_flag_spec='--whole-archive$convenience --no-whole-archive'10575 hardcode_libdir_flag_spec='$wl-rpath $wl$libdir'10576 archive_cmds='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib'10577 if test yes = "$supports_anon_versioning"; then10578 archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~10579 cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~10580 echo "local: *; };" >> $output_objdir/$libname.ver~10581 $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'10582 fi10583 ;;10584 esac10585 else10586 ld_shlibs=no10587 fi10588 ;;10589 10590 netbsd* | netbsdelf*-gnu)10591 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then10592 archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'10593 wlarc=10594 else10595 archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'10596 archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'10597 fi10598 ;;10599 10600 solaris*)10601 if $LD -v 2>&1 | $GREP 'BFD 2\.8' > /dev/null; then10602 ld_shlibs=no10603 cat <<_LT_EOF 1>&210604 10605 *** Warning: The releases 2.8.* of the GNU linker cannot reliably10606 *** create shared libraries on Solaris systems. Therefore, libtool10607 *** is disabling shared libraries support. We urge you to upgrade GNU10608 *** binutils to release 2.9.1 or newer. Another option is to modify10609 *** your PATH or compiler configuration so that the native linker is10610 *** used, and then restart.10611 10612 _LT_EOF10613 elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then10614 archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'10615 archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'10616 else10617 ld_shlibs=no10618 fi10619 ;;10620 10621 sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*)10622 case `$LD -v 2>&1` in10623 *\ [01].* | *\ 2.[0-9].* | *\ 2.1[0-5].*)10624 ld_shlibs=no10625 cat <<_LT_EOF 1>&210626 10627 *** Warning: Releases of the GNU linker prior to 2.16.91.0.3 cannot10628 *** reliably create shared libraries on SCO systems. Therefore, libtool10629 *** is disabling shared libraries support. We urge you to upgrade GNU10630 *** binutils to release 2.16.91.0.3 or newer. Another option is to modify10631 *** your PATH or compiler configuration so that the native linker is10632 *** used, and then restart.10633 10634 _LT_EOF10635 ;;10636 *)10637 # For security reasons, it is highly recommended that you always10638 # use absolute paths for naming shared libraries, and exclude the10639 # DT_RUNPATH tag from executables and libraries. But doing so10640 # requires that you compile everything twice, which is a pain.10641 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then10642 hardcode_libdir_flag_spec='$wl-rpath $wl$libdir'10643 archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'10644 archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'10645 else10646 ld_shlibs=no10647 fi10648 ;;10649 esac10650 ;;10651 10652 sunos4*)10653 archive_cmds='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags'10654 wlarc=10655 hardcode_direct=yes10656 hardcode_shlibpath_var=no10657 ;;10658 10659 *)10660 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then10661 archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'10662 archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'10663 else10664 ld_shlibs=no10665 fi10666 ;;10667 esac10668 10669 if test no = "$ld_shlibs"; then10670 runpath_var=10671 hardcode_libdir_flag_spec=10672 export_dynamic_flag_spec=10673 whole_archive_flag_spec=10674 fi10675 else10676 # PORTME fill in a description of your system's linker (not GNU ld)10677 case $host_os in10678 aix3*)10679 allow_undefined_flag=unsupported10680 always_export_symbols=yes10681 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'10682 # Note: this linker hardcodes the directories in LIBPATH if there10683 # are no directories specified by -L.10684 hardcode_minus_L=yes10685 if test yes = "$GCC" && test -z "$lt_prog_compiler_static"; then10686 # Neither direct hardcoding nor static linking is supported with a10687 # broken collect2.10688 hardcode_direct=unsupported10689 fi10690 ;;10691 10692 aix[4-9]*)10693 if test ia64 = "$host_cpu"; then10694 # On IA64, the linker does run time linking by default, so we don't10695 # have to do anything special.10696 aix_use_runtimelinking=no10697 exp_sym_flag='-Bexport'10698 no_entry_flag=10699 else10700 # If we're using GNU nm, then we don't want the "-C" option.10701 # -C means demangle to GNU nm, but means don't demangle to AIX nm.10702 # Without the "-l" option, or with the "-B" option, AIX nm treats10703 # weak defined symbols like other global defined symbols, whereas10704 # GNU nm marks them as "W".10705 # While the 'weak' keyword is ignored in the Export File, we need10706 # it in the Import File for the 'aix-soname' feature, so we have10707 # to replace the "-B" option with "-P" for AIX nm.10708 if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then10709 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'10710 else10711 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'10712 fi10713 aix_use_runtimelinking=no10714 10715 # Test if we are trying to use run time linking or normal10716 # AIX style linking. If -brtl is somewhere in LDFLAGS, we10717 # have runtime linking enabled, and use it for executables.10718 # For shared libraries, we enable/disable runtime linking10719 # depending on the kind of the shared library created -10720 # when "with_aix_soname,aix_use_runtimelinking" is:10721 # "aix,no" lib.a(lib.so.V) shared, rtl:no, for executables10722 # "aix,yes" lib.so shared, rtl:yes, for executables10723 # lib.a static archive10724 # "both,no" lib.so.V(shr.o) shared, rtl:yes10725 # lib.a(lib.so.V) shared, rtl:no, for executables10726 # "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables10727 # lib.a(lib.so.V) shared, rtl:no10728 # "svr4,*" lib.so.V(shr.o) shared, rtl:yes, for executables10729 # lib.a static archive10730 case $host_os in aix4.[23]|aix4.[23].*|aix[5-9]*)10731 for ld_flag in $LDFLAGS; do10732 if (test x-brtl = "x$ld_flag" || test x-Wl,-brtl = "x$ld_flag"); then10733 aix_use_runtimelinking=yes10734 break10735 fi10736 done10737 if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then10738 # With aix-soname=svr4, we create the lib.so.V shared archives only,10739 # so we don't have lib.a shared libs to link our executables.10740 # We have to force runtime linking in this case.10741 aix_use_runtimelinking=yes10742 LDFLAGS="$LDFLAGS -Wl,-brtl"10743 fi10744 ;;10745 esac10746 10747 exp_sym_flag='-bexport'10748 no_entry_flag='-bnoentry'10749 fi10750 10751 # When large executables or shared objects are built, AIX ld can10752 # have problems creating the table of contents. If linking a library10753 # or program results in "error TOC overflow" add -mminimal-toc to10754 # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not10755 # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.10756 10757 archive_cmds=''10758 hardcode_direct=yes10759 hardcode_direct_absolute=yes10760 hardcode_libdir_separator=':'10761 link_all_deplibs=yes10762 file_list_spec='$wl-f,'10763 case $with_aix_soname,$aix_use_runtimelinking in10764 aix,*) ;; # traditional, no import file10765 svr4,* | *,yes) # use import file10766 # The Import File defines what to hardcode.10767 hardcode_direct=no10768 hardcode_direct_absolute=no10769 ;;10770 esac10771 10772 if test yes = "$GCC"; then10773 case $host_os in aix4.[012]|aix4.[012].*)10774 # We only want to do this on AIX 4.2 and lower, the check10775 # below for broken collect2 doesn't work under 4.3+10776 collect2name=`$CC -print-prog-name=collect2`10777 if test -f "$collect2name" &&10778 strings "$collect2name" | $GREP resolve_lib_name >/dev/null10779 then10780 # We have reworked collect210781 :10782 else10783 # We have old collect210784 hardcode_direct=unsupported10785 # It fails to find uninstalled libraries when the uninstalled10786 # path is not listed in the libpath. Setting hardcode_minus_L10787 # to unsupported forces relinking10788 hardcode_minus_L=yes10789 hardcode_libdir_flag_spec='-L$libdir'10790 hardcode_libdir_separator=10791 fi10792 ;;10793 esac10794 shared_flag='-shared'10795 if test yes = "$aix_use_runtimelinking"; then10796 shared_flag="$shared_flag "'$wl-G'10797 fi10798 # Need to ensure runtime linking is disabled for the traditional10799 # shared library, or the linker may eventually find shared libraries10800 # /with/ Import File - we do not want to mix them.10801 shared_flag_aix='-shared'10802 shared_flag_svr4='-shared $wl-G'10803 else10804 # not using gcc10805 if test ia64 = "$host_cpu"; then10806 # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release10807 # chokes on -Wl,-G. The following line is correct:10808 shared_flag='-G'10809 else10810 if test yes = "$aix_use_runtimelinking"; then10811 shared_flag='$wl-G'10812 else10813 shared_flag='$wl-bM:SRE'10814 fi10815 shared_flag_aix='$wl-bM:SRE'10816 shared_flag_svr4='$wl-G'10817 fi10818 fi10819 10820 export_dynamic_flag_spec='$wl-bexpall'10821 # It seems that -bexpall does not export symbols beginning with10822 # underscore (_), so it is better to generate a list of symbols to export.10823 always_export_symbols=yes10824 if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then10825 # Warning - without using the other runtime loading flags (-brtl),10826 # -berok will link without error, but may produce a broken library.10827 allow_undefined_flag='-berok'10828 # Determine the default libpath from the value encoded in an10829 # empty executable.10830 if test set = "${lt_cv_aix_libpath+set}"; then10831 aix_libpath=$lt_cv_aix_libpath10832 else10833 if ${lt_cv_aix_libpath_+:} false; then :10834 $as_echo_n "(cached) " >&610835 else10836 cat confdefs.h - <<_ACEOF >conftest.$ac_ext10837 /* end confdefs.h. */10838 10839 int10840 main ()10841 {10842 10843 ;10844 return 0;10845 }10846 _ACEOF10847 if ac_fn_c_try_link "$LINENO"; then :10848 10849 lt_aix_libpath_sed='10850 /Import File Strings/,/^$/ {10851 /^0/ {10852 s/^0 *\([^ ]*\) *$/\1/10853 p10854 }10855 }'10856 lt_cv_aix_libpath_=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`10857 # Check for a 64-bit object if we didn't find anything.10858 if test -z "$lt_cv_aix_libpath_"; then10859 lt_cv_aix_libpath_=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`10860 fi10861 fi10862 rm -f core conftest.err conftest.$ac_objext \10863 conftest$ac_exeext conftest.$ac_ext10864 if test -z "$lt_cv_aix_libpath_"; then10865 lt_cv_aix_libpath_=/usr/lib:/lib10866 fi10867 10868 fi10869 10870 aix_libpath=$lt_cv_aix_libpath_10871 fi10872 10873 hardcode_libdir_flag_spec='$wl-blibpath:$libdir:'"$aix_libpath"10874 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_flag10875 else10876 if test ia64 = "$host_cpu"; then10877 hardcode_libdir_flag_spec='$wl-R $libdir:/usr/lib:/lib'10878 allow_undefined_flag="-z nodefs"10879 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"10880 else10881 # Determine the default libpath from the value encoded in an10882 # empty executable.10883 if test set = "${lt_cv_aix_libpath+set}"; then10884 aix_libpath=$lt_cv_aix_libpath10885 else10886 if ${lt_cv_aix_libpath_+:} false; then :10887 $as_echo_n "(cached) " >&610888 else10889 cat confdefs.h - <<_ACEOF >conftest.$ac_ext10890 /* end confdefs.h. */10891 10892 int10893 main ()10894 {10895 10896 ;10897 return 0;10898 }10899 _ACEOF10900 if ac_fn_c_try_link "$LINENO"; then :10901 10902 lt_aix_libpath_sed='10903 /Import File Strings/,/^$/ {10904 /^0/ {10905 s/^0 *\([^ ]*\) *$/\1/10906 p10907 }10908 }'10909 lt_cv_aix_libpath_=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`10910 # Check for a 64-bit object if we didn't find anything.10911 if test -z "$lt_cv_aix_libpath_"; then10912 lt_cv_aix_libpath_=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`10913 fi10914 fi10915 rm -f core conftest.err conftest.$ac_objext \10916 conftest$ac_exeext conftest.$ac_ext10917 if test -z "$lt_cv_aix_libpath_"; then10918 lt_cv_aix_libpath_=/usr/lib:/lib10919 fi10920 10921 fi10922 10923 aix_libpath=$lt_cv_aix_libpath_10924 fi10925 10926 hardcode_libdir_flag_spec='$wl-blibpath:$libdir:'"$aix_libpath"10927 # Warning - without using the other run time loading flags,10928 # -berok will link without error, but may produce a broken library.10929 no_undefined_flag=' $wl-bernotok'10930 allow_undefined_flag=' $wl-berok'10931 if test yes = "$with_gnu_ld"; then10932 # We only use this code for GNU lds that support --whole-archive.10933 whole_archive_flag_spec='$wl--whole-archive$convenience $wl--no-whole-archive'10934 else10935 # Exported symbols can be pulled into shared objects from archives10936 whole_archive_flag_spec='$convenience'10937 fi10938 archive_cmds_need_lc=yes10939 archive_expsym_cmds='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d'10940 # -brtl affects multiple linker settings, -berok does not and is overridden later10941 compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([, ]\\)%-berok\\1%g"`'10942 if test svr4 != "$with_aix_soname"; then10943 # This is similar to how AIX traditionally builds its shared libraries.10944 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'10945 fi10946 if test aix != "$with_aix_soname"; then10947 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'10948 else10949 # used by -dlpreopen to get the symbols10950 archive_expsym_cmds="$archive_expsym_cmds"'~$MV $output_objdir/$realname.d/$soname $output_objdir'10951 fi10952 archive_expsym_cmds="$archive_expsym_cmds"'~$RM -r $output_objdir/$realname.d'10953 fi10954 fi10955 ;;10956 10957 amigaos*)10958 case $host_cpu in10959 powerpc)10960 # see comment about AmigaOS4 .so support10961 archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'10962 archive_expsym_cmds=''10963 ;;10964 m68k)10965 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)'10966 hardcode_libdir_flag_spec='-L$libdir'10967 hardcode_minus_L=yes10968 ;;10969 esac10970 ;;10971 10972 bsdi[45]*)10973 export_dynamic_flag_spec=-rdynamic10974 ;;10975 10976 cygwin* | mingw* | pw32* | cegcc*)10977 # When not using gcc, we currently assume that we are using10978 # Microsoft Visual C++.10979 # hardcode_libdir_flag_spec is actually meaningless, as there is10980 # no search path for DLLs.10981 case $cc_basename in10982 cl*)10983 # Native MSVC10984 hardcode_libdir_flag_spec=' '10985 allow_undefined_flag=unsupported10986 always_export_symbols=yes10987 file_list_spec='@'10988 # Tell ltmain to make .lib files, not .a files.10989 libext=lib10990 # Tell ltmain to make .dll files, not .so files.10991 shrext_cmds=.dll10992 # FIXME: Setting linknames here is a bad hack.10993 archive_cmds='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames='10994 archive_expsym_cmds='if test DEF = "`$SED -n -e '\''s/^[ ]*//'\'' -e '\''/^\(;.*\)*$/d'\'' -e '\''s/^\(EXPORTS\|LIBRARY\)\([ ].*\)*$/DEF/p'\'' -e q $export_symbols`" ; then10995 cp "$export_symbols" "$output_objdir/$soname.def";10996 echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp";10997 else10998 $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp;10999 fi~11000 $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~11001 linknames='11002 # The linker will not automatically build a static lib if we build a DLL.11003 # _LT_TAGVAR(old_archive_from_new_cmds, )='true'11004 enable_shared_with_static_runtimes=yes11005 exclude_expsyms='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*'11006 export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[BCDGRS][ ]/s/.*[ ]\([^ ]*\)/\1,DATA/'\'' | $SED -e '\''/^[AITW][ ]/s/.*[ ]//'\'' | sort | uniq > $export_symbols'11007 # Don't use ranlib11008 old_postinstall_cmds='chmod 644 $oldlib'11009 postlink_cmds='lt_outputfile="@OUTPUT@"~11010 lt_tool_outputfile="@TOOL_OUTPUT@"~11011 case $lt_outputfile in11012 *.exe|*.EXE) ;;11013 *)11014 lt_outputfile=$lt_outputfile.exe11015 lt_tool_outputfile=$lt_tool_outputfile.exe11016 ;;11017 esac~11018 if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then11019 $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;11020 $RM "$lt_outputfile.manifest";11021 fi'11022 ;;11023 *)11024 # Assume MSVC wrapper11025 hardcode_libdir_flag_spec=' '11026 allow_undefined_flag=unsupported11027 # Tell ltmain to make .lib files, not .a files.11028 libext=lib11029 # Tell ltmain to make .dll files, not .so files.11030 shrext_cmds=.dll11031 # FIXME: Setting linknames here is a bad hack.11032 archive_cmds='$CC -o $lib $libobjs $compiler_flags `func_echo_all "$deplibs" | $SED '\''s/ -lc$//'\''` -link -dll~linknames='11033 # The linker will automatically build a .lib file if we build a DLL.11034 old_archive_from_new_cmds='true'11035 # FIXME: Should let the user specify the lib program.11036 old_archive_cmds='lib -OUT:$oldlib$oldobjs$old_deplibs'11037 enable_shared_with_static_runtimes=yes11038 ;;11039 esac11040 ;;11041 11042 darwin* | rhapsody*)11043 11044 11045 archive_cmds_need_lc=no11046 hardcode_direct=no11047 hardcode_automatic=yes11048 hardcode_shlibpath_var=unsupported11049 if test yes = "$lt_cv_ld_force_load"; then11050 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\"`'11051 11052 else11053 whole_archive_flag_spec=''11054 fi11055 link_all_deplibs=yes11056 allow_undefined_flag=$_lt_dar_allow_undefined11057 case $cc_basename in11058 ifort*|nagfor*) _lt_dar_can_shared=yes ;;11059 *) _lt_dar_can_shared=$GCC ;;11060 esac11061 if test yes = "$_lt_dar_can_shared"; then11062 output_verbose_link_cmd=func_echo_all11063 archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dsymutil"11064 module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dsymutil"11065 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"11066 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"11067 11068 else11069 ld_shlibs=no11070 fi11071 11072 ;;11073 11074 dgux*)11075 archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'11076 hardcode_libdir_flag_spec='-L$libdir'11077 hardcode_shlibpath_var=no11078 ;;11079 11080 # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor11081 # support. Future versions do this automatically, but an explicit c++rt0.o11082 # does not break anything, and helps significantly (at the cost of a little11083 # extra space).11084 freebsd2.2*)11085 archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o'11086 hardcode_libdir_flag_spec='-R$libdir'11087 hardcode_direct=yes11088 hardcode_shlibpath_var=no11089 ;;11090 11091 # Unfortunately, older versions of FreeBSD 2 do not have this feature.11092 freebsd2.*)11093 archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'11094 hardcode_direct=yes11095 hardcode_minus_L=yes11096 hardcode_shlibpath_var=no11097 ;;11098 11099 # FreeBSD 3 and greater uses gcc -shared to do shared libraries.11100 freebsd* | dragonfly*)11101 archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'11102 hardcode_libdir_flag_spec='-R$libdir'11103 hardcode_direct=yes11104 hardcode_shlibpath_var=no11105 ;;11106 11107 hpux9*)11108 if test yes = "$GCC"; then11109 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'11110 else11111 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'11112 fi11113 hardcode_libdir_flag_spec='$wl+b $wl$libdir'11114 hardcode_libdir_separator=:11115 hardcode_direct=yes11116 11117 # hardcode_minus_L: Not really in the search PATH,11118 # but as the default location of the library.11119 hardcode_minus_L=yes11120 export_dynamic_flag_spec='$wl-E'11121 ;;11122 11123 hpux10*)11124 if test yes,no = "$GCC,$with_gnu_ld"; then11125 archive_cmds='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'11126 else11127 archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'11128 fi11129 if test no = "$with_gnu_ld"; then11130 hardcode_libdir_flag_spec='$wl+b $wl$libdir'11131 hardcode_libdir_separator=:11132 hardcode_direct=yes11133 hardcode_direct_absolute=yes11134 export_dynamic_flag_spec='$wl-E'11135 # hardcode_minus_L: Not really in the search PATH,11136 # but as the default location of the library.11137 hardcode_minus_L=yes11138 fi11139 ;;11140 11141 hpux11*)11142 if test yes,no = "$GCC,$with_gnu_ld"; then11143 case $host_cpu in11144 hppa*64*)11145 archive_cmds='$CC -shared $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'11146 ;;11147 ia64*)11148 archive_cmds='$CC -shared $pic_flag $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'11149 ;;11150 *)11151 archive_cmds='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'11152 ;;11153 esac11154 else11155 case $host_cpu in11156 hppa*64*)11157 archive_cmds='$CC -b $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'11158 ;;11159 ia64*)11160 archive_cmds='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'11161 ;;11162 *)11163 11164 # Older versions of the 11.00 compiler do not understand -b yet11165 # (HP92453-01 A.11.01.20 doesn't, HP92453-01 B.11.X.35175-35176.GP does)11166 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC understands -b" >&511167 $as_echo_n "checking if $CC understands -b... " >&6; }11168 if ${lt_cv_prog_compiler__b+:} false; then :11169 $as_echo_n "(cached) " >&611170 else11171 lt_cv_prog_compiler__b=no11172 save_LDFLAGS=$LDFLAGS11173 LDFLAGS="$LDFLAGS -b"11174 echo "$lt_simple_link_test_code" > conftest.$ac_ext11175 if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then11176 # The linker can only warn and ignore the option if not recognized11177 # So say no if there are warnings11178 if test -s conftest.err; then11179 # Append any errors to the config.log.11180 cat conftest.err 1>&511181 $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp11182 $SED '/^$/d; /^ *+/d' conftest.err >conftest.er211183 if diff conftest.exp conftest.er2 >/dev/null; then11184 lt_cv_prog_compiler__b=yes11185 fi11186 else11187 lt_cv_prog_compiler__b=yes11188 fi11189 fi11190 $RM -r conftest*11191 LDFLAGS=$save_LDFLAGS11192 11193 fi11194 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler__b" >&511195 $as_echo "$lt_cv_prog_compiler__b" >&6; }11196 11197 if test yes = "$lt_cv_prog_compiler__b"; then11198 archive_cmds='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'11199 else11200 archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'11201 fi11202 11203 ;;11204 esac11205 fi11206 if test no = "$with_gnu_ld"; then11207 hardcode_libdir_flag_spec='$wl+b $wl$libdir'11208 hardcode_libdir_separator=:11209 11210 case $host_cpu in11211 hppa*64*|ia64*)11212 hardcode_direct=no11213 hardcode_shlibpath_var=no11214 ;;11215 *)11216 hardcode_direct=yes11217 hardcode_direct_absolute=yes11218 export_dynamic_flag_spec='$wl-E'11219 11220 # hardcode_minus_L: Not really in the search PATH,11221 # but as the default location of the library.11222 hardcode_minus_L=yes11223 ;;11224 esac11225 fi11226 ;;11227 11228 irix5* | irix6* | nonstopux*)11229 if test yes = "$GCC"; then11230 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'11231 # Try to use the -exported_symbol ld option, if it does not11232 # work, assume that -exports_file does not work either and11233 # implicitly export all symbols.11234 # This should be the same for all languages, so no per-tag cache variable.11235 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $host_os linker accepts -exported_symbol" >&511236 $as_echo_n "checking whether the $host_os linker accepts -exported_symbol... " >&6; }11237 if ${lt_cv_irix_exported_symbol+:} false; then :11238 $as_echo_n "(cached) " >&611239 else11240 save_LDFLAGS=$LDFLAGS11241 LDFLAGS="$LDFLAGS -shared $wl-exported_symbol ${wl}foo $wl-update_registry $wl/dev/null"11242 cat confdefs.h - <<_ACEOF >conftest.$ac_ext11243 /* end confdefs.h. */11244 int foo (void) { return 0; }11245 _ACEOF11246 if ac_fn_c_try_link "$LINENO"; then :11247 lt_cv_irix_exported_symbol=yes11248 else11249 lt_cv_irix_exported_symbol=no11250 fi11251 rm -f core conftest.err conftest.$ac_objext \11252 conftest$ac_exeext conftest.$ac_ext11253 LDFLAGS=$save_LDFLAGS11254 fi11255 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_irix_exported_symbol" >&511256 $as_echo "$lt_cv_irix_exported_symbol" >&6; }11257 if test yes = "$lt_cv_irix_exported_symbol"; then11258 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'11259 fi11260 link_all_deplibs=no11261 else11262 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'11263 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'11264 fi11265 archive_cmds_need_lc='no'11266 hardcode_libdir_flag_spec='$wl-rpath $wl$libdir'11267 hardcode_libdir_separator=:11268 inherit_rpath=yes11269 link_all_deplibs=yes11270 ;;11271 11272 linux*)11273 case $cc_basename in11274 tcc*)11275 # Fabrice Bellard et al's Tiny C Compiler11276 ld_shlibs=yes11277 archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'11278 ;;11279 esac11280 ;;11281 11282 netbsd* | netbsdelf*-gnu)11283 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then11284 archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out11285 else11286 archive_cmds='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF11287 fi11288 hardcode_libdir_flag_spec='-R$libdir'11289 hardcode_direct=yes11290 hardcode_shlibpath_var=no11291 ;;11292 11293 newsos6)11294 archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'11295 hardcode_direct=yes11296 hardcode_libdir_flag_spec='$wl-rpath $wl$libdir'11297 hardcode_libdir_separator=:11298 hardcode_shlibpath_var=no11299 ;;11300 11301 *nto* | *qnx*)11302 ;;11303 11304 openbsd* | bitrig*)11305 if test -f /usr/libexec/ld.so; then11306 hardcode_direct=yes11307 hardcode_shlibpath_var=no11308 hardcode_direct_absolute=yes11309 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then11310 archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'11311 archive_expsym_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags $wl-retain-symbols-file,$export_symbols'11312 hardcode_libdir_flag_spec='$wl-rpath,$libdir'11313 export_dynamic_flag_spec='$wl-E'11314 else11315 archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'11316 hardcode_libdir_flag_spec='$wl-rpath,$libdir'11317 fi11318 else11319 ld_shlibs=no11320 fi11321 ;;11322 11323 os2*)11324 hardcode_libdir_flag_spec='-L$libdir'11325 hardcode_minus_L=yes11326 allow_undefined_flag=unsupported11327 shrext_cmds=.dll11328 archive_cmds='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~11329 $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~11330 $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~11331 $ECHO EXPORTS >> $output_objdir/$libname.def~11332 emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~11333 $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~11334 emximp -o $lib $output_objdir/$libname.def'11335 archive_expsym_cmds='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~11336 $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~11337 $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~11338 $ECHO EXPORTS >> $output_objdir/$libname.def~11339 prefix_cmds="$SED"~11340 if test EXPORTS = "`$SED 1q $export_symbols`"; then11341 prefix_cmds="$prefix_cmds -e 1d";11342 fi~11343 prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~11344 cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~11345 $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~11346 emximp -o $lib $output_objdir/$libname.def'11347 old_archive_From_new_cmds='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'11348 enable_shared_with_static_runtimes=yes11349 ;;11350 11351 osf3*)11352 if test yes = "$GCC"; then11353 allow_undefined_flag=' $wl-expect_unresolved $wl\*'11354 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'11355 else11356 allow_undefined_flag=' -expect_unresolved \*'11357 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'11358 fi11359 archive_cmds_need_lc='no'11360 hardcode_libdir_flag_spec='$wl-rpath $wl$libdir'11361 hardcode_libdir_separator=:11362 ;;11363 11364 osf4* | osf5*) # as osf3* with the addition of -msym flag11365 if test yes = "$GCC"; then11366 allow_undefined_flag=' $wl-expect_unresolved $wl\*'11367 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'11368 hardcode_libdir_flag_spec='$wl-rpath $wl$libdir'11369 else11370 allow_undefined_flag=' -expect_unresolved \*'11371 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'11372 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~11373 $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'11374 11375 # Both c and cxx compiler support -rpath directly11376 hardcode_libdir_flag_spec='-rpath $libdir'11377 fi11378 archive_cmds_need_lc='no'11379 hardcode_libdir_separator=:11380 ;;11381 11382 solaris*)11383 no_undefined_flag=' -z defs'11384 if test yes = "$GCC"; then11385 wlarc='$wl'11386 archive_cmds='$CC -shared $pic_flag $wl-z ${wl}text $wl-h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'11387 archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~11388 $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'11389 else11390 case `$CC -V 2>&1` in11391 *"Compilers 5.0"*)11392 wlarc=''11393 archive_cmds='$LD -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $linker_flags'11394 archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~11395 $LD -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp'11396 ;;11397 *)11398 wlarc='$wl'11399 archive_cmds='$CC -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $compiler_flags'11400 archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~11401 $CC -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'11402 ;;11403 esac11404 fi11405 hardcode_libdir_flag_spec='-R$libdir'11406 hardcode_shlibpath_var=no11407 case $host_os in11408 solaris2.[0-5] | solaris2.[0-5].*) ;;11409 *)11410 # The compiler driver will combine and reorder linker options,11411 # but understands '-z linker_flag'. GCC discards it without '$wl',11412 # but is careful enough not to reorder.11413 # Supported since Solaris 2.6 (maybe 2.5.1?)11414 if test yes = "$GCC"; then11415 whole_archive_flag_spec='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract'11416 else11417 whole_archive_flag_spec='-z allextract$convenience -z defaultextract'11418 fi11419 ;;11420 esac11421 link_all_deplibs=yes11422 ;;11423 11424 sunos4*)11425 if test sequent = "$host_vendor"; then11426 # Use $CC to link under sequent, because it throws in some extra .o11427 # files that make .init and .fini sections work.11428 archive_cmds='$CC -G $wl-h $soname -o $lib $libobjs $deplibs $compiler_flags'11429 else11430 archive_cmds='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags'11431 fi11432 hardcode_libdir_flag_spec='-L$libdir'11433 hardcode_direct=yes11434 hardcode_minus_L=yes11435 hardcode_shlibpath_var=no11436 ;;11437 11438 sysv4)11439 case $host_vendor in11440 sni)11441 archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'11442 hardcode_direct=yes # is this really true???11443 ;;11444 siemens)11445 ## LD is ld it makes a PLAMLIB11446 ## CC just makes a GrossModule.11447 archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags'11448 reload_cmds='$CC -r -o $output$reload_objs'11449 hardcode_direct=no11450 ;;11451 motorola)11452 archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'11453 hardcode_direct=no #Motorola manual says yes, but my tests say they lie11454 ;;11455 esac11456 runpath_var='LD_RUN_PATH'11457 hardcode_shlibpath_var=no11458 ;;11459 11460 sysv4.3*)11461 archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'11462 hardcode_shlibpath_var=no11463 export_dynamic_flag_spec='-Bexport'11464 ;;11465 11466 sysv4*MP*)11467 if test -d /usr/nec; then11468 archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'11469 hardcode_shlibpath_var=no11470 runpath_var=LD_RUN_PATH11471 hardcode_runpath_var=yes11472 ld_shlibs=yes11473 fi11474 ;;11475 11476 sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[01].[10]* | unixware7* | sco3.2v5.0.[024]*)11477 no_undefined_flag='$wl-z,text'11478 archive_cmds_need_lc=no11479 hardcode_shlibpath_var=no11480 runpath_var='LD_RUN_PATH'11481 11482 if test yes = "$GCC"; then11483 archive_cmds='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'11484 archive_expsym_cmds='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'11485 else11486 archive_cmds='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'11487 archive_expsym_cmds='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'11488 fi11489 ;;11490 11491 sysv5* | sco3.2v5* | sco5v6*)11492 # Note: We CANNOT use -z defs as we might desire, because we do not11493 # link with -lc, and that would cause any symbols used from libc to11494 # always be unresolved, which means just about no library would11495 # ever link correctly. If we're not using GNU ld we use -z text11496 # though, which does catch some bad symbols but isn't as heavy-handed11497 # as -z defs.11498 no_undefined_flag='$wl-z,text'11499 allow_undefined_flag='$wl-z,nodefs'11500 archive_cmds_need_lc=no11501 hardcode_shlibpath_var=no11502 hardcode_libdir_flag_spec='$wl-R,$libdir'11503 hardcode_libdir_separator=':'11504 link_all_deplibs=yes11505 export_dynamic_flag_spec='$wl-Bexport'11506 runpath_var='LD_RUN_PATH'11507 11508 if test yes = "$GCC"; then11509 archive_cmds='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'11510 archive_expsym_cmds='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'11511 else11512 archive_cmds='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'11513 archive_expsym_cmds='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'11514 fi11515 ;;11516 11517 uts4*)11518 archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'11519 hardcode_libdir_flag_spec='-L$libdir'11520 hardcode_shlibpath_var=no11521 ;;11522 11523 *)11524 ld_shlibs=no11525 ;;11526 esac11527 11528 if test sni = "$host_vendor"; then11529 case $host in11530 sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)11531 export_dynamic_flag_spec='$wl-Blargedynsym'11532 ;;11533 esac11534 fi11535 fi11536 11537 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs" >&511538 $as_echo "$ld_shlibs" >&6; }11539 test no = "$ld_shlibs" && can_build_shared=no11540 11541 with_gnu_ld=$with_gnu_ld11542 11543 11544 11545 11546 11547 11548 11549 11550 11551 11552 11553 11554 11555 11556 11557 #11558 # Do we need to explicitly link libc?11559 #11560 case "x$archive_cmds_need_lc" in11561 x|xyes)11562 # Assume -lc should be added11563 archive_cmds_need_lc=yes11564 11565 if test yes,yes = "$GCC,$enable_shared"; then11566 case $archive_cmds in11567 *'~'*)11568 # FIXME: we may have to deal with multi-command sequences.11569 ;;11570 '$CC '*)11571 # Test whether the compiler implicitly links with -lc since on some11572 # systems, -lgcc has to come before -lc. If gcc already passes -lc11573 # to ld, don't add -lc before -lgcc.11574 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -lc should be explicitly linked in" >&511575 $as_echo_n "checking whether -lc should be explicitly linked in... " >&6; }11576 if ${lt_cv_archive_cmds_need_lc+:} false; then :11577 $as_echo_n "(cached) " >&611578 else11579 $RM conftest*11580 echo "$lt_simple_compile_test_code" > conftest.$ac_ext11581 11582 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&511583 (eval $ac_compile) 2>&511584 ac_status=$?11585 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&511586 test $ac_status = 0; } 2>conftest.err; then11587 soname=conftest11588 lib=conftest11589 libobjs=conftest.$ac_objext11590 deplibs=11591 wl=$lt_prog_compiler_wl11592 pic_flag=$lt_prog_compiler_pic11593 compiler_flags=-v11594 linker_flags=-v11595 verstring=11596 output_objdir=.11597 libname=conftest11598 lt_save_allow_undefined_flag=$allow_undefined_flag11599 allow_undefined_flag=11600 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$archive_cmds 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1\""; } >&511601 (eval $archive_cmds 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1) 2>&511602 ac_status=$?11603 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&511604 test $ac_status = 0; }11605 then11606 lt_cv_archive_cmds_need_lc=no11607 else11608 lt_cv_archive_cmds_need_lc=yes11609 fi11610 allow_undefined_flag=$lt_save_allow_undefined_flag11611 else11612 cat conftest.err 1>&511613 fi11614 $RM conftest*11615 11616 fi11617 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_archive_cmds_need_lc" >&511618 $as_echo "$lt_cv_archive_cmds_need_lc" >&6; }11619 archive_cmds_need_lc=$lt_cv_archive_cmds_need_lc11620 ;;11621 esac11622 fi11623 ;;11624 esac11625 11626 11627 11628 11629 11630 11631 11632 11633 11634 11635 11636 11637 11638 11639 11640 11641 11642 11643 11644 11645 11646 11647 11648 11649 11650 11651 11652 11653 11654 11655 11656 11657 11658 11659 11660 11661 11662 11663 11664 11665 11666 11667 11668 11669 11670 11671 11672 11673 11674 11675 11676 11677 11678 11679 11680 11681 11682 11683 11684 11685 11686 11687 11688 11689 11690 11691 11692 11693 11694 11695 11696 11697 11698 11699 11700 11701 11702 11703 11704 11705 11706 11707 11708 11709 11710 11711 11712 11713 11714 11715 11716 11717 11718 11719 11720 11721 11722 11723 11724 11725 11726 11727 11728 11729 11730 11731 11732 11733 11734 11735 11736 11737 11738 11739 11740 11741 11742 11743 11744 11745 11746 11747 11748 11749 11750 11751 11752 11753 11754 11755 11756 11757 11758 11759 11760 11761 11762 11763 11764 11765 11766 11767 11768 11769 11770 11771 11772 11773 11774 11775 11776 11777 { $as_echo "$as_me:${as_lineno-$LINENO}: checking dynamic linker characteristics" >&511778 $as_echo_n "checking dynamic linker characteristics... " >&6; }11779 11780 if test yes = "$GCC"; then11781 case $host_os in11782 darwin*) lt_awk_arg='/^libraries:/,/LR/' ;;11783 *) lt_awk_arg='/^libraries:/' ;;11784 esac11785 case $host_os in11786 mingw* | cegcc*) lt_sed_strip_eq='s|=\([A-Za-z]:\)|\1|g' ;;11787 *) lt_sed_strip_eq='s|=/|/|g' ;;11788 esac11789 lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e $lt_sed_strip_eq`11790 case $lt_search_path_spec in11791 *\;*)11792 # if the path contains ";" then we assume it to be the separator11793 # otherwise default to the standard path separator (i.e. ":") - it is11794 # assumed that no part of a normal pathname contains ";" but that should11795 # okay in the real world where ";" in dirpaths is itself problematic.11796 lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED 's/;/ /g'`11797 ;;11798 *)11799 lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED "s/$PATH_SEPARATOR/ /g"`11800 ;;11801 esac11802 # Ok, now we have the path, separated by spaces, we can step through it11803 # and add multilib dir if necessary...11804 lt_tmp_lt_search_path_spec=11805 lt_multi_os_dir=/`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null`11806 # ...but if some path component already ends with the multilib dir we assume11807 # that all is fine and trust -print-search-dirs as is (GCC 4.2? or newer).11808 case "$lt_multi_os_dir; $lt_search_path_spec " in11809 "/; "* | "/.; "* | "/./; "* | *"$lt_multi_os_dir "* | *"$lt_multi_os_dir/ "*)11810 lt_multi_os_dir=11811 ;;11812 esac11813 for lt_sys_path in $lt_search_path_spec; do11814 if test -d "$lt_sys_path$lt_multi_os_dir"; then11815 lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path$lt_multi_os_dir"11816 elif test -n "$lt_multi_os_dir"; then11817 test -d "$lt_sys_path" && \11818 lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path"11819 fi11820 done11821 lt_search_path_spec=`$ECHO "$lt_tmp_lt_search_path_spec" | awk '11822 BEGIN {RS = " "; FS = "/|\n";} {11823 lt_foo = "";11824 lt_count = 0;11825 for (lt_i = NF; lt_i > 0; lt_i--) {11826 if ($lt_i != "" && $lt_i != ".") {11827 if ($lt_i == "..") {11828 lt_count++;11829 } else {11830 if (lt_count == 0) {11831 lt_foo = "/" $lt_i lt_foo;11832 } else {11833 lt_count--;11834 }11835 }11836 }11837 }11838 if (lt_foo != "") { lt_freq[lt_foo]++; }11839 if (lt_freq[lt_foo] == 1) { print lt_foo; }11840 }'`11841 # AWK program above erroneously prepends '/' to C:/dos/paths11842 # for these hosts.11843 case $host_os in11844 mingw* | cegcc*) lt_search_path_spec=`$ECHO "$lt_search_path_spec" |\11845 $SED 's|/\([A-Za-z]:\)|\1|g'` ;;11846 esac11847 sys_lib_search_path_spec=`$ECHO "$lt_search_path_spec" | $lt_NL2SP`11848 else11849 sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"11850 fi11851 library_names_spec=11852 libname_spec='lib$name'11853 soname_spec=11854 shrext_cmds=.so11855 postinstall_cmds=11856 postuninstall_cmds=11857 finish_cmds=11858 finish_eval=11859 shlibpath_var=11860 shlibpath_overrides_runpath=unknown11861 version_type=none11862 dynamic_linker="$host_os ld.so"11863 sys_lib_dlsearch_path_spec="/lib /usr/lib"11864 need_lib_prefix=unknown11865 hardcode_into_libs=no11866 11867 # when you set need_version to no, make sure it does not cause -set_version11868 # flags to be left without arguments11869 need_version=unknown11870 11871 11872 11873 case $host_os in11874 aix3*)11875 version_type=linux # correct to gnu/linux during the next big refactor11876 library_names_spec='$libname$release$shared_ext$versuffix $libname.a'11877 shlibpath_var=LIBPATH11878 11879 # AIX 3 has no versioning support, so we append a major version to the name.11880 soname_spec='$libname$release$shared_ext$major'11881 ;;11882 11883 aix[4-9]*)11884 version_type=linux # correct to gnu/linux during the next big refactor11885 need_lib_prefix=no11886 need_version=no11887 hardcode_into_libs=yes11888 if test ia64 = "$host_cpu"; then11889 # AIX 5 supports IA6411890 library_names_spec='$libname$release$shared_ext$major $libname$release$shared_ext$versuffix $libname$shared_ext'11891 shlibpath_var=LD_LIBRARY_PATH11892 else11893 # With GCC up to 2.95.x, collect2 would create an import file11894 # for dependence libraries. The import file would start with11895 # the line '#! .'. This would cause the generated library to11896 # depend on '.', always an invalid library. This was fixed in11897 # development snapshots of GCC prior to 3.0.11898 case $host_os in11899 aix4 | aix4.[01] | aix4.[01].*)11900 if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'11901 echo ' yes '11902 echo '#endif'; } | $CC -E - | $GREP yes > /dev/null; then11903 :11904 else11905 can_build_shared=no11906 fi11907 ;;11908 esac11909 # Using Import Files as archive members, it is possible to support11910 # filename-based versioning of shared library archives on AIX. While11911 # this would work for both with and without runtime linking, it will11912 # prevent static linking of such archives. So we do filename-based11913 # shared library versioning with .so extension only, which is used11914 # when both runtime linking and shared linking is enabled.11915 # Unfortunately, runtime linking may impact performance, so we do11916 # not want this to be the default eventually. Also, we use the11917 # versioned .so libs for executables only if there is the -brtl11918 # linker flag in LDFLAGS as well, or --with-aix-soname=svr4 only.11919 # To allow for filename-based versioning support, we need to create11920 # libNAME.so.V as an archive file, containing:11921 # *) an Import File, referring to the versioned filename of the11922 # archive as well as the shared archive member, telling the11923 # bitwidth (32 or 64) of that shared object, and providing the11924 # list of exported symbols of that shared object, eventually11925 # decorated with the 'weak' keyword11926 # *) the shared object with the F_LOADONLY flag set, to really avoid11927 # it being seen by the linker.11928 # At run time we better use the real file rather than another symlink,11929 # but for link time we create the symlink libNAME.so -> libNAME.so.V11930 11931 case $with_aix_soname,$aix_use_runtimelinking in11932 # AIX (on Power*) has no versioning support, so currently we cannot hardcode correct11933 # soname into executable. Probably we can add versioning support to11934 # collect2, so additional links can be useful in future.11935 aix,yes) # traditional libtool11936 dynamic_linker='AIX unversionable lib.so'11937 # If using run time linking (on AIX 4.2 or later) use lib<name>.so11938 # instead of lib<name>.a to let people know that these are not11939 # typical AIX shared libraries.11940 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'11941 ;;11942 aix,no) # traditional AIX only11943 dynamic_linker='AIX lib.a(lib.so.V)'11944 # We preserve .a as extension for shared libraries through AIX4.211945 # and later when we are not doing run time linking.11946 library_names_spec='$libname$release.a $libname.a'11947 soname_spec='$libname$release$shared_ext$major'11948 ;;11949 svr4,*) # full svr4 only11950 dynamic_linker="AIX lib.so.V($shared_archive_member_spec.o)"11951 library_names_spec='$libname$release$shared_ext$major $libname$shared_ext'11952 # We do not specify a path in Import Files, so LIBPATH fires.11953 shlibpath_overrides_runpath=yes11954 ;;11955 *,yes) # both, prefer svr411956 dynamic_linker="AIX lib.so.V($shared_archive_member_spec.o), lib.a(lib.so.V)"11957 library_names_spec='$libname$release$shared_ext$major $libname$shared_ext'11958 # unpreferred sharedlib libNAME.a needs extra handling11959 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"'11960 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"'11961 # We do not specify a path in Import Files, so LIBPATH fires.11962 shlibpath_overrides_runpath=yes11963 ;;11964 *,no) # both, prefer aix11965 dynamic_linker="AIX lib.a(lib.so.V), lib.so.V($shared_archive_member_spec.o)"11966 library_names_spec='$libname$release.a $libname.a'11967 soname_spec='$libname$release$shared_ext$major'11968 # unpreferred sharedlib libNAME.so.V and symlink libNAME.so need extra handling11969 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)'11970 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"'11971 ;;11972 esac11973 shlibpath_var=LIBPATH11974 fi11975 ;;11976 11977 amigaos*)11978 case $host_cpu in11979 powerpc)11980 # Since July 2007 AmigaOS4 officially supports .so libraries.11981 # When compiling the executable, add -use-dynld -Lsobjs: to the compileline.11982 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'11983 ;;11984 m68k)11985 library_names_spec='$libname.ixlibrary $libname.a'11986 # Create ${libname}_ixlibrary.a entries in /sys/libs.11987 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'11988 ;;11989 esac11990 ;;11991 11992 beos*)11993 library_names_spec='$libname$shared_ext'11994 dynamic_linker="$host_os ld.so"11995 shlibpath_var=LIBRARY_PATH11996 ;;11997 11998 bsdi[45]*)11999 version_type=linux # correct to gnu/linux during the next big refactor12000 need_version=no12001 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'12002 soname_spec='$libname$release$shared_ext$major'12003 finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'12004 shlibpath_var=LD_LIBRARY_PATH12005 sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"12006 sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"12007 # the default ld.so.conf also contains /usr/contrib/lib and12008 # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow12009 # libtool to hard-code these into programs12010 ;;12011 12012 cygwin* | mingw* | pw32* | cegcc*)12013 version_type=windows12014 shrext_cmds=.dll12015 need_version=no12016 need_lib_prefix=no12017 12018 case $GCC,$cc_basename in12019 yes,*)12020 # gcc12021 library_names_spec='$libname.dll.a'12022 # DLL is installed to $(libdir)/../bin by postinstall_cmds12023 postinstall_cmds='base_file=`basename \$file`~12024 dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~12025 dldir=$destdir/`dirname \$dlpath`~12026 test -d \$dldir || mkdir -p \$dldir~12027 $install_prog $dir/$dlname \$dldir/$dlname~12028 chmod a+x \$dldir/$dlname~12029 if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then12030 eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;12031 fi'12032 postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~12033 dlpath=$dir/\$dldll~12034 $RM \$dlpath'12035 shlibpath_overrides_runpath=yes12036 12037 case $host_os in12038 cygwin*)12039 # Cygwin DLLs use 'cyg' prefix rather than 'lib'12040 soname_spec='`echo $libname | sed -e 's/^lib/cyg/'``echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'12041 12042 sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api"12043 ;;12044 mingw* | cegcc*)12045 # MinGW DLLs use traditional 'lib' prefix12046 soname_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'12047 ;;12048 pw32*)12049 # pw32 DLLs use 'pw' prefix rather than 'lib'12050 library_names_spec='`echo $libname | sed -e 's/^lib/pw/'``echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'12051 ;;12052 esac12053 dynamic_linker='Win32 ld.exe'12054 ;;12055 12056 *,cl*)12057 # Native MSVC12058 libname_spec='$name'12059 soname_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'12060 library_names_spec='$libname.dll.lib'12061 12062 case $build_os in12063 mingw*)12064 sys_lib_search_path_spec=12065 lt_save_ifs=$IFS12066 IFS=';'12067 for lt_path in $LIB12068 do12069 IFS=$lt_save_ifs12070 # Let DOS variable expansion print the short 8.3 style file name.12071 lt_path=`cd "$lt_path" 2>/dev/null && cmd //C "for %i in (".") do @echo %~si"`12072 sys_lib_search_path_spec="$sys_lib_search_path_spec $lt_path"12073 done12074 IFS=$lt_save_ifs12075 # Convert to MSYS style.12076 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | sed -e 's|\\\\|/|g' -e 's| \\([a-zA-Z]\\):| /\\1|g' -e 's|^ ||'`12077 ;;12078 cygwin*)12079 # Convert to unix form, then to dos form, then back to unix form12080 # but this time dos style (no spaces!) so that the unix form looks12081 # like /cygdrive/c/PROGRA~1:/cygdr...12082 sys_lib_search_path_spec=`cygpath --path --unix "$LIB"`12083 sys_lib_search_path_spec=`cygpath --path --dos "$sys_lib_search_path_spec" 2>/dev/null`12084 sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`12085 ;;12086 *)12087 sys_lib_search_path_spec=$LIB12088 if $ECHO "$sys_lib_search_path_spec" | $GREP ';[c-zC-Z]:/' >/dev/null; then12089 # It is most probably a Windows format PATH.12090 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`12091 else12092 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`12093 fi12094 # FIXME: find the short name or the path components, as spaces are12095 # common. (e.g. "Program Files" -> "PROGRA~1")12096 ;;12097 esac12098 12099 # DLL is installed to $(libdir)/../bin by postinstall_cmds12100 postinstall_cmds='base_file=`basename \$file`~12101 dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~12102 dldir=$destdir/`dirname \$dlpath`~12103 test -d \$dldir || mkdir -p \$dldir~12104 $install_prog $dir/$dlname \$dldir/$dlname'12105 postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~12106 dlpath=$dir/\$dldll~12107 $RM \$dlpath'12108 shlibpath_overrides_runpath=yes12109 dynamic_linker='Win32 link.exe'12110 ;;12111 12112 *)12113 # Assume MSVC wrapper12114 library_names_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext $libname.lib'12115 dynamic_linker='Win32 ld.exe'12116 ;;12117 esac12118 # FIXME: first we should search . and the directory the executable is in12119 shlibpath_var=PATH12120 ;;12121 12122 darwin* | rhapsody*)12123 dynamic_linker="$host_os dyld"12124 version_type=darwin12125 need_lib_prefix=no12126 need_version=no12127 library_names_spec='$libname$release$major$shared_ext $libname$shared_ext'12128 soname_spec='$libname$release$major$shared_ext'12129 shlibpath_overrides_runpath=yes12130 shlibpath_var=DYLD_LIBRARY_PATH12131 shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'12132 12133 sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"12134 sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'12135 ;;12136 12137 dgux*)12138 version_type=linux # correct to gnu/linux during the next big refactor12139 need_lib_prefix=no12140 need_version=no12141 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'12142 soname_spec='$libname$release$shared_ext$major'12143 shlibpath_var=LD_LIBRARY_PATH12144 ;;12145 12146 freebsd* | dragonfly*)12147 # DragonFly does not have aout. When/if they implement a new12148 # versioning mechanism, adjust this.12149 if test -x /usr/bin/objformat; then12150 objformat=`/usr/bin/objformat`12151 else12152 case $host_os in12153 freebsd[23].*) objformat=aout ;;12154 *) objformat=elf ;;12155 esac12156 fi12157 version_type=freebsd-$objformat12158 case $version_type in12159 freebsd-elf*)12160 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'12161 soname_spec='$libname$release$shared_ext$major'12162 need_version=no12163 need_lib_prefix=no12164 ;;12165 freebsd-*)12166 library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'12167 need_version=yes12168 ;;12169 esac12170 shlibpath_var=LD_LIBRARY_PATH12171 case $host_os in12172 freebsd2.*)12173 shlibpath_overrides_runpath=yes12174 ;;12175 freebsd3.[01]* | freebsdelf3.[01]*)12176 shlibpath_overrides_runpath=yes12177 hardcode_into_libs=yes12178 ;;12179 freebsd3.[2-9]* | freebsdelf3.[2-9]* | \12180 freebsd4.[0-5] | freebsdelf4.[0-5] | freebsd4.1.1 | freebsdelf4.1.1)12181 shlibpath_overrides_runpath=no12182 hardcode_into_libs=yes12183 ;;12184 *) # from 4.6 on, and DragonFly12185 shlibpath_overrides_runpath=yes12186 hardcode_into_libs=yes12187 ;;12188 esac12189 ;;12190 12191 haiku*)12192 version_type=linux # correct to gnu/linux during the next big refactor12193 need_lib_prefix=no12194 need_version=no12195 dynamic_linker="$host_os runtime_loader"12196 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'12197 soname_spec='$libname$release$shared_ext$major'12198 shlibpath_var=LIBRARY_PATH12199 shlibpath_overrides_runpath=no12200 sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib'12201 hardcode_into_libs=yes12202 ;;12203 12204 hpux9* | hpux10* | hpux11*)12205 # Give a soname corresponding to the major version so that dld.sl refuses to12206 # link against other versions.12207 version_type=sunos12208 need_lib_prefix=no12209 need_version=no12210 case $host_cpu in12211 ia64*)12212 shrext_cmds='.so'12213 hardcode_into_libs=yes12214 dynamic_linker="$host_os dld.so"12215 shlibpath_var=LD_LIBRARY_PATH12216 shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.12217 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'12218 soname_spec='$libname$release$shared_ext$major'12219 if test 32 = "$HPUX_IA64_MODE"; then12220 sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"12221 sys_lib_dlsearch_path_spec=/usr/lib/hpux3212222 else12223 sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"12224 sys_lib_dlsearch_path_spec=/usr/lib/hpux6412225 fi12226 ;;12227 hppa*64*)12228 shrext_cmds='.sl'12229 hardcode_into_libs=yes12230 dynamic_linker="$host_os dld.sl"12231 shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH12232 shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.12233 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'12234 soname_spec='$libname$release$shared_ext$major'12235 sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64"12236 sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec12237 ;;12238 *)12239 shrext_cmds='.sl'12240 dynamic_linker="$host_os dld.sl"12241 shlibpath_var=SHLIB_PATH12242 shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH12243 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'12244 soname_spec='$libname$release$shared_ext$major'12245 ;;12246 esac12247 # HP-UX runs *really* slowly unless shared libraries are mode 555, ...12248 postinstall_cmds='chmod 555 $lib'12249 # or fails outright, so override atomically:12250 install_override_mode=55512251 ;;12252 12253 interix[3-9]*)12254 version_type=linux # correct to gnu/linux during the next big refactor12255 need_lib_prefix=no12256 need_version=no12257 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'12258 soname_spec='$libname$release$shared_ext$major'12259 dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)'12260 shlibpath_var=LD_LIBRARY_PATH12261 shlibpath_overrides_runpath=no12262 hardcode_into_libs=yes12263 ;;12264 12265 irix5* | irix6* | nonstopux*)12266 case $host_os in12267 nonstopux*) version_type=nonstopux ;;12268 *)12269 if test yes = "$lt_cv_prog_gnu_ld"; then12270 version_type=linux # correct to gnu/linux during the next big refactor12271 else12272 version_type=irix12273 fi ;;12274 esac12275 need_lib_prefix=no12276 need_version=no12277 soname_spec='$libname$release$shared_ext$major'12278 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$release$shared_ext $libname$shared_ext'12279 case $host_os in12280 irix5* | nonstopux*)12281 libsuff= shlibsuff=12282 ;;12283 *)12284 case $LD in # libtool.m4 will add one of these switches to LD12285 *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ")12286 libsuff= shlibsuff= libmagic=32-bit;;12287 *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ")12288 libsuff=32 shlibsuff=N32 libmagic=N32;;12289 *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ")12290 libsuff=64 shlibsuff=64 libmagic=64-bit;;12291 *) libsuff= shlibsuff= libmagic=never-match;;12292 esac12293 ;;12294 esac12295 shlibpath_var=LD_LIBRARY${shlibsuff}_PATH12296 shlibpath_overrides_runpath=no12297 sys_lib_search_path_spec="/usr/lib$libsuff /lib$libsuff /usr/local/lib$libsuff"12298 sys_lib_dlsearch_path_spec="/usr/lib$libsuff /lib$libsuff"12299 hardcode_into_libs=yes12300 ;;12301 12302 # No shared lib support for Linux oldld, aout, or coff.12303 linux*oldld* | linux*aout* | linux*coff*)12304 dynamic_linker=no12305 ;;12306 12307 linux*android*)12308 version_type=none # Android doesn't support versioned libraries.12309 need_lib_prefix=no12310 need_version=no12311 library_names_spec='$libname$release$shared_ext'12312 soname_spec='$libname$release$shared_ext'12313 finish_cmds=12314 shlibpath_var=LD_LIBRARY_PATH12315 shlibpath_overrides_runpath=yes12316 12317 # This implies no fast_install, which is unacceptable.12318 # Some rework will be needed to allow for fast_install12319 # before this can be enabled.12320 hardcode_into_libs=yes12321 12322 dynamic_linker='Android linker'12323 # Don't embed -rpath directories since the linker doesn't support them.12324 hardcode_libdir_flag_spec='-L$libdir'12325 ;;12326 12327 # This must be glibc/ELF.12328 linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)12329 version_type=linux # correct to gnu/linux during the next big refactor12330 need_lib_prefix=no12331 need_version=no12332 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'12333 soname_spec='$libname$release$shared_ext$major'12334 finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'12335 shlibpath_var=LD_LIBRARY_PATH12336 shlibpath_overrides_runpath=no12337 12338 # Some binutils ld are patched to set DT_RUNPATH12339 if ${lt_cv_shlibpath_overrides_runpath+:} false; then :12340 $as_echo_n "(cached) " >&612341 else12342 lt_cv_shlibpath_overrides_runpath=no12343 save_LDFLAGS=$LDFLAGS12344 save_libdir=$libdir12345 eval "libdir=/foo; wl=\"$lt_prog_compiler_wl\"; \12346 LDFLAGS=\"\$LDFLAGS $hardcode_libdir_flag_spec\""12347 cat confdefs.h - <<_ACEOF >conftest.$ac_ext12348 /* end confdefs.h. */12349 12350 int12351 main ()12352 {12353 12354 ;12355 return 0;12356 }12357 _ACEOF12358 if ac_fn_c_try_link "$LINENO"; then :12359 if ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null; then :12360 lt_cv_shlibpath_overrides_runpath=yes12361 fi12362 fi12363 rm -f core conftest.err conftest.$ac_objext \12364 conftest$ac_exeext conftest.$ac_ext12365 LDFLAGS=$save_LDFLAGS12366 libdir=$save_libdir12367 12368 fi12369 12370 shlibpath_overrides_runpath=$lt_cv_shlibpath_overrides_runpath12371 12372 # This implies no fast_install, which is unacceptable.12373 # Some rework will be needed to allow for fast_install12374 # before this can be enabled.12375 hardcode_into_libs=yes12376 12377 # Ideally, we could use ldconfig to report *all* directores which are12378 # searched for libraries, however this is still not possible. Aside from not12379 # being certain /sbin/ldconfig is available, command12380 # 'ldconfig -N -X -v | grep ^/' on 64bit Fedora does not report /usr/lib64,12381 # even though it is searched at run-time. Try to do the best guess by12382 # appending ld.so.conf contents (and includes) to the search path.12383 if test -f /etc/ld.so.conf; then12384 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' ' '`12385 sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"12386 fi12387 12388 # We used to test for /lib/ld.so.1 and disable shared libraries on12389 # powerpc, because MkLinux only supported shared libraries with the12390 # GNU dynamic linker. Since this was broken with cross compilers,12391 # most powerpc-linux boxes support dynamic linking these days and12392 # people can always --disable-shared, the test was removed, and we12393 # assume the GNU/Linux dynamic linker is in use.12394 dynamic_linker='GNU/Linux ld.so'12395 ;;12396 12397 netbsdelf*-gnu)12398 version_type=linux12399 need_lib_prefix=no12400 need_version=no12401 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'12402 soname_spec='${libname}${release}${shared_ext}$major'12403 shlibpath_var=LD_LIBRARY_PATH12404 shlibpath_overrides_runpath=no12405 hardcode_into_libs=yes12406 dynamic_linker='NetBSD ld.elf_so'12407 ;;12408 12409 netbsd*)12410 version_type=sunos12411 need_lib_prefix=no12412 need_version=no12413 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then12414 library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'12415 finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'12416 dynamic_linker='NetBSD (a.out) ld.so'12417 else12418 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'12419 soname_spec='$libname$release$shared_ext$major'12420 dynamic_linker='NetBSD ld.elf_so'12421 fi12422 shlibpath_var=LD_LIBRARY_PATH12423 shlibpath_overrides_runpath=yes12424 hardcode_into_libs=yes12425 ;;12426 12427 newsos6)12428 version_type=linux # correct to gnu/linux during the next big refactor12429 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'12430 shlibpath_var=LD_LIBRARY_PATH12431 shlibpath_overrides_runpath=yes12432 ;;12433 12434 *nto* | *qnx*)12435 version_type=qnx12436 need_lib_prefix=no12437 need_version=no12438 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'12439 soname_spec='$libname$release$shared_ext$major'12440 shlibpath_var=LD_LIBRARY_PATH12441 shlibpath_overrides_runpath=no12442 hardcode_into_libs=yes12443 dynamic_linker='ldqnx.so'12444 ;;12445 12446 openbsd* | bitrig*)12447 version_type=sunos12448 sys_lib_dlsearch_path_spec=/usr/lib12449 need_lib_prefix=no12450 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then12451 need_version=no12452 else12453 need_version=yes12454 fi12455 library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'12456 finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'12457 shlibpath_var=LD_LIBRARY_PATH12458 shlibpath_overrides_runpath=yes12459 ;;12460 12461 os2*)12462 libname_spec='$name'12463 version_type=windows12464 shrext_cmds=.dll12465 need_version=no12466 need_lib_prefix=no12467 # OS/2 can only load a DLL with a base name of 8 characters or less.12468 soname_spec='`test -n "$os2dllname" && libname="$os2dllname";12469 v=$($ECHO $release$versuffix | tr -d .-);12470 n=$($ECHO $libname | cut -b -$((8 - ${#v})) | tr . _);12471 $ECHO $n$v`$shared_ext'12472 library_names_spec='${libname}_dll.$libext'12473 dynamic_linker='OS/2 ld.exe'12474 shlibpath_var=BEGINLIBPATH12475 sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"12476 sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec12477 postinstall_cmds='base_file=`basename \$file`~12478 dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; $ECHO \$dlname'\''`~12479 dldir=$destdir/`dirname \$dlpath`~12480 test -d \$dldir || mkdir -p \$dldir~12481 $install_prog $dir/$dlname \$dldir/$dlname~12482 chmod a+x \$dldir/$dlname~12483 if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then12484 eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;12485 fi'12486 postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; $ECHO \$dlname'\''`~12487 dlpath=$dir/\$dldll~12488 $RM \$dlpath'12489 ;;12490 12491 osf3* | osf4* | osf5*)12492 version_type=osf12493 need_lib_prefix=no12494 need_version=no12495 soname_spec='$libname$release$shared_ext$major'12496 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'12497 shlibpath_var=LD_LIBRARY_PATH12498 sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"12499 sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec12500 ;;12501 12502 rdos*)12503 dynamic_linker=no12504 ;;12505 12506 solaris*)12507 version_type=linux # correct to gnu/linux during the next big refactor12508 need_lib_prefix=no12509 need_version=no12510 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'12511 soname_spec='$libname$release$shared_ext$major'12512 shlibpath_var=LD_LIBRARY_PATH12513 shlibpath_overrides_runpath=yes12514 hardcode_into_libs=yes12515 # ldd complains unless libraries are executable12516 postinstall_cmds='chmod +x $lib'12517 ;;12518 12519 sunos4*)12520 version_type=sunos12521 library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'12522 finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'12523 shlibpath_var=LD_LIBRARY_PATH12524 shlibpath_overrides_runpath=yes12525 if test yes = "$with_gnu_ld"; then12526 need_lib_prefix=no12527 fi12528 need_version=yes12529 ;;12530 12531 sysv4 | sysv4.3*)12532 version_type=linux # correct to gnu/linux during the next big refactor12533 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'12534 soname_spec='$libname$release$shared_ext$major'12535 shlibpath_var=LD_LIBRARY_PATH12536 case $host_vendor in12537 sni)12538 shlibpath_overrides_runpath=no12539 need_lib_prefix=no12540 runpath_var=LD_RUN_PATH12541 ;;12542 siemens)12543 need_lib_prefix=no12544 ;;12545 motorola)12546 need_lib_prefix=no12547 need_version=no12548 shlibpath_overrides_runpath=no12549 sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'12550 ;;12551 esac12552 ;;12553 12554 sysv4*MP*)12555 if test -d /usr/nec; then12556 version_type=linux # correct to gnu/linux during the next big refactor12557 library_names_spec='$libname$shared_ext.$versuffix $libname$shared_ext.$major $libname$shared_ext'12558 soname_spec='$libname$shared_ext.$major'12559 shlibpath_var=LD_LIBRARY_PATH12560 fi12561 ;;12562 12563 sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)12564 version_type=sco12565 need_lib_prefix=no12566 need_version=no12567 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext $libname$shared_ext'12568 soname_spec='$libname$release$shared_ext$major'12569 shlibpath_var=LD_LIBRARY_PATH12570 shlibpath_overrides_runpath=yes12571 hardcode_into_libs=yes12572 if test yes = "$with_gnu_ld"; then12573 sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib'12574 else12575 sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'12576 case $host_os in12577 sco3.2v5*)12578 sys_lib_search_path_spec="$sys_lib_search_path_spec /lib"12579 ;;12580 esac12581 fi12582 sys_lib_dlsearch_path_spec='/usr/lib'12583 ;;12584 12585 tpf*)12586 # TPF is a cross-target only. Preferred cross-host = GNU/Linux.12587 version_type=linux # correct to gnu/linux during the next big refactor12588 need_lib_prefix=no12589 need_version=no12590 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'12591 shlibpath_var=LD_LIBRARY_PATH12592 shlibpath_overrides_runpath=no12593 hardcode_into_libs=yes12594 ;;12595 12596 uts4*)12597 version_type=linux # correct to gnu/linux during the next big refactor12598 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'12599 soname_spec='$libname$release$shared_ext$major'12600 shlibpath_var=LD_LIBRARY_PATH12601 ;;12602 12603 *)12604 dynamic_linker=no12605 ;;12606 esac12607 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $dynamic_linker" >&512608 $as_echo "$dynamic_linker" >&6; }12609 test no = "$dynamic_linker" && can_build_shared=no12610 12611 variables_saved_for_relink="PATH $shlibpath_var $runpath_var"12612 if test yes = "$GCC"; then12613 variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"12614 fi12615 12616 if test set = "${lt_cv_sys_lib_search_path_spec+set}"; then12617 sys_lib_search_path_spec=$lt_cv_sys_lib_search_path_spec12618 fi12619 12620 if test set = "${lt_cv_sys_lib_dlsearch_path_spec+set}"; then12621 sys_lib_dlsearch_path_spec=$lt_cv_sys_lib_dlsearch_path_spec12622 fi12623 12624 # remember unaugmented sys_lib_dlsearch_path content for libtool script decls...12625 configure_time_dlsearch_path=$sys_lib_dlsearch_path_spec12626 12627 # ... but it needs LT_SYS_LIBRARY_PATH munging for other configure-time code12628 func_munge_path_list sys_lib_dlsearch_path_spec "$LT_SYS_LIBRARY_PATH"12629 12630 # to be used as default LT_SYS_LIBRARY_PATH value in generated libtool12631 configure_time_lt_sys_library_path=$LT_SYS_LIBRARY_PATH12632 12633 12634 12635 12636 12637 12638 12639 12640 12641 12642 12643 12644 12645 12646 12647 12648 12649 12650 12651 12652 12653 12654 12655 12656 12657 12658 12659 12660 12661 12662 12663 12664 12665 12666 12667 12668 12669 12670 12671 12672 12673 12674 12675 12676 12677 12678 12679 12680 12681 12682 12683 12684 12685 12686 12687 12688 12689 12690 12691 12692 12693 12694 12695 12696 12697 12698 12699 12700 12701 12702 12703 12704 12705 12706 12707 12708 12709 12710 12711 12712 12713 12714 12715 12716 12717 12718 12719 12720 12721 12722 12723 12724 12725 12726 12727 12728 12729 { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to hardcode library paths into programs" >&512730 $as_echo_n "checking how to hardcode library paths into programs... " >&6; }12731 hardcode_action=12732 if test -n "$hardcode_libdir_flag_spec" ||12733 test -n "$runpath_var" ||12734 test yes = "$hardcode_automatic"; then12735 12736 # We can hardcode non-existent directories.12737 if test no != "$hardcode_direct" &&12738 # If the only mechanism to avoid hardcoding is shlibpath_var, we12739 # have to relink, otherwise we might link with an installed library12740 # when we should be linking with a yet-to-be-installed one12741 ## test no != "$_LT_TAGVAR(hardcode_shlibpath_var, )" &&12742 test no != "$hardcode_minus_L"; then12743 # Linking always hardcodes the temporary library directory.12744 hardcode_action=relink12745 else12746 # We can link without hardcoding, and we can hardcode nonexisting dirs.12747 hardcode_action=immediate12748 fi12749 else12750 # We cannot hardcode anything, or else we can only hardcode existing12751 # directories.12752 hardcode_action=unsupported12753 fi12754 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $hardcode_action" >&512755 $as_echo "$hardcode_action" >&6; }12756 12757 if test relink = "$hardcode_action" ||12758 test yes = "$inherit_rpath"; then12759 # Fast installation is not supported12760 enable_fast_install=no12761 elif test yes = "$shlibpath_overrides_runpath" ||12762 test no = "$enable_shared"; then12763 # Fast installation is not necessary12764 enable_fast_install=needless12765 fi12766 12767 12768 12769 12770 12771 12772 if test yes != "$enable_dlopen"; then12773 enable_dlopen=unknown12774 enable_dlopen_self=unknown12775 enable_dlopen_self_static=unknown12776 else12777 lt_cv_dlopen=no12778 lt_cv_dlopen_libs=12779 12780 case $host_os in12781 beos*)12782 lt_cv_dlopen=load_add_on12783 lt_cv_dlopen_libs=12784 lt_cv_dlopen_self=yes12785 ;;12786 12787 mingw* | pw32* | cegcc*)12788 lt_cv_dlopen=LoadLibrary12789 lt_cv_dlopen_libs=12790 ;;12791 12792 cygwin*)12793 lt_cv_dlopen=dlopen12794 lt_cv_dlopen_libs=12795 ;;12796 12797 darwin*)12798 # if libdl is installed we need to link against it12799 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&512800 $as_echo_n "checking for dlopen in -ldl... " >&6; }12801 if ${ac_cv_lib_dl_dlopen+:} false; then :12802 $as_echo_n "(cached) " >&612803 else12804 ac_check_lib_save_LIBS=$LIBS12805 LIBS="-ldl $LIBS"12806 cat confdefs.h - <<_ACEOF >conftest.$ac_ext12807 /* end confdefs.h. */12808 12809 /* Override any GCC internal prototype to avoid an error.12810 Use char because int might match the return type of a GCC12811 builtin and then its argument prototype would still apply. */12812 #ifdef __cplusplus12813 extern "C"12814 #endif12815 char dlopen ();12816 int12817 main ()12818 {12819 return dlopen ();12820 ;12821 return 0;12822 }12823 _ACEOF12824 if ac_fn_c_try_link "$LINENO"; then :12825 ac_cv_lib_dl_dlopen=yes12826 else12827 ac_cv_lib_dl_dlopen=no12828 fi12829 rm -f core conftest.err conftest.$ac_objext \12830 conftest$ac_exeext conftest.$ac_ext12831 LIBS=$ac_check_lib_save_LIBS12832 fi12833 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&512834 $as_echo "$ac_cv_lib_dl_dlopen" >&6; }12835 if test "x$ac_cv_lib_dl_dlopen" = xyes; then :12836 lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl12837 else12838 12839 lt_cv_dlopen=dyld12840 lt_cv_dlopen_libs=12841 lt_cv_dlopen_self=yes12842 12843 fi12844 12845 ;;12846 12847 tpf*)12848 # Don't try to run any link tests for TPF. We know it's impossible12849 # because TPF is a cross-compiler, and we know how we open DSOs.12850 lt_cv_dlopen=dlopen12851 lt_cv_dlopen_libs=12852 lt_cv_dlopen_self=no12853 ;;12854 12855 *)12856 ac_fn_c_check_func "$LINENO" "shl_load" "ac_cv_func_shl_load"12857 if test "x$ac_cv_func_shl_load" = xyes; then :12858 lt_cv_dlopen=shl_load12859 else12860 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for shl_load in -ldld" >&512861 $as_echo_n "checking for shl_load in -ldld... " >&6; }12862 if ${ac_cv_lib_dld_shl_load+:} false; then :12863 $as_echo_n "(cached) " >&612864 else12865 ac_check_lib_save_LIBS=$LIBS12866 LIBS="-ldld $LIBS"12867 cat confdefs.h - <<_ACEOF >conftest.$ac_ext12868 /* end confdefs.h. */12869 12870 /* Override any GCC internal prototype to avoid an error.12871 Use char because int might match the return type of a GCC12872 builtin and then its argument prototype would still apply. */12873 #ifdef __cplusplus12874 extern "C"12875 #endif12876 char shl_load ();12877 int12878 main ()12879 {12880 return shl_load ();12881 ;12882 return 0;12883 }12884 _ACEOF12885 if ac_fn_c_try_link "$LINENO"; then :12886 ac_cv_lib_dld_shl_load=yes12887 else12888 ac_cv_lib_dld_shl_load=no12889 fi12890 rm -f core conftest.err conftest.$ac_objext \12891 conftest$ac_exeext conftest.$ac_ext12892 LIBS=$ac_check_lib_save_LIBS12893 fi12894 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_shl_load" >&512895 $as_echo "$ac_cv_lib_dld_shl_load" >&6; }12896 if test "x$ac_cv_lib_dld_shl_load" = xyes; then :12897 lt_cv_dlopen=shl_load lt_cv_dlopen_libs=-ldld12898 else12899 ac_fn_c_check_func "$LINENO" "dlopen" "ac_cv_func_dlopen"12900 if test "x$ac_cv_func_dlopen" = xyes; then :12901 lt_cv_dlopen=dlopen12902 else12903 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&512904 $as_echo_n "checking for dlopen in -ldl... " >&6; }12905 if ${ac_cv_lib_dl_dlopen+:} false; then :12906 $as_echo_n "(cached) " >&612907 else12908 ac_check_lib_save_LIBS=$LIBS12909 LIBS="-ldl $LIBS"12910 cat confdefs.h - <<_ACEOF >conftest.$ac_ext12911 /* end confdefs.h. */12912 12913 /* Override any GCC internal prototype to avoid an error.12914 Use char because int might match the return type of a GCC12915 builtin and then its argument prototype would still apply. */12916 #ifdef __cplusplus12917 extern "C"12918 #endif12919 char dlopen ();12920 int12921 main ()12922 {12923 return dlopen ();12924 ;12925 return 0;12926 }12927 _ACEOF12928 if ac_fn_c_try_link "$LINENO"; then :12929 ac_cv_lib_dl_dlopen=yes12930 else12931 ac_cv_lib_dl_dlopen=no12932 fi12933 rm -f core conftest.err conftest.$ac_objext \12934 conftest$ac_exeext conftest.$ac_ext12935 LIBS=$ac_check_lib_save_LIBS12936 fi12937 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&512938 $as_echo "$ac_cv_lib_dl_dlopen" >&6; }12939 if test "x$ac_cv_lib_dl_dlopen" = xyes; then :12940 lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl12941 else12942 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -lsvld" >&512943 $as_echo_n "checking for dlopen in -lsvld... " >&6; }12944 if ${ac_cv_lib_svld_dlopen+:} false; then :12945 $as_echo_n "(cached) " >&612946 else12947 ac_check_lib_save_LIBS=$LIBS12948 LIBS="-lsvld $LIBS"12949 cat confdefs.h - <<_ACEOF >conftest.$ac_ext12950 /* end confdefs.h. */12951 12952 /* Override any GCC internal prototype to avoid an error.12953 Use char because int might match the return type of a GCC12954 builtin and then its argument prototype would still apply. */12955 #ifdef __cplusplus12956 extern "C"12957 #endif12958 char dlopen ();12959 int12960 main ()12961 {12962 return dlopen ();12963 ;12964 return 0;12965 }12966 _ACEOF12967 if ac_fn_c_try_link "$LINENO"; then :12968 ac_cv_lib_svld_dlopen=yes12969 else12970 ac_cv_lib_svld_dlopen=no12971 fi12972 rm -f core conftest.err conftest.$ac_objext \12973 conftest$ac_exeext conftest.$ac_ext12974 LIBS=$ac_check_lib_save_LIBS12975 fi12976 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_svld_dlopen" >&512977 $as_echo "$ac_cv_lib_svld_dlopen" >&6; }12978 if test "x$ac_cv_lib_svld_dlopen" = xyes; then :12979 lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-lsvld12980 else12981 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dld_link in -ldld" >&512982 $as_echo_n "checking for dld_link in -ldld... " >&6; }12983 if ${ac_cv_lib_dld_dld_link+:} false; then :12984 $as_echo_n "(cached) " >&612985 else12986 ac_check_lib_save_LIBS=$LIBS12987 LIBS="-ldld $LIBS"12988 cat confdefs.h - <<_ACEOF >conftest.$ac_ext12989 /* end confdefs.h. */12990 12991 /* Override any GCC internal prototype to avoid an error.12992 Use char because int might match the return type of a GCC12993 builtin and then its argument prototype would still apply. */12994 #ifdef __cplusplus12995 extern "C"12996 #endif12997 char dld_link ();12998 int12999 main ()13000 {13001 return dld_link ();13002 ;13003 return 0;13004 }13005 _ACEOF13006 if ac_fn_c_try_link "$LINENO"; then :13007 ac_cv_lib_dld_dld_link=yes13008 else13009 ac_cv_lib_dld_dld_link=no13010 fi13011 rm -f core conftest.err conftest.$ac_objext \13012 conftest$ac_exeext conftest.$ac_ext13013 LIBS=$ac_check_lib_save_LIBS13014 fi13015 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_dld_link" >&513016 $as_echo "$ac_cv_lib_dld_dld_link" >&6; }13017 if test "x$ac_cv_lib_dld_dld_link" = xyes; then :13018 lt_cv_dlopen=dld_link lt_cv_dlopen_libs=-ldld13019 fi13020 13021 13022 fi13023 13024 13025 fi13026 13027 13028 fi13029 13030 13031 fi13032 13033 13034 fi13035 13036 ;;13037 esac13038 13039 if test no = "$lt_cv_dlopen"; then13040 enable_dlopen=no13041 else13042 enable_dlopen=yes13043 fi13044 13045 case $lt_cv_dlopen in13046 dlopen)13047 save_CPPFLAGS=$CPPFLAGS13048 test yes = "$ac_cv_header_dlfcn_h" && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"13049 13050 save_LDFLAGS=$LDFLAGS13051 wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"13052 13053 save_LIBS=$LIBS13054 LIBS="$lt_cv_dlopen_libs $LIBS"13055 13056 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a program can dlopen itself" >&513057 $as_echo_n "checking whether a program can dlopen itself... " >&6; }13058 if ${lt_cv_dlopen_self+:} false; then :13059 $as_echo_n "(cached) " >&613060 else13061 if test yes = "$cross_compiling"; then :13062 lt_cv_dlopen_self=cross13063 else13064 lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=213065 lt_status=$lt_dlunknown13066 cat > conftest.$ac_ext <<_LT_EOF13067 #line $LINENO "configure"13068 #include "confdefs.h"13069 13070 #if HAVE_DLFCN_H13071 #include <dlfcn.h>13072 #endif13073 13074 #include <stdio.h>13075 13076 #ifdef RTLD_GLOBAL13077 # define LT_DLGLOBAL RTLD_GLOBAL13078 #else13079 # ifdef DL_GLOBAL13080 # define LT_DLGLOBAL DL_GLOBAL13081 # else13082 # define LT_DLGLOBAL 013083 # endif13084 #endif13085 13086 /* We may have to define LT_DLLAZY_OR_NOW in the command line if we13087 find out it does not work in some platform. */13088 #ifndef LT_DLLAZY_OR_NOW13089 # ifdef RTLD_LAZY13090 # define LT_DLLAZY_OR_NOW RTLD_LAZY13091 # else13092 # ifdef DL_LAZY13093 # define LT_DLLAZY_OR_NOW DL_LAZY13094 # else13095 # ifdef RTLD_NOW13096 # define LT_DLLAZY_OR_NOW RTLD_NOW13097 # else13098 # ifdef DL_NOW13099 # define LT_DLLAZY_OR_NOW DL_NOW13100 # else13101 # define LT_DLLAZY_OR_NOW 013102 # endif13103 # endif13104 # endif13105 # endif13106 #endif13107 13108 /* When -fvisibility=hidden is used, assume the code has been annotated13109 correspondingly for the symbols needed. */13110 #if defined __GNUC__ && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))13111 int fnord () __attribute__((visibility("default")));13112 #endif13113 13114 int fnord () { return 42; }13115 int main ()13116 {13117 void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);13118 int status = $lt_dlunknown;13119 13120 if (self)13121 {13122 if (dlsym (self,"fnord")) status = $lt_dlno_uscore;13123 else13124 {13125 if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;13126 else puts (dlerror ());13127 }13128 /* dlclose (self); */13129 }13130 else13131 puts (dlerror ());13132 13133 return status;13134 }13135 _LT_EOF13136 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&513137 (eval $ac_link) 2>&513138 ac_status=$?13139 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&513140 test $ac_status = 0; } && test -s "conftest$ac_exeext" 2>/dev/null; then13141 (./conftest; exit; ) >&5 2>/dev/null13142 lt_status=$?13143 case x$lt_status in13144 x$lt_dlno_uscore) lt_cv_dlopen_self=yes ;;13145 x$lt_dlneed_uscore) lt_cv_dlopen_self=yes ;;13146 x$lt_dlunknown|x*) lt_cv_dlopen_self=no ;;13147 esac13148 else :13149 # compilation failed13150 lt_cv_dlopen_self=no13151 fi13152 fi13153 rm -fr conftest*13154 13155 13156 fi13157 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self" >&513158 $as_echo "$lt_cv_dlopen_self" >&6; }13159 13160 if test yes = "$lt_cv_dlopen_self"; then13161 wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\"13162 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a statically linked program can dlopen itself" >&513163 $as_echo_n "checking whether a statically linked program can dlopen itself... " >&6; }13164 if ${lt_cv_dlopen_self_static+:} false; then :13165 $as_echo_n "(cached) " >&613166 else13167 if test yes = "$cross_compiling"; then :13168 lt_cv_dlopen_self_static=cross13169 else13170 lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=213171 lt_status=$lt_dlunknown13172 cat > conftest.$ac_ext <<_LT_EOF13173 #line $LINENO "configure"13174 #include "confdefs.h"13175 13176 #if HAVE_DLFCN_H13177 #include <dlfcn.h>13178 #endif13179 13180 #include <stdio.h>13181 13182 #ifdef RTLD_GLOBAL13183 # define LT_DLGLOBAL RTLD_GLOBAL13184 #else13185 # ifdef DL_GLOBAL13186 # define LT_DLGLOBAL DL_GLOBAL13187 # else13188 # define LT_DLGLOBAL 013189 # endif13190 #endif13191 13192 /* We may have to define LT_DLLAZY_OR_NOW in the command line if we13193 find out it does not work in some platform. */13194 #ifndef LT_DLLAZY_OR_NOW13195 # ifdef RTLD_LAZY13196 # define LT_DLLAZY_OR_NOW RTLD_LAZY13197 # else13198 # ifdef DL_LAZY13199 # define LT_DLLAZY_OR_NOW DL_LAZY13200 # else13201 # ifdef RTLD_NOW13202 # define LT_DLLAZY_OR_NOW RTLD_NOW13203 # else13204 # ifdef DL_NOW13205 # define LT_DLLAZY_OR_NOW DL_NOW13206 # else13207 # define LT_DLLAZY_OR_NOW 013208 # endif13209 # endif13210 # endif13211 # endif13212 #endif13213 13214 /* When -fvisibility=hidden is used, assume the code has been annotated13215 correspondingly for the symbols needed. */13216 #if defined __GNUC__ && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))13217 int fnord () __attribute__((visibility("default")));13218 #endif13219 13220 int fnord () { return 42; }13221 int main ()13222 {13223 void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);13224 int status = $lt_dlunknown;13225 13226 if (self)13227 {13228 if (dlsym (self,"fnord")) status = $lt_dlno_uscore;13229 else13230 {13231 if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;13232 else puts (dlerror ());13233 }13234 /* dlclose (self); */13235 }13236 else13237 puts (dlerror ());13238 13239 return status;13240 }13241 _LT_EOF13242 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&513243 (eval $ac_link) 2>&513244 ac_status=$?13245 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&513246 test $ac_status = 0; } && test -s "conftest$ac_exeext" 2>/dev/null; then13247 (./conftest; exit; ) >&5 2>/dev/null13248 lt_status=$?13249 case x$lt_status in13250 x$lt_dlno_uscore) lt_cv_dlopen_self_static=yes ;;13251 x$lt_dlneed_uscore) lt_cv_dlopen_self_static=yes ;;13252 x$lt_dlunknown|x*) lt_cv_dlopen_self_static=no ;;13253 esac13254 else :13255 # compilation failed13256 lt_cv_dlopen_self_static=no13257 fi13258 fi13259 rm -fr conftest*13260 13261 13262 fi13263 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self_static" >&513264 $as_echo "$lt_cv_dlopen_self_static" >&6; }13265 fi13266 13267 CPPFLAGS=$save_CPPFLAGS13268 LDFLAGS=$save_LDFLAGS13269 LIBS=$save_LIBS13270 ;;13271 esac13272 13273 case $lt_cv_dlopen_self in13274 yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;13275 *) enable_dlopen_self=unknown ;;13276 esac13277 13278 case $lt_cv_dlopen_self_static in13279 yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;13280 *) enable_dlopen_self_static=unknown ;;13281 esac13282 fi13283 13284 13285 13286 13287 13288 13289 13290 13291 13292 13293 13294 13295 13296 13297 13298 13299 13300 striplib=13301 old_striplib=13302 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether stripping libraries is possible" >&513303 $as_echo_n "checking whether stripping libraries is possible... " >&6; }13304 if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then13305 test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"13306 test -z "$striplib" && striplib="$STRIP --strip-unneeded"13307 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&513308 $as_echo "yes" >&6; }13309 else13310 # FIXME - insert some real tests, host_os isn't really good enough13311 case $host_os in13312 darwin*)13313 if test -n "$STRIP"; then13314 striplib="$STRIP -x"13315 old_striplib="$STRIP -S"13316 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&513317 $as_echo "yes" >&6; }13318 else13319 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&513320 $as_echo "no" >&6; }13321 fi13322 ;;13323 *)13324 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&513325 $as_echo "no" >&6; }13326 ;;13327 esac13328 fi13329 13330 13331 13332 13333 13334 13335 13336 13337 13338 13339 13340 13341 # Report what library types will actually be built13342 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libtool supports shared libraries" >&513343 $as_echo_n "checking if libtool supports shared libraries... " >&6; }13344 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $can_build_shared" >&513345 $as_echo "$can_build_shared" >&6; }13346 13347 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build shared libraries" >&513348 $as_echo_n "checking whether to build shared libraries... " >&6; }13349 test no = "$can_build_shared" && enable_shared=no13350 13351 # On AIX, shared libraries and static libraries use the same namespace, and13352 # are all built from PIC.13353 case $host_os in13354 aix3*)13355 test yes = "$enable_shared" && enable_static=no13356 if test -n "$RANLIB"; then13357 archive_cmds="$archive_cmds~\$RANLIB \$lib"13358 postinstall_cmds='$RANLIB $lib'13359 fi13360 ;;13361 13362 aix[4-9]*)13363 if test ia64 != "$host_cpu"; then13364 case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in13365 yes,aix,yes) ;; # shared object as lib.so file only13366 yes,svr4,*) ;; # shared object as lib.so archive member only13367 yes,*) enable_static=no ;; # shared object in lib.a archive as well13368 esac13369 fi13370 ;;13371 esac13372 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_shared" >&513373 $as_echo "$enable_shared" >&6; }13374 13375 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build static libraries" >&513376 $as_echo_n "checking whether to build static libraries... " >&6; }13377 # Make sure either enable_shared or enable_static is yes.13378 test yes = "$enable_shared" || enable_static=yes13379 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_static" >&513380 $as_echo "$enable_static" >&6; }13381 13382 13383 13384 13385 fi13386 ac_ext=c13387 ac_cpp='$CPP $CPPFLAGS'13388 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'13389 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'13390 ac_compiler_gnu=$ac_cv_c_compiler_gnu13391 13392 CC=$lt_save_CC13393 13394 if test -n "$CXX" && ( test no != "$CXX" &&13395 ( (test g++ = "$CXX" && `g++ -v >/dev/null 2>&1` ) ||13396 (test g++ != "$CXX"))); then13397 ac_ext=cpp13398 ac_cpp='$CXXCPP $CPPFLAGS'13399 ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'13400 ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'13401 ac_compiler_gnu=$ac_cv_cxx_compiler_gnu13402 { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C++ preprocessor" >&513403 $as_echo_n "checking how to run the C++ preprocessor... " >&6; }13404 if test -z "$CXXCPP"; then13405 if ${ac_cv_prog_CXXCPP+:} false; then :13406 $as_echo_n "(cached) " >&613407 else13408 # Double quotes because CXXCPP needs to be expanded13409 for CXXCPP in "$CXX -E" "/lib/cpp"13410 do13411 ac_preproc_ok=false13412 for ac_cxx_preproc_warn_flag in '' yes13413 do13414 # Use a header file that comes with gcc, so configuring glibc13415 # with a fresh cross-compiler works.13416 # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since13417 # <limits.h> exists even on freestanding compilers.13418 # On the NeXT, cc -E runs the code through the compiler's parser,13419 # not just through cpp. "Syntax error" is here to catch this case.13420 cat confdefs.h - <<_ACEOF >conftest.$ac_ext13421 /* end confdefs.h. */13422 #ifdef __STDC__13423 # include <limits.h>13424 #else13425 # include <assert.h>13426 #endif13427 Syntax error13428 _ACEOF13429 if ac_fn_cxx_try_cpp "$LINENO"; then :13430 13431 else13432 # Broken: fails on valid input.13433 continue13434 fi13435 rm -f conftest.err conftest.i conftest.$ac_ext13436 13437 # OK, works on sane cases. Now check whether nonexistent headers13438 # can be detected and how.13439 cat confdefs.h - <<_ACEOF >conftest.$ac_ext13440 /* end confdefs.h. */13441 #include <ac_nonexistent.h>13442 _ACEOF13443 if ac_fn_cxx_try_cpp "$LINENO"; then :13444 # Broken: success on invalid input.13445 continue13446 else13447 # Passes both tests.13448 ac_preproc_ok=:13449 break13450 fi13451 rm -f conftest.err conftest.i conftest.$ac_ext13452 13453 done13454 # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.13455 rm -f conftest.i conftest.err conftest.$ac_ext13456 if $ac_preproc_ok; then :13457 break13458 fi13459 13460 done13461 ac_cv_prog_CXXCPP=$CXXCPP13462 13463 fi13464 CXXCPP=$ac_cv_prog_CXXCPP13465 else13466 ac_cv_prog_CXXCPP=$CXXCPP13467 fi13468 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CXXCPP" >&513469 $as_echo "$CXXCPP" >&6; }13470 ac_preproc_ok=false13471 for ac_cxx_preproc_warn_flag in '' yes13472 do13473 # Use a header file that comes with gcc, so configuring glibc13474 # with a fresh cross-compiler works.13475 # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since13476 # <limits.h> exists even on freestanding compilers.13477 # On the NeXT, cc -E runs the code through the compiler's parser,13478 # not just through cpp. "Syntax error" is here to catch this case.13479 cat confdefs.h - <<_ACEOF >conftest.$ac_ext13480 /* end confdefs.h. */13481 #ifdef __STDC__13482 # include <limits.h>13483 #else13484 # include <assert.h>13485 #endif13486 Syntax error13487 _ACEOF13488 if ac_fn_cxx_try_cpp "$LINENO"; then :13489 13490 else13491 # Broken: fails on valid input.13492 continue13493 fi13494 rm -f conftest.err conftest.i conftest.$ac_ext13495 13496 # OK, works on sane cases. Now check whether nonexistent headers13497 # can be detected and how.13498 cat confdefs.h - <<_ACEOF >conftest.$ac_ext13499 /* end confdefs.h. */13500 #include <ac_nonexistent.h>13501 _ACEOF13502 if ac_fn_cxx_try_cpp "$LINENO"; then :13503 # Broken: success on invalid input.13504 continue13505 else13506 # Passes both tests.13507 ac_preproc_ok=:13508 break13509 fi13510 rm -f conftest.err conftest.i conftest.$ac_ext13511 13512 done13513 # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.13514 rm -f conftest.i conftest.err conftest.$ac_ext13515 if $ac_preproc_ok; then :13516 13517 else13518 { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&513519 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}13520 as_fn_error $? "C++ preprocessor \"$CXXCPP\" fails sanity check13521 See \`config.log' for more details" "$LINENO" 5; }13522 fi13523 13524 ac_ext=c13525 ac_cpp='$CPP $CPPFLAGS'13526 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'13527 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'13528 ac_compiler_gnu=$ac_cv_c_compiler_gnu13529 13530 else13531 _lt_caught_CXX_error=yes13532 fi13533 13534 ac_ext=cpp13535 ac_cpp='$CXXCPP $CPPFLAGS'13536 ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'13537 ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'13538 ac_compiler_gnu=$ac_cv_cxx_compiler_gnu13539 13540 archive_cmds_need_lc_CXX=no13541 allow_undefined_flag_CXX=13542 always_export_symbols_CXX=no13543 archive_expsym_cmds_CXX=13544 compiler_needs_object_CXX=no13545 export_dynamic_flag_spec_CXX=13546 hardcode_direct_CXX=no13547 hardcode_direct_absolute_CXX=no13548 hardcode_libdir_flag_spec_CXX=13549 hardcode_libdir_separator_CXX=13550 hardcode_minus_L_CXX=no13551 hardcode_shlibpath_var_CXX=unsupported13552 hardcode_automatic_CXX=no13553 inherit_rpath_CXX=no13554 module_cmds_CXX=13555 module_expsym_cmds_CXX=13556 link_all_deplibs_CXX=unknown13557 old_archive_cmds_CXX=$old_archive_cmds13558 reload_flag_CXX=$reload_flag13559 reload_cmds_CXX=$reload_cmds13560 no_undefined_flag_CXX=13561 whole_archive_flag_spec_CXX=13562 enable_shared_with_static_runtimes_CXX=no13563 13564 # Source file extension for C++ test sources.13565 ac_ext=cpp13566 13567 # Object file extension for compiled C++ test sources.13568 objext=o13569 objext_CXX=$objext13570 13571 # No sense in running all these tests if we already determined that13572 # the CXX compiler isn't working. Some variables (like enable_shared)13573 # are currently assumed to apply to all compilers on this platform,13574 # and will be corrupted by setting them based on a non-working compiler.13575 if test yes != "$_lt_caught_CXX_error"; then13576 # Code to be used in simple compile tests13577 lt_simple_compile_test_code="int some_variable = 0;"13578 13579 # Code to be used in simple link tests13580 lt_simple_link_test_code='int main(int, char *[]) { return(0); }'13581 13582 # ltmain only uses $CC for tagged configurations so make sure $CC is set.13583 13584 13585 13586 13587 13588 13589 # If no C compiler was specified, use CC.13590 LTCC=${LTCC-"$CC"}13591 13592 # If no C compiler flags were specified, use CFLAGS.13593 LTCFLAGS=${LTCFLAGS-"$CFLAGS"}13594 13595 # Allow CC to be a program name with arguments.13596 compiler=$CC13597 13598 13599 # save warnings/boilerplate of simple test code13600 ac_outfile=conftest.$ac_objext13601 echo "$lt_simple_compile_test_code" >conftest.$ac_ext13602 eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err13603 _lt_compiler_boilerplate=`cat conftest.err`13604 $RM conftest*13605 13606 ac_outfile=conftest.$ac_objext13607 echo "$lt_simple_link_test_code" >conftest.$ac_ext13608 eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err13609 _lt_linker_boilerplate=`cat conftest.err`13610 $RM -r conftest*13611 13612 13613 # Allow CC to be a program name with arguments.13614 lt_save_CC=$CC13615 lt_save_CFLAGS=$CFLAGS13616 lt_save_LD=$LD13617 lt_save_GCC=$GCC13618 GCC=$GXX13619 lt_save_with_gnu_ld=$with_gnu_ld13620 lt_save_path_LD=$lt_cv_path_LD13621 if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then13622 lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx13623 else13624 $as_unset lt_cv_prog_gnu_ld13625 fi13626 if test -n "${lt_cv_path_LDCXX+set}"; then13627 lt_cv_path_LD=$lt_cv_path_LDCXX13628 else13629 $as_unset lt_cv_path_LD13630 fi13631 test -z "${LDCXX+set}" || LD=$LDCXX13632 CC=${CXX-"c++"}13633 CFLAGS=$CXXFLAGS13634 compiler=$CC13635 compiler_CXX=$CC13636 func_cc_basename $compiler13637 cc_basename=$func_cc_basename_result13638 13639 13640 if test -n "$compiler"; then13641 # We don't want -fno-exception when compiling C++ code, so set the13642 # no_builtin_flag separately13643 if test yes = "$GXX"; then13644 lt_prog_compiler_no_builtin_flag_CXX=' -fno-builtin'13645 else13646 lt_prog_compiler_no_builtin_flag_CXX=13647 fi13648 13649 if test yes = "$GXX"; then13650 # Set up default GNU C++ configuration13651 13652 13653 13654 # Check whether --with-gnu-ld was given.13655 if test "${with_gnu_ld+set}" = set; then :13656 withval=$with_gnu_ld; test no = "$withval" || with_gnu_ld=yes13657 else13658 with_gnu_ld=no13659 fi13660 13661 ac_prog=ld13662 if test yes = "$GCC"; then13663 # Check if gcc -print-prog-name=ld gives a path.13664 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld used by $CC" >&513665 $as_echo_n "checking for ld used by $CC... " >&6; }13666 case $host in13667 *-*-mingw*)13668 # gcc leaves a trailing carriage return, which upsets mingw13669 ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;13670 *)13671 ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;13672 esac13673 case $ac_prog in13674 # Accept absolute paths.13675 [\\/]* | ?:[\\/]*)13676 re_direlt='/[^/][^/]*/\.\./'13677 # Canonicalize the pathname of ld13678 ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'`13679 while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do13680 ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"`13681 done13682 test -z "$LD" && LD=$ac_prog13683 ;;13684 "")13685 # If it fails, then pretend we aren't using GCC.13686 ac_prog=ld13687 ;;13688 *)13689 # If it is relative, then search for the first ld in PATH.13690 with_gnu_ld=unknown13691 ;;13692 esac13693 elif test yes = "$with_gnu_ld"; then13694 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&513695 $as_echo_n "checking for GNU ld... " >&6; }13696 else13697 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&513698 $as_echo_n "checking for non-GNU ld... " >&6; }13699 fi13700 if ${lt_cv_path_LD+:} false; then :13701 $as_echo_n "(cached) " >&613702 else13703 if test -z "$LD"; then13704 lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR13705 for ac_dir in $PATH; do13706 IFS=$lt_save_ifs13707 test -z "$ac_dir" && ac_dir=.13708 if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then13709 lt_cv_path_LD=$ac_dir/$ac_prog13710 # Check to see if the program is GNU ld. I'd rather use --version,13711 # but apparently some variants of GNU ld only accept -v.13712 # Break only if it was the GNU/non-GNU ld that we prefer.13713 case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in13714 *GNU* | *'with BFD'*)13715 test no != "$with_gnu_ld" && break13716 ;;13717 *)13718 test yes != "$with_gnu_ld" && break13719 ;;13720 esac13721 fi13722 done13723 IFS=$lt_save_ifs13724 else13725 lt_cv_path_LD=$LD # Let the user override the test with a path.13726 fi13727 fi13728 13729 LD=$lt_cv_path_LD13730 if test -n "$LD"; then13731 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LD" >&513732 $as_echo "$LD" >&6; }13733 else13734 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&513735 $as_echo "no" >&6; }13736 fi13737 test -z "$LD" && as_fn_error $? "no acceptable ld found in \$PATH" "$LINENO" 513738 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&513739 $as_echo_n "checking if the linker ($LD) is GNU ld... " >&6; }13740 if ${lt_cv_prog_gnu_ld+:} false; then :13741 $as_echo_n "(cached) " >&613742 else13743 # I'd rather use --version here, but apparently some GNU lds only accept -v.13744 case `$LD -v 2>&1 </dev/null` in13745 *GNU* | *'with BFD'*)13746 lt_cv_prog_gnu_ld=yes13747 ;;13748 *)13749 lt_cv_prog_gnu_ld=no13750 ;;13751 esac13752 fi13753 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_gnu_ld" >&513754 $as_echo "$lt_cv_prog_gnu_ld" >&6; }13755 with_gnu_ld=$lt_cv_prog_gnu_ld13756 13757 13758 13759 13760 13761 13762 13763 # Check if GNU C++ uses GNU ld as the underlying linker, since the13764 # archiving commands below assume that GNU ld is being used.13765 if test yes = "$with_gnu_ld"; then13766 archive_cmds_CXX='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'13767 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'13768 13769 hardcode_libdir_flag_spec_CXX='$wl-rpath $wl$libdir'13770 export_dynamic_flag_spec_CXX='$wl--export-dynamic'13771 13772 # If archive_cmds runs LD, not CC, wlarc should be empty13773 # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to13774 # investigate it a little bit more. (MM)13775 wlarc='$wl'13776 13777 # ancient GNU ld didn't support --whole-archive et. al.13778 if eval "`$CC -print-prog-name=ld` --help 2>&1" |13779 $GREP 'no-whole-archive' > /dev/null; then13780 whole_archive_flag_spec_CXX=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive'13781 else13782 whole_archive_flag_spec_CXX=13783 fi13784 else13785 with_gnu_ld=no13786 wlarc=13787 13788 # A generic and very simple default shared library creation13789 # command for GNU C++ for the case where it uses the native13790 # linker, instead of GNU ld. If possible, this setting should13791 # overridden to take advantage of the native linker features on13792 # the platform it is being used on.13793 archive_cmds_CXX='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'13794 fi13795 13796 # Commands to make compiler produce verbose output that lists13797 # what "hidden" libraries, object files and flags are used when13798 # linking a shared library.13799 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'13800 13801 else13802 GXX=no13803 with_gnu_ld=no13804 wlarc=13805 fi13806 13807 # PORTME: fill in a description of your system's C++ link characteristics13808 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&513809 $as_echo_n "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; }13810 ld_shlibs_CXX=yes13811 case $host_os in13812 aix3*)13813 # FIXME: insert proper C++ library support13814 ld_shlibs_CXX=no13815 ;;13816 aix[4-9]*)13817 if test ia64 = "$host_cpu"; then13818 # On IA64, the linker does run time linking by default, so we don't13819 # have to do anything special.13820 aix_use_runtimelinking=no13821 exp_sym_flag='-Bexport'13822 no_entry_flag=13823 else13824 aix_use_runtimelinking=no13825 13826 # Test if we are trying to use run time linking or normal13827 # AIX style linking. If -brtl is somewhere in LDFLAGS, we13828 # have runtime linking enabled, and use it for executables.13829 # For shared libraries, we enable/disable runtime linking13830 # depending on the kind of the shared library created -13831 # when "with_aix_soname,aix_use_runtimelinking" is:13832 # "aix,no" lib.a(lib.so.V) shared, rtl:no, for executables13833 # "aix,yes" lib.so shared, rtl:yes, for executables13834 # lib.a static archive13835 # "both,no" lib.so.V(shr.o) shared, rtl:yes13836 # lib.a(lib.so.V) shared, rtl:no, for executables13837 # "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables13838 # lib.a(lib.so.V) shared, rtl:no13839 # "svr4,*" lib.so.V(shr.o) shared, rtl:yes, for executables13840 # lib.a static archive13841 case $host_os in aix4.[23]|aix4.[23].*|aix[5-9]*)13842 for ld_flag in $LDFLAGS; do13843 case $ld_flag in13844 *-brtl*)13845 aix_use_runtimelinking=yes13846 break13847 ;;13848 esac13849 done13850 if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then13851 # With aix-soname=svr4, we create the lib.so.V shared archives only,13852 # so we don't have lib.a shared libs to link our executables.13853 # We have to force runtime linking in this case.13854 aix_use_runtimelinking=yes13855 LDFLAGS="$LDFLAGS -Wl,-brtl"13856 fi13857 ;;13858 esac13859 13860 exp_sym_flag='-bexport'13861 no_entry_flag='-bnoentry'13862 fi13863 13864 # When large executables or shared objects are built, AIX ld can13865 # have problems creating the table of contents. If linking a library13866 # or program results in "error TOC overflow" add -mminimal-toc to13867 # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not13868 # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.13869 13870 archive_cmds_CXX=''13871 hardcode_direct_CXX=yes13872 hardcode_direct_absolute_CXX=yes13873 hardcode_libdir_separator_CXX=':'13874 link_all_deplibs_CXX=yes13875 file_list_spec_CXX='$wl-f,'13876 case $with_aix_soname,$aix_use_runtimelinking in13877 aix,*) ;; # no import file13878 svr4,* | *,yes) # use import file13879 # The Import File defines what to hardcode.13880 hardcode_direct_CXX=no13881 hardcode_direct_absolute_CXX=no13882 ;;13883 esac13884 13885 if test yes = "$GXX"; then13886 case $host_os in aix4.[012]|aix4.[012].*)13887 # We only want to do this on AIX 4.2 and lower, the check13888 # below for broken collect2 doesn't work under 4.3+13889 collect2name=`$CC -print-prog-name=collect2`13890 if test -f "$collect2name" &&13891 strings "$collect2name" | $GREP resolve_lib_name >/dev/null13892 then13893 # We have reworked collect213894 :13895 else13896 # We have old collect213897 hardcode_direct_CXX=unsupported13898 # It fails to find uninstalled libraries when the uninstalled13899 # path is not listed in the libpath. Setting hardcode_minus_L13900 # to unsupported forces relinking13901 hardcode_minus_L_CXX=yes13902 hardcode_libdir_flag_spec_CXX='-L$libdir'13903 hardcode_libdir_separator_CXX=13904 fi13905 esac13906 shared_flag='-shared'13907 if test yes = "$aix_use_runtimelinking"; then13908 shared_flag=$shared_flag' $wl-G'13909 fi13910 # Need to ensure runtime linking is disabled for the traditional13911 # shared library, or the linker may eventually find shared libraries13912 # /with/ Import File - we do not want to mix them.13913 shared_flag_aix='-shared'13914 shared_flag_svr4='-shared $wl-G'13915 else13916 # not using gcc13917 if test ia64 = "$host_cpu"; then13918 # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release13919 # chokes on -Wl,-G. The following line is correct:13920 shared_flag='-G'13921 else13922 if test yes = "$aix_use_runtimelinking"; then13923 shared_flag='$wl-G'13924 else13925 shared_flag='$wl-bM:SRE'13926 fi13927 shared_flag_aix='$wl-bM:SRE'13928 shared_flag_svr4='$wl-G'13929 fi13930 fi13931 13932 export_dynamic_flag_spec_CXX='$wl-bexpall'13933 # It seems that -bexpall does not export symbols beginning with13934 # underscore (_), so it is better to generate a list of symbols to13935 # export.13936 always_export_symbols_CXX=yes13937 if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then13938 # Warning - without using the other runtime loading flags (-brtl),13939 # -berok will link without error, but may produce a broken library.13940 # The "-G" linker flag allows undefined symbols.13941 no_undefined_flag_CXX='-bernotok'13942 # Determine the default libpath from the value encoded in an empty13943 # executable.13944 if test set = "${lt_cv_aix_libpath+set}"; then13945 aix_libpath=$lt_cv_aix_libpath13946 else13947 if ${lt_cv_aix_libpath__CXX+:} false; then :13948 $as_echo_n "(cached) " >&613949 else13950 cat confdefs.h - <<_ACEOF >conftest.$ac_ext13951 /* end confdefs.h. */13952 13953 int13954 main ()13955 {13956 13957 ;13958 return 0;13959 }13960 _ACEOF13961 if ac_fn_cxx_try_link "$LINENO"; then :13962 13963 lt_aix_libpath_sed='13964 /Import File Strings/,/^$/ {13965 /^0/ {13966 s/^0 *\([^ ]*\) *$/\1/13967 p13968 }13969 }'13970 lt_cv_aix_libpath__CXX=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`13971 # Check for a 64-bit object if we didn't find anything.13972 if test -z "$lt_cv_aix_libpath__CXX"; then13973 lt_cv_aix_libpath__CXX=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`13974 fi13975 fi13976 rm -f core conftest.err conftest.$ac_objext \13977 conftest$ac_exeext conftest.$ac_ext13978 if test -z "$lt_cv_aix_libpath__CXX"; then13979 lt_cv_aix_libpath__CXX=/usr/lib:/lib13980 fi13981 13982 fi13983 13984 aix_libpath=$lt_cv_aix_libpath__CXX13985 fi13986 13987 hardcode_libdir_flag_spec_CXX='$wl-blibpath:$libdir:'"$aix_libpath"13988 13989 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_flag13990 else13991 if test ia64 = "$host_cpu"; then13992 hardcode_libdir_flag_spec_CXX='$wl-R $libdir:/usr/lib:/lib'13993 allow_undefined_flag_CXX="-z nodefs"13994 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"13995 else13996 # Determine the default libpath from the value encoded in an13997 # empty executable.13998 if test set = "${lt_cv_aix_libpath+set}"; then13999 aix_libpath=$lt_cv_aix_libpath14000 else14001 if ${lt_cv_aix_libpath__CXX+:} false; then :14002 $as_echo_n "(cached) " >&614003 else14004 cat confdefs.h - <<_ACEOF >conftest.$ac_ext14005 /* end confdefs.h. */14006 14007 int14008 main ()14009 {14010 14011 ;14012 return 0;14013 }14014 _ACEOF14015 if ac_fn_cxx_try_link "$LINENO"; then :14016 14017 lt_aix_libpath_sed='14018 /Import File Strings/,/^$/ {14019 /^0/ {14020 s/^0 *\([^ ]*\) *$/\1/14021 p14022 }14023 }'14024 lt_cv_aix_libpath__CXX=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`14025 # Check for a 64-bit object if we didn't find anything.14026 if test -z "$lt_cv_aix_libpath__CXX"; then14027 lt_cv_aix_libpath__CXX=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`14028 fi14029 fi14030 rm -f core conftest.err conftest.$ac_objext \14031 conftest$ac_exeext conftest.$ac_ext14032 if test -z "$lt_cv_aix_libpath__CXX"; then14033 lt_cv_aix_libpath__CXX=/usr/lib:/lib14034 fi14035 14036 fi14037 14038 aix_libpath=$lt_cv_aix_libpath__CXX14039 fi14040 14041 hardcode_libdir_flag_spec_CXX='$wl-blibpath:$libdir:'"$aix_libpath"14042 # Warning - without using the other run time loading flags,14043 # -berok will link without error, but may produce a broken library.14044 no_undefined_flag_CXX=' $wl-bernotok'14045 allow_undefined_flag_CXX=' $wl-berok'14046 if test yes = "$with_gnu_ld"; then14047 # We only use this code for GNU lds that support --whole-archive.14048 whole_archive_flag_spec_CXX='$wl--whole-archive$convenience $wl--no-whole-archive'14049 else14050 # Exported symbols can be pulled into shared objects from archives14051 whole_archive_flag_spec_CXX='$convenience'14052 fi14053 archive_cmds_need_lc_CXX=yes14054 archive_expsym_cmds_CXX='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d'14055 # -brtl affects multiple linker settings, -berok does not and is overridden later14056 compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([, ]\\)%-berok\\1%g"`'14057 if test svr4 != "$with_aix_soname"; then14058 # This is similar to how AIX traditionally builds its shared14059 # libraries. Need -bnortl late, we may have -brtl in LDFLAGS.14060 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'14061 fi14062 if test aix != "$with_aix_soname"; then14063 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'14064 else14065 # used by -dlpreopen to get the symbols14066 archive_expsym_cmds_CXX="$archive_expsym_cmds_CXX"'~$MV $output_objdir/$realname.d/$soname $output_objdir'14067 fi14068 archive_expsym_cmds_CXX="$archive_expsym_cmds_CXX"'~$RM -r $output_objdir/$realname.d'14069 fi14070 fi14071 ;;14072 14073 beos*)14074 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then14075 allow_undefined_flag_CXX=unsupported14076 # Joseph Beckenbach <jrb3@best.com> says some releases of gcc14077 # support --undefined. This deserves some investigation. FIXME14078 archive_cmds_CXX='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'14079 else14080 ld_shlibs_CXX=no14081 fi14082 ;;14083 14084 chorus*)14085 case $cc_basename in14086 *)14087 # FIXME: insert proper C++ library support14088 ld_shlibs_CXX=no14089 ;;14090 esac14091 ;;14092 14093 cygwin* | mingw* | pw32* | cegcc*)14094 case $GXX,$cc_basename in14095 ,cl* | no,cl*)14096 # Native MSVC14097 # hardcode_libdir_flag_spec is actually meaningless, as there is14098 # no search path for DLLs.14099 hardcode_libdir_flag_spec_CXX=' '14100 allow_undefined_flag_CXX=unsupported14101 always_export_symbols_CXX=yes14102 file_list_spec_CXX='@'14103 # Tell ltmain to make .lib files, not .a files.14104 libext=lib14105 # Tell ltmain to make .dll files, not .so files.14106 shrext_cmds=.dll14107 # FIXME: Setting linknames here is a bad hack.14108 archive_cmds_CXX='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames='14109 archive_expsym_cmds_CXX='if test DEF = "`$SED -n -e '\''s/^[ ]*//'\'' -e '\''/^\(;.*\)*$/d'\'' -e '\''s/^\(EXPORTS\|LIBRARY\)\([ ].*\)*$/DEF/p'\'' -e q $export_symbols`" ; then14110 cp "$export_symbols" "$output_objdir/$soname.def";14111 echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp";14112 else14113 $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp;14114 fi~14115 $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~14116 linknames='14117 # The linker will not automatically build a static lib if we build a DLL.14118 # _LT_TAGVAR(old_archive_from_new_cmds, CXX)='true'14119 enable_shared_with_static_runtimes_CXX=yes14120 # Don't use ranlib14121 old_postinstall_cmds_CXX='chmod 644 $oldlib'14122 postlink_cmds_CXX='lt_outputfile="@OUTPUT@"~14123 lt_tool_outputfile="@TOOL_OUTPUT@"~14124 case $lt_outputfile in14125 *.exe|*.EXE) ;;14126 *)14127 lt_outputfile=$lt_outputfile.exe14128 lt_tool_outputfile=$lt_tool_outputfile.exe14129 ;;14130 esac~14131 func_to_tool_file "$lt_outputfile"~14132 if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then14133 $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;14134 $RM "$lt_outputfile.manifest";14135 fi'14136 ;;14137 *)14138 # g++14139 # _LT_TAGVAR(hardcode_libdir_flag_spec, CXX) is actually meaningless,14140 # as there is no search path for DLLs.14141 hardcode_libdir_flag_spec_CXX='-L$libdir'14142 export_dynamic_flag_spec_CXX='$wl--export-all-symbols'14143 allow_undefined_flag_CXX=unsupported14144 always_export_symbols_CXX=no14145 enable_shared_with_static_runtimes_CXX=yes14146 14147 if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then14148 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'14149 # If the export-symbols file already is a .def file, use it as14150 # is; otherwise, prepend EXPORTS...14151 archive_expsym_cmds_CXX='if test DEF = "`$SED -n -e '\''s/^[ ]*//'\'' -e '\''/^\(;.*\)*$/d'\'' -e '\''s/^\(EXPORTS\|LIBRARY\)\([ ].*\)*$/DEF/p'\'' -e q $export_symbols`" ; then14152 cp $export_symbols $output_objdir/$soname.def;14153 else14154 echo EXPORTS > $output_objdir/$soname.def;14155 cat $export_symbols >> $output_objdir/$soname.def;14156 fi~14157 $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'14158 else14159 ld_shlibs_CXX=no14160 fi14161 ;;14162 esac14163 ;;14164 darwin* | rhapsody*)14165 14166 14167 archive_cmds_need_lc_CXX=no14168 hardcode_direct_CXX=no14169 hardcode_automatic_CXX=yes14170 hardcode_shlibpath_var_CXX=unsupported14171 if test yes = "$lt_cv_ld_force_load"; then14172 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\"`'14173 14174 else14175 whole_archive_flag_spec_CXX=''14176 fi14177 link_all_deplibs_CXX=yes14178 allow_undefined_flag_CXX=$_lt_dar_allow_undefined14179 case $cc_basename in14180 ifort*|nagfor*) _lt_dar_can_shared=yes ;;14181 *) _lt_dar_can_shared=$GCC ;;14182 esac14183 if test yes = "$_lt_dar_can_shared"; then14184 output_verbose_link_cmd=func_echo_all14185 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"14186 module_cmds_CXX="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dsymutil"14187 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"14188 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"14189 if test yes != "$lt_cv_apple_cc_single_mod"; then14190 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"14191 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"14192 fi14193 14194 else14195 ld_shlibs_CXX=no14196 fi14197 14198 ;;14199 14200 os2*)14201 hardcode_libdir_flag_spec_CXX='-L$libdir'14202 hardcode_minus_L_CXX=yes14203 allow_undefined_flag_CXX=unsupported14204 shrext_cmds=.dll14205 archive_cmds_CXX='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~14206 $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~14207 $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~14208 $ECHO EXPORTS >> $output_objdir/$libname.def~14209 emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~14210 $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~14211 emximp -o $lib $output_objdir/$libname.def'14212 archive_expsym_cmds_CXX='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~14213 $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~14214 $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~14215 $ECHO EXPORTS >> $output_objdir/$libname.def~14216 prefix_cmds="$SED"~14217 if test EXPORTS = "`$SED 1q $export_symbols`"; then14218 prefix_cmds="$prefix_cmds -e 1d";14219 fi~14220 prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~14221 cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~14222 $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~14223 emximp -o $lib $output_objdir/$libname.def'14224 old_archive_From_new_cmds_CXX='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'14225 enable_shared_with_static_runtimes_CXX=yes14226 ;;14227 14228 dgux*)14229 case $cc_basename in14230 ec++*)14231 # FIXME: insert proper C++ library support14232 ld_shlibs_CXX=no14233 ;;14234 ghcx*)14235 # Green Hills C++ Compiler14236 # FIXME: insert proper C++ library support14237 ld_shlibs_CXX=no14238 ;;14239 *)14240 # FIXME: insert proper C++ library support14241 ld_shlibs_CXX=no14242 ;;14243 esac14244 ;;14245 14246 freebsd2.*)14247 # C++ shared libraries reported to be fairly broken before14248 # switch to ELF14249 ld_shlibs_CXX=no14250 ;;14251 14252 freebsd-elf*)14253 archive_cmds_need_lc_CXX=no14254 ;;14255 14256 freebsd* | dragonfly*)14257 # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF14258 # conventions14259 ld_shlibs_CXX=yes14260 ;;14261 14262 haiku*)14263 archive_cmds_CXX='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'14264 link_all_deplibs_CXX=yes14265 ;;14266 14267 hpux9*)14268 hardcode_libdir_flag_spec_CXX='$wl+b $wl$libdir'14269 hardcode_libdir_separator_CXX=:14270 export_dynamic_flag_spec_CXX='$wl-E'14271 hardcode_direct_CXX=yes14272 hardcode_minus_L_CXX=yes # Not in the search PATH,14273 # but as the default14274 # location of the library.14275 14276 case $cc_basename in14277 CC*)14278 # FIXME: insert proper C++ library support14279 ld_shlibs_CXX=no14280 ;;14281 aCC*)14282 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'14283 # Commands to make compiler produce verbose output that lists14284 # what "hidden" libraries, object files and flags are used when14285 # linking a shared library.14286 #14287 # There doesn't appear to be a way to prevent this compiler from14288 # explicitly linking system object files so we need to strip them14289 # from the output so that they don't get included in the library14290 # dependencies.14291 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"'14292 ;;14293 *)14294 if test yes = "$GXX"; then14295 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'14296 else14297 # FIXME: insert proper C++ library support14298 ld_shlibs_CXX=no14299 fi14300 ;;14301 esac14302 ;;14303 14304 hpux10*|hpux11*)14305 if test no = "$with_gnu_ld"; then14306 hardcode_libdir_flag_spec_CXX='$wl+b $wl$libdir'14307 hardcode_libdir_separator_CXX=:14308 14309 case $host_cpu in14310 hppa*64*|ia64*)14311 ;;14312 *)14313 export_dynamic_flag_spec_CXX='$wl-E'14314 ;;14315 esac14316 fi14317 case $host_cpu in14318 hppa*64*|ia64*)14319 hardcode_direct_CXX=no14320 hardcode_shlibpath_var_CXX=no14321 ;;14322 *)14323 hardcode_direct_CXX=yes14324 hardcode_direct_absolute_CXX=yes14325 hardcode_minus_L_CXX=yes # Not in the search PATH,14326 # but as the default14327 # location of the library.14328 ;;14329 esac14330 14331 case $cc_basename in14332 CC*)14333 # FIXME: insert proper C++ library support14334 ld_shlibs_CXX=no14335 ;;14336 aCC*)14337 case $host_cpu in14338 hppa*64*)14339 archive_cmds_CXX='$CC -b $wl+h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'14340 ;;14341 ia64*)14342 archive_cmds_CXX='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'14343 ;;14344 *)14345 archive_cmds_CXX='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'14346 ;;14347 esac14348 # Commands to make compiler produce verbose output that lists14349 # what "hidden" libraries, object files and flags are used when14350 # linking a shared library.14351 #14352 # There doesn't appear to be a way to prevent this compiler from14353 # explicitly linking system object files so we need to strip them14354 # from the output so that they don't get included in the library14355 # dependencies.14356 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"'14357 ;;14358 *)14359 if test yes = "$GXX"; then14360 if test no = "$with_gnu_ld"; then14361 case $host_cpu in14362 hppa*64*)14363 archive_cmds_CXX='$CC -shared -nostdlib -fPIC $wl+h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'14364 ;;14365 ia64*)14366 archive_cmds_CXX='$CC -shared -nostdlib $pic_flag $wl+h $wl$soname $wl+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'14367 ;;14368 *)14369 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'14370 ;;14371 esac14372 fi14373 else14374 # FIXME: insert proper C++ library support14375 ld_shlibs_CXX=no14376 fi14377 ;;14378 esac14379 ;;14380 14381 interix[3-9]*)14382 hardcode_direct_CXX=no14383 hardcode_shlibpath_var_CXX=no14384 hardcode_libdir_flag_spec_CXX='$wl-rpath,$libdir'14385 export_dynamic_flag_spec_CXX='$wl-E'14386 # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.14387 # Instead, shared libraries are loaded at an image base (0x10000000 by14388 # default) and relocated if they conflict, which is a slow very memory14389 # consuming and fragmenting process. To avoid this, we pick a random,14390 # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link14391 # time. Moving up from 0x10000000 also allows more sbrk(2) space.14392 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'14393 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'14394 ;;14395 irix5* | irix6*)14396 case $cc_basename in14397 CC*)14398 # SGI C++14399 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'14400 14401 # Archives containing C++ object files must be created using14402 # "CC -ar", where "CC" is the IRIX C++ compiler. This is14403 # necessary to make sure instantiated templates are included14404 # in the archive.14405 old_archive_cmds_CXX='$CC -ar -WR,-u -o $oldlib $oldobjs'14406 ;;14407 *)14408 if test yes = "$GXX"; then14409 if test no = "$with_gnu_ld"; then14410 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'14411 else14412 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'14413 fi14414 fi14415 link_all_deplibs_CXX=yes14416 ;;14417 esac14418 hardcode_libdir_flag_spec_CXX='$wl-rpath $wl$libdir'14419 hardcode_libdir_separator_CXX=:14420 inherit_rpath_CXX=yes14421 ;;14422 14423 linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)14424 case $cc_basename in14425 KCC*)14426 # Kuck and Associates, Inc. (KAI) C++ Compiler14427 14428 # KCC will only create a shared library if the output file14429 # ends with ".so" (or ".sl" for HP-UX), so rename the library14430 # to its proper name (with version) after linking.14431 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'14432 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'14433 # Commands to make compiler produce verbose output that lists14434 # what "hidden" libraries, object files and flags are used when14435 # linking a shared library.14436 #14437 # There doesn't appear to be a way to prevent this compiler from14438 # explicitly linking system object files so we need to strip them14439 # from the output so that they don't get included in the library14440 # dependencies.14441 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"'14442 14443 hardcode_libdir_flag_spec_CXX='$wl-rpath,$libdir'14444 export_dynamic_flag_spec_CXX='$wl--export-dynamic'14445 14446 # Archives containing C++ object files must be created using14447 # "CC -Bstatic", where "CC" is the KAI C++ compiler.14448 old_archive_cmds_CXX='$CC -Bstatic -o $oldlib $oldobjs'14449 ;;14450 icpc* | ecpc* )14451 # Intel C++14452 with_gnu_ld=yes14453 # version 8.0 and above of icpc choke on multiply defined symbols14454 # if we add $predep_objects and $postdep_objects, however 7.1 and14455 # earlier do not add the objects themselves.14456 case `$CC -V 2>&1` in14457 *"Version 7."*)14458 archive_cmds_CXX='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'14459 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'14460 ;;14461 *) # Version 8.0 or newer14462 tmp_idyn=14463 case $host_cpu in14464 ia64*) tmp_idyn=' -i_dynamic';;14465 esac14466 archive_cmds_CXX='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'14467 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'14468 ;;14469 esac14470 archive_cmds_need_lc_CXX=no14471 hardcode_libdir_flag_spec_CXX='$wl-rpath,$libdir'14472 export_dynamic_flag_spec_CXX='$wl--export-dynamic'14473 whole_archive_flag_spec_CXX='$wl--whole-archive$convenience $wl--no-whole-archive'14474 ;;14475 pgCC* | pgcpp*)14476 # Portland Group C++ compiler14477 case `$CC -V` in14478 *pgCC\ [1-5].* | *pgcpp\ [1-5].*)14479 prelink_cmds_CXX='tpldir=Template.dir~14480 rm -rf $tpldir~14481 $CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~14482 compile_command="$compile_command `find $tpldir -name \*.o | sort | $NL2SP`"'14483 old_archive_cmds_CXX='tpldir=Template.dir~14484 rm -rf $tpldir~14485 $CC --prelink_objects --instantiation_dir $tpldir $oldobjs$old_deplibs~14486 $AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | sort | $NL2SP`~14487 $RANLIB $oldlib'14488 archive_cmds_CXX='tpldir=Template.dir~14489 rm -rf $tpldir~14490 $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~14491 $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'14492 archive_expsym_cmds_CXX='tpldir=Template.dir~14493 rm -rf $tpldir~14494 $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~14495 $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'14496 ;;14497 *) # Version 6 and above use weak symbols14498 archive_cmds_CXX='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'14499 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'14500 ;;14501 esac14502 14503 hardcode_libdir_flag_spec_CXX='$wl--rpath $wl$libdir'14504 export_dynamic_flag_spec_CXX='$wl--export-dynamic'14505 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'14506 ;;14507 cxx*)14508 # Compaq C++14509 archive_cmds_CXX='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'14510 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'14511 14512 runpath_var=LD_RUN_PATH14513 hardcode_libdir_flag_spec_CXX='-rpath $libdir'14514 hardcode_libdir_separator_CXX=:14515 14516 # Commands to make compiler produce verbose output that lists14517 # what "hidden" libraries, object files and flags are used when14518 # linking a shared library.14519 #14520 # There doesn't appear to be a way to prevent this compiler from14521 # explicitly linking system object files so we need to strip them14522 # from the output so that they don't get included in the library14523 # dependencies.14524 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'14525 ;;14526 xl* | mpixl* | bgxl*)14527 # IBM XL 8.0 on PPC, with GNU ld14528 hardcode_libdir_flag_spec_CXX='$wl-rpath $wl$libdir'14529 export_dynamic_flag_spec_CXX='$wl--export-dynamic'14530 archive_cmds_CXX='$CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'14531 if test yes = "$supports_anon_versioning"; then14532 archive_expsym_cmds_CXX='echo "{ global:" > $output_objdir/$libname.ver~14533 cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~14534 echo "local: *; };" >> $output_objdir/$libname.ver~14535 $CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib'14536 fi14537 ;;14538 *)14539 case `$CC -V 2>&1 | sed 5q` in14540 *Sun\ C*)14541 # Sun C++ 5.914542 no_undefined_flag_CXX=' -zdefs'14543 archive_cmds_CXX='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'14544 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'14545 hardcode_libdir_flag_spec_CXX='-R$libdir'14546 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'14547 compiler_needs_object_CXX=yes14548 14549 # Not sure whether something based on14550 # $CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&114551 # would be better.14552 output_verbose_link_cmd='func_echo_all'14553 14554 # Archives containing C++ object files must be created using14555 # "CC -xar", where "CC" is the Sun C++ compiler. This is14556 # necessary to make sure instantiated templates are included14557 # in the archive.14558 old_archive_cmds_CXX='$CC -xar -o $oldlib $oldobjs'14559 ;;14560 esac14561 ;;14562 esac14563 ;;14564 14565 lynxos*)14566 # FIXME: insert proper C++ library support14567 ld_shlibs_CXX=no14568 ;;14569 14570 m88k*)14571 # FIXME: insert proper C++ library support14572 ld_shlibs_CXX=no14573 ;;14574 14575 mvs*)14576 case $cc_basename in14577 cxx*)14578 # FIXME: insert proper C++ library support14579 ld_shlibs_CXX=no14580 ;;14581 *)14582 # FIXME: insert proper C++ library support14583 ld_shlibs_CXX=no14584 ;;14585 esac14586 ;;14587 14588 netbsd*)14589 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then14590 archive_cmds_CXX='$LD -Bshareable -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags'14591 wlarc=14592 hardcode_libdir_flag_spec_CXX='-R$libdir'14593 hardcode_direct_CXX=yes14594 hardcode_shlibpath_var_CXX=no14595 fi14596 # Workaround some broken pre-1.5 toolchains14597 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"'14598 ;;14599 14600 *nto* | *qnx*)14601 ld_shlibs_CXX=yes14602 ;;14603 14604 openbsd* | bitrig*)14605 if test -f /usr/libexec/ld.so; then14606 hardcode_direct_CXX=yes14607 hardcode_shlibpath_var_CXX=no14608 hardcode_direct_absolute_CXX=yes14609 archive_cmds_CXX='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'14610 hardcode_libdir_flag_spec_CXX='$wl-rpath,$libdir'14611 if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`"; then14612 archive_expsym_cmds_CXX='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-retain-symbols-file,$export_symbols -o $lib'14613 export_dynamic_flag_spec_CXX='$wl-E'14614 whole_archive_flag_spec_CXX=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive'14615 fi14616 output_verbose_link_cmd=func_echo_all14617 else14618 ld_shlibs_CXX=no14619 fi14620 ;;14621 14622 osf3* | osf4* | osf5*)14623 case $cc_basename in14624 KCC*)14625 # Kuck and Associates, Inc. (KAI) C++ Compiler14626 14627 # KCC will only create a shared library if the output file14628 # ends with ".so" (or ".sl" for HP-UX), so rename the library14629 # to its proper name (with version) after linking.14630 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'14631 14632 hardcode_libdir_flag_spec_CXX='$wl-rpath,$libdir'14633 hardcode_libdir_separator_CXX=:14634 14635 # Archives containing C++ object files must be created using14636 # the KAI C++ compiler.14637 case $host in14638 osf3*) old_archive_cmds_CXX='$CC -Bstatic -o $oldlib $oldobjs' ;;14639 *) old_archive_cmds_CXX='$CC -o $oldlib $oldobjs' ;;14640 esac14641 ;;14642 RCC*)14643 # Rational C++ 2.4.114644 # FIXME: insert proper C++ library support14645 ld_shlibs_CXX=no14646 ;;14647 cxx*)14648 case $host in14649 osf3*)14650 allow_undefined_flag_CXX=' $wl-expect_unresolved $wl\*'14651 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'14652 hardcode_libdir_flag_spec_CXX='$wl-rpath $wl$libdir'14653 ;;14654 *)14655 allow_undefined_flag_CXX=' -expect_unresolved \*'14656 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'14657 archive_expsym_cmds_CXX='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~14658 echo "-hidden">> $lib.exp~14659 $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~14660 $RM $lib.exp'14661 hardcode_libdir_flag_spec_CXX='-rpath $libdir'14662 ;;14663 esac14664 14665 hardcode_libdir_separator_CXX=:14666 14667 # Commands to make compiler produce verbose output that lists14668 # what "hidden" libraries, object files and flags are used when14669 # linking a shared library.14670 #14671 # There doesn't appear to be a way to prevent this compiler from14672 # explicitly linking system object files so we need to strip them14673 # from the output so that they don't get included in the library14674 # dependencies.14675 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"'14676 ;;14677 *)14678 if test yes,no = "$GXX,$with_gnu_ld"; then14679 allow_undefined_flag_CXX=' $wl-expect_unresolved $wl\*'14680 case $host in14681 osf3*)14682 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'14683 ;;14684 *)14685 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'14686 ;;14687 esac14688 14689 hardcode_libdir_flag_spec_CXX='$wl-rpath $wl$libdir'14690 hardcode_libdir_separator_CXX=:14691 14692 # Commands to make compiler produce verbose output that lists14693 # what "hidden" libraries, object files and flags are used when14694 # linking a shared library.14695 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'14696 14697 else14698 # FIXME: insert proper C++ library support14699 ld_shlibs_CXX=no14700 fi14701 ;;14702 esac14703 ;;14704 14705 psos*)14706 # FIXME: insert proper C++ library support14707 ld_shlibs_CXX=no14708 ;;14709 14710 sunos4*)14711 case $cc_basename in14712 CC*)14713 # Sun C++ 4.x14714 # FIXME: insert proper C++ library support14715 ld_shlibs_CXX=no14716 ;;14717 lcc*)14718 # Lucid14719 # FIXME: insert proper C++ library support14720 ld_shlibs_CXX=no14721 ;;14722 *)14723 # FIXME: insert proper C++ library support14724 ld_shlibs_CXX=no14725 ;;14726 esac14727 ;;14728 14729 solaris*)14730 case $cc_basename in14731 CC* | sunCC*)14732 # Sun C++ 4.2, 5.x and Centerline C++14733 archive_cmds_need_lc_CXX=yes14734 no_undefined_flag_CXX=' -zdefs'14735 archive_cmds_CXX='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'14736 archive_expsym_cmds_CXX='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~14737 $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'14738 14739 hardcode_libdir_flag_spec_CXX='-R$libdir'14740 hardcode_shlibpath_var_CXX=no14741 case $host_os in14742 solaris2.[0-5] | solaris2.[0-5].*) ;;14743 *)14744 # The compiler driver will combine and reorder linker options,14745 # but understands '-z linker_flag'.14746 # Supported since Solaris 2.6 (maybe 2.5.1?)14747 whole_archive_flag_spec_CXX='-z allextract$convenience -z defaultextract'14748 ;;14749 esac14750 link_all_deplibs_CXX=yes14751 14752 output_verbose_link_cmd='func_echo_all'14753 14754 # Archives containing C++ object files must be created using14755 # "CC -xar", where "CC" is the Sun C++ compiler. This is14756 # necessary to make sure instantiated templates are included14757 # in the archive.14758 old_archive_cmds_CXX='$CC -xar -o $oldlib $oldobjs'14759 ;;14760 gcx*)14761 # Green Hills C++ Compiler14762 archive_cmds_CXX='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'14763 14764 # The C++ compiler must be used to create the archive.14765 old_archive_cmds_CXX='$CC $LDFLAGS -archive -o $oldlib $oldobjs'14766 ;;14767 *)14768 # GNU C++ compiler with Solaris linker14769 if test yes,no = "$GXX,$with_gnu_ld"; then14770 no_undefined_flag_CXX=' $wl-z ${wl}defs'14771 if $CC --version | $GREP -v '^2\.7' > /dev/null; then14772 archive_cmds_CXX='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'14773 archive_expsym_cmds_CXX='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~14774 $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'14775 14776 # Commands to make compiler produce verbose output that lists14777 # what "hidden" libraries, object files and flags are used when14778 # linking a shared library.14779 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'14780 else14781 # g++ 2.7 appears to require '-G' NOT '-shared' on this14782 # platform.14783 archive_cmds_CXX='$CC -G -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'14784 archive_expsym_cmds_CXX='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~14785 $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'14786 14787 # Commands to make compiler produce verbose output that lists14788 # what "hidden" libraries, object files and flags are used when14789 # linking a shared library.14790 output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'14791 fi14792 14793 hardcode_libdir_flag_spec_CXX='$wl-R $wl$libdir'14794 case $host_os in14795 solaris2.[0-5] | solaris2.[0-5].*) ;;14796 *)14797 whole_archive_flag_spec_CXX='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract'14798 ;;14799 esac14800 fi14801 ;;14802 esac14803 ;;14804 14805 sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[01].[10]* | unixware7* | sco3.2v5.0.[024]*)14806 no_undefined_flag_CXX='$wl-z,text'14807 archive_cmds_need_lc_CXX=no14808 hardcode_shlibpath_var_CXX=no14809 runpath_var='LD_RUN_PATH'14810 14811 case $cc_basename in14812 CC*)14813 archive_cmds_CXX='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'14814 archive_expsym_cmds_CXX='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'14815 ;;14816 *)14817 archive_cmds_CXX='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'14818 archive_expsym_cmds_CXX='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'14819 ;;14820 esac14821 ;;14822 14823 sysv5* | sco3.2v5* | sco5v6*)14824 # Note: We CANNOT use -z defs as we might desire, because we do not14825 # link with -lc, and that would cause any symbols used from libc to14826 # always be unresolved, which means just about no library would14827 # ever link correctly. If we're not using GNU ld we use -z text14828 # though, which does catch some bad symbols but isn't as heavy-handed14829 # as -z defs.14830 no_undefined_flag_CXX='$wl-z,text'14831 allow_undefined_flag_CXX='$wl-z,nodefs'14832 archive_cmds_need_lc_CXX=no14833 hardcode_shlibpath_var_CXX=no14834 hardcode_libdir_flag_spec_CXX='$wl-R,$libdir'14835 hardcode_libdir_separator_CXX=':'14836 link_all_deplibs_CXX=yes14837 export_dynamic_flag_spec_CXX='$wl-Bexport'14838 runpath_var='LD_RUN_PATH'14839 14840 case $cc_basename in14841 CC*)14842 archive_cmds_CXX='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'14843 archive_expsym_cmds_CXX='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'14844 old_archive_cmds_CXX='$CC -Tprelink_objects $oldobjs~14845 '"$old_archive_cmds_CXX"14846 reload_cmds_CXX='$CC -Tprelink_objects $reload_objs~14847 '"$reload_cmds_CXX"14848 ;;14849 *)14850 archive_cmds_CXX='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'14851 archive_expsym_cmds_CXX='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'14852 ;;14853 esac14854 ;;14855 14856 tandem*)14857 case $cc_basename in14858 NCC*)14859 # NonStop-UX NCC 3.2014860 # FIXME: insert proper C++ library support14861 ld_shlibs_CXX=no14862 ;;14863 *)14864 # FIXME: insert proper C++ library support14865 ld_shlibs_CXX=no14866 ;;14867 esac14868 ;;14869 14870 vxworks*)14871 # FIXME: insert proper C++ library support14872 ld_shlibs_CXX=no14873 ;;14874 14875 *)14876 # FIXME: insert proper C++ library support14877 ld_shlibs_CXX=no14878 ;;14879 esac14880 14881 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs_CXX" >&514882 $as_echo "$ld_shlibs_CXX" >&6; }14883 test no = "$ld_shlibs_CXX" && can_build_shared=no14884 14885 GCC_CXX=$GXX14886 LD_CXX=$LD14887 14888 ## CAVEAT EMPTOR:14889 ## There is no encapsulation within the following macros, do not change14890 ## the running order or otherwise move them around unless you know exactly14891 ## what you are doing...14892 # Dependencies to place before and after the object being linked:14893 predep_objects_CXX=14894 postdep_objects_CXX=14895 predeps_CXX=14896 postdeps_CXX=14897 compiler_lib_search_path_CXX=14898 14899 cat > conftest.$ac_ext <<_LT_EOF14900 class Foo14901 {14902 public:14903 Foo (void) { a = 0; }14904 private:14905 int a;14906 };14907 _LT_EOF14908 14909 14910 _lt_libdeps_save_CFLAGS=$CFLAGS14911 case "$CC $CFLAGS " in #(14912 *\ -flto*\ *) CFLAGS="$CFLAGS -fno-lto" ;;14913 *\ -fwhopr*\ *) CFLAGS="$CFLAGS -fno-whopr" ;;14914 *\ -fuse-linker-plugin*\ *) CFLAGS="$CFLAGS -fno-use-linker-plugin" ;;14915 esac14916 14917 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&514918 (eval $ac_compile) 2>&514919 ac_status=$?14920 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&514921 test $ac_status = 0; }; then14922 # Parse the compiler output and extract the necessary14923 # objects, libraries and library flags.14924 14925 # Sentinel used to keep track of whether or not we are before14926 # the conftest object file.14927 pre_test_object_deps_done=no14928 14929 for p in `eval "$output_verbose_link_cmd"`; do14930 case $prev$p in14931 14932 -L* | -R* | -l*)14933 # Some compilers place space between "-{L,R}" and the path.14934 # Remove the space.14935 if test x-L = "$p" ||14936 test x-R = "$p"; then14937 prev=$p14938 continue14939 fi14940 14941 # Expand the sysroot to ease extracting the directories later.14942 if test -z "$prev"; then14943 case $p in14944 -L*) func_stripname_cnf '-L' '' "$p"; prev=-L; p=$func_stripname_result ;;14945 -R*) func_stripname_cnf '-R' '' "$p"; prev=-R; p=$func_stripname_result ;;14946 -l*) func_stripname_cnf '-l' '' "$p"; prev=-l; p=$func_stripname_result ;;14947 esac14948 fi14949 case $p in14950 =*) func_stripname_cnf '=' '' "$p"; p=$lt_sysroot$func_stripname_result ;;14951 esac14952 if test no = "$pre_test_object_deps_done"; then14953 case $prev in14954 -L | -R)14955 # Internal compiler library paths should come after those14956 # provided the user. The postdeps already come after the14957 # user supplied libs so there is no need to process them.14958 if test -z "$compiler_lib_search_path_CXX"; then14959 compiler_lib_search_path_CXX=$prev$p14960 else14961 compiler_lib_search_path_CXX="${compiler_lib_search_path_CXX} $prev$p"14962 fi14963 ;;14964 # The "-l" case would never come before the object being14965 # linked, so don't bother handling this case.14966 esac14967 else14968 if test -z "$postdeps_CXX"; then14969 postdeps_CXX=$prev$p14970 else14971 postdeps_CXX="${postdeps_CXX} $prev$p"14972 fi14973 fi14974 prev=14975 ;;14976 14977 *.lto.$objext) ;; # Ignore GCC LTO objects14978 *.$objext)14979 # This assumes that the test object file only shows up14980 # once in the compiler output.14981 if test "$p" = "conftest.$objext"; then14982 pre_test_object_deps_done=yes14983 continue14984 fi14985 14986 if test no = "$pre_test_object_deps_done"; then14987 if test -z "$predep_objects_CXX"; then14988 predep_objects_CXX=$p14989 else14990 predep_objects_CXX="$predep_objects_CXX $p"14991 fi14992 else14993 if test -z "$postdep_objects_CXX"; then14994 postdep_objects_CXX=$p14995 else14996 postdep_objects_CXX="$postdep_objects_CXX $p"14997 fi14998 fi14999 ;;15000 15001 *) ;; # Ignore the rest.15002 15003 esac15004 done15005 15006 # Clean up.15007 rm -f a.out a.exe15008 else15009 echo "libtool.m4: error: problem compiling CXX test program"15010 fi15011 15012 $RM -f confest.$objext15013 CFLAGS=$_lt_libdeps_save_CFLAGS15014 15015 # PORTME: override above test on systems where it is broken15016 case $host_os in15017 interix[3-9]*)15018 # Interix 3.5 installs completely hosed .la files for C++, so rather than15019 # hack all around it, let's just trust "g++" to DTRT.15020 predep_objects_CXX=15021 postdep_objects_CXX=15022 postdeps_CXX=15023 ;;15024 esac15025 15026 15027 case " $postdeps_CXX " in15028 *" -lc "*) archive_cmds_need_lc_CXX=no ;;15029 esac15030 compiler_lib_search_dirs_CXX=15031 if test -n "${compiler_lib_search_path_CXX}"; then15032 compiler_lib_search_dirs_CXX=`echo " ${compiler_lib_search_path_CXX}" | $SED -e 's! -L! !g' -e 's!^ !!'`15033 fi15034 15035 15036 15037 15038 15039 15040 15041 15042 15043 15044 15045 15046 15047 15048 15049 15050 15051 15052 15053 15054 15055 15056 15057 15058 15059 15060 15061 15062 15063 15064 15065 lt_prog_compiler_wl_CXX=15066 lt_prog_compiler_pic_CXX=15067 lt_prog_compiler_static_CXX=15068 15069 15070 # C++ specific cases for pic, static, wl, etc.15071 if test yes = "$GXX"; then15072 lt_prog_compiler_wl_CXX='-Wl,'15073 lt_prog_compiler_static_CXX='-static'15074 15075 case $host_os in15076 aix*)15077 # All AIX code is PIC.15078 if test ia64 = "$host_cpu"; then15079 # AIX 5 now supports IA64 processor15080 lt_prog_compiler_static_CXX='-Bstatic'15081 fi15082 lt_prog_compiler_pic_CXX='-fPIC'15083 ;;15084 15085 amigaos*)15086 case $host_cpu in15087 powerpc)15088 # see comment about AmigaOS4 .so support15089 lt_prog_compiler_pic_CXX='-fPIC'15090 ;;15091 m68k)15092 # FIXME: we need at least 68020 code to build shared libraries, but15093 # adding the '-m68020' flag to GCC prevents building anything better,15094 # like '-m68040'.15095 lt_prog_compiler_pic_CXX='-m68020 -resident32 -malways-restore-a4'15096 ;;15097 esac15098 ;;15099 15100 beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)15101 # PIC is the default for these OSes.15102 ;;15103 mingw* | cygwin* | os2* | pw32* | cegcc*)15104 # This hack is so that the source file can tell whether it is being15105 # built for inclusion in a dll (and should export symbols for example).15106 # Although the cygwin gcc ignores -fPIC, still need this for old-style15107 # (--disable-auto-import) libraries15108 lt_prog_compiler_pic_CXX='-DDLL_EXPORT'15109 case $host_os in15110 os2*)15111 lt_prog_compiler_static_CXX='$wl-static'15112 ;;15113 esac15114 ;;15115 darwin* | rhapsody*)15116 # PIC is the default on this platform15117 # Common symbols not allowed in MH_DYLIB files15118 lt_prog_compiler_pic_CXX='-fno-common'15119 ;;15120 *djgpp*)15121 # DJGPP does not support shared libraries at all15122 lt_prog_compiler_pic_CXX=15123 ;;15124 haiku*)15125 # PIC is the default for Haiku.15126 # The "-static" flag exists, but is broken.15127 lt_prog_compiler_static_CXX=15128 ;;15129 interix[3-9]*)15130 # Interix 3.x gcc -fpic/-fPIC options generate broken code.15131 # Instead, we relocate shared libraries at runtime.15132 ;;15133 sysv4*MP*)15134 if test -d /usr/nec; then15135 lt_prog_compiler_pic_CXX=-Kconform_pic15136 fi15137 ;;15138 hpux*)15139 # PIC is the default for 64-bit PA HP-UX, but not for 32-bit15140 # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag15141 # sets the default TLS model and affects inlining.15142 case $host_cpu in15143 hppa*64*)15144 ;;15145 *)15146 lt_prog_compiler_pic_CXX='-fPIC'15147 ;;15148 esac15149 ;;15150 *qnx* | *nto*)15151 # QNX uses GNU C++, but need to define -shared option too, otherwise15152 # it will coredump.15153 lt_prog_compiler_pic_CXX='-fPIC -shared'15154 ;;15155 *)15156 lt_prog_compiler_pic_CXX='-fPIC'15157 ;;15158 esac15159 else15160 case $host_os in15161 aix[4-9]*)15162 # All AIX code is PIC.15163 if test ia64 = "$host_cpu"; then15164 # AIX 5 now supports IA64 processor15165 lt_prog_compiler_static_CXX='-Bstatic'15166 else15167 lt_prog_compiler_static_CXX='-bnso -bI:/lib/syscalls.exp'15168 fi15169 ;;15170 chorus*)15171 case $cc_basename in15172 cxch68*)15173 # Green Hills C++ Compiler15174 # _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"15175 ;;15176 esac15177 ;;15178 mingw* | cygwin* | os2* | pw32* | cegcc*)15179 # This hack is so that the source file can tell whether it is being15180 # built for inclusion in a dll (and should export symbols for example).15181 lt_prog_compiler_pic_CXX='-DDLL_EXPORT'15182 ;;15183 dgux*)15184 case $cc_basename in15185 ec++*)15186 lt_prog_compiler_pic_CXX='-KPIC'15187 ;;15188 ghcx*)15189 # Green Hills C++ Compiler15190 lt_prog_compiler_pic_CXX='-pic'15191 ;;15192 *)15193 ;;15194 esac15195 ;;15196 freebsd* | dragonfly*)15197 # FreeBSD uses GNU C++15198 ;;15199 hpux9* | hpux10* | hpux11*)15200 case $cc_basename in15201 CC*)15202 lt_prog_compiler_wl_CXX='-Wl,'15203 lt_prog_compiler_static_CXX='$wl-a ${wl}archive'15204 if test ia64 != "$host_cpu"; then15205 lt_prog_compiler_pic_CXX='+Z'15206 fi15207 ;;15208 aCC*)15209 lt_prog_compiler_wl_CXX='-Wl,'15210 lt_prog_compiler_static_CXX='$wl-a ${wl}archive'15211 case $host_cpu in15212 hppa*64*|ia64*)15213 # +Z the default15214 ;;15215 *)15216 lt_prog_compiler_pic_CXX='+Z'15217 ;;15218 esac15219 ;;15220 *)15221 ;;15222 esac15223 ;;15224 interix*)15225 # This is c89, which is MS Visual C++ (no shared libs)15226 # Anyone wants to do a port?15227 ;;15228 irix5* | irix6* | nonstopux*)15229 case $cc_basename in15230 CC*)15231 lt_prog_compiler_wl_CXX='-Wl,'15232 lt_prog_compiler_static_CXX='-non_shared'15233 # CC pic flag -KPIC is the default.15234 ;;15235 *)15236 ;;15237 esac15238 ;;15239 linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)15240 case $cc_basename in15241 KCC*)15242 # KAI C++ Compiler15243 lt_prog_compiler_wl_CXX='--backend -Wl,'15244 lt_prog_compiler_pic_CXX='-fPIC'15245 ;;15246 ecpc* )15247 # old Intel C++ for x86_64, which still supported -KPIC.15248 lt_prog_compiler_wl_CXX='-Wl,'15249 lt_prog_compiler_pic_CXX='-KPIC'15250 lt_prog_compiler_static_CXX='-static'15251 ;;15252 icpc* )15253 # Intel C++, used to be incompatible with GCC.15254 # ICC 10 doesn't accept -KPIC any more.15255 lt_prog_compiler_wl_CXX='-Wl,'15256 lt_prog_compiler_pic_CXX='-fPIC'15257 lt_prog_compiler_static_CXX='-static'15258 ;;15259 pgCC* | pgcpp*)15260 # Portland Group C++ compiler15261 lt_prog_compiler_wl_CXX='-Wl,'15262 lt_prog_compiler_pic_CXX='-fpic'15263 lt_prog_compiler_static_CXX='-Bstatic'15264 ;;15265 cxx*)15266 # Compaq C++15267 # Make sure the PIC flag is empty. It appears that all Alpha15268 # Linux and Compaq Tru64 Unix objects are PIC.15269 lt_prog_compiler_pic_CXX=15270 lt_prog_compiler_static_CXX='-non_shared'15271 ;;15272 xlc* | xlC* | bgxl[cC]* | mpixl[cC]*)15273 # IBM XL 8.0, 9.0 on PPC and BlueGene15274 lt_prog_compiler_wl_CXX='-Wl,'15275 lt_prog_compiler_pic_CXX='-qpic'15276 lt_prog_compiler_static_CXX='-qstaticlink'15277 ;;15278 *)15279 case `$CC -V 2>&1 | sed 5q` in15280 *Sun\ C*)15281 # Sun C++ 5.915282 lt_prog_compiler_pic_CXX='-KPIC'15283 lt_prog_compiler_static_CXX='-Bstatic'15284 lt_prog_compiler_wl_CXX='-Qoption ld '15285 ;;15286 esac15287 ;;15288 esac15289 ;;15290 lynxos*)15291 ;;15292 m88k*)15293 ;;15294 mvs*)15295 case $cc_basename in15296 cxx*)15297 lt_prog_compiler_pic_CXX='-W c,exportall'15298 ;;15299 *)15300 ;;15301 esac15302 ;;15303 netbsd* | netbsdelf*-gnu)15304 ;;15305 *qnx* | *nto*)15306 # QNX uses GNU C++, but need to define -shared option too, otherwise15307 # it will coredump.15308 lt_prog_compiler_pic_CXX='-fPIC -shared'15309 ;;15310 osf3* | osf4* | osf5*)15311 case $cc_basename in15312 KCC*)15313 lt_prog_compiler_wl_CXX='--backend -Wl,'15314 ;;15315 RCC*)15316 # Rational C++ 2.4.115317 lt_prog_compiler_pic_CXX='-pic'15318 ;;15319 cxx*)15320 # Digital/Compaq C++15321 lt_prog_compiler_wl_CXX='-Wl,'15322 # Make sure the PIC flag is empty. It appears that all Alpha15323 # Linux and Compaq Tru64 Unix objects are PIC.15324 lt_prog_compiler_pic_CXX=15325 lt_prog_compiler_static_CXX='-non_shared'15326 ;;15327 *)15328 ;;15329 esac15330 ;;15331 psos*)15332 ;;15333 solaris*)15334 case $cc_basename in15335 CC* | sunCC*)15336 # Sun C++ 4.2, 5.x and Centerline C++15337 lt_prog_compiler_pic_CXX='-KPIC'15338 lt_prog_compiler_static_CXX='-Bstatic'15339 lt_prog_compiler_wl_CXX='-Qoption ld '15340 ;;15341 gcx*)15342 # Green Hills C++ Compiler15343 lt_prog_compiler_pic_CXX='-PIC'15344 ;;15345 *)15346 ;;15347 esac15348 ;;15349 sunos4*)15350 case $cc_basename in15351 CC*)15352 # Sun C++ 4.x15353 lt_prog_compiler_pic_CXX='-pic'15354 lt_prog_compiler_static_CXX='-Bstatic'15355 ;;15356 lcc*)15357 # Lucid15358 lt_prog_compiler_pic_CXX='-pic'15359 ;;15360 *)15361 ;;15362 esac15363 ;;15364 sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)15365 case $cc_basename in15366 CC*)15367 lt_prog_compiler_wl_CXX='-Wl,'15368 lt_prog_compiler_pic_CXX='-KPIC'15369 lt_prog_compiler_static_CXX='-Bstatic'15370 ;;15371 esac15372 ;;15373 tandem*)15374 case $cc_basename in15375 NCC*)15376 # NonStop-UX NCC 3.2015377 lt_prog_compiler_pic_CXX='-KPIC'15378 ;;15379 *)15380 ;;15381 esac15382 ;;15383 vxworks*)15384 ;;15385 *)15386 lt_prog_compiler_can_build_shared_CXX=no15387 ;;15388 esac15389 fi15390 15391 case $host_os in15392 # For platforms that do not support PIC, -DPIC is meaningless:15393 *djgpp*)15394 lt_prog_compiler_pic_CXX=15395 ;;15396 *)15397 lt_prog_compiler_pic_CXX="$lt_prog_compiler_pic_CXX -DPIC"15398 ;;15399 esac15400 15401 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&515402 $as_echo_n "checking for $compiler option to produce PIC... " >&6; }15403 if ${lt_cv_prog_compiler_pic_CXX+:} false; then :15404 $as_echo_n "(cached) " >&615405 else15406 lt_cv_prog_compiler_pic_CXX=$lt_prog_compiler_pic_CXX15407 fi15408 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic_CXX" >&515409 $as_echo "$lt_cv_prog_compiler_pic_CXX" >&6; }15410 lt_prog_compiler_pic_CXX=$lt_cv_prog_compiler_pic_CXX15411 15412 #15413 # Check to make sure the PIC flag actually works.15414 #15415 if test -n "$lt_prog_compiler_pic_CXX"; then15416 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler PIC flag $lt_prog_compiler_pic_CXX works" >&515417 $as_echo_n "checking if $compiler PIC flag $lt_prog_compiler_pic_CXX works... " >&6; }15418 if ${lt_cv_prog_compiler_pic_works_CXX+:} false; then :15419 $as_echo_n "(cached) " >&615420 else15421 lt_cv_prog_compiler_pic_works_CXX=no15422 ac_outfile=conftest.$ac_objext15423 echo "$lt_simple_compile_test_code" > conftest.$ac_ext15424 lt_compiler_flag="$lt_prog_compiler_pic_CXX -DPIC" ## exclude from sc_useless_quotes_in_assignment15425 # Insert the option either (1) after the last *FLAGS variable, or15426 # (2) before a word containing "conftest.", or (3) at the end.15427 # Note that $ac_compile itself does not contain backslashes and begins15428 # with a dollar sign (not a hyphen), so the echo should work correctly.15429 # The option is referenced via a variable to avoid confusing sed.15430 lt_compile=`echo "$ac_compile" | $SED \15431 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \15432 -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \15433 -e 's:$: $lt_compiler_flag:'`15434 (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5)15435 (eval "$lt_compile" 2>conftest.err)15436 ac_status=$?15437 cat conftest.err >&515438 echo "$as_me:$LINENO: \$? = $ac_status" >&515439 if (exit $ac_status) && test -s "$ac_outfile"; then15440 # The compiler can only warn and ignore the option if not recognized15441 # So say no if there are warnings other than the usual output.15442 $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp15443 $SED '/^$/d; /^ *+/d' conftest.err >conftest.er215444 if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then15445 lt_cv_prog_compiler_pic_works_CXX=yes15446 fi15447 fi15448 $RM conftest*15449 15450 fi15451 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic_works_CXX" >&515452 $as_echo "$lt_cv_prog_compiler_pic_works_CXX" >&6; }15453 15454 if test yes = "$lt_cv_prog_compiler_pic_works_CXX"; then15455 case $lt_prog_compiler_pic_CXX in15456 "" | " "*) ;;15457 *) lt_prog_compiler_pic_CXX=" $lt_prog_compiler_pic_CXX" ;;15458 esac15459 else15460 lt_prog_compiler_pic_CXX=15461 lt_prog_compiler_can_build_shared_CXX=no15462 fi15463 15464 fi15465 15466 15467 15468 15469 15470 #15471 # Check to make sure the static flag actually works.15472 #15473 wl=$lt_prog_compiler_wl_CXX eval lt_tmp_static_flag=\"$lt_prog_compiler_static_CXX\"15474 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler static flag $lt_tmp_static_flag works" >&515475 $as_echo_n "checking if $compiler static flag $lt_tmp_static_flag works... " >&6; }15476 if ${lt_cv_prog_compiler_static_works_CXX+:} false; then :15477 $as_echo_n "(cached) " >&615478 else15479 lt_cv_prog_compiler_static_works_CXX=no15480 save_LDFLAGS=$LDFLAGS15481 LDFLAGS="$LDFLAGS $lt_tmp_static_flag"15482 echo "$lt_simple_link_test_code" > conftest.$ac_ext15483 if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then15484 # The linker can only warn and ignore the option if not recognized15485 # So say no if there are warnings15486 if test -s conftest.err; then15487 # Append any errors to the config.log.15488 cat conftest.err 1>&515489 $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp15490 $SED '/^$/d; /^ *+/d' conftest.err >conftest.er215491 if diff conftest.exp conftest.er2 >/dev/null; then15492 lt_cv_prog_compiler_static_works_CXX=yes15493 fi15494 else15495 lt_cv_prog_compiler_static_works_CXX=yes15496 fi15497 fi15498 $RM -r conftest*15499 LDFLAGS=$save_LDFLAGS15500 15501 fi15502 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_static_works_CXX" >&515503 $as_echo "$lt_cv_prog_compiler_static_works_CXX" >&6; }15504 15505 if test yes = "$lt_cv_prog_compiler_static_works_CXX"; then15506 :15507 else15508 lt_prog_compiler_static_CXX=15509 fi15510 15511 15512 15513 15514 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&515515 $as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; }15516 if ${lt_cv_prog_compiler_c_o_CXX+:} false; then :15517 $as_echo_n "(cached) " >&615518 else15519 lt_cv_prog_compiler_c_o_CXX=no15520 $RM -r conftest 2>/dev/null15521 mkdir conftest15522 cd conftest15523 mkdir out15524 echo "$lt_simple_compile_test_code" > conftest.$ac_ext15525 15526 lt_compiler_flag="-o out/conftest2.$ac_objext"15527 # Insert the option either (1) after the last *FLAGS variable, or15528 # (2) before a word containing "conftest.", or (3) at the end.15529 # Note that $ac_compile itself does not contain backslashes and begins15530 # with a dollar sign (not a hyphen), so the echo should work correctly.15531 lt_compile=`echo "$ac_compile" | $SED \15532 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \15533 -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \15534 -e 's:$: $lt_compiler_flag:'`15535 (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5)15536 (eval "$lt_compile" 2>out/conftest.err)15537 ac_status=$?15538 cat out/conftest.err >&515539 echo "$as_me:$LINENO: \$? = $ac_status" >&515540 if (exit $ac_status) && test -s out/conftest2.$ac_objext15541 then15542 # The compiler can only warn and ignore the option if not recognized15543 # So say no if there are warnings15544 $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp15545 $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er215546 if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then15547 lt_cv_prog_compiler_c_o_CXX=yes15548 fi15549 fi15550 chmod u+w . 2>&515551 $RM conftest*15552 # SGI C++ compiler will create directory out/ii_files/ for15553 # template instantiation15554 test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files15555 $RM out/* && rmdir out15556 cd ..15557 $RM -r conftest15558 $RM conftest*15559 15560 fi15561 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o_CXX" >&515562 $as_echo "$lt_cv_prog_compiler_c_o_CXX" >&6; }15563 15564 15565 15566 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&515567 $as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; }15568 if ${lt_cv_prog_compiler_c_o_CXX+:} false; then :15569 $as_echo_n "(cached) " >&615570 else15571 lt_cv_prog_compiler_c_o_CXX=no15572 $RM -r conftest 2>/dev/null15573 mkdir conftest15574 cd conftest15575 mkdir out15576 echo "$lt_simple_compile_test_code" > conftest.$ac_ext15577 15578 lt_compiler_flag="-o out/conftest2.$ac_objext"15579 # Insert the option either (1) after the last *FLAGS variable, or15580 # (2) before a word containing "conftest.", or (3) at the end.15581 # Note that $ac_compile itself does not contain backslashes and begins15582 # with a dollar sign (not a hyphen), so the echo should work correctly.15583 lt_compile=`echo "$ac_compile" | $SED \15584 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \15585 -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \15586 -e 's:$: $lt_compiler_flag:'`15587 (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5)15588 (eval "$lt_compile" 2>out/conftest.err)15589 ac_status=$?15590 cat out/conftest.err >&515591 echo "$as_me:$LINENO: \$? = $ac_status" >&515592 if (exit $ac_status) && test -s out/conftest2.$ac_objext15593 then15594 # The compiler can only warn and ignore the option if not recognized15595 # So say no if there are warnings15596 $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp15597 $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er215598 if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then15599 lt_cv_prog_compiler_c_o_CXX=yes15600 fi15601 fi15602 chmod u+w . 2>&515603 $RM conftest*15604 # SGI C++ compiler will create directory out/ii_files/ for15605 # template instantiation15606 test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files15607 $RM out/* && rmdir out15608 cd ..15609 $RM -r conftest15610 $RM conftest*15611 15612 fi15613 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o_CXX" >&515614 $as_echo "$lt_cv_prog_compiler_c_o_CXX" >&6; }15615 15616 15617 15618 15619 hard_links=nottested15620 if test no = "$lt_cv_prog_compiler_c_o_CXX" && test no != "$need_locks"; then15621 # do not overwrite the value of need_locks provided by the user15622 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if we can lock with hard links" >&515623 $as_echo_n "checking if we can lock with hard links... " >&6; }15624 hard_links=yes15625 $RM conftest*15626 ln conftest.a conftest.b 2>/dev/null && hard_links=no15627 touch conftest.a15628 ln conftest.a conftest.b 2>&5 || hard_links=no15629 ln conftest.a conftest.b 2>/dev/null && hard_links=no15630 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $hard_links" >&515631 $as_echo "$hard_links" >&6; }15632 if test no = "$hard_links"; then15633 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&515634 $as_echo "$as_me: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&2;}15635 need_locks=warn15636 fi15637 else15638 need_locks=no15639 fi15640 15641 15642 15643 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&515644 $as_echo_n "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; }15645 15646 export_symbols_cmds_CXX='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'15647 exclude_expsyms_CXX='_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'15648 case $host_os in15649 aix[4-9]*)15650 # If we're using GNU nm, then we don't want the "-C" option.15651 # -C means demangle to GNU nm, but means don't demangle to AIX nm.15652 # Without the "-l" option, or with the "-B" option, AIX nm treats15653 # weak defined symbols like other global defined symbols, whereas15654 # GNU nm marks them as "W".15655 # While the 'weak' keyword is ignored in the Export File, we need15656 # it in the Import File for the 'aix-soname' feature, so we have15657 # to replace the "-B" option with "-P" for AIX nm.15658 if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then15659 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'15660 else15661 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'15662 fi15663 ;;15664 pw32*)15665 export_symbols_cmds_CXX=$ltdll_cmds15666 ;;15667 cygwin* | mingw* | cegcc*)15668 case $cc_basename in15669 cl*)15670 exclude_expsyms_CXX='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*'15671 ;;15672 *)15673 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'15674 exclude_expsyms_CXX='[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname'15675 ;;15676 esac15677 ;;15678 linux* | k*bsd*-gnu | gnu*)15679 link_all_deplibs_CXX=no15680 ;;15681 *)15682 export_symbols_cmds_CXX='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'15683 ;;15684 esac15685 15686 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs_CXX" >&515687 $as_echo "$ld_shlibs_CXX" >&6; }15688 test no = "$ld_shlibs_CXX" && can_build_shared=no15689 15690 with_gnu_ld_CXX=$with_gnu_ld15691 15692 15693 15694 15695 15696 15697 #15698 # Do we need to explicitly link libc?15699 #15700 case "x$archive_cmds_need_lc_CXX" in15701 x|xyes)15702 # Assume -lc should be added15703 archive_cmds_need_lc_CXX=yes15704 15705 if test yes,yes = "$GCC,$enable_shared"; then15706 case $archive_cmds_CXX in15707 *'~'*)15708 # FIXME: we may have to deal with multi-command sequences.15709 ;;15710 '$CC '*)15711 # Test whether the compiler implicitly links with -lc since on some15712 # systems, -lgcc has to come before -lc. If gcc already passes -lc15713 # to ld, don't add -lc before -lgcc.15714 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -lc should be explicitly linked in" >&515715 $as_echo_n "checking whether -lc should be explicitly linked in... " >&6; }15716 if ${lt_cv_archive_cmds_need_lc_CXX+:} false; then :15717 $as_echo_n "(cached) " >&615718 else15719 $RM conftest*15720 echo "$lt_simple_compile_test_code" > conftest.$ac_ext15721 15722 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&515723 (eval $ac_compile) 2>&515724 ac_status=$?15725 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&515726 test $ac_status = 0; } 2>conftest.err; then15727 soname=conftest15728 lib=conftest15729 libobjs=conftest.$ac_objext15730 deplibs=15731 wl=$lt_prog_compiler_wl_CXX15732 pic_flag=$lt_prog_compiler_pic_CXX15733 compiler_flags=-v15734 linker_flags=-v15735 verstring=15736 output_objdir=.15737 libname=conftest15738 lt_save_allow_undefined_flag=$allow_undefined_flag_CXX15739 allow_undefined_flag_CXX=15740 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$archive_cmds_CXX 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1\""; } >&515741 (eval $archive_cmds_CXX 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1) 2>&515742 ac_status=$?15743 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&515744 test $ac_status = 0; }15745 then15746 lt_cv_archive_cmds_need_lc_CXX=no15747 else15748 lt_cv_archive_cmds_need_lc_CXX=yes15749 fi15750 allow_undefined_flag_CXX=$lt_save_allow_undefined_flag15751 else15752 cat conftest.err 1>&515753 fi15754 $RM conftest*15755 15756 fi15757 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_archive_cmds_need_lc_CXX" >&515758 $as_echo "$lt_cv_archive_cmds_need_lc_CXX" >&6; }15759 archive_cmds_need_lc_CXX=$lt_cv_archive_cmds_need_lc_CXX15760 ;;15761 esac15762 fi15763 ;;15764 esac15765 15766 15767 15768 15769 15770 15771 15772 15773 15774 15775 15776 15777 15778 15779 15780 15781 15782 15783 15784 15785 15786 15787 15788 15789 15790 15791 15792 15793 15794 15795 15796 15797 15798 15799 15800 15801 15802 15803 15804 15805 15806 15807 15808 15809 15810 15811 15812 15813 15814 15815 15816 15817 15818 15819 15820 15821 15822 15823 15824 15825 15826 15827 { $as_echo "$as_me:${as_lineno-$LINENO}: checking dynamic linker characteristics" >&515828 $as_echo_n "checking dynamic linker characteristics... " >&6; }15829 15830 library_names_spec=15831 libname_spec='lib$name'15832 soname_spec=15833 shrext_cmds=.so15834 postinstall_cmds=15835 postuninstall_cmds=15836 finish_cmds=15837 finish_eval=15838 shlibpath_var=15839 shlibpath_overrides_runpath=unknown15840 version_type=none15841 dynamic_linker="$host_os ld.so"15842 sys_lib_dlsearch_path_spec="/lib /usr/lib"15843 need_lib_prefix=unknown15844 hardcode_into_libs=no15845 15846 # when you set need_version to no, make sure it does not cause -set_version15847 # flags to be left without arguments15848 need_version=unknown15849 15850 15851 15852 case $host_os in15853 aix3*)15854 version_type=linux # correct to gnu/linux during the next big refactor15855 library_names_spec='$libname$release$shared_ext$versuffix $libname.a'15856 shlibpath_var=LIBPATH15857 15858 # AIX 3 has no versioning support, so we append a major version to the name.15859 soname_spec='$libname$release$shared_ext$major'15860 ;;15861 15862 aix[4-9]*)15863 version_type=linux # correct to gnu/linux during the next big refactor15864 need_lib_prefix=no15865 need_version=no15866 hardcode_into_libs=yes15867 if test ia64 = "$host_cpu"; then15868 # AIX 5 supports IA6415869 library_names_spec='$libname$release$shared_ext$major $libname$release$shared_ext$versuffix $libname$shared_ext'15870 shlibpath_var=LD_LIBRARY_PATH15871 else15872 # With GCC up to 2.95.x, collect2 would create an import file15873 # for dependence libraries. The import file would start with15874 # the line '#! .'. This would cause the generated library to15875 # depend on '.', always an invalid library. This was fixed in15876 # development snapshots of GCC prior to 3.0.15877 case $host_os in15878 aix4 | aix4.[01] | aix4.[01].*)15879 if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'15880 echo ' yes '15881 echo '#endif'; } | $CC -E - | $GREP yes > /dev/null; then15882 :15883 else15884 can_build_shared=no15885 fi15886 ;;15887 esac15888 # Using Import Files as archive members, it is possible to support15889 # filename-based versioning of shared library archives on AIX. While15890 # this would work for both with and without runtime linking, it will15891 # prevent static linking of such archives. So we do filename-based15892 # shared library versioning with .so extension only, which is used15893 # when both runtime linking and shared linking is enabled.15894 # Unfortunately, runtime linking may impact performance, so we do15895 # not want this to be the default eventually. Also, we use the15896 # versioned .so libs for executables only if there is the -brtl15897 # linker flag in LDFLAGS as well, or --with-aix-soname=svr4 only.15898 # To allow for filename-based versioning support, we need to create15899 # libNAME.so.V as an archive file, containing:15900 # *) an Import File, referring to the versioned filename of the15901 # archive as well as the shared archive member, telling the15902 # bitwidth (32 or 64) of that shared object, and providing the15903 # list of exported symbols of that shared object, eventually15904 # decorated with the 'weak' keyword15905 # *) the shared object with the F_LOADONLY flag set, to really avoid15906 # it being seen by the linker.15907 # At run time we better use the real file rather than another symlink,15908 # but for link time we create the symlink libNAME.so -> libNAME.so.V15909 15910 case $with_aix_soname,$aix_use_runtimelinking in15911 # AIX (on Power*) has no versioning support, so currently we cannot hardcode correct15912 # soname into executable. Probably we can add versioning support to15913 # collect2, so additional links can be useful in future.15914 aix,yes) # traditional libtool15915 dynamic_linker='AIX unversionable lib.so'15916 # If using run time linking (on AIX 4.2 or later) use lib<name>.so15917 # instead of lib<name>.a to let people know that these are not15918 # typical AIX shared libraries.15919 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'15920 ;;15921 aix,no) # traditional AIX only15922 dynamic_linker='AIX lib.a(lib.so.V)'15923 # We preserve .a as extension for shared libraries through AIX4.215924 # and later when we are not doing run time linking.15925 library_names_spec='$libname$release.a $libname.a'15926 soname_spec='$libname$release$shared_ext$major'15927 ;;15928 svr4,*) # full svr4 only15929 dynamic_linker="AIX lib.so.V($shared_archive_member_spec.o)"15930 library_names_spec='$libname$release$shared_ext$major $libname$shared_ext'15931 # We do not specify a path in Import Files, so LIBPATH fires.15932 shlibpath_overrides_runpath=yes15933 ;;15934 *,yes) # both, prefer svr415935 dynamic_linker="AIX lib.so.V($shared_archive_member_spec.o), lib.a(lib.so.V)"15936 library_names_spec='$libname$release$shared_ext$major $libname$shared_ext'15937 # unpreferred sharedlib libNAME.a needs extra handling15938 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"'15939 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"'15940 # We do not specify a path in Import Files, so LIBPATH fires.15941 shlibpath_overrides_runpath=yes15942 ;;15943 *,no) # both, prefer aix15944 dynamic_linker="AIX lib.a(lib.so.V), lib.so.V($shared_archive_member_spec.o)"15945 library_names_spec='$libname$release.a $libname.a'15946 soname_spec='$libname$release$shared_ext$major'15947 # unpreferred sharedlib libNAME.so.V and symlink libNAME.so need extra handling15948 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)'15949 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"'15950 ;;15951 esac15952 shlibpath_var=LIBPATH15953 fi15954 ;;15955 15956 amigaos*)15957 case $host_cpu in15958 powerpc)15959 # Since July 2007 AmigaOS4 officially supports .so libraries.15960 # When compiling the executable, add -use-dynld -Lsobjs: to the compileline.15961 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'15962 ;;15963 m68k)15964 library_names_spec='$libname.ixlibrary $libname.a'15965 # Create ${libname}_ixlibrary.a entries in /sys/libs.15966 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'15967 ;;15968 esac15969 ;;15970 15971 beos*)15972 library_names_spec='$libname$shared_ext'15973 dynamic_linker="$host_os ld.so"15974 shlibpath_var=LIBRARY_PATH15975 ;;15976 15977 bsdi[45]*)15978 version_type=linux # correct to gnu/linux during the next big refactor15979 need_version=no15980 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'15981 soname_spec='$libname$release$shared_ext$major'15982 finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'15983 shlibpath_var=LD_LIBRARY_PATH15984 sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"15985 sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"15986 # the default ld.so.conf also contains /usr/contrib/lib and15987 # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow15988 # libtool to hard-code these into programs15989 ;;15990 15991 cygwin* | mingw* | pw32* | cegcc*)15992 version_type=windows15993 shrext_cmds=.dll15994 need_version=no15995 need_lib_prefix=no15996 15997 case $GCC,$cc_basename in15998 yes,*)15999 # gcc16000 library_names_spec='$libname.dll.a'16001 # DLL is installed to $(libdir)/../bin by postinstall_cmds16002 postinstall_cmds='base_file=`basename \$file`~16003 dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~16004 dldir=$destdir/`dirname \$dlpath`~16005 test -d \$dldir || mkdir -p \$dldir~16006 $install_prog $dir/$dlname \$dldir/$dlname~16007 chmod a+x \$dldir/$dlname~16008 if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then16009 eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;16010 fi'16011 postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~16012 dlpath=$dir/\$dldll~16013 $RM \$dlpath'16014 shlibpath_overrides_runpath=yes16015 16016 case $host_os in16017 cygwin*)16018 # Cygwin DLLs use 'cyg' prefix rather than 'lib'16019 soname_spec='`echo $libname | sed -e 's/^lib/cyg/'``echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'16020 16021 ;;16022 mingw* | cegcc*)16023 # MinGW DLLs use traditional 'lib' prefix16024 soname_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'16025 ;;16026 pw32*)16027 # pw32 DLLs use 'pw' prefix rather than 'lib'16028 library_names_spec='`echo $libname | sed -e 's/^lib/pw/'``echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'16029 ;;16030 esac16031 dynamic_linker='Win32 ld.exe'16032 ;;16033 16034 *,cl*)16035 # Native MSVC16036 libname_spec='$name'16037 soname_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'16038 library_names_spec='$libname.dll.lib'16039 16040 case $build_os in16041 mingw*)16042 sys_lib_search_path_spec=16043 lt_save_ifs=$IFS16044 IFS=';'16045 for lt_path in $LIB16046 do16047 IFS=$lt_save_ifs16048 # Let DOS variable expansion print the short 8.3 style file name.16049 lt_path=`cd "$lt_path" 2>/dev/null && cmd //C "for %i in (".") do @echo %~si"`16050 sys_lib_search_path_spec="$sys_lib_search_path_spec $lt_path"16051 done16052 IFS=$lt_save_ifs16053 # Convert to MSYS style.16054 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | sed -e 's|\\\\|/|g' -e 's| \\([a-zA-Z]\\):| /\\1|g' -e 's|^ ||'`16055 ;;16056 cygwin*)16057 # Convert to unix form, then to dos form, then back to unix form16058 # but this time dos style (no spaces!) so that the unix form looks16059 # like /cygdrive/c/PROGRA~1:/cygdr...16060 sys_lib_search_path_spec=`cygpath --path --unix "$LIB"`16061 sys_lib_search_path_spec=`cygpath --path --dos "$sys_lib_search_path_spec" 2>/dev/null`16062 sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`16063 ;;16064 *)16065 sys_lib_search_path_spec=$LIB16066 if $ECHO "$sys_lib_search_path_spec" | $GREP ';[c-zC-Z]:/' >/dev/null; then16067 # It is most probably a Windows format PATH.16068 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`16069 else16070 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`16071 fi16072 # FIXME: find the short name or the path components, as spaces are16073 # common. (e.g. "Program Files" -> "PROGRA~1")16074 ;;16075 esac16076 16077 # DLL is installed to $(libdir)/../bin by postinstall_cmds16078 postinstall_cmds='base_file=`basename \$file`~16079 dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~16080 dldir=$destdir/`dirname \$dlpath`~16081 test -d \$dldir || mkdir -p \$dldir~16082 $install_prog $dir/$dlname \$dldir/$dlname'16083 postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~16084 dlpath=$dir/\$dldll~16085 $RM \$dlpath'16086 shlibpath_overrides_runpath=yes16087 dynamic_linker='Win32 link.exe'16088 ;;16089 16090 *)16091 # Assume MSVC wrapper16092 library_names_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext $libname.lib'16093 dynamic_linker='Win32 ld.exe'16094 ;;16095 esac16096 # FIXME: first we should search . and the directory the executable is in16097 shlibpath_var=PATH16098 ;;16099 16100 darwin* | rhapsody*)16101 dynamic_linker="$host_os dyld"16102 version_type=darwin16103 need_lib_prefix=no16104 need_version=no16105 library_names_spec='$libname$release$major$shared_ext $libname$shared_ext'16106 soname_spec='$libname$release$major$shared_ext'16107 shlibpath_overrides_runpath=yes16108 shlibpath_var=DYLD_LIBRARY_PATH16109 shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'16110 16111 sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'16112 ;;16113 16114 dgux*)16115 version_type=linux # correct to gnu/linux during the next big refactor16116 need_lib_prefix=no16117 need_version=no16118 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'16119 soname_spec='$libname$release$shared_ext$major'16120 shlibpath_var=LD_LIBRARY_PATH16121 ;;16122 16123 freebsd* | dragonfly*)16124 # DragonFly does not have aout. When/if they implement a new16125 # versioning mechanism, adjust this.16126 if test -x /usr/bin/objformat; then16127 objformat=`/usr/bin/objformat`16128 else16129 case $host_os in16130 freebsd[23].*) objformat=aout ;;16131 *) objformat=elf ;;16132 esac16133 fi16134 version_type=freebsd-$objformat16135 case $version_type in16136 freebsd-elf*)16137 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'16138 soname_spec='$libname$release$shared_ext$major'16139 need_version=no16140 need_lib_prefix=no16141 ;;16142 freebsd-*)16143 library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'16144 need_version=yes16145 ;;16146 esac16147 shlibpath_var=LD_LIBRARY_PATH16148 case $host_os in16149 freebsd2.*)16150 shlibpath_overrides_runpath=yes16151 ;;16152 freebsd3.[01]* | freebsdelf3.[01]*)16153 shlibpath_overrides_runpath=yes16154 hardcode_into_libs=yes16155 ;;16156 freebsd3.[2-9]* | freebsdelf3.[2-9]* | \16157 freebsd4.[0-5] | freebsdelf4.[0-5] | freebsd4.1.1 | freebsdelf4.1.1)16158 shlibpath_overrides_runpath=no16159 hardcode_into_libs=yes16160 ;;16161 *) # from 4.6 on, and DragonFly16162 shlibpath_overrides_runpath=yes16163 hardcode_into_libs=yes16164 ;;16165 esac16166 ;;16167 16168 haiku*)16169 version_type=linux # correct to gnu/linux during the next big refactor16170 need_lib_prefix=no16171 need_version=no16172 dynamic_linker="$host_os runtime_loader"16173 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'16174 soname_spec='$libname$release$shared_ext$major'16175 shlibpath_var=LIBRARY_PATH16176 shlibpath_overrides_runpath=no16177 sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib'16178 hardcode_into_libs=yes16179 ;;16180 16181 hpux9* | hpux10* | hpux11*)16182 # Give a soname corresponding to the major version so that dld.sl refuses to16183 # link against other versions.16184 version_type=sunos16185 need_lib_prefix=no16186 need_version=no16187 case $host_cpu in16188 ia64*)16189 shrext_cmds='.so'16190 hardcode_into_libs=yes16191 dynamic_linker="$host_os dld.so"16192 shlibpath_var=LD_LIBRARY_PATH16193 shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.16194 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'16195 soname_spec='$libname$release$shared_ext$major'16196 if test 32 = "$HPUX_IA64_MODE"; then16197 sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"16198 sys_lib_dlsearch_path_spec=/usr/lib/hpux3216199 else16200 sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"16201 sys_lib_dlsearch_path_spec=/usr/lib/hpux6416202 fi16203 ;;16204 hppa*64*)16205 shrext_cmds='.sl'16206 hardcode_into_libs=yes16207 dynamic_linker="$host_os dld.sl"16208 shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH16209 shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.16210 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'16211 soname_spec='$libname$release$shared_ext$major'16212 sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64"16213 sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec16214 ;;16215 *)16216 shrext_cmds='.sl'16217 dynamic_linker="$host_os dld.sl"16218 shlibpath_var=SHLIB_PATH16219 shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH16220 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'16221 soname_spec='$libname$release$shared_ext$major'16222 ;;16223 esac16224 # HP-UX runs *really* slowly unless shared libraries are mode 555, ...16225 postinstall_cmds='chmod 555 $lib'16226 # or fails outright, so override atomically:16227 install_override_mode=55516228 ;;16229 16230 interix[3-9]*)16231 version_type=linux # correct to gnu/linux during the next big refactor16232 need_lib_prefix=no16233 need_version=no16234 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'16235 soname_spec='$libname$release$shared_ext$major'16236 dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)'16237 shlibpath_var=LD_LIBRARY_PATH16238 shlibpath_overrides_runpath=no16239 hardcode_into_libs=yes16240 ;;16241 16242 irix5* | irix6* | nonstopux*)16243 case $host_os in16244 nonstopux*) version_type=nonstopux ;;16245 *)16246 if test yes = "$lt_cv_prog_gnu_ld"; then16247 version_type=linux # correct to gnu/linux during the next big refactor16248 else16249 version_type=irix16250 fi ;;16251 esac16252 need_lib_prefix=no16253 need_version=no16254 soname_spec='$libname$release$shared_ext$major'16255 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$release$shared_ext $libname$shared_ext'16256 case $host_os in16257 irix5* | nonstopux*)16258 libsuff= shlibsuff=16259 ;;16260 *)16261 case $LD in # libtool.m4 will add one of these switches to LD16262 *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ")16263 libsuff= shlibsuff= libmagic=32-bit;;16264 *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ")16265 libsuff=32 shlibsuff=N32 libmagic=N32;;16266 *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ")16267 libsuff=64 shlibsuff=64 libmagic=64-bit;;16268 *) libsuff= shlibsuff= libmagic=never-match;;16269 esac16270 ;;16271 esac16272 shlibpath_var=LD_LIBRARY${shlibsuff}_PATH16273 shlibpath_overrides_runpath=no16274 sys_lib_search_path_spec="/usr/lib$libsuff /lib$libsuff /usr/local/lib$libsuff"16275 sys_lib_dlsearch_path_spec="/usr/lib$libsuff /lib$libsuff"16276 hardcode_into_libs=yes16277 ;;16278 16279 # No shared lib support for Linux oldld, aout, or coff.16280 linux*oldld* | linux*aout* | linux*coff*)16281 dynamic_linker=no16282 ;;16283 16284 linux*android*)16285 version_type=none # Android doesn't support versioned libraries.16286 need_lib_prefix=no16287 need_version=no16288 library_names_spec='$libname$release$shared_ext'16289 soname_spec='$libname$release$shared_ext'16290 finish_cmds=16291 shlibpath_var=LD_LIBRARY_PATH16292 shlibpath_overrides_runpath=yes16293 16294 # This implies no fast_install, which is unacceptable.16295 # Some rework will be needed to allow for fast_install16296 # before this can be enabled.16297 hardcode_into_libs=yes16298 16299 dynamic_linker='Android linker'16300 # Don't embed -rpath directories since the linker doesn't support them.16301 hardcode_libdir_flag_spec_CXX='-L$libdir'16302 ;;16303 16304 # This must be glibc/ELF.16305 linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)16306 version_type=linux # correct to gnu/linux during the next big refactor16307 need_lib_prefix=no16308 need_version=no16309 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'16310 soname_spec='$libname$release$shared_ext$major'16311 finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'16312 shlibpath_var=LD_LIBRARY_PATH16313 shlibpath_overrides_runpath=no16314 16315 # Some binutils ld are patched to set DT_RUNPATH16316 if ${lt_cv_shlibpath_overrides_runpath+:} false; then :16317 $as_echo_n "(cached) " >&616318 else16319 lt_cv_shlibpath_overrides_runpath=no16320 save_LDFLAGS=$LDFLAGS16321 save_libdir=$libdir16322 eval "libdir=/foo; wl=\"$lt_prog_compiler_wl_CXX\"; \16323 LDFLAGS=\"\$LDFLAGS $hardcode_libdir_flag_spec_CXX\""16324 cat confdefs.h - <<_ACEOF >conftest.$ac_ext16325 /* end confdefs.h. */16326 16327 int16328 main ()16329 {16330 16331 ;16332 return 0;16333 }16334 _ACEOF16335 if ac_fn_cxx_try_link "$LINENO"; then :16336 if ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null; then :16337 lt_cv_shlibpath_overrides_runpath=yes16338 fi16339 fi16340 rm -f core conftest.err conftest.$ac_objext \16341 conftest$ac_exeext conftest.$ac_ext16342 LDFLAGS=$save_LDFLAGS16343 libdir=$save_libdir16344 16345 fi16346 16347 shlibpath_overrides_runpath=$lt_cv_shlibpath_overrides_runpath16348 16349 # This implies no fast_install, which is unacceptable.16350 # Some rework will be needed to allow for fast_install16351 # before this can be enabled.16352 hardcode_into_libs=yes16353 16354 # Ideally, we could use ldconfig to report *all* directores which are16355 # searched for libraries, however this is still not possible. Aside from not16356 # being certain /sbin/ldconfig is available, command16357 # 'ldconfig -N -X -v | grep ^/' on 64bit Fedora does not report /usr/lib64,16358 # even though it is searched at run-time. Try to do the best guess by16359 # appending ld.so.conf contents (and includes) to the search path.16360 if test -f /etc/ld.so.conf; then16361 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' ' '`16362 sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"16363 fi16364 16365 # We used to test for /lib/ld.so.1 and disable shared libraries on16366 # powerpc, because MkLinux only supported shared libraries with the16367 # GNU dynamic linker. Since this was broken with cross compilers,16368 # most powerpc-linux boxes support dynamic linking these days and16369 # people can always --disable-shared, the test was removed, and we16370 # assume the GNU/Linux dynamic linker is in use.16371 dynamic_linker='GNU/Linux ld.so'16372 ;;16373 16374 netbsdelf*-gnu)16375 version_type=linux16376 need_lib_prefix=no16377 need_version=no16378 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'16379 soname_spec='${libname}${release}${shared_ext}$major'16380 shlibpath_var=LD_LIBRARY_PATH16381 shlibpath_overrides_runpath=no16382 hardcode_into_libs=yes16383 dynamic_linker='NetBSD ld.elf_so'16384 ;;16385 16386 netbsd*)16387 version_type=sunos16388 need_lib_prefix=no16389 need_version=no16390 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then16391 library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'16392 finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'16393 dynamic_linker='NetBSD (a.out) ld.so'16394 else16395 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'16396 soname_spec='$libname$release$shared_ext$major'16397 dynamic_linker='NetBSD ld.elf_so'16398 fi16399 shlibpath_var=LD_LIBRARY_PATH16400 shlibpath_overrides_runpath=yes16401 hardcode_into_libs=yes16402 ;;16403 16404 newsos6)16405 version_type=linux # correct to gnu/linux during the next big refactor16406 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'16407 shlibpath_var=LD_LIBRARY_PATH16408 shlibpath_overrides_runpath=yes16409 ;;16410 16411 *nto* | *qnx*)16412 version_type=qnx16413 need_lib_prefix=no16414 need_version=no16415 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'16416 soname_spec='$libname$release$shared_ext$major'16417 shlibpath_var=LD_LIBRARY_PATH16418 shlibpath_overrides_runpath=no16419 hardcode_into_libs=yes16420 dynamic_linker='ldqnx.so'16421 ;;16422 16423 openbsd* | bitrig*)16424 version_type=sunos16425 sys_lib_dlsearch_path_spec=/usr/lib16426 need_lib_prefix=no16427 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then16428 need_version=no16429 else16430 need_version=yes16431 fi16432 library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'16433 finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'16434 shlibpath_var=LD_LIBRARY_PATH16435 shlibpath_overrides_runpath=yes16436 ;;16437 16438 os2*)16439 libname_spec='$name'16440 version_type=windows16441 shrext_cmds=.dll16442 need_version=no16443 need_lib_prefix=no16444 # OS/2 can only load a DLL with a base name of 8 characters or less.16445 soname_spec='`test -n "$os2dllname" && libname="$os2dllname";16446 v=$($ECHO $release$versuffix | tr -d .-);16447 n=$($ECHO $libname | cut -b -$((8 - ${#v})) | tr . _);16448 $ECHO $n$v`$shared_ext'16449 library_names_spec='${libname}_dll.$libext'16450 dynamic_linker='OS/2 ld.exe'16451 shlibpath_var=BEGINLIBPATH16452 sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"16453 sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec16454 postinstall_cmds='base_file=`basename \$file`~16455 dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; $ECHO \$dlname'\''`~16456 dldir=$destdir/`dirname \$dlpath`~16457 test -d \$dldir || mkdir -p \$dldir~16458 $install_prog $dir/$dlname \$dldir/$dlname~16459 chmod a+x \$dldir/$dlname~16460 if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then16461 eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;16462 fi'16463 postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; $ECHO \$dlname'\''`~16464 dlpath=$dir/\$dldll~16465 $RM \$dlpath'16466 ;;16467 16468 osf3* | osf4* | osf5*)16469 version_type=osf16470 need_lib_prefix=no16471 need_version=no16472 soname_spec='$libname$release$shared_ext$major'16473 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'16474 shlibpath_var=LD_LIBRARY_PATH16475 sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"16476 sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec16477 ;;16478 16479 rdos*)16480 dynamic_linker=no16481 ;;16482 16483 solaris*)16484 version_type=linux # correct to gnu/linux during the next big refactor16485 need_lib_prefix=no16486 need_version=no16487 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'16488 soname_spec='$libname$release$shared_ext$major'16489 shlibpath_var=LD_LIBRARY_PATH16490 shlibpath_overrides_runpath=yes16491 hardcode_into_libs=yes16492 # ldd complains unless libraries are executable16493 postinstall_cmds='chmod +x $lib'16494 ;;16495 16496 sunos4*)16497 version_type=sunos16498 library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'16499 finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'16500 shlibpath_var=LD_LIBRARY_PATH16501 shlibpath_overrides_runpath=yes16502 if test yes = "$with_gnu_ld"; then16503 need_lib_prefix=no16504 fi16505 need_version=yes16506 ;;16507 16508 sysv4 | sysv4.3*)16509 version_type=linux # correct to gnu/linux during the next big refactor16510 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'16511 soname_spec='$libname$release$shared_ext$major'16512 shlibpath_var=LD_LIBRARY_PATH16513 case $host_vendor in16514 sni)16515 shlibpath_overrides_runpath=no16516 need_lib_prefix=no16517 runpath_var=LD_RUN_PATH16518 ;;16519 siemens)16520 need_lib_prefix=no16521 ;;16522 motorola)16523 need_lib_prefix=no16524 need_version=no16525 shlibpath_overrides_runpath=no16526 sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'16527 ;;16528 esac16529 ;;16530 16531 sysv4*MP*)16532 if test -d /usr/nec; then16533 version_type=linux # correct to gnu/linux during the next big refactor16534 library_names_spec='$libname$shared_ext.$versuffix $libname$shared_ext.$major $libname$shared_ext'16535 soname_spec='$libname$shared_ext.$major'16536 shlibpath_var=LD_LIBRARY_PATH16537 fi16538 ;;16539 16540 sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)16541 version_type=sco16542 need_lib_prefix=no16543 need_version=no16544 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext $libname$shared_ext'16545 soname_spec='$libname$release$shared_ext$major'16546 shlibpath_var=LD_LIBRARY_PATH16547 shlibpath_overrides_runpath=yes16548 hardcode_into_libs=yes16549 if test yes = "$with_gnu_ld"; then16550 sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib'16551 else16552 sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'16553 case $host_os in16554 sco3.2v5*)16555 sys_lib_search_path_spec="$sys_lib_search_path_spec /lib"16556 ;;16557 esac16558 fi16559 sys_lib_dlsearch_path_spec='/usr/lib'16560 ;;16561 16562 tpf*)16563 # TPF is a cross-target only. Preferred cross-host = GNU/Linux.16564 version_type=linux # correct to gnu/linux during the next big refactor16565 need_lib_prefix=no16566 need_version=no16567 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'16568 shlibpath_var=LD_LIBRARY_PATH16569 shlibpath_overrides_runpath=no16570 hardcode_into_libs=yes16571 ;;16572 16573 uts4*)16574 version_type=linux # correct to gnu/linux during the next big refactor16575 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'16576 soname_spec='$libname$release$shared_ext$major'16577 shlibpath_var=LD_LIBRARY_PATH16578 ;;16579 16580 *)16581 dynamic_linker=no16582 ;;16583 esac16584 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $dynamic_linker" >&516585 $as_echo "$dynamic_linker" >&6; }16586 test no = "$dynamic_linker" && can_build_shared=no16587 16588 variables_saved_for_relink="PATH $shlibpath_var $runpath_var"16589 if test yes = "$GCC"; then16590 variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"16591 fi16592 16593 if test set = "${lt_cv_sys_lib_search_path_spec+set}"; then16594 sys_lib_search_path_spec=$lt_cv_sys_lib_search_path_spec16595 fi16596 16597 if test set = "${lt_cv_sys_lib_dlsearch_path_spec+set}"; then16598 sys_lib_dlsearch_path_spec=$lt_cv_sys_lib_dlsearch_path_spec16599 fi16600 16601 # remember unaugmented sys_lib_dlsearch_path content for libtool script decls...16602 configure_time_dlsearch_path=$sys_lib_dlsearch_path_spec16603 16604 # ... but it needs LT_SYS_LIBRARY_PATH munging for other configure-time code16605 func_munge_path_list sys_lib_dlsearch_path_spec "$LT_SYS_LIBRARY_PATH"16606 16607 # to be used as default LT_SYS_LIBRARY_PATH value in generated libtool16608 configure_time_lt_sys_library_path=$LT_SYS_LIBRARY_PATH16609 16610 16611 16612 16613 16614 16615 16616 16617 16618 16619 16620 16621 16622 16623 16624 16625 16626 16627 16628 16629 16630 16631 16632 16633 16634 16635 16636 16637 16638 16639 16640 16641 16642 16643 16644 16645 16646 16647 16648 16649 { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to hardcode library paths into programs" >&516650 $as_echo_n "checking how to hardcode library paths into programs... " >&6; }16651 hardcode_action_CXX=16652 if test -n "$hardcode_libdir_flag_spec_CXX" ||16653 test -n "$runpath_var_CXX" ||16654 test yes = "$hardcode_automatic_CXX"; then16655 16656 # We can hardcode non-existent directories.16657 if test no != "$hardcode_direct_CXX" &&16658 # If the only mechanism to avoid hardcoding is shlibpath_var, we16659 # have to relink, otherwise we might link with an installed library16660 # when we should be linking with a yet-to-be-installed one16661 ## test no != "$_LT_TAGVAR(hardcode_shlibpath_var, CXX)" &&16662 test no != "$hardcode_minus_L_CXX"; then16663 # Linking always hardcodes the temporary library directory.16664 hardcode_action_CXX=relink16665 else16666 # We can link without hardcoding, and we can hardcode nonexisting dirs.16667 hardcode_action_CXX=immediate16668 fi16669 else16670 # We cannot hardcode anything, or else we can only hardcode existing16671 # directories.16672 hardcode_action_CXX=unsupported16673 fi16674 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $hardcode_action_CXX" >&516675 $as_echo "$hardcode_action_CXX" >&6; }16676 16677 if test relink = "$hardcode_action_CXX" ||16678 test yes = "$inherit_rpath_CXX"; then16679 # Fast installation is not supported16680 enable_fast_install=no16681 elif test yes = "$shlibpath_overrides_runpath" ||16682 test no = "$enable_shared"; then16683 # Fast installation is not necessary16684 enable_fast_install=needless16685 fi16686 16687 16688 16689 16690 16691 16692 16693 fi # test -n "$compiler"16694 16695 CC=$lt_save_CC16696 CFLAGS=$lt_save_CFLAGS16697 LDCXX=$LD16698 LD=$lt_save_LD16699 GCC=$lt_save_GCC16700 with_gnu_ld=$lt_save_with_gnu_ld16701 lt_cv_path_LDCXX=$lt_cv_path_LD16702 lt_cv_path_LD=$lt_save_path_LD16703 lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld16704 lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld16705 fi # test yes != "$_lt_caught_CXX_error"16706 16707 ac_ext=c16708 ac_cpp='$CPP $CPPFLAGS'16709 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'16710 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'16711 ac_compiler_gnu=$ac_cv_c_compiler_gnu16712 16713 16714 16715 16716 16717 16718 16719 16720 16721 16722 16723 16724 16725 16726 16727 ac_config_commands="$ac_config_commands libtool"16728 16729 16730 16731 16732 # Only expand once:16733 16734 16735 16736 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&516737 $as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; }16738 set x ${MAKE-make}16739 ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'`16740 if eval \${ac_cv_prog_make_${ac_make}_set+:} false; then :16741 $as_echo_n "(cached) " >&616742 else16743 cat >conftest.make <<\_ACEOF16744 SHELL = /bin/sh16745 all:16746 @echo '@@@%%%=$(MAKE)=@@@%%%'16747 _ACEOF16748 # GNU make sometimes prints "make[1]: Entering ...", which would confuse us.16749 case `${MAKE-make} -f conftest.make 2>/dev/null` in16750 *@@@%%%=?*=@@@%%%*)16751 eval ac_cv_prog_make_${ac_make}_set=yes;;16752 *)16753 eval ac_cv_prog_make_${ac_make}_set=no;;16754 esac16755 rm -f conftest.make16756 fi16757 if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then16758 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&516759 $as_echo "yes" >&6; }16760 SET_MAKE=16761 else16762 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&516763 $as_echo "no" >&6; }16764 SET_MAKE="MAKE=${MAKE-make}"16765 fi16766 16767 16768 # Checks for libraries.16769 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for Fibre::yield in -lfibre" >&516770 $as_echo_n "checking for Fibre::yield in -lfibre... " >&6; }16771 if ${ac_cv_lib_fibre_Fibre__yield+:} false; then :16772 $as_echo_n "(cached) " >&616773 else16774 ac_check_lib_save_LIBS=$LIBS16775 LIBS="-lfibre $LIBS"16776 cat confdefs.h - <<_ACEOF >conftest.$ac_ext16777 /* end confdefs.h. */16778 16779 /* Override any GCC internal prototype to avoid an error.16780 Use char because int might match the return type of a GCC16781 builtin and then its argument prototype would still apply. */16782 #ifdef __cplusplus16783 extern "C"16784 #endif16785 char Fibre::yield ();16786 int16787 main ()16788 {16789 return Fibre::yield ();16790 ;16791 return 0;16792 }16793 _ACEOF16794 if ac_fn_c_try_link "$LINENO"; then :16795 ac_cv_lib_fibre_Fibre__yield=yes16796 else16797 ac_cv_lib_fibre_Fibre__yield=no16798 fi16799 rm -f core conftest.err conftest.$ac_objext \16800 conftest$ac_exeext conftest.$ac_ext16801 LIBS=$ac_check_lib_save_LIBS16802 fi16803 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_fibre_Fibre__yield" >&516804 $as_echo "$ac_cv_lib_fibre_Fibre__yield" >&6; }16805 if test "x$ac_cv_lib_fibre_Fibre__yield" = xyes; then :16806 HAVE_LIBFIBRE=116807 else16808 HAVE_LIBFIBRE=016809 fi16810 16811 if test "$HAVE_LIBFIBRE" -eq 1; then16812 WITH_LIBFIBRE_TRUE=16813 WITH_LIBFIBRE_FALSE='#'16814 else16815 WITH_LIBFIBRE_TRUE='#'16816 WITH_LIBFIBRE_FALSE=16817 fi16818 16819 16820 # Checks for header files.16821 5892 ac_fn_c_check_type "$LINENO" "size_t" "ac_cv_type_size_t" "$ac_includes_default" 16822 5893 if test "x$ac_cv_type_size_t" = xyes; then : … … 17309 6380 fi 17310 6381 done 17311 17312 17313 #==============================================================================17314 # backend compiler implementation17315 17316 cat >>confdefs.h <<_ACEOF17317 #define CFA_BACKEND_CC "${CC}"17318 _ACEOF17319 17320 6382 17321 6383 … … 18062 7124 AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir" 18063 7125 18064 18065 # The HP-UX ksh and POSIX shell print the target directory to stdout18066 # if CDPATH is set.18067 (unset CDPATH) >/dev/null 2>&1 && unset CDPATH18068 18069 sed_quote_subst='$sed_quote_subst'18070 double_quote_subst='$double_quote_subst'18071 delay_variable_subst='$delay_variable_subst'18072 macro_version='`$ECHO "$macro_version" | $SED "$delay_single_quote_subst"`'18073 macro_revision='`$ECHO "$macro_revision" | $SED "$delay_single_quote_subst"`'18074 enable_shared='`$ECHO "$enable_shared" | $SED "$delay_single_quote_subst"`'18075 enable_static='`$ECHO "$enable_static" | $SED "$delay_single_quote_subst"`'18076 pic_mode='`$ECHO "$pic_mode" | $SED "$delay_single_quote_subst"`'18077 enable_fast_install='`$ECHO "$enable_fast_install" | $SED "$delay_single_quote_subst"`'18078 shared_archive_member_spec='`$ECHO "$shared_archive_member_spec" | $SED "$delay_single_quote_subst"`'18079 SHELL='`$ECHO "$SHELL" | $SED "$delay_single_quote_subst"`'18080 ECHO='`$ECHO "$ECHO" | $SED "$delay_single_quote_subst"`'18081 PATH_SEPARATOR='`$ECHO "$PATH_SEPARATOR" | $SED "$delay_single_quote_subst"`'18082 host_alias='`$ECHO "$host_alias" | $SED "$delay_single_quote_subst"`'18083 host='`$ECHO "$host" | $SED "$delay_single_quote_subst"`'18084 host_os='`$ECHO "$host_os" | $SED "$delay_single_quote_subst"`'18085 build_alias='`$ECHO "$build_alias" | $SED "$delay_single_quote_subst"`'18086 build='`$ECHO "$build" | $SED "$delay_single_quote_subst"`'18087 build_os='`$ECHO "$build_os" | $SED "$delay_single_quote_subst"`'18088 SED='`$ECHO "$SED" | $SED "$delay_single_quote_subst"`'18089 Xsed='`$ECHO "$Xsed" | $SED "$delay_single_quote_subst"`'18090 GREP='`$ECHO "$GREP" | $SED "$delay_single_quote_subst"`'18091 EGREP='`$ECHO "$EGREP" | $SED "$delay_single_quote_subst"`'18092 FGREP='`$ECHO "$FGREP" | $SED "$delay_single_quote_subst"`'18093 LD='`$ECHO "$LD" | $SED "$delay_single_quote_subst"`'18094 NM='`$ECHO "$NM" | $SED "$delay_single_quote_subst"`'18095 LN_S='`$ECHO "$LN_S" | $SED "$delay_single_quote_subst"`'18096 max_cmd_len='`$ECHO "$max_cmd_len" | $SED "$delay_single_quote_subst"`'18097 ac_objext='`$ECHO "$ac_objext" | $SED "$delay_single_quote_subst"`'18098 exeext='`$ECHO "$exeext" | $SED "$delay_single_quote_subst"`'18099 lt_unset='`$ECHO "$lt_unset" | $SED "$delay_single_quote_subst"`'18100 lt_SP2NL='`$ECHO "$lt_SP2NL" | $SED "$delay_single_quote_subst"`'18101 lt_NL2SP='`$ECHO "$lt_NL2SP" | $SED "$delay_single_quote_subst"`'18102 lt_cv_to_host_file_cmd='`$ECHO "$lt_cv_to_host_file_cmd" | $SED "$delay_single_quote_subst"`'18103 lt_cv_to_tool_file_cmd='`$ECHO "$lt_cv_to_tool_file_cmd" | $SED "$delay_single_quote_subst"`'18104 reload_flag='`$ECHO "$reload_flag" | $SED "$delay_single_quote_subst"`'18105 reload_cmds='`$ECHO "$reload_cmds" | $SED "$delay_single_quote_subst"`'18106 OBJDUMP='`$ECHO "$OBJDUMP" | $SED "$delay_single_quote_subst"`'18107 deplibs_check_method='`$ECHO "$deplibs_check_method" | $SED "$delay_single_quote_subst"`'18108 file_magic_cmd='`$ECHO "$file_magic_cmd" | $SED "$delay_single_quote_subst"`'18109 file_magic_glob='`$ECHO "$file_magic_glob" | $SED "$delay_single_quote_subst"`'18110 want_nocaseglob='`$ECHO "$want_nocaseglob" | $SED "$delay_single_quote_subst"`'18111 DLLTOOL='`$ECHO "$DLLTOOL" | $SED "$delay_single_quote_subst"`'18112 sharedlib_from_linklib_cmd='`$ECHO "$sharedlib_from_linklib_cmd" | $SED "$delay_single_quote_subst"`'18113 AR='`$ECHO "$AR" | $SED "$delay_single_quote_subst"`'18114 AR_FLAGS='`$ECHO "$AR_FLAGS" | $SED "$delay_single_quote_subst"`'18115 archiver_list_spec='`$ECHO "$archiver_list_spec" | $SED "$delay_single_quote_subst"`'18116 STRIP='`$ECHO "$STRIP" | $SED "$delay_single_quote_subst"`'18117 RANLIB='`$ECHO "$RANLIB" | $SED "$delay_single_quote_subst"`'18118 old_postinstall_cmds='`$ECHO "$old_postinstall_cmds" | $SED "$delay_single_quote_subst"`'18119 old_postuninstall_cmds='`$ECHO "$old_postuninstall_cmds" | $SED "$delay_single_quote_subst"`'18120 old_archive_cmds='`$ECHO "$old_archive_cmds" | $SED "$delay_single_quote_subst"`'18121 lock_old_archive_extraction='`$ECHO "$lock_old_archive_extraction" | $SED "$delay_single_quote_subst"`'18122 CC='`$ECHO "$CC" | $SED "$delay_single_quote_subst"`'18123 CFLAGS='`$ECHO "$CFLAGS" | $SED "$delay_single_quote_subst"`'18124 compiler='`$ECHO "$compiler" | $SED "$delay_single_quote_subst"`'18125 GCC='`$ECHO "$GCC" | $SED "$delay_single_quote_subst"`'18126 lt_cv_sys_global_symbol_pipe='`$ECHO "$lt_cv_sys_global_symbol_pipe" | $SED "$delay_single_quote_subst"`'18127 lt_cv_sys_global_symbol_to_cdecl='`$ECHO "$lt_cv_sys_global_symbol_to_cdecl" | $SED "$delay_single_quote_subst"`'18128 lt_cv_sys_global_symbol_to_import='`$ECHO "$lt_cv_sys_global_symbol_to_import" | $SED "$delay_single_quote_subst"`'18129 lt_cv_sys_global_symbol_to_c_name_address='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address" | $SED "$delay_single_quote_subst"`'18130 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"`'18131 lt_cv_nm_interface='`$ECHO "$lt_cv_nm_interface" | $SED "$delay_single_quote_subst"`'18132 nm_file_list_spec='`$ECHO "$nm_file_list_spec" | $SED "$delay_single_quote_subst"`'18133 lt_sysroot='`$ECHO "$lt_sysroot" | $SED "$delay_single_quote_subst"`'18134 lt_cv_truncate_bin='`$ECHO "$lt_cv_truncate_bin" | $SED "$delay_single_quote_subst"`'18135 objdir='`$ECHO "$objdir" | $SED "$delay_single_quote_subst"`'18136 MAGIC_CMD='`$ECHO "$MAGIC_CMD" | $SED "$delay_single_quote_subst"`'18137 lt_prog_compiler_no_builtin_flag='`$ECHO "$lt_prog_compiler_no_builtin_flag" | $SED "$delay_single_quote_subst"`'18138 lt_prog_compiler_pic='`$ECHO "$lt_prog_compiler_pic" | $SED "$delay_single_quote_subst"`'18139 lt_prog_compiler_wl='`$ECHO "$lt_prog_compiler_wl" | $SED "$delay_single_quote_subst"`'18140 lt_prog_compiler_static='`$ECHO "$lt_prog_compiler_static" | $SED "$delay_single_quote_subst"`'18141 lt_cv_prog_compiler_c_o='`$ECHO "$lt_cv_prog_compiler_c_o" | $SED "$delay_single_quote_subst"`'18142 need_locks='`$ECHO "$need_locks" | $SED "$delay_single_quote_subst"`'18143 MANIFEST_TOOL='`$ECHO "$MANIFEST_TOOL" | $SED "$delay_single_quote_subst"`'18144 DSYMUTIL='`$ECHO "$DSYMUTIL" | $SED "$delay_single_quote_subst"`'18145 NMEDIT='`$ECHO "$NMEDIT" | $SED "$delay_single_quote_subst"`'18146 LIPO='`$ECHO "$LIPO" | $SED "$delay_single_quote_subst"`'18147 OTOOL='`$ECHO "$OTOOL" | $SED "$delay_single_quote_subst"`'18148 OTOOL64='`$ECHO "$OTOOL64" | $SED "$delay_single_quote_subst"`'18149 libext='`$ECHO "$libext" | $SED "$delay_single_quote_subst"`'18150 shrext_cmds='`$ECHO "$shrext_cmds" | $SED "$delay_single_quote_subst"`'18151 extract_expsyms_cmds='`$ECHO "$extract_expsyms_cmds" | $SED "$delay_single_quote_subst"`'18152 archive_cmds_need_lc='`$ECHO "$archive_cmds_need_lc" | $SED "$delay_single_quote_subst"`'18153 enable_shared_with_static_runtimes='`$ECHO "$enable_shared_with_static_runtimes" | $SED "$delay_single_quote_subst"`'18154 export_dynamic_flag_spec='`$ECHO "$export_dynamic_flag_spec" | $SED "$delay_single_quote_subst"`'18155 whole_archive_flag_spec='`$ECHO "$whole_archive_flag_spec" | $SED "$delay_single_quote_subst"`'18156 compiler_needs_object='`$ECHO "$compiler_needs_object" | $SED "$delay_single_quote_subst"`'18157 old_archive_from_new_cmds='`$ECHO "$old_archive_from_new_cmds" | $SED "$delay_single_quote_subst"`'18158 old_archive_from_expsyms_cmds='`$ECHO "$old_archive_from_expsyms_cmds" | $SED "$delay_single_quote_subst"`'18159 archive_cmds='`$ECHO "$archive_cmds" | $SED "$delay_single_quote_subst"`'18160 archive_expsym_cmds='`$ECHO "$archive_expsym_cmds" | $SED "$delay_single_quote_subst"`'18161 module_cmds='`$ECHO "$module_cmds" | $SED "$delay_single_quote_subst"`'18162 module_expsym_cmds='`$ECHO "$module_expsym_cmds" | $SED "$delay_single_quote_subst"`'18163 with_gnu_ld='`$ECHO "$with_gnu_ld" | $SED "$delay_single_quote_subst"`'18164 allow_undefined_flag='`$ECHO "$allow_undefined_flag" | $SED "$delay_single_quote_subst"`'18165 no_undefined_flag='`$ECHO "$no_undefined_flag" | $SED "$delay_single_quote_subst"`'18166 hardcode_libdir_flag_spec='`$ECHO "$hardcode_libdir_flag_spec" | $SED "$delay_single_quote_subst"`'18167 hardcode_libdir_separator='`$ECHO "$hardcode_libdir_separator" | $SED "$delay_single_quote_subst"`'18168 hardcode_direct='`$ECHO "$hardcode_direct" | $SED "$delay_single_quote_subst"`'18169 hardcode_direct_absolute='`$ECHO "$hardcode_direct_absolute" | $SED "$delay_single_quote_subst"`'18170 hardcode_minus_L='`$ECHO "$hardcode_minus_L" | $SED "$delay_single_quote_subst"`'18171 hardcode_shlibpath_var='`$ECHO "$hardcode_shlibpath_var" | $SED "$delay_single_quote_subst"`'18172 hardcode_automatic='`$ECHO "$hardcode_automatic" | $SED "$delay_single_quote_subst"`'18173 inherit_rpath='`$ECHO "$inherit_rpath" | $SED "$delay_single_quote_subst"`'18174 link_all_deplibs='`$ECHO "$link_all_deplibs" | $SED "$delay_single_quote_subst"`'18175 always_export_symbols='`$ECHO "$always_export_symbols" | $SED "$delay_single_quote_subst"`'18176 export_symbols_cmds='`$ECHO "$export_symbols_cmds" | $SED "$delay_single_quote_subst"`'18177 exclude_expsyms='`$ECHO "$exclude_expsyms" | $SED "$delay_single_quote_subst"`'18178 include_expsyms='`$ECHO "$include_expsyms" | $SED "$delay_single_quote_subst"`'18179 prelink_cmds='`$ECHO "$prelink_cmds" | $SED "$delay_single_quote_subst"`'18180 postlink_cmds='`$ECHO "$postlink_cmds" | $SED "$delay_single_quote_subst"`'18181 file_list_spec='`$ECHO "$file_list_spec" | $SED "$delay_single_quote_subst"`'18182 variables_saved_for_relink='`$ECHO "$variables_saved_for_relink" | $SED "$delay_single_quote_subst"`'18183 need_lib_prefix='`$ECHO "$need_lib_prefix" | $SED "$delay_single_quote_subst"`'18184 need_version='`$ECHO "$need_version" | $SED "$delay_single_quote_subst"`'18185 version_type='`$ECHO "$version_type" | $SED "$delay_single_quote_subst"`'18186 runpath_var='`$ECHO "$runpath_var" | $SED "$delay_single_quote_subst"`'18187 shlibpath_var='`$ECHO "$shlibpath_var" | $SED "$delay_single_quote_subst"`'18188 shlibpath_overrides_runpath='`$ECHO "$shlibpath_overrides_runpath" | $SED "$delay_single_quote_subst"`'18189 libname_spec='`$ECHO "$libname_spec" | $SED "$delay_single_quote_subst"`'18190 library_names_spec='`$ECHO "$library_names_spec" | $SED "$delay_single_quote_subst"`'18191 soname_spec='`$ECHO "$soname_spec" | $SED "$delay_single_quote_subst"`'18192 install_override_mode='`$ECHO "$install_override_mode" | $SED "$delay_single_quote_subst"`'18193 postinstall_cmds='`$ECHO "$postinstall_cmds" | $SED "$delay_single_quote_subst"`'18194 postuninstall_cmds='`$ECHO "$postuninstall_cmds" | $SED "$delay_single_quote_subst"`'18195 finish_cmds='`$ECHO "$finish_cmds" | $SED "$delay_single_quote_subst"`'18196 finish_eval='`$ECHO "$finish_eval" | $SED "$delay_single_quote_subst"`'18197 hardcode_into_libs='`$ECHO "$hardcode_into_libs" | $SED "$delay_single_quote_subst"`'18198 sys_lib_search_path_spec='`$ECHO "$sys_lib_search_path_spec" | $SED "$delay_single_quote_subst"`'18199 configure_time_dlsearch_path='`$ECHO "$configure_time_dlsearch_path" | $SED "$delay_single_quote_subst"`'18200 configure_time_lt_sys_library_path='`$ECHO "$configure_time_lt_sys_library_path" | $SED "$delay_single_quote_subst"`'18201 hardcode_action='`$ECHO "$hardcode_action" | $SED "$delay_single_quote_subst"`'18202 enable_dlopen='`$ECHO "$enable_dlopen" | $SED "$delay_single_quote_subst"`'18203 enable_dlopen_self='`$ECHO "$enable_dlopen_self" | $SED "$delay_single_quote_subst"`'18204 enable_dlopen_self_static='`$ECHO "$enable_dlopen_self_static" | $SED "$delay_single_quote_subst"`'18205 old_striplib='`$ECHO "$old_striplib" | $SED "$delay_single_quote_subst"`'18206 striplib='`$ECHO "$striplib" | $SED "$delay_single_quote_subst"`'18207 compiler_lib_search_dirs='`$ECHO "$compiler_lib_search_dirs" | $SED "$delay_single_quote_subst"`'18208 predep_objects='`$ECHO "$predep_objects" | $SED "$delay_single_quote_subst"`'18209 postdep_objects='`$ECHO "$postdep_objects" | $SED "$delay_single_quote_subst"`'18210 predeps='`$ECHO "$predeps" | $SED "$delay_single_quote_subst"`'18211 postdeps='`$ECHO "$postdeps" | $SED "$delay_single_quote_subst"`'18212 compiler_lib_search_path='`$ECHO "$compiler_lib_search_path" | $SED "$delay_single_quote_subst"`'18213 LD_CXX='`$ECHO "$LD_CXX" | $SED "$delay_single_quote_subst"`'18214 reload_flag_CXX='`$ECHO "$reload_flag_CXX" | $SED "$delay_single_quote_subst"`'18215 reload_cmds_CXX='`$ECHO "$reload_cmds_CXX" | $SED "$delay_single_quote_subst"`'18216 old_archive_cmds_CXX='`$ECHO "$old_archive_cmds_CXX" | $SED "$delay_single_quote_subst"`'18217 compiler_CXX='`$ECHO "$compiler_CXX" | $SED "$delay_single_quote_subst"`'18218 GCC_CXX='`$ECHO "$GCC_CXX" | $SED "$delay_single_quote_subst"`'18219 lt_prog_compiler_no_builtin_flag_CXX='`$ECHO "$lt_prog_compiler_no_builtin_flag_CXX" | $SED "$delay_single_quote_subst"`'18220 lt_prog_compiler_pic_CXX='`$ECHO "$lt_prog_compiler_pic_CXX" | $SED "$delay_single_quote_subst"`'18221 lt_prog_compiler_wl_CXX='`$ECHO "$lt_prog_compiler_wl_CXX" | $SED "$delay_single_quote_subst"`'18222 lt_prog_compiler_static_CXX='`$ECHO "$lt_prog_compiler_static_CXX" | $SED "$delay_single_quote_subst"`'18223 lt_cv_prog_compiler_c_o_CXX='`$ECHO "$lt_cv_prog_compiler_c_o_CXX" | $SED "$delay_single_quote_subst"`'18224 archive_cmds_need_lc_CXX='`$ECHO "$archive_cmds_need_lc_CXX" | $SED "$delay_single_quote_subst"`'18225 enable_shared_with_static_runtimes_CXX='`$ECHO "$enable_shared_with_static_runtimes_CXX" | $SED "$delay_single_quote_subst"`'18226 export_dynamic_flag_spec_CXX='`$ECHO "$export_dynamic_flag_spec_CXX" | $SED "$delay_single_quote_subst"`'18227 whole_archive_flag_spec_CXX='`$ECHO "$whole_archive_flag_spec_CXX" | $SED "$delay_single_quote_subst"`'18228 compiler_needs_object_CXX='`$ECHO "$compiler_needs_object_CXX" | $SED "$delay_single_quote_subst"`'18229 old_archive_from_new_cmds_CXX='`$ECHO "$old_archive_from_new_cmds_CXX" | $SED "$delay_single_quote_subst"`'18230 old_archive_from_expsyms_cmds_CXX='`$ECHO "$old_archive_from_expsyms_cmds_CXX" | $SED "$delay_single_quote_subst"`'18231 archive_cmds_CXX='`$ECHO "$archive_cmds_CXX" | $SED "$delay_single_quote_subst"`'18232 archive_expsym_cmds_CXX='`$ECHO "$archive_expsym_cmds_CXX" | $SED "$delay_single_quote_subst"`'18233 module_cmds_CXX='`$ECHO "$module_cmds_CXX" | $SED "$delay_single_quote_subst"`'18234 module_expsym_cmds_CXX='`$ECHO "$module_expsym_cmds_CXX" | $SED "$delay_single_quote_subst"`'18235 with_gnu_ld_CXX='`$ECHO "$with_gnu_ld_CXX" | $SED "$delay_single_quote_subst"`'18236 allow_undefined_flag_CXX='`$ECHO "$allow_undefined_flag_CXX" | $SED "$delay_single_quote_subst"`'18237 no_undefined_flag_CXX='`$ECHO "$no_undefined_flag_CXX" | $SED "$delay_single_quote_subst"`'18238 hardcode_libdir_flag_spec_CXX='`$ECHO "$hardcode_libdir_flag_spec_CXX" | $SED "$delay_single_quote_subst"`'18239 hardcode_libdir_separator_CXX='`$ECHO "$hardcode_libdir_separator_CXX" | $SED "$delay_single_quote_subst"`'18240 hardcode_direct_CXX='`$ECHO "$hardcode_direct_CXX" | $SED "$delay_single_quote_subst"`'18241 hardcode_direct_absolute_CXX='`$ECHO "$hardcode_direct_absolute_CXX" | $SED "$delay_single_quote_subst"`'18242 hardcode_minus_L_CXX='`$ECHO "$hardcode_minus_L_CXX" | $SED "$delay_single_quote_subst"`'18243 hardcode_shlibpath_var_CXX='`$ECHO "$hardcode_shlibpath_var_CXX" | $SED "$delay_single_quote_subst"`'18244 hardcode_automatic_CXX='`$ECHO "$hardcode_automatic_CXX" | $SED "$delay_single_quote_subst"`'18245 inherit_rpath_CXX='`$ECHO "$inherit_rpath_CXX" | $SED "$delay_single_quote_subst"`'18246 link_all_deplibs_CXX='`$ECHO "$link_all_deplibs_CXX" | $SED "$delay_single_quote_subst"`'18247 always_export_symbols_CXX='`$ECHO "$always_export_symbols_CXX" | $SED "$delay_single_quote_subst"`'18248 export_symbols_cmds_CXX='`$ECHO "$export_symbols_cmds_CXX" | $SED "$delay_single_quote_subst"`'18249 exclude_expsyms_CXX='`$ECHO "$exclude_expsyms_CXX" | $SED "$delay_single_quote_subst"`'18250 include_expsyms_CXX='`$ECHO "$include_expsyms_CXX" | $SED "$delay_single_quote_subst"`'18251 prelink_cmds_CXX='`$ECHO "$prelink_cmds_CXX" | $SED "$delay_single_quote_subst"`'18252 postlink_cmds_CXX='`$ECHO "$postlink_cmds_CXX" | $SED "$delay_single_quote_subst"`'18253 file_list_spec_CXX='`$ECHO "$file_list_spec_CXX" | $SED "$delay_single_quote_subst"`'18254 hardcode_action_CXX='`$ECHO "$hardcode_action_CXX" | $SED "$delay_single_quote_subst"`'18255 compiler_lib_search_dirs_CXX='`$ECHO "$compiler_lib_search_dirs_CXX" | $SED "$delay_single_quote_subst"`'18256 predep_objects_CXX='`$ECHO "$predep_objects_CXX" | $SED "$delay_single_quote_subst"`'18257 postdep_objects_CXX='`$ECHO "$postdep_objects_CXX" | $SED "$delay_single_quote_subst"`'18258 predeps_CXX='`$ECHO "$predeps_CXX" | $SED "$delay_single_quote_subst"`'18259 postdeps_CXX='`$ECHO "$postdeps_CXX" | $SED "$delay_single_quote_subst"`'18260 compiler_lib_search_path_CXX='`$ECHO "$compiler_lib_search_path_CXX" | $SED "$delay_single_quote_subst"`'18261 18262 LTCC='$LTCC'18263 LTCFLAGS='$LTCFLAGS'18264 compiler='$compiler_DEFAULT'18265 18266 # A function that is used when there is no print builtin or printf.18267 func_fallback_echo ()18268 {18269 eval 'cat <<_LTECHO_EOF18270 \$118271 _LTECHO_EOF'18272 }18273 18274 # Quote evaled strings.18275 for var in SHELL \18276 ECHO \18277 PATH_SEPARATOR \18278 SED \18279 GREP \18280 EGREP \18281 FGREP \18282 LD \18283 NM \18284 LN_S \18285 lt_SP2NL \18286 lt_NL2SP \18287 reload_flag \18288 OBJDUMP \18289 deplibs_check_method \18290 file_magic_cmd \18291 file_magic_glob \18292 want_nocaseglob \18293 DLLTOOL \18294 sharedlib_from_linklib_cmd \18295 AR \18296 AR_FLAGS \18297 archiver_list_spec \18298 STRIP \18299 RANLIB \18300 CC \18301 CFLAGS \18302 compiler \18303 lt_cv_sys_global_symbol_pipe \18304 lt_cv_sys_global_symbol_to_cdecl \18305 lt_cv_sys_global_symbol_to_import \18306 lt_cv_sys_global_symbol_to_c_name_address \18307 lt_cv_sys_global_symbol_to_c_name_address_lib_prefix \18308 lt_cv_nm_interface \18309 nm_file_list_spec \18310 lt_cv_truncate_bin \18311 lt_prog_compiler_no_builtin_flag \18312 lt_prog_compiler_pic \18313 lt_prog_compiler_wl \18314 lt_prog_compiler_static \18315 lt_cv_prog_compiler_c_o \18316 need_locks \18317 MANIFEST_TOOL \18318 DSYMUTIL \18319 NMEDIT \18320 LIPO \18321 OTOOL \18322 OTOOL64 \18323 shrext_cmds \18324 export_dynamic_flag_spec \18325 whole_archive_flag_spec \18326 compiler_needs_object \18327 with_gnu_ld \18328 allow_undefined_flag \18329 no_undefined_flag \18330 hardcode_libdir_flag_spec \18331 hardcode_libdir_separator \18332 exclude_expsyms \18333 include_expsyms \18334 file_list_spec \18335 variables_saved_for_relink \18336 libname_spec \18337 library_names_spec \18338 soname_spec \18339 install_override_mode \18340 finish_eval \18341 old_striplib \18342 striplib \18343 compiler_lib_search_dirs \18344 predep_objects \18345 postdep_objects \18346 predeps \18347 postdeps \18348 compiler_lib_search_path \18349 LD_CXX \18350 reload_flag_CXX \18351 compiler_CXX \18352 lt_prog_compiler_no_builtin_flag_CXX \18353 lt_prog_compiler_pic_CXX \18354 lt_prog_compiler_wl_CXX \18355 lt_prog_compiler_static_CXX \18356 lt_cv_prog_compiler_c_o_CXX \18357 export_dynamic_flag_spec_CXX \18358 whole_archive_flag_spec_CXX \18359 compiler_needs_object_CXX \18360 with_gnu_ld_CXX \18361 allow_undefined_flag_CXX \18362 no_undefined_flag_CXX \18363 hardcode_libdir_flag_spec_CXX \18364 hardcode_libdir_separator_CXX \18365 exclude_expsyms_CXX \18366 include_expsyms_CXX \18367 file_list_spec_CXX \18368 compiler_lib_search_dirs_CXX \18369 predep_objects_CXX \18370 postdep_objects_CXX \18371 predeps_CXX \18372 postdeps_CXX \18373 compiler_lib_search_path_CXX; do18374 case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in18375 *[\\\\\\\`\\"\\\$]*)18376 eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED \\"\\\$sed_quote_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes18377 ;;18378 *)18379 eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""18380 ;;18381 esac18382 done18383 18384 # Double-quote double-evaled strings.18385 for var in reload_cmds \18386 old_postinstall_cmds \18387 old_postuninstall_cmds \18388 old_archive_cmds \18389 extract_expsyms_cmds \18390 old_archive_from_new_cmds \18391 old_archive_from_expsyms_cmds \18392 archive_cmds \18393 archive_expsym_cmds \18394 module_cmds \18395 module_expsym_cmds \18396 export_symbols_cmds \18397 prelink_cmds \18398 postlink_cmds \18399 postinstall_cmds \18400 postuninstall_cmds \18401 finish_cmds \18402 sys_lib_search_path_spec \18403 configure_time_dlsearch_path \18404 configure_time_lt_sys_library_path \18405 reload_cmds_CXX \18406 old_archive_cmds_CXX \18407 old_archive_from_new_cmds_CXX \18408 old_archive_from_expsyms_cmds_CXX \18409 archive_cmds_CXX \18410 archive_expsym_cmds_CXX \18411 module_cmds_CXX \18412 module_expsym_cmds_CXX \18413 export_symbols_cmds_CXX \18414 prelink_cmds_CXX \18415 postlink_cmds_CXX; do18416 case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in18417 *[\\\\\\\`\\"\\\$]*)18418 eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes18419 ;;18420 *)18421 eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""18422 ;;18423 esac18424 done18425 18426 ac_aux_dir='$ac_aux_dir'18427 18428 # See if we are running on zsh, and set the options that allow our18429 # commands through without removal of \ escapes INIT.18430 if test -n "\${ZSH_VERSION+set}"; then18431 setopt NO_GLOB_SUBST18432 fi18433 18434 18435 PACKAGE='$PACKAGE'18436 VERSION='$VERSION'18437 RM='$RM'18438 ofile='$ofile'18439 18440 18441 18442 18443 18444 18445 7126 _ACEOF 18446 7127 … … 18453 7134 "config.h") CONFIG_HEADERS="$CONFIG_HEADERS config.h:src/config.h.in" ;; 18454 7135 "depfiles") CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;; 18455 "libtool") CONFIG_COMMANDS="$CONFIG_COMMANDS libtool" ;;18456 7136 "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;; 18457 7137 "driver/Makefile") CONFIG_FILES="$CONFIG_FILES driver/Makefile" ;; … … 19184 7864 } 19185 7865 ;; 19186 "libtool":C)19187 19188 # See if we are running on zsh, and set the options that allow our19189 # commands through without removal of \ escapes.19190 if test -n "${ZSH_VERSION+set}"; then19191 setopt NO_GLOB_SUBST19192 fi19193 19194 cfgfile=${ofile}T19195 trap "$RM \"$cfgfile\"; exit 1" 1 2 1519196 $RM "$cfgfile"19197 19198 cat <<_LT_EOF >> "$cfgfile"19199 #! $SHELL19200 # Generated automatically by $as_me ($PACKAGE) $VERSION19201 # Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:19202 # NOTE: Changes made to this file will be lost: look at ltmain.sh.19203 19204 # Provide generalized library-building support services.19205 # Written by Gordon Matzigkeit, 199619206 19207 # Copyright (C) 2014 Free Software Foundation, Inc.19208 # This is free software; see the source for copying conditions. There is NO19209 # warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.19210 19211 # GNU Libtool is free software; you can redistribute it and/or modify19212 # it under the terms of the GNU General Public License as published by19213 # the Free Software Foundation; either version 2 of of the License, or19214 # (at your option) any later version.19215 #19216 # As a special exception to the GNU General Public License, if you19217 # distribute this file as part of a program or library that is built19218 # using GNU Libtool, you may include this file under the same19219 # distribution terms that you use for the rest of that program.19220 #19221 # GNU Libtool is distributed in the hope that it will be useful, but19222 # WITHOUT ANY WARRANTY; without even the implied warranty of19223 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the19224 # GNU General Public License for more details.19225 #19226 # You should have received a copy of the GNU General Public License19227 # along with this program. If not, see <http://www.gnu.org/licenses/>.19228 19229 19230 # The names of the tagged configurations supported by this script.19231 available_tags='CXX '19232 19233 # Configured defaults for sys_lib_dlsearch_path munging.19234 : \${LT_SYS_LIBRARY_PATH="$configure_time_lt_sys_library_path"}19235 19236 # ### BEGIN LIBTOOL CONFIG19237 19238 # Which release of libtool.m4 was used?19239 macro_version=$macro_version19240 macro_revision=$macro_revision19241 19242 # Whether or not to build shared libraries.19243 build_libtool_libs=$enable_shared19244 19245 # Whether or not to build static libraries.19246 build_old_libs=$enable_static19247 19248 # What type of objects to build.19249 pic_mode=$pic_mode19250 19251 # Whether or not to optimize for fast installation.19252 fast_install=$enable_fast_install19253 19254 # Shared archive member basename,for filename based shared library versioning on AIX.19255 shared_archive_member_spec=$shared_archive_member_spec19256 19257 # Shell to use when invoking shell scripts.19258 SHELL=$lt_SHELL19259 19260 # An echo program that protects backslashes.19261 ECHO=$lt_ECHO19262 19263 # The PATH separator for the build system.19264 PATH_SEPARATOR=$lt_PATH_SEPARATOR19265 19266 # The host system.19267 host_alias=$host_alias19268 host=$host19269 host_os=$host_os19270 19271 # The build system.19272 build_alias=$build_alias19273 build=$build19274 build_os=$build_os19275 19276 # A sed program that does not truncate output.19277 SED=$lt_SED19278 19279 # Sed that helps us avoid accidentally triggering echo(1) options like -n.19280 Xsed="\$SED -e 1s/^X//"19281 19282 # A grep program that handles long lines.19283 GREP=$lt_GREP19284 19285 # An ERE matcher.19286 EGREP=$lt_EGREP19287 19288 # A literal string matcher.19289 FGREP=$lt_FGREP19290 19291 # A BSD- or MS-compatible name lister.19292 NM=$lt_NM19293 19294 # Whether we need soft or hard links.19295 LN_S=$lt_LN_S19296 19297 # What is the maximum length of a command?19298 max_cmd_len=$max_cmd_len19299 19300 # Object file suffix (normally "o").19301 objext=$ac_objext19302 19303 # Executable file suffix (normally "").19304 exeext=$exeext19305 19306 # whether the shell understands "unset".19307 lt_unset=$lt_unset19308 19309 # turn spaces into newlines.19310 SP2NL=$lt_lt_SP2NL19311 19312 # turn newlines into spaces.19313 NL2SP=$lt_lt_NL2SP19314 19315 # convert \$build file names to \$host format.19316 to_host_file_cmd=$lt_cv_to_host_file_cmd19317 19318 # convert \$build files to toolchain format.19319 to_tool_file_cmd=$lt_cv_to_tool_file_cmd19320 19321 # An object symbol dumper.19322 OBJDUMP=$lt_OBJDUMP19323 19324 # Method to check whether dependent libraries are shared objects.19325 deplibs_check_method=$lt_deplibs_check_method19326 19327 # Command to use when deplibs_check_method = "file_magic".19328 file_magic_cmd=$lt_file_magic_cmd19329 19330 # How to find potential files when deplibs_check_method = "file_magic".19331 file_magic_glob=$lt_file_magic_glob19332 19333 # Find potential files using nocaseglob when deplibs_check_method = "file_magic".19334 want_nocaseglob=$lt_want_nocaseglob19335 19336 # DLL creation program.19337 DLLTOOL=$lt_DLLTOOL19338 19339 # Command to associate shared and link libraries.19340 sharedlib_from_linklib_cmd=$lt_sharedlib_from_linklib_cmd19341 19342 # The archiver.19343 AR=$lt_AR19344 19345 # Flags to create an archive.19346 AR_FLAGS=$lt_AR_FLAGS19347 19348 # How to feed a file listing to the archiver.19349 archiver_list_spec=$lt_archiver_list_spec19350 19351 # A symbol stripping program.19352 STRIP=$lt_STRIP19353 19354 # Commands used to install an old-style archive.19355 RANLIB=$lt_RANLIB19356 old_postinstall_cmds=$lt_old_postinstall_cmds19357 old_postuninstall_cmds=$lt_old_postuninstall_cmds19358 19359 # Whether to use a lock for old archive extraction.19360 lock_old_archive_extraction=$lock_old_archive_extraction19361 19362 # A C compiler.19363 LTCC=$lt_CC19364 19365 # LTCC compiler flags.19366 LTCFLAGS=$lt_CFLAGS19367 19368 # Take the output of nm and produce a listing of raw symbols and C names.19369 global_symbol_pipe=$lt_lt_cv_sys_global_symbol_pipe19370 19371 # Transform the output of nm in a proper C declaration.19372 global_symbol_to_cdecl=$lt_lt_cv_sys_global_symbol_to_cdecl19373 19374 # Transform the output of nm into a list of symbols to manually relocate.19375 global_symbol_to_import=$lt_lt_cv_sys_global_symbol_to_import19376 19377 # Transform the output of nm in a C name address pair.19378 global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address19379 19380 # Transform the output of nm in a C name address pair when lib prefix is needed.19381 global_symbol_to_c_name_address_lib_prefix=$lt_lt_cv_sys_global_symbol_to_c_name_address_lib_prefix19382 19383 # The name lister interface.19384 nm_interface=$lt_lt_cv_nm_interface19385 19386 # Specify filename containing input files for \$NM.19387 nm_file_list_spec=$lt_nm_file_list_spec19388 19389 # The root where to search for dependent libraries,and where our libraries should be installed.19390 lt_sysroot=$lt_sysroot19391 19392 # Command to truncate a binary pipe.19393 lt_truncate_bin=$lt_lt_cv_truncate_bin19394 19395 # The name of the directory that contains temporary libtool files.19396 objdir=$objdir19397 19398 # Used to examine libraries when file_magic_cmd begins with "file".19399 MAGIC_CMD=$MAGIC_CMD19400 19401 # Must we lock files when doing compilation?19402 need_locks=$lt_need_locks19403 19404 # Manifest tool.19405 MANIFEST_TOOL=$lt_MANIFEST_TOOL19406 19407 # Tool to manipulate archived DWARF debug symbol files on Mac OS X.19408 DSYMUTIL=$lt_DSYMUTIL19409 19410 # Tool to change global to local symbols on Mac OS X.19411 NMEDIT=$lt_NMEDIT19412 19413 # Tool to manipulate fat objects and archives on Mac OS X.19414 LIPO=$lt_LIPO19415 19416 # ldd/readelf like tool for Mach-O binaries on Mac OS X.19417 OTOOL=$lt_OTOOL19418 19419 # ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4.19420 OTOOL64=$lt_OTOOL6419421 19422 # Old archive suffix (normally "a").19423 libext=$libext19424 19425 # Shared library suffix (normally ".so").19426 shrext_cmds=$lt_shrext_cmds19427 19428 # The commands to extract the exported symbol list from a shared archive.19429 extract_expsyms_cmds=$lt_extract_expsyms_cmds19430 19431 # Variables whose values should be saved in libtool wrapper scripts and19432 # restored at link time.19433 variables_saved_for_relink=$lt_variables_saved_for_relink19434 19435 # Do we need the "lib" prefix for modules?19436 need_lib_prefix=$need_lib_prefix19437 19438 # Do we need a version for libraries?19439 need_version=$need_version19440 19441 # Library versioning type.19442 version_type=$version_type19443 19444 # Shared library runtime path variable.19445 runpath_var=$runpath_var19446 19447 # Shared library path variable.19448 shlibpath_var=$shlibpath_var19449 19450 # Is shlibpath searched before the hard-coded library search path?19451 shlibpath_overrides_runpath=$shlibpath_overrides_runpath19452 19453 # Format of library name prefix.19454 libname_spec=$lt_libname_spec19455 19456 # List of archive names. First name is the real one, the rest are links.19457 # The last name is the one that the linker finds with -lNAME19458 library_names_spec=$lt_library_names_spec19459 19460 # The coded name of the library, if different from the real name.19461 soname_spec=$lt_soname_spec19462 19463 # Permission mode override for installation of shared libraries.19464 install_override_mode=$lt_install_override_mode19465 19466 # Command to use after installation of a shared archive.19467 postinstall_cmds=$lt_postinstall_cmds19468 19469 # Command to use after uninstallation of a shared archive.19470 postuninstall_cmds=$lt_postuninstall_cmds19471 19472 # Commands used to finish a libtool library installation in a directory.19473 finish_cmds=$lt_finish_cmds19474 19475 # As "finish_cmds", except a single script fragment to be evaled but19476 # not shown.19477 finish_eval=$lt_finish_eval19478 19479 # Whether we should hardcode library paths into libraries.19480 hardcode_into_libs=$hardcode_into_libs19481 19482 # Compile-time system search path for libraries.19483 sys_lib_search_path_spec=$lt_sys_lib_search_path_spec19484 19485 # Detected run-time system search path for libraries.19486 sys_lib_dlsearch_path_spec=$lt_configure_time_dlsearch_path19487 19488 # Explicit LT_SYS_LIBRARY_PATH set during ./configure time.19489 configure_time_lt_sys_library_path=$lt_configure_time_lt_sys_library_path19490 19491 # Whether dlopen is supported.19492 dlopen_support=$enable_dlopen19493 19494 # Whether dlopen of programs is supported.19495 dlopen_self=$enable_dlopen_self19496 19497 # Whether dlopen of statically linked programs is supported.19498 dlopen_self_static=$enable_dlopen_self_static19499 19500 # Commands to strip libraries.19501 old_striplib=$lt_old_striplib19502 striplib=$lt_striplib19503 19504 19505 # The linker used to build libraries.19506 LD=$lt_LD19507 19508 # How to create reloadable object files.19509 reload_flag=$lt_reload_flag19510 reload_cmds=$lt_reload_cmds19511 19512 # Commands used to build an old-style archive.19513 old_archive_cmds=$lt_old_archive_cmds19514 19515 # A language specific compiler.19516 CC=$lt_compiler19517 19518 # Is the compiler the GNU compiler?19519 with_gcc=$GCC19520 19521 # Compiler flag to turn off builtin functions.19522 no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag19523 19524 # Additional compiler flags for building library objects.19525 pic_flag=$lt_lt_prog_compiler_pic19526 19527 # How to pass a linker flag through the compiler.19528 wl=$lt_lt_prog_compiler_wl19529 19530 # Compiler flag to prevent dynamic linking.19531 link_static_flag=$lt_lt_prog_compiler_static19532 19533 # Does compiler simultaneously support -c and -o options?19534 compiler_c_o=$lt_lt_cv_prog_compiler_c_o19535 19536 # Whether or not to add -lc for building shared libraries.19537 build_libtool_need_lc=$archive_cmds_need_lc19538 19539 # Whether or not to disallow shared libs when runtime libs are static.19540 allow_libtool_libs_with_static_runtimes=$enable_shared_with_static_runtimes19541 19542 # Compiler flag to allow reflexive dlopens.19543 export_dynamic_flag_spec=$lt_export_dynamic_flag_spec19544 19545 # Compiler flag to generate shared objects directly from archives.19546 whole_archive_flag_spec=$lt_whole_archive_flag_spec19547 19548 # Whether the compiler copes with passing no objects directly.19549 compiler_needs_object=$lt_compiler_needs_object19550 19551 # Create an old-style archive from a shared archive.19552 old_archive_from_new_cmds=$lt_old_archive_from_new_cmds19553 19554 # Create a temporary old-style archive to link instead of a shared archive.19555 old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds19556 19557 # Commands used to build a shared archive.19558 archive_cmds=$lt_archive_cmds19559 archive_expsym_cmds=$lt_archive_expsym_cmds19560 19561 # Commands used to build a loadable module if different from building19562 # a shared archive.19563 module_cmds=$lt_module_cmds19564 module_expsym_cmds=$lt_module_expsym_cmds19565 19566 # Whether we are building with GNU ld or not.19567 with_gnu_ld=$lt_with_gnu_ld19568 19569 # Flag that allows shared libraries with undefined symbols to be built.19570 allow_undefined_flag=$lt_allow_undefined_flag19571 19572 # Flag that enforces no undefined symbols.19573 no_undefined_flag=$lt_no_undefined_flag19574 19575 # Flag to hardcode \$libdir into a binary during linking.19576 # This must work even if \$libdir does not exist19577 hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec19578 19579 # Whether we need a single "-rpath" flag with a separated argument.19580 hardcode_libdir_separator=$lt_hardcode_libdir_separator19581 19582 # Set to "yes" if using DIR/libNAME\$shared_ext during linking hardcodes19583 # DIR into the resulting binary.19584 hardcode_direct=$hardcode_direct19585 19586 # Set to "yes" if using DIR/libNAME\$shared_ext during linking hardcodes19587 # DIR into the resulting binary and the resulting library dependency is19588 # "absolute",i.e impossible to change by setting \$shlibpath_var if the19589 # library is relocated.19590 hardcode_direct_absolute=$hardcode_direct_absolute19591 19592 # Set to "yes" if using the -LDIR flag during linking hardcodes DIR19593 # into the resulting binary.19594 hardcode_minus_L=$hardcode_minus_L19595 19596 # Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR19597 # into the resulting binary.19598 hardcode_shlibpath_var=$hardcode_shlibpath_var19599 19600 # Set to "yes" if building a shared library automatically hardcodes DIR19601 # into the library and all subsequent libraries and executables linked19602 # against it.19603 hardcode_automatic=$hardcode_automatic19604 19605 # Set to yes if linker adds runtime paths of dependent libraries19606 # to runtime path list.19607 inherit_rpath=$inherit_rpath19608 19609 # Whether libtool must link a program against all its dependency libraries.19610 link_all_deplibs=$link_all_deplibs19611 19612 # Set to "yes" if exported symbols are required.19613 always_export_symbols=$always_export_symbols19614 19615 # The commands to list exported symbols.19616 export_symbols_cmds=$lt_export_symbols_cmds19617 19618 # Symbols that should not be listed in the preloaded symbols.19619 exclude_expsyms=$lt_exclude_expsyms19620 19621 # Symbols that must always be exported.19622 include_expsyms=$lt_include_expsyms19623 19624 # Commands necessary for linking programs (against libraries) with templates.19625 prelink_cmds=$lt_prelink_cmds19626 19627 # Commands necessary for finishing linking programs.19628 postlink_cmds=$lt_postlink_cmds19629 19630 # Specify filename containing input files.19631 file_list_spec=$lt_file_list_spec19632 19633 # How to hardcode a shared library path into an executable.19634 hardcode_action=$hardcode_action19635 19636 # The directories searched by this compiler when creating a shared library.19637 compiler_lib_search_dirs=$lt_compiler_lib_search_dirs19638 19639 # Dependencies to place before and after the objects being linked to19640 # create a shared library.19641 predep_objects=$lt_predep_objects19642 postdep_objects=$lt_postdep_objects19643 predeps=$lt_predeps19644 postdeps=$lt_postdeps19645 19646 # The library search path used internally by the compiler when linking19647 # a shared library.19648 compiler_lib_search_path=$lt_compiler_lib_search_path19649 19650 # ### END LIBTOOL CONFIG19651 19652 _LT_EOF19653 19654 cat <<'_LT_EOF' >> "$cfgfile"19655 19656 # ### BEGIN FUNCTIONS SHARED WITH CONFIGURE19657 19658 # func_munge_path_list VARIABLE PATH19659 # -----------------------------------19660 # VARIABLE is name of variable containing _space_ separated list of19661 # directories to be munged by the contents of PATH, which is string19662 # having a format:19663 # "DIR[:DIR]:"19664 # string "DIR[ DIR]" will be prepended to VARIABLE19665 # ":DIR[:DIR]"19666 # string "DIR[ DIR]" will be appended to VARIABLE19667 # "DIRP[:DIRP]::[DIRA:]DIRA"19668 # string "DIRP[ DIRP]" will be prepended to VARIABLE and string19669 # "DIRA[ DIRA]" will be appended to VARIABLE19670 # "DIR[:DIR]"19671 # VARIABLE will be replaced by "DIR[ DIR]"19672 func_munge_path_list ()19673 {19674 case x$2 in19675 x)19676 ;;19677 *:)19678 eval $1=\"`$ECHO $2 | $SED 's/:/ /g'` \$$1\"19679 ;;19680 x:*)19681 eval $1=\"\$$1 `$ECHO $2 | $SED 's/:/ /g'`\"19682 ;;19683 *::*)19684 eval $1=\"\$$1\ `$ECHO $2 | $SED -e 's/.*:://' -e 's/:/ /g'`\"19685 eval $1=\"`$ECHO $2 | $SED -e 's/::.*//' -e 's/:/ /g'`\ \$$1\"19686 ;;19687 *)19688 eval $1=\"`$ECHO $2 | $SED 's/:/ /g'`\"19689 ;;19690 esac19691 }19692 19693 19694 # Calculate cc_basename. Skip known compiler wrappers and cross-prefix.19695 func_cc_basename ()19696 {19697 for cc_temp in $*""; do19698 case $cc_temp in19699 compile | *[\\/]compile | ccache | *[\\/]ccache ) ;;19700 distcc | *[\\/]distcc | purify | *[\\/]purify ) ;;19701 \-*) ;;19702 *) break;;19703 esac19704 done19705 func_cc_basename_result=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"`19706 }19707 19708 19709 # ### END FUNCTIONS SHARED WITH CONFIGURE19710 19711 _LT_EOF19712 19713 case $host_os in19714 aix3*)19715 cat <<\_LT_EOF >> "$cfgfile"19716 # AIX sometimes has problems with the GCC collect2 program. For some19717 # reason, if we set the COLLECT_NAMES environment variable, the problems19718 # vanish in a puff of smoke.19719 if test set != "${COLLECT_NAMES+set}"; then19720 COLLECT_NAMES=19721 export COLLECT_NAMES19722 fi19723 _LT_EOF19724 ;;19725 esac19726 19727 19728 ltmain=$ac_aux_dir/ltmain.sh19729 19730 19731 # We use sed instead of cat because bash on DJGPP gets confused if19732 # if finds mixed CR/LF and LF-only lines. Since sed operates in19733 # text mode, it properly converts lines to CR/LF. This bash problem19734 # is reportedly fixed, but why not run on old versions too?19735 sed '$q' "$ltmain" >> "$cfgfile" \19736 || (rm -f "$cfgfile"; exit 1)19737 19738 mv -f "$cfgfile" "$ofile" ||19739 (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")19740 chmod +x "$ofile"19741 19742 19743 cat <<_LT_EOF >> "$ofile"19744 19745 # ### BEGIN LIBTOOL TAG CONFIG: CXX19746 19747 # The linker used to build libraries.19748 LD=$lt_LD_CXX19749 19750 # How to create reloadable object files.19751 reload_flag=$lt_reload_flag_CXX19752 reload_cmds=$lt_reload_cmds_CXX19753 19754 # Commands used to build an old-style archive.19755 old_archive_cmds=$lt_old_archive_cmds_CXX19756 19757 # A language specific compiler.19758 CC=$lt_compiler_CXX19759 19760 # Is the compiler the GNU compiler?19761 with_gcc=$GCC_CXX19762 19763 # Compiler flag to turn off builtin functions.19764 no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag_CXX19765 19766 # Additional compiler flags for building library objects.19767 pic_flag=$lt_lt_prog_compiler_pic_CXX19768 19769 # How to pass a linker flag through the compiler.19770 wl=$lt_lt_prog_compiler_wl_CXX19771 19772 # Compiler flag to prevent dynamic linking.19773 link_static_flag=$lt_lt_prog_compiler_static_CXX19774 19775 # Does compiler simultaneously support -c and -o options?19776 compiler_c_o=$lt_lt_cv_prog_compiler_c_o_CXX19777 19778 # Whether or not to add -lc for building shared libraries.19779 build_libtool_need_lc=$archive_cmds_need_lc_CXX19780 19781 # Whether or not to disallow shared libs when runtime libs are static.19782 allow_libtool_libs_with_static_runtimes=$enable_shared_with_static_runtimes_CXX19783 19784 # Compiler flag to allow reflexive dlopens.19785 export_dynamic_flag_spec=$lt_export_dynamic_flag_spec_CXX19786 19787 # Compiler flag to generate shared objects directly from archives.19788 whole_archive_flag_spec=$lt_whole_archive_flag_spec_CXX19789 19790 # Whether the compiler copes with passing no objects directly.19791 compiler_needs_object=$lt_compiler_needs_object_CXX19792 19793 # Create an old-style archive from a shared archive.19794 old_archive_from_new_cmds=$lt_old_archive_from_new_cmds_CXX19795 19796 # Create a temporary old-style archive to link instead of a shared archive.19797 old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds_CXX19798 19799 # Commands used to build a shared archive.19800 archive_cmds=$lt_archive_cmds_CXX19801 archive_expsym_cmds=$lt_archive_expsym_cmds_CXX19802 19803 # Commands used to build a loadable module if different from building19804 # a shared archive.19805 module_cmds=$lt_module_cmds_CXX19806 module_expsym_cmds=$lt_module_expsym_cmds_CXX19807 19808 # Whether we are building with GNU ld or not.19809 with_gnu_ld=$lt_with_gnu_ld_CXX19810 19811 # Flag that allows shared libraries with undefined symbols to be built.19812 allow_undefined_flag=$lt_allow_undefined_flag_CXX19813 19814 # Flag that enforces no undefined symbols.19815 no_undefined_flag=$lt_no_undefined_flag_CXX19816 19817 # Flag to hardcode \$libdir into a binary during linking.19818 # This must work even if \$libdir does not exist19819 hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec_CXX19820 19821 # Whether we need a single "-rpath" flag with a separated argument.19822 hardcode_libdir_separator=$lt_hardcode_libdir_separator_CXX19823 19824 # Set to "yes" if using DIR/libNAME\$shared_ext during linking hardcodes19825 # DIR into the resulting binary.19826 hardcode_direct=$hardcode_direct_CXX19827 19828 # Set to "yes" if using DIR/libNAME\$shared_ext during linking hardcodes19829 # DIR into the resulting binary and the resulting library dependency is19830 # "absolute",i.e impossible to change by setting \$shlibpath_var if the19831 # library is relocated.19832 hardcode_direct_absolute=$hardcode_direct_absolute_CXX19833 19834 # Set to "yes" if using the -LDIR flag during linking hardcodes DIR19835 # into the resulting binary.19836 hardcode_minus_L=$hardcode_minus_L_CXX19837 19838 # Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR19839 # into the resulting binary.19840 hardcode_shlibpath_var=$hardcode_shlibpath_var_CXX19841 19842 # Set to "yes" if building a shared library automatically hardcodes DIR19843 # into the library and all subsequent libraries and executables linked19844 # against it.19845 hardcode_automatic=$hardcode_automatic_CXX19846 19847 # Set to yes if linker adds runtime paths of dependent libraries19848 # to runtime path list.19849 inherit_rpath=$inherit_rpath_CXX19850 19851 # Whether libtool must link a program against all its dependency libraries.19852 link_all_deplibs=$link_all_deplibs_CXX19853 19854 # Set to "yes" if exported symbols are required.19855 always_export_symbols=$always_export_symbols_CXX19856 19857 # The commands to list exported symbols.19858 export_symbols_cmds=$lt_export_symbols_cmds_CXX19859 19860 # Symbols that should not be listed in the preloaded symbols.19861 exclude_expsyms=$lt_exclude_expsyms_CXX19862 19863 # Symbols that must always be exported.19864 include_expsyms=$lt_include_expsyms_CXX19865 19866 # Commands necessary for linking programs (against libraries) with templates.19867 prelink_cmds=$lt_prelink_cmds_CXX19868 19869 # Commands necessary for finishing linking programs.19870 postlink_cmds=$lt_postlink_cmds_CXX19871 19872 # Specify filename containing input files.19873 file_list_spec=$lt_file_list_spec_CXX19874 19875 # How to hardcode a shared library path into an executable.19876 hardcode_action=$hardcode_action_CXX19877 19878 # The directories searched by this compiler when creating a shared library.19879 compiler_lib_search_dirs=$lt_compiler_lib_search_dirs_CXX19880 19881 # Dependencies to place before and after the objects being linked to19882 # create a shared library.19883 predep_objects=$lt_predep_objects_CXX19884 postdep_objects=$lt_postdep_objects_CXX19885 predeps=$lt_predeps_CXX19886 postdeps=$lt_postdeps_CXX19887 19888 # The library search path used internally by the compiler when linking19889 # a shared library.19890 compiler_lib_search_path=$lt_compiler_lib_search_path_CXX19891 19892 # ### END LIBTOOL TAG CONFIG: CXX19893 _LT_EOF19894 19895 ;;19896 7866 19897 7867 esac -
configure.ac
r95b8aa7 rff5caaf 5 5 AC_INIT([cfa-cc],[1.0.0.0],[cforall@plg.uwaterloo.ca]) 6 6 AC_CONFIG_AUX_DIR([automake]) 7 AC_CONFIG_MACRO_DIRS([automake])8 7 #AC_CONFIG_SRCDIR([src/main.cc]) 9 8 AC_CONFIG_HEADERS([config.h:src/config.h.in]) … … 56 55 AC_SUBST([DOendif]) 57 56 AM_SUBST_NOTMAKE([DOendif]) 57 58 #============================================================================== 59 # backend compiler implementation 60 AC_ARG_WITH(backend-compiler, 61 [ --with-backend-compiler=PROGRAM PROGRAM that performs the final code compilation (must be gcc-compatible) ], 62 backendcompiler=$withval, backendcompiler="") 63 if test "x$backendcompiler" != "x"; then 64 BACKEND_CC=${backendcompiler} 65 else 66 AC_PATH_PROG(BACKEND_CC, gcc, []) # check gcc installed 67 if test "x$BACKEND_CC" = "x"; then 68 AC_MSG_ERROR(some version of gcc is needed. Get it at ftp://ftp.gnu.org) 69 exit 1 70 fi 71 fi 72 AC_DEFINE_UNQUOTED(CFA_BACKEND_CC, "${BACKEND_CC}", [Location of include files.]) 73 AC_SUBST(CFA_BACKEND_CC) 58 74 59 75 #============================================================================== … … 156 172 echo -n "${LIBCFA_PATHS} " >> ${lib_dir}/config.data 157 173 echo -n "ARCHITECTURE=${lib_arch} " >> ${lib_dir}/config.data 158 echo -n "CONFIGURATION=${lib_config} " >> ${lib_dir}/config.data 159 echo -n "CFA_VERSION=${ver_major}:${ver_minor}:${ver_patch}" >> ${lib_dir}/config.data 174 echo -n "CONFIGURATION=${lib_config}" >> ${lib_dir}/config.data 160 175 done 161 176 … … 184 199 AC_PROG_LEX 185 200 if test "${LEX}" = "lex" ; then echo "Error: flex required." ; exit 1 ; fi 186 AC_PROG_LIBTOOL187 201 AC_PROG_INSTALL 188 202 AC_PROG_MAKE_SET 203 AC_PROG_RANLIB 189 204 190 205 # Checks for libraries. … … 212 227 213 228 #============================================================================== 214 # backend compiler implementation215 AC_DEFINE_UNQUOTED(CFA_BACKEND_CC, "${CC}", [Backend compiler to use.])216 AC_SUBST(CFA_BACKEND_CC)217 218 #==============================================================================219 229 AC_CONFIG_FILES([ 220 230 Makefile -
doc/bibliography/pl.bib
r95b8aa7 rff5caaf 21 21 % toplas: ACM Trans. on Prog. Lang. & Sys. 22 22 % tcs: Theoretical Computer Science 23 24 string{ieeepds="IEEE Transactions on Parallel and Distributed Systems"} 25 @string{ieeepds="IEEE Trans. Parallel Distrib. Syst."} 26 string{ieeese="IEEE Transactions on Software Engineering"} 27 @string{ieeese="IEEE Trans. Softw. Eng."} 28 string{spe="Software---\-Practice and Experience"} 29 @string{spe="Softw. Pract. Exper."} 30 string{ccpe="Concurrency and Computation: Practice and Experience"} 31 @string{ccpe="Concurrency Comput.: Pract. Exper."} 32 string{sigplan="SIGPLAN Notices"} 33 @string{sigplan="SIGPLAN Not."} 34 string{joop="Journal of Object-Oriented Programming"} 35 @string{joop="J. of Object-Oriented Program."} 23 @string{ieeepds="IEEE Transactions on Parallel and Distributed Systems"} 24 % @string{ieeepds="IEEE Trans. Parallel Distrib. Syst."} 25 @string{ieeese="IEEE Transactions on Software Engineering"} 26 % @string{ieeese="IEEE Trans. Softw. Eng."} 27 @string{spe="Software---\-Practice and Experience"} 28 % @string{spe="Softw. Pract. Exp."} 29 @string{ccpe="Concurrency and Computation: Practice and Experience"} 30 % @string{ccpe="Concurrency Comput: Pract Experience"} 31 @string{sigplan="SIGPLAN Notices"} 32 % @string{sigplan="SIGPLAN Not."} 33 @string{joop="Journal of Object-Oriented Programming"} 34 % @string{joop="J. of Object-Oriented Program."} 36 35 @string{popl="Conference Record of the ACM Symposium on Principles of Programming Languages"} 37 36 @string{osr="Operating Systems Review"} 38 37 @string{pldi="Programming Language Design and Implementation"} 39 38 @string{toplas="Transactions on Programming Languages and Systems"} 40 string{mathann="Mathematische Annalen"}41 @string{mathann="Math. Ann."}39 @string{mathann="Mathematische Annalen"} 40 % @string{mathann="Math. Ann."} 42 41 43 42 % A … … 567 566 } 568 567 569 @inproceedings {Qin18,570 author = {Henry Qin and Qian Li and Jacqueline Speiser and Peter Kraft and John Ousterhout},571 title = {Arachne: Core-Aware Thread Management},572 booktitle = {13th {USENIX} Symp. on Oper. Sys. Design and Impl. ({OSDI} 18)},573 year = {2018},574 address = {Carlsbad, CA},575 pages = {145-160},576 publisher = {{USENIX} Association},577 note = {\href{https://www.usenix.org/conference/osdi18/presentation/qin}{https://\-www.usenix.org/\-conference/\-osdi18/\-presentation/\-qin}},578 }579 580 568 @article{Kessels82, 581 569 keywords = {concurrency, critical section}, … … 665 653 author = {Joung, Yuh-Jzer}, 666 654 title = {Asynchronous group mutual exclusion}, 667 journal = {Dist. Comput.}, 668 optjournal = {Distributed Computing}, 655 journal = {Distributed Computing}, 669 656 year = {2000}, 670 657 month = {Nov}, … … 809 796 time computable inheritance hierarchy. 810 797 }, 811 comment = {798 comment = { 812 799 Classes are predicates; if object {\tt o} is in class {\tt C}, then 813 800 {\tt C} is true of {\tt o}. Classes are combined with {\tt :AND}, … … 963 950 964 951 @article{Moss18, 965 keywords = {type systems, polymorphism,tuples, Cforall},952 keywords = {type systems, tuples, Cforall}, 966 953 contributer = {pabuhr@plg}, 967 954 author = {Aaron Moss and Robert Schluntz and Peter A. Buhr}, 968 955 title = {\textsf{C}$\mathbf{\forall}$ : Adding Modern Programming Language Features to C}, 956 year = 2018, 957 month = aug, 969 958 journal = spe, 970 volume = 48,971 number = 12,972 month = dec,973 year = 2018,974 pages = {2111-2146},975 959 note = {\href{http://dx.doi.org/10.1002/spe.2624}{http://\-dx.doi.org/\-10.1002/\-spe.2624}}, 976 960 } … … 1005 989 journal = {Dr. Dobb's Journal of Software Tools}, 1006 990 year = 1989, 1007 month = feb, 1008 volume = 14, 1009 number = 2, 1010 pages = {45-51}, 991 month = feb, volume = 14, number = 2, pages = {45-51}, 1011 992 comment = { 1012 993 A light-weight multitasking kernel for MS-DOS. A task\_control … … 1526 1507 } 1527 1508 1528 @ manual{uC++,1509 @techreport{uC++, 1529 1510 keywords = {C++, concurrency, light-weight process, shared memory}, 1530 1511 contributer = {pabuhr@plg}, 1531 key = {uC++},1532 1512 author = {Peter A. Buhr}, 1533 1513 title = {$\mu${C}{\kern-.1em\hbox{\large\texttt{+\kern-.25em+}}} Annotated Reference Manual, Version 7.0.0}, 1534 organization= {University of Waterloo}, 1535 month = sep, 1536 year = 2018, 1514 institution = {School of Computer Science, University of Waterloo}, 1515 address = {Waterloo, Ontario, Canada, N2L 3G1}, 1516 month = dec, 1517 year = 2017, 1537 1518 note = {\href{https://plg.uwaterloo.ca/~usystem/pub/uSystem/uC++.pdf}{https://\-plg.uwaterloo.ca/\-$\sim$usystem/\-pub/\-uSystem/uC++.pdf}}, 1538 1519 } … … 1605 1586 author = {Sun, Xianda}, 1606 1587 title = {Concurrent High-performance Persistent Hash Table In {J}ava}, 1607 school = {School of Computer Sc ., University of Waterloo},1588 school = {School of Computer Science, University of Waterloo}, 1608 1589 year = 2015, 1609 1590 optaddress = {Waterloo, Ontario, Canada, N2L 3G1}, … … 1955 1936 note = {Svensk Standard SS 63 61 14}, 1956 1937 year = 1987, 1957 abstract = {Standard for the programming language SIMULA. Written in English.} 1958 } 1959 1960 @article{Galil91, 1961 keywords = {union-find}, 1962 contributer = {a3moss@uwaterloo.ca}, 1963 title = {Data structures and algorithms for disjoint set union problems}, 1964 author = {Galil, Zvi and Italiano, Giuseppe F}, 1965 journal = {ACM Computing Surveys (CSUR)}, 1966 volume = 23, 1967 number = 3, 1968 pages = {319--344}, 1969 year = 1991, 1970 publisher = {ACM}, 1938 abstract = { 1939 Standard for the programming language SIMULA. Written in English. 1940 } 1971 1941 } 1972 1942 … … 2108 2078 year = {1998}, 2109 2079 pages = {393-407}, 2110 }2111 2112 @book{Aho74,2113 keywords = {algorithms, textbook, union-find},2114 contributer = {a3moss@uwaterloo.ca},2115 title = {The Design and Analysis of Computer Algorithms},2116 author = {Aho, Alfred V and Hopcroft, John E and Ullman, Jeffrey D},2117 year = {1974},2118 publisher = {Addison-Wesley},2119 address = {Reading, MA, USA}2120 2080 } 2121 2081 … … 2920 2880 } 2921 2881 2922 @inproceedings{Patwary10,2923 keywords = {union-find},2924 contributer = {a3moss@uwaterloo.ca},2925 author = {Patwary, Md. Mostofa Ali and Blair, Jean and Manne, Fredrik},2926 editor = {Festa, Paola},2927 title = {Experiments on Union-Find Algorithms for the Disjoint-Set Data Structure},2928 booktitle = {Experimental Algorithms},2929 year = 2010,2930 publisher = {Springer Berlin Heidelberg},2931 address = {Berlin, Heidelberg},2932 pages = {411--423},2933 isbn = {978-3-642-13193-6}2934 }2935 2936 2882 % F 2937 2883 … … 3277 3223 keywords = {Go programming language}, 3278 3224 contributer = {pabuhr@plg}, 3225 title = {{Go} Programming Language}, 3279 3226 author = {Robert Griesemer and Rob Pike and Ken Thompson}, 3280 title = {{Go} Programming Language},3281 3227 organization= {Google}, 3282 3228 year = 2009, … … 3470 3416 month = sep, 3471 3417 publisher = {John Wiley \& Sons}, 3472 note = {\href{https://doi .org/10.1002/cpe.4475}{https://\-doi.org/\-10.1002/\-cpe.4475}},3418 note = {\href{https://doi-org.proxy.lib.uwaterloo.ca/10.1002/cpe.4475}{https://\-doi-org.proxy.lib.uwaterloo.ca/\-10.1002/\-cpe.4475}}, 3473 3419 } 3474 3420 … … 3608 3554 publisher = {ACM Press}, 3609 3555 address = {New York, NY, USA}, 3610 }3611 3612 @article{Galler64,3613 keywords = {union-find, original},3614 contributer = {a3moss@uwaterloo.ca},3615 title = {An improved equivalence algorithm},3616 author = {Galler, Bernard A and Fisher, Michael J},3617 journal = {Communications of the ACM},3618 volume = {7},3619 number = {5},3620 pages = {301--303},3621 year = {1964},3622 publisher = {ACM}3623 3556 } 3624 3557 … … 3965 3898 author = {Peter A. Buhr and Martin Karsten and Jun Shih}, 3966 3899 title = {{\small\textsf{KDB}}: A Multi-threaded Debugger for Multi-threaded Applications}, 3967 booktitle = {Proc . of SPDT'96: SIGMETRICS Symp.on Parallel and Distributed Tools},3900 booktitle = {Proceedings of SPDT'96: SIGMETRICS Symposium on Parallel and Distributed Tools}, 3968 3901 publisher = {ACM Press}, 3969 3902 address = {Philadelphia, Pennsylvania, U.S.A.}, … … 5456 5389 } 5457 5390 5458 @inproceedings{Conchon07,5459 keywords = {persistent array, union-find},5460 contributer = {a3moss@uwaterloo.ca},5461 title = {A persistent union-find data structure},5462 author = {Conchon, Sylvain and Filli{\^a}tre, Jean-Christophe},5463 booktitle = {Proceedings of the 2007 workshop on Workshop on ML},5464 pages = {37--46},5465 year = {2007},5466 organization= {ACM}5467 }5468 5469 5391 @article{poly, 5470 5392 keywords = {Poly, Standard ML, Russell, persistence}, … … 5681 5603 author = {Peter A. Buhr and Robert Denda}, 5682 5604 title = {{$\mu$Profiler} : Profiling User-Level Threads in a Shared-Memory Programming Environment}, 5683 booktitle = {Proc . of 2nd Inter. Symp. on Computing in Object-Oriented Parallel Environments},5605 booktitle = {Proceedings of the Second International Symposium on Computing in Object-Oriented Parallel Environments (ISCOPE'98)}, 5684 5606 series = {Lecture Notes in Computer Science}, 5685 5607 publisher = {Springer-Verlag}, … … 6052 5974 issn = {0164-0925}, 6053 5975 pages = {429-475}, 6054 url = {http://doi.acm.org /10.1145/1133651.1133653},5976 url = {http://doi.acm.org.proxy.lib.uwaterloo.ca/10.1145/1133651.1133653}, 6055 5977 doi = {10.1145/1133651.1133653}, 6056 5978 acmid = {1133653}, … … 6319 6241 contributer = {pabuhr@plg}, 6320 6242 key = {Rust}, 6321 title = { {R}ust Programming Language},6322 optaddress = {Rust Project Developers},6243 title = {The {R}ust Programming Language}, 6244 address = {The Rust Project Developers}, 6323 6245 year = 2015, 6324 6246 note = {\href{https://doc.rust-lang.org/reference.html}{https://\-doc.rust-lang\-.org/\-reference.html}}, … … 6386 6308 publisher = {Springer}, 6387 6309 note = {Lecture Notes in Computer Science v. 173}, 6388 }6389 6390 @article{Baker78,6391 keywords = {Algol display, FUNARG's, Lisp 1.5, deep binding, environment trees, multiprogramming, shallow binding},6392 contributer = {a3moss@uwaterloo.ca},6393 author = {Baker,Jr., Henry G.},6394 title = {Shallow Binding in Lisp 1.5},6395 journal = {Commun. ACM},6396 issue_date = {July 1978},6397 volume = 21,6398 number = 7,6399 month = jul,6400 year = 1978,6401 issn = {0001-0782},6402 pages = {565--569},6403 numpages = {5},6404 url = {http://doi.acm.org/10.1145/359545.359566},6405 doi = {10.1145/359545.359566},6406 acmid = {359566},6407 publisher = {ACM},6408 address = {New York, NY, USA}6409 }6410 6411 @article{Baker91,6412 keywords = {shallow binding, functional arrays},6413 contributer = {a3moss@uwaterloo.ca},6414 author = {Baker, Henry G.},6415 title = {Shallow Binding Makes Functional Arrays Fast},6416 journal = {SIGPLAN Not.},6417 issue_date = {Aug. 1991},6418 volume = 26,6419 number = 8,6420 month = aug,6421 year = 1991,6422 issn = {0362-1340},6423 pages = {145--147},6424 numpages = {3},6425 url = {http://doi.acm.org/10.1145/122598.122614},6426 doi = {10.1145/122598.122614},6427 acmid = {122614},6428 publisher = {ACM},6429 address = {New York, NY, USA},6430 6310 } 6431 6311 … … 7596 7476 } 7597 7477 7598 @article{Tarjan84,7599 keywords = {union-find},7600 contributer = {a3moss@uwaterloo.ca},7601 author = {Tarjan, Robert E. and van Leeuwen, Jan},7602 title = {Worst-case Analysis of Set Union Algorithms},7603 journal = {J. ACM},7604 issue_date = {April 1984},7605 volume = 31,7606 number = 2,7607 month = mar,7608 year = 1984,7609 issn = {0004-5411},7610 pages = {245--281},7611 numpages = {37},7612 url = {http://doi.acm.org/10.1145/62.2160},7613 doi = {10.1145/62.2160},7614 acmid = {2160},7615 publisher = {ACM},7616 address = {New York, NY, USA},7617 }7618 7619 7478 % X 7620 7479 -
doc/papers/concurrency/Paper.tex
r95b8aa7 rff5caaf 686 686 Fib f1, f2; 687 687 for ( int i = 1; i <= 10; i += 1 ) { 688 sout | next( f1 ) | next( f2 ) ;688 sout | next( f1 ) | next( f2 ) | endl; 689 689 } 690 690 } … … 772 772 sout | " "; // separator 773 773 } 774 sout | nl;774 sout | endl; 775 775 } 776 776 } 777 777 void ?{}( Format & fmt ) { `resume( fmt );` } 778 778 void ^?{}( Format & fmt ) with( fmt ) { 779 if ( g != 0 || b != 0 ) sout | nl;779 if ( g != 0 || b != 0 ) sout | endl; 780 780 } 781 781 void format( Format & fmt ) { … … 855 855 for ( int i = 0; i < N; i += 1 ) { 856 856 int p1 = random( 100 ), p2 = random( 100 ); 857 sout | p1 | " " | p2 ;857 sout | p1 | " " | p2 | endl; 858 858 int status = delivery( c, p1, p2 ); 859 sout | " $" | money | nl | status;859 sout | " $" | money | endl | status | endl; 860 860 receipt += 1; 861 861 } 862 862 stop( c ); 863 sout | "prod stops" ;863 sout | "prod stops" | endl; 864 864 } 865 865 int payment( Prod & prod, int money ) { … … 895 895 int money = 1, receipt; 896 896 for ( ; ! done; ) { 897 sout | p1 | " " | p2 | nl | " $" | money;897 sout | p1 | " " | p2 | endl | " $" | money | endl; 898 898 status += 1; 899 899 receipt = payment( p, money ); 900 sout | " #" | receipt ;900 sout | " #" | receipt | endl; 901 901 money += 1; 902 902 } 903 sout | "cons stops" ;903 sout | "cons stops" | endl; 904 904 } 905 905 int delivery( Cons & cons, int p1, int p2 ) { … … 1099 1099 1100 1100 void main(foo & this) { 1101 sout | "Hello World!" ;1101 sout | "Hello World!" | endl; 1102 1102 } 1103 1103 \end{cfa} … … 1124 1124 1125 1125 void hello(/*unused*/ int) { 1126 sout | "Hello World!" ;1126 sout | "Hello World!" | endl; 1127 1127 } 1128 1128 … … 1141 1141 thread World {}; 1142 1142 void main( World & this ) { 1143 sout | "World!" ;1143 sout | "World!" | endl; 1144 1144 } 1145 1145 int main() { 1146 1146 World w`[10]`; $\C{// implicit forks after creation}$ 1147 sout | "Hello " ; $\C{// "Hello " and 10 "World!" printed concurrently}$1147 sout | "Hello " | endl; $\C{// "Hello " and 10 "World!" printed concurrently}$ 1148 1148 } $\C{// implicit joins before destruction}$ 1149 1149 \end{cfa} … … 1193 1193 total += subtotals[r]; $\C{// total subtotal}$ 1194 1194 } 1195 sout | total ;1195 sout | total | endl; 1196 1196 } 1197 1197 \end{cfa} … … 2192 2192 BENCH( 2193 2193 for ( size_t i = 0; i < N; i += 1 ) { @resume( c );@ } ) 2194 sout | result`ns ;2194 sout | result`ns | endl; 2195 2195 } 2196 2196 \end{cfa} … … 2205 2205 BENCH( 2206 2206 for ( size_t i = 0; i < N; i += 1 ) { @yield();@ } ) 2207 sout | result`ns ;2207 sout | result`ns | endl; 2208 2208 } 2209 2209 \end{cfa} … … 2244 2244 int main() { 2245 2245 BENCH( for( size_t i = 0; i < N; i += 1 ) { @do_call( m1/*, m2, m3, m4*/ );@ } ) 2246 sout | result`ns ;2246 sout | result`ns | endl; 2247 2247 } 2248 2248 \end{cfa} … … 2305 2305 BENCH( for ( size_t i = 0; i < N; i += 1 ) { @wait( c );@ } ); 2306 2306 go = 0; // stop other thread 2307 sout | result`ns ;2307 sout | result`ns | endl; 2308 2308 } 2309 2309 int main() { … … 2356 2356 BENCH( for ( size_t i = 0; i < N; i += 1 ) { @waitfor( do_call, m );@ } ) 2357 2357 go = 0; // stop other thread 2358 sout | result`ns ;2358 sout | result`ns | endl; 2359 2359 } 2360 2360 int main() { … … 2391 2391 int main() { 2392 2392 BENCH( for ( size_t i = 0; i < N; i += 1 ) { @MyThread m;@ } ) 2393 sout | result`ns ;2393 sout | result`ns | endl; 2394 2394 } 2395 2395 \end{cfa} -
doc/proposals/flags.md
r95b8aa7 rff5caaf 60 60 ``` 61 61 FunFlags f = some_val(); 62 if ( f ) { sout | "f has some flag(s) set" ; }63 if ( f & FOO ) { sout | "f has FOO set" ; }62 if ( f ) { sout | "f has some flag(s) set" | endl; } 63 if ( f & FOO ) { sout | "f has FOO set" | endl; } 64 64 f |= FOO; // set FOO 65 65 f -= FOO; // unset FOO … … 88 88 ``` 89 89 FunFlags f = some_val(); 90 if ( f.FOO ) { sout | "f has FOO set" ; }90 if ( f.FOO ) { sout | "f has FOO set" | endl; } 91 91 f.FOO = true; // set FOO 92 92 f.FOO = false; // unset FOO -
doc/theses/aaron_moss_PhD/phd/Makefile
r95b8aa7 rff5caaf 1 1 BUILD = build 2 2 BIBDIR = ../../../bibliography 3 EVALDIR = evaluation4 3 TEXLIB = .:${BUILD}:${BIBDIR}: 5 4 6 # LATEX = TEXINPUTS=${TEXLIB} && export TEXINPUTS && pdflatex -interaction=nonstopmode -halt-on-error -output-directory=${BUILD} 7 LATEX = TEXINPUTS=${TEXLIB} && export TEXINPUTS && latex -halt-on-error -output-directory=${BUILD} 5 LATEX = TEXINPUTS=${TEXLIB} && export TEXINPUTS && pdflatex -interaction= -output-directory=${BUILD} 8 6 BIBTEX = BIBINPUTS=${TEXLIB} && export BIBINPUTS && bibtex 9 10 VPATH = ${EVALDIR}11 7 12 8 BASE = thesis … … 27 23 } 28 24 29 GRAPHS = ${addsuffix .tex, \30 generic-timing \31 }32 33 25 .PHONY : all rebuild-refs clean wc 34 26 … … 41 33 wc ${SOURCES} 42 34 43 ${DOCUMENT} : ${BASE}.ps 44 ps2pdf ${BUILD}/$< 35 ${DOCUMENT} : ${SOURCES} ${BUILD} 36 ${LATEX} ${BASE} 37 ${LATEX} ${BASE} 45 38 46 ${BASE}.ps : ${BASE}.dvi 47 dvips ${BUILD}/$< -o ${BUILD}/$@ 48 49 ${BASE}.dvi : Makefile ${SOURCES} ${GRAPHS} ${BIBFILE} ${BUILD} 39 rebuild-refs : ${SOURCES} ${BIBFILE} ${BUILD} 50 40 ${LATEX} ${BASE} 51 41 ${BIBTEX} ${BUILD}/${BASE} … … 53 43 ${LATEX} ${BASE} 54 44 55 ${GRAPHS} : generic-timing.gp generic-timing.dat ${BUILD}56 gnuplot -e BUILD="'${BUILD}/'" ${EVALDIR}/generic-timing.gp57 58 45 ${BUILD}: 59 46 mkdir -p ${BUILD} -
doc/theses/aaron_moss_PhD/phd/generic-types.tex
r95b8aa7 rff5caaf 135 135 136 136 \CC{}, Java, and other languages use \emph{generic types} to produce type-safe abstract data types. 137 Design and implementation of generic types for \CFA{} is the first major contribution of this thesis, a summary of which is published in \cite{Moss18} and from which this chapter is closely based.137 Design and implementation of generic types for \CFA{} is the first major contribution of this thesis, a summary of which is published in \cite{Moss18}. 138 138 \CFA{} generic types integrate efficiently and naturally with the existing polymorphic functions in \CFA{}, while retaining backward compatibility with C in layout and support for separate compilation. 139 139 A generic type can be declared in \CFA{} by placing a !forall! specifier on a !struct! or !union! declaration, and instantiated using a parenthesized list of types after the generic name. … … 179 179 \subsection{Related Work} 180 180 181 One approach to the design of generic types is that taken by \CC{} templates\cit e{C++}.181 One approach to the design of generic types is that taken by \CC{} templates\cit{}. 182 182 The template approach is closely related to the macro-expansion approach to C polymorphism demonstrated in Figure~\ref{macro-generic-fig}, but where the macro-expansion syntax has been given first-class language support. 183 183 Template expansion has the benefit of generating code with near-optimal runtime efficiency, as distinct optimizations can be applied for each instantiation of the template. … … 185 185 The most significant restriction of the \CC{} template model is that it breaks separate compilation and C's translation-unit-based encapsulation mechanisms. 186 186 Because a \CC{} template is not actually code, but rather a sort of ``recipe'' to generate code, template code must be visible at its call site to be used. 187 Furthermore, \CC{} template code cannot be type-checked without instantiating it, a time consuming process with no hope of improvement until \CC{} concepts\cite{C++Concepts} are standardized in \CCtwenty{}.188 187 C code, by contrast, only needs a !struct! or function declaration to call that function or use (by-pointer) values of that type, a desirable property to maintain for \CFA{}. 189 188 190 Java\cit e{Java8} has another prominent implementation for generic types, introduced in Java~5 andbased on a significantly different approach than \CC{}.189 Java\cit{} has another prominent implementation for generic types, based on a significantly different approach than \CC{}. 191 190 The Java approach has much more in common with the !void*!-polymorphism shown in Figure~\ref{void-generic-fig}; since in Java nearly all data is stored by reference, the Java approach to polymorphic data is to store pointers to arbitrary data and insert type-checked implicit casts at compile-time. 192 191 This process of \emph{type erasure} has the benefit of allowing a single instantiation of polymorphic code, but relies heavily on Java's object model and garbage collector. 193 192 To use this model, a more C-like language such as \CFA{} would be required to dynamically allocate internal storage for variables, track their lifetime, and properly clean them up afterward. 194 193 195 Cyclone\cite{Grossman06} is another language extending C, and also provides capabilities for polymorphic functions and existential types, similar to \CFA{}'s !forall! functions and generic types. 196 Cyclone existential types can include function pointers in a construct similar to a virtual function table, but these pointers must be explicitly initialized at some point in the code, which is tedious and error-prone compared to \CFA{}'s implicit assertion satisfaction. 197 Furthermore, Cyclone's polymorphic functions and types are restricted to abstraction over types with the same layout and calling convention as !void*!, \ie{} only pointer types and !int!. 198 In the \CFA{} terminology discussed in Section~\ref{generic-impl-sec}, all Cyclone polymorphism must be dtype-static. 199 While the Cyclone polymorphism design provides the efficiency benefits discussed in Section~\ref{dtype-static-sec} for dtype-static polymorphism, it is more restrictive than the more general model of \CFA{}. 200 201 Many other languages include some form of generic types. 202 As a brief survey, ML\cite{ML} was the first language to support parameteric polymorphism, but unlike \CFA{} does not support the use of assertions and traits to constrain type arguments. 203 Haskell\cite{Haskell10} combines ML-style polymorphism with the notion of type classes, similar to \CFA{} traits, but requiring an explicit association with their implementing types, unlike \CFA{}. 204 Objective-C\cite{obj-c-book} is an extension to C which has had some industrial success; however, it did not support type-checked generics until recently\cite{xcode7}, and it's garbage-collected, message-passing object-oriented model is a radical departure from C. 205 Go\cite{Go}, and Rust\cite{Rust} are modern compiled languages with abstraction features similar to \CFA{} traits, \emph{interfaces} in Go and \emph{traits} in Rust. 206 Go has implicit interface implementation and uses a ``fat pointer'' construct to pass polymorphic objects to functions, similar in principle to \CFA{}'s implicit forall paramters. 207 Go does not, however, allow user code to define generic types, restricting Go programmers to the small set of generic types defined by the compiler. 208 Rust has powerful abstractions for generic programming, including explicit implemenation of traits and options for both separately-compiled virtual dispatch and template-instantiated static dispatch in functions. 209 On the other hand, the safety guarantees of Rust's \emph{lifetime} abstraction and borrow checker impose a distinctly idiosyncratic programming style and steep learning curve; \CFA{}, with its more modest safety features, allows direct ports of C code while maintaining the idiomatic style of the original source. 194 \TODO{Talk about Go, maybe Rust, Swift, etc. as well; specifically mention ``fat pointer'' polymorphism} 195 196 \TODO{Talk about Cyclone as well, and why my generics are more powerful} 210 197 211 198 \subsection{\CFA{} Generics} … … 225 212 226 213 In this example, !with_len! is defined at the same scope as !pair!, but it could be called from any context that can see the definition of !pair! and a declaration of !with_len!. 227 If its return type was !pair(const char*, int)*!, callers of !with_len! would only need the declaration !forall(otype R, otype S) struct pair ! to call it, in accordance with the usual C rules for opaque types.214 If its return type was !pair(const char*, int)*!, callers of !with_len! would only need the declaration !forall(otype R, otype S) struct pair;! to call it, in accordance with the usual C rules for opaque types. 228 215 229 216 !with_len! is itself a monomorphic function, returning a type that is structurally identical to !struct { const char* first; int second; }!, and as such could be called from C given an appropriate redeclaration and demangling flags. … … 247 234 \end{cfa} 248 235 249 \CFA{} generic types also support the type constraints from !forall! functions. 250 For example, the following declaration of a sorted set type ensures that the set key implements equality and relational comparison: 251 252 \begin{cfa} 253 forall(otype Key | { int ?==?(Key, Key); int ?<?(Key, Key); }) struct sorted_set; 254 \end{cfa} 255 256 These constraints are implemented by applying equivalent constraints to the compiler-generated constructors for this type. 257 258 \section{Implementation} \label{generic-impl-sec} 259 260 The ability to use generic types in polymorphic contexts means that the \CFA{} implementation in \CFACC{} must support a mechanism for accessing fields of generic types dynamically at runtime. 261 While \CFACC{} could in principle use this same mechanism for accessing fields of all generic types, such an approach would throw away compiler knowledge of static types and impose an unnecessary runtime cost, limiting the utility of the generic type design. 262 Instead, my design for generic type support in \CFACC{} distinguishes between \emph{concrete} generic types that have a fixed memory layout regardless of type parameters and \emph{dynamic} generic types that may vary in memory layout depending on their type parameters. 263 A \emph{dtype-static} type has polymorphic parameters but is still concrete. 264 Polymorphic pointers are an example of dtype-static types; given some type variable !T!, T is a polymorphic type, but !T*! has a fixed size and can therefore be represented by a !void*! in code generation. 265 In particular, generic types where all parameters are un-!sized! (\ie{} they do not conform to the built-in !sized! trait because the compiler does not know their size and alignment) are always concrete, as there is no possibility for their layout to vary based on type parameters of unknown size and alignment. 266 More precisely, a type is concrete if and only if all of its !sized! type parameters are concrete, and a concrete type is dtype-static if any of its type parameters are (possibly recursively) polymorphic. 267 To illustrate, the following code using the !pair! type from above \TODO{test this} has each use of !pair! commented with its class: 268 269 \begin{cfa} 270 //dynamic, layout varies based on T 271 forall(otype T) T value( pair(const char*, T) p ) { return p.second; } 272 273 // dtype-static, F* and T* are concrete but recursively polymorphic 274 forall(dtype F, otype T) T value( pair(F*, T*) ) { return *p.second; } 275 276 pair(const char*, int) p = {"magic", 42}; $\C[2.5in]{// concrete}$ 277 int i = value(p); 278 pair(void*, int*) q = {0, &p.second}; $\C[2.5in]{// concrete}$ 279 i = value(q); 280 double d = 1.0; 281 pair(double*, double*) r = {&d, &d}; $\C[2.5in]{// concrete}$ 282 d = value(r); 283 \end{cfa} 284 285 \subsection{Concrete Generic Types} 286 287 The \CFACC{} translator template expands concrete generic types into new structure types, affording maximal inlining. 288 To enable interoperation among equivalent instantiations of a generic type, \CFACC{} saves the set of instantiations currently in scope and reuses the generated structure declarations where appropriate. 289 In particular, tuple types are implemented as a single compiler-generated generic type definition per tuple arity, and can be instantiated and reused according to the usual rules for generic types. 290 A function declaration that accepts or returns a concrete generic type produces a declaration for the instantiated structure in the same scope, which all callers may reuse. 291 As an example, the concrete instantiation for !pair(const char*, int)! is\footnote{This omits the field name mangling performed by \CFACC{} for overloading purposes.\label{mangle-foot}} 292 293 \begin{cfa} 294 struct _pair_conc0 { const char * first; int second; }; 295 \end{cfa} 296 297 A concrete generic type with dtype-static parameters is also expanded to a structure type, but this type is used for all matching instantiations. 298 In the example above, the !pair(F*, T*)! parameter to !value! is such a type; its expansion is below\footref{mangle-foot}, and it is used as the type of the variables !q! and !r! as well, with casts for member access where appropriate. 299 300 \begin{cfa} 301 struct _pair_conc1 { void* first; void* second; }; 302 \end{cfa} 303 304 \subsection{Dynamic Generic Types} 305 306 In addition to this efficient implementation of concrete generic types, \CFA{} also offers flexibility with powerful support for dynamic generic types. 307 In the pre-existing compiler design, !otype! (and all !sized!) type parameters come with implicit size and alignment parameters provided by the caller. 308 The design for generic types presented here adds an \emph{offset array} containing structure-member offsets for dynamic generic !struct! types. 309 A dynamic generic !union! needs no such offset array, as all members are at offset 0, but size and alignment are still necessary. 310 Access to members of a dynamic structure is provided at runtime via base displacement addressing the structure pointer and the member offset (similar to the !offsetof! macro), moving a compile-time offset calculation to runtime. 311 312 the offset arrays are statically generated where possible. 313 If a dynamic generic type is passed or returned by value from a polymorphic function, \CFACC{} can safely assume that the generic type is complete (\ie{} has a known layout) at any call site, and the offset array is passed from the caller; if the generic type is concrete at the call site, the elements of this offset array can even be statically generated using the C !offsetof! macro. 314 As an example, the body of the second !value! function above is implemented as 315 316 \begin{cfa} 317 _assign_T( _retval, p + _offsetof_pair[1] ); $\C[2in]{// return *p.second}$ 318 \end{cfa} 319 320 Here, !_assign_T! is passed in as an implicit parameter from !otype T! and takes two !T*! (!void*! in the generated code), a destination and a source, and !_retval! is the pointer to a caller-allocated buffer for the return value, the usual \CFA{} method to handle dynamically-sized return types. 321 !_offsetof_pair! is the offset array passed into !value!; this array is generated at the call site as 322 323 \begin{cfa} 324 size_t _offsetof_pair[] = {offsetof(_pair_conc0, first), offsetof(_pair_conc0, second)}; 325 \end{cfa} 326 327 \subsubsection{Layout Functions} 328 329 In some cases, the offset arrays cannot be statically generated. 330 For instance, modularity is generally provided in C by including an opaque forward declaration of a structure and associated accessor and mutator functions in a header file, with the actual implementations in a separately-compiled \texttt{.c} file. 331 \CFA{} supports this pattern for generic types, implying that the caller of a polymorphic function may not know the actual layout or size of a dynamic generic type and only holds it by pointer. 332 \CFACC{} automatically generates \emph{layout functions} for cases where the size, alignment, and offset array of a generic struct cannot be passed into a function from that functions's caller. 333 These layout functions take as arguments pointers to size and alignment variables and a caller-allocated array of member offsets, as well as the size and alignment of all !sized! parameters to the generic structure. 334 Un!sized! parameters not passed because they are forbidden from being used in a context that affects layout by C's usual rules about incomplete types. 335 Similarly, the layout function can only safely be called from a context where the generic type definition is visible, because otherwise the caller will not know how large to allocate the array of member offsets. 336 337 The C standard does not specify a memory layout for structs, but the POSIX ABI for x86\cit{} does; this memory layout is common for C implementations, but is a platform-specific issue for porting \CFA{}. 338 This algorithm, sketched below in pseudo-\CFA{}, is a straightforward mapping of consecutive fields into the first properly-aligned offset in the !struct! layout; layout functions for !union! types omit the offset array and simply calculate the maximum size and alignment over all union variants. 339 Since \CFACC{} generates a distinct layout function for each type, constant-folding and loop unrolling are applied. 340 341 \begin{cfa} 342 forall(dtype T1, dtype T2, ... | sized(T1) | sized(T2) | ...) 343 void layout(size_t* size, size_t* align, size_t* offsets) { 344 // initialize values 345 *size = 0; *align = 1; 346 // set up members 347 for ( int i = 0; i < n_fields; ++i ) { 348 // pad to alignment 349 size_t off_align = *size % alignof(field[i]); 350 if ( off_align != 0 ) { *size += alignof(field[i]) - off_align; } 351 // mark member, increase size, and fix alignment 352 offsets[i] = *size; 353 *size += sizeof(field[i]); 354 if ( *align < alignof(field[i]) ) { *align = alignof(field[i]); } 355 } 356 // final padding to alignment 357 size_t off_align = *size % *align; 358 if ( off_align != 0 ) { *size += *align - off_align; } 359 } 360 \end{cfa} 361 362 Results of layout function calls are cached so that they are only computed once per type per function. 363 Layout functions also allow generic types to be used in a function definition without reflecting them in the function signature, an important implemenation-hiding constraint of the design. 364 For instance, a function that strips duplicate values from an unsorted !list(T)! likely has a reference to the list as its only explicit parameter, but uses some sort of !set(T)! internally to test for duplicate values. 365 This function could acquire the layout for !set(T)! by calling its layout function, providing as an argument the layout of !T! implicitly passed into that function. 366 367 Whether a type is concrete, dtype-static, or dynamic is decided solely on the basis of the type arguments and !forall! clause type paramters. 368 This design allows opaque forward declarations of generic types, \eg{} !forall(otype T) struct Box;! like in C, all uses of $Box(T)$ can be separately compiled, and callers from other translation units know the proper calling conventions to use. 369 In an alternate design where the definition of a structure type is included in deciding whether a generic type is dynamic or concrete, some further types may be recognized as dtype-static --- \eg{} !Box! could be defined with a body !{ T* p; }!, and would thus not depend on !T! for its layout. 370 However, the existence of an !otype! parameter !T! means that !Box! \emph{could} depend on !T! for its layout if this definition is not visible, and we judged preserving separate compilation (and the associated C compatibility) in the implemented design to be an acceptable trade-off. 371 372 \subsection{Applications of Dtype-static Types} \label{dtype-static-sec} 373 374 The reuse of dtype-static structure instantiations enables useful programming patterns at zero runtime cost. 375 The most important such pattern is using !forall(dtype T) T*! as a type-checked replacement for !void*!, \eg{} creating a lexicographic comparison function for pairs of pointers. 376 377 \begin{cfa} 378 forall(dtype T) 379 int lexcmp( pair(T*, T*)* a, pair(T*, T*)* b, int (*cmp)(T*, T*) ) { 380 int c = cmp( a->first, b->first ); 381 return c ? c : cmp( a->second, b->second ); 382 } 383 \end{cfa} 384 385 Since !pair(T*, T*)! is a concrete type, there are no implicit parameters passed to !lexcmp!; hence, the generated code is identical to a function written in standard C using !void*!, yet the \CFA{} version is type-checked to ensure members of both pairs and arguments to the comparison function match in type. 386 387 Another useful pattern enabled by reused dtype-static type instantiations is zero-cost \emph{tag structures}. 388 Sometimes, information is only used for type checking and can be omitted at runtime. 389 In the example below, !scalar! is a dtype-static type; hence, all uses have a single structure definition containing !unsigned long! and can share the same implementations of common functions like !?+?!. 390 These implementations may even be separately compiled, unlike \CC{} template functions. 391 However, the \CFA{} type checker ensures matching types are used by all calls to !?+?!, preventing nonsensical computations like adding a length to a volume. 392 393 \begin{cfa} 394 forall(dtype Unit) struct scalar { unsigned long value; }; 395 struct metres {}; 396 struct litres {}; 397 398 forall(dtype U) scalar(U) ?+?(scalar(U) a, scalar(U) b) { 399 return (scalar(U)){ a.value + b.value }; 400 } 401 402 scalar(metres) half_marathon = { 21098 }; 403 scalar(litres) pool = { 2500000 }; 404 scalar(metres) marathon = half_marathon + half_marathon; 405 `marathon + pool;` $\C[4in]{// compiler ERROR, mismatched types}$ 406 \end{cfa} 407 408 \section{Performance Experiments} \label{generic-performance-sec} 409 410 To validate the practicality of this generic type design I have conducted microbenchmark-based tests against a number of comparable code designs in C and \CC{}, first published in \cite{Moss18}. 411 Since all these languages are compiled with the same compiler backend and share a subset essentially comprising standard C, maximal-performance benchmarks should show little runtime variance, differing only in length and clarity of source code. 412 A more illustrative comparison measures the costs of idiomatic usage of each language's features. 413 The code below shows the \CFA{} benchmark tests for a generic stack based on a singly-linked list; the test suite is equivalent for the other other languages. 414 The experiment uses element types !int! and !pair(short, char)! and pushes $N = 40M$ elements on a generic stack, copies the stack, clears one of the stacks, and finds the maximum value in the other stack. 415 416 \begin{cfa} 417 int main() { 418 int max = 0, val = 42; 419 stack( int ) si, ti; 420 421 REPEAT_TIMED( "push_int", N, push( si, val ); ) 422 TIMED( "copy_int", ti{ si }; ) 423 TIMED( "clear_int", clear( si ); ) 424 REPEAT_TIMED( "pop_int", N, int x = pop( ti ); if ( x > max ) max = x; ) 425 426 pair( short, char ) max = { 0h, '\0' }, val = { 42h, 'a' }; 427 stack( pair( short, char ) ) sp, tp; 428 429 REPEAT_TIMED( "push_pair", N, push( sp, val ); ) 430 TIMED( "copy_pair", tp{ sp }; ) 431 TIMED( "clear_pair", clear( sp ); ) 432 REPEAT_TIMED( "pop_pair", N, pair(short, char) x = pop( tp ); 433 if ( x > max ) max = x; ) 434 } 435 \end{cfa} 436 437 The four versions of the benchmark implemented are C with !void*!-based polymorphism, \CFA{} with parameteric polymorphism, \CC{} with templates, and \CC{} using only class inheritance for polymorphism, denoted \CCV{}. 438 The \CCV{} variant illustrates an alternative object-oriented idiom where all objects inherit from a base !object! class, mimicking a Java-like interface; in particular, runtime checks are necessary to safely downcast objects. 439 The most notable difference among the implementations is the memory layout of generic types: \CFA{} and \CC{} inline the stack and pair elements into corresponding list and pair nodes, while C and \CCV{} lack such capability and, instead, must store generic objects via pointers to separately allocated objects. 440 Note that the C benchmark uses unchecked casts as C has no runtime mechanism to perform such checks, whereas \CFA{} and \CC{} provide type safety statically. 441 442 Figure~\ref{generic-eval-fig} and Table~\ref{generic-eval-table} show the results of running the described benchmark. 443 The graph plots the median of five consecutive runs of each program, with an initial warm-up run omitted. 444 All code is compiled at \texttt{-O2} by gcc or g++ 6.4.0, with all \CC{} code compiled as \CCfourteen{}. 445 The benchmarks are run on an Ubuntu 16.04 workstation with 16 GB of RAM and a 6-core AMD FX-6300 CPU with 3.5 GHz maximum clock frequency. 446 I conjecture that these results scale across most uses of generic types, given the constant underlying polymorphism implementation. 447 448 \begin{figure} 449 \centering 450 \input{generic-timing} 451 \caption{Benchmark timing results (smaller is better)} \label{generic-eval-fig} 452 \end{figure} 453 454 \begin{table} 455 \caption{Properties of benchmark code} \label{generic-eval-table} 456 \centering 457 \newcommand{\CT}[1]{\multicolumn{1}{c}{#1}} 458 \begin{tabular}{lrrrr} 459 & \CT{C} & \CT{\CFA} & \CT{\CC} & \CT{\CCV} \\ 460 maximum memory usage (MB) & 10\,001 & 2\,502 & 2\,503 & 11\,253 \\ 461 source code size (lines) & 201 & 191 & 125 & 294 \\ 462 redundant type annotations (lines) & 27 & 0 & 2 & 16 \\ 463 binary size (KB) & 14 & 257 & 14 & 37 \\ 464 \end{tabular} 465 \end{table} 466 467 The C and \CCV{} variants are generally the slowest and have the largest memory footprint, due to their less-efficient memory layout and the pointer indirection necessary to implement generic types in those languages; this inefficiency is exacerbated by the second level of generic types in the pair benchmarks. 468 By contrast, the \CFA{} and \CC{} variants run in roughly equivalent time for both the integer and pair because of the equivalent storage layout, with the inlined libraries (\ie{} no separate compilation) and greater maturity of the \CC{} compiler contributing to its lead. 469 \CCV{} is slower than C largely due to the cost of runtime type checking of downcasts (implemented with !dynamic_cast!); the outlier for \CFA{}, pop !pair!, results from the complexity of the generated-C polymorphic code. 470 The gcc compiler is unable to optimize some dead code and condense nested calls; a compiler designed for \CFA{} could more easily perform these optimizations. 471 Finally, the binary size for \CFA{} is larger because of static linking with \CFA{} libraries. 472 473 \CFA{} is also competitive in terms of source code size, measured as a proxy for programmer effort. 474 The line counts in Table~\ref{generic-eval-table} include implementations of !pair! and !stack! types for all four languages for purposes of direct comparison, although it should be noted that \CFA{} and \CC{} have prewritten data structures in their standard libraries that programmers would generally use instead. 475 Use of these standard library types has minimal impact on the performance benchmarks, but shrinks the \CFA{} and \CC{} code to 39 and 42 lines, respectively. 476 The difference between the \CFA{} and \CC{} line counts is primarily declaration duplication to implement separate compilation; a header-only \CFA{} library is similar in length to the \CC{} version. 477 On the other hand, due to the language shortcomings mentioned at the beginning of the chapter, C does not have a generic collections library in its standard distribution, resulting in frequent reimplementation of such collection types by C programmers. 478 \CCV{} does not use the \CC{} standard template library by construction, and, in fact, includes the definition of !object! and wrapper classes for !char!, !short!, and !int! in its line count, which inflates this count somewhat, as an actual object-oriented language would include these in the standard library. 479 I justify the given line count by noting that many object-oriented languages do not allow implementing new interfaces on library types without subclassing or wrapper types, which may be similarly verbose. 480 481 Line count is a fairly rough measure of code complexity; another important factor is how much type information the programmer must specify manually, especially where that information is not type-checked. 482 Such unchecked type information produces a heavier documentation burden and increased potential for runtime bugs and is much less common in \CFA{} than C, with its manually specified function pointer arguments and format codes, or \CCV{}, with its extensive use of un-type-checked downcasts, \eg{} !object! to !integer! when popping a stack. 483 To quantify this manual typing, the ``redundant type annotations'' line in Table~\ref{generic-eval-table} counts the number of lines on which the known type of a variable is respecified, either as a format specifier, explicit downcast, type-specific function, or by name in a !sizeof!, !struct! literal, or !new! expression. 484 The \CC{} benchmark uses two redundant type annotations to create new stack nodes, whereas the C and \CCV{} benchmarks have several such annotations spread throughout their code. 485 The \CFA{} benchmark is able to eliminate \emph{all} redundant type annotations through use of the return-type polymorphic !alloc! function in the \CFA{} standard library. 236 \section{Implementation} 237 238 % forall constraints on struct/union constrain default constructor (TODO check with Rob) 239 240 % TODO discuss layout function algorithm, application to separate compilation 241 % TODO put a static const field in for _n_fields for each generic, describe utility for separate compilation (actually no, you need to be able to see the type for it to be sized) 242 243 % mention that tuples are implemented on top of a per-arity generic type 244 245 \section{Performance Experiments} 246 247 % TODO pull benchmarks from Moss et al. 486 248 487 249 \section{Future Work} 488 250 489 The generic types design presented here is already sufficiently expressive to implement a variety of useful library types. 490 However, some other features based on this design could further improve \CFA{}. 491 492 The most pressing addition is the ability to have non-type generic parameters. 493 C already supports fixed-length array types, \eg{} !int[10]!; these types are essentially generic types with unsigned integer parameters, and allowing \CFA{} users the capability to build similar types is a requested feature. 494 More exotically, the ability to have these non-type parameters depend on dynamic runtime values rather than static compile-time constants opens up interesting opportunities for type-checking problematic code patterns. 495 For example, if a collection iterator was parameterized over the pointer to the collection it was drawn from, then a sufficiently powerful static analysis pass could ensure that that iterator was only used for that collection, eliminating one source of hard-to-find bugs. 496 497 The implementation mechanisms behind this generic types design can also be used to add new features to \CFA{}. 498 One such potential feature would be to add \emph{field assertions} to the existing function and variable assertions on polymorphic type variables. 499 Implementation of these field assertions would be based on the same code that supports member access by dynamic offset calculation for dynamic generic types. 500 Simulating field access can already be done more flexibly in \CFA{} by declaring a trait containing an accessor function to be called from polymorphic code, but these accessor functions impose some overhead both to write and call, and directly providing field access via an implicit offset parameter would be both more concise and more efficient. 501 Of course, there are language design trade-offs to such an approach, notably that providing the two similar features of field and function assertions would impose a burden of choice on programmers writing traits, with field assertions more efficient, but function assertions more general; given this open design question we have deferred a decision on field assertions until we have more experience using \CFA{}. 502 If field assertions are included in the language, a natural extension would be to provide a structural inheritance mechanism for every !struct! type that simply turns the list of !struct! fields into a list of field assertions, allowing monomorphic functions over that type to be generalized to polymorphic functions over other similar types with added or reordered fields. 503 \CFA{} could also support a packed or otherwise size-optimized representation for generic types based on a similar mechanism --- the layout function would need to be re-written, but nothing in the use of the offset arrays implies that the field offsets need be monotonically increasing. 504 505 With respect to the broader \CFA{} polymorphism design, the experimental results in Section~\ref{generic-performance-sec} demonstrate that though the runtime impact of \CFA{}'s dynamic virtual dispatch is low, it is not as low as the static dispatch of \CC{} template inlining. 506 However, rather than subject all \CFA{} users to the compile-time costs of ubiquitous template expansion, we are considering more targeted mechanisms for performance-sensitive code. 507 Two promising approaches are are an !inline! annotation at polymorphic function call sites to create a template specialization of the function (provided the code is visible) or placing a different !inline! annotation on polymorphic function definitions to instantiate a specialized version of the function for some set of types. 508 These approaches are not mutually exclusive and allow performance optimizations to be applied only when necessary, without suffering global code bloat. 509 In general, the \CFA{} team believes that separate compilation works well with loaded hardware caches by producing smaller code, which may offset the benefit of larger inlined code. 251 % mention future work adding non-type generic parameters, like ints 252 253 % taking advantage of generic layout functions to provide field assertions in forall qualifiers 254 255 % mention packed generic layouts (significantly more complex layout function, but possible) -
doc/theses/aaron_moss_PhD/phd/introduction.tex
r95b8aa7 rff5caaf 5 5 6 6 \begin{table}[h] 7 \caption[TIOBE index over time]{Current top 5 places in the TIOBE index averaged over years} \label{tiobe-table} 7 \label{tiobe-table} 8 \caption[TIOBE index over time]{Current top 5 places in the TIOBE index averaged over years} 8 9 9 10 \centering -
doc/theses/aaron_moss_PhD/phd/macros.tex
r95b8aa7 rff5caaf 12 12 \newcommand{\CCseventeen}{\textrm{C}\kern-.1em\hbox{+\kern-.25em+}17} % C++17 symbolic name 13 13 \newcommand{\CCtwenty}{\textrm{C}\kern-.1em\hbox{+\kern-.25em+}20} % C++20 symbolic name 14 \newcommand{\CCV}{\rm C\kern-.1em\hbox{+\kern-.25em+}obj} % C++ virtual symbolic name15 14 \newcommand{\Csharp}{C\raisebox{-0.7ex}{\Large$^\sharp$}} % C# symbolic name 16 15 … … 20 19 \newcommand{\etal}{\textit{et~al.}} 21 20 22 \newcommand{\myset}[1]{\left\{#1\right\}}23 24 21 \newcommand{\TODO}[1]{\textbf{TODO:} \textit{#1}} 25 22 \newcommand{\cit}{\textsuperscript{[citation needed]}} -
doc/theses/aaron_moss_PhD/phd/thesis.tex
r95b8aa7 rff5caaf 21 21 22 22 \usepackage{amsmath,amssymb,amstext} % Lots of math symbols and environments 23 % \usepackage[pdftex]{graphicx} % For including graphics N.B. pdftex graphics driver 24 \usepackage{graphicx} 25 26 \usepackage{amsthm} % for theorem environment 27 \newtheorem{theorem}{Theorem} 28 29 \usepackage{footmisc} % for double refs to the same footnote 23 \usepackage[pdftex]{graphicx} % For including graphics N.B. pdftex graphics driver 30 24 31 25 % Hyperlinks make it very easy to navigate an electronic document. … … 34 28 % Use the "hyperref" package 35 29 % N.B. HYPERREF MUST BE THE LAST PACKAGE LOADED; ADD ADDITIONAL PKGS ABOVE 36 %\usepackage[pdftex,pagebackref=false]{hyperref} % with basic options 37 \usepackage[pagebackref=false]{hyperref} 30 \usepackage[pdftex,pagebackref=false]{hyperref} % with basic options 38 31 % N.B. pagebackref=true provides links back from the References to the body text. This can cause trouble for printing. 39 32 … … 127 120 \input{background} 128 121 \input{generic-types} 122 \input{type-environment} 129 123 \input{resolution-heuristics} 130 \input{type-environment}131 124 \input{conclusion} 132 125 -
doc/theses/aaron_moss_PhD/phd/type-environment.tex
r95b8aa7 rff5caaf 2 2 \label{env-chap} 3 3 4 One key data structure for expression resolution is the \emph{type environment}. 5 As discussed in Chapter~\ref{resolution-chap}, being able to efficiently determine which type variables are bound to which concrete types or whether two type environments are compatible is a core requirement of the resolution algorithm. 6 Furthermore, expression resolution involves a search through many related possible solutions, so being able to re-use shared subsets of type environment data and to switch between environments quickly is desirable for performance. 7 In this chapter I discuss and empirically compare a number of type environment data structure variants, including some novel variations on the union-find\cite{Galler64} data structure introduced in this thesis. 8 9 \section{Definitions} \label{env-defn-sec} 10 11 For purposes of this chapter, a \emph{type environment} $T$ is a set of \emph{type classes} $\myset{T_1, T_2, \cdots, T_{|T|}}$. 12 Each type class $T_i$ contains a set of \emph{type variables} $\myset{v_{i,1}, v_{i,2}, \cdots, v_{i,|T_i|}}$; note that the sets of variables contained in two distinct classes in the same environment must be disjoint. 13 Each individual type class $T_i$ may also be associated with a \emph{bound}, $b_i$; this bound contains the \emph{bound type} which the variables in the type class are replaced with, but also includes other information in \CFACC{}, including whether type conversions are permissible on the bound type and what sort of type variables are contained in the class (data types, function types, or variadic tuples). 14 15 \begin{table} 16 \caption[Type environment operation summary]{Summary of type environment operations.} 17 \label{env-op-table} 18 \centering 19 \begin{tabular}{r@{\hskip 0.25em}ll} 20 $find(T, v_{i,j})$ & $\rightarrow T_i | \bot$ & Locate class for variable \\ 21 $report(T_i)$ & $\rightarrow \{ v_{i,j} \cdots \}$ & List variables for class \\ 22 $bound(T_i)$ & $\rightarrow b_i | \bot$ & Get bound for class \\ 23 $insert(v_{i,1})$ & & New single-variable class \\ 24 $add(T_i, v_{i,j})$ & & Add variable to class \\ 25 $bind(T_i, b_i)$ & & Set or update class bound \\ 26 $unify(T, T_i, T_j)$ & $\rightarrow \top | \bot$ & Combine two type classes \\ 27 $split(T, T_i)$ & $\rightarrow T'$ & Revert the last $unify$ operation on $T_i$ \\ 28 $combine(T, T')$ & $\rightarrow \top | \bot$ & Merge two environments \\ 29 $save(T)$ & $\rightarrow H$ & Get handle for current state \\ 30 $backtrack(T, H)$ & & Return to handle state 31 \end{tabular} 32 \end{table} 33 34 Given this basic structure, type environments in \CFACC{} need to support eleven basic operations, summarized in Table~\ref{env-op-table}. 35 The first seven operations are straightforward queries and updates on these data structures: 36 The lookup operation $find(T, v_{i,j})$ produces $T_i$, the type class in $T$ which contains variable $v_{i,j}$, or an invalid sentinel value for no such class. 37 The other two query operations act on type classes, where $report(T_i)$ produces the set $\myset{v_{i,1}, v_{i,2}, \cdots, v_{i,|T_i|}}$ of all type variables in a class $T_i$ and $bound(T_i)$ produces the bound $b_i$ of that class, or a sentinel indicating no bound is set. 38 39 The update operation $insert(T, v_{i,1})$ creates a new type class $T_i$ in $T$ that contains only the variable $v_{i,1}$ and no bound; due to the disjointness property $v_{i,1}$ cannot belong to any other type class in $T$. 40 The $add(T_i, v_{i,j})$ operation adds a new type variable $v_{i,j}$ to class $T_i$; again, $v_{i,j}$ cannot exist elsewhere in $T$. 41 $bind(T_i, b_i)$ mutates the bound for a type class, setting or updating the current bound. 42 43 The $unify$ operation is the fundamental non-trivial operation a type environment data structure must support. 44 $unify(T, T_i, T_j)$ merges a type class $T_j$ into another $T_i$, producing a failure result and leaving $T$ in an invalid state if this merge fails. 45 It is always possible to unify the type variables of both classes by simply taking the union of both sets; given the disjointness property, no checks for set containment are required, and the variable sets can simply be concatenated if supported by the underlying data structure. 46 $unify$ depends on an internal $unifyBound$ operation which may fail. 47 In \CFACC{}, $unifyBound(b_i, b_j) \rightarrow b'_i|\bot$ checks that the type classes contain the same sort of variable, takes the tighter of the two conversion permissions, and checks if the bound types can be unified. 48 If the bound types cannot be unified (\eg{} !struct A! with !int*!), then $unifyBound$ fails, while other combinations of bound types may result in recursive calls. 49 For instance, unifying !R*! with !S*! for type variables !R! and !S! will result in a call to $unify(T, find($!R!$), find($!S!$))$, while unifying !R*! with !int*! will result in a call to $unifyBound$ on !int! and the bound type of the class containing !R!. 50 As such, a call to $unify(T, T_i, T_j)$ may touch every type class in $T$, not just $T_i$ and $T_j$, collapsing the entirety of $T$ into a single type class in extreme cases. 51 For more information on \CFA{} unification, see \cite{Bilson03}. 52 The inverse of $unify$ is $split(T, T_i)$, which produces a new environment $T'$ which is the same as $T$ except that $T_i$ has been replaced by two classes corresponding to the arguments to the previous call to $unify$ on $T_i$. 53 If there has been no call to $unify$ on $T_i$ (\ie{} $T_i$ is a single-element class) $T_i$ is absent in $T'$. 54 55 Given the nature of the expression resolution problem as backtracking search, caching and concurrency are both useful tools to decrease runtime. 56 However, both of these approaches may produce multiple distinct descendants of the same initial type environment, which have possibly been mutated in incompatible ways. 57 As such, to effectively employ either concurrency or caching, the type environment data structure must support an efficient method to check if two type environments are compatible and merge them if so. 58 $combine(T,T')$ attempts to merge an environment $T'$ into another environment $T$, producing $\top$ if successful or leaving $T$ in an invalid state and producing $\bot$ otherwise. 59 The invalid state of $T$ on failure is not important, given that a combination failure will result in the resolution algorithm backtracking to a different environment. 60 $combine$ proceeds by calls to $insert$, $add$, and $unify$ as needed, and can be roughly thought of as calling $unify$ on every pair of classes in $T$ that have variables $v'_{i,j}$ and $v'_{i,k}$ in the same class $T'_i$ in $T'$. 61 Like $unify$, $combine$ can always find a mutually-consistent partition of type variables into classes (in the extreme case, all type variables from $T$ and $T'$ in a single type class), but may fail due to inconsistent bounds on merged type classes. 62 63 Finally, the backtracking access patterns of the compiler can be exploited to reduce memory usage or runtime through use of an appropriately designed data structure. 64 The set of mutations to a type environment across the execution of the resolution algorithm produce an implicit tree of related environments, and the backtracking search typically focuses only on one leaf of the tree at once, or at most a small number of closely-related nodes as arguments to $combine$. 65 As such, the ability to save and restore particular type environment states is useful, and supported by the $save(T) \rightarrow H$ and $backtrack(T, H)$ operations, which produce a handle for the current environment state and mutate an environment back to a previous state, respectively. 66 These operations can be naively implemented by a deep copy of $T$ into $H$ and vice versa, but have more efficient implementations in persistency-aware data structures. 67 68 \section{Approaches} 69 70 \subsection{Na\"{\i}ve} 71 72 The type environment data structure used in Bilson's\cite{Bilson03} original implementation of \CFACC{} is a straightforward translation of the definitions in Section~\ref{env-defn-sec} to \CC{} code; a !TypeEnvironment! contains a list of !EqvClass! type equivalence classes, each of which contains the type bound information and a tree-based sorted set of type variables. 73 This approach has the benefit of being easy to understand and not imposing life-cycle or inheritance constraints on its use, but, as can be seen in Table~\ref{env-bounds-table}, does not support many of the desired operations with any particular efficiency. 74 Some variations on this structure may improve performance somewhat; for instance, replacing the !EqvClass! variable storage with a hash-based set would reduce search and update times from $O(\log n)$ to amortized $O(1)$, while adding an index for the type variables in the entire environment would remove the need to check each type class individually to maintain the disjointness property. 75 These improvements do not change the fundamental issues with this data structure, however. 76 77 \subsection{Incremental Inheritance} 78 79 One more invasive modification to this data structure which I investigated is to support swifter combinations of closely-related environments in the backtracking tree by storing a reference to a \emph{parent} environment within each environment, and having that environment only store type classes which have been modified with respect to the parent. 80 This approach provides constant-time copying of environments, as a new environment simply consists of an empty list of type classes and a reference to its (logically identical) parent; since many type environments are no different than their parent, this speeds backtracking in this common case. 81 Since all mutations made to a child environment are by definition compatible with the parent environment, two descendants of a common ancestor environment can be combined by iteratively combining the changes made in one environment then that environment's parent until the common ancestor is reached, again re-using storage and reducing computation in many cases. 82 83 For this environment I also employed a lazily-generated index of type variables to their containing class, which could be in either the current environment or an ancestor. 84 Any mutation of a type class in an ancestor environment would cause that class to be copied into the current environment before mutation, as well as added to the index, ensuring that all local changes to the type environment are listed in its index. 85 However, not adding type variables to the index until lookup or mutation preserves the constant-time environment copy operation in the common case in which the copy is not mutated from its parent during its life-cycle. 86 87 This approach imposes some performance penalty on $combine$ if related environments are not properly linked together, as the entire environment needs to be combined rather than just the diff, but is correct as long as the ``null parent'' base case is properly handled. 88 The life-cycle issues are somewhat more complex, as many environments may descend from a common parent, and all of these need their parent to stay alive for purposes of lookup. 89 These issues can be solved by ``flattening'' parent nodes into their children before the parents leave scope, but given the tree structure of the inheritance graph it is more straightforward to store the parent nodes in reference-counted or otherwise automatically garbage-collected heap storage. 90 91 \subsection{Union-Find} \label{env-union-find-approach} 92 93 Given the nature of the classes of type variables as disjoint sets, another natural approach to implementing a type environment is the union-find disjoint set data structure\cite{Galler64}. 94 Union-find efficiently implements two operations over a partition of a collection of elements into disjoint sets; $find(x)$ locates the \emph{representative} of $x$, the element which canonically names its set, while $union(r, s)$ merges two sets represented by $r$ and $s$, respectively. 95 The union-find data structure is based on providing each element with a reference to its parent element, such that the root of a tree of elements is the representative of the set of elements contained in the tree. 96 $find$ is then implemented by a search up to the parent, generally combined with a \emph{path compression} step that links nodes more directly to their ancestors to speed up subsequent searches. 97 $union$ involves making the representative of one set a child of the representative of the other, generally employing a rank- or size-based heuristic to ensure that the tree remains somewhat balanced. 98 If both path compression and a balancing heuristic are employed, both $union$ and $find$ run in amortized $O(\alpha(n))$ worst-case time; this bound by the inverse Ackermann function is a small constant for all practical values of $n$. 99 100 The union-find $find$ and $union$ operations have obvious applicability to the $find$ and $unify$ type environment operations in Table~\ref{env-op-table}, but the union-find data structure must be augmented to fully implement the type environment operations. 101 In particular, the type class bound cannot be easily included in the union-find data structure, as the requirement to make it the class representative breaks the balancing properties of $union$, and requires too-close integration of the type environment $unifyBound$ internal operation. 102 This issue can be solved by including a side map from class representatives to the type class bound. 103 If placeholder values are inserted in this map for type classes without bounds than this also has the useful property that the key set of the map provides an easily obtainable list of all the class representatives, a list which cannot be derived from the union-find data structure without a linear search for class representatives through all elements. 104 105 \subsection{Union-Find with Classes} \label{env-union-find-classes-approach} 106 107 Another type environment operation not supported directly by the union-find data structure is $report$, which lists the type variables in a given class, and similarly $split$, which reverts a $unify$ operation. 108 Since the union-find data structure stores only links from children to parents and not vice-versa, there is no way to reconstruct a class from one of its elements without a linear search over the entire data structure, with $find$ called on each element to check its membership in the class. 109 The situation is even worse for the $split$ operation, which would require extra information to maintain the order that each child was added to its parent node. 110 Unfortunately, the literature\cite{Tarjan84,Galil91,Patwary10} on union-find does not present a way to keep references to children without breaking the asymptotic time bounds of the algorithm; I have discovered a method to do so which, despite its simplicity, seems to be novel. 111 112 \TODO{port figure from slideshow} 113 114 The core idea of this ``union-find with classes'' data structure and algorithm is to keep the members of each class stored in a circularly-linked list. 115 Aho, Hopcroft, and Ullman also include a circularly-linked list in their 1974 textbook~\cite{Aho74}. 116 However, the algorithm presented by Aho~\etal{} has an entirely flat class hierarchy, where all elements are direct children of the representative, giving constant-time $find$ at the cost of linear-time $union$ operations. 117 In my version, the list data structure does not affect the layout of the union-find tree, maintaining the same asymptotic bounds as union-find. 118 In more detail, each element is given a !next! pointer to another element in the same class; this !next! pointer initially points to the element itself. 119 When two classes are unified, the !next! pointers of the representatives of those classes are swapped, splicing the two circularly-linked lists together. 120 Importantly, though this approach requires an extra pointer per element, it does maintain the linear space bound of union-find, and because it only requires updating the two root nodes in $union$ it does not asymptotically increase runtime either. 121 The basic approach is compatible with all path-compression techniques, and allows the members of any class to be retrieved in time linear in the size of the class simply by following the !next! pointers from any element. 122 123 If the path-compression optimization is abandoned, union-find with classes also encodes a reversible history of all the $union$ operations applied to a given class. 124 Theorem~\ref{env-reverse-thm} demonstrates that the !next! pointer of the representative of a class always points to a leaf from the last-added subtree. 125 This property is sufficient to reverse the most-recent $union$ operation by finding the ancestor of that leaf that is an immediate child of the representative, breaking its parent link, and swapping the !next! pointers back\footnote{Union-by-size may be a more appropriate approach than union-by-rank in this instance, as adding two known sizes is a reversible operation, but the rank increment operation cannot be reliably reversed.}. 126 Once the $union$ operation has been reversed, Theorem~\ref{env-reverse-thm} still holds for the reduced class, and the process can be repeated recursively until the entire set is split into its component elements. 127 128 \begin{theorem} \label{env-reverse-thm} 129 The !next! pointer of a class representative in the union-find with classes algorithm without path compression points to a leaf from the most-recently-added subtree. 130 \end{theorem} 131 132 \begin{proof} 133 By induction on the height of the tree. \\ 134 \emph{Base case:} A height 1 tree by definition includes only a single item. In such a case, the representative's !next! pointer points to itself by construction, and the representative is the most-recently-added (and only) leaf in the tree. \\ 135 \emph{Inductive case:} By construction, a tree $T$ of height greater than 1 has children of the root (representative) node that were representative nodes of classes merged by $union$. By definition, the most-recently-added subtree $T'$ has a smaller height than $T$, thus by the inductive hypothesis before the most-recent $union$ operation the !next! pointer of the root of $T'$ pointed to one of the leaf nodes of $T'$; by construction the !next! pointer of the root of $T$ points to this leaf after the $union$ operation. 136 \end{proof} 137 138 On its own, union-find, like the na\"{\i}ve approach, has no special constraints on life-cycle or inheritance, but it can be used as a building block in more sophisticated type environment data structures. 139 140 \subsection{Persistent Union-Find} 141 142 Given the backtracking nature of the resolution algorithm discussed in Section~\ref{env-defn-sec}, the abilities to quickly switch between related versions of a type environment and to de-duplicate shared data between environments are both assets to performance. 143 Conchon and Filli\^{a}tre~\cite{Conchon07} present a persistent union-find data structure based on the persistent array of Baker~\cite{Baker78,Baker91}. 144 145 \TODO{port figure from slideshow} 146 147 In Baker's persistent array, an array reference contains either a pointer to the array or a pointer to an \emph{edit node}; these edit nodes contain an array index, the value in that index, and another array reference pointing either to the array or a different edit node. 148 In this manner, a tree of edits is formed, rooted at the actual array. 149 Read from the actual array at the root can be performed in constant time, as with a non-persistent array. 150 The persistent array can be mutated in constant time by directly modifying the underlying array, then replacing its array reference with an edit node containing the mutated index, the previous value at that index, and a reference to the mutated array. If the current array reference is not the root, mutation consists simply of constructing a new edit node encoding the change and referring to the current array reference. 151 The mutation algorithm at the root is in some sense a special case of the key operation on persistent arrays, $reroot$. 152 153 A rerooting operation takes any array reference and makes it the root node of the array. 154 This is accomplished by tracing the path from some edit node to the root node of the array (always the underlying array), recursively applying the edits to the underlying array and replacing each edit node's successor with the inverse edit. 155 In this way, any previous state of the persistent array can be restored in time proportional to the number of edits to the current state of the array. 156 While $reroot$ does maintain the same value mapping in every version of the persistent array, the internal mutations it performs means that it is not thread-safe, and must be used behind a lock in a concurrent context. 157 Also, the root node with the actual array may in principle be anywhere in the tree, and does not provide information to report its leaf nodes, so some form of automatic garbage collection is generally required for the data structure. 158 Since the graph of edit nodes is tree-structured, reference counting approaches suffice for garbage collection; Conchon and Filli\^{a}tre~\cite{Conchon07} also observe that if the only $reroot$ operations are for backtracking then the tail of inverse edit nodes may be elided, suggesting the possibility of stack-based memory management. 159 160 While Conchon and Filli\^{a}tre~\cite{Conchon07} implement their persistent union-find data structure over a universe of integer elements in the fixed range $[1,N]$, the type environment problem needs more flexibility. 161 In particular, an arbitrary number of type variables must be added to the environment. 162 As such, a persistent hash table is a more suitable structure than a persistent array, providing the same expected asymptotic time bounds while allowing a dynamic number of elements. 163 Besides replacing the underlying array with a hash table, the other major change in this approach is to replace the two types of array references, !Array! and !Edit!, with four node types, !Table!, !Edit!, !Add!, and !Remove!, where !Add! adds a new key-value pair, !Remove! removes a key, and !Edit! mutates an existing key-value pair. 164 In this variant of \CFACC{}, this persistent hash table is used as the side map discussed in Section~\ref{env-union-find-approach} for class bounds. 165 The actual union-find data structure is slightly modified from this approach, with a !Base! node containing the root union-find data structure, !Add! nodes adding new elements, !AddTo! nodes defining the union of two type classes, and !Remove! and !RemoveFrom! nodes as inverses of the previous two elements, for purposes of maintaining the edit list. 166 Making !AddTo! and !RemoveFrom! single nodes shortens the edit path for improved performance, while also providing semantic information missing from the raw array updates in Conchon and Filli\^{a}tre's data structure. 167 The single-node approach, does, however, break under most path-compression algorithms; !RemoveFrom! can be applied to the underlying data structure using the ``leaf of last union'' approach discussed in in Section~\ref{env-union-find-classes-approach}; this was judged an acceptable trade-off for the added semantic information and shortened paths. 168 169 Maintaining explicit information on $union$ operations in the persistent union-find edit tree in the form of !AddTo! and !RemoveFrom! nodes exposes a new option for combining type environments. 170 If the type environments are part of the same edit tree, one environment $T'$ can be combined with another $T$ by only testing the edits on the path from $T'$ to $T$ in both the persistent union-find data structure describing the classes and the persistent hash table containing the class bounds. 171 This is generally more efficient than testing the compatibility of all type classes in $T'$, as only those that are actually different than those in $T$ must be considered. 172 173 The procedure for $combine(T, T')$ based on edit paths is as follows: 174 The shared edit trees for classes and bindings are rerooted at $T$, and the path from $T'$ to $T$ is followed to create a list of actual edits. 175 By tracking the state of each element, redundant changes such as an !Edit! followed by an !Edit! can be reduced to their form in $T'$ by dropping the later (more like $T$) !Edit! for the same key; !Add! and !Remove! cancel similarly. 176 This procedure is repeated for both the class edit tree and the binding edit tree. 177 When the list of net changes to the environment has been produced, the additive changes are applied to $T$. 178 For example, if a type class exists in $T'$ but not $T$, the corresponding !Add! edit will be applied to $T$, but in the reverse situation the !Remove! edit will not be applied to $T$, as the intention is to produce a new environment representing the union of the two sets of type classes; similarly, !AddTo! edits are applied to unify type-classes in $T$ that are united in $T'$, but !RemoveFrom! edits that split type classes are not. 179 The new environment, $T''$ can always be constructed with a consistent partitioning of type variables; in the extreme case, all variables from both $T$ and $T'$ will be united in a single type class in $T''$. 180 Where $combine$ can fail is in unifying the bound types; if any class in $T'$ has a class bound which does not unify with the merged class in $T''$ than $combine$ fails. 181 182 \section{Analysis} 183 184 In this section I present asymptotic analyses of the various approaches to a type environment data structure discussed in the previous section. 185 186 \begin{table} 187 \caption[Type environment operation bounds]{Worst-case analysis of type environment operations. $n$ is the number of type classes, $m$ the maximum size of a type class, and $p$ the edit distance between two environments or a single environment and the empty environment; $u(n)$ captures the recursive cost of class unification.} 188 \label{env-bounds-table} 189 \centering 190 \begin{tabular}{rllll} 191 \hline 192 & \textbf{Na\"{\i}ve} & \textbf{Incremental} & \textbf{Union-Find} & \textbf{U-F with Classes} \\ 193 \hline 194 $find$ & $O(n)$ & $O(p)$ & $O(\alpha(m))$ & $O(\log m)$ \\ 195 $report$ & $O(m)$ & $O(m)$ & $O(n \log m)$ & $O(m)$ \\ 196 $bound$ & $O(1)$ & $O(1)$ & $O(1)$ & $O(1)$ \\ 197 $insert$ & $O(1)$ & $O(1)$ & $O(1)$ & $O(1)$ \\ 198 $add$ & $O(1)$ & $O(1)$ & $O(1)$ & $O(1)$ \\ 199 $bind$ & $O(1)$ & $O(1)$ & $O(1)$ & $O(1)$ \\ 200 $unify$ & $O(m + u(n))$ & $O(m + u(n))$ & $O(\log m + u(n))$ & $O(\log m + u(n))$ \\ 201 $split$ & --- & --- & --- & $O(\log m)$ \\ 202 $combine$ & $O(nm \cdot u(n))$ & $O(pm \cdot u(n))$ & $O(n \log m \cdot u(n))$ & $O(p \log m \cdot u(n))$ \\ 203 $save$ & $O(nm)$ & $O(1)$ & $O(nm)$ & $O(1)$ \\ 204 $backtrack$ & $O(nm)$ & $O(pm)$ & $O(nm)$ & $O(p)$ \\ 205 \hline 206 \end{tabular} 207 \end{table} 208 209 % Future work: design multi-threaded version of C&F persistent map --- core idea is some sort of thread-boundary edit node 4 Talk about the type environment data structure. Pull from your presentation. -
doc/user/Makefile
r95b8aa7 rff5caaf 79 79 ## Define the default recipes. 80 80 81 ${Build} :81 ${Build}: 82 82 mkdir -p ${Build} 83 83 -
doc/user/user.tex
r95b8aa7 rff5caaf 11 11 %% Created On : Wed Apr 6 14:53:29 2016 12 12 %% Last Modified By : Peter A. Buhr 13 %% Last Modified On : Tue Dec 11 23:19:26201814 %% Update Count : 3 40013 %% Last Modified On : Fri Aug 31 07:54:50 2018 14 %% Update Count : 3396 15 15 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 16 16 … … 178 178 int main( void ) { 179 179 int x = 0, y = 1, z = 2; 180 ®sout | x | y | z ;®§\indexc{sout}§180 ®sout | x | y | z | endl;®§\indexc{sout}§ 181 181 } 182 182 \end{cfa} … … 513 513 Floating exponentiation\index{exponentiation!floating} is performed using \Index{logarithm}s\index{exponentiation!logarithm}, so the base cannot be negative. 514 514 \begin{cfa} 515 sout | 2 ®\® 8u | 4 ®\® 3u | -4 ®\® 3u | 4 ®\® -3 | -4 ®\® -3 | 4.0 ®\® 2.1 | (1.0f+2.0fi) ®\® (3.0f+2.0fi) ;515 sout | 2 ®\® 8u | 4 ®\® 3u | -4 ®\® 3u | 4 ®\® -3 | -4 ®\® -3 | 4.0 ®\® 2.1 | (1.0f+2.0fi) ®\® (3.0f+2.0fi) | endl; 516 516 256 64 -64 0.015625 -0.015625 18.3791736799526 0.264715-1.1922i 517 517 \end{cfa} … … 547 547 548 548 549 \subsection{Loop Control} 549 %\subsection{\texorpdfstring{\protect\lstinline@for@ Statement}{for Statement}} 550 \subsection{\texorpdfstring{\LstKeywordStyle{for} Statement}{for Statement}} 550 551 551 552 The ©for©/©while©/©do-while© loop-control allows empty or simplified ranges. … … 556 557 the down-to range ©-~=©\index{-~=@©-~=©} means inclusive range [N,M]. 557 558 ©0© is the implicit start value; 558 ©1© is the implicit increment value. 559 The up-to range uses ©+=© for increment; 560 the down-to range uses ©-=© for decrement. 559 ©1© is the implicit increment value for an up-to range and ©-1© for an implicit down-to range. 561 560 The loop index is polymorphic in the type of the start value or comparison value when start is implicitly ©0©. 562 561 \begin{cquote} 563 562 \begin{tabular}{@{}ll|l@{}} 564 \multicolumn{2}{c|}{ loopcontrol} & \multicolumn{1}{c}{output} \\563 \multicolumn{2}{c|}{for control} & \multicolumn{1}{c}{output} \\ 565 564 \hline 566 565 \begin{cfa} … … 572 571 for ( ®10® ) { sout | "A"; } 573 572 for ( ®1 ~= 10 ~ 2® ) { sout | "B"; } 574 for ( ®10 -~= 1 ~ 2® ) { sout | "C"; }573 for ( ®10 -~= 1 ~ -2® ) { sout | "C"; } 575 574 for ( ®0.5 ~ 5.5® ) { sout | "D"; } 576 575 for ( ®5.5 -~ 0.5® ) { sout | "E"; } 577 576 for ( ®i; 10® ) { sout | i; } 578 577 for ( ®i; 1 ~= 10 ~ 2® ) { sout | i; } 579 for ( ®i; 10 -~= 1 ~ 2® ) { sout | i; }578 for ( ®i; 10 -~= 1 ~ -2® ) { sout | i; } 580 579 for ( ®i; 0.5 ~ 5.5® ) { sout | i; } 581 580 for ( ®i; 5.5 -~ 0.5® ) { sout | i; } 582 581 for ( ®ui; 2u ~= 10u ~ 2u® ) { sout | ui; } 583 for ( ®ui; 10u -~= 2u ~ 2u® ) { sout | ui; } 584 enum { N = 10 }; 585 for ( ®N® ) { sout | "N"; } 586 for ( ®i; N® ) { sout | i; } 587 for ( ®i; N -~ 0® ) { sout | i; } 588 const int start = 3, comp = 10, inc = 2; 582 for ( ®ui; 10u -~= 2u ~ -2u® ) { sout | ui; } 583 int start = 3, comp = 10, inc = 2; 589 584 for ( ®i; start ~ comp ~ inc + 1® ) { sout | i; } 590 585 \end{cfa} 591 586 & 592 587 \begin{cfa} 593 sout | nl; 594 sout | nl; 595 sout | nl; 596 sout | "zero" | nl; 597 sout | nl; 598 sout | nl; 599 sout | nl; 600 sout | nl; 601 sout | nl; 602 sout | nl; 603 sout | nl; 604 sout | nl; 605 sout | nl; 606 sout | nl; 607 sout | nl; 608 sout | nl; 609 sout | nl | nl; 610 611 sout | nl; 612 sout | nl; 613 sout | nl | nl; 614 615 sout | nl; 588 sout | endl; 589 sout | endl; 590 sout | endl; 591 sout | endl; 592 sout | endl; 593 sout | endl; 594 sout | endl; 595 sout | endl; 596 sout | endl; 597 sout | endl; 598 sout | endl; 599 sout | endl; 600 sout | endl; 601 sout | endl; 602 sout | endl; 603 sout | endl; 604 sout | endl; 605 606 sout | endl; 616 607 \end{cfa} 617 608 & … … 620 611 empty 621 612 empty 622 zero 613 623 614 A 624 615 A A A A A A A A A A … … 634 625 2 4 6 8 10 635 626 10 8 6 4 2 636 637 N N N N N N N N N N638 0 1 2 3 4 5 6 7 8 9639 10 9 8 7 6 5 4 3 2 1640 627 641 628 3 6 9 … … 2459 2446 int bar( int p ) { 2460 2447 ®i® += 1; §\C{// dependent on local variable}§ 2461 sout | ®i® ;2448 sout | ®i® | endl; 2462 2449 } 2463 2450 return bar; §\C{// undefined because of local dependence}§ … … 2465 2452 int main() { 2466 2453 * [int]( int ) fp = foo(); §\C{// int (* fp)( int )}§ 2467 sout | fp( 3 ) ;2454 sout | fp( 3 ) | endl; 2468 2455 } 2469 2456 \end{cfa} … … 3231 3218 \begin{cfa} 3232 3219 int x = 1, y = 2, z = 3; 3233 sout | x ®|® y ®|® z ;3220 sout | x ®|® y ®|® z | endl; 3234 3221 \end{cfa} 3235 3222 & … … 3252 3239 \begin{cfa} 3253 3240 [int, [ int, int ] ] t1 = [ 1, [ 2, 3 ] ], t2 = [ 4, [ 5, 6 ] ]; 3254 sout | t1 | t2 ;§\C{// print tuples}§3241 sout | t1 | t2 | endl; §\C{// print tuples}§ 3255 3242 \end{cfa} 3256 3243 \begin{cfa}[showspaces=true,aboveskip=0pt] … … 3264 3251 & 3265 3252 \begin{cfa} 3266 sout | x * 3 | y + 1 | z << 2 | x == y | (x | y) | (x || y) | (x > z ? 1 : 2) ;3253 sout | x * 3 | y + 1 | z << 2 | x == y | (x | y) | (x || y) | (x > z ? 1 : 2) | endl; 3267 3254 \end{cfa} 3268 3255 \\ … … 3290 3277 A separator does not appear at the start or end of a line. 3291 3278 \begin{cfa}[belowskip=0pt] 3292 sout | 1 | 2 | 3 ;3279 sout | 1 | 2 | 3 | endl; 3293 3280 \end{cfa} 3294 3281 \begin{cfa}[showspaces=true,aboveskip=0pt,belowskip=0pt] … … 3299 3286 A separator does not appear before or after a character literal or variable. 3300 3287 \begin{cfa} 3301 sout | '1' | '2' | '3' ;3288 sout | '1' | '2' | '3' | endl; 3302 3289 123 3303 3290 \end{cfa} … … 3306 3293 A separator does not appear before or after a null (empty) C string. 3307 3294 \begin{cfa} 3308 sout | 1 | "" | 2 | "" | 3 ;3295 sout | 1 | "" | 2 | "" | 3 | endl; 3309 3296 123 3310 3297 \end{cfa} … … 3316 3303 \begin{cfa}[mathescape=off] 3317 3304 sout | "x (" | 1 | "x [" | 2 | "x {" | 3 | "x =" | 4 | "x $" | 5 | "x £" | 6 | "x ¥" 3318 | 7 | "x ¡" | 8 | "x ¿" | 9 | "x «" | 10 ;3305 | 7 | "x ¡" | 8 | "x ¿" | 9 | "x «" | 10 | endl; 3319 3306 \end{cfa} 3320 3307 %$ … … 3330 3317 \begin{cfa}[belowskip=0pt] 3331 3318 sout | 1 | ", x" | 2 | ". x" | 3 | "; x" | 4 | "! x" | 5 | "? x" | 6 | "% x" 3332 | 7 | "¢ x" | 8 | "» x" | 9 | ") x" | 10 | "] x" | 11 | "} x" ;3319 | 7 | "¢ x" | 8 | "» x" | 9 | ") x" | 10 | "] x" | 11 | "} x" | endl; 3333 3320 \end{cfa} 3334 3321 \begin{cfa}[basicstyle=\tt,showspaces=true,aboveskip=0pt,belowskip=0pt] … … 3340 3327 A seperator does not appear before or after a C string begining/ending with the \Index*{ASCII} quote or whitespace characters: \lstinline[basicstyle=\tt,showspaces=true]@`'": \t\v\f\r\n@ 3341 3328 \begin{cfa}[belowskip=0pt] 3342 sout | "x`" | 1 | "`x'" | 2 | "'x\"" | 3 | "\"x:" | 4 | ":x " | 5 | " x\t" | 6 | "\tx" ;3329 sout | "x`" | 1 | "`x'" | 2 | "'x\"" | 3 | "\"x:" | 4 | ":x " | 5 | " x\t" | 6 | "\tx" | endl; 3343 3330 \end{cfa} 3344 3331 \begin{cfa}[basicstyle=\tt,showspaces=true,showtabs=true,aboveskip=0pt,belowskip=0pt] … … 3349 3336 If a space is desired before or after one of the special string start/end characters, simply insert a space. 3350 3337 \begin{cfa}[belowskip=0pt] 3351 sout | "x (§\color{red}\texttt{\textvisiblespace}§" | 1 | "§\color{red}\texttt{\textvisiblespace}§) x" | 2 | "§\color{red}\texttt{\textvisiblespace}§, x" | 3 | "§\color{red}\texttt{\textvisiblespace}§:x:§\color{red}\texttt{\textvisiblespace}§" | 4 ;3338 sout | "x (§\color{red}\texttt{\textvisiblespace}§" | 1 | "§\color{red}\texttt{\textvisiblespace}§) x" | 2 | "§\color{red}\texttt{\textvisiblespace}§, x" | 3 | "§\color{red}\texttt{\textvisiblespace}§:x:§\color{red}\texttt{\textvisiblespace}§" | 4 | endl; 3352 3339 \end{cfa} 3353 3340 \begin{cfa}[basicstyle=\tt,showspaces=true,showtabs=true,aboveskip=0pt,belowskip=0pt] … … 3366 3353 \begin{cfa}[mathescape=off,belowskip=0pt] 3367 3354 sepSet( sout, ", $" ); §\C{// set separator from " " to ", \$"}§ 3368 sout | 1 | 2 | 3 | " \"" | ®sep® | "\"" ;3355 sout | 1 | 2 | 3 | " \"" | ®sep® | "\"" | endl; 3369 3356 \end{cfa} 3370 3357 %$ … … 3375 3362 \begin{cfa}[belowskip=0pt] 3376 3363 sepSet( sout, " " ); §\C{// reset separator to " "}§ 3377 sout | 1 | 2 | 3 | " \"" | ®sepGet( sout )® | "\"" ;3364 sout | 1 | 2 | 3 | " \"" | ®sepGet( sout )® | "\"" | endl; 3378 3365 \end{cfa} 3379 3366 \begin{cfa}[showspaces=true,aboveskip=0pt] … … 3385 3372 strcpy( store, sepGet( sout ) ); §\C{// copy current separator}§ 3386 3373 sepSet( sout, "_" ); §\C{// change separator to underscore}§ 3387 sout | 1 | 2 | 3 ;3374 sout | 1 | 2 | 3 | endl; 3388 3375 \end{cfa} 3389 3376 \begin{cfa}[showspaces=true,aboveskip=0pt,belowskip=0pt] … … 3392 3379 \begin{cfa}[belowskip=0pt] 3393 3380 sepSet( sout, store ); §\C{// change separator back to original}§ 3394 sout | 1 | 2 | 3 ;3381 sout | 1 | 2 | 3 | endl; 3395 3382 \end{cfa} 3396 3383 \begin{cfa}[showspaces=true,aboveskip=0pt] … … 3403 3390 \begin{cfa}[belowskip=0pt] 3404 3391 sepSetTuple( sout, " " ); §\C{// set tuple separator from ", " to " "}§ 3405 sout | t1 | t2 | " \"" | ®sepTuple® | "\"" ;3392 sout | t1 | t2 | " \"" | ®sepTuple® | "\"" | endl; 3406 3393 \end{cfa} 3407 3394 \begin{cfa}[showspaces=true,aboveskip=0pt] … … 3410 3397 \begin{cfa}[belowskip=0pt] 3411 3398 sepSetTuple( sout, ", " ); §\C{// reset tuple separator to ", "}§ 3412 sout | t1 | t2 | " \"" | ®sepGetTuple( sout )® | "\"" ;3399 sout | t1 | t2 | " \"" | ®sepGetTuple( sout )® | "\"" | endl; 3413 3400 \end{cfa} 3414 3401 \begin{cfa}[showspaces=true,aboveskip=0pt] … … 3420 3407 Manipulators \Indexc{sepDisable}\index{manipulator!sepDisable@©sepDisable©} and \Indexc{sepEnable}\index{manipulator!sepEnable@©sepEnable©} \emph{globally} toggle printing the separator, \ie the seperator is adjusted with respect to all subsequent printed items. 3421 3408 \begin{cfa}[belowskip=0pt] 3422 sout | sepDisable | 1 | 2 | 3 ;§\C{// globally turn off implicit separator}§3409 sout | sepDisable | 1 | 2 | 3 | endl; §\C{// globally turn off implicit separator}§ 3423 3410 \end{cfa} 3424 3411 \begin{cfa}[showspaces=true,aboveskip=0pt,belowskip=0pt] … … 3426 3413 \end{cfa} 3427 3414 \begin{cfa}[belowskip=0pt] 3428 sout | sepEnable | 1 | 2 | 3 ; §\C{// globally turn on implicit separator}§3415 sout | sepEnable | 1 | 2 | 3 | endl; §\C{// globally turn on implicit separator}§ 3429 3416 \end{cfa} 3430 3417 \begin{cfa}[mathescape=off,showspaces=true,aboveskip=0pt,belowskip=0pt] … … 3435 3422 Manipulators \Indexc{sepOn}\index{manipulator!sepOn@©sepOn©} and \Indexc{sepOff}\index{manipulator!sepOff@©sepOff©} \emph{locally} toggle printing the separator, \ie the seperator is adjusted only with respect to the next printed item. 3436 3423 \begin{cfa}[belowskip=0pt] 3437 sout | 1 | sepOff | 2 | 3 ; §\C{// locally turn off implicit separator}§3424 sout | 1 | sepOff | 2 | 3 | endl; §\C{// locally turn off implicit separator}§ 3438 3425 \end{cfa} 3439 3426 \begin{cfa}[showspaces=true,aboveskip=0pt,belowskip=0pt] … … 3441 3428 \end{cfa} 3442 3429 \begin{cfa}[belowskip=0pt] 3443 sout | sepDisable | 1 | sepOn | 2 | 3 ; §\C{// locally turn on implicit separator}§3430 sout | sepDisable | 1 | sepOn | 2 | 3 | endl; §\C{// locally turn on implicit separator}§ 3444 3431 \end{cfa} 3445 3432 \begin{cfa}[showspaces=true,aboveskip=0pt,belowskip=0pt] … … 3448 3435 The tuple separator also responses to being turned on and off. 3449 3436 \begin{cfa}[belowskip=0pt] 3450 sout | t1 | sepOff | t2 ; §\C{// locally turn on/off implicit separator}§3437 sout | t1 | sepOff | t2 | endl; §\C{// locally turn on/off implicit separator}§ 3451 3438 \end{cfa} 3452 3439 \begin{cfa}[showspaces=true,aboveskip=0pt,belowskip=0pt] … … 3456 3443 use ©sep© to accomplish this functionality. 3457 3444 \begin{cfa}[belowskip=0pt] 3458 sout | sepOn | 1 | 2 | 3 | sepOn ; §\C{// sepOn does nothing at start/end of line}§3445 sout | sepOn | 1 | 2 | 3 | sepOn | endl ; §\C{// sepOn does nothing at start/end of line}§ 3459 3446 \end{cfa} 3460 3447 \begin{cfa}[showspaces=true,aboveskip=0pt,belowskip=0pt] … … 3462 3449 \end{cfa} 3463 3450 \begin{cfa}[belowskip=0pt] 3464 sout | sep | 1 | 2 | 3 | sep ; §\C{// use sep to print separator at start/end of line}§3451 sout | sep | 1 | 2 | 3 | sep | endl ; §\C{// use sep to print separator at start/end of line}§ 3465 3452 \end{cfa} 3466 3453 \begin{cfa}[showspaces=true,aboveskip=0pt,belowskip=0pt] … … 3475 3462 int main( void ) { 3476 3463 int x = 1, y = 2, z = 3; 3477 sout | x | y | z ;3464 sout | x | y | z | endl; 3478 3465 [int, [ int, int ] ] t1 = [ 1, [ 2, 3 ] ], t2 = [ 4, [ 5, 6 ] ]; 3479 sout | t1 | t2 ; // print tuples3480 sout | x * 3 | y + 1 | z << 2 | x == y | (x | y) | (x || y) | (x > z ? 1 : 2) ;3481 sout | 1 | 2 | 3 ;3482 sout | '1' | '2' | '3' ;3483 sout | 1 | "" | 2 | "" | 3 ;3466 sout | t1 | t2 | endl; // print tuples 3467 sout | x * 3 | y + 1 | z << 2 | x == y | (x | y) | (x || y) | (x > z ? 1 : 2) | endl; 3468 sout | 1 | 2 | 3 | endl; 3469 sout | '1' | '2' | '3' | endl; 3470 sout | 1 | "" | 2 | "" | 3 | endl; 3484 3471 sout | "x (" | 1 | "x [" | 2 | "x {" | 3 | "x =" | 4 | "x $" | 5 | "x £" | 6 | "x ¥" 3485 | 7 | "x ¡" | 8 | "x ¿" | 9 | "x «" | 10 ;3472 | 7 | "x ¡" | 8 | "x ¿" | 9 | "x «" | 10 | endl; 3486 3473 sout | 1 | ", x" | 2 | ". x" | 3 | "; x" | 4 | "! x" | 5 | "? x" | 6 | "% x" 3487 | 7 | "¢ x" | 8 | "» x" | 9 | ") x" | 10 | "] x" | 11 | "} x" ;3488 sout | "x`" | 1 | "`x'" | 2 | "'x\"" | 3 | "\"x:" | 4 | ":x " | 5 | " x\t" | 6 | "\tx" ;3489 sout | "x ( " | 1 | " ) x" | 2 | " , x" | 3 | " :x: " | 4 ;3474 | 7 | "¢ x" | 8 | "» x" | 9 | ") x" | 10 | "] x" | 11 | "} x" | endl; 3475 sout | "x`" | 1 | "`x'" | 2 | "'x\"" | 3 | "\"x:" | 4 | ":x " | 5 | " x\t" | 6 | "\tx" | endl; 3476 sout | "x ( " | 1 | " ) x" | 2 | " , x" | 3 | " :x: " | 4 | endl; 3490 3477 3491 3478 sepSet( sout, ", $" ); // set separator from " " to ", $" 3492 sout | 1 | 2 | 3 | " \"" | sep | "\"" ;3479 sout | 1 | 2 | 3 | " \"" | sep | "\"" | endl; 3493 3480 sepSet( sout, " " ); // reset separator to " " 3494 sout | 1 | 2 | 3 | " \"" | sepGet( sout ) | "\"" ;3481 sout | 1 | 2 | 3 | " \"" | sepGet( sout ) | "\"" | endl; 3495 3482 3496 3483 char store[sepSize]; 3497 3484 strcpy( store, sepGet( sout ) ); 3498 3485 sepSet( sout, "_" ); 3499 sout | 1 | 2 | 3 ;3486 sout | 1 | 2 | 3 | endl; 3500 3487 sepSet( sout, store ); 3501 sout | 1 | 2 | 3 ;3488 sout | 1 | 2 | 3 | endl; 3502 3489 3503 3490 sepSetTuple( sout, " " ); // set tuple separator from ", " to " " 3504 sout | t1 | t2 | " \"" | sepTuple | "\"" ;3491 sout | t1 | t2 | " \"" | sepTuple | "\"" | endl; 3505 3492 sepSetTuple( sout, ", " ); // reset tuple separator to ", " 3506 sout | t1 | t2 | " \"" | sepGetTuple( sout ) | "\"" ;3507 3508 sout | sepDisable | 1 | 2 | 3 ; // globally turn off implicit separator3509 sout | sepEnable | 1 | 2 | 3 ; // globally turn on implicit separator3510 3511 sout | 1 | sepOff | 2 | 3 ; // locally turn on implicit separator3512 sout | sepDisable | 1 | sepOn | 2 | 3 ; // globally turn off implicit separator3493 sout | t1 | t2 | " \"" | sepGetTuple( sout ) | "\"" | endl; 3494 3495 sout | sepDisable | 1 | 2 | 3 | endl; // globally turn off implicit separator 3496 sout | sepEnable | 1 | 2 | 3 | endl; // globally turn on implicit separator 3497 3498 sout | 1 | sepOff | 2 | 3 | endl; // locally turn on implicit separator 3499 sout | sepDisable | 1 | sepOn | 2 | 3 | endl; // globally turn off implicit separator 3513 3500 sout | sepEnable; 3514 sout | t1 | sepOff | t2 ; // locally turn on/off implicit separator3515 3516 sout | sepOn | 1 | 2 | 3 | sepOn ; // sepOn does nothing at start/end of line3517 sout | sep | 1 | 2 | 3 | sep ; // use sep to print separator at start/end of line3501 sout | t1 | sepOff | t2 | endl; // locally turn on/off implicit separator 3502 3503 sout | sepOn | 1 | 2 | 3 | sepOn | endl ; // sepOn does nothing at start/end of line 3504 sout | sep | 1 | 2 | 3 | sep | endl ; // use sep to print separator at start/end of line 3518 3505 } 3519 3506 … … 4180 4167 Fibonacci f1, f2; 4181 4168 for ( int i = 1; i <= 10; i += 1 ) { 4182 sout | next( &f1 ) | ' ' | next( &f2 ) ;4169 sout | next( &f1 ) | ' ' | next( &f2 ) | endl; 4183 4170 } // for 4184 4171 } … … 4246 4233 MyThread f[4]; 4247 4234 } 4248 sout | global.value ;4235 sout | global.value | endl; 4249 4236 } 4250 4237 \end{cfa} … … 4324 4311 void main( First * this ) { 4325 4312 for ( int i = 0; i < 10; i += 1 ) { 4326 sout | "First : Suspend No." | i + 1 ;4313 sout | "First : Suspend No." | i + 1 | endl; 4327 4314 yield(); 4328 4315 } … … 4333 4320 wait( this->lock ); 4334 4321 for ( int i = 0; i < 10; i += 1 ) { 4335 sout | "Second : Suspend No." | i + 1 ;4322 sout | "Second : Suspend No." | i + 1 | endl; 4336 4323 yield(); 4337 4324 } … … 4340 4327 int main( void ) { 4341 4328 signal_once lock; 4342 sout | "User main begin" ;4329 sout | "User main begin" | endl; 4343 4330 { 4344 4331 processor p; … … 4348 4335 } 4349 4336 } 4350 sout | "User main end" ;4337 sout | "User main end" | endl; 4351 4338 } 4352 4339 \end{cfa} … … 5045 5032 void ?{}( Line * l ) { 5046 5033 l->lnth = 0.0; 5047 sout | "default" ;5034 sout | "default" | endl; 5048 5035 } 5049 5036 … … 5052 5039 void ?{}( Line * l, float lnth ) { 5053 5040 l->lnth = lnth; 5054 sout | "lnth" | l->lnth ;5041 sout | "lnth" | l->lnth | endl; 5055 5042 5056 5043 } … … 5058 5045 // destructor 5059 5046 void ^?() { 5060 sout | "destroyed" ;5047 sout | "destroyed" | endl; 5061 5048 l.lnth = 0.0; 5062 5049 } … … 5804 5791 In particular, output of ©char© variable now print a character rather than the decimal ASCII value of the character. 5805 5792 \begin{cfa} 5806 sout | 'x' | " " | (int)'x' ;5793 sout | 'x' | " " | (int)'x' | endl; 5807 5794 x 120 5808 5795 \end{cfa} … … 7034 7021 #include <gmp>§\indexc{gmp}§ 7035 7022 int main( void ) { 7036 sout | "Factorial Numbers" ;7023 sout | "Factorial Numbers" | endl; 7037 7024 Int fact = 1; 7038 7025 7039 sout | 0 | fact ;7026 sout | 0 | fact | endl; 7040 7027 for ( unsigned int i = 1; i <= 40; i += 1 ) { 7041 7028 fact *= i; 7042 sout | i | fact ;7029 sout | i | fact | endl; 7043 7030 } 7044 7031 } -
driver/Makefile.am
r95b8aa7 rff5caaf 16 16 17 17 AUTOMAKE_OPTIONS = foreign # do not require all the GNU file names 18 ACLOCAL_AMFLAGS = -I automake19 18 20 19 # applies to both programs -
driver/Makefile.in
r95b8aa7 rff5caaf 96 96 subdir = driver 97 97 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 98 am__aclocal_m4_deps = $(top_srcdir)/automake/libtool.m4 \ 99 $(top_srcdir)/automake/ltoptions.m4 \ 100 $(top_srcdir)/automake/ltsugar.m4 \ 101 $(top_srcdir)/automake/ltversion.m4 \ 102 $(top_srcdir)/automake/lt~obsolete.m4 \ 103 $(top_srcdir)/automake/cfa.m4 $(top_srcdir)/configure.ac 98 am__aclocal_m4_deps = $(top_srcdir)/automake/cfa.m4 \ 99 $(top_srcdir)/configure.ac 104 100 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ 105 101 $(ACLOCAL_M4) … … 114 110 as_OBJECTS = $(am_as_OBJECTS) 115 111 as_LDADD = $(LDADD) 116 AM_V_lt = $(am__v_lt_@AM_V@)117 am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)118 am__v_lt_0 = --silent119 am__v_lt_1 =120 112 am_cc1_OBJECTS = cc1.$(OBJEXT) 121 113 cc1_OBJECTS = $(am_cc1_OBJECTS) … … 142 134 CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ 143 135 $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) 144 LTCXXCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \145 $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) \146 $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \147 $(AM_CXXFLAGS) $(CXXFLAGS)148 136 AM_V_CXX = $(am__v_CXX_@AM_V@) 149 137 am__v_CXX_ = $(am__v_CXX_@AM_DEFAULT_V@) … … 151 139 am__v_CXX_1 = 152 140 CXXLD = $(CXX) 153 CXXLINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \ 154 $(LIBTOOLFLAGS) --mode=link $(CXXLD) $(AM_CXXFLAGS) \ 155 $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ 141 CXXLINK = $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \ 142 -o $@ 156 143 AM_V_CXXLD = $(am__v_CXXLD_@AM_V@) 157 144 am__v_CXXLD_ = $(am__v_CXXLD_@AM_DEFAULT_V@) … … 190 177 AMTAR = @AMTAR@ 191 178 AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ 192 AR = @AR@193 179 AUTOCONF = @AUTOCONF@ 194 180 AUTOHEADER = @AUTOHEADER@ 195 181 AUTOMAKE = @AUTOMAKE@ 196 182 AWK = @AWK@ 183 BACKEND_CC = @BACKEND_CC@ 197 184 BUILD_IN_TREE_FLAGS = @BUILD_IN_TREE_FLAGS@ 198 185 CC = @CC@ … … 214 201 CPPFLAGS = @CPPFLAGS@ 215 202 CXX = @CXX@ 216 CXXCPP = @CXXCPP@217 203 CXXDEPMODE = @CXXDEPMODE@ 218 204 CXXFLAGS = @CXXFLAGS@ … … 220 206 DEFS = @DEFS@ 221 207 DEPDIR = @DEPDIR@ 222 DLLTOOL = @DLLTOOL@223 208 DRIVER_DIR = @DRIVER_DIR@ 224 DSYMUTIL = @DSYMUTIL@225 DUMPBIN = @DUMPBIN@226 209 ECHO_C = @ECHO_C@ 227 210 ECHO_N = @ECHO_N@ … … 229 212 EGREP = @EGREP@ 230 213 EXEEXT = @EXEEXT@ 231 FGREP = @FGREP@232 214 GREP = @GREP@ 233 215 HOST_FLAGS = @HOST_FLAGS@ … … 237 219 INSTALL_SCRIPT = @INSTALL_SCRIPT@ 238 220 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ 239 LD = @LD@240 221 LDFLAGS = @LDFLAGS@ 241 222 LEX = @LEX@ … … 246 227 LIBOBJS = @LIBOBJS@ 247 228 LIBS = @LIBS@ 248 LIBTOOL = @LIBTOOL@249 LIPO = @LIPO@250 LN_S = @LN_S@251 229 LTLIBOBJS = @LTLIBOBJS@ 252 LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@253 230 MAKEINFO = @MAKEINFO@ 254 MANIFEST_TOOL = @MANIFEST_TOOL@255 231 MKDIR_P = @MKDIR_P@ 256 NM = @NM@257 NMEDIT = @NMEDIT@258 OBJDUMP = @OBJDUMP@259 232 OBJEXT = @OBJEXT@ 260 OTOOL = @OTOOL@261 OTOOL64 = @OTOOL64@262 233 PACKAGE = @PACKAGE@ 263 234 PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ … … 269 240 PATH_SEPARATOR = @PATH_SEPARATOR@ 270 241 RANLIB = @RANLIB@ 271 SED = @SED@272 242 SET_MAKE = @SET_MAKE@ 273 243 SHELL = @SHELL@ … … 281 251 abs_top_builddir = @abs_top_builddir@ 282 252 abs_top_srcdir = @abs_top_srcdir@ 283 ac_ct_AR = @ac_ct_AR@284 253 ac_ct_CC = @ac_ct_CC@ 285 254 ac_ct_CXX = @ac_ct_CXX@ 286 ac_ct_DUMPBIN = @ac_ct_DUMPBIN@287 255 am__include = @am__include@ 288 256 am__leading_dot = @am__leading_dot@ … … 332 300 top_srcdir = @top_srcdir@ 333 301 AUTOMAKE_OPTIONS = foreign # do not require all the GNU file names 334 ACLOCAL_AMFLAGS = -I automake335 302 336 303 # applies to both programs … … 346 313 347 314 .SUFFIXES: 348 .SUFFIXES: .cc . lo .o .obj315 .SUFFIXES: .cc .o .obj 349 316 $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) 350 317 @for dep in $?; do \ … … 386 353 sed 's/$(EXEEXT)$$//' | \ 387 354 while read p p1; do if test -f $$p \ 388 || test -f $$p1 \389 355 ; then echo "$$p"; echo "$$p"; else :; fi; \ 390 356 done | \ … … 401 367 if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ 402 368 test -z "$$files" || { \ 403 echo " $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install$(INSTALL_PROGRAM) $$files '$(DESTDIR)$(cc1libdir)$$dir'"; \404 $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install$(INSTALL_PROGRAM) $$files "$(DESTDIR)$(cc1libdir)$$dir" || exit $$?; \369 echo " $(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) $$files '$(DESTDIR)$(cc1libdir)$$dir'"; \ 370 $(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(cc1libdir)$$dir" || exit $$?; \ 405 371 } \ 406 372 ; done … … 418 384 419 385 clean-cc1libPROGRAMS: 420 @list='$(cc1lib_PROGRAMS)'; test -n "$$list" || exit 0; \ 421 echo " rm -f" $$list; \ 422 rm -f $$list || exit $$?; \ 423 test -n "$(EXEEXT)" || exit 0; \ 424 list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \ 425 echo " rm -f" $$list; \ 426 rm -f $$list 386 -test -z "$(cc1lib_PROGRAMS)" || rm -f $(cc1lib_PROGRAMS) 427 387 428 388 clean-noinstPROGRAMS: 429 @list='$(noinst_PROGRAMS)'; test -n "$$list" || exit 0; \ 430 echo " rm -f" $$list; \ 431 rm -f $$list || exit $$?; \ 432 test -n "$(EXEEXT)" || exit 0; \ 433 list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \ 434 echo " rm -f" $$list; \ 435 rm -f $$list 389 -test -z "$(noinst_PROGRAMS)" || rm -f $(noinst_PROGRAMS) 436 390 437 391 as$(EXEEXT): $(as_OBJECTS) $(as_DEPENDENCIES) $(EXTRA_as_DEPENDENCIES) … … 472 426 @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ 473 427 @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'` 474 475 .cc.lo:476 @am__fastdepCXX_TRUE@ $(AM_V_CXX)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.lo$$||'`;\477 @am__fastdepCXX_TRUE@ $(LTCXXCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\478 @am__fastdepCXX_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Plo479 @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@480 @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@481 @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(LTCXXCOMPILE) -c -o $@ $<482 483 mostlyclean-libtool:484 -rm -f *.lo485 486 clean-libtool:487 -rm -rf .libs _libs488 428 489 429 ID: $(am__tagged_files) … … 609 549 clean: clean-am 610 550 611 clean-am: clean-cc1libPROGRAMS clean-generic clean- libtool\612 clean-noinstPROGRAMSmostlyclean-am551 clean-am: clean-cc1libPROGRAMS clean-generic clean-noinstPROGRAMS \ 552 mostlyclean-am 613 553 614 554 distclean: distclean-am … … 666 606 mostlyclean: mostlyclean-am 667 607 668 mostlyclean-am: mostlyclean-compile mostlyclean-generic \ 669 mostlyclean-libtool 608 mostlyclean-am: mostlyclean-compile mostlyclean-generic 670 609 671 610 pdf: pdf-am … … 683 622 684 623 .PHONY: CTAGS GTAGS TAGS all all-am check check-am clean \ 685 clean-cc1libPROGRAMS clean-generic clean-libtool \ 686 clean-noinstPROGRAMS cscopelist-am ctags ctags-am distclean \ 687 distclean-compile distclean-generic distclean-libtool \ 688 distclean-tags distdir dvi dvi-am html html-am info info-am \ 689 install install-am install-cc1libPROGRAMS install-data \ 690 install-data-am install-dvi install-dvi-am install-exec \ 691 install-exec-am install-exec-hook install-html install-html-am \ 692 install-info install-info-am install-man install-pdf \ 693 install-pdf-am install-ps install-ps-am install-strip \ 694 installcheck installcheck-am installdirs maintainer-clean \ 695 maintainer-clean-generic mostlyclean mostlyclean-compile \ 696 mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ 624 clean-cc1libPROGRAMS clean-generic clean-noinstPROGRAMS \ 625 cscopelist-am ctags ctags-am distclean distclean-compile \ 626 distclean-generic distclean-tags distdir dvi dvi-am html \ 627 html-am info info-am install install-am install-cc1libPROGRAMS \ 628 install-data install-data-am install-dvi install-dvi-am \ 629 install-exec install-exec-am install-exec-hook install-html \ 630 install-html-am install-info install-info-am install-man \ 631 install-pdf install-pdf-am install-ps install-ps-am \ 632 install-strip installcheck installcheck-am installdirs \ 633 maintainer-clean maintainer-clean-generic mostlyclean \ 634 mostlyclean-compile mostlyclean-generic pdf pdf-am ps ps-am \ 697 635 tags tags-am uninstall uninstall-am uninstall-cc1libPROGRAMS \ 698 636 uninstall-hook -
driver/as.cc
r95b8aa7 rff5caaf 1 // 1 // 2 2 // Cforall Version 1.0.0 Copyright (C) 2015 University of Waterloo 3 3 // 4 4 // The contents of this file are covered under the licence agreement in the 5 5 // file "LICENCE" distributed with Cforall. 6 // 6 // 7 7 // as.c -- map assembler file, scan for debug information. If found, expand file by one character and insert Cforall 8 8 // language code on the N line from the start of the debug information. 9 // 9 // 10 10 // Author : Peter A. Buhr 11 11 // Created On : Wed Aug 1 10:49:42 2018 … … 13 13 // Last Modified On : Sat Sep 8 08:40:16 2018 14 14 // Update Count : 97 15 // 15 // 16 16 17 17 #include <cstdio> // perror … … 45 45 46 46 if ( size ) { // cannot map 0 sized file 47 char * start = (char *)mmap( NULL, size + 2, PROT_READ | PROT_WRITE, MAP_SHARED, fd, 0 );47 char * start = (char *)mmap( NULL, size, PROT_READ | PROT_WRITE, MAP_SHARED, fd, 0 ); 48 48 if ( start == (void *)-1 ) { perror( "mmap" ); exit( EXIT_FAILURE ); }; 49 49 … … 65 65 } // if 66 66 67 if ( munmap( start, size + 2) ) { perror( "munmap" ); exit( EXIT_FAILURE ); }; // update on disk67 if ( munmap( start, size ) ) { perror( "munmap" ); exit( EXIT_FAILURE ); }; // update on disk 68 68 } // if 69 69 -
driver/cfa.cc
r95b8aa7 rff5caaf 403 403 404 404 // include the cfa library in case it's needed 405 args[nargs] = ( *new string( string("-L" ) + libdir + (intree ? "/src/.libs" : "")) ).c_str(); 406 nargs += 1; 407 args[nargs] = ( *new string( string("-Wl,-rpath," ) + libdir + (intree ? "/src/.libs" : "")) ).c_str(); 405 args[nargs] = ( *new string( string("-L" ) + libdir + (intree ? "/src" : "")) ).c_str(); 408 406 nargs += 1; 409 407 args[nargs] = "-lcfa"; -
examples/ArrayN.c
r95b8aa7 rff5caaf 7 7 8 8 forall(otype index_t) 9 index_t offset_to_index(unsigned offset, index_t size) { 9 index_t offset_to_index(unsigned offset, index_t size) 10 { 10 11 return [offset / size.0, offset % size.1]; 11 12 } 12 13 13 int main(int argc, char* argv[]) { 14 int main(int argc, char* argv[]) 15 { 14 16 unsigned x = 0, y = 0, i = 0; 15 17 unsigned sx = 4, sy = 4; … … 18 20 [x, y] = offset_to_index(6, [sx, sy]); 19 21 20 sout | x | ' ' | y ;22 sout | x | ' ' | y | endl; 21 23 22 24 return 0; -
examples/gc_no_raii/src/internal/collector.c
r95b8aa7 rff5caaf 38 38 void* gc_allocate(size_t target_size) 39 39 { 40 // sout | "Allocating " | target_size | " bytes" ;40 // sout | "Allocating " | target_size | " bytes" | endl; 41 41 42 42 size_t size = gc_compute_size(target_size + sizeof(gc_object_header)); 43 43 44 // sout | "Object header size: " | sizeof(gc_object_header) | " bytes" ;45 // sout | "Actual allocation size: " | size | " bytes" ;44 // sout | "Object header size: " | sizeof(gc_object_header) | " bytes" | endl; 45 // sout | "Actual allocation size: " | size | " bytes" | endl; 46 46 47 47 check(size < POOL_SIZE_BYTES); -
examples/gc_no_raii/src/internal/state.h
r95b8aa7 rff5caaf 38 38 static inline bool gc_needs_collect(gc_state* state) 39 39 { 40 // sout | "Used Space: " | state->used_space | " bytes" ;40 // sout | "Used Space: " | state->used_space | " bytes" | endl; 41 41 return state->used_space * 2 > state->total_space; 42 42 } -
examples/gc_no_raii/src/tools/print.h
r95b8aa7 rff5caaf 5 5 // #include <fstream.hfa> 6 6 // 7 // #define DEBUG_OUT(x) sout | x ;7 // #define DEBUG_OUT(x) sout | x | endl; 8 8 // 9 9 // #else -
examples/multicore.c
r95b8aa7 rff5caaf 15 15 16 16 int main(int argc, char* argv[]) { 17 // sout | "User main begin" ;17 // sout | "User main begin" | endl; 18 18 { 19 19 processor p; … … 22 22 } 23 23 } 24 // sout | "User main end" ;24 // sout | "User main end" | endl; 25 25 } -
examples/prolog.c
r95b8aa7 rff5caaf 10 10 // Created On : Wed May 27 17:56:53 2015 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Tue Dec 11 23:27:19 201813 // Update Count : 612 // Last Modified On : Tue Mar 8 22:09:39 2016 13 // Update Count : 5 14 14 // 15 15 16 16 #include <fstream.hfa> 17 17 18 void printResult( int x ) { sout | "int" ; }19 void printResult( double x ) { sout | "double" ; }20 void printResult( char * x ) { sout | "char*" ; }18 void printResult( int x ) { sout | "int" | endl; } 19 void printResult( double x ) { sout | "double" | endl; } 20 void printResult( char * x ) { sout | "char*" | endl; } 21 21 22 22 void is_arithmetic( int x ) {} -
examples/quad.c
r95b8aa7 rff5caaf 10 10 // Created On : Wed May 27 17:56:53 2015 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Tue Dec 11 23:26:58 201813 // Update Count : 912 // Last Modified On : Tue Mar 8 22:07:02 2016 13 // Update Count : 8 14 14 // 15 15 … … 28 28 int main() { 29 29 int N = 2; 30 sout | "result of quad of" | N | "is" | quad( N ) ;30 sout | "result of quad of" | N | "is" | quad( N ) | endl; 31 31 } 32 32 -
examples/square.c
r95b8aa7 rff5caaf 10 10 // Created On : Wed May 27 17:56:53 2015 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Tue Dec 11 23:28:24 201813 // Update Count : 2 812 // Last Modified On : Tue Mar 8 22:05:48 2016 13 // Update Count : 27 14 14 // 15 15 … … 23 23 int main() { 24 24 #if 0 25 sout | "result of squaring 9 is " ;25 sout | "result of squaring 9 is " | endl; 26 26 27 27 // char does not have multiplication. … … 30 30 } // ?*? 31 31 char c = 9; 32 sout | "char\t\t\t" | square( c ) ;32 sout | "char\t\t\t" | square( c ) | endl; 33 33 34 sout | square( s ) ;34 sout | square( s ) | endl; 35 35 #endif 36 36 short s = 9; … … 38 38 #if 0 39 39 signed int i = 9; 40 sout | "signed int\t\t" | square( i ) ;40 sout | "signed int\t\t" | square( i ) | endl; 41 41 42 42 unsigned int ui = 9; 43 sout | "unsigned int\t\t" | square( ui ) ;43 sout | "unsigned int\t\t" | square( ui ) | endl; 44 44 45 45 long int li = 9; 46 sout | "signed long int\t\t" | square( li ) ;46 sout | "signed long int\t\t" | square( li ) | endl; 47 47 48 48 unsigned long int uli = 9; 49 sout | "unsigned long int\t" | square( uli ) ;49 sout | "unsigned long int\t" | square( uli ) | endl; 50 50 51 51 signed long long int lli = 9; 52 sout | "signed long long int\t" | square( lli ) ;52 sout | "signed long long int\t" | square( lli ) | endl; 53 53 54 54 unsigned long long int ulli = 9; 55 sout | "unsigned long long int\t" | square( ulli ) ;55 sout | "unsigned long long int\t" | square( ulli ) | endl; 56 56 57 57 float f = 9.0; 58 sout | "float\t\t\t" | square( f ) ;58 sout | "float\t\t\t" | square( f ) | endl; 59 59 60 60 double d = 9.0; 61 sout | "double\t\t\t" | square( d ) ;61 sout | "double\t\t\t" | square( d ) | endl; 62 62 63 63 long double ld = 9.0; 64 sout | "long double\t\t" | square( ld ) ;64 sout | "long double\t\t" | square( ld ) | endl; 65 65 #endif 66 66 } // main -
examples/twice.c
r95b8aa7 rff5caaf 10 10 // Created On : Wed May 27 17:56:53 2015 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : T ue Dec 11 23:28:08 201813 // Update Count : 4 712 // Last Modified On : Thu Oct 19 21:52:57 2017 13 // Update Count : 46 14 14 // 15 15 … … 28 28 29 29 int main( void ) { 30 sout | twice( ' ' ) | ' ' | twice( (signed char)0 ) | twice( (int)1 ) | twice( 3.2 ) ;30 sout | twice( ' ' ) | ' ' | twice( (signed char)0 ) | twice( (int)1 ) | twice( 3.2 ) | endl; 31 31 } 32 32 -
examples/wrapper/src/main.c
r95b8aa7 rff5caaf 1 1 #include "pointer.h" 2 2 3 wrapper_t make_copy(wrapper_t copy) { 3 wrapper_t make_copy(wrapper_t copy) 4 { 4 5 return copy; 5 6 } 6 7 7 int main(int argc, char const *argv[]) { 8 int main(int argc, char const *argv[]) 9 { 8 10 wrapper_t p = wrap(6); 9 sout | nl | "test started"; 11 12 sout | endl | "test started" | endl; 13 10 14 wrapper_t p2 = p; 15 11 16 clear(&p); 17 12 18 p = p2; 19 13 20 wrapper_t p3 = make_copy(p2); 14 sout | nl | "test ended"; 21 22 sout | endl | "test ended" | endl; 23 15 24 return 0; 16 25 } -
examples/wrapper/src/pointer.h
r95b8aa7 rff5caaf 34 34 void ?{}(content_t* this) 35 35 { 36 sout | "Constructing content" ;36 sout | "Constructing content" | endl; 37 37 this->count = 0; 38 38 } … … 40 40 void ^?{}(content_t* this) 41 41 { 42 sout | "Destroying content" ;42 sout | "Destroying content" | endl; 43 43 } 44 44 … … 53 53 void ?{}(wrapper_t* this) 54 54 { 55 sout | "Constructing empty ref pointer" | nl;55 sout | "Constructing empty ref pointer" | endl | endl; 56 56 this->ptr = NULL; 57 57 } … … 59 59 void ?{}(wrapper_t* this, wrapper_t rhs) 60 60 { 61 sout | "Constructing ref pointer from copy" ;61 sout | "Constructing ref pointer from copy" | endl; 62 62 this->ptr = rhs.ptr; 63 63 this->ptr->count++; 64 sout | "Reference is " | this->ptr->count | nl;64 sout | "Reference is " | this->ptr->count | endl | endl; 65 65 } 66 66 … … 69 69 if(this->ptr) 70 70 { 71 sout | "Destroying ref pointer" ;71 sout | "Destroying ref pointer" | endl; 72 72 this->ptr->count--; 73 sout | "Reference is " | this->ptr->count | nl;73 sout | "Reference is " | this->ptr->count | endl | endl; 74 74 if(!this->ptr->count) delete(this->ptr); 75 75 } 76 76 else 77 77 { 78 sout | "Destroying empty ref pointer" | nl;78 sout | "Destroying empty ref pointer" | endl | endl; 79 79 } 80 80 } … … 82 82 wrapper_t ?=?(wrapper_t* this, wrapper_t rhs) 83 83 { 84 sout | "Setting ref pointer" ;84 sout | "Setting ref pointer" | endl; 85 85 if(this->ptr) 86 86 { 87 87 this->ptr->count--; 88 sout | "Reference is " | this->ptr->count | nl;88 sout | "Reference is " | this->ptr->count | endl | endl; 89 89 if(!this->ptr->count) delete(this->ptr); 90 90 } 91 91 this->ptr = rhs.ptr; 92 92 this->ptr->count++; 93 sout | "Reference is " | this->ptr->count | nl;93 sout | "Reference is " | this->ptr->count | endl | endl; 94 94 } 95 95 … … 98 98 this->ptr = c; 99 99 this->ptr->count++; 100 sout | "Setting ref pointer" ;101 sout | "Reference is " | this->ptr->count | nl;100 sout | "Setting ref pointer" | endl; 101 sout | "Reference is " | this->ptr->count | endl | endl; 102 102 } 103 103 104 104 void clear(wrapper_t* this) 105 105 { 106 sout | "Clearing ref pointer" ;106 sout | "Clearing ref pointer" | endl; 107 107 this->ptr->count--; 108 sout | "Reference is " | this->ptr->count | nl;108 sout | "Reference is " | this->ptr->count | endl | endl; 109 109 if(!this->ptr->count) delete(this->ptr); 110 110 this->ptr = NULL; -
examples/zero_one.c
r95b8aa7 rff5caaf 3 3 void foo(zero_t o) 4 4 { 5 sout | "It's a Zero!" ;5 sout | "It's a Zero!" | endl; 6 6 } 7 7 8 8 void foo(one_t o) 9 9 { 10 sout | "It's a One!" ;10 sout | "It's a One!" | endl; 11 11 } 12 12 13 13 void foo(int o) 14 14 { 15 sout | "It's a Number!" ;15 sout | "It's a Number!" | endl; 16 16 } 17 17 -
libcfa/Makefile.am
r95b8aa7 rff5caaf 16 16 17 17 AUTOMAKE_OPTIONS = foreign # do not require all the GNU file names 18 ACLOCAL_AMFLAGS = -I automake19 18 SUBDIRS = prelude src # order important -
libcfa/Makefile.in
r95b8aa7 rff5caaf 89 89 PRE_UNINSTALL = : 90 90 POST_UNINSTALL = : 91 build_triplet = @build@92 host_triplet = @host@93 91 subdir = . 94 92 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 95 am__aclocal_m4_deps = $(top_srcdir)/automake/libtool.m4 \ 96 $(top_srcdir)/automake/ltoptions.m4 \ 97 $(top_srcdir)/automake/ltsugar.m4 \ 98 $(top_srcdir)/automake/ltversion.m4 \ 99 $(top_srcdir)/automake/lt~obsolete.m4 \ 100 $(top_srcdir)/../automake/cfa.m4 $(top_srcdir)/configure.ac 93 am__aclocal_m4_deps = $(top_srcdir)/../automake/cfa.m4 \ 94 $(top_srcdir)/configure.ac 101 95 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ 102 96 $(ACLOCAL_M4) … … 164 158 CSCOPE = cscope 165 159 DIST_SUBDIRS = $(SUBDIRS) 166 am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/automake/compile \ 167 $(top_srcdir)/automake/config.guess \ 168 $(top_srcdir)/automake/config.sub \ 169 $(top_srcdir)/automake/install-sh \ 170 $(top_srcdir)/automake/ltmain.sh \ 171 $(top_srcdir)/automake/missing automake/compile \ 172 automake/config.guess automake/config.sub automake/depcomp \ 173 automake/install-sh automake/ltmain.sh automake/missing 160 am__DIST_COMMON = $(srcdir)/Makefile.in \ 161 $(top_srcdir)/./automake/compile \ 162 $(top_srcdir)/./automake/install-sh \ 163 $(top_srcdir)/./automake/missing ./automake/compile \ 164 ./automake/config.guess ./automake/config.sub \ 165 ./automake/depcomp ./automake/install-sh ./automake/missing 174 166 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) 175 167 distdir = $(PACKAGE)-$(VERSION) … … 217 209 AMTAR = @AMTAR@ 218 210 AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ 219 AR = @AR@220 211 ARCHITECTURE = @ARCHITECTURE@ 221 212 ARCH_FLAGS = @ARCH_FLAGS@ … … 236 227 CFA_NAME = @CFA_NAME@ 237 228 CFA_PREFIX = @CFA_PREFIX@ 238 CFA_VERSION = @CFA_VERSION@239 229 CFLAGS = @CFLAGS@ 240 230 CONFIGURATION = @CONFIGURATION@ … … 242 232 CONFIG_CFAFLAGS = @CONFIG_CFAFLAGS@ 243 233 CONFIG_CFLAGS = @CONFIG_CFLAGS@ 244 CPP = @CPP@245 234 CPPFLAGS = @CPPFLAGS@ 246 235 CXX = @CXX@ 247 CXXCPP = @CXXCPP@248 236 CXXDEPMODE = @CXXDEPMODE@ 249 237 CXXFLAGS = @CXXFLAGS@ … … 251 239 DEFS = @DEFS@ 252 240 DEPDIR = @DEPDIR@ 253 DLLTOOL = @DLLTOOL@254 241 DRIVER_DIR = @DRIVER_DIR@ 255 DSYMUTIL = @DSYMUTIL@256 DUMPBIN = @DUMPBIN@257 242 ECHO_C = @ECHO_C@ 258 243 ECHO_N = @ECHO_N@ 259 244 ECHO_T = @ECHO_T@ 260 EGREP = @EGREP@261 245 EXEEXT = @EXEEXT@ 262 FGREP = @FGREP@263 GREP = @GREP@264 246 INSTALL = @INSTALL@ 265 247 INSTALL_DATA = @INSTALL_DATA@ … … 267 249 INSTALL_SCRIPT = @INSTALL_SCRIPT@ 268 250 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ 269 LD = @LD@270 251 LDFLAGS = @LDFLAGS@ 271 252 LIBOBJS = @LIBOBJS@ 272 253 LIBS = @LIBS@ 273 LIBTOOL = @LIBTOOL@274 LIPO = @LIPO@275 LN_S = @LN_S@276 254 LTLIBOBJS = @LTLIBOBJS@ 277 LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@278 255 MAKEINFO = @MAKEINFO@ 279 MANIFEST_TOOL = @MANIFEST_TOOL@280 256 MKDIR_P = @MKDIR_P@ 281 NM = @NM@282 NMEDIT = @NMEDIT@283 OBJDUMP = @OBJDUMP@284 257 OBJEXT = @OBJEXT@ 285 OTOOL = @OTOOL@286 OTOOL64 = @OTOOL64@287 258 PACKAGE = @PACKAGE@ 288 259 PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ … … 294 265 PATH_SEPARATOR = @PATH_SEPARATOR@ 295 266 RANLIB = @RANLIB@ 296 SED = @SED@297 267 SET_MAKE = @SET_MAKE@ 298 268 SHELL = @SHELL@ … … 303 273 abs_top_builddir = @abs_top_builddir@ 304 274 abs_top_srcdir = @abs_top_srcdir@ 305 ac_ct_AR = @ac_ct_AR@306 275 ac_ct_CC = @ac_ct_CC@ 307 276 ac_ct_CXX = @ac_ct_CXX@ 308 ac_ct_DUMPBIN = @ac_ct_DUMPBIN@309 277 am__include = @am__include@ 310 278 am__leading_dot = @am__leading_dot@ … … 313 281 am__untar = @am__untar@ 314 282 bindir = @bindir@ 315 build = @build@316 283 build_alias = @build_alias@ 317 build_cpu = @build_cpu@318 build_os = @build_os@319 build_vendor = @build_vendor@320 284 builddir = @builddir@ 321 285 datadir = @datadir@ … … 324 288 dvidir = @dvidir@ 325 289 exec_prefix = @exec_prefix@ 326 host = @host@327 290 host_alias = @host_alias@ 328 host_cpu = @host_cpu@329 host_os = @host_os@330 host_vendor = @host_vendor@331 291 htmldir = @htmldir@ 332 292 includedir = @includedir@ … … 354 314 top_srcdir = @top_srcdir@ 355 315 AUTOMAKE_OPTIONS = foreign # do not require all the GNU file names 356 ACLOCAL_AMFLAGS = -I automake357 316 SUBDIRS = prelude src # order important 358 317 all: all-recursive … … 392 351 $(am__cd) $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS) 393 352 $(am__aclocal_m4_deps): 394 395 mostlyclean-libtool:396 -rm -f *.lo397 398 clean-libtool:399 -rm -rf .libs _libs400 401 distclean-libtool:402 -rm -f libtool config.lt403 353 404 354 # This directory's subdirectories are mostly independent; you can cd … … 733 683 clean: clean-recursive 734 684 735 clean-am: clean-generic clean-libtoolmostlyclean-am685 clean-am: clean-generic mostlyclean-am 736 686 737 687 distclean: distclean-recursive 738 688 -rm -f $(am__CONFIG_DISTCLEAN_FILES) 739 689 -rm -f Makefile 740 distclean-am: clean-am distclean-generic distclean-libtool \ 741 distclean-tags 690 distclean-am: clean-am distclean-generic distclean-tags 742 691 743 692 dvi: dvi-recursive … … 789 738 mostlyclean: mostlyclean-recursive 790 739 791 mostlyclean-am: mostlyclean-generic mostlyclean-libtool740 mostlyclean-am: mostlyclean-generic 792 741 793 742 pdf: pdf-recursive … … 805 754 .PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \ 806 755 am--refresh check check-am clean clean-cscope clean-generic \ 807 clean-libtool cscope cscopelist-am ctags ctags-am dist \ 808 dist-all dist-bzip2 dist-gzip dist-lzip dist-shar dist-tarZ \ 809 dist-xz dist-zip distcheck distclean distclean-generic \ 810 distclean-libtool distclean-tags distcleancheck distdir \ 811 distuninstallcheck dvi dvi-am html html-am info info-am \ 812 install install-am install-data install-data-am install-dvi \ 813 install-dvi-am install-exec install-exec-am install-html \ 814 install-html-am install-info install-info-am install-man \ 815 install-pdf install-pdf-am install-ps install-ps-am \ 816 install-strip installcheck installcheck-am installdirs \ 817 installdirs-am maintainer-clean maintainer-clean-generic \ 818 mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ 819 ps ps-am tags tags-am uninstall uninstall-am 756 cscope cscopelist-am ctags ctags-am dist dist-all dist-bzip2 \ 757 dist-gzip dist-lzip dist-shar dist-tarZ dist-xz dist-zip \ 758 distcheck distclean distclean-generic distclean-tags \ 759 distcleancheck distdir distuninstallcheck dvi dvi-am html \ 760 html-am info info-am install install-am install-data \ 761 install-data-am install-dvi install-dvi-am install-exec \ 762 install-exec-am install-html install-html-am install-info \ 763 install-info-am install-man install-pdf install-pdf-am \ 764 install-ps install-ps-am install-strip installcheck \ 765 installcheck-am installdirs installdirs-am maintainer-clean \ 766 maintainer-clean-generic mostlyclean mostlyclean-generic pdf \ 767 pdf-am ps ps-am tags tags-am uninstall uninstall-am 820 768 821 769 .PRECIOUS: Makefile -
libcfa/aclocal.m4
r95b8aa7 rff5caaf 1171 1171 ]) # _AM_PROG_TAR 1172 1172 1173 m4_include([automake/libtool.m4])1174 m4_include([automake/ltoptions.m4])1175 m4_include([automake/ltsugar.m4])1176 m4_include([automake/ltversion.m4])1177 m4_include([automake/lt~obsolete.m4]) -
libcfa/configure
r95b8aa7 rff5caaf 198 198 as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO 199 199 eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" && 200 test \"x\`expr \$as_lineno_1'\$as_run' + 1\`\" = \"x\$as_lineno_2'\$as_run'\"' || exit 1 201 202 test -n \"\${ZSH_VERSION+set}\${BASH_VERSION+set}\" || ( 203 ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' 204 ECHO=\$ECHO\$ECHO\$ECHO\$ECHO\$ECHO 205 ECHO=\$ECHO\$ECHO\$ECHO\$ECHO\$ECHO\$ECHO 206 PATH=/empty FPATH=/empty; export PATH FPATH 207 test \"X\`printf %s \$ECHO\`\" = \"X\$ECHO\" \\ 208 || test \"X\`print -r -- \$ECHO\`\" = \"X\$ECHO\" ) || exit 1 209 test \$(( 1 + 1 )) = 2 || exit 1" 200 test \"x\`expr \$as_lineno_1'\$as_run' + 1\`\" = \"x\$as_lineno_2'\$as_run'\"' || exit 1" 210 201 if (eval "$as_required") 2>/dev/null; then : 211 202 as_have_required=yes … … 565 556 as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" 566 557 567 SHELL=${CONFIG_SHELL-/bin/sh}568 569 558 570 559 test -n "$DJDIR" || exec 7<&0 </dev/null … … 596 585 PACKAGE_URL='' 597 586 598 # Factoring default headers for most tests.599 ac_includes_default="\600 #include <stdio.h>601 #ifdef HAVE_SYS_TYPES_H602 # include <sys/types.h>603 #endif604 #ifdef HAVE_SYS_STAT_H605 # include <sys/stat.h>606 #endif607 #ifdef STDC_HEADERS608 # include <stdlib.h>609 # include <stddef.h>610 #else611 # ifdef HAVE_STDLIB_H612 # include <stdlib.h>613 # endif614 #endif615 #ifdef HAVE_STRING_H616 # if !defined STDC_HEADERS && defined HAVE_MEMORY_H617 # include <memory.h>618 # endif619 # include <string.h>620 #endif621 #ifdef HAVE_STRINGS_H622 # include <strings.h>623 #endif624 #ifdef HAVE_INTTYPES_H625 # include <inttypes.h>626 #endif627 #ifdef HAVE_STDINT_H628 # include <stdint.h>629 #endif630 #ifdef HAVE_UNISTD_H631 # include <unistd.h>632 #endif"633 634 587 ac_subst_vars='am__EXEEXT_FALSE 635 588 am__EXEEXT_TRUE 636 589 LTLIBOBJS 637 590 LIBOBJS 591 RANLIB 638 592 am__fastdepCCAS_FALSE 639 593 am__fastdepCCAS_TRUE … … 641 595 CCASFLAGS 642 596 CCAS 643 CXXCPP 597 am__fastdepCC_FALSE 598 am__fastdepCC_TRUE 599 CCDEPMODE 600 ac_ct_CC 601 CFLAGS 602 CC 644 603 am__fastdepCXX_FALSE 645 604 am__fastdepCXX_TRUE 646 605 CXXDEPMODE 647 ac_ct_CXX648 CXXFLAGS649 CXX650 CPP651 LT_SYS_LIBRARY_PATH652 OTOOL64653 OTOOL654 LIPO655 NMEDIT656 DSYMUTIL657 MANIFEST_TOOL658 RANLIB659 ac_ct_AR660 AR661 DLLTOOL662 OBJDUMP663 LN_S664 NM665 ac_ct_DUMPBIN666 DUMPBIN667 LD668 FGREP669 EGREP670 GREP671 SED672 am__fastdepCC_FALSE673 am__fastdepCC_TRUE674 CCDEPMODE675 606 am__nodep 676 607 AMDEPBACKSLASH … … 682 613 OBJEXT 683 614 EXEEXT 684 ac_ct_C C615 ac_ct_CXX 685 616 CPPFLAGS 686 617 LDFLAGS 687 CFLAGS 688 CC 689 host_os 690 host_vendor 691 host_cpu 692 host 693 build_os 694 build_vendor 695 build_cpu 696 build 697 LIBTOOL 618 CXXFLAGS 619 CXX 698 620 CFA_LIBDIR 699 621 CFA_BINDIR … … 709 631 CFACPP 710 632 CFACC 711 CFA_VERSION712 633 DRIVER_DIR 713 634 CONFIGURATION … … 784 705 enable_silent_rules 785 706 with_cfa_name 786 enable_shared787 enable_static788 with_pic789 enable_fast_install790 with_aix_soname791 707 enable_dependency_tracking 792 with_gnu_ld793 with_sysroot794 enable_libtool_lock795 708 ' 796 709 ac_precious_vars='build_alias … … 800 713 CONFIGURATION 801 714 DRIVER_DIR 802 CFA_VERSION 803 CC 804 CFLAGS 715 CXX 716 CXXFLAGS 805 717 LDFLAGS 806 718 LIBS 807 719 CPPFLAGS 808 LT_SYS_LIBRARY_PATH809 CPP810 CXX811 CXXFLAGS812 720 CCC 813 CXXCPP 721 CC 722 CFLAGS 814 723 CCAS 815 724 CCASFLAGS' … … 1426 1335 --program-suffix=SUFFIX append SUFFIX to installed program names 1427 1336 --program-transform-name=PROGRAM run sed PROGRAM on installed program names 1428 1429 System types:1430 --build=BUILD configure for building on BUILD [guessed]1431 --host=HOST cross-compile to build programs to run on HOST [BUILD]1432 1337 _ACEOF 1433 1338 fi … … 1445 1350 --enable-silent-rules less verbose build output (undo: "make V=1") 1446 1351 --disable-silent-rules verbose build output (undo: "make V=0") 1447 --enable-shared[=PKGS] build shared libraries [default=yes]1448 --enable-static[=PKGS] build static libraries [default=yes]1449 --enable-fast-install[=PKGS]1450 optimize for fast installation [default=yes]1451 1352 --enable-dependency-tracking 1452 1353 do not reject slow dependency extractors 1453 1354 --disable-dependency-tracking 1454 1355 speeds up one-time build 1455 --disable-libtool-lock avoid locking (might break parallel builds)1456 1356 1457 1357 Optional Packages: … … 1459 1359 --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) 1460 1360 --with-cfa-name=NAME NAME too which cfa will be installed 1461 --with-pic[=PKGS] try to use only PIC/non-PIC objects [default=use1462 both]1463 --with-aix-soname=aix|svr4|both1464 shared library versioning (aka "SONAME") variant to1465 provide on AIX, [default=aix].1466 --with-gnu-ld assume the C compiler uses GNU ld [default=no]1467 --with-sysroot[=DIR] Search for dependent libraries within DIR (or the1468 compiler's sysroot if not specified).1469 1361 1470 1362 Some influential environment variables: … … 1475 1367 deubg, nodebug, nolib (prelude-only) 1476 1368 DRIVER_DIR The path to the cforall driver directory 1477 CFA_VERSION The long version of cfa 1478 CC C compiler command 1479 CFLAGS C compiler flags 1369 CXX C++ compiler command 1370 CXXFLAGS C++ compiler flags 1480 1371 LDFLAGS linker flags, e.g. -L<lib dir> if you have libraries in a 1481 1372 nonstandard directory <lib dir> … … 1483 1374 CPPFLAGS (Objective) C/C++ preprocessor flags, e.g. -I<include dir> if 1484 1375 you have headers in a nonstandard directory <include dir> 1485 LT_SYS_LIBRARY_PATH 1486 User-defined run-time library search path. 1487 CPP C preprocessor 1488 CXX C++ compiler command 1489 CXXFLAGS C++ compiler flags 1490 CXXCPP C++ preprocessor 1376 CC C compiler command 1377 CFLAGS C compiler flags 1491 1378 CCAS assembler compiler command (defaults to CC) 1492 1379 CCASFLAGS assembler compiler flags (defaults to CFLAGS) … … 1571 1458 ## Autoconf initialization. ## 1572 1459 ## ------------------------ ## 1460 1461 # ac_fn_cxx_try_compile LINENO 1462 # ---------------------------- 1463 # Try to compile conftest.$ac_ext, and return whether this succeeded. 1464 ac_fn_cxx_try_compile () 1465 { 1466 as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack 1467 rm -f conftest.$ac_objext 1468 if { { ac_try="$ac_compile" 1469 case "(($ac_try" in 1470 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; 1471 *) ac_try_echo=$ac_try;; 1472 esac 1473 eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" 1474 $as_echo "$ac_try_echo"; } >&5 1475 (eval "$ac_compile") 2>conftest.err 1476 ac_status=$? 1477 if test -s conftest.err; then 1478 grep -v '^ *+' conftest.err >conftest.er1 1479 cat conftest.er1 >&5 1480 mv -f conftest.er1 conftest.err 1481 fi 1482 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 1483 test $ac_status = 0; } && { 1484 test -z "$ac_cxx_werror_flag" || 1485 test ! -s conftest.err 1486 } && test -s conftest.$ac_objext; then : 1487 ac_retval=0 1488 else 1489 $as_echo "$as_me: failed program was:" >&5 1490 sed 's/^/| /' conftest.$ac_ext >&5 1491 1492 ac_retval=1 1493 fi 1494 eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno 1495 as_fn_set_status $ac_retval 1496 1497 } # ac_fn_cxx_try_compile 1573 1498 1574 1499 # ac_fn_c_try_compile LINENO … … 1609 1534 1610 1535 } # ac_fn_c_try_compile 1611 1612 # ac_fn_c_try_link LINENO1613 # -----------------------1614 # Try to link conftest.$ac_ext, and return whether this succeeded.1615 ac_fn_c_try_link ()1616 {1617 as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack1618 rm -f conftest.$ac_objext conftest$ac_exeext1619 if { { ac_try="$ac_link"1620 case "(($ac_try" in1621 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;1622 *) ac_try_echo=$ac_try;;1623 esac1624 eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""1625 $as_echo "$ac_try_echo"; } >&51626 (eval "$ac_link") 2>conftest.err1627 ac_status=$?1628 if test -s conftest.err; then1629 grep -v '^ *+' conftest.err >conftest.er11630 cat conftest.er1 >&51631 mv -f conftest.er1 conftest.err1632 fi1633 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&51634 test $ac_status = 0; } && {1635 test -z "$ac_c_werror_flag" ||1636 test ! -s conftest.err1637 } && test -s conftest$ac_exeext && {1638 test "$cross_compiling" = yes ||1639 test -x conftest$ac_exeext1640 }; then :1641 ac_retval=01642 else1643 $as_echo "$as_me: failed program was:" >&51644 sed 's/^/| /' conftest.$ac_ext >&51645 1646 ac_retval=11647 fi1648 # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information1649 # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would1650 # interfere with the next link command; also delete a directory that is1651 # left behind by Apple's compiler. We do this before executing the actions.1652 rm -rf conftest.dSYM conftest_ipa8_conftest.oo1653 eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno1654 as_fn_set_status $ac_retval1655 1656 } # ac_fn_c_try_link1657 1658 # ac_fn_c_check_header_compile LINENO HEADER VAR INCLUDES1659 # -------------------------------------------------------1660 # Tests whether HEADER exists and can be compiled using the include files in1661 # INCLUDES, setting the cache variable VAR accordingly.1662 ac_fn_c_check_header_compile ()1663 {1664 as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack1665 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&51666 $as_echo_n "checking for $2... " >&6; }1667 if eval \${$3+:} false; then :1668 $as_echo_n "(cached) " >&61669 else1670 cat confdefs.h - <<_ACEOF >conftest.$ac_ext1671 /* end confdefs.h. */1672 $41673 #include <$2>1674 _ACEOF1675 if ac_fn_c_try_compile "$LINENO"; then :1676 eval "$3=yes"1677 else1678 eval "$3=no"1679 fi1680 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext1681 fi1682 eval ac_res=\$$31683 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&51684 $as_echo "$ac_res" >&6; }1685 eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno1686 1687 } # ac_fn_c_check_header_compile1688 1689 # ac_fn_c_try_cpp LINENO1690 # ----------------------1691 # Try to preprocess conftest.$ac_ext, and return whether this succeeded.1692 ac_fn_c_try_cpp ()1693 {1694 as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack1695 if { { ac_try="$ac_cpp conftest.$ac_ext"1696 case "(($ac_try" in1697 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;1698 *) ac_try_echo=$ac_try;;1699 esac1700 eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""1701 $as_echo "$ac_try_echo"; } >&51702 (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err1703 ac_status=$?1704 if test -s conftest.err; then1705 grep -v '^ *+' conftest.err >conftest.er11706 cat conftest.er1 >&51707 mv -f conftest.er1 conftest.err1708 fi1709 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&51710 test $ac_status = 0; } > conftest.i && {1711 test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||1712 test ! -s conftest.err1713 }; then :1714 ac_retval=01715 else1716 $as_echo "$as_me: failed program was:" >&51717 sed 's/^/| /' conftest.$ac_ext >&51718 1719 ac_retval=11720 fi1721 eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno1722 as_fn_set_status $ac_retval1723 1724 } # ac_fn_c_try_cpp1725 1726 # ac_fn_c_try_run LINENO1727 # ----------------------1728 # Try to link conftest.$ac_ext, and return whether this succeeded. Assumes1729 # that executables *can* be run.1730 ac_fn_c_try_run ()1731 {1732 as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack1733 if { { ac_try="$ac_link"1734 case "(($ac_try" in1735 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;1736 *) ac_try_echo=$ac_try;;1737 esac1738 eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""1739 $as_echo "$ac_try_echo"; } >&51740 (eval "$ac_link") 2>&51741 ac_status=$?1742 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&51743 test $ac_status = 0; } && { ac_try='./conftest$ac_exeext'1744 { { case "(($ac_try" in1745 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;1746 *) ac_try_echo=$ac_try;;1747 esac1748 eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""1749 $as_echo "$ac_try_echo"; } >&51750 (eval "$ac_try") 2>&51751 ac_status=$?1752 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&51753 test $ac_status = 0; }; }; then :1754 ac_retval=01755 else1756 $as_echo "$as_me: program exited with status $ac_status" >&51757 $as_echo "$as_me: failed program was:" >&51758 sed 's/^/| /' conftest.$ac_ext >&51759 1760 ac_retval=$ac_status1761 fi1762 rm -rf conftest.dSYM conftest_ipa8_conftest.oo1763 eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno1764 as_fn_set_status $ac_retval1765 1766 } # ac_fn_c_try_run1767 1768 # ac_fn_c_check_func LINENO FUNC VAR1769 # ----------------------------------1770 # Tests whether FUNC exists, setting the cache variable VAR accordingly1771 ac_fn_c_check_func ()1772 {1773 as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack1774 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&51775 $as_echo_n "checking for $2... " >&6; }1776 if eval \${$3+:} false; then :1777 $as_echo_n "(cached) " >&61778 else1779 cat confdefs.h - <<_ACEOF >conftest.$ac_ext1780 /* end confdefs.h. */1781 /* Define $2 to an innocuous variant, in case <limits.h> declares $2.1782 For example, HP-UX 11i <limits.h> declares gettimeofday. */1783 #define $2 innocuous_$21784 1785 /* System header to define __stub macros and hopefully few prototypes,1786 which can conflict with char $2 (); below.1787 Prefer <limits.h> to <assert.h> if __STDC__ is defined, since1788 <limits.h> exists even on freestanding compilers. */1789 1790 #ifdef __STDC__1791 # include <limits.h>1792 #else1793 # include <assert.h>1794 #endif1795 1796 #undef $21797 1798 /* Override any GCC internal prototype to avoid an error.1799 Use char because int might match the return type of a GCC1800 builtin and then its argument prototype would still apply. */1801 #ifdef __cplusplus1802 extern "C"1803 #endif1804 char $2 ();1805 /* The GNU C library defines this for functions which it implements1806 to always fail with ENOSYS. Some functions are actually named1807 something starting with __ and the normal name is an alias. */1808 #if defined __stub_$2 || defined __stub___$21809 choke me1810 #endif1811 1812 int1813 main ()1814 {1815 return $2 ();1816 ;1817 return 0;1818 }1819 _ACEOF1820 if ac_fn_c_try_link "$LINENO"; then :1821 eval "$3=yes"1822 else1823 eval "$3=no"1824 fi1825 rm -f core conftest.err conftest.$ac_objext \1826 conftest$ac_exeext conftest.$ac_ext1827 fi1828 eval ac_res=\$$31829 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&51830 $as_echo "$ac_res" >&6; }1831 eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno1832 1833 } # ac_fn_c_check_func1834 1835 # ac_fn_cxx_try_compile LINENO1836 # ----------------------------1837 # Try to compile conftest.$ac_ext, and return whether this succeeded.1838 ac_fn_cxx_try_compile ()1839 {1840 as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack1841 rm -f conftest.$ac_objext1842 if { { ac_try="$ac_compile"1843 case "(($ac_try" in1844 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;1845 *) ac_try_echo=$ac_try;;1846 esac1847 eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""1848 $as_echo "$ac_try_echo"; } >&51849 (eval "$ac_compile") 2>conftest.err1850 ac_status=$?1851 if test -s conftest.err; then1852 grep -v '^ *+' conftest.err >conftest.er11853 cat conftest.er1 >&51854 mv -f conftest.er1 conftest.err1855 fi1856 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&51857 test $ac_status = 0; } && {1858 test -z "$ac_cxx_werror_flag" ||1859 test ! -s conftest.err1860 } && test -s conftest.$ac_objext; then :1861 ac_retval=01862 else1863 $as_echo "$as_me: failed program was:" >&51864 sed 's/^/| /' conftest.$ac_ext >&51865 1866 ac_retval=11867 fi1868 eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno1869 as_fn_set_status $ac_retval1870 1871 } # ac_fn_cxx_try_compile1872 1873 # ac_fn_cxx_try_cpp LINENO1874 # ------------------------1875 # Try to preprocess conftest.$ac_ext, and return whether this succeeded.1876 ac_fn_cxx_try_cpp ()1877 {1878 as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack1879 if { { ac_try="$ac_cpp conftest.$ac_ext"1880 case "(($ac_try" in1881 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;1882 *) ac_try_echo=$ac_try;;1883 esac1884 eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""1885 $as_echo "$ac_try_echo"; } >&51886 (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err1887 ac_status=$?1888 if test -s conftest.err; then1889 grep -v '^ *+' conftest.err >conftest.er11890 cat conftest.er1 >&51891 mv -f conftest.er1 conftest.err1892 fi1893 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&51894 test $ac_status = 0; } > conftest.i && {1895 test -z "$ac_cxx_preproc_warn_flag$ac_cxx_werror_flag" ||1896 test ! -s conftest.err1897 }; then :1898 ac_retval=01899 else1900 $as_echo "$as_me: failed program was:" >&51901 sed 's/^/| /' conftest.$ac_ext >&51902 1903 ac_retval=11904 fi1905 eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno1906 as_fn_set_status $ac_retval1907 1908 } # ac_fn_cxx_try_cpp1909 1910 # ac_fn_cxx_try_link LINENO1911 # -------------------------1912 # Try to link conftest.$ac_ext, and return whether this succeeded.1913 ac_fn_cxx_try_link ()1914 {1915 as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack1916 rm -f conftest.$ac_objext conftest$ac_exeext1917 if { { ac_try="$ac_link"1918 case "(($ac_try" in1919 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;1920 *) ac_try_echo=$ac_try;;1921 esac1922 eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""1923 $as_echo "$ac_try_echo"; } >&51924 (eval "$ac_link") 2>conftest.err1925 ac_status=$?1926 if test -s conftest.err; then1927 grep -v '^ *+' conftest.err >conftest.er11928 cat conftest.er1 >&51929 mv -f conftest.er1 conftest.err1930 fi1931 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&51932 test $ac_status = 0; } && {1933 test -z "$ac_cxx_werror_flag" ||1934 test ! -s conftest.err1935 } && test -s conftest$ac_exeext && {1936 test "$cross_compiling" = yes ||1937 test -x conftest$ac_exeext1938 }; then :1939 ac_retval=01940 else1941 $as_echo "$as_me: failed program was:" >&51942 sed 's/^/| /' conftest.$ac_ext >&51943 1944 ac_retval=11945 fi1946 # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information1947 # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would1948 # interfere with the next link command; also delete a directory that is1949 # left behind by Apple's compiler. We do this before executing the actions.1950 rm -rf conftest.dSYM conftest_ipa8_conftest.oo1951 eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno1952 as_fn_set_status $ac_retval1953 1954 } # ac_fn_cxx_try_link1955 1536 cat >config.log <<_ACEOF 1956 1537 This file contains any messages produced by compilers while … … 2306 1887 2307 1888 ac_aux_dir= 2308 for ac_dir in automake "$srcdir"/automake; do1889 for ac_dir in ./automake "$srcdir"/./automake; do 2309 1890 if test -f "$ac_dir/install-sh"; then 2310 1891 ac_aux_dir=$ac_dir … … 2322 1903 done 2323 1904 if test -z "$ac_aux_dir"; then 2324 as_fn_error $? "cannot find install-sh, install.sh, or shtool in automake \"$srcdir\"/automake" "$LINENO" 51905 as_fn_error $? "cannot find install-sh, install.sh, or shtool in ./automake \"$srcdir\"/./automake" "$LINENO" 5 2325 1906 fi 2326 1907 … … 2332 1913 ac_config_sub="$SHELL $ac_aux_dir/config.sub" # Please don't use this var. 2333 1914 ac_configure="$SHELL $ac_aux_dir/configure" # Please don't use this var. 2334 2335 1915 2336 1916 … … 2927 2507 : ${CFLAGS=""} 2928 2508 2929 # define this to override2930 AR_FLAGS="cr"2931 2932 2509 # Allow program name tansformation 2933 2510 # will fill program_transform_name with appropriate sed regex … … 2938 2515 2939 2516 2940 2941 2517 CFACC=${DRIVER_DIR}cfa 2942 2518 CFACPP=${DRIVER_DIR}cfa-cpp 2943 2944 2519 2945 2520 … … 2971 2546 CONFIG_BUILDLIB="no" 2972 2547 ;; 2973 *)2974 as_fn_error $? "'Invalid value $CONFIGURATION for \$CONFIGURATION'" "$LINENO" 52975 ;;2976 2548 esac 2977 2549 … … 3076 2648 3077 2649 # Checks for programs. 3078 case `pwd` in 3079 *\ * | *\ *) 3080 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&5 3081 $as_echo "$as_me: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&2;} ;; 3082 esac 3083 3084 3085 3086 macro_version='2.4.6' 3087 macro_revision='2.4.6' 3088 3089 3090 3091 3092 3093 3094 3095 3096 3097 3098 3099 3100 3101 ltmain=$ac_aux_dir/ltmain.sh 3102 3103 # Make sure we can run config.sub. 3104 $SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 || 3105 as_fn_error $? "cannot run $SHELL $ac_aux_dir/config.sub" "$LINENO" 5 3106 3107 { $as_echo "$as_me:${as_lineno-$LINENO}: checking build system type" >&5 3108 $as_echo_n "checking build system type... " >&6; } 3109 if ${ac_cv_build+:} false; then : 3110 $as_echo_n "(cached) " >&6 3111 else 3112 ac_build_alias=$build_alias 3113 test "x$ac_build_alias" = x && 3114 ac_build_alias=`$SHELL "$ac_aux_dir/config.guess"` 3115 test "x$ac_build_alias" = x && 3116 as_fn_error $? "cannot guess build type; you must specify one" "$LINENO" 5 3117 ac_cv_build=`$SHELL "$ac_aux_dir/config.sub" $ac_build_alias` || 3118 as_fn_error $? "$SHELL $ac_aux_dir/config.sub $ac_build_alias failed" "$LINENO" 5 3119 3120 fi 3121 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build" >&5 3122 $as_echo "$ac_cv_build" >&6; } 3123 case $ac_cv_build in 3124 *-*-*) ;; 3125 *) as_fn_error $? "invalid value of canonical build" "$LINENO" 5;; 3126 esac 3127 build=$ac_cv_build 3128 ac_save_IFS=$IFS; IFS='-' 3129 set x $ac_cv_build 3130 shift 3131 build_cpu=$1 3132 build_vendor=$2 3133 shift; shift 3134 # Remember, the first character of IFS is used to create $*, 3135 # except with old shells: 3136 build_os=$* 3137 IFS=$ac_save_IFS 3138 case $build_os in *\ *) build_os=`echo "$build_os" | sed 's/ /-/g'`;; esac 3139 3140 3141 { $as_echo "$as_me:${as_lineno-$LINENO}: checking host system type" >&5 3142 $as_echo_n "checking host system type... " >&6; } 3143 if ${ac_cv_host+:} false; then : 3144 $as_echo_n "(cached) " >&6 3145 else 3146 if test "x$host_alias" = x; then 3147 ac_cv_host=$ac_cv_build 3148 else 3149 ac_cv_host=`$SHELL "$ac_aux_dir/config.sub" $host_alias` || 3150 as_fn_error $? "$SHELL $ac_aux_dir/config.sub $host_alias failed" "$LINENO" 5 3151 fi 3152 3153 fi 3154 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_host" >&5 3155 $as_echo "$ac_cv_host" >&6; } 3156 case $ac_cv_host in 3157 *-*-*) ;; 3158 *) as_fn_error $? "invalid value of canonical host" "$LINENO" 5;; 3159 esac 3160 host=$ac_cv_host 3161 ac_save_IFS=$IFS; IFS='-' 3162 set x $ac_cv_host 3163 shift 3164 host_cpu=$1 3165 host_vendor=$2 3166 shift; shift 3167 # Remember, the first character of IFS is used to create $*, 3168 # except with old shells: 3169 host_os=$* 3170 IFS=$ac_save_IFS 3171 case $host_os in *\ *) host_os=`echo "$host_os" | sed 's/ /-/g'`;; esac 3172 3173 3174 # Backslashify metacharacters that are still active within 3175 # double-quoted strings. 3176 sed_quote_subst='s/\(["`$\\]\)/\\\1/g' 3177 3178 # Same as above, but do not quote variable references. 3179 double_quote_subst='s/\(["`\\]\)/\\\1/g' 3180 3181 # Sed substitution to delay expansion of an escaped shell variable in a 3182 # double_quote_subst'ed string. 3183 delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g' 3184 3185 # Sed substitution to delay expansion of an escaped single quote. 3186 delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g' 3187 3188 # Sed substitution to avoid accidental globbing in evaled expressions 3189 no_glob_subst='s/\*/\\\*/g' 3190 3191 ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' 3192 ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO 3193 ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO 3194 3195 { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to print strings" >&5 3196 $as_echo_n "checking how to print strings... " >&6; } 3197 # Test print first, because it will be a builtin if present. 3198 if test "X`( print -r -- -n ) 2>/dev/null`" = X-n && \ 3199 test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then 3200 ECHO='print -r --' 3201 elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then 3202 ECHO='printf %s\n' 3203 else 3204 # Use this function as a fallback that always works. 3205 func_fallback_echo () 3206 { 3207 eval 'cat <<_LTECHO_EOF 3208 $1 3209 _LTECHO_EOF' 3210 } 3211 ECHO='func_fallback_echo' 3212 fi 3213 3214 # func_echo_all arg... 3215 # Invoke $ECHO with all args, space-separated. 3216 func_echo_all () 3217 { 3218 $ECHO "" 3219 } 3220 3221 case $ECHO in 3222 printf*) { $as_echo "$as_me:${as_lineno-$LINENO}: result: printf" >&5 3223 $as_echo "printf" >&6; } ;; 3224 print*) { $as_echo "$as_me:${as_lineno-$LINENO}: result: print -r" >&5 3225 $as_echo "print -r" >&6; } ;; 3226 *) { $as_echo "$as_me:${as_lineno-$LINENO}: result: cat" >&5 3227 $as_echo "cat" >&6; } ;; 3228 esac 3229 3230 3231 3232 3233 3234 3235 3236 3237 3238 3239 3240 3241 3242 3243 DEPDIR="${am__leading_dot}deps" 3244 3245 ac_config_commands="$ac_config_commands depfiles" 3246 3247 3248 am_make=${MAKE-make} 3249 cat > confinc << 'END' 3250 am__doit: 3251 @echo this is the am__doit target 3252 .PHONY: am__doit 3253 END 3254 # If we don't find an include directive, just comment out the code. 3255 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for style of include used by $am_make" >&5 3256 $as_echo_n "checking for style of include used by $am_make... " >&6; } 3257 am__include="#" 3258 am__quote= 3259 _am_result=none 3260 # First try GNU make style include. 3261 echo "include confinc" > confmf 3262 # Ignore all kinds of additional output from 'make'. 3263 case `$am_make -s -f confmf 2> /dev/null` in #( 3264 *the\ am__doit\ target*) 3265 am__include=include 3266 am__quote= 3267 _am_result=GNU 3268 ;; 3269 esac 3270 # Now try BSD make style include. 3271 if test "$am__include" = "#"; then 3272 echo '.include "confinc"' > confmf 3273 case `$am_make -s -f confmf 2> /dev/null` in #( 3274 *the\ am__doit\ target*) 3275 am__include=.include 3276 am__quote="\"" 3277 _am_result=BSD 3278 ;; 3279 esac 3280 fi 3281 3282 3283 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $_am_result" >&5 3284 $as_echo "$_am_result" >&6; } 3285 rm -f confinc confmf 3286 3287 # Check whether --enable-dependency-tracking was given. 3288 if test "${enable_dependency_tracking+set}" = set; then : 3289 enableval=$enable_dependency_tracking; 3290 fi 3291 3292 if test "x$enable_dependency_tracking" != xno; then 3293 am_depcomp="$ac_aux_dir/depcomp" 3294 AMDEPBACKSLASH='\' 3295 am__nodep='_no' 3296 fi 3297 if test "x$enable_dependency_tracking" != xno; then 3298 AMDEP_TRUE= 3299 AMDEP_FALSE='#' 3300 else 3301 AMDEP_TRUE='#' 3302 AMDEP_FALSE= 3303 fi 3304 3305 3306 ac_ext=c 3307 ac_cpp='$CPP $CPPFLAGS' 3308 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' 3309 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' 3310 ac_compiler_gnu=$ac_cv_c_compiler_gnu 3311 if test -n "$ac_tool_prefix"; then 3312 # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args. 3313 set dummy ${ac_tool_prefix}gcc; ac_word=$2 2650 ac_ext=cpp 2651 ac_cpp='$CXXCPP $CPPFLAGS' 2652 ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' 2653 ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' 2654 ac_compiler_gnu=$ac_cv_cxx_compiler_gnu 2655 if test -z "$CXX"; then 2656 if test -n "$CCC"; then 2657 CXX=$CCC 2658 else 2659 if test -n "$ac_tool_prefix"; then 2660 for ac_prog in g++ c++ gpp aCC CC cxx cc++ cl.exe FCC KCC RCC xlC_r xlC 2661 do 2662 # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. 2663 set dummy $ac_tool_prefix$ac_prog; ac_word=$2 3314 2664 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 3315 2665 $as_echo_n "checking for $ac_word... " >&6; } 3316 if ${ac_cv_prog_C C+:} false; then :2666 if ${ac_cv_prog_CXX+:} false; then : 3317 2667 $as_echo_n "(cached) " >&6 3318 2668 else 3319 if test -n "$C C"; then3320 ac_cv_prog_C C="$CC" # Let the user override the test.2669 if test -n "$CXX"; then 2670 ac_cv_prog_CXX="$CXX" # Let the user override the test. 3321 2671 else 3322 2672 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR … … 3327 2677 for ac_exec_ext in '' $ac_executable_extensions; do 3328 2678 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then 3329 ac_cv_prog_C C="${ac_tool_prefix}gcc"2679 ac_cv_prog_CXX="$ac_tool_prefix$ac_prog" 3330 2680 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 3331 2681 break 2 … … 3337 2687 fi 3338 2688 fi 3339 C C=$ac_cv_prog_CC3340 if test -n "$C C"; then3341 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $C C" >&53342 $as_echo "$C C" >&6; }2689 CXX=$ac_cv_prog_CXX 2690 if test -n "$CXX"; then 2691 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CXX" >&5 2692 $as_echo "$CXX" >&6; } 3343 2693 else 3344 2694 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 … … 3347 2697 3348 2698 3349 fi 3350 if test -z "$ac_cv_prog_CC"; then 3351 ac_ct_CC=$CC 3352 # Extract the first word of "gcc", so it can be a program name with args. 3353 set dummy gcc; ac_word=$2 2699 test -n "$CXX" && break 2700 done 2701 fi 2702 if test -z "$CXX"; then 2703 ac_ct_CXX=$CXX 2704 for ac_prog in g++ c++ gpp aCC CC cxx cc++ cl.exe FCC KCC RCC xlC_r xlC 2705 do 2706 # Extract the first word of "$ac_prog", so it can be a program name with args. 2707 set dummy $ac_prog; ac_word=$2 3354 2708 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 3355 2709 $as_echo_n "checking for $ac_word... " >&6; } 3356 if ${ac_cv_prog_ac_ct_C C+:} false; then :2710 if ${ac_cv_prog_ac_ct_CXX+:} false; then : 3357 2711 $as_echo_n "(cached) " >&6 3358 2712 else 3359 if test -n "$ac_ct_C C"; then3360 ac_cv_prog_ac_ct_C C="$ac_ct_CC" # Let the user override the test.2713 if test -n "$ac_ct_CXX"; then 2714 ac_cv_prog_ac_ct_CXX="$ac_ct_CXX" # Let the user override the test. 3361 2715 else 3362 2716 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR … … 3367 2721 for ac_exec_ext in '' $ac_executable_extensions; do 3368 2722 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then 3369 ac_cv_prog_ac_ct_C C="gcc"2723 ac_cv_prog_ac_ct_CXX="$ac_prog" 3370 2724 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 3371 2725 break 2 … … 3377 2731 fi 3378 2732 fi 3379 ac_ct_C C=$ac_cv_prog_ac_ct_CC3380 if test -n "$ac_ct_C C"; then3381 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_C C" >&53382 $as_echo "$ac_ct_C C" >&6; }2733 ac_ct_CXX=$ac_cv_prog_ac_ct_CXX 2734 if test -n "$ac_ct_CXX"; then 2735 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CXX" >&5 2736 $as_echo "$ac_ct_CXX" >&6; } 3383 2737 else 3384 2738 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 … … 3386 2740 fi 3387 2741 3388 if test "x$ac_ct_CC" = x; then 3389 CC="" 2742 2743 test -n "$ac_ct_CXX" && break 2744 done 2745 2746 if test "x$ac_ct_CXX" = x; then 2747 CXX="g++" 3390 2748 else 3391 2749 case $cross_compiling:$ac_tool_warned in … … 3395 2753 ac_tool_warned=yes ;; 3396 2754 esac 3397 C C=$ac_ct_CC2755 CXX=$ac_ct_CXX 3398 2756 fi 3399 else 3400 CC="$ac_cv_prog_CC" 3401 fi 3402 3403 if test -z "$CC"; then 3404 if test -n "$ac_tool_prefix"; then 3405 # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args. 3406 set dummy ${ac_tool_prefix}cc; ac_word=$2 3407 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 3408 $as_echo_n "checking for $ac_word... " >&6; } 3409 if ${ac_cv_prog_CC+:} false; then : 3410 $as_echo_n "(cached) " >&6 3411 else 3412 if test -n "$CC"; then 3413 ac_cv_prog_CC="$CC" # Let the user override the test. 3414 else 3415 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR 3416 for as_dir in $PATH 3417 do 3418 IFS=$as_save_IFS 3419 test -z "$as_dir" && as_dir=. 3420 for ac_exec_ext in '' $ac_executable_extensions; do 3421 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then 3422 ac_cv_prog_CC="${ac_tool_prefix}cc" 3423 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 3424 break 2 2757 fi 2758 3425 2759 fi 3426 done 3427 done 3428 IFS=$as_save_IFS 3429 3430 fi 3431 fi 3432 CC=$ac_cv_prog_CC 3433 if test -n "$CC"; then 3434 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 3435 $as_echo "$CC" >&6; } 3436 else 3437 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 3438 $as_echo "no" >&6; } 3439 fi 3440 3441 3442 fi 3443 fi 3444 if test -z "$CC"; then 3445 # Extract the first word of "cc", so it can be a program name with args. 3446 set dummy cc; ac_word=$2 3447 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 3448 $as_echo_n "checking for $ac_word... " >&6; } 3449 if ${ac_cv_prog_CC+:} false; then : 3450 $as_echo_n "(cached) " >&6 3451 else 3452 if test -n "$CC"; then 3453 ac_cv_prog_CC="$CC" # Let the user override the test. 3454 else 3455 ac_prog_rejected=no 3456 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR 3457 for as_dir in $PATH 3458 do 3459 IFS=$as_save_IFS 3460 test -z "$as_dir" && as_dir=. 3461 for ac_exec_ext in '' $ac_executable_extensions; do 3462 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then 3463 if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then 3464 ac_prog_rejected=yes 3465 continue 3466 fi 3467 ac_cv_prog_CC="cc" 3468 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 3469 break 2 3470 fi 3471 done 3472 done 3473 IFS=$as_save_IFS 3474 3475 if test $ac_prog_rejected = yes; then 3476 # We found a bogon in the path, so make sure we never use it. 3477 set dummy $ac_cv_prog_CC 3478 shift 3479 if test $# != 0; then 3480 # We chose a different compiler from the bogus one. 3481 # However, it has the same basename, so the bogon will be chosen 3482 # first if we set CC to just the basename; use the full file name. 3483 shift 3484 ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@" 3485 fi 3486 fi 3487 fi 3488 fi 3489 CC=$ac_cv_prog_CC 3490 if test -n "$CC"; then 3491 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 3492 $as_echo "$CC" >&6; } 3493 else 3494 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 3495 $as_echo "no" >&6; } 3496 fi 3497 3498 3499 fi 3500 if test -z "$CC"; then 3501 if test -n "$ac_tool_prefix"; then 3502 for ac_prog in cl.exe 3503 do 3504 # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. 3505 set dummy $ac_tool_prefix$ac_prog; ac_word=$2 3506 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 3507 $as_echo_n "checking for $ac_word... " >&6; } 3508 if ${ac_cv_prog_CC+:} false; then : 3509 $as_echo_n "(cached) " >&6 3510 else 3511 if test -n "$CC"; then 3512 ac_cv_prog_CC="$CC" # Let the user override the test. 3513 else 3514 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR 3515 for as_dir in $PATH 3516 do 3517 IFS=$as_save_IFS 3518 test -z "$as_dir" && as_dir=. 3519 for ac_exec_ext in '' $ac_executable_extensions; do 3520 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then 3521 ac_cv_prog_CC="$ac_tool_prefix$ac_prog" 3522 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 3523 break 2 3524 fi 3525 done 3526 done 3527 IFS=$as_save_IFS 3528 3529 fi 3530 fi 3531 CC=$ac_cv_prog_CC 3532 if test -n "$CC"; then 3533 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 3534 $as_echo "$CC" >&6; } 3535 else 3536 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 3537 $as_echo "no" >&6; } 3538 fi 3539 3540 3541 test -n "$CC" && break 3542 done 3543 fi 3544 if test -z "$CC"; then 3545 ac_ct_CC=$CC 3546 for ac_prog in cl.exe 3547 do 3548 # Extract the first word of "$ac_prog", so it can be a program name with args. 3549 set dummy $ac_prog; ac_word=$2 3550 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 3551 $as_echo_n "checking for $ac_word... " >&6; } 3552 if ${ac_cv_prog_ac_ct_CC+:} false; then : 3553 $as_echo_n "(cached) " >&6 3554 else 3555 if test -n "$ac_ct_CC"; then 3556 ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. 3557 else 3558 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR 3559 for as_dir in $PATH 3560 do 3561 IFS=$as_save_IFS 3562 test -z "$as_dir" && as_dir=. 3563 for ac_exec_ext in '' $ac_executable_extensions; do 3564 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then 3565 ac_cv_prog_ac_ct_CC="$ac_prog" 3566 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 3567 break 2 3568 fi 3569 done 3570 done 3571 IFS=$as_save_IFS 3572 3573 fi 3574 fi 3575 ac_ct_CC=$ac_cv_prog_ac_ct_CC 3576 if test -n "$ac_ct_CC"; then 3577 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 3578 $as_echo "$ac_ct_CC" >&6; } 3579 else 3580 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 3581 $as_echo "no" >&6; } 3582 fi 3583 3584 3585 test -n "$ac_ct_CC" && break 3586 done 3587 3588 if test "x$ac_ct_CC" = x; then 3589 CC="" 3590 else 3591 case $cross_compiling:$ac_tool_warned in 3592 yes:) 3593 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 3594 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} 3595 ac_tool_warned=yes ;; 3596 esac 3597 CC=$ac_ct_CC 3598 fi 3599 fi 3600 3601 fi 3602 3603 3604 test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 3605 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} 3606 as_fn_error $? "no acceptable C compiler found in \$PATH 3607 See \`config.log' for more details" "$LINENO" 5; } 3608 2760 fi 3609 2761 # Provide some information about the compiler. 3610 $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&52762 $as_echo "$as_me:${as_lineno-$LINENO}: checking for C++ compiler version" >&5 3611 2763 set X $ac_compile 3612 2764 ac_compiler=$2 … … 3648 2800 # It will help us diagnose broken compilers, and finding out an intuition 3649 2801 # of exeext. 3650 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler works" >&53651 $as_echo_n "checking whether the C compiler works... " >&6; }2802 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C++ compiler works" >&5 2803 $as_echo_n "checking whether the C++ compiler works... " >&6; } 3652 2804 ac_link_default=`$as_echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'` 3653 2805 … … 3719 2871 { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 3720 2872 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} 3721 as_fn_error 77 "C compiler cannot create executables2873 as_fn_error 77 "C++ compiler cannot create executables 3722 2874 See \`config.log' for more details" "$LINENO" 5; } 3723 2875 else … … 3725 2877 $as_echo "yes" >&6; } 3726 2878 fi 3727 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler default output file name" >&53728 $as_echo_n "checking for C compiler default output file name... " >&6; }2879 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for C++ compiler default output file name" >&5 2880 $as_echo_n "checking for C++ compiler default output file name... " >&6; } 3729 2881 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_file" >&5 3730 2882 $as_echo "$ac_file" >&6; } … … 3820 2972 { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 3821 2973 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} 3822 as_fn_error $? "cannot run C compiled programs.2974 as_fn_error $? "cannot run C++ compiled programs. 3823 2975 If you meant to cross compile, use \`--host'. 3824 2976 See \`config.log' for more details" "$LINENO" 5; } … … 3882 3034 OBJEXT=$ac_cv_objext 3883 3035 ac_objext=$OBJEXT 3036 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C++ compiler" >&5 3037 $as_echo_n "checking whether we are using the GNU C++ compiler... " >&6; } 3038 if ${ac_cv_cxx_compiler_gnu+:} false; then : 3039 $as_echo_n "(cached) " >&6 3040 else 3041 cat confdefs.h - <<_ACEOF >conftest.$ac_ext 3042 /* end confdefs.h. */ 3043 3044 int 3045 main () 3046 { 3047 #ifndef __GNUC__ 3048 choke me 3049 #endif 3050 3051 ; 3052 return 0; 3053 } 3054 _ACEOF 3055 if ac_fn_cxx_try_compile "$LINENO"; then : 3056 ac_compiler_gnu=yes 3057 else 3058 ac_compiler_gnu=no 3059 fi 3060 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext 3061 ac_cv_cxx_compiler_gnu=$ac_compiler_gnu 3062 3063 fi 3064 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_cxx_compiler_gnu" >&5 3065 $as_echo "$ac_cv_cxx_compiler_gnu" >&6; } 3066 if test $ac_compiler_gnu = yes; then 3067 GXX=yes 3068 else 3069 GXX= 3070 fi 3071 ac_test_CXXFLAGS=${CXXFLAGS+set} 3072 ac_save_CXXFLAGS=$CXXFLAGS 3073 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CXX accepts -g" >&5 3074 $as_echo_n "checking whether $CXX accepts -g... " >&6; } 3075 if ${ac_cv_prog_cxx_g+:} false; then : 3076 $as_echo_n "(cached) " >&6 3077 else 3078 ac_save_cxx_werror_flag=$ac_cxx_werror_flag 3079 ac_cxx_werror_flag=yes 3080 ac_cv_prog_cxx_g=no 3081 CXXFLAGS="-g" 3082 cat confdefs.h - <<_ACEOF >conftest.$ac_ext 3083 /* end confdefs.h. */ 3084 3085 int 3086 main () 3087 { 3088 3089 ; 3090 return 0; 3091 } 3092 _ACEOF 3093 if ac_fn_cxx_try_compile "$LINENO"; then : 3094 ac_cv_prog_cxx_g=yes 3095 else 3096 CXXFLAGS="" 3097 cat confdefs.h - <<_ACEOF >conftest.$ac_ext 3098 /* end confdefs.h. */ 3099 3100 int 3101 main () 3102 { 3103 3104 ; 3105 return 0; 3106 } 3107 _ACEOF 3108 if ac_fn_cxx_try_compile "$LINENO"; then : 3109 3110 else 3111 ac_cxx_werror_flag=$ac_save_cxx_werror_flag 3112 CXXFLAGS="-g" 3113 cat confdefs.h - <<_ACEOF >conftest.$ac_ext 3114 /* end confdefs.h. */ 3115 3116 int 3117 main () 3118 { 3119 3120 ; 3121 return 0; 3122 } 3123 _ACEOF 3124 if ac_fn_cxx_try_compile "$LINENO"; then : 3125 ac_cv_prog_cxx_g=yes 3126 fi 3127 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext 3128 fi 3129 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext 3130 fi 3131 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext 3132 ac_cxx_werror_flag=$ac_save_cxx_werror_flag 3133 fi 3134 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cxx_g" >&5 3135 $as_echo "$ac_cv_prog_cxx_g" >&6; } 3136 if test "$ac_test_CXXFLAGS" = set; then 3137 CXXFLAGS=$ac_save_CXXFLAGS 3138 elif test $ac_cv_prog_cxx_g = yes; then 3139 if test "$GXX" = yes; then 3140 CXXFLAGS="-g -O2" 3141 else 3142 CXXFLAGS="-g" 3143 fi 3144 else 3145 if test "$GXX" = yes; then 3146 CXXFLAGS="-O2" 3147 else 3148 CXXFLAGS= 3149 fi 3150 fi 3151 ac_ext=c 3152 ac_cpp='$CPP $CPPFLAGS' 3153 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' 3154 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' 3155 ac_compiler_gnu=$ac_cv_c_compiler_gnu 3156 DEPDIR="${am__leading_dot}deps" 3157 3158 ac_config_commands="$ac_config_commands depfiles" 3159 3160 3161 am_make=${MAKE-make} 3162 cat > confinc << 'END' 3163 am__doit: 3164 @echo this is the am__doit target 3165 .PHONY: am__doit 3166 END 3167 # If we don't find an include directive, just comment out the code. 3168 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for style of include used by $am_make" >&5 3169 $as_echo_n "checking for style of include used by $am_make... " >&6; } 3170 am__include="#" 3171 am__quote= 3172 _am_result=none 3173 # First try GNU make style include. 3174 echo "include confinc" > confmf 3175 # Ignore all kinds of additional output from 'make'. 3176 case `$am_make -s -f confmf 2> /dev/null` in #( 3177 *the\ am__doit\ target*) 3178 am__include=include 3179 am__quote= 3180 _am_result=GNU 3181 ;; 3182 esac 3183 # Now try BSD make style include. 3184 if test "$am__include" = "#"; then 3185 echo '.include "confinc"' > confmf 3186 case `$am_make -s -f confmf 2> /dev/null` in #( 3187 *the\ am__doit\ target*) 3188 am__include=.include 3189 am__quote="\"" 3190 _am_result=BSD 3191 ;; 3192 esac 3193 fi 3194 3195 3196 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $_am_result" >&5 3197 $as_echo "$_am_result" >&6; } 3198 rm -f confinc confmf 3199 3200 # Check whether --enable-dependency-tracking was given. 3201 if test "${enable_dependency_tracking+set}" = set; then : 3202 enableval=$enable_dependency_tracking; 3203 fi 3204 3205 if test "x$enable_dependency_tracking" != xno; then 3206 am_depcomp="$ac_aux_dir/depcomp" 3207 AMDEPBACKSLASH='\' 3208 am__nodep='_no' 3209 fi 3210 if test "x$enable_dependency_tracking" != xno; then 3211 AMDEP_TRUE= 3212 AMDEP_FALSE='#' 3213 else 3214 AMDEP_TRUE='#' 3215 AMDEP_FALSE= 3216 fi 3217 3218 3219 3220 depcc="$CXX" am_compiler_list= 3221 3222 { $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5 3223 $as_echo_n "checking dependency style of $depcc... " >&6; } 3224 if ${am_cv_CXX_dependencies_compiler_type+:} false; then : 3225 $as_echo_n "(cached) " >&6 3226 else 3227 if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then 3228 # We make a subdir and do the tests there. Otherwise we can end up 3229 # making bogus files that we don't know about and never remove. For 3230 # instance it was reported that on HP-UX the gcc test will end up 3231 # making a dummy file named 'D' -- because '-MD' means "put the output 3232 # in D". 3233 rm -rf conftest.dir 3234 mkdir conftest.dir 3235 # Copy depcomp to subdir because otherwise we won't find it if we're 3236 # using a relative directory. 3237 cp "$am_depcomp" conftest.dir 3238 cd conftest.dir 3239 # We will build objects and dependencies in a subdirectory because 3240 # it helps to detect inapplicable dependency modes. For instance 3241 # both Tru64's cc and ICC support -MD to output dependencies as a 3242 # side effect of compilation, but ICC will put the dependencies in 3243 # the current directory while Tru64 will put them in the object 3244 # directory. 3245 mkdir sub 3246 3247 am_cv_CXX_dependencies_compiler_type=none 3248 if test "$am_compiler_list" = ""; then 3249 am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp` 3250 fi 3251 am__universal=false 3252 case " $depcc " in #( 3253 *\ -arch\ *\ -arch\ *) am__universal=true ;; 3254 esac 3255 3256 for depmode in $am_compiler_list; do 3257 # Setup a source with many dependencies, because some compilers 3258 # like to wrap large dependency lists on column 80 (with \), and 3259 # we should not choose a depcomp mode which is confused by this. 3260 # 3261 # We need to recreate these files for each test, as the compiler may 3262 # overwrite some of them when testing with obscure command lines. 3263 # This happens at least with the AIX C compiler. 3264 : > sub/conftest.c 3265 for i in 1 2 3 4 5 6; do 3266 echo '#include "conftst'$i'.h"' >> sub/conftest.c 3267 # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with 3268 # Solaris 10 /bin/sh. 3269 echo '/* dummy */' > sub/conftst$i.h 3270 done 3271 echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf 3272 3273 # We check with '-c' and '-o' for the sake of the "dashmstdout" 3274 # mode. It turns out that the SunPro C++ compiler does not properly 3275 # handle '-M -o', and we need to detect this. Also, some Intel 3276 # versions had trouble with output in subdirs. 3277 am__obj=sub/conftest.${OBJEXT-o} 3278 am__minus_obj="-o $am__obj" 3279 case $depmode in 3280 gcc) 3281 # This depmode causes a compiler race in universal mode. 3282 test "$am__universal" = false || continue 3283 ;; 3284 nosideeffect) 3285 # After this tag, mechanisms are not by side-effect, so they'll 3286 # only be used when explicitly requested. 3287 if test "x$enable_dependency_tracking" = xyes; then 3288 continue 3289 else 3290 break 3291 fi 3292 ;; 3293 msvc7 | msvc7msys | msvisualcpp | msvcmsys) 3294 # This compiler won't grok '-c -o', but also, the minuso test has 3295 # not run yet. These depmodes are late enough in the game, and 3296 # so weak that their functioning should not be impacted. 3297 am__obj=conftest.${OBJEXT-o} 3298 am__minus_obj= 3299 ;; 3300 none) break ;; 3301 esac 3302 if depmode=$depmode \ 3303 source=sub/conftest.c object=$am__obj \ 3304 depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ 3305 $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \ 3306 >/dev/null 2>conftest.err && 3307 grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 && 3308 grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 && 3309 grep $am__obj sub/conftest.Po > /dev/null 2>&1 && 3310 ${MAKE-make} -s -f confmf > /dev/null 2>&1; then 3311 # icc doesn't choke on unknown options, it will just issue warnings 3312 # or remarks (even with -Werror). So we grep stderr for any message 3313 # that says an option was ignored or not supported. 3314 # When given -MP, icc 7.0 and 7.1 complain thusly: 3315 # icc: Command line warning: ignoring option '-M'; no argument required 3316 # The diagnosis changed in icc 8.0: 3317 # icc: Command line remark: option '-MP' not supported 3318 if (grep 'ignoring option' conftest.err || 3319 grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else 3320 am_cv_CXX_dependencies_compiler_type=$depmode 3321 break 3322 fi 3323 fi 3324 done 3325 3326 cd .. 3327 rm -rf conftest.dir 3328 else 3329 am_cv_CXX_dependencies_compiler_type=none 3330 fi 3331 3332 fi 3333 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CXX_dependencies_compiler_type" >&5 3334 $as_echo "$am_cv_CXX_dependencies_compiler_type" >&6; } 3335 CXXDEPMODE=depmode=$am_cv_CXX_dependencies_compiler_type 3336 3337 if 3338 test "x$enable_dependency_tracking" != xno \ 3339 && test "$am_cv_CXX_dependencies_compiler_type" = gcc3; then 3340 am__fastdepCXX_TRUE= 3341 am__fastdepCXX_FALSE='#' 3342 else 3343 am__fastdepCXX_TRUE='#' 3344 am__fastdepCXX_FALSE= 3345 fi 3346 3347 3348 ac_ext=c 3349 ac_cpp='$CPP $CPPFLAGS' 3350 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' 3351 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' 3352 ac_compiler_gnu=$ac_cv_c_compiler_gnu 3353 if test -n "$ac_tool_prefix"; then 3354 # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args. 3355 set dummy ${ac_tool_prefix}gcc; ac_word=$2 3356 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 3357 $as_echo_n "checking for $ac_word... " >&6; } 3358 if ${ac_cv_prog_CC+:} false; then : 3359 $as_echo_n "(cached) " >&6 3360 else 3361 if test -n "$CC"; then 3362 ac_cv_prog_CC="$CC" # Let the user override the test. 3363 else 3364 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR 3365 for as_dir in $PATH 3366 do 3367 IFS=$as_save_IFS 3368 test -z "$as_dir" && as_dir=. 3369 for ac_exec_ext in '' $ac_executable_extensions; do 3370 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then 3371 ac_cv_prog_CC="${ac_tool_prefix}gcc" 3372 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 3373 break 2 3374 fi 3375 done 3376 done 3377 IFS=$as_save_IFS 3378 3379 fi 3380 fi 3381 CC=$ac_cv_prog_CC 3382 if test -n "$CC"; then 3383 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 3384 $as_echo "$CC" >&6; } 3385 else 3386 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 3387 $as_echo "no" >&6; } 3388 fi 3389 3390 3391 fi 3392 if test -z "$ac_cv_prog_CC"; then 3393 ac_ct_CC=$CC 3394 # Extract the first word of "gcc", so it can be a program name with args. 3395 set dummy gcc; ac_word=$2 3396 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 3397 $as_echo_n "checking for $ac_word... " >&6; } 3398 if ${ac_cv_prog_ac_ct_CC+:} false; then : 3399 $as_echo_n "(cached) " >&6 3400 else 3401 if test -n "$ac_ct_CC"; then 3402 ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. 3403 else 3404 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR 3405 for as_dir in $PATH 3406 do 3407 IFS=$as_save_IFS 3408 test -z "$as_dir" && as_dir=. 3409 for ac_exec_ext in '' $ac_executable_extensions; do 3410 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then 3411 ac_cv_prog_ac_ct_CC="gcc" 3412 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 3413 break 2 3414 fi 3415 done 3416 done 3417 IFS=$as_save_IFS 3418 3419 fi 3420 fi 3421 ac_ct_CC=$ac_cv_prog_ac_ct_CC 3422 if test -n "$ac_ct_CC"; then 3423 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 3424 $as_echo "$ac_ct_CC" >&6; } 3425 else 3426 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 3427 $as_echo "no" >&6; } 3428 fi 3429 3430 if test "x$ac_ct_CC" = x; then 3431 CC="" 3432 else 3433 case $cross_compiling:$ac_tool_warned in 3434 yes:) 3435 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 3436 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} 3437 ac_tool_warned=yes ;; 3438 esac 3439 CC=$ac_ct_CC 3440 fi 3441 else 3442 CC="$ac_cv_prog_CC" 3443 fi 3444 3445 if test -z "$CC"; then 3446 if test -n "$ac_tool_prefix"; then 3447 # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args. 3448 set dummy ${ac_tool_prefix}cc; ac_word=$2 3449 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 3450 $as_echo_n "checking for $ac_word... " >&6; } 3451 if ${ac_cv_prog_CC+:} false; then : 3452 $as_echo_n "(cached) " >&6 3453 else 3454 if test -n "$CC"; then 3455 ac_cv_prog_CC="$CC" # Let the user override the test. 3456 else 3457 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR 3458 for as_dir in $PATH 3459 do 3460 IFS=$as_save_IFS 3461 test -z "$as_dir" && as_dir=. 3462 for ac_exec_ext in '' $ac_executable_extensions; do 3463 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then 3464 ac_cv_prog_CC="${ac_tool_prefix}cc" 3465 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 3466 break 2 3467 fi 3468 done 3469 done 3470 IFS=$as_save_IFS 3471 3472 fi 3473 fi 3474 CC=$ac_cv_prog_CC 3475 if test -n "$CC"; then 3476 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 3477 $as_echo "$CC" >&6; } 3478 else 3479 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 3480 $as_echo "no" >&6; } 3481 fi 3482 3483 3484 fi 3485 fi 3486 if test -z "$CC"; then 3487 # Extract the first word of "cc", so it can be a program name with args. 3488 set dummy cc; ac_word=$2 3489 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 3490 $as_echo_n "checking for $ac_word... " >&6; } 3491 if ${ac_cv_prog_CC+:} false; then : 3492 $as_echo_n "(cached) " >&6 3493 else 3494 if test -n "$CC"; then 3495 ac_cv_prog_CC="$CC" # Let the user override the test. 3496 else 3497 ac_prog_rejected=no 3498 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR 3499 for as_dir in $PATH 3500 do 3501 IFS=$as_save_IFS 3502 test -z "$as_dir" && as_dir=. 3503 for ac_exec_ext in '' $ac_executable_extensions; do 3504 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then 3505 if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then 3506 ac_prog_rejected=yes 3507 continue 3508 fi 3509 ac_cv_prog_CC="cc" 3510 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 3511 break 2 3512 fi 3513 done 3514 done 3515 IFS=$as_save_IFS 3516 3517 if test $ac_prog_rejected = yes; then 3518 # We found a bogon in the path, so make sure we never use it. 3519 set dummy $ac_cv_prog_CC 3520 shift 3521 if test $# != 0; then 3522 # We chose a different compiler from the bogus one. 3523 # However, it has the same basename, so the bogon will be chosen 3524 # first if we set CC to just the basename; use the full file name. 3525 shift 3526 ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@" 3527 fi 3528 fi 3529 fi 3530 fi 3531 CC=$ac_cv_prog_CC 3532 if test -n "$CC"; then 3533 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 3534 $as_echo "$CC" >&6; } 3535 else 3536 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 3537 $as_echo "no" >&6; } 3538 fi 3539 3540 3541 fi 3542 if test -z "$CC"; then 3543 if test -n "$ac_tool_prefix"; then 3544 for ac_prog in cl.exe 3545 do 3546 # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. 3547 set dummy $ac_tool_prefix$ac_prog; ac_word=$2 3548 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 3549 $as_echo_n "checking for $ac_word... " >&6; } 3550 if ${ac_cv_prog_CC+:} false; then : 3551 $as_echo_n "(cached) " >&6 3552 else 3553 if test -n "$CC"; then 3554 ac_cv_prog_CC="$CC" # Let the user override the test. 3555 else 3556 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR 3557 for as_dir in $PATH 3558 do 3559 IFS=$as_save_IFS 3560 test -z "$as_dir" && as_dir=. 3561 for ac_exec_ext in '' $ac_executable_extensions; do 3562 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then 3563 ac_cv_prog_CC="$ac_tool_prefix$ac_prog" 3564 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 3565 break 2 3566 fi 3567 done 3568 done 3569 IFS=$as_save_IFS 3570 3571 fi 3572 fi 3573 CC=$ac_cv_prog_CC 3574 if test -n "$CC"; then 3575 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 3576 $as_echo "$CC" >&6; } 3577 else 3578 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 3579 $as_echo "no" >&6; } 3580 fi 3581 3582 3583 test -n "$CC" && break 3584 done 3585 fi 3586 if test -z "$CC"; then 3587 ac_ct_CC=$CC 3588 for ac_prog in cl.exe 3589 do 3590 # Extract the first word of "$ac_prog", so it can be a program name with args. 3591 set dummy $ac_prog; ac_word=$2 3592 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 3593 $as_echo_n "checking for $ac_word... " >&6; } 3594 if ${ac_cv_prog_ac_ct_CC+:} false; then : 3595 $as_echo_n "(cached) " >&6 3596 else 3597 if test -n "$ac_ct_CC"; then 3598 ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. 3599 else 3600 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR 3601 for as_dir in $PATH 3602 do 3603 IFS=$as_save_IFS 3604 test -z "$as_dir" && as_dir=. 3605 for ac_exec_ext in '' $ac_executable_extensions; do 3606 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then 3607 ac_cv_prog_ac_ct_CC="$ac_prog" 3608 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 3609 break 2 3610 fi 3611 done 3612 done 3613 IFS=$as_save_IFS 3614 3615 fi 3616 fi 3617 ac_ct_CC=$ac_cv_prog_ac_ct_CC 3618 if test -n "$ac_ct_CC"; then 3619 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 3620 $as_echo "$ac_ct_CC" >&6; } 3621 else 3622 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 3623 $as_echo "no" >&6; } 3624 fi 3625 3626 3627 test -n "$ac_ct_CC" && break 3628 done 3629 3630 if test "x$ac_ct_CC" = x; then 3631 CC="" 3632 else 3633 case $cross_compiling:$ac_tool_warned in 3634 yes:) 3635 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 3636 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} 3637 ac_tool_warned=yes ;; 3638 esac 3639 CC=$ac_ct_CC 3640 fi 3641 fi 3642 3643 fi 3644 3645 3646 test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 3647 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} 3648 as_fn_error $? "no acceptable C compiler found in \$PATH 3649 See \`config.log' for more details" "$LINENO" 5; } 3650 3651 # Provide some information about the compiler. 3652 $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5 3653 set X $ac_compile 3654 ac_compiler=$2 3655 for ac_option in --version -v -V -qversion; do 3656 { { ac_try="$ac_compiler $ac_option >&5" 3657 case "(($ac_try" in 3658 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; 3659 *) ac_try_echo=$ac_try;; 3660 esac 3661 eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" 3662 $as_echo "$ac_try_echo"; } >&5 3663 (eval "$ac_compiler $ac_option >&5") 2>conftest.err 3664 ac_status=$? 3665 if test -s conftest.err; then 3666 sed '10a\ 3667 ... rest of stderr output deleted ... 3668 10q' conftest.err >conftest.er1 3669 cat conftest.er1 >&5 3670 fi 3671 rm -f conftest.er1 conftest.err 3672 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 3673 test $ac_status = 0; } 3674 done 3675 3884 3676 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5 3885 3677 $as_echo_n "checking whether we are using the GNU C compiler... " >&6; } … … 4280 4072 4281 4073 4282 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for a sed that does not truncate output" >&54283 $as_echo_n "checking for a sed that does not truncate output... " >&6; }4284 if ${ac_cv_path_SED+:} false; then :4285 $as_echo_n "(cached) " >&64286 else4287 ac_script=s/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb/4288 for ac_i in 1 2 3 4 5 6 7; do4289 ac_script="$ac_script$as_nl$ac_script"4290 done4291 echo "$ac_script" 2>/dev/null | sed 99q >conftest.sed4292 { ac_script=; unset ac_script;}4293 if test -z "$SED"; then4294 ac_path_SED_found=false4295 # Loop through the user's path and test for each of PROGNAME-LIST4296 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR4297 for as_dir in $PATH4298 do4299 IFS=$as_save_IFS4300 test -z "$as_dir" && as_dir=.4301 for ac_prog in sed gsed; do4302 for ac_exec_ext in '' $ac_executable_extensions; do4303 ac_path_SED="$as_dir/$ac_prog$ac_exec_ext"4304 as_fn_executable_p "$ac_path_SED" || continue4305 # Check for GNU ac_path_SED and select it if it is found.4306 # Check for GNU $ac_path_SED4307 case `"$ac_path_SED" --version 2>&1` in4308 *GNU*)4309 ac_cv_path_SED="$ac_path_SED" ac_path_SED_found=:;;4310 *)4311 ac_count=04312 $as_echo_n 0123456789 >"conftest.in"4313 while :4314 do4315 cat "conftest.in" "conftest.in" >"conftest.tmp"4316 mv "conftest.tmp" "conftest.in"4317 cp "conftest.in" "conftest.nl"4318 $as_echo '' >> "conftest.nl"4319 "$ac_path_SED" -f conftest.sed < "conftest.nl" >"conftest.out" 2>/dev/null || break4320 diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break4321 as_fn_arith $ac_count + 1 && ac_count=$as_val4322 if test $ac_count -gt ${ac_path_SED_max-0}; then4323 # Best one so far, save it but keep looking for a better one4324 ac_cv_path_SED="$ac_path_SED"4325 ac_path_SED_max=$ac_count4326 fi4327 # 10*(2^10) chars as input seems more than enough4328 test $ac_count -gt 10 && break4329 done4330 rm -f conftest.in conftest.tmp conftest.nl conftest.out;;4331 esac4332 4333 $ac_path_SED_found && break 34334 done4335 done4336 done4337 IFS=$as_save_IFS4338 if test -z "$ac_cv_path_SED"; then4339 as_fn_error $? "no acceptable sed could be found in \$PATH" "$LINENO" 54340 fi4341 else4342 ac_cv_path_SED=$SED4343 fi4344 4345 fi4346 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_SED" >&54347 $as_echo "$ac_cv_path_SED" >&6; }4348 SED="$ac_cv_path_SED"4349 rm -f conftest.sed4350 4351 test -z "$SED" && SED=sed4352 Xsed="$SED -e 1s/^X//"4353 4354 4355 4356 4357 4358 4359 4360 4361 4362 4363 4364 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&54365 $as_echo_n "checking for grep that handles long lines and -e... " >&6; }4366 if ${ac_cv_path_GREP+:} false; then :4367 $as_echo_n "(cached) " >&64368 else4369 if test -z "$GREP"; then4370 ac_path_GREP_found=false4371 # Loop through the user's path and test for each of PROGNAME-LIST4372 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR4373 for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin4374 do4375 IFS=$as_save_IFS4376 test -z "$as_dir" && as_dir=.4377 for ac_prog in grep ggrep; do4378 for ac_exec_ext in '' $ac_executable_extensions; do4379 ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext"4380 as_fn_executable_p "$ac_path_GREP" || continue4381 # Check for GNU ac_path_GREP and select it if it is found.4382 # Check for GNU $ac_path_GREP4383 case `"$ac_path_GREP" --version 2>&1` in4384 *GNU*)4385 ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;;4386 *)4387 ac_count=04388 $as_echo_n 0123456789 >"conftest.in"4389 while :4390 do4391 cat "conftest.in" "conftest.in" >"conftest.tmp"4392 mv "conftest.tmp" "conftest.in"4393 cp "conftest.in" "conftest.nl"4394 $as_echo 'GREP' >> "conftest.nl"4395 "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break4396 diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break4397 as_fn_arith $ac_count + 1 && ac_count=$as_val4398 if test $ac_count -gt ${ac_path_GREP_max-0}; then4399 # Best one so far, save it but keep looking for a better one4400 ac_cv_path_GREP="$ac_path_GREP"4401 ac_path_GREP_max=$ac_count4402 fi4403 # 10*(2^10) chars as input seems more than enough4404 test $ac_count -gt 10 && break4405 done4406 rm -f conftest.in conftest.tmp conftest.nl conftest.out;;4407 esac4408 4409 $ac_path_GREP_found && break 34410 done4411 done4412 done4413 IFS=$as_save_IFS4414 if test -z "$ac_cv_path_GREP"; then4415 as_fn_error $? "no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 54416 fi4417 else4418 ac_cv_path_GREP=$GREP4419 fi4420 4421 fi4422 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&54423 $as_echo "$ac_cv_path_GREP" >&6; }4424 GREP="$ac_cv_path_GREP"4425 4426 4427 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&54428 $as_echo_n "checking for egrep... " >&6; }4429 if ${ac_cv_path_EGREP+:} false; then :4430 $as_echo_n "(cached) " >&64431 else4432 if echo a | $GREP -E '(a|b)' >/dev/null 2>&14433 then ac_cv_path_EGREP="$GREP -E"4434 else4435 if test -z "$EGREP"; then4436 ac_path_EGREP_found=false4437 # Loop through the user's path and test for each of PROGNAME-LIST4438 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR4439 for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin4440 do4441 IFS=$as_save_IFS4442 test -z "$as_dir" && as_dir=.4443 for ac_prog in egrep; do4444 for ac_exec_ext in '' $ac_executable_extensions; do4445 ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext"4446 as_fn_executable_p "$ac_path_EGREP" || continue4447 # Check for GNU ac_path_EGREP and select it if it is found.4448 # Check for GNU $ac_path_EGREP4449 case `"$ac_path_EGREP" --version 2>&1` in4450 *GNU*)4451 ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;;4452 *)4453 ac_count=04454 $as_echo_n 0123456789 >"conftest.in"4455 while :4456 do4457 cat "conftest.in" "conftest.in" >"conftest.tmp"4458 mv "conftest.tmp" "conftest.in"4459 cp "conftest.in" "conftest.nl"4460 $as_echo 'EGREP' >> "conftest.nl"4461 "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break4462 diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break4463 as_fn_arith $ac_count + 1 && ac_count=$as_val4464 if test $ac_count -gt ${ac_path_EGREP_max-0}; then4465 # Best one so far, save it but keep looking for a better one4466 ac_cv_path_EGREP="$ac_path_EGREP"4467 ac_path_EGREP_max=$ac_count4468 fi4469 # 10*(2^10) chars as input seems more than enough4470 test $ac_count -gt 10 && break4471 done4472 rm -f conftest.in conftest.tmp conftest.nl conftest.out;;4473 esac4474 4475 $ac_path_EGREP_found && break 34476 done4477 done4478 done4479 IFS=$as_save_IFS4480 if test -z "$ac_cv_path_EGREP"; then4481 as_fn_error $? "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 54482 fi4483 else4484 ac_cv_path_EGREP=$EGREP4485 fi4486 4487 fi4488 fi4489 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&54490 $as_echo "$ac_cv_path_EGREP" >&6; }4491 EGREP="$ac_cv_path_EGREP"4492 4493 4494 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for fgrep" >&54495 $as_echo_n "checking for fgrep... " >&6; }4496 if ${ac_cv_path_FGREP+:} false; then :4497 $as_echo_n "(cached) " >&64498 else4499 if echo 'ab*c' | $GREP -F 'ab*c' >/dev/null 2>&14500 then ac_cv_path_FGREP="$GREP -F"4501 else4502 if test -z "$FGREP"; then4503 ac_path_FGREP_found=false4504 # Loop through the user's path and test for each of PROGNAME-LIST4505 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR4506 for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin4507 do4508 IFS=$as_save_IFS4509 test -z "$as_dir" && as_dir=.4510 for ac_prog in fgrep; do4511 for ac_exec_ext in '' $ac_executable_extensions; do4512 ac_path_FGREP="$as_dir/$ac_prog$ac_exec_ext"4513 as_fn_executable_p "$ac_path_FGREP" || continue4514 # Check for GNU ac_path_FGREP and select it if it is found.4515 # Check for GNU $ac_path_FGREP4516 case `"$ac_path_FGREP" --version 2>&1` in4517 *GNU*)4518 ac_cv_path_FGREP="$ac_path_FGREP" ac_path_FGREP_found=:;;4519 *)4520 ac_count=04521 $as_echo_n 0123456789 >"conftest.in"4522 while :4523 do4524 cat "conftest.in" "conftest.in" >"conftest.tmp"4525 mv "conftest.tmp" "conftest.in"4526 cp "conftest.in" "conftest.nl"4527 $as_echo 'FGREP' >> "conftest.nl"4528 "$ac_path_FGREP" FGREP < "conftest.nl" >"conftest.out" 2>/dev/null || break4529 diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break4530 as_fn_arith $ac_count + 1 && ac_count=$as_val4531 if test $ac_count -gt ${ac_path_FGREP_max-0}; then4532 # Best one so far, save it but keep looking for a better one4533 ac_cv_path_FGREP="$ac_path_FGREP"4534 ac_path_FGREP_max=$ac_count4535 fi4536 # 10*(2^10) chars as input seems more than enough4537 test $ac_count -gt 10 && break4538 done4539 rm -f conftest.in conftest.tmp conftest.nl conftest.out;;4540 esac4541 4542 $ac_path_FGREP_found && break 34543 done4544 done4545 done4546 IFS=$as_save_IFS4547 if test -z "$ac_cv_path_FGREP"; then4548 as_fn_error $? "no acceptable fgrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 54549 fi4550 else4551 ac_cv_path_FGREP=$FGREP4552 fi4553 4554 fi4555 fi4556 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_FGREP" >&54557 $as_echo "$ac_cv_path_FGREP" >&6; }4558 FGREP="$ac_cv_path_FGREP"4559 4560 4561 test -z "$GREP" && GREP=grep4562 4563 4564 4565 4566 4567 4568 4569 4570 4571 4572 4573 4574 4575 4576 4577 4578 4579 4580 4581 # Check whether --with-gnu-ld was given.4582 if test "${with_gnu_ld+set}" = set; then :4583 withval=$with_gnu_ld; test no = "$withval" || with_gnu_ld=yes4584 else4585 with_gnu_ld=no4586 fi4587 4588 ac_prog=ld4589 if test yes = "$GCC"; then4590 # Check if gcc -print-prog-name=ld gives a path.4591 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld used by $CC" >&54592 $as_echo_n "checking for ld used by $CC... " >&6; }4593 case $host in4594 *-*-mingw*)4595 # gcc leaves a trailing carriage return, which upsets mingw4596 ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;4597 *)4598 ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;4599 esac4600 case $ac_prog in4601 # Accept absolute paths.4602 [\\/]* | ?:[\\/]*)4603 re_direlt='/[^/][^/]*/\.\./'4604 # Canonicalize the pathname of ld4605 ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'`4606 while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do4607 ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"`4608 done4609 test -z "$LD" && LD=$ac_prog4610 ;;4611 "")4612 # If it fails, then pretend we aren't using GCC.4613 ac_prog=ld4614 ;;4615 *)4616 # If it is relative, then search for the first ld in PATH.4617 with_gnu_ld=unknown4618 ;;4619 esac4620 elif test yes = "$with_gnu_ld"; then4621 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&54622 $as_echo_n "checking for GNU ld... " >&6; }4623 else4624 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&54625 $as_echo_n "checking for non-GNU ld... " >&6; }4626 fi4627 if ${lt_cv_path_LD+:} false; then :4628 $as_echo_n "(cached) " >&64629 else4630 if test -z "$LD"; then4631 lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR4632 for ac_dir in $PATH; do4633 IFS=$lt_save_ifs4634 test -z "$ac_dir" && ac_dir=.4635 if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then4636 lt_cv_path_LD=$ac_dir/$ac_prog4637 # Check to see if the program is GNU ld. I'd rather use --version,4638 # but apparently some variants of GNU ld only accept -v.4639 # Break only if it was the GNU/non-GNU ld that we prefer.4640 case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in4641 *GNU* | *'with BFD'*)4642 test no != "$with_gnu_ld" && break4643 ;;4644 *)4645 test yes != "$with_gnu_ld" && break4646 ;;4647 esac4648 fi4649 done4650 IFS=$lt_save_ifs4651 else4652 lt_cv_path_LD=$LD # Let the user override the test with a path.4653 fi4654 fi4655 4656 LD=$lt_cv_path_LD4657 if test -n "$LD"; then4658 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LD" >&54659 $as_echo "$LD" >&6; }4660 else4661 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&54662 $as_echo "no" >&6; }4663 fi4664 test -z "$LD" && as_fn_error $? "no acceptable ld found in \$PATH" "$LINENO" 54665 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&54666 $as_echo_n "checking if the linker ($LD) is GNU ld... " >&6; }4667 if ${lt_cv_prog_gnu_ld+:} false; then :4668 $as_echo_n "(cached) " >&64669 else4670 # I'd rather use --version here, but apparently some GNU lds only accept -v.4671 case `$LD -v 2>&1 </dev/null` in4672 *GNU* | *'with BFD'*)4673 lt_cv_prog_gnu_ld=yes4674 ;;4675 *)4676 lt_cv_prog_gnu_ld=no4677 ;;4678 esac4679 fi4680 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_gnu_ld" >&54681 $as_echo "$lt_cv_prog_gnu_ld" >&6; }4682 with_gnu_ld=$lt_cv_prog_gnu_ld4683 4684 4685 4686 4687 4688 4689 4690 4691 4692 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for BSD- or MS-compatible name lister (nm)" >&54693 $as_echo_n "checking for BSD- or MS-compatible name lister (nm)... " >&6; }4694 if ${lt_cv_path_NM+:} false; then :4695 $as_echo_n "(cached) " >&64696 else4697 if test -n "$NM"; then4698 # Let the user override the test.4699 lt_cv_path_NM=$NM4700 else4701 lt_nm_to_check=${ac_tool_prefix}nm4702 if test -n "$ac_tool_prefix" && test "$build" = "$host"; then4703 lt_nm_to_check="$lt_nm_to_check nm"4704 fi4705 for lt_tmp_nm in $lt_nm_to_check; do4706 lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR4707 for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do4708 IFS=$lt_save_ifs4709 test -z "$ac_dir" && ac_dir=.4710 tmp_nm=$ac_dir/$lt_tmp_nm4711 if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext"; then4712 # Check to see if the nm accepts a BSD-compat flag.4713 # Adding the 'sed 1q' prevents false positives on HP-UX, which says:4714 # nm: unknown option "B" ignored4715 # Tru64's nm complains that /dev/null is an invalid object file4716 # MSYS converts /dev/null to NUL, MinGW nm treats NUL as empty4717 case $build_os in4718 mingw*) lt_bad_file=conftest.nm/nofile ;;4719 *) lt_bad_file=/dev/null ;;4720 esac4721 case `"$tmp_nm" -B $lt_bad_file 2>&1 | sed '1q'` in4722 *$lt_bad_file* | *'Invalid file or object type'*)4723 lt_cv_path_NM="$tmp_nm -B"4724 break 24725 ;;4726 *)4727 case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in4728 */dev/null*)4729 lt_cv_path_NM="$tmp_nm -p"4730 break 24731 ;;4732 *)4733 lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but4734 continue # so that we can try to find one that supports BSD flags4735 ;;4736 esac4737 ;;4738 esac4739 fi4740 done4741 IFS=$lt_save_ifs4742 done4743 : ${lt_cv_path_NM=no}4744 fi4745 fi4746 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_NM" >&54747 $as_echo "$lt_cv_path_NM" >&6; }4748 if test no != "$lt_cv_path_NM"; then4749 NM=$lt_cv_path_NM4750 else4751 # Didn't find any BSD compatible name lister, look for dumpbin.4752 if test -n "$DUMPBIN"; then :4753 # Let the user override the test.4754 else4755 if test -n "$ac_tool_prefix"; then4756 for ac_prog in dumpbin "link -dump"4757 do4758 # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.4759 set dummy $ac_tool_prefix$ac_prog; ac_word=$24760 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&54761 $as_echo_n "checking for $ac_word... " >&6; }4762 if ${ac_cv_prog_DUMPBIN+:} false; then :4763 $as_echo_n "(cached) " >&64764 else4765 if test -n "$DUMPBIN"; then4766 ac_cv_prog_DUMPBIN="$DUMPBIN" # Let the user override the test.4767 else4768 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR4769 for as_dir in $PATH4770 do4771 IFS=$as_save_IFS4772 test -z "$as_dir" && as_dir=.4773 for ac_exec_ext in '' $ac_executable_extensions; do4774 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then4775 ac_cv_prog_DUMPBIN="$ac_tool_prefix$ac_prog"4776 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&54777 break 24778 fi4779 done4780 done4781 IFS=$as_save_IFS4782 4783 fi4784 fi4785 DUMPBIN=$ac_cv_prog_DUMPBIN4786 if test -n "$DUMPBIN"; then4787 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DUMPBIN" >&54788 $as_echo "$DUMPBIN" >&6; }4789 else4790 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&54791 $as_echo "no" >&6; }4792 fi4793 4794 4795 test -n "$DUMPBIN" && break4796 done4797 fi4798 if test -z "$DUMPBIN"; then4799 ac_ct_DUMPBIN=$DUMPBIN4800 for ac_prog in dumpbin "link -dump"4801 do4802 # Extract the first word of "$ac_prog", so it can be a program name with args.4803 set dummy $ac_prog; ac_word=$24804 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&54805 $as_echo_n "checking for $ac_word... " >&6; }4806 if ${ac_cv_prog_ac_ct_DUMPBIN+:} false; then :4807 $as_echo_n "(cached) " >&64808 else4809 if test -n "$ac_ct_DUMPBIN"; then4810 ac_cv_prog_ac_ct_DUMPBIN="$ac_ct_DUMPBIN" # Let the user override the test.4811 else4812 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR4813 for as_dir in $PATH4814 do4815 IFS=$as_save_IFS4816 test -z "$as_dir" && as_dir=.4817 for ac_exec_ext in '' $ac_executable_extensions; do4818 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then4819 ac_cv_prog_ac_ct_DUMPBIN="$ac_prog"4820 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&54821 break 24822 fi4823 done4824 done4825 IFS=$as_save_IFS4826 4827 fi4828 fi4829 ac_ct_DUMPBIN=$ac_cv_prog_ac_ct_DUMPBIN4830 if test -n "$ac_ct_DUMPBIN"; then4831 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DUMPBIN" >&54832 $as_echo "$ac_ct_DUMPBIN" >&6; }4833 else4834 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&54835 $as_echo "no" >&6; }4836 fi4837 4838 4839 test -n "$ac_ct_DUMPBIN" && break4840 done4841 4842 if test "x$ac_ct_DUMPBIN" = x; then4843 DUMPBIN=":"4844 else4845 case $cross_compiling:$ac_tool_warned in4846 yes:)4847 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&54848 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}4849 ac_tool_warned=yes ;;4850 esac4851 DUMPBIN=$ac_ct_DUMPBIN4852 fi4853 fi4854 4855 case `$DUMPBIN -symbols -headers /dev/null 2>&1 | sed '1q'` in4856 *COFF*)4857 DUMPBIN="$DUMPBIN -symbols -headers"4858 ;;4859 *)4860 DUMPBIN=:4861 ;;4862 esac4863 fi4864 4865 if test : != "$DUMPBIN"; then4866 NM=$DUMPBIN4867 fi4868 fi4869 test -z "$NM" && NM=nm4870 4871 4872 4873 4874 4875 4876 { $as_echo "$as_me:${as_lineno-$LINENO}: checking the name lister ($NM) interface" >&54877 $as_echo_n "checking the name lister ($NM) interface... " >&6; }4878 if ${lt_cv_nm_interface+:} false; then :4879 $as_echo_n "(cached) " >&64880 else4881 lt_cv_nm_interface="BSD nm"4882 echo "int some_variable = 0;" > conftest.$ac_ext4883 (eval echo "\"\$as_me:$LINENO: $ac_compile\"" >&5)4884 (eval "$ac_compile" 2>conftest.err)4885 cat conftest.err >&54886 (eval echo "\"\$as_me:$LINENO: $NM \\\"conftest.$ac_objext\\\"\"" >&5)4887 (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out)4888 cat conftest.err >&54889 (eval echo "\"\$as_me:$LINENO: output\"" >&5)4890 cat conftest.out >&54891 if $GREP 'External.*some_variable' conftest.out > /dev/null; then4892 lt_cv_nm_interface="MS dumpbin"4893 fi4894 rm -f conftest*4895 fi4896 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_nm_interface" >&54897 $as_echo "$lt_cv_nm_interface" >&6; }4898 4899 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ln -s works" >&54900 $as_echo_n "checking whether ln -s works... " >&6; }4901 LN_S=$as_ln_s4902 if test "$LN_S" = "ln -s"; then4903 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&54904 $as_echo "yes" >&6; }4905 else4906 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no, using $LN_S" >&54907 $as_echo "no, using $LN_S" >&6; }4908 fi4909 4910 # find the maximum length of command line arguments4911 { $as_echo "$as_me:${as_lineno-$LINENO}: checking the maximum length of command line arguments" >&54912 $as_echo_n "checking the maximum length of command line arguments... " >&6; }4913 if ${lt_cv_sys_max_cmd_len+:} false; then :4914 $as_echo_n "(cached) " >&64915 else4916 i=04917 teststring=ABCD4918 4919 case $build_os in4920 msdosdjgpp*)4921 # On DJGPP, this test can blow up pretty badly due to problems in libc4922 # (any single argument exceeding 2000 bytes causes a buffer overrun4923 # during glob expansion). Even if it were fixed, the result of this4924 # check would be larger than it should be.4925 lt_cv_sys_max_cmd_len=12288; # 12K is about right4926 ;;4927 4928 gnu*)4929 # Under GNU Hurd, this test is not required because there is4930 # no limit to the length of command line arguments.4931 # Libtool will interpret -1 as no limit whatsoever4932 lt_cv_sys_max_cmd_len=-1;4933 ;;4934 4935 cygwin* | mingw* | cegcc*)4936 # On Win9x/ME, this test blows up -- it succeeds, but takes4937 # about 5 minutes as the teststring grows exponentially.4938 # Worse, since 9x/ME are not pre-emptively multitasking,4939 # you end up with a "frozen" computer, even though with patience4940 # the test eventually succeeds (with a max line length of 256k).4941 # Instead, let's just punt: use the minimum linelength reported by4942 # all of the supported platforms: 8192 (on NT/2K/XP).4943 lt_cv_sys_max_cmd_len=8192;4944 ;;4945 4946 mint*)4947 # On MiNT this can take a long time and run out of memory.4948 lt_cv_sys_max_cmd_len=8192;4949 ;;4950 4951 amigaos*)4952 # On AmigaOS with pdksh, this test takes hours, literally.4953 # So we just punt and use a minimum line length of 8192.4954 lt_cv_sys_max_cmd_len=8192;4955 ;;4956 4957 bitrig* | darwin* | dragonfly* | freebsd* | netbsd* | openbsd*)4958 # This has been around since 386BSD, at least. Likely further.4959 if test -x /sbin/sysctl; then4960 lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`4961 elif test -x /usr/sbin/sysctl; then4962 lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax`4963 else4964 lt_cv_sys_max_cmd_len=65536 # usable default for all BSDs4965 fi4966 # And add a safety zone4967 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`4968 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`4969 ;;4970 4971 interix*)4972 # We know the value 262144 and hardcode it with a safety zone (like BSD)4973 lt_cv_sys_max_cmd_len=1966084974 ;;4975 4976 os2*)4977 # The test takes a long time on OS/2.4978 lt_cv_sys_max_cmd_len=81924979 ;;4980 4981 osf*)4982 # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure4983 # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not4984 # nice to cause kernel panics so lets avoid the loop below.4985 # First set a reasonable default.4986 lt_cv_sys_max_cmd_len=163844987 #4988 if test -x /sbin/sysconfig; then4989 case `/sbin/sysconfig -q proc exec_disable_arg_limit` in4990 *1*) lt_cv_sys_max_cmd_len=-1 ;;4991 esac4992 fi4993 ;;4994 sco3.2v5*)4995 lt_cv_sys_max_cmd_len=1024004996 ;;4997 sysv5* | sco5v6* | sysv4.2uw2*)4998 kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null`4999 if test -n "$kargmax"; then5000 lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[ ]//'`5001 else5002 lt_cv_sys_max_cmd_len=327685003 fi5004 ;;5005 *)5006 lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null`5007 if test -n "$lt_cv_sys_max_cmd_len" && \5008 test undefined != "$lt_cv_sys_max_cmd_len"; then5009 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`5010 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`5011 else5012 # Make teststring a little bigger before we do anything with it.5013 # a 1K string should be a reasonable start.5014 for i in 1 2 3 4 5 6 7 8; do5015 teststring=$teststring$teststring5016 done5017 SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}}5018 # If test is not a shell built-in, we'll probably end up computing a5019 # maximum length that is only half of the actual maximum length, but5020 # we can't tell.5021 while { test X`env echo "$teststring$teststring" 2>/dev/null` \5022 = "X$teststring$teststring"; } >/dev/null 2>&1 &&5023 test 17 != "$i" # 1/2 MB should be enough5024 do5025 i=`expr $i + 1`5026 teststring=$teststring$teststring5027 done5028 # Only check the string length outside the loop.5029 lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1`5030 teststring=5031 # Add a significant safety factor because C++ compilers can tack on5032 # massive amounts of additional arguments before passing them to the5033 # linker. It appears as though 1/2 is a usable value.5034 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2`5035 fi5036 ;;5037 esac5038 5039 fi5040 5041 if test -n "$lt_cv_sys_max_cmd_len"; then5042 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sys_max_cmd_len" >&55043 $as_echo "$lt_cv_sys_max_cmd_len" >&6; }5044 else5045 { $as_echo "$as_me:${as_lineno-$LINENO}: result: none" >&55046 $as_echo "none" >&6; }5047 fi5048 max_cmd_len=$lt_cv_sys_max_cmd_len5049 5050 5051 5052 5053 5054 5055 : ${CP="cp -f"}5056 : ${MV="mv -f"}5057 : ${RM="rm -f"}5058 5059 if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then5060 lt_unset=unset5061 else5062 lt_unset=false5063 fi5064 5065 5066 5067 5068 5069 # test EBCDIC or ASCII5070 case `echo X|tr X '\101'` in5071 A) # ASCII based system5072 # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr5073 lt_SP2NL='tr \040 \012'5074 lt_NL2SP='tr \015\012 \040\040'5075 ;;5076 *) # EBCDIC based system5077 lt_SP2NL='tr \100 \n'5078 lt_NL2SP='tr \r\n \100\100'5079 ;;5080 esac5081 5082 5083 5084 5085 5086 5087 5088 5089 5090 { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to $host format" >&55091 $as_echo_n "checking how to convert $build file names to $host format... " >&6; }5092 if ${lt_cv_to_host_file_cmd+:} false; then :5093 $as_echo_n "(cached) " >&65094 else5095 case $host in5096 *-*-mingw* )5097 case $build in5098 *-*-mingw* ) # actually msys5099 lt_cv_to_host_file_cmd=func_convert_file_msys_to_w325100 ;;5101 *-*-cygwin* )5102 lt_cv_to_host_file_cmd=func_convert_file_cygwin_to_w325103 ;;5104 * ) # otherwise, assume *nix5105 lt_cv_to_host_file_cmd=func_convert_file_nix_to_w325106 ;;5107 esac5108 ;;5109 *-*-cygwin* )5110 case $build in5111 *-*-mingw* ) # actually msys5112 lt_cv_to_host_file_cmd=func_convert_file_msys_to_cygwin5113 ;;5114 *-*-cygwin* )5115 lt_cv_to_host_file_cmd=func_convert_file_noop5116 ;;5117 * ) # otherwise, assume *nix5118 lt_cv_to_host_file_cmd=func_convert_file_nix_to_cygwin5119 ;;5120 esac5121 ;;5122 * ) # unhandled hosts (and "normal" native builds)5123 lt_cv_to_host_file_cmd=func_convert_file_noop5124 ;;5125 esac5126 5127 fi5128 5129 to_host_file_cmd=$lt_cv_to_host_file_cmd5130 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_to_host_file_cmd" >&55131 $as_echo "$lt_cv_to_host_file_cmd" >&6; }5132 5133 5134 5135 5136 5137 { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to toolchain format" >&55138 $as_echo_n "checking how to convert $build file names to toolchain format... " >&6; }5139 if ${lt_cv_to_tool_file_cmd+:} false; then :5140 $as_echo_n "(cached) " >&65141 else5142 #assume ordinary cross tools, or native build.5143 lt_cv_to_tool_file_cmd=func_convert_file_noop5144 case $host in5145 *-*-mingw* )5146 case $build in5147 *-*-mingw* ) # actually msys5148 lt_cv_to_tool_file_cmd=func_convert_file_msys_to_w325149 ;;5150 esac5151 ;;5152 esac5153 5154 fi5155 5156 to_tool_file_cmd=$lt_cv_to_tool_file_cmd5157 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_to_tool_file_cmd" >&55158 $as_echo "$lt_cv_to_tool_file_cmd" >&6; }5159 5160 5161 5162 5163 5164 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $LD option to reload object files" >&55165 $as_echo_n "checking for $LD option to reload object files... " >&6; }5166 if ${lt_cv_ld_reload_flag+:} false; then :5167 $as_echo_n "(cached) " >&65168 else5169 lt_cv_ld_reload_flag='-r'5170 fi5171 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_reload_flag" >&55172 $as_echo "$lt_cv_ld_reload_flag" >&6; }5173 reload_flag=$lt_cv_ld_reload_flag5174 case $reload_flag in5175 "" | " "*) ;;5176 *) reload_flag=" $reload_flag" ;;5177 esac5178 reload_cmds='$LD$reload_flag -o $output$reload_objs'5179 case $host_os in5180 cygwin* | mingw* | pw32* | cegcc*)5181 if test yes != "$GCC"; then5182 reload_cmds=false5183 fi5184 ;;5185 darwin*)5186 if test yes = "$GCC"; then5187 reload_cmds='$LTCC $LTCFLAGS -nostdlib $wl-r -o $output$reload_objs'5188 else5189 reload_cmds='$LD$reload_flag -o $output$reload_objs'5190 fi5191 ;;5192 esac5193 5194 5195 5196 5197 5198 5199 5200 5201 5202 if test -n "$ac_tool_prefix"; then5203 # Extract the first word of "${ac_tool_prefix}objdump", so it can be a program name with args.5204 set dummy ${ac_tool_prefix}objdump; ac_word=$25205 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&55206 $as_echo_n "checking for $ac_word... " >&6; }5207 if ${ac_cv_prog_OBJDUMP+:} false; then :5208 $as_echo_n "(cached) " >&65209 else5210 if test -n "$OBJDUMP"; then5211 ac_cv_prog_OBJDUMP="$OBJDUMP" # Let the user override the test.5212 else5213 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR5214 for as_dir in $PATH5215 do5216 IFS=$as_save_IFS5217 test -z "$as_dir" && as_dir=.5218 for ac_exec_ext in '' $ac_executable_extensions; do5219 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then5220 ac_cv_prog_OBJDUMP="${ac_tool_prefix}objdump"5221 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&55222 break 25223 fi5224 done5225 done5226 IFS=$as_save_IFS5227 5228 fi5229 fi5230 OBJDUMP=$ac_cv_prog_OBJDUMP5231 if test -n "$OBJDUMP"; then5232 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OBJDUMP" >&55233 $as_echo "$OBJDUMP" >&6; }5234 else5235 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&55236 $as_echo "no" >&6; }5237 fi5238 5239 5240 fi5241 if test -z "$ac_cv_prog_OBJDUMP"; then5242 ac_ct_OBJDUMP=$OBJDUMP5243 # Extract the first word of "objdump", so it can be a program name with args.5244 set dummy objdump; ac_word=$25245 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&55246 $as_echo_n "checking for $ac_word... " >&6; }5247 if ${ac_cv_prog_ac_ct_OBJDUMP+:} false; then :5248 $as_echo_n "(cached) " >&65249 else5250 if test -n "$ac_ct_OBJDUMP"; then5251 ac_cv_prog_ac_ct_OBJDUMP="$ac_ct_OBJDUMP" # Let the user override the test.5252 else5253 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR5254 for as_dir in $PATH5255 do5256 IFS=$as_save_IFS5257 test -z "$as_dir" && as_dir=.5258 for ac_exec_ext in '' $ac_executable_extensions; do5259 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then5260 ac_cv_prog_ac_ct_OBJDUMP="objdump"5261 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&55262 break 25263 fi5264 done5265 done5266 IFS=$as_save_IFS5267 5268 fi5269 fi5270 ac_ct_OBJDUMP=$ac_cv_prog_ac_ct_OBJDUMP5271 if test -n "$ac_ct_OBJDUMP"; then5272 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OBJDUMP" >&55273 $as_echo "$ac_ct_OBJDUMP" >&6; }5274 else5275 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&55276 $as_echo "no" >&6; }5277 fi5278 5279 if test "x$ac_ct_OBJDUMP" = x; then5280 OBJDUMP="false"5281 else5282 case $cross_compiling:$ac_tool_warned in5283 yes:)5284 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&55285 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}5286 ac_tool_warned=yes ;;5287 esac5288 OBJDUMP=$ac_ct_OBJDUMP5289 fi5290 else5291 OBJDUMP="$ac_cv_prog_OBJDUMP"5292 fi5293 5294 test -z "$OBJDUMP" && OBJDUMP=objdump5295 5296 5297 5298 5299 5300 5301 5302 5303 5304 { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to recognize dependent libraries" >&55305 $as_echo_n "checking how to recognize dependent libraries... " >&6; }5306 if ${lt_cv_deplibs_check_method+:} false; then :5307 $as_echo_n "(cached) " >&65308 else5309 lt_cv_file_magic_cmd='$MAGIC_CMD'5310 lt_cv_file_magic_test_file=5311 lt_cv_deplibs_check_method='unknown'5312 # Need to set the preceding variable on all platforms that support5313 # interlibrary dependencies.5314 # 'none' -- dependencies not supported.5315 # 'unknown' -- same as none, but documents that we really don't know.5316 # 'pass_all' -- all dependencies passed with no checks.5317 # 'test_compile' -- check by making test program.5318 # 'file_magic [[regex]]' -- check by looking for files in library path5319 # that responds to the $file_magic_cmd with a given extended regex.5320 # If you have 'file' or equivalent on your system and you're not sure5321 # whether 'pass_all' will *always* work, you probably want this one.5322 5323 case $host_os in5324 aix[4-9]*)5325 lt_cv_deplibs_check_method=pass_all5326 ;;5327 5328 beos*)5329 lt_cv_deplibs_check_method=pass_all5330 ;;5331 5332 bsdi[45]*)5333 lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib)'5334 lt_cv_file_magic_cmd='/usr/bin/file -L'5335 lt_cv_file_magic_test_file=/shlib/libc.so5336 ;;5337 5338 cygwin*)5339 # func_win32_libid is a shell function defined in ltmain.sh5340 lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'5341 lt_cv_file_magic_cmd='func_win32_libid'5342 ;;5343 5344 mingw* | pw32*)5345 # Base MSYS/MinGW do not provide the 'file' command needed by5346 # func_win32_libid shell function, so use a weaker test based on 'objdump',5347 # unless we find 'file', for example because we are cross-compiling.5348 if ( file / ) >/dev/null 2>&1; then5349 lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'5350 lt_cv_file_magic_cmd='func_win32_libid'5351 else5352 # Keep this pattern in sync with the one in func_win32_libid.5353 lt_cv_deplibs_check_method='file_magic file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)'5354 lt_cv_file_magic_cmd='$OBJDUMP -f'5355 fi5356 ;;5357 5358 cegcc*)5359 # use the weaker test based on 'objdump'. See mingw*.5360 lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?'5361 lt_cv_file_magic_cmd='$OBJDUMP -f'5362 ;;5363 5364 darwin* | rhapsody*)5365 lt_cv_deplibs_check_method=pass_all5366 ;;5367 5368 freebsd* | dragonfly*)5369 if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then5370 case $host_cpu in5371 i*86 )5372 # Not sure whether the presence of OpenBSD here was a mistake.5373 # Let's accept both of them until this is cleared up.5374 lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[3-9]86 (compact )?demand paged shared library'5375 lt_cv_file_magic_cmd=/usr/bin/file5376 lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`5377 ;;5378 esac5379 else5380 lt_cv_deplibs_check_method=pass_all5381 fi5382 ;;5383 5384 haiku*)5385 lt_cv_deplibs_check_method=pass_all5386 ;;5387 5388 hpux10.20* | hpux11*)5389 lt_cv_file_magic_cmd=/usr/bin/file5390 case $host_cpu in5391 ia64*)5392 lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF-[0-9][0-9]) shared object file - IA64'5393 lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so5394 ;;5395 hppa*64*)5396 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]'5397 lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl5398 ;;5399 *)5400 lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|PA-RISC[0-9]\.[0-9]) shared library'5401 lt_cv_file_magic_test_file=/usr/lib/libc.sl5402 ;;5403 esac5404 ;;5405 5406 interix[3-9]*)5407 # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here5408 lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so|\.a)$'5409 ;;5410 5411 irix5* | irix6* | nonstopux*)5412 case $LD in5413 *-32|*"-32 ") libmagic=32-bit;;5414 *-n32|*"-n32 ") libmagic=N32;;5415 *-64|*"-64 ") libmagic=64-bit;;5416 *) libmagic=never-match;;5417 esac5418 lt_cv_deplibs_check_method=pass_all5419 ;;5420 5421 # This must be glibc/ELF.5422 linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)5423 lt_cv_deplibs_check_method=pass_all5424 ;;5425 5426 netbsd* | netbsdelf*-gnu)5427 if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then5428 lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|_pic\.a)$'5429 else5430 lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so|_pic\.a)$'5431 fi5432 ;;5433 5434 newos6*)5435 lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (executable|dynamic lib)'5436 lt_cv_file_magic_cmd=/usr/bin/file5437 lt_cv_file_magic_test_file=/usr/lib/libnls.so5438 ;;5439 5440 *nto* | *qnx*)5441 lt_cv_deplibs_check_method=pass_all5442 ;;5443 5444 openbsd* | bitrig*)5445 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then5446 lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|\.so|_pic\.a)$'5447 else5448 lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|_pic\.a)$'5449 fi5450 ;;5451 5452 osf3* | osf4* | osf5*)5453 lt_cv_deplibs_check_method=pass_all5454 ;;5455 5456 rdos*)5457 lt_cv_deplibs_check_method=pass_all5458 ;;5459 5460 solaris*)5461 lt_cv_deplibs_check_method=pass_all5462 ;;5463 5464 sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)5465 lt_cv_deplibs_check_method=pass_all5466 ;;5467 5468 sysv4 | sysv4.3*)5469 case $host_vendor in5470 motorola)5471 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]'5472 lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`5473 ;;5474 ncr)5475 lt_cv_deplibs_check_method=pass_all5476 ;;5477 sequent)5478 lt_cv_file_magic_cmd='/bin/file'5479 lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )'5480 ;;5481 sni)5482 lt_cv_file_magic_cmd='/bin/file'5483 lt_cv_deplibs_check_method="file_magic ELF [0-9][0-9]*-bit [LM]SB dynamic lib"5484 lt_cv_file_magic_test_file=/lib/libc.so5485 ;;5486 siemens)5487 lt_cv_deplibs_check_method=pass_all5488 ;;5489 pc)5490 lt_cv_deplibs_check_method=pass_all5491 ;;5492 esac5493 ;;5494 5495 tpf*)5496 lt_cv_deplibs_check_method=pass_all5497 ;;5498 os2*)5499 lt_cv_deplibs_check_method=pass_all5500 ;;5501 esac5502 5503 fi5504 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_deplibs_check_method" >&55505 $as_echo "$lt_cv_deplibs_check_method" >&6; }5506 5507 file_magic_glob=5508 want_nocaseglob=no5509 if test "$build" = "$host"; then5510 case $host_os in5511 mingw* | pw32*)5512 if ( shopt | grep nocaseglob ) >/dev/null 2>&1; then5513 want_nocaseglob=yes5514 else5515 file_magic_glob=`echo aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ | $SED -e "s/\(..\)/s\/[\1]\/[\1]\/g;/g"`5516 fi5517 ;;5518 esac5519 fi5520 5521 file_magic_cmd=$lt_cv_file_magic_cmd5522 deplibs_check_method=$lt_cv_deplibs_check_method5523 test -z "$deplibs_check_method" && deplibs_check_method=unknown5524 5525 5526 5527 5528 5529 5530 5531 5532 5533 5534 5535 5536 5537 5538 5539 5540 5541 5542 5543 5544 5545 5546 if test -n "$ac_tool_prefix"; then5547 # Extract the first word of "${ac_tool_prefix}dlltool", so it can be a program name with args.5548 set dummy ${ac_tool_prefix}dlltool; ac_word=$25549 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&55550 $as_echo_n "checking for $ac_word... " >&6; }5551 if ${ac_cv_prog_DLLTOOL+:} false; then :5552 $as_echo_n "(cached) " >&65553 else5554 if test -n "$DLLTOOL"; then5555 ac_cv_prog_DLLTOOL="$DLLTOOL" # Let the user override the test.5556 else5557 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR5558 for as_dir in $PATH5559 do5560 IFS=$as_save_IFS5561 test -z "$as_dir" && as_dir=.5562 for ac_exec_ext in '' $ac_executable_extensions; do5563 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then5564 ac_cv_prog_DLLTOOL="${ac_tool_prefix}dlltool"5565 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&55566 break 25567 fi5568 done5569 done5570 IFS=$as_save_IFS5571 5572 fi5573 fi5574 DLLTOOL=$ac_cv_prog_DLLTOOL5575 if test -n "$DLLTOOL"; then5576 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DLLTOOL" >&55577 $as_echo "$DLLTOOL" >&6; }5578 else5579 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&55580 $as_echo "no" >&6; }5581 fi5582 5583 5584 fi5585 if test -z "$ac_cv_prog_DLLTOOL"; then5586 ac_ct_DLLTOOL=$DLLTOOL5587 # Extract the first word of "dlltool", so it can be a program name with args.5588 set dummy dlltool; ac_word=$25589 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&55590 $as_echo_n "checking for $ac_word... " >&6; }5591 if ${ac_cv_prog_ac_ct_DLLTOOL+:} false; then :5592 $as_echo_n "(cached) " >&65593 else5594 if test -n "$ac_ct_DLLTOOL"; then5595 ac_cv_prog_ac_ct_DLLTOOL="$ac_ct_DLLTOOL" # Let the user override the test.5596 else5597 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR5598 for as_dir in $PATH5599 do5600 IFS=$as_save_IFS5601 test -z "$as_dir" && as_dir=.5602 for ac_exec_ext in '' $ac_executable_extensions; do5603 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then5604 ac_cv_prog_ac_ct_DLLTOOL="dlltool"5605 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&55606 break 25607 fi5608 done5609 done5610 IFS=$as_save_IFS5611 5612 fi5613 fi5614 ac_ct_DLLTOOL=$ac_cv_prog_ac_ct_DLLTOOL5615 if test -n "$ac_ct_DLLTOOL"; then5616 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DLLTOOL" >&55617 $as_echo "$ac_ct_DLLTOOL" >&6; }5618 else5619 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&55620 $as_echo "no" >&6; }5621 fi5622 5623 if test "x$ac_ct_DLLTOOL" = x; then5624 DLLTOOL="false"5625 else5626 case $cross_compiling:$ac_tool_warned in5627 yes:)5628 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&55629 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}5630 ac_tool_warned=yes ;;5631 esac5632 DLLTOOL=$ac_ct_DLLTOOL5633 fi5634 else5635 DLLTOOL="$ac_cv_prog_DLLTOOL"5636 fi5637 5638 test -z "$DLLTOOL" && DLLTOOL=dlltool5639 5640 5641 5642 5643 5644 5645 5646 5647 5648 5649 { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to associate runtime and link libraries" >&55650 $as_echo_n "checking how to associate runtime and link libraries... " >&6; }5651 if ${lt_cv_sharedlib_from_linklib_cmd+:} false; then :5652 $as_echo_n "(cached) " >&65653 else5654 lt_cv_sharedlib_from_linklib_cmd='unknown'5655 5656 case $host_os in5657 cygwin* | mingw* | pw32* | cegcc*)5658 # two different shell functions defined in ltmain.sh;5659 # decide which one to use based on capabilities of $DLLTOOL5660 case `$DLLTOOL --help 2>&1` in5661 *--identify-strict*)5662 lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib5663 ;;5664 *)5665 lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib_fallback5666 ;;5667 esac5668 ;;5669 *)5670 # fallback: assume linklib IS sharedlib5671 lt_cv_sharedlib_from_linklib_cmd=$ECHO5672 ;;5673 esac5674 5675 fi5676 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sharedlib_from_linklib_cmd" >&55677 $as_echo "$lt_cv_sharedlib_from_linklib_cmd" >&6; }5678 sharedlib_from_linklib_cmd=$lt_cv_sharedlib_from_linklib_cmd5679 test -z "$sharedlib_from_linklib_cmd" && sharedlib_from_linklib_cmd=$ECHO5680 5681 5682 5683 5684 5685 5686 5687 5688 if test -n "$ac_tool_prefix"; then5689 for ac_prog in ar5690 do5691 # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.5692 set dummy $ac_tool_prefix$ac_prog; ac_word=$25693 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&55694 $as_echo_n "checking for $ac_word... " >&6; }5695 if ${ac_cv_prog_AR+:} false; then :5696 $as_echo_n "(cached) " >&65697 else5698 if test -n "$AR"; then5699 ac_cv_prog_AR="$AR" # Let the user override the test.5700 else5701 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR5702 for as_dir in $PATH5703 do5704 IFS=$as_save_IFS5705 test -z "$as_dir" && as_dir=.5706 for ac_exec_ext in '' $ac_executable_extensions; do5707 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then5708 ac_cv_prog_AR="$ac_tool_prefix$ac_prog"5709 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&55710 break 25711 fi5712 done5713 done5714 IFS=$as_save_IFS5715 5716 fi5717 fi5718 AR=$ac_cv_prog_AR5719 if test -n "$AR"; then5720 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AR" >&55721 $as_echo "$AR" >&6; }5722 else5723 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&55724 $as_echo "no" >&6; }5725 fi5726 5727 5728 test -n "$AR" && break5729 done5730 fi5731 if test -z "$AR"; then5732 ac_ct_AR=$AR5733 for ac_prog in ar5734 do5735 # Extract the first word of "$ac_prog", so it can be a program name with args.5736 set dummy $ac_prog; ac_word=$25737 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&55738 $as_echo_n "checking for $ac_word... " >&6; }5739 if ${ac_cv_prog_ac_ct_AR+:} false; then :5740 $as_echo_n "(cached) " >&65741 else5742 if test -n "$ac_ct_AR"; then5743 ac_cv_prog_ac_ct_AR="$ac_ct_AR" # Let the user override the test.5744 else5745 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR5746 for as_dir in $PATH5747 do5748 IFS=$as_save_IFS5749 test -z "$as_dir" && as_dir=.5750 for ac_exec_ext in '' $ac_executable_extensions; do5751 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then5752 ac_cv_prog_ac_ct_AR="$ac_prog"5753 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&55754 break 25755 fi5756 done5757 done5758 IFS=$as_save_IFS5759 5760 fi5761 fi5762 ac_ct_AR=$ac_cv_prog_ac_ct_AR5763 if test -n "$ac_ct_AR"; then5764 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_AR" >&55765 $as_echo "$ac_ct_AR" >&6; }5766 else5767 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&55768 $as_echo "no" >&6; }5769 fi5770 5771 5772 test -n "$ac_ct_AR" && break5773 done5774 5775 if test "x$ac_ct_AR" = x; then5776 AR="false"5777 else5778 case $cross_compiling:$ac_tool_warned in5779 yes:)5780 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&55781 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}5782 ac_tool_warned=yes ;;5783 esac5784 AR=$ac_ct_AR5785 fi5786 fi5787 5788 : ${AR=ar}5789 : ${AR_FLAGS=cru}5790 5791 5792 5793 5794 5795 5796 5797 5798 5799 5800 5801 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for archiver @FILE support" >&55802 $as_echo_n "checking for archiver @FILE support... " >&6; }5803 if ${lt_cv_ar_at_file+:} false; then :5804 $as_echo_n "(cached) " >&65805 else5806 lt_cv_ar_at_file=no5807 cat confdefs.h - <<_ACEOF >conftest.$ac_ext5808 /* end confdefs.h. */5809 5810 int5811 main ()5812 {5813 5814 ;5815 return 0;5816 }5817 _ACEOF5818 if ac_fn_c_try_compile "$LINENO"; then :5819 echo conftest.$ac_objext > conftest.lst5820 lt_ar_try='$AR $AR_FLAGS libconftest.a @conftest.lst >&5'5821 { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$lt_ar_try\""; } >&55822 (eval $lt_ar_try) 2>&55823 ac_status=$?5824 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&55825 test $ac_status = 0; }5826 if test 0 -eq "$ac_status"; then5827 # Ensure the archiver fails upon bogus file names.5828 rm -f conftest.$ac_objext libconftest.a5829 { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$lt_ar_try\""; } >&55830 (eval $lt_ar_try) 2>&55831 ac_status=$?5832 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&55833 test $ac_status = 0; }5834 if test 0 -ne "$ac_status"; then5835 lt_cv_ar_at_file=@5836 fi5837 fi5838 rm -f conftest.* libconftest.a5839 5840 fi5841 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext5842 5843 fi5844 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ar_at_file" >&55845 $as_echo "$lt_cv_ar_at_file" >&6; }5846 5847 if test no = "$lt_cv_ar_at_file"; then5848 archiver_list_spec=5849 else5850 archiver_list_spec=$lt_cv_ar_at_file5851 fi5852 5853 5854 5855 5856 5857 5858 5859 if test -n "$ac_tool_prefix"; then5860 # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.5861 set dummy ${ac_tool_prefix}strip; ac_word=$25862 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&55863 $as_echo_n "checking for $ac_word... " >&6; }5864 if ${ac_cv_prog_STRIP+:} false; then :5865 $as_echo_n "(cached) " >&65866 else5867 if test -n "$STRIP"; then5868 ac_cv_prog_STRIP="$STRIP" # Let the user override the test.5869 else5870 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR5871 for as_dir in $PATH5872 do5873 IFS=$as_save_IFS5874 test -z "$as_dir" && as_dir=.5875 for ac_exec_ext in '' $ac_executable_extensions; do5876 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then5877 ac_cv_prog_STRIP="${ac_tool_prefix}strip"5878 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&55879 break 25880 fi5881 done5882 done5883 IFS=$as_save_IFS5884 5885 fi5886 fi5887 STRIP=$ac_cv_prog_STRIP5888 if test -n "$STRIP"; then5889 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&55890 $as_echo "$STRIP" >&6; }5891 else5892 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&55893 $as_echo "no" >&6; }5894 fi5895 5896 5897 fi5898 if test -z "$ac_cv_prog_STRIP"; then5899 ac_ct_STRIP=$STRIP5900 # Extract the first word of "strip", so it can be a program name with args.5901 set dummy strip; ac_word=$25902 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&55903 $as_echo_n "checking for $ac_word... " >&6; }5904 if ${ac_cv_prog_ac_ct_STRIP+:} false; then :5905 $as_echo_n "(cached) " >&65906 else5907 if test -n "$ac_ct_STRIP"; then5908 ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test.5909 else5910 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR5911 for as_dir in $PATH5912 do5913 IFS=$as_save_IFS5914 test -z "$as_dir" && as_dir=.5915 for ac_exec_ext in '' $ac_executable_extensions; do5916 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then5917 ac_cv_prog_ac_ct_STRIP="strip"5918 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&55919 break 25920 fi5921 done5922 done5923 IFS=$as_save_IFS5924 5925 fi5926 fi5927 ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP5928 if test -n "$ac_ct_STRIP"; then5929 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&55930 $as_echo "$ac_ct_STRIP" >&6; }5931 else5932 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&55933 $as_echo "no" >&6; }5934 fi5935 5936 if test "x$ac_ct_STRIP" = x; then5937 STRIP=":"5938 else5939 case $cross_compiling:$ac_tool_warned in5940 yes:)5941 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&55942 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}5943 ac_tool_warned=yes ;;5944 esac5945 STRIP=$ac_ct_STRIP5946 fi5947 else5948 STRIP="$ac_cv_prog_STRIP"5949 fi5950 5951 test -z "$STRIP" && STRIP=:5952 5953 5954 5955 5956 5957 5958 if test -n "$ac_tool_prefix"; then5959 # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.5960 set dummy ${ac_tool_prefix}ranlib; ac_word=$25961 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&55962 $as_echo_n "checking for $ac_word... " >&6; }5963 if ${ac_cv_prog_RANLIB+:} false; then :5964 $as_echo_n "(cached) " >&65965 else5966 if test -n "$RANLIB"; then5967 ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test.5968 else5969 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR5970 for as_dir in $PATH5971 do5972 IFS=$as_save_IFS5973 test -z "$as_dir" && as_dir=.5974 for ac_exec_ext in '' $ac_executable_extensions; do5975 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then5976 ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib"5977 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&55978 break 25979 fi5980 done5981 done5982 IFS=$as_save_IFS5983 5984 fi5985 fi5986 RANLIB=$ac_cv_prog_RANLIB5987 if test -n "$RANLIB"; then5988 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $RANLIB" >&55989 $as_echo "$RANLIB" >&6; }5990 else5991 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&55992 $as_echo "no" >&6; }5993 fi5994 5995 5996 fi5997 if test -z "$ac_cv_prog_RANLIB"; then5998 ac_ct_RANLIB=$RANLIB5999 # Extract the first word of "ranlib", so it can be a program name with args.6000 set dummy ranlib; ac_word=$26001 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&56002 $as_echo_n "checking for $ac_word... " >&6; }6003 if ${ac_cv_prog_ac_ct_RANLIB+:} false; then :6004 $as_echo_n "(cached) " >&66005 else6006 if test -n "$ac_ct_RANLIB"; then6007 ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test.6008 else6009 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR6010 for as_dir in $PATH6011 do6012 IFS=$as_save_IFS6013 test -z "$as_dir" && as_dir=.6014 for ac_exec_ext in '' $ac_executable_extensions; do6015 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then6016 ac_cv_prog_ac_ct_RANLIB="ranlib"6017 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&56018 break 26019 fi6020 done6021 done6022 IFS=$as_save_IFS6023 6024 fi6025 fi6026 ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB6027 if test -n "$ac_ct_RANLIB"; then6028 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_RANLIB" >&56029 $as_echo "$ac_ct_RANLIB" >&6; }6030 else6031 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&56032 $as_echo "no" >&6; }6033 fi6034 6035 if test "x$ac_ct_RANLIB" = x; then6036 RANLIB=":"6037 else6038 case $cross_compiling:$ac_tool_warned in6039 yes:)6040 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&56041 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}6042 ac_tool_warned=yes ;;6043 esac6044 RANLIB=$ac_ct_RANLIB6045 fi6046 else6047 RANLIB="$ac_cv_prog_RANLIB"6048 fi6049 6050 test -z "$RANLIB" && RANLIB=:6051 6052 6053 6054 6055 6056 6057 # Determine commands to create old-style static archives.6058 old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs'6059 old_postinstall_cmds='chmod 644 $oldlib'6060 old_postuninstall_cmds=6061 6062 if test -n "$RANLIB"; then6063 case $host_os in6064 bitrig* | openbsd*)6065 old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$tool_oldlib"6066 ;;6067 *)6068 old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$tool_oldlib"6069 ;;6070 esac6071 old_archive_cmds="$old_archive_cmds~\$RANLIB \$tool_oldlib"6072 fi6073 6074 case $host_os in6075 darwin*)6076 lock_old_archive_extraction=yes ;;6077 *)6078 lock_old_archive_extraction=no ;;6079 esac6080 6081 6082 6083 6084 6085 6086 6087 6088 6089 6090 6091 6092 6093 6094 6095 6096 6097 6098 6099 6100 6101 6102 6103 6104 6105 6106 6107 6108 6109 6110 6111 6112 6113 6114 6115 6116 6117 6118 6119 # If no C compiler was specified, use CC.6120 LTCC=${LTCC-"$CC"}6121 6122 # If no C compiler flags were specified, use CFLAGS.6123 LTCFLAGS=${LTCFLAGS-"$CFLAGS"}6124 6125 # Allow CC to be a program name with arguments.6126 compiler=$CC6127 6128 6129 # Check for command to grab the raw symbol name followed by C symbol from nm.6130 { $as_echo "$as_me:${as_lineno-$LINENO}: checking command to parse $NM output from $compiler object" >&56131 $as_echo_n "checking command to parse $NM output from $compiler object... " >&6; }6132 if ${lt_cv_sys_global_symbol_pipe+:} false; then :6133 $as_echo_n "(cached) " >&66134 else6135 6136 # These are sane defaults that work on at least a few old systems.6137 # [They come from Ultrix. What could be older than Ultrix?!! ;)]6138 6139 # Character class describing NM global symbol codes.6140 symcode='[BCDEGRST]'6141 6142 # Regexp to match symbols that can be accessed directly from C.6143 sympat='\([_A-Za-z][_A-Za-z0-9]*\)'6144 6145 # Define system-specific variables.6146 case $host_os in6147 aix*)6148 symcode='[BCDT]'6149 ;;6150 cygwin* | mingw* | pw32* | cegcc*)6151 symcode='[ABCDGISTW]'6152 ;;6153 hpux*)6154 if test ia64 = "$host_cpu"; then6155 symcode='[ABCDEGRST]'6156 fi6157 ;;6158 irix* | nonstopux*)6159 symcode='[BCDEGRST]'6160 ;;6161 osf*)6162 symcode='[BCDEGQRST]'6163 ;;6164 solaris*)6165 symcode='[BDRT]'6166 ;;6167 sco3.2v5*)6168 symcode='[DT]'6169 ;;6170 sysv4.2uw2*)6171 symcode='[DT]'6172 ;;6173 sysv5* | sco5v6* | unixware* | OpenUNIX*)6174 symcode='[ABDT]'6175 ;;6176 sysv4)6177 symcode='[DFNSTU]'6178 ;;6179 esac6180 6181 # If we're using GNU nm, then use its standard symbol codes.6182 case `$NM -V 2>&1` in6183 *GNU* | *'with BFD'*)6184 symcode='[ABCDGIRSTW]' ;;6185 esac6186 6187 if test "$lt_cv_nm_interface" = "MS dumpbin"; then6188 # Gets list of data symbols to import.6189 lt_cv_sys_global_symbol_to_import="sed -n -e 's/^I .* \(.*\)$/\1/p'"6190 # Adjust the below global symbol transforms to fixup imported variables.6191 lt_cdecl_hook=" -e 's/^I .* \(.*\)$/extern __declspec(dllimport) char \1;/p'"6192 lt_c_name_hook=" -e 's/^I .* \(.*\)$/ {\"\1\", (void *) 0},/p'"6193 lt_c_name_lib_hook="\6194 -e 's/^I .* \(lib.*\)$/ {\"\1\", (void *) 0},/p'\6195 -e 's/^I .* \(.*\)$/ {\"lib\1\", (void *) 0},/p'"6196 else6197 # Disable hooks by default.6198 lt_cv_sys_global_symbol_to_import=6199 lt_cdecl_hook=6200 lt_c_name_hook=6201 lt_c_name_lib_hook=6202 fi6203 6204 # Transform an extracted symbol line into a proper C declaration.6205 # Some systems (esp. on ia64) link data and code symbols differently,6206 # so use this general approach.6207 lt_cv_sys_global_symbol_to_cdecl="sed -n"\6208 $lt_cdecl_hook\6209 " -e 's/^T .* \(.*\)$/extern int \1();/p'"\6210 " -e 's/^$symcode$symcode* .* \(.*\)$/extern char \1;/p'"6211 6212 # Transform an extracted symbol line into symbol name and symbol address6213 lt_cv_sys_global_symbol_to_c_name_address="sed -n"\6214 $lt_c_name_hook\6215 " -e 's/^: \(.*\) .*$/ {\"\1\", (void *) 0},/p'"\6216 " -e 's/^$symcode$symcode* .* \(.*\)$/ {\"\1\", (void *) \&\1},/p'"6217 6218 # Transform an extracted symbol line into symbol name with lib prefix and6219 # symbol address.6220 lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n"\6221 $lt_c_name_lib_hook\6222 " -e 's/^: \(.*\) .*$/ {\"\1\", (void *) 0},/p'"\6223 " -e 's/^$symcode$symcode* .* \(lib.*\)$/ {\"\1\", (void *) \&\1},/p'"\6224 " -e 's/^$symcode$symcode* .* \(.*\)$/ {\"lib\1\", (void *) \&\1},/p'"6225 6226 # Handle CRLF in mingw tool chain6227 opt_cr=6228 case $build_os in6229 mingw*)6230 opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp6231 ;;6232 esac6233 6234 # Try without a prefix underscore, then with it.6235 for ac_symprfx in "" "_"; do6236 6237 # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol.6238 symxfrm="\\1 $ac_symprfx\\2 \\2"6239 6240 # Write the raw and C identifiers.6241 if test "$lt_cv_nm_interface" = "MS dumpbin"; then6242 # Fake it for dumpbin and say T for any non-static function,6243 # D for any global variable and I for any imported variable.6244 # Also find C++ and __fastcall symbols from MSVC++,6245 # which start with @ or ?.6246 lt_cv_sys_global_symbol_pipe="$AWK '"\6247 " {last_section=section; section=\$ 3};"\6248 " /^COFF SYMBOL TABLE/{for(i in hide) delete hide[i]};"\6249 " /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\6250 " /^ *Symbol name *: /{split(\$ 0,sn,\":\"); si=substr(sn[2],2)};"\6251 " /^ *Type *: code/{print \"T\",si,substr(si,length(prfx))};"\6252 " /^ *Type *: data/{print \"I\",si,substr(si,length(prfx))};"\6253 " \$ 0!~/External *\|/{next};"\6254 " / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\6255 " {if(hide[section]) next};"\6256 " {f=\"D\"}; \$ 0~/\(\).*\|/{f=\"T\"};"\6257 " {split(\$ 0,a,/\||\r/); split(a[2],s)};"\6258 " s[1]~/^[@?]/{print f,s[1],s[1]; next};"\6259 " s[1]~prfx {split(s[1],t,\"@\"); print f,t[1],substr(t[1],length(prfx))}"\6260 " ' prfx=^$ac_symprfx"6261 else6262 lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[ ]\($symcode$symcode*\)[ ][ ]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"6263 fi6264 lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | sed '/ __gnu_lto/d'"6265 6266 # Check to see that the pipe works correctly.6267 pipe_works=no6268 6269 rm -f conftest*6270 cat > conftest.$ac_ext <<_LT_EOF6271 #ifdef __cplusplus6272 extern "C" {6273 #endif6274 char nm_test_var;6275 void nm_test_func(void);6276 void nm_test_func(void){}6277 #ifdef __cplusplus6278 }6279 #endif6280 int main(){nm_test_var='a';nm_test_func();return(0);}6281 _LT_EOF6282 6283 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&56284 (eval $ac_compile) 2>&56285 ac_status=$?6286 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&56287 test $ac_status = 0; }; then6288 # Now try to grab the symbols.6289 nlist=conftest.nm6290 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist\""; } >&56291 (eval $NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist) 2>&56292 ac_status=$?6293 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&56294 test $ac_status = 0; } && test -s "$nlist"; then6295 # Try sorting and uniquifying the output.6296 if sort "$nlist" | uniq > "$nlist"T; then6297 mv -f "$nlist"T "$nlist"6298 else6299 rm -f "$nlist"T6300 fi6301 6302 # Make sure that we snagged all the symbols we need.6303 if $GREP ' nm_test_var$' "$nlist" >/dev/null; then6304 if $GREP ' nm_test_func$' "$nlist" >/dev/null; then6305 cat <<_LT_EOF > conftest.$ac_ext6306 /* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests. */6307 #if defined _WIN32 || defined __CYGWIN__ || defined _WIN32_WCE6308 /* DATA imports from DLLs on WIN32 can't be const, because runtime6309 relocations are performed -- see ld's documentation on pseudo-relocs. */6310 # define LT_DLSYM_CONST6311 #elif defined __osf__6312 /* This system does not cope well with relocations in const data. */6313 # define LT_DLSYM_CONST6314 #else6315 # define LT_DLSYM_CONST const6316 #endif6317 6318 #ifdef __cplusplus6319 extern "C" {6320 #endif6321 6322 _LT_EOF6323 # Now generate the symbol file.6324 eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext'6325 6326 cat <<_LT_EOF >> conftest.$ac_ext6327 6328 /* The mapping between symbol names and symbols. */6329 LT_DLSYM_CONST struct {6330 const char *name;6331 void *address;6332 }6333 lt__PROGRAM__LTX_preloaded_symbols[] =6334 {6335 { "@PROGRAM@", (void *) 0 },6336 _LT_EOF6337 $SED "s/^$symcode$symcode* .* \(.*\)$/ {\"\1\", (void *) \&\1},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext6338 cat <<\_LT_EOF >> conftest.$ac_ext6339 {0, (void *) 0}6340 };6341 6342 /* This works around a problem in FreeBSD linker */6343 #ifdef FREEBSD_WORKAROUND6344 static const void *lt_preloaded_setup() {6345 return lt__PROGRAM__LTX_preloaded_symbols;6346 }6347 #endif6348 6349 #ifdef __cplusplus6350 }6351 #endif6352 _LT_EOF6353 # Now try linking the two files.6354 mv conftest.$ac_objext conftstm.$ac_objext6355 lt_globsym_save_LIBS=$LIBS6356 lt_globsym_save_CFLAGS=$CFLAGS6357 LIBS=conftstm.$ac_objext6358 CFLAGS="$CFLAGS$lt_prog_compiler_no_builtin_flag"6359 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&56360 (eval $ac_link) 2>&56361 ac_status=$?6362 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&56363 test $ac_status = 0; } && test -s conftest$ac_exeext; then6364 pipe_works=yes6365 fi6366 LIBS=$lt_globsym_save_LIBS6367 CFLAGS=$lt_globsym_save_CFLAGS6368 else6369 echo "cannot find nm_test_func in $nlist" >&56370 fi6371 else6372 echo "cannot find nm_test_var in $nlist" >&56373 fi6374 else6375 echo "cannot run $lt_cv_sys_global_symbol_pipe" >&56376 fi6377 else6378 echo "$progname: failed program was:" >&56379 cat conftest.$ac_ext >&56380 fi6381 rm -rf conftest* conftst*6382 6383 # Do not use the global_symbol_pipe unless it works.6384 if test yes = "$pipe_works"; then6385 break6386 else6387 lt_cv_sys_global_symbol_pipe=6388 fi6389 done6390 6391 fi6392 6393 if test -z "$lt_cv_sys_global_symbol_pipe"; then6394 lt_cv_sys_global_symbol_to_cdecl=6395 fi6396 if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then6397 { $as_echo "$as_me:${as_lineno-$LINENO}: result: failed" >&56398 $as_echo "failed" >&6; }6399 else6400 { $as_echo "$as_me:${as_lineno-$LINENO}: result: ok" >&56401 $as_echo "ok" >&6; }6402 fi6403 6404 # Response file support.6405 if test "$lt_cv_nm_interface" = "MS dumpbin"; then6406 nm_file_list_spec='@'6407 elif $NM --help 2>/dev/null | grep '[@]FILE' >/dev/null; then6408 nm_file_list_spec='@'6409 fi6410 6411 6412 6413 6414 6415 6416 6417 6418 6419 6420 6421 6422 6423 6424 6425 6426 6427 6428 6429 6430 6431 6432 6433 6434 6435 6436 6437 6438 6439 6440 6441 6442 6443 6444 6445 6446 6447 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for sysroot" >&56448 $as_echo_n "checking for sysroot... " >&6; }6449 6450 # Check whether --with-sysroot was given.6451 if test "${with_sysroot+set}" = set; then :6452 withval=$with_sysroot;6453 else6454 with_sysroot=no6455 fi6456 6457 6458 lt_sysroot=6459 case $with_sysroot in #(6460 yes)6461 if test yes = "$GCC"; then6462 lt_sysroot=`$CC --print-sysroot 2>/dev/null`6463 fi6464 ;; #(6465 /*)6466 lt_sysroot=`echo "$with_sysroot" | sed -e "$sed_quote_subst"`6467 ;; #(6468 no|'')6469 ;; #(6470 *)6471 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_sysroot" >&56472 $as_echo "$with_sysroot" >&6; }6473 as_fn_error $? "The sysroot must be an absolute path." "$LINENO" 56474 ;;6475 esac6476 6477 { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${lt_sysroot:-no}" >&56478 $as_echo "${lt_sysroot:-no}" >&6; }6479 6480 6481 6482 6483 6484 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for a working dd" >&56485 $as_echo_n "checking for a working dd... " >&6; }6486 if ${ac_cv_path_lt_DD+:} false; then :6487 $as_echo_n "(cached) " >&66488 else6489 printf 0123456789abcdef0123456789abcdef >conftest.i6490 cat conftest.i conftest.i >conftest2.i6491 : ${lt_DD:=$DD}6492 if test -z "$lt_DD"; then6493 ac_path_lt_DD_found=false6494 # Loop through the user's path and test for each of PROGNAME-LIST6495 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR6496 for as_dir in $PATH6497 do6498 IFS=$as_save_IFS6499 test -z "$as_dir" && as_dir=.6500 for ac_prog in dd; do6501 for ac_exec_ext in '' $ac_executable_extensions; do6502 ac_path_lt_DD="$as_dir/$ac_prog$ac_exec_ext"6503 as_fn_executable_p "$ac_path_lt_DD" || continue6504 if "$ac_path_lt_DD" bs=32 count=1 <conftest2.i >conftest.out 2>/dev/null; then6505 cmp -s conftest.i conftest.out \6506 && ac_cv_path_lt_DD="$ac_path_lt_DD" ac_path_lt_DD_found=:6507 fi6508 $ac_path_lt_DD_found && break 36509 done6510 done6511 done6512 IFS=$as_save_IFS6513 if test -z "$ac_cv_path_lt_DD"; then6514 :6515 fi6516 else6517 ac_cv_path_lt_DD=$lt_DD6518 fi6519 6520 rm -f conftest.i conftest2.i conftest.out6521 fi6522 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_lt_DD" >&56523 $as_echo "$ac_cv_path_lt_DD" >&6; }6524 6525 6526 { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to truncate binary pipes" >&56527 $as_echo_n "checking how to truncate binary pipes... " >&6; }6528 if ${lt_cv_truncate_bin+:} false; then :6529 $as_echo_n "(cached) " >&66530 else6531 printf 0123456789abcdef0123456789abcdef >conftest.i6532 cat conftest.i conftest.i >conftest2.i6533 lt_cv_truncate_bin=6534 if "$ac_cv_path_lt_DD" bs=32 count=1 <conftest2.i >conftest.out 2>/dev/null; then6535 cmp -s conftest.i conftest.out \6536 && lt_cv_truncate_bin="$ac_cv_path_lt_DD bs=4096 count=1"6537 fi6538 rm -f conftest.i conftest2.i conftest.out6539 test -z "$lt_cv_truncate_bin" && lt_cv_truncate_bin="$SED -e 4q"6540 fi6541 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_truncate_bin" >&56542 $as_echo "$lt_cv_truncate_bin" >&6; }6543 6544 6545 6546 6547 6548 6549 6550 # Calculate cc_basename. Skip known compiler wrappers and cross-prefix.6551 func_cc_basename ()6552 {6553 for cc_temp in $*""; do6554 case $cc_temp in6555 compile | *[\\/]compile | ccache | *[\\/]ccache ) ;;6556 distcc | *[\\/]distcc | purify | *[\\/]purify ) ;;6557 \-*) ;;6558 *) break;;6559 esac6560 done6561 func_cc_basename_result=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"`6562 }6563 6564 # Check whether --enable-libtool-lock was given.6565 if test "${enable_libtool_lock+set}" = set; then :6566 enableval=$enable_libtool_lock;6567 fi6568 6569 test no = "$enable_libtool_lock" || enable_libtool_lock=yes6570 6571 # Some flags need to be propagated to the compiler or linker for good6572 # libtool support.6573 case $host in6574 ia64-*-hpux*)6575 # Find out what ABI is being produced by ac_compile, and set mode6576 # options accordingly.6577 echo 'int i;' > conftest.$ac_ext6578 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&56579 (eval $ac_compile) 2>&56580 ac_status=$?6581 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&56582 test $ac_status = 0; }; then6583 case `/usr/bin/file conftest.$ac_objext` in6584 *ELF-32*)6585 HPUX_IA64_MODE=326586 ;;6587 *ELF-64*)6588 HPUX_IA64_MODE=646589 ;;6590 esac6591 fi6592 rm -rf conftest*6593 ;;6594 *-*-irix6*)6595 # Find out what ABI is being produced by ac_compile, and set linker6596 # options accordingly.6597 echo '#line '$LINENO' "configure"' > conftest.$ac_ext6598 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&56599 (eval $ac_compile) 2>&56600 ac_status=$?6601 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&56602 test $ac_status = 0; }; then6603 if test yes = "$lt_cv_prog_gnu_ld"; then6604 case `/usr/bin/file conftest.$ac_objext` in6605 *32-bit*)6606 LD="${LD-ld} -melf32bsmip"6607 ;;6608 *N32*)6609 LD="${LD-ld} -melf32bmipn32"6610 ;;6611 *64-bit*)6612 LD="${LD-ld} -melf64bmip"6613 ;;6614 esac6615 else6616 case `/usr/bin/file conftest.$ac_objext` in6617 *32-bit*)6618 LD="${LD-ld} -32"6619 ;;6620 *N32*)6621 LD="${LD-ld} -n32"6622 ;;6623 *64-bit*)6624 LD="${LD-ld} -64"6625 ;;6626 esac6627 fi6628 fi6629 rm -rf conftest*6630 ;;6631 6632 mips64*-*linux*)6633 # Find out what ABI is being produced by ac_compile, and set linker6634 # options accordingly.6635 echo '#line '$LINENO' "configure"' > conftest.$ac_ext6636 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&56637 (eval $ac_compile) 2>&56638 ac_status=$?6639 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&56640 test $ac_status = 0; }; then6641 emul=elf6642 case `/usr/bin/file conftest.$ac_objext` in6643 *32-bit*)6644 emul="${emul}32"6645 ;;6646 *64-bit*)6647 emul="${emul}64"6648 ;;6649 esac6650 case `/usr/bin/file conftest.$ac_objext` in6651 *MSB*)6652 emul="${emul}btsmip"6653 ;;6654 *LSB*)6655 emul="${emul}ltsmip"6656 ;;6657 esac6658 case `/usr/bin/file conftest.$ac_objext` in6659 *N32*)6660 emul="${emul}n32"6661 ;;6662 esac6663 LD="${LD-ld} -m $emul"6664 fi6665 rm -rf conftest*6666 ;;6667 6668 x86_64-*kfreebsd*-gnu|x86_64-*linux*|powerpc*-*linux*| \6669 s390*-*linux*|s390*-*tpf*|sparc*-*linux*)6670 # Find out what ABI is being produced by ac_compile, and set linker6671 # options accordingly. Note that the listed cases only cover the6672 # situations where additional linker options are needed (such as when6673 # doing 32-bit compilation for a host where ld defaults to 64-bit, or6674 # vice versa); the common cases where no linker options are needed do6675 # not appear in the list.6676 echo 'int i;' > conftest.$ac_ext6677 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&56678 (eval $ac_compile) 2>&56679 ac_status=$?6680 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&56681 test $ac_status = 0; }; then6682 case `/usr/bin/file conftest.o` in6683 *32-bit*)6684 case $host in6685 x86_64-*kfreebsd*-gnu)6686 LD="${LD-ld} -m elf_i386_fbsd"6687 ;;6688 x86_64-*linux*)6689 case `/usr/bin/file conftest.o` in6690 *x86-64*)6691 LD="${LD-ld} -m elf32_x86_64"6692 ;;6693 *)6694 LD="${LD-ld} -m elf_i386"6695 ;;6696 esac6697 ;;6698 powerpc64le-*linux*)6699 LD="${LD-ld} -m elf32lppclinux"6700 ;;6701 powerpc64-*linux*)6702 LD="${LD-ld} -m elf32ppclinux"6703 ;;6704 s390x-*linux*)6705 LD="${LD-ld} -m elf_s390"6706 ;;6707 sparc64-*linux*)6708 LD="${LD-ld} -m elf32_sparc"6709 ;;6710 esac6711 ;;6712 *64-bit*)6713 case $host in6714 x86_64-*kfreebsd*-gnu)6715 LD="${LD-ld} -m elf_x86_64_fbsd"6716 ;;6717 x86_64-*linux*)6718 LD="${LD-ld} -m elf_x86_64"6719 ;;6720 powerpcle-*linux*)6721 LD="${LD-ld} -m elf64lppc"6722 ;;6723 powerpc-*linux*)6724 LD="${LD-ld} -m elf64ppc"6725 ;;6726 s390*-*linux*|s390*-*tpf*)6727 LD="${LD-ld} -m elf64_s390"6728 ;;6729 sparc*-*linux*)6730 LD="${LD-ld} -m elf64_sparc"6731 ;;6732 esac6733 ;;6734 esac6735 fi6736 rm -rf conftest*6737 ;;6738 6739 *-*-sco3.2v5*)6740 # On SCO OpenServer 5, we need -belf to get full-featured binaries.6741 SAVE_CFLAGS=$CFLAGS6742 CFLAGS="$CFLAGS -belf"6743 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler needs -belf" >&56744 $as_echo_n "checking whether the C compiler needs -belf... " >&6; }6745 if ${lt_cv_cc_needs_belf+:} false; then :6746 $as_echo_n "(cached) " >&66747 else6748 ac_ext=c6749 ac_cpp='$CPP $CPPFLAGS'6750 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'6751 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'6752 ac_compiler_gnu=$ac_cv_c_compiler_gnu6753 6754 cat confdefs.h - <<_ACEOF >conftest.$ac_ext6755 /* end confdefs.h. */6756 6757 int6758 main ()6759 {6760 6761 ;6762 return 0;6763 }6764 _ACEOF6765 if ac_fn_c_try_link "$LINENO"; then :6766 lt_cv_cc_needs_belf=yes6767 else6768 lt_cv_cc_needs_belf=no6769 fi6770 rm -f core conftest.err conftest.$ac_objext \6771 conftest$ac_exeext conftest.$ac_ext6772 ac_ext=c6773 ac_cpp='$CPP $CPPFLAGS'6774 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'6775 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'6776 ac_compiler_gnu=$ac_cv_c_compiler_gnu6777 6778 fi6779 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_cc_needs_belf" >&56780 $as_echo "$lt_cv_cc_needs_belf" >&6; }6781 if test yes != "$lt_cv_cc_needs_belf"; then6782 # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf6783 CFLAGS=$SAVE_CFLAGS6784 fi6785 ;;6786 *-*solaris*)6787 # Find out what ABI is being produced by ac_compile, and set linker6788 # options accordingly.6789 echo 'int i;' > conftest.$ac_ext6790 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&56791 (eval $ac_compile) 2>&56792 ac_status=$?6793 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&56794 test $ac_status = 0; }; then6795 case `/usr/bin/file conftest.o` in6796 *64-bit*)6797 case $lt_cv_prog_gnu_ld in6798 yes*)6799 case $host in6800 i?86-*-solaris*|x86_64-*-solaris*)6801 LD="${LD-ld} -m elf_x86_64"6802 ;;6803 sparc*-*-solaris*)6804 LD="${LD-ld} -m elf64_sparc"6805 ;;6806 esac6807 # GNU ld 2.21 introduced _sol2 emulations. Use them if available.6808 if ${LD-ld} -V | grep _sol2 >/dev/null 2>&1; then6809 LD=${LD-ld}_sol26810 fi6811 ;;6812 *)6813 if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then6814 LD="${LD-ld} -64"6815 fi6816 ;;6817 esac6818 ;;6819 esac6820 fi6821 rm -rf conftest*6822 ;;6823 esac6824 6825 need_locks=$enable_libtool_lock6826 6827 if test -n "$ac_tool_prefix"; then6828 # Extract the first word of "${ac_tool_prefix}mt", so it can be a program name with args.6829 set dummy ${ac_tool_prefix}mt; ac_word=$26830 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&56831 $as_echo_n "checking for $ac_word... " >&6; }6832 if ${ac_cv_prog_MANIFEST_TOOL+:} false; then :6833 $as_echo_n "(cached) " >&66834 else6835 if test -n "$MANIFEST_TOOL"; then6836 ac_cv_prog_MANIFEST_TOOL="$MANIFEST_TOOL" # Let the user override the test.6837 else6838 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR6839 for as_dir in $PATH6840 do6841 IFS=$as_save_IFS6842 test -z "$as_dir" && as_dir=.6843 for ac_exec_ext in '' $ac_executable_extensions; do6844 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then6845 ac_cv_prog_MANIFEST_TOOL="${ac_tool_prefix}mt"6846 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&56847 break 26848 fi6849 done6850 done6851 IFS=$as_save_IFS6852 6853 fi6854 fi6855 MANIFEST_TOOL=$ac_cv_prog_MANIFEST_TOOL6856 if test -n "$MANIFEST_TOOL"; then6857 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MANIFEST_TOOL" >&56858 $as_echo "$MANIFEST_TOOL" >&6; }6859 else6860 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&56861 $as_echo "no" >&6; }6862 fi6863 6864 6865 fi6866 if test -z "$ac_cv_prog_MANIFEST_TOOL"; then6867 ac_ct_MANIFEST_TOOL=$MANIFEST_TOOL6868 # Extract the first word of "mt", so it can be a program name with args.6869 set dummy mt; ac_word=$26870 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&56871 $as_echo_n "checking for $ac_word... " >&6; }6872 if ${ac_cv_prog_ac_ct_MANIFEST_TOOL+:} false; then :6873 $as_echo_n "(cached) " >&66874 else6875 if test -n "$ac_ct_MANIFEST_TOOL"; then6876 ac_cv_prog_ac_ct_MANIFEST_TOOL="$ac_ct_MANIFEST_TOOL" # Let the user override the test.6877 else6878 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR6879 for as_dir in $PATH6880 do6881 IFS=$as_save_IFS6882 test -z "$as_dir" && as_dir=.6883 for ac_exec_ext in '' $ac_executable_extensions; do6884 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then6885 ac_cv_prog_ac_ct_MANIFEST_TOOL="mt"6886 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&56887 break 26888 fi6889 done6890 done6891 IFS=$as_save_IFS6892 6893 fi6894 fi6895 ac_ct_MANIFEST_TOOL=$ac_cv_prog_ac_ct_MANIFEST_TOOL6896 if test -n "$ac_ct_MANIFEST_TOOL"; then6897 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_MANIFEST_TOOL" >&56898 $as_echo "$ac_ct_MANIFEST_TOOL" >&6; }6899 else6900 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&56901 $as_echo "no" >&6; }6902 fi6903 6904 if test "x$ac_ct_MANIFEST_TOOL" = x; then6905 MANIFEST_TOOL=":"6906 else6907 case $cross_compiling:$ac_tool_warned in6908 yes:)6909 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&56910 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}6911 ac_tool_warned=yes ;;6912 esac6913 MANIFEST_TOOL=$ac_ct_MANIFEST_TOOL6914 fi6915 else6916 MANIFEST_TOOL="$ac_cv_prog_MANIFEST_TOOL"6917 fi6918 6919 test -z "$MANIFEST_TOOL" && MANIFEST_TOOL=mt6920 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $MANIFEST_TOOL is a manifest tool" >&56921 $as_echo_n "checking if $MANIFEST_TOOL is a manifest tool... " >&6; }6922 if ${lt_cv_path_mainfest_tool+:} false; then :6923 $as_echo_n "(cached) " >&66924 else6925 lt_cv_path_mainfest_tool=no6926 echo "$as_me:$LINENO: $MANIFEST_TOOL '-?'" >&56927 $MANIFEST_TOOL '-?' 2>conftest.err > conftest.out6928 cat conftest.err >&56929 if $GREP 'Manifest Tool' conftest.out > /dev/null; then6930 lt_cv_path_mainfest_tool=yes6931 fi6932 rm -f conftest*6933 fi6934 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_mainfest_tool" >&56935 $as_echo "$lt_cv_path_mainfest_tool" >&6; }6936 if test yes != "$lt_cv_path_mainfest_tool"; then6937 MANIFEST_TOOL=:6938 fi6939 6940 6941 6942 6943 6944 6945 case $host_os in6946 rhapsody* | darwin*)6947 if test -n "$ac_tool_prefix"; then6948 # Extract the first word of "${ac_tool_prefix}dsymutil", so it can be a program name with args.6949 set dummy ${ac_tool_prefix}dsymutil; ac_word=$26950 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&56951 $as_echo_n "checking for $ac_word... " >&6; }6952 if ${ac_cv_prog_DSYMUTIL+:} false; then :6953 $as_echo_n "(cached) " >&66954 else6955 if test -n "$DSYMUTIL"; then6956 ac_cv_prog_DSYMUTIL="$DSYMUTIL" # Let the user override the test.6957 else6958 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR6959 for as_dir in $PATH6960 do6961 IFS=$as_save_IFS6962 test -z "$as_dir" && as_dir=.6963 for ac_exec_ext in '' $ac_executable_extensions; do6964 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then6965 ac_cv_prog_DSYMUTIL="${ac_tool_prefix}dsymutil"6966 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&56967 break 26968 fi6969 done6970 done6971 IFS=$as_save_IFS6972 6973 fi6974 fi6975 DSYMUTIL=$ac_cv_prog_DSYMUTIL6976 if test -n "$DSYMUTIL"; then6977 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DSYMUTIL" >&56978 $as_echo "$DSYMUTIL" >&6; }6979 else6980 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&56981 $as_echo "no" >&6; }6982 fi6983 6984 6985 fi6986 if test -z "$ac_cv_prog_DSYMUTIL"; then6987 ac_ct_DSYMUTIL=$DSYMUTIL6988 # Extract the first word of "dsymutil", so it can be a program name with args.6989 set dummy dsymutil; ac_word=$26990 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&56991 $as_echo_n "checking for $ac_word... " >&6; }6992 if ${ac_cv_prog_ac_ct_DSYMUTIL+:} false; then :6993 $as_echo_n "(cached) " >&66994 else6995 if test -n "$ac_ct_DSYMUTIL"; then6996 ac_cv_prog_ac_ct_DSYMUTIL="$ac_ct_DSYMUTIL" # Let the user override the test.6997 else6998 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR6999 for as_dir in $PATH7000 do7001 IFS=$as_save_IFS7002 test -z "$as_dir" && as_dir=.7003 for ac_exec_ext in '' $ac_executable_extensions; do7004 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then7005 ac_cv_prog_ac_ct_DSYMUTIL="dsymutil"7006 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&57007 break 27008 fi7009 done7010 done7011 IFS=$as_save_IFS7012 7013 fi7014 fi7015 ac_ct_DSYMUTIL=$ac_cv_prog_ac_ct_DSYMUTIL7016 if test -n "$ac_ct_DSYMUTIL"; then7017 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DSYMUTIL" >&57018 $as_echo "$ac_ct_DSYMUTIL" >&6; }7019 else7020 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&57021 $as_echo "no" >&6; }7022 fi7023 7024 if test "x$ac_ct_DSYMUTIL" = x; then7025 DSYMUTIL=":"7026 else7027 case $cross_compiling:$ac_tool_warned in7028 yes:)7029 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&57030 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}7031 ac_tool_warned=yes ;;7032 esac7033 DSYMUTIL=$ac_ct_DSYMUTIL7034 fi7035 else7036 DSYMUTIL="$ac_cv_prog_DSYMUTIL"7037 fi7038 7039 if test -n "$ac_tool_prefix"; then7040 # Extract the first word of "${ac_tool_prefix}nmedit", so it can be a program name with args.7041 set dummy ${ac_tool_prefix}nmedit; ac_word=$27042 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&57043 $as_echo_n "checking for $ac_word... " >&6; }7044 if ${ac_cv_prog_NMEDIT+:} false; then :7045 $as_echo_n "(cached) " >&67046 else7047 if test -n "$NMEDIT"; then7048 ac_cv_prog_NMEDIT="$NMEDIT" # Let the user override the test.7049 else7050 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR7051 for as_dir in $PATH7052 do7053 IFS=$as_save_IFS7054 test -z "$as_dir" && as_dir=.7055 for ac_exec_ext in '' $ac_executable_extensions; do7056 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then7057 ac_cv_prog_NMEDIT="${ac_tool_prefix}nmedit"7058 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&57059 break 27060 fi7061 done7062 done7063 IFS=$as_save_IFS7064 7065 fi7066 fi7067 NMEDIT=$ac_cv_prog_NMEDIT7068 if test -n "$NMEDIT"; then7069 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $NMEDIT" >&57070 $as_echo "$NMEDIT" >&6; }7071 else7072 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&57073 $as_echo "no" >&6; }7074 fi7075 7076 7077 fi7078 if test -z "$ac_cv_prog_NMEDIT"; then7079 ac_ct_NMEDIT=$NMEDIT7080 # Extract the first word of "nmedit", so it can be a program name with args.7081 set dummy nmedit; ac_word=$27082 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&57083 $as_echo_n "checking for $ac_word... " >&6; }7084 if ${ac_cv_prog_ac_ct_NMEDIT+:} false; then :7085 $as_echo_n "(cached) " >&67086 else7087 if test -n "$ac_ct_NMEDIT"; then7088 ac_cv_prog_ac_ct_NMEDIT="$ac_ct_NMEDIT" # Let the user override the test.7089 else7090 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR7091 for as_dir in $PATH7092 do7093 IFS=$as_save_IFS7094 test -z "$as_dir" && as_dir=.7095 for ac_exec_ext in '' $ac_executable_extensions; do7096 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then7097 ac_cv_prog_ac_ct_NMEDIT="nmedit"7098 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&57099 break 27100 fi7101 done7102 done7103 IFS=$as_save_IFS7104 7105 fi7106 fi7107 ac_ct_NMEDIT=$ac_cv_prog_ac_ct_NMEDIT7108 if test -n "$ac_ct_NMEDIT"; then7109 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_NMEDIT" >&57110 $as_echo "$ac_ct_NMEDIT" >&6; }7111 else7112 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&57113 $as_echo "no" >&6; }7114 fi7115 7116 if test "x$ac_ct_NMEDIT" = x; then7117 NMEDIT=":"7118 else7119 case $cross_compiling:$ac_tool_warned in7120 yes:)7121 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&57122 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}7123 ac_tool_warned=yes ;;7124 esac7125 NMEDIT=$ac_ct_NMEDIT7126 fi7127 else7128 NMEDIT="$ac_cv_prog_NMEDIT"7129 fi7130 7131 if test -n "$ac_tool_prefix"; then7132 # Extract the first word of "${ac_tool_prefix}lipo", so it can be a program name with args.7133 set dummy ${ac_tool_prefix}lipo; ac_word=$27134 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&57135 $as_echo_n "checking for $ac_word... " >&6; }7136 if ${ac_cv_prog_LIPO+:} false; then :7137 $as_echo_n "(cached) " >&67138 else7139 if test -n "$LIPO"; then7140 ac_cv_prog_LIPO="$LIPO" # Let the user override the test.7141 else7142 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR7143 for as_dir in $PATH7144 do7145 IFS=$as_save_IFS7146 test -z "$as_dir" && as_dir=.7147 for ac_exec_ext in '' $ac_executable_extensions; do7148 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then7149 ac_cv_prog_LIPO="${ac_tool_prefix}lipo"7150 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&57151 break 27152 fi7153 done7154 done7155 IFS=$as_save_IFS7156 7157 fi7158 fi7159 LIPO=$ac_cv_prog_LIPO7160 if test -n "$LIPO"; then7161 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIPO" >&57162 $as_echo "$LIPO" >&6; }7163 else7164 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&57165 $as_echo "no" >&6; }7166 fi7167 7168 7169 fi7170 if test -z "$ac_cv_prog_LIPO"; then7171 ac_ct_LIPO=$LIPO7172 # Extract the first word of "lipo", so it can be a program name with args.7173 set dummy lipo; ac_word=$27174 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&57175 $as_echo_n "checking for $ac_word... " >&6; }7176 if ${ac_cv_prog_ac_ct_LIPO+:} false; then :7177 $as_echo_n "(cached) " >&67178 else7179 if test -n "$ac_ct_LIPO"; then7180 ac_cv_prog_ac_ct_LIPO="$ac_ct_LIPO" # Let the user override the test.7181 else7182 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR7183 for as_dir in $PATH7184 do7185 IFS=$as_save_IFS7186 test -z "$as_dir" && as_dir=.7187 for ac_exec_ext in '' $ac_executable_extensions; do7188 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then7189 ac_cv_prog_ac_ct_LIPO="lipo"7190 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&57191 break 27192 fi7193 done7194 done7195 IFS=$as_save_IFS7196 7197 fi7198 fi7199 ac_ct_LIPO=$ac_cv_prog_ac_ct_LIPO7200 if test -n "$ac_ct_LIPO"; then7201 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_LIPO" >&57202 $as_echo "$ac_ct_LIPO" >&6; }7203 else7204 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&57205 $as_echo "no" >&6; }7206 fi7207 7208 if test "x$ac_ct_LIPO" = x; then7209 LIPO=":"7210 else7211 case $cross_compiling:$ac_tool_warned in7212 yes:)7213 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&57214 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}7215 ac_tool_warned=yes ;;7216 esac7217 LIPO=$ac_ct_LIPO7218 fi7219 else7220 LIPO="$ac_cv_prog_LIPO"7221 fi7222 7223 if test -n "$ac_tool_prefix"; then7224 # Extract the first word of "${ac_tool_prefix}otool", so it can be a program name with args.7225 set dummy ${ac_tool_prefix}otool; ac_word=$27226 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&57227 $as_echo_n "checking for $ac_word... " >&6; }7228 if ${ac_cv_prog_OTOOL+:} false; then :7229 $as_echo_n "(cached) " >&67230 else7231 if test -n "$OTOOL"; then7232 ac_cv_prog_OTOOL="$OTOOL" # Let the user override the test.7233 else7234 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR7235 for as_dir in $PATH7236 do7237 IFS=$as_save_IFS7238 test -z "$as_dir" && as_dir=.7239 for ac_exec_ext in '' $ac_executable_extensions; do7240 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then7241 ac_cv_prog_OTOOL="${ac_tool_prefix}otool"7242 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&57243 break 27244 fi7245 done7246 done7247 IFS=$as_save_IFS7248 7249 fi7250 fi7251 OTOOL=$ac_cv_prog_OTOOL7252 if test -n "$OTOOL"; then7253 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OTOOL" >&57254 $as_echo "$OTOOL" >&6; }7255 else7256 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&57257 $as_echo "no" >&6; }7258 fi7259 7260 7261 fi7262 if test -z "$ac_cv_prog_OTOOL"; then7263 ac_ct_OTOOL=$OTOOL7264 # Extract the first word of "otool", so it can be a program name with args.7265 set dummy otool; ac_word=$27266 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&57267 $as_echo_n "checking for $ac_word... " >&6; }7268 if ${ac_cv_prog_ac_ct_OTOOL+:} false; then :7269 $as_echo_n "(cached) " >&67270 else7271 if test -n "$ac_ct_OTOOL"; then7272 ac_cv_prog_ac_ct_OTOOL="$ac_ct_OTOOL" # Let the user override the test.7273 else7274 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR7275 for as_dir in $PATH7276 do7277 IFS=$as_save_IFS7278 test -z "$as_dir" && as_dir=.7279 for ac_exec_ext in '' $ac_executable_extensions; do7280 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then7281 ac_cv_prog_ac_ct_OTOOL="otool"7282 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&57283 break 27284 fi7285 done7286 done7287 IFS=$as_save_IFS7288 7289 fi7290 fi7291 ac_ct_OTOOL=$ac_cv_prog_ac_ct_OTOOL7292 if test -n "$ac_ct_OTOOL"; then7293 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OTOOL" >&57294 $as_echo "$ac_ct_OTOOL" >&6; }7295 else7296 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&57297 $as_echo "no" >&6; }7298 fi7299 7300 if test "x$ac_ct_OTOOL" = x; then7301 OTOOL=":"7302 else7303 case $cross_compiling:$ac_tool_warned in7304 yes:)7305 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&57306 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}7307 ac_tool_warned=yes ;;7308 esac7309 OTOOL=$ac_ct_OTOOL7310 fi7311 else7312 OTOOL="$ac_cv_prog_OTOOL"7313 fi7314 7315 if test -n "$ac_tool_prefix"; then7316 # Extract the first word of "${ac_tool_prefix}otool64", so it can be a program name with args.7317 set dummy ${ac_tool_prefix}otool64; ac_word=$27318 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&57319 $as_echo_n "checking for $ac_word... " >&6; }7320 if ${ac_cv_prog_OTOOL64+:} false; then :7321 $as_echo_n "(cached) " >&67322 else7323 if test -n "$OTOOL64"; then7324 ac_cv_prog_OTOOL64="$OTOOL64" # Let the user override the test.7325 else7326 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR7327 for as_dir in $PATH7328 do7329 IFS=$as_save_IFS7330 test -z "$as_dir" && as_dir=.7331 for ac_exec_ext in '' $ac_executable_extensions; do7332 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then7333 ac_cv_prog_OTOOL64="${ac_tool_prefix}otool64"7334 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&57335 break 27336 fi7337 done7338 done7339 IFS=$as_save_IFS7340 7341 fi7342 fi7343 OTOOL64=$ac_cv_prog_OTOOL647344 if test -n "$OTOOL64"; then7345 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OTOOL64" >&57346 $as_echo "$OTOOL64" >&6; }7347 else7348 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&57349 $as_echo "no" >&6; }7350 fi7351 7352 7353 fi7354 if test -z "$ac_cv_prog_OTOOL64"; then7355 ac_ct_OTOOL64=$OTOOL647356 # Extract the first word of "otool64", so it can be a program name with args.7357 set dummy otool64; ac_word=$27358 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&57359 $as_echo_n "checking for $ac_word... " >&6; }7360 if ${ac_cv_prog_ac_ct_OTOOL64+:} false; then :7361 $as_echo_n "(cached) " >&67362 else7363 if test -n "$ac_ct_OTOOL64"; then7364 ac_cv_prog_ac_ct_OTOOL64="$ac_ct_OTOOL64" # Let the user override the test.7365 else7366 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR7367 for as_dir in $PATH7368 do7369 IFS=$as_save_IFS7370 test -z "$as_dir" && as_dir=.7371 for ac_exec_ext in '' $ac_executable_extensions; do7372 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then7373 ac_cv_prog_ac_ct_OTOOL64="otool64"7374 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&57375 break 27376 fi7377 done7378 done7379 IFS=$as_save_IFS7380 7381 fi7382 fi7383 ac_ct_OTOOL64=$ac_cv_prog_ac_ct_OTOOL647384 if test -n "$ac_ct_OTOOL64"; then7385 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OTOOL64" >&57386 $as_echo "$ac_ct_OTOOL64" >&6; }7387 else7388 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&57389 $as_echo "no" >&6; }7390 fi7391 7392 if test "x$ac_ct_OTOOL64" = x; then7393 OTOOL64=":"7394 else7395 case $cross_compiling:$ac_tool_warned in7396 yes:)7397 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&57398 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}7399 ac_tool_warned=yes ;;7400 esac7401 OTOOL64=$ac_ct_OTOOL647402 fi7403 else7404 OTOOL64="$ac_cv_prog_OTOOL64"7405 fi7406 7407 7408 7409 7410 7411 7412 7413 7414 7415 7416 7417 7418 7419 7420 7421 7422 7423 7424 7425 7426 7427 7428 7429 7430 7431 7432 7433 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -single_module linker flag" >&57434 $as_echo_n "checking for -single_module linker flag... " >&6; }7435 if ${lt_cv_apple_cc_single_mod+:} false; then :7436 $as_echo_n "(cached) " >&67437 else7438 lt_cv_apple_cc_single_mod=no7439 if test -z "$LT_MULTI_MODULE"; then7440 # By default we will add the -single_module flag. You can override7441 # by either setting the environment variable LT_MULTI_MODULE7442 # non-empty at configure time, or by adding -multi_module to the7443 # link flags.7444 rm -rf libconftest.dylib*7445 echo "int foo(void){return 1;}" > conftest.c7446 echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \7447 -dynamiclib -Wl,-single_module conftest.c" >&57448 $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \7449 -dynamiclib -Wl,-single_module conftest.c 2>conftest.err7450 _lt_result=$?7451 # If there is a non-empty error log, and "single_module"7452 # appears in it, assume the flag caused a linker warning7453 if test -s conftest.err && $GREP single_module conftest.err; then7454 cat conftest.err >&57455 # Otherwise, if the output was created with a 0 exit code from7456 # the compiler, it worked.7457 elif test -f libconftest.dylib && test 0 = "$_lt_result"; then7458 lt_cv_apple_cc_single_mod=yes7459 else7460 cat conftest.err >&57461 fi7462 rm -rf libconftest.dylib*7463 rm -f conftest.*7464 fi7465 fi7466 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_apple_cc_single_mod" >&57467 $as_echo "$lt_cv_apple_cc_single_mod" >&6; }7468 7469 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -exported_symbols_list linker flag" >&57470 $as_echo_n "checking for -exported_symbols_list linker flag... " >&6; }7471 if ${lt_cv_ld_exported_symbols_list+:} false; then :7472 $as_echo_n "(cached) " >&67473 else7474 lt_cv_ld_exported_symbols_list=no7475 save_LDFLAGS=$LDFLAGS7476 echo "_main" > conftest.sym7477 LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym"7478 cat confdefs.h - <<_ACEOF >conftest.$ac_ext7479 /* end confdefs.h. */7480 7481 int7482 main ()7483 {7484 7485 ;7486 return 0;7487 }7488 _ACEOF7489 if ac_fn_c_try_link "$LINENO"; then :7490 lt_cv_ld_exported_symbols_list=yes7491 else7492 lt_cv_ld_exported_symbols_list=no7493 fi7494 rm -f core conftest.err conftest.$ac_objext \7495 conftest$ac_exeext conftest.$ac_ext7496 LDFLAGS=$save_LDFLAGS7497 7498 fi7499 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_exported_symbols_list" >&57500 $as_echo "$lt_cv_ld_exported_symbols_list" >&6; }7501 7502 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -force_load linker flag" >&57503 $as_echo_n "checking for -force_load linker flag... " >&6; }7504 if ${lt_cv_ld_force_load+:} false; then :7505 $as_echo_n "(cached) " >&67506 else7507 lt_cv_ld_force_load=no7508 cat > conftest.c << _LT_EOF7509 int forced_loaded() { return 2;}7510 _LT_EOF7511 echo "$LTCC $LTCFLAGS -c -o conftest.o conftest.c" >&57512 $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&57513 echo "$AR cru libconftest.a conftest.o" >&57514 $AR cru libconftest.a conftest.o 2>&57515 echo "$RANLIB libconftest.a" >&57516 $RANLIB libconftest.a 2>&57517 cat > conftest.c << _LT_EOF7518 int main() { return 0;}7519 _LT_EOF7520 echo "$LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a" >&57521 $LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a 2>conftest.err7522 _lt_result=$?7523 if test -s conftest.err && $GREP force_load conftest.err; then7524 cat conftest.err >&57525 elif test -f conftest && test 0 = "$_lt_result" && $GREP forced_load conftest >/dev/null 2>&1; then7526 lt_cv_ld_force_load=yes7527 else7528 cat conftest.err >&57529 fi7530 rm -f conftest.err libconftest.a conftest conftest.c7531 rm -rf conftest.dSYM7532 7533 fi7534 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_force_load" >&57535 $as_echo "$lt_cv_ld_force_load" >&6; }7536 case $host_os in7537 rhapsody* | darwin1.[012])7538 _lt_dar_allow_undefined='$wl-undefined ${wl}suppress' ;;7539 darwin1.*)7540 _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;;7541 darwin*) # darwin 5.x on7542 # if running on 10.5 or later, the deployment target defaults7543 # to the OS version, if on x86, and 10.4, the deployment7544 # target defaults to 10.4. Don't you love it?7545 case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in7546 10.0,*86*-darwin8*|10.0,*-darwin[91]*)7547 _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;;7548 10.[012][,.]*)7549 _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;;7550 10.*)7551 _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;;7552 esac7553 ;;7554 esac7555 if test yes = "$lt_cv_apple_cc_single_mod"; then7556 _lt_dar_single_mod='$single_module'7557 fi7558 if test yes = "$lt_cv_ld_exported_symbols_list"; then7559 _lt_dar_export_syms=' $wl-exported_symbols_list,$output_objdir/$libname-symbols.expsym'7560 else7561 _lt_dar_export_syms='~$NMEDIT -s $output_objdir/$libname-symbols.expsym $lib'7562 fi7563 if test : != "$DSYMUTIL" && test no = "$lt_cv_ld_force_load"; then7564 _lt_dsymutil='~$DSYMUTIL $lib || :'7565 else7566 _lt_dsymutil=7567 fi7568 ;;7569 esac7570 7571 # func_munge_path_list VARIABLE PATH7572 # -----------------------------------7573 # VARIABLE is name of variable containing _space_ separated list of7574 # directories to be munged by the contents of PATH, which is string7575 # having a format:7576 # "DIR[:DIR]:"7577 # string "DIR[ DIR]" will be prepended to VARIABLE7578 # ":DIR[:DIR]"7579 # string "DIR[ DIR]" will be appended to VARIABLE7580 # "DIRP[:DIRP]::[DIRA:]DIRA"7581 # string "DIRP[ DIRP]" will be prepended to VARIABLE and string7582 # "DIRA[ DIRA]" will be appended to VARIABLE7583 # "DIR[:DIR]"7584 # VARIABLE will be replaced by "DIR[ DIR]"7585 func_munge_path_list ()7586 {7587 case x$2 in7588 x)7589 ;;7590 *:)7591 eval $1=\"`$ECHO $2 | $SED 's/:/ /g'` \$$1\"7592 ;;7593 x:*)7594 eval $1=\"\$$1 `$ECHO $2 | $SED 's/:/ /g'`\"7595 ;;7596 *::*)7597 eval $1=\"\$$1\ `$ECHO $2 | $SED -e 's/.*:://' -e 's/:/ /g'`\"7598 eval $1=\"`$ECHO $2 | $SED -e 's/::.*//' -e 's/:/ /g'`\ \$$1\"7599 ;;7600 *)7601 eval $1=\"`$ECHO $2 | $SED 's/:/ /g'`\"7602 ;;7603 esac7604 }7605 7606 ac_ext=c7607 ac_cpp='$CPP $CPPFLAGS'7608 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'7609 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'7610 ac_compiler_gnu=$ac_cv_c_compiler_gnu7611 { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&57612 $as_echo_n "checking how to run the C preprocessor... " >&6; }7613 # On Suns, sometimes $CPP names a directory.7614 if test -n "$CPP" && test -d "$CPP"; then7615 CPP=7616 fi7617 if test -z "$CPP"; then7618 if ${ac_cv_prog_CPP+:} false; then :7619 $as_echo_n "(cached) " >&67620 else7621 # Double quotes because CPP needs to be expanded7622 for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp"7623 do7624 ac_preproc_ok=false7625 for ac_c_preproc_warn_flag in '' yes7626 do7627 # Use a header file that comes with gcc, so configuring glibc7628 # with a fresh cross-compiler works.7629 # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since7630 # <limits.h> exists even on freestanding compilers.7631 # On the NeXT, cc -E runs the code through the compiler's parser,7632 # not just through cpp. "Syntax error" is here to catch this case.7633 cat confdefs.h - <<_ACEOF >conftest.$ac_ext7634 /* end confdefs.h. */7635 #ifdef __STDC__7636 # include <limits.h>7637 #else7638 # include <assert.h>7639 #endif7640 Syntax error7641 _ACEOF7642 if ac_fn_c_try_cpp "$LINENO"; then :7643 7644 else7645 # Broken: fails on valid input.7646 continue7647 fi7648 rm -f conftest.err conftest.i conftest.$ac_ext7649 7650 # OK, works on sane cases. Now check whether nonexistent headers7651 # can be detected and how.7652 cat confdefs.h - <<_ACEOF >conftest.$ac_ext7653 /* end confdefs.h. */7654 #include <ac_nonexistent.h>7655 _ACEOF7656 if ac_fn_c_try_cpp "$LINENO"; then :7657 # Broken: success on invalid input.7658 continue7659 else7660 # Passes both tests.7661 ac_preproc_ok=:7662 break7663 fi7664 rm -f conftest.err conftest.i conftest.$ac_ext7665 7666 done7667 # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.7668 rm -f conftest.i conftest.err conftest.$ac_ext7669 if $ac_preproc_ok; then :7670 break7671 fi7672 7673 done7674 ac_cv_prog_CPP=$CPP7675 7676 fi7677 CPP=$ac_cv_prog_CPP7678 else7679 ac_cv_prog_CPP=$CPP7680 fi7681 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CPP" >&57682 $as_echo "$CPP" >&6; }7683 ac_preproc_ok=false7684 for ac_c_preproc_warn_flag in '' yes7685 do7686 # Use a header file that comes with gcc, so configuring glibc7687 # with a fresh cross-compiler works.7688 # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since7689 # <limits.h> exists even on freestanding compilers.7690 # On the NeXT, cc -E runs the code through the compiler's parser,7691 # not just through cpp. "Syntax error" is here to catch this case.7692 cat confdefs.h - <<_ACEOF >conftest.$ac_ext7693 /* end confdefs.h. */7694 #ifdef __STDC__7695 # include <limits.h>7696 #else7697 # include <assert.h>7698 #endif7699 Syntax error7700 _ACEOF7701 if ac_fn_c_try_cpp "$LINENO"; then :7702 7703 else7704 # Broken: fails on valid input.7705 continue7706 fi7707 rm -f conftest.err conftest.i conftest.$ac_ext7708 7709 # OK, works on sane cases. Now check whether nonexistent headers7710 # can be detected and how.7711 cat confdefs.h - <<_ACEOF >conftest.$ac_ext7712 /* end confdefs.h. */7713 #include <ac_nonexistent.h>7714 _ACEOF7715 if ac_fn_c_try_cpp "$LINENO"; then :7716 # Broken: success on invalid input.7717 continue7718 else7719 # Passes both tests.7720 ac_preproc_ok=:7721 break7722 fi7723 rm -f conftest.err conftest.i conftest.$ac_ext7724 7725 done7726 # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.7727 rm -f conftest.i conftest.err conftest.$ac_ext7728 if $ac_preproc_ok; then :7729 7730 else7731 { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&57732 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}7733 as_fn_error $? "C preprocessor \"$CPP\" fails sanity check7734 See \`config.log' for more details" "$LINENO" 5; }7735 fi7736 7737 ac_ext=c7738 ac_cpp='$CPP $CPPFLAGS'7739 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'7740 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'7741 ac_compiler_gnu=$ac_cv_c_compiler_gnu7742 7743 7744 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&57745 $as_echo_n "checking for ANSI C header files... " >&6; }7746 if ${ac_cv_header_stdc+:} false; then :7747 $as_echo_n "(cached) " >&67748 else7749 cat confdefs.h - <<_ACEOF >conftest.$ac_ext7750 /* end confdefs.h. */7751 #include <stdlib.h>7752 #include <stdarg.h>7753 #include <string.h>7754 #include <float.h>7755 7756 int7757 main ()7758 {7759 7760 ;7761 return 0;7762 }7763 _ACEOF7764 if ac_fn_c_try_compile "$LINENO"; then :7765 ac_cv_header_stdc=yes7766 else7767 ac_cv_header_stdc=no7768 fi7769 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext7770 7771 if test $ac_cv_header_stdc = yes; then7772 # SunOS 4.x string.h does not declare mem*, contrary to ANSI.7773 cat confdefs.h - <<_ACEOF >conftest.$ac_ext7774 /* end confdefs.h. */7775 #include <string.h>7776 7777 _ACEOF7778 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |7779 $EGREP "memchr" >/dev/null 2>&1; then :7780 7781 else7782 ac_cv_header_stdc=no7783 fi7784 rm -f conftest*7785 7786 fi7787 7788 if test $ac_cv_header_stdc = yes; then7789 # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.7790 cat confdefs.h - <<_ACEOF >conftest.$ac_ext7791 /* end confdefs.h. */7792 #include <stdlib.h>7793 7794 _ACEOF7795 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |7796 $EGREP "free" >/dev/null 2>&1; then :7797 7798 else7799 ac_cv_header_stdc=no7800 fi7801 rm -f conftest*7802 7803 fi7804 7805 if test $ac_cv_header_stdc = yes; then7806 # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi.7807 if test "$cross_compiling" = yes; then :7808 :7809 else7810 cat confdefs.h - <<_ACEOF >conftest.$ac_ext7811 /* end confdefs.h. */7812 #include <ctype.h>7813 #include <stdlib.h>7814 #if ((' ' & 0x0FF) == 0x020)7815 # define ISLOWER(c) ('a' <= (c) && (c) <= 'z')7816 # define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c))7817 #else7818 # define ISLOWER(c) \7819 (('a' <= (c) && (c) <= 'i') \7820 || ('j' <= (c) && (c) <= 'r') \7821 || ('s' <= (c) && (c) <= 'z'))7822 # define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c))7823 #endif7824 7825 #define XOR(e, f) (((e) && !(f)) || (!(e) && (f)))7826 int7827 main ()7828 {7829 int i;7830 for (i = 0; i < 256; i++)7831 if (XOR (islower (i), ISLOWER (i))7832 || toupper (i) != TOUPPER (i))7833 return 2;7834 return 0;7835 }7836 _ACEOF7837 if ac_fn_c_try_run "$LINENO"; then :7838 7839 else7840 ac_cv_header_stdc=no7841 fi7842 rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \7843 conftest.$ac_objext conftest.beam conftest.$ac_ext7844 fi7845 7846 fi7847 fi7848 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&57849 $as_echo "$ac_cv_header_stdc" >&6; }7850 if test $ac_cv_header_stdc = yes; then7851 7852 $as_echo "#define STDC_HEADERS 1" >>confdefs.h7853 7854 fi7855 7856 # On IRIX 5.3, sys/types and inttypes.h are conflicting.7857 for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \7858 inttypes.h stdint.h unistd.h7859 do :7860 as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`7861 ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default7862 "7863 if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :7864 cat >>confdefs.h <<_ACEOF7865 #define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 17866 _ACEOF7867 7868 fi7869 7870 done7871 7872 7873 for ac_header in dlfcn.h7874 do :7875 ac_fn_c_check_header_compile "$LINENO" "dlfcn.h" "ac_cv_header_dlfcn_h" "$ac_includes_default7876 "7877 if test "x$ac_cv_header_dlfcn_h" = xyes; then :7878 cat >>confdefs.h <<_ACEOF7879 #define HAVE_DLFCN_H 17880 _ACEOF7881 7882 fi7883 7884 done7885 7886 7887 7888 7889 7890 # Set options7891 7892 7893 7894 enable_dlopen=no7895 7896 7897 enable_win32_dll=no7898 7899 7900 # Check whether --enable-shared was given.7901 if test "${enable_shared+set}" = set; then :7902 enableval=$enable_shared; p=${PACKAGE-default}7903 case $enableval in7904 yes) enable_shared=yes ;;7905 no) enable_shared=no ;;7906 *)7907 enable_shared=no7908 # Look at the argument we got. We use all the common list separators.7909 lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,7910 for pkg in $enableval; do7911 IFS=$lt_save_ifs7912 if test "X$pkg" = "X$p"; then7913 enable_shared=yes7914 fi7915 done7916 IFS=$lt_save_ifs7917 ;;7918 esac7919 else7920 enable_shared=yes7921 fi7922 7923 7924 7925 7926 7927 7928 7929 7930 7931 # Check whether --enable-static was given.7932 if test "${enable_static+set}" = set; then :7933 enableval=$enable_static; p=${PACKAGE-default}7934 case $enableval in7935 yes) enable_static=yes ;;7936 no) enable_static=no ;;7937 *)7938 enable_static=no7939 # Look at the argument we got. We use all the common list separators.7940 lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,7941 for pkg in $enableval; do7942 IFS=$lt_save_ifs7943 if test "X$pkg" = "X$p"; then7944 enable_static=yes7945 fi7946 done7947 IFS=$lt_save_ifs7948 ;;7949 esac7950 else7951 enable_static=yes7952 fi7953 7954 7955 7956 7957 7958 7959 7960 7961 7962 7963 # Check whether --with-pic was given.7964 if test "${with_pic+set}" = set; then :7965 withval=$with_pic; lt_p=${PACKAGE-default}7966 case $withval in7967 yes|no) pic_mode=$withval ;;7968 *)7969 pic_mode=default7970 # Look at the argument we got. We use all the common list separators.7971 lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,7972 for lt_pkg in $withval; do7973 IFS=$lt_save_ifs7974 if test "X$lt_pkg" = "X$lt_p"; then7975 pic_mode=yes7976 fi7977 done7978 IFS=$lt_save_ifs7979 ;;7980 esac7981 else7982 pic_mode=default7983 fi7984 7985 7986 7987 7988 7989 7990 7991 7992 # Check whether --enable-fast-install was given.7993 if test "${enable_fast_install+set}" = set; then :7994 enableval=$enable_fast_install; p=${PACKAGE-default}7995 case $enableval in7996 yes) enable_fast_install=yes ;;7997 no) enable_fast_install=no ;;7998 *)7999 enable_fast_install=no8000 # Look at the argument we got. We use all the common list separators.8001 lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,8002 for pkg in $enableval; do8003 IFS=$lt_save_ifs8004 if test "X$pkg" = "X$p"; then8005 enable_fast_install=yes8006 fi8007 done8008 IFS=$lt_save_ifs8009 ;;8010 esac8011 else8012 enable_fast_install=yes8013 fi8014 8015 8016 8017 8018 8019 8020 8021 8022 shared_archive_member_spec=8023 case $host,$enable_shared in8024 power*-*-aix[5-9]*,yes)8025 { $as_echo "$as_me:${as_lineno-$LINENO}: checking which variant of shared library versioning to provide" >&58026 $as_echo_n "checking which variant of shared library versioning to provide... " >&6; }8027 8028 # Check whether --with-aix-soname was given.8029 if test "${with_aix_soname+set}" = set; then :8030 withval=$with_aix_soname; case $withval in8031 aix|svr4|both)8032 ;;8033 *)8034 as_fn_error $? "Unknown argument to --with-aix-soname" "$LINENO" 58035 ;;8036 esac8037 lt_cv_with_aix_soname=$with_aix_soname8038 else8039 if ${lt_cv_with_aix_soname+:} false; then :8040 $as_echo_n "(cached) " >&68041 else8042 lt_cv_with_aix_soname=aix8043 fi8044 8045 with_aix_soname=$lt_cv_with_aix_soname8046 fi8047 8048 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_aix_soname" >&58049 $as_echo "$with_aix_soname" >&6; }8050 if test aix != "$with_aix_soname"; then8051 # For the AIX way of multilib, we name the shared archive member8052 # based on the bitwidth used, traditionally 'shr.o' or 'shr_64.o',8053 # and 'shr.imp' or 'shr_64.imp', respectively, for the Import File.8054 # Even when GNU compilers ignore OBJECT_MODE but need '-maix64' flag,8055 # the AIX toolchain works better with OBJECT_MODE set (default 32).8056 if test 64 = "${OBJECT_MODE-32}"; then8057 shared_archive_member_spec=shr_648058 else8059 shared_archive_member_spec=shr8060 fi8061 fi8062 ;;8063 *)8064 with_aix_soname=aix8065 ;;8066 esac8067 8068 8069 8070 8071 8072 8073 8074 8075 8076 8077 # This can be used to rebuild libtool when needed8078 LIBTOOL_DEPS=$ltmain8079 8080 # Always use our own libtool.8081 LIBTOOL='$(SHELL) $(top_builddir)/libtool'8082 8083 8084 8085 8086 8087 8088 8089 8090 8091 8092 8093 8094 8095 8096 8097 8098 8099 8100 8101 8102 8103 8104 8105 8106 8107 8108 8109 8110 8111 8112 test -z "$LN_S" && LN_S="ln -s"8113 8114 8115 8116 8117 8118 8119 8120 8121 8122 8123 8124 8125 8126 8127 if test -n "${ZSH_VERSION+set}"; then8128 setopt NO_GLOB_SUBST8129 fi8130 8131 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for objdir" >&58132 $as_echo_n "checking for objdir... " >&6; }8133 if ${lt_cv_objdir+:} false; then :8134 $as_echo_n "(cached) " >&68135 else8136 rm -f .libs 2>/dev/null8137 mkdir .libs 2>/dev/null8138 if test -d .libs; then8139 lt_cv_objdir=.libs8140 else8141 # MS-DOS does not allow filenames that begin with a dot.8142 lt_cv_objdir=_libs8143 fi8144 rmdir .libs 2>/dev/null8145 fi8146 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_objdir" >&58147 $as_echo "$lt_cv_objdir" >&6; }8148 objdir=$lt_cv_objdir8149 8150 8151 8152 8153 8154 cat >>confdefs.h <<_ACEOF8155 #define LT_OBJDIR "$lt_cv_objdir/"8156 _ACEOF8157 8158 8159 8160 8161 case $host_os in8162 aix3*)8163 # AIX sometimes has problems with the GCC collect2 program. For some8164 # reason, if we set the COLLECT_NAMES environment variable, the problems8165 # vanish in a puff of smoke.8166 if test set != "${COLLECT_NAMES+set}"; then8167 COLLECT_NAMES=8168 export COLLECT_NAMES8169 fi8170 ;;8171 esac8172 8173 # Global variables:8174 ofile=libtool8175 can_build_shared=yes8176 8177 # All known linkers require a '.a' archive for static linking (except MSVC,8178 # which needs '.lib').8179 libext=a8180 8181 with_gnu_ld=$lt_cv_prog_gnu_ld8182 8183 old_CC=$CC8184 old_CFLAGS=$CFLAGS8185 8186 # Set sane defaults for various variables8187 test -z "$CC" && CC=cc8188 test -z "$LTCC" && LTCC=$CC8189 test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS8190 test -z "$LD" && LD=ld8191 test -z "$ac_objext" && ac_objext=o8192 8193 func_cc_basename $compiler8194 cc_basename=$func_cc_basename_result8195 8196 8197 # Only perform the check for file, if the check method requires it8198 test -z "$MAGIC_CMD" && MAGIC_CMD=file8199 case $deplibs_check_method in8200 file_magic*)8201 if test "$file_magic_cmd" = '$MAGIC_CMD'; then8202 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ${ac_tool_prefix}file" >&58203 $as_echo_n "checking for ${ac_tool_prefix}file... " >&6; }8204 if ${lt_cv_path_MAGIC_CMD+:} false; then :8205 $as_echo_n "(cached) " >&68206 else8207 case $MAGIC_CMD in8208 [\\/*] | ?:[\\/]*)8209 lt_cv_path_MAGIC_CMD=$MAGIC_CMD # Let the user override the test with a path.8210 ;;8211 *)8212 lt_save_MAGIC_CMD=$MAGIC_CMD8213 lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR8214 ac_dummy="/usr/bin$PATH_SEPARATOR$PATH"8215 for ac_dir in $ac_dummy; do8216 IFS=$lt_save_ifs8217 test -z "$ac_dir" && ac_dir=.8218 if test -f "$ac_dir/${ac_tool_prefix}file"; then8219 lt_cv_path_MAGIC_CMD=$ac_dir/"${ac_tool_prefix}file"8220 if test -n "$file_magic_test_file"; then8221 case $deplibs_check_method in8222 "file_magic "*)8223 file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`8224 MAGIC_CMD=$lt_cv_path_MAGIC_CMD8225 if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |8226 $EGREP "$file_magic_regex" > /dev/null; then8227 :8228 else8229 cat <<_LT_EOF 1>&28230 8231 *** Warning: the command libtool uses to detect shared libraries,8232 *** $file_magic_cmd, produces output that libtool cannot recognize.8233 *** The result is that libtool may fail to recognize shared libraries8234 *** as such. This will affect the creation of libtool libraries that8235 *** depend on shared libraries, but programs linked with such libtool8236 *** libraries will work regardless of this problem. Nevertheless, you8237 *** may want to report the problem to your system manager and/or to8238 *** bug-libtool@gnu.org8239 8240 _LT_EOF8241 fi ;;8242 esac8243 fi8244 break8245 fi8246 done8247 IFS=$lt_save_ifs8248 MAGIC_CMD=$lt_save_MAGIC_CMD8249 ;;8250 esac8251 fi8252 8253 MAGIC_CMD=$lt_cv_path_MAGIC_CMD8254 if test -n "$MAGIC_CMD"; then8255 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&58256 $as_echo "$MAGIC_CMD" >&6; }8257 else8258 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&58259 $as_echo "no" >&6; }8260 fi8261 8262 8263 8264 8265 8266 if test -z "$lt_cv_path_MAGIC_CMD"; then8267 if test -n "$ac_tool_prefix"; then8268 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for file" >&58269 $as_echo_n "checking for file... " >&6; }8270 if ${lt_cv_path_MAGIC_CMD+:} false; then :8271 $as_echo_n "(cached) " >&68272 else8273 case $MAGIC_CMD in8274 [\\/*] | ?:[\\/]*)8275 lt_cv_path_MAGIC_CMD=$MAGIC_CMD # Let the user override the test with a path.8276 ;;8277 *)8278 lt_save_MAGIC_CMD=$MAGIC_CMD8279 lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR8280 ac_dummy="/usr/bin$PATH_SEPARATOR$PATH"8281 for ac_dir in $ac_dummy; do8282 IFS=$lt_save_ifs8283 test -z "$ac_dir" && ac_dir=.8284 if test -f "$ac_dir/file"; then8285 lt_cv_path_MAGIC_CMD=$ac_dir/"file"8286 if test -n "$file_magic_test_file"; then8287 case $deplibs_check_method in8288 "file_magic "*)8289 file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`8290 MAGIC_CMD=$lt_cv_path_MAGIC_CMD8291 if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |8292 $EGREP "$file_magic_regex" > /dev/null; then8293 :8294 else8295 cat <<_LT_EOF 1>&28296 8297 *** Warning: the command libtool uses to detect shared libraries,8298 *** $file_magic_cmd, produces output that libtool cannot recognize.8299 *** The result is that libtool may fail to recognize shared libraries8300 *** as such. This will affect the creation of libtool libraries that8301 *** depend on shared libraries, but programs linked with such libtool8302 *** libraries will work regardless of this problem. Nevertheless, you8303 *** may want to report the problem to your system manager and/or to8304 *** bug-libtool@gnu.org8305 8306 _LT_EOF8307 fi ;;8308 esac8309 fi8310 break8311 fi8312 done8313 IFS=$lt_save_ifs8314 MAGIC_CMD=$lt_save_MAGIC_CMD8315 ;;8316 esac8317 fi8318 8319 MAGIC_CMD=$lt_cv_path_MAGIC_CMD8320 if test -n "$MAGIC_CMD"; then8321 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&58322 $as_echo "$MAGIC_CMD" >&6; }8323 else8324 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&58325 $as_echo "no" >&6; }8326 fi8327 8328 8329 else8330 MAGIC_CMD=:8331 fi8332 fi8333 8334 fi8335 ;;8336 esac8337 8338 # Use C for the default configuration in the libtool script8339 8340 lt_save_CC=$CC8341 ac_ext=c8342 ac_cpp='$CPP $CPPFLAGS'8343 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'8344 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'8345 ac_compiler_gnu=$ac_cv_c_compiler_gnu8346 8347 8348 # Source file extension for C test sources.8349 ac_ext=c8350 8351 # Object file extension for compiled C test sources.8352 objext=o8353 objext=$objext8354 8355 # Code to be used in simple compile tests8356 lt_simple_compile_test_code="int some_variable = 0;"8357 8358 # Code to be used in simple link tests8359 lt_simple_link_test_code='int main(){return(0);}'8360 8361 8362 8363 8364 8365 8366 8367 # If no C compiler was specified, use CC.8368 LTCC=${LTCC-"$CC"}8369 8370 # If no C compiler flags were specified, use CFLAGS.8371 LTCFLAGS=${LTCFLAGS-"$CFLAGS"}8372 8373 # Allow CC to be a program name with arguments.8374 compiler=$CC8375 8376 # Save the default compiler, since it gets overwritten when the other8377 # tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP.8378 compiler_DEFAULT=$CC8379 8380 # save warnings/boilerplate of simple test code8381 ac_outfile=conftest.$ac_objext8382 echo "$lt_simple_compile_test_code" >conftest.$ac_ext8383 eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err8384 _lt_compiler_boilerplate=`cat conftest.err`8385 $RM conftest*8386 8387 ac_outfile=conftest.$ac_objext8388 echo "$lt_simple_link_test_code" >conftest.$ac_ext8389 eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err8390 _lt_linker_boilerplate=`cat conftest.err`8391 $RM -r conftest*8392 8393 8394 ## CAVEAT EMPTOR:8395 ## There is no encapsulation within the following macros, do not change8396 ## the running order or otherwise move them around unless you know exactly8397 ## what you are doing...8398 if test -n "$compiler"; then8399 8400 lt_prog_compiler_no_builtin_flag=8401 8402 if test yes = "$GCC"; then8403 case $cc_basename in8404 nvcc*)8405 lt_prog_compiler_no_builtin_flag=' -Xcompiler -fno-builtin' ;;8406 *)8407 lt_prog_compiler_no_builtin_flag=' -fno-builtin' ;;8408 esac8409 8410 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -fno-rtti -fno-exceptions" >&58411 $as_echo_n "checking if $compiler supports -fno-rtti -fno-exceptions... " >&6; }8412 if ${lt_cv_prog_compiler_rtti_exceptions+:} false; then :8413 $as_echo_n "(cached) " >&68414 else8415 lt_cv_prog_compiler_rtti_exceptions=no8416 ac_outfile=conftest.$ac_objext8417 echo "$lt_simple_compile_test_code" > conftest.$ac_ext8418 lt_compiler_flag="-fno-rtti -fno-exceptions" ## exclude from sc_useless_quotes_in_assignment8419 # Insert the option either (1) after the last *FLAGS variable, or8420 # (2) before a word containing "conftest.", or (3) at the end.8421 # Note that $ac_compile itself does not contain backslashes and begins8422 # with a dollar sign (not a hyphen), so the echo should work correctly.8423 # The option is referenced via a variable to avoid confusing sed.8424 lt_compile=`echo "$ac_compile" | $SED \8425 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \8426 -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \8427 -e 's:$: $lt_compiler_flag:'`8428 (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5)8429 (eval "$lt_compile" 2>conftest.err)8430 ac_status=$?8431 cat conftest.err >&58432 echo "$as_me:$LINENO: \$? = $ac_status" >&58433 if (exit $ac_status) && test -s "$ac_outfile"; then8434 # The compiler can only warn and ignore the option if not recognized8435 # So say no if there are warnings other than the usual output.8436 $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp8437 $SED '/^$/d; /^ *+/d' conftest.err >conftest.er28438 if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then8439 lt_cv_prog_compiler_rtti_exceptions=yes8440 fi8441 fi8442 $RM conftest*8443 8444 fi8445 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_rtti_exceptions" >&58446 $as_echo "$lt_cv_prog_compiler_rtti_exceptions" >&6; }8447 8448 if test yes = "$lt_cv_prog_compiler_rtti_exceptions"; then8449 lt_prog_compiler_no_builtin_flag="$lt_prog_compiler_no_builtin_flag -fno-rtti -fno-exceptions"8450 else8451 :8452 fi8453 8454 fi8455 8456 8457 8458 8459 8460 8461 lt_prog_compiler_wl=8462 lt_prog_compiler_pic=8463 lt_prog_compiler_static=8464 8465 8466 if test yes = "$GCC"; then8467 lt_prog_compiler_wl='-Wl,'8468 lt_prog_compiler_static='-static'8469 8470 case $host_os in8471 aix*)8472 # All AIX code is PIC.8473 if test ia64 = "$host_cpu"; then8474 # AIX 5 now supports IA64 processor8475 lt_prog_compiler_static='-Bstatic'8476 fi8477 lt_prog_compiler_pic='-fPIC'8478 ;;8479 8480 amigaos*)8481 case $host_cpu in8482 powerpc)8483 # see comment about AmigaOS4 .so support8484 lt_prog_compiler_pic='-fPIC'8485 ;;8486 m68k)8487 # FIXME: we need at least 68020 code to build shared libraries, but8488 # adding the '-m68020' flag to GCC prevents building anything better,8489 # like '-m68040'.8490 lt_prog_compiler_pic='-m68020 -resident32 -malways-restore-a4'8491 ;;8492 esac8493 ;;8494 8495 beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)8496 # PIC is the default for these OSes.8497 ;;8498 8499 mingw* | cygwin* | pw32* | os2* | cegcc*)8500 # This hack is so that the source file can tell whether it is being8501 # built for inclusion in a dll (and should export symbols for example).8502 # Although the cygwin gcc ignores -fPIC, still need this for old-style8503 # (--disable-auto-import) libraries8504 lt_prog_compiler_pic='-DDLL_EXPORT'8505 case $host_os in8506 os2*)8507 lt_prog_compiler_static='$wl-static'8508 ;;8509 esac8510 ;;8511 8512 darwin* | rhapsody*)8513 # PIC is the default on this platform8514 # Common symbols not allowed in MH_DYLIB files8515 lt_prog_compiler_pic='-fno-common'8516 ;;8517 8518 haiku*)8519 # PIC is the default for Haiku.8520 # The "-static" flag exists, but is broken.8521 lt_prog_compiler_static=8522 ;;8523 8524 hpux*)8525 # PIC is the default for 64-bit PA HP-UX, but not for 32-bit8526 # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag8527 # sets the default TLS model and affects inlining.8528 case $host_cpu in8529 hppa*64*)8530 # +Z the default8531 ;;8532 *)8533 lt_prog_compiler_pic='-fPIC'8534 ;;8535 esac8536 ;;8537 8538 interix[3-9]*)8539 # Interix 3.x gcc -fpic/-fPIC options generate broken code.8540 # Instead, we relocate shared libraries at runtime.8541 ;;8542 8543 msdosdjgpp*)8544 # Just because we use GCC doesn't mean we suddenly get shared libraries8545 # on systems that don't support them.8546 lt_prog_compiler_can_build_shared=no8547 enable_shared=no8548 ;;8549 8550 *nto* | *qnx*)8551 # QNX uses GNU C++, but need to define -shared option too, otherwise8552 # it will coredump.8553 lt_prog_compiler_pic='-fPIC -shared'8554 ;;8555 8556 sysv4*MP*)8557 if test -d /usr/nec; then8558 lt_prog_compiler_pic=-Kconform_pic8559 fi8560 ;;8561 8562 *)8563 lt_prog_compiler_pic='-fPIC'8564 ;;8565 esac8566 8567 case $cc_basename in8568 nvcc*) # Cuda Compiler Driver 2.28569 lt_prog_compiler_wl='-Xlinker '8570 if test -n "$lt_prog_compiler_pic"; then8571 lt_prog_compiler_pic="-Xcompiler $lt_prog_compiler_pic"8572 fi8573 ;;8574 esac8575 else8576 # PORTME Check for flag to pass linker flags through the system compiler.8577 case $host_os in8578 aix*)8579 lt_prog_compiler_wl='-Wl,'8580 if test ia64 = "$host_cpu"; then8581 # AIX 5 now supports IA64 processor8582 lt_prog_compiler_static='-Bstatic'8583 else8584 lt_prog_compiler_static='-bnso -bI:/lib/syscalls.exp'8585 fi8586 ;;8587 8588 darwin* | rhapsody*)8589 # PIC is the default on this platform8590 # Common symbols not allowed in MH_DYLIB files8591 lt_prog_compiler_pic='-fno-common'8592 case $cc_basename in8593 nagfor*)8594 # NAG Fortran compiler8595 lt_prog_compiler_wl='-Wl,-Wl,,'8596 lt_prog_compiler_pic='-PIC'8597 lt_prog_compiler_static='-Bstatic'8598 ;;8599 esac8600 ;;8601 8602 mingw* | cygwin* | pw32* | os2* | cegcc*)8603 # This hack is so that the source file can tell whether it is being8604 # built for inclusion in a dll (and should export symbols for example).8605 lt_prog_compiler_pic='-DDLL_EXPORT'8606 case $host_os in8607 os2*)8608 lt_prog_compiler_static='$wl-static'8609 ;;8610 esac8611 ;;8612 8613 hpux9* | hpux10* | hpux11*)8614 lt_prog_compiler_wl='-Wl,'8615 # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but8616 # not for PA HP-UX.8617 case $host_cpu in8618 hppa*64*|ia64*)8619 # +Z the default8620 ;;8621 *)8622 lt_prog_compiler_pic='+Z'8623 ;;8624 esac8625 # Is there a better lt_prog_compiler_static that works with the bundled CC?8626 lt_prog_compiler_static='$wl-a ${wl}archive'8627 ;;8628 8629 irix5* | irix6* | nonstopux*)8630 lt_prog_compiler_wl='-Wl,'8631 # PIC (with -KPIC) is the default.8632 lt_prog_compiler_static='-non_shared'8633 ;;8634 8635 linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)8636 case $cc_basename in8637 # old Intel for x86_64, which still supported -KPIC.8638 ecc*)8639 lt_prog_compiler_wl='-Wl,'8640 lt_prog_compiler_pic='-KPIC'8641 lt_prog_compiler_static='-static'8642 ;;8643 # icc used to be incompatible with GCC.8644 # ICC 10 doesn't accept -KPIC any more.8645 icc* | ifort*)8646 lt_prog_compiler_wl='-Wl,'8647 lt_prog_compiler_pic='-fPIC'8648 lt_prog_compiler_static='-static'8649 ;;8650 # Lahey Fortran 8.1.8651 lf95*)8652 lt_prog_compiler_wl='-Wl,'8653 lt_prog_compiler_pic='--shared'8654 lt_prog_compiler_static='--static'8655 ;;8656 nagfor*)8657 # NAG Fortran compiler8658 lt_prog_compiler_wl='-Wl,-Wl,,'8659 lt_prog_compiler_pic='-PIC'8660 lt_prog_compiler_static='-Bstatic'8661 ;;8662 tcc*)8663 # Fabrice Bellard et al's Tiny C Compiler8664 lt_prog_compiler_wl='-Wl,'8665 lt_prog_compiler_pic='-fPIC'8666 lt_prog_compiler_static='-static'8667 ;;8668 pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*)8669 # Portland Group compilers (*not* the Pentium gcc compiler,8670 # which looks to be a dead project)8671 lt_prog_compiler_wl='-Wl,'8672 lt_prog_compiler_pic='-fpic'8673 lt_prog_compiler_static='-Bstatic'8674 ;;8675 ccc*)8676 lt_prog_compiler_wl='-Wl,'8677 # All Alpha code is PIC.8678 lt_prog_compiler_static='-non_shared'8679 ;;8680 xl* | bgxl* | bgf* | mpixl*)8681 # IBM XL C 8.0/Fortran 10.1, 11.1 on PPC and BlueGene8682 lt_prog_compiler_wl='-Wl,'8683 lt_prog_compiler_pic='-qpic'8684 lt_prog_compiler_static='-qstaticlink'8685 ;;8686 *)8687 case `$CC -V 2>&1 | sed 5q` in8688 *Sun\ Ceres\ Fortran* | *Sun*Fortran*\ [1-7].* | *Sun*Fortran*\ 8.[0-3]*)8689 # Sun Fortran 8.3 passes all unrecognized flags to the linker8690 lt_prog_compiler_pic='-KPIC'8691 lt_prog_compiler_static='-Bstatic'8692 lt_prog_compiler_wl=''8693 ;;8694 *Sun\ F* | *Sun*Fortran*)8695 lt_prog_compiler_pic='-KPIC'8696 lt_prog_compiler_static='-Bstatic'8697 lt_prog_compiler_wl='-Qoption ld '8698 ;;8699 *Sun\ C*)8700 # Sun C 5.98701 lt_prog_compiler_pic='-KPIC'8702 lt_prog_compiler_static='-Bstatic'8703 lt_prog_compiler_wl='-Wl,'8704 ;;8705 *Intel*\ [CF]*Compiler*)8706 lt_prog_compiler_wl='-Wl,'8707 lt_prog_compiler_pic='-fPIC'8708 lt_prog_compiler_static='-static'8709 ;;8710 *Portland\ Group*)8711 lt_prog_compiler_wl='-Wl,'8712 lt_prog_compiler_pic='-fpic'8713 lt_prog_compiler_static='-Bstatic'8714 ;;8715 esac8716 ;;8717 esac8718 ;;8719 8720 newsos6)8721 lt_prog_compiler_pic='-KPIC'8722 lt_prog_compiler_static='-Bstatic'8723 ;;8724 8725 *nto* | *qnx*)8726 # QNX uses GNU C++, but need to define -shared option too, otherwise8727 # it will coredump.8728 lt_prog_compiler_pic='-fPIC -shared'8729 ;;8730 8731 osf3* | osf4* | osf5*)8732 lt_prog_compiler_wl='-Wl,'8733 # All OSF/1 code is PIC.8734 lt_prog_compiler_static='-non_shared'8735 ;;8736 8737 rdos*)8738 lt_prog_compiler_static='-non_shared'8739 ;;8740 8741 solaris*)8742 lt_prog_compiler_pic='-KPIC'8743 lt_prog_compiler_static='-Bstatic'8744 case $cc_basename in8745 f77* | f90* | f95* | sunf77* | sunf90* | sunf95*)8746 lt_prog_compiler_wl='-Qoption ld ';;8747 *)8748 lt_prog_compiler_wl='-Wl,';;8749 esac8750 ;;8751 8752 sunos4*)8753 lt_prog_compiler_wl='-Qoption ld '8754 lt_prog_compiler_pic='-PIC'8755 lt_prog_compiler_static='-Bstatic'8756 ;;8757 8758 sysv4 | sysv4.2uw2* | sysv4.3*)8759 lt_prog_compiler_wl='-Wl,'8760 lt_prog_compiler_pic='-KPIC'8761 lt_prog_compiler_static='-Bstatic'8762 ;;8763 8764 sysv4*MP*)8765 if test -d /usr/nec; then8766 lt_prog_compiler_pic='-Kconform_pic'8767 lt_prog_compiler_static='-Bstatic'8768 fi8769 ;;8770 8771 sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)8772 lt_prog_compiler_wl='-Wl,'8773 lt_prog_compiler_pic='-KPIC'8774 lt_prog_compiler_static='-Bstatic'8775 ;;8776 8777 unicos*)8778 lt_prog_compiler_wl='-Wl,'8779 lt_prog_compiler_can_build_shared=no8780 ;;8781 8782 uts4*)8783 lt_prog_compiler_pic='-pic'8784 lt_prog_compiler_static='-Bstatic'8785 ;;8786 8787 *)8788 lt_prog_compiler_can_build_shared=no8789 ;;8790 esac8791 fi8792 8793 case $host_os in8794 # For platforms that do not support PIC, -DPIC is meaningless:8795 *djgpp*)8796 lt_prog_compiler_pic=8797 ;;8798 *)8799 lt_prog_compiler_pic="$lt_prog_compiler_pic -DPIC"8800 ;;8801 esac8802 8803 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&58804 $as_echo_n "checking for $compiler option to produce PIC... " >&6; }8805 if ${lt_cv_prog_compiler_pic+:} false; then :8806 $as_echo_n "(cached) " >&68807 else8808 lt_cv_prog_compiler_pic=$lt_prog_compiler_pic8809 fi8810 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic" >&58811 $as_echo "$lt_cv_prog_compiler_pic" >&6; }8812 lt_prog_compiler_pic=$lt_cv_prog_compiler_pic8813 8814 #8815 # Check to make sure the PIC flag actually works.8816 #8817 if test -n "$lt_prog_compiler_pic"; then8818 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler PIC flag $lt_prog_compiler_pic works" >&58819 $as_echo_n "checking if $compiler PIC flag $lt_prog_compiler_pic works... " >&6; }8820 if ${lt_cv_prog_compiler_pic_works+:} false; then :8821 $as_echo_n "(cached) " >&68822 else8823 lt_cv_prog_compiler_pic_works=no8824 ac_outfile=conftest.$ac_objext8825 echo "$lt_simple_compile_test_code" > conftest.$ac_ext8826 lt_compiler_flag="$lt_prog_compiler_pic -DPIC" ## exclude from sc_useless_quotes_in_assignment8827 # Insert the option either (1) after the last *FLAGS variable, or8828 # (2) before a word containing "conftest.", or (3) at the end.8829 # Note that $ac_compile itself does not contain backslashes and begins8830 # with a dollar sign (not a hyphen), so the echo should work correctly.8831 # The option is referenced via a variable to avoid confusing sed.8832 lt_compile=`echo "$ac_compile" | $SED \8833 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \8834 -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \8835 -e 's:$: $lt_compiler_flag:'`8836 (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5)8837 (eval "$lt_compile" 2>conftest.err)8838 ac_status=$?8839 cat conftest.err >&58840 echo "$as_me:$LINENO: \$? = $ac_status" >&58841 if (exit $ac_status) && test -s "$ac_outfile"; then8842 # The compiler can only warn and ignore the option if not recognized8843 # So say no if there are warnings other than the usual output.8844 $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp8845 $SED '/^$/d; /^ *+/d' conftest.err >conftest.er28846 if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then8847 lt_cv_prog_compiler_pic_works=yes8848 fi8849 fi8850 $RM conftest*8851 8852 fi8853 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic_works" >&58854 $as_echo "$lt_cv_prog_compiler_pic_works" >&6; }8855 8856 if test yes = "$lt_cv_prog_compiler_pic_works"; then8857 case $lt_prog_compiler_pic in8858 "" | " "*) ;;8859 *) lt_prog_compiler_pic=" $lt_prog_compiler_pic" ;;8860 esac8861 else8862 lt_prog_compiler_pic=8863 lt_prog_compiler_can_build_shared=no8864 fi8865 8866 fi8867 8868 8869 8870 8871 8872 8873 8874 8875 8876 8877 8878 #8879 # Check to make sure the static flag actually works.8880 #8881 wl=$lt_prog_compiler_wl eval lt_tmp_static_flag=\"$lt_prog_compiler_static\"8882 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler static flag $lt_tmp_static_flag works" >&58883 $as_echo_n "checking if $compiler static flag $lt_tmp_static_flag works... " >&6; }8884 if ${lt_cv_prog_compiler_static_works+:} false; then :8885 $as_echo_n "(cached) " >&68886 else8887 lt_cv_prog_compiler_static_works=no8888 save_LDFLAGS=$LDFLAGS8889 LDFLAGS="$LDFLAGS $lt_tmp_static_flag"8890 echo "$lt_simple_link_test_code" > conftest.$ac_ext8891 if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then8892 # The linker can only warn and ignore the option if not recognized8893 # So say no if there are warnings8894 if test -s conftest.err; then8895 # Append any errors to the config.log.8896 cat conftest.err 1>&58897 $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp8898 $SED '/^$/d; /^ *+/d' conftest.err >conftest.er28899 if diff conftest.exp conftest.er2 >/dev/null; then8900 lt_cv_prog_compiler_static_works=yes8901 fi8902 else8903 lt_cv_prog_compiler_static_works=yes8904 fi8905 fi8906 $RM -r conftest*8907 LDFLAGS=$save_LDFLAGS8908 8909 fi8910 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_static_works" >&58911 $as_echo "$lt_cv_prog_compiler_static_works" >&6; }8912 8913 if test yes = "$lt_cv_prog_compiler_static_works"; then8914 :8915 else8916 lt_prog_compiler_static=8917 fi8918 8919 8920 8921 8922 8923 8924 8925 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&58926 $as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; }8927 if ${lt_cv_prog_compiler_c_o+:} false; then :8928 $as_echo_n "(cached) " >&68929 else8930 lt_cv_prog_compiler_c_o=no8931 $RM -r conftest 2>/dev/null8932 mkdir conftest8933 cd conftest8934 mkdir out8935 echo "$lt_simple_compile_test_code" > conftest.$ac_ext8936 8937 lt_compiler_flag="-o out/conftest2.$ac_objext"8938 # Insert the option either (1) after the last *FLAGS variable, or8939 # (2) before a word containing "conftest.", or (3) at the end.8940 # Note that $ac_compile itself does not contain backslashes and begins8941 # with a dollar sign (not a hyphen), so the echo should work correctly.8942 lt_compile=`echo "$ac_compile" | $SED \8943 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \8944 -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \8945 -e 's:$: $lt_compiler_flag:'`8946 (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5)8947 (eval "$lt_compile" 2>out/conftest.err)8948 ac_status=$?8949 cat out/conftest.err >&58950 echo "$as_me:$LINENO: \$? = $ac_status" >&58951 if (exit $ac_status) && test -s out/conftest2.$ac_objext8952 then8953 # The compiler can only warn and ignore the option if not recognized8954 # So say no if there are warnings8955 $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp8956 $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er28957 if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then8958 lt_cv_prog_compiler_c_o=yes8959 fi8960 fi8961 chmod u+w . 2>&58962 $RM conftest*8963 # SGI C++ compiler will create directory out/ii_files/ for8964 # template instantiation8965 test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files8966 $RM out/* && rmdir out8967 cd ..8968 $RM -r conftest8969 $RM conftest*8970 8971 fi8972 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o" >&58973 $as_echo "$lt_cv_prog_compiler_c_o" >&6; }8974 8975 8976 8977 8978 8979 8980 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&58981 $as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; }8982 if ${lt_cv_prog_compiler_c_o+:} false; then :8983 $as_echo_n "(cached) " >&68984 else8985 lt_cv_prog_compiler_c_o=no8986 $RM -r conftest 2>/dev/null8987 mkdir conftest8988 cd conftest8989 mkdir out8990 echo "$lt_simple_compile_test_code" > conftest.$ac_ext8991 8992 lt_compiler_flag="-o out/conftest2.$ac_objext"8993 # Insert the option either (1) after the last *FLAGS variable, or8994 # (2) before a word containing "conftest.", or (3) at the end.8995 # Note that $ac_compile itself does not contain backslashes and begins8996 # with a dollar sign (not a hyphen), so the echo should work correctly.8997 lt_compile=`echo "$ac_compile" | $SED \8998 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \8999 -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \9000 -e 's:$: $lt_compiler_flag:'`9001 (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5)9002 (eval "$lt_compile" 2>out/conftest.err)9003 ac_status=$?9004 cat out/conftest.err >&59005 echo "$as_me:$LINENO: \$? = $ac_status" >&59006 if (exit $ac_status) && test -s out/conftest2.$ac_objext9007 then9008 # The compiler can only warn and ignore the option if not recognized9009 # So say no if there are warnings9010 $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp9011 $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er29012 if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then9013 lt_cv_prog_compiler_c_o=yes9014 fi9015 fi9016 chmod u+w . 2>&59017 $RM conftest*9018 # SGI C++ compiler will create directory out/ii_files/ for9019 # template instantiation9020 test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files9021 $RM out/* && rmdir out9022 cd ..9023 $RM -r conftest9024 $RM conftest*9025 9026 fi9027 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o" >&59028 $as_echo "$lt_cv_prog_compiler_c_o" >&6; }9029 9030 9031 9032 9033 hard_links=nottested9034 if test no = "$lt_cv_prog_compiler_c_o" && test no != "$need_locks"; then9035 # do not overwrite the value of need_locks provided by the user9036 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if we can lock with hard links" >&59037 $as_echo_n "checking if we can lock with hard links... " >&6; }9038 hard_links=yes9039 $RM conftest*9040 ln conftest.a conftest.b 2>/dev/null && hard_links=no9041 touch conftest.a9042 ln conftest.a conftest.b 2>&5 || hard_links=no9043 ln conftest.a conftest.b 2>/dev/null && hard_links=no9044 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $hard_links" >&59045 $as_echo "$hard_links" >&6; }9046 if test no = "$hard_links"; then9047 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&59048 $as_echo "$as_me: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&2;}9049 need_locks=warn9050 fi9051 else9052 need_locks=no9053 fi9054 9055 9056 9057 9058 9059 9060 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&59061 $as_echo_n "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; }9062 9063 runpath_var=9064 allow_undefined_flag=9065 always_export_symbols=no9066 archive_cmds=9067 archive_expsym_cmds=9068 compiler_needs_object=no9069 enable_shared_with_static_runtimes=no9070 export_dynamic_flag_spec=9071 export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'9072 hardcode_automatic=no9073 hardcode_direct=no9074 hardcode_direct_absolute=no9075 hardcode_libdir_flag_spec=9076 hardcode_libdir_separator=9077 hardcode_minus_L=no9078 hardcode_shlibpath_var=unsupported9079 inherit_rpath=no9080 link_all_deplibs=unknown9081 module_cmds=9082 module_expsym_cmds=9083 old_archive_from_new_cmds=9084 old_archive_from_expsyms_cmds=9085 thread_safe_flag_spec=9086 whole_archive_flag_spec=9087 # include_expsyms should be a list of space-separated symbols to be *always*9088 # included in the symbol list9089 include_expsyms=9090 # exclude_expsyms can be an extended regexp of symbols to exclude9091 # it will be wrapped by ' (' and ')$', so one must not match beginning or9092 # end of line. Example: 'a|bc|.*d.*' will exclude the symbols 'a' and 'bc',9093 # as well as any symbol that contains 'd'.9094 exclude_expsyms='_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'9095 # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out9096 # platforms (ab)use it in PIC code, but their linkers get confused if9097 # the symbol is explicitly referenced. Since portable code cannot9098 # rely on this symbol name, it's probably fine to never include it in9099 # preloaded symbol tables.9100 # Exclude shared library initialization/finalization symbols.9101 extract_expsyms_cmds=9102 9103 case $host_os in9104 cygwin* | mingw* | pw32* | cegcc*)9105 # FIXME: the MSVC++ port hasn't been tested in a loooong time9106 # When not using gcc, we currently assume that we are using9107 # Microsoft Visual C++.9108 if test yes != "$GCC"; then9109 with_gnu_ld=no9110 fi9111 ;;9112 interix*)9113 # we just hope/assume this is gcc and not c89 (= MSVC++)9114 with_gnu_ld=yes9115 ;;9116 openbsd* | bitrig*)9117 with_gnu_ld=no9118 ;;9119 linux* | k*bsd*-gnu | gnu*)9120 link_all_deplibs=no9121 ;;9122 esac9123 9124 ld_shlibs=yes9125 9126 # On some targets, GNU ld is compatible enough with the native linker9127 # that we're better off using the native interface for both.9128 lt_use_gnu_ld_interface=no9129 if test yes = "$with_gnu_ld"; then9130 case $host_os in9131 aix*)9132 # The AIX port of GNU ld has always aspired to compatibility9133 # with the native linker. However, as the warning in the GNU ld9134 # block says, versions before 2.19.5* couldn't really create working9135 # shared libraries, regardless of the interface used.9136 case `$LD -v 2>&1` in9137 *\ \(GNU\ Binutils\)\ 2.19.5*) ;;9138 *\ \(GNU\ Binutils\)\ 2.[2-9]*) ;;9139 *\ \(GNU\ Binutils\)\ [3-9]*) ;;9140 *)9141 lt_use_gnu_ld_interface=yes9142 ;;9143 esac9144 ;;9145 *)9146 lt_use_gnu_ld_interface=yes9147 ;;9148 esac9149 fi9150 9151 if test yes = "$lt_use_gnu_ld_interface"; then9152 # If archive_cmds runs LD, not CC, wlarc should be empty9153 wlarc='$wl'9154 9155 # Set some defaults for GNU ld with shared library support. These9156 # are reset later if shared libraries are not supported. Putting them9157 # here allows them to be overridden if necessary.9158 runpath_var=LD_RUN_PATH9159 hardcode_libdir_flag_spec='$wl-rpath $wl$libdir'9160 export_dynamic_flag_spec='$wl--export-dynamic'9161 # ancient GNU ld didn't support --whole-archive et. al.9162 if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then9163 whole_archive_flag_spec=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive'9164 else9165 whole_archive_flag_spec=9166 fi9167 supports_anon_versioning=no9168 case `$LD -v | $SED -e 's/(^)\+)\s\+//' 2>&1` in9169 *GNU\ gold*) supports_anon_versioning=yes ;;9170 *\ [01].* | *\ 2.[0-9].* | *\ 2.10.*) ;; # catch versions < 2.119171 *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ...9172 *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ...9173 *\ 2.11.*) ;; # other 2.11 versions9174 *) supports_anon_versioning=yes ;;9175 esac9176 9177 # See if GNU ld supports shared libraries.9178 case $host_os in9179 aix[3-9]*)9180 # On AIX/PPC, the GNU linker is very broken9181 if test ia64 != "$host_cpu"; then9182 ld_shlibs=no9183 cat <<_LT_EOF 1>&29184 9185 *** Warning: the GNU linker, at least up to release 2.19, is reported9186 *** to be unable to reliably create shared libraries on AIX.9187 *** Therefore, libtool is disabling shared libraries support. If you9188 *** really care for shared libraries, you may want to install binutils9189 *** 2.20 or above, or modify your PATH so that a non-GNU linker is found.9190 *** You will then need to restart the configuration process.9191 9192 _LT_EOF9193 fi9194 ;;9195 9196 amigaos*)9197 case $host_cpu in9198 powerpc)9199 # see comment about AmigaOS4 .so support9200 archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'9201 archive_expsym_cmds=''9202 ;;9203 m68k)9204 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)'9205 hardcode_libdir_flag_spec='-L$libdir'9206 hardcode_minus_L=yes9207 ;;9208 esac9209 ;;9210 9211 beos*)9212 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then9213 allow_undefined_flag=unsupported9214 # Joseph Beckenbach <jrb3@best.com> says some releases of gcc9215 # support --undefined. This deserves some investigation. FIXME9216 archive_cmds='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'9217 else9218 ld_shlibs=no9219 fi9220 ;;9221 9222 cygwin* | mingw* | pw32* | cegcc*)9223 # _LT_TAGVAR(hardcode_libdir_flag_spec, ) is actually meaningless,9224 # as there is no search path for DLLs.9225 hardcode_libdir_flag_spec='-L$libdir'9226 export_dynamic_flag_spec='$wl--export-all-symbols'9227 allow_undefined_flag=unsupported9228 always_export_symbols=no9229 enable_shared_with_static_runtimes=yes9230 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'9231 exclude_expsyms='[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname'9232 9233 if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then9234 archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'9235 # If the export-symbols file already is a .def file, use it as9236 # is; otherwise, prepend EXPORTS...9237 archive_expsym_cmds='if test DEF = "`$SED -n -e '\''s/^[ ]*//'\'' -e '\''/^\(;.*\)*$/d'\'' -e '\''s/^\(EXPORTS\|LIBRARY\)\([ ].*\)*$/DEF/p'\'' -e q $export_symbols`" ; then9238 cp $export_symbols $output_objdir/$soname.def;9239 else9240 echo EXPORTS > $output_objdir/$soname.def;9241 cat $export_symbols >> $output_objdir/$soname.def;9242 fi~9243 $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'9244 else9245 ld_shlibs=no9246 fi9247 ;;9248 9249 haiku*)9250 archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'9251 link_all_deplibs=yes9252 ;;9253 9254 os2*)9255 hardcode_libdir_flag_spec='-L$libdir'9256 hardcode_minus_L=yes9257 allow_undefined_flag=unsupported9258 shrext_cmds=.dll9259 archive_cmds='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~9260 $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~9261 $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~9262 $ECHO EXPORTS >> $output_objdir/$libname.def~9263 emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~9264 $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~9265 emximp -o $lib $output_objdir/$libname.def'9266 archive_expsym_cmds='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~9267 $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~9268 $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~9269 $ECHO EXPORTS >> $output_objdir/$libname.def~9270 prefix_cmds="$SED"~9271 if test EXPORTS = "`$SED 1q $export_symbols`"; then9272 prefix_cmds="$prefix_cmds -e 1d";9273 fi~9274 prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~9275 cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~9276 $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~9277 emximp -o $lib $output_objdir/$libname.def'9278 old_archive_From_new_cmds='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'9279 enable_shared_with_static_runtimes=yes9280 ;;9281 9282 interix[3-9]*)9283 hardcode_direct=no9284 hardcode_shlibpath_var=no9285 hardcode_libdir_flag_spec='$wl-rpath,$libdir'9286 export_dynamic_flag_spec='$wl-E'9287 # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.9288 # Instead, shared libraries are loaded at an image base (0x10000000 by9289 # default) and relocated if they conflict, which is a slow very memory9290 # consuming and fragmenting process. To avoid this, we pick a random,9291 # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link9292 # time. Moving up from 0x10000000 also allows more sbrk(2) space.9293 archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'9294 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'9295 ;;9296 9297 gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)9298 tmp_diet=no9299 if test linux-dietlibc = "$host_os"; then9300 case $cc_basename in9301 diet\ *) tmp_diet=yes;; # linux-dietlibc with static linking (!diet-dyn)9302 esac9303 fi9304 if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \9305 && test no = "$tmp_diet"9306 then9307 tmp_addflag=' $pic_flag'9308 tmp_sharedflag='-shared'9309 case $cc_basename,$host_cpu in9310 pgcc*) # Portland Group C compiler9311 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'9312 tmp_addflag=' $pic_flag'9313 ;;9314 pgf77* | pgf90* | pgf95* | pgfortran*)9315 # Portland Group f77 and f90 compilers9316 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'9317 tmp_addflag=' $pic_flag -Mnomain' ;;9318 ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia649319 tmp_addflag=' -i_dynamic' ;;9320 efc*,ia64* | ifort*,ia64*) # Intel Fortran compiler on ia649321 tmp_addflag=' -i_dynamic -nofor_main' ;;9322 ifc* | ifort*) # Intel Fortran compiler9323 tmp_addflag=' -nofor_main' ;;9324 lf95*) # Lahey Fortran 8.19325 whole_archive_flag_spec=9326 tmp_sharedflag='--shared' ;;9327 nagfor*) # NAGFOR 5.39328 tmp_sharedflag='-Wl,-shared' ;;9329 xl[cC]* | bgxl[cC]* | mpixl[cC]*) # IBM XL C 8.0 on PPC (deal with xlf below)9330 tmp_sharedflag='-qmkshrobj'9331 tmp_addflag= ;;9332 nvcc*) # Cuda Compiler Driver 2.29333 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'9334 compiler_needs_object=yes9335 ;;9336 esac9337 case `$CC -V 2>&1 | sed 5q` in9338 *Sun\ C*) # Sun C 5.99339 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'9340 compiler_needs_object=yes9341 tmp_sharedflag='-G' ;;9342 *Sun\ F*) # Sun Fortran 8.39343 tmp_sharedflag='-G' ;;9344 esac9345 archive_cmds='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'9346 9347 if test yes = "$supports_anon_versioning"; then9348 archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~9349 cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~9350 echo "local: *; };" >> $output_objdir/$libname.ver~9351 $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib'9352 fi9353 9354 case $cc_basename in9355 tcc*)9356 export_dynamic_flag_spec='-rdynamic'9357 ;;9358 xlf* | bgf* | bgxlf* | mpixlf*)9359 # IBM XL Fortran 10.1 on PPC cannot create shared libs itself9360 whole_archive_flag_spec='--whole-archive$convenience --no-whole-archive'9361 hardcode_libdir_flag_spec='$wl-rpath $wl$libdir'9362 archive_cmds='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib'9363 if test yes = "$supports_anon_versioning"; then9364 archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~9365 cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~9366 echo "local: *; };" >> $output_objdir/$libname.ver~9367 $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'9368 fi9369 ;;9370 esac9371 else9372 ld_shlibs=no9373 fi9374 ;;9375 9376 netbsd* | netbsdelf*-gnu)9377 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then9378 archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'9379 wlarc=9380 else9381 archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'9382 archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'9383 fi9384 ;;9385 9386 solaris*)9387 if $LD -v 2>&1 | $GREP 'BFD 2\.8' > /dev/null; then9388 ld_shlibs=no9389 cat <<_LT_EOF 1>&29390 9391 *** Warning: The releases 2.8.* of the GNU linker cannot reliably9392 *** create shared libraries on Solaris systems. Therefore, libtool9393 *** is disabling shared libraries support. We urge you to upgrade GNU9394 *** binutils to release 2.9.1 or newer. Another option is to modify9395 *** your PATH or compiler configuration so that the native linker is9396 *** used, and then restart.9397 9398 _LT_EOF9399 elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then9400 archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'9401 archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'9402 else9403 ld_shlibs=no9404 fi9405 ;;9406 9407 sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*)9408 case `$LD -v 2>&1` in9409 *\ [01].* | *\ 2.[0-9].* | *\ 2.1[0-5].*)9410 ld_shlibs=no9411 cat <<_LT_EOF 1>&29412 9413 *** Warning: Releases of the GNU linker prior to 2.16.91.0.3 cannot9414 *** reliably create shared libraries on SCO systems. Therefore, libtool9415 *** is disabling shared libraries support. We urge you to upgrade GNU9416 *** binutils to release 2.16.91.0.3 or newer. Another option is to modify9417 *** your PATH or compiler configuration so that the native linker is9418 *** used, and then restart.9419 9420 _LT_EOF9421 ;;9422 *)9423 # For security reasons, it is highly recommended that you always9424 # use absolute paths for naming shared libraries, and exclude the9425 # DT_RUNPATH tag from executables and libraries. But doing so9426 # requires that you compile everything twice, which is a pain.9427 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then9428 hardcode_libdir_flag_spec='$wl-rpath $wl$libdir'9429 archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'9430 archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'9431 else9432 ld_shlibs=no9433 fi9434 ;;9435 esac9436 ;;9437 9438 sunos4*)9439 archive_cmds='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags'9440 wlarc=9441 hardcode_direct=yes9442 hardcode_shlibpath_var=no9443 ;;9444 9445 *)9446 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then9447 archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'9448 archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'9449 else9450 ld_shlibs=no9451 fi9452 ;;9453 esac9454 9455 if test no = "$ld_shlibs"; then9456 runpath_var=9457 hardcode_libdir_flag_spec=9458 export_dynamic_flag_spec=9459 whole_archive_flag_spec=9460 fi9461 else9462 # PORTME fill in a description of your system's linker (not GNU ld)9463 case $host_os in9464 aix3*)9465 allow_undefined_flag=unsupported9466 always_export_symbols=yes9467 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'9468 # Note: this linker hardcodes the directories in LIBPATH if there9469 # are no directories specified by -L.9470 hardcode_minus_L=yes9471 if test yes = "$GCC" && test -z "$lt_prog_compiler_static"; then9472 # Neither direct hardcoding nor static linking is supported with a9473 # broken collect2.9474 hardcode_direct=unsupported9475 fi9476 ;;9477 9478 aix[4-9]*)9479 if test ia64 = "$host_cpu"; then9480 # On IA64, the linker does run time linking by default, so we don't9481 # have to do anything special.9482 aix_use_runtimelinking=no9483 exp_sym_flag='-Bexport'9484 no_entry_flag=9485 else9486 # If we're using GNU nm, then we don't want the "-C" option.9487 # -C means demangle to GNU nm, but means don't demangle to AIX nm.9488 # Without the "-l" option, or with the "-B" option, AIX nm treats9489 # weak defined symbols like other global defined symbols, whereas9490 # GNU nm marks them as "W".9491 # While the 'weak' keyword is ignored in the Export File, we need9492 # it in the Import File for the 'aix-soname' feature, so we have9493 # to replace the "-B" option with "-P" for AIX nm.9494 if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then9495 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'9496 else9497 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'9498 fi9499 aix_use_runtimelinking=no9500 9501 # Test if we are trying to use run time linking or normal9502 # AIX style linking. If -brtl is somewhere in LDFLAGS, we9503 # have runtime linking enabled, and use it for executables.9504 # For shared libraries, we enable/disable runtime linking9505 # depending on the kind of the shared library created -9506 # when "with_aix_soname,aix_use_runtimelinking" is:9507 # "aix,no" lib.a(lib.so.V) shared, rtl:no, for executables9508 # "aix,yes" lib.so shared, rtl:yes, for executables9509 # lib.a static archive9510 # "both,no" lib.so.V(shr.o) shared, rtl:yes9511 # lib.a(lib.so.V) shared, rtl:no, for executables9512 # "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables9513 # lib.a(lib.so.V) shared, rtl:no9514 # "svr4,*" lib.so.V(shr.o) shared, rtl:yes, for executables9515 # lib.a static archive9516 case $host_os in aix4.[23]|aix4.[23].*|aix[5-9]*)9517 for ld_flag in $LDFLAGS; do9518 if (test x-brtl = "x$ld_flag" || test x-Wl,-brtl = "x$ld_flag"); then9519 aix_use_runtimelinking=yes9520 break9521 fi9522 done9523 if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then9524 # With aix-soname=svr4, we create the lib.so.V shared archives only,9525 # so we don't have lib.a shared libs to link our executables.9526 # We have to force runtime linking in this case.9527 aix_use_runtimelinking=yes9528 LDFLAGS="$LDFLAGS -Wl,-brtl"9529 fi9530 ;;9531 esac9532 9533 exp_sym_flag='-bexport'9534 no_entry_flag='-bnoentry'9535 fi9536 9537 # When large executables or shared objects are built, AIX ld can9538 # have problems creating the table of contents. If linking a library9539 # or program results in "error TOC overflow" add -mminimal-toc to9540 # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not9541 # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.9542 9543 archive_cmds=''9544 hardcode_direct=yes9545 hardcode_direct_absolute=yes9546 hardcode_libdir_separator=':'9547 link_all_deplibs=yes9548 file_list_spec='$wl-f,'9549 case $with_aix_soname,$aix_use_runtimelinking in9550 aix,*) ;; # traditional, no import file9551 svr4,* | *,yes) # use import file9552 # The Import File defines what to hardcode.9553 hardcode_direct=no9554 hardcode_direct_absolute=no9555 ;;9556 esac9557 9558 if test yes = "$GCC"; then9559 case $host_os in aix4.[012]|aix4.[012].*)9560 # We only want to do this on AIX 4.2 and lower, the check9561 # below for broken collect2 doesn't work under 4.3+9562 collect2name=`$CC -print-prog-name=collect2`9563 if test -f "$collect2name" &&9564 strings "$collect2name" | $GREP resolve_lib_name >/dev/null9565 then9566 # We have reworked collect29567 :9568 else9569 # We have old collect29570 hardcode_direct=unsupported9571 # It fails to find uninstalled libraries when the uninstalled9572 # path is not listed in the libpath. Setting hardcode_minus_L9573 # to unsupported forces relinking9574 hardcode_minus_L=yes9575 hardcode_libdir_flag_spec='-L$libdir'9576 hardcode_libdir_separator=9577 fi9578 ;;9579 esac9580 shared_flag='-shared'9581 if test yes = "$aix_use_runtimelinking"; then9582 shared_flag="$shared_flag "'$wl-G'9583 fi9584 # Need to ensure runtime linking is disabled for the traditional9585 # shared library, or the linker may eventually find shared libraries9586 # /with/ Import File - we do not want to mix them.9587 shared_flag_aix='-shared'9588 shared_flag_svr4='-shared $wl-G'9589 else9590 # not using gcc9591 if test ia64 = "$host_cpu"; then9592 # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release9593 # chokes on -Wl,-G. The following line is correct:9594 shared_flag='-G'9595 else9596 if test yes = "$aix_use_runtimelinking"; then9597 shared_flag='$wl-G'9598 else9599 shared_flag='$wl-bM:SRE'9600 fi9601 shared_flag_aix='$wl-bM:SRE'9602 shared_flag_svr4='$wl-G'9603 fi9604 fi9605 9606 export_dynamic_flag_spec='$wl-bexpall'9607 # It seems that -bexpall does not export symbols beginning with9608 # underscore (_), so it is better to generate a list of symbols to export.9609 always_export_symbols=yes9610 if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then9611 # Warning - without using the other runtime loading flags (-brtl),9612 # -berok will link without error, but may produce a broken library.9613 allow_undefined_flag='-berok'9614 # Determine the default libpath from the value encoded in an9615 # empty executable.9616 if test set = "${lt_cv_aix_libpath+set}"; then9617 aix_libpath=$lt_cv_aix_libpath9618 else9619 if ${lt_cv_aix_libpath_+:} false; then :9620 $as_echo_n "(cached) " >&69621 else9622 cat confdefs.h - <<_ACEOF >conftest.$ac_ext9623 /* end confdefs.h. */9624 9625 int9626 main ()9627 {9628 9629 ;9630 return 0;9631 }9632 _ACEOF9633 if ac_fn_c_try_link "$LINENO"; then :9634 9635 lt_aix_libpath_sed='9636 /Import File Strings/,/^$/ {9637 /^0/ {9638 s/^0 *\([^ ]*\) *$/\1/9639 p9640 }9641 }'9642 lt_cv_aix_libpath_=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`9643 # Check for a 64-bit object if we didn't find anything.9644 if test -z "$lt_cv_aix_libpath_"; then9645 lt_cv_aix_libpath_=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`9646 fi9647 fi9648 rm -f core conftest.err conftest.$ac_objext \9649 conftest$ac_exeext conftest.$ac_ext9650 if test -z "$lt_cv_aix_libpath_"; then9651 lt_cv_aix_libpath_=/usr/lib:/lib9652 fi9653 9654 fi9655 9656 aix_libpath=$lt_cv_aix_libpath_9657 fi9658 9659 hardcode_libdir_flag_spec='$wl-blibpath:$libdir:'"$aix_libpath"9660 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_flag9661 else9662 if test ia64 = "$host_cpu"; then9663 hardcode_libdir_flag_spec='$wl-R $libdir:/usr/lib:/lib'9664 allow_undefined_flag="-z nodefs"9665 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"9666 else9667 # Determine the default libpath from the value encoded in an9668 # empty executable.9669 if test set = "${lt_cv_aix_libpath+set}"; then9670 aix_libpath=$lt_cv_aix_libpath9671 else9672 if ${lt_cv_aix_libpath_+:} false; then :9673 $as_echo_n "(cached) " >&69674 else9675 cat confdefs.h - <<_ACEOF >conftest.$ac_ext9676 /* end confdefs.h. */9677 9678 int9679 main ()9680 {9681 9682 ;9683 return 0;9684 }9685 _ACEOF9686 if ac_fn_c_try_link "$LINENO"; then :9687 9688 lt_aix_libpath_sed='9689 /Import File Strings/,/^$/ {9690 /^0/ {9691 s/^0 *\([^ ]*\) *$/\1/9692 p9693 }9694 }'9695 lt_cv_aix_libpath_=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`9696 # Check for a 64-bit object if we didn't find anything.9697 if test -z "$lt_cv_aix_libpath_"; then9698 lt_cv_aix_libpath_=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`9699 fi9700 fi9701 rm -f core conftest.err conftest.$ac_objext \9702 conftest$ac_exeext conftest.$ac_ext9703 if test -z "$lt_cv_aix_libpath_"; then9704 lt_cv_aix_libpath_=/usr/lib:/lib9705 fi9706 9707 fi9708 9709 aix_libpath=$lt_cv_aix_libpath_9710 fi9711 9712 hardcode_libdir_flag_spec='$wl-blibpath:$libdir:'"$aix_libpath"9713 # Warning - without using the other run time loading flags,9714 # -berok will link without error, but may produce a broken library.9715 no_undefined_flag=' $wl-bernotok'9716 allow_undefined_flag=' $wl-berok'9717 if test yes = "$with_gnu_ld"; then9718 # We only use this code for GNU lds that support --whole-archive.9719 whole_archive_flag_spec='$wl--whole-archive$convenience $wl--no-whole-archive'9720 else9721 # Exported symbols can be pulled into shared objects from archives9722 whole_archive_flag_spec='$convenience'9723 fi9724 archive_cmds_need_lc=yes9725 archive_expsym_cmds='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d'9726 # -brtl affects multiple linker settings, -berok does not and is overridden later9727 compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([, ]\\)%-berok\\1%g"`'9728 if test svr4 != "$with_aix_soname"; then9729 # This is similar to how AIX traditionally builds its shared libraries.9730 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'9731 fi9732 if test aix != "$with_aix_soname"; then9733 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'9734 else9735 # used by -dlpreopen to get the symbols9736 archive_expsym_cmds="$archive_expsym_cmds"'~$MV $output_objdir/$realname.d/$soname $output_objdir'9737 fi9738 archive_expsym_cmds="$archive_expsym_cmds"'~$RM -r $output_objdir/$realname.d'9739 fi9740 fi9741 ;;9742 9743 amigaos*)9744 case $host_cpu in9745 powerpc)9746 # see comment about AmigaOS4 .so support9747 archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'9748 archive_expsym_cmds=''9749 ;;9750 m68k)9751 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)'9752 hardcode_libdir_flag_spec='-L$libdir'9753 hardcode_minus_L=yes9754 ;;9755 esac9756 ;;9757 9758 bsdi[45]*)9759 export_dynamic_flag_spec=-rdynamic9760 ;;9761 9762 cygwin* | mingw* | pw32* | cegcc*)9763 # When not using gcc, we currently assume that we are using9764 # Microsoft Visual C++.9765 # hardcode_libdir_flag_spec is actually meaningless, as there is9766 # no search path for DLLs.9767 case $cc_basename in9768 cl*)9769 # Native MSVC9770 hardcode_libdir_flag_spec=' '9771 allow_undefined_flag=unsupported9772 always_export_symbols=yes9773 file_list_spec='@'9774 # Tell ltmain to make .lib files, not .a files.9775 libext=lib9776 # Tell ltmain to make .dll files, not .so files.9777 shrext_cmds=.dll9778 # FIXME: Setting linknames here is a bad hack.9779 archive_cmds='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames='9780 archive_expsym_cmds='if test DEF = "`$SED -n -e '\''s/^[ ]*//'\'' -e '\''/^\(;.*\)*$/d'\'' -e '\''s/^\(EXPORTS\|LIBRARY\)\([ ].*\)*$/DEF/p'\'' -e q $export_symbols`" ; then9781 cp "$export_symbols" "$output_objdir/$soname.def";9782 echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp";9783 else9784 $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp;9785 fi~9786 $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~9787 linknames='9788 # The linker will not automatically build a static lib if we build a DLL.9789 # _LT_TAGVAR(old_archive_from_new_cmds, )='true'9790 enable_shared_with_static_runtimes=yes9791 exclude_expsyms='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*'9792 export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[BCDGRS][ ]/s/.*[ ]\([^ ]*\)/\1,DATA/'\'' | $SED -e '\''/^[AITW][ ]/s/.*[ ]//'\'' | sort | uniq > $export_symbols'9793 # Don't use ranlib9794 old_postinstall_cmds='chmod 644 $oldlib'9795 postlink_cmds='lt_outputfile="@OUTPUT@"~9796 lt_tool_outputfile="@TOOL_OUTPUT@"~9797 case $lt_outputfile in9798 *.exe|*.EXE) ;;9799 *)9800 lt_outputfile=$lt_outputfile.exe9801 lt_tool_outputfile=$lt_tool_outputfile.exe9802 ;;9803 esac~9804 if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then9805 $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;9806 $RM "$lt_outputfile.manifest";9807 fi'9808 ;;9809 *)9810 # Assume MSVC wrapper9811 hardcode_libdir_flag_spec=' '9812 allow_undefined_flag=unsupported9813 # Tell ltmain to make .lib files, not .a files.9814 libext=lib9815 # Tell ltmain to make .dll files, not .so files.9816 shrext_cmds=.dll9817 # FIXME: Setting linknames here is a bad hack.9818 archive_cmds='$CC -o $lib $libobjs $compiler_flags `func_echo_all "$deplibs" | $SED '\''s/ -lc$//'\''` -link -dll~linknames='9819 # The linker will automatically build a .lib file if we build a DLL.9820 old_archive_from_new_cmds='true'9821 # FIXME: Should let the user specify the lib program.9822 old_archive_cmds='lib -OUT:$oldlib$oldobjs$old_deplibs'9823 enable_shared_with_static_runtimes=yes9824 ;;9825 esac9826 ;;9827 9828 darwin* | rhapsody*)9829 9830 9831 archive_cmds_need_lc=no9832 hardcode_direct=no9833 hardcode_automatic=yes9834 hardcode_shlibpath_var=unsupported9835 if test yes = "$lt_cv_ld_force_load"; then9836 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\"`'9837 9838 else9839 whole_archive_flag_spec=''9840 fi9841 link_all_deplibs=yes9842 allow_undefined_flag=$_lt_dar_allow_undefined9843 case $cc_basename in9844 ifort*|nagfor*) _lt_dar_can_shared=yes ;;9845 *) _lt_dar_can_shared=$GCC ;;9846 esac9847 if test yes = "$_lt_dar_can_shared"; then9848 output_verbose_link_cmd=func_echo_all9849 archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dsymutil"9850 module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dsymutil"9851 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"9852 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"9853 9854 else9855 ld_shlibs=no9856 fi9857 9858 ;;9859 9860 dgux*)9861 archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'9862 hardcode_libdir_flag_spec='-L$libdir'9863 hardcode_shlibpath_var=no9864 ;;9865 9866 # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor9867 # support. Future versions do this automatically, but an explicit c++rt0.o9868 # does not break anything, and helps significantly (at the cost of a little9869 # extra space).9870 freebsd2.2*)9871 archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o'9872 hardcode_libdir_flag_spec='-R$libdir'9873 hardcode_direct=yes9874 hardcode_shlibpath_var=no9875 ;;9876 9877 # Unfortunately, older versions of FreeBSD 2 do not have this feature.9878 freebsd2.*)9879 archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'9880 hardcode_direct=yes9881 hardcode_minus_L=yes9882 hardcode_shlibpath_var=no9883 ;;9884 9885 # FreeBSD 3 and greater uses gcc -shared to do shared libraries.9886 freebsd* | dragonfly*)9887 archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'9888 hardcode_libdir_flag_spec='-R$libdir'9889 hardcode_direct=yes9890 hardcode_shlibpath_var=no9891 ;;9892 9893 hpux9*)9894 if test yes = "$GCC"; then9895 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'9896 else9897 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'9898 fi9899 hardcode_libdir_flag_spec='$wl+b $wl$libdir'9900 hardcode_libdir_separator=:9901 hardcode_direct=yes9902 9903 # hardcode_minus_L: Not really in the search PATH,9904 # but as the default location of the library.9905 hardcode_minus_L=yes9906 export_dynamic_flag_spec='$wl-E'9907 ;;9908 9909 hpux10*)9910 if test yes,no = "$GCC,$with_gnu_ld"; then9911 archive_cmds='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'9912 else9913 archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'9914 fi9915 if test no = "$with_gnu_ld"; then9916 hardcode_libdir_flag_spec='$wl+b $wl$libdir'9917 hardcode_libdir_separator=:9918 hardcode_direct=yes9919 hardcode_direct_absolute=yes9920 export_dynamic_flag_spec='$wl-E'9921 # hardcode_minus_L: Not really in the search PATH,9922 # but as the default location of the library.9923 hardcode_minus_L=yes9924 fi9925 ;;9926 9927 hpux11*)9928 if test yes,no = "$GCC,$with_gnu_ld"; then9929 case $host_cpu in9930 hppa*64*)9931 archive_cmds='$CC -shared $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'9932 ;;9933 ia64*)9934 archive_cmds='$CC -shared $pic_flag $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'9935 ;;9936 *)9937 archive_cmds='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'9938 ;;9939 esac9940 else9941 case $host_cpu in9942 hppa*64*)9943 archive_cmds='$CC -b $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'9944 ;;9945 ia64*)9946 archive_cmds='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'9947 ;;9948 *)9949 9950 # Older versions of the 11.00 compiler do not understand -b yet9951 # (HP92453-01 A.11.01.20 doesn't, HP92453-01 B.11.X.35175-35176.GP does)9952 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC understands -b" >&59953 $as_echo_n "checking if $CC understands -b... " >&6; }9954 if ${lt_cv_prog_compiler__b+:} false; then :9955 $as_echo_n "(cached) " >&69956 else9957 lt_cv_prog_compiler__b=no9958 save_LDFLAGS=$LDFLAGS9959 LDFLAGS="$LDFLAGS -b"9960 echo "$lt_simple_link_test_code" > conftest.$ac_ext9961 if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then9962 # The linker can only warn and ignore the option if not recognized9963 # So say no if there are warnings9964 if test -s conftest.err; then9965 # Append any errors to the config.log.9966 cat conftest.err 1>&59967 $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp9968 $SED '/^$/d; /^ *+/d' conftest.err >conftest.er29969 if diff conftest.exp conftest.er2 >/dev/null; then9970 lt_cv_prog_compiler__b=yes9971 fi9972 else9973 lt_cv_prog_compiler__b=yes9974 fi9975 fi9976 $RM -r conftest*9977 LDFLAGS=$save_LDFLAGS9978 9979 fi9980 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler__b" >&59981 $as_echo "$lt_cv_prog_compiler__b" >&6; }9982 9983 if test yes = "$lt_cv_prog_compiler__b"; then9984 archive_cmds='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'9985 else9986 archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'9987 fi9988 9989 ;;9990 esac9991 fi9992 if test no = "$with_gnu_ld"; then9993 hardcode_libdir_flag_spec='$wl+b $wl$libdir'9994 hardcode_libdir_separator=:9995 9996 case $host_cpu in9997 hppa*64*|ia64*)9998 hardcode_direct=no9999 hardcode_shlibpath_var=no10000 ;;10001 *)10002 hardcode_direct=yes10003 hardcode_direct_absolute=yes10004 export_dynamic_flag_spec='$wl-E'10005 10006 # hardcode_minus_L: Not really in the search PATH,10007 # but as the default location of the library.10008 hardcode_minus_L=yes10009 ;;10010 esac10011 fi10012 ;;10013 10014 irix5* | irix6* | nonstopux*)10015 if test yes = "$GCC"; then10016 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'10017 # Try to use the -exported_symbol ld option, if it does not10018 # work, assume that -exports_file does not work either and10019 # implicitly export all symbols.10020 # This should be the same for all languages, so no per-tag cache variable.10021 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $host_os linker accepts -exported_symbol" >&510022 $as_echo_n "checking whether the $host_os linker accepts -exported_symbol... " >&6; }10023 if ${lt_cv_irix_exported_symbol+:} false; then :10024 $as_echo_n "(cached) " >&610025 else10026 save_LDFLAGS=$LDFLAGS10027 LDFLAGS="$LDFLAGS -shared $wl-exported_symbol ${wl}foo $wl-update_registry $wl/dev/null"10028 cat confdefs.h - <<_ACEOF >conftest.$ac_ext10029 /* end confdefs.h. */10030 int foo (void) { return 0; }10031 _ACEOF10032 if ac_fn_c_try_link "$LINENO"; then :10033 lt_cv_irix_exported_symbol=yes10034 else10035 lt_cv_irix_exported_symbol=no10036 fi10037 rm -f core conftest.err conftest.$ac_objext \10038 conftest$ac_exeext conftest.$ac_ext10039 LDFLAGS=$save_LDFLAGS10040 fi10041 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_irix_exported_symbol" >&510042 $as_echo "$lt_cv_irix_exported_symbol" >&6; }10043 if test yes = "$lt_cv_irix_exported_symbol"; then10044 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'10045 fi10046 link_all_deplibs=no10047 else10048 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'10049 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'10050 fi10051 archive_cmds_need_lc='no'10052 hardcode_libdir_flag_spec='$wl-rpath $wl$libdir'10053 hardcode_libdir_separator=:10054 inherit_rpath=yes10055 link_all_deplibs=yes10056 ;;10057 10058 linux*)10059 case $cc_basename in10060 tcc*)10061 # Fabrice Bellard et al's Tiny C Compiler10062 ld_shlibs=yes10063 archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'10064 ;;10065 esac10066 ;;10067 10068 netbsd* | netbsdelf*-gnu)10069 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then10070 archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out10071 else10072 archive_cmds='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF10073 fi10074 hardcode_libdir_flag_spec='-R$libdir'10075 hardcode_direct=yes10076 hardcode_shlibpath_var=no10077 ;;10078 10079 newsos6)10080 archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'10081 hardcode_direct=yes10082 hardcode_libdir_flag_spec='$wl-rpath $wl$libdir'10083 hardcode_libdir_separator=:10084 hardcode_shlibpath_var=no10085 ;;10086 10087 *nto* | *qnx*)10088 ;;10089 10090 openbsd* | bitrig*)10091 if test -f /usr/libexec/ld.so; then10092 hardcode_direct=yes10093 hardcode_shlibpath_var=no10094 hardcode_direct_absolute=yes10095 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then10096 archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'10097 archive_expsym_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags $wl-retain-symbols-file,$export_symbols'10098 hardcode_libdir_flag_spec='$wl-rpath,$libdir'10099 export_dynamic_flag_spec='$wl-E'10100 else10101 archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'10102 hardcode_libdir_flag_spec='$wl-rpath,$libdir'10103 fi10104 else10105 ld_shlibs=no10106 fi10107 ;;10108 10109 os2*)10110 hardcode_libdir_flag_spec='-L$libdir'10111 hardcode_minus_L=yes10112 allow_undefined_flag=unsupported10113 shrext_cmds=.dll10114 archive_cmds='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~10115 $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~10116 $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~10117 $ECHO EXPORTS >> $output_objdir/$libname.def~10118 emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~10119 $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~10120 emximp -o $lib $output_objdir/$libname.def'10121 archive_expsym_cmds='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~10122 $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~10123 $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~10124 $ECHO EXPORTS >> $output_objdir/$libname.def~10125 prefix_cmds="$SED"~10126 if test EXPORTS = "`$SED 1q $export_symbols`"; then10127 prefix_cmds="$prefix_cmds -e 1d";10128 fi~10129 prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~10130 cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~10131 $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~10132 emximp -o $lib $output_objdir/$libname.def'10133 old_archive_From_new_cmds='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'10134 enable_shared_with_static_runtimes=yes10135 ;;10136 10137 osf3*)10138 if test yes = "$GCC"; then10139 allow_undefined_flag=' $wl-expect_unresolved $wl\*'10140 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'10141 else10142 allow_undefined_flag=' -expect_unresolved \*'10143 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'10144 fi10145 archive_cmds_need_lc='no'10146 hardcode_libdir_flag_spec='$wl-rpath $wl$libdir'10147 hardcode_libdir_separator=:10148 ;;10149 10150 osf4* | osf5*) # as osf3* with the addition of -msym flag10151 if test yes = "$GCC"; then10152 allow_undefined_flag=' $wl-expect_unresolved $wl\*'10153 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'10154 hardcode_libdir_flag_spec='$wl-rpath $wl$libdir'10155 else10156 allow_undefined_flag=' -expect_unresolved \*'10157 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'10158 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~10159 $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'10160 10161 # Both c and cxx compiler support -rpath directly10162 hardcode_libdir_flag_spec='-rpath $libdir'10163 fi10164 archive_cmds_need_lc='no'10165 hardcode_libdir_separator=:10166 ;;10167 10168 solaris*)10169 no_undefined_flag=' -z defs'10170 if test yes = "$GCC"; then10171 wlarc='$wl'10172 archive_cmds='$CC -shared $pic_flag $wl-z ${wl}text $wl-h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'10173 archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~10174 $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'10175 else10176 case `$CC -V 2>&1` in10177 *"Compilers 5.0"*)10178 wlarc=''10179 archive_cmds='$LD -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $linker_flags'10180 archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~10181 $LD -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp'10182 ;;10183 *)10184 wlarc='$wl'10185 archive_cmds='$CC -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $compiler_flags'10186 archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~10187 $CC -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'10188 ;;10189 esac10190 fi10191 hardcode_libdir_flag_spec='-R$libdir'10192 hardcode_shlibpath_var=no10193 case $host_os in10194 solaris2.[0-5] | solaris2.[0-5].*) ;;10195 *)10196 # The compiler driver will combine and reorder linker options,10197 # but understands '-z linker_flag'. GCC discards it without '$wl',10198 # but is careful enough not to reorder.10199 # Supported since Solaris 2.6 (maybe 2.5.1?)10200 if test yes = "$GCC"; then10201 whole_archive_flag_spec='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract'10202 else10203 whole_archive_flag_spec='-z allextract$convenience -z defaultextract'10204 fi10205 ;;10206 esac10207 link_all_deplibs=yes10208 ;;10209 10210 sunos4*)10211 if test sequent = "$host_vendor"; then10212 # Use $CC to link under sequent, because it throws in some extra .o10213 # files that make .init and .fini sections work.10214 archive_cmds='$CC -G $wl-h $soname -o $lib $libobjs $deplibs $compiler_flags'10215 else10216 archive_cmds='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags'10217 fi10218 hardcode_libdir_flag_spec='-L$libdir'10219 hardcode_direct=yes10220 hardcode_minus_L=yes10221 hardcode_shlibpath_var=no10222 ;;10223 10224 sysv4)10225 case $host_vendor in10226 sni)10227 archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'10228 hardcode_direct=yes # is this really true???10229 ;;10230 siemens)10231 ## LD is ld it makes a PLAMLIB10232 ## CC just makes a GrossModule.10233 archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags'10234 reload_cmds='$CC -r -o $output$reload_objs'10235 hardcode_direct=no10236 ;;10237 motorola)10238 archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'10239 hardcode_direct=no #Motorola manual says yes, but my tests say they lie10240 ;;10241 esac10242 runpath_var='LD_RUN_PATH'10243 hardcode_shlibpath_var=no10244 ;;10245 10246 sysv4.3*)10247 archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'10248 hardcode_shlibpath_var=no10249 export_dynamic_flag_spec='-Bexport'10250 ;;10251 10252 sysv4*MP*)10253 if test -d /usr/nec; then10254 archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'10255 hardcode_shlibpath_var=no10256 runpath_var=LD_RUN_PATH10257 hardcode_runpath_var=yes10258 ld_shlibs=yes10259 fi10260 ;;10261 10262 sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[01].[10]* | unixware7* | sco3.2v5.0.[024]*)10263 no_undefined_flag='$wl-z,text'10264 archive_cmds_need_lc=no10265 hardcode_shlibpath_var=no10266 runpath_var='LD_RUN_PATH'10267 10268 if test yes = "$GCC"; then10269 archive_cmds='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'10270 archive_expsym_cmds='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'10271 else10272 archive_cmds='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'10273 archive_expsym_cmds='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'10274 fi10275 ;;10276 10277 sysv5* | sco3.2v5* | sco5v6*)10278 # Note: We CANNOT use -z defs as we might desire, because we do not10279 # link with -lc, and that would cause any symbols used from libc to10280 # always be unresolved, which means just about no library would10281 # ever link correctly. If we're not using GNU ld we use -z text10282 # though, which does catch some bad symbols but isn't as heavy-handed10283 # as -z defs.10284 no_undefined_flag='$wl-z,text'10285 allow_undefined_flag='$wl-z,nodefs'10286 archive_cmds_need_lc=no10287 hardcode_shlibpath_var=no10288 hardcode_libdir_flag_spec='$wl-R,$libdir'10289 hardcode_libdir_separator=':'10290 link_all_deplibs=yes10291 export_dynamic_flag_spec='$wl-Bexport'10292 runpath_var='LD_RUN_PATH'10293 10294 if test yes = "$GCC"; then10295 archive_cmds='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'10296 archive_expsym_cmds='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'10297 else10298 archive_cmds='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'10299 archive_expsym_cmds='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'10300 fi10301 ;;10302 10303 uts4*)10304 archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'10305 hardcode_libdir_flag_spec='-L$libdir'10306 hardcode_shlibpath_var=no10307 ;;10308 10309 *)10310 ld_shlibs=no10311 ;;10312 esac10313 10314 if test sni = "$host_vendor"; then10315 case $host in10316 sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)10317 export_dynamic_flag_spec='$wl-Blargedynsym'10318 ;;10319 esac10320 fi10321 fi10322 10323 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs" >&510324 $as_echo "$ld_shlibs" >&6; }10325 test no = "$ld_shlibs" && can_build_shared=no10326 10327 with_gnu_ld=$with_gnu_ld10328 10329 10330 10331 10332 10333 10334 10335 10336 10337 10338 10339 10340 10341 10342 10343 #10344 # Do we need to explicitly link libc?10345 #10346 case "x$archive_cmds_need_lc" in10347 x|xyes)10348 # Assume -lc should be added10349 archive_cmds_need_lc=yes10350 10351 if test yes,yes = "$GCC,$enable_shared"; then10352 case $archive_cmds in10353 *'~'*)10354 # FIXME: we may have to deal with multi-command sequences.10355 ;;10356 '$CC '*)10357 # Test whether the compiler implicitly links with -lc since on some10358 # systems, -lgcc has to come before -lc. If gcc already passes -lc10359 # to ld, don't add -lc before -lgcc.10360 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -lc should be explicitly linked in" >&510361 $as_echo_n "checking whether -lc should be explicitly linked in... " >&6; }10362 if ${lt_cv_archive_cmds_need_lc+:} false; then :10363 $as_echo_n "(cached) " >&610364 else10365 $RM conftest*10366 echo "$lt_simple_compile_test_code" > conftest.$ac_ext10367 10368 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&510369 (eval $ac_compile) 2>&510370 ac_status=$?10371 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&510372 test $ac_status = 0; } 2>conftest.err; then10373 soname=conftest10374 lib=conftest10375 libobjs=conftest.$ac_objext10376 deplibs=10377 wl=$lt_prog_compiler_wl10378 pic_flag=$lt_prog_compiler_pic10379 compiler_flags=-v10380 linker_flags=-v10381 verstring=10382 output_objdir=.10383 libname=conftest10384 lt_save_allow_undefined_flag=$allow_undefined_flag10385 allow_undefined_flag=10386 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$archive_cmds 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1\""; } >&510387 (eval $archive_cmds 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1) 2>&510388 ac_status=$?10389 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&510390 test $ac_status = 0; }10391 then10392 lt_cv_archive_cmds_need_lc=no10393 else10394 lt_cv_archive_cmds_need_lc=yes10395 fi10396 allow_undefined_flag=$lt_save_allow_undefined_flag10397 else10398 cat conftest.err 1>&510399 fi10400 $RM conftest*10401 10402 fi10403 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_archive_cmds_need_lc" >&510404 $as_echo "$lt_cv_archive_cmds_need_lc" >&6; }10405 archive_cmds_need_lc=$lt_cv_archive_cmds_need_lc10406 ;;10407 esac10408 fi10409 ;;10410 esac10411 10412 10413 10414 10415 10416 10417 10418 10419 10420 10421 10422 10423 10424 10425 10426 10427 10428 10429 10430 10431 10432 10433 10434 10435 10436 10437 10438 10439 10440 10441 10442 10443 10444 10445 10446 10447 10448 10449 10450 10451 10452 10453 10454 10455 10456 10457 10458 10459 10460 10461 10462 10463 10464 10465 10466 10467 10468 10469 10470 10471 10472 10473 10474 10475 10476 10477 10478 10479 10480 10481 10482 10483 10484 10485 10486 10487 10488 10489 10490 10491 10492 10493 10494 10495 10496 10497 10498 10499 10500 10501 10502 10503 10504 10505 10506 10507 10508 10509 10510 10511 10512 10513 10514 10515 10516 10517 10518 10519 10520 10521 10522 10523 10524 10525 10526 10527 10528 10529 10530 10531 10532 10533 10534 10535 10536 10537 10538 10539 10540 10541 10542 10543 10544 10545 10546 10547 10548 10549 10550 10551 10552 10553 10554 10555 10556 10557 10558 10559 10560 10561 10562 10563 { $as_echo "$as_me:${as_lineno-$LINENO}: checking dynamic linker characteristics" >&510564 $as_echo_n "checking dynamic linker characteristics... " >&6; }10565 10566 if test yes = "$GCC"; then10567 case $host_os in10568 darwin*) lt_awk_arg='/^libraries:/,/LR/' ;;10569 *) lt_awk_arg='/^libraries:/' ;;10570 esac10571 case $host_os in10572 mingw* | cegcc*) lt_sed_strip_eq='s|=\([A-Za-z]:\)|\1|g' ;;10573 *) lt_sed_strip_eq='s|=/|/|g' ;;10574 esac10575 lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e $lt_sed_strip_eq`10576 case $lt_search_path_spec in10577 *\;*)10578 # if the path contains ";" then we assume it to be the separator10579 # otherwise default to the standard path separator (i.e. ":") - it is10580 # assumed that no part of a normal pathname contains ";" but that should10581 # okay in the real world where ";" in dirpaths is itself problematic.10582 lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED 's/;/ /g'`10583 ;;10584 *)10585 lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED "s/$PATH_SEPARATOR/ /g"`10586 ;;10587 esac10588 # Ok, now we have the path, separated by spaces, we can step through it10589 # and add multilib dir if necessary...10590 lt_tmp_lt_search_path_spec=10591 lt_multi_os_dir=/`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null`10592 # ...but if some path component already ends with the multilib dir we assume10593 # that all is fine and trust -print-search-dirs as is (GCC 4.2? or newer).10594 case "$lt_multi_os_dir; $lt_search_path_spec " in10595 "/; "* | "/.; "* | "/./; "* | *"$lt_multi_os_dir "* | *"$lt_multi_os_dir/ "*)10596 lt_multi_os_dir=10597 ;;10598 esac10599 for lt_sys_path in $lt_search_path_spec; do10600 if test -d "$lt_sys_path$lt_multi_os_dir"; then10601 lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path$lt_multi_os_dir"10602 elif test -n "$lt_multi_os_dir"; then10603 test -d "$lt_sys_path" && \10604 lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path"10605 fi10606 done10607 lt_search_path_spec=`$ECHO "$lt_tmp_lt_search_path_spec" | awk '10608 BEGIN {RS = " "; FS = "/|\n";} {10609 lt_foo = "";10610 lt_count = 0;10611 for (lt_i = NF; lt_i > 0; lt_i--) {10612 if ($lt_i != "" && $lt_i != ".") {10613 if ($lt_i == "..") {10614 lt_count++;10615 } else {10616 if (lt_count == 0) {10617 lt_foo = "/" $lt_i lt_foo;10618 } else {10619 lt_count--;10620 }10621 }10622 }10623 }10624 if (lt_foo != "") { lt_freq[lt_foo]++; }10625 if (lt_freq[lt_foo] == 1) { print lt_foo; }10626 }'`10627 # AWK program above erroneously prepends '/' to C:/dos/paths10628 # for these hosts.10629 case $host_os in10630 mingw* | cegcc*) lt_search_path_spec=`$ECHO "$lt_search_path_spec" |\10631 $SED 's|/\([A-Za-z]:\)|\1|g'` ;;10632 esac10633 sys_lib_search_path_spec=`$ECHO "$lt_search_path_spec" | $lt_NL2SP`10634 else10635 sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"10636 fi10637 library_names_spec=10638 libname_spec='lib$name'10639 soname_spec=10640 shrext_cmds=.so10641 postinstall_cmds=10642 postuninstall_cmds=10643 finish_cmds=10644 finish_eval=10645 shlibpath_var=10646 shlibpath_overrides_runpath=unknown10647 version_type=none10648 dynamic_linker="$host_os ld.so"10649 sys_lib_dlsearch_path_spec="/lib /usr/lib"10650 need_lib_prefix=unknown10651 hardcode_into_libs=no10652 10653 # when you set need_version to no, make sure it does not cause -set_version10654 # flags to be left without arguments10655 need_version=unknown10656 10657 10658 10659 case $host_os in10660 aix3*)10661 version_type=linux # correct to gnu/linux during the next big refactor10662 library_names_spec='$libname$release$shared_ext$versuffix $libname.a'10663 shlibpath_var=LIBPATH10664 10665 # AIX 3 has no versioning support, so we append a major version to the name.10666 soname_spec='$libname$release$shared_ext$major'10667 ;;10668 10669 aix[4-9]*)10670 version_type=linux # correct to gnu/linux during the next big refactor10671 need_lib_prefix=no10672 need_version=no10673 hardcode_into_libs=yes10674 if test ia64 = "$host_cpu"; then10675 # AIX 5 supports IA6410676 library_names_spec='$libname$release$shared_ext$major $libname$release$shared_ext$versuffix $libname$shared_ext'10677 shlibpath_var=LD_LIBRARY_PATH10678 else10679 # With GCC up to 2.95.x, collect2 would create an import file10680 # for dependence libraries. The import file would start with10681 # the line '#! .'. This would cause the generated library to10682 # depend on '.', always an invalid library. This was fixed in10683 # development snapshots of GCC prior to 3.0.10684 case $host_os in10685 aix4 | aix4.[01] | aix4.[01].*)10686 if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'10687 echo ' yes '10688 echo '#endif'; } | $CC -E - | $GREP yes > /dev/null; then10689 :10690 else10691 can_build_shared=no10692 fi10693 ;;10694 esac10695 # Using Import Files as archive members, it is possible to support10696 # filename-based versioning of shared library archives on AIX. While10697 # this would work for both with and without runtime linking, it will10698 # prevent static linking of such archives. So we do filename-based10699 # shared library versioning with .so extension only, which is used10700 # when both runtime linking and shared linking is enabled.10701 # Unfortunately, runtime linking may impact performance, so we do10702 # not want this to be the default eventually. Also, we use the10703 # versioned .so libs for executables only if there is the -brtl10704 # linker flag in LDFLAGS as well, or --with-aix-soname=svr4 only.10705 # To allow for filename-based versioning support, we need to create10706 # libNAME.so.V as an archive file, containing:10707 # *) an Import File, referring to the versioned filename of the10708 # archive as well as the shared archive member, telling the10709 # bitwidth (32 or 64) of that shared object, and providing the10710 # list of exported symbols of that shared object, eventually10711 # decorated with the 'weak' keyword10712 # *) the shared object with the F_LOADONLY flag set, to really avoid10713 # it being seen by the linker.10714 # At run time we better use the real file rather than another symlink,10715 # but for link time we create the symlink libNAME.so -> libNAME.so.V10716 10717 case $with_aix_soname,$aix_use_runtimelinking in10718 # AIX (on Power*) has no versioning support, so currently we cannot hardcode correct10719 # soname into executable. Probably we can add versioning support to10720 # collect2, so additional links can be useful in future.10721 aix,yes) # traditional libtool10722 dynamic_linker='AIX unversionable lib.so'10723 # If using run time linking (on AIX 4.2 or later) use lib<name>.so10724 # instead of lib<name>.a to let people know that these are not10725 # typical AIX shared libraries.10726 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'10727 ;;10728 aix,no) # traditional AIX only10729 dynamic_linker='AIX lib.a(lib.so.V)'10730 # We preserve .a as extension for shared libraries through AIX4.210731 # and later when we are not doing run time linking.10732 library_names_spec='$libname$release.a $libname.a'10733 soname_spec='$libname$release$shared_ext$major'10734 ;;10735 svr4,*) # full svr4 only10736 dynamic_linker="AIX lib.so.V($shared_archive_member_spec.o)"10737 library_names_spec='$libname$release$shared_ext$major $libname$shared_ext'10738 # We do not specify a path in Import Files, so LIBPATH fires.10739 shlibpath_overrides_runpath=yes10740 ;;10741 *,yes) # both, prefer svr410742 dynamic_linker="AIX lib.so.V($shared_archive_member_spec.o), lib.a(lib.so.V)"10743 library_names_spec='$libname$release$shared_ext$major $libname$shared_ext'10744 # unpreferred sharedlib libNAME.a needs extra handling10745 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"'10746 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"'10747 # We do not specify a path in Import Files, so LIBPATH fires.10748 shlibpath_overrides_runpath=yes10749 ;;10750 *,no) # both, prefer aix10751 dynamic_linker="AIX lib.a(lib.so.V), lib.so.V($shared_archive_member_spec.o)"10752 library_names_spec='$libname$release.a $libname.a'10753 soname_spec='$libname$release$shared_ext$major'10754 # unpreferred sharedlib libNAME.so.V and symlink libNAME.so need extra handling10755 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)'10756 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"'10757 ;;10758 esac10759 shlibpath_var=LIBPATH10760 fi10761 ;;10762 10763 amigaos*)10764 case $host_cpu in10765 powerpc)10766 # Since July 2007 AmigaOS4 officially supports .so libraries.10767 # When compiling the executable, add -use-dynld -Lsobjs: to the compileline.10768 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'10769 ;;10770 m68k)10771 library_names_spec='$libname.ixlibrary $libname.a'10772 # Create ${libname}_ixlibrary.a entries in /sys/libs.10773 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'10774 ;;10775 esac10776 ;;10777 10778 beos*)10779 library_names_spec='$libname$shared_ext'10780 dynamic_linker="$host_os ld.so"10781 shlibpath_var=LIBRARY_PATH10782 ;;10783 10784 bsdi[45]*)10785 version_type=linux # correct to gnu/linux during the next big refactor10786 need_version=no10787 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'10788 soname_spec='$libname$release$shared_ext$major'10789 finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'10790 shlibpath_var=LD_LIBRARY_PATH10791 sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"10792 sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"10793 # the default ld.so.conf also contains /usr/contrib/lib and10794 # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow10795 # libtool to hard-code these into programs10796 ;;10797 10798 cygwin* | mingw* | pw32* | cegcc*)10799 version_type=windows10800 shrext_cmds=.dll10801 need_version=no10802 need_lib_prefix=no10803 10804 case $GCC,$cc_basename in10805 yes,*)10806 # gcc10807 library_names_spec='$libname.dll.a'10808 # DLL is installed to $(libdir)/../bin by postinstall_cmds10809 postinstall_cmds='base_file=`basename \$file`~10810 dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~10811 dldir=$destdir/`dirname \$dlpath`~10812 test -d \$dldir || mkdir -p \$dldir~10813 $install_prog $dir/$dlname \$dldir/$dlname~10814 chmod a+x \$dldir/$dlname~10815 if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then10816 eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;10817 fi'10818 postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~10819 dlpath=$dir/\$dldll~10820 $RM \$dlpath'10821 shlibpath_overrides_runpath=yes10822 10823 case $host_os in10824 cygwin*)10825 # Cygwin DLLs use 'cyg' prefix rather than 'lib'10826 soname_spec='`echo $libname | sed -e 's/^lib/cyg/'``echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'10827 10828 sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api"10829 ;;10830 mingw* | cegcc*)10831 # MinGW DLLs use traditional 'lib' prefix10832 soname_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'10833 ;;10834 pw32*)10835 # pw32 DLLs use 'pw' prefix rather than 'lib'10836 library_names_spec='`echo $libname | sed -e 's/^lib/pw/'``echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'10837 ;;10838 esac10839 dynamic_linker='Win32 ld.exe'10840 ;;10841 10842 *,cl*)10843 # Native MSVC10844 libname_spec='$name'10845 soname_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'10846 library_names_spec='$libname.dll.lib'10847 10848 case $build_os in10849 mingw*)10850 sys_lib_search_path_spec=10851 lt_save_ifs=$IFS10852 IFS=';'10853 for lt_path in $LIB10854 do10855 IFS=$lt_save_ifs10856 # Let DOS variable expansion print the short 8.3 style file name.10857 lt_path=`cd "$lt_path" 2>/dev/null && cmd //C "for %i in (".") do @echo %~si"`10858 sys_lib_search_path_spec="$sys_lib_search_path_spec $lt_path"10859 done10860 IFS=$lt_save_ifs10861 # Convert to MSYS style.10862 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | sed -e 's|\\\\|/|g' -e 's| \\([a-zA-Z]\\):| /\\1|g' -e 's|^ ||'`10863 ;;10864 cygwin*)10865 # Convert to unix form, then to dos form, then back to unix form10866 # but this time dos style (no spaces!) so that the unix form looks10867 # like /cygdrive/c/PROGRA~1:/cygdr...10868 sys_lib_search_path_spec=`cygpath --path --unix "$LIB"`10869 sys_lib_search_path_spec=`cygpath --path --dos "$sys_lib_search_path_spec" 2>/dev/null`10870 sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`10871 ;;10872 *)10873 sys_lib_search_path_spec=$LIB10874 if $ECHO "$sys_lib_search_path_spec" | $GREP ';[c-zC-Z]:/' >/dev/null; then10875 # It is most probably a Windows format PATH.10876 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`10877 else10878 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`10879 fi10880 # FIXME: find the short name or the path components, as spaces are10881 # common. (e.g. "Program Files" -> "PROGRA~1")10882 ;;10883 esac10884 10885 # DLL is installed to $(libdir)/../bin by postinstall_cmds10886 postinstall_cmds='base_file=`basename \$file`~10887 dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~10888 dldir=$destdir/`dirname \$dlpath`~10889 test -d \$dldir || mkdir -p \$dldir~10890 $install_prog $dir/$dlname \$dldir/$dlname'10891 postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~10892 dlpath=$dir/\$dldll~10893 $RM \$dlpath'10894 shlibpath_overrides_runpath=yes10895 dynamic_linker='Win32 link.exe'10896 ;;10897 10898 *)10899 # Assume MSVC wrapper10900 library_names_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext $libname.lib'10901 dynamic_linker='Win32 ld.exe'10902 ;;10903 esac10904 # FIXME: first we should search . and the directory the executable is in10905 shlibpath_var=PATH10906 ;;10907 10908 darwin* | rhapsody*)10909 dynamic_linker="$host_os dyld"10910 version_type=darwin10911 need_lib_prefix=no10912 need_version=no10913 library_names_spec='$libname$release$major$shared_ext $libname$shared_ext'10914 soname_spec='$libname$release$major$shared_ext'10915 shlibpath_overrides_runpath=yes10916 shlibpath_var=DYLD_LIBRARY_PATH10917 shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'10918 10919 sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"10920 sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'10921 ;;10922 10923 dgux*)10924 version_type=linux # correct to gnu/linux during the next big refactor10925 need_lib_prefix=no10926 need_version=no10927 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'10928 soname_spec='$libname$release$shared_ext$major'10929 shlibpath_var=LD_LIBRARY_PATH10930 ;;10931 10932 freebsd* | dragonfly*)10933 # DragonFly does not have aout. When/if they implement a new10934 # versioning mechanism, adjust this.10935 if test -x /usr/bin/objformat; then10936 objformat=`/usr/bin/objformat`10937 else10938 case $host_os in10939 freebsd[23].*) objformat=aout ;;10940 *) objformat=elf ;;10941 esac10942 fi10943 version_type=freebsd-$objformat10944 case $version_type in10945 freebsd-elf*)10946 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'10947 soname_spec='$libname$release$shared_ext$major'10948 need_version=no10949 need_lib_prefix=no10950 ;;10951 freebsd-*)10952 library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'10953 need_version=yes10954 ;;10955 esac10956 shlibpath_var=LD_LIBRARY_PATH10957 case $host_os in10958 freebsd2.*)10959 shlibpath_overrides_runpath=yes10960 ;;10961 freebsd3.[01]* | freebsdelf3.[01]*)10962 shlibpath_overrides_runpath=yes10963 hardcode_into_libs=yes10964 ;;10965 freebsd3.[2-9]* | freebsdelf3.[2-9]* | \10966 freebsd4.[0-5] | freebsdelf4.[0-5] | freebsd4.1.1 | freebsdelf4.1.1)10967 shlibpath_overrides_runpath=no10968 hardcode_into_libs=yes10969 ;;10970 *) # from 4.6 on, and DragonFly10971 shlibpath_overrides_runpath=yes10972 hardcode_into_libs=yes10973 ;;10974 esac10975 ;;10976 10977 haiku*)10978 version_type=linux # correct to gnu/linux during the next big refactor10979 need_lib_prefix=no10980 need_version=no10981 dynamic_linker="$host_os runtime_loader"10982 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'10983 soname_spec='$libname$release$shared_ext$major'10984 shlibpath_var=LIBRARY_PATH10985 shlibpath_overrides_runpath=no10986 sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib'10987 hardcode_into_libs=yes10988 ;;10989 10990 hpux9* | hpux10* | hpux11*)10991 # Give a soname corresponding to the major version so that dld.sl refuses to10992 # link against other versions.10993 version_type=sunos10994 need_lib_prefix=no10995 need_version=no10996 case $host_cpu in10997 ia64*)10998 shrext_cmds='.so'10999 hardcode_into_libs=yes11000 dynamic_linker="$host_os dld.so"11001 shlibpath_var=LD_LIBRARY_PATH11002 shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.11003 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'11004 soname_spec='$libname$release$shared_ext$major'11005 if test 32 = "$HPUX_IA64_MODE"; then11006 sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"11007 sys_lib_dlsearch_path_spec=/usr/lib/hpux3211008 else11009 sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"11010 sys_lib_dlsearch_path_spec=/usr/lib/hpux6411011 fi11012 ;;11013 hppa*64*)11014 shrext_cmds='.sl'11015 hardcode_into_libs=yes11016 dynamic_linker="$host_os dld.sl"11017 shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH11018 shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.11019 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'11020 soname_spec='$libname$release$shared_ext$major'11021 sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64"11022 sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec11023 ;;11024 *)11025 shrext_cmds='.sl'11026 dynamic_linker="$host_os dld.sl"11027 shlibpath_var=SHLIB_PATH11028 shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH11029 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'11030 soname_spec='$libname$release$shared_ext$major'11031 ;;11032 esac11033 # HP-UX runs *really* slowly unless shared libraries are mode 555, ...11034 postinstall_cmds='chmod 555 $lib'11035 # or fails outright, so override atomically:11036 install_override_mode=55511037 ;;11038 11039 interix[3-9]*)11040 version_type=linux # correct to gnu/linux during the next big refactor11041 need_lib_prefix=no11042 need_version=no11043 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'11044 soname_spec='$libname$release$shared_ext$major'11045 dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)'11046 shlibpath_var=LD_LIBRARY_PATH11047 shlibpath_overrides_runpath=no11048 hardcode_into_libs=yes11049 ;;11050 11051 irix5* | irix6* | nonstopux*)11052 case $host_os in11053 nonstopux*) version_type=nonstopux ;;11054 *)11055 if test yes = "$lt_cv_prog_gnu_ld"; then11056 version_type=linux # correct to gnu/linux during the next big refactor11057 else11058 version_type=irix11059 fi ;;11060 esac11061 need_lib_prefix=no11062 need_version=no11063 soname_spec='$libname$release$shared_ext$major'11064 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$release$shared_ext $libname$shared_ext'11065 case $host_os in11066 irix5* | nonstopux*)11067 libsuff= shlibsuff=11068 ;;11069 *)11070 case $LD in # libtool.m4 will add one of these switches to LD11071 *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ")11072 libsuff= shlibsuff= libmagic=32-bit;;11073 *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ")11074 libsuff=32 shlibsuff=N32 libmagic=N32;;11075 *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ")11076 libsuff=64 shlibsuff=64 libmagic=64-bit;;11077 *) libsuff= shlibsuff= libmagic=never-match;;11078 esac11079 ;;11080 esac11081 shlibpath_var=LD_LIBRARY${shlibsuff}_PATH11082 shlibpath_overrides_runpath=no11083 sys_lib_search_path_spec="/usr/lib$libsuff /lib$libsuff /usr/local/lib$libsuff"11084 sys_lib_dlsearch_path_spec="/usr/lib$libsuff /lib$libsuff"11085 hardcode_into_libs=yes11086 ;;11087 11088 # No shared lib support for Linux oldld, aout, or coff.11089 linux*oldld* | linux*aout* | linux*coff*)11090 dynamic_linker=no11091 ;;11092 11093 linux*android*)11094 version_type=none # Android doesn't support versioned libraries.11095 need_lib_prefix=no11096 need_version=no11097 library_names_spec='$libname$release$shared_ext'11098 soname_spec='$libname$release$shared_ext'11099 finish_cmds=11100 shlibpath_var=LD_LIBRARY_PATH11101 shlibpath_overrides_runpath=yes11102 11103 # This implies no fast_install, which is unacceptable.11104 # Some rework will be needed to allow for fast_install11105 # before this can be enabled.11106 hardcode_into_libs=yes11107 11108 dynamic_linker='Android linker'11109 # Don't embed -rpath directories since the linker doesn't support them.11110 hardcode_libdir_flag_spec='-L$libdir'11111 ;;11112 11113 # This must be glibc/ELF.11114 linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)11115 version_type=linux # correct to gnu/linux during the next big refactor11116 need_lib_prefix=no11117 need_version=no11118 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'11119 soname_spec='$libname$release$shared_ext$major'11120 finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'11121 shlibpath_var=LD_LIBRARY_PATH11122 shlibpath_overrides_runpath=no11123 11124 # Some binutils ld are patched to set DT_RUNPATH11125 if ${lt_cv_shlibpath_overrides_runpath+:} false; then :11126 $as_echo_n "(cached) " >&611127 else11128 lt_cv_shlibpath_overrides_runpath=no11129 save_LDFLAGS=$LDFLAGS11130 save_libdir=$libdir11131 eval "libdir=/foo; wl=\"$lt_prog_compiler_wl\"; \11132 LDFLAGS=\"\$LDFLAGS $hardcode_libdir_flag_spec\""11133 cat confdefs.h - <<_ACEOF >conftest.$ac_ext11134 /* end confdefs.h. */11135 11136 int11137 main ()11138 {11139 11140 ;11141 return 0;11142 }11143 _ACEOF11144 if ac_fn_c_try_link "$LINENO"; then :11145 if ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null; then :11146 lt_cv_shlibpath_overrides_runpath=yes11147 fi11148 fi11149 rm -f core conftest.err conftest.$ac_objext \11150 conftest$ac_exeext conftest.$ac_ext11151 LDFLAGS=$save_LDFLAGS11152 libdir=$save_libdir11153 11154 fi11155 11156 shlibpath_overrides_runpath=$lt_cv_shlibpath_overrides_runpath11157 11158 # This implies no fast_install, which is unacceptable.11159 # Some rework will be needed to allow for fast_install11160 # before this can be enabled.11161 hardcode_into_libs=yes11162 11163 # Ideally, we could use ldconfig to report *all* directores which are11164 # searched for libraries, however this is still not possible. Aside from not11165 # being certain /sbin/ldconfig is available, command11166 # 'ldconfig -N -X -v | grep ^/' on 64bit Fedora does not report /usr/lib64,11167 # even though it is searched at run-time. Try to do the best guess by11168 # appending ld.so.conf contents (and includes) to the search path.11169 if test -f /etc/ld.so.conf; then11170 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' ' '`11171 sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"11172 fi11173 11174 # We used to test for /lib/ld.so.1 and disable shared libraries on11175 # powerpc, because MkLinux only supported shared libraries with the11176 # GNU dynamic linker. Since this was broken with cross compilers,11177 # most powerpc-linux boxes support dynamic linking these days and11178 # people can always --disable-shared, the test was removed, and we11179 # assume the GNU/Linux dynamic linker is in use.11180 dynamic_linker='GNU/Linux ld.so'11181 ;;11182 11183 netbsdelf*-gnu)11184 version_type=linux11185 need_lib_prefix=no11186 need_version=no11187 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'11188 soname_spec='${libname}${release}${shared_ext}$major'11189 shlibpath_var=LD_LIBRARY_PATH11190 shlibpath_overrides_runpath=no11191 hardcode_into_libs=yes11192 dynamic_linker='NetBSD ld.elf_so'11193 ;;11194 11195 netbsd*)11196 version_type=sunos11197 need_lib_prefix=no11198 need_version=no11199 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then11200 library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'11201 finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'11202 dynamic_linker='NetBSD (a.out) ld.so'11203 else11204 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'11205 soname_spec='$libname$release$shared_ext$major'11206 dynamic_linker='NetBSD ld.elf_so'11207 fi11208 shlibpath_var=LD_LIBRARY_PATH11209 shlibpath_overrides_runpath=yes11210 hardcode_into_libs=yes11211 ;;11212 11213 newsos6)11214 version_type=linux # correct to gnu/linux during the next big refactor11215 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'11216 shlibpath_var=LD_LIBRARY_PATH11217 shlibpath_overrides_runpath=yes11218 ;;11219 11220 *nto* | *qnx*)11221 version_type=qnx11222 need_lib_prefix=no11223 need_version=no11224 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'11225 soname_spec='$libname$release$shared_ext$major'11226 shlibpath_var=LD_LIBRARY_PATH11227 shlibpath_overrides_runpath=no11228 hardcode_into_libs=yes11229 dynamic_linker='ldqnx.so'11230 ;;11231 11232 openbsd* | bitrig*)11233 version_type=sunos11234 sys_lib_dlsearch_path_spec=/usr/lib11235 need_lib_prefix=no11236 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then11237 need_version=no11238 else11239 need_version=yes11240 fi11241 library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'11242 finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'11243 shlibpath_var=LD_LIBRARY_PATH11244 shlibpath_overrides_runpath=yes11245 ;;11246 11247 os2*)11248 libname_spec='$name'11249 version_type=windows11250 shrext_cmds=.dll11251 need_version=no11252 need_lib_prefix=no11253 # OS/2 can only load a DLL with a base name of 8 characters or less.11254 soname_spec='`test -n "$os2dllname" && libname="$os2dllname";11255 v=$($ECHO $release$versuffix | tr -d .-);11256 n=$($ECHO $libname | cut -b -$((8 - ${#v})) | tr . _);11257 $ECHO $n$v`$shared_ext'11258 library_names_spec='${libname}_dll.$libext'11259 dynamic_linker='OS/2 ld.exe'11260 shlibpath_var=BEGINLIBPATH11261 sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"11262 sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec11263 postinstall_cmds='base_file=`basename \$file`~11264 dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; $ECHO \$dlname'\''`~11265 dldir=$destdir/`dirname \$dlpath`~11266 test -d \$dldir || mkdir -p \$dldir~11267 $install_prog $dir/$dlname \$dldir/$dlname~11268 chmod a+x \$dldir/$dlname~11269 if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then11270 eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;11271 fi'11272 postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; $ECHO \$dlname'\''`~11273 dlpath=$dir/\$dldll~11274 $RM \$dlpath'11275 ;;11276 11277 osf3* | osf4* | osf5*)11278 version_type=osf11279 need_lib_prefix=no11280 need_version=no11281 soname_spec='$libname$release$shared_ext$major'11282 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'11283 shlibpath_var=LD_LIBRARY_PATH11284 sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"11285 sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec11286 ;;11287 11288 rdos*)11289 dynamic_linker=no11290 ;;11291 11292 solaris*)11293 version_type=linux # correct to gnu/linux during the next big refactor11294 need_lib_prefix=no11295 need_version=no11296 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'11297 soname_spec='$libname$release$shared_ext$major'11298 shlibpath_var=LD_LIBRARY_PATH11299 shlibpath_overrides_runpath=yes11300 hardcode_into_libs=yes11301 # ldd complains unless libraries are executable11302 postinstall_cmds='chmod +x $lib'11303 ;;11304 11305 sunos4*)11306 version_type=sunos11307 library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'11308 finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'11309 shlibpath_var=LD_LIBRARY_PATH11310 shlibpath_overrides_runpath=yes11311 if test yes = "$with_gnu_ld"; then11312 need_lib_prefix=no11313 fi11314 need_version=yes11315 ;;11316 11317 sysv4 | sysv4.3*)11318 version_type=linux # correct to gnu/linux during the next big refactor11319 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'11320 soname_spec='$libname$release$shared_ext$major'11321 shlibpath_var=LD_LIBRARY_PATH11322 case $host_vendor in11323 sni)11324 shlibpath_overrides_runpath=no11325 need_lib_prefix=no11326 runpath_var=LD_RUN_PATH11327 ;;11328 siemens)11329 need_lib_prefix=no11330 ;;11331 motorola)11332 need_lib_prefix=no11333 need_version=no11334 shlibpath_overrides_runpath=no11335 sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'11336 ;;11337 esac11338 ;;11339 11340 sysv4*MP*)11341 if test -d /usr/nec; then11342 version_type=linux # correct to gnu/linux during the next big refactor11343 library_names_spec='$libname$shared_ext.$versuffix $libname$shared_ext.$major $libname$shared_ext'11344 soname_spec='$libname$shared_ext.$major'11345 shlibpath_var=LD_LIBRARY_PATH11346 fi11347 ;;11348 11349 sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)11350 version_type=sco11351 need_lib_prefix=no11352 need_version=no11353 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext $libname$shared_ext'11354 soname_spec='$libname$release$shared_ext$major'11355 shlibpath_var=LD_LIBRARY_PATH11356 shlibpath_overrides_runpath=yes11357 hardcode_into_libs=yes11358 if test yes = "$with_gnu_ld"; then11359 sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib'11360 else11361 sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'11362 case $host_os in11363 sco3.2v5*)11364 sys_lib_search_path_spec="$sys_lib_search_path_spec /lib"11365 ;;11366 esac11367 fi11368 sys_lib_dlsearch_path_spec='/usr/lib'11369 ;;11370 11371 tpf*)11372 # TPF is a cross-target only. Preferred cross-host = GNU/Linux.11373 version_type=linux # correct to gnu/linux during the next big refactor11374 need_lib_prefix=no11375 need_version=no11376 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'11377 shlibpath_var=LD_LIBRARY_PATH11378 shlibpath_overrides_runpath=no11379 hardcode_into_libs=yes11380 ;;11381 11382 uts4*)11383 version_type=linux # correct to gnu/linux during the next big refactor11384 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'11385 soname_spec='$libname$release$shared_ext$major'11386 shlibpath_var=LD_LIBRARY_PATH11387 ;;11388 11389 *)11390 dynamic_linker=no11391 ;;11392 esac11393 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $dynamic_linker" >&511394 $as_echo "$dynamic_linker" >&6; }11395 test no = "$dynamic_linker" && can_build_shared=no11396 11397 variables_saved_for_relink="PATH $shlibpath_var $runpath_var"11398 if test yes = "$GCC"; then11399 variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"11400 fi11401 11402 if test set = "${lt_cv_sys_lib_search_path_spec+set}"; then11403 sys_lib_search_path_spec=$lt_cv_sys_lib_search_path_spec11404 fi11405 11406 if test set = "${lt_cv_sys_lib_dlsearch_path_spec+set}"; then11407 sys_lib_dlsearch_path_spec=$lt_cv_sys_lib_dlsearch_path_spec11408 fi11409 11410 # remember unaugmented sys_lib_dlsearch_path content for libtool script decls...11411 configure_time_dlsearch_path=$sys_lib_dlsearch_path_spec11412 11413 # ... but it needs LT_SYS_LIBRARY_PATH munging for other configure-time code11414 func_munge_path_list sys_lib_dlsearch_path_spec "$LT_SYS_LIBRARY_PATH"11415 11416 # to be used as default LT_SYS_LIBRARY_PATH value in generated libtool11417 configure_time_lt_sys_library_path=$LT_SYS_LIBRARY_PATH11418 11419 11420 11421 11422 11423 11424 11425 11426 11427 11428 11429 11430 11431 11432 11433 11434 11435 11436 11437 11438 11439 11440 11441 11442 11443 11444 11445 11446 11447 11448 11449 11450 11451 11452 11453 11454 11455 11456 11457 11458 11459 11460 11461 11462 11463 11464 11465 11466 11467 11468 11469 11470 11471 11472 11473 11474 11475 11476 11477 11478 11479 11480 11481 11482 11483 11484 11485 11486 11487 11488 11489 11490 11491 11492 11493 11494 11495 11496 11497 11498 11499 11500 11501 11502 11503 11504 11505 11506 11507 11508 11509 11510 11511 11512 11513 11514 11515 { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to hardcode library paths into programs" >&511516 $as_echo_n "checking how to hardcode library paths into programs... " >&6; }11517 hardcode_action=11518 if test -n "$hardcode_libdir_flag_spec" ||11519 test -n "$runpath_var" ||11520 test yes = "$hardcode_automatic"; then11521 11522 # We can hardcode non-existent directories.11523 if test no != "$hardcode_direct" &&11524 # If the only mechanism to avoid hardcoding is shlibpath_var, we11525 # have to relink, otherwise we might link with an installed library11526 # when we should be linking with a yet-to-be-installed one11527 ## test no != "$_LT_TAGVAR(hardcode_shlibpath_var, )" &&11528 test no != "$hardcode_minus_L"; then11529 # Linking always hardcodes the temporary library directory.11530 hardcode_action=relink11531 else11532 # We can link without hardcoding, and we can hardcode nonexisting dirs.11533 hardcode_action=immediate11534 fi11535 else11536 # We cannot hardcode anything, or else we can only hardcode existing11537 # directories.11538 hardcode_action=unsupported11539 fi11540 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $hardcode_action" >&511541 $as_echo "$hardcode_action" >&6; }11542 11543 if test relink = "$hardcode_action" ||11544 test yes = "$inherit_rpath"; then11545 # Fast installation is not supported11546 enable_fast_install=no11547 elif test yes = "$shlibpath_overrides_runpath" ||11548 test no = "$enable_shared"; then11549 # Fast installation is not necessary11550 enable_fast_install=needless11551 fi11552 11553 11554 11555 11556 11557 11558 if test yes != "$enable_dlopen"; then11559 enable_dlopen=unknown11560 enable_dlopen_self=unknown11561 enable_dlopen_self_static=unknown11562 else11563 lt_cv_dlopen=no11564 lt_cv_dlopen_libs=11565 11566 case $host_os in11567 beos*)11568 lt_cv_dlopen=load_add_on11569 lt_cv_dlopen_libs=11570 lt_cv_dlopen_self=yes11571 ;;11572 11573 mingw* | pw32* | cegcc*)11574 lt_cv_dlopen=LoadLibrary11575 lt_cv_dlopen_libs=11576 ;;11577 11578 cygwin*)11579 lt_cv_dlopen=dlopen11580 lt_cv_dlopen_libs=11581 ;;11582 11583 darwin*)11584 # if libdl is installed we need to link against it11585 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&511586 $as_echo_n "checking for dlopen in -ldl... " >&6; }11587 if ${ac_cv_lib_dl_dlopen+:} false; then :11588 $as_echo_n "(cached) " >&611589 else11590 ac_check_lib_save_LIBS=$LIBS11591 LIBS="-ldl $LIBS"11592 cat confdefs.h - <<_ACEOF >conftest.$ac_ext11593 /* end confdefs.h. */11594 11595 /* Override any GCC internal prototype to avoid an error.11596 Use char because int might match the return type of a GCC11597 builtin and then its argument prototype would still apply. */11598 #ifdef __cplusplus11599 extern "C"11600 #endif11601 char dlopen ();11602 int11603 main ()11604 {11605 return dlopen ();11606 ;11607 return 0;11608 }11609 _ACEOF11610 if ac_fn_c_try_link "$LINENO"; then :11611 ac_cv_lib_dl_dlopen=yes11612 else11613 ac_cv_lib_dl_dlopen=no11614 fi11615 rm -f core conftest.err conftest.$ac_objext \11616 conftest$ac_exeext conftest.$ac_ext11617 LIBS=$ac_check_lib_save_LIBS11618 fi11619 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&511620 $as_echo "$ac_cv_lib_dl_dlopen" >&6; }11621 if test "x$ac_cv_lib_dl_dlopen" = xyes; then :11622 lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl11623 else11624 11625 lt_cv_dlopen=dyld11626 lt_cv_dlopen_libs=11627 lt_cv_dlopen_self=yes11628 11629 fi11630 11631 ;;11632 11633 tpf*)11634 # Don't try to run any link tests for TPF. We know it's impossible11635 # because TPF is a cross-compiler, and we know how we open DSOs.11636 lt_cv_dlopen=dlopen11637 lt_cv_dlopen_libs=11638 lt_cv_dlopen_self=no11639 ;;11640 11641 *)11642 ac_fn_c_check_func "$LINENO" "shl_load" "ac_cv_func_shl_load"11643 if test "x$ac_cv_func_shl_load" = xyes; then :11644 lt_cv_dlopen=shl_load11645 else11646 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for shl_load in -ldld" >&511647 $as_echo_n "checking for shl_load in -ldld... " >&6; }11648 if ${ac_cv_lib_dld_shl_load+:} false; then :11649 $as_echo_n "(cached) " >&611650 else11651 ac_check_lib_save_LIBS=$LIBS11652 LIBS="-ldld $LIBS"11653 cat confdefs.h - <<_ACEOF >conftest.$ac_ext11654 /* end confdefs.h. */11655 11656 /* Override any GCC internal prototype to avoid an error.11657 Use char because int might match the return type of a GCC11658 builtin and then its argument prototype would still apply. */11659 #ifdef __cplusplus11660 extern "C"11661 #endif11662 char shl_load ();11663 int11664 main ()11665 {11666 return shl_load ();11667 ;11668 return 0;11669 }11670 _ACEOF11671 if ac_fn_c_try_link "$LINENO"; then :11672 ac_cv_lib_dld_shl_load=yes11673 else11674 ac_cv_lib_dld_shl_load=no11675 fi11676 rm -f core conftest.err conftest.$ac_objext \11677 conftest$ac_exeext conftest.$ac_ext11678 LIBS=$ac_check_lib_save_LIBS11679 fi11680 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_shl_load" >&511681 $as_echo "$ac_cv_lib_dld_shl_load" >&6; }11682 if test "x$ac_cv_lib_dld_shl_load" = xyes; then :11683 lt_cv_dlopen=shl_load lt_cv_dlopen_libs=-ldld11684 else11685 ac_fn_c_check_func "$LINENO" "dlopen" "ac_cv_func_dlopen"11686 if test "x$ac_cv_func_dlopen" = xyes; then :11687 lt_cv_dlopen=dlopen11688 else11689 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&511690 $as_echo_n "checking for dlopen in -ldl... " >&6; }11691 if ${ac_cv_lib_dl_dlopen+:} false; then :11692 $as_echo_n "(cached) " >&611693 else11694 ac_check_lib_save_LIBS=$LIBS11695 LIBS="-ldl $LIBS"11696 cat confdefs.h - <<_ACEOF >conftest.$ac_ext11697 /* end confdefs.h. */11698 11699 /* Override any GCC internal prototype to avoid an error.11700 Use char because int might match the return type of a GCC11701 builtin and then its argument prototype would still apply. */11702 #ifdef __cplusplus11703 extern "C"11704 #endif11705 char dlopen ();11706 int11707 main ()11708 {11709 return dlopen ();11710 ;11711 return 0;11712 }11713 _ACEOF11714 if ac_fn_c_try_link "$LINENO"; then :11715 ac_cv_lib_dl_dlopen=yes11716 else11717 ac_cv_lib_dl_dlopen=no11718 fi11719 rm -f core conftest.err conftest.$ac_objext \11720 conftest$ac_exeext conftest.$ac_ext11721 LIBS=$ac_check_lib_save_LIBS11722 fi11723 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&511724 $as_echo "$ac_cv_lib_dl_dlopen" >&6; }11725 if test "x$ac_cv_lib_dl_dlopen" = xyes; then :11726 lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl11727 else11728 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -lsvld" >&511729 $as_echo_n "checking for dlopen in -lsvld... " >&6; }11730 if ${ac_cv_lib_svld_dlopen+:} false; then :11731 $as_echo_n "(cached) " >&611732 else11733 ac_check_lib_save_LIBS=$LIBS11734 LIBS="-lsvld $LIBS"11735 cat confdefs.h - <<_ACEOF >conftest.$ac_ext11736 /* end confdefs.h. */11737 11738 /* Override any GCC internal prototype to avoid an error.11739 Use char because int might match the return type of a GCC11740 builtin and then its argument prototype would still apply. */11741 #ifdef __cplusplus11742 extern "C"11743 #endif11744 char dlopen ();11745 int11746 main ()11747 {11748 return dlopen ();11749 ;11750 return 0;11751 }11752 _ACEOF11753 if ac_fn_c_try_link "$LINENO"; then :11754 ac_cv_lib_svld_dlopen=yes11755 else11756 ac_cv_lib_svld_dlopen=no11757 fi11758 rm -f core conftest.err conftest.$ac_objext \11759 conftest$ac_exeext conftest.$ac_ext11760 LIBS=$ac_check_lib_save_LIBS11761 fi11762 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_svld_dlopen" >&511763 $as_echo "$ac_cv_lib_svld_dlopen" >&6; }11764 if test "x$ac_cv_lib_svld_dlopen" = xyes; then :11765 lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-lsvld11766 else11767 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dld_link in -ldld" >&511768 $as_echo_n "checking for dld_link in -ldld... " >&6; }11769 if ${ac_cv_lib_dld_dld_link+:} false; then :11770 $as_echo_n "(cached) " >&611771 else11772 ac_check_lib_save_LIBS=$LIBS11773 LIBS="-ldld $LIBS"11774 cat confdefs.h - <<_ACEOF >conftest.$ac_ext11775 /* end confdefs.h. */11776 11777 /* Override any GCC internal prototype to avoid an error.11778 Use char because int might match the return type of a GCC11779 builtin and then its argument prototype would still apply. */11780 #ifdef __cplusplus11781 extern "C"11782 #endif11783 char dld_link ();11784 int11785 main ()11786 {11787 return dld_link ();11788 ;11789 return 0;11790 }11791 _ACEOF11792 if ac_fn_c_try_link "$LINENO"; then :11793 ac_cv_lib_dld_dld_link=yes11794 else11795 ac_cv_lib_dld_dld_link=no11796 fi11797 rm -f core conftest.err conftest.$ac_objext \11798 conftest$ac_exeext conftest.$ac_ext11799 LIBS=$ac_check_lib_save_LIBS11800 fi11801 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_dld_link" >&511802 $as_echo "$ac_cv_lib_dld_dld_link" >&6; }11803 if test "x$ac_cv_lib_dld_dld_link" = xyes; then :11804 lt_cv_dlopen=dld_link lt_cv_dlopen_libs=-ldld11805 fi11806 11807 11808 fi11809 11810 11811 fi11812 11813 11814 fi11815 11816 11817 fi11818 11819 11820 fi11821 11822 ;;11823 esac11824 11825 if test no = "$lt_cv_dlopen"; then11826 enable_dlopen=no11827 else11828 enable_dlopen=yes11829 fi11830 11831 case $lt_cv_dlopen in11832 dlopen)11833 save_CPPFLAGS=$CPPFLAGS11834 test yes = "$ac_cv_header_dlfcn_h" && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"11835 11836 save_LDFLAGS=$LDFLAGS11837 wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"11838 11839 save_LIBS=$LIBS11840 LIBS="$lt_cv_dlopen_libs $LIBS"11841 11842 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a program can dlopen itself" >&511843 $as_echo_n "checking whether a program can dlopen itself... " >&6; }11844 if ${lt_cv_dlopen_self+:} false; then :11845 $as_echo_n "(cached) " >&611846 else11847 if test yes = "$cross_compiling"; then :11848 lt_cv_dlopen_self=cross11849 else11850 lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=211851 lt_status=$lt_dlunknown11852 cat > conftest.$ac_ext <<_LT_EOF11853 #line $LINENO "configure"11854 #include "confdefs.h"11855 11856 #if HAVE_DLFCN_H11857 #include <dlfcn.h>11858 #endif11859 11860 #include <stdio.h>11861 11862 #ifdef RTLD_GLOBAL11863 # define LT_DLGLOBAL RTLD_GLOBAL11864 #else11865 # ifdef DL_GLOBAL11866 # define LT_DLGLOBAL DL_GLOBAL11867 # else11868 # define LT_DLGLOBAL 011869 # endif11870 #endif11871 11872 /* We may have to define LT_DLLAZY_OR_NOW in the command line if we11873 find out it does not work in some platform. */11874 #ifndef LT_DLLAZY_OR_NOW11875 # ifdef RTLD_LAZY11876 # define LT_DLLAZY_OR_NOW RTLD_LAZY11877 # else11878 # ifdef DL_LAZY11879 # define LT_DLLAZY_OR_NOW DL_LAZY11880 # else11881 # ifdef RTLD_NOW11882 # define LT_DLLAZY_OR_NOW RTLD_NOW11883 # else11884 # ifdef DL_NOW11885 # define LT_DLLAZY_OR_NOW DL_NOW11886 # else11887 # define LT_DLLAZY_OR_NOW 011888 # endif11889 # endif11890 # endif11891 # endif11892 #endif11893 11894 /* When -fvisibility=hidden is used, assume the code has been annotated11895 correspondingly for the symbols needed. */11896 #if defined __GNUC__ && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))11897 int fnord () __attribute__((visibility("default")));11898 #endif11899 11900 int fnord () { return 42; }11901 int main ()11902 {11903 void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);11904 int status = $lt_dlunknown;11905 11906 if (self)11907 {11908 if (dlsym (self,"fnord")) status = $lt_dlno_uscore;11909 else11910 {11911 if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;11912 else puts (dlerror ());11913 }11914 /* dlclose (self); */11915 }11916 else11917 puts (dlerror ());11918 11919 return status;11920 }11921 _LT_EOF11922 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&511923 (eval $ac_link) 2>&511924 ac_status=$?11925 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&511926 test $ac_status = 0; } && test -s "conftest$ac_exeext" 2>/dev/null; then11927 (./conftest; exit; ) >&5 2>/dev/null11928 lt_status=$?11929 case x$lt_status in11930 x$lt_dlno_uscore) lt_cv_dlopen_self=yes ;;11931 x$lt_dlneed_uscore) lt_cv_dlopen_self=yes ;;11932 x$lt_dlunknown|x*) lt_cv_dlopen_self=no ;;11933 esac11934 else :11935 # compilation failed11936 lt_cv_dlopen_self=no11937 fi11938 fi11939 rm -fr conftest*11940 11941 11942 fi11943 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self" >&511944 $as_echo "$lt_cv_dlopen_self" >&6; }11945 11946 if test yes = "$lt_cv_dlopen_self"; then11947 wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\"11948 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a statically linked program can dlopen itself" >&511949 $as_echo_n "checking whether a statically linked program can dlopen itself... " >&6; }11950 if ${lt_cv_dlopen_self_static+:} false; then :11951 $as_echo_n "(cached) " >&611952 else11953 if test yes = "$cross_compiling"; then :11954 lt_cv_dlopen_self_static=cross11955 else11956 lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=211957 lt_status=$lt_dlunknown11958 cat > conftest.$ac_ext <<_LT_EOF11959 #line $LINENO "configure"11960 #include "confdefs.h"11961 11962 #if HAVE_DLFCN_H11963 #include <dlfcn.h>11964 #endif11965 11966 #include <stdio.h>11967 11968 #ifdef RTLD_GLOBAL11969 # define LT_DLGLOBAL RTLD_GLOBAL11970 #else11971 # ifdef DL_GLOBAL11972 # define LT_DLGLOBAL DL_GLOBAL11973 # else11974 # define LT_DLGLOBAL 011975 # endif11976 #endif11977 11978 /* We may have to define LT_DLLAZY_OR_NOW in the command line if we11979 find out it does not work in some platform. */11980 #ifndef LT_DLLAZY_OR_NOW11981 # ifdef RTLD_LAZY11982 # define LT_DLLAZY_OR_NOW RTLD_LAZY11983 # else11984 # ifdef DL_LAZY11985 # define LT_DLLAZY_OR_NOW DL_LAZY11986 # else11987 # ifdef RTLD_NOW11988 # define LT_DLLAZY_OR_NOW RTLD_NOW11989 # else11990 # ifdef DL_NOW11991 # define LT_DLLAZY_OR_NOW DL_NOW11992 # else11993 # define LT_DLLAZY_OR_NOW 011994 # endif11995 # endif11996 # endif11997 # endif11998 #endif11999 12000 /* When -fvisibility=hidden is used, assume the code has been annotated12001 correspondingly for the symbols needed. */12002 #if defined __GNUC__ && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))12003 int fnord () __attribute__((visibility("default")));12004 #endif12005 12006 int fnord () { return 42; }12007 int main ()12008 {12009 void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);12010 int status = $lt_dlunknown;12011 12012 if (self)12013 {12014 if (dlsym (self,"fnord")) status = $lt_dlno_uscore;12015 else12016 {12017 if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;12018 else puts (dlerror ());12019 }12020 /* dlclose (self); */12021 }12022 else12023 puts (dlerror ());12024 12025 return status;12026 }12027 _LT_EOF12028 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&512029 (eval $ac_link) 2>&512030 ac_status=$?12031 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&512032 test $ac_status = 0; } && test -s "conftest$ac_exeext" 2>/dev/null; then12033 (./conftest; exit; ) >&5 2>/dev/null12034 lt_status=$?12035 case x$lt_status in12036 x$lt_dlno_uscore) lt_cv_dlopen_self_static=yes ;;12037 x$lt_dlneed_uscore) lt_cv_dlopen_self_static=yes ;;12038 x$lt_dlunknown|x*) lt_cv_dlopen_self_static=no ;;12039 esac12040 else :12041 # compilation failed12042 lt_cv_dlopen_self_static=no12043 fi12044 fi12045 rm -fr conftest*12046 12047 12048 fi12049 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self_static" >&512050 $as_echo "$lt_cv_dlopen_self_static" >&6; }12051 fi12052 12053 CPPFLAGS=$save_CPPFLAGS12054 LDFLAGS=$save_LDFLAGS12055 LIBS=$save_LIBS12056 ;;12057 esac12058 12059 case $lt_cv_dlopen_self in12060 yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;12061 *) enable_dlopen_self=unknown ;;12062 esac12063 12064 case $lt_cv_dlopen_self_static in12065 yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;12066 *) enable_dlopen_self_static=unknown ;;12067 esac12068 fi12069 12070 12071 12072 12073 12074 12075 12076 12077 12078 12079 12080 12081 12082 12083 12084 12085 12086 striplib=12087 old_striplib=12088 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether stripping libraries is possible" >&512089 $as_echo_n "checking whether stripping libraries is possible... " >&6; }12090 if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then12091 test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"12092 test -z "$striplib" && striplib="$STRIP --strip-unneeded"12093 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&512094 $as_echo "yes" >&6; }12095 else12096 # FIXME - insert some real tests, host_os isn't really good enough12097 case $host_os in12098 darwin*)12099 if test -n "$STRIP"; then12100 striplib="$STRIP -x"12101 old_striplib="$STRIP -S"12102 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&512103 $as_echo "yes" >&6; }12104 else12105 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&512106 $as_echo "no" >&6; }12107 fi12108 ;;12109 *)12110 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&512111 $as_echo "no" >&6; }12112 ;;12113 esac12114 fi12115 12116 12117 12118 12119 12120 12121 12122 12123 12124 12125 12126 12127 # Report what library types will actually be built12128 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libtool supports shared libraries" >&512129 $as_echo_n "checking if libtool supports shared libraries... " >&6; }12130 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $can_build_shared" >&512131 $as_echo "$can_build_shared" >&6; }12132 12133 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build shared libraries" >&512134 $as_echo_n "checking whether to build shared libraries... " >&6; }12135 test no = "$can_build_shared" && enable_shared=no12136 12137 # On AIX, shared libraries and static libraries use the same namespace, and12138 # are all built from PIC.12139 case $host_os in12140 aix3*)12141 test yes = "$enable_shared" && enable_static=no12142 if test -n "$RANLIB"; then12143 archive_cmds="$archive_cmds~\$RANLIB \$lib"12144 postinstall_cmds='$RANLIB $lib'12145 fi12146 ;;12147 12148 aix[4-9]*)12149 if test ia64 != "$host_cpu"; then12150 case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in12151 yes,aix,yes) ;; # shared object as lib.so file only12152 yes,svr4,*) ;; # shared object as lib.so archive member only12153 yes,*) enable_static=no ;; # shared object in lib.a archive as well12154 esac12155 fi12156 ;;12157 esac12158 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_shared" >&512159 $as_echo "$enable_shared" >&6; }12160 12161 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build static libraries" >&512162 $as_echo_n "checking whether to build static libraries... " >&6; }12163 # Make sure either enable_shared or enable_static is yes.12164 test yes = "$enable_shared" || enable_static=yes12165 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_static" >&512166 $as_echo "$enable_static" >&6; }12167 12168 12169 12170 12171 fi12172 ac_ext=c12173 ac_cpp='$CPP $CPPFLAGS'12174 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'12175 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'12176 ac_compiler_gnu=$ac_cv_c_compiler_gnu12177 12178 CC=$lt_save_CC12179 12180 12181 12182 12183 12184 12185 12186 12187 12188 12189 12190 12191 12192 12193 12194 ac_config_commands="$ac_config_commands libtool"12195 12196 12197 12198 12199 # Only expand once:12200 12201 12202 12203 ac_ext=cpp12204 ac_cpp='$CXXCPP $CPPFLAGS'12205 ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'12206 ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'12207 ac_compiler_gnu=$ac_cv_cxx_compiler_gnu12208 if test -z "$CXX"; then12209 if test -n "$CCC"; then12210 CXX=$CCC12211 else12212 if test -n "$ac_tool_prefix"; then12213 for ac_prog in g++ c++ gpp aCC CC cxx cc++ cl.exe FCC KCC RCC xlC_r xlC12214 do12215 # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.12216 set dummy $ac_tool_prefix$ac_prog; ac_word=$212217 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&512218 $as_echo_n "checking for $ac_word... " >&6; }12219 if ${ac_cv_prog_CXX+:} false; then :12220 $as_echo_n "(cached) " >&612221 else12222 if test -n "$CXX"; then12223 ac_cv_prog_CXX="$CXX" # Let the user override the test.12224 else12225 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR12226 for as_dir in $PATH12227 do12228 IFS=$as_save_IFS12229 test -z "$as_dir" && as_dir=.12230 for ac_exec_ext in '' $ac_executable_extensions; do12231 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then12232 ac_cv_prog_CXX="$ac_tool_prefix$ac_prog"12233 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&512234 break 212235 fi12236 done12237 done12238 IFS=$as_save_IFS12239 12240 fi12241 fi12242 CXX=$ac_cv_prog_CXX12243 if test -n "$CXX"; then12244 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CXX" >&512245 $as_echo "$CXX" >&6; }12246 else12247 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&512248 $as_echo "no" >&6; }12249 fi12250 12251 12252 test -n "$CXX" && break12253 done12254 fi12255 if test -z "$CXX"; then12256 ac_ct_CXX=$CXX12257 for ac_prog in g++ c++ gpp aCC CC cxx cc++ cl.exe FCC KCC RCC xlC_r xlC12258 do12259 # Extract the first word of "$ac_prog", so it can be a program name with args.12260 set dummy $ac_prog; ac_word=$212261 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&512262 $as_echo_n "checking for $ac_word... " >&6; }12263 if ${ac_cv_prog_ac_ct_CXX+:} false; then :12264 $as_echo_n "(cached) " >&612265 else12266 if test -n "$ac_ct_CXX"; then12267 ac_cv_prog_ac_ct_CXX="$ac_ct_CXX" # Let the user override the test.12268 else12269 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR12270 for as_dir in $PATH12271 do12272 IFS=$as_save_IFS12273 test -z "$as_dir" && as_dir=.12274 for ac_exec_ext in '' $ac_executable_extensions; do12275 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then12276 ac_cv_prog_ac_ct_CXX="$ac_prog"12277 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&512278 break 212279 fi12280 done12281 done12282 IFS=$as_save_IFS12283 12284 fi12285 fi12286 ac_ct_CXX=$ac_cv_prog_ac_ct_CXX12287 if test -n "$ac_ct_CXX"; then12288 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CXX" >&512289 $as_echo "$ac_ct_CXX" >&6; }12290 else12291 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&512292 $as_echo "no" >&6; }12293 fi12294 12295 12296 test -n "$ac_ct_CXX" && break12297 done12298 12299 if test "x$ac_ct_CXX" = x; then12300 CXX="g++"12301 else12302 case $cross_compiling:$ac_tool_warned in12303 yes:)12304 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&512305 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}12306 ac_tool_warned=yes ;;12307 esac12308 CXX=$ac_ct_CXX12309 fi12310 fi12311 12312 fi12313 fi12314 # Provide some information about the compiler.12315 $as_echo "$as_me:${as_lineno-$LINENO}: checking for C++ compiler version" >&512316 set X $ac_compile12317 ac_compiler=$212318 for ac_option in --version -v -V -qversion; do12319 { { ac_try="$ac_compiler $ac_option >&5"12320 case "(($ac_try" in12321 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;12322 *) ac_try_echo=$ac_try;;12323 esac12324 eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""12325 $as_echo "$ac_try_echo"; } >&512326 (eval "$ac_compiler $ac_option >&5") 2>conftest.err12327 ac_status=$?12328 if test -s conftest.err; then12329 sed '10a\12330 ... rest of stderr output deleted ...12331 10q' conftest.err >conftest.er112332 cat conftest.er1 >&512333 fi12334 rm -f conftest.er1 conftest.err12335 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&512336 test $ac_status = 0; }12337 done12338 12339 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C++ compiler" >&512340 $as_echo_n "checking whether we are using the GNU C++ compiler... " >&6; }12341 if ${ac_cv_cxx_compiler_gnu+:} false; then :12342 $as_echo_n "(cached) " >&612343 else12344 cat confdefs.h - <<_ACEOF >conftest.$ac_ext12345 /* end confdefs.h. */12346 12347 int12348 main ()12349 {12350 #ifndef __GNUC__12351 choke me12352 #endif12353 12354 ;12355 return 0;12356 }12357 _ACEOF12358 if ac_fn_cxx_try_compile "$LINENO"; then :12359 ac_compiler_gnu=yes12360 else12361 ac_compiler_gnu=no12362 fi12363 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext12364 ac_cv_cxx_compiler_gnu=$ac_compiler_gnu12365 12366 fi12367 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_cxx_compiler_gnu" >&512368 $as_echo "$ac_cv_cxx_compiler_gnu" >&6; }12369 if test $ac_compiler_gnu = yes; then12370 GXX=yes12371 else12372 GXX=12373 fi12374 ac_test_CXXFLAGS=${CXXFLAGS+set}12375 ac_save_CXXFLAGS=$CXXFLAGS12376 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CXX accepts -g" >&512377 $as_echo_n "checking whether $CXX accepts -g... " >&6; }12378 if ${ac_cv_prog_cxx_g+:} false; then :12379 $as_echo_n "(cached) " >&612380 else12381 ac_save_cxx_werror_flag=$ac_cxx_werror_flag12382 ac_cxx_werror_flag=yes12383 ac_cv_prog_cxx_g=no12384 CXXFLAGS="-g"12385 cat confdefs.h - <<_ACEOF >conftest.$ac_ext12386 /* end confdefs.h. */12387 12388 int12389 main ()12390 {12391 12392 ;12393 return 0;12394 }12395 _ACEOF12396 if ac_fn_cxx_try_compile "$LINENO"; then :12397 ac_cv_prog_cxx_g=yes12398 else12399 CXXFLAGS=""12400 cat confdefs.h - <<_ACEOF >conftest.$ac_ext12401 /* end confdefs.h. */12402 12403 int12404 main ()12405 {12406 12407 ;12408 return 0;12409 }12410 _ACEOF12411 if ac_fn_cxx_try_compile "$LINENO"; then :12412 12413 else12414 ac_cxx_werror_flag=$ac_save_cxx_werror_flag12415 CXXFLAGS="-g"12416 cat confdefs.h - <<_ACEOF >conftest.$ac_ext12417 /* end confdefs.h. */12418 12419 int12420 main ()12421 {12422 12423 ;12424 return 0;12425 }12426 _ACEOF12427 if ac_fn_cxx_try_compile "$LINENO"; then :12428 ac_cv_prog_cxx_g=yes12429 fi12430 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext12431 fi12432 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext12433 fi12434 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext12435 ac_cxx_werror_flag=$ac_save_cxx_werror_flag12436 fi12437 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cxx_g" >&512438 $as_echo "$ac_cv_prog_cxx_g" >&6; }12439 if test "$ac_test_CXXFLAGS" = set; then12440 CXXFLAGS=$ac_save_CXXFLAGS12441 elif test $ac_cv_prog_cxx_g = yes; then12442 if test "$GXX" = yes; then12443 CXXFLAGS="-g -O2"12444 else12445 CXXFLAGS="-g"12446 fi12447 else12448 if test "$GXX" = yes; then12449 CXXFLAGS="-O2"12450 else12451 CXXFLAGS=12452 fi12453 fi12454 ac_ext=c12455 ac_cpp='$CPP $CPPFLAGS'12456 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'12457 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'12458 ac_compiler_gnu=$ac_cv_c_compiler_gnu12459 12460 depcc="$CXX" am_compiler_list=12461 12462 { $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&512463 $as_echo_n "checking dependency style of $depcc... " >&6; }12464 if ${am_cv_CXX_dependencies_compiler_type+:} false; then :12465 $as_echo_n "(cached) " >&612466 else12467 if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then12468 # We make a subdir and do the tests there. Otherwise we can end up12469 # making bogus files that we don't know about and never remove. For12470 # instance it was reported that on HP-UX the gcc test will end up12471 # making a dummy file named 'D' -- because '-MD' means "put the output12472 # in D".12473 rm -rf conftest.dir12474 mkdir conftest.dir12475 # Copy depcomp to subdir because otherwise we won't find it if we're12476 # using a relative directory.12477 cp "$am_depcomp" conftest.dir12478 cd conftest.dir12479 # We will build objects and dependencies in a subdirectory because12480 # it helps to detect inapplicable dependency modes. For instance12481 # both Tru64's cc and ICC support -MD to output dependencies as a12482 # side effect of compilation, but ICC will put the dependencies in12483 # the current directory while Tru64 will put them in the object12484 # directory.12485 mkdir sub12486 12487 am_cv_CXX_dependencies_compiler_type=none12488 if test "$am_compiler_list" = ""; then12489 am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp`12490 fi12491 am__universal=false12492 case " $depcc " in #(12493 *\ -arch\ *\ -arch\ *) am__universal=true ;;12494 esac12495 12496 for depmode in $am_compiler_list; do12497 # Setup a source with many dependencies, because some compilers12498 # like to wrap large dependency lists on column 80 (with \), and12499 # we should not choose a depcomp mode which is confused by this.12500 #12501 # We need to recreate these files for each test, as the compiler may12502 # overwrite some of them when testing with obscure command lines.12503 # This happens at least with the AIX C compiler.12504 : > sub/conftest.c12505 for i in 1 2 3 4 5 6; do12506 echo '#include "conftst'$i'.h"' >> sub/conftest.c12507 # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with12508 # Solaris 10 /bin/sh.12509 echo '/* dummy */' > sub/conftst$i.h12510 done12511 echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf12512 12513 # We check with '-c' and '-o' for the sake of the "dashmstdout"12514 # mode. It turns out that the SunPro C++ compiler does not properly12515 # handle '-M -o', and we need to detect this. Also, some Intel12516 # versions had trouble with output in subdirs.12517 am__obj=sub/conftest.${OBJEXT-o}12518 am__minus_obj="-o $am__obj"12519 case $depmode in12520 gcc)12521 # This depmode causes a compiler race in universal mode.12522 test "$am__universal" = false || continue12523 ;;12524 nosideeffect)12525 # After this tag, mechanisms are not by side-effect, so they'll12526 # only be used when explicitly requested.12527 if test "x$enable_dependency_tracking" = xyes; then12528 continue12529 else12530 break12531 fi12532 ;;12533 msvc7 | msvc7msys | msvisualcpp | msvcmsys)12534 # This compiler won't grok '-c -o', but also, the minuso test has12535 # not run yet. These depmodes are late enough in the game, and12536 # so weak that their functioning should not be impacted.12537 am__obj=conftest.${OBJEXT-o}12538 am__minus_obj=12539 ;;12540 none) break ;;12541 esac12542 if depmode=$depmode \12543 source=sub/conftest.c object=$am__obj \12544 depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \12545 $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \12546 >/dev/null 2>conftest.err &&12547 grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 &&12548 grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&12549 grep $am__obj sub/conftest.Po > /dev/null 2>&1 &&12550 ${MAKE-make} -s -f confmf > /dev/null 2>&1; then12551 # icc doesn't choke on unknown options, it will just issue warnings12552 # or remarks (even with -Werror). So we grep stderr for any message12553 # that says an option was ignored or not supported.12554 # When given -MP, icc 7.0 and 7.1 complain thusly:12555 # icc: Command line warning: ignoring option '-M'; no argument required12556 # The diagnosis changed in icc 8.0:12557 # icc: Command line remark: option '-MP' not supported12558 if (grep 'ignoring option' conftest.err ||12559 grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else12560 am_cv_CXX_dependencies_compiler_type=$depmode12561 break12562 fi12563 fi12564 done12565 12566 cd ..12567 rm -rf conftest.dir12568 else12569 am_cv_CXX_dependencies_compiler_type=none12570 fi12571 12572 fi12573 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CXX_dependencies_compiler_type" >&512574 $as_echo "$am_cv_CXX_dependencies_compiler_type" >&6; }12575 CXXDEPMODE=depmode=$am_cv_CXX_dependencies_compiler_type12576 12577 if12578 test "x$enable_dependency_tracking" != xno \12579 && test "$am_cv_CXX_dependencies_compiler_type" = gcc3; then12580 am__fastdepCXX_TRUE=12581 am__fastdepCXX_FALSE='#'12582 else12583 am__fastdepCXX_TRUE='#'12584 am__fastdepCXX_FALSE=12585 fi12586 12587 12588 12589 12590 func_stripname_cnf ()12591 {12592 case $2 in12593 .*) func_stripname_result=`$ECHO "$3" | $SED "s%^$1%%; s%\\\\$2\$%%"`;;12594 *) func_stripname_result=`$ECHO "$3" | $SED "s%^$1%%; s%$2\$%%"`;;12595 esac12596 } # func_stripname_cnf12597 12598 if test -n "$CXX" && ( test no != "$CXX" &&12599 ( (test g++ = "$CXX" && `g++ -v >/dev/null 2>&1` ) ||12600 (test g++ != "$CXX"))); then12601 ac_ext=cpp12602 ac_cpp='$CXXCPP $CPPFLAGS'12603 ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'12604 ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'12605 ac_compiler_gnu=$ac_cv_cxx_compiler_gnu12606 { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C++ preprocessor" >&512607 $as_echo_n "checking how to run the C++ preprocessor... " >&6; }12608 if test -z "$CXXCPP"; then12609 if ${ac_cv_prog_CXXCPP+:} false; then :12610 $as_echo_n "(cached) " >&612611 else12612 # Double quotes because CXXCPP needs to be expanded12613 for CXXCPP in "$CXX -E" "/lib/cpp"12614 do12615 ac_preproc_ok=false12616 for ac_cxx_preproc_warn_flag in '' yes12617 do12618 # Use a header file that comes with gcc, so configuring glibc12619 # with a fresh cross-compiler works.12620 # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since12621 # <limits.h> exists even on freestanding compilers.12622 # On the NeXT, cc -E runs the code through the compiler's parser,12623 # not just through cpp. "Syntax error" is here to catch this case.12624 cat confdefs.h - <<_ACEOF >conftest.$ac_ext12625 /* end confdefs.h. */12626 #ifdef __STDC__12627 # include <limits.h>12628 #else12629 # include <assert.h>12630 #endif12631 Syntax error12632 _ACEOF12633 if ac_fn_cxx_try_cpp "$LINENO"; then :12634 12635 else12636 # Broken: fails on valid input.12637 continue12638 fi12639 rm -f conftest.err conftest.i conftest.$ac_ext12640 12641 # OK, works on sane cases. Now check whether nonexistent headers12642 # can be detected and how.12643 cat confdefs.h - <<_ACEOF >conftest.$ac_ext12644 /* end confdefs.h. */12645 #include <ac_nonexistent.h>12646 _ACEOF12647 if ac_fn_cxx_try_cpp "$LINENO"; then :12648 # Broken: success on invalid input.12649 continue12650 else12651 # Passes both tests.12652 ac_preproc_ok=:12653 break12654 fi12655 rm -f conftest.err conftest.i conftest.$ac_ext12656 12657 done12658 # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.12659 rm -f conftest.i conftest.err conftest.$ac_ext12660 if $ac_preproc_ok; then :12661 break12662 fi12663 12664 done12665 ac_cv_prog_CXXCPP=$CXXCPP12666 12667 fi12668 CXXCPP=$ac_cv_prog_CXXCPP12669 else12670 ac_cv_prog_CXXCPP=$CXXCPP12671 fi12672 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CXXCPP" >&512673 $as_echo "$CXXCPP" >&6; }12674 ac_preproc_ok=false12675 for ac_cxx_preproc_warn_flag in '' yes12676 do12677 # Use a header file that comes with gcc, so configuring glibc12678 # with a fresh cross-compiler works.12679 # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since12680 # <limits.h> exists even on freestanding compilers.12681 # On the NeXT, cc -E runs the code through the compiler's parser,12682 # not just through cpp. "Syntax error" is here to catch this case.12683 cat confdefs.h - <<_ACEOF >conftest.$ac_ext12684 /* end confdefs.h. */12685 #ifdef __STDC__12686 # include <limits.h>12687 #else12688 # include <assert.h>12689 #endif12690 Syntax error12691 _ACEOF12692 if ac_fn_cxx_try_cpp "$LINENO"; then :12693 12694 else12695 # Broken: fails on valid input.12696 continue12697 fi12698 rm -f conftest.err conftest.i conftest.$ac_ext12699 12700 # OK, works on sane cases. Now check whether nonexistent headers12701 # can be detected and how.12702 cat confdefs.h - <<_ACEOF >conftest.$ac_ext12703 /* end confdefs.h. */12704 #include <ac_nonexistent.h>12705 _ACEOF12706 if ac_fn_cxx_try_cpp "$LINENO"; then :12707 # Broken: success on invalid input.12708 continue12709 else12710 # Passes both tests.12711 ac_preproc_ok=:12712 break12713 fi12714 rm -f conftest.err conftest.i conftest.$ac_ext12715 12716 done12717 # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.12718 rm -f conftest.i conftest.err conftest.$ac_ext12719 if $ac_preproc_ok; then :12720 12721 else12722 { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&512723 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}12724 as_fn_error $? "C++ preprocessor \"$CXXCPP\" fails sanity check12725 See \`config.log' for more details" "$LINENO" 5; }12726 fi12727 12728 ac_ext=c12729 ac_cpp='$CPP $CPPFLAGS'12730 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'12731 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'12732 ac_compiler_gnu=$ac_cv_c_compiler_gnu12733 12734 else12735 _lt_caught_CXX_error=yes12736 fi12737 12738 ac_ext=cpp12739 ac_cpp='$CXXCPP $CPPFLAGS'12740 ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'12741 ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'12742 ac_compiler_gnu=$ac_cv_cxx_compiler_gnu12743 12744 archive_cmds_need_lc_CXX=no12745 allow_undefined_flag_CXX=12746 always_export_symbols_CXX=no12747 archive_expsym_cmds_CXX=12748 compiler_needs_object_CXX=no12749 export_dynamic_flag_spec_CXX=12750 hardcode_direct_CXX=no12751 hardcode_direct_absolute_CXX=no12752 hardcode_libdir_flag_spec_CXX=12753 hardcode_libdir_separator_CXX=12754 hardcode_minus_L_CXX=no12755 hardcode_shlibpath_var_CXX=unsupported12756 hardcode_automatic_CXX=no12757 inherit_rpath_CXX=no12758 module_cmds_CXX=12759 module_expsym_cmds_CXX=12760 link_all_deplibs_CXX=unknown12761 old_archive_cmds_CXX=$old_archive_cmds12762 reload_flag_CXX=$reload_flag12763 reload_cmds_CXX=$reload_cmds12764 no_undefined_flag_CXX=12765 whole_archive_flag_spec_CXX=12766 enable_shared_with_static_runtimes_CXX=no12767 12768 # Source file extension for C++ test sources.12769 ac_ext=cpp12770 12771 # Object file extension for compiled C++ test sources.12772 objext=o12773 objext_CXX=$objext12774 12775 # No sense in running all these tests if we already determined that12776 # the CXX compiler isn't working. Some variables (like enable_shared)12777 # are currently assumed to apply to all compilers on this platform,12778 # and will be corrupted by setting them based on a non-working compiler.12779 if test yes != "$_lt_caught_CXX_error"; then12780 # Code to be used in simple compile tests12781 lt_simple_compile_test_code="int some_variable = 0;"12782 12783 # Code to be used in simple link tests12784 lt_simple_link_test_code='int main(int, char *[]) { return(0); }'12785 12786 # ltmain only uses $CC for tagged configurations so make sure $CC is set.12787 12788 12789 12790 12791 12792 12793 # If no C compiler was specified, use CC.12794 LTCC=${LTCC-"$CC"}12795 12796 # If no C compiler flags were specified, use CFLAGS.12797 LTCFLAGS=${LTCFLAGS-"$CFLAGS"}12798 12799 # Allow CC to be a program name with arguments.12800 compiler=$CC12801 12802 12803 # save warnings/boilerplate of simple test code12804 ac_outfile=conftest.$ac_objext12805 echo "$lt_simple_compile_test_code" >conftest.$ac_ext12806 eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err12807 _lt_compiler_boilerplate=`cat conftest.err`12808 $RM conftest*12809 12810 ac_outfile=conftest.$ac_objext12811 echo "$lt_simple_link_test_code" >conftest.$ac_ext12812 eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err12813 _lt_linker_boilerplate=`cat conftest.err`12814 $RM -r conftest*12815 12816 12817 # Allow CC to be a program name with arguments.12818 lt_save_CC=$CC12819 lt_save_CFLAGS=$CFLAGS12820 lt_save_LD=$LD12821 lt_save_GCC=$GCC12822 GCC=$GXX12823 lt_save_with_gnu_ld=$with_gnu_ld12824 lt_save_path_LD=$lt_cv_path_LD12825 if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then12826 lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx12827 else12828 $as_unset lt_cv_prog_gnu_ld12829 fi12830 if test -n "${lt_cv_path_LDCXX+set}"; then12831 lt_cv_path_LD=$lt_cv_path_LDCXX12832 else12833 $as_unset lt_cv_path_LD12834 fi12835 test -z "${LDCXX+set}" || LD=$LDCXX12836 CC=${CXX-"c++"}12837 CFLAGS=$CXXFLAGS12838 compiler=$CC12839 compiler_CXX=$CC12840 func_cc_basename $compiler12841 cc_basename=$func_cc_basename_result12842 12843 12844 if test -n "$compiler"; then12845 # We don't want -fno-exception when compiling C++ code, so set the12846 # no_builtin_flag separately12847 if test yes = "$GXX"; then12848 lt_prog_compiler_no_builtin_flag_CXX=' -fno-builtin'12849 else12850 lt_prog_compiler_no_builtin_flag_CXX=12851 fi12852 12853 if test yes = "$GXX"; then12854 # Set up default GNU C++ configuration12855 12856 12857 12858 # Check whether --with-gnu-ld was given.12859 if test "${with_gnu_ld+set}" = set; then :12860 withval=$with_gnu_ld; test no = "$withval" || with_gnu_ld=yes12861 else12862 with_gnu_ld=no12863 fi12864 12865 ac_prog=ld12866 if test yes = "$GCC"; then12867 # Check if gcc -print-prog-name=ld gives a path.12868 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld used by $CC" >&512869 $as_echo_n "checking for ld used by $CC... " >&6; }12870 case $host in12871 *-*-mingw*)12872 # gcc leaves a trailing carriage return, which upsets mingw12873 ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;12874 *)12875 ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;12876 esac12877 case $ac_prog in12878 # Accept absolute paths.12879 [\\/]* | ?:[\\/]*)12880 re_direlt='/[^/][^/]*/\.\./'12881 # Canonicalize the pathname of ld12882 ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'`12883 while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do12884 ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"`12885 done12886 test -z "$LD" && LD=$ac_prog12887 ;;12888 "")12889 # If it fails, then pretend we aren't using GCC.12890 ac_prog=ld12891 ;;12892 *)12893 # If it is relative, then search for the first ld in PATH.12894 with_gnu_ld=unknown12895 ;;12896 esac12897 elif test yes = "$with_gnu_ld"; then12898 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&512899 $as_echo_n "checking for GNU ld... " >&6; }12900 else12901 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&512902 $as_echo_n "checking for non-GNU ld... " >&6; }12903 fi12904 if ${lt_cv_path_LD+:} false; then :12905 $as_echo_n "(cached) " >&612906 else12907 if test -z "$LD"; then12908 lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR12909 for ac_dir in $PATH; do12910 IFS=$lt_save_ifs12911 test -z "$ac_dir" && ac_dir=.12912 if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then12913 lt_cv_path_LD=$ac_dir/$ac_prog12914 # Check to see if the program is GNU ld. I'd rather use --version,12915 # but apparently some variants of GNU ld only accept -v.12916 # Break only if it was the GNU/non-GNU ld that we prefer.12917 case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in12918 *GNU* | *'with BFD'*)12919 test no != "$with_gnu_ld" && break12920 ;;12921 *)12922 test yes != "$with_gnu_ld" && break12923 ;;12924 esac12925 fi12926 done12927 IFS=$lt_save_ifs12928 else12929 lt_cv_path_LD=$LD # Let the user override the test with a path.12930 fi12931 fi12932 12933 LD=$lt_cv_path_LD12934 if test -n "$LD"; then12935 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LD" >&512936 $as_echo "$LD" >&6; }12937 else12938 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&512939 $as_echo "no" >&6; }12940 fi12941 test -z "$LD" && as_fn_error $? "no acceptable ld found in \$PATH" "$LINENO" 512942 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&512943 $as_echo_n "checking if the linker ($LD) is GNU ld... " >&6; }12944 if ${lt_cv_prog_gnu_ld+:} false; then :12945 $as_echo_n "(cached) " >&612946 else12947 # I'd rather use --version here, but apparently some GNU lds only accept -v.12948 case `$LD -v 2>&1 </dev/null` in12949 *GNU* | *'with BFD'*)12950 lt_cv_prog_gnu_ld=yes12951 ;;12952 *)12953 lt_cv_prog_gnu_ld=no12954 ;;12955 esac12956 fi12957 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_gnu_ld" >&512958 $as_echo "$lt_cv_prog_gnu_ld" >&6; }12959 with_gnu_ld=$lt_cv_prog_gnu_ld12960 12961 12962 12963 12964 12965 12966 12967 # Check if GNU C++ uses GNU ld as the underlying linker, since the12968 # archiving commands below assume that GNU ld is being used.12969 if test yes = "$with_gnu_ld"; then12970 archive_cmds_CXX='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'12971 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'12972 12973 hardcode_libdir_flag_spec_CXX='$wl-rpath $wl$libdir'12974 export_dynamic_flag_spec_CXX='$wl--export-dynamic'12975 12976 # If archive_cmds runs LD, not CC, wlarc should be empty12977 # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to12978 # investigate it a little bit more. (MM)12979 wlarc='$wl'12980 12981 # ancient GNU ld didn't support --whole-archive et. al.12982 if eval "`$CC -print-prog-name=ld` --help 2>&1" |12983 $GREP 'no-whole-archive' > /dev/null; then12984 whole_archive_flag_spec_CXX=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive'12985 else12986 whole_archive_flag_spec_CXX=12987 fi12988 else12989 with_gnu_ld=no12990 wlarc=12991 12992 # A generic and very simple default shared library creation12993 # command for GNU C++ for the case where it uses the native12994 # linker, instead of GNU ld. If possible, this setting should12995 # overridden to take advantage of the native linker features on12996 # the platform it is being used on.12997 archive_cmds_CXX='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'12998 fi12999 13000 # Commands to make compiler produce verbose output that lists13001 # what "hidden" libraries, object files and flags are used when13002 # linking a shared library.13003 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'13004 13005 else13006 GXX=no13007 with_gnu_ld=no13008 wlarc=13009 fi13010 13011 # PORTME: fill in a description of your system's C++ link characteristics13012 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&513013 $as_echo_n "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; }13014 ld_shlibs_CXX=yes13015 case $host_os in13016 aix3*)13017 # FIXME: insert proper C++ library support13018 ld_shlibs_CXX=no13019 ;;13020 aix[4-9]*)13021 if test ia64 = "$host_cpu"; then13022 # On IA64, the linker does run time linking by default, so we don't13023 # have to do anything special.13024 aix_use_runtimelinking=no13025 exp_sym_flag='-Bexport'13026 no_entry_flag=13027 else13028 aix_use_runtimelinking=no13029 13030 # Test if we are trying to use run time linking or normal13031 # AIX style linking. If -brtl is somewhere in LDFLAGS, we13032 # have runtime linking enabled, and use it for executables.13033 # For shared libraries, we enable/disable runtime linking13034 # depending on the kind of the shared library created -13035 # when "with_aix_soname,aix_use_runtimelinking" is:13036 # "aix,no" lib.a(lib.so.V) shared, rtl:no, for executables13037 # "aix,yes" lib.so shared, rtl:yes, for executables13038 # lib.a static archive13039 # "both,no" lib.so.V(shr.o) shared, rtl:yes13040 # lib.a(lib.so.V) shared, rtl:no, for executables13041 # "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables13042 # lib.a(lib.so.V) shared, rtl:no13043 # "svr4,*" lib.so.V(shr.o) shared, rtl:yes, for executables13044 # lib.a static archive13045 case $host_os in aix4.[23]|aix4.[23].*|aix[5-9]*)13046 for ld_flag in $LDFLAGS; do13047 case $ld_flag in13048 *-brtl*)13049 aix_use_runtimelinking=yes13050 break13051 ;;13052 esac13053 done13054 if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then13055 # With aix-soname=svr4, we create the lib.so.V shared archives only,13056 # so we don't have lib.a shared libs to link our executables.13057 # We have to force runtime linking in this case.13058 aix_use_runtimelinking=yes13059 LDFLAGS="$LDFLAGS -Wl,-brtl"13060 fi13061 ;;13062 esac13063 13064 exp_sym_flag='-bexport'13065 no_entry_flag='-bnoentry'13066 fi13067 13068 # When large executables or shared objects are built, AIX ld can13069 # have problems creating the table of contents. If linking a library13070 # or program results in "error TOC overflow" add -mminimal-toc to13071 # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not13072 # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.13073 13074 archive_cmds_CXX=''13075 hardcode_direct_CXX=yes13076 hardcode_direct_absolute_CXX=yes13077 hardcode_libdir_separator_CXX=':'13078 link_all_deplibs_CXX=yes13079 file_list_spec_CXX='$wl-f,'13080 case $with_aix_soname,$aix_use_runtimelinking in13081 aix,*) ;; # no import file13082 svr4,* | *,yes) # use import file13083 # The Import File defines what to hardcode.13084 hardcode_direct_CXX=no13085 hardcode_direct_absolute_CXX=no13086 ;;13087 esac13088 13089 if test yes = "$GXX"; then13090 case $host_os in aix4.[012]|aix4.[012].*)13091 # We only want to do this on AIX 4.2 and lower, the check13092 # below for broken collect2 doesn't work under 4.3+13093 collect2name=`$CC -print-prog-name=collect2`13094 if test -f "$collect2name" &&13095 strings "$collect2name" | $GREP resolve_lib_name >/dev/null13096 then13097 # We have reworked collect213098 :13099 else13100 # We have old collect213101 hardcode_direct_CXX=unsupported13102 # It fails to find uninstalled libraries when the uninstalled13103 # path is not listed in the libpath. Setting hardcode_minus_L13104 # to unsupported forces relinking13105 hardcode_minus_L_CXX=yes13106 hardcode_libdir_flag_spec_CXX='-L$libdir'13107 hardcode_libdir_separator_CXX=13108 fi13109 esac13110 shared_flag='-shared'13111 if test yes = "$aix_use_runtimelinking"; then13112 shared_flag=$shared_flag' $wl-G'13113 fi13114 # Need to ensure runtime linking is disabled for the traditional13115 # shared library, or the linker may eventually find shared libraries13116 # /with/ Import File - we do not want to mix them.13117 shared_flag_aix='-shared'13118 shared_flag_svr4='-shared $wl-G'13119 else13120 # not using gcc13121 if test ia64 = "$host_cpu"; then13122 # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release13123 # chokes on -Wl,-G. The following line is correct:13124 shared_flag='-G'13125 else13126 if test yes = "$aix_use_runtimelinking"; then13127 shared_flag='$wl-G'13128 else13129 shared_flag='$wl-bM:SRE'13130 fi13131 shared_flag_aix='$wl-bM:SRE'13132 shared_flag_svr4='$wl-G'13133 fi13134 fi13135 13136 export_dynamic_flag_spec_CXX='$wl-bexpall'13137 # It seems that -bexpall does not export symbols beginning with13138 # underscore (_), so it is better to generate a list of symbols to13139 # export.13140 always_export_symbols_CXX=yes13141 if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then13142 # Warning - without using the other runtime loading flags (-brtl),13143 # -berok will link without error, but may produce a broken library.13144 # The "-G" linker flag allows undefined symbols.13145 no_undefined_flag_CXX='-bernotok'13146 # Determine the default libpath from the value encoded in an empty13147 # executable.13148 if test set = "${lt_cv_aix_libpath+set}"; then13149 aix_libpath=$lt_cv_aix_libpath13150 else13151 if ${lt_cv_aix_libpath__CXX+:} false; then :13152 $as_echo_n "(cached) " >&613153 else13154 cat confdefs.h - <<_ACEOF >conftest.$ac_ext13155 /* end confdefs.h. */13156 13157 int13158 main ()13159 {13160 13161 ;13162 return 0;13163 }13164 _ACEOF13165 if ac_fn_cxx_try_link "$LINENO"; then :13166 13167 lt_aix_libpath_sed='13168 /Import File Strings/,/^$/ {13169 /^0/ {13170 s/^0 *\([^ ]*\) *$/\1/13171 p13172 }13173 }'13174 lt_cv_aix_libpath__CXX=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`13175 # Check for a 64-bit object if we didn't find anything.13176 if test -z "$lt_cv_aix_libpath__CXX"; then13177 lt_cv_aix_libpath__CXX=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`13178 fi13179 fi13180 rm -f core conftest.err conftest.$ac_objext \13181 conftest$ac_exeext conftest.$ac_ext13182 if test -z "$lt_cv_aix_libpath__CXX"; then13183 lt_cv_aix_libpath__CXX=/usr/lib:/lib13184 fi13185 13186 fi13187 13188 aix_libpath=$lt_cv_aix_libpath__CXX13189 fi13190 13191 hardcode_libdir_flag_spec_CXX='$wl-blibpath:$libdir:'"$aix_libpath"13192 13193 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_flag13194 else13195 if test ia64 = "$host_cpu"; then13196 hardcode_libdir_flag_spec_CXX='$wl-R $libdir:/usr/lib:/lib'13197 allow_undefined_flag_CXX="-z nodefs"13198 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"13199 else13200 # Determine the default libpath from the value encoded in an13201 # empty executable.13202 if test set = "${lt_cv_aix_libpath+set}"; then13203 aix_libpath=$lt_cv_aix_libpath13204 else13205 if ${lt_cv_aix_libpath__CXX+:} false; then :13206 $as_echo_n "(cached) " >&613207 else13208 cat confdefs.h - <<_ACEOF >conftest.$ac_ext13209 /* end confdefs.h. */13210 13211 int13212 main ()13213 {13214 13215 ;13216 return 0;13217 }13218 _ACEOF13219 if ac_fn_cxx_try_link "$LINENO"; then :13220 13221 lt_aix_libpath_sed='13222 /Import File Strings/,/^$/ {13223 /^0/ {13224 s/^0 *\([^ ]*\) *$/\1/13225 p13226 }13227 }'13228 lt_cv_aix_libpath__CXX=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`13229 # Check for a 64-bit object if we didn't find anything.13230 if test -z "$lt_cv_aix_libpath__CXX"; then13231 lt_cv_aix_libpath__CXX=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`13232 fi13233 fi13234 rm -f core conftest.err conftest.$ac_objext \13235 conftest$ac_exeext conftest.$ac_ext13236 if test -z "$lt_cv_aix_libpath__CXX"; then13237 lt_cv_aix_libpath__CXX=/usr/lib:/lib13238 fi13239 13240 fi13241 13242 aix_libpath=$lt_cv_aix_libpath__CXX13243 fi13244 13245 hardcode_libdir_flag_spec_CXX='$wl-blibpath:$libdir:'"$aix_libpath"13246 # Warning - without using the other run time loading flags,13247 # -berok will link without error, but may produce a broken library.13248 no_undefined_flag_CXX=' $wl-bernotok'13249 allow_undefined_flag_CXX=' $wl-berok'13250 if test yes = "$with_gnu_ld"; then13251 # We only use this code for GNU lds that support --whole-archive.13252 whole_archive_flag_spec_CXX='$wl--whole-archive$convenience $wl--no-whole-archive'13253 else13254 # Exported symbols can be pulled into shared objects from archives13255 whole_archive_flag_spec_CXX='$convenience'13256 fi13257 archive_cmds_need_lc_CXX=yes13258 archive_expsym_cmds_CXX='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d'13259 # -brtl affects multiple linker settings, -berok does not and is overridden later13260 compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([, ]\\)%-berok\\1%g"`'13261 if test svr4 != "$with_aix_soname"; then13262 # This is similar to how AIX traditionally builds its shared13263 # libraries. Need -bnortl late, we may have -brtl in LDFLAGS.13264 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'13265 fi13266 if test aix != "$with_aix_soname"; then13267 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'13268 else13269 # used by -dlpreopen to get the symbols13270 archive_expsym_cmds_CXX="$archive_expsym_cmds_CXX"'~$MV $output_objdir/$realname.d/$soname $output_objdir'13271 fi13272 archive_expsym_cmds_CXX="$archive_expsym_cmds_CXX"'~$RM -r $output_objdir/$realname.d'13273 fi13274 fi13275 ;;13276 13277 beos*)13278 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then13279 allow_undefined_flag_CXX=unsupported13280 # Joseph Beckenbach <jrb3@best.com> says some releases of gcc13281 # support --undefined. This deserves some investigation. FIXME13282 archive_cmds_CXX='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'13283 else13284 ld_shlibs_CXX=no13285 fi13286 ;;13287 13288 chorus*)13289 case $cc_basename in13290 *)13291 # FIXME: insert proper C++ library support13292 ld_shlibs_CXX=no13293 ;;13294 esac13295 ;;13296 13297 cygwin* | mingw* | pw32* | cegcc*)13298 case $GXX,$cc_basename in13299 ,cl* | no,cl*)13300 # Native MSVC13301 # hardcode_libdir_flag_spec is actually meaningless, as there is13302 # no search path for DLLs.13303 hardcode_libdir_flag_spec_CXX=' '13304 allow_undefined_flag_CXX=unsupported13305 always_export_symbols_CXX=yes13306 file_list_spec_CXX='@'13307 # Tell ltmain to make .lib files, not .a files.13308 libext=lib13309 # Tell ltmain to make .dll files, not .so files.13310 shrext_cmds=.dll13311 # FIXME: Setting linknames here is a bad hack.13312 archive_cmds_CXX='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames='13313 archive_expsym_cmds_CXX='if test DEF = "`$SED -n -e '\''s/^[ ]*//'\'' -e '\''/^\(;.*\)*$/d'\'' -e '\''s/^\(EXPORTS\|LIBRARY\)\([ ].*\)*$/DEF/p'\'' -e q $export_symbols`" ; then13314 cp "$export_symbols" "$output_objdir/$soname.def";13315 echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp";13316 else13317 $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp;13318 fi~13319 $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~13320 linknames='13321 # The linker will not automatically build a static lib if we build a DLL.13322 # _LT_TAGVAR(old_archive_from_new_cmds, CXX)='true'13323 enable_shared_with_static_runtimes_CXX=yes13324 # Don't use ranlib13325 old_postinstall_cmds_CXX='chmod 644 $oldlib'13326 postlink_cmds_CXX='lt_outputfile="@OUTPUT@"~13327 lt_tool_outputfile="@TOOL_OUTPUT@"~13328 case $lt_outputfile in13329 *.exe|*.EXE) ;;13330 *)13331 lt_outputfile=$lt_outputfile.exe13332 lt_tool_outputfile=$lt_tool_outputfile.exe13333 ;;13334 esac~13335 func_to_tool_file "$lt_outputfile"~13336 if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then13337 $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;13338 $RM "$lt_outputfile.manifest";13339 fi'13340 ;;13341 *)13342 # g++13343 # _LT_TAGVAR(hardcode_libdir_flag_spec, CXX) is actually meaningless,13344 # as there is no search path for DLLs.13345 hardcode_libdir_flag_spec_CXX='-L$libdir'13346 export_dynamic_flag_spec_CXX='$wl--export-all-symbols'13347 allow_undefined_flag_CXX=unsupported13348 always_export_symbols_CXX=no13349 enable_shared_with_static_runtimes_CXX=yes13350 13351 if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then13352 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'13353 # If the export-symbols file already is a .def file, use it as13354 # is; otherwise, prepend EXPORTS...13355 archive_expsym_cmds_CXX='if test DEF = "`$SED -n -e '\''s/^[ ]*//'\'' -e '\''/^\(;.*\)*$/d'\'' -e '\''s/^\(EXPORTS\|LIBRARY\)\([ ].*\)*$/DEF/p'\'' -e q $export_symbols`" ; then13356 cp $export_symbols $output_objdir/$soname.def;13357 else13358 echo EXPORTS > $output_objdir/$soname.def;13359 cat $export_symbols >> $output_objdir/$soname.def;13360 fi~13361 $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'13362 else13363 ld_shlibs_CXX=no13364 fi13365 ;;13366 esac13367 ;;13368 darwin* | rhapsody*)13369 13370 13371 archive_cmds_need_lc_CXX=no13372 hardcode_direct_CXX=no13373 hardcode_automatic_CXX=yes13374 hardcode_shlibpath_var_CXX=unsupported13375 if test yes = "$lt_cv_ld_force_load"; then13376 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\"`'13377 13378 else13379 whole_archive_flag_spec_CXX=''13380 fi13381 link_all_deplibs_CXX=yes13382 allow_undefined_flag_CXX=$_lt_dar_allow_undefined13383 case $cc_basename in13384 ifort*|nagfor*) _lt_dar_can_shared=yes ;;13385 *) _lt_dar_can_shared=$GCC ;;13386 esac13387 if test yes = "$_lt_dar_can_shared"; then13388 output_verbose_link_cmd=func_echo_all13389 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"13390 module_cmds_CXX="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dsymutil"13391 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"13392 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"13393 if test yes != "$lt_cv_apple_cc_single_mod"; then13394 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"13395 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"13396 fi13397 13398 else13399 ld_shlibs_CXX=no13400 fi13401 13402 ;;13403 13404 os2*)13405 hardcode_libdir_flag_spec_CXX='-L$libdir'13406 hardcode_minus_L_CXX=yes13407 allow_undefined_flag_CXX=unsupported13408 shrext_cmds=.dll13409 archive_cmds_CXX='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~13410 $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~13411 $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~13412 $ECHO EXPORTS >> $output_objdir/$libname.def~13413 emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~13414 $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~13415 emximp -o $lib $output_objdir/$libname.def'13416 archive_expsym_cmds_CXX='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~13417 $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~13418 $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~13419 $ECHO EXPORTS >> $output_objdir/$libname.def~13420 prefix_cmds="$SED"~13421 if test EXPORTS = "`$SED 1q $export_symbols`"; then13422 prefix_cmds="$prefix_cmds -e 1d";13423 fi~13424 prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~13425 cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~13426 $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~13427 emximp -o $lib $output_objdir/$libname.def'13428 old_archive_From_new_cmds_CXX='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'13429 enable_shared_with_static_runtimes_CXX=yes13430 ;;13431 13432 dgux*)13433 case $cc_basename in13434 ec++*)13435 # FIXME: insert proper C++ library support13436 ld_shlibs_CXX=no13437 ;;13438 ghcx*)13439 # Green Hills C++ Compiler13440 # FIXME: insert proper C++ library support13441 ld_shlibs_CXX=no13442 ;;13443 *)13444 # FIXME: insert proper C++ library support13445 ld_shlibs_CXX=no13446 ;;13447 esac13448 ;;13449 13450 freebsd2.*)13451 # C++ shared libraries reported to be fairly broken before13452 # switch to ELF13453 ld_shlibs_CXX=no13454 ;;13455 13456 freebsd-elf*)13457 archive_cmds_need_lc_CXX=no13458 ;;13459 13460 freebsd* | dragonfly*)13461 # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF13462 # conventions13463 ld_shlibs_CXX=yes13464 ;;13465 13466 haiku*)13467 archive_cmds_CXX='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'13468 link_all_deplibs_CXX=yes13469 ;;13470 13471 hpux9*)13472 hardcode_libdir_flag_spec_CXX='$wl+b $wl$libdir'13473 hardcode_libdir_separator_CXX=:13474 export_dynamic_flag_spec_CXX='$wl-E'13475 hardcode_direct_CXX=yes13476 hardcode_minus_L_CXX=yes # Not in the search PATH,13477 # but as the default13478 # location of the library.13479 13480 case $cc_basename in13481 CC*)13482 # FIXME: insert proper C++ library support13483 ld_shlibs_CXX=no13484 ;;13485 aCC*)13486 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'13487 # Commands to make compiler produce verbose output that lists13488 # what "hidden" libraries, object files and flags are used when13489 # linking a shared library.13490 #13491 # There doesn't appear to be a way to prevent this compiler from13492 # explicitly linking system object files so we need to strip them13493 # from the output so that they don't get included in the library13494 # dependencies.13495 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"'13496 ;;13497 *)13498 if test yes = "$GXX"; then13499 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'13500 else13501 # FIXME: insert proper C++ library support13502 ld_shlibs_CXX=no13503 fi13504 ;;13505 esac13506 ;;13507 13508 hpux10*|hpux11*)13509 if test no = "$with_gnu_ld"; then13510 hardcode_libdir_flag_spec_CXX='$wl+b $wl$libdir'13511 hardcode_libdir_separator_CXX=:13512 13513 case $host_cpu in13514 hppa*64*|ia64*)13515 ;;13516 *)13517 export_dynamic_flag_spec_CXX='$wl-E'13518 ;;13519 esac13520 fi13521 case $host_cpu in13522 hppa*64*|ia64*)13523 hardcode_direct_CXX=no13524 hardcode_shlibpath_var_CXX=no13525 ;;13526 *)13527 hardcode_direct_CXX=yes13528 hardcode_direct_absolute_CXX=yes13529 hardcode_minus_L_CXX=yes # Not in the search PATH,13530 # but as the default13531 # location of the library.13532 ;;13533 esac13534 13535 case $cc_basename in13536 CC*)13537 # FIXME: insert proper C++ library support13538 ld_shlibs_CXX=no13539 ;;13540 aCC*)13541 case $host_cpu in13542 hppa*64*)13543 archive_cmds_CXX='$CC -b $wl+h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'13544 ;;13545 ia64*)13546 archive_cmds_CXX='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'13547 ;;13548 *)13549 archive_cmds_CXX='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'13550 ;;13551 esac13552 # Commands to make compiler produce verbose output that lists13553 # what "hidden" libraries, object files and flags are used when13554 # linking a shared library.13555 #13556 # There doesn't appear to be a way to prevent this compiler from13557 # explicitly linking system object files so we need to strip them13558 # from the output so that they don't get included in the library13559 # dependencies.13560 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"'13561 ;;13562 *)13563 if test yes = "$GXX"; then13564 if test no = "$with_gnu_ld"; then13565 case $host_cpu in13566 hppa*64*)13567 archive_cmds_CXX='$CC -shared -nostdlib -fPIC $wl+h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'13568 ;;13569 ia64*)13570 archive_cmds_CXX='$CC -shared -nostdlib $pic_flag $wl+h $wl$soname $wl+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'13571 ;;13572 *)13573 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'13574 ;;13575 esac13576 fi13577 else13578 # FIXME: insert proper C++ library support13579 ld_shlibs_CXX=no13580 fi13581 ;;13582 esac13583 ;;13584 13585 interix[3-9]*)13586 hardcode_direct_CXX=no13587 hardcode_shlibpath_var_CXX=no13588 hardcode_libdir_flag_spec_CXX='$wl-rpath,$libdir'13589 export_dynamic_flag_spec_CXX='$wl-E'13590 # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.13591 # Instead, shared libraries are loaded at an image base (0x10000000 by13592 # default) and relocated if they conflict, which is a slow very memory13593 # consuming and fragmenting process. To avoid this, we pick a random,13594 # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link13595 # time. Moving up from 0x10000000 also allows more sbrk(2) space.13596 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'13597 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'13598 ;;13599 irix5* | irix6*)13600 case $cc_basename in13601 CC*)13602 # SGI C++13603 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'13604 13605 # Archives containing C++ object files must be created using13606 # "CC -ar", where "CC" is the IRIX C++ compiler. This is13607 # necessary to make sure instantiated templates are included13608 # in the archive.13609 old_archive_cmds_CXX='$CC -ar -WR,-u -o $oldlib $oldobjs'13610 ;;13611 *)13612 if test yes = "$GXX"; then13613 if test no = "$with_gnu_ld"; then13614 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'13615 else13616 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'13617 fi13618 fi13619 link_all_deplibs_CXX=yes13620 ;;13621 esac13622 hardcode_libdir_flag_spec_CXX='$wl-rpath $wl$libdir'13623 hardcode_libdir_separator_CXX=:13624 inherit_rpath_CXX=yes13625 ;;13626 13627 linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)13628 case $cc_basename in13629 KCC*)13630 # Kuck and Associates, Inc. (KAI) C++ Compiler13631 13632 # KCC will only create a shared library if the output file13633 # ends with ".so" (or ".sl" for HP-UX), so rename the library13634 # to its proper name (with version) after linking.13635 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'13636 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'13637 # Commands to make compiler produce verbose output that lists13638 # what "hidden" libraries, object files and flags are used when13639 # linking a shared library.13640 #13641 # There doesn't appear to be a way to prevent this compiler from13642 # explicitly linking system object files so we need to strip them13643 # from the output so that they don't get included in the library13644 # dependencies.13645 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"'13646 13647 hardcode_libdir_flag_spec_CXX='$wl-rpath,$libdir'13648 export_dynamic_flag_spec_CXX='$wl--export-dynamic'13649 13650 # Archives containing C++ object files must be created using13651 # "CC -Bstatic", where "CC" is the KAI C++ compiler.13652 old_archive_cmds_CXX='$CC -Bstatic -o $oldlib $oldobjs'13653 ;;13654 icpc* | ecpc* )13655 # Intel C++13656 with_gnu_ld=yes13657 # version 8.0 and above of icpc choke on multiply defined symbols13658 # if we add $predep_objects and $postdep_objects, however 7.1 and13659 # earlier do not add the objects themselves.13660 case `$CC -V 2>&1` in13661 *"Version 7."*)13662 archive_cmds_CXX='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'13663 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'13664 ;;13665 *) # Version 8.0 or newer13666 tmp_idyn=13667 case $host_cpu in13668 ia64*) tmp_idyn=' -i_dynamic';;13669 esac13670 archive_cmds_CXX='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'13671 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'13672 ;;13673 esac13674 archive_cmds_need_lc_CXX=no13675 hardcode_libdir_flag_spec_CXX='$wl-rpath,$libdir'13676 export_dynamic_flag_spec_CXX='$wl--export-dynamic'13677 whole_archive_flag_spec_CXX='$wl--whole-archive$convenience $wl--no-whole-archive'13678 ;;13679 pgCC* | pgcpp*)13680 # Portland Group C++ compiler13681 case `$CC -V` in13682 *pgCC\ [1-5].* | *pgcpp\ [1-5].*)13683 prelink_cmds_CXX='tpldir=Template.dir~13684 rm -rf $tpldir~13685 $CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~13686 compile_command="$compile_command `find $tpldir -name \*.o | sort | $NL2SP`"'13687 old_archive_cmds_CXX='tpldir=Template.dir~13688 rm -rf $tpldir~13689 $CC --prelink_objects --instantiation_dir $tpldir $oldobjs$old_deplibs~13690 $AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | sort | $NL2SP`~13691 $RANLIB $oldlib'13692 archive_cmds_CXX='tpldir=Template.dir~13693 rm -rf $tpldir~13694 $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~13695 $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'13696 archive_expsym_cmds_CXX='tpldir=Template.dir~13697 rm -rf $tpldir~13698 $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~13699 $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'13700 ;;13701 *) # Version 6 and above use weak symbols13702 archive_cmds_CXX='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'13703 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'13704 ;;13705 esac13706 13707 hardcode_libdir_flag_spec_CXX='$wl--rpath $wl$libdir'13708 export_dynamic_flag_spec_CXX='$wl--export-dynamic'13709 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'13710 ;;13711 cxx*)13712 # Compaq C++13713 archive_cmds_CXX='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'13714 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'13715 13716 runpath_var=LD_RUN_PATH13717 hardcode_libdir_flag_spec_CXX='-rpath $libdir'13718 hardcode_libdir_separator_CXX=:13719 13720 # Commands to make compiler produce verbose output that lists13721 # what "hidden" libraries, object files and flags are used when13722 # linking a shared library.13723 #13724 # There doesn't appear to be a way to prevent this compiler from13725 # explicitly linking system object files so we need to strip them13726 # from the output so that they don't get included in the library13727 # dependencies.13728 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'13729 ;;13730 xl* | mpixl* | bgxl*)13731 # IBM XL 8.0 on PPC, with GNU ld13732 hardcode_libdir_flag_spec_CXX='$wl-rpath $wl$libdir'13733 export_dynamic_flag_spec_CXX='$wl--export-dynamic'13734 archive_cmds_CXX='$CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'13735 if test yes = "$supports_anon_versioning"; then13736 archive_expsym_cmds_CXX='echo "{ global:" > $output_objdir/$libname.ver~13737 cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~13738 echo "local: *; };" >> $output_objdir/$libname.ver~13739 $CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib'13740 fi13741 ;;13742 *)13743 case `$CC -V 2>&1 | sed 5q` in13744 *Sun\ C*)13745 # Sun C++ 5.913746 no_undefined_flag_CXX=' -zdefs'13747 archive_cmds_CXX='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'13748 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'13749 hardcode_libdir_flag_spec_CXX='-R$libdir'13750 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'13751 compiler_needs_object_CXX=yes13752 13753 # Not sure whether something based on13754 # $CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&113755 # would be better.13756 output_verbose_link_cmd='func_echo_all'13757 13758 # Archives containing C++ object files must be created using13759 # "CC -xar", where "CC" is the Sun C++ compiler. This is13760 # necessary to make sure instantiated templates are included13761 # in the archive.13762 old_archive_cmds_CXX='$CC -xar -o $oldlib $oldobjs'13763 ;;13764 esac13765 ;;13766 esac13767 ;;13768 13769 lynxos*)13770 # FIXME: insert proper C++ library support13771 ld_shlibs_CXX=no13772 ;;13773 13774 m88k*)13775 # FIXME: insert proper C++ library support13776 ld_shlibs_CXX=no13777 ;;13778 13779 mvs*)13780 case $cc_basename in13781 cxx*)13782 # FIXME: insert proper C++ library support13783 ld_shlibs_CXX=no13784 ;;13785 *)13786 # FIXME: insert proper C++ library support13787 ld_shlibs_CXX=no13788 ;;13789 esac13790 ;;13791 13792 netbsd*)13793 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then13794 archive_cmds_CXX='$LD -Bshareable -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags'13795 wlarc=13796 hardcode_libdir_flag_spec_CXX='-R$libdir'13797 hardcode_direct_CXX=yes13798 hardcode_shlibpath_var_CXX=no13799 fi13800 # Workaround some broken pre-1.5 toolchains13801 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"'13802 ;;13803 13804 *nto* | *qnx*)13805 ld_shlibs_CXX=yes13806 ;;13807 13808 openbsd* | bitrig*)13809 if test -f /usr/libexec/ld.so; then13810 hardcode_direct_CXX=yes13811 hardcode_shlibpath_var_CXX=no13812 hardcode_direct_absolute_CXX=yes13813 archive_cmds_CXX='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'13814 hardcode_libdir_flag_spec_CXX='$wl-rpath,$libdir'13815 if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`"; then13816 archive_expsym_cmds_CXX='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-retain-symbols-file,$export_symbols -o $lib'13817 export_dynamic_flag_spec_CXX='$wl-E'13818 whole_archive_flag_spec_CXX=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive'13819 fi13820 output_verbose_link_cmd=func_echo_all13821 else13822 ld_shlibs_CXX=no13823 fi13824 ;;13825 13826 osf3* | osf4* | osf5*)13827 case $cc_basename in13828 KCC*)13829 # Kuck and Associates, Inc. (KAI) C++ Compiler13830 13831 # KCC will only create a shared library if the output file13832 # ends with ".so" (or ".sl" for HP-UX), so rename the library13833 # to its proper name (with version) after linking.13834 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'13835 13836 hardcode_libdir_flag_spec_CXX='$wl-rpath,$libdir'13837 hardcode_libdir_separator_CXX=:13838 13839 # Archives containing C++ object files must be created using13840 # the KAI C++ compiler.13841 case $host in13842 osf3*) old_archive_cmds_CXX='$CC -Bstatic -o $oldlib $oldobjs' ;;13843 *) old_archive_cmds_CXX='$CC -o $oldlib $oldobjs' ;;13844 esac13845 ;;13846 RCC*)13847 # Rational C++ 2.4.113848 # FIXME: insert proper C++ library support13849 ld_shlibs_CXX=no13850 ;;13851 cxx*)13852 case $host in13853 osf3*)13854 allow_undefined_flag_CXX=' $wl-expect_unresolved $wl\*'13855 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'13856 hardcode_libdir_flag_spec_CXX='$wl-rpath $wl$libdir'13857 ;;13858 *)13859 allow_undefined_flag_CXX=' -expect_unresolved \*'13860 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'13861 archive_expsym_cmds_CXX='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~13862 echo "-hidden">> $lib.exp~13863 $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~13864 $RM $lib.exp'13865 hardcode_libdir_flag_spec_CXX='-rpath $libdir'13866 ;;13867 esac13868 13869 hardcode_libdir_separator_CXX=:13870 13871 # Commands to make compiler produce verbose output that lists13872 # what "hidden" libraries, object files and flags are used when13873 # linking a shared library.13874 #13875 # There doesn't appear to be a way to prevent this compiler from13876 # explicitly linking system object files so we need to strip them13877 # from the output so that they don't get included in the library13878 # dependencies.13879 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"'13880 ;;13881 *)13882 if test yes,no = "$GXX,$with_gnu_ld"; then13883 allow_undefined_flag_CXX=' $wl-expect_unresolved $wl\*'13884 case $host in13885 osf3*)13886 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'13887 ;;13888 *)13889 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'13890 ;;13891 esac13892 13893 hardcode_libdir_flag_spec_CXX='$wl-rpath $wl$libdir'13894 hardcode_libdir_separator_CXX=:13895 13896 # Commands to make compiler produce verbose output that lists13897 # what "hidden" libraries, object files and flags are used when13898 # linking a shared library.13899 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'13900 13901 else13902 # FIXME: insert proper C++ library support13903 ld_shlibs_CXX=no13904 fi13905 ;;13906 esac13907 ;;13908 13909 psos*)13910 # FIXME: insert proper C++ library support13911 ld_shlibs_CXX=no13912 ;;13913 13914 sunos4*)13915 case $cc_basename in13916 CC*)13917 # Sun C++ 4.x13918 # FIXME: insert proper C++ library support13919 ld_shlibs_CXX=no13920 ;;13921 lcc*)13922 # Lucid13923 # FIXME: insert proper C++ library support13924 ld_shlibs_CXX=no13925 ;;13926 *)13927 # FIXME: insert proper C++ library support13928 ld_shlibs_CXX=no13929 ;;13930 esac13931 ;;13932 13933 solaris*)13934 case $cc_basename in13935 CC* | sunCC*)13936 # Sun C++ 4.2, 5.x and Centerline C++13937 archive_cmds_need_lc_CXX=yes13938 no_undefined_flag_CXX=' -zdefs'13939 archive_cmds_CXX='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'13940 archive_expsym_cmds_CXX='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~13941 $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'13942 13943 hardcode_libdir_flag_spec_CXX='-R$libdir'13944 hardcode_shlibpath_var_CXX=no13945 case $host_os in13946 solaris2.[0-5] | solaris2.[0-5].*) ;;13947 *)13948 # The compiler driver will combine and reorder linker options,13949 # but understands '-z linker_flag'.13950 # Supported since Solaris 2.6 (maybe 2.5.1?)13951 whole_archive_flag_spec_CXX='-z allextract$convenience -z defaultextract'13952 ;;13953 esac13954 link_all_deplibs_CXX=yes13955 13956 output_verbose_link_cmd='func_echo_all'13957 13958 # Archives containing C++ object files must be created using13959 # "CC -xar", where "CC" is the Sun C++ compiler. This is13960 # necessary to make sure instantiated templates are included13961 # in the archive.13962 old_archive_cmds_CXX='$CC -xar -o $oldlib $oldobjs'13963 ;;13964 gcx*)13965 # Green Hills C++ Compiler13966 archive_cmds_CXX='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'13967 13968 # The C++ compiler must be used to create the archive.13969 old_archive_cmds_CXX='$CC $LDFLAGS -archive -o $oldlib $oldobjs'13970 ;;13971 *)13972 # GNU C++ compiler with Solaris linker13973 if test yes,no = "$GXX,$with_gnu_ld"; then13974 no_undefined_flag_CXX=' $wl-z ${wl}defs'13975 if $CC --version | $GREP -v '^2\.7' > /dev/null; then13976 archive_cmds_CXX='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'13977 archive_expsym_cmds_CXX='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~13978 $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'13979 13980 # Commands to make compiler produce verbose output that lists13981 # what "hidden" libraries, object files and flags are used when13982 # linking a shared library.13983 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'13984 else13985 # g++ 2.7 appears to require '-G' NOT '-shared' on this13986 # platform.13987 archive_cmds_CXX='$CC -G -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'13988 archive_expsym_cmds_CXX='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~13989 $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'13990 13991 # Commands to make compiler produce verbose output that lists13992 # what "hidden" libraries, object files and flags are used when13993 # linking a shared library.13994 output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'13995 fi13996 13997 hardcode_libdir_flag_spec_CXX='$wl-R $wl$libdir'13998 case $host_os in13999 solaris2.[0-5] | solaris2.[0-5].*) ;;14000 *)14001 whole_archive_flag_spec_CXX='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract'14002 ;;14003 esac14004 fi14005 ;;14006 esac14007 ;;14008 14009 sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[01].[10]* | unixware7* | sco3.2v5.0.[024]*)14010 no_undefined_flag_CXX='$wl-z,text'14011 archive_cmds_need_lc_CXX=no14012 hardcode_shlibpath_var_CXX=no14013 runpath_var='LD_RUN_PATH'14014 14015 case $cc_basename in14016 CC*)14017 archive_cmds_CXX='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'14018 archive_expsym_cmds_CXX='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'14019 ;;14020 *)14021 archive_cmds_CXX='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'14022 archive_expsym_cmds_CXX='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'14023 ;;14024 esac14025 ;;14026 14027 sysv5* | sco3.2v5* | sco5v6*)14028 # Note: We CANNOT use -z defs as we might desire, because we do not14029 # link with -lc, and that would cause any symbols used from libc to14030 # always be unresolved, which means just about no library would14031 # ever link correctly. If we're not using GNU ld we use -z text14032 # though, which does catch some bad symbols but isn't as heavy-handed14033 # as -z defs.14034 no_undefined_flag_CXX='$wl-z,text'14035 allow_undefined_flag_CXX='$wl-z,nodefs'14036 archive_cmds_need_lc_CXX=no14037 hardcode_shlibpath_var_CXX=no14038 hardcode_libdir_flag_spec_CXX='$wl-R,$libdir'14039 hardcode_libdir_separator_CXX=':'14040 link_all_deplibs_CXX=yes14041 export_dynamic_flag_spec_CXX='$wl-Bexport'14042 runpath_var='LD_RUN_PATH'14043 14044 case $cc_basename in14045 CC*)14046 archive_cmds_CXX='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'14047 archive_expsym_cmds_CXX='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'14048 old_archive_cmds_CXX='$CC -Tprelink_objects $oldobjs~14049 '"$old_archive_cmds_CXX"14050 reload_cmds_CXX='$CC -Tprelink_objects $reload_objs~14051 '"$reload_cmds_CXX"14052 ;;14053 *)14054 archive_cmds_CXX='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'14055 archive_expsym_cmds_CXX='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'14056 ;;14057 esac14058 ;;14059 14060 tandem*)14061 case $cc_basename in14062 NCC*)14063 # NonStop-UX NCC 3.2014064 # FIXME: insert proper C++ library support14065 ld_shlibs_CXX=no14066 ;;14067 *)14068 # FIXME: insert proper C++ library support14069 ld_shlibs_CXX=no14070 ;;14071 esac14072 ;;14073 14074 vxworks*)14075 # FIXME: insert proper C++ library support14076 ld_shlibs_CXX=no14077 ;;14078 14079 *)14080 # FIXME: insert proper C++ library support14081 ld_shlibs_CXX=no14082 ;;14083 esac14084 14085 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs_CXX" >&514086 $as_echo "$ld_shlibs_CXX" >&6; }14087 test no = "$ld_shlibs_CXX" && can_build_shared=no14088 14089 GCC_CXX=$GXX14090 LD_CXX=$LD14091 14092 ## CAVEAT EMPTOR:14093 ## There is no encapsulation within the following macros, do not change14094 ## the running order or otherwise move them around unless you know exactly14095 ## what you are doing...14096 # Dependencies to place before and after the object being linked:14097 predep_objects_CXX=14098 postdep_objects_CXX=14099 predeps_CXX=14100 postdeps_CXX=14101 compiler_lib_search_path_CXX=14102 14103 cat > conftest.$ac_ext <<_LT_EOF14104 class Foo14105 {14106 public:14107 Foo (void) { a = 0; }14108 private:14109 int a;14110 };14111 _LT_EOF14112 14113 14114 _lt_libdeps_save_CFLAGS=$CFLAGS14115 case "$CC $CFLAGS " in #(14116 *\ -flto*\ *) CFLAGS="$CFLAGS -fno-lto" ;;14117 *\ -fwhopr*\ *) CFLAGS="$CFLAGS -fno-whopr" ;;14118 *\ -fuse-linker-plugin*\ *) CFLAGS="$CFLAGS -fno-use-linker-plugin" ;;14119 esac14120 14121 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&514122 (eval $ac_compile) 2>&514123 ac_status=$?14124 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&514125 test $ac_status = 0; }; then14126 # Parse the compiler output and extract the necessary14127 # objects, libraries and library flags.14128 14129 # Sentinel used to keep track of whether or not we are before14130 # the conftest object file.14131 pre_test_object_deps_done=no14132 14133 for p in `eval "$output_verbose_link_cmd"`; do14134 case $prev$p in14135 14136 -L* | -R* | -l*)14137 # Some compilers place space between "-{L,R}" and the path.14138 # Remove the space.14139 if test x-L = "$p" ||14140 test x-R = "$p"; then14141 prev=$p14142 continue14143 fi14144 14145 # Expand the sysroot to ease extracting the directories later.14146 if test -z "$prev"; then14147 case $p in14148 -L*) func_stripname_cnf '-L' '' "$p"; prev=-L; p=$func_stripname_result ;;14149 -R*) func_stripname_cnf '-R' '' "$p"; prev=-R; p=$func_stripname_result ;;14150 -l*) func_stripname_cnf '-l' '' "$p"; prev=-l; p=$func_stripname_result ;;14151 esac14152 fi14153 case $p in14154 =*) func_stripname_cnf '=' '' "$p"; p=$lt_sysroot$func_stripname_result ;;14155 esac14156 if test no = "$pre_test_object_deps_done"; then14157 case $prev in14158 -L | -R)14159 # Internal compiler library paths should come after those14160 # provided the user. The postdeps already come after the14161 # user supplied libs so there is no need to process them.14162 if test -z "$compiler_lib_search_path_CXX"; then14163 compiler_lib_search_path_CXX=$prev$p14164 else14165 compiler_lib_search_path_CXX="${compiler_lib_search_path_CXX} $prev$p"14166 fi14167 ;;14168 # The "-l" case would never come before the object being14169 # linked, so don't bother handling this case.14170 esac14171 else14172 if test -z "$postdeps_CXX"; then14173 postdeps_CXX=$prev$p14174 else14175 postdeps_CXX="${postdeps_CXX} $prev$p"14176 fi14177 fi14178 prev=14179 ;;14180 14181 *.lto.$objext) ;; # Ignore GCC LTO objects14182 *.$objext)14183 # This assumes that the test object file only shows up14184 # once in the compiler output.14185 if test "$p" = "conftest.$objext"; then14186 pre_test_object_deps_done=yes14187 continue14188 fi14189 14190 if test no = "$pre_test_object_deps_done"; then14191 if test -z "$predep_objects_CXX"; then14192 predep_objects_CXX=$p14193 else14194 predep_objects_CXX="$predep_objects_CXX $p"14195 fi14196 else14197 if test -z "$postdep_objects_CXX"; then14198 postdep_objects_CXX=$p14199 else14200 postdep_objects_CXX="$postdep_objects_CXX $p"14201 fi14202 fi14203 ;;14204 14205 *) ;; # Ignore the rest.14206 14207 esac14208 done14209 14210 # Clean up.14211 rm -f a.out a.exe14212 else14213 echo "libtool.m4: error: problem compiling CXX test program"14214 fi14215 14216 $RM -f confest.$objext14217 CFLAGS=$_lt_libdeps_save_CFLAGS14218 14219 # PORTME: override above test on systems where it is broken14220 case $host_os in14221 interix[3-9]*)14222 # Interix 3.5 installs completely hosed .la files for C++, so rather than14223 # hack all around it, let's just trust "g++" to DTRT.14224 predep_objects_CXX=14225 postdep_objects_CXX=14226 postdeps_CXX=14227 ;;14228 esac14229 14230 14231 case " $postdeps_CXX " in14232 *" -lc "*) archive_cmds_need_lc_CXX=no ;;14233 esac14234 compiler_lib_search_dirs_CXX=14235 if test -n "${compiler_lib_search_path_CXX}"; then14236 compiler_lib_search_dirs_CXX=`echo " ${compiler_lib_search_path_CXX}" | $SED -e 's! -L! !g' -e 's!^ !!'`14237 fi14238 14239 14240 14241 14242 14243 14244 14245 14246 14247 14248 14249 14250 14251 14252 14253 14254 14255 14256 14257 14258 14259 14260 14261 14262 14263 14264 14265 14266 14267 14268 14269 lt_prog_compiler_wl_CXX=14270 lt_prog_compiler_pic_CXX=14271 lt_prog_compiler_static_CXX=14272 14273 14274 # C++ specific cases for pic, static, wl, etc.14275 if test yes = "$GXX"; then14276 lt_prog_compiler_wl_CXX='-Wl,'14277 lt_prog_compiler_static_CXX='-static'14278 14279 case $host_os in14280 aix*)14281 # All AIX code is PIC.14282 if test ia64 = "$host_cpu"; then14283 # AIX 5 now supports IA64 processor14284 lt_prog_compiler_static_CXX='-Bstatic'14285 fi14286 lt_prog_compiler_pic_CXX='-fPIC'14287 ;;14288 14289 amigaos*)14290 case $host_cpu in14291 powerpc)14292 # see comment about AmigaOS4 .so support14293 lt_prog_compiler_pic_CXX='-fPIC'14294 ;;14295 m68k)14296 # FIXME: we need at least 68020 code to build shared libraries, but14297 # adding the '-m68020' flag to GCC prevents building anything better,14298 # like '-m68040'.14299 lt_prog_compiler_pic_CXX='-m68020 -resident32 -malways-restore-a4'14300 ;;14301 esac14302 ;;14303 14304 beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)14305 # PIC is the default for these OSes.14306 ;;14307 mingw* | cygwin* | os2* | pw32* | cegcc*)14308 # This hack is so that the source file can tell whether it is being14309 # built for inclusion in a dll (and should export symbols for example).14310 # Although the cygwin gcc ignores -fPIC, still need this for old-style14311 # (--disable-auto-import) libraries14312 lt_prog_compiler_pic_CXX='-DDLL_EXPORT'14313 case $host_os in14314 os2*)14315 lt_prog_compiler_static_CXX='$wl-static'14316 ;;14317 esac14318 ;;14319 darwin* | rhapsody*)14320 # PIC is the default on this platform14321 # Common symbols not allowed in MH_DYLIB files14322 lt_prog_compiler_pic_CXX='-fno-common'14323 ;;14324 *djgpp*)14325 # DJGPP does not support shared libraries at all14326 lt_prog_compiler_pic_CXX=14327 ;;14328 haiku*)14329 # PIC is the default for Haiku.14330 # The "-static" flag exists, but is broken.14331 lt_prog_compiler_static_CXX=14332 ;;14333 interix[3-9]*)14334 # Interix 3.x gcc -fpic/-fPIC options generate broken code.14335 # Instead, we relocate shared libraries at runtime.14336 ;;14337 sysv4*MP*)14338 if test -d /usr/nec; then14339 lt_prog_compiler_pic_CXX=-Kconform_pic14340 fi14341 ;;14342 hpux*)14343 # PIC is the default for 64-bit PA HP-UX, but not for 32-bit14344 # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag14345 # sets the default TLS model and affects inlining.14346 case $host_cpu in14347 hppa*64*)14348 ;;14349 *)14350 lt_prog_compiler_pic_CXX='-fPIC'14351 ;;14352 esac14353 ;;14354 *qnx* | *nto*)14355 # QNX uses GNU C++, but need to define -shared option too, otherwise14356 # it will coredump.14357 lt_prog_compiler_pic_CXX='-fPIC -shared'14358 ;;14359 *)14360 lt_prog_compiler_pic_CXX='-fPIC'14361 ;;14362 esac14363 else14364 case $host_os in14365 aix[4-9]*)14366 # All AIX code is PIC.14367 if test ia64 = "$host_cpu"; then14368 # AIX 5 now supports IA64 processor14369 lt_prog_compiler_static_CXX='-Bstatic'14370 else14371 lt_prog_compiler_static_CXX='-bnso -bI:/lib/syscalls.exp'14372 fi14373 ;;14374 chorus*)14375 case $cc_basename in14376 cxch68*)14377 # Green Hills C++ Compiler14378 # _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"14379 ;;14380 esac14381 ;;14382 mingw* | cygwin* | os2* | pw32* | cegcc*)14383 # This hack is so that the source file can tell whether it is being14384 # built for inclusion in a dll (and should export symbols for example).14385 lt_prog_compiler_pic_CXX='-DDLL_EXPORT'14386 ;;14387 dgux*)14388 case $cc_basename in14389 ec++*)14390 lt_prog_compiler_pic_CXX='-KPIC'14391 ;;14392 ghcx*)14393 # Green Hills C++ Compiler14394 lt_prog_compiler_pic_CXX='-pic'14395 ;;14396 *)14397 ;;14398 esac14399 ;;14400 freebsd* | dragonfly*)14401 # FreeBSD uses GNU C++14402 ;;14403 hpux9* | hpux10* | hpux11*)14404 case $cc_basename in14405 CC*)14406 lt_prog_compiler_wl_CXX='-Wl,'14407 lt_prog_compiler_static_CXX='$wl-a ${wl}archive'14408 if test ia64 != "$host_cpu"; then14409 lt_prog_compiler_pic_CXX='+Z'14410 fi14411 ;;14412 aCC*)14413 lt_prog_compiler_wl_CXX='-Wl,'14414 lt_prog_compiler_static_CXX='$wl-a ${wl}archive'14415 case $host_cpu in14416 hppa*64*|ia64*)14417 # +Z the default14418 ;;14419 *)14420 lt_prog_compiler_pic_CXX='+Z'14421 ;;14422 esac14423 ;;14424 *)14425 ;;14426 esac14427 ;;14428 interix*)14429 # This is c89, which is MS Visual C++ (no shared libs)14430 # Anyone wants to do a port?14431 ;;14432 irix5* | irix6* | nonstopux*)14433 case $cc_basename in14434 CC*)14435 lt_prog_compiler_wl_CXX='-Wl,'14436 lt_prog_compiler_static_CXX='-non_shared'14437 # CC pic flag -KPIC is the default.14438 ;;14439 *)14440 ;;14441 esac14442 ;;14443 linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)14444 case $cc_basename in14445 KCC*)14446 # KAI C++ Compiler14447 lt_prog_compiler_wl_CXX='--backend -Wl,'14448 lt_prog_compiler_pic_CXX='-fPIC'14449 ;;14450 ecpc* )14451 # old Intel C++ for x86_64, which still supported -KPIC.14452 lt_prog_compiler_wl_CXX='-Wl,'14453 lt_prog_compiler_pic_CXX='-KPIC'14454 lt_prog_compiler_static_CXX='-static'14455 ;;14456 icpc* )14457 # Intel C++, used to be incompatible with GCC.14458 # ICC 10 doesn't accept -KPIC any more.14459 lt_prog_compiler_wl_CXX='-Wl,'14460 lt_prog_compiler_pic_CXX='-fPIC'14461 lt_prog_compiler_static_CXX='-static'14462 ;;14463 pgCC* | pgcpp*)14464 # Portland Group C++ compiler14465 lt_prog_compiler_wl_CXX='-Wl,'14466 lt_prog_compiler_pic_CXX='-fpic'14467 lt_prog_compiler_static_CXX='-Bstatic'14468 ;;14469 cxx*)14470 # Compaq C++14471 # Make sure the PIC flag is empty. It appears that all Alpha14472 # Linux and Compaq Tru64 Unix objects are PIC.14473 lt_prog_compiler_pic_CXX=14474 lt_prog_compiler_static_CXX='-non_shared'14475 ;;14476 xlc* | xlC* | bgxl[cC]* | mpixl[cC]*)14477 # IBM XL 8.0, 9.0 on PPC and BlueGene14478 lt_prog_compiler_wl_CXX='-Wl,'14479 lt_prog_compiler_pic_CXX='-qpic'14480 lt_prog_compiler_static_CXX='-qstaticlink'14481 ;;14482 *)14483 case `$CC -V 2>&1 | sed 5q` in14484 *Sun\ C*)14485 # Sun C++ 5.914486 lt_prog_compiler_pic_CXX='-KPIC'14487 lt_prog_compiler_static_CXX='-Bstatic'14488 lt_prog_compiler_wl_CXX='-Qoption ld '14489 ;;14490 esac14491 ;;14492 esac14493 ;;14494 lynxos*)14495 ;;14496 m88k*)14497 ;;14498 mvs*)14499 case $cc_basename in14500 cxx*)14501 lt_prog_compiler_pic_CXX='-W c,exportall'14502 ;;14503 *)14504 ;;14505 esac14506 ;;14507 netbsd* | netbsdelf*-gnu)14508 ;;14509 *qnx* | *nto*)14510 # QNX uses GNU C++, but need to define -shared option too, otherwise14511 # it will coredump.14512 lt_prog_compiler_pic_CXX='-fPIC -shared'14513 ;;14514 osf3* | osf4* | osf5*)14515 case $cc_basename in14516 KCC*)14517 lt_prog_compiler_wl_CXX='--backend -Wl,'14518 ;;14519 RCC*)14520 # Rational C++ 2.4.114521 lt_prog_compiler_pic_CXX='-pic'14522 ;;14523 cxx*)14524 # Digital/Compaq C++14525 lt_prog_compiler_wl_CXX='-Wl,'14526 # Make sure the PIC flag is empty. It appears that all Alpha14527 # Linux and Compaq Tru64 Unix objects are PIC.14528 lt_prog_compiler_pic_CXX=14529 lt_prog_compiler_static_CXX='-non_shared'14530 ;;14531 *)14532 ;;14533 esac14534 ;;14535 psos*)14536 ;;14537 solaris*)14538 case $cc_basename in14539 CC* | sunCC*)14540 # Sun C++ 4.2, 5.x and Centerline C++14541 lt_prog_compiler_pic_CXX='-KPIC'14542 lt_prog_compiler_static_CXX='-Bstatic'14543 lt_prog_compiler_wl_CXX='-Qoption ld '14544 ;;14545 gcx*)14546 # Green Hills C++ Compiler14547 lt_prog_compiler_pic_CXX='-PIC'14548 ;;14549 *)14550 ;;14551 esac14552 ;;14553 sunos4*)14554 case $cc_basename in14555 CC*)14556 # Sun C++ 4.x14557 lt_prog_compiler_pic_CXX='-pic'14558 lt_prog_compiler_static_CXX='-Bstatic'14559 ;;14560 lcc*)14561 # Lucid14562 lt_prog_compiler_pic_CXX='-pic'14563 ;;14564 *)14565 ;;14566 esac14567 ;;14568 sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)14569 case $cc_basename in14570 CC*)14571 lt_prog_compiler_wl_CXX='-Wl,'14572 lt_prog_compiler_pic_CXX='-KPIC'14573 lt_prog_compiler_static_CXX='-Bstatic'14574 ;;14575 esac14576 ;;14577 tandem*)14578 case $cc_basename in14579 NCC*)14580 # NonStop-UX NCC 3.2014581 lt_prog_compiler_pic_CXX='-KPIC'14582 ;;14583 *)14584 ;;14585 esac14586 ;;14587 vxworks*)14588 ;;14589 *)14590 lt_prog_compiler_can_build_shared_CXX=no14591 ;;14592 esac14593 fi14594 14595 case $host_os in14596 # For platforms that do not support PIC, -DPIC is meaningless:14597 *djgpp*)14598 lt_prog_compiler_pic_CXX=14599 ;;14600 *)14601 lt_prog_compiler_pic_CXX="$lt_prog_compiler_pic_CXX -DPIC"14602 ;;14603 esac14604 14605 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&514606 $as_echo_n "checking for $compiler option to produce PIC... " >&6; }14607 if ${lt_cv_prog_compiler_pic_CXX+:} false; then :14608 $as_echo_n "(cached) " >&614609 else14610 lt_cv_prog_compiler_pic_CXX=$lt_prog_compiler_pic_CXX14611 fi14612 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic_CXX" >&514613 $as_echo "$lt_cv_prog_compiler_pic_CXX" >&6; }14614 lt_prog_compiler_pic_CXX=$lt_cv_prog_compiler_pic_CXX14615 14616 #14617 # Check to make sure the PIC flag actually works.14618 #14619 if test -n "$lt_prog_compiler_pic_CXX"; then14620 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler PIC flag $lt_prog_compiler_pic_CXX works" >&514621 $as_echo_n "checking if $compiler PIC flag $lt_prog_compiler_pic_CXX works... " >&6; }14622 if ${lt_cv_prog_compiler_pic_works_CXX+:} false; then :14623 $as_echo_n "(cached) " >&614624 else14625 lt_cv_prog_compiler_pic_works_CXX=no14626 ac_outfile=conftest.$ac_objext14627 echo "$lt_simple_compile_test_code" > conftest.$ac_ext14628 lt_compiler_flag="$lt_prog_compiler_pic_CXX -DPIC" ## exclude from sc_useless_quotes_in_assignment14629 # Insert the option either (1) after the last *FLAGS variable, or14630 # (2) before a word containing "conftest.", or (3) at the end.14631 # Note that $ac_compile itself does not contain backslashes and begins14632 # with a dollar sign (not a hyphen), so the echo should work correctly.14633 # The option is referenced via a variable to avoid confusing sed.14634 lt_compile=`echo "$ac_compile" | $SED \14635 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \14636 -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \14637 -e 's:$: $lt_compiler_flag:'`14638 (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5)14639 (eval "$lt_compile" 2>conftest.err)14640 ac_status=$?14641 cat conftest.err >&514642 echo "$as_me:$LINENO: \$? = $ac_status" >&514643 if (exit $ac_status) && test -s "$ac_outfile"; then14644 # The compiler can only warn and ignore the option if not recognized14645 # So say no if there are warnings other than the usual output.14646 $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp14647 $SED '/^$/d; /^ *+/d' conftest.err >conftest.er214648 if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then14649 lt_cv_prog_compiler_pic_works_CXX=yes14650 fi14651 fi14652 $RM conftest*14653 14654 fi14655 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic_works_CXX" >&514656 $as_echo "$lt_cv_prog_compiler_pic_works_CXX" >&6; }14657 14658 if test yes = "$lt_cv_prog_compiler_pic_works_CXX"; then14659 case $lt_prog_compiler_pic_CXX in14660 "" | " "*) ;;14661 *) lt_prog_compiler_pic_CXX=" $lt_prog_compiler_pic_CXX" ;;14662 esac14663 else14664 lt_prog_compiler_pic_CXX=14665 lt_prog_compiler_can_build_shared_CXX=no14666 fi14667 14668 fi14669 14670 14671 14672 14673 14674 #14675 # Check to make sure the static flag actually works.14676 #14677 wl=$lt_prog_compiler_wl_CXX eval lt_tmp_static_flag=\"$lt_prog_compiler_static_CXX\"14678 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler static flag $lt_tmp_static_flag works" >&514679 $as_echo_n "checking if $compiler static flag $lt_tmp_static_flag works... " >&6; }14680 if ${lt_cv_prog_compiler_static_works_CXX+:} false; then :14681 $as_echo_n "(cached) " >&614682 else14683 lt_cv_prog_compiler_static_works_CXX=no14684 save_LDFLAGS=$LDFLAGS14685 LDFLAGS="$LDFLAGS $lt_tmp_static_flag"14686 echo "$lt_simple_link_test_code" > conftest.$ac_ext14687 if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then14688 # The linker can only warn and ignore the option if not recognized14689 # So say no if there are warnings14690 if test -s conftest.err; then14691 # Append any errors to the config.log.14692 cat conftest.err 1>&514693 $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp14694 $SED '/^$/d; /^ *+/d' conftest.err >conftest.er214695 if diff conftest.exp conftest.er2 >/dev/null; then14696 lt_cv_prog_compiler_static_works_CXX=yes14697 fi14698 else14699 lt_cv_prog_compiler_static_works_CXX=yes14700 fi14701 fi14702 $RM -r conftest*14703 LDFLAGS=$save_LDFLAGS14704 14705 fi14706 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_static_works_CXX" >&514707 $as_echo "$lt_cv_prog_compiler_static_works_CXX" >&6; }14708 14709 if test yes = "$lt_cv_prog_compiler_static_works_CXX"; then14710 :14711 else14712 lt_prog_compiler_static_CXX=14713 fi14714 14715 14716 14717 14718 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&514719 $as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; }14720 if ${lt_cv_prog_compiler_c_o_CXX+:} false; then :14721 $as_echo_n "(cached) " >&614722 else14723 lt_cv_prog_compiler_c_o_CXX=no14724 $RM -r conftest 2>/dev/null14725 mkdir conftest14726 cd conftest14727 mkdir out14728 echo "$lt_simple_compile_test_code" > conftest.$ac_ext14729 14730 lt_compiler_flag="-o out/conftest2.$ac_objext"14731 # Insert the option either (1) after the last *FLAGS variable, or14732 # (2) before a word containing "conftest.", or (3) at the end.14733 # Note that $ac_compile itself does not contain backslashes and begins14734 # with a dollar sign (not a hyphen), so the echo should work correctly.14735 lt_compile=`echo "$ac_compile" | $SED \14736 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \14737 -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \14738 -e 's:$: $lt_compiler_flag:'`14739 (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5)14740 (eval "$lt_compile" 2>out/conftest.err)14741 ac_status=$?14742 cat out/conftest.err >&514743 echo "$as_me:$LINENO: \$? = $ac_status" >&514744 if (exit $ac_status) && test -s out/conftest2.$ac_objext14745 then14746 # The compiler can only warn and ignore the option if not recognized14747 # So say no if there are warnings14748 $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp14749 $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er214750 if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then14751 lt_cv_prog_compiler_c_o_CXX=yes14752 fi14753 fi14754 chmod u+w . 2>&514755 $RM conftest*14756 # SGI C++ compiler will create directory out/ii_files/ for14757 # template instantiation14758 test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files14759 $RM out/* && rmdir out14760 cd ..14761 $RM -r conftest14762 $RM conftest*14763 14764 fi14765 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o_CXX" >&514766 $as_echo "$lt_cv_prog_compiler_c_o_CXX" >&6; }14767 14768 14769 14770 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&514771 $as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; }14772 if ${lt_cv_prog_compiler_c_o_CXX+:} false; then :14773 $as_echo_n "(cached) " >&614774 else14775 lt_cv_prog_compiler_c_o_CXX=no14776 $RM -r conftest 2>/dev/null14777 mkdir conftest14778 cd conftest14779 mkdir out14780 echo "$lt_simple_compile_test_code" > conftest.$ac_ext14781 14782 lt_compiler_flag="-o out/conftest2.$ac_objext"14783 # Insert the option either (1) after the last *FLAGS variable, or14784 # (2) before a word containing "conftest.", or (3) at the end.14785 # Note that $ac_compile itself does not contain backslashes and begins14786 # with a dollar sign (not a hyphen), so the echo should work correctly.14787 lt_compile=`echo "$ac_compile" | $SED \14788 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \14789 -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \14790 -e 's:$: $lt_compiler_flag:'`14791 (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5)14792 (eval "$lt_compile" 2>out/conftest.err)14793 ac_status=$?14794 cat out/conftest.err >&514795 echo "$as_me:$LINENO: \$? = $ac_status" >&514796 if (exit $ac_status) && test -s out/conftest2.$ac_objext14797 then14798 # The compiler can only warn and ignore the option if not recognized14799 # So say no if there are warnings14800 $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp14801 $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er214802 if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then14803 lt_cv_prog_compiler_c_o_CXX=yes14804 fi14805 fi14806 chmod u+w . 2>&514807 $RM conftest*14808 # SGI C++ compiler will create directory out/ii_files/ for14809 # template instantiation14810 test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files14811 $RM out/* && rmdir out14812 cd ..14813 $RM -r conftest14814 $RM conftest*14815 14816 fi14817 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o_CXX" >&514818 $as_echo "$lt_cv_prog_compiler_c_o_CXX" >&6; }14819 14820 14821 14822 14823 hard_links=nottested14824 if test no = "$lt_cv_prog_compiler_c_o_CXX" && test no != "$need_locks"; then14825 # do not overwrite the value of need_locks provided by the user14826 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if we can lock with hard links" >&514827 $as_echo_n "checking if we can lock with hard links... " >&6; }14828 hard_links=yes14829 $RM conftest*14830 ln conftest.a conftest.b 2>/dev/null && hard_links=no14831 touch conftest.a14832 ln conftest.a conftest.b 2>&5 || hard_links=no14833 ln conftest.a conftest.b 2>/dev/null && hard_links=no14834 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $hard_links" >&514835 $as_echo "$hard_links" >&6; }14836 if test no = "$hard_links"; then14837 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&514838 $as_echo "$as_me: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&2;}14839 need_locks=warn14840 fi14841 else14842 need_locks=no14843 fi14844 14845 14846 14847 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&514848 $as_echo_n "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; }14849 14850 export_symbols_cmds_CXX='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'14851 exclude_expsyms_CXX='_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'14852 case $host_os in14853 aix[4-9]*)14854 # If we're using GNU nm, then we don't want the "-C" option.14855 # -C means demangle to GNU nm, but means don't demangle to AIX nm.14856 # Without the "-l" option, or with the "-B" option, AIX nm treats14857 # weak defined symbols like other global defined symbols, whereas14858 # GNU nm marks them as "W".14859 # While the 'weak' keyword is ignored in the Export File, we need14860 # it in the Import File for the 'aix-soname' feature, so we have14861 # to replace the "-B" option with "-P" for AIX nm.14862 if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then14863 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'14864 else14865 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'14866 fi14867 ;;14868 pw32*)14869 export_symbols_cmds_CXX=$ltdll_cmds14870 ;;14871 cygwin* | mingw* | cegcc*)14872 case $cc_basename in14873 cl*)14874 exclude_expsyms_CXX='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*'14875 ;;14876 *)14877 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'14878 exclude_expsyms_CXX='[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname'14879 ;;14880 esac14881 ;;14882 linux* | k*bsd*-gnu | gnu*)14883 link_all_deplibs_CXX=no14884 ;;14885 *)14886 export_symbols_cmds_CXX='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'14887 ;;14888 esac14889 14890 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs_CXX" >&514891 $as_echo "$ld_shlibs_CXX" >&6; }14892 test no = "$ld_shlibs_CXX" && can_build_shared=no14893 14894 with_gnu_ld_CXX=$with_gnu_ld14895 14896 14897 14898 14899 14900 14901 #14902 # Do we need to explicitly link libc?14903 #14904 case "x$archive_cmds_need_lc_CXX" in14905 x|xyes)14906 # Assume -lc should be added14907 archive_cmds_need_lc_CXX=yes14908 14909 if test yes,yes = "$GCC,$enable_shared"; then14910 case $archive_cmds_CXX in14911 *'~'*)14912 # FIXME: we may have to deal with multi-command sequences.14913 ;;14914 '$CC '*)14915 # Test whether the compiler implicitly links with -lc since on some14916 # systems, -lgcc has to come before -lc. If gcc already passes -lc14917 # to ld, don't add -lc before -lgcc.14918 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -lc should be explicitly linked in" >&514919 $as_echo_n "checking whether -lc should be explicitly linked in... " >&6; }14920 if ${lt_cv_archive_cmds_need_lc_CXX+:} false; then :14921 $as_echo_n "(cached) " >&614922 else14923 $RM conftest*14924 echo "$lt_simple_compile_test_code" > conftest.$ac_ext14925 14926 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&514927 (eval $ac_compile) 2>&514928 ac_status=$?14929 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&514930 test $ac_status = 0; } 2>conftest.err; then14931 soname=conftest14932 lib=conftest14933 libobjs=conftest.$ac_objext14934 deplibs=14935 wl=$lt_prog_compiler_wl_CXX14936 pic_flag=$lt_prog_compiler_pic_CXX14937 compiler_flags=-v14938 linker_flags=-v14939 verstring=14940 output_objdir=.14941 libname=conftest14942 lt_save_allow_undefined_flag=$allow_undefined_flag_CXX14943 allow_undefined_flag_CXX=14944 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$archive_cmds_CXX 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1\""; } >&514945 (eval $archive_cmds_CXX 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1) 2>&514946 ac_status=$?14947 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&514948 test $ac_status = 0; }14949 then14950 lt_cv_archive_cmds_need_lc_CXX=no14951 else14952 lt_cv_archive_cmds_need_lc_CXX=yes14953 fi14954 allow_undefined_flag_CXX=$lt_save_allow_undefined_flag14955 else14956 cat conftest.err 1>&514957 fi14958 $RM conftest*14959 14960 fi14961 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_archive_cmds_need_lc_CXX" >&514962 $as_echo "$lt_cv_archive_cmds_need_lc_CXX" >&6; }14963 archive_cmds_need_lc_CXX=$lt_cv_archive_cmds_need_lc_CXX14964 ;;14965 esac14966 fi14967 ;;14968 esac14969 14970 14971 14972 14973 14974 14975 14976 14977 14978 14979 14980 14981 14982 14983 14984 14985 14986 14987 14988 14989 14990 14991 14992 14993 14994 14995 14996 14997 14998 14999 15000 15001 15002 15003 15004 15005 15006 15007 15008 15009 15010 15011 15012 15013 15014 15015 15016 15017 15018 15019 15020 15021 15022 15023 15024 15025 15026 15027 15028 15029 15030 15031 { $as_echo "$as_me:${as_lineno-$LINENO}: checking dynamic linker characteristics" >&515032 $as_echo_n "checking dynamic linker characteristics... " >&6; }15033 15034 library_names_spec=15035 libname_spec='lib$name'15036 soname_spec=15037 shrext_cmds=.so15038 postinstall_cmds=15039 postuninstall_cmds=15040 finish_cmds=15041 finish_eval=15042 shlibpath_var=15043 shlibpath_overrides_runpath=unknown15044 version_type=none15045 dynamic_linker="$host_os ld.so"15046 sys_lib_dlsearch_path_spec="/lib /usr/lib"15047 need_lib_prefix=unknown15048 hardcode_into_libs=no15049 15050 # when you set need_version to no, make sure it does not cause -set_version15051 # flags to be left without arguments15052 need_version=unknown15053 15054 15055 15056 case $host_os in15057 aix3*)15058 version_type=linux # correct to gnu/linux during the next big refactor15059 library_names_spec='$libname$release$shared_ext$versuffix $libname.a'15060 shlibpath_var=LIBPATH15061 15062 # AIX 3 has no versioning support, so we append a major version to the name.15063 soname_spec='$libname$release$shared_ext$major'15064 ;;15065 15066 aix[4-9]*)15067 version_type=linux # correct to gnu/linux during the next big refactor15068 need_lib_prefix=no15069 need_version=no15070 hardcode_into_libs=yes15071 if test ia64 = "$host_cpu"; then15072 # AIX 5 supports IA6415073 library_names_spec='$libname$release$shared_ext$major $libname$release$shared_ext$versuffix $libname$shared_ext'15074 shlibpath_var=LD_LIBRARY_PATH15075 else15076 # With GCC up to 2.95.x, collect2 would create an import file15077 # for dependence libraries. The import file would start with15078 # the line '#! .'. This would cause the generated library to15079 # depend on '.', always an invalid library. This was fixed in15080 # development snapshots of GCC prior to 3.0.15081 case $host_os in15082 aix4 | aix4.[01] | aix4.[01].*)15083 if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'15084 echo ' yes '15085 echo '#endif'; } | $CC -E - | $GREP yes > /dev/null; then15086 :15087 else15088 can_build_shared=no15089 fi15090 ;;15091 esac15092 # Using Import Files as archive members, it is possible to support15093 # filename-based versioning of shared library archives on AIX. While15094 # this would work for both with and without runtime linking, it will15095 # prevent static linking of such archives. So we do filename-based15096 # shared library versioning with .so extension only, which is used15097 # when both runtime linking and shared linking is enabled.15098 # Unfortunately, runtime linking may impact performance, so we do15099 # not want this to be the default eventually. Also, we use the15100 # versioned .so libs for executables only if there is the -brtl15101 # linker flag in LDFLAGS as well, or --with-aix-soname=svr4 only.15102 # To allow for filename-based versioning support, we need to create15103 # libNAME.so.V as an archive file, containing:15104 # *) an Import File, referring to the versioned filename of the15105 # archive as well as the shared archive member, telling the15106 # bitwidth (32 or 64) of that shared object, and providing the15107 # list of exported symbols of that shared object, eventually15108 # decorated with the 'weak' keyword15109 # *) the shared object with the F_LOADONLY flag set, to really avoid15110 # it being seen by the linker.15111 # At run time we better use the real file rather than another symlink,15112 # but for link time we create the symlink libNAME.so -> libNAME.so.V15113 15114 case $with_aix_soname,$aix_use_runtimelinking in15115 # AIX (on Power*) has no versioning support, so currently we cannot hardcode correct15116 # soname into executable. Probably we can add versioning support to15117 # collect2, so additional links can be useful in future.15118 aix,yes) # traditional libtool15119 dynamic_linker='AIX unversionable lib.so'15120 # If using run time linking (on AIX 4.2 or later) use lib<name>.so15121 # instead of lib<name>.a to let people know that these are not15122 # typical AIX shared libraries.15123 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'15124 ;;15125 aix,no) # traditional AIX only15126 dynamic_linker='AIX lib.a(lib.so.V)'15127 # We preserve .a as extension for shared libraries through AIX4.215128 # and later when we are not doing run time linking.15129 library_names_spec='$libname$release.a $libname.a'15130 soname_spec='$libname$release$shared_ext$major'15131 ;;15132 svr4,*) # full svr4 only15133 dynamic_linker="AIX lib.so.V($shared_archive_member_spec.o)"15134 library_names_spec='$libname$release$shared_ext$major $libname$shared_ext'15135 # We do not specify a path in Import Files, so LIBPATH fires.15136 shlibpath_overrides_runpath=yes15137 ;;15138 *,yes) # both, prefer svr415139 dynamic_linker="AIX lib.so.V($shared_archive_member_spec.o), lib.a(lib.so.V)"15140 library_names_spec='$libname$release$shared_ext$major $libname$shared_ext'15141 # unpreferred sharedlib libNAME.a needs extra handling15142 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"'15143 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"'15144 # We do not specify a path in Import Files, so LIBPATH fires.15145 shlibpath_overrides_runpath=yes15146 ;;15147 *,no) # both, prefer aix15148 dynamic_linker="AIX lib.a(lib.so.V), lib.so.V($shared_archive_member_spec.o)"15149 library_names_spec='$libname$release.a $libname.a'15150 soname_spec='$libname$release$shared_ext$major'15151 # unpreferred sharedlib libNAME.so.V and symlink libNAME.so need extra handling15152 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)'15153 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"'15154 ;;15155 esac15156 shlibpath_var=LIBPATH15157 fi15158 ;;15159 15160 amigaos*)15161 case $host_cpu in15162 powerpc)15163 # Since July 2007 AmigaOS4 officially supports .so libraries.15164 # When compiling the executable, add -use-dynld -Lsobjs: to the compileline.15165 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'15166 ;;15167 m68k)15168 library_names_spec='$libname.ixlibrary $libname.a'15169 # Create ${libname}_ixlibrary.a entries in /sys/libs.15170 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'15171 ;;15172 esac15173 ;;15174 15175 beos*)15176 library_names_spec='$libname$shared_ext'15177 dynamic_linker="$host_os ld.so"15178 shlibpath_var=LIBRARY_PATH15179 ;;15180 15181 bsdi[45]*)15182 version_type=linux # correct to gnu/linux during the next big refactor15183 need_version=no15184 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'15185 soname_spec='$libname$release$shared_ext$major'15186 finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'15187 shlibpath_var=LD_LIBRARY_PATH15188 sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"15189 sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"15190 # the default ld.so.conf also contains /usr/contrib/lib and15191 # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow15192 # libtool to hard-code these into programs15193 ;;15194 15195 cygwin* | mingw* | pw32* | cegcc*)15196 version_type=windows15197 shrext_cmds=.dll15198 need_version=no15199 need_lib_prefix=no15200 15201 case $GCC,$cc_basename in15202 yes,*)15203 # gcc15204 library_names_spec='$libname.dll.a'15205 # DLL is installed to $(libdir)/../bin by postinstall_cmds15206 postinstall_cmds='base_file=`basename \$file`~15207 dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~15208 dldir=$destdir/`dirname \$dlpath`~15209 test -d \$dldir || mkdir -p \$dldir~15210 $install_prog $dir/$dlname \$dldir/$dlname~15211 chmod a+x \$dldir/$dlname~15212 if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then15213 eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;15214 fi'15215 postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~15216 dlpath=$dir/\$dldll~15217 $RM \$dlpath'15218 shlibpath_overrides_runpath=yes15219 15220 case $host_os in15221 cygwin*)15222 # Cygwin DLLs use 'cyg' prefix rather than 'lib'15223 soname_spec='`echo $libname | sed -e 's/^lib/cyg/'``echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'15224 15225 ;;15226 mingw* | cegcc*)15227 # MinGW DLLs use traditional 'lib' prefix15228 soname_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'15229 ;;15230 pw32*)15231 # pw32 DLLs use 'pw' prefix rather than 'lib'15232 library_names_spec='`echo $libname | sed -e 's/^lib/pw/'``echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'15233 ;;15234 esac15235 dynamic_linker='Win32 ld.exe'15236 ;;15237 15238 *,cl*)15239 # Native MSVC15240 libname_spec='$name'15241 soname_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'15242 library_names_spec='$libname.dll.lib'15243 15244 case $build_os in15245 mingw*)15246 sys_lib_search_path_spec=15247 lt_save_ifs=$IFS15248 IFS=';'15249 for lt_path in $LIB15250 do15251 IFS=$lt_save_ifs15252 # Let DOS variable expansion print the short 8.3 style file name.15253 lt_path=`cd "$lt_path" 2>/dev/null && cmd //C "for %i in (".") do @echo %~si"`15254 sys_lib_search_path_spec="$sys_lib_search_path_spec $lt_path"15255 done15256 IFS=$lt_save_ifs15257 # Convert to MSYS style.15258 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | sed -e 's|\\\\|/|g' -e 's| \\([a-zA-Z]\\):| /\\1|g' -e 's|^ ||'`15259 ;;15260 cygwin*)15261 # Convert to unix form, then to dos form, then back to unix form15262 # but this time dos style (no spaces!) so that the unix form looks15263 # like /cygdrive/c/PROGRA~1:/cygdr...15264 sys_lib_search_path_spec=`cygpath --path --unix "$LIB"`15265 sys_lib_search_path_spec=`cygpath --path --dos "$sys_lib_search_path_spec" 2>/dev/null`15266 sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`15267 ;;15268 *)15269 sys_lib_search_path_spec=$LIB15270 if $ECHO "$sys_lib_search_path_spec" | $GREP ';[c-zC-Z]:/' >/dev/null; then15271 # It is most probably a Windows format PATH.15272 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`15273 else15274 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`15275 fi15276 # FIXME: find the short name or the path components, as spaces are15277 # common. (e.g. "Program Files" -> "PROGRA~1")15278 ;;15279 esac15280 15281 # DLL is installed to $(libdir)/../bin by postinstall_cmds15282 postinstall_cmds='base_file=`basename \$file`~15283 dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~15284 dldir=$destdir/`dirname \$dlpath`~15285 test -d \$dldir || mkdir -p \$dldir~15286 $install_prog $dir/$dlname \$dldir/$dlname'15287 postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~15288 dlpath=$dir/\$dldll~15289 $RM \$dlpath'15290 shlibpath_overrides_runpath=yes15291 dynamic_linker='Win32 link.exe'15292 ;;15293 15294 *)15295 # Assume MSVC wrapper15296 library_names_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext $libname.lib'15297 dynamic_linker='Win32 ld.exe'15298 ;;15299 esac15300 # FIXME: first we should search . and the directory the executable is in15301 shlibpath_var=PATH15302 ;;15303 15304 darwin* | rhapsody*)15305 dynamic_linker="$host_os dyld"15306 version_type=darwin15307 need_lib_prefix=no15308 need_version=no15309 library_names_spec='$libname$release$major$shared_ext $libname$shared_ext'15310 soname_spec='$libname$release$major$shared_ext'15311 shlibpath_overrides_runpath=yes15312 shlibpath_var=DYLD_LIBRARY_PATH15313 shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'15314 15315 sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'15316 ;;15317 15318 dgux*)15319 version_type=linux # correct to gnu/linux during the next big refactor15320 need_lib_prefix=no15321 need_version=no15322 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'15323 soname_spec='$libname$release$shared_ext$major'15324 shlibpath_var=LD_LIBRARY_PATH15325 ;;15326 15327 freebsd* | dragonfly*)15328 # DragonFly does not have aout. When/if they implement a new15329 # versioning mechanism, adjust this.15330 if test -x /usr/bin/objformat; then15331 objformat=`/usr/bin/objformat`15332 else15333 case $host_os in15334 freebsd[23].*) objformat=aout ;;15335 *) objformat=elf ;;15336 esac15337 fi15338 version_type=freebsd-$objformat15339 case $version_type in15340 freebsd-elf*)15341 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'15342 soname_spec='$libname$release$shared_ext$major'15343 need_version=no15344 need_lib_prefix=no15345 ;;15346 freebsd-*)15347 library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'15348 need_version=yes15349 ;;15350 esac15351 shlibpath_var=LD_LIBRARY_PATH15352 case $host_os in15353 freebsd2.*)15354 shlibpath_overrides_runpath=yes15355 ;;15356 freebsd3.[01]* | freebsdelf3.[01]*)15357 shlibpath_overrides_runpath=yes15358 hardcode_into_libs=yes15359 ;;15360 freebsd3.[2-9]* | freebsdelf3.[2-9]* | \15361 freebsd4.[0-5] | freebsdelf4.[0-5] | freebsd4.1.1 | freebsdelf4.1.1)15362 shlibpath_overrides_runpath=no15363 hardcode_into_libs=yes15364 ;;15365 *) # from 4.6 on, and DragonFly15366 shlibpath_overrides_runpath=yes15367 hardcode_into_libs=yes15368 ;;15369 esac15370 ;;15371 15372 haiku*)15373 version_type=linux # correct to gnu/linux during the next big refactor15374 need_lib_prefix=no15375 need_version=no15376 dynamic_linker="$host_os runtime_loader"15377 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'15378 soname_spec='$libname$release$shared_ext$major'15379 shlibpath_var=LIBRARY_PATH15380 shlibpath_overrides_runpath=no15381 sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib'15382 hardcode_into_libs=yes15383 ;;15384 15385 hpux9* | hpux10* | hpux11*)15386 # Give a soname corresponding to the major version so that dld.sl refuses to15387 # link against other versions.15388 version_type=sunos15389 need_lib_prefix=no15390 need_version=no15391 case $host_cpu in15392 ia64*)15393 shrext_cmds='.so'15394 hardcode_into_libs=yes15395 dynamic_linker="$host_os dld.so"15396 shlibpath_var=LD_LIBRARY_PATH15397 shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.15398 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'15399 soname_spec='$libname$release$shared_ext$major'15400 if test 32 = "$HPUX_IA64_MODE"; then15401 sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"15402 sys_lib_dlsearch_path_spec=/usr/lib/hpux3215403 else15404 sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"15405 sys_lib_dlsearch_path_spec=/usr/lib/hpux6415406 fi15407 ;;15408 hppa*64*)15409 shrext_cmds='.sl'15410 hardcode_into_libs=yes15411 dynamic_linker="$host_os dld.sl"15412 shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH15413 shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.15414 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'15415 soname_spec='$libname$release$shared_ext$major'15416 sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64"15417 sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec15418 ;;15419 *)15420 shrext_cmds='.sl'15421 dynamic_linker="$host_os dld.sl"15422 shlibpath_var=SHLIB_PATH15423 shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH15424 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'15425 soname_spec='$libname$release$shared_ext$major'15426 ;;15427 esac15428 # HP-UX runs *really* slowly unless shared libraries are mode 555, ...15429 postinstall_cmds='chmod 555 $lib'15430 # or fails outright, so override atomically:15431 install_override_mode=55515432 ;;15433 15434 interix[3-9]*)15435 version_type=linux # correct to gnu/linux during the next big refactor15436 need_lib_prefix=no15437 need_version=no15438 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'15439 soname_spec='$libname$release$shared_ext$major'15440 dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)'15441 shlibpath_var=LD_LIBRARY_PATH15442 shlibpath_overrides_runpath=no15443 hardcode_into_libs=yes15444 ;;15445 15446 irix5* | irix6* | nonstopux*)15447 case $host_os in15448 nonstopux*) version_type=nonstopux ;;15449 *)15450 if test yes = "$lt_cv_prog_gnu_ld"; then15451 version_type=linux # correct to gnu/linux during the next big refactor15452 else15453 version_type=irix15454 fi ;;15455 esac15456 need_lib_prefix=no15457 need_version=no15458 soname_spec='$libname$release$shared_ext$major'15459 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$release$shared_ext $libname$shared_ext'15460 case $host_os in15461 irix5* | nonstopux*)15462 libsuff= shlibsuff=15463 ;;15464 *)15465 case $LD in # libtool.m4 will add one of these switches to LD15466 *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ")15467 libsuff= shlibsuff= libmagic=32-bit;;15468 *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ")15469 libsuff=32 shlibsuff=N32 libmagic=N32;;15470 *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ")15471 libsuff=64 shlibsuff=64 libmagic=64-bit;;15472 *) libsuff= shlibsuff= libmagic=never-match;;15473 esac15474 ;;15475 esac15476 shlibpath_var=LD_LIBRARY${shlibsuff}_PATH15477 shlibpath_overrides_runpath=no15478 sys_lib_search_path_spec="/usr/lib$libsuff /lib$libsuff /usr/local/lib$libsuff"15479 sys_lib_dlsearch_path_spec="/usr/lib$libsuff /lib$libsuff"15480 hardcode_into_libs=yes15481 ;;15482 15483 # No shared lib support for Linux oldld, aout, or coff.15484 linux*oldld* | linux*aout* | linux*coff*)15485 dynamic_linker=no15486 ;;15487 15488 linux*android*)15489 version_type=none # Android doesn't support versioned libraries.15490 need_lib_prefix=no15491 need_version=no15492 library_names_spec='$libname$release$shared_ext'15493 soname_spec='$libname$release$shared_ext'15494 finish_cmds=15495 shlibpath_var=LD_LIBRARY_PATH15496 shlibpath_overrides_runpath=yes15497 15498 # This implies no fast_install, which is unacceptable.15499 # Some rework will be needed to allow for fast_install15500 # before this can be enabled.15501 hardcode_into_libs=yes15502 15503 dynamic_linker='Android linker'15504 # Don't embed -rpath directories since the linker doesn't support them.15505 hardcode_libdir_flag_spec_CXX='-L$libdir'15506 ;;15507 15508 # This must be glibc/ELF.15509 linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)15510 version_type=linux # correct to gnu/linux during the next big refactor15511 need_lib_prefix=no15512 need_version=no15513 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'15514 soname_spec='$libname$release$shared_ext$major'15515 finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'15516 shlibpath_var=LD_LIBRARY_PATH15517 shlibpath_overrides_runpath=no15518 15519 # Some binutils ld are patched to set DT_RUNPATH15520 if ${lt_cv_shlibpath_overrides_runpath+:} false; then :15521 $as_echo_n "(cached) " >&615522 else15523 lt_cv_shlibpath_overrides_runpath=no15524 save_LDFLAGS=$LDFLAGS15525 save_libdir=$libdir15526 eval "libdir=/foo; wl=\"$lt_prog_compiler_wl_CXX\"; \15527 LDFLAGS=\"\$LDFLAGS $hardcode_libdir_flag_spec_CXX\""15528 cat confdefs.h - <<_ACEOF >conftest.$ac_ext15529 /* end confdefs.h. */15530 15531 int15532 main ()15533 {15534 15535 ;15536 return 0;15537 }15538 _ACEOF15539 if ac_fn_cxx_try_link "$LINENO"; then :15540 if ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null; then :15541 lt_cv_shlibpath_overrides_runpath=yes15542 fi15543 fi15544 rm -f core conftest.err conftest.$ac_objext \15545 conftest$ac_exeext conftest.$ac_ext15546 LDFLAGS=$save_LDFLAGS15547 libdir=$save_libdir15548 15549 fi15550 15551 shlibpath_overrides_runpath=$lt_cv_shlibpath_overrides_runpath15552 15553 # This implies no fast_install, which is unacceptable.15554 # Some rework will be needed to allow for fast_install15555 # before this can be enabled.15556 hardcode_into_libs=yes15557 15558 # Ideally, we could use ldconfig to report *all* directores which are15559 # searched for libraries, however this is still not possible. Aside from not15560 # being certain /sbin/ldconfig is available, command15561 # 'ldconfig -N -X -v | grep ^/' on 64bit Fedora does not report /usr/lib64,15562 # even though it is searched at run-time. Try to do the best guess by15563 # appending ld.so.conf contents (and includes) to the search path.15564 if test -f /etc/ld.so.conf; then15565 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' ' '`15566 sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"15567 fi15568 15569 # We used to test for /lib/ld.so.1 and disable shared libraries on15570 # powerpc, because MkLinux only supported shared libraries with the15571 # GNU dynamic linker. Since this was broken with cross compilers,15572 # most powerpc-linux boxes support dynamic linking these days and15573 # people can always --disable-shared, the test was removed, and we15574 # assume the GNU/Linux dynamic linker is in use.15575 dynamic_linker='GNU/Linux ld.so'15576 ;;15577 15578 netbsdelf*-gnu)15579 version_type=linux15580 need_lib_prefix=no15581 need_version=no15582 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'15583 soname_spec='${libname}${release}${shared_ext}$major'15584 shlibpath_var=LD_LIBRARY_PATH15585 shlibpath_overrides_runpath=no15586 hardcode_into_libs=yes15587 dynamic_linker='NetBSD ld.elf_so'15588 ;;15589 15590 netbsd*)15591 version_type=sunos15592 need_lib_prefix=no15593 need_version=no15594 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then15595 library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'15596 finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'15597 dynamic_linker='NetBSD (a.out) ld.so'15598 else15599 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'15600 soname_spec='$libname$release$shared_ext$major'15601 dynamic_linker='NetBSD ld.elf_so'15602 fi15603 shlibpath_var=LD_LIBRARY_PATH15604 shlibpath_overrides_runpath=yes15605 hardcode_into_libs=yes15606 ;;15607 15608 newsos6)15609 version_type=linux # correct to gnu/linux during the next big refactor15610 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'15611 shlibpath_var=LD_LIBRARY_PATH15612 shlibpath_overrides_runpath=yes15613 ;;15614 15615 *nto* | *qnx*)15616 version_type=qnx15617 need_lib_prefix=no15618 need_version=no15619 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'15620 soname_spec='$libname$release$shared_ext$major'15621 shlibpath_var=LD_LIBRARY_PATH15622 shlibpath_overrides_runpath=no15623 hardcode_into_libs=yes15624 dynamic_linker='ldqnx.so'15625 ;;15626 15627 openbsd* | bitrig*)15628 version_type=sunos15629 sys_lib_dlsearch_path_spec=/usr/lib15630 need_lib_prefix=no15631 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then15632 need_version=no15633 else15634 need_version=yes15635 fi15636 library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'15637 finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'15638 shlibpath_var=LD_LIBRARY_PATH15639 shlibpath_overrides_runpath=yes15640 ;;15641 15642 os2*)15643 libname_spec='$name'15644 version_type=windows15645 shrext_cmds=.dll15646 need_version=no15647 need_lib_prefix=no15648 # OS/2 can only load a DLL with a base name of 8 characters or less.15649 soname_spec='`test -n "$os2dllname" && libname="$os2dllname";15650 v=$($ECHO $release$versuffix | tr -d .-);15651 n=$($ECHO $libname | cut -b -$((8 - ${#v})) | tr . _);15652 $ECHO $n$v`$shared_ext'15653 library_names_spec='${libname}_dll.$libext'15654 dynamic_linker='OS/2 ld.exe'15655 shlibpath_var=BEGINLIBPATH15656 sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"15657 sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec15658 postinstall_cmds='base_file=`basename \$file`~15659 dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; $ECHO \$dlname'\''`~15660 dldir=$destdir/`dirname \$dlpath`~15661 test -d \$dldir || mkdir -p \$dldir~15662 $install_prog $dir/$dlname \$dldir/$dlname~15663 chmod a+x \$dldir/$dlname~15664 if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then15665 eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;15666 fi'15667 postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; $ECHO \$dlname'\''`~15668 dlpath=$dir/\$dldll~15669 $RM \$dlpath'15670 ;;15671 15672 osf3* | osf4* | osf5*)15673 version_type=osf15674 need_lib_prefix=no15675 need_version=no15676 soname_spec='$libname$release$shared_ext$major'15677 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'15678 shlibpath_var=LD_LIBRARY_PATH15679 sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"15680 sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec15681 ;;15682 15683 rdos*)15684 dynamic_linker=no15685 ;;15686 15687 solaris*)15688 version_type=linux # correct to gnu/linux during the next big refactor15689 need_lib_prefix=no15690 need_version=no15691 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'15692 soname_spec='$libname$release$shared_ext$major'15693 shlibpath_var=LD_LIBRARY_PATH15694 shlibpath_overrides_runpath=yes15695 hardcode_into_libs=yes15696 # ldd complains unless libraries are executable15697 postinstall_cmds='chmod +x $lib'15698 ;;15699 15700 sunos4*)15701 version_type=sunos15702 library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'15703 finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'15704 shlibpath_var=LD_LIBRARY_PATH15705 shlibpath_overrides_runpath=yes15706 if test yes = "$with_gnu_ld"; then15707 need_lib_prefix=no15708 fi15709 need_version=yes15710 ;;15711 15712 sysv4 | sysv4.3*)15713 version_type=linux # correct to gnu/linux during the next big refactor15714 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'15715 soname_spec='$libname$release$shared_ext$major'15716 shlibpath_var=LD_LIBRARY_PATH15717 case $host_vendor in15718 sni)15719 shlibpath_overrides_runpath=no15720 need_lib_prefix=no15721 runpath_var=LD_RUN_PATH15722 ;;15723 siemens)15724 need_lib_prefix=no15725 ;;15726 motorola)15727 need_lib_prefix=no15728 need_version=no15729 shlibpath_overrides_runpath=no15730 sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'15731 ;;15732 esac15733 ;;15734 15735 sysv4*MP*)15736 if test -d /usr/nec; then15737 version_type=linux # correct to gnu/linux during the next big refactor15738 library_names_spec='$libname$shared_ext.$versuffix $libname$shared_ext.$major $libname$shared_ext'15739 soname_spec='$libname$shared_ext.$major'15740 shlibpath_var=LD_LIBRARY_PATH15741 fi15742 ;;15743 15744 sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)15745 version_type=sco15746 need_lib_prefix=no15747 need_version=no15748 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext $libname$shared_ext'15749 soname_spec='$libname$release$shared_ext$major'15750 shlibpath_var=LD_LIBRARY_PATH15751 shlibpath_overrides_runpath=yes15752 hardcode_into_libs=yes15753 if test yes = "$with_gnu_ld"; then15754 sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib'15755 else15756 sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'15757 case $host_os in15758 sco3.2v5*)15759 sys_lib_search_path_spec="$sys_lib_search_path_spec /lib"15760 ;;15761 esac15762 fi15763 sys_lib_dlsearch_path_spec='/usr/lib'15764 ;;15765 15766 tpf*)15767 # TPF is a cross-target only. Preferred cross-host = GNU/Linux.15768 version_type=linux # correct to gnu/linux during the next big refactor15769 need_lib_prefix=no15770 need_version=no15771 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'15772 shlibpath_var=LD_LIBRARY_PATH15773 shlibpath_overrides_runpath=no15774 hardcode_into_libs=yes15775 ;;15776 15777 uts4*)15778 version_type=linux # correct to gnu/linux during the next big refactor15779 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'15780 soname_spec='$libname$release$shared_ext$major'15781 shlibpath_var=LD_LIBRARY_PATH15782 ;;15783 15784 *)15785 dynamic_linker=no15786 ;;15787 esac15788 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $dynamic_linker" >&515789 $as_echo "$dynamic_linker" >&6; }15790 test no = "$dynamic_linker" && can_build_shared=no15791 15792 variables_saved_for_relink="PATH $shlibpath_var $runpath_var"15793 if test yes = "$GCC"; then15794 variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"15795 fi15796 15797 if test set = "${lt_cv_sys_lib_search_path_spec+set}"; then15798 sys_lib_search_path_spec=$lt_cv_sys_lib_search_path_spec15799 fi15800 15801 if test set = "${lt_cv_sys_lib_dlsearch_path_spec+set}"; then15802 sys_lib_dlsearch_path_spec=$lt_cv_sys_lib_dlsearch_path_spec15803 fi15804 15805 # remember unaugmented sys_lib_dlsearch_path content for libtool script decls...15806 configure_time_dlsearch_path=$sys_lib_dlsearch_path_spec15807 15808 # ... but it needs LT_SYS_LIBRARY_PATH munging for other configure-time code15809 func_munge_path_list sys_lib_dlsearch_path_spec "$LT_SYS_LIBRARY_PATH"15810 15811 # to be used as default LT_SYS_LIBRARY_PATH value in generated libtool15812 configure_time_lt_sys_library_path=$LT_SYS_LIBRARY_PATH15813 15814 15815 15816 15817 15818 15819 15820 15821 15822 15823 15824 15825 15826 15827 15828 15829 15830 15831 15832 15833 15834 15835 15836 15837 15838 15839 15840 15841 15842 15843 15844 15845 15846 15847 15848 15849 15850 15851 15852 15853 { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to hardcode library paths into programs" >&515854 $as_echo_n "checking how to hardcode library paths into programs... " >&6; }15855 hardcode_action_CXX=15856 if test -n "$hardcode_libdir_flag_spec_CXX" ||15857 test -n "$runpath_var_CXX" ||15858 test yes = "$hardcode_automatic_CXX"; then15859 15860 # We can hardcode non-existent directories.15861 if test no != "$hardcode_direct_CXX" &&15862 # If the only mechanism to avoid hardcoding is shlibpath_var, we15863 # have to relink, otherwise we might link with an installed library15864 # when we should be linking with a yet-to-be-installed one15865 ## test no != "$_LT_TAGVAR(hardcode_shlibpath_var, CXX)" &&15866 test no != "$hardcode_minus_L_CXX"; then15867 # Linking always hardcodes the temporary library directory.15868 hardcode_action_CXX=relink15869 else15870 # We can link without hardcoding, and we can hardcode nonexisting dirs.15871 hardcode_action_CXX=immediate15872 fi15873 else15874 # We cannot hardcode anything, or else we can only hardcode existing15875 # directories.15876 hardcode_action_CXX=unsupported15877 fi15878 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $hardcode_action_CXX" >&515879 $as_echo "$hardcode_action_CXX" >&6; }15880 15881 if test relink = "$hardcode_action_CXX" ||15882 test yes = "$inherit_rpath_CXX"; then15883 # Fast installation is not supported15884 enable_fast_install=no15885 elif test yes = "$shlibpath_overrides_runpath" ||15886 test no = "$enable_shared"; then15887 # Fast installation is not necessary15888 enable_fast_install=needless15889 fi15890 15891 15892 15893 15894 15895 15896 15897 fi # test -n "$compiler"15898 15899 CC=$lt_save_CC15900 CFLAGS=$lt_save_CFLAGS15901 LDCXX=$LD15902 LD=$lt_save_LD15903 GCC=$lt_save_GCC15904 with_gnu_ld=$lt_save_with_gnu_ld15905 lt_cv_path_LDCXX=$lt_cv_path_LD15906 lt_cv_path_LD=$lt_save_path_LD15907 lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld15908 lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld15909 fi # test yes != "$_lt_caught_CXX_error"15910 15911 ac_ext=c15912 ac_cpp='$CPP $CPPFLAGS'15913 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'15914 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'15915 ac_compiler_gnu=$ac_cv_c_compiler_gnu15916 15917 15918 ac_ext=c15919 ac_cpp='$CPP $CPPFLAGS'15920 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'15921 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'15922 ac_compiler_gnu=$ac_cv_c_compiler_gnu15923 if test -n "$ac_tool_prefix"; then15924 # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args.15925 set dummy ${ac_tool_prefix}gcc; ac_word=$215926 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&515927 $as_echo_n "checking for $ac_word... " >&6; }15928 if ${ac_cv_prog_CC+:} false; then :15929 $as_echo_n "(cached) " >&615930 else15931 if test -n "$CC"; then15932 ac_cv_prog_CC="$CC" # Let the user override the test.15933 else15934 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR15935 for as_dir in $PATH15936 do15937 IFS=$as_save_IFS15938 test -z "$as_dir" && as_dir=.15939 for ac_exec_ext in '' $ac_executable_extensions; do15940 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then15941 ac_cv_prog_CC="${ac_tool_prefix}gcc"15942 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&515943 break 215944 fi15945 done15946 done15947 IFS=$as_save_IFS15948 15949 fi15950 fi15951 CC=$ac_cv_prog_CC15952 if test -n "$CC"; then15953 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&515954 $as_echo "$CC" >&6; }15955 else15956 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&515957 $as_echo "no" >&6; }15958 fi15959 15960 15961 fi15962 if test -z "$ac_cv_prog_CC"; then15963 ac_ct_CC=$CC15964 # Extract the first word of "gcc", so it can be a program name with args.15965 set dummy gcc; ac_word=$215966 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&515967 $as_echo_n "checking for $ac_word... " >&6; }15968 if ${ac_cv_prog_ac_ct_CC+:} false; then :15969 $as_echo_n "(cached) " >&615970 else15971 if test -n "$ac_ct_CC"; then15972 ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.15973 else15974 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR15975 for as_dir in $PATH15976 do15977 IFS=$as_save_IFS15978 test -z "$as_dir" && as_dir=.15979 for ac_exec_ext in '' $ac_executable_extensions; do15980 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then15981 ac_cv_prog_ac_ct_CC="gcc"15982 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&515983 break 215984 fi15985 done15986 done15987 IFS=$as_save_IFS15988 15989 fi15990 fi15991 ac_ct_CC=$ac_cv_prog_ac_ct_CC15992 if test -n "$ac_ct_CC"; then15993 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&515994 $as_echo "$ac_ct_CC" >&6; }15995 else15996 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&515997 $as_echo "no" >&6; }15998 fi15999 16000 if test "x$ac_ct_CC" = x; then16001 CC=""16002 else16003 case $cross_compiling:$ac_tool_warned in16004 yes:)16005 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&516006 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}16007 ac_tool_warned=yes ;;16008 esac16009 CC=$ac_ct_CC16010 fi16011 else16012 CC="$ac_cv_prog_CC"16013 fi16014 16015 if test -z "$CC"; then16016 if test -n "$ac_tool_prefix"; then16017 # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args.16018 set dummy ${ac_tool_prefix}cc; ac_word=$216019 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&516020 $as_echo_n "checking for $ac_word... " >&6; }16021 if ${ac_cv_prog_CC+:} false; then :16022 $as_echo_n "(cached) " >&616023 else16024 if test -n "$CC"; then16025 ac_cv_prog_CC="$CC" # Let the user override the test.16026 else16027 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR16028 for as_dir in $PATH16029 do16030 IFS=$as_save_IFS16031 test -z "$as_dir" && as_dir=.16032 for ac_exec_ext in '' $ac_executable_extensions; do16033 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then16034 ac_cv_prog_CC="${ac_tool_prefix}cc"16035 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&516036 break 216037 fi16038 done16039 done16040 IFS=$as_save_IFS16041 16042 fi16043 fi16044 CC=$ac_cv_prog_CC16045 if test -n "$CC"; then16046 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&516047 $as_echo "$CC" >&6; }16048 else16049 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&516050 $as_echo "no" >&6; }16051 fi16052 16053 16054 fi16055 fi16056 if test -z "$CC"; then16057 # Extract the first word of "cc", so it can be a program name with args.16058 set dummy cc; ac_word=$216059 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&516060 $as_echo_n "checking for $ac_word... " >&6; }16061 if ${ac_cv_prog_CC+:} false; then :16062 $as_echo_n "(cached) " >&616063 else16064 if test -n "$CC"; then16065 ac_cv_prog_CC="$CC" # Let the user override the test.16066 else16067 ac_prog_rejected=no16068 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR16069 for as_dir in $PATH16070 do16071 IFS=$as_save_IFS16072 test -z "$as_dir" && as_dir=.16073 for ac_exec_ext in '' $ac_executable_extensions; do16074 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then16075 if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then16076 ac_prog_rejected=yes16077 continue16078 fi16079 ac_cv_prog_CC="cc"16080 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&516081 break 216082 fi16083 done16084 done16085 IFS=$as_save_IFS16086 16087 if test $ac_prog_rejected = yes; then16088 # We found a bogon in the path, so make sure we never use it.16089 set dummy $ac_cv_prog_CC16090 shift16091 if test $# != 0; then16092 # We chose a different compiler from the bogus one.16093 # However, it has the same basename, so the bogon will be chosen16094 # first if we set CC to just the basename; use the full file name.16095 shift16096 ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@"16097 fi16098 fi16099 fi16100 fi16101 CC=$ac_cv_prog_CC16102 if test -n "$CC"; then16103 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&516104 $as_echo "$CC" >&6; }16105 else16106 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&516107 $as_echo "no" >&6; }16108 fi16109 16110 16111 fi16112 if test -z "$CC"; then16113 if test -n "$ac_tool_prefix"; then16114 for ac_prog in cl.exe16115 do16116 # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.16117 set dummy $ac_tool_prefix$ac_prog; ac_word=$216118 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&516119 $as_echo_n "checking for $ac_word... " >&6; }16120 if ${ac_cv_prog_CC+:} false; then :16121 $as_echo_n "(cached) " >&616122 else16123 if test -n "$CC"; then16124 ac_cv_prog_CC="$CC" # Let the user override the test.16125 else16126 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR16127 for as_dir in $PATH16128 do16129 IFS=$as_save_IFS16130 test -z "$as_dir" && as_dir=.16131 for ac_exec_ext in '' $ac_executable_extensions; do16132 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then16133 ac_cv_prog_CC="$ac_tool_prefix$ac_prog"16134 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&516135 break 216136 fi16137 done16138 done16139 IFS=$as_save_IFS16140 16141 fi16142 fi16143 CC=$ac_cv_prog_CC16144 if test -n "$CC"; then16145 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&516146 $as_echo "$CC" >&6; }16147 else16148 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&516149 $as_echo "no" >&6; }16150 fi16151 16152 16153 test -n "$CC" && break16154 done16155 fi16156 if test -z "$CC"; then16157 ac_ct_CC=$CC16158 for ac_prog in cl.exe16159 do16160 # Extract the first word of "$ac_prog", so it can be a program name with args.16161 set dummy $ac_prog; ac_word=$216162 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&516163 $as_echo_n "checking for $ac_word... " >&6; }16164 if ${ac_cv_prog_ac_ct_CC+:} false; then :16165 $as_echo_n "(cached) " >&616166 else16167 if test -n "$ac_ct_CC"; then16168 ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.16169 else16170 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR16171 for as_dir in $PATH16172 do16173 IFS=$as_save_IFS16174 test -z "$as_dir" && as_dir=.16175 for ac_exec_ext in '' $ac_executable_extensions; do16176 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then16177 ac_cv_prog_ac_ct_CC="$ac_prog"16178 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&516179 break 216180 fi16181 done16182 done16183 IFS=$as_save_IFS16184 16185 fi16186 fi16187 ac_ct_CC=$ac_cv_prog_ac_ct_CC16188 if test -n "$ac_ct_CC"; then16189 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&516190 $as_echo "$ac_ct_CC" >&6; }16191 else16192 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&516193 $as_echo "no" >&6; }16194 fi16195 16196 16197 test -n "$ac_ct_CC" && break16198 done16199 16200 if test "x$ac_ct_CC" = x; then16201 CC=""16202 else16203 case $cross_compiling:$ac_tool_warned in16204 yes:)16205 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&516206 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}16207 ac_tool_warned=yes ;;16208 esac16209 CC=$ac_ct_CC16210 fi16211 fi16212 16213 fi16214 16215 16216 test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&516217 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}16218 as_fn_error $? "no acceptable C compiler found in \$PATH16219 See \`config.log' for more details" "$LINENO" 5; }16220 16221 # Provide some information about the compiler.16222 $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&516223 set X $ac_compile16224 ac_compiler=$216225 for ac_option in --version -v -V -qversion; do16226 { { ac_try="$ac_compiler $ac_option >&5"16227 case "(($ac_try" in16228 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;16229 *) ac_try_echo=$ac_try;;16230 esac16231 eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""16232 $as_echo "$ac_try_echo"; } >&516233 (eval "$ac_compiler $ac_option >&5") 2>conftest.err16234 ac_status=$?16235 if test -s conftest.err; then16236 sed '10a\16237 ... rest of stderr output deleted ...16238 10q' conftest.err >conftest.er116239 cat conftest.er1 >&516240 fi16241 rm -f conftest.er1 conftest.err16242 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&516243 test $ac_status = 0; }16244 done16245 16246 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&516247 $as_echo_n "checking whether we are using the GNU C compiler... " >&6; }16248 if ${ac_cv_c_compiler_gnu+:} false; then :16249 $as_echo_n "(cached) " >&616250 else16251 cat confdefs.h - <<_ACEOF >conftest.$ac_ext16252 /* end confdefs.h. */16253 16254 int16255 main ()16256 {16257 #ifndef __GNUC__16258 choke me16259 #endif16260 16261 ;16262 return 0;16263 }16264 _ACEOF16265 if ac_fn_c_try_compile "$LINENO"; then :16266 ac_compiler_gnu=yes16267 else16268 ac_compiler_gnu=no16269 fi16270 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext16271 ac_cv_c_compiler_gnu=$ac_compiler_gnu16272 16273 fi16274 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&516275 $as_echo "$ac_cv_c_compiler_gnu" >&6; }16276 if test $ac_compiler_gnu = yes; then16277 GCC=yes16278 else16279 GCC=16280 fi16281 ac_test_CFLAGS=${CFLAGS+set}16282 ac_save_CFLAGS=$CFLAGS16283 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&516284 $as_echo_n "checking whether $CC accepts -g... " >&6; }16285 if ${ac_cv_prog_cc_g+:} false; then :16286 $as_echo_n "(cached) " >&616287 else16288 ac_save_c_werror_flag=$ac_c_werror_flag16289 ac_c_werror_flag=yes16290 ac_cv_prog_cc_g=no16291 CFLAGS="-g"16292 cat confdefs.h - <<_ACEOF >conftest.$ac_ext16293 /* end confdefs.h. */16294 16295 int16296 main ()16297 {16298 16299 ;16300 return 0;16301 }16302 _ACEOF16303 if ac_fn_c_try_compile "$LINENO"; then :16304 ac_cv_prog_cc_g=yes16305 else16306 CFLAGS=""16307 cat confdefs.h - <<_ACEOF >conftest.$ac_ext16308 /* end confdefs.h. */16309 16310 int16311 main ()16312 {16313 16314 ;16315 return 0;16316 }16317 _ACEOF16318 if ac_fn_c_try_compile "$LINENO"; then :16319 16320 else16321 ac_c_werror_flag=$ac_save_c_werror_flag16322 CFLAGS="-g"16323 cat confdefs.h - <<_ACEOF >conftest.$ac_ext16324 /* end confdefs.h. */16325 16326 int16327 main ()16328 {16329 16330 ;16331 return 0;16332 }16333 _ACEOF16334 if ac_fn_c_try_compile "$LINENO"; then :16335 ac_cv_prog_cc_g=yes16336 fi16337 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext16338 fi16339 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext16340 fi16341 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext16342 ac_c_werror_flag=$ac_save_c_werror_flag16343 fi16344 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&516345 $as_echo "$ac_cv_prog_cc_g" >&6; }16346 if test "$ac_test_CFLAGS" = set; then16347 CFLAGS=$ac_save_CFLAGS16348 elif test $ac_cv_prog_cc_g = yes; then16349 if test "$GCC" = yes; then16350 CFLAGS="-g -O2"16351 else16352 CFLAGS="-g"16353 fi16354 else16355 if test "$GCC" = yes; then16356 CFLAGS="-O2"16357 else16358 CFLAGS=16359 fi16360 fi16361 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&516362 $as_echo_n "checking for $CC option to accept ISO C89... " >&6; }16363 if ${ac_cv_prog_cc_c89+:} false; then :16364 $as_echo_n "(cached) " >&616365 else16366 ac_cv_prog_cc_c89=no16367 ac_save_CC=$CC16368 cat confdefs.h - <<_ACEOF >conftest.$ac_ext16369 /* end confdefs.h. */16370 #include <stdarg.h>16371 #include <stdio.h>16372 struct stat;16373 /* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */16374 struct buf { int x; };16375 FILE * (*rcsopen) (struct buf *, struct stat *, int);16376 static char *e (p, i)16377 char **p;16378 int i;16379 {16380 return p[i];16381 }16382 static char *f (char * (*g) (char **, int), char **p, ...)16383 {16384 char *s;16385 va_list v;16386 va_start (v,p);16387 s = g (p, va_arg (v,int));16388 va_end (v);16389 return s;16390 }16391 16392 /* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has16393 function prototypes and stuff, but not '\xHH' hex character constants.16394 These don't provoke an error unfortunately, instead are silently treated16395 as 'x'. The following induces an error, until -std is added to get16396 proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an16397 array size at least. It's necessary to write '\x00'==0 to get something16398 that's true only with -std. */16399 int osf4_cc_array ['\x00' == 0 ? 1 : -1];16400 16401 /* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters16402 inside strings and character constants. */16403 #define FOO(x) 'x'16404 int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1];16405 16406 int test (int i, double x);16407 struct s1 {int (*f) (int a);};16408 struct s2 {int (*f) (double a);};16409 int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int);16410 int argc;16411 char **argv;16412 int16413 main ()16414 {16415 return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1];16416 ;16417 return 0;16418 }16419 _ACEOF16420 for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \16421 -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"16422 do16423 CC="$ac_save_CC $ac_arg"16424 if ac_fn_c_try_compile "$LINENO"; then :16425 ac_cv_prog_cc_c89=$ac_arg16426 fi16427 rm -f core conftest.err conftest.$ac_objext16428 test "x$ac_cv_prog_cc_c89" != "xno" && break16429 done16430 rm -f conftest.$ac_ext16431 CC=$ac_save_CC16432 16433 fi16434 # AC_CACHE_VAL16435 case "x$ac_cv_prog_cc_c89" in16436 x)16437 { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&516438 $as_echo "none needed" >&6; } ;;16439 xno)16440 { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&516441 $as_echo "unsupported" >&6; } ;;16442 *)16443 CC="$CC $ac_cv_prog_cc_c89"16444 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&516445 $as_echo "$ac_cv_prog_cc_c89" >&6; } ;;16446 esac16447 if test "x$ac_cv_prog_cc_c89" != xno; then :16448 16449 fi16450 16451 ac_ext=c16452 ac_cpp='$CPP $CPPFLAGS'16453 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'16454 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'16455 ac_compiler_gnu=$ac_cv_c_compiler_gnu16456 16457 ac_ext=c16458 ac_cpp='$CPP $CPPFLAGS'16459 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'16460 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'16461 ac_compiler_gnu=$ac_cv_c_compiler_gnu16462 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC understands -c and -o together" >&516463 $as_echo_n "checking whether $CC understands -c and -o together... " >&6; }16464 if ${am_cv_prog_cc_c_o+:} false; then :16465 $as_echo_n "(cached) " >&616466 else16467 cat confdefs.h - <<_ACEOF >conftest.$ac_ext16468 /* end confdefs.h. */16469 16470 int16471 main ()16472 {16473 16474 ;16475 return 0;16476 }16477 _ACEOF16478 # Make sure it works both with $CC and with simple cc.16479 # Following AC_PROG_CC_C_O, we do the test twice because some16480 # compilers refuse to overwrite an existing .o file with -o,16481 # though they will create one.16482 am_cv_prog_cc_c_o=yes16483 for am_i in 1 2; do16484 if { echo "$as_me:$LINENO: $CC -c conftest.$ac_ext -o conftest2.$ac_objext" >&516485 ($CC -c conftest.$ac_ext -o conftest2.$ac_objext) >&5 2>&516486 ac_status=$?16487 echo "$as_me:$LINENO: \$? = $ac_status" >&516488 (exit $ac_status); } \16489 && test -f conftest2.$ac_objext; then16490 : OK16491 else16492 am_cv_prog_cc_c_o=no16493 break16494 fi16495 done16496 rm -f core conftest*16497 unset am_i16498 fi16499 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_prog_cc_c_o" >&516500 $as_echo "$am_cv_prog_cc_c_o" >&6; }16501 if test "$am_cv_prog_cc_c_o" != yes; then16502 # Losing compiler, so override with the script.16503 # FIXME: It is wrong to rewrite CC.16504 # But if we don't then we get into trouble of one sort or another.16505 # A longer-term fix would be to have automake use am__CC in this case,16506 # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)"16507 CC="$am_aux_dir/compile $CC"16508 fi16509 ac_ext=c16510 ac_cpp='$CPP $CPPFLAGS'16511 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'16512 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'16513 ac_compiler_gnu=$ac_cv_c_compiler_gnu16514 16515 16516 depcc="$CC" am_compiler_list=16517 16518 { $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&516519 $as_echo_n "checking dependency style of $depcc... " >&6; }16520 if ${am_cv_CC_dependencies_compiler_type+:} false; then :16521 $as_echo_n "(cached) " >&616522 else16523 if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then16524 # We make a subdir and do the tests there. Otherwise we can end up16525 # making bogus files that we don't know about and never remove. For16526 # instance it was reported that on HP-UX the gcc test will end up16527 # making a dummy file named 'D' -- because '-MD' means "put the output16528 # in D".16529 rm -rf conftest.dir16530 mkdir conftest.dir16531 # Copy depcomp to subdir because otherwise we won't find it if we're16532 # using a relative directory.16533 cp "$am_depcomp" conftest.dir16534 cd conftest.dir16535 # We will build objects and dependencies in a subdirectory because16536 # it helps to detect inapplicable dependency modes. For instance16537 # both Tru64's cc and ICC support -MD to output dependencies as a16538 # side effect of compilation, but ICC will put the dependencies in16539 # the current directory while Tru64 will put them in the object16540 # directory.16541 mkdir sub16542 16543 am_cv_CC_dependencies_compiler_type=none16544 if test "$am_compiler_list" = ""; then16545 am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp`16546 fi16547 am__universal=false16548 case " $depcc " in #(16549 *\ -arch\ *\ -arch\ *) am__universal=true ;;16550 esac16551 16552 for depmode in $am_compiler_list; do16553 # Setup a source with many dependencies, because some compilers16554 # like to wrap large dependency lists on column 80 (with \), and16555 # we should not choose a depcomp mode which is confused by this.16556 #16557 # We need to recreate these files for each test, as the compiler may16558 # overwrite some of them when testing with obscure command lines.16559 # This happens at least with the AIX C compiler.16560 : > sub/conftest.c16561 for i in 1 2 3 4 5 6; do16562 echo '#include "conftst'$i'.h"' >> sub/conftest.c16563 # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with16564 # Solaris 10 /bin/sh.16565 echo '/* dummy */' > sub/conftst$i.h16566 done16567 echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf16568 16569 # We check with '-c' and '-o' for the sake of the "dashmstdout"16570 # mode. It turns out that the SunPro C++ compiler does not properly16571 # handle '-M -o', and we need to detect this. Also, some Intel16572 # versions had trouble with output in subdirs.16573 am__obj=sub/conftest.${OBJEXT-o}16574 am__minus_obj="-o $am__obj"16575 case $depmode in16576 gcc)16577 # This depmode causes a compiler race in universal mode.16578 test "$am__universal" = false || continue16579 ;;16580 nosideeffect)16581 # After this tag, mechanisms are not by side-effect, so they'll16582 # only be used when explicitly requested.16583 if test "x$enable_dependency_tracking" = xyes; then16584 continue16585 else16586 break16587 fi16588 ;;16589 msvc7 | msvc7msys | msvisualcpp | msvcmsys)16590 # This compiler won't grok '-c -o', but also, the minuso test has16591 # not run yet. These depmodes are late enough in the game, and16592 # so weak that their functioning should not be impacted.16593 am__obj=conftest.${OBJEXT-o}16594 am__minus_obj=16595 ;;16596 none) break ;;16597 esac16598 if depmode=$depmode \16599 source=sub/conftest.c object=$am__obj \16600 depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \16601 $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \16602 >/dev/null 2>conftest.err &&16603 grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 &&16604 grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&16605 grep $am__obj sub/conftest.Po > /dev/null 2>&1 &&16606 ${MAKE-make} -s -f confmf > /dev/null 2>&1; then16607 # icc doesn't choke on unknown options, it will just issue warnings16608 # or remarks (even with -Werror). So we grep stderr for any message16609 # that says an option was ignored or not supported.16610 # When given -MP, icc 7.0 and 7.1 complain thusly:16611 # icc: Command line warning: ignoring option '-M'; no argument required16612 # The diagnosis changed in icc 8.0:16613 # icc: Command line remark: option '-MP' not supported16614 if (grep 'ignoring option' conftest.err ||16615 grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else16616 am_cv_CC_dependencies_compiler_type=$depmode16617 break16618 fi16619 fi16620 done16621 16622 cd ..16623 rm -rf conftest.dir16624 else16625 am_cv_CC_dependencies_compiler_type=none16626 fi16627 16628 fi16629 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CC_dependencies_compiler_type" >&516630 $as_echo "$am_cv_CC_dependencies_compiler_type" >&6; }16631 CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type16632 16633 if16634 test "x$enable_dependency_tracking" != xno \16635 && test "$am_cv_CC_dependencies_compiler_type" = gcc3; then16636 am__fastdepCC_TRUE=16637 am__fastdepCC_FALSE='#'16638 else16639 am__fastdepCC_TRUE='#'16640 am__fastdepCC_FALSE=16641 fi16642 16643 16644 4074 # By default we simply use the C compiler to build assembly code. 16645 4075 … … 16776 4206 16777 4207 16778 16779 4208 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5 16780 4209 $as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; } … … 16806 4235 $as_echo "no" >&6; } 16807 4236 SET_MAKE="MAKE=${MAKE-make}" 4237 fi 4238 4239 if test -n "$ac_tool_prefix"; then 4240 # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args. 4241 set dummy ${ac_tool_prefix}ranlib; ac_word=$2 4242 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 4243 $as_echo_n "checking for $ac_word... " >&6; } 4244 if ${ac_cv_prog_RANLIB+:} false; then : 4245 $as_echo_n "(cached) " >&6 4246 else 4247 if test -n "$RANLIB"; then 4248 ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test. 4249 else 4250 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR 4251 for as_dir in $PATH 4252 do 4253 IFS=$as_save_IFS 4254 test -z "$as_dir" && as_dir=. 4255 for ac_exec_ext in '' $ac_executable_extensions; do 4256 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then 4257 ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib" 4258 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 4259 break 2 4260 fi 4261 done 4262 done 4263 IFS=$as_save_IFS 4264 4265 fi 4266 fi 4267 RANLIB=$ac_cv_prog_RANLIB 4268 if test -n "$RANLIB"; then 4269 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $RANLIB" >&5 4270 $as_echo "$RANLIB" >&6; } 4271 else 4272 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 4273 $as_echo "no" >&6; } 4274 fi 4275 4276 4277 fi 4278 if test -z "$ac_cv_prog_RANLIB"; then 4279 ac_ct_RANLIB=$RANLIB 4280 # Extract the first word of "ranlib", so it can be a program name with args. 4281 set dummy ranlib; ac_word=$2 4282 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 4283 $as_echo_n "checking for $ac_word... " >&6; } 4284 if ${ac_cv_prog_ac_ct_RANLIB+:} false; then : 4285 $as_echo_n "(cached) " >&6 4286 else 4287 if test -n "$ac_ct_RANLIB"; then 4288 ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test. 4289 else 4290 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR 4291 for as_dir in $PATH 4292 do 4293 IFS=$as_save_IFS 4294 test -z "$as_dir" && as_dir=. 4295 for ac_exec_ext in '' $ac_executable_extensions; do 4296 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then 4297 ac_cv_prog_ac_ct_RANLIB="ranlib" 4298 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 4299 break 2 4300 fi 4301 done 4302 done 4303 IFS=$as_save_IFS 4304 4305 fi 4306 fi 4307 ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB 4308 if test -n "$ac_ct_RANLIB"; then 4309 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_RANLIB" >&5 4310 $as_echo "$ac_ct_RANLIB" >&6; } 4311 else 4312 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 4313 $as_echo "no" >&6; } 4314 fi 4315 4316 if test "x$ac_ct_RANLIB" = x; then 4317 RANLIB=":" 4318 else 4319 case $cross_compiling:$ac_tool_warned in 4320 yes:) 4321 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 4322 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} 4323 ac_tool_warned=yes ;; 4324 esac 4325 RANLIB=$ac_ct_RANLIB 4326 fi 4327 else 4328 RANLIB="$ac_cv_prog_RANLIB" 16808 4329 fi 16809 4330 … … 16981 4502 Usually this means the macro was only invoked conditionally." "$LINENO" 5 16982 4503 fi 16983 if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then16984 as_fn_error $? "conditional \"am__fastdepCC\" was never defined.16985 Usually this means the macro was only invoked conditionally." "$LINENO" 516986 fi16987 4504 if test -z "${am__fastdepCXX_TRUE}" && test -z "${am__fastdepCXX_FALSE}"; then 16988 4505 as_fn_error $? "conditional \"am__fastdepCXX\" was never defined. … … 17561 5078 AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir" 17562 5079 17563 17564 # The HP-UX ksh and POSIX shell print the target directory to stdout17565 # if CDPATH is set.17566 (unset CDPATH) >/dev/null 2>&1 && unset CDPATH17567 17568 sed_quote_subst='$sed_quote_subst'17569 double_quote_subst='$double_quote_subst'17570 delay_variable_subst='$delay_variable_subst'17571 macro_version='`$ECHO "$macro_version" | $SED "$delay_single_quote_subst"`'17572 macro_revision='`$ECHO "$macro_revision" | $SED "$delay_single_quote_subst"`'17573 enable_shared='`$ECHO "$enable_shared" | $SED "$delay_single_quote_subst"`'17574 enable_static='`$ECHO "$enable_static" | $SED "$delay_single_quote_subst"`'17575 pic_mode='`$ECHO "$pic_mode" | $SED "$delay_single_quote_subst"`'17576 enable_fast_install='`$ECHO "$enable_fast_install" | $SED "$delay_single_quote_subst"`'17577 shared_archive_member_spec='`$ECHO "$shared_archive_member_spec" | $SED "$delay_single_quote_subst"`'17578 SHELL='`$ECHO "$SHELL" | $SED "$delay_single_quote_subst"`'17579 ECHO='`$ECHO "$ECHO" | $SED "$delay_single_quote_subst"`'17580 PATH_SEPARATOR='`$ECHO "$PATH_SEPARATOR" | $SED "$delay_single_quote_subst"`'17581 host_alias='`$ECHO "$host_alias" | $SED "$delay_single_quote_subst"`'17582 host='`$ECHO "$host" | $SED "$delay_single_quote_subst"`'17583 host_os='`$ECHO "$host_os" | $SED "$delay_single_quote_subst"`'17584 build_alias='`$ECHO "$build_alias" | $SED "$delay_single_quote_subst"`'17585 build='`$ECHO "$build" | $SED "$delay_single_quote_subst"`'17586 build_os='`$ECHO "$build_os" | $SED "$delay_single_quote_subst"`'17587 SED='`$ECHO "$SED" | $SED "$delay_single_quote_subst"`'17588 Xsed='`$ECHO "$Xsed" | $SED "$delay_single_quote_subst"`'17589 GREP='`$ECHO "$GREP" | $SED "$delay_single_quote_subst"`'17590 EGREP='`$ECHO "$EGREP" | $SED "$delay_single_quote_subst"`'17591 FGREP='`$ECHO "$FGREP" | $SED "$delay_single_quote_subst"`'17592 LD='`$ECHO "$LD" | $SED "$delay_single_quote_subst"`'17593 NM='`$ECHO "$NM" | $SED "$delay_single_quote_subst"`'17594 LN_S='`$ECHO "$LN_S" | $SED "$delay_single_quote_subst"`'17595 max_cmd_len='`$ECHO "$max_cmd_len" | $SED "$delay_single_quote_subst"`'17596 ac_objext='`$ECHO "$ac_objext" | $SED "$delay_single_quote_subst"`'17597 exeext='`$ECHO "$exeext" | $SED "$delay_single_quote_subst"`'17598 lt_unset='`$ECHO "$lt_unset" | $SED "$delay_single_quote_subst"`'17599 lt_SP2NL='`$ECHO "$lt_SP2NL" | $SED "$delay_single_quote_subst"`'17600 lt_NL2SP='`$ECHO "$lt_NL2SP" | $SED "$delay_single_quote_subst"`'17601 lt_cv_to_host_file_cmd='`$ECHO "$lt_cv_to_host_file_cmd" | $SED "$delay_single_quote_subst"`'17602 lt_cv_to_tool_file_cmd='`$ECHO "$lt_cv_to_tool_file_cmd" | $SED "$delay_single_quote_subst"`'17603 reload_flag='`$ECHO "$reload_flag" | $SED "$delay_single_quote_subst"`'17604 reload_cmds='`$ECHO "$reload_cmds" | $SED "$delay_single_quote_subst"`'17605 OBJDUMP='`$ECHO "$OBJDUMP" | $SED "$delay_single_quote_subst"`'17606 deplibs_check_method='`$ECHO "$deplibs_check_method" | $SED "$delay_single_quote_subst"`'17607 file_magic_cmd='`$ECHO "$file_magic_cmd" | $SED "$delay_single_quote_subst"`'17608 file_magic_glob='`$ECHO "$file_magic_glob" | $SED "$delay_single_quote_subst"`'17609 want_nocaseglob='`$ECHO "$want_nocaseglob" | $SED "$delay_single_quote_subst"`'17610 DLLTOOL='`$ECHO "$DLLTOOL" | $SED "$delay_single_quote_subst"`'17611 sharedlib_from_linklib_cmd='`$ECHO "$sharedlib_from_linklib_cmd" | $SED "$delay_single_quote_subst"`'17612 AR='`$ECHO "$AR" | $SED "$delay_single_quote_subst"`'17613 AR_FLAGS='`$ECHO "$AR_FLAGS" | $SED "$delay_single_quote_subst"`'17614 archiver_list_spec='`$ECHO "$archiver_list_spec" | $SED "$delay_single_quote_subst"`'17615 STRIP='`$ECHO "$STRIP" | $SED "$delay_single_quote_subst"`'17616 RANLIB='`$ECHO "$RANLIB" | $SED "$delay_single_quote_subst"`'17617 old_postinstall_cmds='`$ECHO "$old_postinstall_cmds" | $SED "$delay_single_quote_subst"`'17618 old_postuninstall_cmds='`$ECHO "$old_postuninstall_cmds" | $SED "$delay_single_quote_subst"`'17619 old_archive_cmds='`$ECHO "$old_archive_cmds" | $SED "$delay_single_quote_subst"`'17620 lock_old_archive_extraction='`$ECHO "$lock_old_archive_extraction" | $SED "$delay_single_quote_subst"`'17621 CC='`$ECHO "$CC" | $SED "$delay_single_quote_subst"`'17622 CFLAGS='`$ECHO "$CFLAGS" | $SED "$delay_single_quote_subst"`'17623 compiler='`$ECHO "$compiler" | $SED "$delay_single_quote_subst"`'17624 GCC='`$ECHO "$GCC" | $SED "$delay_single_quote_subst"`'17625 lt_cv_sys_global_symbol_pipe='`$ECHO "$lt_cv_sys_global_symbol_pipe" | $SED "$delay_single_quote_subst"`'17626 lt_cv_sys_global_symbol_to_cdecl='`$ECHO "$lt_cv_sys_global_symbol_to_cdecl" | $SED "$delay_single_quote_subst"`'17627 lt_cv_sys_global_symbol_to_import='`$ECHO "$lt_cv_sys_global_symbol_to_import" | $SED "$delay_single_quote_subst"`'17628 lt_cv_sys_global_symbol_to_c_name_address='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address" | $SED "$delay_single_quote_subst"`'17629 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"`'17630 lt_cv_nm_interface='`$ECHO "$lt_cv_nm_interface" | $SED "$delay_single_quote_subst"`'17631 nm_file_list_spec='`$ECHO "$nm_file_list_spec" | $SED "$delay_single_quote_subst"`'17632 lt_sysroot='`$ECHO "$lt_sysroot" | $SED "$delay_single_quote_subst"`'17633 lt_cv_truncate_bin='`$ECHO "$lt_cv_truncate_bin" | $SED "$delay_single_quote_subst"`'17634 objdir='`$ECHO "$objdir" | $SED "$delay_single_quote_subst"`'17635 MAGIC_CMD='`$ECHO "$MAGIC_CMD" | $SED "$delay_single_quote_subst"`'17636 lt_prog_compiler_no_builtin_flag='`$ECHO "$lt_prog_compiler_no_builtin_flag" | $SED "$delay_single_quote_subst"`'17637 lt_prog_compiler_pic='`$ECHO "$lt_prog_compiler_pic" | $SED "$delay_single_quote_subst"`'17638 lt_prog_compiler_wl='`$ECHO "$lt_prog_compiler_wl" | $SED "$delay_single_quote_subst"`'17639 lt_prog_compiler_static='`$ECHO "$lt_prog_compiler_static" | $SED "$delay_single_quote_subst"`'17640 lt_cv_prog_compiler_c_o='`$ECHO "$lt_cv_prog_compiler_c_o" | $SED "$delay_single_quote_subst"`'17641 need_locks='`$ECHO "$need_locks" | $SED "$delay_single_quote_subst"`'17642 MANIFEST_TOOL='`$ECHO "$MANIFEST_TOOL" | $SED "$delay_single_quote_subst"`'17643 DSYMUTIL='`$ECHO "$DSYMUTIL" | $SED "$delay_single_quote_subst"`'17644 NMEDIT='`$ECHO "$NMEDIT" | $SED "$delay_single_quote_subst"`'17645 LIPO='`$ECHO "$LIPO" | $SED "$delay_single_quote_subst"`'17646 OTOOL='`$ECHO "$OTOOL" | $SED "$delay_single_quote_subst"`'17647 OTOOL64='`$ECHO "$OTOOL64" | $SED "$delay_single_quote_subst"`'17648 libext='`$ECHO "$libext" | $SED "$delay_single_quote_subst"`'17649 shrext_cmds='`$ECHO "$shrext_cmds" | $SED "$delay_single_quote_subst"`'17650 extract_expsyms_cmds='`$ECHO "$extract_expsyms_cmds" | $SED "$delay_single_quote_subst"`'17651 archive_cmds_need_lc='`$ECHO "$archive_cmds_need_lc" | $SED "$delay_single_quote_subst"`'17652 enable_shared_with_static_runtimes='`$ECHO "$enable_shared_with_static_runtimes" | $SED "$delay_single_quote_subst"`'17653 export_dynamic_flag_spec='`$ECHO "$export_dynamic_flag_spec" | $SED "$delay_single_quote_subst"`'17654 whole_archive_flag_spec='`$ECHO "$whole_archive_flag_spec" | $SED "$delay_single_quote_subst"`'17655 compiler_needs_object='`$ECHO "$compiler_needs_object" | $SED "$delay_single_quote_subst"`'17656 old_archive_from_new_cmds='`$ECHO "$old_archive_from_new_cmds" | $SED "$delay_single_quote_subst"`'17657 old_archive_from_expsyms_cmds='`$ECHO "$old_archive_from_expsyms_cmds" | $SED "$delay_single_quote_subst"`'17658 archive_cmds='`$ECHO "$archive_cmds" | $SED "$delay_single_quote_subst"`'17659 archive_expsym_cmds='`$ECHO "$archive_expsym_cmds" | $SED "$delay_single_quote_subst"`'17660 module_cmds='`$ECHO "$module_cmds" | $SED "$delay_single_quote_subst"`'17661 module_expsym_cmds='`$ECHO "$module_expsym_cmds" | $SED "$delay_single_quote_subst"`'17662 with_gnu_ld='`$ECHO "$with_gnu_ld" | $SED "$delay_single_quote_subst"`'17663 allow_undefined_flag='`$ECHO "$allow_undefined_flag" | $SED "$delay_single_quote_subst"`'17664 no_undefined_flag='`$ECHO "$no_undefined_flag" | $SED "$delay_single_quote_subst"`'17665 hardcode_libdir_flag_spec='`$ECHO "$hardcode_libdir_flag_spec" | $SED "$delay_single_quote_subst"`'17666 hardcode_libdir_separator='`$ECHO "$hardcode_libdir_separator" | $SED "$delay_single_quote_subst"`'17667 hardcode_direct='`$ECHO "$hardcode_direct" | $SED "$delay_single_quote_subst"`'17668 hardcode_direct_absolute='`$ECHO "$hardcode_direct_absolute" | $SED "$delay_single_quote_subst"`'17669 hardcode_minus_L='`$ECHO "$hardcode_minus_L" | $SED "$delay_single_quote_subst"`'17670 hardcode_shlibpath_var='`$ECHO "$hardcode_shlibpath_var" | $SED "$delay_single_quote_subst"`'17671 hardcode_automatic='`$ECHO "$hardcode_automatic" | $SED "$delay_single_quote_subst"`'17672 inherit_rpath='`$ECHO "$inherit_rpath" | $SED "$delay_single_quote_subst"`'17673 link_all_deplibs='`$ECHO "$link_all_deplibs" | $SED "$delay_single_quote_subst"`'17674 always_export_symbols='`$ECHO "$always_export_symbols" | $SED "$delay_single_quote_subst"`'17675 export_symbols_cmds='`$ECHO "$export_symbols_cmds" | $SED "$delay_single_quote_subst"`'17676 exclude_expsyms='`$ECHO "$exclude_expsyms" | $SED "$delay_single_quote_subst"`'17677 include_expsyms='`$ECHO "$include_expsyms" | $SED "$delay_single_quote_subst"`'17678 prelink_cmds='`$ECHO "$prelink_cmds" | $SED "$delay_single_quote_subst"`'17679 postlink_cmds='`$ECHO "$postlink_cmds" | $SED "$delay_single_quote_subst"`'17680 file_list_spec='`$ECHO "$file_list_spec" | $SED "$delay_single_quote_subst"`'17681 variables_saved_for_relink='`$ECHO "$variables_saved_for_relink" | $SED "$delay_single_quote_subst"`'17682 need_lib_prefix='`$ECHO "$need_lib_prefix" | $SED "$delay_single_quote_subst"`'17683 need_version='`$ECHO "$need_version" | $SED "$delay_single_quote_subst"`'17684 version_type='`$ECHO "$version_type" | $SED "$delay_single_quote_subst"`'17685 runpath_var='`$ECHO "$runpath_var" | $SED "$delay_single_quote_subst"`'17686 shlibpath_var='`$ECHO "$shlibpath_var" | $SED "$delay_single_quote_subst"`'17687 shlibpath_overrides_runpath='`$ECHO "$shlibpath_overrides_runpath" | $SED "$delay_single_quote_subst"`'17688 libname_spec='`$ECHO "$libname_spec" | $SED "$delay_single_quote_subst"`'17689 library_names_spec='`$ECHO "$library_names_spec" | $SED "$delay_single_quote_subst"`'17690 soname_spec='`$ECHO "$soname_spec" | $SED "$delay_single_quote_subst"`'17691 install_override_mode='`$ECHO "$install_override_mode" | $SED "$delay_single_quote_subst"`'17692 postinstall_cmds='`$ECHO "$postinstall_cmds" | $SED "$delay_single_quote_subst"`'17693 postuninstall_cmds='`$ECHO "$postuninstall_cmds" | $SED "$delay_single_quote_subst"`'17694 finish_cmds='`$ECHO "$finish_cmds" | $SED "$delay_single_quote_subst"`'17695 finish_eval='`$ECHO "$finish_eval" | $SED "$delay_single_quote_subst"`'17696 hardcode_into_libs='`$ECHO "$hardcode_into_libs" | $SED "$delay_single_quote_subst"`'17697 sys_lib_search_path_spec='`$ECHO "$sys_lib_search_path_spec" | $SED "$delay_single_quote_subst"`'17698 configure_time_dlsearch_path='`$ECHO "$configure_time_dlsearch_path" | $SED "$delay_single_quote_subst"`'17699 configure_time_lt_sys_library_path='`$ECHO "$configure_time_lt_sys_library_path" | $SED "$delay_single_quote_subst"`'17700 hardcode_action='`$ECHO "$hardcode_action" | $SED "$delay_single_quote_subst"`'17701 enable_dlopen='`$ECHO "$enable_dlopen" | $SED "$delay_single_quote_subst"`'17702 enable_dlopen_self='`$ECHO "$enable_dlopen_self" | $SED "$delay_single_quote_subst"`'17703 enable_dlopen_self_static='`$ECHO "$enable_dlopen_self_static" | $SED "$delay_single_quote_subst"`'17704 old_striplib='`$ECHO "$old_striplib" | $SED "$delay_single_quote_subst"`'17705 striplib='`$ECHO "$striplib" | $SED "$delay_single_quote_subst"`'17706 compiler_lib_search_dirs='`$ECHO "$compiler_lib_search_dirs" | $SED "$delay_single_quote_subst"`'17707 predep_objects='`$ECHO "$predep_objects" | $SED "$delay_single_quote_subst"`'17708 postdep_objects='`$ECHO "$postdep_objects" | $SED "$delay_single_quote_subst"`'17709 predeps='`$ECHO "$predeps" | $SED "$delay_single_quote_subst"`'17710 postdeps='`$ECHO "$postdeps" | $SED "$delay_single_quote_subst"`'17711 compiler_lib_search_path='`$ECHO "$compiler_lib_search_path" | $SED "$delay_single_quote_subst"`'17712 LD_CXX='`$ECHO "$LD_CXX" | $SED "$delay_single_quote_subst"`'17713 reload_flag_CXX='`$ECHO "$reload_flag_CXX" | $SED "$delay_single_quote_subst"`'17714 reload_cmds_CXX='`$ECHO "$reload_cmds_CXX" | $SED "$delay_single_quote_subst"`'17715 old_archive_cmds_CXX='`$ECHO "$old_archive_cmds_CXX" | $SED "$delay_single_quote_subst"`'17716 compiler_CXX='`$ECHO "$compiler_CXX" | $SED "$delay_single_quote_subst"`'17717 GCC_CXX='`$ECHO "$GCC_CXX" | $SED "$delay_single_quote_subst"`'17718 lt_prog_compiler_no_builtin_flag_CXX='`$ECHO "$lt_prog_compiler_no_builtin_flag_CXX" | $SED "$delay_single_quote_subst"`'17719 lt_prog_compiler_pic_CXX='`$ECHO "$lt_prog_compiler_pic_CXX" | $SED "$delay_single_quote_subst"`'17720 lt_prog_compiler_wl_CXX='`$ECHO "$lt_prog_compiler_wl_CXX" | $SED "$delay_single_quote_subst"`'17721 lt_prog_compiler_static_CXX='`$ECHO "$lt_prog_compiler_static_CXX" | $SED "$delay_single_quote_subst"`'17722 lt_cv_prog_compiler_c_o_CXX='`$ECHO "$lt_cv_prog_compiler_c_o_CXX" | $SED "$delay_single_quote_subst"`'17723 archive_cmds_need_lc_CXX='`$ECHO "$archive_cmds_need_lc_CXX" | $SED "$delay_single_quote_subst"`'17724 enable_shared_with_static_runtimes_CXX='`$ECHO "$enable_shared_with_static_runtimes_CXX" | $SED "$delay_single_quote_subst"`'17725 export_dynamic_flag_spec_CXX='`$ECHO "$export_dynamic_flag_spec_CXX" | $SED "$delay_single_quote_subst"`'17726 whole_archive_flag_spec_CXX='`$ECHO "$whole_archive_flag_spec_CXX" | $SED "$delay_single_quote_subst"`'17727 compiler_needs_object_CXX='`$ECHO "$compiler_needs_object_CXX" | $SED "$delay_single_quote_subst"`'17728 old_archive_from_new_cmds_CXX='`$ECHO "$old_archive_from_new_cmds_CXX" | $SED "$delay_single_quote_subst"`'17729 old_archive_from_expsyms_cmds_CXX='`$ECHO "$old_archive_from_expsyms_cmds_CXX" | $SED "$delay_single_quote_subst"`'17730 archive_cmds_CXX='`$ECHO "$archive_cmds_CXX" | $SED "$delay_single_quote_subst"`'17731 archive_expsym_cmds_CXX='`$ECHO "$archive_expsym_cmds_CXX" | $SED "$delay_single_quote_subst"`'17732 module_cmds_CXX='`$ECHO "$module_cmds_CXX" | $SED "$delay_single_quote_subst"`'17733 module_expsym_cmds_CXX='`$ECHO "$module_expsym_cmds_CXX" | $SED "$delay_single_quote_subst"`'17734 with_gnu_ld_CXX='`$ECHO "$with_gnu_ld_CXX" | $SED "$delay_single_quote_subst"`'17735 allow_undefined_flag_CXX='`$ECHO "$allow_undefined_flag_CXX" | $SED "$delay_single_quote_subst"`'17736 no_undefined_flag_CXX='`$ECHO "$no_undefined_flag_CXX" | $SED "$delay_single_quote_subst"`'17737 hardcode_libdir_flag_spec_CXX='`$ECHO "$hardcode_libdir_flag_spec_CXX" | $SED "$delay_single_quote_subst"`'17738 hardcode_libdir_separator_CXX='`$ECHO "$hardcode_libdir_separator_CXX" | $SED "$delay_single_quote_subst"`'17739 hardcode_direct_CXX='`$ECHO "$hardcode_direct_CXX" | $SED "$delay_single_quote_subst"`'17740 hardcode_direct_absolute_CXX='`$ECHO "$hardcode_direct_absolute_CXX" | $SED "$delay_single_quote_subst"`'17741 hardcode_minus_L_CXX='`$ECHO "$hardcode_minus_L_CXX" | $SED "$delay_single_quote_subst"`'17742 hardcode_shlibpath_var_CXX='`$ECHO "$hardcode_shlibpath_var_CXX" | $SED "$delay_single_quote_subst"`'17743 hardcode_automatic_CXX='`$ECHO "$hardcode_automatic_CXX" | $SED "$delay_single_quote_subst"`'17744 inherit_rpath_CXX='`$ECHO "$inherit_rpath_CXX" | $SED "$delay_single_quote_subst"`'17745 link_all_deplibs_CXX='`$ECHO "$link_all_deplibs_CXX" | $SED "$delay_single_quote_subst"`'17746 always_export_symbols_CXX='`$ECHO "$always_export_symbols_CXX" | $SED "$delay_single_quote_subst"`'17747 export_symbols_cmds_CXX='`$ECHO "$export_symbols_cmds_CXX" | $SED "$delay_single_quote_subst"`'17748 exclude_expsyms_CXX='`$ECHO "$exclude_expsyms_CXX" | $SED "$delay_single_quote_subst"`'17749 include_expsyms_CXX='`$ECHO "$include_expsyms_CXX" | $SED "$delay_single_quote_subst"`'17750 prelink_cmds_CXX='`$ECHO "$prelink_cmds_CXX" | $SED "$delay_single_quote_subst"`'17751 postlink_cmds_CXX='`$ECHO "$postlink_cmds_CXX" | $SED "$delay_single_quote_subst"`'17752 file_list_spec_CXX='`$ECHO "$file_list_spec_CXX" | $SED "$delay_single_quote_subst"`'17753 hardcode_action_CXX='`$ECHO "$hardcode_action_CXX" | $SED "$delay_single_quote_subst"`'17754 compiler_lib_search_dirs_CXX='`$ECHO "$compiler_lib_search_dirs_CXX" | $SED "$delay_single_quote_subst"`'17755 predep_objects_CXX='`$ECHO "$predep_objects_CXX" | $SED "$delay_single_quote_subst"`'17756 postdep_objects_CXX='`$ECHO "$postdep_objects_CXX" | $SED "$delay_single_quote_subst"`'17757 predeps_CXX='`$ECHO "$predeps_CXX" | $SED "$delay_single_quote_subst"`'17758 postdeps_CXX='`$ECHO "$postdeps_CXX" | $SED "$delay_single_quote_subst"`'17759 compiler_lib_search_path_CXX='`$ECHO "$compiler_lib_search_path_CXX" | $SED "$delay_single_quote_subst"`'17760 17761 LTCC='$LTCC'17762 LTCFLAGS='$LTCFLAGS'17763 compiler='$compiler_DEFAULT'17764 17765 # A function that is used when there is no print builtin or printf.17766 func_fallback_echo ()17767 {17768 eval 'cat <<_LTECHO_EOF17769 \$117770 _LTECHO_EOF'17771 }17772 17773 # Quote evaled strings.17774 for var in SHELL \17775 ECHO \17776 PATH_SEPARATOR \17777 SED \17778 GREP \17779 EGREP \17780 FGREP \17781 LD \17782 NM \17783 LN_S \17784 lt_SP2NL \17785 lt_NL2SP \17786 reload_flag \17787 OBJDUMP \17788 deplibs_check_method \17789 file_magic_cmd \17790 file_magic_glob \17791 want_nocaseglob \17792 DLLTOOL \17793 sharedlib_from_linklib_cmd \17794 AR \17795 AR_FLAGS \17796 archiver_list_spec \17797 STRIP \17798 RANLIB \17799 CC \17800 CFLAGS \17801 compiler \17802 lt_cv_sys_global_symbol_pipe \17803 lt_cv_sys_global_symbol_to_cdecl \17804 lt_cv_sys_global_symbol_to_import \17805 lt_cv_sys_global_symbol_to_c_name_address \17806 lt_cv_sys_global_symbol_to_c_name_address_lib_prefix \17807 lt_cv_nm_interface \17808 nm_file_list_spec \17809 lt_cv_truncate_bin \17810 lt_prog_compiler_no_builtin_flag \17811 lt_prog_compiler_pic \17812 lt_prog_compiler_wl \17813 lt_prog_compiler_static \17814 lt_cv_prog_compiler_c_o \17815 need_locks \17816 MANIFEST_TOOL \17817 DSYMUTIL \17818 NMEDIT \17819 LIPO \17820 OTOOL \17821 OTOOL64 \17822 shrext_cmds \17823 export_dynamic_flag_spec \17824 whole_archive_flag_spec \17825 compiler_needs_object \17826 with_gnu_ld \17827 allow_undefined_flag \17828 no_undefined_flag \17829 hardcode_libdir_flag_spec \17830 hardcode_libdir_separator \17831 exclude_expsyms \17832 include_expsyms \17833 file_list_spec \17834 variables_saved_for_relink \17835 libname_spec \17836 library_names_spec \17837 soname_spec \17838 install_override_mode \17839 finish_eval \17840 old_striplib \17841 striplib \17842 compiler_lib_search_dirs \17843 predep_objects \17844 postdep_objects \17845 predeps \17846 postdeps \17847 compiler_lib_search_path \17848 LD_CXX \17849 reload_flag_CXX \17850 compiler_CXX \17851 lt_prog_compiler_no_builtin_flag_CXX \17852 lt_prog_compiler_pic_CXX \17853 lt_prog_compiler_wl_CXX \17854 lt_prog_compiler_static_CXX \17855 lt_cv_prog_compiler_c_o_CXX \17856 export_dynamic_flag_spec_CXX \17857 whole_archive_flag_spec_CXX \17858 compiler_needs_object_CXX \17859 with_gnu_ld_CXX \17860 allow_undefined_flag_CXX \17861 no_undefined_flag_CXX \17862 hardcode_libdir_flag_spec_CXX \17863 hardcode_libdir_separator_CXX \17864 exclude_expsyms_CXX \17865 include_expsyms_CXX \17866 file_list_spec_CXX \17867 compiler_lib_search_dirs_CXX \17868 predep_objects_CXX \17869 postdep_objects_CXX \17870 predeps_CXX \17871 postdeps_CXX \17872 compiler_lib_search_path_CXX; do17873 case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in17874 *[\\\\\\\`\\"\\\$]*)17875 eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED \\"\\\$sed_quote_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes17876 ;;17877 *)17878 eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""17879 ;;17880 esac17881 done17882 17883 # Double-quote double-evaled strings.17884 for var in reload_cmds \17885 old_postinstall_cmds \17886 old_postuninstall_cmds \17887 old_archive_cmds \17888 extract_expsyms_cmds \17889 old_archive_from_new_cmds \17890 old_archive_from_expsyms_cmds \17891 archive_cmds \17892 archive_expsym_cmds \17893 module_cmds \17894 module_expsym_cmds \17895 export_symbols_cmds \17896 prelink_cmds \17897 postlink_cmds \17898 postinstall_cmds \17899 postuninstall_cmds \17900 finish_cmds \17901 sys_lib_search_path_spec \17902 configure_time_dlsearch_path \17903 configure_time_lt_sys_library_path \17904 reload_cmds_CXX \17905 old_archive_cmds_CXX \17906 old_archive_from_new_cmds_CXX \17907 old_archive_from_expsyms_cmds_CXX \17908 archive_cmds_CXX \17909 archive_expsym_cmds_CXX \17910 module_cmds_CXX \17911 module_expsym_cmds_CXX \17912 export_symbols_cmds_CXX \17913 prelink_cmds_CXX \17914 postlink_cmds_CXX; do17915 case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in17916 *[\\\\\\\`\\"\\\$]*)17917 eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes17918 ;;17919 *)17920 eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""17921 ;;17922 esac17923 done17924 17925 ac_aux_dir='$ac_aux_dir'17926 17927 # See if we are running on zsh, and set the options that allow our17928 # commands through without removal of \ escapes INIT.17929 if test -n "\${ZSH_VERSION+set}"; then17930 setopt NO_GLOB_SUBST17931 fi17932 17933 17934 PACKAGE='$PACKAGE'17935 VERSION='$VERSION'17936 RM='$RM'17937 ofile='$ofile'17938 17939 17940 17941 17942 17943 17944 5080 _ACEOF 17945 5081 … … 17951 5087 case $ac_config_target in 17952 5088 "depfiles") CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;; 17953 "libtool") CONFIG_COMMANDS="$CONFIG_COMMANDS libtool" ;;17954 5089 "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;; 17955 5090 "src/Makefile") CONFIG_FILES="$CONFIG_FILES src/Makefile" ;; … … 18477 5612 } 18478 5613 ;; 18479 "libtool":C)18480 18481 # See if we are running on zsh, and set the options that allow our18482 # commands through without removal of \ escapes.18483 if test -n "${ZSH_VERSION+set}"; then18484 setopt NO_GLOB_SUBST18485 fi18486 18487 cfgfile=${ofile}T18488 trap "$RM \"$cfgfile\"; exit 1" 1 2 1518489 $RM "$cfgfile"18490 18491 cat <<_LT_EOF >> "$cfgfile"18492 #! $SHELL18493 # Generated automatically by $as_me ($PACKAGE) $VERSION18494 # Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:18495 # NOTE: Changes made to this file will be lost: look at ltmain.sh.18496 18497 # Provide generalized library-building support services.18498 # Written by Gordon Matzigkeit, 199618499 18500 # Copyright (C) 2014 Free Software Foundation, Inc.18501 # This is free software; see the source for copying conditions. There is NO18502 # warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.18503 18504 # GNU Libtool is free software; you can redistribute it and/or modify18505 # it under the terms of the GNU General Public License as published by18506 # the Free Software Foundation; either version 2 of of the License, or18507 # (at your option) any later version.18508 #18509 # As a special exception to the GNU General Public License, if you18510 # distribute this file as part of a program or library that is built18511 # using GNU Libtool, you may include this file under the same18512 # distribution terms that you use for the rest of that program.18513 #18514 # GNU Libtool is distributed in the hope that it will be useful, but18515 # WITHOUT ANY WARRANTY; without even the implied warranty of18516 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the18517 # GNU General Public License for more details.18518 #18519 # You should have received a copy of the GNU General Public License18520 # along with this program. If not, see <http://www.gnu.org/licenses/>.18521 18522 18523 # The names of the tagged configurations supported by this script.18524 available_tags='CXX '18525 18526 # Configured defaults for sys_lib_dlsearch_path munging.18527 : \${LT_SYS_LIBRARY_PATH="$configure_time_lt_sys_library_path"}18528 18529 # ### BEGIN LIBTOOL CONFIG18530 18531 # Which release of libtool.m4 was used?18532 macro_version=$macro_version18533 macro_revision=$macro_revision18534 18535 # Whether or not to build shared libraries.18536 build_libtool_libs=$enable_shared18537 18538 # Whether or not to build static libraries.18539 build_old_libs=$enable_static18540 18541 # What type of objects to build.18542 pic_mode=$pic_mode18543 18544 # Whether or not to optimize for fast installation.18545 fast_install=$enable_fast_install18546 18547 # Shared archive member basename,for filename based shared library versioning on AIX.18548 shared_archive_member_spec=$shared_archive_member_spec18549 18550 # Shell to use when invoking shell scripts.18551 SHELL=$lt_SHELL18552 18553 # An echo program that protects backslashes.18554 ECHO=$lt_ECHO18555 18556 # The PATH separator for the build system.18557 PATH_SEPARATOR=$lt_PATH_SEPARATOR18558 18559 # The host system.18560 host_alias=$host_alias18561 host=$host18562 host_os=$host_os18563 18564 # The build system.18565 build_alias=$build_alias18566 build=$build18567 build_os=$build_os18568 18569 # A sed program that does not truncate output.18570 SED=$lt_SED18571 18572 # Sed that helps us avoid accidentally triggering echo(1) options like -n.18573 Xsed="\$SED -e 1s/^X//"18574 18575 # A grep program that handles long lines.18576 GREP=$lt_GREP18577 18578 # An ERE matcher.18579 EGREP=$lt_EGREP18580 18581 # A literal string matcher.18582 FGREP=$lt_FGREP18583 18584 # A BSD- or MS-compatible name lister.18585 NM=$lt_NM18586 18587 # Whether we need soft or hard links.18588 LN_S=$lt_LN_S18589 18590 # What is the maximum length of a command?18591 max_cmd_len=$max_cmd_len18592 18593 # Object file suffix (normally "o").18594 objext=$ac_objext18595 18596 # Executable file suffix (normally "").18597 exeext=$exeext18598 18599 # whether the shell understands "unset".18600 lt_unset=$lt_unset18601 18602 # turn spaces into newlines.18603 SP2NL=$lt_lt_SP2NL18604 18605 # turn newlines into spaces.18606 NL2SP=$lt_lt_NL2SP18607 18608 # convert \$build file names to \$host format.18609 to_host_file_cmd=$lt_cv_to_host_file_cmd18610 18611 # convert \$build files to toolchain format.18612 to_tool_file_cmd=$lt_cv_to_tool_file_cmd18613 18614 # An object symbol dumper.18615 OBJDUMP=$lt_OBJDUMP18616 18617 # Method to check whether dependent libraries are shared objects.18618 deplibs_check_method=$lt_deplibs_check_method18619 18620 # Command to use when deplibs_check_method = "file_magic".18621 file_magic_cmd=$lt_file_magic_cmd18622 18623 # How to find potential files when deplibs_check_method = "file_magic".18624 file_magic_glob=$lt_file_magic_glob18625 18626 # Find potential files using nocaseglob when deplibs_check_method = "file_magic".18627 want_nocaseglob=$lt_want_nocaseglob18628 18629 # DLL creation program.18630 DLLTOOL=$lt_DLLTOOL18631 18632 # Command to associate shared and link libraries.18633 sharedlib_from_linklib_cmd=$lt_sharedlib_from_linklib_cmd18634 18635 # The archiver.18636 AR=$lt_AR18637 18638 # Flags to create an archive.18639 AR_FLAGS=$lt_AR_FLAGS18640 18641 # How to feed a file listing to the archiver.18642 archiver_list_spec=$lt_archiver_list_spec18643 18644 # A symbol stripping program.18645 STRIP=$lt_STRIP18646 18647 # Commands used to install an old-style archive.18648 RANLIB=$lt_RANLIB18649 old_postinstall_cmds=$lt_old_postinstall_cmds18650 old_postuninstall_cmds=$lt_old_postuninstall_cmds18651 18652 # Whether to use a lock for old archive extraction.18653 lock_old_archive_extraction=$lock_old_archive_extraction18654 18655 # A C compiler.18656 LTCC=$lt_CC18657 18658 # LTCC compiler flags.18659 LTCFLAGS=$lt_CFLAGS18660 18661 # Take the output of nm and produce a listing of raw symbols and C names.18662 global_symbol_pipe=$lt_lt_cv_sys_global_symbol_pipe18663 18664 # Transform the output of nm in a proper C declaration.18665 global_symbol_to_cdecl=$lt_lt_cv_sys_global_symbol_to_cdecl18666 18667 # Transform the output of nm into a list of symbols to manually relocate.18668 global_symbol_to_import=$lt_lt_cv_sys_global_symbol_to_import18669 18670 # Transform the output of nm in a C name address pair.18671 global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address18672 18673 # Transform the output of nm in a C name address pair when lib prefix is needed.18674 global_symbol_to_c_name_address_lib_prefix=$lt_lt_cv_sys_global_symbol_to_c_name_address_lib_prefix18675 18676 # The name lister interface.18677 nm_interface=$lt_lt_cv_nm_interface18678 18679 # Specify filename containing input files for \$NM.18680 nm_file_list_spec=$lt_nm_file_list_spec18681 18682 # The root where to search for dependent libraries,and where our libraries should be installed.18683 lt_sysroot=$lt_sysroot18684 18685 # Command to truncate a binary pipe.18686 lt_truncate_bin=$lt_lt_cv_truncate_bin18687 18688 # The name of the directory that contains temporary libtool files.18689 objdir=$objdir18690 18691 # Used to examine libraries when file_magic_cmd begins with "file".18692 MAGIC_CMD=$MAGIC_CMD18693 18694 # Must we lock files when doing compilation?18695 need_locks=$lt_need_locks18696 18697 # Manifest tool.18698 MANIFEST_TOOL=$lt_MANIFEST_TOOL18699 18700 # Tool to manipulate archived DWARF debug symbol files on Mac OS X.18701 DSYMUTIL=$lt_DSYMUTIL18702 18703 # Tool to change global to local symbols on Mac OS X.18704 NMEDIT=$lt_NMEDIT18705 18706 # Tool to manipulate fat objects and archives on Mac OS X.18707 LIPO=$lt_LIPO18708 18709 # ldd/readelf like tool for Mach-O binaries on Mac OS X.18710 OTOOL=$lt_OTOOL18711 18712 # ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4.18713 OTOOL64=$lt_OTOOL6418714 18715 # Old archive suffix (normally "a").18716 libext=$libext18717 18718 # Shared library suffix (normally ".so").18719 shrext_cmds=$lt_shrext_cmds18720 18721 # The commands to extract the exported symbol list from a shared archive.18722 extract_expsyms_cmds=$lt_extract_expsyms_cmds18723 18724 # Variables whose values should be saved in libtool wrapper scripts and18725 # restored at link time.18726 variables_saved_for_relink=$lt_variables_saved_for_relink18727 18728 # Do we need the "lib" prefix for modules?18729 need_lib_prefix=$need_lib_prefix18730 18731 # Do we need a version for libraries?18732 need_version=$need_version18733 18734 # Library versioning type.18735 version_type=$version_type18736 18737 # Shared library runtime path variable.18738 runpath_var=$runpath_var18739 18740 # Shared library path variable.18741 shlibpath_var=$shlibpath_var18742 18743 # Is shlibpath searched before the hard-coded library search path?18744 shlibpath_overrides_runpath=$shlibpath_overrides_runpath18745 18746 # Format of library name prefix.18747 libname_spec=$lt_libname_spec18748 18749 # List of archive names. First name is the real one, the rest are links.18750 # The last name is the one that the linker finds with -lNAME18751 library_names_spec=$lt_library_names_spec18752 18753 # The coded name of the library, if different from the real name.18754 soname_spec=$lt_soname_spec18755 18756 # Permission mode override for installation of shared libraries.18757 install_override_mode=$lt_install_override_mode18758 18759 # Command to use after installation of a shared archive.18760 postinstall_cmds=$lt_postinstall_cmds18761 18762 # Command to use after uninstallation of a shared archive.18763 postuninstall_cmds=$lt_postuninstall_cmds18764 18765 # Commands used to finish a libtool library installation in a directory.18766 finish_cmds=$lt_finish_cmds18767 18768 # As "finish_cmds", except a single script fragment to be evaled but18769 # not shown.18770 finish_eval=$lt_finish_eval18771 18772 # Whether we should hardcode library paths into libraries.18773 hardcode_into_libs=$hardcode_into_libs18774 18775 # Compile-time system search path for libraries.18776 sys_lib_search_path_spec=$lt_sys_lib_search_path_spec18777 18778 # Detected run-time system search path for libraries.18779 sys_lib_dlsearch_path_spec=$lt_configure_time_dlsearch_path18780 18781 # Explicit LT_SYS_LIBRARY_PATH set during ./configure time.18782 configure_time_lt_sys_library_path=$lt_configure_time_lt_sys_library_path18783 18784 # Whether dlopen is supported.18785 dlopen_support=$enable_dlopen18786 18787 # Whether dlopen of programs is supported.18788 dlopen_self=$enable_dlopen_self18789 18790 # Whether dlopen of statically linked programs is supported.18791 dlopen_self_static=$enable_dlopen_self_static18792 18793 # Commands to strip libraries.18794 old_striplib=$lt_old_striplib18795 striplib=$lt_striplib18796 18797 18798 # The linker used to build libraries.18799 LD=$lt_LD18800 18801 # How to create reloadable object files.18802 reload_flag=$lt_reload_flag18803 reload_cmds=$lt_reload_cmds18804 18805 # Commands used to build an old-style archive.18806 old_archive_cmds=$lt_old_archive_cmds18807 18808 # A language specific compiler.18809 CC=$lt_compiler18810 18811 # Is the compiler the GNU compiler?18812 with_gcc=$GCC18813 18814 # Compiler flag to turn off builtin functions.18815 no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag18816 18817 # Additional compiler flags for building library objects.18818 pic_flag=$lt_lt_prog_compiler_pic18819 18820 # How to pass a linker flag through the compiler.18821 wl=$lt_lt_prog_compiler_wl18822 18823 # Compiler flag to prevent dynamic linking.18824 link_static_flag=$lt_lt_prog_compiler_static18825 18826 # Does compiler simultaneously support -c and -o options?18827 compiler_c_o=$lt_lt_cv_prog_compiler_c_o18828 18829 # Whether or not to add -lc for building shared libraries.18830 build_libtool_need_lc=$archive_cmds_need_lc18831 18832 # Whether or not to disallow shared libs when runtime libs are static.18833 allow_libtool_libs_with_static_runtimes=$enable_shared_with_static_runtimes18834 18835 # Compiler flag to allow reflexive dlopens.18836 export_dynamic_flag_spec=$lt_export_dynamic_flag_spec18837 18838 # Compiler flag to generate shared objects directly from archives.18839 whole_archive_flag_spec=$lt_whole_archive_flag_spec18840 18841 # Whether the compiler copes with passing no objects directly.18842 compiler_needs_object=$lt_compiler_needs_object18843 18844 # Create an old-style archive from a shared archive.18845 old_archive_from_new_cmds=$lt_old_archive_from_new_cmds18846 18847 # Create a temporary old-style archive to link instead of a shared archive.18848 old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds18849 18850 # Commands used to build a shared archive.18851 archive_cmds=$lt_archive_cmds18852 archive_expsym_cmds=$lt_archive_expsym_cmds18853 18854 # Commands used to build a loadable module if different from building18855 # a shared archive.18856 module_cmds=$lt_module_cmds18857 module_expsym_cmds=$lt_module_expsym_cmds18858 18859 # Whether we are building with GNU ld or not.18860 with_gnu_ld=$lt_with_gnu_ld18861 18862 # Flag that allows shared libraries with undefined symbols to be built.18863 allow_undefined_flag=$lt_allow_undefined_flag18864 18865 # Flag that enforces no undefined symbols.18866 no_undefined_flag=$lt_no_undefined_flag18867 18868 # Flag to hardcode \$libdir into a binary during linking.18869 # This must work even if \$libdir does not exist18870 hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec18871 18872 # Whether we need a single "-rpath" flag with a separated argument.18873 hardcode_libdir_separator=$lt_hardcode_libdir_separator18874 18875 # Set to "yes" if using DIR/libNAME\$shared_ext during linking hardcodes18876 # DIR into the resulting binary.18877 hardcode_direct=$hardcode_direct18878 18879 # Set to "yes" if using DIR/libNAME\$shared_ext during linking hardcodes18880 # DIR into the resulting binary and the resulting library dependency is18881 # "absolute",i.e impossible to change by setting \$shlibpath_var if the18882 # library is relocated.18883 hardcode_direct_absolute=$hardcode_direct_absolute18884 18885 # Set to "yes" if using the -LDIR flag during linking hardcodes DIR18886 # into the resulting binary.18887 hardcode_minus_L=$hardcode_minus_L18888 18889 # Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR18890 # into the resulting binary.18891 hardcode_shlibpath_var=$hardcode_shlibpath_var18892 18893 # Set to "yes" if building a shared library automatically hardcodes DIR18894 # into the library and all subsequent libraries and executables linked18895 # against it.18896 hardcode_automatic=$hardcode_automatic18897 18898 # Set to yes if linker adds runtime paths of dependent libraries18899 # to runtime path list.18900 inherit_rpath=$inherit_rpath18901 18902 # Whether libtool must link a program against all its dependency libraries.18903 link_all_deplibs=$link_all_deplibs18904 18905 # Set to "yes" if exported symbols are required.18906 always_export_symbols=$always_export_symbols18907 18908 # The commands to list exported symbols.18909 export_symbols_cmds=$lt_export_symbols_cmds18910 18911 # Symbols that should not be listed in the preloaded symbols.18912 exclude_expsyms=$lt_exclude_expsyms18913 18914 # Symbols that must always be exported.18915 include_expsyms=$lt_include_expsyms18916 18917 # Commands necessary for linking programs (against libraries) with templates.18918 prelink_cmds=$lt_prelink_cmds18919 18920 # Commands necessary for finishing linking programs.18921 postlink_cmds=$lt_postlink_cmds18922 18923 # Specify filename containing input files.18924 file_list_spec=$lt_file_list_spec18925 18926 # How to hardcode a shared library path into an executable.18927 hardcode_action=$hardcode_action18928 18929 # The directories searched by this compiler when creating a shared library.18930 compiler_lib_search_dirs=$lt_compiler_lib_search_dirs18931 18932 # Dependencies to place before and after the objects being linked to18933 # create a shared library.18934 predep_objects=$lt_predep_objects18935 postdep_objects=$lt_postdep_objects18936 predeps=$lt_predeps18937 postdeps=$lt_postdeps18938 18939 # The library search path used internally by the compiler when linking18940 # a shared library.18941 compiler_lib_search_path=$lt_compiler_lib_search_path18942 18943 # ### END LIBTOOL CONFIG18944 18945 _LT_EOF18946 18947 cat <<'_LT_EOF' >> "$cfgfile"18948 18949 # ### BEGIN FUNCTIONS SHARED WITH CONFIGURE18950 18951 # func_munge_path_list VARIABLE PATH18952 # -----------------------------------18953 # VARIABLE is name of variable containing _space_ separated list of18954 # directories to be munged by the contents of PATH, which is string18955 # having a format:18956 # "DIR[:DIR]:"18957 # string "DIR[ DIR]" will be prepended to VARIABLE18958 # ":DIR[:DIR]"18959 # string "DIR[ DIR]" will be appended to VARIABLE18960 # "DIRP[:DIRP]::[DIRA:]DIRA"18961 # string "DIRP[ DIRP]" will be prepended to VARIABLE and string18962 # "DIRA[ DIRA]" will be appended to VARIABLE18963 # "DIR[:DIR]"18964 # VARIABLE will be replaced by "DIR[ DIR]"18965 func_munge_path_list ()18966 {18967 case x$2 in18968 x)18969 ;;18970 *:)18971 eval $1=\"`$ECHO $2 | $SED 's/:/ /g'` \$$1\"18972 ;;18973 x:*)18974 eval $1=\"\$$1 `$ECHO $2 | $SED 's/:/ /g'`\"18975 ;;18976 *::*)18977 eval $1=\"\$$1\ `$ECHO $2 | $SED -e 's/.*:://' -e 's/:/ /g'`\"18978 eval $1=\"`$ECHO $2 | $SED -e 's/::.*//' -e 's/:/ /g'`\ \$$1\"18979 ;;18980 *)18981 eval $1=\"`$ECHO $2 | $SED 's/:/ /g'`\"18982 ;;18983 esac18984 }18985 18986 18987 # Calculate cc_basename. Skip known compiler wrappers and cross-prefix.18988 func_cc_basename ()18989 {18990 for cc_temp in $*""; do18991 case $cc_temp in18992 compile | *[\\/]compile | ccache | *[\\/]ccache ) ;;18993 distcc | *[\\/]distcc | purify | *[\\/]purify ) ;;18994 \-*) ;;18995 *) break;;18996 esac18997 done18998 func_cc_basename_result=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"`18999 }19000 19001 19002 # ### END FUNCTIONS SHARED WITH CONFIGURE19003 19004 _LT_EOF19005 19006 case $host_os in19007 aix3*)19008 cat <<\_LT_EOF >> "$cfgfile"19009 # AIX sometimes has problems with the GCC collect2 program. For some19010 # reason, if we set the COLLECT_NAMES environment variable, the problems19011 # vanish in a puff of smoke.19012 if test set != "${COLLECT_NAMES+set}"; then19013 COLLECT_NAMES=19014 export COLLECT_NAMES19015 fi19016 _LT_EOF19017 ;;19018 esac19019 19020 19021 ltmain=$ac_aux_dir/ltmain.sh19022 19023 19024 # We use sed instead of cat because bash on DJGPP gets confused if19025 # if finds mixed CR/LF and LF-only lines. Since sed operates in19026 # text mode, it properly converts lines to CR/LF. This bash problem19027 # is reportedly fixed, but why not run on old versions too?19028 sed '$q' "$ltmain" >> "$cfgfile" \19029 || (rm -f "$cfgfile"; exit 1)19030 19031 mv -f "$cfgfile" "$ofile" ||19032 (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")19033 chmod +x "$ofile"19034 19035 19036 cat <<_LT_EOF >> "$ofile"19037 19038 # ### BEGIN LIBTOOL TAG CONFIG: CXX19039 19040 # The linker used to build libraries.19041 LD=$lt_LD_CXX19042 19043 # How to create reloadable object files.19044 reload_flag=$lt_reload_flag_CXX19045 reload_cmds=$lt_reload_cmds_CXX19046 19047 # Commands used to build an old-style archive.19048 old_archive_cmds=$lt_old_archive_cmds_CXX19049 19050 # A language specific compiler.19051 CC=$lt_compiler_CXX19052 19053 # Is the compiler the GNU compiler?19054 with_gcc=$GCC_CXX19055 19056 # Compiler flag to turn off builtin functions.19057 no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag_CXX19058 19059 # Additional compiler flags for building library objects.19060 pic_flag=$lt_lt_prog_compiler_pic_CXX19061 19062 # How to pass a linker flag through the compiler.19063 wl=$lt_lt_prog_compiler_wl_CXX19064 19065 # Compiler flag to prevent dynamic linking.19066 link_static_flag=$lt_lt_prog_compiler_static_CXX19067 19068 # Does compiler simultaneously support -c and -o options?19069 compiler_c_o=$lt_lt_cv_prog_compiler_c_o_CXX19070 19071 # Whether or not to add -lc for building shared libraries.19072 build_libtool_need_lc=$archive_cmds_need_lc_CXX19073 19074 # Whether or not to disallow shared libs when runtime libs are static.19075 allow_libtool_libs_with_static_runtimes=$enable_shared_with_static_runtimes_CXX19076 19077 # Compiler flag to allow reflexive dlopens.19078 export_dynamic_flag_spec=$lt_export_dynamic_flag_spec_CXX19079 19080 # Compiler flag to generate shared objects directly from archives.19081 whole_archive_flag_spec=$lt_whole_archive_flag_spec_CXX19082 19083 # Whether the compiler copes with passing no objects directly.19084 compiler_needs_object=$lt_compiler_needs_object_CXX19085 19086 # Create an old-style archive from a shared archive.19087 old_archive_from_new_cmds=$lt_old_archive_from_new_cmds_CXX19088 19089 # Create a temporary old-style archive to link instead of a shared archive.19090 old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds_CXX19091 19092 # Commands used to build a shared archive.19093 archive_cmds=$lt_archive_cmds_CXX19094 archive_expsym_cmds=$lt_archive_expsym_cmds_CXX19095 19096 # Commands used to build a loadable module if different from building19097 # a shared archive.19098 module_cmds=$lt_module_cmds_CXX19099 module_expsym_cmds=$lt_module_expsym_cmds_CXX19100 19101 # Whether we are building with GNU ld or not.19102 with_gnu_ld=$lt_with_gnu_ld_CXX19103 19104 # Flag that allows shared libraries with undefined symbols to be built.19105 allow_undefined_flag=$lt_allow_undefined_flag_CXX19106 19107 # Flag that enforces no undefined symbols.19108 no_undefined_flag=$lt_no_undefined_flag_CXX19109 19110 # Flag to hardcode \$libdir into a binary during linking.19111 # This must work even if \$libdir does not exist19112 hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec_CXX19113 19114 # Whether we need a single "-rpath" flag with a separated argument.19115 hardcode_libdir_separator=$lt_hardcode_libdir_separator_CXX19116 19117 # Set to "yes" if using DIR/libNAME\$shared_ext during linking hardcodes19118 # DIR into the resulting binary.19119 hardcode_direct=$hardcode_direct_CXX19120 19121 # Set to "yes" if using DIR/libNAME\$shared_ext during linking hardcodes19122 # DIR into the resulting binary and the resulting library dependency is19123 # "absolute",i.e impossible to change by setting \$shlibpath_var if the19124 # library is relocated.19125 hardcode_direct_absolute=$hardcode_direct_absolute_CXX19126 19127 # Set to "yes" if using the -LDIR flag during linking hardcodes DIR19128 # into the resulting binary.19129 hardcode_minus_L=$hardcode_minus_L_CXX19130 19131 # Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR19132 # into the resulting binary.19133 hardcode_shlibpath_var=$hardcode_shlibpath_var_CXX19134 19135 # Set to "yes" if building a shared library automatically hardcodes DIR19136 # into the library and all subsequent libraries and executables linked19137 # against it.19138 hardcode_automatic=$hardcode_automatic_CXX19139 19140 # Set to yes if linker adds runtime paths of dependent libraries19141 # to runtime path list.19142 inherit_rpath=$inherit_rpath_CXX19143 19144 # Whether libtool must link a program against all its dependency libraries.19145 link_all_deplibs=$link_all_deplibs_CXX19146 19147 # Set to "yes" if exported symbols are required.19148 always_export_symbols=$always_export_symbols_CXX19149 19150 # The commands to list exported symbols.19151 export_symbols_cmds=$lt_export_symbols_cmds_CXX19152 19153 # Symbols that should not be listed in the preloaded symbols.19154 exclude_expsyms=$lt_exclude_expsyms_CXX19155 19156 # Symbols that must always be exported.19157 include_expsyms=$lt_include_expsyms_CXX19158 19159 # Commands necessary for linking programs (against libraries) with templates.19160 prelink_cmds=$lt_prelink_cmds_CXX19161 19162 # Commands necessary for finishing linking programs.19163 postlink_cmds=$lt_postlink_cmds_CXX19164 19165 # Specify filename containing input files.19166 file_list_spec=$lt_file_list_spec_CXX19167 19168 # How to hardcode a shared library path into an executable.19169 hardcode_action=$hardcode_action_CXX19170 19171 # The directories searched by this compiler when creating a shared library.19172 compiler_lib_search_dirs=$lt_compiler_lib_search_dirs_CXX19173 19174 # Dependencies to place before and after the objects being linked to19175 # create a shared library.19176 predep_objects=$lt_predep_objects_CXX19177 postdep_objects=$lt_postdep_objects_CXX19178 predeps=$lt_predeps_CXX19179 postdeps=$lt_postdeps_CXX19180 19181 # The library search path used internally by the compiler when linking19182 # a shared library.19183 compiler_lib_search_path=$lt_compiler_lib_search_path_CXX19184 19185 # ### END LIBTOOL TAG CONFIG: CXX19186 _LT_EOF19187 19188 ;;19189 5614 19190 5615 esac -
libcfa/configure.ac
r95b8aa7 rff5caaf 4 4 AC_PREREQ([2.68]) 5 5 AC_INIT([cfa-cc],[1.0.0.0],[cforall@plg.uwaterloo.ca]) 6 AC_CONFIG_AUX_DIR([automake]) 7 AC_CONFIG_MACRO_DIRS([automake]) 6 AC_CONFIG_AUX_DIR([./automake]) 8 7 AM_SILENT_RULES([yes]) 9 8 … … 15 14 : ${CFLAGS=""} 16 15 17 # define this to override18 AR_FLAGS="cr"19 20 16 # Allow program name tansformation 21 17 # will fill program_transform_name with appropriate sed regex … … 25 21 AC_ARG_VAR(CONFIGURATION, [The configuration to use when building libcfa, options are: deubg, nodebug, nolib (prelude-only)]) 26 22 AC_ARG_VAR(DRIVER_DIR, [The path to the cforall driver directory]) 27 AC_ARG_VAR(CFA_VERSION, [The long version of cfa])28 23 29 24 CFACC=${DRIVER_DIR}cfa … … 31 26 AC_SUBST(CFACC) 32 27 AC_SUBST(CFACPP) 33 AC_SUBST(CFA_VERSION)34 28 35 29 #============================================================================== … … 59 53 CONFIG_BUILDLIB="no" 60 54 ;; 61 *)62 AC_MSG_ERROR('Invalid value $CONFIGURATION for \$CONFIGURATION')63 ;;64 55 esac 65 56 … … 79 70 80 71 # Checks for programs. 81 LT_INIT82 83 72 AC_PROG_CXX 84 73 AC_PROG_CC 85 74 AM_PROG_AS 86 AC_PROG_LIBTOOL87 75 AC_PROG_INSTALL 88 76 AC_PROG_MAKE_SET 77 AC_PROG_RANLIB 89 78 90 79 AC_CONFIG_FILES([ -
libcfa/prelude/Makefile.am
r95b8aa7 rff5caaf 17 17 # create object files in directory with source files 18 18 AUTOMAKE_OPTIONS = foreign subdir-objects 19 ACLOCAL_AMFLAGS = -I automake20 19 21 20 # put into lib for now … … 24 23 25 24 CC = @CFACC@ 26 AM_CFLAGS = -g -Wall -Wno-unused-function -fPIC@ARCH_FLAGS@ @CONFIG_CFLAGS@25 AM_CFLAGS = -g -Wall -Wno-unused-function @ARCH_FLAGS@ @CONFIG_CFLAGS@ 27 26 AM_CFAFLAGS = @CONFIG_CFAFLAGS@ 28 27 -
libcfa/prelude/Makefile.in
r95b8aa7 rff5caaf 90 90 PRE_UNINSTALL = : 91 91 POST_UNINSTALL = : 92 build_triplet = @build@93 host_triplet = @host@94 92 subdir = prelude 95 93 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 96 am__aclocal_m4_deps = $(top_srcdir)/automake/libtool.m4 \ 97 $(top_srcdir)/automake/ltoptions.m4 \ 98 $(top_srcdir)/automake/ltsugar.m4 \ 99 $(top_srcdir)/automake/ltversion.m4 \ 100 $(top_srcdir)/automake/lt~obsolete.m4 \ 101 $(top_srcdir)/../automake/cfa.m4 $(top_srcdir)/configure.ac 94 am__aclocal_m4_deps = $(top_srcdir)/../automake/cfa.m4 \ 95 $(top_srcdir)/configure.ac 102 96 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ 103 97 $(ACLOCAL_M4) … … 160 154 AMTAR = @AMTAR@ 161 155 AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ 162 AR = @AR@163 156 ARCHITECTURE = @ARCHITECTURE@ 164 157 ARCH_FLAGS = @ARCH_FLAGS@ … … 179 172 CFA_NAME = @CFA_NAME@ 180 173 CFA_PREFIX = @CFA_PREFIX@ 181 CFA_VERSION = @CFA_VERSION@182 174 CFLAGS = @CFLAGS@ 183 175 CONFIGURATION = @CONFIGURATION@ … … 185 177 CONFIG_CFAFLAGS = @CONFIG_CFAFLAGS@ 186 178 CONFIG_CFLAGS = @CONFIG_CFLAGS@ 187 CPP = @CPP@188 179 CPPFLAGS = @CPPFLAGS@ 189 180 CXX = @CXX@ 190 CXXCPP = @CXXCPP@191 181 CXXDEPMODE = @CXXDEPMODE@ 192 182 CXXFLAGS = @CXXFLAGS@ … … 194 184 DEFS = @DEFS@ 195 185 DEPDIR = @DEPDIR@ 196 DLLTOOL = @DLLTOOL@197 186 DRIVER_DIR = @DRIVER_DIR@ 198 DSYMUTIL = @DSYMUTIL@199 DUMPBIN = @DUMPBIN@200 187 ECHO_C = @ECHO_C@ 201 188 ECHO_N = @ECHO_N@ 202 189 ECHO_T = @ECHO_T@ 203 EGREP = @EGREP@204 190 EXEEXT = @EXEEXT@ 205 FGREP = @FGREP@206 GREP = @GREP@207 191 INSTALL = @INSTALL@ 208 192 INSTALL_DATA = @INSTALL_DATA@ … … 210 194 INSTALL_SCRIPT = @INSTALL_SCRIPT@ 211 195 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ 212 LD = @LD@213 196 LDFLAGS = @LDFLAGS@ 214 197 LIBOBJS = @LIBOBJS@ 215 198 LIBS = @LIBS@ 216 LIBTOOL = @LIBTOOL@217 LIPO = @LIPO@218 LN_S = @LN_S@219 199 LTLIBOBJS = @LTLIBOBJS@ 220 LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@221 200 MAKEINFO = @MAKEINFO@ 222 MANIFEST_TOOL = @MANIFEST_TOOL@223 201 MKDIR_P = @MKDIR_P@ 224 NM = @NM@225 NMEDIT = @NMEDIT@226 OBJDUMP = @OBJDUMP@227 202 OBJEXT = @OBJEXT@ 228 OTOOL = @OTOOL@229 OTOOL64 = @OTOOL64@230 203 PACKAGE = @PACKAGE@ 231 204 PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ … … 237 210 PATH_SEPARATOR = @PATH_SEPARATOR@ 238 211 RANLIB = @RANLIB@ 239 SED = @SED@240 212 SET_MAKE = @SET_MAKE@ 241 213 SHELL = @SHELL@ … … 246 218 abs_top_builddir = @abs_top_builddir@ 247 219 abs_top_srcdir = @abs_top_srcdir@ 248 ac_ct_AR = @ac_ct_AR@249 220 ac_ct_CC = @ac_ct_CC@ 250 221 ac_ct_CXX = @ac_ct_CXX@ 251 ac_ct_DUMPBIN = @ac_ct_DUMPBIN@252 222 am__include = @am__include@ 253 223 am__leading_dot = @am__leading_dot@ … … 256 226 am__untar = @am__untar@ 257 227 bindir = @bindir@ 258 build = @build@259 228 build_alias = @build_alias@ 260 build_cpu = @build_cpu@261 build_os = @build_os@262 build_vendor = @build_vendor@263 229 builddir = @builddir@ 264 230 datadir = @datadir@ … … 267 233 dvidir = @dvidir@ 268 234 exec_prefix = @exec_prefix@ 269 host = @host@270 235 host_alias = @host_alias@ 271 host_cpu = @host_cpu@272 host_os = @host_os@273 host_vendor = @host_vendor@274 236 htmldir = @htmldir@ 275 237 includedir = @includedir@ … … 299 261 # create object files in directory with source files 300 262 AUTOMAKE_OPTIONS = foreign subdir-objects 301 ACLOCAL_AMFLAGS = -I automake302 263 303 264 # put into lib for now 304 265 cfalibdir = ${CFA_LIBDIR} 305 266 cfalib_DATA = gcc-builtins.cf builtins.cf extras.cf prelude.cfa bootloader.c 306 AM_CFLAGS = -g -Wall -Wno-unused-function -fPIC@ARCH_FLAGS@ @CONFIG_CFLAGS@267 AM_CFLAGS = -g -Wall -Wno-unused-function @ARCH_FLAGS@ @CONFIG_CFLAGS@ 307 268 AM_CFAFLAGS = @CONFIG_CFAFLAGS@ 308 269 MOSTLYCLEANFILES = bootloader.c builtins.cf extras.cf gcc-builtins.c gcc-builtins.cf prelude.cfa … … 340 301 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh 341 302 $(am__aclocal_m4_deps): 342 343 mostlyclean-libtool:344 -rm -f *.lo345 346 clean-libtool:347 -rm -rf .libs _libs348 303 install-cfalibDATA: $(cfalib_DATA) 349 304 @$(NORMAL_INSTALL) … … 445 400 clean: clean-am 446 401 447 clean-am: clean-generic clean-libtoolmostlyclean-am402 clean-am: clean-generic mostlyclean-am 448 403 449 404 distclean: distclean-am … … 498 453 mostlyclean: mostlyclean-am 499 454 500 mostlyclean-am: mostlyclean-generic mostlyclean-libtool455 mostlyclean-am: mostlyclean-generic 501 456 502 457 pdf: pdf-am … … 512 467 .MAKE: install-am install-strip 513 468 514 .PHONY: all all-am check check-am clean clean-generic clean-libtool \ 515 cscopelist-am ctags-am distclean distclean-generic \ 516 distclean-libtool distdir dvi dvi-am html html-am info info-am \ 517 install install-am install-cfalibDATA install-data \ 518 install-data-am install-dvi install-dvi-am install-exec \ 519 install-exec-am install-html install-html-am install-info \ 520 install-info-am install-man install-pdf install-pdf-am \ 521 install-ps install-ps-am install-strip installcheck \ 522 installcheck-am installdirs maintainer-clean \ 469 .PHONY: all all-am check check-am clean clean-generic cscopelist-am \ 470 ctags-am distclean distclean-generic distdir dvi dvi-am html \ 471 html-am info info-am install install-am install-cfalibDATA \ 472 install-data install-data-am install-dvi install-dvi-am \ 473 install-exec install-exec-am install-html install-html-am \ 474 install-info install-info-am install-man install-pdf \ 475 install-pdf-am install-ps install-ps-am install-strip \ 476 installcheck installcheck-am installdirs maintainer-clean \ 523 477 maintainer-clean-generic maintainer-clean-local mostlyclean \ 524 mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am\525 tags-am uninstalluninstall-am uninstall-cfalibDATA478 mostlyclean-generic pdf pdf-am ps ps-am tags-am uninstall \ 479 uninstall-am uninstall-cfalibDATA 526 480 527 481 .PRECIOUS: Makefile -
libcfa/src/Makefile.am
r95b8aa7 rff5caaf 17 17 # create object files in directory with source files 18 18 AUTOMAKE_OPTIONS = foreign subdir-objects 19 A CLOCAL_AMFLAGS = -I automake19 ARFLAGS = cr 20 20 21 21 include $(srcdir)/../../src/cfa.make 22 22 23 23 libdir = ${CFA_LIBDIR} 24 lib_L TLIBRARIES = libcfa.la24 lib_LIBRARIES = libcfa.a 25 25 26 26 VPATH += :../prelude … … 31 31 # The built sources must not depend on the installed headers 32 32 AM_CFAFLAGS = -quiet -in-tree -I$(srcdir)/stdhdr @CONFIG_CFAFLAGS@ 33 AM_CFLAGS = -g -Wall -Wno-unused-function -fPIC@ARCH_FLAGS@ @CONFIG_CFLAGS@33 AM_CFLAGS = -g -Wall -Wno-unused-function @ARCH_FLAGS@ @CONFIG_CFLAGS@ 34 34 AM_CCASFLAGS = -g -Wall -Wno-unused-function @ARCH_FLAGS@ @CONFIG_CFLAGS@ 35 35 CFACC = @CFACC@ … … 37 37 #---------------------------------------------------------------------------------------------------------------- 38 38 if BUILDLIB 39 headers_nosrc = math.hfa gmp.hfa time_t.hfa bits/align.hfa bits/containers.hfa bits/defs.hfa bits/debug.hfa bits/locks.hfa40 39 headers = fstream.hfa iostream.hfa iterator.hfa limits.hfa rational.hfa time.hfa stdlib.hfa common.hfa \ 41 40 containers/maybe.hfa containers/pair.hfa containers/result.hfa containers/vector.hfa 42 41 42 headers_nosrc = math.hfa gmp.hfa time_t.hfa bits/align.hfa bits/containers.hfa bits/defs.hfa bits/debug.hfa bits/locks.hfa 43 43 44 # not all platforms support concurrency, add option do disable it 45 headers += concurrency/coroutine.hfa concurrency/thread.hfa concurrency/kernel.hfa concurrency/monitor.hfa concurrency/mutex.hfa 46 44 47 headers_nosrc += concurrency/invoke.h 45 headers += concurrency/coroutine.hfa concurrency/thread.hfa concurrency/kernel.hfa concurrency/monitor.hfa concurrency/mutex.hfa46 48 47 49 libsrc = startup.cfa interpose.cfa bits/debug.cfa assert.cfa exception.c virtual.c heap.cfa ${headers:.hfa=.cfa} … … 61 63 62 64 # add dependency of cfa files 63 libobjs = $(addsuffix . lo, $(basename $(filter %.cfa,$(libsrc))))65 libobjs = $(addsuffix .o, $(basename $(filter %.cfa,$(libsrc)))) 64 66 $(libobjs) : @CFACC@ @CFACPP@ prelude.cfa 65 67 … … 68 70 libdeps = $(join \ 69 71 $(addsuffix $(DEPDIR)/ , $(dir $(libobjs) ) ), \ 70 $(notdir ${libobjs:. lo=.Plo}) \72 $(notdir ${libobjs:.o=.Po}) \ 71 73 ) 72 74 … … 74 76 75 77 prelude.o : prelude.cfa extras.cf gcc-builtins.cf builtins.cf @CFACC@ @CFACPP@ 76 ${AM_V_GEN}@CFACC@ ${AM_CFLAGS} ${CFLAGS} -quiet -in-tree @CONFIG_CFAFLAGS@-XCFA -l ${<} -c -o ${@}78 ${AM_V_GEN}@CFACC@ ${AM_CFLAGS} ${CFLAGS} -quiet -in-tree -XCFA -l ${<} -c -o ${@} 77 79 78 prelude.lo: prelude.cfa extras.cf gcc-builtins.cf builtins.cf @CFACC@ @CFACPP@79 ${AM_V_GEN}$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile \80 @CFACC@ ${AM_CFLAGS} ${CFLAGS} -quiet -in-tree @CONFIG_CFAFLAGS@ -XCFA -l ${<} -c -o ${@}81 80 82 81 83 82 #---------------------------------------------------------------------------------------------------------------- 84 libcfa_la_SOURCES = prelude.cfa ${libsrc} 85 libcfa_la_LDFLAGS = -version-info @CFA_VERSION@ 83 libcfa_a_SOURCES = prelude.cfa ${libsrc} 86 84 87 stdhdr = $ (shell find $(srcdir)/stdhdr -type f -printf "%p ")85 stdhdr = ${shell find ${srcdir}/stdhdr -type f -printf "%p "} 88 86 89 87 cfa_includedir = $(CFA_INCDIR) -
libcfa/src/Makefile.in
r95b8aa7 rff5caaf 90 90 PRE_UNINSTALL = : 91 91 POST_UNINSTALL = : 92 build_triplet = @build@93 host_triplet = @host@94 92 subdir = src 95 93 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 96 am__aclocal_m4_deps = $(top_srcdir)/automake/libtool.m4 \ 97 $(top_srcdir)/automake/ltoptions.m4 \ 98 $(top_srcdir)/automake/ltsugar.m4 \ 99 $(top_srcdir)/automake/ltversion.m4 \ 100 $(top_srcdir)/automake/lt~obsolete.m4 \ 101 $(top_srcdir)/../automake/cfa.m4 $(top_srcdir)/configure.ac 94 am__aclocal_m4_deps = $(top_srcdir)/../automake/cfa.m4 \ 95 $(top_srcdir)/configure.ac 102 96 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ 103 97 $(ACLOCAL_M4) … … 135 129 } 136 130 am__installdirs = "$(DESTDIR)$(libdir)" "$(DESTDIR)$(cfa_includedir)" 137 LTLIBRARIES = $(lib_LTLIBRARIES) 138 libcfa_la_LIBADD = 139 am__libcfa_la_SOURCES_DIST = prelude.cfa startup.cfa interpose.cfa \ 131 LIBRARIES = $(lib_LIBRARIES) 132 AR = ar 133 AM_V_AR = $(am__v_AR_@AM_V@) 134 am__v_AR_ = $(am__v_AR_@AM_DEFAULT_V@) 135 am__v_AR_0 = @echo " AR " $@; 136 am__v_AR_1 = 137 libcfa_a_AR = $(AR) $(ARFLAGS) 138 libcfa_a_LIBADD = 139 am__libcfa_a_SOURCES_DIST = prelude.cfa startup.cfa interpose.cfa \ 140 140 bits/debug.cfa assert.cfa exception.c virtual.c heap.cfa \ 141 141 fstream.cfa iostream.cfa iterator.cfa limits.cfa rational.cfa \ … … 148 148 concurrency/invoke.c concurrency/preemption.cfa 149 149 am__dirstamp = $(am__leading_dot)dirstamp 150 @BUILDLIB_TRUE@am__objects_1 = fstream.lo iostream.lo iterator.lo \ 151 @BUILDLIB_TRUE@ limits.lo rational.lo time.lo stdlib.lo \ 152 @BUILDLIB_TRUE@ common.lo containers/maybe.lo \ 153 @BUILDLIB_TRUE@ containers/pair.lo containers/result.lo \ 154 @BUILDLIB_TRUE@ containers/vector.lo concurrency/coroutine.lo \ 155 @BUILDLIB_TRUE@ concurrency/thread.lo concurrency/kernel.lo \ 156 @BUILDLIB_TRUE@ concurrency/monitor.lo concurrency/mutex.lo 157 @BUILDLIB_TRUE@am__objects_2 = startup.lo interpose.lo bits/debug.lo \ 158 @BUILDLIB_TRUE@ assert.lo exception.lo virtual.lo heap.lo \ 159 @BUILDLIB_TRUE@ $(am__objects_1) \ 160 @BUILDLIB_TRUE@ concurrency/CtxSwitch-@ARCHITECTURE@.lo \ 161 @BUILDLIB_TRUE@ concurrency/alarm.lo concurrency/invoke.lo \ 162 @BUILDLIB_TRUE@ concurrency/preemption.lo 163 am_libcfa_la_OBJECTS = prelude.lo $(am__objects_2) 164 libcfa_la_OBJECTS = $(am_libcfa_la_OBJECTS) 165 AM_V_lt = $(am__v_lt_@AM_V@) 166 am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@) 167 am__v_lt_0 = --silent 168 am__v_lt_1 = 169 libcfa_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ 170 $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ 171 $(libcfa_la_LDFLAGS) $(LDFLAGS) -o $@ 150 @BUILDLIB_TRUE@am__objects_1 = fstream.$(OBJEXT) iostream.$(OBJEXT) \ 151 @BUILDLIB_TRUE@ iterator.$(OBJEXT) limits.$(OBJEXT) \ 152 @BUILDLIB_TRUE@ rational.$(OBJEXT) time.$(OBJEXT) \ 153 @BUILDLIB_TRUE@ stdlib.$(OBJEXT) common.$(OBJEXT) \ 154 @BUILDLIB_TRUE@ containers/maybe.$(OBJEXT) \ 155 @BUILDLIB_TRUE@ containers/pair.$(OBJEXT) \ 156 @BUILDLIB_TRUE@ containers/result.$(OBJEXT) \ 157 @BUILDLIB_TRUE@ containers/vector.$(OBJEXT) \ 158 @BUILDLIB_TRUE@ concurrency/coroutine.$(OBJEXT) \ 159 @BUILDLIB_TRUE@ concurrency/thread.$(OBJEXT) \ 160 @BUILDLIB_TRUE@ concurrency/kernel.$(OBJEXT) \ 161 @BUILDLIB_TRUE@ concurrency/monitor.$(OBJEXT) \ 162 @BUILDLIB_TRUE@ concurrency/mutex.$(OBJEXT) 163 @BUILDLIB_TRUE@am__objects_2 = startup.$(OBJEXT) interpose.$(OBJEXT) \ 164 @BUILDLIB_TRUE@ bits/debug.$(OBJEXT) assert.$(OBJEXT) \ 165 @BUILDLIB_TRUE@ exception.$(OBJEXT) virtual.$(OBJEXT) \ 166 @BUILDLIB_TRUE@ heap.$(OBJEXT) $(am__objects_1) \ 167 @BUILDLIB_TRUE@ concurrency/CtxSwitch-@ARCHITECTURE@.$(OBJEXT) \ 168 @BUILDLIB_TRUE@ concurrency/alarm.$(OBJEXT) \ 169 @BUILDLIB_TRUE@ concurrency/invoke.$(OBJEXT) \ 170 @BUILDLIB_TRUE@ concurrency/preemption.$(OBJEXT) 171 am_libcfa_a_OBJECTS = prelude.$(OBJEXT) $(am__objects_2) 172 libcfa_a_OBJECTS = $(am_libcfa_a_OBJECTS) 172 173 AM_V_P = $(am__v_P_@AM_V@) 173 174 am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) … … 183 184 am__v_at_1 = 184 185 DEFAULT_INCLUDES = -I.@am__isrc@ 185 depcomp = $(SHELL) $(top_srcdir)/ automake/depcomp186 depcomp = $(SHELL) $(top_srcdir)/./automake/depcomp 186 187 am__depfiles_maybe = depfiles 187 188 am__mv = mv -f 188 189 CPPASCOMPILE = $(CCAS) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ 189 190 $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CCASFLAGS) $(CCASFLAGS) 190 LTCPPASCOMPILE = $(LIBTOOL) $(AM_V_lt) $(AM_LIBTOOLFLAGS) \191 $(LIBTOOLFLAGS) --mode=compile $(CCAS) $(DEFS) \192 $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \193 $(AM_CCASFLAGS) $(CCASFLAGS)194 191 AM_V_CPPAS = $(am__v_CPPAS_@AM_V@) 195 192 am__v_CPPAS_ = $(am__v_CPPAS_@AM_DEFAULT_V@) … … 198 195 COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ 199 196 $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) 200 LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \201 $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \202 $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \203 $(AM_CFLAGS) $(CFLAGS)204 197 AM_V_CC = $(am__v_CC_@AM_V@) 205 198 am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@) … … 207 200 am__v_CC_1 = 208 201 CCLD = $(CC) 209 LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ 210 $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ 211 $(AM_LDFLAGS) $(LDFLAGS) -o $@ 202 LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ 212 203 AM_V_CCLD = $(am__v_CCLD_@AM_V@) 213 204 am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@) 214 205 am__v_CCLD_0 = @echo " CCLD " $@; 215 206 am__v_CCLD_1 = 216 SOURCES = $(libcfa_ la_SOURCES)217 DIST_SOURCES = $(am__libcfa_ la_SOURCES_DIST)207 SOURCES = $(libcfa_a_SOURCES) 208 DIST_SOURCES = $(am__libcfa_a_SOURCES_DIST) 218 209 am__can_run_installinfo = \ 219 210 case $$AM_UPDATE_INFO_DIR in \ … … 221 212 *) (install-info --version) >/dev/null 2>&1;; \ 222 213 esac 223 am__nobase_cfa_include_HEADERS_DIST = $ (shell find $(srcdir)/stdhdr \224 -type f -printf "%p " )fstream.hfa iostream.hfa iterator.hfa \214 am__nobase_cfa_include_HEADERS_DIST = ${shell find ${srcdir}/stdhdr \ 215 -type f -printf "%p "} fstream.hfa iostream.hfa iterator.hfa \ 225 216 limits.hfa rational.hfa time.hfa stdlib.hfa common.hfa \ 226 217 containers/maybe.hfa containers/pair.hfa containers/result.hfa \ … … 251 242 CTAGS = ctags 252 243 am__DIST_COMMON = $(srcdir)/../../src/cfa.make $(srcdir)/Makefile.in \ 253 $(top_srcdir)/ automake/depcomp244 $(top_srcdir)/./automake/depcomp 254 245 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) 255 246 VPATH = @srcdir@ :../prelude … … 257 248 AMTAR = @AMTAR@ 258 249 AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ 259 AR = @AR@260 250 ARCHITECTURE = @ARCHITECTURE@ 261 251 ARCH_FLAGS = @ARCH_FLAGS@ … … 276 266 CFA_NAME = @CFA_NAME@ 277 267 CFA_PREFIX = @CFA_PREFIX@ 278 CFA_VERSION = @CFA_VERSION@279 268 CFLAGS = @CFLAGS@ 280 269 CONFIGURATION = @CONFIGURATION@ … … 282 271 CONFIG_CFAFLAGS = @CONFIG_CFAFLAGS@ 283 272 CONFIG_CFLAGS = @CONFIG_CFLAGS@ 284 CPP = @CPP@285 273 CPPFLAGS = @CPPFLAGS@ 286 274 CXX = @CXX@ 287 CXXCPP = @CXXCPP@288 275 CXXDEPMODE = @CXXDEPMODE@ 289 276 CXXFLAGS = @CXXFLAGS@ … … 291 278 DEFS = @DEFS@ 292 279 DEPDIR = @DEPDIR@ 293 DLLTOOL = @DLLTOOL@294 280 DRIVER_DIR = @DRIVER_DIR@ 295 DSYMUTIL = @DSYMUTIL@296 DUMPBIN = @DUMPBIN@297 281 ECHO_C = @ECHO_C@ 298 282 ECHO_N = @ECHO_N@ 299 283 ECHO_T = @ECHO_T@ 300 EGREP = @EGREP@301 284 EXEEXT = @EXEEXT@ 302 FGREP = @FGREP@303 GREP = @GREP@304 285 INSTALL = @INSTALL@ 305 286 INSTALL_DATA = @INSTALL_DATA@ … … 307 288 INSTALL_SCRIPT = @INSTALL_SCRIPT@ 308 289 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ 309 LD = @LD@310 290 LDFLAGS = @LDFLAGS@ 311 291 LIBOBJS = @LIBOBJS@ 312 292 LIBS = @LIBS@ 313 LIBTOOL = @LIBTOOL@314 LIPO = @LIPO@315 LN_S = @LN_S@316 293 LTLIBOBJS = @LTLIBOBJS@ 317 LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@318 294 MAKEINFO = @MAKEINFO@ 319 MANIFEST_TOOL = @MANIFEST_TOOL@320 295 MKDIR_P = @MKDIR_P@ 321 NM = @NM@322 NMEDIT = @NMEDIT@323 OBJDUMP = @OBJDUMP@324 296 OBJEXT = @OBJEXT@ 325 OTOOL = @OTOOL@326 OTOOL64 = @OTOOL64@327 297 PACKAGE = @PACKAGE@ 328 298 PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ … … 334 304 PATH_SEPARATOR = @PATH_SEPARATOR@ 335 305 RANLIB = @RANLIB@ 336 SED = @SED@337 306 SET_MAKE = @SET_MAKE@ 338 307 SHELL = @SHELL@ … … 343 312 abs_top_builddir = @abs_top_builddir@ 344 313 abs_top_srcdir = @abs_top_srcdir@ 345 ac_ct_AR = @ac_ct_AR@346 314 ac_ct_CC = @ac_ct_CC@ 347 315 ac_ct_CXX = @ac_ct_CXX@ 348 ac_ct_DUMPBIN = @ac_ct_DUMPBIN@349 316 am__include = @am__include@ 350 317 am__leading_dot = @am__leading_dot@ … … 353 320 am__untar = @am__untar@ 354 321 bindir = @bindir@ 355 build = @build@356 322 build_alias = @build_alias@ 357 build_cpu = @build_cpu@358 build_os = @build_os@359 build_vendor = @build_vendor@360 323 builddir = @builddir@ 361 324 datadir = @datadir@ … … 364 327 dvidir = @dvidir@ 365 328 exec_prefix = @exec_prefix@ 366 host = @host@367 329 host_alias = @host_alias@ 368 host_cpu = @host_cpu@369 host_os = @host_os@370 host_vendor = @host_vendor@371 330 htmldir = @htmldir@ 372 331 includedir = @includedir@ … … 396 355 # create object files in directory with source files 397 356 AUTOMAKE_OPTIONS = foreign subdir-objects 398 A CLOCAL_AMFLAGS = -I automake357 ARFLAGS = cr 399 358 CFACOMPILE = $(CFACC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CFAFLAGS) $(CFAFLAGS) $(AM_CFLAGS) $(CFLAGS) 400 LTCFACOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \401 $(LIBTOOLFLAGS) --mode=compile $(CFACC) $(DEFS) \402 $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CFAFLAGS) $(CFAFLAGS) \403 $(AM_CFLAGS) $(CFLAGS)404 405 359 AM_V_CFA = $(am__v_CFA_@AM_V@) 406 360 am__v_CFA_ = $(am__v_CFA_@AM_DEFAULT_V@) 407 361 am__v_CFA_0 = @echo " CFA " $@; 408 362 am__v_CFA_1 = 409 AM_V_JAVAC = $(am__v_JAVAC_@AM_V@) 410 am__v_JAVAC_ = $(am__v_JAVAC_@AM_DEFAULT_V@) 411 am__v_JAVAC_0 = @echo " JAVAC " $@; 412 am__v_JAVAC_1 = 413 AM_V_GOC = $(am__v_GOC_@AM_V@) 414 am__v_GOC_ = $(am__v_GOC_@AM_DEFAULT_V@) 415 am__v_GOC_0 = @echo " GOC " $@; 416 am__v_GOC_1 = 417 UPPCOMPILE = $(UPPCC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_UPPFLAGS) $(UPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_CFLAGS) $(CFLAGS) 418 AM_V_UPP = $(am__v_UPP_@AM_V@) 419 am__v_UPP_ = $(am__v_UPP_@AM_DEFAULT_V@) 420 am__v_UPP_0 = @echo " UPP " $@; 421 am__v_UPP_1 = 422 lib_LTLIBRARIES = libcfa.la 363 lib_LIBRARIES = libcfa.a 423 364 424 365 # AM_CFLAGS for all cfa source … … 427 368 # The built sources must not depend on the installed headers 428 369 AM_CFAFLAGS = -quiet -in-tree -I$(srcdir)/stdhdr @CONFIG_CFAFLAGS@ 429 AM_CFLAGS = -g -Wall -Wno-unused-function -fPIC@ARCH_FLAGS@ @CONFIG_CFLAGS@370 AM_CFLAGS = -g -Wall -Wno-unused-function @ARCH_FLAGS@ @CONFIG_CFLAGS@ 430 371 AM_CCASFLAGS = -g -Wall -Wno-unused-function @ARCH_FLAGS@ @CONFIG_CFLAGS@ 431 @BUILDLIB_FALSE@headers _nosrc=372 @BUILDLIB_FALSE@headers = 432 373 433 374 #---------------------------------------------------------------------------------------------------------------- 434 375 435 376 # not all platforms support concurrency, add option do disable it 436 @BUILDLIB_TRUE@headers_nosrc = math.hfa gmp.hfa time_t.hfa \437 @BUILDLIB_TRUE@ bits/align.hfa bits/containers.hfa \438 @BUILDLIB_TRUE@ bits/defs.hfa bits/debug.hfa bits/locks.hfa \439 @BUILDLIB_TRUE@ concurrency/invoke.h440 @BUILDLIB_FALSE@headers =441 377 @BUILDLIB_TRUE@headers = fstream.hfa iostream.hfa iterator.hfa \ 442 378 @BUILDLIB_TRUE@ limits.hfa rational.hfa time.hfa stdlib.hfa \ … … 446 382 @BUILDLIB_TRUE@ concurrency/thread.hfa concurrency/kernel.hfa \ 447 383 @BUILDLIB_TRUE@ concurrency/monitor.hfa concurrency/mutex.hfa 384 @BUILDLIB_FALSE@headers_nosrc = 385 @BUILDLIB_TRUE@headers_nosrc = math.hfa gmp.hfa time_t.hfa \ 386 @BUILDLIB_TRUE@ bits/align.hfa bits/containers.hfa \ 387 @BUILDLIB_TRUE@ bits/defs.hfa bits/debug.hfa bits/locks.hfa \ 388 @BUILDLIB_TRUE@ concurrency/invoke.h 448 389 @BUILDLIB_FALSE@libsrc = 449 390 … … 461 402 462 403 # add dependency of cfa files 463 libobjs = $(addsuffix . lo, $(basename $(filter %.cfa,$(libsrc))))404 libobjs = $(addsuffix .o, $(basename $(filter %.cfa,$(libsrc)))) 464 405 465 406 # .deps inclusion is not done automatically by automake for new languages 466 407 libdeps = $(join \ 467 408 $(addsuffix $(DEPDIR)/ , $(dir $(libobjs) ) ), \ 468 $(notdir ${libobjs:. lo=.Plo}) \409 $(notdir ${libobjs:.o=.Po}) \ 469 410 ) 470 411 471 412 472 413 #---------------------------------------------------------------------------------------------------------------- 473 libcfa_la_SOURCES = prelude.cfa ${libsrc} 474 libcfa_la_LDFLAGS = -version-info @CFA_VERSION@ 475 stdhdr = $(shell find $(srcdir)/stdhdr -type f -printf "%p ") 414 libcfa_a_SOURCES = prelude.cfa ${libsrc} 415 stdhdr = ${shell find ${srcdir}/stdhdr -type f -printf "%p "} 476 416 cfa_includedir = $(CFA_INCDIR) 477 417 nobase_cfa_include_HEADERS = ${stdhdr} ${headers} ${headers_nosrc} … … 479 419 480 420 .SUFFIXES: 481 .SUFFIXES: .S .c .cfa . lo .o .obj421 .SUFFIXES: .S .c .cfa .o .obj 482 422 $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(srcdir)/../../src/cfa.make $(am__configure_deps) 483 423 @for dep in $?; do \ … … 510 450 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh 511 451 $(am__aclocal_m4_deps): 512 513 install-libLTLIBRARIES: $(lib_LTLIBRARIES) 452 install-libLIBRARIES: $(lib_LIBRARIES) 514 453 @$(NORMAL_INSTALL) 515 @list='$(lib_L TLIBRARIES)'; test -n "$(libdir)" || list=; \454 @list='$(lib_LIBRARIES)'; test -n "$(libdir)" || list=; \ 516 455 list2=; for p in $$list; do \ 517 456 if test -f $$p; then \ … … 522 461 echo " $(MKDIR_P) '$(DESTDIR)$(libdir)'"; \ 523 462 $(MKDIR_P) "$(DESTDIR)$(libdir)" || exit 1; \ 524 echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 '$(DESTDIR)$(libdir)'"; \ 525 $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 "$(DESTDIR)$(libdir)"; \ 526 } 527 528 uninstall-libLTLIBRARIES: 463 echo " $(INSTALL_DATA) $$list2 '$(DESTDIR)$(libdir)'"; \ 464 $(INSTALL_DATA) $$list2 "$(DESTDIR)$(libdir)" || exit $$?; } 465 @$(POST_INSTALL) 466 @list='$(lib_LIBRARIES)'; test -n "$(libdir)" || list=; \ 467 for p in $$list; do \ 468 if test -f $$p; then \ 469 $(am__strip_dir) \ 470 echo " ( cd '$(DESTDIR)$(libdir)' && $(RANLIB) $$f )"; \ 471 ( cd "$(DESTDIR)$(libdir)" && $(RANLIB) $$f ) || exit $$?; \ 472 else :; fi; \ 473 done 474 475 uninstall-libLIBRARIES: 529 476 @$(NORMAL_UNINSTALL) 530 @list='$(lib_LTLIBRARIES)'; test -n "$(libdir)" || list=; \ 531 for p in $$list; do \ 532 $(am__strip_dir) \ 533 echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f '$(DESTDIR)$(libdir)/$$f'"; \ 534 $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f "$(DESTDIR)$(libdir)/$$f"; \ 535 done 536 537 clean-libLTLIBRARIES: 538 -test -z "$(lib_LTLIBRARIES)" || rm -f $(lib_LTLIBRARIES) 539 @list='$(lib_LTLIBRARIES)'; \ 540 locs=`for p in $$list; do echo $$p; done | \ 541 sed 's|^[^/]*$$|.|; s|/[^/]*$$||; s|$$|/so_locations|' | \ 542 sort -u`; \ 543 test -z "$$locs" || { \ 544 echo rm -f $${locs}; \ 545 rm -f $${locs}; \ 546 } 477 @list='$(lib_LIBRARIES)'; test -n "$(libdir)" || list=; \ 478 files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ 479 dir='$(DESTDIR)$(libdir)'; $(am__uninstall_files_from_dir) 480 481 clean-libLIBRARIES: 482 -test -z "$(lib_LIBRARIES)" || rm -f $(lib_LIBRARIES) 547 483 bits/$(am__dirstamp): 548 484 @$(MKDIR_P) bits … … 551 487 @$(MKDIR_P) bits/$(DEPDIR) 552 488 @: > bits/$(DEPDIR)/$(am__dirstamp) 553 bits/debug.lo: bits/$(am__dirstamp) bits/$(DEPDIR)/$(am__dirstamp) 489 bits/debug.$(OBJEXT): bits/$(am__dirstamp) \ 490 bits/$(DEPDIR)/$(am__dirstamp) 554 491 containers/$(am__dirstamp): 555 492 @$(MKDIR_P) containers … … 558 495 @$(MKDIR_P) containers/$(DEPDIR) 559 496 @: > containers/$(DEPDIR)/$(am__dirstamp) 560 containers/maybe. lo: containers/$(am__dirstamp) \497 containers/maybe.$(OBJEXT): containers/$(am__dirstamp) \ 561 498 containers/$(DEPDIR)/$(am__dirstamp) 562 containers/pair. lo: containers/$(am__dirstamp) \499 containers/pair.$(OBJEXT): containers/$(am__dirstamp) \ 563 500 containers/$(DEPDIR)/$(am__dirstamp) 564 containers/result. lo: containers/$(am__dirstamp) \501 containers/result.$(OBJEXT): containers/$(am__dirstamp) \ 565 502 containers/$(DEPDIR)/$(am__dirstamp) 566 containers/vector. lo: containers/$(am__dirstamp) \503 containers/vector.$(OBJEXT): containers/$(am__dirstamp) \ 567 504 containers/$(DEPDIR)/$(am__dirstamp) 568 505 concurrency/$(am__dirstamp): … … 572 509 @$(MKDIR_P) concurrency/$(DEPDIR) 573 510 @: > concurrency/$(DEPDIR)/$(am__dirstamp) 574 concurrency/coroutine. lo: concurrency/$(am__dirstamp) \511 concurrency/coroutine.$(OBJEXT): concurrency/$(am__dirstamp) \ 575 512 concurrency/$(DEPDIR)/$(am__dirstamp) 576 concurrency/thread. lo: concurrency/$(am__dirstamp) \513 concurrency/thread.$(OBJEXT): concurrency/$(am__dirstamp) \ 577 514 concurrency/$(DEPDIR)/$(am__dirstamp) 578 concurrency/kernel. lo: concurrency/$(am__dirstamp) \515 concurrency/kernel.$(OBJEXT): concurrency/$(am__dirstamp) \ 579 516 concurrency/$(DEPDIR)/$(am__dirstamp) 580 concurrency/monitor. lo: concurrency/$(am__dirstamp) \517 concurrency/monitor.$(OBJEXT): concurrency/$(am__dirstamp) \ 581 518 concurrency/$(DEPDIR)/$(am__dirstamp) 582 concurrency/mutex. lo: concurrency/$(am__dirstamp) \519 concurrency/mutex.$(OBJEXT): concurrency/$(am__dirstamp) \ 583 520 concurrency/$(DEPDIR)/$(am__dirstamp) 584 concurrency/CtxSwitch-@ARCHITECTURE@.lo: concurrency/$(am__dirstamp) \ 521 concurrency/CtxSwitch-@ARCHITECTURE@.$(OBJEXT): \ 522 concurrency/$(am__dirstamp) \ 585 523 concurrency/$(DEPDIR)/$(am__dirstamp) 586 concurrency/alarm. lo: concurrency/$(am__dirstamp) \524 concurrency/alarm.$(OBJEXT): concurrency/$(am__dirstamp) \ 587 525 concurrency/$(DEPDIR)/$(am__dirstamp) 588 concurrency/invoke. lo: concurrency/$(am__dirstamp) \526 concurrency/invoke.$(OBJEXT): concurrency/$(am__dirstamp) \ 589 527 concurrency/$(DEPDIR)/$(am__dirstamp) 590 concurrency/preemption. lo: concurrency/$(am__dirstamp) \528 concurrency/preemption.$(OBJEXT): concurrency/$(am__dirstamp) \ 591 529 concurrency/$(DEPDIR)/$(am__dirstamp) 592 530 593 libcfa.la: $(libcfa_la_OBJECTS) $(libcfa_la_DEPENDENCIES) $(EXTRA_libcfa_la_DEPENDENCIES) 594 $(AM_V_CCLD)$(libcfa_la_LINK) -rpath $(libdir) $(libcfa_la_OBJECTS) $(libcfa_la_LIBADD) $(LIBS) 531 libcfa.a: $(libcfa_a_OBJECTS) $(libcfa_a_DEPENDENCIES) $(EXTRA_libcfa_a_DEPENDENCIES) 532 $(AM_V_at)-rm -f libcfa.a 533 $(AM_V_AR)$(libcfa_a_AR) libcfa.a $(libcfa_a_OBJECTS) $(libcfa_a_LIBADD) 534 $(AM_V_at)$(RANLIB) libcfa.a 595 535 596 536 mostlyclean-compile: 597 537 -rm -f *.$(OBJEXT) 598 538 -rm -f bits/*.$(OBJEXT) 599 -rm -f bits/*.lo600 539 -rm -f concurrency/*.$(OBJEXT) 601 -rm -f concurrency/*.lo602 540 -rm -f containers/*.$(OBJEXT) 603 -rm -f containers/*.lo604 541 605 542 distclean-compile: 606 543 -rm -f *.tab.c 607 544 608 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/exception.P lo@am__quote@609 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/virtual.P lo@am__quote@610 @AMDEP_TRUE@@am__include@ @am__quote@concurrency/$(DEPDIR)/CtxSwitch-@ARCHITECTURE@.P lo@am__quote@611 @AMDEP_TRUE@@am__include@ @am__quote@concurrency/$(DEPDIR)/invoke.P lo@am__quote@545 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/exception.Po@am__quote@ 546 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/virtual.Po@am__quote@ 547 @AMDEP_TRUE@@am__include@ @am__quote@concurrency/$(DEPDIR)/CtxSwitch-@ARCHITECTURE@.Po@am__quote@ 548 @AMDEP_TRUE@@am__include@ @am__quote@concurrency/$(DEPDIR)/invoke.Po@am__quote@ 612 549 613 550 .S.o: … … 627 564 @am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(CPPASCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'` 628 565 629 .S.lo:630 @am__fastdepCCAS_TRUE@ $(AM_V_CPPAS)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.lo$$||'`;\631 @am__fastdepCCAS_TRUE@ $(LTCPPASCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\632 @am__fastdepCCAS_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Plo633 @AMDEP_TRUE@@am__fastdepCCAS_FALSE@ $(AM_V_CPPAS)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@634 @AMDEP_TRUE@@am__fastdepCCAS_FALSE@ DEPDIR=$(DEPDIR) $(CCASDEPMODE) $(depcomp) @AMDEPBACKSLASH@635 @am__fastdepCCAS_FALSE@ $(AM_V_CPPAS@am__nodep@)$(LTCPPASCOMPILE) -c -o $@ $<636 637 566 .c.o: 638 567 @am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\ … … 650 579 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ 651 580 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'` 652 653 .c.lo:654 @am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.lo$$||'`;\655 @am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\656 @am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Plo657 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@658 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@659 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $<660 661 mostlyclean-libtool:662 -rm -f *.lo663 664 clean-libtool:665 -rm -rf .libs _libs666 -rm -rf bits/.libs bits/_libs667 -rm -rf concurrency/.libs concurrency/_libs668 -rm -rf containers/.libs containers/_libs669 581 install-nobase_cfa_includeHEADERS: $(nobase_cfa_include_HEADERS) 670 582 @$(NORMAL_INSTALL) … … 776 688 check-am: all-am 777 689 check: check-am 778 all-am: Makefile $(L TLIBRARIES) $(HEADERS)690 all-am: Makefile $(LIBRARIES) $(HEADERS) 779 691 installdirs: 780 692 for dir in "$(DESTDIR)$(libdir)" "$(DESTDIR)$(cfa_includedir)"; do \ … … 819 731 clean: clean-am 820 732 821 clean-am: clean-generic clean-libLTLIBRARIES clean-libtool \ 822 mostlyclean-am 733 clean-am: clean-generic clean-libLIBRARIES mostlyclean-am 823 734 824 735 distclean: distclean-am … … 846 757 install-dvi-am: 847 758 848 install-exec-am: install-libL TLIBRARIES759 install-exec-am: install-libLIBRARIES 849 760 850 761 install-html: install-html-am … … 876 787 mostlyclean: mostlyclean-am 877 788 878 mostlyclean-am: mostlyclean-compile mostlyclean-generic \ 879 mostlyclean-libtool 789 mostlyclean-am: mostlyclean-compile mostlyclean-generic 880 790 881 791 pdf: pdf-am … … 887 797 ps-am: 888 798 889 uninstall-am: uninstall-libL TLIBRARIES \799 uninstall-am: uninstall-libLIBRARIES \ 890 800 uninstall-nobase_cfa_includeHEADERS 891 801 … … 893 803 894 804 .PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \ 895 clean-libLTLIBRARIES clean-libtool cscopelist-am ctags \ 896 ctags-am distclean distclean-compile distclean-generic \ 897 distclean-libtool distclean-tags distdir dvi dvi-am html \ 898 html-am info info-am install install-am install-data \ 899 install-data-am install-dvi install-dvi-am install-exec \ 900 install-exec-am install-html install-html-am install-info \ 901 install-info-am install-libLTLIBRARIES install-man \ 805 clean-libLIBRARIES cscopelist-am ctags ctags-am distclean \ 806 distclean-compile distclean-generic distclean-tags distdir dvi \ 807 dvi-am html html-am info info-am install install-am \ 808 install-data install-data-am install-dvi install-dvi-am \ 809 install-exec install-exec-am install-html install-html-am \ 810 install-info install-info-am install-libLIBRARIES install-man \ 902 811 install-nobase_cfa_includeHEADERS install-pdf install-pdf-am \ 903 812 install-ps install-ps-am install-strip installcheck \ 904 813 installcheck-am installdirs maintainer-clean \ 905 814 maintainer-clean-generic maintainer-clean-local mostlyclean \ 906 mostlyclean-compile mostlyclean-generic mostlyclean-libtool\907 pdf pdf-am ps ps-am tags tags-am uninstall uninstall-am\908 uninstall- libLTLIBRARIES uninstall-nobase_cfa_includeHEADERS815 mostlyclean-compile mostlyclean-generic pdf pdf-am ps ps-am \ 816 tags tags-am uninstall uninstall-am uninstall-libLIBRARIES \ 817 uninstall-nobase_cfa_includeHEADERS 909 818 910 819 .PRECIOUS: Makefile … … 915 824 $(CFACOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\ 916 825 $(am__mv) $$depbase.Tpo $$depbase.Po 917 918 .cfa.lo:919 $(AM_V_CFA)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.lo$$||'`;\920 $(LTCFACOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\921 $(am__mv) $$depbase.Tpo $$depbase.Plo922 826 $(libobjs) : @CFACC@ @CFACPP@ prelude.cfa 923 827 … … 925 829 926 830 prelude.o : prelude.cfa extras.cf gcc-builtins.cf builtins.cf @CFACC@ @CFACPP@ 927 ${AM_V_GEN}@CFACC@ ${AM_CFLAGS} ${CFLAGS} -quiet -in-tree @CONFIG_CFAFLAGS@ -XCFA -l ${<} -c -o ${@} 928 929 prelude.lo: prelude.cfa extras.cf gcc-builtins.cf builtins.cf @CFACC@ @CFACPP@ 930 ${AM_V_GEN}$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile \ 931 @CFACC@ ${AM_CFLAGS} ${CFLAGS} -quiet -in-tree @CONFIG_CFAFLAGS@ -XCFA -l ${<} -c -o ${@} 831 ${AM_V_GEN}@CFACC@ ${AM_CFLAGS} ${CFLAGS} -quiet -in-tree -XCFA -l ${<} -c -o ${@} 932 832 933 833 #---------------------------------------------------------------------------------------------------------------- -
libcfa/src/bits/locks.hfa
r95b8aa7 rff5caaf 37 37 #endif 38 38 39 #if defined( __i386 ) || defined( __x86_64 ) || defined( __ARM_ARCH ) 40 // Intel recommendation 41 #define __ALIGN__ __attribute__(( aligned (128) )) 42 #elif defined( __sparc ) 43 #define __ALIGN__ CALIGN 44 #else 45 #error unsupported architecture 46 #endif 47 39 48 struct __spinlock_t { 40 49 // Wrap in struct to prevent false sharing with debug info 41 volatile bool lock; 50 struct { 51 // Align lock on 128-bit boundary 52 __ALIGN__ volatile bool lock; 53 }; 42 54 #ifdef __CFA_DEBUG__ 43 55 // previous function to acquire the lock … … 46 58 void* prev_thrd; 47 59 #endif 48 } ;60 } __ALIGN__; 49 61 50 62 #ifdef __cforall -
libcfa/src/concurrency/coroutine.cfa
r95b8aa7 rff5caaf 22 22 #include <string.h> 23 23 #include <unistd.h> 24 // use this define to make unwind.h play nice, definetely a hack25 #define HIDE_EXPORTS26 #include <unwind.h>27 #undef HIDE_EXPORTS28 24 #include <sys/mman.h> 29 25 } … … 33 29 #define __CFA_INVOKE_PRIVATE__ 34 30 #include "invoke.h" 35 36 extern "C" {37 void _CtxCoroutine_Unwind(struct _Unwind_Exception * storage) __attribute__ ((__noreturn__));38 static void _CtxCoroutine_UnwindCleanup(_Unwind_Reason_Code, struct _Unwind_Exception *) __attribute__ ((__noreturn__));39 static void _CtxCoroutine_UnwindCleanup(_Unwind_Reason_Code, struct _Unwind_Exception *) {40 abort();41 }42 }43 31 44 32 //----------------------------------------------------------------------------- … … 79 67 starter = NULL; 80 68 last = NULL; 81 cancellation = NULL;82 69 } 83 70 84 void ^?{}(coroutine_desc& this) { 85 if(this.state != Halted) { 86 coroutine_desc * src = TL_GET( this_coroutine ); 87 coroutine_desc * dst = &this; 88 89 struct _Unwind_Exception storage; 90 storage.exception_class = -1; 91 storage.exception_cleanup = _CtxCoroutine_UnwindCleanup; 92 this.cancellation = &storage; 93 this.last = src; 94 95 // not resuming self ? 96 if ( src == dst ) { 97 abort( "Attempt by coroutine %.256s (%p) to terminate itself.\n", src->name, src ); 98 } 99 100 CoroutineCtxSwitch( src, dst ); 101 } 102 } 71 void ^?{}(coroutine_desc& this) {} 103 72 104 73 // Part of the Public API … … 136 105 // Safety note : This could cause some false positives due to preemption 137 106 verify( TL_GET( preemption_state.enabled ) || TL_GET( this_processor )->do_terminate ); 138 139 if( unlikely(src->cancellation != NULL) ) {140 _CtxCoroutine_Unwind(src->cancellation);141 }142 107 } //ctxSwitchDirect 143 108 … … 197 162 } 198 163 199 void __leave_coroutine( ) {164 void __leave_coroutine(void) { 200 165 coroutine_desc * src = TL_GET( this_coroutine ); // optimization 201 coroutine_desc * starter = src->cancellation != 0 ? src->last : src->starter;202 166 203 src->state = Halted; 204 205 assertf( starter != 0, 167 assertf( src->starter != 0, 206 168 "Attempt to suspend/leave coroutine \"%.256s\" (%p) that has never been resumed.\n" 207 169 "Possible cause is a suspend executed in a member called by a coroutine user rather than by the coroutine main.", 208 170 src->name, src ); 209 assertf( s tarter->state != Halted,171 assertf( src->starter->state != Halted, 210 172 "Attempt by coroutine \"%.256s\" (%p) to suspend/leave back to terminated coroutine \"%.256s\" (%p).\n" 211 173 "Possible cause is terminated coroutine's main routine has already returned.", 212 src->name, src, s tarter->name,starter );174 src->name, src, src->starter->name, src->starter ); 213 175 214 CoroutineCtxSwitch( src, s tarter );176 CoroutineCtxSwitch( src, src->starter ); 215 177 } 216 178 } -
libcfa/src/concurrency/invoke.c
r95b8aa7 rff5caaf 17 17 #include <stdlib.h> 18 18 #include <stdio.h> 19 #include <unwind.h>20 19 21 20 #include "invoke.h" … … 51 50 main( this ); 52 51 52 cor->state = Halted; 53 53 54 //Final suspend, should never return 54 55 __leave_coroutine(); 55 56 __cabi_abort( "Resumed dead coroutine" ); 56 }57 58 static _Unwind_Reason_Code _CtxCoroutine_UnwindStop(59 __attribute((__unused__)) int version,60 _Unwind_Action actions,61 __attribute((__unused__)) _Unwind_Exception_Class exceptionClass,62 __attribute((__unused__)) struct _Unwind_Exception * unwind_exception,63 __attribute((__unused__)) struct _Unwind_Context * context,64 __attribute((__unused__)) void * param65 ) {66 if( actions & _UA_END_OF_STACK ) {67 // We finished unwinding the coroutine,68 // leave it69 __leave_coroutine();70 __cabi_abort( "Resumed dead coroutine" );71 }72 if( actions & _UA_CLEANUP_PHASE ) return _URC_NO_REASON;73 74 return _URC_FATAL_PHASE2_ERROR;75 }76 77 void _CtxCoroutine_Unwind(struct _Unwind_Exception * storage) __attribute__ ((__noreturn__));78 void _CtxCoroutine_Unwind(struct _Unwind_Exception * storage) {79 _Unwind_Reason_Code ret = _Unwind_ForcedUnwind( storage, _CtxCoroutine_UnwindStop, NULL );80 printf("UNWIND ERROR %d after force unwind\n", ret);81 abort();82 57 } 83 58 -
libcfa/src/concurrency/invoke.h
r95b8aa7 rff5caaf 59 59 volatile bool in_progress; 60 60 } preemption_state; 61 } kernelTLS __attribute__ ((tls_model ( "initial-exec" )));61 } kernelTLS; 62 62 } 63 63 … … 80 80 81 81 struct coroutine_desc { 82 // stack information of the coroutine 83 struct coStack_t stack; 84 85 // textual name for coroutine/task, initialized by uC++ generated code 86 const char * name; 87 88 // copy of global UNIX variable errno 89 int errno_; 90 91 // current execution status for coroutine 92 enum coroutine_state state; 93 // first coroutine to resume this one 94 struct coroutine_desc * starter; 95 96 // last coroutine to resume this one 97 struct coroutine_desc * last; 98 99 // If non-null stack must be unwound with this exception 100 struct _Unwind_Exception * cancellation; 101 102 }; 103 104 // struct which calls the monitor is accepting 82 struct coStack_t stack; // stack information of the coroutine 83 const char * name; // textual name for coroutine/task, initialized by uC++ generated code 84 int errno_; // copy of global UNIX variable errno 85 enum coroutine_state state; // current execution status for coroutine 86 struct coroutine_desc * starter; // first coroutine to resume this one 87 struct coroutine_desc * last; // last coroutine to resume this one 88 }; 89 105 90 struct __waitfor_mask_t { 106 91 // the index of the accepted function, -1 if none -
libcfa/src/concurrency/kernel.cfa
r95b8aa7 rff5caaf 57 57 //----------------------------------------------------------------------------- 58 58 // Global state 59 thread_local struct KernelThreadData kernelTLS __attribute__ ((tls_model ( "initial-exec" )))= {59 thread_local struct KernelThreadData kernelTLS = { 60 60 NULL, 61 61 NULL, -
libcfa/src/concurrency/kernel_private.hfa
r95b8aa7 rff5caaf 79 79 }; 80 80 81 extern volatile thread_local __cfa_kernel_preemption_state_t preemption_state __attribute__ ((tls_model ( "initial-exec" )));81 extern volatile thread_local __cfa_kernel_preemption_state_t preemption_state; 82 82 83 83 //----------------------------------------------------------------------------- -
libcfa/src/exception.c
r95b8aa7 rff5caaf 246 246 } 247 247 248 #if defined(PIC)249 #warning Exceptions not yet supported when using Position-Independent Code250 __attribute__((noinline))251 void __cfaabi_ehm__try_terminate(void (*try_block)(),252 void (*catch_block)(int index, exception_t * except),253 __attribute__((unused)) int (*match_block)(exception_t * except)) {254 abort();255 }256 #else257 248 // This is our personality routine. For every stack frame anotated with ".cfi_personality 0x3,__gcfa_personality_v0". 258 249 // This function will be called twice when unwinding. Once in the search phased and once in the cleanup phase. … … 486 477 ); 487 478 #endif // __i386 || __x86_64 488 #endif //PIC -
libcfa/src/fstream.cfa
r95b8aa7 rff5caaf 10 10 // Created On : Wed May 27 17:56:53 2015 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Mon Dec 24 18:33:38201813 // Update Count : 30412 // Last Modified On : Fri Aug 10 18:19:40 2018 13 // Update Count : 284 14 14 // 15 15 … … 20 20 #include <stdarg.h> // varargs 21 21 #include <string.h> // strlen 22 #include <stdbool.h> // true/false 22 23 #include <float.h> // DBL_DIG, LDBL_DIG 23 24 #include <complex.h> // creal, cimag … … 26 27 #define IO_MSG "I/O error: " 27 28 28 void ?{}( ofstream & os, void * file, bool sepDefault, bool sepOnOff, bool nlOnOff, bool prt,const char * separator, const char * tupleSeparator ) {29 void ?{}( ofstream & os, void * file, bool sepDefault, bool sepOnOff, const char * separator, const char * tupleSeparator ) { 29 30 os.file = file; 30 31 os.sepDefault = sepDefault; 31 32 os.sepOnOff = sepOnOff; 32 os.nlOnOff = nlOnOff;33 os.prt = prt;34 33 sepSet( os, separator ); 35 34 sepSetCur( os, sepGet( os ) ); … … 45 44 bool getNL( ofstream & os ) { return os.sawNL; } 46 45 void setNL( ofstream & os, bool state ) { os.sawNL = state; } 47 bool getANL( ofstream & os ) { return os.nlOnOff; }48 bool getPrt( ofstream & os ) { return os.prt; }49 void setPrt( ofstream & os, bool state ) { os.prt = state; }50 46 51 47 // public … … 76 72 } // sepEnable 77 73 78 void nlOn( ofstream & os ) { os.nlOnOff = true; }79 void nlOff( ofstream & os ) { os.nlOnOff = false; }80 81 74 const char * sepGet( ofstream & os ) { return os.separator; } 82 75 void sepSet( ofstream & os, const char * s ) { … … 110 103 } // if 111 104 #endif // __CFA_DEBUG__ 112 (os){ file, true, false, true, false," ", ", " };105 (os){ file, true, false, " ", ", " }; 113 106 } // open 114 107 … … 150 143 va_end( args ); 151 144 152 setPrt( os, true ); // called in output cascade153 145 sepReset( os ); // reset separator 154 146 return len; 155 147 } // fmt 156 148 157 static ofstream soutFile = { (FILE *)(&_IO_2_1_stdout_), true, false, true, false," ", ", " };149 static ofstream soutFile = { (FILE *)(&_IO_2_1_stdout_), true, false, " ", ", " }; 158 150 ofstream & sout = soutFile; 159 static ofstream serrFile = { (FILE *)(&_IO_2_1_stderr_), true, false, true, false," ", ", " };151 static ofstream serrFile = { (FILE *)(&_IO_2_1_stderr_), true, false, " ", ", " }; 160 152 ofstream & serr = serrFile; 161 153 -
libcfa/src/fstream.hfa
r95b8aa7 rff5caaf 10 10 // Created On : Wed May 27 17:56:53 2015 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Mon Dec 24 18:33:41201813 // Update Count : 1 4912 // Last Modified On : Sat Aug 11 13:54:27 2018 13 // Update Count : 132 14 14 // 15 15 … … 23 23 bool sepDefault; 24 24 bool sepOnOff; 25 bool nlOnOff;26 bool prt; // print text27 25 bool sawNL; 28 26 const char * sepCur; … … 39 37 bool getNL( ofstream & ); 40 38 void setNL( ofstream &, bool ); 41 bool getANL( ofstream & );42 bool getPrt( ofstream & );43 void setPrt( ofstream &, bool );44 39 45 40 // public … … 48 43 bool sepDisable( ofstream & ); 49 44 bool sepEnable( ofstream & ); 50 void nlOn( ofstream & );51 void nlOff( ofstream & );52 45 53 46 const char * sepGet( ofstream & ); … … 62 55 void close( ofstream & ); 63 56 ofstream & write( ofstream &, const char * data, size_t size ); 64 int fmt( ofstream &, const char f ormat[], ... );57 int fmt( ofstream &, const char fmt[], ... ); 65 58 66 59 void ?{}( ofstream & os ); … … 83 76 ifstream & read( ifstream & is, char * data, size_t size ); 84 77 ifstream & ungetc( ifstream & is, char c ); 85 int fmt( ifstream &, const char f ormat[], ... );78 int fmt( ifstream &, const char fmt[], ... ); 86 79 87 80 void ?{}( ifstream & is ); -
libcfa/src/gmp.hfa
r95b8aa7 rff5caaf 10 10 // Created On : Tue Apr 19 08:43:43 2016 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : T ue Dec 4 23:25:51 201813 // Update Count : 2 212 // Last Modified On : Thu Dec 7 09:10:41 2017 13 // Update Count : 21 14 14 // 15 15 … … 262 262 } // ?|? 263 263 264 static inline forall( dtype ostype | ostream( ostype ) ) { 265 ostype & ?|?( ostype & os, Int mp ) { 266 if ( sepPrt( os ) ) fmt( os, "%s", sepGetCur( os ) ); 267 gmp_printf( "%Zd", mp.mpz ); 268 sepOn( os ); 269 return os; 270 } // ?|? 271 272 void ?|?( ostype & os, Int mp ) { 273 (ostype)(os | mp); if ( getANL( os ) ) nl( os ); 274 } // ?|? 275 } // distribution 264 static inline forall( dtype ostype | ostream( ostype ) ) 265 ostype & ?|?( ostype & os, Int mp ) { 266 if ( sepPrt( os ) ) fmt( os, "%s", sepGetCur( os ) ); 267 gmp_printf( "%Zd", mp.mpz ); 268 sepOn( os ); 269 return os; 270 } // ?|? 276 271 277 272 // Local Variables: // -
libcfa/src/iostream.cfa
r95b8aa7 rff5caaf 10 10 // Created On : Wed May 27 17:56:53 2015 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Mon Dec 24 18:33:40201813 // Update Count : 58912 // Last Modified On : Sat Aug 11 13:56:43 2018 13 // Update Count : 473 14 14 // 15 15 … … 19 19 #include <stdio.h> 20 20 #include <stdbool.h> // true/false 21 //#include <string.h> // strlen, strcmp21 //#include <string.h> // strlen, strcmp 22 22 extern int strcmp (const char *__s1, const char *__s2) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1, 2))); 23 23 extern size_t strlen (const char *__s) __attribute__ ((__nothrow__ , __leaf__)) __attribute__ ((__pure__)) __attribute__ ((__nonnull__ (1))); … … 32 32 return os; 33 33 } // ?|? 34 void ?|?( ostype & os, bool b ) { 35 (ostype &)(os | b); nl( os ); 36 } // ?|? 37 38 ostype & ?|?( ostype & os, char c ) { 39 fmt( os, "%c", c ); 40 if ( c == '\n' ) setNL( os, true ); 41 return sepOff( os ); 42 } // ?|? 43 void ?|?( ostype & os, char c ) { 44 (ostype &)(os | c); nl( os ); 45 } // ?|? 46 47 ostype & ?|?( ostype & os, signed char sc ) { 48 if ( sepPrt( os ) ) fmt( os, "%s", sepGetCur( os ) ); 49 fmt( os, "%hhd", sc ); 50 return os; 51 } // ?|? 52 void ?|?( ostype & os, signed char sc ) { 53 (ostype &)(os | sc); nl( os ); 54 } // ?|? 55 56 ostype & ?|?( ostype & os, unsigned char usc ) { 57 if ( sepPrt( os ) ) fmt( os, "%s", sepGetCur( os ) ); 58 fmt( os, "%hhu", usc ); 59 return os; 60 } // ?|? 61 void ?|?( ostype & os, unsigned char usc ) { 62 (ostype &)(os | usc); nl( os ); 34 35 ostype & ?|?( ostype & os, char ch ) { 36 fmt( os, "%c", ch ); 37 if ( ch == '\n' ) setNL( os, true ); 38 sepOff( os ); 39 return os; 40 } // ?|? 41 42 ostype & ?|?( ostype & os, signed char c ) { 43 if ( sepPrt( os ) ) fmt( os, "%s", sepGetCur( os ) ); 44 fmt( os, "%hhd", c ); 45 return os; 46 } // ?|? 47 48 ostype & ?|?( ostype & os, unsigned char c ) { 49 if ( sepPrt( os ) ) fmt( os, "%s", sepGetCur( os ) ); 50 fmt( os, "%hhu", c ); 51 return os; 63 52 } // ?|? 64 53 … … 68 57 return os; 69 58 } // ?|? 70 void & ?|?( ostype & os, short int si ) {71 (ostype &)(os | si); nl( os );72 } // ?|?73 59 74 60 ostype & ?|?( ostype & os, unsigned short int usi ) { … … 77 63 return os; 78 64 } // ?|? 79 void & ?|?( ostype & os, unsigned short int usi ) {80 (ostype &)(os | usi); nl( os );81 } // ?|?82 65 83 66 ostype & ?|?( ostype & os, int i ) { … … 86 69 return os; 87 70 } // ?|? 88 void & ?|?( ostype & os, int i ) {89 (ostype &)(os | i); nl( os );90 } // ?|?91 71 92 72 ostype & ?|?( ostype & os, unsigned int ui ) { … … 95 75 return os; 96 76 } // ?|? 97 void & ?|?( ostype & os, unsigned int ui ) {98 (ostype &)(os | ui); nl( os );99 } // ?|?100 77 101 78 ostype & ?|?( ostype & os, long int li ) { … … 104 81 return os; 105 82 } // ?|? 106 void & ?|?( ostype & os, long int li ) {107 (ostype &)(os | li); nl( os );108 } // ?|?109 83 110 84 ostype & ?|?( ostype & os, unsigned long int uli ) { … … 113 87 return os; 114 88 } // ?|? 115 void & ?|?( ostype & os, unsigned long int uli ) {116 (ostype &)(os | uli); nl( os );117 } // ?|?118 89 119 90 ostype & ?|?( ostype & os, long long int lli ) { … … 122 93 return os; 123 94 } // ?|? 124 void & ?|?( ostype & os, long long int lli ) {125 (ostype &)(os | lli); nl( os );126 } // ?|?127 95 128 96 ostype & ?|?( ostype & os, unsigned long long int ulli ) { … … 131 99 return os; 132 100 } // ?|? 133 void & ?|?( ostype & os, unsigned long long int ulli ) {134 (ostype &)(os | ulli); nl( os );135 } // ?|?136 101 137 102 ostype & ?|?( ostype & os, float f ) { … … 140 105 return os; 141 106 } // ?|? 142 void & ?|?( ostype & os, float f ) {143 (ostype &)(os | f); nl( os );144 } // ?|?145 107 146 108 ostype & ?|?( ostype & os, double d ) { … … 149 111 return os; 150 112 } // ?|? 151 void & ?|?( ostype & os, double d ) {152 (ostype &)(os | d); nl( os );153 } // ?|?154 113 155 114 ostype & ?|?( ostype & os, long double ld ) { … … 158 117 return os; 159 118 } // ?|? 160 void & ?|?( ostype & os, long double ld ) {161 (ostype &)(os | ld); nl( os );162 } // ?|?163 119 164 120 ostype & ?|?( ostype & os, float _Complex fc ) { … … 167 123 return os; 168 124 } // ?|? 169 void & ?|?( ostype & os, float _Complex fc ) {170 (ostype &)(os | fc); nl( os );171 } // ?|?172 125 173 126 ostype & ?|?( ostype & os, double _Complex dc ) { … … 176 129 return os; 177 130 } // ?|? 178 void & ?|?( ostype & os, double _Complex dc ) {179 (ostype &)(os | dc); nl( os );180 } // ?|?181 131 182 132 ostype & ?|?( ostype & os, long double _Complex ldc ) { … … 184 134 fmt( os, "%.*Lg%+.*Lgi", LDBL_DIG, creall( ldc ), LDBL_DIG, cimagl( ldc ) ); 185 135 return os; 186 } // ?|?187 void & ?|?( ostype & os, long double _Complex ldc ) {188 (ostype &)(os | ldc); nl( os );189 136 } // ?|? 190 137 … … 227 174 return write( os, str, len ); 228 175 } // ?|? 229 void ?|?( ostype & os, const char * str ) {230 (ostype &)(os | str); nl( os );231 } // ?|?232 176 233 177 // ostype & ?|?( ostype & os, const char16_t * str ) { … … 256 200 return os; 257 201 } // ?|? 258 void ?|?( ostype & os, const void * p ) { 259 (ostype &)(os | p); nl( os ); 260 } // ?|? 202 261 203 262 204 // manipulators 263 205 ostype & ?|?( ostype & os, ostype & (* manip)( ostype & ) ) { 264 (ostype &)(manip( os )); 265 return os; 266 } // ?|? 267 void ?|?( ostype & os, ostype & (* manip)( ostype & ) ) { 268 (ostype &)(manip( os )); 269 if ( getPrt( os ) ) nl( os ); // something printed ? 270 setPrt( os, false ); // turn off 206 return manip( os ); 271 207 } // ?|? 272 208 273 209 ostype & sep( ostype & os ) { 274 return (ostype &)(os | sepGet( os )); 210 os | sepGet( os ); 211 return os; 275 212 } // sep 276 213 277 214 ostype & sepTuple( ostype & os ) { 278 return os | sepGetTuple( os ); 215 os | sepGetTuple( os ); 216 return os; 279 217 } // sepTuple 280 218 281 ostype & nl( ostype & os ) { 282 (ostype &)(os | '\n'); 283 setPrt( os, false ); // turn off 219 ostype & endl( ostype & os ) { 220 os | '\n'; 284 221 setNL( os, true ); 285 222 flush( os ); 286 return sepOff( os ); // prepare for next line 287 } // nl 288 289 void nl( ostype & os ) { 290 if ( getANL( os ) ) (ostype &)(nl( os )); // implementation only 291 else setPrt( os, false ); // turn off 292 } // nl 293 294 ostype & nonl( ostype & os ) { 295 setPrt( os, false ); // turn off 296 return os; 297 } // nonl 223 sepOff( os ); // prepare for next line 224 return os; 225 } // endl 298 226 299 227 ostype & sepOn( ostype & os ) { 300 sepOn( os ); // call void returning228 sepOn( os ); 301 229 return os; 302 230 } // sepOn 303 231 304 232 ostype & sepOff( ostype & os ) { 305 sepOff( os ); // call void returning233 sepOff( os ); 306 234 return os; 307 235 } // sepOff 308 236 309 237 ostype & sepEnable( ostype & os ) { 310 sepEnable( os ); // call void returning238 sepEnable( os ); 311 239 return os; 312 240 } // sepEnable 313 241 314 242 ostype & sepDisable( ostype & os ) { 315 sepDisable( os ); // call void returning243 sepDisable( os ); 316 244 return os; 317 245 } // sepDisable 318 319 ostype & nlOn( ostype & os ) {320 nlOn( os ); // call void returning321 return os;322 } // nlOn323 324 ostype & nlOff( ostype & os ) {325 nlOff( os ); // call void returning326 return os;327 } // nlOff328 246 } // distribution 329 247 248 330 249 // tuples 331 forall( dtype ostype, otype T, ttype Params | writeable( T, ostype ) | { ostype & ?|?( ostype &, Params ); } ) { 332 ostype & ?|?( ostype & os, T arg, Params rest ) { 333 (ostype &)(os | arg); // print first argument 334 sepSetCur( os, sepGetTuple( os ) ); // switch to tuple separator 335 (ostype &)(os | rest); // print remaining arguments 336 sepSetCur( os, sepGet( os ) ); // switch to regular separator 337 return os; 338 } // ?|? 339 void ?|?( ostype & os, T arg, Params rest ) { 340 // (ostype &)(?|?( os, arg, rest )); nl( os ); 341 (ostype &)(os | arg); // print first argument 342 sepSetCur( os, sepGetTuple( os ) ); // switch to tuple separator 343 (ostype &)(os | rest); // print remaining arguments 344 sepSetCur( os, sepGet( os ) ); // switch to regular separator 345 nl( os ); 346 } // ?|? 347 } // distribution 250 forall( dtype ostype, otype T, ttype Params | writeable( T, ostype ) | { ostype & ?|?( ostype &, Params ); } ) 251 ostype & ?|?( ostype & os, T arg, Params rest ) { 252 os | arg; // print first argument 253 sepSetCur( os, sepGetTuple( os ) ); // switch to tuple separator 254 os | rest; // print remaining arguments 255 sepSetCur( os, sepGet( os ) ); // switch to regular separator 256 return os; 257 } // ?|? 348 258 349 259 //--------------------------------------- 350 260 351 261 // writes the range [begin, end) to the given stream 352 forall( dtype ostype, otype elt_type | writeable( elt_type, ostype ), otype iterator_type | iterator( iterator_type, elt_type ) ) {353 void write( iterator_type begin, iterator_type end, ostype & os ) {354 void print( elt_type i ) { os | i; }355 for_each( begin, end, print );356 } // ?|?357 358 void write_reverse( iterator_type begin, iterator_type end, ostype & os ) { 359 void print( elt_type i ) { os | i; } 360 for_each_reverse( begin, end, print );361 } // ?|?362 } // distribution262 forall( dtype ostype, otype elt_type | writeable( elt_type, ostype ), otype iterator_type | iterator( iterator_type, elt_type ) ) 263 void write( iterator_type begin, iterator_type end, ostype & os ) { 264 void print( elt_type i ) { os | i; } 265 for_each( begin, end, print ); 266 } // ?|? 267 268 forall( dtype ostype, otype elt_type | writeable( elt_type, ostype ), otype iterator_type | iterator( iterator_type, elt_type ) ) 269 void write_reverse( iterator_type begin, iterator_type end, ostype & os ) { 270 void print( elt_type i ) { os | i; } 271 for_each_reverse( begin, end, print ); 272 } // ?|? 363 273 364 274 //--------------------------------------- … … 476 386 } // ?|? 477 387 478 istype & nl( istype & is ) {388 istype & endl( istype & is ) { 479 389 fmt( is, "%*[ \t\f\n\r\v]" ); // ignore whitespace 480 390 return is; 481 } // nl391 } // endl 482 392 } // distribution 483 393 … … 500 410 // Local Variables: // 501 411 // tab-width: 4 // 502 // compile-command: "cfa iostream.c fa" //412 // compile-command: "cfa iostream.c" // 503 413 // End: // -
libcfa/src/iostream.hfa
r95b8aa7 rff5caaf 10 10 // Created On : Wed May 27 17:56:53 2015 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Mon Dec 24 18:33:40201813 // Update Count : 22012 // Last Modified On : Sat Aug 11 08:22:49 2018 13 // Update Count : 156 14 14 // 15 15 … … 20 20 trait ostream( dtype ostype ) { 21 21 // private 22 bool sepPrt( ostype & ); // getseparator state (on/off)22 bool sepPrt( ostype & ); // return separator state (on/off) 23 23 void sepReset( ostype & ); // set separator state to default state 24 24 void sepReset( ostype &, bool ); // set separator and default state 25 25 const char * sepGetCur( ostype & ); // get current separator string 26 26 void sepSetCur( ostype &, const char * ); // set current separator string 27 bool getNL( ostype & ); // check newline27 bool getNL( ostype & ); // check newline 28 28 void setNL( ostype &, bool ); // saw newline 29 bool getANL( ostype & ); // get auto newline (on/off)30 bool getPrt( ostype & ); // get fmt called in output cascade31 void setPrt( ostype &, bool ); // set fmt called in output cascade32 29 // public 33 30 void sepOn( ostype & ); // turn separator state on 34 31 void sepOff( ostype & ); // turn separator state off 35 32 bool sepDisable( ostype & ); // set default state to off, and return previous state 36 bool sepEnable( ostype & ); // set default state to on, and return previous state 37 void nlOn( ostype & ); // turn auto-newline state on 38 void nlOff( ostype & ); // turn auto-newline state off 33 bool sepEnable( ostype & ); // set default state to on, and return previous state 39 34 40 35 const char * sepGet( ostype & ); // get separator string … … 48 43 void close( ostype & os ); 49 44 ostype & write( ostype &, const char *, size_t ); 50 int fmt( ostype &, const char f ormat[], ... );45 int fmt( ostype &, const char fmt[], ... ); 51 46 }; // ostream 52 47 … … 63 58 forall( dtype ostype | ostream( ostype ) ) { 64 59 ostype & ?|?( ostype &, bool ); 65 void ?|?( ostype &, bool );66 60 67 61 ostype & ?|?( ostype &, char ); 68 void ?|?( ostype &, char );69 62 ostype & ?|?( ostype &, signed char ); 70 void ?|?( ostype &, signed char );71 63 ostype & ?|?( ostype &, unsigned char ); 72 void ?|?( ostype &, unsigned char );73 64 74 65 ostype & ?|?( ostype &, short int ); 75 void ?|?( ostype &, short int );76 66 ostype & ?|?( ostype &, unsigned short int ); 77 void ?|?( ostype &, unsigned short int );78 67 ostype & ?|?( ostype &, int ); 79 void ?|?( ostype &, int );80 68 ostype & ?|?( ostype &, unsigned int ); 81 void ?|?( ostype &, unsigned int );82 69 ostype & ?|?( ostype &, long int ); 83 void ?|?( ostype &, long int );84 70 ostype & ?|?( ostype &, long long int ); 85 void ?|?( ostype &, long long int );86 71 ostype & ?|?( ostype &, unsigned long int ); 87 void ?|?( ostype &, unsigned long int );88 72 ostype & ?|?( ostype &, unsigned long long int ); 89 void ?|?( ostype &, unsigned long long int );90 73 91 74 ostype & ?|?( ostype &, float ); // FIX ME: should not be required 92 void ?|?( ostype &, float ); // FIX ME: should not be required93 75 ostype & ?|?( ostype &, double ); 94 void ?|?( ostype &, double );95 76 ostype & ?|?( ostype &, long double ); 96 void ?|?( ostype &, long double );97 77 98 78 ostype & ?|?( ostype &, float _Complex ); 99 void ?|?( ostype &, float _Complex );100 79 ostype & ?|?( ostype &, double _Complex ); 101 void ?|?( ostype &, double _Complex );102 80 ostype & ?|?( ostype &, long double _Complex ); 103 void ?|?( ostype &, long double _Complex );104 81 105 82 ostype & ?|?( ostype &, const char * ); 106 void ?|?( ostype &, const char * );107 83 // ostype & ?|?( ostype &, const char16_t * ); 108 84 #if ! ( __ARM_ARCH_ISA_ARM == 1 && __ARM_32BIT_STATE == 1 ) // char32_t == wchar_t => ambiguous … … 111 87 // ostype & ?|?( ostype &, const wchar_t * ); 112 88 ostype & ?|?( ostype &, const void * ); 113 void ?|?( ostype &, const void * );114 89 115 90 // manipulators 116 91 ostype & ?|?( ostype &, ostype & (*)( ostype & ) ); 117 void ?|?( ostype &, ostype & (*)( ostype & ) ); 118 ostype & nl( ostype & ); 119 void nl( ostype & ); 120 ostype & nonl( ostype & ); 92 ostype & endl( ostype & ); 121 93 ostype & sep( ostype & ); 122 94 ostype & sepTuple( ostype & ); … … 125 97 ostype & sepDisable( ostype & ); 126 98 ostype & sepEnable( ostype & ); 127 ostype & nlOn( ostype & );128 ostype & nlOff( ostype & );129 99 } // distribution 130 100 131 101 // tuples 132 forall( dtype ostype, otype T, ttype Params | writeable( T, ostype ) | { ostype & ?|?( ostype &, Params ); } ) { 133 ostype & ?|?( ostype & os, T arg, Params rest ); 134 void ?|?( ostype & os, T arg, Params rest ); 135 } // distribution 102 forall( dtype ostype, otype T, ttype Params | writeable( T, ostype ) | { ostype & ?|?( ostype &, Params ); } ) 103 ostype & ?|?( ostype & os, T arg, Params rest ); 136 104 137 105 // writes the range [begin, end) to the given stream 138 forall( dtype ostype, otype elt_type | writeable( elt_type, ostype ), otype iterator_type | iterator( iterator_type, elt_type ) ) { 139 void write( iterator_type begin, iterator_type end, ostype & os ); 140 void write_reverse( iterator_type begin, iterator_type end, ostype & os ); 141 } // distribution 106 forall( dtype ostype, otype elt_type | writeable( elt_type, ostype ), otype iterator_type | iterator( iterator_type, elt_type ) ) 107 void write( iterator_type begin, iterator_type end, ostype & os ); 108 109 forall( dtype ostype, otype elt_type | writeable( elt_type, ostype ), otype iterator_type | iterator( iterator_type, elt_type ) ) 110 void write_reverse( iterator_type begin, iterator_type end, ostype & os ); 142 111 143 112 //--------------------------------------- … … 150 119 istype & read( istype &, char *, size_t ); 151 120 istype & ungetc( istype &, char ); 152 int fmt( istype &, const char f ormat[], ... );121 int fmt( istype &, const char fmt[], ... ); 153 122 }; // istream 154 123 … … 183 152 // manipulators 184 153 istype & ?|?( istype &, istype & (*)( istype & ) ); 185 istype & nl( istype & is );154 istype & endl( istype & is ); 186 155 } // distribution 187 156 … … 195 164 196 165 197 #include <time_t.hfa> // Duration (constructors) / Time (constructors)166 #include <time_t.hfa> // Duration (constructors) / Time (constructors) 198 167 199 forall( dtype ostype | ostream( ostype ) ) { 200 ostype & ?|?( ostype & os, Duration dur ); 201 void ?|?( ostype & os, Duration dur ); 202 ostype & ?|?( ostype & os, Time time ); 203 void ?|?( ostype & os, Time time ); 204 } // distribution 168 forall( dtype ostype | ostream( ostype ) ) ostype & ?|?( ostype & os, Duration dur ); 169 forall( dtype ostype | ostream( ostype ) ) ostype & ?|?( ostype & os, Time time ); 170 205 171 206 172 // Local Variables: // -
libcfa/src/iterator.cfa
r95b8aa7 rff5caaf 10 10 // Created On : Wed May 27 17:56:53 2015 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Fri Nov 2 07:17:37 201813 // Update Count : 2 912 // Last Modified On : Fri Jul 7 08:38:23 2017 13 // Update Count : 28 14 14 // 15 15 … … 33 33 // Local Variables: // 34 34 // tab-width: 4 // 35 // compile-command: "cfa iterator.c fa" //35 // compile-command: "cfa iterator.c" // 36 36 // End: // -
libcfa/src/rational.cfa
r95b8aa7 rff5caaf 10 10 // Created On : Wed Apr 6 17:54:28 2016 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : S un Dec 23 22:56:49201813 // Update Count : 1 7012 // Last Modified On : Sat Jun 2 09:24:33 2018 13 // Update Count : 162 14 14 // 15 15 … … 35 35 static RationalImpl simplify( RationalImpl & n, RationalImpl & d ) { 36 36 if ( d == (RationalImpl){0} ) { 37 serr | "Invalid rational number construction: denominator cannot be equal to 0." ;37 serr | "Invalid rational number construction: denominator cannot be equal to 0." | endl; 38 38 exit( EXIT_FAILURE ); 39 39 } // exit … … 175 175 } // ?|? 176 176 177 forall( dtype ostype | ostream( ostype ) | { ostype & ?|?( ostype &, RationalImpl ); } ) { 178 ostype & ?|?( ostype & os, Rational(RationalImpl) r ) { 179 return os | r.numerator | '/' | r.denominator; 180 } // ?|? 181 182 void ?|?( ostype & os, Rational(RationalImpl) r ) { 183 (ostype &)(os | r); nl( os ); 184 } // ?|? 185 } // distribution 177 forall( dtype ostype | ostream( ostype ) | { ostype & ?|?( ostype &, RationalImpl ); } ) 178 ostype & ?|?( ostype & os, Rational(RationalImpl ) r ) { 179 return os | r.numerator | '/' | r.denominator; 180 } // ?|? 186 181 } // distribution 187 182 -
libcfa/src/rational.hfa
r95b8aa7 rff5caaf 12 12 // Created On : Wed Apr 6 17:56:25 2016 13 13 // Last Modified By : Peter A. Buhr 14 // Last Modified On : Tue Dec 4 23:07:46201815 // Update Count : 10 614 // Last Modified On : Sat Jun 2 09:10:01 2018 15 // Update Count : 105 16 16 // 17 17 … … 92 92 istype & ?|?( istype &, Rational(RationalImpl) & ); 93 93 94 forall( dtype ostype | ostream( ostype ) | { ostype & ?|?( ostype &, RationalImpl ); } ) { 95 ostype & ?|?( ostype &, Rational(RationalImpl) ); 96 void ?|?( ostype &, Rational(RationalImpl) ); 97 } // distribution 94 forall( dtype ostype | ostream( ostype ) | { ostype & ?|?( ostype &, RationalImpl ); } ) 95 ostype & ?|?( ostype &, Rational(RationalImpl ) ); 98 96 } // distribution 99 97 -
libcfa/src/stdlib.hfa
r95b8aa7 rff5caaf 10 10 // Created On : Thu Jan 28 17:12:35 2016 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Mon Dec 17 15:37:45201813 // Update Count : 34 612 // Last Modified On : Fri Jul 27 07:21:36 2018 13 // Update Count : 345 14 14 // 15 15 … … 178 178 179 179 static inline { 180 int ato( const char * sptr ) { return (int)strtol( sptr, 0, 10 ); }180 int ato( const char * sptr ) {return (int)strtol( sptr, 0, 10 ); } 181 181 unsigned int ato( const char * sptr ) { return (unsigned int)strtoul( sptr, 0, 10 ); } 182 182 long int ato( const char * sptr ) { return strtol( sptr, 0, 10 ); } -
libcfa/src/time.cfa
r95b8aa7 rff5caaf 10 10 // Created On : Tue Mar 27 13:33:14 2018 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Sun Dec 23 22:57:48201813 // Update Count : 5712 // Last Modified On : Sun May 6 22:26:00 2018 13 // Update Count : 37 14 14 // 15 15 … … 31 31 32 32 33 forall( dtype ostype | ostream( ostype ) ) { 34 ostype & ?|?( ostype & os, Duration dur ) with( dur ) { 35 (ostype &)(os | tv / TIMEGRAN); // print seconds 36 long int ns = (tv < 0 ? -tv : tv) % TIMEGRAN; // compute nanoseconds 37 if ( ns != 0 ) { // some ? 38 char buf[16]; 39 (ostype &)(os | nanomsd( ns, buf )); // print nanoseconds 40 } // if 41 return os; 42 } // ?|? 43 44 void ?|?( ostype & os, Duration dur ) with( dur ) { 45 (ostype &)(os | dur); nl( os ); 46 } // ?|? 47 } // distribution 33 forall( dtype ostype | ostream( ostype ) ) 34 ostype & ?|?( ostype & os, Duration dur ) with( dur ) { 35 os | tv / TIMEGRAN; // print seconds 36 long int ns = (tv < 0 ? -tv : tv) % TIMEGRAN; // compute nanoseconds 37 if ( ns != 0 ) { // some ? 38 char buf[16]; 39 os | nanomsd( ns, buf ); // print nanoseconds 40 } // if 41 return os; 42 } // ?|? 48 43 49 44 … … 142 137 } // strftime 143 138 144 forall( dtype ostype | ostream( ostype ) ) { 145 ostype & ?|?( ostype & os, Time time ) with( time ) { 146 char buf[32]; // at least 26 147 time_t s = tv / TIMEGRAN; 148 ctime_r( &s, (char *)&buf ); // 26 characters: "Wed Jun 30 21:49:08 1993\n" 149 buf[24] = '\0'; // remove trailing '\n' 150 long int ns = (tv < 0 ? -tv : tv) % TIMEGRAN; // compute nanoseconds 151 if ( ns == 0 ) { // none ? 152 (ostype &)(os | buf); // print date/time/year 153 } else { 154 buf[19] = '\0'; // truncate to "Wed Jun 30 21:49:08" 155 char buf2[16]; 156 nanomsd( ns, buf2 ); // compute nanoseconds 157 (ostype &)(os | buf | buf2 | ' ' | &buf[20]); // print date/time, nanoseconds and year 158 } // if 159 return os; 160 } // ?|? 161 162 void ?|?( ostype & os, Time time ) with( time ) { 163 (ostype &)(os | time); nl( os ); 164 } // ?|? 165 } // distribution 139 forall( dtype ostype | ostream( ostype ) ) 140 ostype & ?|?( ostype & os, Time time ) with( time ) { 141 char buf[32]; // at least 26 142 time_t s = tv / TIMEGRAN; 143 ctime_r( &s, (char *)&buf ); // 26 characters: "Wed Jun 30 21:49:08 1993\n" 144 buf[24] = '\0'; // remove trailing '\n' 145 long int ns = (tv < 0 ? -tv : tv) % TIMEGRAN; // compute nanoseconds 146 if ( ns == 0 ) { // none ? 147 os | buf; // print date/time/year 148 } else { 149 buf[19] = '\0'; // truncate to "Wed Jun 30 21:49:08" 150 os | buf; // print date/time 151 char buf2[16]; 152 nanomsd( ns, buf2 ); // compute nanoseconds 153 os | buf2 | ' ' | &buf[20]; // print nanoseconds and year 154 } // if 155 return os; 156 } // ?|? 166 157 167 158 // Local Variables: // -
src/CodeTools/ResolvProtoDump.cc
r95b8aa7 rff5caaf 51 51 52 52 /// Child constructor 53 ProtoDump(const ProtoDump* p, Type* r) 53 ProtoDump(const ProtoDump* p, Type* r) 54 54 : decls(), exprs(), subs(), closed(p->closed), parent(p), rtnType(r) {} 55 55 56 56 // Fix copy issues 57 ProtoDump(const ProtoDump& o) 58 : decls(o.decls), exprs(o.exprs), subs(o.subs), closed(o.closed), parent(o.parent), 57 ProtoDump(const ProtoDump& o) 58 : decls(o.decls), exprs(o.exprs), subs(o.subs), closed(o.closed), parent(o.parent), 59 59 rtnType(maybeClone(o.rtnType.get())) {} 60 60 ProtoDump( ProtoDump&& ) = default; … … 69 69 parent = o.parent; 70 70 rtnType.reset( maybeClone(o.rtnType.get()) ); 71 71 72 72 return *this; 73 73 } 74 ProtoDump& operator= (ProtoDump&&) = de lete;74 ProtoDump& operator= (ProtoDump&&) = default; 75 75 76 76 private: … … 96 96 subs.emplace_back( std::move(sub.pass) ); 97 97 } 98 98 99 99 /// Whether lists should be separated, terminated, or preceded by their separator 100 100 enum septype { separated, terminated, preceded }; … … 102 102 /// builds space-separated list of types 103 103 template<typename V> 104 static void build( V& visitor, const std::list< Type* >& tys, std::stringstream& ss, 104 static void build( V& visitor, const std::list< Type* >& tys, std::stringstream& ss, 105 105 septype mode = separated ) { 106 106 if ( tys.empty() ) return; … … 121 121 /// builds list of types wrapped as tuple type 122 122 template<typename V> 123 static void buildAsTuple( V& visitor, const std::list< Type* >& tys, 123 static void buildAsTuple( V& visitor, const std::list< Type* >& tys, 124 124 std::stringstream& ss ) { 125 125 switch ( tys.size() ) { … … 162 162 if ( name.compare( 0, 10, "_operator_" ) == 0 ) { 163 163 ss << name.substr(10); 164 } else if ( name.compare( "_constructor" ) == 0 164 } else if ( name.compare( "_constructor" ) == 0 165 165 || name.compare( "_destructor" ) == 0 ) { 166 166 ss << name.substr(1); … … 173 173 174 174 /// replaces operators with resolv-proto names 175 static void rp_name( const std::string& name, std::stringstream& ss, 175 static void rp_name( const std::string& name, std::stringstream& ss, 176 176 std::string&& pre = "" ) { 177 177 // safety check for anonymous names … … 187 187 op_name( info.outputName, ss ); 188 188 return; 189 } 190 189 } 190 191 191 // replace retval names 192 192 if ( name.compare( 0, 8, "_retval_" ) == 0 ) { … … 195 195 return; 196 196 } 197 197 198 198 // default to just name, with first character in lowercase 199 ss << pre 199 ss << pre 200 200 << (char)std::tolower( static_cast<unsigned char>(name[0]) ) 201 201 << (name.c_str() + 1); … … 221 221 // strip trailing "_generic_" from autogen names (avoids some user-generation issues) 222 222 char generic[] = "_generic_"; size_t n_generic = sizeof(generic) - 1; 223 if ( stripped.size() >= n_generic 223 if ( stripped.size() >= n_generic 224 224 && stripped.substr( stripped.size() - n_generic ) == generic ) { 225 225 stripped.resize( stripped.size() - n_generic ); … … 237 237 unsigned depth; ///< Depth of nesting from root type 238 238 239 TypePrinter( const std::unordered_set<std::string>& closed, std::stringstream& ss ) 239 TypePrinter( const std::unordered_set<std::string>& closed, std::stringstream& ss ) 240 240 : ss(ss), closed(closed), depth(0) {} 241 241 … … 337 337 } 338 338 }; 339 339 340 340 /// builds description of function 341 341 void build( const std::string& name, FunctionType* fnTy, std::stringstream& ss ) { … … 350 350 for ( TypeDecl* tyvar : fnTy->forall ) { 351 351 for ( DeclarationWithType* assn : tyvar->assertions ) { 352 ss << " | "; 352 ss << " | "; 353 353 build( assn->name, assn->get_type(), ss ); 354 354 } … … 360 360 // ignore top-level references 361 361 Type *norefs = ty->stripReferences(); 362 362 363 363 // fall back to function declaration if function type 364 364 if ( PointerType* pTy = dynamic_cast< PointerType* >(norefs) ) { … … 409 409 std::stringstream& ss; ///< Output to print to 410 410 411 ExprPrinter( const std::unordered_set<std::string>& closed, std::stringstream& ss ) 411 ExprPrinter( const std::unordered_set<std::string>& closed, std::stringstream& ss ) 412 412 : closed(closed), ss(ss) {} 413 413 … … 476 476 visit_children = false; 477 477 } 478 478 479 479 /// Member access handled as function from aggregate to member 480 480 void previsit( UntypedMemberExpr* expr ) { … … 662 662 } 663 663 } 664 664 665 665 // add named parameters and returns to local scope 666 666 body.pass.addAll( decl->type->returnVals ); … … 679 679 void previsit( StructDecl* sd ) { addAggregateFields(sd); } 680 680 void previsit( UnionDecl* ud ) { addAggregateFields(ud); } 681 681 682 682 void previsit( EnumDecl* ed ) { 683 std::unique_ptr<Type> eType = 683 std::unique_ptr<Type> eType = 684 684 std::make_unique<BasicType>( Type::Qualifiers{}, BasicType::SignedInt ); 685 685 686 686 // add field names directly to enclosing scope 687 687 for ( Declaration* member : ed->members ) { -
src/Makefile.am
r95b8aa7 rff5caaf 17 17 # create object files in directory with source files 18 18 AUTOMAKE_OPTIONS = foreign subdir-objects 19 ACLOCAL_AMFLAGS = -I automake20 19 21 20 SRC = main.cc \ -
src/Makefile.in
r95b8aa7 rff5caaf 141 141 subdir = src 142 142 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 143 am__aclocal_m4_deps = $(top_srcdir)/automake/libtool.m4 \ 144 $(top_srcdir)/automake/ltoptions.m4 \ 145 $(top_srcdir)/automake/ltsugar.m4 \ 146 $(top_srcdir)/automake/ltversion.m4 \ 147 $(top_srcdir)/automake/lt~obsolete.m4 \ 148 $(top_srcdir)/automake/cfa.m4 $(top_srcdir)/configure.ac 143 am__aclocal_m4_deps = $(top_srcdir)/automake/cfa.m4 \ 144 $(top_srcdir)/configure.ac 149 145 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ 150 146 $(ACLOCAL_M4) … … 155 151 CONFIG_CLEAN_VPATH_FILES = 156 152 LIBRARIES = $(noinst_LIBRARIES) 153 AR = ar 157 154 AM_V_AR = $(am__v_AR_@AM_V@) 158 155 am__v_AR_ = $(am__v_AR_@AM_DEFAULT_V@) … … 298 295 ___driver_cfa_cpp_OBJECTS = $(am____driver_cfa_cpp_OBJECTS) 299 296 ___driver_cfa_cpp_DEPENDENCIES = 300 AM_V_lt = $(am__v_lt_@AM_V@)301 am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)302 am__v_lt_0 = --silent303 am__v_lt_1 =304 297 am_demangler_OBJECTS = SymTab/demangler.$(OBJEXT) 305 298 demangler_OBJECTS = $(am_demangler_OBJECTS) … … 323 316 CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ 324 317 $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) 325 LTCXXCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \326 $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) \327 $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \328 $(AM_CXXFLAGS) $(CXXFLAGS)329 318 AM_V_CXX = $(am__v_CXX_@AM_V@) 330 319 am__v_CXX_ = $(am__v_CXX_@AM_DEFAULT_V@) … … 332 321 am__v_CXX_1 = 333 322 CXXLD = $(CXX) 334 CXXLINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \ 335 $(LIBTOOLFLAGS) --mode=link $(CXXLD) $(AM_CXXFLAGS) \ 336 $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ 323 CXXLINK = $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \ 324 -o $@ 337 325 AM_V_CXXLD = $(am__v_CXXLD_@AM_V@) 338 326 am__v_CXXLD_ = $(am__v_CXXLD_@AM_DEFAULT_V@) … … 340 328 am__v_CXXLD_1 = 341 329 LEXCOMPILE = $(LEX) $(AM_LFLAGS) $(LFLAGS) 342 LTLEXCOMPILE = $(LIBTOOL) $(AM_V_lt) $(AM_LIBTOOLFLAGS) \343 $(LIBTOOLFLAGS) --mode=compile $(LEX) $(AM_LFLAGS) $(LFLAGS)344 330 AM_V_LEX = $(am__v_LEX_@AM_V@) 345 331 am__v_LEX_ = $(am__v_LEX_@AM_DEFAULT_V@) … … 350 336 -e s/c++$$/h++/ -e s/c$$/h/ 351 337 YACCCOMPILE = $(YACC) $(AM_YFLAGS) $(YFLAGS) 352 LTYACCCOMPILE = $(LIBTOOL) $(AM_V_lt) $(AM_LIBTOOLFLAGS) \353 $(LIBTOOLFLAGS) --mode=compile $(YACC) $(AM_YFLAGS) $(YFLAGS)354 338 AM_V_YACC = $(am__v_YACC_@AM_V@) 355 339 am__v_YACC_ = $(am__v_YACC_@AM_DEFAULT_V@) … … 358 342 COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ 359 343 $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) 360 LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \361 $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \362 $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \363 $(AM_CFLAGS) $(CFLAGS)364 344 AM_V_CC = $(am__v_CC_@AM_V@) 365 345 am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@) … … 367 347 am__v_CC_1 = 368 348 CCLD = $(CC) 369 LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ 370 $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ 371 $(AM_LDFLAGS) $(LDFLAGS) -o $@ 349 LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ 372 350 AM_V_CCLD = $(am__v_CCLD_@AM_V@) 373 351 am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@) … … 419 397 AMTAR = @AMTAR@ 420 398 AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ 421 AR = @AR@422 399 AUTOCONF = @AUTOCONF@ 423 400 AUTOHEADER = @AUTOHEADER@ 424 401 AUTOMAKE = @AUTOMAKE@ 425 402 AWK = @AWK@ 403 BACKEND_CC = @BACKEND_CC@ 426 404 BUILD_IN_TREE_FLAGS = @BUILD_IN_TREE_FLAGS@ 427 405 CC = @CC@ … … 443 421 CPPFLAGS = @CPPFLAGS@ 444 422 CXX = @CXX@ 445 CXXCPP = @CXXCPP@446 423 CXXDEPMODE = @CXXDEPMODE@ 447 424 CXXFLAGS = @CXXFLAGS@ … … 449 426 DEFS = @DEFS@ 450 427 DEPDIR = @DEPDIR@ 451 DLLTOOL = @DLLTOOL@452 428 DRIVER_DIR = @DRIVER_DIR@ 453 DSYMUTIL = @DSYMUTIL@454 DUMPBIN = @DUMPBIN@455 429 ECHO_C = @ECHO_C@ 456 430 ECHO_N = @ECHO_N@ … … 458 432 EGREP = @EGREP@ 459 433 EXEEXT = @EXEEXT@ 460 FGREP = @FGREP@461 434 GREP = @GREP@ 462 435 HOST_FLAGS = @HOST_FLAGS@ … … 466 439 INSTALL_SCRIPT = @INSTALL_SCRIPT@ 467 440 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ 468 LD = @LD@469 441 LDFLAGS = @LDFLAGS@ 470 442 LEX = @LEX@ … … 475 447 LIBOBJS = @LIBOBJS@ 476 448 LIBS = @LIBS@ 477 LIBTOOL = @LIBTOOL@478 LIPO = @LIPO@479 LN_S = @LN_S@480 449 LTLIBOBJS = @LTLIBOBJS@ 481 LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@482 450 MAKEINFO = @MAKEINFO@ 483 MANIFEST_TOOL = @MANIFEST_TOOL@484 451 MKDIR_P = @MKDIR_P@ 485 NM = @NM@486 NMEDIT = @NMEDIT@487 OBJDUMP = @OBJDUMP@488 452 OBJEXT = @OBJEXT@ 489 OTOOL = @OTOOL@490 OTOOL64 = @OTOOL64@491 453 PACKAGE = @PACKAGE@ 492 454 PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ … … 498 460 PATH_SEPARATOR = @PATH_SEPARATOR@ 499 461 RANLIB = @RANLIB@ 500 SED = @SED@501 462 SET_MAKE = @SET_MAKE@ 502 463 SHELL = @SHELL@ … … 510 471 abs_top_builddir = @abs_top_builddir@ 511 472 abs_top_srcdir = @abs_top_srcdir@ 512 ac_ct_AR = @ac_ct_AR@513 473 ac_ct_CC = @ac_ct_CC@ 514 474 ac_ct_CXX = @ac_ct_CXX@ 515 ac_ct_DUMPBIN = @ac_ct_DUMPBIN@516 475 am__include = @am__include@ 517 476 am__leading_dot = @am__leading_dot@ … … 563 522 # create object files in directory with source files 564 523 AUTOMAKE_OPTIONS = foreign subdir-objects 565 ACLOCAL_AMFLAGS = -I automake566 524 SRC = main.cc MakeLibCfa.cc CompilationState.cc CodeGen/Generate.cc \ 567 525 CodeGen/CodeGenerator.cc CodeGen/GenType.cc \ … … 723 681 724 682 .SUFFIXES: 725 .SUFFIXES: .cc .ll . lo .o .obj .yy683 .SUFFIXES: .cc .ll .o .obj .yy 726 684 $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(srcdir)/CodeGen/module.mk $(srcdir)/CodeTools/module.mk $(srcdir)/Concurrency/module.mk $(srcdir)/Common/module.mk $(srcdir)/ControlStruct/module.mk $(srcdir)/GenPoly/module.mk $(srcdir)/InitTweak/module.mk $(srcdir)/Parser/module.mk $(srcdir)/ResolvExpr/module.mk $(srcdir)/SymTab/module.mk $(srcdir)/SynTree/module.mk $(srcdir)/Tuples/module.mk $(srcdir)/Validate/module.mk $(srcdir)/Virtual/module.mk $(am__configure_deps) 727 685 @for dep in $?; do \ … … 1012 970 sed 's/$(EXEEXT)$$//' | \ 1013 971 while read p p1; do if test -f $$p \ 1014 || test -f $$p1 \1015 972 ; then echo "$$p"; echo "$$p"; else :; fi; \ 1016 973 done | \ … … 1027 984 if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ 1028 985 test -z "$$files" || { \ 1029 echo " $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install$(INSTALL_PROGRAM) $$files '$(DESTDIR)$(cfa_cpplibdir)$$dir'"; \1030 $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install$(INSTALL_PROGRAM) $$files "$(DESTDIR)$(cfa_cpplibdir)$$dir" || exit $$?; \986 echo " $(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) $$files '$(DESTDIR)$(cfa_cpplibdir)$$dir'"; \ 987 $(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(cfa_cpplibdir)$$dir" || exit $$?; \ 1031 988 } \ 1032 989 ; done … … 1044 1001 1045 1002 clean-cfa_cpplibPROGRAMS: 1046 @list='$(cfa_cpplib_PROGRAMS)'; test -n "$$list" || exit 0; \ 1047 echo " rm -f" $$list; \ 1048 rm -f $$list || exit $$?; \ 1049 test -n "$(EXEEXT)" || exit 0; \ 1050 list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \ 1051 echo " rm -f" $$list; \ 1052 rm -f $$list 1003 -test -z "$(cfa_cpplib_PROGRAMS)" || rm -f $(cfa_cpplib_PROGRAMS) 1053 1004 CodeGen/Generate.$(OBJEXT): CodeGen/$(am__dirstamp) \ 1054 1005 CodeGen/$(DEPDIR)/$(am__dirstamp) … … 1290 1241 @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'` 1291 1242 1292 .cc.lo:1293 @am__fastdepCXX_TRUE@ $(AM_V_CXX)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.lo$$||'`;\1294 @am__fastdepCXX_TRUE@ $(LTCXXCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\1295 @am__fastdepCXX_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Plo1296 @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@1297 @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@1298 @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(LTCXXCOMPILE) -c -o $@ $<1299 1300 1243 .ll.cc: 1301 1244 $(AM_V_LEX)$(am__skiplex) $(SHELL) $(YLWRAP) $< $(LEX_OUTPUT_ROOT).c $@ -- $(LEXCOMPILE) … … 1303 1246 .yy.cc: 1304 1247 $(AM_V_YACC)$(am__skipyacc) $(SHELL) $(YLWRAP) $< y.tab.c $@ y.tab.h `echo $@ | $(am__yacc_c2h)` y.output $*.output -- $(YACCCOMPILE) 1305 1306 mostlyclean-libtool:1307 -rm -f *.lo1308 1309 clean-libtool:1310 -rm -rf .libs _libs1311 -rm -rf ../driver/.libs ../driver/_libs1312 1248 1313 1249 ID: $(am__tagged_files) … … 1469 1405 clean: clean-am 1470 1406 1471 clean-am: clean-cfa_cpplibPROGRAMS clean-generic clean- libtool\1472 clean-noinstLIBRARIESmostlyclean-am1407 clean-am: clean-cfa_cpplibPROGRAMS clean-generic clean-noinstLIBRARIES \ 1408 mostlyclean-am 1473 1409 1474 1410 distclean: distclean-am … … 1525 1461 mostlyclean: mostlyclean-am 1526 1462 1527 mostlyclean-am: mostlyclean-compile mostlyclean-generic \ 1528 mostlyclean-libtool 1463 mostlyclean-am: mostlyclean-compile mostlyclean-generic 1529 1464 1530 1465 pdf: pdf-am … … 1541 1476 1542 1477 .PHONY: CTAGS GTAGS TAGS all all-am check check-am clean \ 1543 clean-cfa_cpplibPROGRAMS clean-generic clean-libtool \ 1544 clean-noinstLIBRARIES cscopelist-am ctags ctags-am distclean \ 1545 distclean-compile distclean-generic distclean-libtool \ 1546 distclean-tags distdir dvi dvi-am html html-am info info-am \ 1547 install install-am install-cfa_cpplibPROGRAMS install-data \ 1548 install-data-am install-dvi install-dvi-am install-exec \ 1549 install-exec-am install-html install-html-am install-info \ 1550 install-info-am install-man install-pdf install-pdf-am \ 1551 install-ps install-ps-am install-strip installcheck \ 1552 installcheck-am installdirs maintainer-clean \ 1553 maintainer-clean-generic mostlyclean mostlyclean-compile \ 1554 mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ 1555 tags tags-am uninstall uninstall-am \ 1478 clean-cfa_cpplibPROGRAMS clean-generic clean-noinstLIBRARIES \ 1479 cscopelist-am ctags ctags-am distclean distclean-compile \ 1480 distclean-generic distclean-tags distdir dvi dvi-am html \ 1481 html-am info info-am install install-am \ 1482 install-cfa_cpplibPROGRAMS install-data install-data-am \ 1483 install-dvi install-dvi-am install-exec install-exec-am \ 1484 install-html install-html-am install-info install-info-am \ 1485 install-man install-pdf install-pdf-am install-ps \ 1486 install-ps-am install-strip installcheck installcheck-am \ 1487 installdirs maintainer-clean maintainer-clean-generic \ 1488 mostlyclean mostlyclean-compile mostlyclean-generic pdf pdf-am \ 1489 ps ps-am tags tags-am uninstall uninstall-am \ 1556 1490 uninstall-cfa_cpplibPROGRAMS 1557 1491 -
src/Parser/DeclarationNode.cc
r95b8aa7 rff5caaf 10 10 // Created On : Sat May 16 12:34:05 2015 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Thu Nov 1 20:54:26201813 // Update Count : 110 812 // Last Modified On : Fri Jul 20 14:56:54 2018 13 // Update Count : 1107 14 14 // 15 15 … … 402 402 } 403 403 404 DeclarationNode * DeclarationNode::newTypeof( ExpressionNode * expr , bool basetypeof) {405 DeclarationNode * newnode = new DeclarationNode; 406 newnode->type = new TypeData( basetypeof ? TypeData::Basetypeof :TypeData::Typeof );404 DeclarationNode * DeclarationNode::newTypeof( ExpressionNode * expr ) { 405 DeclarationNode * newnode = new DeclarationNode; 406 newnode->type = new TypeData( TypeData::Typeof ); 407 407 newnode->type->typeexpr = expr; 408 408 return newnode; -
src/Parser/ParseNode.h
r95b8aa7 rff5caaf 10 10 // Created On : Sat May 16 13:28:16 2015 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Thu Nov 1 20:54:53201813 // Update Count : 85 412 // Last Modified On : Sat Aug 4 09:39:40 2018 13 // Update Count : 853 14 14 // 15 15 … … 249 249 static DeclarationNode * newBitfield( ExpressionNode * size ); 250 250 static DeclarationNode * newTuple( DeclarationNode * members ); 251 static DeclarationNode * newTypeof( ExpressionNode * expr , bool basetypeof = false);251 static DeclarationNode * newTypeof( ExpressionNode * expr ); 252 252 static DeclarationNode * newAttr( const std::string *, ExpressionNode * expr ); // @ attributes 253 253 static DeclarationNode * newAttr( const std::string *, DeclarationNode * type ); // @ attributes -
src/Parser/TypeData.cc
r95b8aa7 rff5caaf 10 10 // Created On : Sat May 16 15:12:51 2015 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Fri Nov 2 07:54:26201813 // Update Count : 62 412 // Last Modified On : Fri Jul 20 14:39:31 2018 13 // Update Count : 622 14 14 // 15 15 … … 96 96 break; 97 97 case Typeof: 98 case Basetypeof:99 98 // typeexpr = new Typeof_t; 100 99 typeexpr = nullptr; … … 167 166 break; 168 167 case Typeof: 169 case Basetypeof:170 168 // delete typeexpr->expr; 171 169 delete typeexpr; … … 247 245 break; 248 246 case Typeof: 249 case Basetypeof:250 247 newtype->typeexpr = maybeClone( typeexpr ); 251 248 break; … … 422 419 } // if 423 420 break; 424 case Basetypeof:425 os << "base-";426 #if defined(__GNUC__) && __GNUC__ >= 7427 __attribute__((fallthrough));428 #endif429 421 case Typeof: 430 422 os << "type-of expression "; … … 465 457 case Tuple: 466 458 case Typeof: 467 case Basetypeof:468 459 case Builtin: 469 460 assertf(false, "Tried to get leaf name from kind without a name: %d", kind); … … 522 513 switch ( td->kind ) { 523 514 case TypeData::Unknown: 524 // fill in implicit int525 return new BasicType( buildQualifiers( td ), BasicType::SignedInt );515 // fill in implicit int 516 return new BasicType( buildQualifiers( td ), BasicType::SignedInt ); 526 517 case TypeData::Basic: 527 return buildBasicType( td );518 return buildBasicType( td ); 528 519 case TypeData::Pointer: 529 return buildPointer( td );520 return buildPointer( td ); 530 521 case TypeData::Array: 531 return buildArray( td );522 return buildArray( td ); 532 523 case TypeData::Reference: 533 return buildReference( td );524 return buildReference( td ); 534 525 case TypeData::Function: 535 return buildFunction( td );526 return buildFunction( td ); 536 527 case TypeData::AggregateInst: 537 return buildAggInst( td );528 return buildAggInst( td ); 538 529 case TypeData::EnumConstant: 539 // the name gets filled in later -- by SymTab::Validate540 return new EnumInstType( buildQualifiers( td ), "" );530 // the name gets filled in later -- by SymTab::Validate 531 return new EnumInstType( buildQualifiers( td ), "" ); 541 532 case TypeData::SymbolicInst: 542 return buildSymbolicInst( td );533 return buildSymbolicInst( td ); 543 534 case TypeData::Tuple: 544 return buildTuple( td );535 return buildTuple( td ); 545 536 case TypeData::Typeof: 546 case TypeData::Basetypeof: 547 return buildTypeof( td ); 537 return buildTypeof( td ); 548 538 case TypeData::Builtin: 549 if(td->builtintype == DeclarationNode::Zero) {550 return new ZeroType( noQualifiers );551 }552 else if(td->builtintype == DeclarationNode::One) {553 return new OneType( noQualifiers );554 }555 else {556 return new VarArgsType( buildQualifiers( td ) );557 }539 if(td->builtintype == DeclarationNode::Zero) { 540 return new ZeroType( noQualifiers ); 541 } 542 else if(td->builtintype == DeclarationNode::One) { 543 return new OneType( noQualifiers ); 544 } 545 else { 546 return new VarArgsType( buildQualifiers( td ) ); 547 } 558 548 case TypeData::GlobalScope: 559 return new GlobalScopeType();549 return new GlobalScopeType(); 560 550 case TypeData::Qualified: 561 return new QualifiedType( buildQualifiers( td ), typebuild( td->qualified.parent ), typebuild( td->qualified.child ) );551 return new QualifiedType( buildQualifiers( td ), typebuild( td->qualified.parent ), typebuild( td->qualified.child ) ); 562 552 case TypeData::Symbolic: 563 553 case TypeData::Enum: 564 554 case TypeData::Aggregate: 565 assert( false );555 assert( false ); 566 556 } // switch 567 557 … … 939 929 940 930 TypeofType * buildTypeof( const TypeData * td ) { 941 assert( td->kind == TypeData::Typeof || td->kind == TypeData::Basetypeof);931 assert( td->kind == TypeData::Typeof ); 942 932 assert( td->typeexpr ); 943 933 // assert( td->typeexpr->expr ); 944 return new TypeofType{ 945 buildQualifiers( td ), td->typeexpr->build(), td->kind == TypeData::Basetypeof }; 934 return new TypeofType( buildQualifiers( td ), td->typeexpr->build() ); 946 935 } // buildTypeof 947 936 -
src/Parser/TypeData.h
r95b8aa7 rff5caaf 10 10 // Created On : Sat May 16 15:18:36 2015 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Thu Nov 1 20:56:46201813 // Update Count : 19 612 // Last Modified On : Fri Jul 20 13:56:40 2018 13 // Update Count : 195 14 14 // 15 15 … … 27 27 struct TypeData { 28 28 enum Kind { Basic, Pointer, Reference, Array, Function, Aggregate, AggregateInst, Enum, EnumConstant, Symbolic, 29 SymbolicInst, Tuple, Typeof, B asetypeof, Builtin, GlobalScope, Qualified, Unknown };29 SymbolicInst, Tuple, Typeof, Builtin, GlobalScope, Qualified, Unknown }; 30 30 31 31 struct Aggregate_t { -
src/Parser/lex.ll
r95b8aa7 rff5caaf 10 10 * Created On : Sat Sep 22 08:58:10 2001 11 11 * Last Modified By : Peter A. Buhr 12 * Last Modified On : Thu Nov 1 20:57:35201813 * Update Count : 68 712 * Last Modified On : Wed Aug 29 15:02:41 2018 13 * Update Count : 686 14 14 */ 15 15 … … 209 209 __attribute__ { KEYWORD_RETURN(ATTRIBUTE); } // GCC 210 210 auto { KEYWORD_RETURN(AUTO); } 211 basetypeof { KEYWORD_RETURN(BASETYPEOF); } // CFA212 211 _Bool { KEYWORD_RETURN(BOOL); } // C99 213 212 break { KEYWORD_RETURN(BREAK); } -
src/Parser/parser.yy
r95b8aa7 rff5caaf 10 10 // Created On : Sat Sep 1 20:22:55 2001 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Thu Nov 8 18:08:23201813 // Update Count : 40 5212 // Last Modified On : Thu Aug 30 17:02:25 2018 13 // Update Count : 4029 14 14 // 15 15 … … 186 186 } // fieldDecl 187 187 188 ExpressionNode *forInc( const OperKinds op ) { 189 return new ExpressionNode( build_constantInteger( *new string( op == OperKinds::LThan || op == OperKinds::LEThan ? "1" : "-1" ) ) ); 190 } // forInc 191 188 192 ForCtrl * forCtrl( ExpressionNode * type, string * index, ExpressionNode * start, enum OperKinds compop, ExpressionNode * comp, ExpressionNode * inc ) { 189 ConstantExpr * constant = dynamic_cast<ConstantExpr *>(type->get_expr());193 ConstantExpr *constant = dynamic_cast<ConstantExpr *>(type->get_expr()); 190 194 if ( constant && (constant->get_constant()->get_value() == "0" || constant->get_constant()->get_value() == "1") ) { 191 195 type = new ExpressionNode( new CastExpr( maybeMoveBuild< Expression >(type), new BasicType( Type::Qualifiers(), BasicType::SignedInt ) ) ); 192 196 } // if 193 197 return new ForCtrl( 194 distAttr( DeclarationNode::newTypeof( type , true), DeclarationNode::newName( index )->addInitializer( new InitializerNode( start ) ) ),198 distAttr( DeclarationNode::newTypeof( type ), DeclarationNode::newName( index )->addInitializer( new InitializerNode( start ) ) ), 195 199 new ExpressionNode( build_binary_val( compop, new ExpressionNode( build_varref( new string( *index ) ) ), comp ) ), 196 new ExpressionNode( build_binary_val( compop == OperKinds::LThan || compop == OperKinds::LEThan ? // choose += or -= for upto/downto 197 OperKinds::PlusAssn : OperKinds::MinusAssn, new ExpressionNode( build_varref( new string( *index ) ) ), inc ) ) ); 198 } // forCtrl 199 200 ForCtrl * forCtrl( ExpressionNode * type, ExpressionNode * index, ExpressionNode * start, enum OperKinds compop, ExpressionNode * comp, ExpressionNode * inc ) { 201 if ( NameExpr * identifier = dynamic_cast<NameExpr *>(index->get_expr()) ) { 202 return forCtrl( type, new string( identifier->name ), start, compop, comp, inc ); 203 } else { 204 SemanticError( yylloc, "Expression disallowed. Only loop-index name allowed" ); return nullptr; 205 } // if 200 new ExpressionNode( build_binary_val( OperKinds::PlusAssn, new ExpressionNode( build_varref( new string( *index ) ) ), inc ) ) ); 206 201 } // forCtrl 207 202 … … 266 261 %token ZERO_T ONE_T // CFA 267 262 %token VALIST // GCC 268 %token TYPEOF BASETYPEOF LABEL// GCC263 %token TYPEOF LABEL // GCC 269 264 %token ENUM STRUCT UNION 270 265 %token EXCEPTION // CFA … … 641 636 { $$ = new ExpressionNode( build_fieldSel( $1, build_tuple( $4 ) ) ); } 642 637 | postfix_expression ARROW no_attr_identifier 643 { $$ = new ExpressionNode( build_pfieldSel( $1, build_varref( $3 ) ) ); } 638 { 639 $$ = new ExpressionNode( build_pfieldSel( $1, *$3 == "0" || *$3 == "1" ? build_constantInteger( *$3 ) : build_varref( $3 ) ) ); 640 } 644 641 | postfix_expression ARROW INTEGERconstant // CFA, tuple index 645 642 { $$ = new ExpressionNode( build_pfieldSel( $1, build_constantInteger( *$3 ) ) ); } … … 1140 1137 | FOR '(' push for_control_expression ')' statement pop 1141 1138 { $$ = new StatementNode( build_for( $4, $6 ) ); } 1142 | FOR '(' ')' statement // CFA => for ( ;; )1143 { $$ = new StatementNode( build_for( new ForCtrl( (ExpressionNode * )nullptr, (ExpressionNode * )nullptr, (ExpressionNode * )nullptr ), $4 ) ); }1144 1139 ; 1145 1140 1146 1141 for_control_expression: 1147 comma_expression // CFA 1148 { $$ = forCtrl( $1, new string( DeclarationNode::anonymous.newName() ), new ExpressionNode( build_constantInteger( *new string( "0" ) ) ), 1149 OperKinds::LThan, $1->clone(), new ExpressionNode( build_constantInteger( *new string( "1" ) ) ) ); } 1142 comma_expression_opt // CFA 1143 { 1144 if ( ! $1 ) { // => for ( ;; ) 1145 $$ = new ForCtrl( (ExpressionNode * )nullptr, (ExpressionNode * )nullptr, (ExpressionNode * )nullptr ); 1146 } else { 1147 $$ = forCtrl( $1, new string( DeclarationNode::anonymous.newName() ), new ExpressionNode( build_constantInteger( *new string( "0" ) ) ), 1148 OperKinds::LThan, $1->clone(), forInc( OperKinds::LThan ) ); 1149 } // if 1150 } 1150 1151 | constant_expression inclexcl constant_expression // CFA 1151 { $$ = forCtrl( $1, new string( DeclarationNode::anonymous.newName() ), $1->clone(), $2, $3, new ExpressionNode( build_constantInteger( *new string( "1" ) )) ); }1152 { $$ = forCtrl( $1, new string( DeclarationNode::anonymous.newName() ), $1->clone(), $2, $3, forInc( $2 ) ); } 1152 1153 | constant_expression inclexcl constant_expression '~' constant_expression // CFA 1153 1154 { $$ = forCtrl( $1, new string( DeclarationNode::anonymous.newName() ), $1->clone(), $2, $3, $5 ); } 1154 | comma_expression ';' comma_expression // CFA 1155 { $$ = forCtrl( $3, $1, new ExpressionNode( build_constantInteger( *new string( "0" ) ) ), 1156 OperKinds::LThan, $3->clone(), new ExpressionNode( build_constantInteger( *new string( "1" ) ) ) ); } 1157 | comma_expression ';' constant_expression inclexcl constant_expression // CFA 1158 { $$ = forCtrl( $3, $1, $3->clone(), $4, $5, new ExpressionNode( build_constantInteger( *new string( "1" ) ) ) ); } 1159 | comma_expression ';' constant_expression inclexcl constant_expression '~' constant_expression // CFA 1160 { $$ = forCtrl( $3, $1, $3->clone(), $4, $5, $7 ); } 1161 | comma_expression ';' comma_expression_opt ';' comma_expression_opt 1155 | comma_expression_opt ';' comma_expression // CFA 1156 { 1157 if ( ! $1 ) { 1158 SemanticError( yylloc, "Missing loop index." ); $$ = nullptr; 1159 } else if ( ! $3 ) { 1160 SemanticError( yylloc, "Missing loop range." ); $$ = nullptr; 1161 } else { 1162 if ( NameExpr *identifier = dynamic_cast<NameExpr *>($1->get_expr()) ) { 1163 $$ = forCtrl( $3, new string( identifier->name ), new ExpressionNode( build_constantInteger( *new string( "0" ) ) ), 1164 OperKinds::LThan, $3->clone(), forInc( OperKinds::LThan ) ); 1165 } else { 1166 SemanticError( yylloc, "Expression disallowed. Only loop-index name allowed" ); $$ = nullptr; 1167 } // if 1168 } // if 1169 } 1170 | comma_expression_opt ';' constant_expression inclexcl constant_expression // CFA 1171 { 1172 if ( ! $1 ) { 1173 SemanticError( yylloc, "Missing loop index." ); $$ = nullptr; 1174 } else { 1175 if ( NameExpr *identifier = dynamic_cast<NameExpr *>($1->get_expr()) ) { 1176 $$ = forCtrl( $3, new string( identifier->name ), $3->clone(), $4, $5, forInc( $4 ) ); 1177 } else { 1178 SemanticError( yylloc, "Expression disallowed. Only loop-index name allowed" ); $$ = nullptr; 1179 } // if 1180 } // if 1181 } 1182 | comma_expression_opt ';' constant_expression inclexcl constant_expression '~' constant_expression // CFA 1183 { 1184 if ( ! $1 ) { 1185 SemanticError( yylloc, "Missing loop index." ); $$ = nullptr; 1186 } else { 1187 if ( NameExpr *identifier = dynamic_cast<NameExpr *>($1->get_expr()) ) { 1188 $$ = forCtrl( $3, new string( identifier->name ), $3->clone(), $4, $5, $7 ); 1189 } else { 1190 SemanticError( yylloc, "Expression disallowed. Only loop-index name allowed" ); $$ = nullptr; 1191 } // if 1192 } // if 1193 } 1194 | comma_expression_opt ';' comma_expression_opt ';' comma_expression_opt 1162 1195 { $$ = new ForCtrl( $1, $3, $5 ); } 1163 | ';' comma_expression_opt ';' comma_expression_opt1164 { $$ = new ForCtrl( (ExpressionNode * )nullptr, $2, $4 ); }1165 1196 | declaration comma_expression_opt ';' comma_expression_opt // C99, declaration has ';' 1166 1197 { $$ = new ForCtrl( $1, $2, $4 ); } … … 1824 1855 1825 1856 indirect_type: 1826 TYPEOF '(' type ')' // GCC: typeof( x) y;1857 TYPEOF '(' type ')' // GCC: typeof(x) y; 1827 1858 { $$ = $3; } 1828 | TYPEOF '(' comma_expression ')' // GCC: typeof( a+b) y;1859 | TYPEOF '(' comma_expression ')' // GCC: typeof(a+b) y; 1829 1860 { $$ = DeclarationNode::newTypeof( $3 ); } 1830 | BASETYPEOF '(' type ')' // CFA: basetypeof( x ) y; 1831 { $$ = DeclarationNode::newTypeof( new ExpressionNode( new TypeExpr( maybeMoveBuildType( $3 ) ) ), true ); } 1832 | BASETYPEOF '(' comma_expression ')' // CFA: basetypeof( a+b ) y; 1833 { $$ = DeclarationNode::newTypeof( $3, true ); } 1834 | ATTR_TYPEGENname '(' type ')' // CFA: e.g., @type( x ) y; 1861 | ATTR_TYPEGENname '(' type ')' // CFA: e.g., @type(x) y; 1835 1862 { $$ = DeclarationNode::newAttr( $1, $3 ); } 1836 | ATTR_TYPEGENname '(' comma_expression ')' // CFA: e.g., @type( a+b) y;1863 | ATTR_TYPEGENname '(' comma_expression ')' // CFA: e.g., @type(a+b) y; 1837 1864 { $$ = DeclarationNode::newAttr( $1, $3 ); } 1838 1865 | ZERO_T // CFA -
src/ResolvExpr/Alternative.cc
r95b8aa7 rff5caaf 105 105 106 106 Alternative::~Alternative() { 107 for ( AssertionItem& n : need ) { delete n.decl; }108 107 delete expr; 109 108 } … … 120 119 os << "Null expression!" << std::endl; 121 120 } // if 122 os << indent << "Environment: ";121 os << indent << "Environment: "; 123 122 env.print( os, indent+1 ); 124 123 os << std::endl; -
src/ResolvExpr/AlternativeFinder.cc
r95b8aa7 rff5caaf 9 9 // Author : Richard C. Bilson 10 10 // Created On : Sat May 16 23:52:08 2015 11 // Last Modified By : Peter A. Buhr12 // Last Modified On : Thu Nov 1 21:00:56201813 // Update Count : 3 511 // Last Modified By : Aaron B. Moss 12 // Last Modified On : Fri Oct -5 10:01:00 2018 13 // Update Count : 34 14 14 // 15 15 … … 500 500 needAssertions[ *assert ].isUsed = true; 501 501 } 502 } 503 } 502 /// needAssertions.insert( needAssertions.end(), (*tyvar)->get_assertions().begin(), (*tyvar)->get_assertions().end() ); 503 } 504 } 505 506 // template< typename ForwardIterator, typename OutputIterator > 507 // void inferRecursive( ForwardIterator begin, ForwardIterator end, const Alternative &newAlt, OpenVarSet &openVars, const SymTab::Indexer &decls, const AssertionSet &newNeed, int level, const SymTab::Indexer &indexer, OutputIterator out ) { 508 // if ( newAlt.cost == Cost::infinity ) return; // don't proceed down this dead end 509 // if ( begin == end ) { 510 // if ( newNeed.empty() ) { 511 // PRINT( 512 // std::cerr << "all assertions satisfied, output alternative: "; 513 // newAlt.print( std::cerr ); 514 // std::cerr << std::endl; 515 // ); 516 // *out++ = newAlt; 517 // return; 518 // } else if ( level >= recursionLimit ) { 519 // SemanticError( newAlt.expr->location, "Too many recursive assertions" ); 520 // } else { 521 // AssertionSet newerNeed; 522 // PRINT( 523 // std::cerr << "recursing with new set:" << std::endl; 524 // printAssertionSet( newNeed, std::cerr, 8 ); 525 // ) 526 // inferRecursive( newNeed.begin(), newNeed.end(), newAlt, openVars, decls, newerNeed, level+1, indexer, out ); 527 // return; 528 // } 529 // } 530 531 // ForwardIterator cur = begin++; 532 // if ( ! cur->second.isUsed ) { 533 // inferRecursive( begin, end, newAlt, openVars, decls, newNeed, level, indexer, out ); 534 // return; // xxx - should this continue? previously this wasn't here, and it looks like it should be 535 // } 536 // DeclarationWithType *curDecl = cur->first; 537 538 // PRINT( 539 // std::cerr << "inferRecursive: assertion is "; 540 // curDecl->print( std::cerr ); 541 // std::cerr << std::endl; 542 // ) 543 // std::list< SymTab::Indexer::IdData > candidates; 544 // decls.lookupId( curDecl->get_name(), candidates ); 545 // /// if ( candidates.empty() ) { std::cerr << "no candidates!" << std::endl; } 546 // for ( const auto & data : candidates ) { 547 // DeclarationWithType * candidate = data.id; 548 // PRINT( 549 // std::cerr << "inferRecursive: candidate is "; 550 // candidate->print( std::cerr ); 551 // std::cerr << std::endl; 552 // ) 553 554 // AssertionSet newHave, newerNeed( newNeed ); 555 // TypeEnvironment newEnv( newAlt.env ); 556 // OpenVarSet newOpenVars( openVars ); 557 // Type *adjType = candidate->get_type()->clone(); 558 // adjustExprType( adjType, newEnv, indexer ); 559 // renameTyVars( adjType ); 560 // PRINT( 561 // std::cerr << "unifying "; 562 // curDecl->get_type()->print( std::cerr ); 563 // std::cerr << " with "; 564 // adjType->print( std::cerr ); 565 // std::cerr << std::endl; 566 // ) 567 // if ( unify( curDecl->get_type(), adjType, newEnv, newerNeed, newHave, newOpenVars, indexer ) ) { 568 // PRINT( 569 // std::cerr << "success!" << std::endl; 570 // ) 571 // SymTab::Indexer newDecls( decls ); 572 // addToIndexer( newHave, newDecls ); 573 // Alternative newerAlt( newAlt ); 574 // newerAlt.env = newEnv; 575 // assertf( candidate->get_uniqueId(), "Assertion candidate does not have a unique ID: %s", toString( candidate ).c_str() ); 576 577 // // everything with an empty idChain was pulled in by the current assertion. 578 // // add current assertion's idChain + current assertion's ID so that the correct inferParameters can be found. 579 // for ( auto & a : newerNeed ) { 580 // if ( a.second.idChain.empty() ) { 581 // a.second.idChain = cur->second.idChain; 582 // a.second.idChain.push_back( curDecl->get_uniqueId() ); 583 // } 584 // } 585 586 // Expression *varExpr = data.combine( newerAlt.cvtCost ); 587 // delete varExpr->get_result(); 588 // varExpr->set_result( adjType->clone() ); 589 // PRINT( 590 // std::cerr << "satisfying assertion " << curDecl->get_uniqueId() << " "; 591 // curDecl->print( std::cerr ); 592 // std::cerr << " with declaration " << candidate->get_uniqueId() << " "; 593 // candidate->print( std::cerr ); 594 // std::cerr << std::endl; 595 // ) 596 // // follow the current assertion's ID chain to find the correct set of inferred parameters to add the candidate to (i.e. the set of inferred parameters belonging to the entity which requested the assertion parameter). 597 // InferredParams * inferParameters = &newerAlt.expr->inferParams; 598 // for ( UniqueId id : cur->second.idChain ) { 599 // inferParameters = (*inferParameters)[ id ].inferParams.get(); 600 // } 601 // // XXX: this is a memory leak, but adjType can't be deleted because it might contain assertions 602 // (*inferParameters)[ curDecl->get_uniqueId() ] = ParamEntry( candidate->get_uniqueId(), adjType->clone(), curDecl->get_type()->clone(), varExpr ); 603 // inferRecursive( begin, end, newerAlt, newOpenVars, newDecls, newerNeed, level, indexer, out ); 604 // } else { 605 // delete adjType; 606 // } 607 // } 608 // } 504 609 505 610 /// Unique identifier for matching expression resolutions to their requesting expression … … 508 613 template< typename OutputIterator > 509 614 void AlternativeFinder::Finder::inferParameters( Alternative &newAlt, OutputIterator out ) { 615 // SymTab::Indexer decls( indexer ); 616 // addToIndexer( have, decls ); 617 // AssertionSet newNeed; 618 // PRINT( 619 // std::cerr << "env is: " << std::endl; 620 // newAlt.env.print( std::cerr, 0 ); 621 // std::cerr << std::endl; 622 // ) 623 624 // inferRecursive( need.begin(), need.end(), newAlt, openVars, decls, newNeed, 0, indexer, out ); 625 510 626 // Set need bindings for any unbound assertions 511 627 UniqueId crntResnSlot = 0; // matching ID for this expression's assertions … … 1229 1345 Alternative newAlt{ 1230 1346 restructureCast( alt.expr->clone(), toType, castExpr->isGenerated ), 1231 alt.env, openVars, needAssertions, alt.cost + thisCost, thisCost };1347 alt.env, openVars, needAssertions, alt.cost, thisCost }; 1232 1348 inferParameters( newAlt, back_inserter( candidates ) ); 1233 1349 } // if … … 1257 1373 /// Gets name from untyped member expression (member must be NameExpr) 1258 1374 const std::string& get_member_name( UntypedMemberExpr *memberExpr ) { 1259 if ( dynamic_cast< ConstantExpr * >( memberExpr->get_member() ) ) {1260 SemanticError( memberExpr, "Indexed access to struct fields unsupported: " );1261 } // if1262 1375 NameExpr * nameExpr = dynamic_cast< NameExpr * >( memberExpr->get_member() ); 1263 1376 assert( nameExpr ); -
src/ResolvExpr/ConversionCost.cc
r95b8aa7 rff5caaf 29 29 namespace ResolvExpr { 30 30 const Cost Cost::zero = Cost{ 0, 0, 0, 0, 0, 0 }; 31 const Cost Cost::infinity = Cost{ -1, -1, -1, -1,1, -1 };31 const Cost Cost::infinity = Cost{ -1, -1, -1, 1, -1, -1 }; 32 32 const Cost Cost::unsafe = Cost{ 1, 0, 0, 0, 0, 0 }; 33 33 const Cost Cost::poly = Cost{ 0, 1, 0, 0, 0, 0 }; 34 const Cost Cost:: safe =Cost{ 0, 0, 1, 0, 0, 0 };35 const Cost Cost:: var = Cost{ 0, 0, 0,1, 0, 0 };36 const Cost Cost::s pec = Cost{ 0, 0, 0, 0, -1, 0 };34 const Cost Cost::var = Cost{ 0, 0, 1, 0, 0, 0 }; 35 const Cost Cost::spec = Cost{ 0, 0, 0, -1, 0, 0 }; 36 const Cost Cost::safe = Cost{ 0, 0, 0, 0, 1, 0 }; 37 37 const Cost Cost::reference = Cost{ 0, 0, 0, 0, 0, 1 }; 38 38 -
src/ResolvExpr/Cost.h
r95b8aa7 rff5caaf 21 21 class Cost { 22 22 private: 23 Cost( int unsafeCost, int polyCost, int safeCost, int varCost, int specCost,24 int referenceCost );23 Cost( int unsafeCost, int polyCost, int varCost, int specCost, int safeCost, 24 int referenceCost ); 25 25 26 26 public: 27 27 Cost & incUnsafe( int inc = 1 ); 28 28 Cost & incPoly( int inc = 1 ); 29 Cost & incSafe( int inc = 1 );30 29 Cost & incVar( int inc = 1 ); 31 30 Cost & decSpec( int inc = 1 ); 31 Cost & incSafe( int inc = 1 ); 32 32 Cost & incReference( int inc = 1 ); 33 33 34 34 int get_unsafeCost() const { return unsafeCost; } 35 35 int get_polyCost() const { return polyCost; } 36 int get_safeCost() const { return safeCost; }37 36 int get_varCost() const { return varCost; } 38 37 int get_specCost() const { return specCost; } 38 int get_safeCost() const { return safeCost; } 39 39 int get_referenceCost() const { return referenceCost; } 40 40 … … 54 54 static const Cost unsafe; 55 55 static const Cost poly; 56 static const Cost safe;57 56 static const Cost var; 58 57 static const Cost spec; 58 static const Cost safe; 59 59 static const Cost reference; 60 60 … … 62 62 int unsafeCost; ///< Unsafe (narrowing) conversions 63 63 int polyCost; ///< Count of parameters and return values bound to some poly type 64 int safeCost; ///< Safe (widening) conversions65 64 int varCost; ///< Count of polymorphic type variables 66 65 int specCost; ///< Polymorphic type specializations (type assertions), negative cost 66 int safeCost; ///< Safe (widening) conversions 67 67 int referenceCost; ///< reference conversions 68 68 }; 69 69 70 inline Cost::Cost( int unsafeCost, int polyCost, int safeCost, int varCost, int specCost,70 inline Cost::Cost( int unsafeCost, int polyCost, int varCost, int specCost, int safeCost, 71 71 int referenceCost ) 72 : unsafeCost( unsafeCost ), polyCost( polyCost ), safeCost( safeCost ), varCost( varCost ),73 s pecCost( specCost ), referenceCost( referenceCost ) {}72 : unsafeCost( unsafeCost ), polyCost( polyCost ), varCost( varCost ), specCost( specCost ), 73 safeCost( safeCost ), referenceCost( referenceCost ) {} 74 74 75 75 inline Cost & Cost::incUnsafe( int inc ) { … … 85 85 } 86 86 87 inline Cost & Cost::incVar( int inc ) { 88 if ( *this == infinity ) return *this; 89 varCost += inc; 90 return *this; 91 } 92 93 inline Cost& Cost::decSpec( int dec ) { 94 if ( *this == infinity ) return *this; 95 specCost -= dec; 96 return *this; 97 } 98 87 99 inline Cost & Cost::incSafe( int inc ) { 88 100 if ( *this == infinity ) return *this; 89 101 safeCost += inc; 90 return *this;91 }92 93 inline Cost & Cost::incVar( int inc ) {94 if ( *this == infinity ) return *this;95 varCost += inc;96 return *this;97 }98 99 inline Cost& Cost::decSpec( int dec ) {100 if ( *this == infinity ) return *this;101 specCost -= dec;102 102 return *this; 103 103 } … … 112 112 if ( *this == infinity || other == infinity ) return infinity; 113 113 return Cost{ 114 unsafeCost + other.unsafeCost, polyCost + other.polyCost, safeCost + other.safeCost,114 unsafeCost + other.unsafeCost, polyCost + other.polyCost, 115 115 varCost + other.varCost, specCost + other.specCost, 116 referenceCost + other.referenceCost };116 safeCost + other.safeCost, referenceCost + other.referenceCost }; 117 117 } 118 118 … … 120 120 if ( *this == infinity || other == infinity ) return infinity; 121 121 return Cost{ 122 unsafeCost - other.unsafeCost, polyCost - other.polyCost, safeCost - other.safeCost,122 unsafeCost - other.unsafeCost, polyCost - other.polyCost, 123 123 varCost - other.varCost, specCost - other.specCost, 124 referenceCost - other.referenceCost };124 safeCost - other.safeCost, referenceCost - other.referenceCost }; 125 125 } 126 126 … … 133 133 unsafeCost += other.unsafeCost; 134 134 polyCost += other.polyCost; 135 safeCost += other.safeCost;136 135 varCost += other.varCost; 137 136 specCost += other.specCost; 137 safeCost += other.safeCost; 138 138 referenceCost += other.referenceCost; 139 139 return *this; … … 152 152 } else if ( polyCost < other.polyCost ) { 153 153 return true; 154 } else if ( varCost > other.varCost ) { 155 return false; 156 } else if ( varCost < other.varCost ) { 157 return true; 158 } else if ( specCost > other.specCost ) { 159 return false; 160 } else if ( specCost > other.specCost ) { 161 return true; 154 162 } else if ( safeCost > other.safeCost ) { 155 163 return false; 156 164 } else if ( safeCost < other.safeCost ) { 157 return true;158 } else if ( varCost > other.varCost ) {159 return false;160 } else if ( varCost < other.varCost ) {161 return true;162 } else if ( specCost > other.specCost ) {163 return false;164 } else if ( specCost > other.specCost ) {165 165 return true; 166 166 } else if ( referenceCost > other.referenceCost ) { … … 179 179 int c = unsafeCost - other.unsafeCost; if ( c ) return c; 180 180 c = polyCost - other.polyCost; if ( c ) return c; 181 c = safeCost - other.safeCost; if ( c ) return c;182 181 c = varCost - other.varCost; if ( c ) return c; 183 182 c = specCost - other.specCost; if ( c ) return c; 183 c = safeCost - other.safeCost; if ( c ) return c; 184 184 return referenceCost - other.referenceCost; 185 185 } … … 188 188 return unsafeCost == other.unsafeCost 189 189 && polyCost == other.polyCost 190 && safeCost == other.safeCost191 190 && varCost == other.varCost 192 191 && specCost == other.specCost 192 && safeCost == other.safeCost 193 193 && referenceCost == other.referenceCost; 194 194 } … … 200 200 inline std::ostream &operator<<( std::ostream &os, const Cost &cost ) { 201 201 return os << "( " << cost.unsafeCost << ", " << cost.polyCost << ", " 202 << cost. safeCost << ", " << cost.varCost << ", " << cost.specCost << ", "203 << cost. referenceCost << " )";202 << cost.varCost << ", " << cost.specCost << ", " 203 << cost.safeCost << ", " << cost.referenceCost << " )"; 204 204 } 205 205 } // namespace ResolvExpr -
src/ResolvExpr/ResolveAssertions.cc
r95b8aa7 rff5caaf 275 275 std::move(newNeed), std::move(newOpenVars), crntResnSlot ); 276 276 } else { 277 delete adjType;277 //delete adjType; 278 278 } 279 279 } … … 396 396 Cost resCost = coster.get( compat ); 397 397 auto it = found.emplace( SymTab::Mangler::mangleType( resType ), resCost ); 398 delete resType;399 398 if ( it.second == false && it.first->second < resCost ) continue; 400 399 -
src/ResolvExpr/ResolveTypeof.cc
r95b8aa7 rff5caaf 67 67 std::cerr << std::endl; 68 68 #endif 69 // pass on null expression 70 if ( ! typeofType->expr ) return typeofType; 71 72 bool isBasetypeof = typeofType->is_basetypeof; 73 auto oldQuals = typeofType->get_qualifiers().val; 74 75 Type* newType; 76 if ( TypeExpr* tyExpr = dynamic_cast<TypeExpr*>(typeofType->expr) ) { 77 // typeof wrapping type 78 newType = tyExpr->type; 79 tyExpr->type = nullptr; 80 delete tyExpr; 81 } else { 82 // typeof wrapping expression 69 if ( typeofType->expr ) { 83 70 Expression * newExpr = resolveInVoidContext( typeofType->expr, indexer ); 84 71 assert( newExpr->result && ! newExpr->result->isVoid() ); 85 newType = newExpr->result;72 Type * newType = newExpr->result; 86 73 newExpr->result = nullptr; 87 74 delete typeofType; 88 75 delete newExpr; 89 } 90 91 // clear qualifiers for base, combine with typeoftype quals in any case 92 if ( isBasetypeof ) { 93 // replace basetypeof(<enum>) by int 94 if ( dynamic_cast<EnumInstType*>(newType) ) { 95 Type* newerType = 96 new BasicType{ newType->get_qualifiers(), BasicType::SignedInt, 97 newType->attributes }; 98 delete newType; 99 newType = newerType; 100 } 101 newType->get_qualifiers().val 102 = ( newType->get_qualifiers().val & ~Type::Qualifiers::Mask ) | oldQuals; 103 } else { 104 newType->get_qualifiers().val |= oldQuals; 105 } 106 107 return newType; 76 return newType; 77 } // if 78 return typeofType; 108 79 } 109 80 } // namespace ResolvExpr -
src/SynTree/Expression.cc
r95b8aa7 rff5caaf 376 376 os << "Untyped Member Expression, with field: " << std::endl << indent+1; 377 377 member->print(os, indent+1 ); 378 os << indent << "... from aggregate: " << std::endl << indent+1;378 os << indent << "... from aggregate: " << std::endl << indent+1; 379 379 aggregate->print(os, indent+1); 380 380 Expression::print( os, indent ); … … 405 405 406 406 void MemberExpr::print( std::ostream &os, Indenter indent ) const { 407 os << "Member Expression, with field: " << std::endl;407 os << "Member Expression, with field: " << std::endl; 408 408 os << indent+1; 409 409 member->print( os, indent+1 ); 410 os << std::endl << indent << "... from aggregate: " << std::endl << indent+1;410 os << std::endl << indent << "... from aggregate: " << std::endl << indent+1; 411 411 aggregate->print(os, indent + 1); 412 412 Expression::print( os, indent ); -
src/SynTree/FunctionDecl.cc
r95b8aa7 rff5caaf 87 87 88 88 if ( statements ) { 89 os << indent << "... with body " << endl << indent+1;89 os << indent << "... with body " << endl << indent+1; 90 90 statements->print( os, indent+1 ); 91 91 } // if -
src/SynTree/FunctionType.cc
r95b8aa7 rff5caaf 66 66 os << indent+1 << "accepting unspecified arguments" << endl; 67 67 } // if 68 os << indent << "... returning ";68 os << indent << "... returning "; 69 69 if ( returnVals.empty() ) { 70 os << " nothing" << endl;70 os << "nothing " << endl; 71 71 } else { 72 72 os << endl; -
src/SynTree/ObjectDecl.cc
r95b8aa7 rff5caaf 66 66 67 67 if ( ! attributes.empty() ) { 68 os << std::endl << indent << "... with attributes: " << std::endl;68 os << std::endl << indent << "... with attributes: " << std::endl; 69 69 printAll( attributes, os, indent+1 ); 70 70 } -
src/SynTree/ReferenceToType.cc
r95b8aa7 rff5caaf 93 93 else { 94 94 Type::print( os, indent ); 95 os << "instance of " << typeString() << " " << name << " with body " << baseStruct->has_body() ;95 os << "instance of " << typeString() << " " << name << " with body " << baseStruct->has_body() << " "; 96 96 if ( ! parameters.empty() ) { 97 97 os << endl << indent << "... with parameters" << endl; … … 136 136 else { 137 137 Type::print( os, indent ); 138 os << "instance of " << typeString() << " " << name << " with body " << baseUnion->has_body() ;138 os << "instance of " << typeString() << " " << name << " with body " << baseUnion->has_body() << " "; 139 139 if ( ! parameters.empty() ) { 140 140 os << endl << indent << "... with parameters" << endl; … … 160 160 else { 161 161 Type::print( os, indent ); 162 os << "instance of " << typeString() << " " << name << " with body " << baseEnum->has_body() ;162 os << "instance of " << typeString() << " " << name << " with body " << baseEnum->has_body() << " "; 163 163 } // if 164 164 } -
src/SynTree/Type.h
r95b8aa7 rff5caaf 598 598 class TypeofType : public Type { 599 599 public: 600 Expression *expr; ///< expression to take the type of 601 bool is_basetypeof; ///< true iff is basetypeof type 602 603 TypeofType( const Type::Qualifiers & tq, Expression *expr, const std::list< Attribute * > & attributes = std::list< Attribute * >() ); 604 TypeofType( const Type::Qualifiers & tq, Expression *expr, bool is_basetypeof, 605 const std::list< Attribute * > & attributes = std::list< Attribute * >() ); 600 Expression *expr; 601 602 TypeofType( const Type::Qualifiers & tq, Expression *expr, const std::list< Attribute * > & attributes = std::list< Attribute * >() ); 606 603 TypeofType( const TypeofType& ); 607 604 virtual ~TypeofType(); -
src/SynTree/TypeofType.cc
r95b8aa7 rff5caaf 23 23 class Attribute; 24 24 25 TypeofType::TypeofType( const Type::Qualifiers &tq, Expression *expr, 26 const std::list< Attribute * > & attributes ) 27 : Type( tq, attributes ), expr( expr ), is_basetypeof(false) {} 25 TypeofType::TypeofType( const Type::Qualifiers &tq, Expression *expr, const std::list< Attribute * > & attributes ) : Type( tq, attributes ), expr( expr ) { 26 } 28 27 29 TypeofType::TypeofType( const Type::Qualifiers &tq, Expression *expr, bool is_basetypeof, 30 const std::list< Attribute * > & attributes ) 31 : Type( tq, attributes ), expr( expr ), is_basetypeof( is_basetypeof ) {} 32 33 TypeofType::TypeofType( const TypeofType &other ) 34 : Type( other ), expr( maybeClone( other.expr ) ), is_basetypeof( other.is_basetypeof ) {} 28 TypeofType::TypeofType( const TypeofType &other ) : Type( other ), expr( maybeClone( other.expr ) ) { 29 } 35 30 36 31 TypeofType::~TypeofType() { … … 40 35 void TypeofType::print( std::ostream &os, Indenter indent ) const { 41 36 Type::print( os, indent ); 42 if ( is_basetypeof ) { os << "base-"; }43 37 os << "type-of expression "; 44 38 if ( expr ) { -
src/cfa.make
r95b8aa7 rff5caaf 1 2 3 1 CFACOMPILE = $(CFACC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CFAFLAGS) $(CFAFLAGS) $(AM_CFLAGS) $(CFLAGS) 4 LTCFACOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \5 $(LIBTOOLFLAGS) --mode=compile $(CFACC) $(DEFS) \6 $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CFAFLAGS) $(CFAFLAGS) \7 $(AM_CFLAGS) $(CFLAGS)8 2 9 3 AM_V_CFA = $(am__v_CFA_@AM_V@) … … 16 10 $(CFACOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\ 17 11 $(am__mv) $$depbase.Tpo $$depbase.Po 18 19 .cfa.lo:20 $(AM_V_CFA)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.lo$$||'`;\21 $(LTCFACOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\22 $(am__mv) $$depbase.Tpo $$depbase.Plo23 24 AM_V_JAVAC = $(am__v_JAVAC_@AM_V@)25 am__v_JAVAC_ = $(am__v_JAVAC_@AM_DEFAULT_V@)26 am__v_JAVAC_0 = @echo " JAVAC " $@;27 am__v_JAVAC_1 =28 29 AM_V_GOC = $(am__v_GOC_@AM_V@)30 am__v_GOC_ = $(am__v_GOC_@AM_DEFAULT_V@)31 am__v_GOC_0 = @echo " GOC " $@;32 am__v_GOC_1 =33 34 35 UPPCOMPILE = $(UPPCC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_UPPFLAGS) $(UPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_CFLAGS) $(CFLAGS)36 37 AM_V_UPP = $(am__v_UPP_@AM_V@)38 am__v_UPP_ = $(am__v_UPP_@AM_DEFAULT_V@)39 am__v_UPP_0 = @echo " UPP " $@;40 am__v_UPP_1 = -
src/config.h.in
r95b8aa7 rff5caaf 7 7 #undef CFA_64_CPU 8 8 9 /* Backend compiler to use. */9 /* Location of include files. */ 10 10 #undef CFA_BACKEND_CC 11 11 … … 67 67 #undef HAVE_ALLOCA_H 68 68 69 /* Define to 1 if you have the <dlfcn.h> header file. */70 #undef HAVE_DLFCN_H71 72 69 /* Define to 1 if you have the <fenv.h> header file. */ 73 70 #undef HAVE_FENV_H … … 132 129 /* Define to 1 if the system has the type `_Bool'. */ 133 130 #undef HAVE__BOOL 134 135 /* Define to the sub-directory where libtool stores uninstalled libraries. */136 #undef LT_OBJDIR137 131 138 132 /* Name of package */ -
src/main.cc
r95b8aa7 rff5caaf 487 487 resolvep = true; 488 488 break; 489 case 'R': // dump resolv-proto instance489 case 'R': // dump resolv-proto instance 490 490 resolvprotop = true; 491 491 break; -
tests/.expect/alloc-ERROR.txt
r95b8aa7 rff5caaf 1 alloc.c fa:265:1 error: No reasonable alternatives for expression Applying untyped:1 alloc.c:265:1 error: No reasonable alternatives for expression Applying untyped: 2 2 Name: ?=? 3 3 ...to: … … 19 19 20 20 21 alloc.c fa:266:1 error: No reasonable alternatives for expression Applying untyped:21 alloc.c:266:1 error: No reasonable alternatives for expression Applying untyped: 22 22 Name: ?=? 23 23 ...to: … … 39 39 40 40 41 alloc.c fa:267:1 error: No reasonable alternatives for expression Applying untyped:41 alloc.c:267:1 error: No reasonable alternatives for expression Applying untyped: 42 42 Name: ?=? 43 43 ...to: … … 50 50 51 51 52 alloc.c fa:268:1 error: No reasonable alternatives for expression Applying untyped:52 alloc.c:268:1 error: No reasonable alternatives for expression Applying untyped: 53 53 Name: ?=? 54 54 ...to: -
tests/.expect/castError.txt
r95b8aa7 rff5caaf 1 castError.c fa:7:1 error: Cannot choose between 3 alternatives for expression1 castError.c:7:1 error: Cannot choose between 3 alternatives for expression 2 2 Cast of: 3 3 Name: f … … 7 7 Variable Expression: f: function 8 8 accepting unspecified arguments 9 ... returning nothing 9 ... returning nothing 10 10 11 11 ... to: … … 14 14 char 15 15 ) 16 Environment: 16 Environment: 17 17 18 18 Cost ( 1, 0, 0, 0, 0, 0 ): Cast of: … … 23 23 char 24 24 ) 25 Environment: 25 Environment: 26 26 27 27 Cost ( 1, 0, 0, 0, 0, 0 ): Cast of: … … 32 32 char 33 33 ) 34 Environment: 34 Environment: 35 35 36 36 -
tests/.expect/completeTypeError.txt
r95b8aa7 rff5caaf 1 completeTypeError.c fa:33:1 error: No reasonable alternatives for expression Applying untyped:1 completeTypeError.c:33:1 error: No reasonable alternatives for expression Applying untyped: 2 2 Name: *? 3 3 ...to: 4 4 Name: v 5 5 6 completeTypeError.c fa:34:1 error: No reasonable alternatives for expression Applying untyped:6 completeTypeError.c:34:1 error: No reasonable alternatives for expression Applying untyped: 7 7 Name: *? 8 8 ...to: 9 9 Name: y 10 10 11 completeTypeError.c fa:35:1 error: No reasonable alternatives for expression Applying untyped:11 completeTypeError.c:35:1 error: No reasonable alternatives for expression Applying untyped: 12 12 Name: foo 13 13 ...to: 14 14 Name: v 15 15 16 completeTypeError.c fa:36:1 error: No reasonable alternatives for expression Applying untyped:16 completeTypeError.c:36:1 error: No reasonable alternatives for expression Applying untyped: 17 17 Name: baz 18 18 ...to: 19 19 Name: v 20 20 21 completeTypeError.c fa:37:1 error: No reasonable alternatives for expression Applying untyped:21 completeTypeError.c:37:1 error: No reasonable alternatives for expression Applying untyped: 22 22 Name: quux 23 23 ...to: 24 24 Name: v 25 25 26 completeTypeError.c fa:58:1 error: No reasonable alternatives for expression Applying untyped:26 completeTypeError.c:58:1 error: No reasonable alternatives for expression Applying untyped: 27 27 Name: baz 28 28 ...to: 29 29 Name: y 30 30 31 completeTypeError.c fa:59:1 error: No reasonable alternatives for expression Applying untyped:31 completeTypeError.c:59:1 error: No reasonable alternatives for expression Applying untyped: 32 32 Name: quux 33 33 ...to: 34 34 Name: y 35 35 36 completeTypeError.c fa:60:1 error: No reasonable alternatives for expression Applying untyped:36 completeTypeError.c:60:1 error: No reasonable alternatives for expression Applying untyped: 37 37 Name: *? 38 38 ...to: 39 39 Name: y 40 40 41 completeTypeError.c fa:72:1 error: No resolvable alternatives for expression Applying untyped:41 completeTypeError.c:72:1 error: No resolvable alternatives for expression Applying untyped: 42 42 Name: baz 43 43 ...to: … … 45 45 46 46 Alternatives with failing assertions are: 47 Cost ( 0, 1, 0, 1, -5, 0 ): Application of47 Cost ( 0, 1, 1, -5, 0, 0 ): Application of 48 48 Variable Expression: baz: forall 49 49 T: sized object type … … 53 53 reference to instance of type T (not function type) 54 54 instance of type T (not function type) 55 ... returning 55 ... returning 56 56 _retval__operator_assign: instance of type T (not function type) 57 ... with attributes: 57 ... with attributes: 58 58 Attribute with name: unused 59 59 … … 62 62 ... with parameters 63 63 reference to instance of type T (not function type) 64 ... returning nothing 64 ... returning nothing 65 65 66 66 ?{}: pointer to function … … 68 68 reference to instance of type T (not function type) 69 69 instance of type T (not function type) 70 ... returning nothing 70 ... returning nothing 71 71 72 72 ^?{}: pointer to function 73 73 ... with parameters 74 74 reference to instance of type T (not function type) 75 ... returning nothing 75 ... returning nothing 76 76 77 77 … … 79 79 ... with parameters 80 80 pointer to instance of type T (not function type) 81 ... returning nothing 81 ... returning nothing 82 82 83 83 ... to arguments … … 87 87 void 88 88 ) 89 Environment: ( _73_0_T ) -> instance of type T (not function type) (no widening)89 Environment: ( _73_0_T ) -> instance of type T (not function type) (no widening) 90 90 91 91 -
tests/.expect/declarationErrors.txt
r95b8aa7 rff5caaf 1 declarationErrors.c fa:16:1 error: duplicate static in declaration of x1: static const volatile short int1 declarationErrors.c:16:1 error: duplicate static in declaration of x1: static const volatile short int 2 2 3 declarationErrors.c fa:17:1 error: conflicting extern & static in declaration of x2: extern const volatile short int3 declarationErrors.c:17:1 error: conflicting extern & static in declaration of x2: extern const volatile short int 4 4 5 declarationErrors.c fa:18:1 error: conflicting extern & auto, conflicting extern & static, conflicting extern & static, duplicate extern in declaration of x3: extern const volatile short int5 declarationErrors.c:18:1 error: conflicting extern & auto, conflicting extern & static, conflicting extern & static, duplicate extern in declaration of x3: extern const volatile short int 6 6 7 declarationErrors.c fa:19:1 error: duplicate static in declaration of x4: static const volatile instance of const volatile struct __anonymous07 declarationErrors.c:19:1 error: duplicate static in declaration of x4: static const volatile instance of const volatile struct __anonymous0 8 8 with members 9 9 i: int … … 11 11 12 12 13 declarationErrors.c fa:20:1 error: duplicate const, duplicate static, duplicate volatile in declaration of x5: static const volatile instance of const volatile struct __anonymous113 declarationErrors.c:20:1 error: duplicate const, duplicate static, duplicate volatile in declaration of x5: static const volatile instance of const volatile struct __anonymous1 14 14 with members 15 15 i: int … … 17 17 18 18 19 declarationErrors.c fa:22:1 error: duplicate static in declaration of x6: static const volatile Int19 declarationErrors.c:22:1 error: duplicate static in declaration of x6: static const volatile Int 20 20 21 declarationErrors.c fa:24:1 error: duplicate const in declaration of f01: static inline function21 declarationErrors.c:24:1 error: duplicate const in declaration of f01: static inline function 22 22 with no parameters 23 23 returning const volatile int 24 24 25 25 26 declarationErrors.c fa:25:1 error: duplicate volatile in declaration of f02: static inline function26 declarationErrors.c:25:1 error: duplicate volatile in declaration of f02: static inline function 27 27 with no parameters 28 28 returning const volatile int 29 29 30 30 31 declarationErrors.c fa:26:1 error: duplicate const in declaration of f03: static inline function31 declarationErrors.c:26:1 error: duplicate const in declaration of f03: static inline function 32 32 with no parameters 33 33 returning const volatile int 34 34 35 35 36 declarationErrors.c fa:27:1 error: duplicate volatile in declaration of f04: static inline function36 declarationErrors.c:27:1 error: duplicate volatile in declaration of f04: static inline function 37 37 with no parameters 38 38 returning const volatile int 39 39 40 40 41 declarationErrors.c fa:28:1 error: duplicate const in declaration of f05: static inline function41 declarationErrors.c:28:1 error: duplicate const in declaration of f05: static inline function 42 42 with no parameters 43 43 returning const volatile int 44 44 45 45 46 declarationErrors.c fa:29:1 error: duplicate volatile in declaration of f06: static inline function46 declarationErrors.c:29:1 error: duplicate volatile in declaration of f06: static inline function 47 47 with no parameters 48 48 returning const volatile int 49 49 50 50 51 declarationErrors.c fa:30:1 error: duplicate const in declaration of f07: static inline function51 declarationErrors.c:30:1 error: duplicate const in declaration of f07: static inline function 52 52 with no parameters 53 53 returning const volatile int 54 54 55 55 56 declarationErrors.c fa:31:1 error: duplicate const, duplicate volatile in declaration of f08: static inline function56 declarationErrors.c:31:1 error: duplicate const, duplicate volatile in declaration of f08: static inline function 57 57 with no parameters 58 58 returning const volatile int 59 59 60 60 61 declarationErrors.c fa:33:1 error: duplicate const, duplicate volatile in declaration of f09: static inline function61 declarationErrors.c:33:1 error: duplicate const, duplicate volatile in declaration of f09: static inline function 62 62 with no parameters 63 63 returning const volatile int 64 64 65 65 66 declarationErrors.c fa:34:1 error: duplicate const, duplicate _Atomic, duplicate _Atomic, duplicate const, duplicate restrict, duplicate volatile in declaration of f09: static inline function66 declarationErrors.c:34:1 error: duplicate const, duplicate _Atomic, duplicate _Atomic, duplicate const, duplicate restrict, duplicate volatile in declaration of f09: static inline function 67 67 with no parameters 68 68 returning const restrict volatile _Atomic int -
tests/.expect/nested-types-ERR1.txt
r95b8aa7 rff5caaf 1 nested-types.c fa:70:1 error: Use of undefined type T1 nested-types.c:70:1 error: Use of undefined type T -
tests/.expect/nested-types-ERR2.txt
r95b8aa7 rff5caaf 1 nested-types.c fa:73:1 error: Use of undefined global type Z2 nested-types.c fa:74:1 error: Qualified type requires an aggregate on the left, but has: signed int3 nested-types.c fa:75:1 error: Undefined type in qualified type: Qualified Type:4 instance of struct S with body 1 1 nested-types.c:73:1 error: Use of undefined global type Z 2 nested-types.c:74:1 error: Qualified type requires an aggregate on the left, but has: signed int 3 nested-types.c:75:1 error: Undefined type in qualified type: Qualified Type: 4 instance of struct S with body 1 5 5 instance of type Z (not function type) 6 6 -
tests/.expect/scopeErrors.txt
r95b8aa7 rff5caaf 1 scopeErrors.c fa:2:1 error: duplicate object definition for thisIsAnError: signed int2 scopeErrors.c fa:20:1 error: duplicate function definition for butThisIsAnError: function1 scopeErrors.c:2:1 error: duplicate object definition for thisIsAnError: signed int 2 scopeErrors.c:20:1 error: duplicate function definition for butThisIsAnError: function 3 3 ... with parameters 4 4 double 5 ... returning 5 ... returning 6 6 _retval_butThisIsAnError: double 7 ... with attributes: 7 ... with attributes: 8 8 Attribute with name: unused 9 9 10 ... with body 10 ... with body 11 11 CompoundStmt 12 12 -
tests/.expect/typedefRedef-ERR1.txt
r95b8aa7 rff5caaf 1 typedefRedef.c fa:4:1 error: Cannot redefine typedef: Foo2 typedefRedef.c fa:60:1 error: Cannot redefine typedef: ARR1 typedefRedef.c:4:1 error: Cannot redefine typedef: Foo 2 typedefRedef.c:60:1 error: Cannot redefine typedef: ARR -
tests/Makefile.am
r95b8aa7 rff5caaf 11 11 ## Created On : Sun May 31 09:08:15 2015 12 12 ## Last Modified By : Peter A. Buhr 13 ## Last Modified On : Tue Nov 20 11:18:51201814 ## Update Count : 6813 ## Last Modified On : Wed Jun 6 16:42:20 2018 14 ## Update Count : 49 15 15 ############################################################################### 16 16 17 17 AUTOMAKE_OPTIONS = foreign # do not require all the GNU file names 18 ACLOCAL_AMFLAGS = -I automake19 20 include $(top_srcdir)/src/cfa.make21 18 22 19 debug=yes … … 39 36 40 37 AM_CFLAGS += ${DEBUG_FLAGS} ${INSTALL_FLAGS} ${ARCH_FLAGS} 38 41 39 CC = @CFACC@ 42 40 … … 44 42 45 43 .PHONY: list .validate 46 .INTERMEDIATE: .validate .validate.c fa47 EXTRA_PROGRAMS = avl_test .dummy_hack# build but do not install44 .INTERMEDIATE: .validate .validate.c 45 EXTRA_PROGRAMS = fstream_test avl_test # build but do not install 48 46 49 avl_test_SOURCES = avltree/avl_test.cfa avltree/avl0.cfa avltree/avl1.cfa avltree/avl2.cfa avltree/avl3.cfa avltree/avl4.cfa avltree/avl-private.cfa 50 # automake doesn't know we still need C rules so pretend like we have a C program 51 _dummy_hack_SOURCES = .dummy_hack.c47 fstream_test_SOURCES = fstream_test.c 48 49 avl_test_SOURCES = avltree/avl_test.c avltree/avl0.c avltree/avl1.c avltree/avl2.c avltree/avl3.c avltree/avl4.c avltree/avl-private.c 52 50 53 51 #---------------------------------------------------------------------------------------------------------------- … … 64 62 @+${TEST_PY} --list ${concurrent} 65 63 66 .validate: .validate.c fa67 $(C FACOMPILE) .validate.cfa-fsyntax-only -Wall -Wextra -Werror64 .validate: .validate.c 65 $(COMPILE) .validate.c -fsyntax-only -Wall -Wextra -Werror 68 66 69 .validate.cfa: 70 @echo "int main() { return 0; }" > ${@} 71 72 # automake doesn't know we still need C rules so pretend like we have a C program 73 .dummy_hack.c: 67 .validate.c: 74 68 @echo "int main() { return 0; }" > ${@} 75 69 … … 78 72 79 73 #---------------------------------------------------------------------------------------------------------------- 74 # implicit rule so not all test require a rule 75 % : %.c $(CC) 76 $(PRETTY_PATH) $(COMPILE) $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@}) 80 77 81 # implicit rule so not all test require a rule 82 % : %.cfa $(CFACC) 83 $(PRETTY_PATH) $(CFACOMPILE) $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@}) 78 declarationSpecifier: declarationSpecifier.c $(CC) 79 $(PRETTY_PATH) $(COMPILE) -CFA -XCFA -p $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@}) 84 80 85 declarationSpecifier: declarationSpecifier.cfa $(CFACC)86 $(PRETTY_PATH) $(C FACOMPILE) -CFA -XCFA -p $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@})81 gccExtensions : gccExtensions.c $(CC) 82 $(PRETTY_PATH) $(COMPILE) -CFA -XCFA -p $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@}) 87 83 88 gccExtensions : gccExtensions.cfa $(CFACC)89 $(PRETTY_PATH) $(C FACOMPILE) -CFA -XCFA -p $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@})84 extension : extension.c $(CC) 85 $(PRETTY_PATH) $(COMPILE) -CFA -XCFA -p $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@}) 90 86 91 extension : extension.cfa $(CFACC)92 $(PRETTY_PATH) $(C FACOMPILE) -CFA -XCFA -p $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@})87 attributes : attributes.c $(CC) 88 $(PRETTY_PATH) $(COMPILE) -CFA -XCFA -p $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@}) 93 89 94 attributes : attributes.cfa $(CFACC)95 $(PRETTY_PATH) $(C FACOMPILE) -CFA -XCFA -p $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@})90 functions: functions.c $(CC) 91 $(PRETTY_PATH) $(COMPILE) -CFA -XCFA -p $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@}) 96 92 97 functions: functions.cfa $(CFACC)98 $(PRETTY_PATH) $(C FACOMPILE) -CFA -XCFA -p $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@})93 KRfunctions : KRfunctions.c $(CC) 94 $(PRETTY_PATH) $(COMPILE) -CFA -XCFA -p $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@}) 99 95 100 KRfunctions : KRfunctions.cfa $(CFACC)101 $(PRETTY_PATH) $(C FACOMPILE) -CFA -XCFA -p $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@})96 sched-ext-parse : sched-ext-parse.c $(CC) 97 $(PRETTY_PATH) $(COMPILE) -CFA -XCFA -p $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@}) 102 98 103 sched-ext-parse : sched-ext-parse.c $(CFACC) 104 $(PRETTY_PATH) $(CFACOMPILE) -CFA -XCFA -p $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@}) 105 106 gmp : gmp.cfa $(CFACC) 107 $(PRETTY_PATH) $(CFACOMPILE) -lgmp $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@}) 99 gmp : gmp.c $(CC) 100 $(PRETTY_PATH) $(COMPILE) -lgmp $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@}) 108 101 109 102 #builtins 110 builtins/sync: builtins/sync.c fa $(CFACC)111 $(PRETTY_PATH) $(C FACOMPILE) $(shell realpath --relative-to=${srcdir} ${<}) 2> $(abspath ${@}) -fsyntax-only103 builtins/sync: builtins/sync.c $(CC) 104 $(PRETTY_PATH) $(COMPILE) $(shell realpath --relative-to=${srcdir} ${<}) 2> $(abspath ${@}) -fsyntax-only 112 105 113 106 #------------------------------------------------------------------------------ 107 #To make errors path independent we need to cd into the correct directories 108 completeTypeError : completeTypeError.c $(CC) 109 $(PRETTY_PATH) $(COMPILE) -DERR1 $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@}) 114 110 115 #To make errors path independent we need to cd into the correct directories 116 completeTypeError : completeTypeError.cfa $(CFACC) 117 $(PRETTY_PATH) $(CFACOMPILE) -DERR1 $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@}) 111 typedefRedef-ERR1: typedefRedef.c $(CC) 112 $(PRETTY_PATH) $(COMPILE) -DERR1 $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@}) 118 113 119 typedefRedef-ERR1: typedefRedef.cfa $(CFACC)120 $(PRETTY_PATH) $(C FACOMPILE) -DERR1 $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@})114 alloc-ERROR: alloc.c $(CC) 115 $(PRETTY_PATH) $(COMPILE) -DERR1 $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@}) 121 116 122 alloc-ERROR: alloc.cfa $(CFACC)123 $(PRETTY_PATH) $(C FACOMPILE) -DERR1 $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@})117 fallthrough-ERROR: fallthrough.c $(CC) 118 $(PRETTY_PATH) $(COMPILE) -DERR1 $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@}) 124 119 125 fallthrough-ERROR: fallthrough.cfa $(CFACC)126 $(PRETTY_PATH) $(C FACOMPILE) -DERR1 $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@})120 nested-types-ERR1: nested-types.c $(CC) 121 $(PRETTY_PATH) $(COMPILE) -DERR1 $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@}) 127 122 128 nested-types-ERR1: nested-types.cfa $(CFACC) 129 $(PRETTY_PATH) $(CFACOMPILE) -DERR1 $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@}) 130 131 nested-types-ERR2: nested-types.cfa $(CFACC) 132 $(PRETTY_PATH) $(CFACOMPILE) -DERR2 $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@}) 123 nested-types-ERR2: nested-types.c $(CC) 124 $(PRETTY_PATH) $(COMPILE) -DERR2 $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@}) 133 125 134 126 # Constructor/destructor tests 135 raii/dtor-early-exit-ERR1: raii/dtor-early-exit.c fa $(CFACC)136 $(PRETTY_PATH) $(C FACOMPILE) -DERR1 $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@})127 raii/dtor-early-exit-ERR1: raii/dtor-early-exit.c $(CC) 128 $(PRETTY_PATH) $(COMPILE) -DERR1 $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@}) 137 129 138 raii/dtor-early-exit-ERR2: raii/dtor-early-exit.c fa $(CFACC)139 $(PRETTY_PATH) $(C FACOMPILE) -DERR2 $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@})130 raii/dtor-early-exit-ERR2: raii/dtor-early-exit.c $(CC) 131 $(PRETTY_PATH) $(COMPILE) -DERR2 $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@}) 140 132 141 raii/memberCtors-ERR1: raii/memberCtors.c fa $(CFACC)142 $(PRETTY_PATH) $(C FACOMPILE) -DERR1 $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@})133 raii/memberCtors-ERR1: raii/memberCtors.c $(CC) 134 $(PRETTY_PATH) $(COMPILE) -DERR1 $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@}) 143 135 144 raii/ctor-autogen-ERR1: raii/ctor-autogen.c fa $(CFACC)145 $(PRETTY_PATH) $(C FACOMPILE) -DERR1 $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@})136 raii/ctor-autogen-ERR1: raii/ctor-autogen.c $(CC) 137 $(PRETTY_PATH) $(COMPILE) -DERR1 $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@}) 146 138 147 139 # Warnings 148 warnings/self-assignment: warnings/self-assignment.c fa $(CFACC)149 $(PRETTY_PATH) $(C FACOMPILE) $(shell realpath --relative-to=${srcdir} ${<}) 2> $(abspath ${@}) -fsyntax-only140 warnings/self-assignment: warnings/self-assignment.c $(CC) 141 $(PRETTY_PATH) $(COMPILE) $(shell realpath --relative-to=${srcdir} ${<}) 2> $(abspath ${@}) -fsyntax-only -
tests/Makefile.in
r95b8aa7 rff5caaf 91 91 build_triplet = @build@ 92 92 host_triplet = @host@ 93 EXTRA_PROGRAMS = avl_test$(EXEEXT) .dummy_hack$(EXEEXT)93 EXTRA_PROGRAMS = fstream_test$(EXEEXT) avl_test$(EXEEXT) 94 94 subdir = tests 95 95 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 96 am__aclocal_m4_deps = $(top_srcdir)/automake/libtool.m4 \ 97 $(top_srcdir)/automake/ltoptions.m4 \ 98 $(top_srcdir)/automake/ltsugar.m4 \ 99 $(top_srcdir)/automake/ltversion.m4 \ 100 $(top_srcdir)/automake/lt~obsolete.m4 \ 101 $(top_srcdir)/automake/cfa.m4 $(top_srcdir)/configure.ac 96 am__aclocal_m4_deps = $(top_srcdir)/automake/cfa.m4 \ 97 $(top_srcdir)/configure.ac 102 98 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ 103 99 $(ACLOCAL_M4) … … 107 103 CONFIG_CLEAN_FILES = config.py 108 104 CONFIG_CLEAN_VPATH_FILES = test.py 109 am__dummy_hack_OBJECTS = .dummy_hack.$(OBJEXT)110 _dummy_hack_OBJECTS = $(am__dummy_hack_OBJECTS)111 _dummy_hack_LDADD = $(LDADD)112 AM_V_lt = $(am__v_lt_@AM_V@)113 am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)114 am__v_lt_0 = --silent115 am__v_lt_1 =116 105 am__dirstamp = $(am__leading_dot)dirstamp 117 106 am_avl_test_OBJECTS = avltree/avl_test.$(OBJEXT) \ … … 121 110 avl_test_OBJECTS = $(am_avl_test_OBJECTS) 122 111 avl_test_LDADD = $(LDADD) 112 am_fstream_test_OBJECTS = fstream_test.$(OBJEXT) 113 fstream_test_OBJECTS = $(am_fstream_test_OBJECTS) 114 fstream_test_LDADD = $(LDADD) 123 115 AM_V_P = $(am__v_P_@AM_V@) 124 116 am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) … … 139 131 COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ 140 132 $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) 141 LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \142 $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \143 $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \144 $(AM_CFLAGS) $(CFLAGS)145 133 AM_V_CC = $(am__v_CC_@AM_V@) 146 134 am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@) … … 148 136 am__v_CC_1 = 149 137 CCLD = $(CC) 150 LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ 151 $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ 152 $(AM_LDFLAGS) $(LDFLAGS) -o $@ 138 LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ 153 139 AM_V_CCLD = $(am__v_CCLD_@AM_V@) 154 140 am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@) 155 141 am__v_CCLD_0 = @echo " CCLD " $@; 156 142 am__v_CCLD_1 = 157 SOURCES = $( _dummy_hack_SOURCES) $(avl_test_SOURCES)158 DIST_SOURCES = $( _dummy_hack_SOURCES) $(avl_test_SOURCES)143 SOURCES = $(avl_test_SOURCES) $(fstream_test_SOURCES) 144 DIST_SOURCES = $(avl_test_SOURCES) $(fstream_test_SOURCES) 159 145 am__can_run_installinfo = \ 160 146 case $$AM_UPDATE_INFO_DIR in \ … … 182 168 CTAGS = ctags 183 169 am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/config.py.in \ 184 $(srcdir)/test.py $(top_srcdir)/automake/depcomp \ 185 $(top_srcdir)/src/cfa.make 170 $(srcdir)/test.py $(top_srcdir)/automake/depcomp 186 171 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) 187 172 ACLOCAL = @ACLOCAL@ … … 189 174 AMTAR = @AMTAR@ 190 175 AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ 191 AR = @AR@192 176 AUTOCONF = @AUTOCONF@ 193 177 AUTOHEADER = @AUTOHEADER@ 194 178 AUTOMAKE = @AUTOMAKE@ 195 179 AWK = @AWK@ 180 BACKEND_CC = @BACKEND_CC@ 196 181 BUILD_IN_TREE_FLAGS = @BUILD_IN_TREE_FLAGS@ 197 182 CC = @CFACC@ … … 213 198 CPPFLAGS = @CPPFLAGS@ 214 199 CXX = @CXX@ 215 CXXCPP = @CXXCPP@216 200 CXXDEPMODE = @CXXDEPMODE@ 217 201 CXXFLAGS = @CXXFLAGS@ … … 219 203 DEFS = @DEFS@ 220 204 DEPDIR = @DEPDIR@ 221 DLLTOOL = @DLLTOOL@222 205 DRIVER_DIR = @DRIVER_DIR@ 223 DSYMUTIL = @DSYMUTIL@224 DUMPBIN = @DUMPBIN@225 206 ECHO_C = @ECHO_C@ 226 207 ECHO_N = @ECHO_N@ … … 228 209 EGREP = @EGREP@ 229 210 EXEEXT = @EXEEXT@ 230 FGREP = @FGREP@231 211 GREP = @GREP@ 232 212 HOST_FLAGS = @HOST_FLAGS@ … … 236 216 INSTALL_SCRIPT = @INSTALL_SCRIPT@ 237 217 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ 238 LD = @LD@239 218 LDFLAGS = @LDFLAGS@ 240 219 LEX = @LEX@ … … 245 224 LIBOBJS = @LIBOBJS@ 246 225 LIBS = @LIBS@ 247 LIBTOOL = @LIBTOOL@248 LIPO = @LIPO@249 LN_S = @LN_S@250 226 LTLIBOBJS = @LTLIBOBJS@ 251 LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@252 227 MAKEINFO = @MAKEINFO@ 253 MANIFEST_TOOL = @MANIFEST_TOOL@254 228 MKDIR_P = @MKDIR_P@ 255 NM = @NM@256 NMEDIT = @NMEDIT@257 OBJDUMP = @OBJDUMP@258 229 OBJEXT = @OBJEXT@ 259 OTOOL = @OTOOL@260 OTOOL64 = @OTOOL64@261 230 PACKAGE = @PACKAGE@ 262 231 PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ … … 268 237 PATH_SEPARATOR = @PATH_SEPARATOR@ 269 238 RANLIB = @RANLIB@ 270 SED = @SED@271 239 SET_MAKE = @SET_MAKE@ 272 240 SHELL = @SHELL@ … … 280 248 abs_top_builddir = @abs_top_builddir@ 281 249 abs_top_srcdir = @abs_top_srcdir@ 282 ac_ct_AR = @ac_ct_AR@283 250 ac_ct_CC = @ac_ct_CC@ 284 251 ac_ct_CXX = @ac_ct_CXX@ 285 ac_ct_DUMPBIN = @ac_ct_DUMPBIN@286 252 am__include = @am__include@ 287 253 am__leading_dot = @am__leading_dot@ … … 331 297 top_srcdir = @top_srcdir@ 332 298 AUTOMAKE_OPTIONS = foreign # do not require all the GNU file names 333 ACLOCAL_AMFLAGS = -I automake334 CFACOMPILE = $(CFACC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CFAFLAGS) $(CFAFLAGS) $(AM_CFLAGS) $(CFLAGS)335 LTCFACOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \336 $(LIBTOOLFLAGS) --mode=compile $(CFACC) $(DEFS) \337 $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CFAFLAGS) $(CFAFLAGS) \338 $(AM_CFLAGS) $(CFLAGS)339 340 AM_V_CFA = $(am__v_CFA_@AM_V@)341 am__v_CFA_ = $(am__v_CFA_@AM_DEFAULT_V@)342 am__v_CFA_0 = @echo " CFA " $@;343 am__v_CFA_1 =344 AM_V_JAVAC = $(am__v_JAVAC_@AM_V@)345 am__v_JAVAC_ = $(am__v_JAVAC_@AM_DEFAULT_V@)346 am__v_JAVAC_0 = @echo " JAVAC " $@;347 am__v_JAVAC_1 =348 AM_V_GOC = $(am__v_GOC_@AM_V@)349 am__v_GOC_ = $(am__v_GOC_@AM_DEFAULT_V@)350 am__v_GOC_0 = @echo " GOC " $@;351 am__v_GOC_1 =352 UPPCOMPILE = $(UPPCC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_UPPFLAGS) $(UPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_CFLAGS) $(CFLAGS)353 AM_V_UPP = $(am__v_UPP_@AM_V@)354 am__v_UPP_ = $(am__v_UPP_@AM_DEFAULT_V@)355 am__v_UPP_0 = @echo " UPP " $@;356 am__v_UPP_1 =357 299 debug = yes 358 300 installed = no … … 367 309 ${INSTALL_FLAGS} ${ARCH_FLAGS} 368 310 PRETTY_PATH = cd ${srcdir} && 369 avl_test_SOURCES = avltree/avl_test.cfa avltree/avl0.cfa avltree/avl1.cfa avltree/avl2.cfa avltree/avl3.cfa avltree/avl4.cfa avltree/avl-private.cfa 370 # automake doesn't know we still need C rules so pretend like we have a C program 371 _dummy_hack_SOURCES = .dummy_hack.c 311 fstream_test_SOURCES = fstream_test.c 312 avl_test_SOURCES = avltree/avl_test.c avltree/avl0.c avltree/avl1.c avltree/avl2.c avltree/avl3.c avltree/avl4.c avltree/avl-private.c 372 313 all: all-am 373 314 374 315 .SUFFIXES: 375 .SUFFIXES: .c . cfa .dummy_hack .lo .o .obj .validate376 $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(top_srcdir)/src/cfa.make$(am__configure_deps)316 .SUFFIXES: .c .o .obj .validate 317 $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) 377 318 @for dep in $?; do \ 378 319 case '$(am__configure_deps)' in \ … … 394 335 cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ 395 336 esac; 396 $(top_srcdir)/src/cfa.make $(am__empty):397 337 398 338 $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) … … 406 346 config.py: $(top_builddir)/config.status $(srcdir)/config.py.in 407 347 cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ 408 409 .dummy_hack$(EXEEXT): $(_dummy_hack_OBJECTS) $(_dummy_hack_DEPENDENCIES) $(EXTRA__dummy_hack_DEPENDENCIES)410 @rm -f .dummy_hack$(EXEEXT)411 $(AM_V_CCLD)$(LINK) $(_dummy_hack_OBJECTS) $(_dummy_hack_LDADD) $(LIBS)412 348 avltree/$(am__dirstamp): 413 349 @$(MKDIR_P) avltree … … 435 371 $(AM_V_CCLD)$(LINK) $(avl_test_OBJECTS) $(avl_test_LDADD) $(LIBS) 436 372 373 fstream_test$(EXEEXT): $(fstream_test_OBJECTS) $(fstream_test_DEPENDENCIES) $(EXTRA_fstream_test_DEPENDENCIES) 374 @rm -f fstream_test$(EXEEXT) 375 $(AM_V_CCLD)$(LINK) $(fstream_test_OBJECTS) $(fstream_test_LDADD) $(LIBS) 376 437 377 mostlyclean-compile: 438 378 -rm -f *.$(OBJEXT) … … 442 382 -rm -f *.tab.c 443 383 444 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/.dummy_hack.Po@am__quote@ 384 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fstream_test.Po@am__quote@ 385 @AMDEP_TRUE@@am__include@ @am__quote@avltree/$(DEPDIR)/avl-private.Po@am__quote@ 386 @AMDEP_TRUE@@am__include@ @am__quote@avltree/$(DEPDIR)/avl0.Po@am__quote@ 387 @AMDEP_TRUE@@am__include@ @am__quote@avltree/$(DEPDIR)/avl1.Po@am__quote@ 388 @AMDEP_TRUE@@am__include@ @am__quote@avltree/$(DEPDIR)/avl2.Po@am__quote@ 389 @AMDEP_TRUE@@am__include@ @am__quote@avltree/$(DEPDIR)/avl3.Po@am__quote@ 390 @AMDEP_TRUE@@am__include@ @am__quote@avltree/$(DEPDIR)/avl4.Po@am__quote@ 391 @AMDEP_TRUE@@am__include@ @am__quote@avltree/$(DEPDIR)/avl_test.Po@am__quote@ 445 392 446 393 .c.o: … … 459 406 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ 460 407 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'` 461 462 .c.lo:463 @am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.lo$$||'`;\464 @am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\465 @am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Plo466 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@467 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@468 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $<469 470 mostlyclean-libtool:471 -rm -f *.lo472 473 clean-libtool:474 -rm -rf .libs _libs475 408 476 409 ID: $(am__tagged_files) … … 594 527 clean: clean-am 595 528 596 clean-am: clean-generic clean-l ibtool clean-local mostlyclean-am529 clean-am: clean-generic clean-local mostlyclean-am 597 530 598 531 distclean: distclean-am 599 -rm -rf ./$(DEPDIR) 532 -rm -rf ./$(DEPDIR) avltree/$(DEPDIR) 600 533 -rm -f Makefile 601 534 distclean-am: clean-am distclean-compile distclean-generic \ … … 643 576 644 577 maintainer-clean: maintainer-clean-am 645 -rm -rf ./$(DEPDIR) 578 -rm -rf ./$(DEPDIR) avltree/$(DEPDIR) 646 579 -rm -f Makefile 647 580 maintainer-clean-am: distclean-am maintainer-clean-generic … … 649 582 mostlyclean: mostlyclean-am 650 583 651 mostlyclean-am: mostlyclean-compile mostlyclean-generic \ 652 mostlyclean-libtool 584 mostlyclean-am: mostlyclean-compile mostlyclean-generic 653 585 654 586 pdf: pdf-am … … 665 597 666 598 .PHONY: CTAGS GTAGS TAGS all all-am all-local check check-am clean \ 667 clean-generic clean-libtool clean-local cscopelist-am ctags \ 668 ctags-am distclean distclean-compile distclean-generic \ 669 distclean-libtool distclean-tags distdir dvi dvi-am html \ 670 html-am info info-am install install-am install-data \ 671 install-data-am install-dvi install-dvi-am install-exec \ 672 install-exec-am install-html install-html-am install-info \ 673 install-info-am install-man install-pdf install-pdf-am \ 674 install-ps install-ps-am install-strip installcheck \ 675 installcheck-am installdirs maintainer-clean \ 676 maintainer-clean-generic mostlyclean mostlyclean-compile \ 677 mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ 599 clean-generic clean-local cscopelist-am ctags ctags-am \ 600 distclean distclean-compile distclean-generic distclean-tags \ 601 distdir dvi dvi-am html html-am info info-am install \ 602 install-am install-data install-data-am install-dvi \ 603 install-dvi-am install-exec install-exec-am install-html \ 604 install-html-am install-info install-info-am install-man \ 605 install-pdf install-pdf-am install-ps install-ps-am \ 606 install-strip installcheck installcheck-am installdirs \ 607 maintainer-clean maintainer-clean-generic mostlyclean \ 608 mostlyclean-compile mostlyclean-generic pdf pdf-am ps ps-am \ 678 609 tags tags-am uninstall uninstall-am 679 610 … … 681 612 682 613 683 .cfa.o:684 $(AM_V_CFA)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\685 $(CFACOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\686 $(am__mv) $$depbase.Tpo $$depbase.Po687 688 .cfa.lo:689 $(AM_V_CFA)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.lo$$||'`;\690 $(LTCFACOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\691 $(am__mv) $$depbase.Tpo $$depbase.Plo692 693 614 .PHONY: list .validate 694 .INTERMEDIATE: .validate .validate.c fa615 .INTERMEDIATE: .validate .validate.c 695 616 696 617 #---------------------------------------------------------------------------------------------------------------- … … 707 628 @+${TEST_PY} --list ${concurrent} 708 629 709 .validate: .validate.cfa 710 $(CFACOMPILE) .validate.cfa -fsyntax-only -Wall -Wextra -Werror 711 712 .validate.cfa: 713 @echo "int main() { return 0; }" > ${@} 714 715 # automake doesn't know we still need C rules so pretend like we have a C program 716 .dummy_hack.c: 630 .validate: .validate.c 631 $(COMPILE) .validate.c -fsyntax-only -Wall -Wextra -Werror 632 633 .validate.c: 717 634 @echo "int main() { return 0; }" > ${@} 718 635 … … 721 638 722 639 #---------------------------------------------------------------------------------------------------------------- 723 724 640 # implicit rule so not all test require a rule 725 % : %.c fa $(CFACC)726 $(PRETTY_PATH) $(C FACOMPILE) $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@})727 728 declarationSpecifier: declarationSpecifier.c fa $(CFACC)729 $(PRETTY_PATH) $(C FACOMPILE) -CFA -XCFA -p $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@})730 731 gccExtensions : gccExtensions.c fa $(CFACC)732 $(PRETTY_PATH) $(C FACOMPILE) -CFA -XCFA -p $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@})733 734 extension : extension.c fa $(CFACC)735 $(PRETTY_PATH) $(C FACOMPILE) -CFA -XCFA -p $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@})736 737 attributes : attributes.c fa $(CFACC)738 $(PRETTY_PATH) $(C FACOMPILE) -CFA -XCFA -p $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@})739 740 functions: functions.c fa $(CFACC)741 $(PRETTY_PATH) $(C FACOMPILE) -CFA -XCFA -p $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@})742 743 KRfunctions : KRfunctions.c fa $(CFACC)744 $(PRETTY_PATH) $(C FACOMPILE) -CFA -XCFA -p $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@})745 746 sched-ext-parse : sched-ext-parse.c $(C FACC)747 $(PRETTY_PATH) $(C FACOMPILE) -CFA -XCFA -p $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@})748 749 gmp : gmp.c fa $(CFACC)750 $(PRETTY_PATH) $(C FACOMPILE) -lgmp $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@})641 % : %.c $(CC) 642 $(PRETTY_PATH) $(COMPILE) $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@}) 643 644 declarationSpecifier: declarationSpecifier.c $(CC) 645 $(PRETTY_PATH) $(COMPILE) -CFA -XCFA -p $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@}) 646 647 gccExtensions : gccExtensions.c $(CC) 648 $(PRETTY_PATH) $(COMPILE) -CFA -XCFA -p $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@}) 649 650 extension : extension.c $(CC) 651 $(PRETTY_PATH) $(COMPILE) -CFA -XCFA -p $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@}) 652 653 attributes : attributes.c $(CC) 654 $(PRETTY_PATH) $(COMPILE) -CFA -XCFA -p $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@}) 655 656 functions: functions.c $(CC) 657 $(PRETTY_PATH) $(COMPILE) -CFA -XCFA -p $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@}) 658 659 KRfunctions : KRfunctions.c $(CC) 660 $(PRETTY_PATH) $(COMPILE) -CFA -XCFA -p $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@}) 661 662 sched-ext-parse : sched-ext-parse.c $(CC) 663 $(PRETTY_PATH) $(COMPILE) -CFA -XCFA -p $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@}) 664 665 gmp : gmp.c $(CC) 666 $(PRETTY_PATH) $(COMPILE) -lgmp $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@}) 751 667 752 668 #builtins 753 builtins/sync: builtins/sync.c fa $(CFACC)754 $(PRETTY_PATH) $(C FACOMPILE) $(shell realpath --relative-to=${srcdir} ${<}) 2> $(abspath ${@}) -fsyntax-only669 builtins/sync: builtins/sync.c $(CC) 670 $(PRETTY_PATH) $(COMPILE) $(shell realpath --relative-to=${srcdir} ${<}) 2> $(abspath ${@}) -fsyntax-only 755 671 756 672 #------------------------------------------------------------------------------ 757 758 673 #To make errors path independent we need to cd into the correct directories 759 completeTypeError : completeTypeError.c fa $(CFACC)760 $(PRETTY_PATH) $(C FACOMPILE) -DERR1 $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@})761 762 typedefRedef-ERR1: typedefRedef.c fa $(CFACC)763 $(PRETTY_PATH) $(C FACOMPILE) -DERR1 $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@})764 765 alloc-ERROR: alloc.c fa $(CFACC)766 $(PRETTY_PATH) $(C FACOMPILE) -DERR1 $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@})767 768 fallthrough-ERROR: fallthrough.c fa $(CFACC)769 $(PRETTY_PATH) $(C FACOMPILE) -DERR1 $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@})770 771 nested-types-ERR1: nested-types.c fa $(CFACC)772 $(PRETTY_PATH) $(C FACOMPILE) -DERR1 $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@})773 774 nested-types-ERR2: nested-types.c fa $(CFACC)775 $(PRETTY_PATH) $(C FACOMPILE) -DERR2 $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@})674 completeTypeError : completeTypeError.c $(CC) 675 $(PRETTY_PATH) $(COMPILE) -DERR1 $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@}) 676 677 typedefRedef-ERR1: typedefRedef.c $(CC) 678 $(PRETTY_PATH) $(COMPILE) -DERR1 $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@}) 679 680 alloc-ERROR: alloc.c $(CC) 681 $(PRETTY_PATH) $(COMPILE) -DERR1 $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@}) 682 683 fallthrough-ERROR: fallthrough.c $(CC) 684 $(PRETTY_PATH) $(COMPILE) -DERR1 $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@}) 685 686 nested-types-ERR1: nested-types.c $(CC) 687 $(PRETTY_PATH) $(COMPILE) -DERR1 $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@}) 688 689 nested-types-ERR2: nested-types.c $(CC) 690 $(PRETTY_PATH) $(COMPILE) -DERR2 $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@}) 776 691 777 692 # Constructor/destructor tests 778 raii/dtor-early-exit-ERR1: raii/dtor-early-exit.c fa $(CFACC)779 $(PRETTY_PATH) $(C FACOMPILE) -DERR1 $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@})780 781 raii/dtor-early-exit-ERR2: raii/dtor-early-exit.c fa $(CFACC)782 $(PRETTY_PATH) $(C FACOMPILE) -DERR2 $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@})783 784 raii/memberCtors-ERR1: raii/memberCtors.c fa $(CFACC)785 $(PRETTY_PATH) $(C FACOMPILE) -DERR1 $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@})786 787 raii/ctor-autogen-ERR1: raii/ctor-autogen.c fa $(CFACC)788 $(PRETTY_PATH) $(C FACOMPILE) -DERR1 $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@})693 raii/dtor-early-exit-ERR1: raii/dtor-early-exit.c $(CC) 694 $(PRETTY_PATH) $(COMPILE) -DERR1 $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@}) 695 696 raii/dtor-early-exit-ERR2: raii/dtor-early-exit.c $(CC) 697 $(PRETTY_PATH) $(COMPILE) -DERR2 $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@}) 698 699 raii/memberCtors-ERR1: raii/memberCtors.c $(CC) 700 $(PRETTY_PATH) $(COMPILE) -DERR1 $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@}) 701 702 raii/ctor-autogen-ERR1: raii/ctor-autogen.c $(CC) 703 $(PRETTY_PATH) $(COMPILE) -DERR1 $(shell realpath --relative-to=${srcdir} ${<}) -o $(abspath ${@}) 789 704 790 705 # Warnings 791 warnings/self-assignment: warnings/self-assignment.c fa $(CFACC)792 $(PRETTY_PATH) $(C FACOMPILE) $(shell realpath --relative-to=${srcdir} ${<}) 2> $(abspath ${@}) -fsyntax-only706 warnings/self-assignment: warnings/self-assignment.c $(CC) 707 $(PRETTY_PATH) $(COMPILE) $(shell realpath --relative-to=${srcdir} ${<}) 2> $(abspath ${@}) -fsyntax-only 793 708 794 709 # Tell versions [3.59,3.63) of GNU make to not export all variables. -
tests/coroutine/.expect/fmtLines.txt
r95b8aa7 rff5caaf 16 16 difi ed B y : Pete r A. 17 17 Buh r// Last Mod ifie 18 d On : T ue D ec 1 1 2319 :3 1: 12 2 018/ / Up date20 Cou nt : 3 2/ /#in18 d On : M on S ep 1 8 11 19 :35: 57 2 017/ / Up date 20 Cou nt : 31/ /#in 21 21 clud e <f stre am.h fa># 22 22 incl ude <cor outi ne.h … … 34 34 t ) { if ( fm t.g 35 35 != 0 || fmt. b != 0 ) 36 sou t | nl;} void mai 37 n( F orma t & fmt ) { 38 for ( ;; ) { 39 // for as many cha 40 ract ers for ( f mt.g 41 = 0 ; fm t.g < 5; fmt 42 .g + = 1 ) { // grou 43 ps o f 5 bloc ks for 44 ( f mt.b = 0 ; fm t.b 45 < 4; fmt .b + = 1 ) { 46 // b lock s of 4 c hara 47 cter s for ( ; ; ) 48 { // f or n ewli 49 ne c hara cter s su 50 spen d(); if ( fm 51 t.ch != '\n' ) b reak 52 ; / / ig nore new line 53 } // for sout 54 | f mt.c h; // 55 prin t ch arac ter } 56 // f or sou t | " " 57 ; // prin t bl 58 ock sepa rato r } // 59 for sou t | nl; 60 // p rint gro up s 61 epar ator } / / fo r} / 62 / ma invo id p rt( Form 63 at & fmt , ch ar c h ) 64 { fmt .ch = ch ; 65 res ume( fmt );} // 66 prti nt m ain( ) { Form 67 at f mt; char ch; for 68 ( ; ; ) { s in | ch; 69 // rea d on 70 e ch arac ter if ( e 71 of( sin ) ) brea k; 72 // eof ? p rt( 73 fmt, ch ); } // for} 74 // main // L ocal Var 75 iabl es: //// tab -wid 76 th: 4 // // c ompi le-c 77 omma nd: "cfa fmt Line 78 s.c" /// / En d: / / 36 sou t | endl ;}vo id m 37 ain( For mat & fm t ) 38 { fo r ( ;; ) { 39 // f or a s ma ny c 40 hara cter s f or ( fmt 41 .g = 0; fmt. g < 5; f 42 mt.g += 1 ) { / / gr 43 oups of 5 bl ocks f 44 or ( fmt .b = 0; fmt. 45 b < 4; f mt.b += 1 ) 46 { // blo cks of 4 cha 47 ract ers f or ( ;; 48 ) { // for new 49 line cha ract ers 50 susp end( ); i f ( 51 fmt. ch ! = '\ n' ) bre 52 ak; // igno re n ewli 53 ne } // f or so 54 ut | fmt .ch; / 55 / pr int char acte r 56 } // for s out | " 57 "; / / pr int 58 bloc k se para tor } / 59 / fo r s out | en dl; 60 // p rint gro 61 up s epar ator } / / fo 62 r} / / ma invo id p rt( 63 Form at & fmt , ch ar c 64 h ) { fmt .ch = ch 65 ; res ume( fmt );} 66 // prti nt m ain( ) { 67 Form at f mt; char ch; 68 for ( ; ; ) { s in | 69 ch; // rea 70 d on e ch arac ter if 71 ( e of( sin ) ) brea 72 k; // eof ? p 73 rt( fmt, ch ); } // 74 for} // main // L ocal 75 Var iabl es: //// tab 76 -wid th: 4 // // c ompi 77 le-c omma nd: "cfa fmt 78 Line s.c" /// / En d: / 79 / -
tests/coroutine/.in/fmtLines.txt
r95b8aa7 rff5caaf 10 10 // Created On : Sun Sep 17 21:56:15 2017 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Tue Dec 11 23:31:12 201813 // Update Count : 3 212 // Last Modified On : Mon Sep 18 11:35:57 2017 13 // Update Count : 31 14 14 // 15 15 … … 27 27 28 28 void ^?{}( Format & fmt ) { 29 if ( fmt.g != 0 || fmt.b != 0 ) sout | nl;29 if ( fmt.g != 0 || fmt.b != 0 ) sout | endl; 30 30 } 31 31 … … 42 42 sout | " "; // print block separator 43 43 } // for 44 sout | nl; // print group separator44 sout | endl; // print group separator 45 45 } // for 46 46 } // main -
tests/preempt_longrun/Makefile.am
r95b8aa7 rff5caaf 16 16 17 17 AUTOMAKE_OPTIONS = foreign # do not require all the GNU file names 18 ACLOCAL_AMFLAGS = -I automake19 18 20 19 repeats=10 -
tests/preempt_longrun/Makefile.in
r95b8aa7 rff5caaf 93 93 subdir = tests/preempt_longrun 94 94 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 95 am__aclocal_m4_deps = $(top_srcdir)/automake/libtool.m4 \ 96 $(top_srcdir)/automake/ltoptions.m4 \ 97 $(top_srcdir)/automake/ltsugar.m4 \ 98 $(top_srcdir)/automake/ltversion.m4 \ 99 $(top_srcdir)/automake/lt~obsolete.m4 \ 100 $(top_srcdir)/automake/cfa.m4 $(top_srcdir)/configure.ac 95 am__aclocal_m4_deps = $(top_srcdir)/automake/cfa.m4 \ 96 $(top_srcdir)/configure.ac 101 97 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ 102 98 $(ACLOCAL_M4) … … 337 333 AMTAR = @AMTAR@ 338 334 AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ 339 AR = @AR@340 335 AUTOCONF = @AUTOCONF@ 341 336 AUTOHEADER = @AUTOHEADER@ 342 337 AUTOMAKE = @AUTOMAKE@ 343 338 AWK = @AWK@ 339 BACKEND_CC = @BACKEND_CC@ 344 340 BUILD_IN_TREE_FLAGS = @BUILD_IN_TREE_FLAGS@ 345 341 CC = @CFACC@ … … 361 357 CPPFLAGS = @CPPFLAGS@ 362 358 CXX = @CXX@ 363 CXXCPP = @CXXCPP@364 359 CXXDEPMODE = @CXXDEPMODE@ 365 360 CXXFLAGS = @CXXFLAGS@ … … 367 362 DEFS = @DEFS@ 368 363 DEPDIR = @DEPDIR@ 369 DLLTOOL = @DLLTOOL@370 364 DRIVER_DIR = @DRIVER_DIR@ 371 DSYMUTIL = @DSYMUTIL@372 DUMPBIN = @DUMPBIN@373 365 ECHO_C = @ECHO_C@ 374 366 ECHO_N = @ECHO_N@ … … 376 368 EGREP = @EGREP@ 377 369 EXEEXT = @EXEEXT@ 378 FGREP = @FGREP@379 370 GREP = @GREP@ 380 371 HOST_FLAGS = @HOST_FLAGS@ … … 384 375 INSTALL_SCRIPT = @INSTALL_SCRIPT@ 385 376 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ 386 LD = @LD@387 377 LDFLAGS = @LDFLAGS@ 388 378 LEX = @LEX@ … … 393 383 LIBOBJS = @LIBOBJS@ 394 384 LIBS = @LIBS@ 395 LIBTOOL = @LIBTOOL@396 LIPO = @LIPO@397 LN_S = @LN_S@398 385 LTLIBOBJS = @LTLIBOBJS@ 399 LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@400 386 MAKEINFO = @MAKEINFO@ 401 MANIFEST_TOOL = @MANIFEST_TOOL@402 387 MKDIR_P = @MKDIR_P@ 403 NM = @NM@404 NMEDIT = @NMEDIT@405 OBJDUMP = @OBJDUMP@406 388 OBJEXT = @OBJEXT@ 407 OTOOL = @OTOOL@408 OTOOL64 = @OTOOL64@409 389 PACKAGE = @PACKAGE@ 410 390 PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ … … 416 396 PATH_SEPARATOR = @PATH_SEPARATOR@ 417 397 RANLIB = @RANLIB@ 418 SED = @SED@419 398 SET_MAKE = @SET_MAKE@ 420 399 SHELL = @SHELL@ … … 428 407 abs_top_builddir = @abs_top_builddir@ 429 408 abs_top_srcdir = @abs_top_srcdir@ 430 ac_ct_AR = @ac_ct_AR@431 409 ac_ct_CC = @ac_ct_CC@ 432 410 ac_ct_CXX = @ac_ct_CXX@ 433 ac_ct_DUMPBIN = @ac_ct_DUMPBIN@434 411 am__include = @am__include@ 435 412 am__leading_dot = @am__leading_dot@ … … 479 456 top_srcdir = @top_srcdir@ 480 457 AUTOMAKE_OPTIONS = foreign # do not require all the GNU file names 481 ACLOCAL_AMFLAGS = -I automake482 458 repeats = 10 483 459 max_time = 600 … … 527 503 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh 528 504 $(am__aclocal_m4_deps): 529 530 mostlyclean-libtool:531 -rm -f *.lo532 533 clean-libtool:534 -rm -rf .libs _libs535 505 tags TAGS: 536 506 … … 836 806 clean: clean-am 837 807 838 clean-am: clean-generic clean-l ibtool clean-local mostlyclean-am808 clean-am: clean-generic clean-local mostlyclean-am 839 809 840 810 distclean: distclean-am … … 888 858 mostlyclean: mostlyclean-am 889 859 890 mostlyclean-am: mostlyclean-generic mostlyclean-libtool860 mostlyclean-am: mostlyclean-generic 891 861 892 862 pdf: pdf-am … … 903 873 904 874 .PHONY: all all-am all-local check check-TESTS check-am clean \ 905 clean-generic clean-libtool clean-local cscopelist-am ctags-am \ 906 distclean distclean-generic distclean-libtool distdir dvi \ 907 dvi-am html html-am info info-am install install-am \ 908 install-data install-data-am install-dvi install-dvi-am \ 909 install-exec install-exec-am install-html install-html-am \ 910 install-info install-info-am install-man install-pdf \ 911 install-pdf-am install-ps install-ps-am install-strip \ 912 installcheck installcheck-am installdirs maintainer-clean \ 913 maintainer-clean-generic mostlyclean mostlyclean-generic \ 914 mostlyclean-libtool pdf pdf-am ps ps-am recheck tags-am \ 875 clean-generic clean-local cscopelist-am ctags-am distclean \ 876 distclean-generic distdir dvi dvi-am html html-am info info-am \ 877 install install-am install-data install-data-am install-dvi \ 878 install-dvi-am install-exec install-exec-am install-html \ 879 install-html-am install-info install-info-am install-man \ 880 install-pdf install-pdf-am install-ps install-ps-am \ 881 install-strip installcheck installcheck-am installdirs \ 882 maintainer-clean maintainer-clean-generic mostlyclean \ 883 mostlyclean-generic pdf pdf-am ps ps-am recheck tags-am \ 915 884 uninstall uninstall-am 916 885 -
tests/preempt_longrun/create.c
r95b8aa7 rff5caaf 3 3 #include <time.hfa> 4 4 5 #include "long_tests.h fa"5 #include "long_tests.h" 6 6 7 7 #ifndef PREEMPTION_RATE -
tests/preempt_longrun/enter3.c
r95b8aa7 rff5caaf 5 5 6 6 #define __kick_rate 75000ul 7 #include "long_tests.h fa"7 #include "long_tests.h" 8 8 9 9 #ifndef PREEMPTION_RATE -
tests/preempt_longrun/processor.c
r95b8aa7 rff5caaf 5 5 #include <unistd.h> 6 6 7 #include "long_tests.h fa"7 #include "long_tests.h" 8 8 9 9 #ifndef PREEMPTION_RATE -
tests/preempt_longrun/yield.c
r95b8aa7 rff5caaf 4 4 5 5 #define __kick_rate 550000ul 6 #include "long_tests.h fa"6 #include "long_tests.h" 7 7 8 8 #ifndef PREEMPTION_RATE -
tests/pybin/tools.py
r95b8aa7 rff5caaf 79 79 def diff( lhs, rhs ): 80 80 # diff the output of the files 81 diff_cmd = ("diff --text " 82 # "--ignore-all-space " 83 # "--ignore-blank-lines " 81 diff_cmd = ("diff --ignore-all-space --text " 82 "--ignore-blank-lines " 84 83 "--old-group-format='\t\tmissing lines :\n" 85 84 "%%<' \\\n" … … 247 246 if column: 248 247 cmd = "%s 2> /dev/null" % column 248 print(cmd) 249 249 proc = Popen(cmd, stdin=PIPE, stderr=None, shell=True) 250 proc.communicate(input=text + "\n")250 proc.communicate(input=text) 251 251 else: 252 252 print(text) -
tests/raii/.expect/ctor-autogen-ERR1.txt
r95b8aa7 rff5caaf 1 raii/ctor-autogen.c fa:102:1 error: Unique best alternative includes deleted identifier in Cast of:1 raii/ctor-autogen.c:102:1 error: Unique best alternative includes deleted identifier in Cast of: 2 2 Application of 3 3 Deleted Expression 4 4 Variable Expression: ?{}: static inline function 5 5 ... with parameters 6 _dst: reference to instance of struct Managed with body 1 6 _dst: reference to instance of struct Managed with body 1 7 7 x: signed int 8 ... returning nothing 8 ... returning nothing 9 9 10 10 ... deleted by: ?{}: function 11 11 ... with parameters 12 m: reference to instance of struct Managed with body 1 13 ... returning nothing 14 ... with body 12 m: reference to instance of struct Managed with body 1 13 ... returning nothing 14 ... with body 15 15 CompoundStmt 16 16 Expression Statement: … … 20 20 intrinsic reference to signed int 21 21 intrinsic signed int 22 ... returning 22 ... returning 23 23 _retval__operator_assign: signed int 24 ... with attributes: 24 ... with attributes: 25 25 Attribute with name: unused 26 26 … … 28 28 ... to arguments 29 29 Cast of: 30 Member Expression, with field: 30 Member Expression, with field: 31 31 x: signed int 32 ... from aggregate: 32 ... from aggregate: 33 33 Cast of: 34 Variable Expression: m: reference to instance of struct Managed with body 1 34 Variable Expression: m: reference to instance of struct Managed with body 1 35 35 ... to: 36 instance of struct Managed with body 1 36 instance of struct Managed with body 1 37 37 ... to: 38 38 reference to signed int … … 49 49 ... to arguments 50 50 Cast of: 51 Variable Expression: x: instance of struct Managed with body 1 51 Variable Expression: x: instance of struct Managed with body 1 52 52 ... to: 53 reference to instance of struct Managed with body 1 53 reference to instance of struct Managed with body 1 54 54 constant expression (123 123: signed int) 55 55 -
tests/raii/.expect/dtor-early-exit-ERR1.txt
r95b8aa7 rff5caaf 1 raii/dtor-early-exit.c fa:150:1 error: jump to label 'L1' crosses initialization of y Branch (Goto)1 raii/dtor-early-exit.c:150:1 error: jump to label 'L1' crosses initialization of y Branch (Goto) 2 2 with target: L1 3 3 with original target: L1 -
tests/raii/.expect/dtor-early-exit-ERR2.txt
r95b8aa7 rff5caaf 1 raii/dtor-early-exit.c fa:214:1 error: jump to label 'L2' crosses initialization of y Branch (Goto)1 raii/dtor-early-exit.c:214:1 error: jump to label 'L2' crosses initialization of y Branch (Goto) 2 2 with target: L2 3 3 with original target: L2 -
tests/raii/.expect/memberCtors-ERR1.txt
r95b8aa7 rff5caaf 1 raii/memberCtors.c fa:71:1 error: in void ?{}(B &b), field a2 used before being constructed1 raii/memberCtors.c:71:1 error: in void ?{}(B &b), field a2 used before being constructed -
tests/test.py
r95b8aa7 rff5caaf 19 19 20 20 def matchTest(path): 21 match = re.search(" ^%s\/([\w\/\-_]*).expect\/([\w\-_]+)(\.[\w\-_]+)?\.txt$" % settings.SRCDIR, path)21 match = re.search("%s\/([\w\/\-_]*).expect\/([\w\-_]+)(\.[\w\-_]+)?\.txt" % settings.SRCDIR, path) 22 22 if match : 23 23 test = Test() … … 34 34 # reads the directory ./.expect and indentifies the tests 35 35 def listTests( includes, excludes ): 36 includes = [canonicalPath( i ) for i in includes] if includes else None 37 excludes = [canonicalPath( i ) for i in excludes] if excludes else None 38 36 39 # tests directly in the .expect folder will always be processed 37 40 test_list = findTests() -
tests/warnings/.expect/self-assignment.txt
r95b8aa7 rff5caaf 1 warnings/self-assignment.c fa:29:1 warning: self assignment of expression: Cast of:1 warnings/self-assignment.c:29:1 warning: self assignment of expression: Cast of: 2 2 Variable Expression: j: signed int 3 3 ... to: 4 4 reference to signed int 5 warnings/self-assignment.c fa:30:1 warning: self assignment of expression: Cast of:6 Variable Expression: s: instance of struct S with body 1 5 warnings/self-assignment.c:30:1 warning: self assignment of expression: Cast of: 6 Variable Expression: s: instance of struct S with body 1 7 7 ... to: 8 reference to instance of struct S with body 1 9 warnings/self-assignment.c fa:31:1 warning: self assignment of expression: Cast of:10 Member Expression, with field: 8 reference to instance of struct S with body 1 9 warnings/self-assignment.c:31:1 warning: self assignment of expression: Cast of: 10 Member Expression, with field: 11 11 i: signed int 12 ... from aggregate: 13 Variable Expression: s: instance of struct S with body 1 12 ... from aggregate: 13 Variable Expression: s: instance of struct S with body 1 14 14 ... to: 15 15 reference to signed int 16 warnings/self-assignment.c fa:32:1 warning: self assignment of expression: Cast of:17 Member Expression, with field: 16 warnings/self-assignment.c:32:1 warning: self assignment of expression: Cast of: 17 Member Expression, with field: 18 18 i: signed int 19 ... from aggregate: 20 Member Expression, with field: 21 s: instance of struct S with body 1 22 ... from aggregate: 23 Variable Expression: t: instance of struct T with body 1 19 ... from aggregate: 20 Member Expression, with field: 21 s: instance of struct S with body 1 22 ... from aggregate: 23 Variable Expression: t: instance of struct T with body 1 24 24 ... to: 25 25 reference to signed int -
tools/Makefile.am
r95b8aa7 rff5caaf 16 16 17 17 AUTOMAKE_OPTIONS = foreign # do not require all the GNU file names 18 ACLOCAL_AMFLAGS = -I automake19 18 19 CC = @BACKEND_CC@ 20 20 AM_CFLAGS = -Wall -Wextra -O2 -g 21 21 -
tools/Makefile.in
r95b8aa7 rff5caaf 96 96 subdir = tools 97 97 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 98 am__aclocal_m4_deps = $(top_srcdir)/automake/libtool.m4 \ 99 $(top_srcdir)/automake/ltoptions.m4 \ 100 $(top_srcdir)/automake/ltsugar.m4 \ 101 $(top_srcdir)/automake/ltversion.m4 \ 102 $(top_srcdir)/automake/lt~obsolete.m4 \ 103 $(top_srcdir)/automake/cfa.m4 $(top_srcdir)/configure.ac 98 am__aclocal_m4_deps = $(top_srcdir)/automake/cfa.m4 \ 99 $(top_srcdir)/configure.ac 104 100 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ 105 101 $(ACLOCAL_M4) … … 113 109 busy_OBJECTS = $(am_busy_OBJECTS) 114 110 busy_LDADD = $(LDADD) 115 AM_V_lt = $(am__v_lt_@AM_V@) 116 am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@) 117 am__v_lt_0 = --silent 118 am__v_lt_1 = 119 busy_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ 120 $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ 121 $(busy_LDFLAGS) $(LDFLAGS) -o $@ 111 busy_LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(busy_LDFLAGS) $(LDFLAGS) \ 112 -o $@ 122 113 am_catchsig_OBJECTS = catchsig.$(OBJEXT) 123 114 catchsig_OBJECTS = $(am_catchsig_OBJECTS) … … 147 138 COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ 148 139 $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) 149 LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \150 $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \151 $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \152 $(AM_CFLAGS) $(CFLAGS)153 140 AM_V_CC = $(am__v_CC_@AM_V@) 154 141 am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@) … … 156 143 am__v_CC_1 = 157 144 CCLD = $(CC) 158 LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ 159 $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ 160 $(AM_LDFLAGS) $(LDFLAGS) -o $@ 145 LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ 161 146 AM_V_CCLD = $(am__v_CCLD_@AM_V@) 162 147 am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@) … … 197 182 AMTAR = @AMTAR@ 198 183 AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ 199 AR = @AR@200 184 AUTOCONF = @AUTOCONF@ 201 185 AUTOHEADER = @AUTOHEADER@ 202 186 AUTOMAKE = @AUTOMAKE@ 203 187 AWK = @AWK@ 188 BACKEND_CC = @BACKEND_CC@ 204 189 BUILD_IN_TREE_FLAGS = @BUILD_IN_TREE_FLAGS@ 205 CC = @ CC@190 CC = @BACKEND_CC@ 206 191 CCAS = @CCAS@ 207 192 CCASDEPMODE = @CCASDEPMODE@ … … 221 206 CPPFLAGS = @CPPFLAGS@ 222 207 CXX = @CXX@ 223 CXXCPP = @CXXCPP@224 208 CXXDEPMODE = @CXXDEPMODE@ 225 209 CXXFLAGS = @CXXFLAGS@ … … 227 211 DEFS = @DEFS@ 228 212 DEPDIR = @DEPDIR@ 229 DLLTOOL = @DLLTOOL@230 213 DRIVER_DIR = @DRIVER_DIR@ 231 DSYMUTIL = @DSYMUTIL@232 DUMPBIN = @DUMPBIN@233 214 ECHO_C = @ECHO_C@ 234 215 ECHO_N = @ECHO_N@ … … 236 217 EGREP = @EGREP@ 237 218 EXEEXT = @EXEEXT@ 238 FGREP = @FGREP@239 219 GREP = @GREP@ 240 220 HOST_FLAGS = @HOST_FLAGS@ … … 244 224 INSTALL_SCRIPT = @INSTALL_SCRIPT@ 245 225 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ 246 LD = @LD@247 226 LDFLAGS = @LDFLAGS@ 248 227 LEX = @LEX@ … … 253 232 LIBOBJS = @LIBOBJS@ 254 233 LIBS = @LIBS@ 255 LIBTOOL = @LIBTOOL@256 LIPO = @LIPO@257 LN_S = @LN_S@258 234 LTLIBOBJS = @LTLIBOBJS@ 259 LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@260 235 MAKEINFO = @MAKEINFO@ 261 MANIFEST_TOOL = @MANIFEST_TOOL@262 236 MKDIR_P = @MKDIR_P@ 263 NM = @NM@264 NMEDIT = @NMEDIT@265 OBJDUMP = @OBJDUMP@266 237 OBJEXT = @OBJEXT@ 267 OTOOL = @OTOOL@268 OTOOL64 = @OTOOL64@269 238 PACKAGE = @PACKAGE@ 270 239 PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ … … 276 245 PATH_SEPARATOR = @PATH_SEPARATOR@ 277 246 RANLIB = @RANLIB@ 278 SED = @SED@279 247 SET_MAKE = @SET_MAKE@ 280 248 SHELL = @SHELL@ … … 288 256 abs_top_builddir = @abs_top_builddir@ 289 257 abs_top_srcdir = @abs_top_srcdir@ 290 ac_ct_AR = @ac_ct_AR@291 258 ac_ct_CC = @ac_ct_CC@ 292 259 ac_ct_CXX = @ac_ct_CXX@ 293 ac_ct_DUMPBIN = @ac_ct_DUMPBIN@294 260 am__include = @am__include@ 295 261 am__leading_dot = @am__leading_dot@ … … 339 305 top_srcdir = @top_srcdir@ 340 306 AUTOMAKE_OPTIONS = foreign # do not require all the GNU file names 341 ACLOCAL_AMFLAGS = -I automake342 307 AM_CFLAGS = -Wall -Wextra -O2 -g 343 308 busy_SOURCES = busy.c … … 349 314 350 315 .SUFFIXES: 351 .SUFFIXES: .c . lo .o .obj316 .SUFFIXES: .c .o .obj 352 317 $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) 353 318 @for dep in $?; do \ … … 381 346 382 347 clean-noinstPROGRAMS: 383 @list='$(noinst_PROGRAMS)'; test -n "$$list" || exit 0; \ 384 echo " rm -f" $$list; \ 385 rm -f $$list || exit $$?; \ 386 test -n "$(EXEEXT)" || exit 0; \ 387 list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \ 388 echo " rm -f" $$list; \ 389 rm -f $$list 348 -test -z "$(noinst_PROGRAMS)" || rm -f $(noinst_PROGRAMS) 390 349 391 350 busy$(EXEEXT): $(busy_OBJECTS) $(busy_DEPENDENCIES) $(EXTRA_busy_DEPENDENCIES) … … 431 390 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ 432 391 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'` 433 434 .c.lo:435 @am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.lo$$||'`;\436 @am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\437 @am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Plo438 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@439 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@440 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $<441 442 mostlyclean-libtool:443 -rm -f *.lo444 445 clean-libtool:446 -rm -rf .libs _libs447 392 448 393 ID: $(am__tagged_files) … … 564 509 clean: clean-am 565 510 566 clean-am: clean-generic clean-libtool clean-noinstPROGRAMS \ 567 mostlyclean-am 511 clean-am: clean-generic clean-noinstPROGRAMS mostlyclean-am 568 512 569 513 distclean: distclean-am … … 620 564 mostlyclean: mostlyclean-am 621 565 622 mostlyclean-am: mostlyclean-compile mostlyclean-generic \ 623 mostlyclean-libtool 566 mostlyclean-am: mostlyclean-compile mostlyclean-generic 624 567 625 568 pdf: pdf-am … … 636 579 637 580 .PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \ 638 clean-libtool clean-noinstPROGRAMS cscopelist-am ctags \ 639 ctags-am distclean distclean-compile distclean-generic \ 640 distclean-libtool distclean-tags distdir dvi dvi-am html \ 641 html-am info info-am install install-am install-data \ 642 install-data-am install-dvi install-dvi-am install-exec \ 643 install-exec-am install-html install-html-am install-info \ 644 install-info-am install-man install-pdf install-pdf-am \ 645 install-ps install-ps-am install-strip installcheck \ 646 installcheck-am installdirs maintainer-clean \ 581 clean-noinstPROGRAMS cscopelist-am ctags ctags-am distclean \ 582 distclean-compile distclean-generic distclean-tags distdir dvi \ 583 dvi-am html html-am info info-am install install-am \ 584 install-data install-data-am install-dvi install-dvi-am \ 585 install-exec install-exec-am install-html install-html-am \ 586 install-info install-info-am install-man install-pdf \ 587 install-pdf-am install-ps install-ps-am install-strip \ 588 installcheck installcheck-am installdirs maintainer-clean \ 647 589 maintainer-clean-generic mostlyclean mostlyclean-compile \ 648 mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am\649 tags tags-am uninstalluninstall-am590 mostlyclean-generic pdf pdf-am ps ps-am tags tags-am uninstall \ 591 uninstall-am 650 592 651 593 .PRECIOUS: Makefile -
tools/prettyprinter/Makefile.am
r95b8aa7 rff5caaf 16 16 17 17 AUTOMAKE_OPTIONS = foreign # do not require all the GNU file names 18 ACLOCAL_AMFLAGS = -I automake19 18 20 19 BUILT_SOURCES = parser.hh -
tools/prettyprinter/Makefile.in
r95b8aa7 rff5caaf 95 95 subdir = tools/prettyprinter 96 96 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 97 am__aclocal_m4_deps = $(top_srcdir)/automake/libtool.m4 \ 98 $(top_srcdir)/automake/ltoptions.m4 \ 99 $(top_srcdir)/automake/ltsugar.m4 \ 100 $(top_srcdir)/automake/ltversion.m4 \ 101 $(top_srcdir)/automake/lt~obsolete.m4 \ 102 $(top_srcdir)/automake/cfa.m4 $(top_srcdir)/configure.ac 97 am__aclocal_m4_deps = $(top_srcdir)/automake/cfa.m4 \ 98 $(top_srcdir)/configure.ac 103 99 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ 104 100 $(ACLOCAL_M4) … … 117 113 am__DEPENDENCIES_1 = 118 114 pretty_DEPENDENCIES = $(am__DEPENDENCIES_1) 119 AM_V_lt = $(am__v_lt_@AM_V@) 120 am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@) 121 am__v_lt_0 = --silent 122 am__v_lt_1 = 123 pretty_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \ 124 $(LIBTOOLFLAGS) --mode=link $(CXXLD) $(pretty_CXXFLAGS) \ 125 $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ 115 pretty_LINK = $(CXXLD) $(pretty_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) \ 116 $(LDFLAGS) -o $@ 126 117 AM_V_P = $(am__v_P_@AM_V@) 127 118 am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) … … 140 131 am__depfiles_maybe = depfiles 141 132 am__mv = mv -f 133 AM_V_lt = $(am__v_lt_@AM_V@) 134 am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@) 135 am__v_lt_0 = --silent 136 am__v_lt_1 = 142 137 CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ 143 138 $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) 144 LTCXXCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \145 $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) \146 $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \147 $(AM_CXXFLAGS) $(CXXFLAGS)148 139 AM_V_CXX = $(am__v_CXX_@AM_V@) 149 140 am__v_CXX_ = $(am__v_CXX_@AM_DEFAULT_V@) … … 151 142 am__v_CXX_1 = 152 143 CXXLD = $(CXX) 153 CXXLINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \ 154 $(LIBTOOLFLAGS) --mode=link $(CXXLD) $(AM_CXXFLAGS) \ 155 $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ 144 CXXLINK = $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \ 145 -o $@ 156 146 AM_V_CXXLD = $(am__v_CXXLD_@AM_V@) 157 147 am__v_CXXLD_ = $(am__v_CXXLD_@AM_DEFAULT_V@) … … 159 149 am__v_CXXLD_1 = 160 150 LEXCOMPILE = $(LEX) $(AM_LFLAGS) $(LFLAGS) 161 LTLEXCOMPILE = $(LIBTOOL) $(AM_V_lt) $(AM_LIBTOOLFLAGS) \162 $(LIBTOOLFLAGS) --mode=compile $(LEX) $(AM_LFLAGS) $(LFLAGS)163 151 AM_V_LEX = $(am__v_LEX_@AM_V@) 164 152 am__v_LEX_ = $(am__v_LEX_@AM_DEFAULT_V@) … … 169 157 -e s/c++$$/h++/ -e s/c$$/h/ 170 158 YACCCOMPILE = $(YACC) $(AM_YFLAGS) $(YFLAGS) 171 LTYACCCOMPILE = $(LIBTOOL) $(AM_V_lt) $(AM_LIBTOOLFLAGS) \172 $(LIBTOOLFLAGS) --mode=compile $(YACC) $(AM_YFLAGS) $(YFLAGS)173 159 AM_V_YACC = $(am__v_YACC_@AM_V@) 174 160 am__v_YACC_ = $(am__v_YACC_@AM_DEFAULT_V@) … … 177 163 COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ 178 164 $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) 179 LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \180 $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \181 $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \182 $(AM_CFLAGS) $(CFLAGS)183 165 AM_V_CC = $(am__v_CC_@AM_V@) 184 166 am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@) … … 186 168 am__v_CC_1 = 187 169 CCLD = $(CC) 188 LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ 189 $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ 190 $(AM_LDFLAGS) $(LDFLAGS) -o $@ 170 LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ 191 171 AM_V_CCLD = $(am__v_CCLD_@AM_V@) 192 172 am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@) … … 226 206 AMTAR = @AMTAR@ 227 207 AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ 228 AR = @AR@229 208 AUTOCONF = @AUTOCONF@ 230 209 AUTOHEADER = @AUTOHEADER@ 231 210 AUTOMAKE = @AUTOMAKE@ 232 211 AWK = @AWK@ 212 BACKEND_CC = @BACKEND_CC@ 233 213 BUILD_IN_TREE_FLAGS = @BUILD_IN_TREE_FLAGS@ 234 214 CC = @CC@ … … 250 230 CPPFLAGS = @CPPFLAGS@ 251 231 CXX = @CXX@ 252 CXXCPP = @CXXCPP@253 232 CXXDEPMODE = @CXXDEPMODE@ 254 233 CXXFLAGS = @CXXFLAGS@ … … 256 235 DEFS = @DEFS@ 257 236 DEPDIR = @DEPDIR@ 258 DLLTOOL = @DLLTOOL@259 237 DRIVER_DIR = @DRIVER_DIR@ 260 DSYMUTIL = @DSYMUTIL@261 DUMPBIN = @DUMPBIN@262 238 ECHO_C = @ECHO_C@ 263 239 ECHO_N = @ECHO_N@ … … 265 241 EGREP = @EGREP@ 266 242 EXEEXT = @EXEEXT@ 267 FGREP = @FGREP@268 243 GREP = @GREP@ 269 244 HOST_FLAGS = @HOST_FLAGS@ … … 273 248 INSTALL_SCRIPT = @INSTALL_SCRIPT@ 274 249 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ 275 LD = @LD@276 250 LDFLAGS = @LDFLAGS@ 277 251 LEX = @LEX@ … … 282 256 LIBOBJS = @LIBOBJS@ 283 257 LIBS = @LIBS@ 284 LIBTOOL = @LIBTOOL@285 LIPO = @LIPO@286 LN_S = @LN_S@287 258 LTLIBOBJS = @LTLIBOBJS@ 288 LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@289 259 MAKEINFO = @MAKEINFO@ 290 MANIFEST_TOOL = @MANIFEST_TOOL@291 260 MKDIR_P = @MKDIR_P@ 292 NM = @NM@293 NMEDIT = @NMEDIT@294 OBJDUMP = @OBJDUMP@295 261 OBJEXT = @OBJEXT@ 296 OTOOL = @OTOOL@297 OTOOL64 = @OTOOL64@298 262 PACKAGE = @PACKAGE@ 299 263 PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ … … 305 269 PATH_SEPARATOR = @PATH_SEPARATOR@ 306 270 RANLIB = @RANLIB@ 307 SED = @SED@308 271 SET_MAKE = @SET_MAKE@ 309 272 SHELL = @SHELL@ … … 317 280 abs_top_builddir = @abs_top_builddir@ 318 281 abs_top_srcdir = @abs_top_srcdir@ 319 ac_ct_AR = @ac_ct_AR@320 282 ac_ct_CC = @ac_ct_CC@ 321 283 ac_ct_CXX = @ac_ct_CXX@ 322 ac_ct_DUMPBIN = @ac_ct_DUMPBIN@323 284 am__include = @am__include@ 324 285 am__leading_dot = @am__leading_dot@ … … 368 329 top_srcdir = @top_srcdir@ 369 330 AUTOMAKE_OPTIONS = foreign # do not require all the GNU file names 370 ACLOCAL_AMFLAGS = -I automake371 331 BUILT_SOURCES = parser.hh 372 332 AM_YFLAGS = -d -t -v … … 386 346 387 347 .SUFFIXES: 388 .SUFFIXES: .cc .ll . lo .o .obj .yy348 .SUFFIXES: .cc .ll .o .obj .yy 389 349 $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) 390 350 @for dep in $?; do \ … … 426 386 sed 's/$(EXEEXT)$$//' | \ 427 387 while read p p1; do if test -f $$p \ 428 || test -f $$p1 \429 388 ; then echo "$$p"; echo "$$p"; else :; fi; \ 430 389 done | \ … … 441 400 if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ 442 401 test -z "$$files" || { \ 443 echo " $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install$(INSTALL_PROGRAM) $$files '$(DESTDIR)$(tools_prettyprinterdir)$$dir'"; \444 $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install$(INSTALL_PROGRAM) $$files "$(DESTDIR)$(tools_prettyprinterdir)$$dir" || exit $$?; \402 echo " $(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) $$files '$(DESTDIR)$(tools_prettyprinterdir)$$dir'"; \ 403 $(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(tools_prettyprinterdir)$$dir" || exit $$?; \ 445 404 } \ 446 405 ; done … … 458 417 459 418 clean-tools_prettyprinterPROGRAMS: 460 @list='$(tools_prettyprinter_PROGRAMS)'; test -n "$$list" || exit 0; \ 461 echo " rm -f" $$list; \ 462 rm -f $$list || exit $$?; \ 463 test -n "$(EXEEXT)" || exit 0; \ 464 list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \ 465 echo " rm -f" $$list; \ 466 rm -f $$list 419 -test -z "$(tools_prettyprinter_PROGRAMS)" || rm -f $(tools_prettyprinter_PROGRAMS) 467 420 parser.hh: parser.cc 468 421 @if test ! -f $@; then rm -f parser.cc; else :; fi … … 501 454 @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'` 502 455 503 .cc.lo:504 @am__fastdepCXX_TRUE@ $(AM_V_CXX)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.lo$$||'`;\505 @am__fastdepCXX_TRUE@ $(LTCXXCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\506 @am__fastdepCXX_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Plo507 @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@508 @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@509 @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(LTCXXCOMPILE) -c -o $@ $<510 511 456 pretty-lex.o: lex.cc 512 457 @am__fastdepCXX_TRUE@ $(AM_V_CXX)$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(pretty_CXXFLAGS) $(CXXFLAGS) -MT pretty-lex.o -MD -MP -MF $(DEPDIR)/pretty-lex.Tpo -c -o pretty-lex.o `test -f 'lex.cc' || echo '$(srcdir)/'`lex.cc … … 584 529 .yy.cc: 585 530 $(AM_V_YACC)$(am__skipyacc) $(SHELL) $(YLWRAP) $< y.tab.c $@ y.tab.h `echo $@ | $(am__yacc_c2h)` y.output $*.output -- $(YACCCOMPILE) 586 587 mostlyclean-libtool:588 -rm -f *.lo589 590 clean-libtool:591 -rm -rf .libs _libs592 531 593 532 ID: $(am__tagged_files) … … 719 658 clean: clean-am 720 659 721 clean-am: clean-generic clean- libtool\722 clean-tools_prettyprinterPROGRAMSmostlyclean-am660 clean-am: clean-generic clean-tools_prettyprinterPROGRAMS \ 661 mostlyclean-am 723 662 724 663 distclean: distclean-am … … 775 714 mostlyclean: mostlyclean-am 776 715 777 mostlyclean-am: mostlyclean-compile mostlyclean-generic \ 778 mostlyclean-libtool 716 mostlyclean-am: mostlyclean-compile mostlyclean-generic 779 717 780 718 pdf: pdf-am … … 791 729 792 730 .PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \ 793 clean-libtool clean-tools_prettyprinterPROGRAMS cscopelist-am \ 794 ctags ctags-am distclean distclean-compile distclean-generic \ 795 distclean-libtool distclean-tags distdir dvi dvi-am html \ 796 html-am info info-am install install-am install-data \ 797 install-data-am install-dvi install-dvi-am install-exec \ 798 install-exec-am install-html install-html-am install-info \ 799 install-info-am install-man install-pdf install-pdf-am \ 800 install-ps install-ps-am install-strip \ 801 install-tools_prettyprinterPROGRAMS installcheck \ 731 clean-tools_prettyprinterPROGRAMS cscopelist-am ctags ctags-am \ 732 distclean distclean-compile distclean-generic distclean-tags \ 733 distdir dvi dvi-am html html-am info info-am install \ 734 install-am install-data install-data-am install-dvi \ 735 install-dvi-am install-exec install-exec-am install-html \ 736 install-html-am install-info install-info-am install-man \ 737 install-pdf install-pdf-am install-ps install-ps-am \ 738 install-strip install-tools_prettyprinterPROGRAMS installcheck \ 802 739 installcheck-am installdirs maintainer-clean \ 803 740 maintainer-clean-generic mostlyclean mostlyclean-compile \ 804 mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ 805 tags tags-am uninstall uninstall-am \ 806 uninstall-tools_prettyprinterPROGRAMS 741 mostlyclean-generic pdf pdf-am ps ps-am tags tags-am uninstall \ 742 uninstall-am uninstall-tools_prettyprinterPROGRAMS 807 743 808 744 .PRECIOUS: Makefile
Note:
See TracChangeset
for help on using the changeset viewer.