summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Blumenkrantz <zmike@osg.samsung.com>2015-09-06 23:11:27 -0400
committerMike Blumenkrantz <zmike@osg.samsung.com>2015-09-06 23:11:27 -0400
commitacd4e64908d9379ccd0d48fe875cf0da2d2cb35c (patch)
treebf5e55462a5d7c7b1b586f56547e7c739f6d837c
init
-rw-r--r--AUTHORS1
-rw-r--r--COPYING25
-rw-r--r--ChangeLog0
-rw-r--r--INSTALL370
-rw-r--r--Makefile.am32
-rw-r--r--NEWS8
-rw-r--r--README0
-rwxr-xr-xautogen.sh17
-rw-r--r--configure.ac84
-rw-r--r--e-module-compiz.edc508
-rw-r--r--e_modules-compiz.spec.in48
-rw-r--r--epic-e-256.pngbin0 -> 36975 bytes
-rw-r--r--m4/.gitignore0
-rw-r--r--m4/libtool.m47992
-rw-r--r--m4/ltoptions.m4384
-rw-r--r--m4/ltsugar.m4123
-rw-r--r--m4/ltversion.m423
-rw-r--r--m4/lt~obsolete.m498
-rw-r--r--module.desktop.in6
-rw-r--r--src/Makefile.mk32
-rw-r--r--src/compiz.c551
-rw-r--r--src/compiz_gl.c1
-rw-r--r--src/e_mod_main.c85
-rw-r--r--src/e_mod_main.h325
-rw-r--r--src/exports/Makefile.mk19
-rw-r--r--src/exports/core.c306
-rw-r--r--src/exports/cursor.c197
-rw-r--r--src/exports/display.c3005
-rw-r--r--src/exports/event.c2454
-rw-r--r--src/exports/fragment.c1430
-rw-r--r--src/exports/main.c393
-rw-r--r--src/exports/match.c800
-rw-r--r--src/exports/matrix.c369
-rw-r--r--src/exports/metadata.c1503
-rw-r--r--src/exports/object.c149
-rw-r--r--src/exports/option.c1009
-rw-r--r--src/exports/paint.c1281
-rw-r--r--src/exports/plugin.c798
-rw-r--r--src/exports/plugins/Makefile.am156
-rw-r--r--src/exports/plugins/Makefile.in1092
-rw-r--r--src/exports/plugins/annotate.c968
-rw-r--r--src/exports/plugins/blur.c3279
-rw-r--r--src/exports/plugins/clone.c946
-rw-r--r--src/exports/plugins/commands.c354
-rw-r--r--src/exports/plugins/cube.c2262
-rw-r--r--src/exports/plugins/decoration.c1885
-rw-r--r--src/exports/plugins/fade.c1063
-rw-r--r--src/exports/plugins/fuse.c1485
-rw-r--r--src/exports/plugins/ini.c1190
-rw-r--r--src/exports/plugins/inotify.c318
-rw-r--r--src/exports/plugins/kconfig.cpp0
-rw-r--r--src/exports/plugins/matecompat.c347
-rw-r--r--src/exports/plugins/minimize.c1068
-rw-r--r--src/exports/plugins/move.c1086
-rw-r--r--src/exports/plugins/obs.c767
-rw-r--r--src/exports/plugins/place.c2316
-rw-r--r--src/exports/plugins/png.c576
-rw-r--r--src/exports/plugins/regex.c572
-rw-r--r--src/exports/plugins/resize.c1806
-rw-r--r--src/exports/plugins/rotate.c2032
-rw-r--r--src/exports/plugins/scale.c2316
-rw-r--r--src/exports/plugins/screenshot.c760
-rw-r--r--src/exports/plugins/svg.c1059
-rw-r--r--src/exports/plugins/switcher.c2161
-rw-r--r--src/exports/plugins/video.c1341
-rw-r--r--src/exports/plugins/wall.c2274
-rw-r--r--src/exports/plugins/wall_options.c2217
-rw-r--r--src/exports/plugins/wall_options.h375
-rw-r--r--src/exports/plugins/water.c1834
-rw-r--r--src/exports/plugins/wobbly.c3101
-rw-r--r--src/exports/plugins/zoom.c1212
-rw-r--r--src/exports/privates.c69
-rw-r--r--src/exports/screen.c4467
-rw-r--r--src/exports/session.c440
-rw-r--r--src/exports/texture.c507
-rw-r--r--src/exports/window.c5559
-rw-r--r--src/jwzgles.c3820
-rw-r--r--src/jwzgles.h27
-rw-r--r--src/jwzglesI.h335
-rw-r--r--win_shadow.pngbin0 -> 501 bytes
80 files changed, 83868 insertions, 0 deletions
diff --git a/AUTHORS b/AUTHORS
new file mode 100644
index 0000000..14343ea
--- /dev/null
+++ b/AUTHORS
@@ -0,0 +1 @@
Mike Blumenkrantz <zmike@enlightenment.org>
diff --git a/COPYING b/COPYING
new file mode 100644
index 0000000..d3a8b13
--- /dev/null
+++ b/COPYING
@@ -0,0 +1,25 @@
1Copyright notice for desksanity
2
3Copyright (C) 2013 Mike Blumenkrantz and various contributors (see AUTHORS)
4
5All rights reserved.
6
7Redistribution and use in source and binary forms, with or without
8modification, are permitted provided that the following conditions are met:
9
10 1. Redistributions of source code must retain the above copyright
11 notice, this list of conditions and the following disclaimer.
12 2. Redistributions in binary form must reproduce the above copyright
13 notice, this list of conditions and the following disclaimer in the
14 documentation and/or other materials provided with the distribution.
15
16THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
17INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
18FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
19COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
20INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
21LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
22OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
23LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
24NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
25EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
diff --git a/ChangeLog b/ChangeLog
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/ChangeLog
diff --git a/INSTALL b/INSTALL
new file mode 100644
index 0000000..2099840
--- /dev/null
+++ b/INSTALL
@@ -0,0 +1,370 @@
1Installation Instructions
2*************************
3
4Copyright (C) 1994-1996, 1999-2002, 2004-2013 Free Software Foundation,
5Inc.
6
7 Copying and distribution of this file, with or without modification,
8are permitted in any medium without royalty provided the copyright
9notice and this notice are preserved. This file is offered as-is,
10without warranty of any kind.
11
12Basic Installation
13==================
14
15 Briefly, the shell command `./configure && make && make install'
16should configure, build, and install this package. The following
17more-detailed instructions are generic; see the `README' file for
18instructions specific to this package. Some packages provide this
19`INSTALL' file but do not implement all of the features documented
20below. The lack of an optional feature in a given package is not
21necessarily a bug. More recommendations for GNU packages can be found
22in *note Makefile Conventions: (standards)Makefile Conventions.
23
24 The `configure' shell script attempts to guess correct values for
25various system-dependent variables used during compilation. It uses
26those values to create a `Makefile' in each directory of the package.
27It may also create one or more `.h' files containing system-dependent
28definitions. Finally, it creates a shell script `config.status' that
29you can run in the future to recreate the current configuration, and a
30file `config.log' containing compiler output (useful mainly for
31debugging `configure').
32
33 It can also use an optional file (typically called `config.cache'
34and enabled with `--cache-file=config.cache' or simply `-C') that saves
35the results of its tests to speed up reconfiguring. Caching is
36disabled by default to prevent problems with accidental use of stale
37cache files.
38
39 If you need to do unusual things to compile the package, please try
40to figure out how `configure' could check whether to do them, and mail
41diffs or instructions to the address given in the `README' so they can
42be considered for the next release. If you are using the cache, and at
43some point `config.cache' contains results you don't want to keep, you
44may remove or edit it.
45
46 The file `configure.ac' (or `configure.in') is used to create
47`configure' by a program called `autoconf'. You need `configure.ac' if
48you want to change it or regenerate `configure' using a newer version
49of `autoconf'.
50
51 The simplest way to compile this package is:
52
53 1. `cd' to the directory containing the package's source code and type
54 `./configure' to configure the package for your system.
55
56 Running `configure' might take a while. While running, it prints
57 some messages telling which features it is checking for.
58
59 2. Type `make' to compile the package.
60
61 3. Optionally, type `make check' to run any self-tests that come with
62 the package, generally using the just-built uninstalled binaries.
63
64 4. Type `make install' to install the programs and any data files and
65 documentation. When installing into a prefix owned by root, it is
66 recommended that the package be configured and built as a regular
67 user, and only the `make install' phase executed with root
68 privileges.
69
70 5. Optionally, type `make installcheck' to repeat any self-tests, but
71 this time using the binaries in their final installed location.
72 This target does not install anything. Running this target as a
73 regular user, particularly if the prior `make install' required
74 root privileges, verifies that the installation completed
75 correctly.
76
77 6. You can remove the program binaries and object files from the
78 source code directory by typing `make clean'. To also remove the
79 files that `configure' created (so you can compile the package for
80 a different kind of computer), type `make distclean'. There is
81 also a `make maintainer-clean' target, but that is intended mainly
82 for the package's developers. If you use it, you may have to get
83 all sorts of other programs in order to regenerate files that came
84 with the distribution.
85
86 7. Often, you can also type `make uninstall' to remove the installed
87 files again. In practice, not all packages have tested that
88 uninstallation works correctly, even though it is required by the
89 GNU Coding Standards.
90
91 8. Some packages, particularly those that use Automake, provide `make
92 distcheck', which can by used by developers to test that all other
93 targets like `make install' and `make uninstall' work correctly.
94 This target is generally not run by end users.
95
96Compilers and Options
97=====================
98
99 Some systems require unusual options for compilation or linking that
100the `configure' script does not know about. Run `./configure --help'
101for details on some of the pertinent environment variables.
102
103 You can give `configure' initial values for configuration parameters
104by setting variables in the command line or in the environment. Here
105is an example:
106
107 ./configure CC=c99 CFLAGS=-g LIBS=-lposix
108
109 *Note Defining Variables::, for more details.
110
111Compiling For Multiple Architectures
112====================================
113
114 You can compile the package for more than one kind of computer at the
115same time, by placing the object files for each architecture in their
116own directory. To do this, you can use GNU `make'. `cd' to the
117directory where you want the object files and executables to go and run
118the `configure' script. `configure' automatically checks for the
119source code in the directory that `configure' is in and in `..'. This
120is known as a "VPATH" build.
121
122 With a non-GNU `make', it is safer to compile the package for one
123architecture at a time in the source code directory. After you have
124installed the package for one architecture, use `make distclean' before
125reconfiguring for another architecture.
126
127 On MacOS X 10.5 and later systems, you can create libraries and
128executables that work on multiple system types--known as "fat" or
129"universal" binaries--by specifying multiple `-arch' options to the
130compiler but only a single `-arch' option to the preprocessor. Like
131this:
132
133 ./configure CC="gcc -arch i386 -arch x86_64 -arch ppc -arch ppc64" \
134 CXX="g++ -arch i386 -arch x86_64 -arch ppc -arch ppc64" \
135 CPP="gcc -E" CXXCPP="g++ -E"
136
137 This is not guaranteed to produce working output in all cases, you
138may have to build one architecture at a time and combine the results
139using the `lipo' tool if you have problems.
140
141Installation Names
142==================
143
144 By default, `make install' installs the package's commands under
145`/usr/local/bin', include files under `/usr/local/include', etc. You
146can specify an installation prefix other than `/usr/local' by giving
147`configure' the option `--prefix=PREFIX', where PREFIX must be an
148absolute file name.
149
150 You can specify separate installation prefixes for
151architecture-specific files and architecture-independent files. If you
152pass the option `--exec-prefix=PREFIX' to `configure', the package uses
153PREFIX as the prefix for installing programs and libraries.
154Documentation and other data files still use the regular prefix.
155
156 In addition, if you use an unusual directory layout you can give
157options like `--bindir=DIR' to specify different values for particular
158kinds of files. Run `configure --help' for a list of the directories
159you can set and what kinds of files go in them. In general, the
160default for these options is expressed in terms of `${prefix}', so that
161specifying just `--prefix' will affect all of the other directory
162specifications that were not explicitly provided.
163
164 The most portable way to affect installation locations is to pass the
165correct locations to `configure'; however, many packages provide one or
166both of the following shortcuts of passing variable assignments to the
167`make install' command line to change installation locations without
168having to reconfigure or recompile.
169
170 The first method involves providing an override variable for each
171affected directory. For example, `make install
172prefix=/alternate/directory' will choose an alternate location for all
173directory configuration variables that were expressed in terms of
174`${prefix}'. Any directories that were specified during `configure',
175but not in terms of `${prefix}', must each be overridden at install
176time for the entire installation to be relocated. The approach of
177makefile variable overrides for each directory variable is required by
178the GNU Coding Standards, and ideally causes no recompilation.
179However, some platforms have known limitations with the semantics of
180shared libraries that end up requiring recompilation when using this
181method, particularly noticeable in packages that use GNU Libtool.
182
183 The second method involves providing the `DESTDIR' variable. For
184example, `make install DESTDIR=/alternate/directory' will prepend
185`/alternate/directory' before all installation names. The approach of
186`DESTDIR' overrides is not required by the GNU Coding Standards, and
187does not work on platforms that have drive letters. On the other hand,
188it does better at avoiding recompilation issues, and works well even
189when some directory options were not specified in terms of `${prefix}'
190at `configure' time.
191
192Optional Features
193=================
194
195 If the package supports it, you can cause programs to be installed
196with an extra prefix or suffix on their names by giving `configure' the
197option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'.
198
199 Some packages pay attention to `--enable-FEATURE' options to
200`configure', where FEATURE indicates an optional part of the package.
201They may also pay attention to `--with-PACKAGE' options, where PACKAGE
202is something like `gnu-as' or `x' (for the X Window System). The
203`README' should mention any `--enable-' and `--with-' options that the
204package recognizes.
205
206 For packages that use the X Window System, `configure' can usually
207find the X include and library files automatically, but if it doesn't,
208you can use the `configure' options `--x-includes=DIR' and
209`--x-libraries=DIR' to specify their locations.
210
211 Some packages offer the ability to configure how verbose the
212execution of `make' will be. For these packages, running `./configure
213--enable-silent-rules' sets the default to minimal output, which can be
214overridden with `make V=1'; while running `./configure
215--disable-silent-rules' sets the default to verbose, which can be
216overridden with `make V=0'.
217
218Particular systems
219==================
220
221 On HP-UX, the default C compiler is not ANSI C compatible. If GNU
222CC is not installed, it is recommended to use the following options in
223order to use an ANSI C compiler:
224
225 ./configure CC="cc -Ae -D_XOPEN_SOURCE=500"
226
227and if that doesn't work, install pre-built binaries of GCC for HP-UX.
228
229 HP-UX `make' updates targets which have the same time stamps as
230their prerequisites, which makes it generally unusable when shipped
231generated files such as `configure' are involved. Use GNU `make'
232instead.
233
234 On OSF/1 a.k.a. Tru64, some versions of the default C compiler cannot
235parse its `<wchar.h>' header file. The option `-nodtk' can be used as
236a workaround. If GNU CC is not installed, it is therefore recommended
237to try
238
239 ./configure CC="cc"
240
241and if that doesn't work, try
242
243 ./configure CC="cc -nodtk"
244
245 On Solaris, don't put `/usr/ucb' early in your `PATH'. This
246directory contains several dysfunctional programs; working variants of
247these programs are available in `/usr/bin'. So, if you need `/usr/ucb'
248in your `PATH', put it _after_ `/usr/bin'.
249
250 On Haiku, software installed for all users goes in `/boot/common',
251not `/usr/local'. It is recommended to use the following options:
252
253 ./configure --prefix=/boot/common
254
255Specifying the System Type
256==========================
257
258 There may be some features `configure' cannot figure out
259automatically, but needs to determine by the type of machine the package
260will run on. Usually, assuming the package is built to be run on the
261_same_ architectures, `configure' can figure that out, but if it prints
262a message saying it cannot guess the machine type, give it the
263`--build=TYPE' option. TYPE can either be a short name for the system
264type, such as `sun4', or a canonical name which has the form:
265
266 CPU-COMPANY-SYSTEM
267
268where SYSTEM can have one of these forms:
269
270 OS
271 KERNEL-OS
272
273 See the file `config.sub' for the possible values of each field. If
274`config.sub' isn't included in this package, then this package doesn't
275need to know the machine type.
276
277 If you are _building_ compiler tools for cross-compiling, you should
278use the option `--target=TYPE' to select the type of system they will
279produce code for.
280
281 If you want to _use_ a cross compiler, that generates code for a
282platform different from the build platform, you should specify the
283"host" platform (i.e., that on which the generated programs will
284eventually be run) with `--host=TYPE'.
285
286Sharing Defaults
287================
288
289 If you want to set default values for `configure' scripts to share,
290you can create a site shell script called `config.site' that gives
291default values for variables like `CC', `cache_file', and `prefix'.
292`configure' looks for `PREFIX/share/config.site' if it exists, then
293`PREFIX/etc/config.site' if it exists. Or, you can set the
294`CONFIG_SITE' environment variable to the location of the site script.
295A warning: not all `configure' scripts look for a site script.
296
297Defining Variables
298==================
299
300 Variables not defined in a site shell script can be set in the
301environment passed to `configure'. However, some packages may run
302configure again during the build, and the customized values of these
303variables may be lost. In order to avoid this problem, you should set
304them in the `configure' command line, using `VAR=value'. For example:
305
306 ./configure CC=/usr/local2/bin/gcc
307
308causes the specified `gcc' to be used as the C compiler (unless it is
309overridden in the site shell script).
310
311Unfortunately, this technique does not work for `CONFIG_SHELL' due to
312an Autoconf limitation. Until the limitation is lifted, you can use
313this workaround:
314
315 CONFIG_SHELL=/bin/bash ./configure CONFIG_SHELL=/bin/bash
316
317`configure' Invocation
318======================
319
320 `configure' recognizes the following options to control how it
321operates.
322
323`--help'
324`-h'
325 Print a summary of all of the options to `configure', and exit.
326
327`--help=short'
328`--help=recursive'
329 Print a summary of the options unique to this package's
330 `configure', and exit. The `short' variant lists options used
331 only in the top level, while the `recursive' variant lists options
332 also present in any nested packages.
333
334`--version'
335`-V'
336 Print the version of Autoconf used to generate the `configure'
337 script, and exit.
338
339`--cache-file=FILE'
340 Enable the cache: use and save the results of the tests in FILE,
341 traditionally `config.cache'. FILE defaults to `/dev/null' to
342 disable caching.
343
344`--config-cache'
345`-C'
346 Alias for `--cache-file=config.cache'.
347
348`--quiet'
349`--silent'
350`-q'
351 Do not print messages saying which checks are being made. To
352 suppress all normal output, redirect it to `/dev/null' (any error
353 messages will still be shown).
354
355`--srcdir=DIR'
356 Look for the package's source code in directory DIR. Usually
357 `configure' can determine that directory automatically.
358
359`--prefix=DIR'
360 Use DIR as the installation prefix. *note Installation Names::
361 for more details, including other options available for fine-tuning
362 the installation locations.
363
364`--no-create'
365`-n'
366 Run the configure checks, but stop before creating any output
367 files.
368
369`configure' also accepts some other, not widely useful, options. Run
370`configure --help' for more details.
diff --git a/Makefile.am b/Makefile.am
new file mode 100644
index 0000000..0443aaa
--- /dev/null
+++ b/Makefile.am
@@ -0,0 +1,32 @@
1ACLOCAL_AMFLAGS = -I m4
2AUTOMAKE_OPTIONS = subdir-objects
3MAINTAINERCLEANFILES = Makefile.in aclocal.m4 config.guess config.h.in \
4 config.sub configure compile depcomp install-sh ltmain.sh \
5 missing module.desktop config.rpath mkinstalldirs
6
7
8include src/Makefile.mk
9#if HAVE_PO
10
11#SUBDIRS += po
12
13#endif
14
15filesdir = $(module_dir)/$(PACKAGE)
16files_DATA = module.desktop #e-module-compiz.edj # images/icon.png
17
18EXTRA_DIST = module.desktop.in
19# e_modules-compiz.spec.in \
20# e-module-compiz.edc \
21# epic-e-256.png \
22# win_shadow.png
23
24#e-module-compiz.edj: e-module-compiz.edc
25# $(EDJE_CC) -id $(top_srcdir) $< $@
26
27clean-local:
28 rm -rf *.edj module.desktop e_modules-compiz.spec *~
29
30uninstall-local:
31 rm -rf $(DESTDIR)$(module_dir)/$(PACKAGE)
32
diff --git a/NEWS b/NEWS
new file mode 100644
index 0000000..81553b1
--- /dev/null
+++ b/NEWS
@@ -0,0 +1,8 @@
1Release 1.0.1
2--------------------
3
4Mike Blumenkrantz (3):
5 raise client zoom obj on mouse in
6 fix input regions on shaded clients after desk flip
7 fix multiscreen zoom and current desks zoom
8
diff --git a/README b/README
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/README
diff --git a/autogen.sh b/autogen.sh
new file mode 100755
index 0000000..ae01364
--- /dev/null
+++ b/autogen.sh
@@ -0,0 +1,17 @@
1#!/bin/sh
2
3rm -rf autom4te.cache
4rm -f aclocal.m4 ltmain.sh
5
6touch README
7
8echo "Running autopoint..." ; autopoint -f || :
9echo "Running aclocal..." ; aclocal -I m4 $ACLOCAL_FLAGS || exit 1
10echo "Running autoheader..." ; autoheader || exit 1
11echo "Running autoconf..." ; autoconf || exit 1
12echo "Running libtoolize..." ; (libtoolize --copy --automake || glibtoolize --automake) || exit 1
13echo "Running automake..." ; automake --add-missing --copy --gnu || exit 1
14
15if [ -z "$NOCONFIGURE" ]; then
16 ./configure "$@"
17fi
diff --git a/configure.ac b/configure.ac
new file mode 100644
index 0000000..e166bfb
--- /dev/null
+++ b/configure.ac
@@ -0,0 +1,84 @@
1AC_INIT(compiz, 0.0.1, zmike@enlightenment.org)
2AC_CONFIG_MACRO_DIR([m4])
3AC_PREREQ(2.52)
4AC_CONFIG_SRCDIR(configure.ac)
5AC_CANONICAL_BUILD
6AC_CANONICAL_HOST
7AC_ISC_POSIX
8
9AM_INIT_AUTOMAKE([1.8 dist-xz])
10AM_CONFIG_HEADER(config.h)
11m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
12
13AC_PROG_CC
14AM_PROG_CC_STDC
15
16define([AC_LIBTOOL_LANG_CXX_CONFIG], [:])dnl
17define([AC_LIBTOOL_LANG_F77_CONFIG], [:])dnl
18AC_PROG_LIBTOOL
19
20#m4_ifdef([AM_GNU_GETTEXT_VERSION], [
21#AM_GNU_GETTEXT_VERSION([0.14])
22#])
23
24#m4_ifdef([AM_GNU_GETTEXT], [
25#AM_GNU_GETTEXT([external])
26#po_makefile_in=po/Makefile.in
27#AM_CONDITIONAL([HAVE_PO], [true])
28#],[
29#AM_CONDITIONAL([HAVE_PO], [false])
30#])
31#AC_SUBST(LTLIBINTL)
32
33PKG_CHECK_MODULES([E], [enlightenment >= 0.19.99 compiz < 0.9 libxml-2.0])
34release=$(pkg-config --variable=release enlightenment)
35MODULE_ARCH="$host_os-$host_cpu-$release"
36AC_SUBST(MODULE_ARCH)
37AC_DEFINE_UNQUOTED(MODULE_ARCH, "$MODULE_ARCH", "Module architecture")
38
39module_dir="$(pkg-config --variable=modules enlightenment)"
40AC_SUBST(module_dir)
41# Find edje_cc
42AC_ARG_WITH(edje-cc,
43 AC_HELP_STRING([--with-edje-cc=PATH], [specify a specific path to edje_cc]),
44 [
45 v=$withval;
46 EDJE_CC=$v
47 ],[
48 EDJE_CC=$(pkg-config --variable=prefix edje)/bin/edje_cc
49 ]
50)
51AC_SUBST(EDJE_CC)
52AC_MSG_CHECKING([Which edje_cc to use])
53AC_MSG_RESULT(${EDJE_CC})
54
55with_gles=no
56AC_ARG_WITH(gles,
57 AC_HELP_STRING([--with-gles], [specify whether to enable GLES hacks])
58)
59if test "$with_gles" = yes; then
60 AC_DEFINE_UNQUOTED([HAVE_JWZGLES], [1], [using jwz's gl hacks])
61 AC_MSG_RESULT(using OpenGL ES compatiblity shim)
62elif test "$with_gles" != no; then
63 echo "error: must be yes or no: --with-gles"
64 exit 1
65fi
66AM_CONDITIONAL([gles], [test "$with_gles" = yes])
67plugindir=$libdir/compiz
68AC_SUBST(plugindir)
69
70imagedir=$datadir/compiz
71AC_SUBST(imagedir)
72
73metadatadir=$datadir/compiz
74AC_SUBST(metadatadir)
75
76AC_OUTPUT([
77Makefile
78module.desktop
79e_modules-compiz.spec
80], [
81])
82
83#$po_makefile_in
84
diff --git a/e-module-compiz.edc b/e-module-compiz.edc
new file mode 100644
index 0000000..bb24447
--- /dev/null
+++ b/e-module-compiz.edc
@@ -0,0 +1,508 @@
1collections {
2 group { name: "icon";
3 images.image: "epic-e-256.png" COMP;
4 parts {
5 part { name: "icon"; mouse_events: 0;
6 description { state: "default";
7 aspect_preference: BOTH;
8 image.normal: "epic-e-256.png";
9 }
10 }
11 }
12 }
13 group { name: "e/modules/desksanity/moveresize";
14 parts {
15 part { name: "outline"; type: TEXT; mouse_events: 0;
16 effect: OUTLINE;
17 scale: 1;
18 description { state: "default" 0.0;
19 rel1.to: "e.text";
20 rel1.offset: -1 -1;
21 rel2.to: "e.text";
22 color: 0 0 0 255;
23 color2: 0 0 0 255;
24 color3: 0 0 0 255;
25 text { font: "Sans"; size: 16;
26 text_source: "e.text";
27 min: 1 1;
28 ellipsis: -1;
29 }
30 }
31 }
32 part { name: "e.text"; type: TEXT; mouse_events: 0;
33 effect: GLOW;
34 scale: 1;
35 description { state: "default" 0.0;
36 color: 51 153 255 255;
37 color2: 51 153 255 24;
38 color3: 51 153 255 18;
39 text { font: "Sans"; size: 16;
40 min: 1 1;
41 ellipsis: -1;
42 }
43 }
44 }
45 }
46 }
47 group { name: "e/modules/desksanity/zoom/base"; program_source: "e";
48 parts {
49 rect { "drag_clip"; nomouse;
50 desc { hid; }
51 desc { "vis";
52 link.base: "e,state,dragging";
53 }
54 }
55 rect { "zoomt"; clip: "drag_clip"; nomouse;
56 desc {
57 min: 0 4;
58 max: -1 4;
59 fixed: 1 1;
60 rel2.relative: 1 0;
61 color: 51 153 255 0;
62 hid;
63 }
64 desc { "enable"; inherit: "default";
65 color: 51 153 255 200;
66 vis;
67 }
68 desc { "anim"; inherit: "enable";
69 rel1.relative: 0.5 0.5;
70 rel2.relative: 0.5 0.5;
71 }
72 }
73 rect { "zooml"; clip: "drag_clip"; nomouse;
74 desc {
75 min: 4 0;
76 max: 4 -1;
77 fixed: 1 1;
78 rel2.relative: 0 1;
79 color: 51 153 255 0;
80 hid;
81 }
82 desc { "enable"; inherit: "default";
83 color: 51 153 255 200;
84 vis;
85 }
86 desc { "anim"; inherit: "enable";
87 rel1.relative: 0.5 0.5;
88 rel2.relative: 0.5 0.5;
89 }
90 }
91 rect { "zoomr"; clip: "drag_clip"; nomouse;
92 desc {
93 min: 4 0;
94 max: 4 -1;
95 fixed: 1 1;
96 rel1.relative: 1 0;
97 color: 51 153 255 0;
98 hid;
99 }
100 desc { "enable"; inherit: "default";
101 color: 51 153 255 200;
102 vis;
103 }
104 desc { "anim"; inherit: "enable";
105 rel1.relative: 0.5 0.5;
106 rel2.relative: 0.5 0.5;
107 }
108 }
109 rect { "zoomb"; clip: "drag_clip"; nomouse;
110 desc {
111 min: 0 4;
112 max: -1 4;
113 fixed: 1 1;
114 rel1.relative: 0 1;
115 color: 51 153 255 0;
116 hid;
117 }
118 desc { "enable"; inherit: "default";
119 color: 51 153 255 200;
120 vis;
121 }
122 desc { "anim"; inherit: "enable";
123 rel1.relative: 0.5 0.5;
124 rel2.relative: 0.5 0.5;
125 }
126 }
127 program { signal: "e,state,current";
128 after: "drag_start";
129 }
130 program { "drag_start"; filter: "drag_clip" "vis";
131 signal: "mouse,in"; source: "events";
132 action: STATE_SET "enable";
133 transition: LINEAR 0.1;
134 targets: "zoomt" "zooml" "zoomr" "zoomb";
135 after: "drag_anim";
136 }
137 program { filter: "drag_clip" "vis";
138 signal: "mouse,out"; source: "events";
139 action: STATE_SET "default";
140 transition: ACCEL 0.1;
141 targets: "zoomt" "zooml" "zoomr" "zoomb";
142 }
143 program { "drag_anim";
144 action: STATE_SET "anim";
145 transition: ACCEL 0.8;
146 targets: "zoomt" "zooml" "zoomr" "zoomb";
147 after: "drag_anim2";
148 }
149 program { "drag_anim2";
150 action: STATE_SET "default";
151 targets: "zoomt" "zooml" "zoomr" "zoomb";
152 after: "drag_anim";
153 }
154 swallow { "e.swallow.background"; clip: "clip";
155 }
156 rect { "fader";
157 desc {
158 color: 0 0 0 0;
159 link.base: "e,state,dragging";
160 link.transition: LINEAR 0.3;
161 link.base: "e,state,inactive";
162 link.transition: LINEAR 0.3;
163 link.after: "fade_post";
164 }
165 desc { "fade";
166 color: 0 0 0 192;
167 link.base: "e,state,active";
168 link.transition: LINEAR 0.3;
169 }
170 program { "fade_post";
171 action: SIGNAL_EMIT "e,action,done" "e";
172 }
173 }
174 rect { "clip";
175 desc { hid; color: 255 255 255 0;
176 link.base: "e,state,dragging";
177 link.transition: LINEAR 0.3;
178 link.base: "e,state,inactive";
179 link.transition: LINEAR 0.3;
180 }
181 desc { "active";
182 link.base: "e,state,active";
183 link.transition: LINEAR 0.3;
184 }
185 }
186 swallow { "e.swallow.layout"; clip: "clip"; }
187 program { signal: "e,state,inactive";
188 action: SIGNAL_EMIT "e,state,hiding" "e";
189 }
190 rect { "events"; repeat;
191 desc { color: 0 0 0 0; }
192 }
193 }
194 }
195 group { name: "e/modules/desksanity/zoom/scrollframe";
196 parts {
197 rect { "clipper"; nomouse;
198 desc {
199 rel1.to: "elm.swallow.content";
200 rel2.to: "elm.swallow.content";
201 }
202 }
203 swallow { "elm.swallow.content";
204 clip: "clipper";
205 }
206 }
207 }
208 group { name: "e/modules/desksanity/zoom/client"; nomouse;
209 images.image: "win_shadow.png" COMP;
210 script {
211 public message(Msg_Type:type, id, ...) {
212 if (type == MSG_INT_SET) {
213 /* client diff geom[4] */
214 new x, y, w, h;
215
216 x = getarg(2);
217 y = getarg(3);
218 w = getarg(4);
219 h = getarg(5);
220
221 custom_state(PART:"spacer", "default", 0.0);
222 set_state_val(PART:"spacer", STATE_REL1_OFFSET, x, y);
223 set_state_val(PART:"spacer", STATE_REL2_OFFSET, w, h);
224 set_state(PART:"spacer", "custom", 0.0);
225 }
226 }
227 }
228 parts {
229 spacer { "spacer";
230 program { signal: "e,action,show"; source: "e";
231 action: STATE_SET "default" 0.0;
232 transition: LINEAR 0.3;
233 target: "spacer";
234 //after: "idle";
235 }
236 program { signal: "e,action,hide"; source: "e";
237 action: STATE_SET "custom" 0.0;
238 transition: LINEAR 0.3;
239 target: "spacer";
240 }
241 }
242 part { "shadow"; clip: "clip";
243 desc {
244 image.normal: "win_shadow.png";
245 image.border: 14 14 14 14;
246 image.middle: 0;
247 rel1.to: "e.swallow.client";
248 rel1.offset: -7 -3;
249 rel2.to: "e.swallow.client";
250 rel2.offset: 6 11;
251 fill.smooth: 0;
252 }
253 }
254 rect { "outline";
255 desc {
256 color: 51 153 255 0;
257 rel1.to: "e.swallow.client";
258 rel1.offset: -2 -2;
259 rel2.to: "e.swallow.client";
260 rel2.offset: 2 2;
261 visible: 0;
262 link.base: "e,state,unfocused" "e";
263 link.transition: LINEAR 0.2;
264 }
265 desc { "active"; inherit: "default";
266 color: 51 153 255 170;
267 visible: 1;
268 link.base: "e,state,focused" "e";
269 link.transition: LINEAR 0.2;
270 }
271 }
272 rect { "bg";
273 desc {
274 color: 0 0 0 255;
275 rel1.to: "e.swallow.client";
276 rel2.to: "e.swallow.client";
277 }
278 }
279 swallow { "e.swallow.client"; clip: "clip";
280 desc {
281 rel1.to: "spacer";
282 rel2.to: "spacer";
283 rel1.offset: 10 10;
284 rel2.offset: -10 -10;
285 map.on: 1;
286 link.base: "mouse,out" "events";
287 link.transition: LINEAR 0.2;
288 //link.after: "idle";
289 }
290 desc { "active";
291 rel1.to: "spacer";
292 rel2.to: "spacer";
293 rel2.relative: 1.3 1.3;
294 rel2.offset: -1 -1;
295 link.base: "mouse,in" "events";
296 link.transition: LINEAR 0.2;
297 }
298 desc { "idle1"; inherit: "default";
299 map.on: 1;
300 map.rotation.z: -5;
301 }
302 desc { "idle2"; inherit: "idle1";
303 map.rotation.z: 5;
304 }
305 desc { "idle3"; inherit: "idle1";
306 map.rotation.z: 5;
307 map.rotation.x: -70;
308 }
309 desc { "idle4"; inherit: "idle1";
310 map.rotation.z: 0;
311 map.rotation.x: -360;
312 map.rotation.y: 360;
313 }
314 program { "idle";
315 in: 2.0 10.0;
316 action: STATE_SET "idle1";
317 transition: SINUSOIDAL 6.0;
318 target: "e.swallow.client";
319 sequence {
320 action: STATE_SET "idle2";
321 name: "idle2";
322 transition: SINUSOIDAL 6.0;
323 target: "e.swallow.client";
324 in: 2.0 10.0;
325
326 action: STATE_SET "idle3";
327 name: "idle3";
328 transition: ACCEL 6.0;
329 target: "e.swallow.client";
330 in: 2.0 10.0;
331
332 action: STATE_SET "idle4";
333 name: "idle4";
334 transition: SINUSOIDAL 6.0;
335 target: "e.swallow.client";
336 in: 2.0 10.0;
337 after: "idle";
338 }
339 }
340 }
341 rect { "clip";
342 desc {
343 rel1.offset: -9999 -9999;
344 rel2.offset: 9999 9999;
345 color: 255 255 255 200;
346 link.base: "mouse,out" "events";
347 link.transition: LINEAR 0.2;
348 }
349 desc { "active"; inherit: "default";
350 color: 255 255 255 255;
351 link.base: "mouse,in" "events";
352 link.transition: LINEAR 0.2;
353 }
354 }
355 proxy { "clone";
356 desc {
357 source: "e.swallow.client";
358 rel1.to: "e.swallow.client";
359 rel2.to: "e.swallow.client";
360 hid;
361 color: 255 255 255 0;
362 }
363 desc { "urgent1"; inherit: "default";
364 vis;
365 color: 255 255 255 255;
366 }
367 desc { "urgent2"; inherit: "default";
368 vis;
369 rel1.relative: -0.5 -0.5;
370 rel2.relative: 1.5 1.5;
371 color: 255 255 255 0;
372 }
373 program { name: "urgent";
374 signal: "e,state,urgent"; source: "e";
375 action: ACTION_STOP;
376 target: "go_big";
377 target: "go_big2";
378 after: "go_big";
379 }
380 program { name: "go_big";
381 action: STATE_SET "urgent1" 0.0;
382 target: "clone";
383 after: "go_big2";
384 }
385 program { name: "go_big2";
386 action: STATE_SET "urgent2" 0.0;
387 transition: LINEAR 0.5;
388 target: "clone";
389 after: "go_big";
390 }
391 program { name: "not_urgent";
392 signal: "e,state,not_urgent"; source: "e";
393 action: ACTION_STOP;
394 target: "go_big";
395 target: "go_big2";
396 after: "go_hid";
397 }
398 program { name: "go_hid";
399 action: STATE_SET "default" 0.0;
400 transition: LINEAR 0.5;
401 target: "clone";
402 }
403 }
404 text { "e.text.title"; clip: "clip"; effect: OUTLINE;
405 desc {
406 fixed: 1 1;
407 align: 0.0 0.0;
408 rel1.to_x: "e.swallow.icon";
409 rel1.to_y: "e.swallow.client";
410 rel1.relative: 1.0 1.0;
411 rel1.offset: 0 10;
412 rel2.to: "e.swallow.client";
413 color: 255 255 255 255;
414 color2: 0 0 0 255;
415 text {
416 font: "Sans:style=Bold"; size: 12;
417 }
418 }
419 }
420 swallow { "e.swallow.icon"; clip: "clip";
421 desc {
422 fixed: 1 1;
423 min: 16 16;
424 align: 0.0 0.0;
425 rel1.to_x: "e.swallow.client";
426 rel1.to_y: "e.text.title";
427 rel1.offset: 0 -6;
428 rel2.to: "e.swallow.client";
429 rel2.relative: 0.0 1.0;
430 }
431 }
432 rect { "events"; mouse; repeat;
433 desc { color: 0 0 0 0; };
434 program { signal: "mouse,clicked,1"; source: "events";
435 action: SIGNAL_EMIT "e,action,activate" "e";
436 }
437 program { signal: "mouse,in"; source: "events";
438 action: SIGNAL_EMIT "e,state,active" "e";
439 sequence {
440 action: ACTION_STOP;
441 targets: "idle" "idle2" "idle3" "idle4";
442 }
443 }
444 program { signal: "mouse,out"; source: "events";
445 action: SIGNAL_EMIT "e,state,inactive" "e";
446 }
447 }
448 }
449 }
450 group { "e/modules/desksanity/zoom/client/drag";
451 images.image: "win_shadow.png" COMP;
452 script {
453 public message(Msg_Type:type, id, ...) {
454 if (type == MSG_INT_SET) {
455 /* client diff geom[4] */
456 new x, y, w, h;
457
458 x = getarg(2);
459 y = getarg(3);
460 w = getarg(4);
461 h = getarg(5);
462
463 custom_state(PART:"e.swallow.client", "default", 0.0);
464 set_state_val(PART:"e.swallow.client", STATE_REL1_OFFSET, x, y);
465 set_state_val(PART:"e.swallow.client", STATE_REL2_OFFSET, w, h);
466 }
467 }
468 }
469 parts {
470 rect { "clip";
471 desc {}
472 desc { "hid"; hid;
473 color: 255 255 255 0;
474 link.base: "e,drag,release" "e";
475 link.transition: LINEAR 0.1;
476 }
477 }
478 image { "shadow"; clip: "clip";
479 desc {
480 image.normal: "win_shadow.png";
481 image.border: 14 14 14 14;
482 image.middle: 0;
483 rel1.to: "e.swallow.client";
484 rel1.offset: -7 -3;
485 rel2.to: "e.swallow.client";
486 rel2.offset: 6 11;
487 fill.smooth: 0;
488 }
489 }
490 swallow { "e.swallow.client"; }
491 rect { "over"; clip: "clip";
492 desc {
493 rel1.to: "e.swallow.client";
494 rel2.to: "e.swallow.client";
495 color: 255 255 255 90;
496 }
497 }
498 program { signal: "e,drag,release"; source: "e";
499 action: STATE_SET "custom";
500 target: "e.swallow.client";
501 transition: LINEAR 0.1;
502 sequence {
503 action: SIGNAL_EMIT "e,action,done" "e";
504 }
505 }
506 }
507 }
508}
diff --git a/e_modules-compiz.spec.in b/e_modules-compiz.spec.in
new file mode 100644
index 0000000..c7ddd6d
--- /dev/null
+++ b/e_modules-compiz.spec.in
@@ -0,0 +1,48 @@
1%define module_name desksanity
2%{!?_rel:%{expand:%%global _rel 0.enl%{?dist}}}
3
4Summary: %{module_name} module for the Enlightenment window manager
5Name: e_modules-%{module_name}
6Version: @VERSION@
7Release: %{_rel}
8License: BSD
9Group: User Interface/Desktops
10URL: http://www.enlightenment.org/
11Source: ftp://ftp.enlightenment.org/pub/enlightenment/%{module_name}-%{version}.tar.gz
12Packager: %{?_packager:%{_packager}}%{!?_packager:Michael Jennings <mej@eterm.org>}
13Vendor: %{?_vendorinfo:%{_vendorinfo}}%{!?_vendorinfo:The Enlightenment Project (http://www.enlightenment.org/)}
14Distribution: %{?_distribution:%{_distribution}}%{!?_distribution:%{_vendor}}
15BuildRequires: efx-devel
16BuildRequires: efx-devel, enlightenment-devel >= 0.18.999
17Requires: enlightenment >= 0.18.999
18BuildRoot: %{_tmppath}/%{name}-%{version}-root
19
20%description
21%{module_name} module for the Enlightenment window manager.
22
23%prep
24%setup -q -n %{module_name}-%{version}
25
26%build
27%{configure}
28%{__make} %{?_smp_mflags} %{?mflags}
29
30%install
31%{__make} %{?mflags_install} DESTDIR=$RPM_BUILD_ROOT install
32%{find_lang} %{module_name} || true > %{module_name}.lang
33
34%clean
35test "x$RPM_BUILD_ROOT" != "x/" && rm -rf $RPM_BUILD_ROOT
36
37%post
38/sbin/ldconfig
39
40%postun
41/sbin/ldconfig
42
43%files -f %{module_name}.lang
44%defattr(-, root, root)
45%doc AUTHORS ChangeLog COPYING* INSTALL NEWS README
46%{_libdir}/enlightenment/modules/%{module_name}*
47
48%changelog
diff --git a/epic-e-256.png b/epic-e-256.png
new file mode 100644
index 0000000..1180920
--- /dev/null
+++ b/epic-e-256.png
Binary files differ
diff --git a/m4/.gitignore b/m4/.gitignore
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/m4/.gitignore
diff --git a/m4/libtool.m4 b/m4/libtool.m4
new file mode 100644
index 0000000..f12cfdf
--- /dev/null
+++ b/m4/libtool.m4
@@ -0,0 +1,7992 @@
1# libtool.m4 - Configure libtool for the host system. -*-Autoconf-*-
2#
3# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
4# 2006, 2007, 2008, 2009, 2010, 2011 Free Software
5# Foundation, Inc.
6# Written by Gordon Matzigkeit, 1996
7#
8# This file is free software; the Free Software Foundation gives
9# unlimited permission to copy and/or distribute it, with or without
10# modifications, as long as this notice is preserved.
11
12m4_define([_LT_COPYING], [dnl
13# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005,
14# 2006, 2007, 2008, 2009, 2010, 2011 Free Software
15# Foundation, Inc.
16# Written by Gordon Matzigkeit, 1996
17#
18# This file is part of GNU Libtool.
19#
20# GNU Libtool is free software; you can redistribute it and/or
21# modify it under the terms of the GNU General Public License as
22# published by the Free Software Foundation; either version 2 of
23# the License, or (at your option) any later version.
24#
25# As a special exception to the GNU General Public License,
26# if you distribute this file as part of a program or library that
27# is built using GNU Libtool, you may include this file under the
28# same distribution terms that you use for the rest of that program.
29#
30# GNU Libtool is distributed in the hope that it will be useful,
31# but WITHOUT ANY WARRANTY; without even the implied warranty of
32# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
33# GNU General Public License for more details.
34#
35# You should have received a copy of the GNU General Public License
36# along with GNU Libtool; see the file COPYING. If not, a copy
37# can be downloaded from http://www.gnu.org/licenses/gpl.html, or
38# obtained by writing to the Free Software Foundation, Inc.,
39# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
40])
41
42# serial 57 LT_INIT
43
44
45# LT_PREREQ(VERSION)
46# ------------------
47# Complain and exit if this libtool version is less that VERSION.
48m4_defun([LT_PREREQ],
49[m4_if(m4_version_compare(m4_defn([LT_PACKAGE_VERSION]), [$1]), -1,
50 [m4_default([$3],
51 [m4_fatal([Libtool version $1 or higher is required],
52 63)])],
53 [$2])])
54
55
56# _LT_CHECK_BUILDDIR
57# ------------------
58# Complain if the absolute build directory name contains unusual characters
59m4_defun([_LT_CHECK_BUILDDIR],
60[case `pwd` in
61 *\ * | *\ *)
62 AC_MSG_WARN([Libtool does not cope well with whitespace in `pwd`]) ;;
63esac
64])
65
66
67# LT_INIT([OPTIONS])
68# ------------------
69AC_DEFUN([LT_INIT],
70[AC_PREREQ([2.58])dnl We use AC_INCLUDES_DEFAULT
71AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl
72AC_BEFORE([$0], [LT_LANG])dnl
73AC_BEFORE([$0], [LT_OUTPUT])dnl
74AC_BEFORE([$0], [LTDL_INIT])dnl
75m4_require([_LT_CHECK_BUILDDIR])dnl
76
77dnl Autoconf doesn't catch unexpanded LT_ macros by default:
78m4_pattern_forbid([^_?LT_[A-Z_]+$])dnl
79m4_pattern_allow([^(_LT_EOF|LT_DLGLOBAL|LT_DLLAZY_OR_NOW|LT_MULTI_MODULE)$])dnl
80dnl aclocal doesn't pull ltoptions.m4, ltsugar.m4, or ltversion.m4
81dnl unless we require an AC_DEFUNed macro:
82AC_REQUIRE([LTOPTIONS_VERSION])dnl
83AC_REQUIRE([LTSUGAR_VERSION])dnl
84AC_REQUIRE([LTVERSION_VERSION])dnl
85AC_REQUIRE([LTOBSOLETE_VERSION])dnl
86m4_require([_LT_PROG_LTMAIN])dnl
87
88_LT_SHELL_INIT([SHELL=${CONFIG_SHELL-/bin/sh}])
89
90dnl Parse OPTIONS
91_LT_SET_OPTIONS([$0], [$1])
92
93# This can be used to rebuild libtool when needed
94LIBTOOL_DEPS="$ltmain"
95
96# Always use our own libtool.
97LIBTOOL='$(SHELL) $(top_builddir)/libtool'
98AC_SUBST(LIBTOOL)dnl
99
100_LT_SETUP
101
102# Only expand once:
103m4_define([LT_INIT])
104])# LT_INIT
105
106# Old names:
107AU_ALIAS([AC_PROG_LIBTOOL], [LT_INIT])
108AU_ALIAS([AM_PROG_LIBTOOL], [LT_INIT])
109dnl aclocal-1.4 backwards compatibility:
110dnl AC_DEFUN([AC_PROG_LIBTOOL], [])
111dnl AC_DEFUN([AM_PROG_LIBTOOL], [])
112
113
114# _LT_CC_BASENAME(CC)
115# -------------------
116# Calculate cc_basename. Skip known compiler wrappers and cross-prefix.
117m4_defun([_LT_CC_BASENAME],
118[for cc_temp in $1""; do
119 case $cc_temp in
120 compile | *[[\\/]]compile | ccache | *[[\\/]]ccache ) ;;
121 distcc | *[[\\/]]distcc | purify | *[[\\/]]purify ) ;;
122 \-*) ;;
123 *) break;;
124 esac
125done
126cc_basename=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"`
127])
128
129
130# _LT_FILEUTILS_DEFAULTS
131# ----------------------
132# It is okay to use these file commands and assume they have been set
133# sensibly after `m4_require([_LT_FILEUTILS_DEFAULTS])'.
134m4_defun([_LT_FILEUTILS_DEFAULTS],
135[: ${CP="cp -f"}
136: ${MV="mv -f"}
137: ${RM="rm -f"}
138])# _LT_FILEUTILS_DEFAULTS
139
140
141# _LT_SETUP
142# ---------
143m4_defun([_LT_SETUP],
144[AC_REQUIRE([AC_CANONICAL_HOST])dnl
145AC_REQUIRE([AC_CANONICAL_BUILD])dnl
146AC_REQUIRE([_LT_PREPARE_SED_QUOTE_VARS])dnl
147AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])dnl
148
149_LT_DECL([], [PATH_SEPARATOR], [1], [The PATH separator for the build system])dnl
150dnl
151_LT_DECL([], [host_alias], [0], [The host system])dnl
152_LT_DECL([], [host], [0])dnl
153_LT_DECL([], [host_os], [0])dnl
154dnl
155_LT_DECL([], [build_alias], [0], [The build system])dnl
156_LT_DECL([], [build], [0])dnl
157_LT_DECL([], [build_os], [0])dnl
158dnl
159AC_REQUIRE([AC_PROG_CC])dnl
160AC_REQUIRE([LT_PATH_LD])dnl
161AC_REQUIRE([LT_PATH_NM])dnl
162dnl
163AC_REQUIRE([AC_PROG_LN_S])dnl
164test -z "$LN_S" && LN_S="ln -s"
165_LT_DECL([], [LN_S], [1], [Whether we need soft or hard links])dnl
166dnl
167AC_REQUIRE([LT_CMD_MAX_LEN])dnl
168_LT_DECL([objext], [ac_objext], [0], [Object file suffix (normally "o")])dnl
169_LT_DECL([], [exeext], [0], [Executable file suffix (normally "")])dnl
170dnl
171m4_require([_LT_FILEUTILS_DEFAULTS])dnl
172m4_require([_LT_CHECK_SHELL_FEATURES])dnl
173m4_require([_LT_PATH_CONVERSION_FUNCTIONS])dnl
174m4_require([_LT_CMD_RELOAD])dnl
175m4_require([_LT_CHECK_MAGIC_METHOD])dnl
176m4_require([_LT_CHECK_SHAREDLIB_FROM_LINKLIB])dnl
177m4_require([_LT_CMD_OLD_ARCHIVE])dnl
178m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
179m4_require([_LT_WITH_SYSROOT])dnl
180
181_LT_CONFIG_LIBTOOL_INIT([
182# See if we are running on zsh, and set the options which allow our
183# commands through without removal of \ escapes INIT.
184if test -n "\${ZSH_VERSION+set}" ; then
185 setopt NO_GLOB_SUBST
186fi
187])
188if test -n "${ZSH_VERSION+set}" ; then
189 setopt NO_GLOB_SUBST
190fi
191
192_LT_CHECK_OBJDIR
193
194m4_require([_LT_TAG_COMPILER])dnl
195
196case $host_os in
197aix3*)
198 # AIX sometimes has problems with the GCC collect2 program. For some
199 # reason, if we set the COLLECT_NAMES environment variable, the problems
200 # vanish in a puff of smoke.
201 if test "X${COLLECT_NAMES+set}" != Xset; then
202 COLLECT_NAMES=
203 export COLLECT_NAMES
204 fi
205 ;;
206esac
207
208# Global variables:
209ofile=libtool
210can_build_shared=yes
211
212# All known linkers require a `.a' archive for static linking (except MSVC,
213# which needs '.lib').
214libext=a
215
216with_gnu_ld="$lt_cv_prog_gnu_ld"
217
218old_CC="$CC"
219old_CFLAGS="$CFLAGS"
220
221# Set sane defaults for various variables
222test -z "$CC" && CC=cc
223test -z "$LTCC" && LTCC=$CC
224test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS
225test -z "$LD" && LD=ld
226test -z "$ac_objext" && ac_objext=o
227
228_LT_CC_BASENAME([$compiler])
229
230# Only perform the check for file, if the check method requires it
231test -z "$MAGIC_CMD" && MAGIC_CMD=file
232case $deplibs_check_method in
233file_magic*)
234 if test "$file_magic_cmd" = '$MAGIC_CMD'; then
235 _LT_PATH_MAGIC
236 fi
237 ;;
238esac
239
240# Use C for the default configuration in the libtool script
241LT_SUPPORTED_TAG([CC])
242_LT_LANG_C_CONFIG
243_LT_LANG_DEFAULT_CONFIG
244_LT_CONFIG_COMMANDS
245])# _LT_SETUP
246
247
248# _LT_PREPARE_SED_QUOTE_VARS
249# --------------------------
250# Define a few sed substitution that help us do robust quoting.
251m4_defun([_LT_PREPARE_SED_QUOTE_VARS],
252[# Backslashify metacharacters that are still active within
253# double-quoted strings.
254sed_quote_subst='s/\([["`$\\]]\)/\\\1/g'
255
256# Same as above, but do not quote variable references.
257double_quote_subst='s/\([["`\\]]\)/\\\1/g'
258
259# Sed substitution to delay expansion of an escaped shell variable in a
260# double_quote_subst'ed string.
261delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g'
262
263# Sed substitution to delay expansion of an escaped single quote.
264delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g'
265
266# Sed substitution to avoid accidental globbing in evaled expressions
267no_glob_subst='s/\*/\\\*/g'
268])
269
270# _LT_PROG_LTMAIN
271# ---------------
272# Note that this code is called both from `configure', and `config.status'
273# now that we use AC_CONFIG_COMMANDS to generate libtool. Notably,
274# `config.status' has no value for ac_aux_dir unless we are using Automake,
275# so we pass a copy along to make sure it has a sensible value anyway.
276m4_defun([_LT_PROG_LTMAIN],
277[m4_ifdef([AC_REQUIRE_AUX_FILE], [AC_REQUIRE_AUX_FILE([ltmain.sh])])dnl
278_LT_CONFIG_LIBTOOL_INIT([ac_aux_dir='$ac_aux_dir'])
279ltmain="$ac_aux_dir/ltmain.sh"
280])# _LT_PROG_LTMAIN
281
282
283## ------------------------------------- ##
284## Accumulate code for creating libtool. ##
285## ------------------------------------- ##
286
287# So that we can recreate a full libtool script including additional
288# tags, we accumulate the chunks of code to send to AC_CONFIG_COMMANDS
289# in macros and then make a single call at the end using the `libtool'
290# label.
291
292
293# _LT_CONFIG_LIBTOOL_INIT([INIT-COMMANDS])
294# ----------------------------------------
295# Register INIT-COMMANDS to be passed to AC_CONFIG_COMMANDS later.
296m4_define([_LT_CONFIG_LIBTOOL_INIT],
297[m4_ifval([$1],
298 [m4_append([_LT_OUTPUT_LIBTOOL_INIT],
299 [$1
300])])])
301
302# Initialize.
303m4_define([_LT_OUTPUT_LIBTOOL_INIT])
304
305
306# _LT_CONFIG_LIBTOOL([COMMANDS])
307# ------------------------------
308# Register COMMANDS to be passed to AC_CONFIG_COMMANDS later.
309m4_define([_LT_CONFIG_LIBTOOL],
310[m4_ifval([$1],
311 [m4_append([_LT_OUTPUT_LIBTOOL_COMMANDS],
312 [$1
313])])])
314
315# Initialize.
316m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS])
317
318
319# _LT_CONFIG_SAVE_COMMANDS([COMMANDS], [INIT_COMMANDS])
320# -----------------------------------------------------
321m4_defun([_LT_CONFIG_SAVE_COMMANDS],
322[_LT_CONFIG_LIBTOOL([$1])
323_LT_CONFIG_LIBTOOL_INIT([$2])
324])
325
326
327# _LT_FORMAT_COMMENT([COMMENT])
328# -----------------------------
329# Add leading comment marks to the start of each line, and a trailing
330# full-stop to the whole comment if one is not present already.
331m4_define([_LT_FORMAT_COMMENT],
332[m4_ifval([$1], [
333m4_bpatsubst([m4_bpatsubst([$1], [^ *], [# ])],
334 [['`$\]], [\\\&])]m4_bmatch([$1], [[!?.]$], [], [.])
335)])
336
337
338
339## ------------------------ ##
340## FIXME: Eliminate VARNAME ##
341## ------------------------ ##
342
343
344# _LT_DECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION], [IS-TAGGED?])
345# -------------------------------------------------------------------
346# CONFIGNAME is the name given to the value in the libtool script.
347# VARNAME is the (base) name used in the configure script.
348# VALUE may be 0, 1 or 2 for a computed quote escaped value based on
349# VARNAME. Any other value will be used directly.
350m4_define([_LT_DECL],
351[lt_if_append_uniq([lt_decl_varnames], [$2], [, ],
352 [lt_dict_add_subkey([lt_decl_dict], [$2], [libtool_name],
353 [m4_ifval([$1], [$1], [$2])])
354 lt_dict_add_subkey([lt_decl_dict], [$2], [value], [$3])
355 m4_ifval([$4],
356 [lt_dict_add_subkey([lt_decl_dict], [$2], [description], [$4])])
357 lt_dict_add_subkey([lt_decl_dict], [$2],
358 [tagged?], [m4_ifval([$5], [yes], [no])])])
359])
360
361
362# _LT_TAGDECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION])
363# --------------------------------------------------------
364m4_define([_LT_TAGDECL], [_LT_DECL([$1], [$2], [$3], [$4], [yes])])
365
366
367# lt_decl_tag_varnames([SEPARATOR], [VARNAME1...])
368# ------------------------------------------------
369m4_define([lt_decl_tag_varnames],
370[_lt_decl_filter([tagged?], [yes], $@)])
371
372
373# _lt_decl_filter(SUBKEY, VALUE, [SEPARATOR], [VARNAME1..])
374# ---------------------------------------------------------
375m4_define([_lt_decl_filter],
376[m4_case([$#],
377 [0], [m4_fatal([$0: too few arguments: $#])],
378 [1], [m4_fatal([$0: too few arguments: $#: $1])],
379 [2], [lt_dict_filter([lt_decl_dict], [$1], [$2], [], lt_decl_varnames)],
380 [3], [lt_dict_filter([lt_decl_dict], [$1], [$2], [$3], lt_decl_varnames)],
381 [lt_dict_filter([lt_decl_dict], $@)])[]dnl
382])
383
384
385# lt_decl_quote_varnames([SEPARATOR], [VARNAME1...])
386# --------------------------------------------------
387m4_define([lt_decl_quote_varnames],
388[_lt_decl_filter([value], [1], $@)])
389
390
391# lt_decl_dquote_varnames([SEPARATOR], [VARNAME1...])
392# ---------------------------------------------------
393m4_define([lt_decl_dquote_varnames],
394[_lt_decl_filter([value], [2], $@)])
395
396
397# lt_decl_varnames_tagged([SEPARATOR], [VARNAME1...])
398# ---------------------------------------------------
399m4_define([lt_decl_varnames_tagged],
400[m4_assert([$# <= 2])dnl
401_$0(m4_quote(m4_default([$1], [[, ]])),
402 m4_ifval([$2], [[$2]], [m4_dquote(lt_decl_tag_varnames)]),
403 m4_split(m4_normalize(m4_quote(_LT_TAGS)), [ ]))])
404m4_define([_lt_decl_varnames_tagged],
405[m4_ifval([$3], [lt_combine([$1], [$2], [_], $3)])])
406
407
408# lt_decl_all_varnames([SEPARATOR], [VARNAME1...])
409# ------------------------------------------------
410m4_define([lt_decl_all_varnames],
411[_$0(m4_quote(m4_default([$1], [[, ]])),
412 m4_if([$2], [],
413 m4_quote(lt_decl_varnames),
414 m4_quote(m4_shift($@))))[]dnl
415])
416m4_define([_lt_decl_all_varnames],
417[lt_join($@, lt_decl_varnames_tagged([$1],
418 lt_decl_tag_varnames([[, ]], m4_shift($@))))dnl
419])
420
421
422# _LT_CONFIG_STATUS_DECLARE([VARNAME])
423# ------------------------------------
424# Quote a variable value, and forward it to `config.status' so that its
425# declaration there will have the same value as in `configure'. VARNAME
426# must have a single quote delimited value for this to work.
427m4_define([_LT_CONFIG_STATUS_DECLARE],
428[$1='`$ECHO "$][$1" | $SED "$delay_single_quote_subst"`'])
429
430
431# _LT_CONFIG_STATUS_DECLARATIONS
432# ------------------------------
433# We delimit libtool config variables with single quotes, so when
434# we write them to config.status, we have to be sure to quote all
435# embedded single quotes properly. In configure, this macro expands
436# each variable declared with _LT_DECL (and _LT_TAGDECL) into:
437#
438# <var>='`$ECHO "$<var>" | $SED "$delay_single_quote_subst"`'
439m4_defun([_LT_CONFIG_STATUS_DECLARATIONS],
440[m4_foreach([_lt_var], m4_quote(lt_decl_all_varnames),
441 [m4_n([_LT_CONFIG_STATUS_DECLARE(_lt_var)])])])
442
443
444# _LT_LIBTOOL_TAGS
445# ----------------
446# Output comment and list of tags supported by the script
447m4_defun([_LT_LIBTOOL_TAGS],
448[_LT_FORMAT_COMMENT([The names of the tagged configurations supported by this script])dnl
449available_tags="_LT_TAGS"dnl
450])
451
452
453# _LT_LIBTOOL_DECLARE(VARNAME, [TAG])
454# -----------------------------------
455# Extract the dictionary values for VARNAME (optionally with TAG) and
456# expand to a commented shell variable setting:
457#
458# # Some comment about what VAR is for.
459# visible_name=$lt_internal_name
460m4_define([_LT_LIBTOOL_DECLARE],
461[_LT_FORMAT_COMMENT(m4_quote(lt_dict_fetch([lt_decl_dict], [$1],
462 [description])))[]dnl
463m4_pushdef([_libtool_name],
464 m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [libtool_name])))[]dnl
465m4_case(m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [value])),
466 [0], [_libtool_name=[$]$1],
467 [1], [_libtool_name=$lt_[]$1],
468 [2], [_libtool_name=$lt_[]$1],
469 [_libtool_name=lt_dict_fetch([lt_decl_dict], [$1], [value])])[]dnl
470m4_ifval([$2], [_$2])[]m4_popdef([_libtool_name])[]dnl
471])
472
473
474# _LT_LIBTOOL_CONFIG_VARS
475# -----------------------
476# Produce commented declarations of non-tagged libtool config variables
477# suitable for insertion in the LIBTOOL CONFIG section of the `libtool'
478# script. Tagged libtool config variables (even for the LIBTOOL CONFIG
479# section) are produced by _LT_LIBTOOL_TAG_VARS.
480m4_defun([_LT_LIBTOOL_CONFIG_VARS],
481[m4_foreach([_lt_var],
482 m4_quote(_lt_decl_filter([tagged?], [no], [], lt_decl_varnames)),
483 [m4_n([_LT_LIBTOOL_DECLARE(_lt_var)])])])
484
485
486# _LT_LIBTOOL_TAG_VARS(TAG)
487# -------------------------
488m4_define([_LT_LIBTOOL_TAG_VARS],
489[m4_foreach([_lt_var], m4_quote(lt_decl_tag_varnames),
490 [m4_n([_LT_LIBTOOL_DECLARE(_lt_var, [$1])])])])
491
492
493# _LT_TAGVAR(VARNAME, [TAGNAME])
494# ------------------------------
495m4_define([_LT_TAGVAR], [m4_ifval([$2], [$1_$2], [$1])])
496
497
498# _LT_CONFIG_COMMANDS
499# -------------------
500# Send accumulated output to $CONFIG_STATUS. Thanks to the lists of
501# variables for single and double quote escaping we saved from calls
502# to _LT_DECL, we can put quote escaped variables declarations
503# into `config.status', and then the shell code to quote escape them in
504# for loops in `config.status'. Finally, any additional code accumulated
505# from calls to _LT_CONFIG_LIBTOOL_INIT is expanded.
506m4_defun([_LT_CONFIG_COMMANDS],
507[AC_PROVIDE_IFELSE([LT_OUTPUT],
508 dnl If the libtool generation code has been placed in $CONFIG_LT,
509 dnl instead of duplicating it all over again into config.status,
510 dnl then we will have config.status run $CONFIG_LT later, so it
511 dnl needs to know what name is stored there:
512 [AC_CONFIG_COMMANDS([libtool],
513 [$SHELL $CONFIG_LT || AS_EXIT(1)], [CONFIG_LT='$CONFIG_LT'])],
514 dnl If the libtool generation code is destined for config.status,
515 dnl expand the accumulated commands and init code now:
516 [AC_CONFIG_COMMANDS([libtool],
517 [_LT_OUTPUT_LIBTOOL_COMMANDS], [_LT_OUTPUT_LIBTOOL_COMMANDS_INIT])])
518])#_LT_CONFIG_COMMANDS
519
520
521# Initialize.
522m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS_INIT],
523[
524
525# The HP-UX ksh and POSIX shell print the target directory to stdout
526# if CDPATH is set.
527(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
528
529sed_quote_subst='$sed_quote_subst'
530double_quote_subst='$double_quote_subst'
531delay_variable_subst='$delay_variable_subst'
532_LT_CONFIG_STATUS_DECLARATIONS
533LTCC='$LTCC'
534LTCFLAGS='$LTCFLAGS'
535compiler='$compiler_DEFAULT'
536
537# A function that is used when there is no print builtin or printf.
538func_fallback_echo ()
539{
540 eval 'cat <<_LTECHO_EOF
541\$[]1
542_LTECHO_EOF'
543}
544
545# Quote evaled strings.
546for var in lt_decl_all_varnames([[ \
547]], lt_decl_quote_varnames); do
548 case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in
549 *[[\\\\\\\`\\"\\\$]]*)
550 eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED \\"\\\$sed_quote_subst\\"\\\`\\\\\\""
551 ;;
552 *)
553 eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
554 ;;
555 esac
556done
557
558# Double-quote double-evaled strings.
559for var in lt_decl_all_varnames([[ \
560]], lt_decl_dquote_varnames); do
561 case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in
562 *[[\\\\\\\`\\"\\\$]]*)
563 eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\""
564 ;;
565 *)
566 eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
567 ;;
568 esac
569done
570
571_LT_OUTPUT_LIBTOOL_INIT
572])
573
574# _LT_GENERATED_FILE_INIT(FILE, [COMMENT])
575# ------------------------------------
576# Generate a child script FILE with all initialization necessary to
577# reuse the environment learned by the parent script, and make the
578# file executable. If COMMENT is supplied, it is inserted after the
579# `#!' sequence but before initialization text begins. After this
580# macro, additional text can be appended to FILE to form the body of
581# the child script. The macro ends with non-zero status if the
582# file could not be fully written (such as if the disk is full).
583m4_ifdef([AS_INIT_GENERATED],
584[m4_defun([_LT_GENERATED_FILE_INIT],[AS_INIT_GENERATED($@)])],
585[m4_defun([_LT_GENERATED_FILE_INIT],
586[m4_require([AS_PREPARE])]dnl
587[m4_pushdef([AS_MESSAGE_LOG_FD])]dnl
588[lt_write_fail=0
589cat >$1 <<_ASEOF || lt_write_fail=1
590#! $SHELL
591# Generated by $as_me.
592$2
593SHELL=\${CONFIG_SHELL-$SHELL}
594export SHELL
595_ASEOF
596cat >>$1 <<\_ASEOF || lt_write_fail=1
597AS_SHELL_SANITIZE
598_AS_PREPARE
599exec AS_MESSAGE_FD>&1
600_ASEOF
601test $lt_write_fail = 0 && chmod +x $1[]dnl
602m4_popdef([AS_MESSAGE_LOG_FD])])])# _LT_GENERATED_FILE_INIT
603
604# LT_OUTPUT
605# ---------
606# This macro allows early generation of the libtool script (before
607# AC_OUTPUT is called), incase it is used in configure for compilation
608# tests.
609AC_DEFUN([LT_OUTPUT],
610[: ${CONFIG_LT=./config.lt}
611AC_MSG_NOTICE([creating $CONFIG_LT])
612_LT_GENERATED_FILE_INIT(["$CONFIG_LT"],
613[# Run this file to recreate a libtool stub with the current configuration.])
614
615cat >>"$CONFIG_LT" <<\_LTEOF
616lt_cl_silent=false
617exec AS_MESSAGE_LOG_FD>>config.log
618{
619 echo
620 AS_BOX([Running $as_me.])
621} >&AS_MESSAGE_LOG_FD
622
623lt_cl_help="\
624\`$as_me' creates a local libtool stub from the current configuration,
625for use in further configure time tests before the real libtool is
626generated.
627
628Usage: $[0] [[OPTIONS]]
629
630 -h, --help print this help, then exit
631 -V, --version print version number, then exit
632 -q, --quiet do not print progress messages
633 -d, --debug don't remove temporary files
634
635Report bugs to <bug-libtool@gnu.org>."
636
637lt_cl_version="\
638m4_ifset([AC_PACKAGE_NAME], [AC_PACKAGE_NAME ])config.lt[]dnl
639m4_ifset([AC_PACKAGE_VERSION], [ AC_PACKAGE_VERSION])
640configured by $[0], generated by m4_PACKAGE_STRING.
641
642Copyright (C) 2011 Free Software Foundation, Inc.
643This config.lt script is free software; the Free Software Foundation
644gives unlimited permision to copy, distribute and modify it."
645
646while test $[#] != 0
647do
648 case $[1] in
649 --version | --v* | -V )
650 echo "$lt_cl_version"; exit 0 ;;
651 --help | --h* | -h )
652 echo "$lt_cl_help"; exit 0 ;;
653 --debug | --d* | -d )
654 debug=: ;;
655 --quiet | --q* | --silent | --s* | -q )
656 lt_cl_silent=: ;;
657
658 -*) AC_MSG_ERROR([unrecognized option: $[1]
659Try \`$[0] --help' for more information.]) ;;
660
661 *) AC_MSG_ERROR([unrecognized argument: $[1]
662Try \`$[0] --help' for more information.]) ;;
663 esac
664 shift
665done
666
667if $lt_cl_silent; then
668 exec AS_MESSAGE_FD>/dev/null
669fi
670_LTEOF
671
672cat >>"$CONFIG_LT" <<_LTEOF
673_LT_OUTPUT_LIBTOOL_COMMANDS_INIT
674_LTEOF
675
676cat >>"$CONFIG_LT" <<\_LTEOF
677AC_MSG_NOTICE([creating $ofile])
678_LT_OUTPUT_LIBTOOL_COMMANDS
679AS_EXIT(0)
680_LTEOF
681chmod +x "$CONFIG_LT"
682
683# configure is writing to config.log, but config.lt does its own redirection,
684# appending to config.log, which fails on DOS, as config.log is still kept
685# open by configure. Here we exec the FD to /dev/null, effectively closing
686# config.log, so it can be properly (re)opened and appended to by config.lt.
687lt_cl_success=:
688test "$silent" = yes &&
689 lt_config_lt_args="$lt_config_lt_args --quiet"
690exec AS_MESSAGE_LOG_FD>/dev/null
691$SHELL "$CONFIG_LT" $lt_config_lt_args || lt_cl_success=false
692exec AS_MESSAGE_LOG_FD>>config.log
693$lt_cl_success || AS_EXIT(1)
694])# LT_OUTPUT
695
696
697# _LT_CONFIG(TAG)
698# ---------------
699# If TAG is the built-in tag, create an initial libtool script with a
700# default configuration from the untagged config vars. Otherwise add code
701# to config.status for appending the configuration named by TAG from the
702# matching tagged config vars.
703m4_defun([_LT_CONFIG],
704[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
705_LT_CONFIG_SAVE_COMMANDS([
706 m4_define([_LT_TAG], m4_if([$1], [], [C], [$1]))dnl
707 m4_if(_LT_TAG, [C], [
708 # See if we are running on zsh, and set the options which allow our
709 # commands through without removal of \ escapes.
710 if test -n "${ZSH_VERSION+set}" ; then
711 setopt NO_GLOB_SUBST
712 fi
713
714 cfgfile="${ofile}T"
715 trap "$RM \"$cfgfile\"; exit 1" 1 2 15
716 $RM "$cfgfile"
717
718 cat <<_LT_EOF >> "$cfgfile"
719#! $SHELL
720
721# `$ECHO "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services.
722# Generated automatically by $as_me ($PACKAGE$TIMESTAMP) $VERSION
723# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
724# NOTE: Changes made to this file will be lost: look at ltmain.sh.
725#
726_LT_COPYING
727_LT_LIBTOOL_TAGS
728
729# ### BEGIN LIBTOOL CONFIG
730_LT_LIBTOOL_CONFIG_VARS
731_LT_LIBTOOL_TAG_VARS
732# ### END LIBTOOL CONFIG
733
734_LT_EOF
735
736 case $host_os in
737 aix3*)
738 cat <<\_LT_EOF >> "$cfgfile"
739# AIX sometimes has problems with the GCC collect2 program. For some
740# reason, if we set the COLLECT_NAMES environment variable, the problems
741# vanish in a puff of smoke.
742if test "X${COLLECT_NAMES+set}" != Xset; then
743 COLLECT_NAMES=
744 export COLLECT_NAMES
745fi
746_LT_EOF
747 ;;
748 esac
749
750 _LT_PROG_LTMAIN
751
752 # We use sed instead of cat because bash on DJGPP gets confused if
753 # if finds mixed CR/LF and LF-only lines. Since sed operates in
754 # text mode, it properly converts lines to CR/LF. This bash problem
755 # is reportedly fixed, but why not run on old versions too?
756 sed '$q' "$ltmain" >> "$cfgfile" \
757 || (rm -f "$cfgfile"; exit 1)
758
759 _LT_PROG_REPLACE_SHELLFNS
760
761 mv -f "$cfgfile" "$ofile" ||
762 (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")
763 chmod +x "$ofile"
764],
765[cat <<_LT_EOF >> "$ofile"
766
767dnl Unfortunately we have to use $1 here, since _LT_TAG is not expanded
768dnl in a comment (ie after a #).
769# ### BEGIN LIBTOOL TAG CONFIG: $1
770_LT_LIBTOOL_TAG_VARS(_LT_TAG)
771# ### END LIBTOOL TAG CONFIG: $1
772_LT_EOF
773])dnl /m4_if
774],
775[m4_if([$1], [], [
776 PACKAGE='$PACKAGE'
777 VERSION='$VERSION'
778 TIMESTAMP='$TIMESTAMP'
779 RM='$RM'
780 ofile='$ofile'], [])
781])dnl /_LT_CONFIG_SAVE_COMMANDS
782])# _LT_CONFIG
783
784
785# LT_SUPPORTED_TAG(TAG)
786# ---------------------
787# Trace this macro to discover what tags are supported by the libtool
788# --tag option, using:
789# autoconf --trace 'LT_SUPPORTED_TAG:$1'
790AC_DEFUN([LT_SUPPORTED_TAG], [])
791
792
793# C support is built-in for now
794m4_define([_LT_LANG_C_enabled], [])
795m4_define([_LT_TAGS], [])
796
797
798# LT_LANG(LANG)
799# -------------
800# Enable libtool support for the given language if not already enabled.
801AC_DEFUN([LT_LANG],
802[AC_BEFORE([$0], [LT_OUTPUT])dnl
803m4_case([$1],
804 [C], [_LT_LANG(C)],
805 [C++], [_LT_LANG(CXX)],
806 [Go], [_LT_LANG(GO)],
807 [Java], [_LT_LANG(GCJ)],
808 [Fortran 77], [_LT_LANG(F77)],
809 [Fortran], [_LT_LANG(FC)],
810 [Windows Resource], [_LT_LANG(RC)],
811 [m4_ifdef([_LT_LANG_]$1[_CONFIG],
812 [_LT_LANG($1)],
813 [m4_fatal([$0: unsupported language: "$1"])])])dnl
814])# LT_LANG
815
816
817# _LT_LANG(LANGNAME)
818# ------------------
819m4_defun([_LT_LANG],
820[m4_ifdef([_LT_LANG_]$1[_enabled], [],
821 [LT_SUPPORTED_TAG([$1])dnl
822 m4_append([_LT_TAGS], [$1 ])dnl
823 m4_define([_LT_LANG_]$1[_enabled], [])dnl
824 _LT_LANG_$1_CONFIG($1)])dnl
825])# _LT_LANG
826
827
828m4_ifndef([AC_PROG_GO], [
829############################################################
830# NOTE: This macro has been submitted for inclusion into #
831# GNU Autoconf as AC_PROG_GO. When it is available in #
832# a released version of Autoconf we should remove this #
833# macro and use it instead. #
834############################################################
835m4_defun([AC_PROG_GO],
836[AC_LANG_PUSH(Go)dnl
837AC_ARG_VAR([GOC], [Go compiler command])dnl
838AC_ARG_VAR([GOFLAGS], [Go compiler flags])dnl
839_AC_ARG_VAR_LDFLAGS()dnl
840AC_CHECK_TOOL(GOC, gccgo)
841if test -z "$GOC"; then
842 if test -n "$ac_tool_prefix"; then
843 AC_CHECK_PROG(GOC, [${ac_tool_prefix}gccgo], [${ac_tool_prefix}gccgo])
844 fi
845fi
846if test -z "$GOC"; then
847 AC_CHECK_PROG(GOC, gccgo, gccgo, false)
848fi
849])#m4_defun
850])#m4_ifndef
851
852
853# _LT_LANG_DEFAULT_CONFIG
854# -----------------------
855m4_defun([_LT_LANG_DEFAULT_CONFIG],
856[AC_PROVIDE_IFELSE([AC_PROG_CXX],
857 [LT_LANG(CXX)],
858 [m4_define([AC_PROG_CXX], defn([AC_PROG_CXX])[LT_LANG(CXX)])])
859
860AC_PROVIDE_IFELSE([AC_PROG_F77],
861 [LT_LANG(F77)],
862 [m4_define([AC_PROG_F77], defn([AC_PROG_F77])[LT_LANG(F77)])])
863
864AC_PROVIDE_IFELSE([AC_PROG_FC],
865 [LT_LANG(FC)],
866 [m4_define([AC_PROG_FC], defn([AC_PROG_FC])[LT_LANG(FC)])])
867
868dnl The call to [A][M_PROG_GCJ] is quoted like that to stop aclocal
869dnl pulling things in needlessly.
870AC_PROVIDE_IFELSE([AC_PROG_GCJ],
871 [LT_LANG(GCJ)],
872 [AC_PROVIDE_IFELSE([A][M_PROG_GCJ],
873 [LT_LANG(GCJ)],
874 [AC_PROVIDE_IFELSE([LT_PROG_GCJ],
875 [LT_LANG(GCJ)],
876 [m4_ifdef([AC_PROG_GCJ],
877 [m4_define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[LT_LANG(GCJ)])])
878 m4_ifdef([A][M_PROG_GCJ],
879 [m4_define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[LT_LANG(GCJ)])])
880 m4_ifdef([LT_PROG_GCJ],
881 [m4_define([LT_PROG_GCJ], defn([LT_PROG_GCJ])[LT_LANG(GCJ)])])])])])
882
883AC_PROVIDE_IFELSE([AC_PROG_GO],
884 [LT_LANG(GO)],
885 [m4_define([AC_PROG_GO], defn([AC_PROG_GO])[LT_LANG(GO)])])
886
887AC_PROVIDE_IFELSE([LT_PROG_RC],
888 [LT_LANG(RC)],
889 [m4_define([LT_PROG_RC], defn([LT_PROG_RC])[LT_LANG(RC)])])
890])# _LT_LANG_DEFAULT_CONFIG
891
892# Obsolete macros:
893AU_DEFUN([AC_LIBTOOL_CXX], [LT_LANG(C++)])
894AU_DEFUN([AC_LIBTOOL_F77], [LT_LANG(Fortran 77)])
895AU_DEFUN([AC_LIBTOOL_FC], [LT_LANG(Fortran)])
896AU_DEFUN([AC_LIBTOOL_GCJ], [LT_LANG(Java)])
897AU_DEFUN([AC_LIBTOOL_RC], [LT_LANG(Windows Resource)])
898dnl aclocal-1.4 backwards compatibility:
899dnl AC_DEFUN([AC_LIBTOOL_CXX], [])
900dnl AC_DEFUN([AC_LIBTOOL_F77], [])
901dnl AC_DEFUN([AC_LIBTOOL_FC], [])
902dnl AC_DEFUN([AC_LIBTOOL_GCJ], [])
903dnl AC_DEFUN([AC_LIBTOOL_RC], [])
904
905
906# _LT_TAG_COMPILER
907# ----------------
908m4_defun([_LT_TAG_COMPILER],
909[AC_REQUIRE([AC_PROG_CC])dnl
910
911_LT_DECL([LTCC], [CC], [1], [A C compiler])dnl
912_LT_DECL([LTCFLAGS], [CFLAGS], [1], [LTCC compiler flags])dnl
913_LT_TAGDECL([CC], [compiler], [1], [A language specific compiler])dnl
914_LT_TAGDECL([with_gcc], [GCC], [0], [Is the compiler the GNU compiler?])dnl
915
916# If no C compiler was specified, use CC.
917LTCC=${LTCC-"$CC"}
918
919# If no C compiler flags were specified, use CFLAGS.
920LTCFLAGS=${LTCFLAGS-"$CFLAGS"}
921
922# Allow CC to be a program name with arguments.
923compiler=$CC
924])# _LT_TAG_COMPILER
925
926
927# _LT_COMPILER_BOILERPLATE
928# ------------------------
929# Check for compiler boilerplate output or warnings with
930# the simple compiler test code.
931m4_defun([_LT_COMPILER_BOILERPLATE],
932[m4_require([_LT_DECL_SED])dnl
933ac_outfile=conftest.$ac_objext
934echo "$lt_simple_compile_test_code" >conftest.$ac_ext
935eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
936_lt_compiler_boilerplate=`cat conftest.err`
937$RM conftest*
938])# _LT_COMPILER_BOILERPLATE
939
940
941# _LT_LINKER_BOILERPLATE
942# ----------------------
943# Check for linker boilerplate output or warnings with
944# the simple link test code.
945m4_defun([_LT_LINKER_BOILERPLATE],
946[m4_require([_LT_DECL_SED])dnl
947ac_outfile=conftest.$ac_objext
948echo "$lt_simple_link_test_code" >conftest.$ac_ext
949eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
950_lt_linker_boilerplate=`cat conftest.err`
951$RM -r conftest*
952])# _LT_LINKER_BOILERPLATE
953
954# _LT_REQUIRED_DARWIN_CHECKS
955# -------------------------
956m4_defun_once([_LT_REQUIRED_DARWIN_CHECKS],[
957 case $host_os in
958 rhapsody* | darwin*)
959 AC_CHECK_TOOL([DSYMUTIL], [dsymutil], [:])
960 AC_CHECK_TOOL([NMEDIT], [nmedit], [:])
961 AC_CHECK_TOOL([LIPO], [lipo], [:])
962 AC_CHECK_TOOL([OTOOL], [otool], [:])
963 AC_CHECK_TOOL([OTOOL64], [otool64], [:])
964 _LT_DECL([], [DSYMUTIL], [1],
965 [Tool to manipulate archived DWARF debug symbol files on Mac OS X])
966 _LT_DECL([], [NMEDIT], [1],
967 [Tool to change global to local symbols on Mac OS X])
968 _LT_DECL([], [LIPO], [1],
969 [Tool to manipulate fat objects and archives on Mac OS X])
970 _LT_DECL([], [OTOOL], [1],
971 [ldd/readelf like tool for Mach-O binaries on Mac OS X])
972 _LT_DECL([], [OTOOL64], [1],
973 [ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4])
974
975 AC_CACHE_CHECK([for -single_module linker flag],[lt_cv_apple_cc_single_mod],
976 [lt_cv_apple_cc_single_mod=no
977 if test -z "${LT_MULTI_MODULE}"; then
978 # By default we will add the -single_module flag. You can override
979 # by either setting the environment variable LT_MULTI_MODULE
980 # non-empty at configure time, or by adding -multi_module to the
981 # link flags.
982 rm -rf libconftest.dylib*
983 echo "int foo(void){return 1;}" > conftest.c
984 echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
985-dynamiclib -Wl,-single_module conftest.c" >&AS_MESSAGE_LOG_FD
986 $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
987 -dynamiclib -Wl,-single_module conftest.c 2>conftest.err
988 _lt_result=$?
989 # If there is a non-empty error log, and "single_module"
990 # appears in it, assume the flag caused a linker warning
991 if test -s conftest.err && $GREP single_module conftest.err; then
992 cat conftest.err >&AS_MESSAGE_LOG_FD
993 # Otherwise, if the output was created with a 0 exit code from
994 # the compiler, it worked.
995 elif test -f libconftest.dylib && test $_lt_result -eq 0; then
996 lt_cv_apple_cc_single_mod=yes
997 else
998 cat conftest.err >&AS_MESSAGE_LOG_FD
999 fi
1000 rm -rf libconftest.dylib*
1001 rm -f conftest.*
1002 fi])
1003
1004 AC_CACHE_CHECK([for -exported_symbols_list linker flag],
1005 [lt_cv_ld_exported_symbols_list],
1006 [lt_cv_ld_exported_symbols_list=no
1007 save_LDFLAGS=$LDFLAGS
1008 echo "_main" > conftest.sym
1009 LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym"
1010 AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
1011 [lt_cv_ld_exported_symbols_list=yes],
1012 [lt_cv_ld_exported_symbols_list=no])
1013 LDFLAGS="$save_LDFLAGS"
1014 ])
1015
1016 AC_CACHE_CHECK([for -force_load linker flag],[lt_cv_ld_force_load],
1017 [lt_cv_ld_force_load=no
1018 cat > conftest.c << _LT_EOF
1019int forced_loaded() { return 2;}
1020_LT_EOF
1021 echo "$LTCC $LTCFLAGS -c -o conftest.o conftest.c" >&AS_MESSAGE_LOG_FD
1022 $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&AS_MESSAGE_LOG_FD
1023 echo "$AR cru libconftest.a conftest.o" >&AS_MESSAGE_LOG_FD
1024 $AR cru libconftest.a conftest.o 2>&AS_MESSAGE_LOG_FD
1025 echo "$RANLIB libconftest.a" >&AS_MESSAGE_LOG_FD
1026 $RANLIB libconftest.a 2>&AS_MESSAGE_LOG_FD
1027 cat > conftest.c << _LT_EOF
1028int main() { return 0;}
1029_LT_EOF
1030 echo "$LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a" >&AS_MESSAGE_LOG_FD
1031 $LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a 2>conftest.err
1032 _lt_result=$?
1033 if test -s conftest.err && $GREP force_load conftest.err; then
1034 cat conftest.err >&AS_MESSAGE_LOG_FD
1035 elif test -f conftest && test $_lt_result -eq 0 && $GREP forced_load conftest >/dev/null 2>&1 ; then
1036 lt_cv_ld_force_load=yes
1037 else
1038 cat conftest.err >&AS_MESSAGE_LOG_FD
1039 fi
1040 rm -f conftest.err libconftest.a conftest conftest.c
1041 rm -rf conftest.dSYM
1042 ])
1043 case $host_os in
1044 rhapsody* | darwin1.[[012]])
1045 _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;;
1046 darwin1.*)
1047 _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
1048 darwin*) # darwin 5.x on
1049 # if running on 10.5 or later, the deployment target defaults
1050 # to the OS version, if on x86, and 10.4, the deployment
1051 # target defaults to 10.4. Don't you love it?
1052 case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
1053 10.0,*86*-darwin8*|10.0,*-darwin[[91]]*)
1054 _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
1055 10.[[012]]*)
1056 _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;;
1057 10.*)
1058 _lt_dar_allow_undefined='${wl}-undefined ${wl}dynamic_lookup' ;;
1059 esac
1060 ;;
1061 esac
1062 if test "$lt_cv_apple_cc_single_mod" = "yes"; then
1063 _lt_dar_single_mod='$single_module'
1064 fi
1065 if test "$lt_cv_ld_exported_symbols_list" = "yes"; then
1066 _lt_dar_export_syms=' ${wl}-exported_symbols_list,$output_objdir/${libname}-symbols.expsym'
1067 else
1068 _lt_dar_export_syms='~$NMEDIT -s $output_objdir/${libname}-symbols.expsym ${lib}'
1069 fi
1070 if test "$DSYMUTIL" != ":" && test "$lt_cv_ld_force_load" = "no"; then
1071 _lt_dsymutil='~$DSYMUTIL $lib || :'
1072 else
1073 _lt_dsymutil=
1074 fi
1075 ;;
1076 esac
1077])
1078
1079
1080# _LT_DARWIN_LINKER_FEATURES([TAG])
1081# ---------------------------------
1082# Checks for linker and compiler features on darwin
1083m4_defun([_LT_DARWIN_LINKER_FEATURES],
1084[
1085 m4_require([_LT_REQUIRED_DARWIN_CHECKS])
1086 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
1087 _LT_TAGVAR(hardcode_direct, $1)=no
1088 _LT_TAGVAR(hardcode_automatic, $1)=yes
1089 _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
1090 if test "$lt_cv_ld_force_load" = "yes"; then
1091 _LT_TAGVAR(whole_archive_flag_spec, $1)='`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience ${wl}-force_load,$conv\"; done; func_echo_all \"$new_convenience\"`'
1092 m4_case([$1], [F77], [_LT_TAGVAR(compiler_needs_object, $1)=yes],
1093 [FC], [_LT_TAGVAR(compiler_needs_object, $1)=yes])
1094 else
1095 _LT_TAGVAR(whole_archive_flag_spec, $1)=''
1096 fi
1097 _LT_TAGVAR(link_all_deplibs, $1)=yes
1098 _LT_TAGVAR(allow_undefined_flag, $1)="$_lt_dar_allow_undefined"
1099 case $cc_basename in
1100 ifort*) _lt_dar_can_shared=yes ;;
1101 *) _lt_dar_can_shared=$GCC ;;
1102 esac
1103 if test "$_lt_dar_can_shared" = "yes"; then
1104 output_verbose_link_cmd=func_echo_all
1105 _LT_TAGVAR(archive_cmds, $1)="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
1106 _LT_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
1107 _LT_TAGVAR(archive_expsym_cmds, $1)="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}"
1108 _LT_TAGVAR(module_expsym_cmds, $1)="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}"
1109 m4_if([$1], [CXX],
1110[ if test "$lt_cv_apple_cc_single_mod" != "yes"; then
1111 _LT_TAGVAR(archive_cmds, $1)="\$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}"
1112 _LT_TAGVAR(archive_expsym_cmds, $1)="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}"
1113 fi
1114],[])
1115 else
1116 _LT_TAGVAR(ld_shlibs, $1)=no
1117 fi
1118])
1119
1120# _LT_SYS_MODULE_PATH_AIX([TAGNAME])
1121# ----------------------------------
1122# Links a minimal program and checks the executable
1123# for the system default hardcoded library path. In most cases,
1124# this is /usr/lib:/lib, but when the MPI compilers are used
1125# the location of the communication and MPI libs are included too.
1126# If we don't find anything, use the default library path according
1127# to the aix ld manual.
1128# Store the results from the different compilers for each TAGNAME.
1129# Allow to override them for all tags through lt_cv_aix_libpath.
1130m4_defun([_LT_SYS_MODULE_PATH_AIX],
1131[m4_require([_LT_DECL_SED])dnl
1132if test "${lt_cv_aix_libpath+set}" = set; then
1133 aix_libpath=$lt_cv_aix_libpath
1134else
1135 AC_CACHE_VAL([_LT_TAGVAR([lt_cv_aix_libpath_], [$1])],
1136 [AC_LINK_IFELSE([AC_LANG_PROGRAM],[
1137 lt_aix_libpath_sed='[
1138 /Import File Strings/,/^$/ {
1139 /^0/ {
1140 s/^0 *\([^ ]*\) *$/\1/
1141 p
1142 }
1143 }]'
1144 _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
1145 # Check for a 64-bit object if we didn't find anything.
1146 if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then
1147 _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
1148 fi],[])
1149 if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then
1150 _LT_TAGVAR([lt_cv_aix_libpath_], [$1])="/usr/lib:/lib"
1151 fi
1152 ])
1153 aix_libpath=$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])
1154fi
1155])# _LT_SYS_MODULE_PATH_AIX
1156
1157
1158# _LT_SHELL_INIT(ARG)
1159# -------------------
1160m4_define([_LT_SHELL_INIT],
1161[m4_divert_text([M4SH-INIT], [$1
1162])])# _LT_SHELL_INIT
1163
1164
1165
1166# _LT_PROG_ECHO_BACKSLASH
1167# -----------------------
1168# Find how we can fake an echo command that does not interpret backslash.
1169# In particular, with Autoconf 2.60 or later we add some code to the start
1170# of the generated configure script which will find a shell with a builtin
1171# printf (which we can use as an echo command).
1172m4_defun([_LT_PROG_ECHO_BACKSLASH],
1173[ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
1174ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO
1175ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
1176
1177AC_MSG_CHECKING([how to print strings])
1178# Test print first, because it will be a builtin if present.
1179if test "X`( print -r -- -n ) 2>/dev/null`" = X-n && \
1180 test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then
1181 ECHO='print -r --'
1182elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then
1183 ECHO='printf %s\n'
1184else
1185 # Use this function as a fallback that always works.
1186 func_fallback_echo ()
1187 {
1188 eval 'cat <<_LTECHO_EOF
1189$[]1
1190_LTECHO_EOF'
1191 }
1192 ECHO='func_fallback_echo'
1193fi
1194
1195# func_echo_all arg...
1196# Invoke $ECHO with all args, space-separated.
1197func_echo_all ()
1198{
1199 $ECHO "$*"
1200}
1201
1202case "$ECHO" in
1203 printf*) AC_MSG_RESULT([printf]) ;;
1204 print*) AC_MSG_RESULT([print -r]) ;;
1205 *) AC_MSG_RESULT([cat]) ;;
1206esac
1207
1208m4_ifdef([_AS_DETECT_SUGGESTED],
1209[_AS_DETECT_SUGGESTED([
1210 test -n "${ZSH_VERSION+set}${BASH_VERSION+set}" || (
1211 ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
1212 ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO
1213 ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
1214 PATH=/empty FPATH=/empty; export PATH FPATH
1215 test "X`printf %s $ECHO`" = "X$ECHO" \
1216 || test "X`print -r -- $ECHO`" = "X$ECHO" )])])
1217
1218_LT_DECL([], [SHELL], [1], [Shell to use when invoking shell scripts])
1219_LT_DECL([], [ECHO], [1], [An echo program that protects backslashes])
1220])# _LT_PROG_ECHO_BACKSLASH
1221
1222
1223# _LT_WITH_SYSROOT
1224# ----------------
1225AC_DEFUN([_LT_WITH_SYSROOT],
1226[AC_MSG_CHECKING([for sysroot])
1227AC_ARG_WITH([sysroot],
1228[ --with-sysroot[=DIR] Search for dependent libraries within DIR
1229 (or the compiler's sysroot if not specified).],
1230[], [with_sysroot=no])
1231
1232dnl lt_sysroot will always be passed unquoted. We quote it here
1233dnl in case the user passed a directory name.
1234lt_sysroot=
1235case ${with_sysroot} in #(
1236 yes)
1237 if test "$GCC" = yes; then
1238 lt_sysroot=`$CC --print-sysroot 2>/dev/null`
1239 fi
1240 ;; #(
1241 /*)
1242 lt_sysroot=`echo "$with_sysroot" | sed -e "$sed_quote_subst"`
1243 ;; #(
1244 no|'')
1245 ;; #(
1246 *)
1247 AC_MSG_RESULT([${with_sysroot}])
1248 AC_MSG_ERROR([The sysroot must be an absolute path.])
1249 ;;
1250esac
1251
1252 AC_MSG_RESULT([${lt_sysroot:-no}])
1253_LT_DECL([], [lt_sysroot], [0], [The root where to search for ]dnl
1254[dependent libraries, and in which our libraries should be installed.])])
1255
1256# _LT_ENABLE_LOCK
1257# ---------------
1258m4_defun([_LT_ENABLE_LOCK],
1259[AC_ARG_ENABLE([libtool-lock],
1260 [AS_HELP_STRING([--disable-libtool-lock],
1261 [avoid locking (might break parallel builds)])])
1262test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes
1263
1264# Some flags need to be propagated to the compiler or linker for good
1265# libtool support.
1266case $host in
1267ia64-*-hpux*)
1268 # Find out which ABI we are using.
1269 echo 'int i;' > conftest.$ac_ext
1270 if AC_TRY_EVAL(ac_compile); then
1271 case `/usr/bin/file conftest.$ac_objext` in
1272 *ELF-32*)
1273 HPUX_IA64_MODE="32"
1274 ;;
1275 *ELF-64*)
1276 HPUX_IA64_MODE="64"
1277 ;;
1278 esac
1279 fi
1280 rm -rf conftest*
1281 ;;
1282*-*-irix6*)
1283 # Find out which ABI we are using.
1284 echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext
1285 if AC_TRY_EVAL(ac_compile); then
1286 if test "$lt_cv_prog_gnu_ld" = yes; then
1287 case `/usr/bin/file conftest.$ac_objext` in
1288 *32-bit*)
1289 LD="${LD-ld} -melf32bsmip"
1290 ;;
1291 *N32*)
1292 LD="${LD-ld} -melf32bmipn32"
1293 ;;
1294 *64-bit*)
1295 LD="${LD-ld} -melf64bmip"
1296 ;;
1297 esac
1298 else
1299 case `/usr/bin/file conftest.$ac_objext` in
1300 *32-bit*)
1301 LD="${LD-ld} -32"
1302 ;;
1303 *N32*)
1304 LD="${LD-ld} -n32"
1305 ;;
1306 *64-bit*)
1307 LD="${LD-ld} -64"
1308 ;;
1309 esac
1310 fi
1311 fi
1312 rm -rf conftest*
1313 ;;
1314
1315x86_64-*kfreebsd*-gnu|x86_64-*linux*|powerpc*-*linux*| \
1316s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
1317 # Find out which ABI we are using.
1318 echo 'int i;' > conftest.$ac_ext
1319 if AC_TRY_EVAL(ac_compile); then
1320 case `/usr/bin/file conftest.o` in
1321 *32-bit*)
1322 case $host in
1323 x86_64-*kfreebsd*-gnu)
1324 LD="${LD-ld} -m elf_i386_fbsd"
1325 ;;
1326 x86_64-*linux*)
1327 LD="${LD-ld} -m elf_i386"
1328 ;;
1329 powerpc64le-*linux*)
1330 LD="${LD-ld} -m elf32lppclinux"
1331 ;;
1332 powerpc64-*linux*)
1333 LD="${LD-ld} -m elf32ppclinux"
1334 ;;
1335 s390x-*linux*)
1336 LD="${LD-ld} -m elf_s390"
1337 ;;
1338 sparc64-*linux*)
1339 LD="${LD-ld} -m elf32_sparc"
1340 ;;
1341 esac
1342 ;;
1343 *64-bit*)
1344 case $host in
1345 x86_64-*kfreebsd*-gnu)
1346 LD="${LD-ld} -m elf_x86_64_fbsd"
1347 ;;
1348 x86_64-*linux*)
1349 LD="${LD-ld} -m elf_x86_64"
1350 ;;
1351 powerpcle-*linux*)
1352 LD="${LD-ld} -m elf64lppc"
1353 ;;
1354 powerpc-*linux*)
1355 LD="${LD-ld} -m elf64ppc"
1356 ;;
1357 s390*-*linux*|s390*-*tpf*)
1358 LD="${LD-ld} -m elf64_s390"
1359 ;;
1360 sparc*-*linux*)
1361 LD="${LD-ld} -m elf64_sparc"
1362 ;;
1363 esac
1364 ;;
1365 esac
1366 fi
1367 rm -rf conftest*
1368 ;;
1369
1370*-*-sco3.2v5*)
1371 # On SCO OpenServer 5, we need -belf to get full-featured binaries.
1372 SAVE_CFLAGS="$CFLAGS"
1373 CFLAGS="$CFLAGS -belf"
1374 AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf,
1375 [AC_LANG_PUSH(C)
1376 AC_LINK_IFELSE([AC_LANG_PROGRAM([[]],[[]])],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])
1377 AC_LANG_POP])
1378 if test x"$lt_cv_cc_needs_belf" != x"yes"; then
1379 # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
1380 CFLAGS="$SAVE_CFLAGS"
1381 fi
1382 ;;
1383*-*solaris*)
1384 # Find out which ABI we are using.
1385 echo 'int i;' > conftest.$ac_ext
1386 if AC_TRY_EVAL(ac_compile); then
1387 case `/usr/bin/file conftest.o` in
1388 *64-bit*)
1389 case $lt_cv_prog_gnu_ld in
1390 yes*)
1391 case $host in
1392 i?86-*-solaris*)
1393 LD="${LD-ld} -m elf_x86_64"
1394 ;;
1395 sparc*-*-solaris*)
1396 LD="${LD-ld} -m elf64_sparc"
1397 ;;
1398 esac
1399 # GNU ld 2.21 introduced _sol2 emulations. Use them if available.
1400 if ${LD-ld} -V | grep _sol2 >/dev/null 2>&1; then
1401 LD="${LD-ld}_sol2"
1402 fi
1403 ;;
1404 *)
1405 if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then
1406 LD="${LD-ld} -64"
1407 fi
1408 ;;
1409 esac
1410 ;;
1411 esac
1412 fi
1413 rm -rf conftest*
1414 ;;
1415esac
1416
1417need_locks="$enable_libtool_lock"
1418])# _LT_ENABLE_LOCK
1419
1420
1421# _LT_PROG_AR
1422# -----------
1423m4_defun([_LT_PROG_AR],
1424[AC_CHECK_TOOLS(AR, [ar], false)
1425: ${AR=ar}
1426: ${AR_FLAGS=cru}
1427_LT_DECL([], [AR], [1], [The archiver])
1428_LT_DECL([], [AR_FLAGS], [1], [Flags to create an archive])
1429
1430AC_CACHE_CHECK([for archiver @FILE support], [lt_cv_ar_at_file],
1431 [lt_cv_ar_at_file=no
1432 AC_COMPILE_IFELSE([AC_LANG_PROGRAM],
1433 [echo conftest.$ac_objext > conftest.lst
1434 lt_ar_try='$AR $AR_FLAGS libconftest.a @conftest.lst >&AS_MESSAGE_LOG_FD'
1435 AC_TRY_EVAL([lt_ar_try])
1436 if test "$ac_status" -eq 0; then
1437 # Ensure the archiver fails upon bogus file names.
1438 rm -f conftest.$ac_objext libconftest.a
1439 AC_TRY_EVAL([lt_ar_try])
1440 if test "$ac_status" -ne 0; then
1441 lt_cv_ar_at_file=@
1442 fi
1443 fi
1444 rm -f conftest.* libconftest.a
1445 ])
1446 ])
1447
1448if test "x$lt_cv_ar_at_file" = xno; then
1449 archiver_list_spec=
1450else
1451 archiver_list_spec=$lt_cv_ar_at_file
1452fi
1453_LT_DECL([], [archiver_list_spec], [1],
1454 [How to feed a file listing to the archiver])
1455])# _LT_PROG_AR
1456
1457
1458# _LT_CMD_OLD_ARCHIVE
1459# -------------------
1460m4_defun([_LT_CMD_OLD_ARCHIVE],
1461[_LT_PROG_AR
1462
1463AC_CHECK_TOOL(STRIP, strip, :)
1464test -z "$STRIP" && STRIP=:
1465_LT_DECL([], [STRIP], [1], [A symbol stripping program])
1466
1467AC_CHECK_TOOL(RANLIB, ranlib, :)
1468test -z "$RANLIB" && RANLIB=:
1469_LT_DECL([], [RANLIB], [1],
1470 [Commands used to install an old-style archive])
1471
1472# Determine commands to create old-style static archives.
1473old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs'
1474old_postinstall_cmds='chmod 644 $oldlib'
1475old_postuninstall_cmds=
1476
1477if test -n "$RANLIB"; then
1478 case $host_os in
1479 openbsd*)
1480 old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$tool_oldlib"
1481 ;;
1482 *)
1483 old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$tool_oldlib"
1484 ;;
1485 esac
1486 old_archive_cmds="$old_archive_cmds~\$RANLIB \$tool_oldlib"
1487fi
1488
1489case $host_os in
1490 darwin*)
1491 lock_old_archive_extraction=yes ;;
1492 *)
1493 lock_old_archive_extraction=no ;;
1494esac
1495_LT_DECL([], [old_postinstall_cmds], [2])
1496_LT_DECL([], [old_postuninstall_cmds], [2])
1497_LT_TAGDECL([], [old_archive_cmds], [2],
1498 [Commands used to build an old-style archive])
1499_LT_DECL([], [lock_old_archive_extraction], [0],
1500 [Whether to use a lock for old archive extraction])
1501])# _LT_CMD_OLD_ARCHIVE
1502
1503
1504# _LT_COMPILER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
1505# [OUTPUT-FILE], [ACTION-SUCCESS], [ACTION-FAILURE])
1506# ----------------------------------------------------------------
1507# Check whether the given compiler option works
1508AC_DEFUN([_LT_COMPILER_OPTION],
1509[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
1510m4_require([_LT_DECL_SED])dnl
1511AC_CACHE_CHECK([$1], [$2],
1512 [$2=no
1513 m4_if([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4])
1514 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
1515 lt_compiler_flag="$3"
1516 # Insert the option either (1) after the last *FLAGS variable, or
1517 # (2) before a word containing "conftest.", or (3) at the end.
1518 # Note that $ac_compile itself does not contain backslashes and begins
1519 # with a dollar sign (not a hyphen), so the echo should work correctly.
1520 # The option is referenced via a variable to avoid confusing sed.
1521 lt_compile=`echo "$ac_compile" | $SED \
1522 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
1523 -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
1524 -e 's:$: $lt_compiler_flag:'`
1525 (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
1526 (eval "$lt_compile" 2>conftest.err)
1527 ac_status=$?
1528 cat conftest.err >&AS_MESSAGE_LOG_FD
1529 echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
1530 if (exit $ac_status) && test -s "$ac_outfile"; then
1531 # The compiler can only warn and ignore the option if not recognized
1532 # So say no if there are warnings other than the usual output.
1533 $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp
1534 $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
1535 if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
1536 $2=yes
1537 fi
1538 fi
1539 $RM conftest*
1540])
1541
1542if test x"[$]$2" = xyes; then
1543 m4_if([$5], , :, [$5])
1544else
1545 m4_if([$6], , :, [$6])
1546fi
1547])# _LT_COMPILER_OPTION
1548
1549# Old name:
1550AU_ALIAS([AC_LIBTOOL_COMPILER_OPTION], [_LT_COMPILER_OPTION])
1551dnl aclocal-1.4 backwards compatibility:
1552dnl AC_DEFUN([AC_LIBTOOL_COMPILER_OPTION], [])
1553
1554
1555# _LT_LINKER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
1556# [ACTION-SUCCESS], [ACTION-FAILURE])
1557# ----------------------------------------------------
1558# Check whether the given linker option works
1559AC_DEFUN([_LT_LINKER_OPTION],
1560[m4_require([_LT_FILEUTILS_DEFAULTS])dnl
1561m4_require([_LT_DECL_SED])dnl
1562AC_CACHE_CHECK([$1], [$2],
1563 [$2=no
1564 save_LDFLAGS="$LDFLAGS"
1565 LDFLAGS="$LDFLAGS $3"
1566 echo "$lt_simple_link_test_code" > conftest.$ac_ext
1567 if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
1568 # The linker can only warn and ignore the option if not recognized
1569 # So say no if there are warnings
1570 if test -s conftest.err; then
1571 # Append any errors to the config.log.
1572 cat conftest.err 1>&AS_MESSAGE_LOG_FD
1573 $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp
1574 $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
1575 if diff conftest.exp conftest.er2 >/dev/null; then
1576 $2=yes
1577 fi
1578 else
1579 $2=yes
1580 fi
1581 fi
1582 $RM -r conftest*
1583 LDFLAGS="$save_LDFLAGS"
1584])
1585
1586if test x"[$]$2" = xyes; then
1587 m4_if([$4], , :, [$4])
1588else
1589 m4_if([$5], , :, [$5])
1590fi
1591])# _LT_LINKER_OPTION
1592
1593# Old name:
1594AU_ALIAS([AC_LIBTOOL_LINKER_OPTION], [_LT_LINKER_OPTION])
1595dnl aclocal-1.4 backwards compatibility:
1596dnl AC_DEFUN([AC_LIBTOOL_LINKER_OPTION], [])
1597
1598
1599# LT_CMD_MAX_LEN
1600#---------------
1601AC_DEFUN([LT_CMD_MAX_LEN],
1602[AC_REQUIRE([AC_CANONICAL_HOST])dnl
1603# find the maximum length of command line arguments
1604AC_MSG_CHECKING([the maximum length of command line arguments])
1605AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl
1606 i=0
1607 teststring="ABCD"
1608
1609 case $build_os in
1610 msdosdjgpp*)
1611 # On DJGPP, this test can blow up pretty badly due to problems in libc
1612 # (any single argument exceeding 2000 bytes causes a buffer overrun
1613 # during glob expansion). Even if it were fixed, the result of this
1614 # check would be larger than it should be.
1615 lt_cv_sys_max_cmd_len=12288; # 12K is about right
1616 ;;
1617
1618 gnu*)
1619 # Under GNU Hurd, this test is not required because there is
1620 # no limit to the length of command line arguments.
1621 # Libtool will interpret -1 as no limit whatsoever
1622 lt_cv_sys_max_cmd_len=-1;
1623 ;;
1624
1625 cygwin* | mingw* | cegcc*)
1626 # On Win9x/ME, this test blows up -- it succeeds, but takes
1627 # about 5 minutes as the teststring grows exponentially.
1628 # Worse, since 9x/ME are not pre-emptively multitasking,
1629 # you end up with a "frozen" computer, even though with patience
1630 # the test eventually succeeds (with a max line length of 256k).
1631 # Instead, let's just punt: use the minimum linelength reported by
1632 # all of the supported platforms: 8192 (on NT/2K/XP).
1633 lt_cv_sys_max_cmd_len=8192;
1634 ;;
1635
1636 mint*)
1637 # On MiNT this can take a long time and run out of memory.
1638 lt_cv_sys_max_cmd_len=8192;
1639 ;;
1640
1641 amigaos*)
1642 # On AmigaOS with pdksh, this test takes hours, literally.
1643 # So we just punt and use a minimum line length of 8192.
1644 lt_cv_sys_max_cmd_len=8192;
1645 ;;
1646
1647 netbsd* | freebsd* | openbsd* | darwin* | dragonfly*)
1648 # This has been around since 386BSD, at least. Likely further.
1649 if test -x /sbin/sysctl; then
1650 lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`
1651 elif test -x /usr/sbin/sysctl; then
1652 lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax`
1653 else
1654 lt_cv_sys_max_cmd_len=65536 # usable default for all BSDs
1655 fi
1656 # And add a safety zone
1657 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
1658 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
1659 ;;
1660
1661 interix*)
1662 # We know the value 262144 and hardcode it with a safety zone (like BSD)
1663 lt_cv_sys_max_cmd_len=196608
1664 ;;
1665
1666 os2*)
1667 # The test takes a long time on OS/2.
1668 lt_cv_sys_max_cmd_len=8192
1669 ;;
1670
1671 osf*)
1672 # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure
1673 # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not
1674 # nice to cause kernel panics so lets avoid the loop below.
1675 # First set a reasonable default.
1676 lt_cv_sys_max_cmd_len=16384
1677 #
1678 if test -x /sbin/sysconfig; then
1679 case `/sbin/sysconfig -q proc exec_disable_arg_limit` in
1680 *1*) lt_cv_sys_max_cmd_len=-1 ;;
1681 esac
1682 fi
1683 ;;
1684 sco3.2v5*)
1685 lt_cv_sys_max_cmd_len=102400
1686 ;;
1687 sysv5* | sco5v6* | sysv4.2uw2*)
1688 kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null`
1689 if test -n "$kargmax"; then
1690 lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[[ ]]//'`
1691 else
1692 lt_cv_sys_max_cmd_len=32768
1693 fi
1694 ;;
1695 *)
1696 lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null`
1697 if test -n "$lt_cv_sys_max_cmd_len"; then
1698 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
1699 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
1700 else
1701 # Make teststring a little bigger before we do anything with it.
1702 # a 1K string should be a reasonable start.
1703 for i in 1 2 3 4 5 6 7 8 ; do
1704 teststring=$teststring$teststring
1705 done
1706 SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}}
1707 # If test is not a shell built-in, we'll probably end up computing a
1708 # maximum length that is only half of the actual maximum length, but
1709 # we can't tell.
1710 while { test "X"`env echo "$teststring$teststring" 2>/dev/null` \
1711 = "X$teststring$teststring"; } >/dev/null 2>&1 &&
1712 test $i != 17 # 1/2 MB should be enough
1713 do
1714 i=`expr $i + 1`
1715 teststring=$teststring$teststring
1716 done
1717 # Only check the string length outside the loop.
1718 lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1`
1719 teststring=
1720 # Add a significant safety factor because C++ compilers can tack on
1721 # massive amounts of additional arguments before passing them to the
1722 # linker. It appears as though 1/2 is a usable value.
1723 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2`
1724 fi
1725 ;;
1726 esac
1727])
1728if test -n $lt_cv_sys_max_cmd_len ; then
1729 AC_MSG_RESULT($lt_cv_sys_max_cmd_len)
1730else
1731 AC_MSG_RESULT(none)
1732fi
1733max_cmd_len=$lt_cv_sys_max_cmd_len
1734_LT_DECL([], [max_cmd_len], [0],
1735 [What is the maximum length of a command?])
1736])# LT_CMD_MAX_LEN
1737
1738# Old name:
1739AU_ALIAS([AC_LIBTOOL_SYS_MAX_CMD_LEN], [LT_CMD_MAX_LEN])
1740dnl aclocal-1.4 backwards compatibility:
1741dnl AC_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN], [])
1742
1743
1744# _LT_HEADER_DLFCN
1745# ----------------
1746m4_defun([_LT_HEADER_DLFCN],
1747[AC_CHECK_HEADERS([dlfcn.h], [], [], [AC_INCLUDES_DEFAULT])dnl
1748])# _LT_HEADER_DLFCN
1749
1750
1751# _LT_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE,
1752# ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING)
1753# ----------------------------------------------------------------
1754m4_defun([_LT_TRY_DLOPEN_SELF],
1755[m4_require([_LT_HEADER_DLFCN])dnl
1756if test "$cross_compiling" = yes; then :
1757 [$4]
1758else
1759 lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
1760 lt_status=$lt_dlunknown
1761 cat > conftest.$ac_ext <<_LT_EOF
1762[#line $LINENO "configure"
1763#include "confdefs.h"
1764
1765#if HAVE_DLFCN_H
1766#include <dlfcn.h>
1767#endif
1768
1769#include <stdio.h>
1770
1771#ifdef RTLD_GLOBAL
1772# define LT_DLGLOBAL RTLD_GLOBAL
1773#else
1774# ifdef DL_GLOBAL
1775# define LT_DLGLOBAL DL_GLOBAL
1776# else
1777# define LT_DLGLOBAL 0
1778# endif
1779#endif
1780
1781/* We may have to define LT_DLLAZY_OR_NOW in the command line if we
1782 find out it does not work in some platform. */
1783#ifndef LT_DLLAZY_OR_NOW
1784# ifdef RTLD_LAZY
1785# define LT_DLLAZY_OR_NOW RTLD_LAZY
1786# else
1787# ifdef DL_LAZY
1788# define LT_DLLAZY_OR_NOW DL_LAZY
1789# else
1790# ifdef RTLD_NOW
1791# define LT_DLLAZY_OR_NOW RTLD_NOW
1792# else
1793# ifdef DL_NOW
1794# define LT_DLLAZY_OR_NOW DL_NOW
1795# else
1796# define LT_DLLAZY_OR_NOW 0
1797# endif
1798# endif
1799# endif
1800# endif
1801#endif
1802
1803/* When -fvisbility=hidden is used, assume the code has been annotated
1804 correspondingly for the symbols needed. */
1805#if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
1806int fnord () __attribute__((visibility("default")));
1807#endif
1808
1809int fnord () { return 42; }
1810int main ()
1811{
1812 void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
1813 int status = $lt_dlunknown;
1814
1815 if (self)
1816 {
1817 if (dlsym (self,"fnord")) status = $lt_dlno_uscore;
1818 else
1819 {
1820 if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;
1821 else puts (dlerror ());
1822 }
1823 /* dlclose (self); */
1824 }
1825 else
1826 puts (dlerror ());
1827
1828 return status;
1829}]
1830_LT_EOF
1831 if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext} 2>/dev/null; then
1832 (./conftest; exit; ) >&AS_MESSAGE_LOG_FD 2>/dev/null
1833 lt_status=$?
1834 case x$lt_status in
1835 x$lt_dlno_uscore) $1 ;;
1836 x$lt_dlneed_uscore) $2 ;;
1837 x$lt_dlunknown|x*) $3 ;;
1838 esac
1839 else :
1840 # compilation failed
1841 $3
1842 fi
1843fi
1844rm -fr conftest*
1845])# _LT_TRY_DLOPEN_SELF
1846
1847
1848# LT_SYS_DLOPEN_SELF
1849# ------------------
1850AC_DEFUN([LT_SYS_DLOPEN_SELF],
1851[m4_require([_LT_HEADER_DLFCN])dnl
1852if test "x$enable_dlopen" != xyes; then
1853 enable_dlopen=unknown
1854 enable_dlopen_self=unknown
1855 enable_dlopen_self_static=unknown
1856else
1857 lt_cv_dlopen=no
1858 lt_cv_dlopen_libs=
1859
1860 case $host_os in
1861 beos*)
1862 lt_cv_dlopen="load_add_on"
1863 lt_cv_dlopen_libs=
1864 lt_cv_dlopen_self=yes
1865 ;;
1866
1867 mingw* | pw32* | cegcc*)
1868 lt_cv_dlopen="LoadLibrary"
1869 lt_cv_dlopen_libs=
1870 ;;
1871
1872 cygwin*)
1873 lt_cv_dlopen="dlopen"
1874 lt_cv_dlopen_libs=
1875 ;;
1876
1877 darwin*)
1878 # if libdl is installed we need to link against it
1879 AC_CHECK_LIB([dl], [dlopen],
1880 [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],[
1881 lt_cv_dlopen="dyld"
1882 lt_cv_dlopen_libs=
1883 lt_cv_dlopen_self=yes
1884 ])
1885 ;;
1886
1887 *)
1888 AC_CHECK_FUNC([shl_load],
1889 [lt_cv_dlopen="shl_load"],
1890 [AC_CHECK_LIB([dld], [shl_load],
1891 [lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld"],
1892 [AC_CHECK_FUNC([dlopen],
1893 [lt_cv_dlopen="dlopen"],
1894 [AC_CHECK_LIB([dl], [dlopen],
1895 [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"],
1896 [AC_CHECK_LIB([svld], [dlopen],
1897 [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"],
1898 [AC_CHECK_LIB([dld], [dld_link],
1899 [lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld"])
1900 ])
1901 ])
1902 ])
1903 ])
1904 ])
1905 ;;
1906 esac
1907
1908 if test "x$lt_cv_dlopen" != xno; then
1909 enable_dlopen=yes
1910 else
1911 enable_dlopen=no
1912 fi
1913
1914 case $lt_cv_dlopen in
1915 dlopen)
1916 save_CPPFLAGS="$CPPFLAGS"
1917 test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
1918
1919 save_LDFLAGS="$LDFLAGS"
1920 wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
1921
1922 save_LIBS="$LIBS"
1923 LIBS="$lt_cv_dlopen_libs $LIBS"
1924
1925 AC_CACHE_CHECK([whether a program can dlopen itself],
1926 lt_cv_dlopen_self, [dnl
1927 _LT_TRY_DLOPEN_SELF(
1928 lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes,
1929 lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross)
1930 ])
1931
1932 if test "x$lt_cv_dlopen_self" = xyes; then
1933 wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\"
1934 AC_CACHE_CHECK([whether a statically linked program can dlopen itself],
1935 lt_cv_dlopen_self_static, [dnl
1936 _LT_TRY_DLOPEN_SELF(
1937 lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes,
1938 lt_cv_dlopen_self_static=no, lt_cv_dlopen_self_static=cross)
1939 ])
1940 fi
1941
1942 CPPFLAGS="$save_CPPFLAGS"
1943 LDFLAGS="$save_LDFLAGS"
1944 LIBS="$save_LIBS"
1945 ;;
1946 esac
1947
1948 case $lt_cv_dlopen_self in
1949 yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;
1950 *) enable_dlopen_self=unknown ;;
1951 esac
1952
1953 case $lt_cv_dlopen_self_static in
1954 yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;
1955 *) enable_dlopen_self_static=unknown ;;
1956 esac
1957fi
1958_LT_DECL([dlopen_support], [enable_dlopen], [0],
1959 [Whether dlopen is supported])
1960_LT_DECL([dlopen_self], [enable_dlopen_self], [0],
1961 [Whether dlopen of programs is supported])
1962_LT_DECL([dlopen_self_static], [enable_dlopen_self_static], [0],
1963 [Whether dlopen of statically linked programs is supported])
1964])# LT_SYS_DLOPEN_SELF
1965
1966# Old name:
1967AU_ALIAS([AC_LIBTOOL_DLOPEN_SELF], [LT_SYS_DLOPEN_SELF])
1968dnl aclocal-1.4 backwards compatibility:
1969dnl AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF], [])
1970
1971
1972# _LT_COMPILER_C_O([TAGNAME])
1973# ---------------------------
1974# Check to see if options -c and -o are simultaneously supported by compiler.
1975# This macro does not hard code the compiler like AC_PROG_CC_C_O.
1976m4_defun([_LT_COMPILER_C_O],
1977[m4_require([_LT_DECL_SED])dnl
1978m4_require([_LT_FILEUTILS_DEFAULTS])dnl
1979m4_require([_LT_TAG_COMPILER])dnl
1980AC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext],
1981 [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)],
1982 [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=no
1983 $RM -r conftest 2>/dev/null
1984 mkdir conftest
1985 cd conftest
1986 mkdir out
1987 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
1988
1989 lt_compiler_flag="-o out/conftest2.$ac_objext"
1990 # Insert the option either (1) after the last *FLAGS variable, or
1991 # (2) before a word containing "conftest.", or (3) at the end.
1992 # Note that $ac_compile itself does not contain backslashes and begins
1993 # with a dollar sign (not a hyphen), so the echo should work correctly.
1994 lt_compile=`echo "$ac_compile" | $SED \
1995 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
1996 -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
1997 -e 's:$: $lt_compiler_flag:'`
1998 (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
1999 (eval "$lt_compile" 2>out/conftest.err)
2000 ac_status=$?
2001 cat out/conftest.err >&AS_MESSAGE_LOG_FD
2002 echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
2003 if (exit $ac_status) && test -s out/conftest2.$ac_objext
2004 then
2005 # The compiler can only warn and ignore the option if not recognized
2006 # So say no if there are warnings
2007 $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp
2008 $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
2009 if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
2010 _LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
2011 fi
2012 fi
2013 chmod u+w . 2>&AS_MESSAGE_LOG_FD
2014 $RM conftest*
2015 # SGI C++ compiler will create directory out/ii_files/ for
2016 # template instantiation
2017 test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files
2018 $RM out/* && rmdir out
2019 cd ..
2020 $RM -r conftest
2021 $RM conftest*
2022])
2023_LT_TAGDECL([compiler_c_o], [lt_cv_prog_compiler_c_o], [1],
2024 [Does compiler simultaneously support -c and -o options?])
2025])# _LT_COMPILER_C_O
2026
2027
2028# _LT_COMPILER_FILE_LOCKS([TAGNAME])
2029# ----------------------------------
2030# Check to see if we can do hard links to lock some files if needed
2031m4_defun([_LT_COMPILER_FILE_LOCKS],
2032[m4_require([_LT_ENABLE_LOCK])dnl
2033m4_require([_LT_FILEUTILS_DEFAULTS])dnl
2034_LT_COMPILER_C_O([$1])
2035
2036hard_links="nottested"
2037if test "$_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)" = no && test "$need_locks" != no; then
2038 # do not overwrite the value of need_locks provided by the user
2039 AC_MSG_CHECKING([if we can lock with hard links])
2040 hard_links=yes
2041 $RM conftest*
2042 ln conftest.a conftest.b 2>/dev/null && hard_links=no
2043 touch conftest.a
2044 ln conftest.a conftest.b 2>&5 || hard_links=no
2045 ln conftest.a conftest.b 2>/dev/null && hard_links=no
2046 AC_MSG_RESULT([$hard_links])
2047 if test "$hard_links" = no; then
2048 AC_MSG_WARN([`$CC' does not support `-c -o', so `make -j' may be unsafe])
2049 need_locks=warn
2050 fi
2051else
2052 need_locks=no
2053fi
2054_LT_DECL([], [need_locks], [1], [Must we lock files when doing compilation?])
2055])# _LT_COMPILER_FILE_LOCKS
2056
2057
2058# _LT_CHECK_OBJDIR
2059# ----------------
2060m4_defun([_LT_CHECK_OBJDIR],
2061[AC_CACHE_CHECK([for objdir], [lt_cv_objdir],
2062[rm -f .libs 2>/dev/null
2063mkdir .libs 2>/dev/null
2064if test -d .libs; then
2065 lt_cv_objdir=.libs
2066else
2067 # MS-DOS does not allow filenames that begin with a dot.
2068 lt_cv_objdir=_libs
2069fi
2070rmdir .libs 2>/dev/null])
2071objdir=$lt_cv_objdir
2072_LT_DECL([], [objdir], [0],
2073 [The name of the directory that contains temporary libtool files])dnl
2074m4_pattern_allow([LT_OBJDIR])dnl
2075AC_DEFINE_UNQUOTED(LT_OBJDIR, "$lt_cv_objdir/",
2076 [Define to the sub-directory in which libtool stores uninstalled libraries.])
2077])# _LT_CHECK_OBJDIR
2078
2079
2080# _LT_LINKER_HARDCODE_LIBPATH([TAGNAME])
2081# --------------------------------------
2082# Check hardcoding attributes.
2083m4_defun([_LT_LINKER_HARDCODE_LIBPATH],
2084[AC_MSG_CHECKING([how to hardcode library paths into programs])
2085_LT_TAGVAR(hardcode_action, $1)=
2086if test -n "$_LT_TAGVAR(hardcode_libdir_flag_spec, $1)" ||
2087 test -n "$_LT_TAGVAR(runpath_var, $1)" ||
2088 test "X$_LT_TAGVAR(hardcode_automatic, $1)" = "Xyes" ; then
2089
2090 # We can hardcode non-existent directories.
2091 if test "$_LT_TAGVAR(hardcode_direct, $1)" != no &&
2092 # If the only mechanism to avoid hardcoding is shlibpath_var, we
2093 # have to relink, otherwise we might link with an installed library
2094 # when we should be linking with a yet-to-be-installed one
2095 ## test "$_LT_TAGVAR(hardcode_shlibpath_var, $1)" != no &&
2096 test "$_LT_TAGVAR(hardcode_minus_L, $1)" != no; then
2097 # Linking always hardcodes the temporary library directory.
2098 _LT_TAGVAR(hardcode_action, $1)=relink
2099 else
2100 # We can link without hardcoding, and we can hardcode nonexisting dirs.
2101 _LT_TAGVAR(hardcode_action, $1)=immediate
2102 fi
2103else
2104 # We cannot hardcode anything, or else we can only hardcode existing
2105 # directories.
2106 _LT_TAGVAR(hardcode_action, $1)=unsupported
2107fi
2108AC_MSG_RESULT([$_LT_TAGVAR(hardcode_action, $1)])
2109
2110if test "$_LT_TAGVAR(hardcode_action, $1)" = relink ||
2111 test "$_LT_TAGVAR(inherit_rpath, $1)" = yes; then
2112 # Fast installation is not supported
2113 enable_fast_install=no
2114elif test "$shlibpath_overrides_runpath" = yes ||
2115 test "$enable_shared" = no; then
2116 # Fast installation is not necessary
2117 enable_fast_install=needless
2118fi
2119_LT_TAGDECL([], [hardcode_action], [0],
2120 [How to hardcode a shared library path into an executable])
2121])# _LT_LINKER_HARDCODE_LIBPATH
2122
2123
2124# _LT_CMD_STRIPLIB
2125# ----------------
2126m4_defun([_LT_CMD_STRIPLIB],
2127[m4_require([_LT_DECL_EGREP])
2128striplib=
2129old_striplib=
2130AC_MSG_CHECKING([whether stripping libraries is possible])
2131if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then
2132 test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"
2133 test -z "$striplib" && striplib="$STRIP --strip-unneeded"
2134 AC_MSG_RESULT([yes])
2135else
2136# FIXME - insert some real tests, host_os isn't really good enough
2137 case $host_os in
2138 darwin*)
2139 if test -n "$STRIP" ; then
2140 striplib="$STRIP -x"
2141 old_striplib="$STRIP -S"
2142 AC_MSG_RESULT([yes])
2143 else
2144 AC_MSG_RESULT([no])
2145 fi
2146 ;;
2147 *)
2148 AC_MSG_RESULT([no])
2149 ;;
2150 esac
2151fi
2152_LT_DECL([], [old_striplib], [1], [Commands to strip libraries])
2153_LT_DECL([], [striplib], [1])
2154])# _LT_CMD_STRIPLIB
2155
2156
2157# _LT_SYS_DYNAMIC_LINKER([TAG])
2158# -----------------------------
2159# PORTME Fill in your ld.so characteristics
2160m4_defun([_LT_SYS_DYNAMIC_LINKER],
2161[AC_REQUIRE([AC_CANONICAL_HOST])dnl
2162m4_require([_LT_DECL_EGREP])dnl
2163m4_require([_LT_FILEUTILS_DEFAULTS])dnl
2164m4_require([_LT_DECL_OBJDUMP])dnl
2165m4_require([_LT_DECL_SED])dnl
2166m4_require([_LT_CHECK_SHELL_FEATURES])dnl
2167AC_MSG_CHECKING([dynamic linker characteristics])
2168m4_if([$1],
2169 [], [
2170if test "$GCC" = yes; then
2171 case $host_os in
2172 darwin*) lt_awk_arg="/^libraries:/,/LR/" ;;
2173 *) lt_awk_arg="/^libraries:/" ;;
2174 esac
2175 case $host_os in
2176 mingw* | cegcc*) lt_sed_strip_eq="s,=\([[A-Za-z]]:\),\1,g" ;;
2177 *) lt_sed_strip_eq="s,=/,/,g" ;;
2178 esac
2179 lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e $lt_sed_strip_eq`
2180 case $lt_search_path_spec in
2181 *\;*)
2182 # if the path contains ";" then we assume it to be the separator
2183 # otherwise default to the standard path separator (i.e. ":") - it is
2184 # assumed that no part of a normal pathname contains ";" but that should
2185 # okay in the real world where ";" in dirpaths is itself problematic.
2186 lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED 's/;/ /g'`
2187 ;;
2188 *)
2189 lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED "s/$PATH_SEPARATOR/ /g"`
2190 ;;
2191 esac
2192 # Ok, now we have the path, separated by spaces, we can step through it
2193 # and add multilib dir if necessary.
2194 lt_tmp_lt_search_path_spec=
2195 lt_multi_os_dir=`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null`
2196 for lt_sys_path in $lt_search_path_spec; do
2197 if test -d "$lt_sys_path/$lt_multi_os_dir"; then
2198 lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path/$lt_multi_os_dir"
2199 else
2200 test -d "$lt_sys_path" && \
2201 lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path"
2202 fi
2203 done
2204 lt_search_path_spec=`$ECHO "$lt_tmp_lt_search_path_spec" | awk '
2205BEGIN {RS=" "; FS="/|\n";} {
2206 lt_foo="";
2207 lt_count=0;
2208 for (lt_i = NF; lt_i > 0; lt_i--) {
2209 if ($lt_i != "" && $lt_i != ".") {
2210 if ($lt_i == "..") {
2211 lt_count++;
2212 } else {
2213 if (lt_count == 0) {
2214 lt_foo="/" $lt_i lt_foo;
2215 } else {
2216 lt_count--;
2217 }
2218 }
2219 }
2220 }
2221 if (lt_foo != "") { lt_freq[[lt_foo]]++; }
2222 if (lt_freq[[lt_foo]] == 1) { print lt_foo; }
2223}'`
2224 # AWK program above erroneously prepends '/' to C:/dos/paths
2225 # for these hosts.
2226 case $host_os in
2227 mingw* | cegcc*) lt_search_path_spec=`$ECHO "$lt_search_path_spec" |\
2228 $SED 's,/\([[A-Za-z]]:\),\1,g'` ;;
2229 esac
2230 sys_lib_search_path_spec=`$ECHO "$lt_search_path_spec" | $lt_NL2SP`
2231else
2232 sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
2233fi])
2234library_names_spec=
2235libname_spec='lib$name'
2236soname_spec=
2237shrext_cmds=".so"
2238postinstall_cmds=
2239postuninstall_cmds=
2240finish_cmds=
2241finish_eval=
2242shlibpath_var=
2243shlibpath_overrides_runpath=unknown
2244version_type=none
2245dynamic_linker="$host_os ld.so"
2246sys_lib_dlsearch_path_spec="/lib /usr/lib"
2247need_lib_prefix=unknown
2248hardcode_into_libs=no
2249
2250# when you set need_version to no, make sure it does not cause -set_version
2251# flags to be left without arguments
2252need_version=unknown
2253
2254case $host_os in
2255aix3*)
2256 version_type=linux # correct to gnu/linux during the next big refactor
2257 library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a'
2258 shlibpath_var=LIBPATH
2259
2260 # AIX 3 has no versioning support, so we append a major version to the name.
2261 soname_spec='${libname}${release}${shared_ext}$major'
2262 ;;
2263
2264aix[[4-9]]*)
2265 version_type=linux # correct to gnu/linux during the next big refactor
2266 need_lib_prefix=no
2267 need_version=no
2268 hardcode_into_libs=yes
2269 if test "$host_cpu" = ia64; then
2270 # AIX 5 supports IA64
2271 library_names_spec='${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext}$versuffix $libname${shared_ext}'
2272 shlibpath_var=LD_LIBRARY_PATH
2273 else
2274 # With GCC up to 2.95.x, collect2 would create an import file
2275 # for dependence libraries. The import file would start with
2276 # the line `#! .'. This would cause the generated library to
2277 # depend on `.', always an invalid library. This was fixed in
2278 # development snapshots of GCC prior to 3.0.
2279 case $host_os in
2280 aix4 | aix4.[[01]] | aix4.[[01]].*)
2281 if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
2282 echo ' yes '
2283 echo '#endif'; } | ${CC} -E - | $GREP yes > /dev/null; then
2284 :
2285 else
2286 can_build_shared=no
2287 fi
2288 ;;
2289 esac
2290 # AIX (on Power*) has no versioning support, so currently we can not hardcode correct
2291 # soname into executable. Probably we can add versioning support to
2292 # collect2, so additional links can be useful in future.
2293 if test "$aix_use_runtimelinking" = yes; then
2294 # If using run time linking (on AIX 4.2 or later) use lib<name>.so
2295 # instead of lib<name>.a to let people know that these are not
2296 # typical AIX shared libraries.
2297 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2298 else
2299 # We preserve .a as extension for shared libraries through AIX4.2
2300 # and later when we are not doing run time linking.
2301 library_names_spec='${libname}${release}.a $libname.a'
2302 soname_spec='${libname}${release}${shared_ext}$major'
2303 fi
2304 shlibpath_var=LIBPATH
2305 fi
2306 ;;
2307
2308amigaos*)
2309 case $host_cpu in
2310 powerpc)
2311 # Since July 2007 AmigaOS4 officially supports .so libraries.
2312 # When compiling the executable, add -use-dynld -Lsobjs: to the compileline.
2313 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2314 ;;
2315 m68k)
2316 library_names_spec='$libname.ixlibrary $libname.a'
2317 # Create ${libname}_ixlibrary.a entries in /sys/libs.
2318 finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`func_echo_all "$lib" | $SED '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; test $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done'
2319 ;;
2320 esac
2321 ;;
2322
2323beos*)
2324 library_names_spec='${libname}${shared_ext}'
2325 dynamic_linker="$host_os ld.so"
2326 shlibpath_var=LIBRARY_PATH
2327 ;;
2328
2329bsdi[[45]]*)
2330 version_type=linux # correct to gnu/linux during the next big refactor
2331 need_version=no
2332 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2333 soname_spec='${libname}${release}${shared_ext}$major'
2334 finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
2335 shlibpath_var=LD_LIBRARY_PATH
2336 sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
2337 sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
2338 # the default ld.so.conf also contains /usr/contrib/lib and
2339 # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
2340 # libtool to hard-code these into programs
2341 ;;
2342
2343cygwin* | mingw* | pw32* | cegcc*)
2344 version_type=windows
2345 shrext_cmds=".dll"
2346 need_version=no
2347 need_lib_prefix=no
2348
2349 case $GCC,$cc_basename in
2350 yes,*)
2351 # gcc
2352 library_names_spec='$libname.dll.a'
2353 # DLL is installed to $(libdir)/../bin by postinstall_cmds
2354 postinstall_cmds='base_file=`basename \${file}`~
2355 dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~
2356 dldir=$destdir/`dirname \$dlpath`~
2357 test -d \$dldir || mkdir -p \$dldir~
2358 $install_prog $dir/$dlname \$dldir/$dlname~
2359 chmod a+x \$dldir/$dlname~
2360 if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
2361 eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
2362 fi'
2363 postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
2364 dlpath=$dir/\$dldll~
2365 $RM \$dlpath'
2366 shlibpath_overrides_runpath=yes
2367
2368 case $host_os in
2369 cygwin*)
2370 # Cygwin DLLs use 'cyg' prefix rather than 'lib'
2371 soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
2372m4_if([$1], [],[
2373 sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api"])
2374 ;;
2375 mingw* | cegcc*)
2376 # MinGW DLLs use traditional 'lib' prefix
2377 soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
2378 ;;
2379 pw32*)
2380 # pw32 DLLs use 'pw' prefix rather than 'lib'
2381 library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
2382 ;;
2383 esac
2384 dynamic_linker='Win32 ld.exe'
2385 ;;
2386
2387 *,cl*)
2388 # Native MSVC
2389 libname_spec='$name'
2390 soname_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext}'
2391 library_names_spec='${libname}.dll.lib'
2392
2393 case $build_os in
2394 mingw*)
2395 sys_lib_search_path_spec=
2396 lt_save_ifs=$IFS
2397 IFS=';'
2398 for lt_path in $LIB
2399 do
2400 IFS=$lt_save_ifs
2401 # Let DOS variable expansion print the short 8.3 style file name.
2402 lt_path=`cd "$lt_path" 2>/dev/null && cmd //C "for %i in (".") do @echo %~si"`
2403 sys_lib_search_path_spec="$sys_lib_search_path_spec $lt_path"
2404 done
2405 IFS=$lt_save_ifs
2406 # Convert to MSYS style.
2407 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | sed -e 's|\\\\|/|g' -e 's| \\([[a-zA-Z]]\\):| /\\1|g' -e 's|^ ||'`
2408 ;;
2409 cygwin*)
2410 # Convert to unix form, then to dos form, then back to unix form
2411 # but this time dos style (no spaces!) so that the unix form looks
2412 # like /cygdrive/c/PROGRA~1:/cygdr...
2413 sys_lib_search_path_spec=`cygpath --path --unix "$LIB"`
2414 sys_lib_search_path_spec=`cygpath --path --dos "$sys_lib_search_path_spec" 2>/dev/null`
2415 sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
2416 ;;
2417 *)
2418 sys_lib_search_path_spec="$LIB"
2419 if $ECHO "$sys_lib_search_path_spec" | [$GREP ';[c-zC-Z]:/' >/dev/null]; then
2420 # It is most probably a Windows format PATH.
2421 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
2422 else
2423 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
2424 fi
2425 # FIXME: find the short name or the path components, as spaces are
2426 # common. (e.g. "Program Files" -> "PROGRA~1")
2427 ;;
2428 esac
2429
2430 # DLL is installed to $(libdir)/../bin by postinstall_cmds
2431 postinstall_cmds='base_file=`basename \${file}`~
2432 dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~
2433 dldir=$destdir/`dirname \$dlpath`~
2434 test -d \$dldir || mkdir -p \$dldir~
2435 $install_prog $dir/$dlname \$dldir/$dlname'
2436 postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
2437 dlpath=$dir/\$dldll~
2438 $RM \$dlpath'
2439 shlibpath_overrides_runpath=yes
2440 dynamic_linker='Win32 link.exe'
2441 ;;
2442
2443 *)
2444 # Assume MSVC wrapper
2445 library_names_spec='${libname}`echo ${release} | $SED -e 's/[[.]]/-/g'`${versuffix}${shared_ext} $libname.lib'
2446 dynamic_linker='Win32 ld.exe'
2447 ;;
2448 esac
2449 # FIXME: first we should search . and the directory the executable is in
2450 shlibpath_var=PATH
2451 ;;
2452
2453darwin* | rhapsody*)
2454 dynamic_linker="$host_os dyld"
2455 version_type=darwin
2456 need_lib_prefix=no
2457 need_version=no
2458 library_names_spec='${libname}${release}${major}$shared_ext ${libname}$shared_ext'
2459 soname_spec='${libname}${release}${major}$shared_ext'
2460 shlibpath_overrides_runpath=yes
2461 shlibpath_var=DYLD_LIBRARY_PATH
2462 shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
2463m4_if([$1], [],[
2464 sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"])
2465 sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'
2466 ;;
2467
2468dgux*)
2469 version_type=linux # correct to gnu/linux during the next big refactor
2470 need_lib_prefix=no
2471 need_version=no
2472 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname$shared_ext'
2473 soname_spec='${libname}${release}${shared_ext}$major'
2474 shlibpath_var=LD_LIBRARY_PATH
2475 ;;
2476
2477freebsd* | dragonfly*)
2478 # DragonFly does not have aout. When/if they implement a new
2479 # versioning mechanism, adjust this.
2480 if test -x /usr/bin/objformat; then
2481 objformat=`/usr/bin/objformat`
2482 else
2483 case $host_os in
2484 freebsd[[23]].*) objformat=aout ;;
2485 *) objformat=elf ;;
2486 esac
2487 fi
2488 version_type=freebsd-$objformat
2489 case $version_type in
2490 freebsd-elf*)
2491 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext} $libname${shared_ext}'
2492 need_version=no
2493 need_lib_prefix=no
2494 ;;
2495 freebsd-*)
2496 library_names_spec='${libname}${release}${shared_ext}$versuffix $libname${shared_ext}$versuffix'
2497 need_version=yes
2498 ;;
2499 esac
2500 shlibpath_var=LD_LIBRARY_PATH
2501 case $host_os in
2502 freebsd2.*)
2503 shlibpath_overrides_runpath=yes
2504 ;;
2505 freebsd3.[[01]]* | freebsdelf3.[[01]]*)
2506 shlibpath_overrides_runpath=yes
2507 hardcode_into_libs=yes
2508 ;;
2509 freebsd3.[[2-9]]* | freebsdelf3.[[2-9]]* | \
2510 freebsd4.[[0-5]] | freebsdelf4.[[0-5]] | freebsd4.1.1 | freebsdelf4.1.1)
2511 shlibpath_overrides_runpath=no
2512 hardcode_into_libs=yes
2513 ;;
2514 *) # from 4.6 on, and DragonFly
2515 shlibpath_overrides_runpath=yes
2516 hardcode_into_libs=yes
2517 ;;
2518 esac
2519 ;;
2520
2521gnu*)
2522 version_type=linux # correct to gnu/linux during the next big refactor
2523 need_lib_prefix=no
2524 need_version=no
2525 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
2526 soname_spec='${libname}${release}${shared_ext}$major'
2527 shlibpath_var=LD_LIBRARY_PATH
2528 shlibpath_overrides_runpath=no
2529 hardcode_into_libs=yes
2530 ;;
2531
2532haiku*)
2533 version_type=linux # correct to gnu/linux during the next big refactor
2534 need_lib_prefix=no
2535 need_version=no
2536 dynamic_linker="$host_os runtime_loader"
2537 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}'
2538 soname_spec='${libname}${release}${shared_ext}$major'
2539 shlibpath_var=LIBRARY_PATH
2540 shlibpath_overrides_runpath=yes
2541 sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib'
2542 hardcode_into_libs=yes
2543 ;;
2544
2545hpux9* | hpux10* | hpux11*)
2546 # Give a soname corresponding to the major version so that dld.sl refuses to
2547 # link against other versions.
2548 version_type=sunos
2549 need_lib_prefix=no
2550 need_version=no
2551 case $host_cpu in
2552 ia64*)
2553 shrext_cmds='.so'
2554 hardcode_into_libs=yes
2555 dynamic_linker="$host_os dld.so"
2556 shlibpath_var=LD_LIBRARY_PATH
2557 shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
2558 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2559 soname_spec='${libname}${release}${shared_ext}$major'
2560 if test "X$HPUX_IA64_MODE" = X32; then
2561 sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"
2562 else
2563 sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"
2564 fi
2565 sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
2566 ;;
2567 hppa*64*)
2568 shrext_cmds='.sl'
2569 hardcode_into_libs=yes
2570 dynamic_linker="$host_os dld.sl"
2571 shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH
2572 shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
2573 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2574 soname_spec='${libname}${release}${shared_ext}$major'
2575 sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64"
2576 sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
2577 ;;
2578 *)
2579 shrext_cmds='.sl'
2580 dynamic_linker="$host_os dld.sl"
2581 shlibpath_var=SHLIB_PATH
2582 shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
2583 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2584 soname_spec='${libname}${release}${shared_ext}$major'
2585 ;;
2586 esac
2587 # HP-UX runs *really* slowly unless shared libraries are mode 555, ...
2588 postinstall_cmds='chmod 555 $lib'
2589 # or fails outright, so override atomically:
2590 install_override_mode=555
2591 ;;
2592
2593interix[[3-9]]*)
2594 version_type=linux # correct to gnu/linux during the next big refactor
2595 need_lib_prefix=no
2596 need_version=no
2597 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
2598 soname_spec='${libname}${release}${shared_ext}$major'
2599 dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)'
2600 shlibpath_var=LD_LIBRARY_PATH
2601 shlibpath_overrides_runpath=no
2602 hardcode_into_libs=yes
2603 ;;
2604
2605irix5* | irix6* | nonstopux*)
2606 case $host_os in
2607 nonstopux*) version_type=nonstopux ;;
2608 *)
2609 if test "$lt_cv_prog_gnu_ld" = yes; then
2610 version_type=linux # correct to gnu/linux during the next big refactor
2611 else
2612 version_type=irix
2613 fi ;;
2614 esac
2615 need_lib_prefix=no
2616 need_version=no
2617 soname_spec='${libname}${release}${shared_ext}$major'
2618 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${release}${shared_ext} $libname${shared_ext}'
2619 case $host_os in
2620 irix5* | nonstopux*)
2621 libsuff= shlibsuff=
2622 ;;
2623 *)
2624 case $LD in # libtool.m4 will add one of these switches to LD
2625 *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ")
2626 libsuff= shlibsuff= libmagic=32-bit;;
2627 *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ")
2628 libsuff=32 shlibsuff=N32 libmagic=N32;;
2629 *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ")
2630 libsuff=64 shlibsuff=64 libmagic=64-bit;;
2631 *) libsuff= shlibsuff= libmagic=never-match;;
2632 esac
2633 ;;
2634 esac
2635 shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
2636 shlibpath_overrides_runpath=no
2637 sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}"
2638 sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}"
2639 hardcode_into_libs=yes
2640 ;;
2641
2642# No shared lib support for Linux oldld, aout, or coff.
2643linux*oldld* | linux*aout* | linux*coff*)
2644 dynamic_linker=no
2645 ;;
2646
2647# This must be glibc/ELF.
2648linux* | k*bsd*-gnu | kopensolaris*-gnu)
2649 version_type=linux # correct to gnu/linux during the next big refactor
2650 need_lib_prefix=no
2651 need_version=no
2652 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2653 soname_spec='${libname}${release}${shared_ext}$major'
2654 finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
2655 shlibpath_var=LD_LIBRARY_PATH
2656 shlibpath_overrides_runpath=no
2657
2658 # Some binutils ld are patched to set DT_RUNPATH
2659 AC_CACHE_VAL([lt_cv_shlibpath_overrides_runpath],
2660 [lt_cv_shlibpath_overrides_runpath=no
2661 save_LDFLAGS=$LDFLAGS
2662 save_libdir=$libdir
2663 eval "libdir=/foo; wl=\"$_LT_TAGVAR(lt_prog_compiler_wl, $1)\"; \
2664 LDFLAGS=\"\$LDFLAGS $_LT_TAGVAR(hardcode_libdir_flag_spec, $1)\""
2665 AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
2666 [AS_IF([ ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null],
2667 [lt_cv_shlibpath_overrides_runpath=yes])])
2668 LDFLAGS=$save_LDFLAGS
2669 libdir=$save_libdir
2670 ])
2671 shlibpath_overrides_runpath=$lt_cv_shlibpath_overrides_runpath
2672
2673 # This implies no fast_install, which is unacceptable.
2674 # Some rework will be needed to allow for fast_install
2675 # before this can be enabled.
2676 hardcode_into_libs=yes
2677
2678 # Add ABI-specific directories to the system library path.
2679 sys_lib_dlsearch_path_spec="/lib64 /usr/lib64 /lib /usr/lib"
2680
2681 # Append ld.so.conf contents to the search path
2682 if test -f /etc/ld.so.conf; then
2683 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' ' '`
2684 sys_lib_dlsearch_path_spec="$sys_lib_dlsearch_path_spec $lt_ld_extra"
2685
2686 fi
2687
2688 # We used to test for /lib/ld.so.1 and disable shared libraries on
2689 # powerpc, because MkLinux only supported shared libraries with the
2690 # GNU dynamic linker. Since this was broken with cross compilers,
2691 # most powerpc-linux boxes support dynamic linking these days and
2692 # people can always --disable-shared, the test was removed, and we
2693 # assume the GNU/Linux dynamic linker is in use.
2694 dynamic_linker='GNU/Linux ld.so'
2695 ;;
2696
2697netbsd*)
2698 version_type=sunos
2699 need_lib_prefix=no
2700 need_version=no
2701 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
2702 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
2703 finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
2704 dynamic_linker='NetBSD (a.out) ld.so'
2705 else
2706 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
2707 soname_spec='${libname}${release}${shared_ext}$major'
2708 dynamic_linker='NetBSD ld.elf_so'
2709 fi
2710 shlibpath_var=LD_LIBRARY_PATH
2711 shlibpath_overrides_runpath=yes
2712 hardcode_into_libs=yes
2713 ;;
2714
2715newsos6)
2716 version_type=linux # correct to gnu/linux during the next big refactor
2717 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2718 shlibpath_var=LD_LIBRARY_PATH
2719 shlibpath_overrides_runpath=yes
2720 ;;
2721
2722*nto* | *qnx*)
2723 version_type=qnx
2724 need_lib_prefix=no
2725 need_version=no
2726 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2727 soname_spec='${libname}${release}${shared_ext}$major'
2728 shlibpath_var=LD_LIBRARY_PATH
2729 shlibpath_overrides_runpath=no
2730 hardcode_into_libs=yes
2731 dynamic_linker='ldqnx.so'
2732 ;;
2733
2734openbsd*)
2735 version_type=sunos
2736 sys_lib_dlsearch_path_spec="/usr/lib"
2737 need_lib_prefix=no
2738 # Some older versions of OpenBSD (3.3 at least) *do* need versioned libs.
2739 case $host_os in
2740 openbsd3.3 | openbsd3.3.*) need_version=yes ;;
2741 *) need_version=no ;;
2742 esac
2743 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
2744 finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
2745 shlibpath_var=LD_LIBRARY_PATH
2746 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then
2747 case $host_os in
2748 openbsd2.[[89]] | openbsd2.[[89]].*)
2749 shlibpath_overrides_runpath=no
2750 ;;
2751 *)
2752 shlibpath_overrides_runpath=yes
2753 ;;
2754 esac
2755 else
2756 shlibpath_overrides_runpath=yes
2757 fi
2758 ;;
2759
2760os2*)
2761 libname_spec='$name'
2762 shrext_cmds=".dll"
2763 need_lib_prefix=no
2764 library_names_spec='$libname${shared_ext} $libname.a'
2765 dynamic_linker='OS/2 ld.exe'
2766 shlibpath_var=LIBPATH
2767 ;;
2768
2769osf3* | osf4* | osf5*)
2770 version_type=osf
2771 need_lib_prefix=no
2772 need_version=no
2773 soname_spec='${libname}${release}${shared_ext}$major'
2774 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2775 shlibpath_var=LD_LIBRARY_PATH
2776 sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
2777 sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec"
2778 ;;
2779
2780rdos*)
2781 dynamic_linker=no
2782 ;;
2783
2784solaris*)
2785 version_type=linux # correct to gnu/linux during the next big refactor
2786 need_lib_prefix=no
2787 need_version=no
2788 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
2789 soname_spec='${libname}${release}${shared_ext}$major'
2790 shlibpath_var=LD_LIBRARY_PATH
2791 shlibpath_overrides_runpath=yes
2792 hardcode_into_libs=yes
2793 # ldd complains unless libraries are executable
2794 postinstall_cmds='chmod +x $lib'
2795 ;;
2796
2797sunos4*)
2798 version_type=sunos
2799 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${shared_ext}$versuffix'
2800 finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
2801 shlibpath_var=LD_LIBRARY_PATH
2802 shlibpath_overrides_runpath=yes
2803 if test "$with_gnu_ld" = yes; then
2804 need_lib_prefix=no
2805 fi
2806 need_version=yes
2807 ;;
2808
2809sysv4 | sysv4.3*)