Codebase list faad2 / upstream/2.9.2+git20200904.f71b5e8
Import upstream version 2.9.2+git20200904.f71b5e8, md5 1bc53b769244f4ccafd6d91e87b10586 Debian Janitor 3 years ago
191 changed file(s) with 54458 addition(s) and 12053 deletion(s). Raw diff Collapse all Expand all
+0
-21
.gitignore less more
0 *.o
1 *.so
2 *.a
3 *.ncb
4 *.plg
5 *.aps
6 *.opt
7 *.aac
8 *.wav
9 *.lo
10 *.in
11 Makefile
12 *.libs
13 *.deps
14 *.la
15 project/msvc/.vs/
16 project/msvc/bin/
17 project/msvc/intermediate/
18 libfaad/win32_ver.h
19 *.user
20 /libfaad/faad2.pc
0 Installation Instructions
1 *************************
2
3 Copyright (C) 1994-1996, 1999-2002, 2004-2016 Free Software
4 Foundation, Inc.
5
6 Copying and distribution of this file, with or without modification,
7 are permitted in any medium without royalty provided the copyright
8 notice and this notice are preserved. This file is offered as-is,
9 without warranty of any kind.
10
11 Basic Installation
12 ==================
13
14 Briefly, the shell command './configure && make && make install'
15 should configure, build, and install this package. The following
16 more-detailed instructions are generic; see the 'README' file for
17 instructions specific to this package. Some packages provide this
18 'INSTALL' file but do not implement all of the features documented
19 below. The lack of an optional feature in a given package is not
20 necessarily a bug. More recommendations for GNU packages can be found
21 in *note Makefile Conventions: (standards)Makefile Conventions.
22
23 The 'configure' shell script attempts to guess correct values for
24 various system-dependent variables used during compilation. It uses
25 those values to create a 'Makefile' in each directory of the package.
26 It may also create one or more '.h' files containing system-dependent
27 definitions. Finally, it creates a shell script 'config.status' that
28 you can run in the future to recreate the current configuration, and a
29 file 'config.log' containing compiler output (useful mainly for
30 debugging 'configure').
31
32 It can also use an optional file (typically called 'config.cache' and
33 enabled with '--cache-file=config.cache' or simply '-C') that saves the
34 results of its tests to speed up reconfiguring. Caching is disabled by
35 default to prevent problems with accidental use of stale cache files.
36
37 If you need to do unusual things to compile the package, please try
38 to figure out how 'configure' could check whether to do them, and mail
39 diffs or instructions to the address given in the 'README' so they can
40 be considered for the next release. If you are using the cache, and at
41 some point 'config.cache' contains results you don't want to keep, you
42 may remove or edit it.
43
44 The file 'configure.ac' (or 'configure.in') is used to create
45 'configure' by a program called 'autoconf'. You need 'configure.ac' if
46 you want to change it or regenerate 'configure' using a newer version of
47 'autoconf'.
48
49 The simplest way to compile this package is:
50
51 1. 'cd' to the directory containing the package's source code and type
52 './configure' to configure the package for your system.
53
54 Running 'configure' might take a while. While running, it prints
55 some messages telling which features it is checking for.
56
57 2. Type 'make' to compile the package.
58
59 3. Optionally, type 'make check' to run any self-tests that come with
60 the package, generally using the just-built uninstalled binaries.
61
62 4. Type 'make install' to install the programs and any data files and
63 documentation. When installing into a prefix owned by root, it is
64 recommended that the package be configured and built as a regular
65 user, and only the 'make install' phase executed with root
66 privileges.
67
68 5. Optionally, type 'make installcheck' to repeat any self-tests, but
69 this time using the binaries in their final installed location.
70 This target does not install anything. Running this target as a
71 regular user, particularly if the prior 'make install' required
72 root privileges, verifies that the installation completed
73 correctly.
74
75 6. You can remove the program binaries and object files from the
76 source code directory by typing 'make clean'. To also remove the
77 files that 'configure' created (so you can compile the package for
78 a different kind of computer), type 'make distclean'. There is
79 also a 'make maintainer-clean' target, but that is intended mainly
80 for the package's developers. If you use it, you may have to get
81 all sorts of other programs in order to regenerate files that came
82 with the distribution.
83
84 7. Often, you can also type 'make uninstall' to remove the installed
85 files again. In practice, not all packages have tested that
86 uninstallation works correctly, even though it is required by the
87 GNU Coding Standards.
88
89 8. Some packages, particularly those that use Automake, provide 'make
90 distcheck', which can by used by developers to test that all other
91 targets like 'make install' and 'make uninstall' work correctly.
92 This target is generally not run by end users.
93
94 Compilers and Options
95 =====================
96
97 Some systems require unusual options for compilation or linking that
98 the 'configure' script does not know about. Run './configure --help'
99 for details on some of the pertinent environment variables.
100
101 You can give 'configure' initial values for configuration parameters
102 by setting variables in the command line or in the environment. Here is
103 an example:
104
105 ./configure CC=c99 CFLAGS=-g LIBS=-lposix
106
107 *Note Defining Variables::, for more details.
108
109 Compiling For Multiple Architectures
110 ====================================
111
112 You can compile the package for more than one kind of computer at the
113 same time, by placing the object files for each architecture in their
114 own directory. To do this, you can use GNU 'make'. 'cd' to the
115 directory where you want the object files and executables to go and run
116 the 'configure' script. 'configure' automatically checks for the source
117 code in the directory that 'configure' is in and in '..'. This is known
118 as a "VPATH" build.
119
120 With a non-GNU 'make', it is safer to compile the package for one
121 architecture at a time in the source code directory. After you have
122 installed the package for one architecture, use 'make distclean' before
123 reconfiguring for another architecture.
124
125 On MacOS X 10.5 and later systems, you can create libraries and
126 executables that work on multiple system types--known as "fat" or
127 "universal" binaries--by specifying multiple '-arch' options to the
128 compiler but only a single '-arch' option to the preprocessor. Like
129 this:
130
131 ./configure CC="gcc -arch i386 -arch x86_64 -arch ppc -arch ppc64" \
132 CXX="g++ -arch i386 -arch x86_64 -arch ppc -arch ppc64" \
133 CPP="gcc -E" CXXCPP="g++ -E"
134
135 This is not guaranteed to produce working output in all cases, you
136 may have to build one architecture at a time and combine the results
137 using the 'lipo' tool if you have problems.
138
139 Installation Names
140 ==================
141
142 By default, 'make install' installs the package's commands under
143 '/usr/local/bin', include files under '/usr/local/include', etc. You
144 can specify an installation prefix other than '/usr/local' by giving
145 'configure' the option '--prefix=PREFIX', where PREFIX must be an
146 absolute file name.
147
148 You can specify separate installation prefixes for
149 architecture-specific files and architecture-independent files. If you
150 pass the option '--exec-prefix=PREFIX' to 'configure', the package uses
151 PREFIX as the prefix for installing programs and libraries.
152 Documentation and other data files still use the regular prefix.
153
154 In addition, if you use an unusual directory layout you can give
155 options like '--bindir=DIR' to specify different values for particular
156 kinds of files. Run 'configure --help' for a list of the directories
157 you can set and what kinds of files go in them. In general, the default
158 for these options is expressed in terms of '${prefix}', so that
159 specifying just '--prefix' will affect all of the other directory
160 specifications that were not explicitly provided.
161
162 The most portable way to affect installation locations is to pass the
163 correct locations to 'configure'; however, many packages provide one or
164 both of the following shortcuts of passing variable assignments to the
165 'make install' command line to change installation locations without
166 having to reconfigure or recompile.
167
168 The first method involves providing an override variable for each
169 affected directory. For example, 'make install
170 prefix=/alternate/directory' will choose an alternate location for all
171 directory configuration variables that were expressed in terms of
172 '${prefix}'. Any directories that were specified during 'configure',
173 but not in terms of '${prefix}', must each be overridden at install time
174 for the entire installation to be relocated. The approach of makefile
175 variable overrides for each directory variable is required by the GNU
176 Coding Standards, and ideally causes no recompilation. However, some
177 platforms have known limitations with the semantics of shared libraries
178 that end up requiring recompilation when using this method, particularly
179 noticeable in packages that use GNU Libtool.
180
181 The second method involves providing the 'DESTDIR' variable. For
182 example, 'make install DESTDIR=/alternate/directory' will prepend
183 '/alternate/directory' before all installation names. The approach of
184 'DESTDIR' overrides is not required by the GNU Coding Standards, and
185 does not work on platforms that have drive letters. On the other hand,
186 it does better at avoiding recompilation issues, and works well even
187 when some directory options were not specified in terms of '${prefix}'
188 at 'configure' time.
189
190 Optional Features
191 =================
192
193 If the package supports it, you can cause programs to be installed
194 with an extra prefix or suffix on their names by giving 'configure' the
195 option '--program-prefix=PREFIX' or '--program-suffix=SUFFIX'.
196
197 Some packages pay attention to '--enable-FEATURE' options to
198 'configure', where FEATURE indicates an optional part of the package.
199 They may also pay attention to '--with-PACKAGE' options, where PACKAGE
200 is something like 'gnu-as' or 'x' (for the X Window System). The
201 'README' should mention any '--enable-' and '--with-' options that the
202 package recognizes.
203
204 For packages that use the X Window System, 'configure' can usually
205 find the X include and library files automatically, but if it doesn't,
206 you can use the 'configure' options '--x-includes=DIR' and
207 '--x-libraries=DIR' to specify their locations.
208
209 Some packages offer the ability to configure how verbose the
210 execution of 'make' will be. For these packages, running './configure
211 --enable-silent-rules' sets the default to minimal output, which can be
212 overridden with 'make V=1'; while running './configure
213 --disable-silent-rules' sets the default to verbose, which can be
214 overridden with 'make V=0'.
215
216 Particular systems
217 ==================
218
219 On HP-UX, the default C compiler is not ANSI C compatible. If GNU CC
220 is not installed, it is recommended to use the following options in
221 order to use an ANSI C compiler:
222
223 ./configure CC="cc -Ae -D_XOPEN_SOURCE=500"
224
225 and if that doesn't work, install pre-built binaries of GCC for HP-UX.
226
227 HP-UX 'make' updates targets which have the same time stamps as their
228 prerequisites, which makes it generally unusable when shipped generated
229 files such as 'configure' are involved. Use GNU 'make' instead.
230
231 On OSF/1 a.k.a. Tru64, some versions of the default C compiler cannot
232 parse its '<wchar.h>' header file. The option '-nodtk' can be used as a
233 workaround. If GNU CC is not installed, it is therefore recommended to
234 try
235
236 ./configure CC="cc"
237
238 and if that doesn't work, try
239
240 ./configure CC="cc -nodtk"
241
242 On Solaris, don't put '/usr/ucb' early in your 'PATH'. This
243 directory contains several dysfunctional programs; working variants of
244 these programs are available in '/usr/bin'. So, if you need '/usr/ucb'
245 in your 'PATH', put it _after_ '/usr/bin'.
246
247 On Haiku, software installed for all users goes in '/boot/common',
248 not '/usr/local'. It is recommended to use the following options:
249
250 ./configure --prefix=/boot/common
251
252 Specifying the System Type
253 ==========================
254
255 There may be some features 'configure' cannot figure out
256 automatically, but needs to determine by the type of machine the package
257 will run on. Usually, assuming the package is built to be run on the
258 _same_ architectures, 'configure' can figure that out, but if it prints
259 a message saying it cannot guess the machine type, give it the
260 '--build=TYPE' option. TYPE can either be a short name for the system
261 type, such as 'sun4', or a canonical name which has the form:
262
263 CPU-COMPANY-SYSTEM
264
265 where SYSTEM can have one of these forms:
266
267 OS
268 KERNEL-OS
269
270 See the file 'config.sub' for the possible values of each field. If
271 'config.sub' isn't included in this package, then this package doesn't
272 need to know the machine type.
273
274 If you are _building_ compiler tools for cross-compiling, you should
275 use the option '--target=TYPE' to select the type of system they will
276 produce code for.
277
278 If you want to _use_ a cross compiler, that generates code for a
279 platform different from the build platform, you should specify the
280 "host" platform (i.e., that on which the generated programs will
281 eventually be run) with '--host=TYPE'.
282
283 Sharing Defaults
284 ================
285
286 If you want to set default values for 'configure' scripts to share,
287 you can create a site shell script called 'config.site' that gives
288 default values for variables like 'CC', 'cache_file', and 'prefix'.
289 'configure' looks for 'PREFIX/share/config.site' if it exists, then
290 'PREFIX/etc/config.site' if it exists. Or, you can set the
291 'CONFIG_SITE' environment variable to the location of the site script.
292 A warning: not all 'configure' scripts look for a site script.
293
294 Defining Variables
295 ==================
296
297 Variables not defined in a site shell script can be set in the
298 environment passed to 'configure'. However, some packages may run
299 configure again during the build, and the customized values of these
300 variables may be lost. In order to avoid this problem, you should set
301 them in the 'configure' command line, using 'VAR=value'. For example:
302
303 ./configure CC=/usr/local2/bin/gcc
304
305 causes the specified 'gcc' to be used as the C compiler (unless it is
306 overridden in the site shell script).
307
308 Unfortunately, this technique does not work for 'CONFIG_SHELL' due to an
309 Autoconf limitation. Until the limitation is lifted, you can use this
310 workaround:
311
312 CONFIG_SHELL=/bin/bash ./configure CONFIG_SHELL=/bin/bash
313
314 'configure' Invocation
315 ======================
316
317 'configure' recognizes the following options to control how it
318 operates.
319
320 '--help'
321 '-h'
322 Print a summary of all of the options to 'configure', and exit.
323
324 '--help=short'
325 '--help=recursive'
326 Print a summary of the options unique to this package's
327 'configure', and exit. The 'short' variant lists options used only
328 in the top level, while the 'recursive' variant lists options also
329 present in any nested packages.
330
331 '--version'
332 '-V'
333 Print the version of Autoconf used to generate the 'configure'
334 script, and exit.
335
336 '--cache-file=FILE'
337 Enable the cache: use and save the results of the tests in FILE,
338 traditionally 'config.cache'. FILE defaults to '/dev/null' to
339 disable caching.
340
341 '--config-cache'
342 '-C'
343 Alias for '--cache-file=config.cache'.
344
345 '--quiet'
346 '--silent'
347 '-q'
348 Do not print messages saying which checks are being made. To
349 suppress all normal output, redirect it to '/dev/null' (any error
350 messages will still be shown).
351
352 '--srcdir=DIR'
353 Look for the package's source code in directory DIR. Usually
354 'configure' can determine that directory automatically.
355
356 '--prefix=DIR'
357 Use DIR as the installation prefix. *note Installation Names:: for
358 more details, including other options available for fine-tuning the
359 installation locations.
360
361 '--no-create'
362 '-n'
363 Run the configure checks, but stop before creating any output
364 files.
365
366 'configure' also accepts some other, not widely useful, options. Run
367 'configure --help' for more details.
0 # Makefile.in generated by automake 1.16.2 from Makefile.am.
1 # @configure_input@
2
3 # Copyright (C) 1994-2020 Free Software Foundation, Inc.
4
5 # This Makefile.in is free software; the Free Software Foundation
6 # gives unlimited permission to copy and/or distribute it,
7 # with or without modifications, as long as this notice is preserved.
8
9 # This program is distributed in the hope that it will be useful,
10 # but WITHOUT ANY WARRANTY, to the extent permitted by law; without
11 # even the implied warranty of MERCHANTABILITY or FITNESS FOR A
12 # PARTICULAR PURPOSE.
13
14 @SET_MAKE@
15 VPATH = @srcdir@
16 am__is_gnu_make = { \
17 if test -z '$(MAKELEVEL)'; then \
18 false; \
19 elif test -n '$(MAKE_HOST)'; then \
20 true; \
21 elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
22 true; \
23 else \
24 false; \
25 fi; \
26 }
27 am__make_running_with_option = \
28 case $${target_option-} in \
29 ?) ;; \
30 *) echo "am__make_running_with_option: internal error: invalid" \
31 "target option '$${target_option-}' specified" >&2; \
32 exit 1;; \
33 esac; \
34 has_opt=no; \
35 sane_makeflags=$$MAKEFLAGS; \
36 if $(am__is_gnu_make); then \
37 sane_makeflags=$$MFLAGS; \
38 else \
39 case $$MAKEFLAGS in \
40 *\\[\ \ ]*) \
41 bs=\\; \
42 sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
43 | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
44 esac; \
45 fi; \
46 skip_next=no; \
47 strip_trailopt () \
48 { \
49 flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
50 }; \
51 for flg in $$sane_makeflags; do \
52 test $$skip_next = yes && { skip_next=no; continue; }; \
53 case $$flg in \
54 *=*|--*) continue;; \
55 -*I) strip_trailopt 'I'; skip_next=yes;; \
56 -*I?*) strip_trailopt 'I';; \
57 -*O) strip_trailopt 'O'; skip_next=yes;; \
58 -*O?*) strip_trailopt 'O';; \
59 -*l) strip_trailopt 'l'; skip_next=yes;; \
60 -*l?*) strip_trailopt 'l';; \
61 -[dEDm]) skip_next=yes;; \
62 -[JT]) skip_next=yes;; \
63 esac; \
64 case $$flg in \
65 *$$target_option*) has_opt=yes; break;; \
66 esac; \
67 done; \
68 test $$has_opt = yes
69 am__make_dryrun = (target_option=n; $(am__make_running_with_option))
70 am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
71 pkgdatadir = $(datadir)/@PACKAGE@
72 pkgincludedir = $(includedir)/@PACKAGE@
73 pkglibdir = $(libdir)/@PACKAGE@
74 pkglibexecdir = $(libexecdir)/@PACKAGE@
75 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
76 install_sh_DATA = $(install_sh) -c -m 644
77 install_sh_PROGRAM = $(install_sh) -c
78 install_sh_SCRIPT = $(install_sh) -c
79 INSTALL_HEADER = $(INSTALL_DATA)
80 transform = $(program_transform_name)
81 NORMAL_INSTALL = :
82 PRE_INSTALL = :
83 POST_INSTALL = :
84 NORMAL_UNINSTALL = :
85 PRE_UNINSTALL = :
86 POST_UNINSTALL = :
87 build_triplet = @build@
88 host_triplet = @host@
89 subdir = .
90 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
91 am__aclocal_m4_deps = $(top_srcdir)/configure.ac
92 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
93 $(ACLOCAL_M4)
94 DIST_COMMON = $(srcdir)/Makefile.am $(top_srcdir)/configure \
95 $(am__configure_deps) $(am__DIST_COMMON)
96 am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
97 configure.lineno config.status.lineno
98 mkinstalldirs = $(install_sh) -d
99 CONFIG_HEADER = config.h
100 CONFIG_CLEAN_FILES = faad2.spec
101 CONFIG_CLEAN_VPATH_FILES =
102 AM_V_P = $(am__v_P_@AM_V@)
103 am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
104 am__v_P_0 = false
105 am__v_P_1 = :
106 AM_V_GEN = $(am__v_GEN_@AM_V@)
107 am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
108 am__v_GEN_0 = @echo " GEN " $@;
109 am__v_GEN_1 =
110 AM_V_at = $(am__v_at_@AM_V@)
111 am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
112 am__v_at_0 = @
113 am__v_at_1 =
114 SOURCES =
115 DIST_SOURCES =
116 RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \
117 ctags-recursive dvi-recursive html-recursive info-recursive \
118 install-data-recursive install-dvi-recursive \
119 install-exec-recursive install-html-recursive \
120 install-info-recursive install-pdf-recursive \
121 install-ps-recursive install-recursive installcheck-recursive \
122 installdirs-recursive pdf-recursive ps-recursive \
123 tags-recursive uninstall-recursive
124 am__can_run_installinfo = \
125 case $$AM_UPDATE_INFO_DIR in \
126 n|no|NO) false;; \
127 *) (install-info --version) >/dev/null 2>&1;; \
128 esac
129 RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \
130 distclean-recursive maintainer-clean-recursive
131 am__recursive_targets = \
132 $(RECURSIVE_TARGETS) \
133 $(RECURSIVE_CLEAN_TARGETS) \
134 $(am__extra_recursive_targets)
135 AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \
136 cscope distdir distdir-am dist dist-all distcheck
137 am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) \
138 config.h.in
139 # Read a list of newline-separated strings from the standard input,
140 # and print each of them once, without duplicates. Input order is
141 # *not* preserved.
142 am__uniquify_input = $(AWK) '\
143 BEGIN { nonempty = 0; } \
144 { items[$$0] = 1; nonempty = 1; } \
145 END { if (nonempty) { for (i in items) print i; }; } \
146 '
147 # Make sure the list of sources is unique. This is necessary because,
148 # e.g., the same source file might be shared among _SOURCES variables
149 # for different programs/libraries.
150 am__define_uniq_tagged_files = \
151 list='$(am__tagged_files)'; \
152 unique=`for i in $$list; do \
153 if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
154 done | $(am__uniquify_input)`
155 ETAGS = etags
156 CTAGS = ctags
157 CSCOPE = cscope
158 DIST_SUBDIRS = $(SUBDIRS)
159 am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/config.h.in \
160 $(srcdir)/faad2.spec.in AUTHORS COPYING ChangeLog INSTALL NEWS \
161 README TODO compile config.guess config.sub install-sh \
162 ltmain.sh missing
163 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
164 distdir = $(PACKAGE)-$(VERSION)
165 top_distdir = $(distdir)
166 am__remove_distdir = \
167 if test -d "$(distdir)"; then \
168 find "$(distdir)" -type d ! -perm -200 -exec chmod u+w {} ';' \
169 && rm -rf "$(distdir)" \
170 || { sleep 5 && rm -rf "$(distdir)"; }; \
171 else :; fi
172 am__post_remove_distdir = $(am__remove_distdir)
173 am__relativize = \
174 dir0=`pwd`; \
175 sed_first='s,^\([^/]*\)/.*$$,\1,'; \
176 sed_rest='s,^[^/]*/*,,'; \
177 sed_last='s,^.*/\([^/]*\)$$,\1,'; \
178 sed_butlast='s,/*[^/]*$$,,'; \
179 while test -n "$$dir1"; do \
180 first=`echo "$$dir1" | sed -e "$$sed_first"`; \
181 if test "$$first" != "."; then \
182 if test "$$first" = ".."; then \
183 dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
184 dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
185 else \
186 first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
187 if test "$$first2" = "$$first"; then \
188 dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
189 else \
190 dir2="../$$dir2"; \
191 fi; \
192 dir0="$$dir0"/"$$first"; \
193 fi; \
194 fi; \
195 dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
196 done; \
197 reldir="$$dir2"
198 DIST_ARCHIVES = $(distdir).tar.gz
199 GZIP_ENV = --best
200 DIST_TARGETS = dist-gzip
201 distuninstallcheck_listfiles = find . -type f -print
202 am__distuninstallcheck_listfiles = $(distuninstallcheck_listfiles) \
203 | sed 's|^\./|$(prefix)/|' | grep -v '$(infodir)/dir$$'
204 distcleancheck_listfiles = find . -type f -print
205 ACLOCAL = @ACLOCAL@
206 AMTAR = @AMTAR@
207 AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
208 AR = @AR@
209 AUTOCONF = @AUTOCONF@
210 AUTOHEADER = @AUTOHEADER@
211 AUTOMAKE = @AUTOMAKE@
212 AWK = @AWK@
213 CC = @CC@
214 CCDEPMODE = @CCDEPMODE@
215 CFLAGS = @CFLAGS@
216 CPP = @CPP@
217 CPPFLAGS = @CPPFLAGS@
218 CXX = @CXX@
219 CXXCPP = @CXXCPP@
220 CXXDEPMODE = @CXXDEPMODE@
221 CXXFLAGS = @CXXFLAGS@
222 CYGPATH_W = @CYGPATH_W@
223 DEFS = @DEFS@
224 DEPDIR = @DEPDIR@
225 DLLTOOL = @DLLTOOL@
226 DSYMUTIL = @DSYMUTIL@
227 DUMPBIN = @DUMPBIN@
228 ECHO_C = @ECHO_C@
229 ECHO_N = @ECHO_N@
230 ECHO_T = @ECHO_T@
231 EGREP = @EGREP@
232 EXEEXT = @EXEEXT@
233 FGREP = @FGREP@
234 GREP = @GREP@
235 GTK_CONFIG = @GTK_CONFIG@
236 INSTALL = @INSTALL@
237 INSTALL_DATA = @INSTALL_DATA@
238 INSTALL_PROGRAM = @INSTALL_PROGRAM@
239 INSTALL_SCRIPT = @INSTALL_SCRIPT@
240 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
241 LD = @LD@
242 LDFLAGS = @LDFLAGS@
243 LIBOBJS = @LIBOBJS@
244 LIBS = @LIBS@
245 LIBTOOL = @LIBTOOL@
246 LIBTOOL_DEPS = @LIBTOOL_DEPS@
247 LIPO = @LIPO@
248 LN_S = @LN_S@
249 LTLIBOBJS = @LTLIBOBJS@
250 LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
251 MAKEINFO = @MAKEINFO@
252 MANIFEST_TOOL = @MANIFEST_TOOL@
253 MKDIR_P = @MKDIR_P@
254 MP4FF_LIBS = @MP4FF_LIBS@
255 NM = @NM@
256 NMEDIT = @NMEDIT@
257 OBJDUMP = @OBJDUMP@
258 OBJEXT = @OBJEXT@
259 OTOOL = @OTOOL@
260 OTOOL64 = @OTOOL64@
261 PACKAGE = @PACKAGE@
262 PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
263 PACKAGE_NAME = @PACKAGE_NAME@
264 PACKAGE_STRING = @PACKAGE_STRING@
265 PACKAGE_TARNAME = @PACKAGE_TARNAME@
266 PACKAGE_URL = @PACKAGE_URL@
267 PACKAGE_VERSION = @PACKAGE_VERSION@
268 PATH_SEPARATOR = @PATH_SEPARATOR@
269 RANLIB = @RANLIB@
270 RPMBUILD = @RPMBUILD@
271 SED = @SED@
272 SET_MAKE = @SET_MAKE@
273 SHELL = @SHELL@
274 STRIP = @STRIP@
275 VERSION = @VERSION@
276 XMMS_CONFIG = @XMMS_CONFIG@
277 abs_builddir = @abs_builddir@
278 abs_srcdir = @abs_srcdir@
279 abs_top_builddir = @abs_top_builddir@
280 abs_top_srcdir = @abs_top_srcdir@
281 ac_ct_AR = @ac_ct_AR@
282 ac_ct_CC = @ac_ct_CC@
283 ac_ct_CXX = @ac_ct_CXX@
284 ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
285 am__include = @am__include@
286 am__leading_dot = @am__leading_dot@
287 am__quote = @am__quote@
288 am__tar = @am__tar@
289 am__untar = @am__untar@
290 bindir = @bindir@
291 build = @build@
292 build_alias = @build_alias@
293 build_cpu = @build_cpu@
294 build_os = @build_os@
295 build_vendor = @build_vendor@
296 builddir = @builddir@
297 datadir = @datadir@
298 datarootdir = @datarootdir@
299 docdir = @docdir@
300 dvidir = @dvidir@
301 exec_prefix = @exec_prefix@
302 external_mp4v2 = @external_mp4v2@
303 host = @host@
304 host_alias = @host_alias@
305 host_cpu = @host_cpu@
306 host_os = @host_os@
307 host_vendor = @host_vendor@
308 htmldir = @htmldir@
309 includedir = @includedir@
310 infodir = @infodir@
311 install_sh = @install_sh@
312 libdir = @libdir@
313 libexecdir = @libexecdir@
314 localedir = @localedir@
315 localstatedir = @localstatedir@
316 mandir = @mandir@
317 mkdir_p = @mkdir_p@
318 oldincludedir = @oldincludedir@
319 pdfdir = @pdfdir@
320 prefix = @prefix@
321 program_transform_name = @program_transform_name@
322 psdir = @psdir@
323 runstatedir = @runstatedir@
324 sbindir = @sbindir@
325 sharedstatedir = @sharedstatedir@
326 srcdir = @srcdir@
327 sysconfdir = @sysconfdir@
328 target_alias = @target_alias@
329 top_build_prefix = @top_build_prefix@
330 top_builddir = @top_builddir@
331 top_srcdir = @top_srcdir@
332 SUBDIRS = libfaad frontend plugins
333 EXTRA_DIST = faad2.spec docs/libfaad.3 project utils
334 all: config.h
335 $(MAKE) $(AM_MAKEFLAGS) all-recursive
336
337 .SUFFIXES:
338 am--refresh: Makefile
339 @:
340 $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
341 @for dep in $?; do \
342 case '$(am__configure_deps)' in \
343 *$$dep*) \
344 echo ' cd $(srcdir) && $(AUTOMAKE) --gnu'; \
345 $(am__cd) $(srcdir) && $(AUTOMAKE) --gnu \
346 && exit 0; \
347 exit 1;; \
348 esac; \
349 done; \
350 echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu Makefile'; \
351 $(am__cd) $(top_srcdir) && \
352 $(AUTOMAKE) --gnu Makefile
353 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
354 @case '$?' in \
355 *config.status*) \
356 echo ' $(SHELL) ./config.status'; \
357 $(SHELL) ./config.status;; \
358 *) \
359 echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__maybe_remake_depfiles)'; \
360 cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__maybe_remake_depfiles);; \
361 esac;
362
363 $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
364 $(SHELL) ./config.status --recheck
365
366 $(top_srcdir)/configure: $(am__configure_deps)
367 $(am__cd) $(srcdir) && $(AUTOCONF)
368 $(ACLOCAL_M4): $(am__aclocal_m4_deps)
369 $(am__cd) $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
370 $(am__aclocal_m4_deps):
371
372 config.h: stamp-h1
373 @test -f $@ || rm -f stamp-h1
374 @test -f $@ || $(MAKE) $(AM_MAKEFLAGS) stamp-h1
375
376 stamp-h1: $(srcdir)/config.h.in $(top_builddir)/config.status
377 @rm -f stamp-h1
378 cd $(top_builddir) && $(SHELL) ./config.status config.h
379 $(srcdir)/config.h.in: $(am__configure_deps)
380 ($(am__cd) $(top_srcdir) && $(AUTOHEADER))
381 rm -f stamp-h1
382 touch $@
383
384 distclean-hdr:
385 -rm -f config.h stamp-h1
386 faad2.spec: $(top_builddir)/config.status $(srcdir)/faad2.spec.in
387 cd $(top_builddir) && $(SHELL) ./config.status $@
388
389 mostlyclean-libtool:
390 -rm -f *.lo
391
392 clean-libtool:
393 -rm -rf .libs _libs
394
395 distclean-libtool:
396 -rm -f libtool config.lt
397
398 # This directory's subdirectories are mostly independent; you can cd
399 # into them and run 'make' without going through this Makefile.
400 # To change the values of 'make' variables: instead of editing Makefiles,
401 # (1) if the variable is set in 'config.status', edit 'config.status'
402 # (which will cause the Makefiles to be regenerated when you run 'make');
403 # (2) otherwise, pass the desired values on the 'make' command line.
404 $(am__recursive_targets):
405 @fail=; \
406 if $(am__make_keepgoing); then \
407 failcom='fail=yes'; \
408 else \
409 failcom='exit 1'; \
410 fi; \
411 dot_seen=no; \
412 target=`echo $@ | sed s/-recursive//`; \
413 case "$@" in \
414 distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
415 *) list='$(SUBDIRS)' ;; \
416 esac; \
417 for subdir in $$list; do \
418 echo "Making $$target in $$subdir"; \
419 if test "$$subdir" = "."; then \
420 dot_seen=yes; \
421 local_target="$$target-am"; \
422 else \
423 local_target="$$target"; \
424 fi; \
425 ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
426 || eval $$failcom; \
427 done; \
428 if test "$$dot_seen" = "no"; then \
429 $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
430 fi; test -z "$$fail"
431
432 ID: $(am__tagged_files)
433 $(am__define_uniq_tagged_files); mkid -fID $$unique
434 tags: tags-recursive
435 TAGS: tags
436
437 tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
438 set x; \
439 here=`pwd`; \
440 if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
441 include_option=--etags-include; \
442 empty_fix=.; \
443 else \
444 include_option=--include; \
445 empty_fix=; \
446 fi; \
447 list='$(SUBDIRS)'; for subdir in $$list; do \
448 if test "$$subdir" = .; then :; else \
449 test ! -f $$subdir/TAGS || \
450 set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
451 fi; \
452 done; \
453 $(am__define_uniq_tagged_files); \
454 shift; \
455 if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
456 test -n "$$unique" || unique=$$empty_fix; \
457 if test $$# -gt 0; then \
458 $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
459 "$$@" $$unique; \
460 else \
461 $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
462 $$unique; \
463 fi; \
464 fi
465 ctags: ctags-recursive
466
467 CTAGS: ctags
468 ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
469 $(am__define_uniq_tagged_files); \
470 test -z "$(CTAGS_ARGS)$$unique" \
471 || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
472 $$unique
473
474 GTAGS:
475 here=`$(am__cd) $(top_builddir) && pwd` \
476 && $(am__cd) $(top_srcdir) \
477 && gtags -i $(GTAGS_ARGS) "$$here"
478 cscope: cscope.files
479 test ! -s cscope.files \
480 || $(CSCOPE) -b -q $(AM_CSCOPEFLAGS) $(CSCOPEFLAGS) -i cscope.files $(CSCOPE_ARGS)
481 clean-cscope:
482 -rm -f cscope.files
483 cscope.files: clean-cscope cscopelist
484 cscopelist: cscopelist-recursive
485
486 cscopelist-am: $(am__tagged_files)
487 list='$(am__tagged_files)'; \
488 case "$(srcdir)" in \
489 [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
490 *) sdir=$(subdir)/$(srcdir) ;; \
491 esac; \
492 for i in $$list; do \
493 if test -f "$$i"; then \
494 echo "$(subdir)/$$i"; \
495 else \
496 echo "$$sdir/$$i"; \
497 fi; \
498 done >> $(top_builddir)/cscope.files
499
500 distclean-tags:
501 -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
502 -rm -f cscope.out cscope.in.out cscope.po.out cscope.files
503
504 distdir: $(BUILT_SOURCES)
505 $(MAKE) $(AM_MAKEFLAGS) distdir-am
506
507 distdir-am: $(DISTFILES)
508 $(am__remove_distdir)
509 test -d "$(distdir)" || mkdir "$(distdir)"
510 @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
511 topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
512 list='$(DISTFILES)'; \
513 dist_files=`for file in $$list; do echo $$file; done | \
514 sed -e "s|^$$srcdirstrip/||;t" \
515 -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
516 case $$dist_files in \
517 */*) $(MKDIR_P) `echo "$$dist_files" | \
518 sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
519 sort -u` ;; \
520 esac; \
521 for file in $$dist_files; do \
522 if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
523 if test -d $$d/$$file; then \
524 dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
525 if test -d "$(distdir)/$$file"; then \
526 find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
527 fi; \
528 if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
529 cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
530 find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
531 fi; \
532 cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
533 else \
534 test -f "$(distdir)/$$file" \
535 || cp -p $$d/$$file "$(distdir)/$$file" \
536 || exit 1; \
537 fi; \
538 done
539 @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
540 if test "$$subdir" = .; then :; else \
541 $(am__make_dryrun) \
542 || test -d "$(distdir)/$$subdir" \
543 || $(MKDIR_P) "$(distdir)/$$subdir" \
544 || exit 1; \
545 dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
546 $(am__relativize); \
547 new_distdir=$$reldir; \
548 dir1=$$subdir; dir2="$(top_distdir)"; \
549 $(am__relativize); \
550 new_top_distdir=$$reldir; \
551 echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
552 echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
553 ($(am__cd) $$subdir && \
554 $(MAKE) $(AM_MAKEFLAGS) \
555 top_distdir="$$new_top_distdir" \
556 distdir="$$new_distdir" \
557 am__remove_distdir=: \
558 am__skip_length_check=: \
559 am__skip_mode_fix=: \
560 distdir) \
561 || exit 1; \
562 fi; \
563 done
564 -test -n "$(am__skip_mode_fix)" \
565 || find "$(distdir)" -type d ! -perm -755 \
566 -exec chmod u+rwx,go+rx {} \; -o \
567 ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \
568 ! -type d ! -perm -400 -exec chmod a+r {} \; -o \
569 ! -type d ! -perm -444 -exec $(install_sh) -c -m a+r {} {} \; \
570 || chmod -R a+r "$(distdir)"
571 dist-gzip: distdir
572 tardir=$(distdir) && $(am__tar) | eval GZIP= gzip $(GZIP_ENV) -c >$(distdir).tar.gz
573 $(am__post_remove_distdir)
574
575 dist-bzip2: distdir
576 tardir=$(distdir) && $(am__tar) | BZIP2=$${BZIP2--9} bzip2 -c >$(distdir).tar.bz2
577 $(am__post_remove_distdir)
578
579 dist-lzip: distdir
580 tardir=$(distdir) && $(am__tar) | lzip -c $${LZIP_OPT--9} >$(distdir).tar.lz
581 $(am__post_remove_distdir)
582
583 dist-xz: distdir
584 tardir=$(distdir) && $(am__tar) | XZ_OPT=$${XZ_OPT--e} xz -c >$(distdir).tar.xz
585 $(am__post_remove_distdir)
586
587 dist-zstd: distdir
588 tardir=$(distdir) && $(am__tar) | zstd -c $${ZSTD_CLEVEL-$${ZSTD_OPT--19}} >$(distdir).tar.zst
589 $(am__post_remove_distdir)
590
591 dist-tarZ: distdir
592 @echo WARNING: "Support for distribution archives compressed with" \
593 "legacy program 'compress' is deprecated." >&2
594 @echo WARNING: "It will be removed altogether in Automake 2.0" >&2
595 tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
596 $(am__post_remove_distdir)
597
598 dist-shar: distdir
599 @echo WARNING: "Support for shar distribution archives is" \
600 "deprecated." >&2
601 @echo WARNING: "It will be removed altogether in Automake 2.0" >&2
602 shar $(distdir) | eval GZIP= gzip $(GZIP_ENV) -c >$(distdir).shar.gz
603 $(am__post_remove_distdir)
604
605 dist-zip: distdir
606 -rm -f $(distdir).zip
607 zip -rq $(distdir).zip $(distdir)
608 $(am__post_remove_distdir)
609
610 dist dist-all:
611 $(MAKE) $(AM_MAKEFLAGS) $(DIST_TARGETS) am__post_remove_distdir='@:'
612 $(am__post_remove_distdir)
613
614 # This target untars the dist file and tries a VPATH configuration. Then
615 # it guarantees that the distribution is self-contained by making another
616 # tarfile.
617 distcheck: dist
618 case '$(DIST_ARCHIVES)' in \
619 *.tar.gz*) \
620 eval GZIP= gzip $(GZIP_ENV) -dc $(distdir).tar.gz | $(am__untar) ;;\
621 *.tar.bz2*) \
622 bzip2 -dc $(distdir).tar.bz2 | $(am__untar) ;;\
623 *.tar.lz*) \
624 lzip -dc $(distdir).tar.lz | $(am__untar) ;;\
625 *.tar.xz*) \
626 xz -dc $(distdir).tar.xz | $(am__untar) ;;\
627 *.tar.Z*) \
628 uncompress -c $(distdir).tar.Z | $(am__untar) ;;\
629 *.shar.gz*) \
630 eval GZIP= gzip $(GZIP_ENV) -dc $(distdir).shar.gz | unshar ;;\
631 *.zip*) \
632 unzip $(distdir).zip ;;\
633 *.tar.zst*) \
634 zstd -dc $(distdir).tar.zst | $(am__untar) ;;\
635 esac
636 chmod -R a-w $(distdir)
637 chmod u+w $(distdir)
638 mkdir $(distdir)/_build $(distdir)/_build/sub $(distdir)/_inst
639 chmod a-w $(distdir)
640 test -d $(distdir)/_build || exit 0; \
641 dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \
642 && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \
643 && am__cwd=`pwd` \
644 && $(am__cd) $(distdir)/_build/sub \
645 && ../../configure \
646 $(AM_DISTCHECK_CONFIGURE_FLAGS) \
647 $(DISTCHECK_CONFIGURE_FLAGS) \
648 --srcdir=../.. --prefix="$$dc_install_base" \
649 && $(MAKE) $(AM_MAKEFLAGS) \
650 && $(MAKE) $(AM_MAKEFLAGS) dvi \
651 && $(MAKE) $(AM_MAKEFLAGS) check \
652 && $(MAKE) $(AM_MAKEFLAGS) install \
653 && $(MAKE) $(AM_MAKEFLAGS) installcheck \
654 && $(MAKE) $(AM_MAKEFLAGS) uninstall \
655 && $(MAKE) $(AM_MAKEFLAGS) distuninstallcheck_dir="$$dc_install_base" \
656 distuninstallcheck \
657 && chmod -R a-w "$$dc_install_base" \
658 && ({ \
659 (cd ../.. && umask 077 && mkdir "$$dc_destdir") \
660 && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \
661 && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \
662 && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \
663 distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \
664 } || { rm -rf "$$dc_destdir"; exit 1; }) \
665 && rm -rf "$$dc_destdir" \
666 && $(MAKE) $(AM_MAKEFLAGS) dist \
667 && rm -rf $(DIST_ARCHIVES) \
668 && $(MAKE) $(AM_MAKEFLAGS) distcleancheck \
669 && cd "$$am__cwd" \
670 || exit 1
671 $(am__post_remove_distdir)
672 @(echo "$(distdir) archives ready for distribution: "; \
673 list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \
674 sed -e 1h -e 1s/./=/g -e 1p -e 1x -e '$$p' -e '$$x'
675 distuninstallcheck:
676 @test -n '$(distuninstallcheck_dir)' || { \
677 echo 'ERROR: trying to run $@ with an empty' \
678 '$$(distuninstallcheck_dir)' >&2; \
679 exit 1; \
680 }; \
681 $(am__cd) '$(distuninstallcheck_dir)' || { \
682 echo 'ERROR: cannot chdir into $(distuninstallcheck_dir)' >&2; \
683 exit 1; \
684 }; \
685 test `$(am__distuninstallcheck_listfiles) | wc -l` -eq 0 \
686 || { echo "ERROR: files left after uninstall:" ; \
687 if test -n "$(DESTDIR)"; then \
688 echo " (check DESTDIR support)"; \
689 fi ; \
690 $(distuninstallcheck_listfiles) ; \
691 exit 1; } >&2
692 distcleancheck: distclean
693 @if test '$(srcdir)' = . ; then \
694 echo "ERROR: distcleancheck can only run from a VPATH build" ; \
695 exit 1 ; \
696 fi
697 @test `$(distcleancheck_listfiles) | wc -l` -eq 0 \
698 || { echo "ERROR: files left in build directory after distclean:" ; \
699 $(distcleancheck_listfiles) ; \
700 exit 1; } >&2
701 check-am: all-am
702 check: check-recursive
703 all-am: Makefile config.h
704 installdirs: installdirs-recursive
705 installdirs-am:
706 install: install-recursive
707 install-exec: install-exec-recursive
708 install-data: install-data-recursive
709 uninstall: uninstall-recursive
710
711 install-am: all-am
712 @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
713
714 installcheck: installcheck-recursive
715 install-strip:
716 if test -z '$(STRIP)'; then \
717 $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
718 install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
719 install; \
720 else \
721 $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
722 install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
723 "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
724 fi
725 mostlyclean-generic:
726
727 clean-generic:
728
729 distclean-generic:
730 -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
731 -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
732
733 maintainer-clean-generic:
734 @echo "This command is intended for maintainers to use"
735 @echo "it deletes files that may require special tools to rebuild."
736 clean: clean-recursive
737
738 clean-am: clean-generic clean-libtool mostlyclean-am
739
740 distclean: distclean-recursive
741 -rm -f $(am__CONFIG_DISTCLEAN_FILES)
742 -rm -f Makefile
743 distclean-am: clean-am distclean-generic distclean-hdr \
744 distclean-libtool distclean-tags
745
746 dvi: dvi-recursive
747
748 dvi-am:
749
750 html: html-recursive
751
752 html-am:
753
754 info: info-recursive
755
756 info-am:
757
758 install-data-am:
759
760 install-dvi: install-dvi-recursive
761
762 install-dvi-am:
763
764 install-exec-am:
765
766 install-html: install-html-recursive
767
768 install-html-am:
769
770 install-info: install-info-recursive
771
772 install-info-am:
773
774 install-man:
775
776 install-pdf: install-pdf-recursive
777
778 install-pdf-am:
779
780 install-ps: install-ps-recursive
781
782 install-ps-am:
783
784 installcheck-am:
785
786 maintainer-clean: maintainer-clean-recursive
787 -rm -f $(am__CONFIG_DISTCLEAN_FILES)
788 -rm -rf $(top_srcdir)/autom4te.cache
789 -rm -f Makefile
790 maintainer-clean-am: distclean-am maintainer-clean-generic
791
792 mostlyclean: mostlyclean-recursive
793
794 mostlyclean-am: mostlyclean-generic mostlyclean-libtool
795
796 pdf: pdf-recursive
797
798 pdf-am:
799
800 ps: ps-recursive
801
802 ps-am:
803
804 uninstall-am:
805
806 .MAKE: $(am__recursive_targets) all install-am install-strip
807
808 .PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \
809 am--refresh check check-am clean clean-cscope clean-generic \
810 clean-libtool cscope cscopelist-am ctags ctags-am dist \
811 dist-all dist-bzip2 dist-gzip dist-lzip dist-shar dist-tarZ \
812 dist-xz dist-zip dist-zstd distcheck distclean \
813 distclean-generic distclean-hdr distclean-libtool \
814 distclean-tags distcleancheck distdir distuninstallcheck dvi \
815 dvi-am html html-am info info-am install install-am \
816 install-data install-data-am install-dvi install-dvi-am \
817 install-exec install-exec-am install-html install-html-am \
818 install-info install-info-am install-man install-pdf \
819 install-pdf-am install-ps install-ps-am install-strip \
820 installcheck installcheck-am installdirs installdirs-am \
821 maintainer-clean maintainer-clean-generic mostlyclean \
822 mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
823 tags tags-am uninstall uninstall-am
824
825 .PRECIOUS: Makefile
826
827
828 rpm: Makefile
829 make dist
830 $(RPMBUILD) -ta $(PACKAGE)-$(VERSION).tar.gz
831 rm $(PACKAGE)-$(VERSION).tar.gz
832
833 # Tell versions [3.59,3.63) of GNU make to not export all variables.
834 # Otherwise a system limit (for SysV at least) may be exceeded.
835 .NOEXPORT:
+0
-15
README.linux less more
0 To compile under Linux.
1 ----------------------
2 just run :
3
4 ./configure --with-mp4v2
5 make
6 sudo make install
7
8
9 about the xmms plugin.
10 ---------------------
11 The xmms plugin need to be build after the install of the faad project.
12 so after you have installed correctly faad (--with-xmms options) you need
13 to configure and build the xmms plugin part in the plugins/xmms directory.
14 Read the README and INSTALL files into the xmms directory.
+0
-214
aacDECdrop/Script.rc less more
0 // Microsoft Visual C++ generated resource script.
1 //
2 #include "resource.h"
3
4 #define APSTUDIO_READONLY_SYMBOLS
5 /////////////////////////////////////////////////////////////////////////////
6 //
7 // Generated from the TEXTINCLUDE 2 resource.
8 //
9 #include "winres.h"
10
11 /////////////////////////////////////////////////////////////////////////////
12 #undef APSTUDIO_READONLY_SYMBOLS
13
14 /////////////////////////////////////////////////////////////////////////////
15 // English (U.S.) resources
16
17 #if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU)
18 #ifdef _WIN32
19 LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
20 #pragma code_page(1252)
21 #endif //_WIN32
22
23 /////////////////////////////////////////////////////////////////////////////
24 //
25 // Bitmap
26 //
27
28 IDB_TF01 BITMAP "resource/AAC01.bmp"
29 IDB_TF02 BITMAP "resource/AAC02.bmp"
30 IDB_TF03 BITMAP "resource/AAC03.bmp"
31 IDB_TF04 BITMAP "resource/AAC04.bmp"
32 IDB_TF05 BITMAP "resource/AAC05.bmp"
33 IDB_TF06 BITMAP "resource/AAC06.bmp"
34 IDB_TF07 BITMAP "resource/AAC07.bmp"
35 IDB_TF08 BITMAP "resource/AAC08.bmp"
36
37 #ifdef APSTUDIO_INVOKED
38 /////////////////////////////////////////////////////////////////////////////
39 //
40 // TEXTINCLUDE
41 //
42
43 1 TEXTINCLUDE
44 BEGIN
45 "resource.h\0"
46 END
47
48 2 TEXTINCLUDE
49 BEGIN
50 "#include ""winres.h""\r\n"
51 "\0"
52 END
53
54 3 TEXTINCLUDE
55 BEGIN
56 "\r\n"
57 "\0"
58 END
59
60 #endif // APSTUDIO_INVOKED
61
62
63 /////////////////////////////////////////////////////////////////////////////
64 //
65 // Menu
66 //
67
68 IDR_MENU1 MENU
69 BEGIN
70 POPUP "Menu"
71 BEGIN
72 MENUITEM "&Decoder Options", IDM_VOLUME
73 MENUITEM "&Stop Decoding", IDM_STOP_DEC
74 MENUITEM "&About", IDM_ABOUT
75 MENUITEM SEPARATOR
76 MENUITEM "&Errors to Log File", IDM_LOGERR
77 MENUITEM "&Always on Top", IDM_ONTOP
78 MENUITEM SEPARATOR
79 MENUITEM "E&xit\tAlt+F4", IDM_QUIT
80 END
81 MENUITEM SEPARATOR
82 END
83
84
85 /////////////////////////////////////////////////////////////////////////////
86 //
87 // Icon
88 //
89
90 // Icon with lowest ID value placed first to ensure application icon
91 // remains consistent on all systems.
92 IDI_ICON1 ICON "resource/AAC01.ico"
93
94 /////////////////////////////////////////////////////////////////////////////
95 //
96 // Dialog
97 //
98
99 IDD_VOLUME DIALOGEX 0, 0, 255, 257
100 STYLE DS_SETFONT | DS_MODALFRAME | DS_CENTER | WS_POPUP | WS_CAPTION |
101 WS_SYSMENU
102 CAPTION "Decoder Options V1.2"
103 FONT 8, "MS Sans Serif", 0, 0, 0x0
104 BEGIN
105 GROUPBOX "Decoding Settings",IDC_STATIC,7,7,241,23
106 CONTROL "Playback",IDC_PLAYBACK,"Button",BS_AUTORADIOBUTTON |
107 WS_GROUP,15,17,55,10
108 CONTROL "Decode to File",IDC_DECODE,"Button",BS_AUTORADIOBUTTON,
109 125,17,65,10
110 GROUPBOX "Output Format Settings",IDC_STATIC,7,31,241,50
111 CONTROL "Microsoft WAV",IDC_WAV,"Button",BS_AUTORADIOBUTTON |
112 WS_GROUP,15,45,65,10
113 CONTROL "Apple/SGI AIFF",IDC_AIFF,"Button",BS_AUTORADIOBUTTON |
114 WS_DISABLED,125,45,65,10
115 CONTROL "Sun/NeXT AU",IDC_SUNAU,"Button",BS_AUTORADIOBUTTON |
116 WS_DISABLED,15,60,65,10
117 CONTROL "DEC AU",IDC_DECAU,"Button",BS_AUTORADIOBUTTON |
118 WS_DISABLED,125,60,65,10
119 GROUPBOX "Output Sample Format Settings",IDC_STATIC,7,82,241,91
120 CONTROL "16 bit PCM",IDC_16BIT,"Button",BS_AUTORADIOBUTTON |
121 WS_GROUP,15,96,65,10
122 CONTROL "24 bit PCM",IDC_24BIT,"Button",BS_AUTORADIOBUTTON,125,
123 96,65,10
124 CONTROL "32 bit PCM",IDC_32BIT,"Button",BS_AUTORADIOBUTTON,15,
125 111,65,10
126 CONTROL "32 bit floats",IDC_FLOATS,"Button",BS_AUTORADIOBUTTON,
127 125,111,65,10
128 CONTROL "16 bit PCM - Dithered",IDC_16BIT_DITHER,"Button",
129 BS_AUTORADIOBUTTON,15,126,83,10
130 CONTROL "16 bit PCM - Dithered with",IDC_16BIT_L_SHAPE,"Button",
131 BS_AUTORADIOBUTTON,125,126,98,10
132 CONTROL "16 bit PCM - Dithered with",IDC_16BIT_M_SHAPE,"Button",
133 BS_AUTORADIOBUTTON,15,146,98,10
134 CONTROL "16 bit PCM - Dithered with",IDC_16BIT_H_SHAPE,"Button",
135 BS_AUTORADIOBUTTON,125,146,98,10
136 LTEXT "LIGHT Noise Shaping",IDC_STATIC,138,136,70,8
137 LTEXT "HEAVY Noise Shaping",IDC_STATIC,138,156,73,8
138 LTEXT "MEDIUM Noise Shaping",IDC_STATIC,28,156,78,8
139 GROUPBOX "Object Type Settings",IDC_STATIC,7,174,241,50
140 CONTROL "Main",IDC_MAIN,"Button",BS_AUTORADIOBUTTON | WS_GROUP,
141 15,188,65,10
142 CONTROL "Low Complexity",IDC_LC,"Button",BS_AUTORADIOBUTTON,125,
143 188,65,10
144 CONTROL "Long Term Prediction",IDC_LTP,"Button",
145 BS_AUTORADIOBUTTON,15,203,85,10
146 CONTROL "Low Delay",IDC_LD,"Button",BS_AUTORADIOBUTTON,125,203,
147 65,10
148 DEFPUSHBUTTON "Accept",IDC_BUTTON1,102,233,50,16
149 END
150
151 IDD_ABOUT DIALOGEX 0, 0, 255, 194
152 STYLE DS_SETFONT | DS_MODALFRAME | DS_CENTER | WS_POPUP | WS_CAPTION |
153 WS_SYSMENU
154 CAPTION "About aacDECdrop V1.22"
155 FONT 8, "MS Sans Serif", 0, 0, 0x0
156 BEGIN
157 GROUPBOX "",IDC_STATIC,7,5,241,157
158 CTEXT "A decoder to decode/playback aac/Mpeg4 files.",
159 IDC_STATIC,70,13,155,8
160 CTEXT "Copyright 2002 John Edwards.",IDC_STATIC,70,30,97,8
161 CTEXT "Utilises standard libfaad2 from Menno Bakker.",
162 IDC_STATIC,70,46,145,8
163 LTEXT "This program is free software; you can redistribute it and/or modify it",
164 IDC_STATIC,13,62,212,8
165 LTEXT "under the terms of the GNU Public Licence as published by the Free",
166 IDC_STATIC,13,72,215,8
167 LTEXT "Software Foundation; either version 2 of the Licence, or (at your option)",
168 IDC_STATIC,13,82,224,8
169 LTEXT "any later version.",IDC_STATIC,13,92,54,8
170 LTEXT "This program is distributed in the hope that it will be useful, but",
171 IDC_STATIC,13,112,195,8
172 LTEXT "WITHOUT ANY WARRANTY; without even the implied warranty of",
173 IDC_STATIC,13,122,213,8
174 LTEXT "MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.",
175 IDC_STATIC,13,132,218,8
176 LTEXT "See the GNU General Public Licence for more details.",
177 IDC_STATIC,13,142,170,8
178 DEFPUSHBUTTON "OK",IDC_BUTTON6,102,171,50,16
179 CONTROL 112,IDC_STATIC,"Static",SS_BITMAP | SS_SUNKEN,12,13,43,
180 40
181 END
182
183
184 /////////////////////////////////////////////////////////////////////////////
185 //
186 // DESIGNINFO
187 //
188
189 #ifdef APSTUDIO_INVOKED
190 GUIDELINES DESIGNINFO
191 BEGIN
192 IDD_VOLUME, DIALOG
193 BEGIN
194 BOTTOMMARGIN, 256
195 END
196 END
197 #endif // APSTUDIO_INVOKED
198
199 #endif // English (U.S.) resources
200 /////////////////////////////////////////////////////////////////////////////
201
202
203
204 #ifndef APSTUDIO_INVOKED
205 /////////////////////////////////////////////////////////////////////////////
206 //
207 // Generated from the TEXTINCLUDE 3 resource.
208 //
209
210
211 /////////////////////////////////////////////////////////////////////////////
212 #endif // not APSTUDIO_INVOKED
213
+0
-33
aacDECdrop/aacDECdrop/aacDECdrop.sln less more
0 Microsoft Visual Studio Solution File, Format Version 9.00
1 # Visual C++ Express 2005
2 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "aacDECdrop", "aacDECdrop.vcproj", "{C23A88D7-4997-4026-BBDB-5B0B2B22FDFF}"
3 ProjectSection(ProjectDependencies) = postProject
4 {F470BB4A-7675-4D6A-B310-41F33AC6F987} = {F470BB4A-7675-4D6A-B310-41F33AC6F987}
5 {BC3EFE27-9015-4C9C-AD3C-72B3B7ED2114} = {BC3EFE27-9015-4C9C-AD3C-72B3B7ED2114}
6 EndProjectSection
7 EndProject
8 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libfaad", "..\..\libfaad\libfaad.vcproj", "{BC3EFE27-9015-4C9C-AD3C-72B3B7ED2114}"
9 EndProject
10 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mp4ff", "..\..\common\mp4ff\mp4ff.vcproj", "{F470BB4A-7675-4D6A-B310-41F33AC6F987}"
11 EndProject
12 Global
13 GlobalSection(SolutionConfigurationPlatforms) = preSolution
14 Debug|Win32 = Debug|Win32
15 Release|Win32 = Release|Win32
16 EndGlobalSection
17 GlobalSection(ProjectConfigurationPlatforms) = postSolution
18 {C23A88D7-4997-4026-BBDB-5B0B2B22FDFF}.Debug|Win32.ActiveCfg = Debug|Win32
19 {C23A88D7-4997-4026-BBDB-5B0B2B22FDFF}.Debug|Win32.Build.0 = Debug|Win32
20 {C23A88D7-4997-4026-BBDB-5B0B2B22FDFF}.Release|Win32.ActiveCfg = Release|Win32
21 {C23A88D7-4997-4026-BBDB-5B0B2B22FDFF}.Release|Win32.Build.0 = Release|Win32
22 {BC3EFE27-9015-4C9C-AD3C-72B3B7ED2114}.Debug|Win32.ActiveCfg = Debug|Win32
23 {BC3EFE27-9015-4C9C-AD3C-72B3B7ED2114}.Release|Win32.ActiveCfg = Release|Win32
24 {F470BB4A-7675-4D6A-B310-41F33AC6F987}.Debug|Win32.ActiveCfg = Debug|Win32
25 {F470BB4A-7675-4D6A-B310-41F33AC6F987}.Debug|Win32.Build.0 = Debug|Win32
26 {F470BB4A-7675-4D6A-B310-41F33AC6F987}.Release|Win32.ActiveCfg = Release|Win32
27 {F470BB4A-7675-4D6A-B310-41F33AC6F987}.Release|Win32.Build.0 = Release|Win32
28 EndGlobalSection
29 GlobalSection(SolutionProperties) = preSolution
30 HideSolutionNode = FALSE
31 EndGlobalSection
32 EndGlobal
+0
-335
aacDECdrop/aacDECdrop/aacDECdrop.vcproj less more
0 <?xml version="1.0" encoding="Windows-1252"?>
1 <VisualStudioProject
2 ProjectType="Visual C++"
3 Version="8,00"
4 Name="aacDECdrop"
5 ProjectGUID="{C23A88D7-4997-4026-BBDB-5B0B2B22FDFF}"
6 RootNamespace="aacDECdrop"
7 >
8 <Platforms>
9 <Platform
10 Name="Win32"
11 />
12 </Platforms>
13 <ToolFiles>
14 </ToolFiles>
15 <Configurations>
16 <Configuration
17 Name="Release|Win32"
18 OutputDirectory=".\Release"
19 IntermediateDirectory=".\Release"
20 ConfigurationType="1"
21 InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
22 UseOfMFC="0"
23 ATLMinimizesCRunTimeLibraryUsage="false"
24 CharacterSet="2"
25 >
26 <Tool
27 Name="VCPreBuildEventTool"
28 />
29 <Tool
30 Name="VCCustomBuildTool"
31 />
32 <Tool
33 Name="VCXMLDataGeneratorTool"
34 />
35 <Tool
36 Name="VCWebServiceProxyGeneratorTool"
37 />
38 <Tool
39 Name="VCMIDLTool"
40 PreprocessorDefinitions="NDEBUG"
41 MkTypLibCompatible="true"
42 SuppressStartupBanner="true"
43 TargetEnvironment="1"
44 TypeLibraryName=".\Release/aacDECdrop.tlb"
45 />
46 <Tool
47 Name="VCCLCompilerTool"
48 Optimization="2"
49 InlineFunctionExpansion="1"
50 EnableIntrinsicFunctions="true"
51 FavorSizeOrSpeed="1"
52 AdditionalIncludeDirectories="..\..\include;..\..\common\mp4ff"
53 PreprocessorDefinitions="WIN32,NDEBUG,_WINDOWS"
54 StringPooling="true"
55 RuntimeLibrary="2"
56 UsePrecompiledHeader="0"
57 PrecompiledHeaderFile=".\Release/aacDECdrop.pch"
58 AssemblerListingLocation=".\Release/"
59 ObjectFile=".\Release/"
60 ProgramDataBaseFileName=".\Release/"
61 WarningLevel="3"
62 SuppressStartupBanner="true"
63 CompileAs="0"
64 />
65 <Tool
66 Name="VCManagedResourceCompilerTool"
67 />
68 <Tool
69 Name="VCResourceCompilerTool"
70 PreprocessorDefinitions="NDEBUG"
71 Culture="2057"
72 />
73 <Tool
74 Name="VCPreLinkEventTool"
75 />
76 <Tool
77 Name="VCLinkerTool"
78 AdditionalOptions="/MACHINE:I386"
79 AdditionalDependencies="advapi32.lib shell32.lib gdi32.lib odbc32.lib odbccp32.lib winmm.lib ws2_32.lib user32.lib"
80 OutputFile=".\Release/aacDECdrop.exe"
81 LinkIncremental="1"
82 SuppressStartupBanner="true"
83 IgnoreDefaultLibraryNames=""
84 ProgramDatabaseFile=".\Release/aacDECdrop.pdb"
85 SubSystem="2"
86 />
87 <Tool
88 Name="VCALinkTool"
89 />
90 <Tool
91 Name="VCManifestTool"
92 />
93 <Tool
94 Name="VCXDCMakeTool"
95 />
96 <Tool
97 Name="VCBscMakeTool"
98 />
99 <Tool
100 Name="VCFxCopTool"
101 />
102 <Tool
103 Name="VCAppVerifierTool"
104 />
105 <Tool
106 Name="VCWebDeploymentTool"
107 />
108 <Tool
109 Name="VCPostBuildEventTool"
110 Description="Compressing using UPX..."
111 CommandLine="upx --best .\release\aacDECdrop.exe"
112 />
113 </Configuration>
114 <Configuration
115 Name="Debug|Win32"
116 OutputDirectory=".\Debug"
117 IntermediateDirectory=".\Debug"
118 ConfigurationType="1"
119 InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
120 UseOfMFC="0"
121 ATLMinimizesCRunTimeLibraryUsage="false"
122 CharacterSet="2"
123 >
124 <Tool
125 Name="VCPreBuildEventTool"
126 />
127 <Tool
128 Name="VCCustomBuildTool"
129 />
130 <Tool
131 Name="VCXMLDataGeneratorTool"
132 />
133 <Tool
134 Name="VCWebServiceProxyGeneratorTool"
135 />
136 <Tool
137 Name="VCMIDLTool"
138 PreprocessorDefinitions="_DEBUG"
139 MkTypLibCompatible="true"
140 SuppressStartupBanner="true"
141 TargetEnvironment="1"
142 TypeLibraryName=".\Debug/aacDECdrop.tlb"
143 />
144 <Tool
145 Name="VCCLCompilerTool"
146 Optimization="0"
147 AdditionalIncludeDirectories="..\..\include;..\..\common\mp4ff"
148 PreprocessorDefinitions="WIN32,_DEBUG,_WINDOWS"
149 BasicRuntimeChecks="3"
150 RuntimeLibrary="3"
151 UsePrecompiledHeader="0"
152 PrecompiledHeaderFile=".\Debug/aacDECdrop.pch"
153 AssemblerListingLocation=".\Debug/"
154 ObjectFile=".\Debug/"
155 ProgramDataBaseFileName=".\Debug/"
156 WarningLevel="3"
157 SuppressStartupBanner="true"
158 DebugInformationFormat="4"
159 CompileAs="0"
160 />
161 <Tool
162 Name="VCManagedResourceCompilerTool"
163 />
164 <Tool
165 Name="VCResourceCompilerTool"
166 PreprocessorDefinitions="_DEBUG"
167 Culture="2057"
168 />
169 <Tool
170 Name="VCPreLinkEventTool"
171 />
172 <Tool
173 Name="VCLinkerTool"
174 AdditionalOptions="/MACHINE:I386"
175 AdditionalDependencies="advapi32.lib shell32.lib gdi32.lib odbc32.lib odbccp32.lib winmm.lib ws2_32.lib user32.lib"
176 OutputFile=".\Debug/aacDECdrop.exe"
177 LinkIncremental="2"
178 SuppressStartupBanner="true"
179 GenerateDebugInformation="true"
180 ProgramDatabaseFile=".\Debug/aacDECdrop.pdb"
181 SubSystem="2"
182 />
183 <Tool
184 Name="VCALinkTool"
185 />
186 <Tool
187 Name="VCManifestTool"
188 />
189 <Tool
190 Name="VCXDCMakeTool"
191 />
192 <Tool
193 Name="VCBscMakeTool"
194 />
195 <Tool
196 Name="VCFxCopTool"
197 />
198 <Tool
199 Name="VCAppVerifierTool"
200 />
201 <Tool
202 Name="VCWebDeploymentTool"
203 />
204 <Tool
205 Name="VCPostBuildEventTool"
206 />
207 </Configuration>
208 </Configurations>
209 <References>
210 </References>
211 <Files>
212 <Filter
213 Name="Source Files"
214 Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
215 >
216 <File
217 RelativePath="..\audio.c"
218 >
219 </File>
220 <File
221 RelativePath="..\decode.c"
222 >
223 </File>
224 <File
225 RelativePath="..\decthread.c"
226 >
227 </File>
228 <File
229 RelativePath="..\main.c"
230 >
231 </File>
232 <File
233 RelativePath="..\misc.c"
234 >
235 </File>
236 <File
237 RelativePath="..\wave_out.c"
238 >
239 </File>
240 </Filter>
241 <Filter
242 Name="Header Files"
243 Filter="h;hpp;hxx;hm;inl"
244 >
245 <File
246 RelativePath="..\audio.h"
247 >
248 </File>
249 <File
250 RelativePath="..\decode.h"
251 >
252 </File>
253 <File
254 RelativePath="..\decthread.h"
255 >
256 </File>
257 <File
258 RelativePath="..\misc.h"
259 >
260 </File>
261 <File
262 RelativePath="..\resource.h"
263 >
264 </File>
265 <File
266 RelativePath="..\wave_out.h"
267 >
268 </File>
269 </Filter>
270 <Filter
271 Name="Resource Files"
272 Filter="ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
273 >
274 <File
275 RelativePath="..\resource\AAC01.bmp"
276 >
277 </File>
278 <File
279 RelativePath="..\resource\AAC01.ico"
280 >
281 </File>
282 <File
283 RelativePath="..\resource\AAC02.bmp"
284 >
285 </File>
286 <File
287 RelativePath="..\resource\AAC03.bmp"
288 >
289 </File>
290 <File
291 RelativePath="..\resource\AAC04.bmp"
292 >
293 </File>
294 <File
295 RelativePath="..\resource\AAC05.bmp"
296 >
297 </File>
298 <File
299 RelativePath="..\resource\AAC06.bmp"
300 >
301 </File>
302 <File
303 RelativePath="..\resource\AAC07.bmp"
304 >
305 </File>
306 <File
307 RelativePath="..\resource\AAC08.bmp"
308 >
309 </File>
310 <File
311 RelativePath="..\Script.rc"
312 >
313 <FileConfiguration
314 Name="Release|Win32"
315 >
316 <Tool
317 Name="VCResourceCompilerTool"
318 AdditionalIncludeDirectories="\aac\cvsrep\faad2\aacDECdrop;$(NoInherit)"
319 />
320 </FileConfiguration>
321 <FileConfiguration
322 Name="Debug|Win32"
323 >
324 <Tool
325 Name="VCResourceCompilerTool"
326 AdditionalIncludeDirectories="\aac\cvsrep\faad2\aacDECdrop;$(NoInherit)"
327 />
328 </FileConfiguration>
329 </File>
330 </Filter>
331 </Files>
332 <Globals>
333 </Globals>
334 </VisualStudioProject>
+0
-494
aacDECdrop/audio.c less more
0 /*
1 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
2 ** Copyright (C) 2003-2004 M. Bakker, Ahead Software AG, http://www.nero.com
3 **
4 ** This program is free software; you can redistribute it and/or modify
5 ** it under the terms of the GNU General Public License as published by
6 ** the Free Software Foundation; either version 2 of the License, or
7 ** (at your option) any later version.
8 **
9 ** This program is distributed in the hope that it will be useful,
10 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
11 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 ** GNU General Public License for more details.
13 **
14 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
16 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
17 **
18 ** Any non-GPL usage of this software or parts of this software is strictly
19 ** forbidden.
20 **
21 ** Commercial non-GPL licensing of this software is possible.
22 ** For more info contact Ahead Software through Mpeg4AAClicense@nero.com.
23 **
24 ** $Id: audio.c,v 1.11 2004/02/06 10:23:27 menno Exp $
25 **/
26
27 #ifdef _WIN32
28 #include <io.h>
29 #endif
30 #include <stdlib.h>
31 #include <stdio.h>
32 #include <fcntl.h>
33 #include <math.h>
34 #include <faad.h>
35 #include "audio.h"
36
37
38 audio_file *open_audio_file(char *infile, int samplerate, int channels,
39 int outputFormat, int fileType, long channelMask)
40 {
41 audio_file *aufile = malloc(sizeof(audio_file));
42
43 aufile->outputFormat = outputFormat;
44
45 aufile->samplerate = samplerate;
46 aufile->channels = channels;
47 aufile->total_samples = 0;
48 aufile->fileType = fileType;
49 aufile->channelMask = channelMask;
50
51 switch (outputFormat)
52 {
53 case FAAD_FMT_16BIT:
54 aufile->bits_per_sample = 16;
55 break;
56 case FAAD_FMT_24BIT:
57 aufile->bits_per_sample = 24;
58 break;
59 case FAAD_FMT_32BIT:
60 case FAAD_FMT_FLOAT:
61 aufile->bits_per_sample = 32;
62 break;
63 default:
64 if (aufile) free(aufile);
65 return NULL;
66 }
67
68 if(infile[0] == '-')
69 {
70 #ifdef _WIN32
71 setmode(fileno(stdout), O_BINARY);
72 #endif
73 aufile->sndfile = stdout;
74 } else {
75 aufile->sndfile = fopen(infile, "wb");
76 }
77
78 if (aufile->sndfile == NULL)
79 {
80 if (aufile) free(aufile);
81 return NULL;
82 }
83
84 if (aufile->fileType == OUTPUT_WAV)
85 {
86 if (aufile->channelMask)
87 write_wav_extensible_header(aufile, aufile->channelMask);
88 else
89 write_wav_header(aufile);
90 }
91
92 return aufile;
93 }
94
95 int write_audio_file(audio_file *aufile, void *sample_buffer, int samples, int offset)
96 {
97 char *buf = (char *)sample_buffer;
98 switch (aufile->outputFormat)
99 {
100 case FAAD_FMT_16BIT:
101 return write_audio_16bit(aufile, buf + offset*2, samples);
102 case FAAD_FMT_24BIT:
103 return write_audio_24bit(aufile, buf + offset*4, samples);
104 case FAAD_FMT_32BIT:
105 return write_audio_32bit(aufile, buf + offset*4, samples);
106 case FAAD_FMT_FLOAT:
107 return write_audio_float(aufile, buf + offset*4, samples);
108 default:
109 return 0;
110 }
111
112 return 0;
113 }
114
115 void close_audio_file(audio_file *aufile)
116 {
117 if (aufile->fileType == OUTPUT_WAV)
118 {
119 fseek(aufile->sndfile, 0, SEEK_SET);
120
121 if (aufile->channelMask)
122 write_wav_extensible_header(aufile, aufile->channelMask);
123 else
124 write_wav_header(aufile);
125 }
126
127 fclose(aufile->sndfile);
128
129 if (aufile) free(aufile);
130 }
131
132 static int write_wav_header(audio_file *aufile)
133 {
134 unsigned char header[44];
135 unsigned char* p = header;
136 unsigned int bytes = (aufile->bits_per_sample + 7) / 8;
137 float data_size = (float)bytes * aufile->total_samples;
138 unsigned long word32;
139
140 *p++ = 'R'; *p++ = 'I'; *p++ = 'F'; *p++ = 'F';
141
142 word32 = (data_size + (44 - 8) < (float)MAXWAVESIZE) ?
143 (unsigned long)data_size + (44 - 8) : (unsigned long)MAXWAVESIZE;
144 *p++ = (unsigned char)(word32 >> 0);
145 *p++ = (unsigned char)(word32 >> 8);
146 *p++ = (unsigned char)(word32 >> 16);
147 *p++ = (unsigned char)(word32 >> 24);
148
149 *p++ = 'W'; *p++ = 'A'; *p++ = 'V'; *p++ = 'E';
150
151 *p++ = 'f'; *p++ = 'm'; *p++ = 't'; *p++ = ' ';
152
153 *p++ = 0x10; *p++ = 0x00; *p++ = 0x00; *p++ = 0x00;
154
155 if (aufile->outputFormat == FAAD_FMT_FLOAT)
156 {
157 *p++ = 0x03; *p++ = 0x00;
158 } else {
159 *p++ = 0x01; *p++ = 0x00;
160 }
161
162 *p++ = (unsigned char)(aufile->channels >> 0);
163 *p++ = (unsigned char)(aufile->channels >> 8);
164
165 word32 = (unsigned long)(aufile->samplerate + 0.5);
166 *p++ = (unsigned char)(word32 >> 0);
167 *p++ = (unsigned char)(word32 >> 8);
168 *p++ = (unsigned char)(word32 >> 16);
169 *p++ = (unsigned char)(word32 >> 24);
170
171 word32 = aufile->samplerate * bytes * aufile->channels;
172 *p++ = (unsigned char)(word32 >> 0);
173 *p++ = (unsigned char)(word32 >> 8);
174 *p++ = (unsigned char)(word32 >> 16);
175 *p++ = (unsigned char)(word32 >> 24);
176
177 word32 = bytes * aufile->channels;
178 *p++ = (unsigned char)(word32 >> 0);
179 *p++ = (unsigned char)(word32 >> 8);
180
181 *p++ = (unsigned char)(aufile->bits_per_sample >> 0);
182 *p++ = (unsigned char)(aufile->bits_per_sample >> 8);
183
184 *p++ = 'd'; *p++ = 'a'; *p++ = 't'; *p++ = 'a';
185
186 word32 = data_size < MAXWAVESIZE ?
187 (unsigned long)data_size : (unsigned long)MAXWAVESIZE;
188 *p++ = (unsigned char)(word32 >> 0);
189 *p++ = (unsigned char)(word32 >> 8);
190 *p++ = (unsigned char)(word32 >> 16);
191 *p++ = (unsigned char)(word32 >> 24);
192
193 return fwrite(header, sizeof(header), 1, aufile->sndfile);
194 }
195
196 static int write_wav_extensible_header(audio_file *aufile, long channelMask)
197 {
198 unsigned char header[68];
199 unsigned char* p = header;
200 unsigned int bytes = (aufile->bits_per_sample + 7) / 8;
201 float data_size = (float)bytes * aufile->total_samples;
202 unsigned long word32;
203
204 *p++ = 'R'; *p++ = 'I'; *p++ = 'F'; *p++ = 'F';
205
206 word32 = (data_size + (68 - 8) < (float)MAXWAVESIZE) ?
207 (unsigned long)data_size + (68 - 8) : (unsigned long)MAXWAVESIZE;
208 *p++ = (unsigned char)(word32 >> 0);
209 *p++ = (unsigned char)(word32 >> 8);
210 *p++ = (unsigned char)(word32 >> 16);
211 *p++ = (unsigned char)(word32 >> 24);
212
213 *p++ = 'W'; *p++ = 'A'; *p++ = 'V'; *p++ = 'E';
214
215 *p++ = 'f'; *p++ = 'm'; *p++ = 't'; *p++ = ' ';
216
217 *p++ = /*0x10*/0x28; *p++ = 0x00; *p++ = 0x00; *p++ = 0x00;
218
219 /* WAVE_FORMAT_EXTENSIBLE */
220 *p++ = 0xFE; *p++ = 0xFF;
221
222 *p++ = (unsigned char)(aufile->channels >> 0);
223 *p++ = (unsigned char)(aufile->channels >> 8);
224
225 word32 = (unsigned long)(aufile->samplerate + 0.5);
226 *p++ = (unsigned char)(word32 >> 0);
227 *p++ = (unsigned char)(word32 >> 8);
228 *p++ = (unsigned char)(word32 >> 16);
229 *p++ = (unsigned char)(word32 >> 24);
230
231 word32 = aufile->samplerate * bytes * aufile->channels;
232 *p++ = (unsigned char)(word32 >> 0);
233 *p++ = (unsigned char)(word32 >> 8);
234 *p++ = (unsigned char)(word32 >> 16);
235 *p++ = (unsigned char)(word32 >> 24);
236
237 word32 = bytes * aufile->channels;
238 *p++ = (unsigned char)(word32 >> 0);
239 *p++ = (unsigned char)(word32 >> 8);
240
241 *p++ = (unsigned char)(aufile->bits_per_sample >> 0);
242 *p++ = (unsigned char)(aufile->bits_per_sample >> 8);
243
244 /* cbSize */
245 *p++ = (unsigned char)(22);
246 *p++ = (unsigned char)(0);
247
248 /* WAVEFORMATEXTENSIBLE */
249
250 /* wValidBitsPerSample */
251 *p++ = (unsigned char)(aufile->bits_per_sample >> 0);
252 *p++ = (unsigned char)(aufile->bits_per_sample >> 8);
253
254 /* dwChannelMask */
255 word32 = channelMask;
256 *p++ = (unsigned char)(word32 >> 0);
257 *p++ = (unsigned char)(word32 >> 8);
258 *p++ = (unsigned char)(word32 >> 16);
259 *p++ = (unsigned char)(word32 >> 24);
260
261 /* SubFormat */
262 if (aufile->outputFormat == FAAD_FMT_FLOAT)
263 {
264 /* KSDATAFORMAT_SUBTYPE_IEEE_FLOAT: 00000003-0000-0010-8000-00aa00389b71 */
265 *p++ = 0x03;
266 *p++ = 0x00;
267 *p++ = 0x00;
268 *p++ = 0x00;
269 *p++ = 0x00; *p++ = 0x00; *p++ = 0x10; *p++ = 0x00; *p++ = 0x80; *p++ = 0x00;
270 *p++ = 0x00; *p++ = 0xaa; *p++ = 0x00; *p++ = 0x38; *p++ = 0x9b; *p++ = 0x71;
271 } else {
272 /* KSDATAFORMAT_SUBTYPE_PCM: 00000001-0000-0010-8000-00aa00389b71 */
273 *p++ = 0x01;
274 *p++ = 0x00;
275 *p++ = 0x00;
276 *p++ = 0x00;
277 *p++ = 0x00; *p++ = 0x00; *p++ = 0x10; *p++ = 0x00; *p++ = 0x80; *p++ = 0x00;
278 *p++ = 0x00; *p++ = 0xaa; *p++ = 0x00; *p++ = 0x38; *p++ = 0x9b; *p++ = 0x71;
279 }
280
281 /* end WAVEFORMATEXTENSIBLE */
282
283 *p++ = 'd'; *p++ = 'a'; *p++ = 't'; *p++ = 'a';
284
285 word32 = data_size < MAXWAVESIZE ?
286 (unsigned long)data_size : (unsigned long)MAXWAVESIZE;
287 *p++ = (unsigned char)(word32 >> 0);
288 *p++ = (unsigned char)(word32 >> 8);
289 *p++ = (unsigned char)(word32 >> 16);
290 *p++ = (unsigned char)(word32 >> 24);
291
292 return fwrite(header, sizeof(header), 1, aufile->sndfile);
293 }
294
295 static int write_audio_16bit(audio_file *aufile, void *sample_buffer,
296 unsigned int samples)
297 {
298 int ret;
299 unsigned int i;
300 short *sample_buffer16 = (short*)sample_buffer;
301 char *data = malloc(samples*aufile->bits_per_sample*sizeof(char)/8);
302
303 aufile->total_samples += samples;
304
305 if (aufile->channels == 6 && aufile->channelMask)
306 {
307 for (i = 0; i < samples; i += aufile->channels)
308 {
309 short r1, r2, r3, r4, r5, r6;
310 r1 = sample_buffer16[i];
311 r2 = sample_buffer16[i+1];
312 r3 = sample_buffer16[i+2];
313 r4 = sample_buffer16[i+3];
314 r5 = sample_buffer16[i+4];
315 r6 = sample_buffer16[i+5];
316 sample_buffer16[i] = r2;
317 sample_buffer16[i+1] = r3;
318 sample_buffer16[i+2] = r1;
319 sample_buffer16[i+3] = r6;
320 sample_buffer16[i+4] = r4;
321 sample_buffer16[i+5] = r5;
322 }
323 }
324
325 for (i = 0; i < samples; i++)
326 {
327 data[i*2] = (char)(sample_buffer16[i] & 0xFF);
328 data[i*2+1] = (char)((sample_buffer16[i] >> 8) & 0xFF);
329 }
330
331 ret = fwrite(data, samples, aufile->bits_per_sample/8, aufile->sndfile);
332
333 if (data) free(data);
334
335 return ret;
336 }
337
338 static int write_audio_24bit(audio_file *aufile, void *sample_buffer,
339 unsigned int samples)
340 {
341 int ret;
342 unsigned int i;
343 long *sample_buffer24 = (long*)sample_buffer;
344 char *data = malloc(samples*aufile->bits_per_sample*sizeof(char)/8);
345
346 aufile->total_samples += samples;
347
348 if (aufile->channels == 6 && aufile->channelMask)
349 {
350 for (i = 0; i < samples; i += aufile->channels)
351 {
352 long r1, r2, r3, r4, r5, r6;
353 r1 = sample_buffer24[i];
354 r2 = sample_buffer24[i+1];
355 r3 = sample_buffer24[i+2];
356 r4 = sample_buffer24[i+3];
357 r5 = sample_buffer24[i+4];
358 r6 = sample_buffer24[i+5];
359 sample_buffer24[i] = r2;
360 sample_buffer24[i+1] = r3;
361 sample_buffer24[i+2] = r1;
362 sample_buffer24[i+3] = r6;
363 sample_buffer24[i+4] = r4;
364 sample_buffer24[i+5] = r5;
365 }
366 }
367
368 for (i = 0; i < samples; i++)
369 {
370 data[i*3] = (char)(sample_buffer24[i] & 0xFF);
371 data[i*3+1] = (char)((sample_buffer24[i] >> 8) & 0xFF);
372 data[i*3+2] = (char)((sample_buffer24[i] >> 16) & 0xFF);
373 }
374
375 ret = fwrite(data, samples, aufile->bits_per_sample/8, aufile->sndfile);
376
377 if (data) free(data);
378
379 return ret;
380 }
381
382 static int write_audio_32bit(audio_file *aufile, void *sample_buffer,
383 unsigned int samples)
384 {
385 int ret;
386 unsigned int i;
387 long *sample_buffer32 = (long*)sample_buffer;
388 char *data = malloc(samples*aufile->bits_per_sample*sizeof(char)/8);
389
390 aufile->total_samples += samples;
391
392 if (aufile->channels == 6 && aufile->channelMask)
393 {
394 for (i = 0; i < samples; i += aufile->channels)
395 {
396 long r1, r2, r3, r4, r5, r6;
397 r1 = sample_buffer32[i];
398 r2 = sample_buffer32[i+1];
399 r3 = sample_buffer32[i+2];
400 r4 = sample_buffer32[i+3];
401 r5 = sample_buffer32[i+4];
402 r6 = sample_buffer32[i+5];
403 sample_buffer32[i] = r2;
404 sample_buffer32[i+1] = r3;
405 sample_buffer32[i+2] = r1;
406 sample_buffer32[i+3] = r6;
407 sample_buffer32[i+4] = r4;
408 sample_buffer32[i+5] = r5;
409 }
410 }
411
412 for (i = 0; i < samples; i++)
413 {
414 data[i*4] = (char)(sample_buffer32[i] & 0xFF);
415 data[i*4+1] = (char)((sample_buffer32[i] >> 8) & 0xFF);
416 data[i*4+2] = (char)((sample_buffer32[i] >> 16) & 0xFF);
417 data[i*4+3] = (char)((sample_buffer32[i] >> 24) & 0xFF);
418 }
419
420 ret = fwrite(data, samples, aufile->bits_per_sample/8, aufile->sndfile);
421
422 if (data) free(data);
423
424 return ret;
425 }
426
427 static int write_audio_float(audio_file *aufile, void *sample_buffer,
428 unsigned int samples)
429 {
430 int ret;
431 unsigned int i;
432 float *sample_buffer_f = (float*)sample_buffer;
433 unsigned char *data = malloc(samples*aufile->bits_per_sample*sizeof(char)/8);
434
435 aufile->total_samples += samples;
436
437 if (aufile->channels == 6 && aufile->channelMask)
438 {
439 for (i = 0; i < samples; i += aufile->channels)
440 {
441 float r1, r2, r3, r4, r5, r6;
442 r1 = sample_buffer_f[i];
443 r2 = sample_buffer_f[i+1];
444 r3 = sample_buffer_f[i+2];
445 r4 = sample_buffer_f[i+3];
446 r5 = sample_buffer_f[i+4];
447 r6 = sample_buffer_f[i+5];
448 sample_buffer_f[i] = r2;
449 sample_buffer_f[i+1] = r3;
450 sample_buffer_f[i+2] = r1;
451 sample_buffer_f[i+3] = r6;
452 sample_buffer_f[i+4] = r4;
453 sample_buffer_f[i+5] = r5;
454 }
455 }
456
457 for (i = 0; i < samples; i++)
458 {
459 int exponent, mantissa, negative = 0 ;
460 float in = sample_buffer_f[i];
461
462 data[i*4] = 0; data[i*4+1] = 0; data[i*4+2] = 0; data[i*4+3] = 0;
463 if (in == 0.0)
464 continue;
465
466 if (in < 0.0)
467 {
468 in *= -1.0;
469 negative = 1;
470 }
471 in = (float)frexp(in, &exponent);
472 exponent += 126;
473 in *= (float)0x1000000;
474 mantissa = (((int)in) & 0x7FFFFF);
475
476 if (negative)
477 data[i*4+3] |= 0x80;
478
479 if (exponent & 0x01)
480 data[i*4+2] |= 0x80;
481
482 data[i*4] = mantissa & 0xFF;
483 data[i*4+1] = (mantissa >> 8) & 0xFF;
484 data[i*4+2] |= (mantissa >> 16) & 0x7F;
485 data[i*4+3] |= (exponent >> 1) & 0x7F;
486 }
487
488 ret = fwrite(data, samples, aufile->bits_per_sample/8, aufile->sndfile);
489
490 if (data) free(data);
491
492 return ret;
493 }
+0
-71
aacDECdrop/audio.h less more
0 /*
1 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
2 ** Copyright (C) 2003-2004 M. Bakker, Ahead Software AG, http://www.nero.com
3 **
4 ** This program is free software; you can redistribute it and/or modify
5 ** it under the terms of the GNU General Public License as published by
6 ** the Free Software Foundation; either version 2 of the License, or
7 ** (at your option) any later version.
8 **
9 ** This program is distributed in the hope that it will be useful,
10 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
11 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 ** GNU General Public License for more details.
13 **
14 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
16 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
17 **
18 ** Any non-GPL usage of this software or parts of this software is strictly
19 ** forbidden.
20 **
21 ** Commercial non-GPL licensing of this software is possible.
22 ** For more info contact Ahead Software through Mpeg4AAClicense@nero.com.
23 **
24 ** $Id: audio.h,v 1.9 2004/02/06 10:23:27 menno Exp $
25 **/
26
27 #ifndef AUDIO_H_INCLUDED
28 #define AUDIO_H_INCLUDED
29
30 #ifdef __cplusplus
31 extern "C" {
32 #endif
33
34 #define MAXWAVESIZE 4294967040LU
35
36 #define OUTPUT_WAV 1
37 #define OUTPUT_RAW 2
38
39 typedef struct
40 {
41 int outputFormat;
42 FILE *sndfile;
43 unsigned int fileType;
44 unsigned long samplerate;
45 unsigned int bits_per_sample;
46 unsigned int channels;
47 unsigned long total_samples;
48 long channelMask;
49 } audio_file;
50
51 audio_file *open_audio_file(char *infile, int samplerate, int channels,
52 int outputFormat, int fileType, long channelMask);
53 int write_audio_file(audio_file *aufile, void *sample_buffer, int samples, int offset);
54 void close_audio_file(audio_file *aufile);
55 static int write_wav_header(audio_file *aufile);
56 static int write_wav_extensible_header(audio_file *aufile, long channelMask);
57 static int write_audio_16bit(audio_file *aufile, void *sample_buffer,
58 unsigned int samples);
59 static int write_audio_24bit(audio_file *aufile, void *sample_buffer,
60 unsigned int samples);
61 static int write_audio_32bit(audio_file *aufile, void *sample_buffer,
62 unsigned int samples);
63 static int write_audio_float(audio_file *aufile, void *sample_buffer,
64 unsigned int samples);
65
66
67 #ifdef __cplusplus
68 }
69 #endif
70 #endif
+0
-566
aacDECdrop/decode.c less more
0 /*
1 ** FAAD - Freeware Advanced Audio Decoder
2 ** Copyright (C) 2002 M. Bakker
3 **
4 ** This program is free software; you can redistribute it and/or modify
5 ** it under the terms of the GNU General Public License as published by
6 ** the Free Software Foundation; either version 2 of the License, or
7 ** (at your option) any later version.
8 **
9 ** This program is distributed in the hope that it will be useful,
10 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
11 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 ** GNU General Public License for more details.
13 **
14 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
16 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
17 **
18 ** $Id: decode.c,v 1.16 2004/04/03 19:08:37 menno Exp $
19 ** $Id: decode.c,v 1.16 2004/04/03 19:08:37 menno Exp $
20 **/
21
22 #ifdef _WIN32
23 #define WIN32_LEAN_AND_MEAN
24 #include <windows.h>
25 #define off_t __int64
26 #else
27 #include <time.h>
28 #endif
29
30 #include <stdio.h>
31 #include <stdlib.h>
32
33 #include <neaacdec.h>
34 #include <mp4ff.h>
35
36 #include "audio.h"
37 #include "decode.h"
38 #include "misc.h"
39 #include "wave_out.h"
40
41 #ifndef min
42 #define min(a,b) ( (a) < (b) ? (a) : (b) )
43 #endif
44
45 #define MAX_CHANNELS 8 /* make this higher to support files with
46 more channels */
47
48 /* FAAD file buffering routines */
49 /* declare buffering variables */
50 #define DEC_BUFF_VARS \
51 int fileread, bytesconsumed, k; \
52 int buffercount = 0, buffer_index = 0; \
53 unsigned char *buffer; \
54 unsigned int bytes_in_buffer = 0;
55
56 /* initialise buffering */
57 #define INIT_BUFF(file) \
58 fseek(file, 0, SEEK_END); \
59 fileread = ftell(file); \
60 fseek(file, 0, SEEK_SET); \
61 buffer = (unsigned char*)malloc(FAAD_MIN_STREAMSIZE*MAX_CHANNELS); \
62 memset(buffer, 0, FAAD_MIN_STREAMSIZE*MAX_CHANNELS); \
63 bytes_in_buffer = fread(buffer, 1, FAAD_MIN_STREAMSIZE*MAX_CHANNELS, file);
64
65 /* skip bytes in buffer */
66 #define UPDATE_BUFF_SKIP(bytes) \
67 fseek(infile, bytes, SEEK_SET); \
68 buffer_index += bytes; \
69 buffercount = 0; \
70 bytes_in_buffer = fread(buffer, 1, FAAD_MIN_STREAMSIZE*MAX_CHANNELS, infile);
71
72 /* update buffer */
73 #define UPDATE_BUFF_READ \
74 if (bytesconsumed > 0) { \
75 for (k = 0; k < (FAAD_MIN_STREAMSIZE*MAX_CHANNELS - bytesconsumed); k++) \
76 buffer[k] = buffer[k + bytesconsumed]; \
77 bytes_in_buffer += fread(buffer + (FAAD_MIN_STREAMSIZE*MAX_CHANNELS) - bytesconsumed, 1, bytesconsumed, infile); \
78 bytesconsumed = 0; \
79 }
80
81 /* update buffer indices after NeAACDecDecode */
82 #define UPDATE_BUFF_IDX(frame) \
83 bytesconsumed += frame.bytesconsumed; \
84 buffer_index += frame.bytesconsumed; \
85 bytes_in_buffer -= frame.bytesconsumed;
86
87 /* true if decoding has to stop because of EOF */
88 #define IS_FILE_END buffer_index >= fileread
89
90 /* end buffering */
91 #define END_BUFF if (buffer) free(buffer);
92
93
94
95 /* globals */
96 char *progName;
97 extern int stop_decoding;
98
99 int id3v2_tag(unsigned char *buffer)
100 {
101 if (strncmp(buffer, "ID3", 3) == 0) {
102 unsigned long tagsize;
103
104 /* high bit is not used */
105 tagsize = (buffer[6] << 21) | (buffer[7] << 14) |
106 (buffer[8] << 7) | (buffer[9] << 0);
107
108 tagsize += 10;
109
110 return tagsize;
111 } else {
112 return 0;
113 }
114 }
115
116 char *file_ext[] =
117 {
118 NULL,
119 ".wav",
120 ".aif",
121 ".au",
122 ".au",
123 NULL
124 };
125
126 /* MicroSoft channel definitions */
127 #define SPEAKER_FRONT_LEFT 0x1
128 #define SPEAKER_FRONT_RIGHT 0x2
129 #define SPEAKER_FRONT_CENTER 0x4
130 #define SPEAKER_LOW_FREQUENCY 0x8
131 #define SPEAKER_BACK_LEFT 0x10
132 #define SPEAKER_BACK_RIGHT 0x20
133 #define SPEAKER_FRONT_LEFT_OF_CENTER 0x40
134 #define SPEAKER_FRONT_RIGHT_OF_CENTER 0x80
135 #define SPEAKER_BACK_CENTER 0x100
136 #define SPEAKER_SIDE_LEFT 0x200
137 #define SPEAKER_SIDE_RIGHT 0x400
138 #define SPEAKER_TOP_CENTER 0x800
139 #define SPEAKER_TOP_FRONT_LEFT 0x1000
140 #define SPEAKER_TOP_FRONT_CENTER 0x2000
141 #define SPEAKER_TOP_FRONT_RIGHT 0x4000
142 #define SPEAKER_TOP_BACK_LEFT 0x8000
143 #define SPEAKER_TOP_BACK_CENTER 0x10000
144 #define SPEAKER_TOP_BACK_RIGHT 0x20000
145 #define SPEAKER_RESERVED 0x80000000
146
147 long aacChannelConfig2wavexChannelMask(NeAACDecFrameInfo *hInfo)
148 {
149 if (hInfo->channels == 6 && hInfo->num_lfe_channels)
150 {
151 return SPEAKER_FRONT_LEFT + SPEAKER_FRONT_RIGHT +
152 SPEAKER_FRONT_CENTER + SPEAKER_LOW_FREQUENCY +
153 SPEAKER_BACK_LEFT + SPEAKER_BACK_RIGHT;
154 } else {
155 return 0;
156 }
157 }
158
159 int decodeAACfile(char *sndfile, int def_srate, aac_dec_opt *opt)
160 {
161 int tagsize;
162 unsigned long samplerate;
163 unsigned char channels;
164 void *sample_buffer;
165
166 FILE *infile;
167
168 audio_file *aufile;
169
170 NeAACDecHandle hDecoder;
171 NeAACDecFrameInfo frameInfo;
172 NeAACDecConfigurationPtr config;
173
174 int first_time = 1;
175
176
177 /* declare variables for buffering */
178 DEC_BUFF_VARS
179
180 infile = fopen(opt->filename, "rb");
181 if (infile == NULL)
182 {
183 /* unable to open file */
184 error_handler("Error opening file: %s\n", opt->filename);
185 return 1;
186 }
187 INIT_BUFF(infile)
188
189 tagsize = id3v2_tag(buffer);
190 if (tagsize)
191 {
192 UPDATE_BUFF_SKIP(tagsize)
193 }
194
195 hDecoder = NeAACDecOpen();
196
197 /* Set the default object type and samplerate */
198 /* This is useful for RAW AAC files */
199 config = NeAACDecGetCurrentConfiguration(hDecoder);
200 if (def_srate)
201 config->defSampleRate = def_srate;
202 config->defObjectType = opt->object_type;
203 config->outputFormat = opt->output_format;
204
205 NeAACDecSetConfiguration(hDecoder, config);
206
207 if ((bytesconsumed = NeAACDecInit(hDecoder, buffer, bytes_in_buffer,
208 &samplerate, &channels)) < 0)
209 {
210 /* If some error initializing occured, skip the file */
211 error_handler("Error initializing decoder library.\n");
212 END_BUFF
213 NeAACDecClose(hDecoder);
214 fclose(infile);
215 return 1;
216 }
217 buffer_index += bytesconsumed;
218
219 do
220 {
221 /* update buffer */
222 UPDATE_BUFF_READ
223
224 sample_buffer = NeAACDecDecode(hDecoder, &frameInfo, buffer, bytes_in_buffer);
225
226 /* update buffer indices */
227 UPDATE_BUFF_IDX(frameInfo)
228
229 if (frameInfo.error > 0)
230 {
231 error_handler("Error: %s\n",
232 NeAACDecGetErrorMessage(frameInfo.error));
233 }
234
235 opt->progress_update((long)fileread, buffer_index);
236
237 /* open the sound file now that the number of channels are known */
238 if (first_time && !frameInfo.error)
239 {
240 if(opt->decode_mode == 0)
241 {
242 if (Set_WIN_Params (INVALID_FILEDESC, samplerate, SAMPLE_SIZE,
243 frameInfo.channels) < 0)
244 {
245 error_handler("\nCan't access %s\n", "WAVE OUT");
246 END_BUFF
247 NeAACDecClose(hDecoder);
248 fclose(infile);
249 return (0);
250 }
251 }
252 else
253 {
254 aufile = open_audio_file(sndfile, samplerate, frameInfo.channels,
255 opt->output_format, opt->file_type, aacChannelConfig2wavexChannelMask(&frameInfo));
256
257 if (aufile == NULL)
258 {
259 END_BUFF
260 NeAACDecClose(hDecoder);
261 fclose(infile);
262 return 0;
263 }
264 }
265 first_time = 0;
266 }
267
268 if ((frameInfo.error == 0) && (frameInfo.samples > 0))
269 {
270 if(opt->decode_mode == 0)
271 WIN_Play_Samples((short*)sample_buffer, frameInfo.channels*frameInfo.samples);
272 else
273 write_audio_file(aufile, sample_buffer, frameInfo.samples, 0);
274 }
275
276 if (buffer_index >= fileread)
277 sample_buffer = NULL; /* to make sure it stops now */
278
279 if(stop_decoding)
280 break;
281
282 } while (sample_buffer != NULL);
283
284 NeAACDecClose(hDecoder);
285
286 fclose(infile);
287
288 if(opt->decode_mode == 0)
289 WIN_Audio_close();
290 else
291 {
292 if (!first_time)
293 close_audio_file(aufile);
294 }
295
296 END_BUFF
297
298 return frameInfo.error;
299 }
300
301 int GetAACTrack(mp4ff_t *infile)
302 {
303 /* find AAC track */
304 int i, rc;
305 int numTracks = mp4ff_total_tracks(infile);
306
307 for (i = 0; i < numTracks; i++)
308 {
309 unsigned char *buff = NULL;
310 int buff_size = 0;
311 mp4AudioSpecificConfig mp4ASC;
312
313 mp4ff_get_decoder_config(infile, i, &buff, &buff_size);
314
315 if (buff)
316 {
317 rc = NeAACDecAudioSpecificConfig(buff, buff_size, &mp4ASC);
318 free(buff);
319
320 if (rc < 0)
321 continue;
322 return i;
323 }
324 }
325
326 /* can't decode this */
327 return -1;
328 }
329
330 unsigned long srates[] =
331 {
332 96000, 88200, 64000, 48000, 44100, 32000, 24000, 22050, 16000,
333 12000, 11025, 8000
334 };
335
336 uint32_t read_callback(void *user_data, void *buffer, uint32_t length)
337 {
338 return fread(buffer, 1, length, (FILE*)user_data);
339 }
340
341 uint32_t seek_callback(void *user_data, uint64_t position)
342 {
343 return fseek((FILE*)user_data, position, SEEK_SET);
344 }
345
346 int decodeMP4file(char *sndfile, aac_dec_opt *opt)
347 {
348 int track;
349 unsigned long samplerate;
350 unsigned char channels;
351 void *sample_buffer;
352
353 mp4ff_t *infile;
354 FILE *mp4File;
355 int sampleId, numSamples;
356
357 audio_file *aufile;
358
359 NeAACDecHandle hDecoder;
360 NeAACDecFrameInfo frameInfo;
361
362 unsigned char *buffer;
363 int buffer_size;
364
365 int first_time = 1;
366
367 /* initialise the callback structure */
368 mp4ff_callback_t *mp4cb = malloc(sizeof(mp4ff_callback_t));
369
370 mp4File = fopen(opt->filename, "rb");
371 mp4cb->read = read_callback;
372 mp4cb->seek = seek_callback;
373 mp4cb->user_data = mp4File;
374
375 infile = mp4ff_open_read(mp4cb);
376 if (!infile)
377 {
378 /* unable to open file */
379 error_handler("Error opening file: %s\n", opt->filename);
380 return 1;
381 }
382
383 if ((track = GetAACTrack(infile)) < 0)
384 {
385 error_handler("Unable to find correct AAC sound track in the MP4 file.\n");
386 mp4ff_close(infile);
387 free(mp4cb);
388 fclose(mp4File);
389 return 1;
390 }
391
392 buffer = NULL;
393 buffer_size = 0;
394 mp4ff_get_decoder_config(infile, track, &buffer, &buffer_size);
395
396 hDecoder = NeAACDecOpen();
397
398 if(NeAACDecInit2(hDecoder, buffer, buffer_size, &samplerate, &channels) < 0)
399 {
400 /* If some error initializing occured, skip the file */
401 error_handler("Error initializing decoder library.\n");
402 NeAACDecClose(hDecoder);
403 mp4ff_close(infile);
404 free(mp4cb);
405 fclose(mp4File);
406 return 1;
407 }
408 if (buffer)
409 free(buffer);
410
411 numSamples = mp4ff_num_samples(infile, track);
412
413 for (sampleId = 0; sampleId < numSamples; sampleId++)
414 {
415 int rc;
416
417 /* get access unit from MP4 file */
418 buffer = NULL;
419 buffer_size = 0;
420
421 rc = mp4ff_read_sample(infile, track, sampleId, &buffer, &buffer_size);
422 if (rc == 0)
423 {
424 error_handler("Reading from MP4 file failed.\n");
425 NeAACDecClose(hDecoder);
426 mp4ff_close(infile);
427 free(mp4cb);
428 fclose(mp4File);
429 return 1;
430 }
431
432 sample_buffer = NeAACDecDecode(hDecoder, &frameInfo, buffer, buffer_size);
433
434 if (buffer)
435 free(buffer);
436
437 opt->progress_update((long)numSamples, sampleId);
438
439 /* open the sound file now that the number of channels are known */
440 if (first_time && !frameInfo.error)
441 {
442 if(opt->decode_mode == 0)
443 {
444 if (Set_WIN_Params (INVALID_FILEDESC, samplerate, SAMPLE_SIZE,
445 frameInfo.channels) < 0)
446 {
447 error_handler("\nCan't access %s\n", "WAVE OUT");
448 NeAACDecClose(hDecoder);
449 mp4ff_close(infile);
450 free(mp4cb);
451 fclose(mp4File);
452 return (0);
453 }
454 }
455 else
456 {
457 aufile = open_audio_file(sndfile, samplerate, frameInfo.channels,
458 opt->output_format, opt->file_type, aacChannelConfig2wavexChannelMask(&frameInfo));
459
460 if (aufile == NULL)
461 {
462 NeAACDecClose(hDecoder);
463 mp4ff_close(infile);
464 free(mp4cb);
465 fclose(mp4File);
466 return 0;
467 }
468 }
469 first_time = 0;
470 }
471
472 if ((frameInfo.error == 0) && (frameInfo.samples > 0))
473 {
474 if(opt->decode_mode == 0)
475 WIN_Play_Samples((short*)sample_buffer, frameInfo.channels*frameInfo.samples);
476 else
477 write_audio_file(aufile, sample_buffer, frameInfo.samples, 0);
478 }
479
480 if (frameInfo.error > 0)
481 {
482 error_handler("Error: %s\n",
483 NeAACDecGetErrorMessage(frameInfo.error));
484 break;
485 }
486 if(stop_decoding)
487 break;
488 }
489
490
491 NeAACDecClose(hDecoder);
492
493
494 mp4ff_close(infile);
495 free(mp4cb);
496 fclose(mp4File);
497
498 if(opt->decode_mode == 0)
499 WIN_Audio_close();
500 else
501 {
502 if (!first_time)
503 close_audio_file(aufile);
504 }
505
506 return frameInfo.error;
507 }
508
509 int str_no_case_comp(char const *str1, char const *str2, unsigned long len)
510 {
511 signed int c1 = 0, c2 = 0;
512
513 while (len--)
514 {
515 c1 = tolower(*str1++);
516 c2 = tolower(*str2++);
517
518 if (c1 == 0 || c1 != c2)
519 break;
520 }
521
522 return c1 - c2;
523 }
524
525 int aac_decode(aac_dec_opt *opt)
526 {
527 int result;
528 int def_srate = 0;
529 int outfile_set = 0;
530 int mp4file = 0;
531 char *fnp;
532 char audioFileName[MAX_PATH];
533 unsigned char header[8];
534 FILE *hMP4File;
535
536
537 /* point to the specified file name */
538 strcpy(audioFileName, opt->filename);
539 fnp = (char *)strrchr(audioFileName,'.');
540 if (fnp)
541 fnp[0] = '\0';
542 strcat(audioFileName, file_ext[opt->file_type]);
543
544 mp4file = 0;
545 hMP4File = fopen(opt->filename, "rb");
546 if (!hMP4File)
547 {
548 return 1;
549 }
550 fread(header, 1, 8, hMP4File);
551 fclose(hMP4File);
552 if (header[4] == 'f' && header[5] == 't' && header[6] == 'y' && header[7] == 'p')
553 mp4file = 1;
554
555 if (mp4file)
556 {
557 result = decodeMP4file(audioFileName, opt);
558 }
559 else
560 {
561 result = decodeAACfile(audioFileName, def_srate, opt);
562 }
563
564 return 0;
565 }
+0
-55
aacDECdrop/decode.h less more
0 /*
1 * function: Header file for aacDECdrop
2 *
3 * This program is distributed under the GNU General Public License, version 2.
4 * A copy of this license is included with this source.
5 *
6 * Copyright (C) 2002 John Edwards
7 */
8
9 #ifndef __DECODE_H__
10 #define __DECODE_H__
11
12 #include <stdio.h>
13
14 typedef void (*progress_func)(long totalsamples, long samples);
15 typedef void (*error_func)(char *errormessage);
16
17 typedef struct
18 {
19 progress_func progress_update;
20 error_func error;
21 int decode_mode;
22 int output_format;
23 int file_type;
24 int object_type;
25 char *filename;
26 } aac_dec_opt;
27
28
29 int aac_decode(aac_dec_opt *opt);
30
31 /*
32 * Put this here for convenience
33 */
34
35 typedef struct {
36 char TitleFormat[32];
37 int window_x;
38 int window_y;
39 int always_on_top;
40 int logerr;
41 int decode_mode;
42 int outputFormat;
43 int fileType;
44 int object_type;
45 } SettingsAAC;
46
47 /*
48 * GLOBALS
49 */
50
51 extern SettingsAAC iniSettings;
52
53
54 #endif /* __DECODE_H__ */
+0
-194
aacDECdrop/decthread.c less more
0 /*
1 * function: Decoding thread for aacDECdrop
2 *
3 * This program is distributed under the GNU General Public License, version 2.
4 * A copy of this license is included with this source.
5 *
6 * Copyright (C) 2002 John Edwards
7 *
8 * last mod: aacDecdrop decoder last updated 2002-03-14
9 */
10
11 #include <windows.h>
12 #include <time.h>
13 #include <string.h>
14
15 #include "wave_out.h"
16 #include "decode.h"
17 #include "misc.h"
18
19 extern int decoding_done;
20 extern int animate;
21 extern double file_complete;
22 extern int totalfiles;
23 extern int numfiles;
24 int dec_mode;
25 int outputFormat;
26 int fileType;
27 int object_type;
28 extern char* fileName;
29 int stop_decoding;
30
31 typedef struct enclist_tag {
32 char *filename;
33 struct enclist_tag *next;
34 } enclist_t;
35
36 enclist_t *head = NULL;
37
38 CRITICAL_SECTION mutex;
39
40 DWORD WINAPI decode_thread(LPVOID arg);
41
42 void decthread_init(void)
43 {
44 int thread_id;
45 HANDLE thand;
46
47 numfiles = 0;
48 totalfiles = 0;
49 file_complete = 0.0;
50
51 InitializeCriticalSection(&mutex);
52
53 thand = CreateThread(NULL, 0, decode_thread, NULL, 0, &thread_id);
54 if (thand == NULL) {
55 // something bad happened, might want to deal with that, maybe...
56 }
57 }
58
59 void decthread_addfile(char *file)
60 {
61 char *filename;
62 enclist_t *entry, *node;
63
64 if (file == NULL) return;
65
66 // create entry
67 filename = strdup(file);
68 entry = (enclist_t *)malloc(sizeof(enclist_t));
69
70 entry->filename = filename;
71 entry->next = NULL;
72
73 EnterCriticalSection(&mutex);
74
75 // insert entry
76 if (head == NULL) {
77 head = entry;
78 } else {
79 node = head;
80 while (node->next != NULL)
81 node = node->next;
82
83 node->next = entry;
84 }
85 numfiles++;
86 totalfiles++;
87
88 LeaveCriticalSection(&mutex);
89 }
90
91 /*
92 * the caller is responsible for deleting the pointer
93 */
94
95 char *_getfile()
96 {
97 char *filename;
98 enclist_t *entry;
99
100 EnterCriticalSection(&mutex);
101
102 if (head == NULL) {
103 LeaveCriticalSection(&mutex);
104 return NULL;
105 }
106
107 // pop entry
108 entry = head;
109 head = head->next;
110
111 filename = entry->filename;
112 free(entry);
113
114 LeaveCriticalSection(&mutex);
115
116 return filename;
117 }
118
119 void decthread_set_decode_mode(int decode_mode)
120 {
121 dec_mode = decode_mode;
122 }
123
124 void decthread_set_outputFormat(int output_format)
125 {
126 outputFormat = output_format;
127 }
128
129 void decthread_set_fileType(int file_type)
130 {
131 fileType = file_type;
132 }
133
134 void decthread_set_object_type(int object_type)
135 {
136 object_type = object_type;
137 }
138
139 void _error(char *errormessage)
140 {
141 // do nothing
142 }
143
144 void _update(long total, long done)
145 {
146 file_complete = (double)done / (double)total;
147 }
148
149 DWORD WINAPI decode_thread(LPVOID arg)
150 {
151 char *in_file;
152
153 while (!decoding_done)
154 {
155 while (in_file = _getfile())
156 {
157 aac_dec_opt dec_opts;
158 animate = 1;
159
160 if(stop_decoding){
161 numfiles--;
162 break;
163 }
164 set_filename(in_file);
165
166 dec_opts.progress_update = _update;
167 dec_opts.filename = in_file;
168 dec_opts.decode_mode = dec_mode;
169 dec_opts.output_format = outputFormat;
170 dec_opts.file_type = fileType;
171 dec_opts.object_type = object_type;
172 fileName = in_file;
173
174 aac_decode(&dec_opts);
175
176 numfiles--;
177 } /* Finished this file, loop around to next... */
178
179 file_complete = 0.0;
180 animate = 0;
181 totalfiles = 0;
182 numfiles = 0;
183
184 Sleep(500);
185 }
186
187 DeleteCriticalSection(&mutex);
188
189 return 0;
190 }
191
192 /******************************** end of decthread.c ********************************/
193
+0
-19
aacDECdrop/decthread.h less more
0 /*
1 * function: Header file for decthread.c
2 *
3 * This program is distributed under the GNU General Public License, version 2.
4 * A copy of this license is included with this source.
5 *
6 * Copyright (C) 2002 John Edwards
7 */
8 #ifndef __DECTHREAD_H__
9 #define __DECTHREAD_H__
10
11 void decthread_init(void);
12 void decthread_addfile(char *file);
13 void decthread_set_decode_mode(int decode_mode);
14 void decthread_set_outputFormat(int output_format);
15 void decthread_set_fileType(int file_type);
16 void decthread_set_object_type(int object_type);
17
18 #endif /* __DECTHREAD_H__ */
+0
-678
aacDECdrop/main.c less more
0 /*
1 * function: Main control program for aacDECdrop
2 *
3 * This program is distributed under the GNU General Public License, version 2.
4 * A copy of this license is included with this source.
5 *
6 * Copyright (C) 2002 John Edwards
7 *
8 * last mod: aacDECdrop decoder last updated 2002-03-14
9 */
10
11 #include <windows.h>
12 #include <shellapi.h>
13 #include <string.h>
14 #include <stdio.h>
15 #include <commctrl.h>
16
17 #include "resource.h"
18 #include "decthread.h"
19 #include "decode.h"
20 #include "misc.h"
21
22 #define LOSHORT(l) ((SHORT)(l))
23 #define HISHORT(l) ((SHORT)(((DWORD)(l) >> 16) & 0xFFFF))
24
25 #define INI_FILE "aacDECdrop.ini"
26
27 #define CREATEFONT(sz) \
28 CreateFont((sz), 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \
29 VARIABLE_PITCH | FF_SWISS, "")
30
31 HANDLE event = NULL;
32 int width = 130, height = 130;
33 RECT bar1, bar2, vbrBR;
34 int prog1 = 0, prog2 = 0;
35 int moving = 0;
36 POINT pt;
37 HINSTANCE hinst;
38 int frame = 0;
39 HBITMAP hbm[12], temp;
40 HMENU menu;
41 int decoding_done = 0;
42 int stop_decoding = 0;
43 double file_complete;
44 int totalfiles;
45 int numfiles;
46 HWND g_hwnd;
47 HWND qcwnd;
48 HFONT font2;
49 char *fileName;
50
51 SettingsAAC iniSettings; // iniSettings holds the parameters for the aacDECdrop configuration
52
53 int animate = 0;
54
55 LRESULT CALLBACK WndProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam);
56
57 BOOL CALLBACK QCProc(HWND hwndDlg, UINT message, WPARAM wParam, LPARAM lParam) ;
58
59
60 /*
61 * Write the .ini file using the current aacDECdrop settings
62 */
63
64 int
65 WriteIniFile ( const char* Filename )
66 {
67 FILE* fp;
68
69 if ( (fp = fopen (Filename, "w")) == NULL )
70 return EOF; // could not open file
71
72 fprintf (fp, "[aacDECdrop]\n");
73 fprintf (fp, "Window_X=%i\n" , iniSettings.window_x );
74 fprintf (fp, "Window_Y=%i\n" , iniSettings.window_y );
75 fprintf (fp, "Always_on_top=%i\n" , iniSettings.always_on_top);
76 fprintf (fp, "Logerr=%i\n" , iniSettings.logerr );
77 fprintf (fp, "DecodeMode=%i\n" , iniSettings.decode_mode );
78 fprintf (fp, "OutputFormat=%i\n" , iniSettings.outputFormat );
79 fprintf (fp, "FileType=%i\n" , iniSettings.fileType );
80 fprintf (fp, "ObjectType=%i\n" , iniSettings.object_type );
81 return fclose (fp);
82 }
83
84 /*
85 * Read the .ini file and set the aacDECdrop settings
86 */
87
88 int
89 ReadIniFile ( FILE* fp )
90 {
91 char buff [256];
92 int val;
93
94 rewind ( fp );
95 fgets ( buff, sizeof buff, fp );
96
97 if ( 0 != memcmp ( buff, "[aacDECdrop]", 12 ) )
98 return EOF;
99
100 while ( fgets ( buff, sizeof buff, fp ) != NULL ) {
101 if ( 1 == sscanf ( buff, "Window_X=%d" , &val ) ) iniSettings.window_x = val;
102 else if ( 1 == sscanf ( buff, "Window_Y=%d" , &val ) ) iniSettings.window_y = val;
103 else if ( 1 == sscanf ( buff, "Always_on_top=%d", &val ) ) iniSettings.always_on_top = val;
104 else if ( 1 == sscanf ( buff, "Logerr=%d" , &val ) ) iniSettings.logerr = val;
105 else if ( 1 == sscanf ( buff, "DecodeMode=%d" , &val ) ) iniSettings.decode_mode = val;
106 else if ( 1 == sscanf ( buff, "OutputFormat=%d" , &val ) ) iniSettings.outputFormat = val;
107 else if ( 1 == sscanf ( buff, "FileType=%d" , &val ) ) iniSettings.fileType = val;
108 else if ( 1 == sscanf ( buff, "ObjectType=%d" , &val ) ) iniSettings.object_type = val;
109 }
110
111 return 0;
112 }
113
114
115 /*
116 * Get aacDECdrop settings at startup, writes .ini file, if not present
117 */
118
119 void
120 GetAACdecSettings ( void )
121 {
122 FILE* fp = NULL;
123 char PathAndName [] = {INI_FILE};
124
125 // set default values
126 iniSettings.window_x = 64; // default box position (x co-ord)
127 iniSettings.window_y = 64; // default box position (y co-ord)
128 iniSettings.always_on_top = 8; // default = on
129 iniSettings.logerr = 0; // default = off
130 iniSettings.decode_mode = 1; // default = 1 (decode to file)
131 iniSettings.outputFormat = 1; // default = 1 (16 bit PCM)
132 iniSettings.fileType = 1; // default = 1 (Microsoft WAV)
133 iniSettings.object_type = 1; // default = 1 (Low Complexity)
134
135 // Read INI_FILE
136 if ( (fp = fopen (PathAndName, "r")) == NULL ) { // file does not exist: write it!
137 WriteIniFile ( PathAndName );
138 }
139 else { // file does exist: read it!
140 ReadIniFile (fp);
141 fclose (fp);
142 }
143
144 return;
145 }
146
147 void set_always_on_top(HWND hwnd, int v)
148 {
149 CheckMenuItem(menu, IDM_ONTOP, v ? MF_CHECKED : MF_UNCHECKED);
150 SetWindowPos(hwnd, v ? HWND_TOPMOST : HWND_NOTOPMOST, 0, 0, 0, 0, SWP_NOSIZE | SWP_SHOWWINDOW | SWP_NOMOVE);
151 iniSettings.always_on_top = v;
152 }
153
154 void set_logerr(HWND hwnd, int v)
155 {
156 CheckMenuItem(menu, IDM_LOGERR, v ? MF_CHECKED : MF_UNCHECKED);
157 iniSettings.logerr = v;
158 set_use_dialogs(v);
159 }
160
161 void set_decode_mode(int v)
162 {
163 decthread_set_decode_mode(v);
164 iniSettings.decode_mode = v;
165 }
166
167 void set_outputFormat(int v)
168 {
169 decthread_set_outputFormat(v);
170 iniSettings.outputFormat = v;
171 }
172
173 void set_fileType(int v)
174 {
175 decthread_set_fileType(v);
176 iniSettings.fileType = v;
177 }
178
179 void set_object_type(int v)
180 {
181 decthread_set_object_type(v);
182 iniSettings.object_type = v;
183 }
184
185 int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, PSTR szCmdLine, int iCmdShow)
186 {
187 static char szAppName[] = "aacDECdrop";
188 HWND hwnd;
189 MSG msg;
190 WNDCLASS wndclass;
191 const int width = 130;
192 const int height = 130;
193 int x;
194 int y;
195
196 hinst = hInstance;
197
198 wndclass.style = CS_HREDRAW | CS_VREDRAW;
199 wndclass.lpfnWndProc = WndProc;
200 wndclass.cbClsExtra = 0;
201 wndclass.cbWndExtra = 0;
202 wndclass.hInstance = hInstance;
203 wndclass.hIcon = LoadIcon(hinst, MAKEINTRESOURCE(IDI_ICON1));
204 wndclass.hCursor = LoadCursor(NULL, IDC_ARROW);
205 wndclass.hbrBackground = (HBRUSH)GetStockObject(WHITE_BRUSH);
206 wndclass.lpszMenuName = NULL;
207 wndclass.lpszClassName = szAppName;
208
209 RegisterClass(&wndclass);
210
211 GetAACdecSettings();
212
213 x = max(min(iniSettings.window_x, GetSystemMetrics(SM_CXSCREEN) - width), 0);
214 y = max(min(iniSettings.window_y, GetSystemMetrics(SM_CYSCREEN) - height), 0);
215
216 hwnd = CreateWindow(szAppName, "aacDECdrop", WS_POPUP | WS_DLGFRAME, x, y,
217 width, height, NULL, NULL, hInstance, NULL);
218
219 g_hwnd = hwnd;
220
221 ShowWindow(hwnd, iCmdShow);
222 UpdateWindow(hwnd);
223
224 font2 = CREATEFONT(10);
225
226 SetTimer(hwnd, 1, 80, NULL);
227
228 set_always_on_top(hwnd, iniSettings.always_on_top);
229 set_logerr(hwnd, iniSettings.logerr);
230 set_decode_mode(iniSettings.decode_mode);
231 set_outputFormat(iniSettings.outputFormat);
232 set_fileType(iniSettings.fileType);
233 set_object_type(iniSettings.object_type);
234
235 for (frame = 0; frame < 8; frame++)
236 hbm[frame] = LoadImage(hinst, MAKEINTRESOURCE(IDB_TF01 + frame), IMAGE_BITMAP, 0, 0, LR_CREATEDIBSECTION);
237 frame = 0;
238
239 while (GetMessage(&msg, NULL, 0, 0))
240 {
241 TranslateMessage(&msg);
242 DispatchMessage(&msg);
243 }
244
245 for (frame = 0; frame < 8; frame++)
246 DeleteObject(hbm[frame]);
247
248 return msg.wParam;
249 }
250
251 void HandleDrag(HWND hwnd, HDROP hDrop)
252 {
253 int cFiles, i;
254 char szFile[MAX_PATH];
255 char *ext;
256 int flag = 0;
257
258 cFiles = DragQueryFile(hDrop, 0xFFFFFFFF, NULL, 0);
259 for (i = 0; i < cFiles; i++)
260 {
261 DragQueryFile(hDrop, i, szFile, sizeof(szFile));
262
263 if (ext = strrchr(szFile, '.'))
264 {
265 if (stricmp(ext, ".aac") == 0 || stricmp(ext, ".mp4") == 0 ||
266 stricmp(ext, ".m4a") == 0 || stricmp(ext, ".m4p") == 0)
267 {
268 flag = 1;
269 decthread_addfile(szFile);
270 stop_decoding = 0;
271 }
272 }
273 }
274
275 DragFinish(hDrop);
276
277 if (flag)
278 SetEvent(event);
279 }
280
281 LRESULT CALLBACK WndProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
282 {
283 HDC hdc, hmem;
284 static HDC offscreen;
285 PAINTSTRUCT ps;
286 RECT rect, rect2;
287 BITMAP bm;
288 POINT point;
289 static POINT start;
290 static int dragging = 0;
291 HDC desktop;
292 HBITMAP hbitmap;
293 HANDLE hdrop;
294 HFONT dfltFont;
295 int dfltBGMode;
296 double percomp;
297
298 switch (message)
299 {
300 case WM_CREATE:
301 menu = LoadMenu(hinst, MAKEINTRESOURCE(IDR_MENU1));
302 menu = GetSubMenu(menu, 0);
303
304 offscreen = CreateCompatibleDC(NULL);
305 desktop = GetDC(GetDesktopWindow());
306 hbitmap = CreateCompatibleBitmap(desktop, 200, 200);
307 ReleaseDC(GetDesktopWindow(), desktop);
308 SelectObject(offscreen, hbitmap);
309
310 // Start the engines
311 decthread_init();
312
313 // We accept drag&drop
314 DragAcceptFiles(hwnd, TRUE);
315 return 0;
316
317 case WM_PAINT:
318 hdc = BeginPaint(hwnd, &ps);
319 GetClientRect(hwnd, &rect);
320 width = rect.right + 1;
321 height = rect.bottom + 1;
322
323 FillRect(offscreen, &rect, (HBRUSH)GetStockObject(WHITE_BRUSH));
324 DrawText(offscreen, "Drop Files Here", -1, &rect, DT_SINGLELINE | DT_CENTER);
325 SetRect(&rect2, 0, height - 110, width, height - 25);
326 DrawText(offscreen, "For Decoding", -1, &rect2, DT_SINGLELINE | DT_CENTER);
327
328 hmem = CreateCompatibleDC(offscreen);
329 SelectObject(hmem, hbm[frame]);
330 GetObject(hbm[frame], sizeof(BITMAP), &bm);
331 BitBlt(offscreen, width / 2 - 33, height / 2 - 31, bm.bmWidth, bm.bmHeight, hmem, 0, 0, SRCCOPY);
332 DeleteDC(hmem);
333
334 percomp = ((double)(totalfiles - numfiles) + 1 - (1 - file_complete)) / (double)totalfiles;
335
336 SetRect(&vbrBR, 0, height - 35, width, height - 19);
337
338 dfltBGMode = SetBkMode(offscreen, TRANSPARENT);
339 dfltFont = SelectObject(offscreen, font2);
340
341 SetRect(&bar1, 0, height - 23, (int)(file_complete * width), height - 13);
342 SetRect(&bar2, 0, height - 12, (int)(percomp * width), height - 2);
343
344 FillRect(offscreen, &bar1, (HBRUSH)GetStockObject(LTGRAY_BRUSH));
345 FillRect(offscreen, &bar2, (HBRUSH)GetStockObject(DKGRAY_BRUSH));
346
347 if (fileName)
348 {
349 char* sep;
350 char fileCaption[80];
351
352 if ((sep = strrchr(fileName, '\\')) != 0)
353 fileName = sep+1;
354
355 (void) strcpy(fileCaption, " ");
356 (void) strcat(fileCaption, fileName);
357
358 DrawText(offscreen, fileCaption, -1, &bar1, DT_SINGLELINE | DT_LEFT);
359 }
360
361 SelectObject(offscreen, dfltFont);
362 SetBkMode(offscreen, dfltBGMode);
363
364 BitBlt(hdc, 0, 0, width, height, offscreen, 0, 0, SRCCOPY);
365
366 EndPaint(hwnd, &ps);
367
368 return DefWindowProc(hwnd, message, wParam, lParam);
369 //return 0;
370
371 case WM_TIMER:
372 if (animate || frame)
373 {
374 frame++;
375 if (frame > 7)
376 frame -= 8;
377 }
378 else
379 {
380 frame = 0;
381 }
382 GetClientRect(hwnd, &rect);
383 InvalidateRect(hwnd, &rect, FALSE);
384 return 0;
385
386 case WM_LBUTTONDOWN:
387 start.x = LOWORD(lParam);
388 start.y = HIWORD(lParam);
389 ClientToScreen(hwnd, &start);
390 GetWindowRect(hwnd, &rect);
391 start.x -= rect.left;
392 start.y -= rect.top;
393 dragging = 1;
394 SetCapture(hwnd);
395 return 0;
396
397 case WM_LBUTTONUP:
398 if (dragging)
399 {
400 dragging = 0;
401 ReleaseCapture();
402 }
403 return 0;
404
405 case WM_MOUSEMOVE:
406 if (dragging)
407 {
408 point.x = LOSHORT(lParam);
409 point.y = HISHORT(lParam);
410
411 /* lParam can contain negative coordinates !
412 * point.x = LOWORD(lParam);
413 * point.y = HIWORD(lParam);
414 */
415
416 ClientToScreen(hwnd, &point);
417 SetWindowPos(hwnd, 0, point.x - start.x, point.y - start.y, 0, 0, SWP_NOSIZE | SWP_NOZORDER | SWP_SHOWWINDOW);
418 iniSettings.window_x = point.x - start.x;
419 iniSettings.window_y = point.y - start.y;
420 }
421 return 0;
422
423 case WM_CAPTURECHANGED:
424 if (dragging)
425 {
426 dragging = 0;
427 ReleaseCapture();
428 }
429 return 0;
430
431 case WM_RBUTTONUP:
432 point.x = LOWORD(lParam);
433 point.y = HIWORD(lParam);
434 ClientToScreen(hwnd, &point);
435 TrackPopupMenu(menu, TPM_RIGHTBUTTON, point.x, point.y, 0, hwnd, NULL);
436 return 0;
437
438 case WM_COMMAND:
439 switch (LOWORD(wParam))
440 {
441 case IDM_QUIT:
442 WriteIniFile(INI_FILE);
443 decoding_done = 1;
444 PostQuitMessage(0);
445 break;
446 case IDM_ONTOP:
447 set_always_on_top(hwnd, ~GetMenuState(menu, LOWORD(wParam), MF_BYCOMMAND) & MF_CHECKED);
448 break;
449 case IDM_LOGERR:
450 set_logerr(hwnd, ~GetMenuState(menu, LOWORD(wParam), MF_BYCOMMAND) & MF_CHECKED);
451 break;
452 case IDM_STOP_DEC:
453 {
454 int v = ~GetMenuState(menu, LOWORD(wParam), MF_BYCOMMAND) & MF_CHECKED;
455 if(v == 8)
456 stop_decoding = 1;
457 break;
458 }
459 case IDM_VOLUME:
460 {
461 int value =
462 DialogBox(
463 hinst,
464 MAKEINTRESOURCE(IDD_VOLUME),
465 hwnd, QCProc);
466
467 if (value == -2)
468 break;
469 break;
470 }
471 case IDM_ABOUT:
472 {
473 int value = DialogBox(hinst, MAKEINTRESOURCE(IDD_ABOUT), hwnd, QCProc);
474 if (value == -7)
475 break;
476 break;
477 }
478
479 } // LOWORD(wParam)
480 return 0;
481
482 case WM_DROPFILES:
483 hdrop = (HANDLE)wParam;
484 HandleDrag(hwnd, hdrop);
485 return 0;
486
487 case WM_DESTROY:
488 decoding_done = 1;
489 PostQuitMessage(0);
490 return 0;
491 }
492
493 return DefWindowProc(hwnd, message, wParam, lParam);
494 }
495
496 /*
497 * Encode parameters dialog procedures.
498 */
499
500 BOOL CALLBACK QCProc(HWND hwndDlg, UINT message,
501 WPARAM wParam, LPARAM lParam)
502 {
503 switch (message)
504 {
505 case WM_INITDIALOG:
506
507 if(iniSettings.decode_mode == 0)
508 {
509 CheckDlgButton(hwndDlg,IDC_PLAYBACK,TRUE);
510 CheckDlgButton(hwndDlg,IDC_WAV,TRUE);
511 if(iniSettings.outputFormat != 1
512 && iniSettings.outputFormat != 5
513 && iniSettings.outputFormat != 6
514 && iniSettings.outputFormat != 7
515 && iniSettings.outputFormat != 8)
516 CheckDlgButton(hwndDlg,IDC_16BIT,TRUE);
517 else if(iniSettings.outputFormat == 1)
518 CheckDlgButton(hwndDlg,IDC_16BIT,TRUE);
519 else if(iniSettings.outputFormat == 5)
520 CheckDlgButton(hwndDlg,IDC_16BIT_DITHER,TRUE);
521 else if(iniSettings.outputFormat == 6)
522 CheckDlgButton(hwndDlg,IDC_16BIT_L_SHAPE,TRUE);
523 else if(iniSettings.outputFormat == 7)
524 CheckDlgButton(hwndDlg,IDC_16BIT_M_SHAPE,TRUE);
525 else if(iniSettings.outputFormat == 8)
526 CheckDlgButton(hwndDlg,IDC_16BIT_H_SHAPE,TRUE);
527 CheckDlgButton(hwndDlg,IDC_WAV,TRUE);
528 EnableWindow(GetDlgItem(hwndDlg, IDC_AIFF), FALSE);
529 EnableWindow(GetDlgItem(hwndDlg, IDC_SUNAU), FALSE);
530 EnableWindow(GetDlgItem(hwndDlg, IDC_DECAU), FALSE);
531 EnableWindow(GetDlgItem(hwndDlg, IDC_24BIT), FALSE);
532 EnableWindow(GetDlgItem(hwndDlg, IDC_32BIT), FALSE);
533 EnableWindow(GetDlgItem(hwndDlg, IDC_FLOATS), FALSE);
534 EnableWindow(GetDlgItem(hwndDlg, IDC_16BIT), TRUE);
535 EnableWindow(GetDlgItem(hwndDlg, IDC_16BIT_DITHER), TRUE);
536 }
537 else if(iniSettings.decode_mode == 1)
538 {
539 CheckDlgButton(hwndDlg,IDC_PLAYBACK,FALSE);
540 if(iniSettings.outputFormat == 1)
541 CheckDlgButton(hwndDlg,IDC_16BIT,TRUE);
542 else if(iniSettings.outputFormat == 2)
543 CheckDlgButton(hwndDlg,IDC_24BIT,TRUE);
544 else if(iniSettings.outputFormat == 3)
545 CheckDlgButton(hwndDlg,IDC_32BIT,TRUE);
546 else if(iniSettings.outputFormat == 4)
547 CheckDlgButton(hwndDlg,IDC_FLOATS,TRUE);
548 else if(iniSettings.outputFormat == 5)
549 CheckDlgButton(hwndDlg,IDC_16BIT_DITHER,TRUE);
550 else if(iniSettings.outputFormat == 6)
551 CheckDlgButton(hwndDlg,IDC_16BIT_L_SHAPE,TRUE);
552 else if(iniSettings.outputFormat == 7)
553 CheckDlgButton(hwndDlg,IDC_16BIT_M_SHAPE,TRUE);
554 else if(iniSettings.outputFormat == 8)
555 CheckDlgButton(hwndDlg,IDC_16BIT_H_SHAPE,TRUE);
556
557 if(iniSettings.fileType == 1)
558 CheckDlgButton(hwndDlg,IDC_WAV,TRUE);
559 else if(iniSettings.fileType == 2)
560 CheckDlgButton(hwndDlg,IDC_AIFF,TRUE);
561 else if(iniSettings.fileType == 3)
562 CheckDlgButton(hwndDlg,IDC_SUNAU,TRUE);
563 else if(iniSettings.fileType == 4)
564 CheckDlgButton(hwndDlg,IDC_DECAU,TRUE);
565 }
566
567 if(iniSettings.object_type == 0)
568 CheckDlgButton(hwndDlg,IDC_MAIN,TRUE);
569 else if(iniSettings.object_type == 1)
570 CheckDlgButton(hwndDlg,IDC_LC,TRUE);
571 else if(iniSettings.object_type == 3)
572 CheckDlgButton(hwndDlg,IDC_LTP,TRUE);
573 else if(iniSettings.object_type == 23)
574 CheckDlgButton(hwndDlg,IDC_LD,TRUE);
575 break;
576
577 case WM_CLOSE:
578 EndDialog(hwndDlg, -1);
579 break;
580
581 case WM_COMMAND:
582 switch (LOWORD(wParam))
583 {
584 case IDC_BUTTON1:
585 {
586 if (IsDlgButtonChecked(hwndDlg, IDC_PLAYBACK) == BST_CHECKED)
587 set_decode_mode(0); // Playback
588 else if (IsDlgButtonChecked(hwndDlg, IDC_DECODE) == BST_CHECKED)
589 set_decode_mode(1); // Decode to File
590
591 if (IsDlgButtonChecked(hwndDlg, IDC_WAV) == BST_CHECKED)
592 set_fileType(1); // Microsoft WAV
593 else if (IsDlgButtonChecked(hwndDlg, IDC_AIFF) == BST_CHECKED)
594 set_fileType(2); // Apple/SGI AIFF
595 else if (IsDlgButtonChecked(hwndDlg, IDC_SUNAU) == BST_CHECKED)
596 set_fileType(3); // Sun/NeXT AU
597 else if (IsDlgButtonChecked(hwndDlg, IDC_DECAU) == BST_CHECKED)
598 set_fileType(4); // DEC AU
599
600 if (IsDlgButtonChecked(hwndDlg, IDC_16BIT) == BST_CHECKED)
601 set_outputFormat(1); // 16 bit PCM
602 else if (IsDlgButtonChecked(hwndDlg, IDC_24BIT) == BST_CHECKED)
603 set_outputFormat(2); // 24 bit PCM
604 else if (IsDlgButtonChecked(hwndDlg, IDC_32BIT) == BST_CHECKED)
605 set_outputFormat(3); // 32 bit PCM
606 else if (IsDlgButtonChecked(hwndDlg, IDC_FLOATS) == BST_CHECKED)
607 set_outputFormat(4); // 32 bit floats
608 else if (IsDlgButtonChecked(hwndDlg, IDC_16BIT_DITHER) == BST_CHECKED)
609 set_outputFormat(5); // 16 bit PCM dithered
610 else if (IsDlgButtonChecked(hwndDlg, IDC_16BIT_L_SHAPE) == BST_CHECKED)
611 set_outputFormat(6); // dithered LIGHT noise shaping
612 else if (IsDlgButtonChecked(hwndDlg, IDC_16BIT_M_SHAPE) == BST_CHECKED)
613 set_outputFormat(7); // dithered MEDIUM noise shaping
614 else if (IsDlgButtonChecked(hwndDlg, IDC_16BIT_H_SHAPE) == BST_CHECKED)
615 set_outputFormat(8); // dithered HEAVY noise shaping
616
617 if (IsDlgButtonChecked(hwndDlg, IDC_MAIN) == BST_CHECKED)
618 set_object_type(0); // Main
619 else if (IsDlgButtonChecked(hwndDlg, IDC_LC) == BST_CHECKED)
620 set_object_type(1); // Low Complexity
621 else if (IsDlgButtonChecked(hwndDlg, IDC_LTP) == BST_CHECKED)
622 set_object_type(3); // Long Term Prediction
623 else if (IsDlgButtonChecked(hwndDlg, IDC_LD) == BST_CHECKED)
624 set_object_type(23); // Low Delay
625
626 EndDialog(hwndDlg, -2);
627 return TRUE;
628 }
629 case IDC_BUTTON6:
630 EndDialog(hwndDlg, -7);
631 return TRUE;
632
633 case IDC_PLAYBACK:
634 CheckDlgButton(hwndDlg,IDC_WAV,TRUE);
635 EnableWindow(GetDlgItem(hwndDlg, IDC_AIFF), FALSE);
636 EnableWindow(GetDlgItem(hwndDlg, IDC_SUNAU), FALSE);
637 EnableWindow(GetDlgItem(hwndDlg, IDC_DECAU), FALSE);
638 EnableWindow(GetDlgItem(hwndDlg, IDC_24BIT), FALSE);
639 CheckDlgButton(hwndDlg,IDC_24BIT,FALSE);
640 EnableWindow(GetDlgItem(hwndDlg, IDC_32BIT), FALSE);
641 CheckDlgButton(hwndDlg,IDC_32BIT,FALSE);
642 EnableWindow(GetDlgItem(hwndDlg, IDC_FLOATS), FALSE);
643 CheckDlgButton(hwndDlg,IDC_FLOATS,FALSE);
644 EnableWindow(GetDlgItem(hwndDlg, IDC_16BIT), TRUE);
645 EnableWindow(GetDlgItem(hwndDlg, IDC_16BIT_DITHER), TRUE);
646 EnableWindow(GetDlgItem(hwndDlg, IDC_16BIT_L_SHAPE), TRUE);
647 EnableWindow(GetDlgItem(hwndDlg, IDC_16BIT_M_SHAPE), TRUE);
648 EnableWindow(GetDlgItem(hwndDlg, IDC_16BIT_H_SHAPE), TRUE);
649 if (IsDlgButtonChecked(hwndDlg, IDC_16BIT_DITHER) != BST_CHECKED
650 && IsDlgButtonChecked(hwndDlg, IDC_16BIT_L_SHAPE) != BST_CHECKED
651 && IsDlgButtonChecked(hwndDlg, IDC_16BIT_M_SHAPE) != BST_CHECKED
652 && IsDlgButtonChecked(hwndDlg, IDC_16BIT_H_SHAPE) != BST_CHECKED)
653 CheckDlgButton(hwndDlg,IDC_16BIT,TRUE);
654 break;
655 case IDC_DECODE:
656 EnableWindow(GetDlgItem(hwndDlg, IDC_AIFF), FALSE);
657 EnableWindow(GetDlgItem(hwndDlg, IDC_SUNAU), FALSE);
658 EnableWindow(GetDlgItem(hwndDlg, IDC_DECAU), FALSE);
659 EnableWindow(GetDlgItem(hwndDlg, IDC_24BIT), TRUE);
660 EnableWindow(GetDlgItem(hwndDlg, IDC_32BIT), TRUE);
661 EnableWindow(GetDlgItem(hwndDlg, IDC_FLOATS), TRUE);
662 EnableWindow(GetDlgItem(hwndDlg, IDC_16BIT), TRUE);
663 EnableWindow(GetDlgItem(hwndDlg, IDC_16BIT_DITHER), TRUE);
664 EnableWindow(GetDlgItem(hwndDlg, IDC_16BIT_L_SHAPE), TRUE);
665 EnableWindow(GetDlgItem(hwndDlg, IDC_16BIT_M_SHAPE), TRUE);
666 EnableWindow(GetDlgItem(hwndDlg, IDC_16BIT_H_SHAPE), TRUE);
667 break;
668 default:
669 break;
670 }
671 }
672 return FALSE;
673 }
674
675
676 /******************************** end of main.c ********************************/
677
+0
-124
aacDECdrop/misc.c less more
0 /*
1 * function: Miscellaneous functions for aacDECdrop
2 *
3 * This program is distributed under the GNU General Public License, version 2.
4 * A copy of this license is included with this source.
5 *
6 * Copyright (C) 2002 John Edwards
7 */
8
9 #include <stdlib.h>
10 #include <stdio.h>
11 #include <string.h>
12 #include <windows.h>
13 #include "misc.h"
14
15 static char *_filename;
16 void (*error_handler)(const char *fmt, ...) = error_dialog;
17
18 /*
19 * Set the current input file name.
20 */
21
22 void set_filename(char *filename)
23 {
24 _filename = filename;
25 }
26
27 /*
28 * Display an error dialog, possibly adding system error information.
29 */
30
31 void error_dialog(const char *fmt, ...)
32 {
33 va_list ap;
34 char msgbuf[1024];
35 char *bufp = msgbuf;
36
37 /* A really rough sanity check to protect against blatant buffer overrun */
38 if (strlen(fmt) > 750)
39 {
40 sprintf(msgbuf, "%s %s", "<buffer overflow> ", fmt);
41 }
42 else
43 {
44 if (_filename != NULL && strlen(_filename) < 255)
45 {
46 sprintf(msgbuf, "%s: ", _filename);
47 bufp += strlen(msgbuf);
48 }
49
50 va_start(ap, fmt);
51
52 vsprintf(bufp, fmt, ap);
53
54 va_end(ap);
55
56 if (errno != 0)
57 {
58 bufp = msgbuf + strlen(msgbuf);
59 sprintf(bufp, " error is %s (%d)", strerror(errno), errno);
60 errno = 0;
61 }
62 }
63
64 MessageBox(NULL, msgbuf, "Error", 0);
65 }
66
67 void log_error(const char *fmt, ...)
68 {
69 va_list ap;
70 FILE *fp;
71 char msgbuf[1024];
72 char *bufp = msgbuf;
73
74 /* A really rough sanity check to protect against blatant buffer overrun */
75 if (strlen(fmt) > 750)
76 {
77 sprintf(msgbuf, "%s %s", "<buffer overflow> ", fmt);
78 }
79 else
80 {
81 if (_filename != NULL && strlen(_filename) < 255)
82 {
83 sprintf(msgbuf, "%s : ", _filename);
84 bufp += strlen(msgbuf);
85 }
86
87 va_start(ap, fmt);
88
89 vsprintf(bufp, fmt, ap);
90
91 va_end(ap);
92
93 if (errno != 0)
94 {
95 bufp = msgbuf + strlen(msgbuf);
96 sprintf(bufp, " error is: %s (%d)", strerror(errno), errno);
97 errno = 0;
98 }
99 }
100
101 va_start(ap, fmt);
102
103 if ((fp = fopen("oggdrop.log", "a")) == (FILE *)NULL)
104 return;
105
106 fprintf(fp, "%s\n", msgbuf);
107 fflush(fp);
108 fclose(fp);
109
110 va_end(ap);
111 }
112
113 void set_use_dialogs(int use_dialogs)
114 {
115 if (!use_dialogs)
116 error_handler = error_dialog;
117 else
118 error_handler = log_error;
119 }
120
121
122 /******************************** end of misc.c ********************************/
123
+0
-25
aacDECdrop/misc.h less more
0 /*
1 * function: Header file for misc.c
2 *
3 * This program is distributed under the GNU General Public License, version 2.
4 * A copy of this license is included with this source.
5 *
6 * Copyright (C) 2002 John Edwards
7 */
8
9 #ifndef __MISC_H__
10 #define __MISC_H__
11
12 #include "decode.h"
13 #include <stdio.h>
14
15 void set_filename(char *filename);
16
17 extern void error_dialog(const char *fmt, ...);
18 extern void log_error(const char *fmt, ...);
19 extern void set_use_dialogs(int use_dialogs);
20 extern void (*error_handler)(const char *fmt, ...);
21
22
23 #endif /* __MISC_H__ */
24
aacDECdrop/resource/AAC01.bmp less more
Binary diff not shown
aacDECdrop/resource/AAC01.ico less more
Binary diff not shown
aacDECdrop/resource/AAC02.bmp less more
Binary diff not shown
aacDECdrop/resource/AAC03.bmp less more
Binary diff not shown
aacDECdrop/resource/AAC04.bmp less more
Binary diff not shown
aacDECdrop/resource/AAC05.bmp less more
Binary diff not shown
aacDECdrop/resource/AAC06.bmp less more
Binary diff not shown
aacDECdrop/resource/AAC07.bmp less more
Binary diff not shown
aacDECdrop/resource/AAC08.bmp less more
Binary diff not shown
+0
-54
aacDECdrop/resource.h less more
0 //{{NO_DEPENDENCIES}}
1 // Microsoft Visual C++ generated include file.
2 // Used by Script.rc
3 //
4 #define IDD_VOLUME 101
5 #define IDD_ABOUT 102
6 #define IDB_TF01 112
7 #define IDB_TF02 113
8 #define IDB_TF03 114
9 #define IDB_TF04 115
10 #define IDB_TF05 116
11 #define IDB_TF06 117
12 #define IDB_TF07 118
13 #define IDB_TF08 119
14 #define IDR_MENU1 124
15 #define IDI_ICON1 130
16 #define IDC_BUTTON1 1001
17 #define IDC_PLAYBACK 1005
18 #define IDC_DECODE 1008
19 #define IDC_WAV 1014
20 #define IDC_AIFF 1015
21 #define IDC_SUNAU 1016
22 #define IDC_DECAU 1017
23 #define IDC_16BIT 1018
24 #define IDC_24BIT 1020
25 #define IDC_32BIT 1021
26 #define IDC_FLOATS 1022
27 #define IDC_MAIN 1023
28 #define IDC_LC 1024
29 #define IDC_LTP 1025
30 #define IDC_LD 1026
31 #define IDC_16BIT_DITHER 1027
32 #define IDC_16BIT_L_SHAPE 1028
33 #define IDC_16BIT_M_SHAPE 1029
34 #define IDC_16BIT_H_SHAPE 1030
35 #define IDC_BUTTON6 1033
36 #define IDM_VOLUME 40005
37 #define IDM_STOP_DEC 40006
38 #define IDM_ABOUT 40007
39 #define IDM_LOGERR 40008
40 #define IDM_ONTOP 40015
41 #define IDM_QUIT 40019
42
43 // Next default values for new objects
44 //
45 #ifdef APSTUDIO_INVOKED
46 #ifndef APSTUDIO_READONLY_SYMBOLS
47 #define _APS_NO_MFC 1
48 #define _APS_NEXT_RESOURCE_VALUE 134
49 #define _APS_NEXT_COMMAND_VALUE 40018
50 #define _APS_NEXT_CONTROL_VALUE 1031
51 #define _APS_NEXT_SYMED_VALUE 101
52 #endif
53 #endif
+0
-190
aacDECdrop/wave_out.c less more
0 /*
1 * function: Support for playing wave files - Win32 - ONLY
2 *
3 * This program is distributed under the GNU General Public License, version 2.
4 * A copy of this license is included with this source.
5 *
6 * Copyright (C) 2002 John Edwards
7 */
8
9 #include <string.h>
10 #include <errno.h>
11 #include "wave_out.h"
12
13 #define MAX_WAVEBLOCKS 32
14
15
16 static CRITICAL_SECTION cs;
17 static HWAVEOUT dev = NULL;
18 static int ScheduledBlocks = 0;
19 static int PlayedWaveHeadersCount = 0; // free index
20 static WAVEHDR* PlayedWaveHeaders [MAX_WAVEBLOCKS];
21
22
23 static int
24 Box ( const char* msg )
25 {
26 MessageBox ( NULL, msg, "Error Message . . .", MB_OK | MB_ICONEXCLAMATION );
27 return -1;
28 }
29
30
31 /*
32 * This function registers already played WAVE chunks. Freeing is done by free_memory(),
33 */
34
35 static void CALLBACK
36 wave_callback ( HWAVE hWave, UINT uMsg, DWORD dwInstance, DWORD dwParam1, DWORD dwParam2 )
37 {
38 if ( uMsg == WOM_DONE )
39 {
40 EnterCriticalSection ( &cs );
41 PlayedWaveHeaders [PlayedWaveHeadersCount++] = (WAVEHDR*) dwParam1;
42 LeaveCriticalSection ( &cs );
43 }
44 }
45
46
47 static void
48 free_memory ( void )
49 {
50 WAVEHDR* wh;
51 HGLOBAL hg;
52
53 EnterCriticalSection ( &cs );
54 wh = PlayedWaveHeaders [--PlayedWaveHeadersCount];
55 ScheduledBlocks--; // decrease the number of USED blocks
56 LeaveCriticalSection ( &cs );
57
58 waveOutUnprepareHeader ( dev, wh, sizeof (WAVEHDR) );
59
60 hg = GlobalHandle ( wh -> lpData ); // Deallocate the buffer memory
61 GlobalUnlock (hg);
62 GlobalFree (hg);
63
64 hg = GlobalHandle ( wh ); // Deallocate the header memory
65 GlobalUnlock (hg);
66 GlobalFree (hg);
67 }
68
69
70 Int
71 Set_WIN_Params ( FILE_T dummyFile ,
72 Ldouble SampleFreq,
73 Uint BitsPerSample,
74 Uint Channels )
75 {
76 WAVEFORMATEX outFormat;
77 UINT deviceID = WAVE_MAPPER;
78
79 (void) dummyFile;
80
81 if ( waveOutGetNumDevs () == 0 )
82 return Box ( "No audio device present." );
83
84 outFormat.wFormatTag = WAVE_FORMAT_PCM;
85 outFormat.wBitsPerSample = BitsPerSample;
86 outFormat.nChannels = Channels;
87 outFormat.nSamplesPerSec = (unsigned long)(SampleFreq);
88 outFormat.nBlockAlign = outFormat.nChannels * outFormat.wBitsPerSample/8;
89 outFormat.nAvgBytesPerSec = outFormat.nSamplesPerSec * outFormat.nChannels * outFormat.wBitsPerSample/8;
90
91 switch ( waveOutOpen ( &dev, deviceID, &outFormat, (DWORD)wave_callback, 0, CALLBACK_FUNCTION ) )
92 {
93 case MMSYSERR_ALLOCATED: return Box ( "Device is already open." );
94 case MMSYSERR_BADDEVICEID: return Box ( "The specified device is out of range." );
95 case MMSYSERR_NODRIVER: return Box ( "There is no audio driver in this system." );
96 case MMSYSERR_NOMEM: return Box ( "Unable to allocate sound memory." );
97 case WAVERR_BADFORMAT: return Box ( "This audio format is not supported." );
98 case WAVERR_SYNC: return Box ( "The device is synchronous." );
99 default: return Box ( "Unknown media error." );
100 case MMSYSERR_NOERROR: break;
101 }
102
103 waveOutReset ( dev );
104 InitializeCriticalSection ( &cs );
105 SetPriorityClass ( GetCurrentProcess (), HIGH_PRIORITY_CLASS );
106 // SetPriorityClass ( GetCurrentProcess (), REALTIME_PRIORITY_CLASS );
107 return 0;
108 }
109
110
111 int
112 WIN_Play_Samples ( const void* data, size_t len )
113 {
114 HGLOBAL hg;
115 HGLOBAL hg2;
116 LPWAVEHDR wh;
117 void* allocptr;
118
119 do
120 {
121 while ( PlayedWaveHeadersCount > 0 ) // free used blocks ...
122 free_memory ();
123
124 if ( ScheduledBlocks < sizeof(PlayedWaveHeaders)/sizeof(*PlayedWaveHeaders) ) // wait for a free block ...
125 break;
126 Sleep (26);
127
128 } while (1);
129
130 if ( (hg2 = GlobalAlloc ( GMEM_MOVEABLE, len )) == NULL ) // allocate some memory for a copy of the buffer
131 return Box ( "GlobalAlloc failed." );
132
133 allocptr = GlobalLock (hg2);
134 CopyMemory ( allocptr, data, len ); // Here we can call any modification output functions we want....
135
136 if ( (hg = GlobalAlloc (GMEM_MOVEABLE | GMEM_ZEROINIT, sizeof (WAVEHDR))) == NULL ) // now make a header and WRITE IT!
137 return -1;
138
139 wh = GlobalLock (hg);
140 wh->dwBufferLength = len;
141 wh->lpData = allocptr;
142
143 if ( waveOutPrepareHeader ( dev, wh, sizeof (WAVEHDR)) != MMSYSERR_NOERROR )
144 {
145 GlobalUnlock (hg);
146 GlobalFree (hg);
147 return -1;
148 }
149
150 if ( waveOutWrite ( dev, wh, sizeof (WAVEHDR)) != MMSYSERR_NOERROR )
151 {
152 GlobalUnlock (hg);
153 GlobalFree (hg);
154 return -1;
155 }
156
157 EnterCriticalSection ( &cs );
158 ScheduledBlocks++;
159 LeaveCriticalSection ( &cs );
160
161 return len;
162 }
163
164
165 int
166 WIN_Audio_close ( void )
167 {
168 if ( dev != NULL )
169 {
170 while ( ScheduledBlocks > 0 )
171 {
172 Sleep (ScheduledBlocks);
173 while ( PlayedWaveHeadersCount > 0 ) // free used blocks ...
174 free_memory ();
175 }
176
177 waveOutReset (dev); // reset the device
178 waveOutClose (dev); // close the device
179 dev = NULL;
180 }
181
182 DeleteCriticalSection ( &cs );
183 ScheduledBlocks = 0;
184 return 0;
185 }
186
187
188 /******************************** end of wave_out.c ********************************/
189
+0
-50
aacDECdrop/wave_out.h less more
0 /*
1 * function: Header file for wave_out.c
2 *
3 * This program is distributed under the GNU General Public License, version 2.
4 * A copy of this license is included with this source.
5 *
6 * Copyright (C) 2002 John Edwards
7 */
8
9 #ifndef __WAVE_OUT_H__
10 #define __WAVE_OUT_H__
11
12
13 #include <stdio.h>
14 #include <windows.h>
15
16 #define Cdecl __cdecl
17 #define __attribute__(x)
18 #define sleep(__sec) Sleep ((__sec) * 1000)
19 #define inline __inline
20 #define restrict
21
22 /*
23 * constants
24 */
25
26 #define CD_SAMPLE_FREQ 44.1e3
27 #define SAMPLE_SIZE 16
28 #define SAMPLE_SIZE_STRING ""
29 #define WINAUDIO_FD ((FILE_T)-128)
30 #define FILE_T FILE*
31 #define INVALID_FILEDESC NULL
32
33 /*
34 * Simple types
35 */
36
37 typedef signed int Int; // at least -32767...+32767, fast type
38 typedef unsigned int Uint; // at least 0...65535, fast type
39 typedef long double Ldouble; // most exact floating point format
40
41 /*
42 * functions for wave_out.c
43 */
44
45 Int Set_WIN_Params ( FILE_T dummyFile , Ldouble SampleFreq, Uint BitsPerSample, Uint Channels );
46 int WIN_Play_Samples ( const void* buff, size_t len );
47 int WIN_Audio_close ( void );
48
49 #endif /* __WAVE_OUT_H__ */
0 # generated automatically by aclocal 1.16.2 -*- Autoconf -*-
1
2 # Copyright (C) 1996-2020 Free Software Foundation, Inc.
3
4 # This file is free software; the Free Software Foundation
5 # gives unlimited permission to copy and/or distribute it,
6 # with or without modifications, as long as this notice is preserved.
7
8 # This program is distributed in the hope that it will be useful,
9 # but WITHOUT ANY WARRANTY, to the extent permitted by law; without
10 # even the implied warranty of MERCHANTABILITY or FITNESS FOR A
11 # PARTICULAR PURPOSE.
12
13 m4_ifndef([AC_CONFIG_MACRO_DIRS], [m4_defun([_AM_CONFIG_MACRO_DIRS], [])m4_defun([AC_CONFIG_MACRO_DIRS], [_AM_CONFIG_MACRO_DIRS($@)])])
14 m4_ifndef([AC_AUTOCONF_VERSION],
15 [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
16 m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.69],,
17 [m4_warning([this file was generated for autoconf 2.69.
18 You have another version of autoconf. It may work, but is not guaranteed to.
19 If you have problems, you may need to regenerate the build system entirely.
20 To do so, use the procedure documented by the package, typically 'autoreconf'.])])
21
22 # libtool.m4 - Configure libtool for the host system. -*-Autoconf-*-
23 #
24 # Copyright (C) 1996-2001, 2003-2015 Free Software Foundation, Inc.
25 # Written by Gordon Matzigkeit, 1996
26 #
27 # This file is free software; the Free Software Foundation gives
28 # unlimited permission to copy and/or distribute it, with or without
29 # modifications, as long as this notice is preserved.
30
31 m4_define([_LT_COPYING], [dnl
32 # Copyright (C) 2014 Free Software Foundation, Inc.
33 # This is free software; see the source for copying conditions. There is NO
34 # warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
35
36 # GNU Libtool is free software; you can redistribute it and/or modify
37 # it under the terms of the GNU General Public License as published by
38 # the Free Software Foundation; either version 2 of of the License, or
39 # (at your option) any later version.
40 #
41 # As a special exception to the GNU General Public License, if you
42 # distribute this file as part of a program or library that is built
43 # using GNU Libtool, you may include this file under the same
44 # distribution terms that you use for the rest of that program.
45 #
46 # GNU Libtool is distributed in the hope that it will be useful, but
47 # WITHOUT ANY WARRANTY; without even the implied warranty of
48 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
49 # GNU General Public License for more details.
50 #
51 # You should have received a copy of the GNU General Public License
52 # along with this program. If not, see <http://www.gnu.org/licenses/>.
53 ])
54
55 # serial 58 LT_INIT
56
57
58 # LT_PREREQ(VERSION)
59 # ------------------
60 # Complain and exit if this libtool version is less that VERSION.
61 m4_defun([LT_PREREQ],
62 [m4_if(m4_version_compare(m4_defn([LT_PACKAGE_VERSION]), [$1]), -1,
63 [m4_default([$3],
64 [m4_fatal([Libtool version $1 or higher is required],
65 63)])],
66 [$2])])
67
68
69 # _LT_CHECK_BUILDDIR
70 # ------------------
71 # Complain if the absolute build directory name contains unusual characters
72 m4_defun([_LT_CHECK_BUILDDIR],
73 [case `pwd` in
74 *\ * | *\ *)
75 AC_MSG_WARN([Libtool does not cope well with whitespace in `pwd`]) ;;
76 esac
77 ])
78
79
80 # LT_INIT([OPTIONS])
81 # ------------------
82 AC_DEFUN([LT_INIT],
83 [AC_PREREQ([2.62])dnl We use AC_PATH_PROGS_FEATURE_CHECK
84 AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl
85 AC_BEFORE([$0], [LT_LANG])dnl
86 AC_BEFORE([$0], [LT_OUTPUT])dnl
87 AC_BEFORE([$0], [LTDL_INIT])dnl
88 m4_require([_LT_CHECK_BUILDDIR])dnl
89
90 dnl Autoconf doesn't catch unexpanded LT_ macros by default:
91 m4_pattern_forbid([^_?LT_[A-Z_]+$])dnl
92 m4_pattern_allow([^(_LT_EOF|LT_DLGLOBAL|LT_DLLAZY_OR_NOW|LT_MULTI_MODULE)$])dnl
93 dnl aclocal doesn't pull ltoptions.m4, ltsugar.m4, or ltversion.m4
94 dnl unless we require an AC_DEFUNed macro:
95 AC_REQUIRE([LTOPTIONS_VERSION])dnl
96 AC_REQUIRE([LTSUGAR_VERSION])dnl
97 AC_REQUIRE([LTVERSION_VERSION])dnl
98 AC_REQUIRE([LTOBSOLETE_VERSION])dnl
99 m4_require([_LT_PROG_LTMAIN])dnl
100
101 _LT_SHELL_INIT([SHELL=${CONFIG_SHELL-/bin/sh}])
102
103 dnl Parse OPTIONS
104 _LT_SET_OPTIONS([$0], [$1])
105
106 # This can be used to rebuild libtool when needed
107 LIBTOOL_DEPS=$ltmain
108
109 # Always use our own libtool.
110 LIBTOOL='$(SHELL) $(top_builddir)/libtool'
111 AC_SUBST(LIBTOOL)dnl
112
113 _LT_SETUP
114
115 # Only expand once:
116 m4_define([LT_INIT])
117 ])# LT_INIT
118
119 # Old names:
120 AU_ALIAS([AC_PROG_LIBTOOL], [LT_INIT])
121 AU_ALIAS([AM_PROG_LIBTOOL], [LT_INIT])
122 dnl aclocal-1.4 backwards compatibility:
123 dnl AC_DEFUN([AC_PROG_LIBTOOL], [])
124 dnl AC_DEFUN([AM_PROG_LIBTOOL], [])
125
126
127 # _LT_PREPARE_CC_BASENAME
128 # -----------------------
129 m4_defun([_LT_PREPARE_CC_BASENAME], [
130 # Calculate cc_basename. Skip known compiler wrappers and cross-prefix.
131 func_cc_basename ()
132 {
133 for cc_temp in @S|@*""; do
134 case $cc_temp in
135 compile | *[[\\/]]compile | ccache | *[[\\/]]ccache ) ;;
136 distcc | *[[\\/]]distcc | purify | *[[\\/]]purify ) ;;
137 \-*) ;;
138 *) break;;
139 esac
140 done
141 func_cc_basename_result=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"`
142 }
143 ])# _LT_PREPARE_CC_BASENAME
144
145
146 # _LT_CC_BASENAME(CC)
147 # -------------------
148 # It would be clearer to call AC_REQUIREs from _LT_PREPARE_CC_BASENAME,
149 # but that macro is also expanded into generated libtool script, which
150 # arranges for $SED and $ECHO to be set by different means.
151 m4_defun([_LT_CC_BASENAME],
152 [m4_require([_LT_PREPARE_CC_BASENAME])dnl
153 AC_REQUIRE([_LT_DECL_SED])dnl
154 AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])dnl
155 func_cc_basename $1
156 cc_basename=$func_cc_basename_result
157 ])
158
159
160 # _LT_FILEUTILS_DEFAULTS
161 # ----------------------
162 # It is okay to use these file commands and assume they have been set
163 # sensibly after 'm4_require([_LT_FILEUTILS_DEFAULTS])'.
164 m4_defun([_LT_FILEUTILS_DEFAULTS],
165 [: ${CP="cp -f"}
166 : ${MV="mv -f"}
167 : ${RM="rm -f"}
168 ])# _LT_FILEUTILS_DEFAULTS
169
170
171 # _LT_SETUP
172 # ---------
173 m4_defun([_LT_SETUP],
174 [AC_REQUIRE([AC_CANONICAL_HOST])dnl
175 AC_REQUIRE([AC_CANONICAL_BUILD])dnl
176 AC_REQUIRE([_LT_PREPARE_SED_QUOTE_VARS])dnl
177 AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])dnl
178
179 _LT_DECL([], [PATH_SEPARATOR], [1], [The PATH separator for the build system])dnl
180 dnl
181 _LT_DECL([], [host_alias], [0], [The host system])dnl
182 _LT_DECL([], [host], [0])dnl
183 _LT_DECL([], [host_os], [0])dnl
184 dnl
185 _LT_DECL([], [build_alias], [0], [The build system])dnl
186 _LT_DECL([], [build], [0])dnl
187 _LT_DECL([], [build_os], [0])dnl
188 dnl
189 AC_REQUIRE([AC_PROG_CC])dnl
190 AC_REQUIRE([LT_PATH_LD])dnl
191 AC_REQUIRE([LT_PATH_NM])dnl
192 dnl
193 AC_REQUIRE([AC_PROG_LN_S])dnl
194 test -z "$LN_S" && LN_S="ln -s"
195 _LT_DECL([], [LN_S], [1], [Whether we need soft or hard links])dnl
196 dnl
197 AC_REQUIRE([LT_CMD_MAX_LEN])dnl
198 _LT_DECL([objext], [ac_objext], [0], [Object file suffix (normally "o")])dnl
199 _LT_DECL([], [exeext], [0], [Executable file suffix (normally "")])dnl
200 dnl
201 m4_require([_LT_FILEUTILS_DEFAULTS])dnl
202 m4_require([_LT_CHECK_SHELL_FEATURES])dnl
203 m4_require([_LT_PATH_CONVERSION_FUNCTIONS])dnl
204 m4_require([_LT_CMD_RELOAD])dnl
205 m4_require([_LT_CHECK_MAGIC_METHOD])dnl
206 m4_require([_LT_CHECK_SHAREDLIB_FROM_LINKLIB])dnl
207 m4_require([_LT_CMD_OLD_ARCHIVE])dnl
208 m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
209 m4_require([_LT_WITH_SYSROOT])dnl
210 m4_require([_LT_CMD_TRUNCATE])dnl
211
212 _LT_CONFIG_LIBTOOL_INIT([
213 # See if we are running on zsh, and set the options that allow our
214 # commands through without removal of \ escapes INIT.
215 if test -n "\${ZSH_VERSION+set}"; then
216 setopt NO_GLOB_SUBST
217 fi
218 ])
219 if test -n "${ZSH_VERSION+set}"; then
220 setopt NO_GLOB_SUBST
221 fi
222
223 _LT_CHECK_OBJDIR
224
225 m4_require([_LT_TAG_COMPILER])dnl
226
227 case $host_os in
228 aix3*)
229 # AIX sometimes has problems with the GCC collect2 program. For some
230 # reason, if we set the COLLECT_NAMES environment variable, the problems
231 # vanish in a puff of smoke.
232 if test set != "${COLLECT_NAMES+set}"; then
233 COLLECT_NAMES=
234 export COLLECT_NAMES
235 fi
236 ;;
237 esac
238
239 # Global variables:
240 ofile=libtool
241 can_build_shared=yes
242
243 # All known linkers require a '.a' archive for static linking (except MSVC,
244 # which needs '.lib').
245 libext=a
246
247 with_gnu_ld=$lt_cv_prog_gnu_ld
248
249 old_CC=$CC
250 old_CFLAGS=$CFLAGS
251
252 # Set sane defaults for various variables
253 test -z "$CC" && CC=cc
254 test -z "$LTCC" && LTCC=$CC
255 test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS
256 test -z "$LD" && LD=ld
257 test -z "$ac_objext" && ac_objext=o
258
259 _LT_CC_BASENAME([$compiler])
260
261 # Only perform the check for file, if the check method requires it
262 test -z "$MAGIC_CMD" && MAGIC_CMD=file
263 case $deplibs_check_method in
264 file_magic*)
265 if test "$file_magic_cmd" = '$MAGIC_CMD'; then
266 _LT_PATH_MAGIC
267 fi
268 ;;
269 esac
270
271 # Use C for the default configuration in the libtool script
272 LT_SUPPORTED_TAG([CC])
273 _LT_LANG_C_CONFIG
274 _LT_LANG_DEFAULT_CONFIG
275 _LT_CONFIG_COMMANDS
276 ])# _LT_SETUP
277
278
279 # _LT_PREPARE_SED_QUOTE_VARS
280 # --------------------------
281 # Define a few sed substitution that help us do robust quoting.
282 m4_defun([_LT_PREPARE_SED_QUOTE_VARS],
283 [# Backslashify metacharacters that are still active within
284 # double-quoted strings.
285 sed_quote_subst='s/\([["`$\\]]\)/\\\1/g'
286
287 # Same as above, but do not quote variable references.
288 double_quote_subst='s/\([["`\\]]\)/\\\1/g'
289
290 # Sed substitution to delay expansion of an escaped shell variable in a
291 # double_quote_subst'ed string.
292 delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g'
293
294 # Sed substitution to delay expansion of an escaped single quote.
295 delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g'
296
297 # Sed substitution to avoid accidental globbing in evaled expressions
298 no_glob_subst='s/\*/\\\*/g'
299 ])
300
301 # _LT_PROG_LTMAIN
302 # ---------------
303 # Note that this code is called both from 'configure', and 'config.status'
304 # now that we use AC_CONFIG_COMMANDS to generate libtool. Notably,
305 # 'config.status' has no value for ac_aux_dir unless we are using Automake,
306 # so we pass a copy along to make sure it has a sensible value anyway.
307 m4_defun([_LT_PROG_LTMAIN],
308 [m4_ifdef([AC_REQUIRE_AUX_FILE], [AC_REQUIRE_AUX_FILE([ltmain.sh])])dnl
309 _LT_CONFIG_LIBTOOL_INIT([ac_aux_dir='$ac_aux_dir'])
310 ltmain=$ac_aux_dir/ltmain.sh
311 ])# _LT_PROG_LTMAIN
312
313
314
315 # So that we can recreate a full libtool script including additional
316 # tags, we accumulate the chunks of code to send to AC_CONFIG_COMMANDS
317 # in macros and then make a single call at the end using the 'libtool'
318 # label.
319
320
321 # _LT_CONFIG_LIBTOOL_INIT([INIT-COMMANDS])
322 # ----------------------------------------
323 # Register INIT-COMMANDS to be passed to AC_CONFIG_COMMANDS later.
324 m4_define([_LT_CONFIG_LIBTOOL_INIT],
325 [m4_ifval([$1],
326 [m4_append([_LT_OUTPUT_LIBTOOL_INIT],
327 [$1
328 ])])])
329
330 # Initialize.
331 m4_define([_LT_OUTPUT_LIBTOOL_INIT])
332
333
334 # _LT_CONFIG_LIBTOOL([COMMANDS])
335 # ------------------------------
336 # Register COMMANDS to be passed to AC_CONFIG_COMMANDS later.
337 m4_define([_LT_CONFIG_LIBTOOL],
338 [m4_ifval([$1],
339 [m4_append([_LT_OUTPUT_LIBTOOL_COMMANDS],
340 [$1
341 ])])])
342
343 # Initialize.
344 m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS])
345
346
347 # _LT_CONFIG_SAVE_COMMANDS([COMMANDS], [INIT_COMMANDS])
348 # -----------------------------------------------------
349 m4_defun([_LT_CONFIG_SAVE_COMMANDS],
350 [_LT_CONFIG_LIBTOOL([$1])
351 _LT_CONFIG_LIBTOOL_INIT([$2])
352 ])
353
354
355 # _LT_FORMAT_COMMENT([COMMENT])
356 # -----------------------------
357 # Add leading comment marks to the start of each line, and a trailing
358 # full-stop to the whole comment if one is not present already.
359 m4_define([_LT_FORMAT_COMMENT],
360 [m4_ifval([$1], [
361 m4_bpatsubst([m4_bpatsubst([$1], [^ *], [# ])],
362 [['`$\]], [\\\&])]m4_bmatch([$1], [[!?.]$], [], [.])
363 )])
364
365
366
367
368
369 # _LT_DECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION], [IS-TAGGED?])
370 # -------------------------------------------------------------------
371 # CONFIGNAME is the name given to the value in the libtool script.
372 # VARNAME is the (base) name used in the configure script.
373 # VALUE may be 0, 1 or 2 for a computed quote escaped value based on
374 # VARNAME. Any other value will be used directly.
375 m4_define([_LT_DECL],
376 [lt_if_append_uniq([lt_decl_varnames], [$2], [, ],
377 [lt_dict_add_subkey([lt_decl_dict], [$2], [libtool_name],
378 [m4_ifval([$1], [$1], [$2])])
379 lt_dict_add_subkey([lt_decl_dict], [$2], [value], [$3])
380 m4_ifval([$4],
381 [lt_dict_add_subkey([lt_decl_dict], [$2], [description], [$4])])
382 lt_dict_add_subkey([lt_decl_dict], [$2],
383 [tagged?], [m4_ifval([$5], [yes], [no])])])
384 ])
385
386
387 # _LT_TAGDECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION])
388 # --------------------------------------------------------
389 m4_define([_LT_TAGDECL], [_LT_DECL([$1], [$2], [$3], [$4], [yes])])
390
391
392 # lt_decl_tag_varnames([SEPARATOR], [VARNAME1...])
393 # ------------------------------------------------
394 m4_define([lt_decl_tag_varnames],
395 [_lt_decl_filter([tagged?], [yes], $@)])
396
397
398 # _lt_decl_filter(SUBKEY, VALUE, [SEPARATOR], [VARNAME1..])
399 # ---------------------------------------------------------
400 m4_define([_lt_decl_filter],
401 [m4_case([$#],
402 [0], [m4_fatal([$0: too few arguments: $#])],
403 [1], [m4_fatal([$0: too few arguments: $#: $1])],
404 [2], [lt_dict_filter([lt_decl_dict], [$1], [$2], [], lt_decl_varnames)],
405 [3], [lt_dict_filter([lt_decl_dict], [$1], [$2], [$3], lt_decl_varnames)],
406 [lt_dict_filter([lt_decl_dict], $@)])[]dnl
407 ])
408
409
410 # lt_decl_quote_varnames([SEPARATOR], [VARNAME1...])
411 # --------------------------------------------------
412 m4_define([lt_decl_quote_varnames],
413 [_lt_decl_filter([value], [1], $@)])
414
415
416 # lt_decl_dquote_varnames([SEPARATOR], [VARNAME1...])
417 # ---------------------------------------------------
418 m4_define([lt_decl_dquote_varnames],
419 [_lt_decl_filter([value], [2], $@)])
420
421
422 # lt_decl_varnames_tagged([SEPARATOR], [VARNAME1...])
423 # ---------------------------------------------------
424 m4_define([lt_decl_varnames_tagged],
425 [m4_assert([$# <= 2])dnl
426 _$0(m4_quote(m4_default([$1], [[, ]])),
427 m4_ifval([$2], [[$2]], [m4_dquote(lt_decl_tag_varnames)]),
428 m4_split(m4_normalize(m4_quote(_LT_TAGS)), [ ]))])
429 m4_define([_lt_decl_varnames_tagged],
430 [m4_ifval([$3], [lt_combine([$1], [$2], [_], $3)])])
431
432
433 # lt_decl_all_varnames([SEPARATOR], [VARNAME1...])
434 # ------------------------------------------------
435 m4_define([lt_decl_all_varnames],
436 [_$0(m4_quote(m4_default([$1], [[, ]])),
437 m4_if([$2], [],
438 m4_quote(lt_decl_varnames),
439 m4_quote(m4_shift($@))))[]dnl
440 ])
441 m4_define([_lt_decl_all_varnames],
442 [lt_join($@, lt_decl_varnames_tagged([$1],
443 lt_decl_tag_varnames([[, ]], m4_shift($@))))dnl
444 ])
445
446
447 # _LT_CONFIG_STATUS_DECLARE([VARNAME])
448 # ------------------------------------
449 # Quote a variable value, and forward it to 'config.status' so that its
450 # declaration there will have the same value as in 'configure'. VARNAME
451 # must have a single quote delimited value for this to work.
452 m4_define([_LT_CONFIG_STATUS_DECLARE],
453 [$1='`$ECHO "$][$1" | $SED "$delay_single_quote_subst"`'])
454
455
456 # _LT_CONFIG_STATUS_DECLARATIONS
457 # ------------------------------
458 # We delimit libtool config variables with single quotes, so when
459 # we write them to config.status, we have to be sure to quote all
460 # embedded single quotes properly. In configure, this macro expands
461 # each variable declared with _LT_DECL (and _LT_TAGDECL) into:
462 #
463 # <var>='`$ECHO "$<var>" | $SED "$delay_single_quote_subst"`'
464 m4_defun([_LT_CONFIG_STATUS_DECLARATIONS],
465 [m4_foreach([_lt_var], m4_quote(lt_decl_all_varnames),
466 [m4_n([_LT_CONFIG_STATUS_DECLARE(_lt_var)])])])
467
468
469 # _LT_LIBTOOL_TAGS
470 # ----------------
471 # Output comment and list of tags supported by the script
472 m4_defun([_LT_LIBTOOL_TAGS],
473 [_LT_FORMAT_COMMENT([The names of the tagged configurations supported by this script])dnl
474 available_tags='_LT_TAGS'dnl
475 ])
476
477
478 # _LT_LIBTOOL_DECLARE(VARNAME, [TAG])
479 # -----------------------------------
480 # Extract the dictionary values for VARNAME (optionally with TAG) and
481 # expand to a commented shell variable setting:
482 #
483 # # Some comment about what VAR is for.
484 # visible_name=$lt_internal_name
485 m4_define([_LT_LIBTOOL_DECLARE],
486 [_LT_FORMAT_COMMENT(m4_quote(lt_dict_fetch([lt_decl_dict], [$1],
487 [description])))[]dnl
488 m4_pushdef([_libtool_name],
489 m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [libtool_name])))[]dnl
490 m4_case(m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [value])),
491 [0], [_libtool_name=[$]$1],
492 [1], [_libtool_name=$lt_[]$1],
493 [2], [_libtool_name=$lt_[]$1],
494 [_libtool_name=lt_dict_fetch([lt_decl_dict], [$1], [value])])[]dnl
495 m4_ifval([$2], [_$2])[]m4_popdef([_libtool_name])[]dnl
496 ])
497
498
499 # _LT_LIBTOOL_CONFIG_VARS
500 # -----------------------
501 # Produce commented declarations of non-tagged libtool config variables
502 # suitable for insertion in the LIBTOOL CONFIG section of the 'libtool'
503 # script. Tagged libtool config variables (even for the LIBTOOL CONFIG
504 # section) are produced by _LT_LIBTOOL_TAG_VARS.
505 m4_defun([_LT_LIBTOOL_CONFIG_VARS],
506 [m4_foreach([_lt_var],
507 m4_quote(_lt_decl_filter([tagged?], [no], [], lt_decl_varnames)),
508 [m4_n([_LT_LIBTOOL_DECLARE(_lt_var)])])])
509
510
511 # _LT_LIBTOOL_TAG_VARS(TAG)
512 # -------------------------
513 m4_define([_LT_LIBTOOL_TAG_VARS],
514 [m4_foreach([_lt_var], m4_quote(lt_decl_tag_varnames),
515 [m4_n([_LT_LIBTOOL_DECLARE(_lt_var, [$1])])])])
516
517
518 # _LT_TAGVAR(VARNAME, [TAGNAME])
519 # ------------------------------
520 m4_define([_LT_TAGVAR], [m4_ifval([$2], [$1_$2], [$1])])
521
522
523 # _LT_CONFIG_COMMANDS
524 # -------------------
525 # Send accumulated output to $CONFIG_STATUS. Thanks to the lists of
526 # variables for single and double quote escaping we saved from calls
527 # to _LT_DECL, we can put quote escaped variables declarations
528 # into 'config.status', and then the shell code to quote escape them in
529 # for loops in 'config.status'. Finally, any additional code accumulated
530 # from calls to _LT_CONFIG_LIBTOOL_INIT is expanded.
531 m4_defun([_LT_CONFIG_COMMANDS],
532 [AC_PROVIDE_IFELSE([LT_OUTPUT],
533 dnl If the libtool generation code has been placed in $CONFIG_LT,
534 dnl instead of duplicating it all over again into config.status,
535 dnl then we will have config.status run $CONFIG_LT later, so it
536 dnl needs to know what name is stored there:
537 [AC_CONFIG_COMMANDS([libtool],
538 [$SHELL $CONFIG_LT || AS_EXIT(1)], [CONFIG_LT='$CONFIG_LT'])],
539 dnl If the libtool generation code is destined for config.status,
540 dnl expand the accumulated commands and init code now:
541 [AC_CONFIG_COMMANDS([libtool],
542 [_LT_OUTPUT_LIBTOOL_COMMANDS], [_LT_OUTPUT_LIBTOOL_COMMANDS_INIT])])
543 ])#_LT_CONFIG_COMMANDS
544
545
546 # Initialize.
547 m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS_INIT],
548 [
549
550 # The HP-UX ksh and POSIX shell print the target directory to stdout
551 # if CDPATH is set.
552 (unset CDPATH) >/dev/null 2>&1 && unset CDPATH
553
554 sed_quote_subst='$sed_quote_subst'
555 double_quote_subst='$double_quote_subst'
556 delay_variable_subst='$delay_variable_subst'
557 _LT_CONFIG_STATUS_DECLARATIONS
558 LTCC='$LTCC'
559 LTCFLAGS='$LTCFLAGS'
560 compiler='$compiler_DEFAULT'
561
562 # A function that is used when there is no print builtin or printf.
563 func_fallback_echo ()
564 {
565 eval 'cat <<_LTECHO_EOF
566 \$[]1
567 _LTECHO_EOF'
568 }
569
570 # Quote evaled strings.
571 for var in lt_decl_all_varnames([[ \
572 ]], lt_decl_quote_varnames); do
573 case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in
574 *[[\\\\\\\`\\"\\\$]]*)
575 eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED \\"\\\$sed_quote_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes
576 ;;
577 *)
578 eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
579 ;;
580 esac
581 done
582
583 # Double-quote double-evaled strings.
584 for var in lt_decl_all_varnames([[ \
585 ]], lt_decl_dquote_varnames); do
586 case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in
587 *[[\\\\\\\`\\"\\\$]]*)
588 eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes
589 ;;
590 *)
591 eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
592 ;;
593 esac
594 done
595
596 _LT_OUTPUT_LIBTOOL_INIT
597 ])
598
599 # _LT_GENERATED_FILE_INIT(FILE, [COMMENT])
600 # ------------------------------------
601 # Generate a child script FILE with all initialization necessary to
602 # reuse the environment learned by the parent script, and make the
603 # file executable. If COMMENT is supplied, it is inserted after the
604 # '#!' sequence but before initialization text begins. After this
605 # macro, additional text can be appended to FILE to form the body of
606 # the child script. The macro ends with non-zero status if the
607 # file could not be fully written (such as if the disk is full).
608 m4_ifdef([AS_INIT_GENERATED],
609 [m4_defun([_LT_GENERATED_FILE_INIT],[AS_INIT_GENERATED($@)])],
610 [m4_defun([_LT_GENERATED_FILE_INIT],
611 [m4_require([AS_PREPARE])]dnl
612 [m4_pushdef([AS_MESSAGE_LOG_FD])]dnl
613 [lt_write_fail=0
614 cat >$1 <<_ASEOF || lt_write_fail=1
615 #! $SHELL
616 # Generated by $as_me.
617 $2
618 SHELL=\${CONFIG_SHELL-$SHELL}
619 export SHELL
620 _ASEOF
621 cat >>$1 <<\_ASEOF || lt_write_fail=1
622 AS_SHELL_SANITIZE
623 _AS_PREPARE
624 exec AS_MESSAGE_FD>&1
625 _ASEOF
626 test 0 = "$lt_write_fail" && chmod +x $1[]dnl
627 m4_popdef([AS_MESSAGE_LOG_FD])])])# _LT_GENERATED_FILE_INIT
628
629 # LT_OUTPUT
630 # ---------
631 # This macro allows early generation of the libtool script (before
632 # AC_OUTPUT is called), incase it is used in configure for compilation
633 # tests.
634 AC_DEFUN([LT_OUTPUT],
635 [: ${CONFIG_LT=./config.lt}
636 AC_MSG_NOTICE([creating $CONFIG_LT])
637 _LT_GENERATED_FILE_INIT(["$CONFIG_LT"],
638 [# Run this file to recreate a libtool stub with the current configuration.])
639
640 cat >>"$CONFIG_LT" <<\_LTEOF
641 lt_cl_silent=false
642 exec AS_MESSAGE_LOG_FD>>config.log
643 {
644 echo
645 AS_BOX([Running $as_me.])
646 } >&AS_MESSAGE_LOG_FD
647
648 lt_cl_help="\
649 '$as_me' creates a local libtool stub from the current configuration,
650 for use in further configure time tests before the real libtool is
651 generated.
652
653 Usage: $[0] [[OPTIONS]]
654
655 -h, --help print this help, then exit
656 -V, --version print version number, then exit
657 -q, --quiet do not print progress messages
658 -d, --debug don't remove temporary files
659
660 Report bugs to <bug-libtool@gnu.org>."
661
662 lt_cl_version="\
663 m4_ifset([AC_PACKAGE_NAME], [AC_PACKAGE_NAME ])config.lt[]dnl
664 m4_ifset([AC_PACKAGE_VERSION], [ AC_PACKAGE_VERSION])
665 configured by $[0], generated by m4_PACKAGE_STRING.
666
667 Copyright (C) 2011 Free Software Foundation, Inc.
668 This config.lt script is free software; the Free Software Foundation
669 gives unlimited permision to copy, distribute and modify it."
670
671 while test 0 != $[#]
672 do
673 case $[1] in
674 --version | --v* | -V )
675 echo "$lt_cl_version"; exit 0 ;;
676 --help | --h* | -h )
677 echo "$lt_cl_help"; exit 0 ;;
678 --debug | --d* | -d )
679 debug=: ;;
680 --quiet | --q* | --silent | --s* | -q )
681 lt_cl_silent=: ;;
682
683 -*) AC_MSG_ERROR([unrecognized option: $[1]
684 Try '$[0] --help' for more information.]) ;;
685
686 *) AC_MSG_ERROR([unrecognized argument: $[1]
687 Try '$[0] --help' for more information.]) ;;
688 esac
689 shift
690 done
691
692 if $lt_cl_silent; then
693 exec AS_MESSAGE_FD>/dev/null
694 fi
695 _LTEOF
696
697 cat >>"$CONFIG_LT" <<_LTEOF
698 _LT_OUTPUT_LIBTOOL_COMMANDS_INIT
699 _LTEOF
700
701 cat >>"$CONFIG_LT" <<\_LTEOF
702 AC_MSG_NOTICE([creating $ofile])
703 _LT_OUTPUT_LIBTOOL_COMMANDS
704 AS_EXIT(0)
705 _LTEOF
706 chmod +x "$CONFIG_LT"
707
708 # configure is writing to config.log, but config.lt does its own redirection,
709 # appending to config.log, which fails on DOS, as config.log is still kept
710 # open by configure. Here we exec the FD to /dev/null, effectively closing
711 # config.log, so it can be properly (re)opened and appended to by config.lt.
712 lt_cl_success=:
713 test yes = "$silent" &&
714 lt_config_lt_args="$lt_config_lt_args --quiet"
715 exec AS_MESSAGE_LOG_FD>/dev/null
716 $SHELL "$CONFIG_LT" $lt_config_lt_args || lt_cl_success=false
717 exec AS_MESSAGE_LOG_FD>>config.log
718 $lt_cl_success || AS_EXIT(1)
719 ])# LT_OUTPUT
720
721
722 # _LT_CONFIG(TAG)
723 # ---------------
724 # If TAG is the built-in tag, create an initial libtool script with a
725 # default configuration from the untagged config vars. Otherwise add code
726 # to config.status for appending the configuration named by TAG from the
727 # matching tagged config vars.
728 m4_defun([_LT_CONFIG],
729 [m4_require([_LT_FILEUTILS_DEFAULTS])dnl
730 _LT_CONFIG_SAVE_COMMANDS([
731 m4_define([_LT_TAG], m4_if([$1], [], [C], [$1]))dnl
732 m4_if(_LT_TAG, [C], [
733 # See if we are running on zsh, and set the options that allow our
734 # commands through without removal of \ escapes.
735 if test -n "${ZSH_VERSION+set}"; then
736 setopt NO_GLOB_SUBST
737 fi
738
739 cfgfile=${ofile}T
740 trap "$RM \"$cfgfile\"; exit 1" 1 2 15
741 $RM "$cfgfile"
742
743 cat <<_LT_EOF >> "$cfgfile"
744 #! $SHELL
745 # Generated automatically by $as_me ($PACKAGE) $VERSION
746 # NOTE: Changes made to this file will be lost: look at ltmain.sh.
747
748 # Provide generalized library-building support services.
749 # Written by Gordon Matzigkeit, 1996
750
751 _LT_COPYING
752 _LT_LIBTOOL_TAGS
753
754 # Configured defaults for sys_lib_dlsearch_path munging.
755 : \${LT_SYS_LIBRARY_PATH="$configure_time_lt_sys_library_path"}
756
757 # ### BEGIN LIBTOOL CONFIG
758 _LT_LIBTOOL_CONFIG_VARS
759 _LT_LIBTOOL_TAG_VARS
760 # ### END LIBTOOL CONFIG
761
762 _LT_EOF
763
764 cat <<'_LT_EOF' >> "$cfgfile"
765
766 # ### BEGIN FUNCTIONS SHARED WITH CONFIGURE
767
768 _LT_PREPARE_MUNGE_PATH_LIST
769 _LT_PREPARE_CC_BASENAME
770
771 # ### END FUNCTIONS SHARED WITH CONFIGURE
772
773 _LT_EOF
774
775 case $host_os in
776 aix3*)
777 cat <<\_LT_EOF >> "$cfgfile"
778 # AIX sometimes has problems with the GCC collect2 program. For some
779 # reason, if we set the COLLECT_NAMES environment variable, the problems
780 # vanish in a puff of smoke.
781 if test set != "${COLLECT_NAMES+set}"; then
782 COLLECT_NAMES=
783 export COLLECT_NAMES
784 fi
785 _LT_EOF
786 ;;
787 esac
788
789 _LT_PROG_LTMAIN
790
791 # We use sed instead of cat because bash on DJGPP gets confused if
792 # if finds mixed CR/LF and LF-only lines. Since sed operates in
793 # text mode, it properly converts lines to CR/LF. This bash problem
794 # is reportedly fixed, but why not run on old versions too?
795 sed '$q' "$ltmain" >> "$cfgfile" \
796 || (rm -f "$cfgfile"; exit 1)
797
798 mv -f "$cfgfile" "$ofile" ||
799 (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")
800 chmod +x "$ofile"
801 ],
802 [cat <<_LT_EOF >> "$ofile"
803
804 dnl Unfortunately we have to use $1 here, since _LT_TAG is not expanded
805 dnl in a comment (ie after a #).
806 # ### BEGIN LIBTOOL TAG CONFIG: $1
807 _LT_LIBTOOL_TAG_VARS(_LT_TAG)
808 # ### END LIBTOOL TAG CONFIG: $1
809 _LT_EOF
810 ])dnl /m4_if
811 ],
812 [m4_if([$1], [], [
813 PACKAGE='$PACKAGE'
814 VERSION='$VERSION'
815 RM='$RM'
816 ofile='$ofile'], [])
817 ])dnl /_LT_CONFIG_SAVE_COMMANDS
818 ])# _LT_CONFIG
819
820
821 # LT_SUPPORTED_TAG(TAG)
822 # ---------------------
823 # Trace this macro to discover what tags are supported by the libtool
824 # --tag option, using:
825 # autoconf --trace 'LT_SUPPORTED_TAG:$1'
826 AC_DEFUN([LT_SUPPORTED_TAG], [])
827
828
829 # C support is built-in for now
830 m4_define([_LT_LANG_C_enabled], [])
831 m4_define([_LT_TAGS], [])
832
833
834 # LT_LANG(LANG)
835 # -------------
836 # Enable libtool support for the given language if not already enabled.
837 AC_DEFUN([LT_LANG],
838 [AC_BEFORE([$0], [LT_OUTPUT])dnl
839 m4_case([$1],
840 [C], [_LT_LANG(C)],
841 [C++], [_LT_LANG(CXX)],
842 [Go], [_LT_LANG(GO)],
843 [Java], [_LT_LANG(GCJ)],
844 [Fortran 77], [_LT_LANG(F77)],
845 [Fortran], [_LT_LANG(FC)],
846 [Windows Resource], [_LT_LANG(RC)],
847 [m4_ifdef([_LT_LANG_]$1[_CONFIG],
848 [_LT_LANG($1)],
849 [m4_fatal([$0: unsupported language: "$1"])])])dnl
850 ])# LT_LANG
851
852
853 # _LT_LANG(LANGNAME)
854 # ------------------
855 m4_defun([_LT_LANG],
856 [m4_ifdef([_LT_LANG_]$1[_enabled], [],
857 [LT_SUPPORTED_TAG([$1])dnl
858 m4_append([_LT_TAGS], [$1 ])dnl
859 m4_define([_LT_LANG_]$1[_enabled], [])dnl
860 _LT_LANG_$1_CONFIG($1)])dnl
861 ])# _LT_LANG
862
863
864 m4_ifndef([AC_PROG_GO], [
865 # NOTE: This macro has been submitted for inclusion into #
866 # GNU Autoconf as AC_PROG_GO. When it is available in #
867 # a released version of Autoconf we should remove this #
868 # macro and use it instead. #
869 m4_defun([AC_PROG_GO],
870 [AC_LANG_PUSH(Go)dnl
871 AC_ARG_VAR([GOC], [Go compiler command])dnl
872 AC_ARG_VAR([GOFLAGS], [Go compiler flags])dnl
873 _AC_ARG_VAR_LDFLAGS()dnl
874 AC_CHECK_TOOL(GOC, gccgo)
875 if test -z "$GOC"; then
876 if test -n "$ac_tool_prefix"; then
877 AC_CHECK_PROG(GOC, [${ac_tool_prefix}gccgo], [${ac_tool_prefix}gccgo])
878 fi
879 fi
880 if test -z "$GOC"; then
881 AC_CHECK_PROG(GOC, gccgo, gccgo, false)
882 fi
883 ])#m4_defun
884 ])#m4_ifndef
885
886
887 # _LT_LANG_DEFAULT_CONFIG
888 # -----------------------
889 m4_defun([_LT_LANG_DEFAULT_CONFIG],
890 [AC_PROVIDE_IFELSE([AC_PROG_CXX],
891 [LT_LANG(CXX)],
892 [m4_define([AC_PROG_CXX], defn([AC_PROG_CXX])[LT_LANG(CXX)])])
893
894 AC_PROVIDE_IFELSE([AC_PROG_F77],
895 [LT_LANG(F77)],
896 [m4_define([AC_PROG_F77], defn([AC_PROG_F77])[LT_LANG(F77)])])
897
898 AC_PROVIDE_IFELSE([AC_PROG_FC],
899 [LT_LANG(FC)],
900 [m4_define([AC_PROG_FC], defn([AC_PROG_FC])[LT_LANG(FC)])])
901
902 dnl The call to [A][M_PROG_GCJ] is quoted like that to stop aclocal
903 dnl pulling things in needlessly.
904 AC_PROVIDE_IFELSE([AC_PROG_GCJ],
905 [LT_LANG(GCJ)],
906 [AC_PROVIDE_IFELSE([A][M_PROG_GCJ],
907 [LT_LANG(GCJ)],
908 [AC_PROVIDE_IFELSE([LT_PROG_GCJ],
909 [LT_LANG(GCJ)],
910 [m4_ifdef([AC_PROG_GCJ],
911 [m4_define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[LT_LANG(GCJ)])])
912 m4_ifdef([A][M_PROG_GCJ],
913 [m4_define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[LT_LANG(GCJ)])])
914 m4_ifdef([LT_PROG_GCJ],
915 [m4_define([LT_PROG_GCJ], defn([LT_PROG_GCJ])[LT_LANG(GCJ)])])])])])
916
917 AC_PROVIDE_IFELSE([AC_PROG_GO],
918 [LT_LANG(GO)],
919 [m4_define([AC_PROG_GO], defn([AC_PROG_GO])[LT_LANG(GO)])])
920
921 AC_PROVIDE_IFELSE([LT_PROG_RC],
922 [LT_LANG(RC)],
923 [m4_define([LT_PROG_RC], defn([LT_PROG_RC])[LT_LANG(RC)])])
924 ])# _LT_LANG_DEFAULT_CONFIG
925
926 # Obsolete macros:
927 AU_DEFUN([AC_LIBTOOL_CXX], [LT_LANG(C++)])
928 AU_DEFUN([AC_LIBTOOL_F77], [LT_LANG(Fortran 77)])
929 AU_DEFUN([AC_LIBTOOL_FC], [LT_LANG(Fortran)])
930 AU_DEFUN([AC_LIBTOOL_GCJ], [LT_LANG(Java)])
931 AU_DEFUN([AC_LIBTOOL_RC], [LT_LANG(Windows Resource)])
932 dnl aclocal-1.4 backwards compatibility:
933 dnl AC_DEFUN([AC_LIBTOOL_CXX], [])
934 dnl AC_DEFUN([AC_LIBTOOL_F77], [])
935 dnl AC_DEFUN([AC_LIBTOOL_FC], [])
936 dnl AC_DEFUN([AC_LIBTOOL_GCJ], [])
937 dnl AC_DEFUN([AC_LIBTOOL_RC], [])
938
939
940 # _LT_TAG_COMPILER
941 # ----------------
942 m4_defun([_LT_TAG_COMPILER],
943 [AC_REQUIRE([AC_PROG_CC])dnl
944
945 _LT_DECL([LTCC], [CC], [1], [A C compiler])dnl
946 _LT_DECL([LTCFLAGS], [CFLAGS], [1], [LTCC compiler flags])dnl
947 _LT_TAGDECL([CC], [compiler], [1], [A language specific compiler])dnl
948 _LT_TAGDECL([with_gcc], [GCC], [0], [Is the compiler the GNU compiler?])dnl
949
950 # If no C compiler was specified, use CC.
951 LTCC=${LTCC-"$CC"}
952
953 # If no C compiler flags were specified, use CFLAGS.
954 LTCFLAGS=${LTCFLAGS-"$CFLAGS"}
955
956 # Allow CC to be a program name with arguments.
957 compiler=$CC
958 ])# _LT_TAG_COMPILER
959
960
961 # _LT_COMPILER_BOILERPLATE
962 # ------------------------
963 # Check for compiler boilerplate output or warnings with
964 # the simple compiler test code.
965 m4_defun([_LT_COMPILER_BOILERPLATE],
966 [m4_require([_LT_DECL_SED])dnl
967 ac_outfile=conftest.$ac_objext
968 echo "$lt_simple_compile_test_code" >conftest.$ac_ext
969 eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
970 _lt_compiler_boilerplate=`cat conftest.err`
971 $RM conftest*
972 ])# _LT_COMPILER_BOILERPLATE
973
974
975 # _LT_LINKER_BOILERPLATE
976 # ----------------------
977 # Check for linker boilerplate output or warnings with
978 # the simple link test code.
979 m4_defun([_LT_LINKER_BOILERPLATE],
980 [m4_require([_LT_DECL_SED])dnl
981 ac_outfile=conftest.$ac_objext
982 echo "$lt_simple_link_test_code" >conftest.$ac_ext
983 eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
984 _lt_linker_boilerplate=`cat conftest.err`
985 $RM -r conftest*
986 ])# _LT_LINKER_BOILERPLATE
987
988 # _LT_REQUIRED_DARWIN_CHECKS
989 # -------------------------
990 m4_defun_once([_LT_REQUIRED_DARWIN_CHECKS],[
991 case $host_os in
992 rhapsody* | darwin*)
993 AC_CHECK_TOOL([DSYMUTIL], [dsymutil], [:])
994 AC_CHECK_TOOL([NMEDIT], [nmedit], [:])
995 AC_CHECK_TOOL([LIPO], [lipo], [:])
996 AC_CHECK_TOOL([OTOOL], [otool], [:])
997 AC_CHECK_TOOL([OTOOL64], [otool64], [:])
998 _LT_DECL([], [DSYMUTIL], [1],
999 [Tool to manipulate archived DWARF debug symbol files on Mac OS X])
1000 _LT_DECL([], [NMEDIT], [1],
1001 [Tool to change global to local symbols on Mac OS X])
1002 _LT_DECL([], [LIPO], [1],
1003 [Tool to manipulate fat objects and archives on Mac OS X])
1004 _LT_DECL([], [OTOOL], [1],
1005 [ldd/readelf like tool for Mach-O binaries on Mac OS X])
1006 _LT_DECL([], [OTOOL64], [1],
1007 [ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4])
1008
1009 AC_CACHE_CHECK([for -single_module linker flag],[lt_cv_apple_cc_single_mod],
1010 [lt_cv_apple_cc_single_mod=no
1011 if test -z "$LT_MULTI_MODULE"; then
1012 # By default we will add the -single_module flag. You can override
1013 # by either setting the environment variable LT_MULTI_MODULE
1014 # non-empty at configure time, or by adding -multi_module to the
1015 # link flags.
1016 rm -rf libconftest.dylib*
1017 echo "int foo(void){return 1;}" > conftest.c
1018 echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
1019 -dynamiclib -Wl,-single_module conftest.c" >&AS_MESSAGE_LOG_FD
1020 $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
1021 -dynamiclib -Wl,-single_module conftest.c 2>conftest.err
1022 _lt_result=$?
1023 # If there is a non-empty error log, and "single_module"
1024 # appears in it, assume the flag caused a linker warning
1025 if test -s conftest.err && $GREP single_module conftest.err; then
1026 cat conftest.err >&AS_MESSAGE_LOG_FD
1027 # Otherwise, if the output was created with a 0 exit code from
1028 # the compiler, it worked.
1029 elif test -f libconftest.dylib && test 0 = "$_lt_result"; then
1030 lt_cv_apple_cc_single_mod=yes
1031 else
1032 cat conftest.err >&AS_MESSAGE_LOG_FD
1033 fi
1034 rm -rf libconftest.dylib*
1035 rm -f conftest.*
1036 fi])
1037
1038 AC_CACHE_CHECK([for -exported_symbols_list linker flag],
1039 [lt_cv_ld_exported_symbols_list],
1040 [lt_cv_ld_exported_symbols_list=no
1041 save_LDFLAGS=$LDFLAGS
1042 echo "_main" > conftest.sym
1043 LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym"
1044 AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
1045 [lt_cv_ld_exported_symbols_list=yes],
1046 [lt_cv_ld_exported_symbols_list=no])
1047 LDFLAGS=$save_LDFLAGS
1048 ])
1049
1050 AC_CACHE_CHECK([for -force_load linker flag],[lt_cv_ld_force_load],
1051 [lt_cv_ld_force_load=no
1052 cat > conftest.c << _LT_EOF
1053 int forced_loaded() { return 2;}
1054 _LT_EOF
1055 echo "$LTCC $LTCFLAGS -c -o conftest.o conftest.c" >&AS_MESSAGE_LOG_FD
1056 $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&AS_MESSAGE_LOG_FD
1057 echo "$AR cr libconftest.a conftest.o" >&AS_MESSAGE_LOG_FD
1058 $AR cr libconftest.a conftest.o 2>&AS_MESSAGE_LOG_FD
1059 echo "$RANLIB libconftest.a" >&AS_MESSAGE_LOG_FD
1060 $RANLIB libconftest.a 2>&AS_MESSAGE_LOG_FD
1061 cat > conftest.c << _LT_EOF
1062 int main() { return 0;}
1063 _LT_EOF
1064 echo "$LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a" >&AS_MESSAGE_LOG_FD
1065 $LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a 2>conftest.err
1066 _lt_result=$?
1067 if test -s conftest.err && $GREP force_load conftest.err; then
1068 cat conftest.err >&AS_MESSAGE_LOG_FD
1069 elif test -f conftest && test 0 = "$_lt_result" && $GREP forced_load conftest >/dev/null 2>&1; then
1070 lt_cv_ld_force_load=yes
1071 else
1072 cat conftest.err >&AS_MESSAGE_LOG_FD
1073 fi
1074 rm -f conftest.err libconftest.a conftest conftest.c
1075 rm -rf conftest.dSYM
1076 ])
1077 case $host_os in
1078 rhapsody* | darwin1.[[012]])
1079 _lt_dar_allow_undefined='$wl-undefined ${wl}suppress' ;;
1080 darwin1.*)
1081 _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;;
1082 darwin*) # darwin 5.x on
1083 # if running on 10.5 or later, the deployment target defaults
1084 # to the OS version, if on x86, and 10.4, the deployment
1085 # target defaults to 10.4. Don't you love it?
1086 case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
1087 10.0,*86*-darwin8*|10.0,*-darwin[[91]]*)
1088 _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;;
1089 10.[[012]][[,.]]*)
1090 _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;;
1091 10.*)
1092 _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;;
1093 esac
1094 ;;
1095 esac
1096 if test yes = "$lt_cv_apple_cc_single_mod"; then
1097 _lt_dar_single_mod='$single_module'
1098 fi
1099 if test yes = "$lt_cv_ld_exported_symbols_list"; then
1100 _lt_dar_export_syms=' $wl-exported_symbols_list,$output_objdir/$libname-symbols.expsym'
1101 else
1102 _lt_dar_export_syms='~$NMEDIT -s $output_objdir/$libname-symbols.expsym $lib'
1103 fi
1104 if test : != "$DSYMUTIL" && test no = "$lt_cv_ld_force_load"; then
1105 _lt_dsymutil='~$DSYMUTIL $lib || :'
1106 else
1107 _lt_dsymutil=
1108 fi
1109 ;;
1110 esac
1111 ])
1112
1113
1114 # _LT_DARWIN_LINKER_FEATURES([TAG])
1115 # ---------------------------------
1116 # Checks for linker and compiler features on darwin
1117 m4_defun([_LT_DARWIN_LINKER_FEATURES],
1118 [
1119 m4_require([_LT_REQUIRED_DARWIN_CHECKS])
1120 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
1121 _LT_TAGVAR(hardcode_direct, $1)=no
1122 _LT_TAGVAR(hardcode_automatic, $1)=yes
1123 _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
1124 if test yes = "$lt_cv_ld_force_load"; then
1125 _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\"`'
1126 m4_case([$1], [F77], [_LT_TAGVAR(compiler_needs_object, $1)=yes],
1127 [FC], [_LT_TAGVAR(compiler_needs_object, $1)=yes])
1128 else
1129 _LT_TAGVAR(whole_archive_flag_spec, $1)=''
1130 fi
1131 _LT_TAGVAR(link_all_deplibs, $1)=yes
1132 _LT_TAGVAR(allow_undefined_flag, $1)=$_lt_dar_allow_undefined
1133 case $cc_basename in
1134 ifort*|nagfor*) _lt_dar_can_shared=yes ;;
1135 *) _lt_dar_can_shared=$GCC ;;
1136 esac
1137 if test yes = "$_lt_dar_can_shared"; then
1138 output_verbose_link_cmd=func_echo_all
1139 _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"
1140 _LT_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dsymutil"
1141 _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"
1142 _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"
1143 m4_if([$1], [CXX],
1144 [ if test yes != "$lt_cv_apple_cc_single_mod"; then
1145 _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"
1146 _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"
1147 fi
1148 ],[])
1149 else
1150 _LT_TAGVAR(ld_shlibs, $1)=no
1151 fi
1152 ])
1153
1154 # _LT_SYS_MODULE_PATH_AIX([TAGNAME])
1155 # ----------------------------------
1156 # Links a minimal program and checks the executable
1157 # for the system default hardcoded library path. In most cases,
1158 # this is /usr/lib:/lib, but when the MPI compilers are used
1159 # the location of the communication and MPI libs are included too.
1160 # If we don't find anything, use the default library path according
1161 # to the aix ld manual.
1162 # Store the results from the different compilers for each TAGNAME.
1163 # Allow to override them for all tags through lt_cv_aix_libpath.
1164 m4_defun([_LT_SYS_MODULE_PATH_AIX],
1165 [m4_require([_LT_DECL_SED])dnl
1166 if test set = "${lt_cv_aix_libpath+set}"; then
1167 aix_libpath=$lt_cv_aix_libpath
1168 else
1169 AC_CACHE_VAL([_LT_TAGVAR([lt_cv_aix_libpath_], [$1])],
1170 [AC_LINK_IFELSE([AC_LANG_PROGRAM],[
1171 lt_aix_libpath_sed='[
1172 /Import File Strings/,/^$/ {
1173 /^0/ {
1174 s/^0 *\([^ ]*\) *$/\1/
1175 p
1176 }
1177 }]'
1178 _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
1179 # Check for a 64-bit object if we didn't find anything.
1180 if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then
1181 _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
1182 fi],[])
1183 if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then
1184 _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=/usr/lib:/lib
1185 fi
1186 ])
1187 aix_libpath=$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])
1188 fi
1189 ])# _LT_SYS_MODULE_PATH_AIX
1190
1191
1192 # _LT_SHELL_INIT(ARG)
1193 # -------------------
1194 m4_define([_LT_SHELL_INIT],
1195 [m4_divert_text([M4SH-INIT], [$1
1196 ])])# _LT_SHELL_INIT
1197
1198
1199
1200 # _LT_PROG_ECHO_BACKSLASH
1201 # -----------------------
1202 # Find how we can fake an echo command that does not interpret backslash.
1203 # In particular, with Autoconf 2.60 or later we add some code to the start
1204 # of the generated configure script that will find a shell with a builtin
1205 # printf (that we can use as an echo command).
1206 m4_defun([_LT_PROG_ECHO_BACKSLASH],
1207 [ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
1208 ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO
1209 ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
1210
1211 AC_MSG_CHECKING([how to print strings])
1212 # Test print first, because it will be a builtin if present.
1213 if test "X`( print -r -- -n ) 2>/dev/null`" = X-n && \
1214 test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then
1215 ECHO='print -r --'
1216 elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then
1217 ECHO='printf %s\n'
1218 else
1219 # Use this function as a fallback that always works.
1220 func_fallback_echo ()
1221 {
1222 eval 'cat <<_LTECHO_EOF
1223 $[]1
1224 _LTECHO_EOF'
1225 }
1226 ECHO='func_fallback_echo'
1227 fi
1228
1229 # func_echo_all arg...
1230 # Invoke $ECHO with all args, space-separated.
1231 func_echo_all ()
1232 {
1233 $ECHO "$*"
1234 }
1235
1236 case $ECHO in
1237 printf*) AC_MSG_RESULT([printf]) ;;
1238 print*) AC_MSG_RESULT([print -r]) ;;
1239 *) AC_MSG_RESULT([cat]) ;;
1240 esac
1241
1242 m4_ifdef([_AS_DETECT_SUGGESTED],
1243 [_AS_DETECT_SUGGESTED([
1244 test -n "${ZSH_VERSION+set}${BASH_VERSION+set}" || (
1245 ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
1246 ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO
1247 ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
1248 PATH=/empty FPATH=/empty; export PATH FPATH
1249 test "X`printf %s $ECHO`" = "X$ECHO" \
1250 || test "X`print -r -- $ECHO`" = "X$ECHO" )])])
1251
1252 _LT_DECL([], [SHELL], [1], [Shell to use when invoking shell scripts])
1253 _LT_DECL([], [ECHO], [1], [An echo program that protects backslashes])
1254 ])# _LT_PROG_ECHO_BACKSLASH
1255
1256
1257 # _LT_WITH_SYSROOT
1258 # ----------------
1259 AC_DEFUN([_LT_WITH_SYSROOT],
1260 [AC_MSG_CHECKING([for sysroot])
1261 AC_ARG_WITH([sysroot],
1262 [AS_HELP_STRING([--with-sysroot@<:@=DIR@:>@],
1263 [Search for dependent libraries within DIR (or the compiler's sysroot
1264 if not specified).])],
1265 [], [with_sysroot=no])
1266
1267 dnl lt_sysroot will always be passed unquoted. We quote it here
1268 dnl in case the user passed a directory name.
1269 lt_sysroot=
1270 case $with_sysroot in #(
1271 yes)
1272 if test yes = "$GCC"; then
1273 lt_sysroot=`$CC --print-sysroot 2>/dev/null`
1274 fi
1275 ;; #(
1276 /*)
1277 lt_sysroot=`echo "$with_sysroot" | sed -e "$sed_quote_subst"`
1278 ;; #(
1279 no|'')
1280 ;; #(
1281 *)
1282 AC_MSG_RESULT([$with_sysroot])
1283 AC_MSG_ERROR([The sysroot must be an absolute path.])
1284 ;;
1285 esac
1286
1287 AC_MSG_RESULT([${lt_sysroot:-no}])
1288 _LT_DECL([], [lt_sysroot], [0], [The root where to search for ]dnl
1289 [dependent libraries, and where our libraries should be installed.])])
1290
1291 # _LT_ENABLE_LOCK
1292 # ---------------
1293 m4_defun([_LT_ENABLE_LOCK],
1294 [AC_ARG_ENABLE([libtool-lock],
1295 [AS_HELP_STRING([--disable-libtool-lock],
1296 [avoid locking (might break parallel builds)])])
1297 test no = "$enable_libtool_lock" || enable_libtool_lock=yes
1298
1299 # Some flags need to be propagated to the compiler or linker for good
1300 # libtool support.
1301 case $host in
1302 ia64-*-hpux*)
1303 # Find out what ABI is being produced by ac_compile, and set mode
1304 # options accordingly.
1305 echo 'int i;' > conftest.$ac_ext
1306 if AC_TRY_EVAL(ac_compile); then
1307 case `/usr/bin/file conftest.$ac_objext` in
1308 *ELF-32*)
1309 HPUX_IA64_MODE=32
1310 ;;
1311 *ELF-64*)
1312 HPUX_IA64_MODE=64
1313 ;;
1314 esac
1315 fi
1316 rm -rf conftest*
1317 ;;
1318 *-*-irix6*)
1319 # Find out what ABI is being produced by ac_compile, and set linker
1320 # options accordingly.
1321 echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext
1322 if AC_TRY_EVAL(ac_compile); then
1323 if test yes = "$lt_cv_prog_gnu_ld"; then
1324 case `/usr/bin/file conftest.$ac_objext` in
1325 *32-bit*)
1326 LD="${LD-ld} -melf32bsmip"
1327 ;;
1328 *N32*)
1329 LD="${LD-ld} -melf32bmipn32"
1330 ;;
1331 *64-bit*)
1332 LD="${LD-ld} -melf64bmip"
1333 ;;
1334 esac
1335 else
1336 case `/usr/bin/file conftest.$ac_objext` in
1337 *32-bit*)
1338 LD="${LD-ld} -32"
1339 ;;
1340 *N32*)
1341 LD="${LD-ld} -n32"
1342 ;;
1343 *64-bit*)
1344 LD="${LD-ld} -64"
1345 ;;
1346 esac
1347 fi
1348 fi
1349 rm -rf conftest*
1350 ;;
1351
1352 mips64*-*linux*)
1353 # Find out what ABI is being produced by ac_compile, and set linker
1354 # options accordingly.
1355 echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext
1356 if AC_TRY_EVAL(ac_compile); then
1357 emul=elf
1358 case `/usr/bin/file conftest.$ac_objext` in
1359 *32-bit*)
1360 emul="${emul}32"
1361 ;;
1362 *64-bit*)
1363 emul="${emul}64"
1364 ;;
1365 esac
1366 case `/usr/bin/file conftest.$ac_objext` in
1367 *MSB*)
1368 emul="${emul}btsmip"
1369 ;;
1370 *LSB*)
1371 emul="${emul}ltsmip"
1372 ;;
1373 esac
1374 case `/usr/bin/file conftest.$ac_objext` in
1375 *N32*)
1376 emul="${emul}n32"
1377 ;;
1378 esac
1379 LD="${LD-ld} -m $emul"
1380 fi
1381 rm -rf conftest*
1382 ;;
1383
1384 x86_64-*kfreebsd*-gnu|x86_64-*linux*|powerpc*-*linux*| \
1385 s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
1386 # Find out what ABI is being produced by ac_compile, and set linker
1387 # options accordingly. Note that the listed cases only cover the
1388 # situations where additional linker options are needed (such as when
1389 # doing 32-bit compilation for a host where ld defaults to 64-bit, or
1390 # vice versa); the common cases where no linker options are needed do
1391 # not appear in the list.
1392 echo 'int i;' > conftest.$ac_ext
1393 if AC_TRY_EVAL(ac_compile); then
1394 case `/usr/bin/file conftest.o` in
1395 *32-bit*)
1396 case $host in
1397 x86_64-*kfreebsd*-gnu)
1398 LD="${LD-ld} -m elf_i386_fbsd"
1399 ;;
1400 x86_64-*linux*)
1401 case `/usr/bin/file conftest.o` in
1402 *x86-64*)
1403 LD="${LD-ld} -m elf32_x86_64"
1404 ;;
1405 *)
1406 LD="${LD-ld} -m elf_i386"
1407 ;;
1408 esac
1409 ;;
1410 powerpc64le-*linux*)
1411 LD="${LD-ld} -m elf32lppclinux"
1412 ;;
1413 powerpc64-*linux*)
1414 LD="${LD-ld} -m elf32ppclinux"
1415 ;;
1416 s390x-*linux*)
1417 LD="${LD-ld} -m elf_s390"
1418 ;;
1419 sparc64-*linux*)
1420 LD="${LD-ld} -m elf32_sparc"
1421 ;;
1422 esac
1423 ;;
1424 *64-bit*)
1425 case $host in
1426 x86_64-*kfreebsd*-gnu)
1427 LD="${LD-ld} -m elf_x86_64_fbsd"
1428 ;;
1429 x86_64-*linux*)
1430 LD="${LD-ld} -m elf_x86_64"
1431 ;;
1432 powerpcle-*linux*)
1433 LD="${LD-ld} -m elf64lppc"
1434 ;;
1435 powerpc-*linux*)
1436 LD="${LD-ld} -m elf64ppc"
1437 ;;
1438 s390*-*linux*|s390*-*tpf*)
1439 LD="${LD-ld} -m elf64_s390"
1440 ;;
1441 sparc*-*linux*)
1442 LD="${LD-ld} -m elf64_sparc"
1443 ;;
1444 esac
1445 ;;
1446 esac
1447 fi
1448 rm -rf conftest*
1449 ;;
1450
1451 *-*-sco3.2v5*)
1452 # On SCO OpenServer 5, we need -belf to get full-featured binaries.
1453 SAVE_CFLAGS=$CFLAGS
1454 CFLAGS="$CFLAGS -belf"
1455 AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf,
1456 [AC_LANG_PUSH(C)
1457 AC_LINK_IFELSE([AC_LANG_PROGRAM([[]],[[]])],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])
1458 AC_LANG_POP])
1459 if test yes != "$lt_cv_cc_needs_belf"; then
1460 # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
1461 CFLAGS=$SAVE_CFLAGS
1462 fi
1463 ;;
1464 *-*solaris*)
1465 # Find out what ABI is being produced by ac_compile, and set linker
1466 # options accordingly.
1467 echo 'int i;' > conftest.$ac_ext
1468 if AC_TRY_EVAL(ac_compile); then
1469 case `/usr/bin/file conftest.o` in
1470 *64-bit*)
1471 case $lt_cv_prog_gnu_ld in
1472 yes*)
1473 case $host in
1474 i?86-*-solaris*|x86_64-*-solaris*)
1475 LD="${LD-ld} -m elf_x86_64"
1476 ;;
1477 sparc*-*-solaris*)
1478 LD="${LD-ld} -m elf64_sparc"
1479 ;;
1480 esac
1481 # GNU ld 2.21 introduced _sol2 emulations. Use them if available.
1482 if ${LD-ld} -V | grep _sol2 >/dev/null 2>&1; then
1483 LD=${LD-ld}_sol2
1484 fi
1485 ;;
1486 *)
1487 if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then
1488 LD="${LD-ld} -64"
1489 fi
1490 ;;
1491 esac
1492 ;;
1493 esac
1494 fi
1495 rm -rf conftest*
1496 ;;
1497 esac
1498
1499 need_locks=$enable_libtool_lock
1500 ])# _LT_ENABLE_LOCK
1501
1502
1503 # _LT_PROG_AR
1504 # -----------
1505 m4_defun([_LT_PROG_AR],
1506 [AC_CHECK_TOOLS(AR, [ar], false)
1507 : ${AR=ar}
1508 : ${AR_FLAGS=cr}
1509 _LT_DECL([], [AR], [1], [The archiver])
1510 _LT_DECL([], [AR_FLAGS], [1], [Flags to create an archive])
1511
1512 AC_CACHE_CHECK([for archiver @FILE support], [lt_cv_ar_at_file],
1513 [lt_cv_ar_at_file=no
1514 AC_COMPILE_IFELSE([AC_LANG_PROGRAM],
1515 [echo conftest.$ac_objext > conftest.lst
1516 lt_ar_try='$AR $AR_FLAGS libconftest.a @conftest.lst >&AS_MESSAGE_LOG_FD'
1517 AC_TRY_EVAL([lt_ar_try])
1518 if test 0 -eq "$ac_status"; then
1519 # Ensure the archiver fails upon bogus file names.
1520 rm -f conftest.$ac_objext libconftest.a
1521 AC_TRY_EVAL([lt_ar_try])
1522 if test 0 -ne "$ac_status"; then
1523 lt_cv_ar_at_file=@
1524 fi
1525 fi
1526 rm -f conftest.* libconftest.a
1527 ])
1528 ])
1529
1530 if test no = "$lt_cv_ar_at_file"; then
1531 archiver_list_spec=
1532 else
1533 archiver_list_spec=$lt_cv_ar_at_file
1534 fi
1535 _LT_DECL([], [archiver_list_spec], [1],
1536 [How to feed a file listing to the archiver])
1537 ])# _LT_PROG_AR
1538
1539
1540 # _LT_CMD_OLD_ARCHIVE
1541 # -------------------
1542 m4_defun([_LT_CMD_OLD_ARCHIVE],
1543 [_LT_PROG_AR
1544
1545 AC_CHECK_TOOL(STRIP, strip, :)
1546 test -z "$STRIP" && STRIP=:
1547 _LT_DECL([], [STRIP], [1], [A symbol stripping program])
1548
1549 AC_CHECK_TOOL(RANLIB, ranlib, :)
1550 test -z "$RANLIB" && RANLIB=:
1551 _LT_DECL([], [RANLIB], [1],
1552 [Commands used to install an old-style archive])
1553
1554 # Determine commands to create old-style static archives.
1555 old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs'
1556 old_postinstall_cmds='chmod 644 $oldlib'
1557 old_postuninstall_cmds=
1558
1559 if test -n "$RANLIB"; then
1560 case $host_os in
1561 bitrig* | openbsd*)
1562 old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$tool_oldlib"
1563 ;;
1564 *)
1565 old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$tool_oldlib"
1566 ;;
1567 esac
1568 old_archive_cmds="$old_archive_cmds~\$RANLIB \$tool_oldlib"
1569 fi
1570
1571 case $host_os in
1572 darwin*)
1573 lock_old_archive_extraction=yes ;;
1574 *)
1575 lock_old_archive_extraction=no ;;
1576 esac
1577 _LT_DECL([], [old_postinstall_cmds], [2])
1578 _LT_DECL([], [old_postuninstall_cmds], [2])
1579 _LT_TAGDECL([], [old_archive_cmds], [2],
1580 [Commands used to build an old-style archive])
1581 _LT_DECL([], [lock_old_archive_extraction], [0],
1582 [Whether to use a lock for old archive extraction])
1583 ])# _LT_CMD_OLD_ARCHIVE
1584
1585
1586 # _LT_COMPILER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
1587 # [OUTPUT-FILE], [ACTION-SUCCESS], [ACTION-FAILURE])
1588 # ----------------------------------------------------------------
1589 # Check whether the given compiler option works
1590 AC_DEFUN([_LT_COMPILER_OPTION],
1591 [m4_require([_LT_FILEUTILS_DEFAULTS])dnl
1592 m4_require([_LT_DECL_SED])dnl
1593 AC_CACHE_CHECK([$1], [$2],
1594 [$2=no
1595 m4_if([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4])
1596 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
1597 lt_compiler_flag="$3" ## exclude from sc_useless_quotes_in_assignment
1598 # Insert the option either (1) after the last *FLAGS variable, or
1599 # (2) before a word containing "conftest.", or (3) at the end.
1600 # Note that $ac_compile itself does not contain backslashes and begins
1601 # with a dollar sign (not a hyphen), so the echo should work correctly.
1602 # The option is referenced via a variable to avoid confusing sed.
1603 lt_compile=`echo "$ac_compile" | $SED \
1604 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
1605 -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
1606 -e 's:$: $lt_compiler_flag:'`
1607 (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
1608 (eval "$lt_compile" 2>conftest.err)
1609 ac_status=$?
1610 cat conftest.err >&AS_MESSAGE_LOG_FD
1611 echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
1612 if (exit $ac_status) && test -s "$ac_outfile"; then
1613 # The compiler can only warn and ignore the option if not recognized
1614 # So say no if there are warnings other than the usual output.
1615 $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp
1616 $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
1617 if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
1618 $2=yes
1619 fi
1620 fi
1621 $RM conftest*
1622 ])
1623
1624 if test yes = "[$]$2"; then
1625 m4_if([$5], , :, [$5])
1626 else
1627 m4_if([$6], , :, [$6])
1628 fi
1629 ])# _LT_COMPILER_OPTION
1630
1631 # Old name:
1632 AU_ALIAS([AC_LIBTOOL_COMPILER_OPTION], [_LT_COMPILER_OPTION])
1633 dnl aclocal-1.4 backwards compatibility:
1634 dnl AC_DEFUN([AC_LIBTOOL_COMPILER_OPTION], [])
1635
1636
1637 # _LT_LINKER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS,
1638 # [ACTION-SUCCESS], [ACTION-FAILURE])
1639 # ----------------------------------------------------
1640 # Check whether the given linker option works
1641 AC_DEFUN([_LT_LINKER_OPTION],
1642 [m4_require([_LT_FILEUTILS_DEFAULTS])dnl
1643 m4_require([_LT_DECL_SED])dnl
1644 AC_CACHE_CHECK([$1], [$2],
1645 [$2=no
1646 save_LDFLAGS=$LDFLAGS
1647 LDFLAGS="$LDFLAGS $3"
1648 echo "$lt_simple_link_test_code" > conftest.$ac_ext
1649 if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
1650 # The linker can only warn and ignore the option if not recognized
1651 # So say no if there are warnings
1652 if test -s conftest.err; then
1653 # Append any errors to the config.log.
1654 cat conftest.err 1>&AS_MESSAGE_LOG_FD
1655 $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp
1656 $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
1657 if diff conftest.exp conftest.er2 >/dev/null; then
1658 $2=yes
1659 fi
1660 else
1661 $2=yes
1662 fi
1663 fi
1664 $RM -r conftest*
1665 LDFLAGS=$save_LDFLAGS
1666 ])
1667
1668 if test yes = "[$]$2"; then
1669 m4_if([$4], , :, [$4])
1670 else
1671 m4_if([$5], , :, [$5])
1672 fi
1673 ])# _LT_LINKER_OPTION
1674
1675 # Old name:
1676 AU_ALIAS([AC_LIBTOOL_LINKER_OPTION], [_LT_LINKER_OPTION])
1677 dnl aclocal-1.4 backwards compatibility:
1678 dnl AC_DEFUN([AC_LIBTOOL_LINKER_OPTION], [])
1679
1680
1681 # LT_CMD_MAX_LEN
1682 #---------------
1683 AC_DEFUN([LT_CMD_MAX_LEN],
1684 [AC_REQUIRE([AC_CANONICAL_HOST])dnl
1685 # find the maximum length of command line arguments
1686 AC_MSG_CHECKING([the maximum length of command line arguments])
1687 AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl
1688 i=0
1689 teststring=ABCD
1690
1691 case $build_os in
1692 msdosdjgpp*)
1693 # On DJGPP, this test can blow up pretty badly due to problems in libc
1694 # (any single argument exceeding 2000 bytes causes a buffer overrun
1695 # during glob expansion). Even if it were fixed, the result of this
1696 # check would be larger than it should be.
1697 lt_cv_sys_max_cmd_len=12288; # 12K is about right
1698 ;;
1699
1700 gnu*)
1701 # Under GNU Hurd, this test is not required because there is
1702 # no limit to the length of command line arguments.
1703 # Libtool will interpret -1 as no limit whatsoever
1704 lt_cv_sys_max_cmd_len=-1;
1705 ;;
1706
1707 cygwin* | mingw* | cegcc*)
1708 # On Win9x/ME, this test blows up -- it succeeds, but takes
1709 # about 5 minutes as the teststring grows exponentially.
1710 # Worse, since 9x/ME are not pre-emptively multitasking,
1711 # you end up with a "frozen" computer, even though with patience
1712 # the test eventually succeeds (with a max line length of 256k).
1713 # Instead, let's just punt: use the minimum linelength reported by
1714 # all of the supported platforms: 8192 (on NT/2K/XP).
1715 lt_cv_sys_max_cmd_len=8192;
1716 ;;
1717
1718 mint*)
1719 # On MiNT this can take a long time and run out of memory.
1720 lt_cv_sys_max_cmd_len=8192;
1721 ;;
1722
1723 amigaos*)
1724 # On AmigaOS with pdksh, this test takes hours, literally.
1725 # So we just punt and use a minimum line length of 8192.
1726 lt_cv_sys_max_cmd_len=8192;
1727 ;;
1728
1729 bitrig* | darwin* | dragonfly* | freebsd* | netbsd* | openbsd*)
1730 # This has been around since 386BSD, at least. Likely further.
1731 if test -x /sbin/sysctl; then
1732 lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`
1733 elif test -x /usr/sbin/sysctl; then
1734 lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax`
1735 else
1736 lt_cv_sys_max_cmd_len=65536 # usable default for all BSDs
1737 fi
1738 # And add a safety zone
1739 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
1740 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
1741 ;;
1742
1743 interix*)
1744 # We know the value 262144 and hardcode it with a safety zone (like BSD)
1745 lt_cv_sys_max_cmd_len=196608
1746 ;;
1747
1748 os2*)
1749 # The test takes a long time on OS/2.
1750 lt_cv_sys_max_cmd_len=8192
1751 ;;
1752
1753 osf*)
1754 # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure
1755 # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not
1756 # nice to cause kernel panics so lets avoid the loop below.
1757 # First set a reasonable default.
1758 lt_cv_sys_max_cmd_len=16384
1759 #
1760 if test -x /sbin/sysconfig; then
1761 case `/sbin/sysconfig -q proc exec_disable_arg_limit` in
1762 *1*) lt_cv_sys_max_cmd_len=-1 ;;
1763 esac
1764 fi
1765 ;;
1766 sco3.2v5*)
1767 lt_cv_sys_max_cmd_len=102400
1768 ;;
1769 sysv5* | sco5v6* | sysv4.2uw2*)
1770 kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null`
1771 if test -n "$kargmax"; then
1772 lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[[ ]]//'`
1773 else
1774 lt_cv_sys_max_cmd_len=32768
1775 fi
1776 ;;
1777 *)
1778 lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null`
1779 if test -n "$lt_cv_sys_max_cmd_len" && \
1780 test undefined != "$lt_cv_sys_max_cmd_len"; then
1781 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
1782 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
1783 else
1784 # Make teststring a little bigger before we do anything with it.
1785 # a 1K string should be a reasonable start.
1786 for i in 1 2 3 4 5 6 7 8; do
1787 teststring=$teststring$teststring
1788 done
1789 SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}}
1790 # If test is not a shell built-in, we'll probably end up computing a
1791 # maximum length that is only half of the actual maximum length, but
1792 # we can't tell.
1793 while { test X`env echo "$teststring$teststring" 2>/dev/null` \
1794 = "X$teststring$teststring"; } >/dev/null 2>&1 &&
1795 test 17 != "$i" # 1/2 MB should be enough
1796 do
1797 i=`expr $i + 1`
1798 teststring=$teststring$teststring
1799 done
1800 # Only check the string length outside the loop.
1801 lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1`
1802 teststring=
1803 # Add a significant safety factor because C++ compilers can tack on
1804 # massive amounts of additional arguments before passing them to the
1805 # linker. It appears as though 1/2 is a usable value.
1806 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2`
1807 fi
1808 ;;
1809 esac
1810 ])
1811 if test -n "$lt_cv_sys_max_cmd_len"; then
1812 AC_MSG_RESULT($lt_cv_sys_max_cmd_len)
1813 else
1814 AC_MSG_RESULT(none)
1815 fi
1816 max_cmd_len=$lt_cv_sys_max_cmd_len
1817 _LT_DECL([], [max_cmd_len], [0],
1818 [What is the maximum length of a command?])
1819 ])# LT_CMD_MAX_LEN
1820
1821 # Old name:
1822 AU_ALIAS([AC_LIBTOOL_SYS_MAX_CMD_LEN], [LT_CMD_MAX_LEN])
1823 dnl aclocal-1.4 backwards compatibility:
1824 dnl AC_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN], [])
1825
1826
1827 # _LT_HEADER_DLFCN
1828 # ----------------
1829 m4_defun([_LT_HEADER_DLFCN],
1830 [AC_CHECK_HEADERS([dlfcn.h], [], [], [AC_INCLUDES_DEFAULT])dnl
1831 ])# _LT_HEADER_DLFCN
1832
1833
1834 # _LT_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE,
1835 # ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING)
1836 # ----------------------------------------------------------------
1837 m4_defun([_LT_TRY_DLOPEN_SELF],
1838 [m4_require([_LT_HEADER_DLFCN])dnl
1839 if test yes = "$cross_compiling"; then :
1840 [$4]
1841 else
1842 lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
1843 lt_status=$lt_dlunknown
1844 cat > conftest.$ac_ext <<_LT_EOF
1845 [#line $LINENO "configure"
1846 #include "confdefs.h"
1847
1848 #if HAVE_DLFCN_H
1849 #include <dlfcn.h>
1850 #endif
1851
1852 #include <stdio.h>
1853
1854 #ifdef RTLD_GLOBAL
1855 # define LT_DLGLOBAL RTLD_GLOBAL
1856 #else
1857 # ifdef DL_GLOBAL
1858 # define LT_DLGLOBAL DL_GLOBAL
1859 # else
1860 # define LT_DLGLOBAL 0
1861 # endif
1862 #endif
1863
1864 /* We may have to define LT_DLLAZY_OR_NOW in the command line if we
1865 find out it does not work in some platform. */
1866 #ifndef LT_DLLAZY_OR_NOW
1867 # ifdef RTLD_LAZY
1868 # define LT_DLLAZY_OR_NOW RTLD_LAZY
1869 # else
1870 # ifdef DL_LAZY
1871 # define LT_DLLAZY_OR_NOW DL_LAZY
1872 # else
1873 # ifdef RTLD_NOW
1874 # define LT_DLLAZY_OR_NOW RTLD_NOW
1875 # else
1876 # ifdef DL_NOW
1877 # define LT_DLLAZY_OR_NOW DL_NOW
1878 # else
1879 # define LT_DLLAZY_OR_NOW 0
1880 # endif
1881 # endif
1882 # endif
1883 # endif
1884 #endif
1885
1886 /* When -fvisibility=hidden is used, assume the code has been annotated
1887 correspondingly for the symbols needed. */
1888 #if defined __GNUC__ && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
1889 int fnord () __attribute__((visibility("default")));
1890 #endif
1891
1892 int fnord () { return 42; }
1893 int main ()
1894 {
1895 void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
1896 int status = $lt_dlunknown;
1897
1898 if (self)
1899 {
1900 if (dlsym (self,"fnord")) status = $lt_dlno_uscore;
1901 else
1902 {
1903 if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;
1904 else puts (dlerror ());
1905 }
1906 /* dlclose (self); */
1907 }
1908 else
1909 puts (dlerror ());
1910
1911 return status;
1912 }]
1913 _LT_EOF
1914 if AC_TRY_EVAL(ac_link) && test -s "conftest$ac_exeext" 2>/dev/null; then
1915 (./conftest; exit; ) >&AS_MESSAGE_LOG_FD 2>/dev/null
1916 lt_status=$?
1917 case x$lt_status in
1918 x$lt_dlno_uscore) $1 ;;
1919 x$lt_dlneed_uscore) $2 ;;
1920 x$lt_dlunknown|x*) $3 ;;
1921 esac
1922 else :
1923 # compilation failed
1924 $3
1925 fi
1926 fi
1927 rm -fr conftest*
1928 ])# _LT_TRY_DLOPEN_SELF
1929
1930
1931 # LT_SYS_DLOPEN_SELF
1932 # ------------------
1933 AC_DEFUN([LT_SYS_DLOPEN_SELF],
1934 [m4_require([_LT_HEADER_DLFCN])dnl
1935 if test yes != "$enable_dlopen"; then
1936 enable_dlopen=unknown
1937 enable_dlopen_self=unknown
1938 enable_dlopen_self_static=unknown
1939 else
1940 lt_cv_dlopen=no
1941 lt_cv_dlopen_libs=
1942
1943 case $host_os in
1944 beos*)
1945 lt_cv_dlopen=load_add_on
1946 lt_cv_dlopen_libs=
1947 lt_cv_dlopen_self=yes
1948 ;;
1949
1950 mingw* | pw32* | cegcc*)
1951 lt_cv_dlopen=LoadLibrary
1952 lt_cv_dlopen_libs=
1953 ;;
1954
1955 cygwin*)
1956 lt_cv_dlopen=dlopen
1957 lt_cv_dlopen_libs=
1958 ;;
1959
1960 darwin*)
1961 # if libdl is installed we need to link against it
1962 AC_CHECK_LIB([dl], [dlopen],
1963 [lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl],[
1964 lt_cv_dlopen=dyld
1965 lt_cv_dlopen_libs=
1966 lt_cv_dlopen_self=yes
1967 ])
1968 ;;
1969
1970 tpf*)
1971 # Don't try to run any link tests for TPF. We know it's impossible
1972 # because TPF is a cross-compiler, and we know how we open DSOs.
1973 lt_cv_dlopen=dlopen
1974 lt_cv_dlopen_libs=
1975 lt_cv_dlopen_self=no
1976 ;;
1977
1978 *)
1979 AC_CHECK_FUNC([shl_load],
1980 [lt_cv_dlopen=shl_load],
1981 [AC_CHECK_LIB([dld], [shl_load],
1982 [lt_cv_dlopen=shl_load lt_cv_dlopen_libs=-ldld],
1983 [AC_CHECK_FUNC([dlopen],
1984 [lt_cv_dlopen=dlopen],
1985 [AC_CHECK_LIB([dl], [dlopen],
1986 [lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl],
1987 [AC_CHECK_LIB([svld], [dlopen],
1988 [lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-lsvld],
1989 [AC_CHECK_LIB([dld], [dld_link],
1990 [lt_cv_dlopen=dld_link lt_cv_dlopen_libs=-ldld])
1991 ])
1992 ])
1993 ])
1994 ])
1995 ])
1996 ;;
1997 esac
1998
1999 if test no = "$lt_cv_dlopen"; then
2000 enable_dlopen=no
2001 else
2002 enable_dlopen=yes
2003 fi
2004
2005 case $lt_cv_dlopen in
2006 dlopen)
2007 save_CPPFLAGS=$CPPFLAGS
2008 test yes = "$ac_cv_header_dlfcn_h" && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
2009
2010 save_LDFLAGS=$LDFLAGS
2011 wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
2012
2013 save_LIBS=$LIBS
2014 LIBS="$lt_cv_dlopen_libs $LIBS"
2015
2016 AC_CACHE_CHECK([whether a program can dlopen itself],
2017 lt_cv_dlopen_self, [dnl
2018 _LT_TRY_DLOPEN_SELF(
2019 lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes,
2020 lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross)
2021 ])
2022
2023 if test yes = "$lt_cv_dlopen_self"; then
2024 wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\"
2025 AC_CACHE_CHECK([whether a statically linked program can dlopen itself],
2026 lt_cv_dlopen_self_static, [dnl
2027 _LT_TRY_DLOPEN_SELF(
2028 lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes,
2029 lt_cv_dlopen_self_static=no, lt_cv_dlopen_self_static=cross)
2030 ])
2031 fi
2032
2033 CPPFLAGS=$save_CPPFLAGS
2034 LDFLAGS=$save_LDFLAGS
2035 LIBS=$save_LIBS
2036 ;;
2037 esac
2038
2039 case $lt_cv_dlopen_self in
2040 yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;
2041 *) enable_dlopen_self=unknown ;;
2042 esac
2043
2044 case $lt_cv_dlopen_self_static in
2045 yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;
2046 *) enable_dlopen_self_static=unknown ;;
2047 esac
2048 fi
2049 _LT_DECL([dlopen_support], [enable_dlopen], [0],
2050 [Whether dlopen is supported])
2051 _LT_DECL([dlopen_self], [enable_dlopen_self], [0],
2052 [Whether dlopen of programs is supported])
2053 _LT_DECL([dlopen_self_static], [enable_dlopen_self_static], [0],
2054 [Whether dlopen of statically linked programs is supported])
2055 ])# LT_SYS_DLOPEN_SELF
2056
2057 # Old name:
2058 AU_ALIAS([AC_LIBTOOL_DLOPEN_SELF], [LT_SYS_DLOPEN_SELF])
2059 dnl aclocal-1.4 backwards compatibility:
2060 dnl AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF], [])
2061
2062
2063 # _LT_COMPILER_C_O([TAGNAME])
2064 # ---------------------------
2065 # Check to see if options -c and -o are simultaneously supported by compiler.
2066 # This macro does not hard code the compiler like AC_PROG_CC_C_O.
2067 m4_defun([_LT_COMPILER_C_O],
2068 [m4_require([_LT_DECL_SED])dnl
2069 m4_require([_LT_FILEUTILS_DEFAULTS])dnl
2070 m4_require([_LT_TAG_COMPILER])dnl
2071 AC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext],
2072 [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)],
2073 [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=no
2074 $RM -r conftest 2>/dev/null
2075 mkdir conftest
2076 cd conftest
2077 mkdir out
2078 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
2079
2080 lt_compiler_flag="-o out/conftest2.$ac_objext"
2081 # Insert the option either (1) after the last *FLAGS variable, or
2082 # (2) before a word containing "conftest.", or (3) at the end.
2083 # Note that $ac_compile itself does not contain backslashes and begins
2084 # with a dollar sign (not a hyphen), so the echo should work correctly.
2085 lt_compile=`echo "$ac_compile" | $SED \
2086 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
2087 -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \
2088 -e 's:$: $lt_compiler_flag:'`
2089 (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD)
2090 (eval "$lt_compile" 2>out/conftest.err)
2091 ac_status=$?
2092 cat out/conftest.err >&AS_MESSAGE_LOG_FD
2093 echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
2094 if (exit $ac_status) && test -s out/conftest2.$ac_objext
2095 then
2096 # The compiler can only warn and ignore the option if not recognized
2097 # So say no if there are warnings
2098 $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp
2099 $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
2100 if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
2101 _LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
2102 fi
2103 fi
2104 chmod u+w . 2>&AS_MESSAGE_LOG_FD
2105 $RM conftest*
2106 # SGI C++ compiler will create directory out/ii_files/ for
2107 # template instantiation
2108 test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files
2109 $RM out/* && rmdir out
2110 cd ..
2111 $RM -r conftest
2112 $RM conftest*
2113 ])
2114 _LT_TAGDECL([compiler_c_o], [lt_cv_prog_compiler_c_o], [1],
2115 [Does compiler simultaneously support -c and -o options?])
2116 ])# _LT_COMPILER_C_O
2117
2118
2119 # _LT_COMPILER_FILE_LOCKS([TAGNAME])
2120 # ----------------------------------
2121 # Check to see if we can do hard links to lock some files if needed
2122 m4_defun([_LT_COMPILER_FILE_LOCKS],
2123 [m4_require([_LT_ENABLE_LOCK])dnl
2124 m4_require([_LT_FILEUTILS_DEFAULTS])dnl
2125 _LT_COMPILER_C_O([$1])
2126
2127 hard_links=nottested
2128 if test no = "$_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)" && test no != "$need_locks"; then
2129 # do not overwrite the value of need_locks provided by the user
2130 AC_MSG_CHECKING([if we can lock with hard links])
2131 hard_links=yes
2132 $RM conftest*
2133 ln conftest.a conftest.b 2>/dev/null && hard_links=no
2134 touch conftest.a
2135 ln conftest.a conftest.b 2>&5 || hard_links=no
2136 ln conftest.a conftest.b 2>/dev/null && hard_links=no
2137 AC_MSG_RESULT([$hard_links])
2138 if test no = "$hard_links"; then
2139 AC_MSG_WARN(['$CC' does not support '-c -o', so 'make -j' may be unsafe])
2140 need_locks=warn
2141 fi
2142 else
2143 need_locks=no
2144 fi
2145 _LT_DECL([], [need_locks], [1], [Must we lock files when doing compilation?])
2146 ])# _LT_COMPILER_FILE_LOCKS
2147
2148
2149 # _LT_CHECK_OBJDIR
2150 # ----------------
2151 m4_defun([_LT_CHECK_OBJDIR],
2152 [AC_CACHE_CHECK([for objdir], [lt_cv_objdir],
2153 [rm -f .libs 2>/dev/null
2154 mkdir .libs 2>/dev/null
2155 if test -d .libs; then
2156 lt_cv_objdir=.libs
2157 else
2158 # MS-DOS does not allow filenames that begin with a dot.
2159 lt_cv_objdir=_libs
2160 fi
2161 rmdir .libs 2>/dev/null])
2162 objdir=$lt_cv_objdir
2163 _LT_DECL([], [objdir], [0],
2164 [The name of the directory that contains temporary libtool files])dnl
2165 m4_pattern_allow([LT_OBJDIR])dnl
2166 AC_DEFINE_UNQUOTED([LT_OBJDIR], "$lt_cv_objdir/",
2167 [Define to the sub-directory where libtool stores uninstalled libraries.])
2168 ])# _LT_CHECK_OBJDIR
2169
2170
2171 # _LT_LINKER_HARDCODE_LIBPATH([TAGNAME])
2172 # --------------------------------------
2173 # Check hardcoding attributes.
2174 m4_defun([_LT_LINKER_HARDCODE_LIBPATH],
2175 [AC_MSG_CHECKING([how to hardcode library paths into programs])
2176 _LT_TAGVAR(hardcode_action, $1)=
2177 if test -n "$_LT_TAGVAR(hardcode_libdir_flag_spec, $1)" ||
2178 test -n "$_LT_TAGVAR(runpath_var, $1)" ||
2179 test yes = "$_LT_TAGVAR(hardcode_automatic, $1)"; then
2180
2181 # We can hardcode non-existent directories.
2182 if test no != "$_LT_TAGVAR(hardcode_direct, $1)" &&
2183 # If the only mechanism to avoid hardcoding is shlibpath_var, we
2184 # have to relink, otherwise we might link with an installed library
2185 # when we should be linking with a yet-to-be-installed one
2186 ## test no != "$_LT_TAGVAR(hardcode_shlibpath_var, $1)" &&
2187 test no != "$_LT_TAGVAR(hardcode_minus_L, $1)"; then
2188 # Linking always hardcodes the temporary library directory.
2189 _LT_TAGVAR(hardcode_action, $1)=relink
2190 else
2191 # We can link without hardcoding, and we can hardcode nonexisting dirs.
2192 _LT_TAGVAR(hardcode_action, $1)=immediate
2193 fi
2194 else
2195 # We cannot hardcode anything, or else we can only hardcode existing
2196 # directories.
2197 _LT_TAGVAR(hardcode_action, $1)=unsupported
2198 fi
2199 AC_MSG_RESULT([$_LT_TAGVAR(hardcode_action, $1)])
2200
2201 if test relink = "$_LT_TAGVAR(hardcode_action, $1)" ||
2202 test yes = "$_LT_TAGVAR(inherit_rpath, $1)"; then
2203 # Fast installation is not supported
2204 enable_fast_install=no
2205 elif test yes = "$shlibpath_overrides_runpath" ||
2206 test no = "$enable_shared"; then
2207 # Fast installation is not necessary
2208 enable_fast_install=needless
2209 fi
2210 _LT_TAGDECL([], [hardcode_action], [0],
2211 [How to hardcode a shared library path into an executable])
2212 ])# _LT_LINKER_HARDCODE_LIBPATH
2213
2214
2215 # _LT_CMD_STRIPLIB
2216 # ----------------
2217 m4_defun([_LT_CMD_STRIPLIB],
2218 [m4_require([_LT_DECL_EGREP])
2219 striplib=
2220 old_striplib=
2221 AC_MSG_CHECKING([whether stripping libraries is possible])
2222 if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then
2223 test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"
2224 test -z "$striplib" && striplib="$STRIP --strip-unneeded"
2225 AC_MSG_RESULT([yes])
2226 else
2227 # FIXME - insert some real tests, host_os isn't really good enough
2228 case $host_os in
2229 darwin*)
2230 if test -n "$STRIP"; then
2231 striplib="$STRIP -x"
2232 old_striplib="$STRIP -S"
2233 AC_MSG_RESULT([yes])
2234 else
2235 AC_MSG_RESULT([no])
2236 fi
2237 ;;
2238 *)
2239 AC_MSG_RESULT([no])
2240 ;;
2241 esac
2242 fi
2243 _LT_DECL([], [old_striplib], [1], [Commands to strip libraries])
2244 _LT_DECL([], [striplib], [1])
2245 ])# _LT_CMD_STRIPLIB
2246
2247
2248 # _LT_PREPARE_MUNGE_PATH_LIST
2249 # ---------------------------
2250 # Make sure func_munge_path_list() is defined correctly.
2251 m4_defun([_LT_PREPARE_MUNGE_PATH_LIST],
2252 [[# func_munge_path_list VARIABLE PATH
2253 # -----------------------------------
2254 # VARIABLE is name of variable containing _space_ separated list of
2255 # directories to be munged by the contents of PATH, which is string
2256 # having a format:
2257 # "DIR[:DIR]:"
2258 # string "DIR[ DIR]" will be prepended to VARIABLE
2259 # ":DIR[:DIR]"
2260 # string "DIR[ DIR]" will be appended to VARIABLE
2261 # "DIRP[:DIRP]::[DIRA:]DIRA"
2262 # string "DIRP[ DIRP]" will be prepended to VARIABLE and string
2263 # "DIRA[ DIRA]" will be appended to VARIABLE
2264 # "DIR[:DIR]"
2265 # VARIABLE will be replaced by "DIR[ DIR]"
2266 func_munge_path_list ()
2267 {
2268 case x@S|@2 in
2269 x)
2270 ;;
2271 *:)
2272 eval @S|@1=\"`$ECHO @S|@2 | $SED 's/:/ /g'` \@S|@@S|@1\"
2273 ;;
2274 x:*)
2275 eval @S|@1=\"\@S|@@S|@1 `$ECHO @S|@2 | $SED 's/:/ /g'`\"
2276 ;;
2277 *::*)
2278 eval @S|@1=\"\@S|@@S|@1\ `$ECHO @S|@2 | $SED -e 's/.*:://' -e 's/:/ /g'`\"
2279 eval @S|@1=\"`$ECHO @S|@2 | $SED -e 's/::.*//' -e 's/:/ /g'`\ \@S|@@S|@1\"
2280 ;;
2281 *)
2282 eval @S|@1=\"`$ECHO @S|@2 | $SED 's/:/ /g'`\"
2283 ;;
2284 esac
2285 }
2286 ]])# _LT_PREPARE_PATH_LIST
2287
2288
2289 # _LT_SYS_DYNAMIC_LINKER([TAG])
2290 # -----------------------------
2291 # PORTME Fill in your ld.so characteristics
2292 m4_defun([_LT_SYS_DYNAMIC_LINKER],
2293 [AC_REQUIRE([AC_CANONICAL_HOST])dnl
2294 m4_require([_LT_DECL_EGREP])dnl
2295 m4_require([_LT_FILEUTILS_DEFAULTS])dnl
2296 m4_require([_LT_DECL_OBJDUMP])dnl
2297 m4_require([_LT_DECL_SED])dnl
2298 m4_require([_LT_CHECK_SHELL_FEATURES])dnl
2299 m4_require([_LT_PREPARE_MUNGE_PATH_LIST])dnl
2300 AC_MSG_CHECKING([dynamic linker characteristics])
2301 m4_if([$1],
2302 [], [
2303 if test yes = "$GCC"; then
2304 case $host_os in
2305 darwin*) lt_awk_arg='/^libraries:/,/LR/' ;;
2306 *) lt_awk_arg='/^libraries:/' ;;
2307 esac
2308 case $host_os in
2309 mingw* | cegcc*) lt_sed_strip_eq='s|=\([[A-Za-z]]:\)|\1|g' ;;
2310 *) lt_sed_strip_eq='s|=/|/|g' ;;
2311 esac
2312 lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e $lt_sed_strip_eq`
2313 case $lt_search_path_spec in
2314 *\;*)
2315 # if the path contains ";" then we assume it to be the separator
2316 # otherwise default to the standard path separator (i.e. ":") - it is
2317 # assumed that no part of a normal pathname contains ";" but that should
2318 # okay in the real world where ";" in dirpaths is itself problematic.
2319 lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED 's/;/ /g'`
2320 ;;
2321 *)
2322 lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED "s/$PATH_SEPARATOR/ /g"`
2323 ;;
2324 esac
2325 # Ok, now we have the path, separated by spaces, we can step through it
2326 # and add multilib dir if necessary...
2327 lt_tmp_lt_search_path_spec=
2328 lt_multi_os_dir=/`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null`
2329 # ...but if some path component already ends with the multilib dir we assume
2330 # that all is fine and trust -print-search-dirs as is (GCC 4.2? or newer).
2331 case "$lt_multi_os_dir; $lt_search_path_spec " in
2332 "/; "* | "/.; "* | "/./; "* | *"$lt_multi_os_dir "* | *"$lt_multi_os_dir/ "*)
2333 lt_multi_os_dir=
2334 ;;
2335 esac
2336 for lt_sys_path in $lt_search_path_spec; do
2337 if test -d "$lt_sys_path$lt_multi_os_dir"; then
2338 lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path$lt_multi_os_dir"
2339 elif test -n "$lt_multi_os_dir"; then
2340 test -d "$lt_sys_path" && \
2341 lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path"
2342 fi
2343 done
2344 lt_search_path_spec=`$ECHO "$lt_tmp_lt_search_path_spec" | awk '
2345 BEGIN {RS = " "; FS = "/|\n";} {
2346 lt_foo = "";
2347 lt_count = 0;
2348 for (lt_i = NF; lt_i > 0; lt_i--) {
2349 if ($lt_i != "" && $lt_i != ".") {
2350 if ($lt_i == "..") {
2351 lt_count++;
2352 } else {
2353 if (lt_count == 0) {
2354 lt_foo = "/" $lt_i lt_foo;
2355 } else {
2356 lt_count--;
2357 }
2358 }
2359 }
2360 }
2361 if (lt_foo != "") { lt_freq[[lt_foo]]++; }
2362 if (lt_freq[[lt_foo]] == 1) { print lt_foo; }
2363 }'`
2364 # AWK program above erroneously prepends '/' to C:/dos/paths
2365 # for these hosts.
2366 case $host_os in
2367 mingw* | cegcc*) lt_search_path_spec=`$ECHO "$lt_search_path_spec" |\
2368 $SED 's|/\([[A-Za-z]]:\)|\1|g'` ;;
2369 esac
2370 sys_lib_search_path_spec=`$ECHO "$lt_search_path_spec" | $lt_NL2SP`
2371 else
2372 sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
2373 fi])
2374 library_names_spec=
2375 libname_spec='lib$name'
2376 soname_spec=
2377 shrext_cmds=.so
2378 postinstall_cmds=
2379 postuninstall_cmds=
2380 finish_cmds=
2381 finish_eval=
2382 shlibpath_var=
2383 shlibpath_overrides_runpath=unknown
2384 version_type=none
2385 dynamic_linker="$host_os ld.so"
2386 sys_lib_dlsearch_path_spec="/lib /usr/lib"
2387 need_lib_prefix=unknown
2388 hardcode_into_libs=no
2389
2390 # when you set need_version to no, make sure it does not cause -set_version
2391 # flags to be left without arguments
2392 need_version=unknown
2393
2394 AC_ARG_VAR([LT_SYS_LIBRARY_PATH],
2395 [User-defined run-time library search path.])
2396
2397 case $host_os in
2398 aix3*)
2399 version_type=linux # correct to gnu/linux during the next big refactor
2400 library_names_spec='$libname$release$shared_ext$versuffix $libname.a'
2401 shlibpath_var=LIBPATH
2402
2403 # AIX 3 has no versioning support, so we append a major version to the name.
2404 soname_spec='$libname$release$shared_ext$major'
2405 ;;
2406
2407 aix[[4-9]]*)
2408 version_type=linux # correct to gnu/linux during the next big refactor
2409 need_lib_prefix=no
2410 need_version=no
2411 hardcode_into_libs=yes
2412 if test ia64 = "$host_cpu"; then
2413 # AIX 5 supports IA64
2414 library_names_spec='$libname$release$shared_ext$major $libname$release$shared_ext$versuffix $libname$shared_ext'
2415 shlibpath_var=LD_LIBRARY_PATH
2416 else
2417 # With GCC up to 2.95.x, collect2 would create an import file
2418 # for dependence libraries. The import file would start with
2419 # the line '#! .'. This would cause the generated library to
2420 # depend on '.', always an invalid library. This was fixed in
2421 # development snapshots of GCC prior to 3.0.
2422 case $host_os in
2423 aix4 | aix4.[[01]] | aix4.[[01]].*)
2424 if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
2425 echo ' yes '
2426 echo '#endif'; } | $CC -E - | $GREP yes > /dev/null; then
2427 :
2428 else
2429 can_build_shared=no
2430 fi
2431 ;;
2432 esac
2433 # Using Import Files as archive members, it is possible to support
2434 # filename-based versioning of shared library archives on AIX. While
2435 # this would work for both with and without runtime linking, it will
2436 # prevent static linking of such archives. So we do filename-based
2437 # shared library versioning with .so extension only, which is used
2438 # when both runtime linking and shared linking is enabled.
2439 # Unfortunately, runtime linking may impact performance, so we do
2440 # not want this to be the default eventually. Also, we use the
2441 # versioned .so libs for executables only if there is the -brtl
2442 # linker flag in LDFLAGS as well, or --with-aix-soname=svr4 only.
2443 # To allow for filename-based versioning support, we need to create
2444 # libNAME.so.V as an archive file, containing:
2445 # *) an Import File, referring to the versioned filename of the
2446 # archive as well as the shared archive member, telling the
2447 # bitwidth (32 or 64) of that shared object, and providing the
2448 # list of exported symbols of that shared object, eventually
2449 # decorated with the 'weak' keyword
2450 # *) the shared object with the F_LOADONLY flag set, to really avoid
2451 # it being seen by the linker.
2452 # At run time we better use the real file rather than another symlink,
2453 # but for link time we create the symlink libNAME.so -> libNAME.so.V
2454
2455 case $with_aix_soname,$aix_use_runtimelinking in
2456 # AIX (on Power*) has no versioning support, so currently we cannot hardcode correct
2457 # soname into executable. Probably we can add versioning support to
2458 # collect2, so additional links can be useful in future.
2459 aix,yes) # traditional libtool
2460 dynamic_linker='AIX unversionable lib.so'
2461 # If using run time linking (on AIX 4.2 or later) use lib<name>.so
2462 # instead of lib<name>.a to let people know that these are not
2463 # typical AIX shared libraries.
2464 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2465 ;;
2466 aix,no) # traditional AIX only
2467 dynamic_linker='AIX lib.a[(]lib.so.V[)]'
2468 # We preserve .a as extension for shared libraries through AIX4.2
2469 # and later when we are not doing run time linking.
2470 library_names_spec='$libname$release.a $libname.a'
2471 soname_spec='$libname$release$shared_ext$major'
2472 ;;
2473 svr4,*) # full svr4 only
2474 dynamic_linker="AIX lib.so.V[(]$shared_archive_member_spec.o[)]"
2475 library_names_spec='$libname$release$shared_ext$major $libname$shared_ext'
2476 # We do not specify a path in Import Files, so LIBPATH fires.
2477 shlibpath_overrides_runpath=yes
2478 ;;
2479 *,yes) # both, prefer svr4
2480 dynamic_linker="AIX lib.so.V[(]$shared_archive_member_spec.o[)], lib.a[(]lib.so.V[)]"
2481 library_names_spec='$libname$release$shared_ext$major $libname$shared_ext'
2482 # unpreferred sharedlib libNAME.a needs extra handling
2483 postinstall_cmds='test -n "$linkname" || linkname="$realname"~func_stripname "" ".so" "$linkname"~$install_shared_prog "$dir/$func_stripname_result.$libext" "$destdir/$func_stripname_result.$libext"~test -z "$tstripme" || test -z "$striplib" || $striplib "$destdir/$func_stripname_result.$libext"'
2484 postuninstall_cmds='for n in $library_names $old_library; do :; done~func_stripname "" ".so" "$n"~test "$func_stripname_result" = "$n" || func_append rmfiles " $odir/$func_stripname_result.$libext"'
2485 # We do not specify a path in Import Files, so LIBPATH fires.
2486 shlibpath_overrides_runpath=yes
2487 ;;
2488 *,no) # both, prefer aix
2489 dynamic_linker="AIX lib.a[(]lib.so.V[)], lib.so.V[(]$shared_archive_member_spec.o[)]"
2490 library_names_spec='$libname$release.a $libname.a'
2491 soname_spec='$libname$release$shared_ext$major'
2492 # unpreferred sharedlib libNAME.so.V and symlink libNAME.so need extra handling
2493 postinstall_cmds='test -z "$dlname" || $install_shared_prog $dir/$dlname $destdir/$dlname~test -z "$tstripme" || test -z "$striplib" || $striplib $destdir/$dlname~test -n "$linkname" || linkname=$realname~func_stripname "" ".a" "$linkname"~(cd "$destdir" && $LN_S -f $dlname $func_stripname_result.so)'
2494 postuninstall_cmds='test -z "$dlname" || func_append rmfiles " $odir/$dlname"~for n in $old_library $library_names; do :; done~func_stripname "" ".a" "$n"~func_append rmfiles " $odir/$func_stripname_result.so"'
2495 ;;
2496 esac
2497 shlibpath_var=LIBPATH
2498 fi
2499 ;;
2500
2501 amigaos*)
2502 case $host_cpu in
2503 powerpc)
2504 # Since July 2007 AmigaOS4 officially supports .so libraries.
2505 # When compiling the executable, add -use-dynld -Lsobjs: to the compileline.
2506 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2507 ;;
2508 m68k)
2509 library_names_spec='$libname.ixlibrary $libname.a'
2510 # Create ${libname}_ixlibrary.a entries in /sys/libs.
2511 finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`func_echo_all "$lib" | $SED '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done'
2512 ;;
2513 esac
2514 ;;
2515
2516 beos*)
2517 library_names_spec='$libname$shared_ext'
2518 dynamic_linker="$host_os ld.so"
2519 shlibpath_var=LIBRARY_PATH
2520 ;;
2521
2522 bsdi[[45]]*)
2523 version_type=linux # correct to gnu/linux during the next big refactor
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 finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
2528 shlibpath_var=LD_LIBRARY_PATH
2529 sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
2530 sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
2531 # the default ld.so.conf also contains /usr/contrib/lib and
2532 # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
2533 # libtool to hard-code these into programs
2534 ;;
2535
2536 cygwin* | mingw* | pw32* | cegcc*)
2537 version_type=windows
2538 shrext_cmds=.dll
2539 need_version=no
2540 need_lib_prefix=no
2541
2542 case $GCC,$cc_basename in
2543 yes,*)
2544 # gcc
2545 library_names_spec='$libname.dll.a'
2546 # DLL is installed to $(libdir)/../bin by postinstall_cmds
2547 postinstall_cmds='base_file=`basename \$file`~
2548 dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~
2549 dldir=$destdir/`dirname \$dlpath`~
2550 test -d \$dldir || mkdir -p \$dldir~
2551 $install_prog $dir/$dlname \$dldir/$dlname~
2552 chmod a+x \$dldir/$dlname~
2553 if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
2554 eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
2555 fi'
2556 postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
2557 dlpath=$dir/\$dldll~
2558 $RM \$dlpath'
2559 shlibpath_overrides_runpath=yes
2560
2561 case $host_os in
2562 cygwin*)
2563 # Cygwin DLLs use 'cyg' prefix rather than 'lib'
2564 soname_spec='`echo $libname | sed -e 's/^lib/cyg/'``echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext'
2565 m4_if([$1], [],[
2566 sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api"])
2567 ;;
2568 mingw* | cegcc*)
2569 # MinGW DLLs use traditional 'lib' prefix
2570 soname_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext'
2571 ;;
2572 pw32*)
2573 # pw32 DLLs use 'pw' prefix rather than 'lib'
2574 library_names_spec='`echo $libname | sed -e 's/^lib/pw/'``echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext'
2575 ;;
2576 esac
2577 dynamic_linker='Win32 ld.exe'
2578 ;;
2579
2580 *,cl*)
2581 # Native MSVC
2582 libname_spec='$name'
2583 soname_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext'
2584 library_names_spec='$libname.dll.lib'
2585
2586 case $build_os in
2587 mingw*)
2588 sys_lib_search_path_spec=
2589 lt_save_ifs=$IFS
2590 IFS=';'
2591 for lt_path in $LIB
2592 do
2593 IFS=$lt_save_ifs
2594 # Let DOS variable expansion print the short 8.3 style file name.
2595 lt_path=`cd "$lt_path" 2>/dev/null && cmd //C "for %i in (".") do @echo %~si"`
2596 sys_lib_search_path_spec="$sys_lib_search_path_spec $lt_path"
2597 done
2598 IFS=$lt_save_ifs
2599 # Convert to MSYS style.
2600 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | sed -e 's|\\\\|/|g' -e 's| \\([[a-zA-Z]]\\):| /\\1|g' -e 's|^ ||'`
2601 ;;
2602 cygwin*)
2603 # Convert to unix form, then to dos form, then back to unix form
2604 # but this time dos style (no spaces!) so that the unix form looks
2605 # like /cygdrive/c/PROGRA~1:/cygdr...
2606 sys_lib_search_path_spec=`cygpath --path --unix "$LIB"`
2607 sys_lib_search_path_spec=`cygpath --path --dos "$sys_lib_search_path_spec" 2>/dev/null`
2608 sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
2609 ;;
2610 *)
2611 sys_lib_search_path_spec=$LIB
2612 if $ECHO "$sys_lib_search_path_spec" | [$GREP ';[c-zC-Z]:/' >/dev/null]; then
2613 # It is most probably a Windows format PATH.
2614 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
2615 else
2616 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
2617 fi
2618 # FIXME: find the short name or the path components, as spaces are
2619 # common. (e.g. "Program Files" -> "PROGRA~1")
2620 ;;
2621 esac
2622
2623 # DLL is installed to $(libdir)/../bin by postinstall_cmds
2624 postinstall_cmds='base_file=`basename \$file`~
2625 dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~
2626 dldir=$destdir/`dirname \$dlpath`~
2627 test -d \$dldir || mkdir -p \$dldir~
2628 $install_prog $dir/$dlname \$dldir/$dlname'
2629 postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
2630 dlpath=$dir/\$dldll~
2631 $RM \$dlpath'
2632 shlibpath_overrides_runpath=yes
2633 dynamic_linker='Win32 link.exe'
2634 ;;
2635
2636 *)
2637 # Assume MSVC wrapper
2638 library_names_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext $libname.lib'
2639 dynamic_linker='Win32 ld.exe'
2640 ;;
2641 esac
2642 # FIXME: first we should search . and the directory the executable is in
2643 shlibpath_var=PATH
2644 ;;
2645
2646 darwin* | rhapsody*)
2647 dynamic_linker="$host_os dyld"
2648 version_type=darwin
2649 need_lib_prefix=no
2650 need_version=no
2651 library_names_spec='$libname$release$major$shared_ext $libname$shared_ext'
2652 soname_spec='$libname$release$major$shared_ext'
2653 shlibpath_overrides_runpath=yes
2654 shlibpath_var=DYLD_LIBRARY_PATH
2655 shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
2656 m4_if([$1], [],[
2657 sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"])
2658 sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'
2659 ;;
2660
2661 dgux*)
2662 version_type=linux # correct to gnu/linux during the next big refactor
2663 need_lib_prefix=no
2664 need_version=no
2665 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2666 soname_spec='$libname$release$shared_ext$major'
2667 shlibpath_var=LD_LIBRARY_PATH
2668 ;;
2669
2670 freebsd* | dragonfly*)
2671 # DragonFly does not have aout. When/if they implement a new
2672 # versioning mechanism, adjust this.
2673 if test -x /usr/bin/objformat; then
2674 objformat=`/usr/bin/objformat`
2675 else
2676 case $host_os in
2677 freebsd[[23]].*) objformat=aout ;;
2678 *) objformat=elf ;;
2679 esac
2680 fi
2681 version_type=freebsd-$objformat
2682 case $version_type in
2683 freebsd-elf*)
2684 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2685 soname_spec='$libname$release$shared_ext$major'
2686 need_version=no
2687 need_lib_prefix=no
2688 ;;
2689 freebsd-*)
2690 library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
2691 need_version=yes
2692 ;;
2693 esac
2694 shlibpath_var=LD_LIBRARY_PATH
2695 case $host_os in
2696 freebsd2.*)
2697 shlibpath_overrides_runpath=yes
2698 ;;
2699 freebsd3.[[01]]* | freebsdelf3.[[01]]*)
2700 shlibpath_overrides_runpath=yes
2701 hardcode_into_libs=yes
2702 ;;
2703 freebsd3.[[2-9]]* | freebsdelf3.[[2-9]]* | \
2704 freebsd4.[[0-5]] | freebsdelf4.[[0-5]] | freebsd4.1.1 | freebsdelf4.1.1)
2705 shlibpath_overrides_runpath=no
2706 hardcode_into_libs=yes
2707 ;;
2708 *) # from 4.6 on, and DragonFly
2709 shlibpath_overrides_runpath=yes
2710 hardcode_into_libs=yes
2711 ;;
2712 esac
2713 ;;
2714
2715 haiku*)
2716 version_type=linux # correct to gnu/linux during the next big refactor
2717 need_lib_prefix=no
2718 need_version=no
2719 dynamic_linker="$host_os runtime_loader"
2720 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2721 soname_spec='$libname$release$shared_ext$major'
2722 shlibpath_var=LIBRARY_PATH
2723 shlibpath_overrides_runpath=no
2724 sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib'
2725 hardcode_into_libs=yes
2726 ;;
2727
2728 hpux9* | hpux10* | hpux11*)
2729 # Give a soname corresponding to the major version so that dld.sl refuses to
2730 # link against other versions.
2731 version_type=sunos
2732 need_lib_prefix=no
2733 need_version=no
2734 case $host_cpu in
2735 ia64*)
2736 shrext_cmds='.so'
2737 hardcode_into_libs=yes
2738 dynamic_linker="$host_os dld.so"
2739 shlibpath_var=LD_LIBRARY_PATH
2740 shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
2741 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2742 soname_spec='$libname$release$shared_ext$major'
2743 if test 32 = "$HPUX_IA64_MODE"; then
2744 sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"
2745 sys_lib_dlsearch_path_spec=/usr/lib/hpux32
2746 else
2747 sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"
2748 sys_lib_dlsearch_path_spec=/usr/lib/hpux64
2749 fi
2750 ;;
2751 hppa*64*)
2752 shrext_cmds='.sl'
2753 hardcode_into_libs=yes
2754 dynamic_linker="$host_os dld.sl"
2755 shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH
2756 shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
2757 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2758 soname_spec='$libname$release$shared_ext$major'
2759 sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64"
2760 sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
2761 ;;
2762 *)
2763 shrext_cmds='.sl'
2764 dynamic_linker="$host_os dld.sl"
2765 shlibpath_var=SHLIB_PATH
2766 shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
2767 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2768 soname_spec='$libname$release$shared_ext$major'
2769 ;;
2770 esac
2771 # HP-UX runs *really* slowly unless shared libraries are mode 555, ...
2772 postinstall_cmds='chmod 555 $lib'
2773 # or fails outright, so override atomically:
2774 install_override_mode=555
2775 ;;
2776
2777 interix[[3-9]]*)
2778 version_type=linux # correct to gnu/linux during the next big refactor
2779 need_lib_prefix=no
2780 need_version=no
2781 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2782 soname_spec='$libname$release$shared_ext$major'
2783 dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)'
2784 shlibpath_var=LD_LIBRARY_PATH
2785 shlibpath_overrides_runpath=no
2786 hardcode_into_libs=yes
2787 ;;
2788
2789 irix5* | irix6* | nonstopux*)
2790 case $host_os in
2791 nonstopux*) version_type=nonstopux ;;
2792 *)
2793 if test yes = "$lt_cv_prog_gnu_ld"; then
2794 version_type=linux # correct to gnu/linux during the next big refactor
2795 else
2796 version_type=irix
2797 fi ;;
2798 esac
2799 need_lib_prefix=no
2800 need_version=no
2801 soname_spec='$libname$release$shared_ext$major'
2802 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$release$shared_ext $libname$shared_ext'
2803 case $host_os in
2804 irix5* | nonstopux*)
2805 libsuff= shlibsuff=
2806 ;;
2807 *)
2808 case $LD in # libtool.m4 will add one of these switches to LD
2809 *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ")
2810 libsuff= shlibsuff= libmagic=32-bit;;
2811 *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ")
2812 libsuff=32 shlibsuff=N32 libmagic=N32;;
2813 *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ")
2814 libsuff=64 shlibsuff=64 libmagic=64-bit;;
2815 *) libsuff= shlibsuff= libmagic=never-match;;
2816 esac
2817 ;;
2818 esac
2819 shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
2820 shlibpath_overrides_runpath=no
2821 sys_lib_search_path_spec="/usr/lib$libsuff /lib$libsuff /usr/local/lib$libsuff"
2822 sys_lib_dlsearch_path_spec="/usr/lib$libsuff /lib$libsuff"
2823 hardcode_into_libs=yes
2824 ;;
2825
2826 # No shared lib support for Linux oldld, aout, or coff.
2827 linux*oldld* | linux*aout* | linux*coff*)
2828 dynamic_linker=no
2829 ;;
2830
2831 linux*android*)
2832 version_type=none # Android doesn't support versioned libraries.
2833 need_lib_prefix=no
2834 need_version=no
2835 library_names_spec='$libname$release$shared_ext'
2836 soname_spec='$libname$release$shared_ext'
2837 finish_cmds=
2838 shlibpath_var=LD_LIBRARY_PATH
2839 shlibpath_overrides_runpath=yes
2840
2841 # This implies no fast_install, which is unacceptable.
2842 # Some rework will be needed to allow for fast_install
2843 # before this can be enabled.
2844 hardcode_into_libs=yes
2845
2846 dynamic_linker='Android linker'
2847 # Don't embed -rpath directories since the linker doesn't support them.
2848 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
2849 ;;
2850
2851 # This must be glibc/ELF.
2852 linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
2853 version_type=linux # correct to gnu/linux during the next big refactor
2854 need_lib_prefix=no
2855 need_version=no
2856 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2857 soname_spec='$libname$release$shared_ext$major'
2858 finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
2859 shlibpath_var=LD_LIBRARY_PATH
2860 shlibpath_overrides_runpath=no
2861
2862 # Some binutils ld are patched to set DT_RUNPATH
2863 AC_CACHE_VAL([lt_cv_shlibpath_overrides_runpath],
2864 [lt_cv_shlibpath_overrides_runpath=no
2865 save_LDFLAGS=$LDFLAGS
2866 save_libdir=$libdir
2867 eval "libdir=/foo; wl=\"$_LT_TAGVAR(lt_prog_compiler_wl, $1)\"; \
2868 LDFLAGS=\"\$LDFLAGS $_LT_TAGVAR(hardcode_libdir_flag_spec, $1)\""
2869 AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])],
2870 [AS_IF([ ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null],
2871 [lt_cv_shlibpath_overrides_runpath=yes])])
2872 LDFLAGS=$save_LDFLAGS
2873 libdir=$save_libdir
2874 ])
2875 shlibpath_overrides_runpath=$lt_cv_shlibpath_overrides_runpath
2876
2877 # This implies no fast_install, which is unacceptable.
2878 # Some rework will be needed to allow for fast_install
2879 # before this can be enabled.
2880 hardcode_into_libs=yes
2881
2882 # Ideally, we could use ldconfig to report *all* directores which are
2883 # searched for libraries, however this is still not possible. Aside from not
2884 # being certain /sbin/ldconfig is available, command
2885 # 'ldconfig -N -X -v | grep ^/' on 64bit Fedora does not report /usr/lib64,
2886 # even though it is searched at run-time. Try to do the best guess by
2887 # appending ld.so.conf contents (and includes) to the search path.
2888 if test -f /etc/ld.so.conf; then
2889 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' ' '`
2890 sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
2891 fi
2892
2893 # We used to test for /lib/ld.so.1 and disable shared libraries on
2894 # powerpc, because MkLinux only supported shared libraries with the
2895 # GNU dynamic linker. Since this was broken with cross compilers,
2896 # most powerpc-linux boxes support dynamic linking these days and
2897 # people can always --disable-shared, the test was removed, and we
2898 # assume the GNU/Linux dynamic linker is in use.
2899 dynamic_linker='GNU/Linux ld.so'
2900 ;;
2901
2902 netbsdelf*-gnu)
2903 version_type=linux
2904 need_lib_prefix=no
2905 need_version=no
2906 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
2907 soname_spec='${libname}${release}${shared_ext}$major'
2908 shlibpath_var=LD_LIBRARY_PATH
2909 shlibpath_overrides_runpath=no
2910 hardcode_into_libs=yes
2911 dynamic_linker='NetBSD ld.elf_so'
2912 ;;
2913
2914 netbsd*)
2915 version_type=sunos
2916 need_lib_prefix=no
2917 need_version=no
2918 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
2919 library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
2920 finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
2921 dynamic_linker='NetBSD (a.out) ld.so'
2922 else
2923 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2924 soname_spec='$libname$release$shared_ext$major'
2925 dynamic_linker='NetBSD ld.elf_so'
2926 fi
2927 shlibpath_var=LD_LIBRARY_PATH
2928 shlibpath_overrides_runpath=yes
2929 hardcode_into_libs=yes
2930 ;;
2931
2932 newsos6)
2933 version_type=linux # correct to gnu/linux during the next big refactor
2934 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2935 shlibpath_var=LD_LIBRARY_PATH
2936 shlibpath_overrides_runpath=yes
2937 ;;
2938
2939 *nto* | *qnx*)
2940 version_type=qnx
2941 need_lib_prefix=no
2942 need_version=no
2943 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
2944 soname_spec='$libname$release$shared_ext$major'
2945 shlibpath_var=LD_LIBRARY_PATH
2946 shlibpath_overrides_runpath=no
2947 hardcode_into_libs=yes
2948 dynamic_linker='ldqnx.so'
2949 ;;
2950
2951 openbsd* | bitrig*)
2952 version_type=sunos
2953 sys_lib_dlsearch_path_spec=/usr/lib
2954 need_lib_prefix=no
2955 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then
2956 need_version=no
2957 else
2958 need_version=yes
2959 fi
2960 library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
2961 finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
2962 shlibpath_var=LD_LIBRARY_PATH
2963 shlibpath_overrides_runpath=yes
2964 ;;
2965
2966 os2*)
2967 libname_spec='$name'
2968 version_type=windows
2969 shrext_cmds=.dll
2970 need_version=no
2971 need_lib_prefix=no
2972 # OS/2 can only load a DLL with a base name of 8 characters or less.
2973 soname_spec='`test -n "$os2dllname" && libname="$os2dllname";
2974 v=$($ECHO $release$versuffix | tr -d .-);
2975 n=$($ECHO $libname | cut -b -$((8 - ${#v})) | tr . _);
2976 $ECHO $n$v`$shared_ext'
2977 library_names_spec='${libname}_dll.$libext'
2978 dynamic_linker='OS/2 ld.exe'
2979 shlibpath_var=BEGINLIBPATH
2980 sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
2981 sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
2982 postinstall_cmds='base_file=`basename \$file`~
2983 dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; $ECHO \$dlname'\''`~
2984 dldir=$destdir/`dirname \$dlpath`~
2985 test -d \$dldir || mkdir -p \$dldir~
2986 $install_prog $dir/$dlname \$dldir/$dlname~
2987 chmod a+x \$dldir/$dlname~
2988 if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
2989 eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
2990 fi'
2991 postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; $ECHO \$dlname'\''`~
2992 dlpath=$dir/\$dldll~
2993 $RM \$dlpath'
2994 ;;
2995
2996 osf3* | osf4* | osf5*)
2997 version_type=osf
2998 need_lib_prefix=no
2999 need_version=no
3000 soname_spec='$libname$release$shared_ext$major'
3001 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
3002 shlibpath_var=LD_LIBRARY_PATH
3003 sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
3004 sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
3005 ;;
3006
3007 rdos*)
3008 dynamic_linker=no
3009 ;;
3010
3011 solaris*)
3012 version_type=linux # correct to gnu/linux during the next big refactor
3013 need_lib_prefix=no
3014 need_version=no
3015 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
3016 soname_spec='$libname$release$shared_ext$major'
3017 shlibpath_var=LD_LIBRARY_PATH
3018 shlibpath_overrides_runpath=yes
3019 hardcode_into_libs=yes
3020 # ldd complains unless libraries are executable
3021 postinstall_cmds='chmod +x $lib'
3022 ;;
3023
3024 sunos4*)
3025 version_type=sunos
3026 library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
3027 finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
3028 shlibpath_var=LD_LIBRARY_PATH
3029 shlibpath_overrides_runpath=yes
3030 if test yes = "$with_gnu_ld"; then
3031 need_lib_prefix=no
3032 fi
3033 need_version=yes
3034 ;;
3035
3036 sysv4 | sysv4.3*)
3037 version_type=linux # correct to gnu/linux during the next big refactor
3038 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
3039 soname_spec='$libname$release$shared_ext$major'
3040 shlibpath_var=LD_LIBRARY_PATH
3041 case $host_vendor in
3042 sni)
3043 shlibpath_overrides_runpath=no
3044 need_lib_prefix=no
3045 runpath_var=LD_RUN_PATH
3046 ;;
3047 siemens)
3048 need_lib_prefix=no
3049 ;;
3050 motorola)
3051 need_lib_prefix=no
3052 need_version=no
3053 shlibpath_overrides_runpath=no
3054 sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
3055 ;;
3056 esac
3057 ;;
3058
3059 sysv4*MP*)
3060 if test -d /usr/nec; then
3061 version_type=linux # correct to gnu/linux during the next big refactor
3062 library_names_spec='$libname$shared_ext.$versuffix $libname$shared_ext.$major $libname$shared_ext'
3063 soname_spec='$libname$shared_ext.$major'
3064 shlibpath_var=LD_LIBRARY_PATH
3065 fi
3066 ;;
3067
3068 sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
3069 version_type=sco
3070 need_lib_prefix=no
3071 need_version=no
3072 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext $libname$shared_ext'
3073 soname_spec='$libname$release$shared_ext$major'
3074 shlibpath_var=LD_LIBRARY_PATH
3075 shlibpath_overrides_runpath=yes
3076 hardcode_into_libs=yes
3077 if test yes = "$with_gnu_ld"; then
3078 sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib'
3079 else
3080 sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'
3081 case $host_os in
3082 sco3.2v5*)
3083 sys_lib_search_path_spec="$sys_lib_search_path_spec /lib"
3084 ;;
3085 esac
3086 fi
3087 sys_lib_dlsearch_path_spec='/usr/lib'
3088 ;;
3089
3090 tpf*)
3091 # TPF is a cross-target only. Preferred cross-host = GNU/Linux.
3092 version_type=linux # correct to gnu/linux during the next big refactor
3093 need_lib_prefix=no
3094 need_version=no
3095 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
3096 shlibpath_var=LD_LIBRARY_PATH
3097 shlibpath_overrides_runpath=no
3098 hardcode_into_libs=yes
3099 ;;
3100
3101 uts4*)
3102 version_type=linux # correct to gnu/linux during the next big refactor
3103 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
3104 soname_spec='$libname$release$shared_ext$major'
3105 shlibpath_var=LD_LIBRARY_PATH
3106 ;;
3107
3108 *)
3109 dynamic_linker=no
3110 ;;
3111 esac
3112 AC_MSG_RESULT([$dynamic_linker])
3113 test no = "$dynamic_linker" && can_build_shared=no
3114
3115 variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
3116 if test yes = "$GCC"; then
3117 variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
3118 fi
3119
3120 if test set = "${lt_cv_sys_lib_search_path_spec+set}"; then
3121 sys_lib_search_path_spec=$lt_cv_sys_lib_search_path_spec
3122 fi
3123
3124 if test set = "${lt_cv_sys_lib_dlsearch_path_spec+set}"; then
3125 sys_lib_dlsearch_path_spec=$lt_cv_sys_lib_dlsearch_path_spec
3126 fi
3127
3128 # remember unaugmented sys_lib_dlsearch_path content for libtool script decls...
3129 configure_time_dlsearch_path=$sys_lib_dlsearch_path_spec
3130
3131 # ... but it needs LT_SYS_LIBRARY_PATH munging for other configure-time code
3132 func_munge_path_list sys_lib_dlsearch_path_spec "$LT_SYS_LIBRARY_PATH"
3133
3134 # to be used as default LT_SYS_LIBRARY_PATH value in generated libtool
3135 configure_time_lt_sys_library_path=$LT_SYS_LIBRARY_PATH
3136
3137 _LT_DECL([], [variables_saved_for_relink], [1],
3138 [Variables whose values should be saved in libtool wrapper scripts and
3139 restored at link time])
3140 _LT_DECL([], [need_lib_prefix], [0],
3141 [Do we need the "lib" prefix for modules?])
3142 _LT_DECL([], [need_version], [0], [Do we need a version for libraries?])
3143 _LT_DECL([], [version_type], [0], [Library versioning type])
3144 _LT_DECL([], [runpath_var], [0], [Shared library runtime path variable])
3145 _LT_DECL([], [shlibpath_var], [0],[Shared library path variable])
3146 _LT_DECL([], [shlibpath_overrides_runpath], [0],
3147 [Is shlibpath searched before the hard-coded library search path?])
3148 _LT_DECL([], [libname_spec], [1], [Format of library name prefix])
3149 _LT_DECL([], [library_names_spec], [1],
3150 [[List of archive names. First name is the real one, the rest are links.
3151 The last name is the one that the linker finds with -lNAME]])
3152 _LT_DECL([], [soname_spec], [1],
3153 [[The coded name of the library, if different from the real name]])
3154 _LT_DECL([], [install_override_mode], [1],
3155 [Permission mode override for installation of shared libraries])
3156 _LT_DECL([], [postinstall_cmds], [2],
3157 [Command to use after installation of a shared archive])
3158 _LT_DECL([], [postuninstall_cmds], [2],
3159 [Command to use after uninstallation of a shared archive])
3160 _LT_DECL([], [finish_cmds], [2],
3161 [Commands used to finish a libtool library installation in a directory])
3162 _LT_DECL([], [finish_eval], [1],
3163 [[As "finish_cmds", except a single script fragment to be evaled but
3164 not shown]])
3165 _LT_DECL([], [hardcode_into_libs], [0],
3166 [Whether we should hardcode library paths into libraries])
3167 _LT_DECL([], [sys_lib_search_path_spec], [2],
3168 [Compile-time system search path for libraries])
3169 _LT_DECL([sys_lib_dlsearch_path_spec], [configure_time_dlsearch_path], [2],
3170 [Detected run-time system search path for libraries])
3171 _LT_DECL([], [configure_time_lt_sys_library_path], [2],
3172 [Explicit LT_SYS_LIBRARY_PATH set during ./configure time])
3173 ])# _LT_SYS_DYNAMIC_LINKER
3174
3175
3176 # _LT_PATH_TOOL_PREFIX(TOOL)
3177 # --------------------------
3178 # find a file program that can recognize shared library
3179 AC_DEFUN([_LT_PATH_TOOL_PREFIX],
3180 [m4_require([_LT_DECL_EGREP])dnl
3181 AC_MSG_CHECKING([for $1])
3182 AC_CACHE_VAL(lt_cv_path_MAGIC_CMD,
3183 [case $MAGIC_CMD in
3184 [[\\/*] | ?:[\\/]*])
3185 lt_cv_path_MAGIC_CMD=$MAGIC_CMD # Let the user override the test with a path.
3186 ;;
3187 *)
3188 lt_save_MAGIC_CMD=$MAGIC_CMD
3189 lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR
3190 dnl $ac_dummy forces splitting on constant user-supplied paths.
3191 dnl POSIX.2 word splitting is done only on the output of word expansions,
3192 dnl not every word. This closes a longstanding sh security hole.
3193 ac_dummy="m4_if([$2], , $PATH, [$2])"
3194 for ac_dir in $ac_dummy; do
3195 IFS=$lt_save_ifs
3196 test -z "$ac_dir" && ac_dir=.
3197 if test -f "$ac_dir/$1"; then
3198 lt_cv_path_MAGIC_CMD=$ac_dir/"$1"
3199 if test -n "$file_magic_test_file"; then
3200 case $deplibs_check_method in
3201 "file_magic "*)
3202 file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
3203 MAGIC_CMD=$lt_cv_path_MAGIC_CMD
3204 if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
3205 $EGREP "$file_magic_regex" > /dev/null; then
3206 :
3207 else
3208 cat <<_LT_EOF 1>&2
3209
3210 *** Warning: the command libtool uses to detect shared libraries,
3211 *** $file_magic_cmd, produces output that libtool cannot recognize.
3212 *** The result is that libtool may fail to recognize shared libraries
3213 *** as such. This will affect the creation of libtool libraries that
3214 *** depend on shared libraries, but programs linked with such libtool
3215 *** libraries will work regardless of this problem. Nevertheless, you
3216 *** may want to report the problem to your system manager and/or to
3217 *** bug-libtool@gnu.org
3218
3219 _LT_EOF
3220 fi ;;
3221 esac
3222 fi
3223 break
3224 fi
3225 done
3226 IFS=$lt_save_ifs
3227 MAGIC_CMD=$lt_save_MAGIC_CMD
3228 ;;
3229 esac])
3230 MAGIC_CMD=$lt_cv_path_MAGIC_CMD
3231 if test -n "$MAGIC_CMD"; then
3232 AC_MSG_RESULT($MAGIC_CMD)
3233 else
3234 AC_MSG_RESULT(no)
3235 fi
3236 _LT_DECL([], [MAGIC_CMD], [0],
3237 [Used to examine libraries when file_magic_cmd begins with "file"])dnl
3238 ])# _LT_PATH_TOOL_PREFIX
3239
3240 # Old name:
3241 AU_ALIAS([AC_PATH_TOOL_PREFIX], [_LT_PATH_TOOL_PREFIX])
3242 dnl aclocal-1.4 backwards compatibility:
3243 dnl AC_DEFUN([AC_PATH_TOOL_PREFIX], [])
3244
3245
3246 # _LT_PATH_MAGIC
3247 # --------------
3248 # find a file program that can recognize a shared library
3249 m4_defun([_LT_PATH_MAGIC],
3250 [_LT_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin$PATH_SEPARATOR$PATH)
3251 if test -z "$lt_cv_path_MAGIC_CMD"; then
3252 if test -n "$ac_tool_prefix"; then
3253 _LT_PATH_TOOL_PREFIX(file, /usr/bin$PATH_SEPARATOR$PATH)
3254 else
3255 MAGIC_CMD=:
3256 fi
3257 fi
3258 ])# _LT_PATH_MAGIC
3259
3260
3261 # LT_PATH_LD
3262 # ----------
3263 # find the pathname to the GNU or non-GNU linker
3264 AC_DEFUN([LT_PATH_LD],
3265 [AC_REQUIRE([AC_PROG_CC])dnl
3266 AC_REQUIRE([AC_CANONICAL_HOST])dnl
3267 AC_REQUIRE([AC_CANONICAL_BUILD])dnl
3268 m4_require([_LT_DECL_SED])dnl
3269 m4_require([_LT_DECL_EGREP])dnl
3270 m4_require([_LT_PROG_ECHO_BACKSLASH])dnl
3271
3272 AC_ARG_WITH([gnu-ld],
3273 [AS_HELP_STRING([--with-gnu-ld],
3274 [assume the C compiler uses GNU ld @<:@default=no@:>@])],
3275 [test no = "$withval" || with_gnu_ld=yes],
3276 [with_gnu_ld=no])dnl
3277
3278 ac_prog=ld
3279 if test yes = "$GCC"; then
3280 # Check if gcc -print-prog-name=ld gives a path.
3281 AC_MSG_CHECKING([for ld used by $CC])
3282 case $host in
3283 *-*-mingw*)
3284 # gcc leaves a trailing carriage return, which upsets mingw
3285 ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
3286 *)
3287 ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
3288 esac
3289 case $ac_prog in
3290 # Accept absolute paths.
3291 [[\\/]]* | ?:[[\\/]]*)
3292 re_direlt='/[[^/]][[^/]]*/\.\./'
3293 # Canonicalize the pathname of ld
3294 ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'`
3295 while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do
3296 ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"`
3297 done
3298 test -z "$LD" && LD=$ac_prog
3299 ;;
3300 "")
3301 # If it fails, then pretend we aren't using GCC.
3302 ac_prog=ld
3303 ;;
3304 *)
3305 # If it is relative, then search for the first ld in PATH.
3306 with_gnu_ld=unknown
3307 ;;
3308 esac
3309 elif test yes = "$with_gnu_ld"; then
3310 AC_MSG_CHECKING([for GNU ld])
3311 else
3312 AC_MSG_CHECKING([for non-GNU ld])
3313 fi
3314 AC_CACHE_VAL(lt_cv_path_LD,
3315 [if test -z "$LD"; then
3316 lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR
3317 for ac_dir in $PATH; do
3318 IFS=$lt_save_ifs
3319 test -z "$ac_dir" && ac_dir=.
3320 if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
3321 lt_cv_path_LD=$ac_dir/$ac_prog
3322 # Check to see if the program is GNU ld. I'd rather use --version,
3323 # but apparently some variants of GNU ld only accept -v.
3324 # Break only if it was the GNU/non-GNU ld that we prefer.
3325 case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in
3326 *GNU* | *'with BFD'*)
3327 test no != "$with_gnu_ld" && break
3328 ;;
3329 *)
3330 test yes != "$with_gnu_ld" && break
3331 ;;
3332 esac
3333 fi
3334 done
3335 IFS=$lt_save_ifs
3336 else
3337 lt_cv_path_LD=$LD # Let the user override the test with a path.
3338 fi])
3339 LD=$lt_cv_path_LD
3340 if test -n "$LD"; then
3341 AC_MSG_RESULT($LD)
3342 else
3343 AC_MSG_RESULT(no)
3344 fi
3345 test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
3346 _LT_PATH_LD_GNU
3347 AC_SUBST([LD])
3348
3349 _LT_TAGDECL([], [LD], [1], [The linker used to build libraries])
3350 ])# LT_PATH_LD
3351
3352 # Old names:
3353 AU_ALIAS([AM_PROG_LD], [LT_PATH_LD])
3354 AU_ALIAS([AC_PROG_LD], [LT_PATH_LD])
3355 dnl aclocal-1.4 backwards compatibility:
3356 dnl AC_DEFUN([AM_PROG_LD], [])
3357 dnl AC_DEFUN([AC_PROG_LD], [])
3358
3359
3360 # _LT_PATH_LD_GNU
3361 #- --------------
3362 m4_defun([_LT_PATH_LD_GNU],
3363 [AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld,
3364 [# I'd rather use --version here, but apparently some GNU lds only accept -v.
3365 case `$LD -v 2>&1 </dev/null` in
3366 *GNU* | *'with BFD'*)
3367 lt_cv_prog_gnu_ld=yes
3368 ;;
3369 *)
3370 lt_cv_prog_gnu_ld=no
3371 ;;
3372 esac])
3373 with_gnu_ld=$lt_cv_prog_gnu_ld
3374 ])# _LT_PATH_LD_GNU
3375
3376
3377 # _LT_CMD_RELOAD
3378 # --------------
3379 # find reload flag for linker
3380 # -- PORTME Some linkers may need a different reload flag.
3381 m4_defun([_LT_CMD_RELOAD],
3382 [AC_CACHE_CHECK([for $LD option to reload object files],
3383 lt_cv_ld_reload_flag,
3384 [lt_cv_ld_reload_flag='-r'])
3385 reload_flag=$lt_cv_ld_reload_flag
3386 case $reload_flag in
3387 "" | " "*) ;;
3388 *) reload_flag=" $reload_flag" ;;
3389 esac
3390 reload_cmds='$LD$reload_flag -o $output$reload_objs'
3391 case $host_os in
3392 cygwin* | mingw* | pw32* | cegcc*)
3393 if test yes != "$GCC"; then
3394 reload_cmds=false
3395 fi
3396 ;;
3397 darwin*)
3398 if test yes = "$GCC"; then
3399 reload_cmds='$LTCC $LTCFLAGS -nostdlib $wl-r -o $output$reload_objs'
3400 else
3401 reload_cmds='$LD$reload_flag -o $output$reload_objs'
3402 fi
3403 ;;
3404 esac
3405 _LT_TAGDECL([], [reload_flag], [1], [How to create reloadable object files])dnl
3406 _LT_TAGDECL([], [reload_cmds], [2])dnl
3407 ])# _LT_CMD_RELOAD
3408
3409
3410 # _LT_PATH_DD
3411 # -----------
3412 # find a working dd
3413 m4_defun([_LT_PATH_DD],
3414 [AC_CACHE_CHECK([for a working dd], [ac_cv_path_lt_DD],
3415 [printf 0123456789abcdef0123456789abcdef >conftest.i
3416 cat conftest.i conftest.i >conftest2.i
3417 : ${lt_DD:=$DD}
3418 AC_PATH_PROGS_FEATURE_CHECK([lt_DD], [dd],
3419 [if "$ac_path_lt_DD" bs=32 count=1 <conftest2.i >conftest.out 2>/dev/null; then
3420 cmp -s conftest.i conftest.out \
3421 && ac_cv_path_lt_DD="$ac_path_lt_DD" ac_path_lt_DD_found=:
3422 fi])
3423 rm -f conftest.i conftest2.i conftest.out])
3424 ])# _LT_PATH_DD
3425
3426
3427 # _LT_CMD_TRUNCATE
3428 # ----------------
3429 # find command to truncate a binary pipe
3430 m4_defun([_LT_CMD_TRUNCATE],
3431 [m4_require([_LT_PATH_DD])
3432 AC_CACHE_CHECK([how to truncate binary pipes], [lt_cv_truncate_bin],
3433 [printf 0123456789abcdef0123456789abcdef >conftest.i
3434 cat conftest.i conftest.i >conftest2.i
3435 lt_cv_truncate_bin=
3436 if "$ac_cv_path_lt_DD" bs=32 count=1 <conftest2.i >conftest.out 2>/dev/null; then
3437 cmp -s conftest.i conftest.out \
3438 && lt_cv_truncate_bin="$ac_cv_path_lt_DD bs=4096 count=1"
3439 fi
3440 rm -f conftest.i conftest2.i conftest.out
3441 test -z "$lt_cv_truncate_bin" && lt_cv_truncate_bin="$SED -e 4q"])
3442 _LT_DECL([lt_truncate_bin], [lt_cv_truncate_bin], [1],
3443 [Command to truncate a binary pipe])
3444 ])# _LT_CMD_TRUNCATE
3445
3446
3447 # _LT_CHECK_MAGIC_METHOD
3448 # ----------------------
3449 # how to check for library dependencies
3450 # -- PORTME fill in with the dynamic library characteristics
3451 m4_defun([_LT_CHECK_MAGIC_METHOD],
3452 [m4_require([_LT_DECL_EGREP])
3453 m4_require([_LT_DECL_OBJDUMP])
3454 AC_CACHE_CHECK([how to recognize dependent libraries],
3455 lt_cv_deplibs_check_method,
3456 [lt_cv_file_magic_cmd='$MAGIC_CMD'
3457 lt_cv_file_magic_test_file=
3458 lt_cv_deplibs_check_method='unknown'
3459 # Need to set the preceding variable on all platforms that support
3460 # interlibrary dependencies.
3461 # 'none' -- dependencies not supported.
3462 # 'unknown' -- same as none, but documents that we really don't know.
3463 # 'pass_all' -- all dependencies passed with no checks.
3464 # 'test_compile' -- check by making test program.
3465 # 'file_magic [[regex]]' -- check by looking for files in library path
3466 # that responds to the $file_magic_cmd with a given extended regex.
3467 # If you have 'file' or equivalent on your system and you're not sure
3468 # whether 'pass_all' will *always* work, you probably want this one.
3469
3470 case $host_os in
3471 aix[[4-9]]*)
3472 lt_cv_deplibs_check_method=pass_all
3473 ;;
3474
3475 beos*)
3476 lt_cv_deplibs_check_method=pass_all
3477 ;;
3478
3479 bsdi[[45]]*)
3480 lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)'
3481 lt_cv_file_magic_cmd='/usr/bin/file -L'
3482 lt_cv_file_magic_test_file=/shlib/libc.so
3483 ;;
3484
3485 cygwin*)
3486 # func_win32_libid is a shell function defined in ltmain.sh
3487 lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
3488 lt_cv_file_magic_cmd='func_win32_libid'
3489 ;;
3490
3491 mingw* | pw32*)
3492 # Base MSYS/MinGW do not provide the 'file' command needed by
3493 # func_win32_libid shell function, so use a weaker test based on 'objdump',
3494 # unless we find 'file', for example because we are cross-compiling.
3495 if ( file / ) >/dev/null 2>&1; then
3496 lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
3497 lt_cv_file_magic_cmd='func_win32_libid'
3498 else
3499 # Keep this pattern in sync with the one in func_win32_libid.
3500 lt_cv_deplibs_check_method='file_magic file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)'
3501 lt_cv_file_magic_cmd='$OBJDUMP -f'
3502 fi
3503 ;;
3504
3505 cegcc*)
3506 # use the weaker test based on 'objdump'. See mingw*.
3507 lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?'
3508 lt_cv_file_magic_cmd='$OBJDUMP -f'
3509 ;;
3510
3511 darwin* | rhapsody*)
3512 lt_cv_deplibs_check_method=pass_all
3513 ;;
3514
3515 freebsd* | dragonfly*)
3516 if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
3517 case $host_cpu in
3518 i*86 )
3519 # Not sure whether the presence of OpenBSD here was a mistake.
3520 # Let's accept both of them until this is cleared up.
3521 lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[[3-9]]86 (compact )?demand paged shared library'
3522 lt_cv_file_magic_cmd=/usr/bin/file
3523 lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
3524 ;;
3525 esac
3526 else
3527 lt_cv_deplibs_check_method=pass_all
3528 fi
3529 ;;
3530
3531 haiku*)
3532 lt_cv_deplibs_check_method=pass_all
3533 ;;
3534
3535 hpux10.20* | hpux11*)
3536 lt_cv_file_magic_cmd=/usr/bin/file
3537 case $host_cpu in
3538 ia64*)
3539 lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|ELF-[[0-9]][[0-9]]) shared object file - IA64'
3540 lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so
3541 ;;
3542 hppa*64*)
3543 [lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF[ -][0-9][0-9])(-bit)?( [LM]SB)? shared object( file)?[, -]* PA-RISC [0-9]\.[0-9]']
3544 lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl
3545 ;;
3546 *)
3547 lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]]\.[[0-9]]) shared library'
3548 lt_cv_file_magic_test_file=/usr/lib/libc.sl
3549 ;;
3550 esac
3551 ;;
3552
3553 interix[[3-9]]*)
3554 # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here
3555 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|\.a)$'
3556 ;;
3557
3558 irix5* | irix6* | nonstopux*)
3559 case $LD in
3560 *-32|*"-32 ") libmagic=32-bit;;
3561 *-n32|*"-n32 ") libmagic=N32;;
3562 *-64|*"-64 ") libmagic=64-bit;;
3563 *) libmagic=never-match;;
3564 esac
3565 lt_cv_deplibs_check_method=pass_all
3566 ;;
3567
3568 # This must be glibc/ELF.
3569 linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
3570 lt_cv_deplibs_check_method=pass_all
3571 ;;
3572
3573 netbsd* | netbsdelf*-gnu)
3574 if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
3575 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
3576 else
3577 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|_pic\.a)$'
3578 fi
3579 ;;
3580
3581 newos6*)
3582 lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)'
3583 lt_cv_file_magic_cmd=/usr/bin/file
3584 lt_cv_file_magic_test_file=/usr/lib/libnls.so
3585 ;;
3586
3587 *nto* | *qnx*)
3588 lt_cv_deplibs_check_method=pass_all
3589 ;;
3590
3591 openbsd* | bitrig*)
3592 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then
3593 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|\.so|_pic\.a)$'
3594 else
3595 lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$'
3596 fi
3597 ;;
3598
3599 osf3* | osf4* | osf5*)
3600 lt_cv_deplibs_check_method=pass_all
3601 ;;
3602
3603 rdos*)
3604 lt_cv_deplibs_check_method=pass_all
3605 ;;
3606
3607 solaris*)
3608 lt_cv_deplibs_check_method=pass_all
3609 ;;
3610
3611 sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
3612 lt_cv_deplibs_check_method=pass_all
3613 ;;
3614
3615 sysv4 | sysv4.3*)
3616 case $host_vendor in
3617 motorola)
3618 lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib) M[[0-9]][[0-9]]* Version [[0-9]]'
3619 lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`
3620 ;;
3621 ncr)
3622 lt_cv_deplibs_check_method=pass_all
3623 ;;
3624 sequent)
3625 lt_cv_file_magic_cmd='/bin/file'
3626 lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )'
3627 ;;
3628 sni)
3629 lt_cv_file_magic_cmd='/bin/file'
3630 lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib"
3631 lt_cv_file_magic_test_file=/lib/libc.so
3632 ;;
3633 siemens)
3634 lt_cv_deplibs_check_method=pass_all
3635 ;;
3636 pc)
3637 lt_cv_deplibs_check_method=pass_all
3638 ;;
3639 esac
3640 ;;
3641
3642 tpf*)
3643 lt_cv_deplibs_check_method=pass_all
3644 ;;
3645 os2*)
3646 lt_cv_deplibs_check_method=pass_all
3647 ;;
3648 esac
3649 ])
3650
3651 file_magic_glob=
3652 want_nocaseglob=no
3653 if test "$build" = "$host"; then
3654 case $host_os in
3655 mingw* | pw32*)
3656 if ( shopt | grep nocaseglob ) >/dev/null 2>&1; then
3657 want_nocaseglob=yes
3658 else
3659 file_magic_glob=`echo aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ | $SED -e "s/\(..\)/s\/[[\1]]\/[[\1]]\/g;/g"`
3660 fi
3661 ;;
3662 esac
3663 fi
3664
3665 file_magic_cmd=$lt_cv_file_magic_cmd
3666 deplibs_check_method=$lt_cv_deplibs_check_method
3667 test -z "$deplibs_check_method" && deplibs_check_method=unknown
3668
3669 _LT_DECL([], [deplibs_check_method], [1],
3670 [Method to check whether dependent libraries are shared objects])
3671 _LT_DECL([], [file_magic_cmd], [1],
3672 [Command to use when deplibs_check_method = "file_magic"])
3673 _LT_DECL([], [file_magic_glob], [1],
3674 [How to find potential files when deplibs_check_method = "file_magic"])
3675 _LT_DECL([], [want_nocaseglob], [1],
3676 [Find potential files using nocaseglob when deplibs_check_method = "file_magic"])
3677 ])# _LT_CHECK_MAGIC_METHOD
3678
3679
3680 # LT_PATH_NM
3681 # ----------
3682 # find the pathname to a BSD- or MS-compatible name lister
3683 AC_DEFUN([LT_PATH_NM],
3684 [AC_REQUIRE([AC_PROG_CC])dnl
3685 AC_CACHE_CHECK([for BSD- or MS-compatible name lister (nm)], lt_cv_path_NM,
3686 [if test -n "$NM"; then
3687 # Let the user override the test.
3688 lt_cv_path_NM=$NM
3689 else
3690 lt_nm_to_check=${ac_tool_prefix}nm
3691 if test -n "$ac_tool_prefix" && test "$build" = "$host"; then
3692 lt_nm_to_check="$lt_nm_to_check nm"
3693 fi
3694 for lt_tmp_nm in $lt_nm_to_check; do
3695 lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR
3696 for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do
3697 IFS=$lt_save_ifs
3698 test -z "$ac_dir" && ac_dir=.
3699 tmp_nm=$ac_dir/$lt_tmp_nm
3700 if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext"; then
3701 # Check to see if the nm accepts a BSD-compat flag.
3702 # Adding the 'sed 1q' prevents false positives on HP-UX, which says:
3703 # nm: unknown option "B" ignored
3704 # Tru64's nm complains that /dev/null is an invalid object file
3705 # MSYS converts /dev/null to NUL, MinGW nm treats NUL as empty
3706 case $build_os in
3707 mingw*) lt_bad_file=conftest.nm/nofile ;;
3708 *) lt_bad_file=/dev/null ;;
3709 esac
3710 case `"$tmp_nm" -B $lt_bad_file 2>&1 | sed '1q'` in
3711 *$lt_bad_file* | *'Invalid file or object type'*)
3712 lt_cv_path_NM="$tmp_nm -B"
3713 break 2
3714 ;;
3715 *)
3716 case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in
3717 */dev/null*)
3718 lt_cv_path_NM="$tmp_nm -p"
3719 break 2
3720 ;;
3721 *)
3722 lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
3723 continue # so that we can try to find one that supports BSD flags
3724 ;;
3725 esac
3726 ;;
3727 esac
3728 fi
3729 done
3730 IFS=$lt_save_ifs
3731 done
3732 : ${lt_cv_path_NM=no}
3733 fi])
3734 if test no != "$lt_cv_path_NM"; then
3735 NM=$lt_cv_path_NM
3736 else
3737 # Didn't find any BSD compatible name lister, look for dumpbin.
3738 if test -n "$DUMPBIN"; then :
3739 # Let the user override the test.
3740 else
3741 AC_CHECK_TOOLS(DUMPBIN, [dumpbin "link -dump"], :)
3742 case `$DUMPBIN -symbols -headers /dev/null 2>&1 | sed '1q'` in
3743 *COFF*)
3744 DUMPBIN="$DUMPBIN -symbols -headers"
3745 ;;
3746 *)
3747 DUMPBIN=:
3748 ;;
3749 esac
3750 fi
3751 AC_SUBST([DUMPBIN])
3752 if test : != "$DUMPBIN"; then
3753 NM=$DUMPBIN
3754 fi
3755 fi
3756 test -z "$NM" && NM=nm
3757 AC_SUBST([NM])
3758 _LT_DECL([], [NM], [1], [A BSD- or MS-compatible name lister])dnl
3759
3760 AC_CACHE_CHECK([the name lister ($NM) interface], [lt_cv_nm_interface],
3761 [lt_cv_nm_interface="BSD nm"
3762 echo "int some_variable = 0;" > conftest.$ac_ext
3763 (eval echo "\"\$as_me:$LINENO: $ac_compile\"" >&AS_MESSAGE_LOG_FD)
3764 (eval "$ac_compile" 2>conftest.err)
3765 cat conftest.err >&AS_MESSAGE_LOG_FD
3766 (eval echo "\"\$as_me:$LINENO: $NM \\\"conftest.$ac_objext\\\"\"" >&AS_MESSAGE_LOG_FD)
3767 (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out)
3768 cat conftest.err >&AS_MESSAGE_LOG_FD
3769 (eval echo "\"\$as_me:$LINENO: output\"" >&AS_MESSAGE_LOG_FD)
3770 cat conftest.out >&AS_MESSAGE_LOG_FD
3771 if $GREP 'External.*some_variable' conftest.out > /dev/null; then
3772 lt_cv_nm_interface="MS dumpbin"
3773 fi
3774 rm -f conftest*])
3775 ])# LT_PATH_NM
3776
3777 # Old names:
3778 AU_ALIAS([AM_PROG_NM], [LT_PATH_NM])
3779 AU_ALIAS([AC_PROG_NM], [LT_PATH_NM])
3780 dnl aclocal-1.4 backwards compatibility:
3781 dnl AC_DEFUN([AM_PROG_NM], [])
3782 dnl AC_DEFUN([AC_PROG_NM], [])
3783
3784 # _LT_CHECK_SHAREDLIB_FROM_LINKLIB
3785 # --------------------------------
3786 # how to determine the name of the shared library
3787 # associated with a specific link library.
3788 # -- PORTME fill in with the dynamic library characteristics
3789 m4_defun([_LT_CHECK_SHAREDLIB_FROM_LINKLIB],
3790 [m4_require([_LT_DECL_EGREP])
3791 m4_require([_LT_DECL_OBJDUMP])
3792 m4_require([_LT_DECL_DLLTOOL])
3793 AC_CACHE_CHECK([how to associate runtime and link libraries],
3794 lt_cv_sharedlib_from_linklib_cmd,
3795 [lt_cv_sharedlib_from_linklib_cmd='unknown'
3796
3797 case $host_os in
3798 cygwin* | mingw* | pw32* | cegcc*)
3799 # two different shell functions defined in ltmain.sh;
3800 # decide which one to use based on capabilities of $DLLTOOL
3801 case `$DLLTOOL --help 2>&1` in
3802 *--identify-strict*)
3803 lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib
3804 ;;
3805 *)
3806 lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib_fallback
3807 ;;
3808 esac
3809 ;;
3810 *)
3811 # fallback: assume linklib IS sharedlib
3812 lt_cv_sharedlib_from_linklib_cmd=$ECHO
3813 ;;
3814 esac
3815 ])
3816 sharedlib_from_linklib_cmd=$lt_cv_sharedlib_from_linklib_cmd
3817 test -z "$sharedlib_from_linklib_cmd" && sharedlib_from_linklib_cmd=$ECHO
3818
3819 _LT_DECL([], [sharedlib_from_linklib_cmd], [1],
3820 [Command to associate shared and link libraries])
3821 ])# _LT_CHECK_SHAREDLIB_FROM_LINKLIB
3822
3823
3824 # _LT_PATH_MANIFEST_TOOL
3825 # ----------------------
3826 # locate the manifest tool
3827 m4_defun([_LT_PATH_MANIFEST_TOOL],
3828 [AC_CHECK_TOOL(MANIFEST_TOOL, mt, :)
3829 test -z "$MANIFEST_TOOL" && MANIFEST_TOOL=mt
3830 AC_CACHE_CHECK([if $MANIFEST_TOOL is a manifest tool], [lt_cv_path_mainfest_tool],
3831 [lt_cv_path_mainfest_tool=no
3832 echo "$as_me:$LINENO: $MANIFEST_TOOL '-?'" >&AS_MESSAGE_LOG_FD
3833 $MANIFEST_TOOL '-?' 2>conftest.err > conftest.out
3834 cat conftest.err >&AS_MESSAGE_LOG_FD
3835 if $GREP 'Manifest Tool' conftest.out > /dev/null; then
3836 lt_cv_path_mainfest_tool=yes
3837 fi
3838 rm -f conftest*])
3839 if test yes != "$lt_cv_path_mainfest_tool"; then
3840 MANIFEST_TOOL=:
3841 fi
3842 _LT_DECL([], [MANIFEST_TOOL], [1], [Manifest tool])dnl
3843 ])# _LT_PATH_MANIFEST_TOOL
3844
3845
3846 # _LT_DLL_DEF_P([FILE])
3847 # ---------------------
3848 # True iff FILE is a Windows DLL '.def' file.
3849 # Keep in sync with func_dll_def_p in the libtool script
3850 AC_DEFUN([_LT_DLL_DEF_P],
3851 [dnl
3852 test DEF = "`$SED -n dnl
3853 -e '\''s/^[[ ]]*//'\'' dnl Strip leading whitespace
3854 -e '\''/^\(;.*\)*$/d'\'' dnl Delete empty lines and comments
3855 -e '\''s/^\(EXPORTS\|LIBRARY\)\([[ ]].*\)*$/DEF/p'\'' dnl
3856 -e q dnl Only consider the first "real" line
3857 $1`" dnl
3858 ])# _LT_DLL_DEF_P
3859
3860
3861 # LT_LIB_M
3862 # --------
3863 # check for math library
3864 AC_DEFUN([LT_LIB_M],
3865 [AC_REQUIRE([AC_CANONICAL_HOST])dnl
3866 LIBM=
3867 case $host in
3868 *-*-beos* | *-*-cegcc* | *-*-cygwin* | *-*-haiku* | *-*-pw32* | *-*-darwin*)
3869 # These system don't have libm, or don't need it
3870 ;;
3871 *-ncr-sysv4.3*)
3872 AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM=-lmw)
3873 AC_CHECK_LIB(m, cos, LIBM="$LIBM -lm")
3874 ;;
3875 *)
3876 AC_CHECK_LIB(m, cos, LIBM=-lm)
3877 ;;
3878 esac
3879 AC_SUBST([LIBM])
3880 ])# LT_LIB_M
3881
3882 # Old name:
3883 AU_ALIAS([AC_CHECK_LIBM], [LT_LIB_M])
3884 dnl aclocal-1.4 backwards compatibility:
3885 dnl AC_DEFUN([AC_CHECK_LIBM], [])
3886
3887
3888 # _LT_COMPILER_NO_RTTI([TAGNAME])
3889 # -------------------------------
3890 m4_defun([_LT_COMPILER_NO_RTTI],
3891 [m4_require([_LT_TAG_COMPILER])dnl
3892
3893 _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
3894
3895 if test yes = "$GCC"; then
3896 case $cc_basename in
3897 nvcc*)
3898 _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -Xcompiler -fno-builtin' ;;
3899 *)
3900 _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' ;;
3901 esac
3902
3903 _LT_COMPILER_OPTION([if $compiler supports -fno-rtti -fno-exceptions],
3904 lt_cv_prog_compiler_rtti_exceptions,
3905 [-fno-rtti -fno-exceptions], [],
3906 [_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)="$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) -fno-rtti -fno-exceptions"])
3907 fi
3908 _LT_TAGDECL([no_builtin_flag], [lt_prog_compiler_no_builtin_flag], [1],
3909 [Compiler flag to turn off builtin functions])
3910 ])# _LT_COMPILER_NO_RTTI
3911
3912
3913 # _LT_CMD_GLOBAL_SYMBOLS
3914 # ----------------------
3915 m4_defun([_LT_CMD_GLOBAL_SYMBOLS],
3916 [AC_REQUIRE([AC_CANONICAL_HOST])dnl
3917 AC_REQUIRE([AC_PROG_CC])dnl
3918 AC_REQUIRE([AC_PROG_AWK])dnl
3919 AC_REQUIRE([LT_PATH_NM])dnl
3920 AC_REQUIRE([LT_PATH_LD])dnl
3921 m4_require([_LT_DECL_SED])dnl
3922 m4_require([_LT_DECL_EGREP])dnl
3923 m4_require([_LT_TAG_COMPILER])dnl
3924
3925 # Check for command to grab the raw symbol name followed by C symbol from nm.
3926 AC_MSG_CHECKING([command to parse $NM output from $compiler object])
3927 AC_CACHE_VAL([lt_cv_sys_global_symbol_pipe],
3928 [
3929 # These are sane defaults that work on at least a few old systems.
3930 # [They come from Ultrix. What could be older than Ultrix?!! ;)]
3931
3932 # Character class describing NM global symbol codes.
3933 symcode='[[BCDEGRST]]'
3934
3935 # Regexp to match symbols that can be accessed directly from C.
3936 sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)'
3937
3938 # Define system-specific variables.
3939 case $host_os in
3940 aix*)
3941 symcode='[[BCDT]]'
3942 ;;
3943 cygwin* | mingw* | pw32* | cegcc*)
3944 symcode='[[ABCDGISTW]]'
3945 ;;
3946 hpux*)
3947 if test ia64 = "$host_cpu"; then
3948 symcode='[[ABCDEGRST]]'
3949 fi
3950 ;;
3951 irix* | nonstopux*)
3952 symcode='[[BCDEGRST]]'
3953 ;;
3954 osf*)
3955 symcode='[[BCDEGQRST]]'
3956 ;;
3957 solaris*)
3958 symcode='[[BDRT]]'
3959 ;;
3960 sco3.2v5*)
3961 symcode='[[DT]]'
3962 ;;
3963 sysv4.2uw2*)
3964 symcode='[[DT]]'
3965 ;;
3966 sysv5* | sco5v6* | unixware* | OpenUNIX*)
3967 symcode='[[ABDT]]'
3968 ;;
3969 sysv4)
3970 symcode='[[DFNSTU]]'
3971 ;;
3972 esac
3973
3974 # If we're using GNU nm, then use its standard symbol codes.
3975 case `$NM -V 2>&1` in
3976 *GNU* | *'with BFD'*)
3977 symcode='[[ABCDGIRSTW]]' ;;
3978 esac
3979
3980 if test "$lt_cv_nm_interface" = "MS dumpbin"; then
3981 # Gets list of data symbols to import.
3982 lt_cv_sys_global_symbol_to_import="sed -n -e 's/^I .* \(.*\)$/\1/p'"
3983 # Adjust the below global symbol transforms to fixup imported variables.
3984 lt_cdecl_hook=" -e 's/^I .* \(.*\)$/extern __declspec(dllimport) char \1;/p'"
3985 lt_c_name_hook=" -e 's/^I .* \(.*\)$/ {\"\1\", (void *) 0},/p'"
3986 lt_c_name_lib_hook="\
3987 -e 's/^I .* \(lib.*\)$/ {\"\1\", (void *) 0},/p'\
3988 -e 's/^I .* \(.*\)$/ {\"lib\1\", (void *) 0},/p'"
3989 else
3990 # Disable hooks by default.
3991 lt_cv_sys_global_symbol_to_import=
3992 lt_cdecl_hook=
3993 lt_c_name_hook=
3994 lt_c_name_lib_hook=
3995 fi
3996
3997 # Transform an extracted symbol line into a proper C declaration.
3998 # Some systems (esp. on ia64) link data and code symbols differently,
3999 # so use this general approach.
4000 lt_cv_sys_global_symbol_to_cdecl="sed -n"\
4001 $lt_cdecl_hook\
4002 " -e 's/^T .* \(.*\)$/extern int \1();/p'"\
4003 " -e 's/^$symcode$symcode* .* \(.*\)$/extern char \1;/p'"
4004
4005 # Transform an extracted symbol line into symbol name and symbol address
4006 lt_cv_sys_global_symbol_to_c_name_address="sed -n"\
4007 $lt_c_name_hook\
4008 " -e 's/^: \(.*\) .*$/ {\"\1\", (void *) 0},/p'"\
4009 " -e 's/^$symcode$symcode* .* \(.*\)$/ {\"\1\", (void *) \&\1},/p'"
4010
4011 # Transform an extracted symbol line into symbol name with lib prefix and
4012 # symbol address.
4013 lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n"\
4014 $lt_c_name_lib_hook\
4015 " -e 's/^: \(.*\) .*$/ {\"\1\", (void *) 0},/p'"\
4016 " -e 's/^$symcode$symcode* .* \(lib.*\)$/ {\"\1\", (void *) \&\1},/p'"\
4017 " -e 's/^$symcode$symcode* .* \(.*\)$/ {\"lib\1\", (void *) \&\1},/p'"
4018
4019 # Handle CRLF in mingw tool chain
4020 opt_cr=
4021 case $build_os in
4022 mingw*)
4023 opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp
4024 ;;
4025 esac
4026
4027 # Try without a prefix underscore, then with it.
4028 for ac_symprfx in "" "_"; do
4029
4030 # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol.
4031 symxfrm="\\1 $ac_symprfx\\2 \\2"
4032
4033 # Write the raw and C identifiers.
4034 if test "$lt_cv_nm_interface" = "MS dumpbin"; then
4035 # Fake it for dumpbin and say T for any non-static function,
4036 # D for any global variable and I for any imported variable.
4037 # Also find C++ and __fastcall symbols from MSVC++,
4038 # which start with @ or ?.
4039 lt_cv_sys_global_symbol_pipe="$AWK ['"\
4040 " {last_section=section; section=\$ 3};"\
4041 " /^COFF SYMBOL TABLE/{for(i in hide) delete hide[i]};"\
4042 " /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\
4043 " /^ *Symbol name *: /{split(\$ 0,sn,\":\"); si=substr(sn[2],2)};"\
4044 " /^ *Type *: code/{print \"T\",si,substr(si,length(prfx))};"\
4045 " /^ *Type *: data/{print \"I\",si,substr(si,length(prfx))};"\
4046 " \$ 0!~/External *\|/{next};"\
4047 " / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\
4048 " {if(hide[section]) next};"\
4049 " {f=\"D\"}; \$ 0~/\(\).*\|/{f=\"T\"};"\
4050 " {split(\$ 0,a,/\||\r/); split(a[2],s)};"\
4051 " s[1]~/^[@?]/{print f,s[1],s[1]; next};"\
4052 " s[1]~prfx {split(s[1],t,\"@\"); print f,t[1],substr(t[1],length(prfx))}"\
4053 " ' prfx=^$ac_symprfx]"
4054 else
4055 lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
4056 fi
4057 lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | sed '/ __gnu_lto/d'"
4058
4059 # Check to see that the pipe works correctly.
4060 pipe_works=no
4061
4062 rm -f conftest*
4063 cat > conftest.$ac_ext <<_LT_EOF
4064 #ifdef __cplusplus
4065 extern "C" {
4066 #endif
4067 char nm_test_var;
4068 void nm_test_func(void);
4069 void nm_test_func(void){}
4070 #ifdef __cplusplus
4071 }
4072 #endif
4073 int main(){nm_test_var='a';nm_test_func();return(0);}
4074 _LT_EOF
4075
4076 if AC_TRY_EVAL(ac_compile); then
4077 # Now try to grab the symbols.
4078 nlist=conftest.nm
4079 $ECHO "$as_me:$LINENO: $NM conftest.$ac_objext | $lt_cv_sys_global_symbol_pipe > $nlist" >&AS_MESSAGE_LOG_FD
4080 if eval "$NM" conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist 2>&AS_MESSAGE_LOG_FD && test -s "$nlist"; then
4081 # Try sorting and uniquifying the output.
4082 if sort "$nlist" | uniq > "$nlist"T; then
4083 mv -f "$nlist"T "$nlist"
4084 else
4085 rm -f "$nlist"T
4086 fi
4087
4088 # Make sure that we snagged all the symbols we need.
4089 if $GREP ' nm_test_var$' "$nlist" >/dev/null; then
4090 if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
4091 cat <<_LT_EOF > conftest.$ac_ext
4092 /* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests. */
4093 #if defined _WIN32 || defined __CYGWIN__ || defined _WIN32_WCE
4094 /* DATA imports from DLLs on WIN32 can't be const, because runtime
4095 relocations are performed -- see ld's documentation on pseudo-relocs. */
4096 # define LT@&t@_DLSYM_CONST
4097 #elif defined __osf__
4098 /* This system does not cope well with relocations in const data. */
4099 # define LT@&t@_DLSYM_CONST
4100 #else
4101 # define LT@&t@_DLSYM_CONST const
4102 #endif
4103
4104 #ifdef __cplusplus
4105 extern "C" {
4106 #endif
4107
4108 _LT_EOF
4109 # Now generate the symbol file.
4110 eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext'
4111
4112 cat <<_LT_EOF >> conftest.$ac_ext
4113
4114 /* The mapping between symbol names and symbols. */
4115 LT@&t@_DLSYM_CONST struct {
4116 const char *name;
4117 void *address;
4118 }
4119 lt__PROGRAM__LTX_preloaded_symbols[[]] =
4120 {
4121 { "@PROGRAM@", (void *) 0 },
4122 _LT_EOF
4123 $SED "s/^$symcode$symcode* .* \(.*\)$/ {\"\1\", (void *) \&\1},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext
4124 cat <<\_LT_EOF >> conftest.$ac_ext
4125 {0, (void *) 0}
4126 };
4127
4128 /* This works around a problem in FreeBSD linker */
4129 #ifdef FREEBSD_WORKAROUND
4130 static const void *lt_preloaded_setup() {
4131 return lt__PROGRAM__LTX_preloaded_symbols;
4132 }
4133 #endif
4134
4135 #ifdef __cplusplus
4136 }
4137 #endif
4138 _LT_EOF
4139 # Now try linking the two files.
4140 mv conftest.$ac_objext conftstm.$ac_objext
4141 lt_globsym_save_LIBS=$LIBS
4142 lt_globsym_save_CFLAGS=$CFLAGS
4143 LIBS=conftstm.$ac_objext
4144 CFLAGS="$CFLAGS$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)"
4145 if AC_TRY_EVAL(ac_link) && test -s conftest$ac_exeext; then
4146 pipe_works=yes
4147 fi
4148 LIBS=$lt_globsym_save_LIBS
4149 CFLAGS=$lt_globsym_save_CFLAGS
4150 else
4151 echo "cannot find nm_test_func in $nlist" >&AS_MESSAGE_LOG_FD
4152 fi
4153 else
4154 echo "cannot find nm_test_var in $nlist" >&AS_MESSAGE_LOG_FD
4155 fi
4156 else
4157 echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AS_MESSAGE_LOG_FD
4158 fi
4159 else
4160 echo "$progname: failed program was:" >&AS_MESSAGE_LOG_FD
4161 cat conftest.$ac_ext >&5
4162 fi
4163 rm -rf conftest* conftst*
4164
4165 # Do not use the global_symbol_pipe unless it works.
4166 if test yes = "$pipe_works"; then
4167 break
4168 else
4169 lt_cv_sys_global_symbol_pipe=
4170 fi
4171 done
4172 ])
4173 if test -z "$lt_cv_sys_global_symbol_pipe"; then
4174 lt_cv_sys_global_symbol_to_cdecl=
4175 fi
4176 if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then
4177 AC_MSG_RESULT(failed)
4178 else
4179 AC_MSG_RESULT(ok)
4180 fi
4181
4182 # Response file support.
4183 if test "$lt_cv_nm_interface" = "MS dumpbin"; then
4184 nm_file_list_spec='@'
4185 elif $NM --help 2>/dev/null | grep '[[@]]FILE' >/dev/null; then
4186 nm_file_list_spec='@'
4187 fi
4188
4189 _LT_DECL([global_symbol_pipe], [lt_cv_sys_global_symbol_pipe], [1],
4190 [Take the output of nm and produce a listing of raw symbols and C names])
4191 _LT_DECL([global_symbol_to_cdecl], [lt_cv_sys_global_symbol_to_cdecl], [1],
4192 [Transform the output of nm in a proper C declaration])
4193 _LT_DECL([global_symbol_to_import], [lt_cv_sys_global_symbol_to_import], [1],
4194 [Transform the output of nm into a list of symbols to manually relocate])
4195 _LT_DECL([global_symbol_to_c_name_address],
4196 [lt_cv_sys_global_symbol_to_c_name_address], [1],
4197 [Transform the output of nm in a C name address pair])
4198 _LT_DECL([global_symbol_to_c_name_address_lib_prefix],
4199 [lt_cv_sys_global_symbol_to_c_name_address_lib_prefix], [1],
4200 [Transform the output of nm in a C name address pair when lib prefix is needed])
4201 _LT_DECL([nm_interface], [lt_cv_nm_interface], [1],
4202 [The name lister interface])
4203 _LT_DECL([], [nm_file_list_spec], [1],
4204 [Specify filename containing input files for $NM])
4205 ]) # _LT_CMD_GLOBAL_SYMBOLS
4206
4207
4208 # _LT_COMPILER_PIC([TAGNAME])
4209 # ---------------------------
4210 m4_defun([_LT_COMPILER_PIC],
4211 [m4_require([_LT_TAG_COMPILER])dnl
4212 _LT_TAGVAR(lt_prog_compiler_wl, $1)=
4213 _LT_TAGVAR(lt_prog_compiler_pic, $1)=
4214 _LT_TAGVAR(lt_prog_compiler_static, $1)=
4215
4216 m4_if([$1], [CXX], [
4217 # C++ specific cases for pic, static, wl, etc.
4218 if test yes = "$GXX"; then
4219 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4220 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4221
4222 case $host_os in
4223 aix*)
4224 # All AIX code is PIC.
4225 if test ia64 = "$host_cpu"; then
4226 # AIX 5 now supports IA64 processor
4227 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4228 fi
4229 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4230 ;;
4231
4232 amigaos*)
4233 case $host_cpu in
4234 powerpc)
4235 # see comment about AmigaOS4 .so support
4236 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4237 ;;
4238 m68k)
4239 # FIXME: we need at least 68020 code to build shared libraries, but
4240 # adding the '-m68020' flag to GCC prevents building anything better,
4241 # like '-m68040'.
4242 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
4243 ;;
4244 esac
4245 ;;
4246
4247 beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
4248 # PIC is the default for these OSes.
4249 ;;
4250 mingw* | cygwin* | os2* | pw32* | cegcc*)
4251 # This hack is so that the source file can tell whether it is being
4252 # built for inclusion in a dll (and should export symbols for example).
4253 # Although the cygwin gcc ignores -fPIC, still need this for old-style
4254 # (--disable-auto-import) libraries
4255 m4_if([$1], [GCJ], [],
4256 [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
4257 case $host_os in
4258 os2*)
4259 _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static'
4260 ;;
4261 esac
4262 ;;
4263 darwin* | rhapsody*)
4264 # PIC is the default on this platform
4265 # Common symbols not allowed in MH_DYLIB files
4266 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
4267 ;;
4268 *djgpp*)
4269 # DJGPP does not support shared libraries at all
4270 _LT_TAGVAR(lt_prog_compiler_pic, $1)=
4271 ;;
4272 haiku*)
4273 # PIC is the default for Haiku.
4274 # The "-static" flag exists, but is broken.
4275 _LT_TAGVAR(lt_prog_compiler_static, $1)=
4276 ;;
4277 interix[[3-9]]*)
4278 # Interix 3.x gcc -fpic/-fPIC options generate broken code.
4279 # Instead, we relocate shared libraries at runtime.
4280 ;;
4281 sysv4*MP*)
4282 if test -d /usr/nec; then
4283 _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
4284 fi
4285 ;;
4286 hpux*)
4287 # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
4288 # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag
4289 # sets the default TLS model and affects inlining.
4290 case $host_cpu in
4291 hppa*64*)
4292 ;;
4293 *)
4294 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4295 ;;
4296 esac
4297 ;;
4298 *qnx* | *nto*)
4299 # QNX uses GNU C++, but need to define -shared option too, otherwise
4300 # it will coredump.
4301 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
4302 ;;
4303 *)
4304 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4305 ;;
4306 esac
4307 else
4308 case $host_os in
4309 aix[[4-9]]*)
4310 # All AIX code is PIC.
4311 if test ia64 = "$host_cpu"; then
4312 # AIX 5 now supports IA64 processor
4313 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4314 else
4315 _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
4316 fi
4317 ;;
4318 chorus*)
4319 case $cc_basename in
4320 cxch68*)
4321 # Green Hills C++ Compiler
4322 # _LT_TAGVAR(lt_prog_compiler_static, $1)="--no_auto_instantiation -u __main -u __premain -u _abort -r $COOL_DIR/lib/libOrb.a $MVME_DIR/lib/CC/libC.a $MVME_DIR/lib/classix/libcx.s.a"
4323 ;;
4324 esac
4325 ;;
4326 mingw* | cygwin* | os2* | pw32* | cegcc*)
4327 # This hack is so that the source file can tell whether it is being
4328 # built for inclusion in a dll (and should export symbols for example).
4329 m4_if([$1], [GCJ], [],
4330 [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
4331 ;;
4332 dgux*)
4333 case $cc_basename in
4334 ec++*)
4335 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4336 ;;
4337 ghcx*)
4338 # Green Hills C++ Compiler
4339 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4340 ;;
4341 *)
4342 ;;
4343 esac
4344 ;;
4345 freebsd* | dragonfly*)
4346 # FreeBSD uses GNU C++
4347 ;;
4348 hpux9* | hpux10* | hpux11*)
4349 case $cc_basename in
4350 CC*)
4351 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4352 _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-a ${wl}archive'
4353 if test ia64 != "$host_cpu"; then
4354 _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
4355 fi
4356 ;;
4357 aCC*)
4358 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4359 _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-a ${wl}archive'
4360 case $host_cpu in
4361 hppa*64*|ia64*)
4362 # +Z the default
4363 ;;
4364 *)
4365 _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
4366 ;;
4367 esac
4368 ;;
4369 *)
4370 ;;
4371 esac
4372 ;;
4373 interix*)
4374 # This is c89, which is MS Visual C++ (no shared libs)
4375 # Anyone wants to do a port?
4376 ;;
4377 irix5* | irix6* | nonstopux*)
4378 case $cc_basename in
4379 CC*)
4380 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4381 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4382 # CC pic flag -KPIC is the default.
4383 ;;
4384 *)
4385 ;;
4386 esac
4387 ;;
4388 linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
4389 case $cc_basename in
4390 KCC*)
4391 # KAI C++ Compiler
4392 _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
4393 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4394 ;;
4395 ecpc* )
4396 # old Intel C++ for x86_64, which still supported -KPIC.
4397 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4398 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4399 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4400 ;;
4401 icpc* )
4402 # Intel C++, used to be incompatible with GCC.
4403 # ICC 10 doesn't accept -KPIC any more.
4404 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4405 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4406 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4407 ;;
4408 pgCC* | pgcpp*)
4409 # Portland Group C++ compiler
4410 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4411 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
4412 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4413 ;;
4414 cxx*)
4415 # Compaq C++
4416 # Make sure the PIC flag is empty. It appears that all Alpha
4417 # Linux and Compaq Tru64 Unix objects are PIC.
4418 _LT_TAGVAR(lt_prog_compiler_pic, $1)=
4419 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4420 ;;
4421 xlc* | xlC* | bgxl[[cC]]* | mpixl[[cC]]*)
4422 # IBM XL 8.0, 9.0 on PPC and BlueGene
4423 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4424 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
4425 _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
4426 ;;
4427 *)
4428 case `$CC -V 2>&1 | sed 5q` in
4429 *Sun\ C*)
4430 # Sun C++ 5.9
4431 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4432 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4433 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
4434 ;;
4435 esac
4436 ;;
4437 esac
4438 ;;
4439 lynxos*)
4440 ;;
4441 m88k*)
4442 ;;
4443 mvs*)
4444 case $cc_basename in
4445 cxx*)
4446 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-W c,exportall'
4447 ;;
4448 *)
4449 ;;
4450 esac
4451 ;;
4452 netbsd* | netbsdelf*-gnu)
4453 ;;
4454 *qnx* | *nto*)
4455 # QNX uses GNU C++, but need to define -shared option too, otherwise
4456 # it will coredump.
4457 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
4458 ;;
4459 osf3* | osf4* | osf5*)
4460 case $cc_basename in
4461 KCC*)
4462 _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
4463 ;;
4464 RCC*)
4465 # Rational C++ 2.4.1
4466 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4467 ;;
4468 cxx*)
4469 # Digital/Compaq C++
4470 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4471 # Make sure the PIC flag is empty. It appears that all Alpha
4472 # Linux and Compaq Tru64 Unix objects are PIC.
4473 _LT_TAGVAR(lt_prog_compiler_pic, $1)=
4474 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4475 ;;
4476 *)
4477 ;;
4478 esac
4479 ;;
4480 psos*)
4481 ;;
4482 solaris*)
4483 case $cc_basename in
4484 CC* | sunCC*)
4485 # Sun C++ 4.2, 5.x and Centerline C++
4486 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4487 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4488 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
4489 ;;
4490 gcx*)
4491 # Green Hills C++ Compiler
4492 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
4493 ;;
4494 *)
4495 ;;
4496 esac
4497 ;;
4498 sunos4*)
4499 case $cc_basename in
4500 CC*)
4501 # Sun C++ 4.x
4502 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4503 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4504 ;;
4505 lcc*)
4506 # Lucid
4507 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4508 ;;
4509 *)
4510 ;;
4511 esac
4512 ;;
4513 sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
4514 case $cc_basename in
4515 CC*)
4516 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4517 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4518 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4519 ;;
4520 esac
4521 ;;
4522 tandem*)
4523 case $cc_basename in
4524 NCC*)
4525 # NonStop-UX NCC 3.20
4526 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4527 ;;
4528 *)
4529 ;;
4530 esac
4531 ;;
4532 vxworks*)
4533 ;;
4534 *)
4535 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
4536 ;;
4537 esac
4538 fi
4539 ],
4540 [
4541 if test yes = "$GCC"; then
4542 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4543 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4544
4545 case $host_os in
4546 aix*)
4547 # All AIX code is PIC.
4548 if test ia64 = "$host_cpu"; then
4549 # AIX 5 now supports IA64 processor
4550 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4551 fi
4552 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4553 ;;
4554
4555 amigaos*)
4556 case $host_cpu in
4557 powerpc)
4558 # see comment about AmigaOS4 .so support
4559 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4560 ;;
4561 m68k)
4562 # FIXME: we need at least 68020 code to build shared libraries, but
4563 # adding the '-m68020' flag to GCC prevents building anything better,
4564 # like '-m68040'.
4565 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
4566 ;;
4567 esac
4568 ;;
4569
4570 beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
4571 # PIC is the default for these OSes.
4572 ;;
4573
4574 mingw* | cygwin* | pw32* | os2* | cegcc*)
4575 # This hack is so that the source file can tell whether it is being
4576 # built for inclusion in a dll (and should export symbols for example).
4577 # Although the cygwin gcc ignores -fPIC, still need this for old-style
4578 # (--disable-auto-import) libraries
4579 m4_if([$1], [GCJ], [],
4580 [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
4581 case $host_os in
4582 os2*)
4583 _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static'
4584 ;;
4585 esac
4586 ;;
4587
4588 darwin* | rhapsody*)
4589 # PIC is the default on this platform
4590 # Common symbols not allowed in MH_DYLIB files
4591 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
4592 ;;
4593
4594 haiku*)
4595 # PIC is the default for Haiku.
4596 # The "-static" flag exists, but is broken.
4597 _LT_TAGVAR(lt_prog_compiler_static, $1)=
4598 ;;
4599
4600 hpux*)
4601 # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
4602 # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag
4603 # sets the default TLS model and affects inlining.
4604 case $host_cpu in
4605 hppa*64*)
4606 # +Z the default
4607 ;;
4608 *)
4609 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4610 ;;
4611 esac
4612 ;;
4613
4614 interix[[3-9]]*)
4615 # Interix 3.x gcc -fpic/-fPIC options generate broken code.
4616 # Instead, we relocate shared libraries at runtime.
4617 ;;
4618
4619 msdosdjgpp*)
4620 # Just because we use GCC doesn't mean we suddenly get shared libraries
4621 # on systems that don't support them.
4622 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
4623 enable_shared=no
4624 ;;
4625
4626 *nto* | *qnx*)
4627 # QNX uses GNU C++, but need to define -shared option too, otherwise
4628 # it will coredump.
4629 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
4630 ;;
4631
4632 sysv4*MP*)
4633 if test -d /usr/nec; then
4634 _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
4635 fi
4636 ;;
4637
4638 *)
4639 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4640 ;;
4641 esac
4642
4643 case $cc_basename in
4644 nvcc*) # Cuda Compiler Driver 2.2
4645 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Xlinker '
4646 if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then
4647 _LT_TAGVAR(lt_prog_compiler_pic, $1)="-Xcompiler $_LT_TAGVAR(lt_prog_compiler_pic, $1)"
4648 fi
4649 ;;
4650 esac
4651 else
4652 # PORTME Check for flag to pass linker flags through the system compiler.
4653 case $host_os in
4654 aix*)
4655 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4656 if test ia64 = "$host_cpu"; then
4657 # AIX 5 now supports IA64 processor
4658 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4659 else
4660 _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
4661 fi
4662 ;;
4663
4664 darwin* | rhapsody*)
4665 # PIC is the default on this platform
4666 # Common symbols not allowed in MH_DYLIB files
4667 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
4668 case $cc_basename in
4669 nagfor*)
4670 # NAG Fortran compiler
4671 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,-Wl,,'
4672 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
4673 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4674 ;;
4675 esac
4676 ;;
4677
4678 mingw* | cygwin* | pw32* | os2* | cegcc*)
4679 # This hack is so that the source file can tell whether it is being
4680 # built for inclusion in a dll (and should export symbols for example).
4681 m4_if([$1], [GCJ], [],
4682 [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
4683 case $host_os in
4684 os2*)
4685 _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static'
4686 ;;
4687 esac
4688 ;;
4689
4690 hpux9* | hpux10* | hpux11*)
4691 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4692 # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
4693 # not for PA HP-UX.
4694 case $host_cpu in
4695 hppa*64*|ia64*)
4696 # +Z the default
4697 ;;
4698 *)
4699 _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
4700 ;;
4701 esac
4702 # Is there a better lt_prog_compiler_static that works with the bundled CC?
4703 _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-a ${wl}archive'
4704 ;;
4705
4706 irix5* | irix6* | nonstopux*)
4707 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4708 # PIC (with -KPIC) is the default.
4709 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4710 ;;
4711
4712 linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
4713 case $cc_basename in
4714 # old Intel for x86_64, which still supported -KPIC.
4715 ecc*)
4716 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4717 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4718 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4719 ;;
4720 # flang / f18. f95 an alias for gfortran or flang on Debian
4721 flang* | f18* | f95*)
4722 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4723 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4724 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4725 ;;
4726 # icc used to be incompatible with GCC.
4727 # ICC 10 doesn't accept -KPIC any more.
4728 icc* | ifort*)
4729 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4730 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4731 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4732 ;;
4733 # Lahey Fortran 8.1.
4734 lf95*)
4735 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4736 _LT_TAGVAR(lt_prog_compiler_pic, $1)='--shared'
4737 _LT_TAGVAR(lt_prog_compiler_static, $1)='--static'
4738 ;;
4739 nagfor*)
4740 # NAG Fortran compiler
4741 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,-Wl,,'
4742 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
4743 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4744 ;;
4745 tcc*)
4746 # Fabrice Bellard et al's Tiny C Compiler
4747 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4748 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4749 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4750 ;;
4751 pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*)
4752 # Portland Group compilers (*not* the Pentium gcc compiler,
4753 # which looks to be a dead project)
4754 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4755 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
4756 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4757 ;;
4758 ccc*)
4759 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4760 # All Alpha code is PIC.
4761 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4762 ;;
4763 xl* | bgxl* | bgf* | mpixl*)
4764 # IBM XL C 8.0/Fortran 10.1, 11.1 on PPC and BlueGene
4765 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4766 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
4767 _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
4768 ;;
4769 *)
4770 case `$CC -V 2>&1 | sed 5q` in
4771 *Sun\ Ceres\ Fortran* | *Sun*Fortran*\ [[1-7]].* | *Sun*Fortran*\ 8.[[0-3]]*)
4772 # Sun Fortran 8.3 passes all unrecognized flags to the linker
4773 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4774 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4775 _LT_TAGVAR(lt_prog_compiler_wl, $1)=''
4776 ;;
4777 *Sun\ F* | *Sun*Fortran*)
4778 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4779 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4780 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
4781 ;;
4782 *Sun\ C*)
4783 # Sun C 5.9
4784 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4785 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4786 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4787 ;;
4788 *Intel*\ [[CF]]*Compiler*)
4789 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4790 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4791 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4792 ;;
4793 *Portland\ Group*)
4794 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4795 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
4796 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4797 ;;
4798 esac
4799 ;;
4800 esac
4801 ;;
4802
4803 newsos6)
4804 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4805 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4806 ;;
4807
4808 *nto* | *qnx*)
4809 # QNX uses GNU C++, but need to define -shared option too, otherwise
4810 # it will coredump.
4811 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
4812 ;;
4813
4814 osf3* | osf4* | osf5*)
4815 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4816 # All OSF/1 code is PIC.
4817 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4818 ;;
4819
4820 rdos*)
4821 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4822 ;;
4823
4824 solaris*)
4825 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4826 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4827 case $cc_basename in
4828 f77* | f90* | f95* | sunf77* | sunf90* | sunf95*)
4829 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ';;
4830 *)
4831 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,';;
4832 esac
4833 ;;
4834
4835 sunos4*)
4836 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
4837 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
4838 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4839 ;;
4840
4841 sysv4 | sysv4.2uw2* | sysv4.3*)
4842 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4843 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4844 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4845 ;;
4846
4847 sysv4*MP*)
4848 if test -d /usr/nec; then
4849 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-Kconform_pic'
4850 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4851 fi
4852 ;;
4853
4854 sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
4855 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4856 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4857 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4858 ;;
4859
4860 unicos*)
4861 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4862 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
4863 ;;
4864
4865 uts4*)
4866 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4867 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4868 ;;
4869
4870 *)
4871 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
4872 ;;
4873 esac
4874 fi
4875 ])
4876 case $host_os in
4877 # For platforms that do not support PIC, -DPIC is meaningless:
4878 *djgpp*)
4879 _LT_TAGVAR(lt_prog_compiler_pic, $1)=
4880 ;;
4881 *)
4882 _LT_TAGVAR(lt_prog_compiler_pic, $1)="$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])"
4883 ;;
4884 esac
4885
4886 AC_CACHE_CHECK([for $compiler option to produce PIC],
4887 [_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)],
4888 [_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_prog_compiler_pic, $1)])
4889 _LT_TAGVAR(lt_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)
4890
4891 #
4892 # Check to make sure the PIC flag actually works.
4893 #
4894 if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then
4895 _LT_COMPILER_OPTION([if $compiler PIC flag $_LT_TAGVAR(lt_prog_compiler_pic, $1) works],
4896 [_LT_TAGVAR(lt_cv_prog_compiler_pic_works, $1)],
4897 [$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])], [],
4898 [case $_LT_TAGVAR(lt_prog_compiler_pic, $1) in
4899 "" | " "*) ;;
4900 *) _LT_TAGVAR(lt_prog_compiler_pic, $1)=" $_LT_TAGVAR(lt_prog_compiler_pic, $1)" ;;
4901 esac],
4902 [_LT_TAGVAR(lt_prog_compiler_pic, $1)=
4903 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no])
4904 fi
4905 _LT_TAGDECL([pic_flag], [lt_prog_compiler_pic], [1],
4906 [Additional compiler flags for building library objects])
4907
4908 _LT_TAGDECL([wl], [lt_prog_compiler_wl], [1],
4909 [How to pass a linker flag through the compiler])
4910 #
4911 # Check to make sure the static flag actually works.
4912 #
4913 wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1) eval lt_tmp_static_flag=\"$_LT_TAGVAR(lt_prog_compiler_static, $1)\"
4914 _LT_LINKER_OPTION([if $compiler static flag $lt_tmp_static_flag works],
4915 _LT_TAGVAR(lt_cv_prog_compiler_static_works, $1),
4916 $lt_tmp_static_flag,
4917 [],
4918 [_LT_TAGVAR(lt_prog_compiler_static, $1)=])
4919 _LT_TAGDECL([link_static_flag], [lt_prog_compiler_static], [1],
4920 [Compiler flag to prevent dynamic linking])
4921 ])# _LT_COMPILER_PIC
4922
4923
4924 # _LT_LINKER_SHLIBS([TAGNAME])
4925 # ----------------------------
4926 # See if the linker supports building shared libraries.
4927 m4_defun([_LT_LINKER_SHLIBS],
4928 [AC_REQUIRE([LT_PATH_LD])dnl
4929 AC_REQUIRE([LT_PATH_NM])dnl
4930 m4_require([_LT_PATH_MANIFEST_TOOL])dnl
4931 m4_require([_LT_FILEUTILS_DEFAULTS])dnl
4932 m4_require([_LT_DECL_EGREP])dnl
4933 m4_require([_LT_DECL_SED])dnl
4934 m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
4935 m4_require([_LT_TAG_COMPILER])dnl
4936 AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
4937 m4_if([$1], [CXX], [
4938 _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
4939 _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
4940 case $host_os in
4941 aix[[4-9]]*)
4942 # If we're using GNU nm, then we don't want the "-C" option.
4943 # -C means demangle to GNU nm, but means don't demangle to AIX nm.
4944 # Without the "-l" option, or with the "-B" option, AIX nm treats
4945 # weak defined symbols like other global defined symbols, whereas
4946 # GNU nm marks them as "W".
4947 # While the 'weak' keyword is ignored in the Export File, we need
4948 # it in the Import File for the 'aix-soname' feature, so we have
4949 # to replace the "-B" option with "-P" for AIX nm.
4950 if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
4951 _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { if (\$ 2 == "W") { print \$ 3 " weak" } else { print \$ 3 } } }'\'' | sort -u > $export_symbols'
4952 else
4953 _LT_TAGVAR(export_symbols_cmds, $1)='`func_echo_all $NM | $SED -e '\''s/B\([[^B]]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && ([substr](\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols'
4954 fi
4955 ;;
4956 pw32*)
4957 _LT_TAGVAR(export_symbols_cmds, $1)=$ltdll_cmds
4958 ;;
4959 cygwin* | mingw* | cegcc*)
4960 case $cc_basename in
4961 cl*)
4962 _LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*'
4963 ;;
4964 *)
4965 _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/;s/^.*[[ ]]__nm__\([[^ ]]*\)[[ ]][[^ ]]*/\1 DATA/;/^I[[ ]]/d;/^[[AITW]][[ ]]/s/.* //'\'' | sort | uniq > $export_symbols'
4966 _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname']
4967 ;;
4968 esac
4969 ;;
4970 linux* | k*bsd*-gnu | gnu*)
4971 _LT_TAGVAR(link_all_deplibs, $1)=no
4972 ;;
4973 *)
4974 _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
4975 ;;
4976 esac
4977 ], [
4978 runpath_var=
4979 _LT_TAGVAR(allow_undefined_flag, $1)=
4980 _LT_TAGVAR(always_export_symbols, $1)=no
4981 _LT_TAGVAR(archive_cmds, $1)=
4982 _LT_TAGVAR(archive_expsym_cmds, $1)=
4983 _LT_TAGVAR(compiler_needs_object, $1)=no
4984 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
4985 _LT_TAGVAR(export_dynamic_flag_spec, $1)=
4986 _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
4987 _LT_TAGVAR(hardcode_automatic, $1)=no
4988 _LT_TAGVAR(hardcode_direct, $1)=no
4989 _LT_TAGVAR(hardcode_direct_absolute, $1)=no
4990 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
4991 _LT_TAGVAR(hardcode_libdir_separator, $1)=
4992 _LT_TAGVAR(hardcode_minus_L, $1)=no
4993 _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
4994 _LT_TAGVAR(inherit_rpath, $1)=no
4995 _LT_TAGVAR(link_all_deplibs, $1)=unknown
4996 _LT_TAGVAR(module_cmds, $1)=
4997 _LT_TAGVAR(module_expsym_cmds, $1)=
4998 _LT_TAGVAR(old_archive_from_new_cmds, $1)=
4999 _LT_TAGVAR(old_archive_from_expsyms_cmds, $1)=
5000 _LT_TAGVAR(thread_safe_flag_spec, $1)=
5001 _LT_TAGVAR(whole_archive_flag_spec, $1)=
5002 # include_expsyms should be a list of space-separated symbols to be *always*
5003 # included in the symbol list
5004 _LT_TAGVAR(include_expsyms, $1)=
5005 # exclude_expsyms can be an extended regexp of symbols to exclude
5006 # it will be wrapped by ' (' and ')$', so one must not match beginning or
5007 # end of line. Example: 'a|bc|.*d.*' will exclude the symbols 'a' and 'bc',
5008 # as well as any symbol that contains 'd'.
5009 _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
5010 # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
5011 # platforms (ab)use it in PIC code, but their linkers get confused if
5012 # the symbol is explicitly referenced. Since portable code cannot
5013 # rely on this symbol name, it's probably fine to never include it in
5014 # preloaded symbol tables.
5015 # Exclude shared library initialization/finalization symbols.
5016 dnl Note also adjust exclude_expsyms for C++ above.
5017 extract_expsyms_cmds=
5018
5019 case $host_os in
5020 cygwin* | mingw* | pw32* | cegcc*)
5021 # FIXME: the MSVC++ port hasn't been tested in a loooong time
5022 # When not using gcc, we currently assume that we are using
5023 # Microsoft Visual C++.
5024 if test yes != "$GCC"; then
5025 with_gnu_ld=no
5026 fi
5027 ;;
5028 interix*)
5029 # we just hope/assume this is gcc and not c89 (= MSVC++)
5030 with_gnu_ld=yes
5031 ;;
5032 openbsd* | bitrig*)
5033 with_gnu_ld=no
5034 ;;
5035 linux* | k*bsd*-gnu | gnu*)
5036 _LT_TAGVAR(link_all_deplibs, $1)=no
5037 ;;
5038 esac
5039
5040 _LT_TAGVAR(ld_shlibs, $1)=yes
5041
5042 # On some targets, GNU ld is compatible enough with the native linker
5043 # that we're better off using the native interface for both.
5044 lt_use_gnu_ld_interface=no
5045 if test yes = "$with_gnu_ld"; then
5046 case $host_os in
5047 aix*)
5048 # The AIX port of GNU ld has always aspired to compatibility
5049 # with the native linker. However, as the warning in the GNU ld
5050 # block says, versions before 2.19.5* couldn't really create working
5051 # shared libraries, regardless of the interface used.
5052 case `$LD -v 2>&1` in
5053 *\ \(GNU\ Binutils\)\ 2.19.5*) ;;
5054 *\ \(GNU\ Binutils\)\ 2.[[2-9]]*) ;;
5055 *\ \(GNU\ Binutils\)\ [[3-9]]*) ;;
5056 *)
5057 lt_use_gnu_ld_interface=yes
5058 ;;
5059 esac
5060 ;;
5061 *)
5062 lt_use_gnu_ld_interface=yes
5063 ;;
5064 esac
5065 fi
5066
5067 if test yes = "$lt_use_gnu_ld_interface"; then
5068 # If archive_cmds runs LD, not CC, wlarc should be empty
5069 wlarc='$wl'
5070
5071 # Set some defaults for GNU ld with shared library support. These
5072 # are reset later if shared libraries are not supported. Putting them
5073 # here allows them to be overridden if necessary.
5074 runpath_var=LD_RUN_PATH
5075 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
5076 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
5077 # ancient GNU ld didn't support --whole-archive et. al.
5078 if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then
5079 _LT_TAGVAR(whole_archive_flag_spec, $1)=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive'
5080 else
5081 _LT_TAGVAR(whole_archive_flag_spec, $1)=
5082 fi
5083 supports_anon_versioning=no
5084 case `$LD -v | $SED -e 's/([^)]\+)\s\+//' 2>&1` in
5085 *GNU\ gold*) supports_anon_versioning=yes ;;
5086 *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.10.*) ;; # catch versions < 2.11
5087 *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ...
5088 *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ...
5089 *\ 2.11.*) ;; # other 2.11 versions
5090 *) supports_anon_versioning=yes ;;
5091 esac
5092
5093 # See if GNU ld supports shared libraries.
5094 case $host_os in
5095 aix[[3-9]]*)
5096 # On AIX/PPC, the GNU linker is very broken
5097 if test ia64 != "$host_cpu"; then
5098 _LT_TAGVAR(ld_shlibs, $1)=no
5099 cat <<_LT_EOF 1>&2
5100
5101 *** Warning: the GNU linker, at least up to release 2.19, is reported
5102 *** to be unable to reliably create shared libraries on AIX.
5103 *** Therefore, libtool is disabling shared libraries support. If you
5104 *** really care for shared libraries, you may want to install binutils
5105 *** 2.20 or above, or modify your PATH so that a non-GNU linker is found.
5106 *** You will then need to restart the configuration process.
5107
5108 _LT_EOF
5109 fi
5110 ;;
5111
5112 amigaos*)
5113 case $host_cpu in
5114 powerpc)
5115 # see comment about AmigaOS4 .so support
5116 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5117 _LT_TAGVAR(archive_expsym_cmds, $1)=''
5118 ;;
5119 m68k)
5120 _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
5121 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5122 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5123 ;;
5124 esac
5125 ;;
5126
5127 beos*)
5128 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
5129 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5130 # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
5131 # support --undefined. This deserves some investigation. FIXME
5132 _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5133 else
5134 _LT_TAGVAR(ld_shlibs, $1)=no
5135 fi
5136 ;;
5137
5138 cygwin* | mingw* | pw32* | cegcc*)
5139 # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
5140 # as there is no search path for DLLs.
5141 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5142 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-all-symbols'
5143 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5144 _LT_TAGVAR(always_export_symbols, $1)=no
5145 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
5146 _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/;s/^.*[[ ]]__nm__\([[^ ]]*\)[[ ]][[^ ]]*/\1 DATA/;/^I[[ ]]/d;/^[[AITW]][[ ]]/s/.* //'\'' | sort | uniq > $export_symbols'
5147 _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname']
5148
5149 if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
5150 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
5151 # If the export-symbols file already is a .def file, use it as
5152 # is; otherwise, prepend EXPORTS...
5153 _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then
5154 cp $export_symbols $output_objdir/$soname.def;
5155 else
5156 echo EXPORTS > $output_objdir/$soname.def;
5157 cat $export_symbols >> $output_objdir/$soname.def;
5158 fi~
5159 $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
5160 else
5161 _LT_TAGVAR(ld_shlibs, $1)=no
5162 fi
5163 ;;
5164
5165 haiku*)
5166 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5167 _LT_TAGVAR(link_all_deplibs, $1)=yes
5168 ;;
5169
5170 os2*)
5171 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5172 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5173 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5174 shrext_cmds=.dll
5175 _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
5176 $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
5177 $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
5178 $ECHO EXPORTS >> $output_objdir/$libname.def~
5179 emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~
5180 $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
5181 emximp -o $lib $output_objdir/$libname.def'
5182 _LT_TAGVAR(archive_expsym_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
5183 $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
5184 $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
5185 $ECHO EXPORTS >> $output_objdir/$libname.def~
5186 prefix_cmds="$SED"~
5187 if test EXPORTS = "`$SED 1q $export_symbols`"; then
5188 prefix_cmds="$prefix_cmds -e 1d";
5189 fi~
5190 prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~
5191 cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~
5192 $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
5193 emximp -o $lib $output_objdir/$libname.def'
5194 _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'
5195 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
5196 ;;
5197
5198 interix[[3-9]]*)
5199 _LT_TAGVAR(hardcode_direct, $1)=no
5200 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5201 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
5202 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
5203 # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
5204 # Instead, shared libraries are loaded at an image base (0x10000000 by
5205 # default) and relocated if they conflict, which is a slow very memory
5206 # consuming and fragmenting process. To avoid this, we pick a random,
5207 # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
5208 # time. Moving up from 0x10000000 also allows more sbrk(2) space.
5209 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
5210 _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--retain-symbols-file,$output_objdir/$soname.expsym $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
5211 ;;
5212
5213 gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)
5214 tmp_diet=no
5215 if test linux-dietlibc = "$host_os"; then
5216 case $cc_basename in
5217 diet\ *) tmp_diet=yes;; # linux-dietlibc with static linking (!diet-dyn)
5218 esac
5219 fi
5220 if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \
5221 && test no = "$tmp_diet"
5222 then
5223 tmp_addflag=' $pic_flag'
5224 tmp_sharedflag='-shared'
5225 case $cc_basename,$host_cpu in
5226 pgcc*) # Portland Group C compiler
5227 _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive'
5228 tmp_addflag=' $pic_flag'
5229 ;;
5230 pgf77* | pgf90* | pgf95* | pgfortran*)
5231 # Portland Group f77 and f90 compilers
5232 _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive'
5233 tmp_addflag=' $pic_flag -Mnomain' ;;
5234 ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64
5235 tmp_addflag=' -i_dynamic' ;;
5236 efc*,ia64* | ifort*,ia64*) # Intel Fortran compiler on ia64
5237 tmp_addflag=' -i_dynamic -nofor_main' ;;
5238 ifc* | ifort*) # Intel Fortran compiler
5239 tmp_addflag=' -nofor_main' ;;
5240 lf95*) # Lahey Fortran 8.1
5241 _LT_TAGVAR(whole_archive_flag_spec, $1)=
5242 tmp_sharedflag='--shared' ;;
5243 nagfor*) # NAGFOR 5.3
5244 tmp_sharedflag='-Wl,-shared' ;;
5245 xl[[cC]]* | bgxl[[cC]]* | mpixl[[cC]]*) # IBM XL C 8.0 on PPC (deal with xlf below)
5246 tmp_sharedflag='-qmkshrobj'
5247 tmp_addflag= ;;
5248 nvcc*) # Cuda Compiler Driver 2.2
5249 _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive'
5250 _LT_TAGVAR(compiler_needs_object, $1)=yes
5251 ;;
5252 esac
5253 case `$CC -V 2>&1 | sed 5q` in
5254 *Sun\ C*) # Sun C 5.9
5255 _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive'
5256 _LT_TAGVAR(compiler_needs_object, $1)=yes
5257 tmp_sharedflag='-G' ;;
5258 *Sun\ F*) # Sun Fortran 8.3
5259 tmp_sharedflag='-G' ;;
5260 esac
5261 _LT_TAGVAR(archive_cmds, $1)='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5262
5263 if test yes = "$supports_anon_versioning"; then
5264 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
5265 cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
5266 echo "local: *; };" >> $output_objdir/$libname.ver~
5267 $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib'
5268 fi
5269
5270 case $cc_basename in
5271 tcc*)
5272 _LT_TAGVAR(export_dynamic_flag_spec, $1)='-rdynamic'
5273 ;;
5274 xlf* | bgf* | bgxlf* | mpixlf*)
5275 # IBM XL Fortran 10.1 on PPC cannot create shared libs itself
5276 _LT_TAGVAR(whole_archive_flag_spec, $1)='--whole-archive$convenience --no-whole-archive'
5277 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
5278 _LT_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib'
5279 if test yes = "$supports_anon_versioning"; then
5280 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
5281 cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
5282 echo "local: *; };" >> $output_objdir/$libname.ver~
5283 $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
5284 fi
5285 ;;
5286 esac
5287 else
5288 _LT_TAGVAR(ld_shlibs, $1)=no
5289 fi
5290 ;;
5291
5292 netbsd* | netbsdelf*-gnu)
5293 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
5294 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
5295 wlarc=
5296 else
5297 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5298 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
5299 fi
5300 ;;
5301
5302 solaris*)
5303 if $LD -v 2>&1 | $GREP 'BFD 2\.8' > /dev/null; then
5304 _LT_TAGVAR(ld_shlibs, $1)=no
5305 cat <<_LT_EOF 1>&2
5306
5307 *** Warning: The releases 2.8.* of the GNU linker cannot reliably
5308 *** create shared libraries on Solaris systems. Therefore, libtool
5309 *** is disabling shared libraries support. We urge you to upgrade GNU
5310 *** binutils to release 2.9.1 or newer. Another option is to modify
5311 *** your PATH or compiler configuration so that the native linker is
5312 *** used, and then restart.
5313
5314 _LT_EOF
5315 elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
5316 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5317 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
5318 else
5319 _LT_TAGVAR(ld_shlibs, $1)=no
5320 fi
5321 ;;
5322
5323 sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*)
5324 case `$LD -v 2>&1` in
5325 *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.1[[0-5]].*)
5326 _LT_TAGVAR(ld_shlibs, $1)=no
5327 cat <<_LT_EOF 1>&2
5328
5329 *** Warning: Releases of the GNU linker prior to 2.16.91.0.3 cannot
5330 *** reliably create shared libraries on SCO systems. Therefore, libtool
5331 *** is disabling shared libraries support. We urge you to upgrade GNU
5332 *** binutils to release 2.16.91.0.3 or newer. Another option is to modify
5333 *** your PATH or compiler configuration so that the native linker is
5334 *** used, and then restart.
5335
5336 _LT_EOF
5337 ;;
5338 *)
5339 # For security reasons, it is highly recommended that you always
5340 # use absolute paths for naming shared libraries, and exclude the
5341 # DT_RUNPATH tag from executables and libraries. But doing so
5342 # requires that you compile everything twice, which is a pain.
5343 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
5344 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
5345 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5346 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
5347 else
5348 _LT_TAGVAR(ld_shlibs, $1)=no
5349 fi
5350 ;;
5351 esac
5352 ;;
5353
5354 sunos4*)
5355 _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags'
5356 wlarc=
5357 _LT_TAGVAR(hardcode_direct, $1)=yes
5358 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5359 ;;
5360
5361 *)
5362 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
5363 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5364 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
5365 else
5366 _LT_TAGVAR(ld_shlibs, $1)=no
5367 fi
5368 ;;
5369 esac
5370
5371 if test no = "$_LT_TAGVAR(ld_shlibs, $1)"; then
5372 runpath_var=
5373 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
5374 _LT_TAGVAR(export_dynamic_flag_spec, $1)=
5375 _LT_TAGVAR(whole_archive_flag_spec, $1)=
5376 fi
5377 else
5378 # PORTME fill in a description of your system's linker (not GNU ld)
5379 case $host_os in
5380 aix3*)
5381 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5382 _LT_TAGVAR(always_export_symbols, $1)=yes
5383 _LT_TAGVAR(archive_expsym_cmds, $1)='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname'
5384 # Note: this linker hardcodes the directories in LIBPATH if there
5385 # are no directories specified by -L.
5386 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5387 if test yes = "$GCC" && test -z "$lt_prog_compiler_static"; then
5388 # Neither direct hardcoding nor static linking is supported with a
5389 # broken collect2.
5390 _LT_TAGVAR(hardcode_direct, $1)=unsupported
5391 fi
5392 ;;
5393
5394 aix[[4-9]]*)
5395 if test ia64 = "$host_cpu"; then
5396 # On IA64, the linker does run time linking by default, so we don't
5397 # have to do anything special.
5398 aix_use_runtimelinking=no
5399 exp_sym_flag='-Bexport'
5400 no_entry_flag=
5401 else
5402 # If we're using GNU nm, then we don't want the "-C" option.
5403 # -C means demangle to GNU nm, but means don't demangle to AIX nm.
5404 # Without the "-l" option, or with the "-B" option, AIX nm treats
5405 # weak defined symbols like other global defined symbols, whereas
5406 # GNU nm marks them as "W".
5407 # While the 'weak' keyword is ignored in the Export File, we need
5408 # it in the Import File for the 'aix-soname' feature, so we have
5409 # to replace the "-B" option with "-P" for AIX nm.
5410 if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
5411 _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { if (\$ 2 == "W") { print \$ 3 " weak" } else { print \$ 3 } } }'\'' | sort -u > $export_symbols'
5412 else
5413 _LT_TAGVAR(export_symbols_cmds, $1)='`func_echo_all $NM | $SED -e '\''s/B\([[^B]]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && ([substr](\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols'
5414 fi
5415 aix_use_runtimelinking=no
5416
5417 # Test if we are trying to use run time linking or normal
5418 # AIX style linking. If -brtl is somewhere in LDFLAGS, we
5419 # have runtime linking enabled, and use it for executables.
5420 # For shared libraries, we enable/disable runtime linking
5421 # depending on the kind of the shared library created -
5422 # when "with_aix_soname,aix_use_runtimelinking" is:
5423 # "aix,no" lib.a(lib.so.V) shared, rtl:no, for executables
5424 # "aix,yes" lib.so shared, rtl:yes, for executables
5425 # lib.a static archive
5426 # "both,no" lib.so.V(shr.o) shared, rtl:yes
5427 # lib.a(lib.so.V) shared, rtl:no, for executables
5428 # "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables
5429 # lib.a(lib.so.V) shared, rtl:no
5430 # "svr4,*" lib.so.V(shr.o) shared, rtl:yes, for executables
5431 # lib.a static archive
5432 case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
5433 for ld_flag in $LDFLAGS; do
5434 if (test x-brtl = "x$ld_flag" || test x-Wl,-brtl = "x$ld_flag"); then
5435 aix_use_runtimelinking=yes
5436 break
5437 fi
5438 done
5439 if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then
5440 # With aix-soname=svr4, we create the lib.so.V shared archives only,
5441 # so we don't have lib.a shared libs to link our executables.
5442 # We have to force runtime linking in this case.
5443 aix_use_runtimelinking=yes
5444 LDFLAGS="$LDFLAGS -Wl,-brtl"
5445 fi
5446 ;;
5447 esac
5448
5449 exp_sym_flag='-bexport'
5450 no_entry_flag='-bnoentry'
5451 fi
5452
5453 # When large executables or shared objects are built, AIX ld can
5454 # have problems creating the table of contents. If linking a library
5455 # or program results in "error TOC overflow" add -mminimal-toc to
5456 # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
5457 # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
5458
5459 _LT_TAGVAR(archive_cmds, $1)=''
5460 _LT_TAGVAR(hardcode_direct, $1)=yes
5461 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
5462 _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
5463 _LT_TAGVAR(link_all_deplibs, $1)=yes
5464 _LT_TAGVAR(file_list_spec, $1)='$wl-f,'
5465 case $with_aix_soname,$aix_use_runtimelinking in
5466 aix,*) ;; # traditional, no import file
5467 svr4,* | *,yes) # use import file
5468 # The Import File defines what to hardcode.
5469 _LT_TAGVAR(hardcode_direct, $1)=no
5470 _LT_TAGVAR(hardcode_direct_absolute, $1)=no
5471 ;;
5472 esac
5473
5474 if test yes = "$GCC"; then
5475 case $host_os in aix4.[[012]]|aix4.[[012]].*)
5476 # We only want to do this on AIX 4.2 and lower, the check
5477 # below for broken collect2 doesn't work under 4.3+
5478 collect2name=`$CC -print-prog-name=collect2`
5479 if test -f "$collect2name" &&
5480 strings "$collect2name" | $GREP resolve_lib_name >/dev/null
5481 then
5482 # We have reworked collect2
5483 :
5484 else
5485 # We have old collect2
5486 _LT_TAGVAR(hardcode_direct, $1)=unsupported
5487 # It fails to find uninstalled libraries when the uninstalled
5488 # path is not listed in the libpath. Setting hardcode_minus_L
5489 # to unsupported forces relinking
5490 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5491 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5492 _LT_TAGVAR(hardcode_libdir_separator, $1)=
5493 fi
5494 ;;
5495 esac
5496 shared_flag='-shared'
5497 if test yes = "$aix_use_runtimelinking"; then
5498 shared_flag="$shared_flag "'$wl-G'
5499 fi
5500 # Need to ensure runtime linking is disabled for the traditional
5501 # shared library, or the linker may eventually find shared libraries
5502 # /with/ Import File - we do not want to mix them.
5503 shared_flag_aix='-shared'
5504 shared_flag_svr4='-shared $wl-G'
5505 else
5506 # not using gcc
5507 if test ia64 = "$host_cpu"; then
5508 # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
5509 # chokes on -Wl,-G. The following line is correct:
5510 shared_flag='-G'
5511 else
5512 if test yes = "$aix_use_runtimelinking"; then
5513 shared_flag='$wl-G'
5514 else
5515 shared_flag='$wl-bM:SRE'
5516 fi
5517 shared_flag_aix='$wl-bM:SRE'
5518 shared_flag_svr4='$wl-G'
5519 fi
5520 fi
5521
5522 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-bexpall'
5523 # It seems that -bexpall does not export symbols beginning with
5524 # underscore (_), so it is better to generate a list of symbols to export.
5525 _LT_TAGVAR(always_export_symbols, $1)=yes
5526 if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then
5527 # Warning - without using the other runtime loading flags (-brtl),
5528 # -berok will link without error, but may produce a broken library.
5529 _LT_TAGVAR(allow_undefined_flag, $1)='-berok'
5530 # Determine the default libpath from the value encoded in an
5531 # empty executable.
5532 _LT_SYS_MODULE_PATH_AIX([$1])
5533 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath"
5534 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs $wl'$no_entry_flag' $compiler_flags `if test -n "$allow_undefined_flag"; then func_echo_all "$wl$allow_undefined_flag"; else :; fi` $wl'$exp_sym_flag:\$export_symbols' '$shared_flag
5535 else
5536 if test ia64 = "$host_cpu"; then
5537 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $libdir:/usr/lib:/lib'
5538 _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
5539 _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\$wl$no_entry_flag"' $compiler_flags $wl$allow_undefined_flag '"\$wl$exp_sym_flag:\$export_symbols"
5540 else
5541 # Determine the default libpath from the value encoded in an
5542 # empty executable.
5543 _LT_SYS_MODULE_PATH_AIX([$1])
5544 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath"
5545 # Warning - without using the other run time loading flags,
5546 # -berok will link without error, but may produce a broken library.
5547 _LT_TAGVAR(no_undefined_flag, $1)=' $wl-bernotok'
5548 _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-berok'
5549 if test yes = "$with_gnu_ld"; then
5550 # We only use this code for GNU lds that support --whole-archive.
5551 _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive'
5552 else
5553 # Exported symbols can be pulled into shared objects from archives
5554 _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
5555 fi
5556 _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
5557 _LT_TAGVAR(archive_expsym_cmds, $1)='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d'
5558 # -brtl affects multiple linker settings, -berok does not and is overridden later
5559 compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([[, ]]\\)%-berok\\1%g"`'
5560 if test svr4 != "$with_aix_soname"; then
5561 # This is similar to how AIX traditionally builds its shared libraries.
5562 _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$CC '$shared_flag_aix' -o $output_objdir/$realname.d/$soname $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$realname.d/$soname'
5563 fi
5564 if test aix != "$with_aix_soname"; then
5565 _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$CC '$shared_flag_svr4' -o $output_objdir/$realname.d/$shared_archive_member_spec.o $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$STRIP -e $output_objdir/$realname.d/$shared_archive_member_spec.o~( func_echo_all "#! $soname($shared_archive_member_spec.o)"; if test shr_64 = "$shared_archive_member_spec"; then func_echo_all "# 64"; else func_echo_all "# 32"; fi; cat $export_symbols ) > $output_objdir/$realname.d/$shared_archive_member_spec.imp~$AR $AR_FLAGS $output_objdir/$soname $output_objdir/$realname.d/$shared_archive_member_spec.o $output_objdir/$realname.d/$shared_archive_member_spec.imp'
5566 else
5567 # used by -dlpreopen to get the symbols
5568 _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$MV $output_objdir/$realname.d/$soname $output_objdir'
5569 fi
5570 _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$RM -r $output_objdir/$realname.d'
5571 fi
5572 fi
5573 ;;
5574
5575 amigaos*)
5576 case $host_cpu in
5577 powerpc)
5578 # see comment about AmigaOS4 .so support
5579 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5580 _LT_TAGVAR(archive_expsym_cmds, $1)=''
5581 ;;
5582 m68k)
5583 _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
5584 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5585 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5586 ;;
5587 esac
5588 ;;
5589
5590 bsdi[[45]]*)
5591 _LT_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic
5592 ;;
5593
5594 cygwin* | mingw* | pw32* | cegcc*)
5595 # When not using gcc, we currently assume that we are using
5596 # Microsoft Visual C++.
5597 # hardcode_libdir_flag_spec is actually meaningless, as there is
5598 # no search path for DLLs.
5599 case $cc_basename in
5600 cl*)
5601 # Native MSVC
5602 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
5603 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5604 _LT_TAGVAR(always_export_symbols, $1)=yes
5605 _LT_TAGVAR(file_list_spec, $1)='@'
5606 # Tell ltmain to make .lib files, not .a files.
5607 libext=lib
5608 # Tell ltmain to make .dll files, not .so files.
5609 shrext_cmds=.dll
5610 # FIXME: Setting linknames here is a bad hack.
5611 _LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames='
5612 _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then
5613 cp "$export_symbols" "$output_objdir/$soname.def";
5614 echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp";
5615 else
5616 $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp;
5617 fi~
5618 $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
5619 linknames='
5620 # The linker will not automatically build a static lib if we build a DLL.
5621 # _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
5622 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
5623 _LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*'
5624 _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1,DATA/'\'' | $SED -e '\''/^[[AITW]][[ ]]/s/.*[[ ]]//'\'' | sort | uniq > $export_symbols'
5625 # Don't use ranlib
5626 _LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib'
5627 _LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~
5628 lt_tool_outputfile="@TOOL_OUTPUT@"~
5629 case $lt_outputfile in
5630 *.exe|*.EXE) ;;
5631 *)
5632 lt_outputfile=$lt_outputfile.exe
5633 lt_tool_outputfile=$lt_tool_outputfile.exe
5634 ;;
5635 esac~
5636 if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then
5637 $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
5638 $RM "$lt_outputfile.manifest";
5639 fi'
5640 ;;
5641 *)
5642 # Assume MSVC wrapper
5643 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
5644 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5645 # Tell ltmain to make .lib files, not .a files.
5646 libext=lib
5647 # Tell ltmain to make .dll files, not .so files.
5648 shrext_cmds=.dll
5649 # FIXME: Setting linknames here is a bad hack.
5650 _LT_TAGVAR(archive_cmds, $1)='$CC -o $lib $libobjs $compiler_flags `func_echo_all "$deplibs" | $SED '\''s/ -lc$//'\''` -link -dll~linknames='
5651 # The linker will automatically build a .lib file if we build a DLL.
5652 _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
5653 # FIXME: Should let the user specify the lib program.
5654 _LT_TAGVAR(old_archive_cmds, $1)='lib -OUT:$oldlib$oldobjs$old_deplibs'
5655 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
5656 ;;
5657 esac
5658 ;;
5659
5660 darwin* | rhapsody*)
5661 _LT_DARWIN_LINKER_FEATURES($1)
5662 ;;
5663
5664 dgux*)
5665 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5666 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5667 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5668 ;;
5669
5670 # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
5671 # support. Future versions do this automatically, but an explicit c++rt0.o
5672 # does not break anything, and helps significantly (at the cost of a little
5673 # extra space).
5674 freebsd2.2*)
5675 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o'
5676 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5677 _LT_TAGVAR(hardcode_direct, $1)=yes
5678 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5679 ;;
5680
5681 # Unfortunately, older versions of FreeBSD 2 do not have this feature.
5682 freebsd2.*)
5683 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
5684 _LT_TAGVAR(hardcode_direct, $1)=yes
5685 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5686 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5687 ;;
5688
5689 # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
5690 freebsd* | dragonfly*)
5691 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
5692 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5693 _LT_TAGVAR(hardcode_direct, $1)=yes
5694 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5695 ;;
5696
5697 hpux9*)
5698 if test yes = "$GCC"; then
5699 _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared $pic_flag $wl+b $wl$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib'
5700 else
5701 _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib'
5702 fi
5703 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
5704 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5705 _LT_TAGVAR(hardcode_direct, $1)=yes
5706
5707 # hardcode_minus_L: Not really in the search PATH,
5708 # but as the default location of the library.
5709 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5710 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
5711 ;;
5712
5713 hpux10*)
5714 if test yes,no = "$GCC,$with_gnu_ld"; then
5715 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
5716 else
5717 _LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
5718 fi
5719 if test no = "$with_gnu_ld"; then
5720 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
5721 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5722 _LT_TAGVAR(hardcode_direct, $1)=yes
5723 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
5724 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
5725 # hardcode_minus_L: Not really in the search PATH,
5726 # but as the default location of the library.
5727 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5728 fi
5729 ;;
5730
5731 hpux11*)
5732 if test yes,no = "$GCC,$with_gnu_ld"; then
5733 case $host_cpu in
5734 hppa*64*)
5735 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'
5736 ;;
5737 ia64*)
5738 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
5739 ;;
5740 *)
5741 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
5742 ;;
5743 esac
5744 else
5745 case $host_cpu in
5746 hppa*64*)
5747 _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'
5748 ;;
5749 ia64*)
5750 _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
5751 ;;
5752 *)
5753 m4_if($1, [], [
5754 # Older versions of the 11.00 compiler do not understand -b yet
5755 # (HP92453-01 A.11.01.20 doesn't, HP92453-01 B.11.X.35175-35176.GP does)
5756 _LT_LINKER_OPTION([if $CC understands -b],
5757 _LT_TAGVAR(lt_cv_prog_compiler__b, $1), [-b],
5758 [_LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'],
5759 [_LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'])],
5760 [_LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'])
5761 ;;
5762 esac
5763 fi
5764 if test no = "$with_gnu_ld"; then
5765 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
5766 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5767
5768 case $host_cpu in
5769 hppa*64*|ia64*)
5770 _LT_TAGVAR(hardcode_direct, $1)=no
5771 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5772 ;;
5773 *)
5774 _LT_TAGVAR(hardcode_direct, $1)=yes
5775 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
5776 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
5777
5778 # hardcode_minus_L: Not really in the search PATH,
5779 # but as the default location of the library.
5780 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5781 ;;
5782 esac
5783 fi
5784 ;;
5785
5786 irix5* | irix6* | nonstopux*)
5787 if test yes = "$GCC"; then
5788 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib'
5789 # Try to use the -exported_symbol ld option, if it does not
5790 # work, assume that -exports_file does not work either and
5791 # implicitly export all symbols.
5792 # This should be the same for all languages, so no per-tag cache variable.
5793 AC_CACHE_CHECK([whether the $host_os linker accepts -exported_symbol],
5794 [lt_cv_irix_exported_symbol],
5795 [save_LDFLAGS=$LDFLAGS
5796 LDFLAGS="$LDFLAGS -shared $wl-exported_symbol ${wl}foo $wl-update_registry $wl/dev/null"
5797 AC_LINK_IFELSE(
5798 [AC_LANG_SOURCE(
5799 [AC_LANG_CASE([C], [[int foo (void) { return 0; }]],
5800 [C++], [[int foo (void) { return 0; }]],
5801 [Fortran 77], [[
5802 subroutine foo
5803 end]],
5804 [Fortran], [[
5805 subroutine foo
5806 end]])])],
5807 [lt_cv_irix_exported_symbol=yes],
5808 [lt_cv_irix_exported_symbol=no])
5809 LDFLAGS=$save_LDFLAGS])
5810 if test yes = "$lt_cv_irix_exported_symbol"; then
5811 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations $wl-exports_file $wl$export_symbols -o $lib'
5812 fi
5813 _LT_TAGVAR(link_all_deplibs, $1)=no
5814 else
5815 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib'
5816 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -exports_file $export_symbols -o $lib'
5817 fi
5818 _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
5819 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
5820 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5821 _LT_TAGVAR(inherit_rpath, $1)=yes
5822 _LT_TAGVAR(link_all_deplibs, $1)=yes
5823 ;;
5824
5825 linux*)
5826 case $cc_basename in
5827 tcc*)
5828 # Fabrice Bellard et al's Tiny C Compiler
5829 _LT_TAGVAR(ld_shlibs, $1)=yes
5830 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
5831 ;;
5832 esac
5833 ;;
5834
5835 netbsd* | netbsdelf*-gnu)
5836 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
5837 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out
5838 else
5839 _LT_TAGVAR(archive_cmds, $1)='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF
5840 fi
5841 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5842 _LT_TAGVAR(hardcode_direct, $1)=yes
5843 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5844 ;;
5845
5846 newsos6)
5847 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5848 _LT_TAGVAR(hardcode_direct, $1)=yes
5849 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
5850 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5851 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5852 ;;
5853
5854 *nto* | *qnx*)
5855 ;;
5856
5857 openbsd* | bitrig*)
5858 if test -f /usr/libexec/ld.so; then
5859 _LT_TAGVAR(hardcode_direct, $1)=yes
5860 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5861 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
5862 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then
5863 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
5864 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags $wl-retain-symbols-file,$export_symbols'
5865 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
5866 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
5867 else
5868 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
5869 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
5870 fi
5871 else
5872 _LT_TAGVAR(ld_shlibs, $1)=no
5873 fi
5874 ;;
5875
5876 os2*)
5877 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5878 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5879 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5880 shrext_cmds=.dll
5881 _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
5882 $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
5883 $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
5884 $ECHO EXPORTS >> $output_objdir/$libname.def~
5885 emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~
5886 $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
5887 emximp -o $lib $output_objdir/$libname.def'
5888 _LT_TAGVAR(archive_expsym_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
5889 $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
5890 $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
5891 $ECHO EXPORTS >> $output_objdir/$libname.def~
5892 prefix_cmds="$SED"~
5893 if test EXPORTS = "`$SED 1q $export_symbols`"; then
5894 prefix_cmds="$prefix_cmds -e 1d";
5895 fi~
5896 prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~
5897 cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~
5898 $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
5899 emximp -o $lib $output_objdir/$libname.def'
5900 _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'
5901 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
5902 ;;
5903
5904 osf3*)
5905 if test yes = "$GCC"; then
5906 _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*'
5907 _LT_TAGVAR(archive_cmds, $1)='$CC -shared$allow_undefined_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib'
5908 else
5909 _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
5910 _LT_TAGVAR(archive_cmds, $1)='$CC -shared$allow_undefined_flag $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib'
5911 fi
5912 _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
5913 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
5914 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5915 ;;
5916
5917 osf4* | osf5*) # as osf3* with the addition of -msym flag
5918 if test yes = "$GCC"; then
5919 _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*'
5920 _LT_TAGVAR(archive_cmds, $1)='$CC -shared$allow_undefined_flag $pic_flag $libobjs $deplibs $compiler_flags $wl-msym $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib'
5921 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
5922 else
5923 _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
5924 _LT_TAGVAR(archive_cmds, $1)='$CC -shared$allow_undefined_flag $libobjs $deplibs $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib'
5925 _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; printf "%s\\n" "-hidden">> $lib.exp~
5926 $CC -shared$allow_undefined_flag $wl-input $wl$lib.exp $compiler_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib~$RM $lib.exp'
5927
5928 # Both c and cxx compiler support -rpath directly
5929 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
5930 fi
5931 _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
5932 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5933 ;;
5934
5935 solaris*)
5936 _LT_TAGVAR(no_undefined_flag, $1)=' -z defs'
5937 if test yes = "$GCC"; then
5938 wlarc='$wl'
5939 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl-z ${wl}text $wl-h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'
5940 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
5941 $CC -shared $pic_flag $wl-z ${wl}text $wl-M $wl$lib.exp $wl-h $wl$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
5942 else
5943 case `$CC -V 2>&1` in
5944 *"Compilers 5.0"*)
5945 wlarc=''
5946 _LT_TAGVAR(archive_cmds, $1)='$LD -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $linker_flags'
5947 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
5948 $LD -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp'
5949 ;;
5950 *)
5951 wlarc='$wl'
5952 _LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $compiler_flags'
5953 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
5954 $CC -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
5955 ;;
5956 esac
5957 fi
5958 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5959 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5960 case $host_os in
5961 solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
5962 *)
5963 # The compiler driver will combine and reorder linker options,
5964 # but understands '-z linker_flag'. GCC discards it without '$wl',
5965 # but is careful enough not to reorder.
5966 # Supported since Solaris 2.6 (maybe 2.5.1?)
5967 if test yes = "$GCC"; then
5968 _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract'
5969 else
5970 _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
5971 fi
5972 ;;
5973 esac
5974 _LT_TAGVAR(link_all_deplibs, $1)=yes
5975 ;;
5976
5977 sunos4*)
5978 if test sequent = "$host_vendor"; then
5979 # Use $CC to link under sequent, because it throws in some extra .o
5980 # files that make .init and .fini sections work.
5981 _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h $soname -o $lib $libobjs $deplibs $compiler_flags'
5982 else
5983 _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags'
5984 fi
5985 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5986 _LT_TAGVAR(hardcode_direct, $1)=yes
5987 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5988 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5989 ;;
5990
5991 sysv4)
5992 case $host_vendor in
5993 sni)
5994 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5995 _LT_TAGVAR(hardcode_direct, $1)=yes # is this really true???
5996 ;;
5997 siemens)
5998 ## LD is ld it makes a PLAMLIB
5999 ## CC just makes a GrossModule.
6000 _LT_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags'
6001 _LT_TAGVAR(reload_cmds, $1)='$CC -r -o $output$reload_objs'
6002 _LT_TAGVAR(hardcode_direct, $1)=no
6003 ;;
6004 motorola)
6005 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
6006 _LT_TAGVAR(hardcode_direct, $1)=no #Motorola manual says yes, but my tests say they lie
6007 ;;
6008 esac
6009 runpath_var='LD_RUN_PATH'
6010 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6011 ;;
6012
6013 sysv4.3*)
6014 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
6015 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6016 _LT_TAGVAR(export_dynamic_flag_spec, $1)='-Bexport'
6017 ;;
6018
6019 sysv4*MP*)
6020 if test -d /usr/nec; then
6021 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
6022 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6023 runpath_var=LD_RUN_PATH
6024 hardcode_runpath_var=yes
6025 _LT_TAGVAR(ld_shlibs, $1)=yes
6026 fi
6027 ;;
6028
6029 sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
6030 _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text'
6031 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
6032 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6033 runpath_var='LD_RUN_PATH'
6034
6035 if test yes = "$GCC"; then
6036 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6037 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6038 else
6039 _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6040 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6041 fi
6042 ;;
6043
6044 sysv5* | sco3.2v5* | sco5v6*)
6045 # Note: We CANNOT use -z defs as we might desire, because we do not
6046 # link with -lc, and that would cause any symbols used from libc to
6047 # always be unresolved, which means just about no library would
6048 # ever link correctly. If we're not using GNU ld we use -z text
6049 # though, which does catch some bad symbols but isn't as heavy-handed
6050 # as -z defs.
6051 _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text'
6052 _LT_TAGVAR(allow_undefined_flag, $1)='$wl-z,nodefs'
6053 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
6054 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6055 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R,$libdir'
6056 _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
6057 _LT_TAGVAR(link_all_deplibs, $1)=yes
6058 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-Bexport'
6059 runpath_var='LD_RUN_PATH'
6060
6061 if test yes = "$GCC"; then
6062 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6063 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6064 else
6065 _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6066 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6067 fi
6068 ;;
6069
6070 uts4*)
6071 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
6072 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
6073 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6074 ;;
6075
6076 *)
6077 _LT_TAGVAR(ld_shlibs, $1)=no
6078 ;;
6079 esac
6080
6081 if test sni = "$host_vendor"; then
6082 case $host in
6083 sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
6084 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-Blargedynsym'
6085 ;;
6086 esac
6087 fi
6088 fi
6089 ])
6090 AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
6091 test no = "$_LT_TAGVAR(ld_shlibs, $1)" && can_build_shared=no
6092
6093 _LT_TAGVAR(with_gnu_ld, $1)=$with_gnu_ld
6094
6095 _LT_DECL([], [libext], [0], [Old archive suffix (normally "a")])dnl
6096 _LT_DECL([], [shrext_cmds], [1], [Shared library suffix (normally ".so")])dnl
6097 _LT_DECL([], [extract_expsyms_cmds], [2],
6098 [The commands to extract the exported symbol list from a shared archive])
6099
6100 #
6101 # Do we need to explicitly link libc?
6102 #
6103 case "x$_LT_TAGVAR(archive_cmds_need_lc, $1)" in
6104 x|xyes)
6105 # Assume -lc should be added
6106 _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
6107
6108 if test yes,yes = "$GCC,$enable_shared"; then
6109 case $_LT_TAGVAR(archive_cmds, $1) in
6110 *'~'*)
6111 # FIXME: we may have to deal with multi-command sequences.
6112 ;;
6113 '$CC '*)
6114 # Test whether the compiler implicitly links with -lc since on some
6115 # systems, -lgcc has to come before -lc. If gcc already passes -lc
6116 # to ld, don't add -lc before -lgcc.
6117 AC_CACHE_CHECK([whether -lc should be explicitly linked in],
6118 [lt_cv_]_LT_TAGVAR(archive_cmds_need_lc, $1),
6119 [$RM conftest*
6120 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
6121
6122 if AC_TRY_EVAL(ac_compile) 2>conftest.err; then
6123 soname=conftest
6124 lib=conftest
6125 libobjs=conftest.$ac_objext
6126 deplibs=
6127 wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1)
6128 pic_flag=$_LT_TAGVAR(lt_prog_compiler_pic, $1)
6129 compiler_flags=-v
6130 linker_flags=-v
6131 verstring=
6132 output_objdir=.
6133 libname=conftest
6134 lt_save_allow_undefined_flag=$_LT_TAGVAR(allow_undefined_flag, $1)
6135 _LT_TAGVAR(allow_undefined_flag, $1)=
6136 if AC_TRY_EVAL(_LT_TAGVAR(archive_cmds, $1) 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1)
6137 then
6138 lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=no
6139 else
6140 lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=yes
6141 fi
6142 _LT_TAGVAR(allow_undefined_flag, $1)=$lt_save_allow_undefined_flag
6143 else
6144 cat conftest.err 1>&5
6145 fi
6146 $RM conftest*
6147 ])
6148 _LT_TAGVAR(archive_cmds_need_lc, $1)=$lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)
6149 ;;
6150 esac
6151 fi
6152 ;;
6153 esac
6154
6155 _LT_TAGDECL([build_libtool_need_lc], [archive_cmds_need_lc], [0],
6156 [Whether or not to add -lc for building shared libraries])
6157 _LT_TAGDECL([allow_libtool_libs_with_static_runtimes],
6158 [enable_shared_with_static_runtimes], [0],
6159 [Whether or not to disallow shared libs when runtime libs are static])
6160 _LT_TAGDECL([], [export_dynamic_flag_spec], [1],
6161 [Compiler flag to allow reflexive dlopens])
6162 _LT_TAGDECL([], [whole_archive_flag_spec], [1],
6163 [Compiler flag to generate shared objects directly from archives])
6164 _LT_TAGDECL([], [compiler_needs_object], [1],
6165 [Whether the compiler copes with passing no objects directly])
6166 _LT_TAGDECL([], [old_archive_from_new_cmds], [2],
6167 [Create an old-style archive from a shared archive])
6168 _LT_TAGDECL([], [old_archive_from_expsyms_cmds], [2],
6169 [Create a temporary old-style archive to link instead of a shared archive])
6170 _LT_TAGDECL([], [archive_cmds], [2], [Commands used to build a shared archive])
6171 _LT_TAGDECL([], [archive_expsym_cmds], [2])
6172 _LT_TAGDECL([], [module_cmds], [2],
6173 [Commands used to build a loadable module if different from building
6174 a shared archive.])
6175 _LT_TAGDECL([], [module_expsym_cmds], [2])
6176 _LT_TAGDECL([], [with_gnu_ld], [1],
6177 [Whether we are building with GNU ld or not])
6178 _LT_TAGDECL([], [allow_undefined_flag], [1],
6179 [Flag that allows shared libraries with undefined symbols to be built])
6180 _LT_TAGDECL([], [no_undefined_flag], [1],
6181 [Flag that enforces no undefined symbols])
6182 _LT_TAGDECL([], [hardcode_libdir_flag_spec], [1],
6183 [Flag to hardcode $libdir into a binary during linking.
6184 This must work even if $libdir does not exist])
6185 _LT_TAGDECL([], [hardcode_libdir_separator], [1],
6186 [Whether we need a single "-rpath" flag with a separated argument])
6187 _LT_TAGDECL([], [hardcode_direct], [0],
6188 [Set to "yes" if using DIR/libNAME$shared_ext during linking hardcodes
6189 DIR into the resulting binary])
6190 _LT_TAGDECL([], [hardcode_direct_absolute], [0],
6191 [Set to "yes" if using DIR/libNAME$shared_ext during linking hardcodes
6192 DIR into the resulting binary and the resulting library dependency is
6193 "absolute", i.e impossible to change by setting $shlibpath_var if the
6194 library is relocated])
6195 _LT_TAGDECL([], [hardcode_minus_L], [0],
6196 [Set to "yes" if using the -LDIR flag during linking hardcodes DIR
6197 into the resulting binary])
6198 _LT_TAGDECL([], [hardcode_shlibpath_var], [0],
6199 [Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR
6200 into the resulting binary])
6201 _LT_TAGDECL([], [hardcode_automatic], [0],
6202 [Set to "yes" if building a shared library automatically hardcodes DIR
6203 into the library and all subsequent libraries and executables linked
6204 against it])
6205 _LT_TAGDECL([], [inherit_rpath], [0],
6206 [Set to yes if linker adds runtime paths of dependent libraries
6207 to runtime path list])
6208 _LT_TAGDECL([], [link_all_deplibs], [0],
6209 [Whether libtool must link a program against all its dependency libraries])
6210 _LT_TAGDECL([], [always_export_symbols], [0],
6211 [Set to "yes" if exported symbols are required])
6212 _LT_TAGDECL([], [export_symbols_cmds], [2],
6213 [The commands to list exported symbols])
6214 _LT_TAGDECL([], [exclude_expsyms], [1],
6215 [Symbols that should not be listed in the preloaded symbols])
6216 _LT_TAGDECL([], [include_expsyms], [1],
6217 [Symbols that must always be exported])
6218 _LT_TAGDECL([], [prelink_cmds], [2],
6219 [Commands necessary for linking programs (against libraries) with templates])
6220 _LT_TAGDECL([], [postlink_cmds], [2],
6221 [Commands necessary for finishing linking programs])
6222 _LT_TAGDECL([], [file_list_spec], [1],
6223 [Specify filename containing input files])
6224 dnl FIXME: Not yet implemented
6225 dnl _LT_TAGDECL([], [thread_safe_flag_spec], [1],
6226 dnl [Compiler flag to generate thread safe objects])
6227 ])# _LT_LINKER_SHLIBS
6228
6229
6230 # _LT_LANG_C_CONFIG([TAG])
6231 # ------------------------
6232 # Ensure that the configuration variables for a C compiler are suitably
6233 # defined. These variables are subsequently used by _LT_CONFIG to write
6234 # the compiler configuration to 'libtool'.
6235 m4_defun([_LT_LANG_C_CONFIG],
6236 [m4_require([_LT_DECL_EGREP])dnl
6237 lt_save_CC=$CC
6238 AC_LANG_PUSH(C)
6239
6240 # Source file extension for C test sources.
6241 ac_ext=c
6242
6243 # Object file extension for compiled C test sources.
6244 objext=o
6245 _LT_TAGVAR(objext, $1)=$objext
6246
6247 # Code to be used in simple compile tests
6248 lt_simple_compile_test_code="int some_variable = 0;"
6249
6250 # Code to be used in simple link tests
6251 lt_simple_link_test_code='int main(){return(0);}'
6252
6253 _LT_TAG_COMPILER
6254 # Save the default compiler, since it gets overwritten when the other
6255 # tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP.
6256 compiler_DEFAULT=$CC
6257
6258 # save warnings/boilerplate of simple test code
6259 _LT_COMPILER_BOILERPLATE
6260 _LT_LINKER_BOILERPLATE
6261
6262 if test -n "$compiler"; then
6263 _LT_COMPILER_NO_RTTI($1)
6264 _LT_COMPILER_PIC($1)
6265 _LT_COMPILER_C_O($1)
6266 _LT_COMPILER_FILE_LOCKS($1)
6267 _LT_LINKER_SHLIBS($1)
6268 _LT_SYS_DYNAMIC_LINKER($1)
6269 _LT_LINKER_HARDCODE_LIBPATH($1)
6270 LT_SYS_DLOPEN_SELF
6271 _LT_CMD_STRIPLIB
6272
6273 # Report what library types will actually be built
6274 AC_MSG_CHECKING([if libtool supports shared libraries])
6275 AC_MSG_RESULT([$can_build_shared])
6276
6277 AC_MSG_CHECKING([whether to build shared libraries])
6278 test no = "$can_build_shared" && enable_shared=no
6279
6280 # On AIX, shared libraries and static libraries use the same namespace, and
6281 # are all built from PIC.
6282 case $host_os in
6283 aix3*)
6284 test yes = "$enable_shared" && enable_static=no
6285 if test -n "$RANLIB"; then
6286 archive_cmds="$archive_cmds~\$RANLIB \$lib"
6287 postinstall_cmds='$RANLIB $lib'
6288 fi
6289 ;;
6290
6291 aix[[4-9]]*)
6292 if test ia64 != "$host_cpu"; then
6293 case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in
6294 yes,aix,yes) ;; # shared object as lib.so file only
6295 yes,svr4,*) ;; # shared object as lib.so archive member only
6296 yes,*) enable_static=no ;; # shared object in lib.a archive as well
6297 esac
6298 fi
6299 ;;
6300 esac
6301 AC_MSG_RESULT([$enable_shared])
6302
6303 AC_MSG_CHECKING([whether to build static libraries])
6304 # Make sure either enable_shared or enable_static is yes.
6305 test yes = "$enable_shared" || enable_static=yes
6306 AC_MSG_RESULT([$enable_static])
6307
6308 _LT_CONFIG($1)
6309 fi
6310 AC_LANG_POP
6311 CC=$lt_save_CC
6312 ])# _LT_LANG_C_CONFIG
6313
6314
6315 # _LT_LANG_CXX_CONFIG([TAG])
6316 # --------------------------
6317 # Ensure that the configuration variables for a C++ compiler are suitably
6318 # defined. These variables are subsequently used by _LT_CONFIG to write
6319 # the compiler configuration to 'libtool'.
6320 m4_defun([_LT_LANG_CXX_CONFIG],
6321 [m4_require([_LT_FILEUTILS_DEFAULTS])dnl
6322 m4_require([_LT_DECL_EGREP])dnl
6323 m4_require([_LT_PATH_MANIFEST_TOOL])dnl
6324 if test -n "$CXX" && ( test no != "$CXX" &&
6325 ( (test g++ = "$CXX" && `g++ -v >/dev/null 2>&1` ) ||
6326 (test g++ != "$CXX"))); then
6327 AC_PROG_CXXCPP
6328 else
6329 _lt_caught_CXX_error=yes
6330 fi
6331
6332 AC_LANG_PUSH(C++)
6333 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
6334 _LT_TAGVAR(allow_undefined_flag, $1)=
6335 _LT_TAGVAR(always_export_symbols, $1)=no
6336 _LT_TAGVAR(archive_expsym_cmds, $1)=
6337 _LT_TAGVAR(compiler_needs_object, $1)=no
6338 _LT_TAGVAR(export_dynamic_flag_spec, $1)=
6339 _LT_TAGVAR(hardcode_direct, $1)=no
6340 _LT_TAGVAR(hardcode_direct_absolute, $1)=no
6341 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
6342 _LT_TAGVAR(hardcode_libdir_separator, $1)=
6343 _LT_TAGVAR(hardcode_minus_L, $1)=no
6344 _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
6345 _LT_TAGVAR(hardcode_automatic, $1)=no
6346 _LT_TAGVAR(inherit_rpath, $1)=no
6347 _LT_TAGVAR(module_cmds, $1)=
6348 _LT_TAGVAR(module_expsym_cmds, $1)=
6349 _LT_TAGVAR(link_all_deplibs, $1)=unknown
6350 _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
6351 _LT_TAGVAR(reload_flag, $1)=$reload_flag
6352 _LT_TAGVAR(reload_cmds, $1)=$reload_cmds
6353 _LT_TAGVAR(no_undefined_flag, $1)=
6354 _LT_TAGVAR(whole_archive_flag_spec, $1)=
6355 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
6356
6357 # Source file extension for C++ test sources.
6358 ac_ext=cpp
6359
6360 # Object file extension for compiled C++ test sources.
6361 objext=o
6362 _LT_TAGVAR(objext, $1)=$objext
6363
6364 # No sense in running all these tests if we already determined that
6365 # the CXX compiler isn't working. Some variables (like enable_shared)
6366 # are currently assumed to apply to all compilers on this platform,
6367 # and will be corrupted by setting them based on a non-working compiler.
6368 if test yes != "$_lt_caught_CXX_error"; then
6369 # Code to be used in simple compile tests
6370 lt_simple_compile_test_code="int some_variable = 0;"
6371
6372 # Code to be used in simple link tests
6373 lt_simple_link_test_code='int main(int, char *[[]]) { return(0); }'
6374
6375 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
6376 _LT_TAG_COMPILER
6377
6378 # save warnings/boilerplate of simple test code
6379 _LT_COMPILER_BOILERPLATE
6380 _LT_LINKER_BOILERPLATE
6381
6382 # Allow CC to be a program name with arguments.
6383 lt_save_CC=$CC
6384 lt_save_CFLAGS=$CFLAGS
6385 lt_save_LD=$LD
6386 lt_save_GCC=$GCC
6387 GCC=$GXX
6388 lt_save_with_gnu_ld=$with_gnu_ld
6389 lt_save_path_LD=$lt_cv_path_LD
6390 if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then
6391 lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx
6392 else
6393 $as_unset lt_cv_prog_gnu_ld
6394 fi
6395 if test -n "${lt_cv_path_LDCXX+set}"; then
6396 lt_cv_path_LD=$lt_cv_path_LDCXX
6397 else
6398 $as_unset lt_cv_path_LD
6399 fi
6400 test -z "${LDCXX+set}" || LD=$LDCXX
6401 CC=${CXX-"c++"}
6402 CFLAGS=$CXXFLAGS
6403 compiler=$CC
6404 _LT_TAGVAR(compiler, $1)=$CC
6405 _LT_CC_BASENAME([$compiler])
6406
6407 if test -n "$compiler"; then
6408 # We don't want -fno-exception when compiling C++ code, so set the
6409 # no_builtin_flag separately
6410 if test yes = "$GXX"; then
6411 _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin'
6412 else
6413 _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
6414 fi
6415
6416 if test yes = "$GXX"; then
6417 # Set up default GNU C++ configuration
6418
6419 LT_PATH_LD
6420
6421 # Check if GNU C++ uses GNU ld as the underlying linker, since the
6422 # archiving commands below assume that GNU ld is being used.
6423 if test yes = "$with_gnu_ld"; then
6424 _LT_TAGVAR(archive_cmds, $1)='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
6425 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
6426
6427 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
6428 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
6429
6430 # If archive_cmds runs LD, not CC, wlarc should be empty
6431 # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to
6432 # investigate it a little bit more. (MM)
6433 wlarc='$wl'
6434
6435 # ancient GNU ld didn't support --whole-archive et. al.
6436 if eval "`$CC -print-prog-name=ld` --help 2>&1" |
6437 $GREP 'no-whole-archive' > /dev/null; then
6438 _LT_TAGVAR(whole_archive_flag_spec, $1)=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive'
6439 else
6440 _LT_TAGVAR(whole_archive_flag_spec, $1)=
6441 fi
6442 else
6443 with_gnu_ld=no
6444 wlarc=
6445
6446 # A generic and very simple default shared library creation
6447 # command for GNU C++ for the case where it uses the native
6448 # linker, instead of GNU ld. If possible, this setting should
6449 # overridden to take advantage of the native linker features on
6450 # the platform it is being used on.
6451 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
6452 fi
6453
6454 # Commands to make compiler produce verbose output that lists
6455 # what "hidden" libraries, object files and flags are used when
6456 # linking a shared library.
6457 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP " \-L"'
6458
6459 else
6460 GXX=no
6461 with_gnu_ld=no
6462 wlarc=
6463 fi
6464
6465 # PORTME: fill in a description of your system's C++ link characteristics
6466 AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
6467 _LT_TAGVAR(ld_shlibs, $1)=yes
6468 case $host_os in
6469 aix3*)
6470 # FIXME: insert proper C++ library support
6471 _LT_TAGVAR(ld_shlibs, $1)=no
6472 ;;
6473 aix[[4-9]]*)
6474 if test ia64 = "$host_cpu"; then
6475 # On IA64, the linker does run time linking by default, so we don't
6476 # have to do anything special.
6477 aix_use_runtimelinking=no
6478 exp_sym_flag='-Bexport'
6479 no_entry_flag=
6480 else
6481 aix_use_runtimelinking=no
6482
6483 # Test if we are trying to use run time linking or normal
6484 # AIX style linking. If -brtl is somewhere in LDFLAGS, we
6485 # have runtime linking enabled, and use it for executables.
6486 # For shared libraries, we enable/disable runtime linking
6487 # depending on the kind of the shared library created -
6488 # when "with_aix_soname,aix_use_runtimelinking" is:
6489 # "aix,no" lib.a(lib.so.V) shared, rtl:no, for executables
6490 # "aix,yes" lib.so shared, rtl:yes, for executables
6491 # lib.a static archive
6492 # "both,no" lib.so.V(shr.o) shared, rtl:yes
6493 # lib.a(lib.so.V) shared, rtl:no, for executables
6494 # "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables
6495 # lib.a(lib.so.V) shared, rtl:no
6496 # "svr4,*" lib.so.V(shr.o) shared, rtl:yes, for executables
6497 # lib.a static archive
6498 case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
6499 for ld_flag in $LDFLAGS; do
6500 case $ld_flag in
6501 *-brtl*)
6502 aix_use_runtimelinking=yes
6503 break
6504 ;;
6505 esac
6506 done
6507 if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then
6508 # With aix-soname=svr4, we create the lib.so.V shared archives only,
6509 # so we don't have lib.a shared libs to link our executables.
6510 # We have to force runtime linking in this case.
6511 aix_use_runtimelinking=yes
6512 LDFLAGS="$LDFLAGS -Wl,-brtl"
6513 fi
6514 ;;
6515 esac
6516
6517 exp_sym_flag='-bexport'
6518 no_entry_flag='-bnoentry'
6519 fi
6520
6521 # When large executables or shared objects are built, AIX ld can
6522 # have problems creating the table of contents. If linking a library
6523 # or program results in "error TOC overflow" add -mminimal-toc to
6524 # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
6525 # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
6526
6527 _LT_TAGVAR(archive_cmds, $1)=''
6528 _LT_TAGVAR(hardcode_direct, $1)=yes
6529 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
6530 _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
6531 _LT_TAGVAR(link_all_deplibs, $1)=yes
6532 _LT_TAGVAR(file_list_spec, $1)='$wl-f,'
6533 case $with_aix_soname,$aix_use_runtimelinking in
6534 aix,*) ;; # no import file
6535 svr4,* | *,yes) # use import file
6536 # The Import File defines what to hardcode.
6537 _LT_TAGVAR(hardcode_direct, $1)=no
6538 _LT_TAGVAR(hardcode_direct_absolute, $1)=no
6539 ;;
6540 esac
6541
6542 if test yes = "$GXX"; then
6543 case $host_os in aix4.[[012]]|aix4.[[012]].*)
6544 # We only want to do this on AIX 4.2 and lower, the check
6545 # below for broken collect2 doesn't work under 4.3+
6546 collect2name=`$CC -print-prog-name=collect2`
6547 if test -f "$collect2name" &&
6548 strings "$collect2name" | $GREP resolve_lib_name >/dev/null
6549 then
6550 # We have reworked collect2
6551 :
6552 else
6553 # We have old collect2
6554 _LT_TAGVAR(hardcode_direct, $1)=unsupported
6555 # It fails to find uninstalled libraries when the uninstalled
6556 # path is not listed in the libpath. Setting hardcode_minus_L
6557 # to unsupported forces relinking
6558 _LT_TAGVAR(hardcode_minus_L, $1)=yes
6559 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
6560 _LT_TAGVAR(hardcode_libdir_separator, $1)=
6561 fi
6562 esac
6563 shared_flag='-shared'
6564 if test yes = "$aix_use_runtimelinking"; then
6565 shared_flag=$shared_flag' $wl-G'
6566 fi
6567 # Need to ensure runtime linking is disabled for the traditional
6568 # shared library, or the linker may eventually find shared libraries
6569 # /with/ Import File - we do not want to mix them.
6570 shared_flag_aix='-shared'
6571 shared_flag_svr4='-shared $wl-G'
6572 else
6573 # not using gcc
6574 if test ia64 = "$host_cpu"; then
6575 # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
6576 # chokes on -Wl,-G. The following line is correct:
6577 shared_flag='-G'
6578 else
6579 if test yes = "$aix_use_runtimelinking"; then
6580 shared_flag='$wl-G'
6581 else
6582 shared_flag='$wl-bM:SRE'
6583 fi
6584 shared_flag_aix='$wl-bM:SRE'
6585 shared_flag_svr4='$wl-G'
6586 fi
6587 fi
6588
6589 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-bexpall'
6590 # It seems that -bexpall does not export symbols beginning with
6591 # underscore (_), so it is better to generate a list of symbols to
6592 # export.
6593 _LT_TAGVAR(always_export_symbols, $1)=yes
6594 if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then
6595 # Warning - without using the other runtime loading flags (-brtl),
6596 # -berok will link without error, but may produce a broken library.
6597 # The "-G" linker flag allows undefined symbols.
6598 _LT_TAGVAR(no_undefined_flag, $1)='-bernotok'
6599 # Determine the default libpath from the value encoded in an empty
6600 # executable.
6601 _LT_SYS_MODULE_PATH_AIX([$1])
6602 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath"
6603
6604 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs $wl'$no_entry_flag' $compiler_flags `if test -n "$allow_undefined_flag"; then func_echo_all "$wl$allow_undefined_flag"; else :; fi` $wl'$exp_sym_flag:\$export_symbols' '$shared_flag
6605 else
6606 if test ia64 = "$host_cpu"; then
6607 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $libdir:/usr/lib:/lib'
6608 _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
6609 _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\$wl$no_entry_flag"' $compiler_flags $wl$allow_undefined_flag '"\$wl$exp_sym_flag:\$export_symbols"
6610 else
6611 # Determine the default libpath from the value encoded in an
6612 # empty executable.
6613 _LT_SYS_MODULE_PATH_AIX([$1])
6614 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath"
6615 # Warning - without using the other run time loading flags,
6616 # -berok will link without error, but may produce a broken library.
6617 _LT_TAGVAR(no_undefined_flag, $1)=' $wl-bernotok'
6618 _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-berok'
6619 if test yes = "$with_gnu_ld"; then
6620 # We only use this code for GNU lds that support --whole-archive.
6621 _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive'
6622 else
6623 # Exported symbols can be pulled into shared objects from archives
6624 _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
6625 fi
6626 _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
6627 _LT_TAGVAR(archive_expsym_cmds, $1)='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d'
6628 # -brtl affects multiple linker settings, -berok does not and is overridden later
6629 compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([[, ]]\\)%-berok\\1%g"`'
6630 if test svr4 != "$with_aix_soname"; then
6631 # This is similar to how AIX traditionally builds its shared
6632 # libraries. Need -bnortl late, we may have -brtl in LDFLAGS.
6633 _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$CC '$shared_flag_aix' -o $output_objdir/$realname.d/$soname $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$realname.d/$soname'
6634 fi
6635 if test aix != "$with_aix_soname"; then
6636 _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$CC '$shared_flag_svr4' -o $output_objdir/$realname.d/$shared_archive_member_spec.o $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$STRIP -e $output_objdir/$realname.d/$shared_archive_member_spec.o~( func_echo_all "#! $soname($shared_archive_member_spec.o)"; if test shr_64 = "$shared_archive_member_spec"; then func_echo_all "# 64"; else func_echo_all "# 32"; fi; cat $export_symbols ) > $output_objdir/$realname.d/$shared_archive_member_spec.imp~$AR $AR_FLAGS $output_objdir/$soname $output_objdir/$realname.d/$shared_archive_member_spec.o $output_objdir/$realname.d/$shared_archive_member_spec.imp'
6637 else
6638 # used by -dlpreopen to get the symbols
6639 _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$MV $output_objdir/$realname.d/$soname $output_objdir'
6640 fi
6641 _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$RM -r $output_objdir/$realname.d'
6642 fi
6643 fi
6644 ;;
6645
6646 beos*)
6647 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
6648 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
6649 # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
6650 # support --undefined. This deserves some investigation. FIXME
6651 _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
6652 else
6653 _LT_TAGVAR(ld_shlibs, $1)=no
6654 fi
6655 ;;
6656
6657 chorus*)
6658 case $cc_basename in
6659 *)
6660 # FIXME: insert proper C++ library support
6661 _LT_TAGVAR(ld_shlibs, $1)=no
6662 ;;
6663 esac
6664 ;;
6665
6666 cygwin* | mingw* | pw32* | cegcc*)
6667 case $GXX,$cc_basename in
6668 ,cl* | no,cl*)
6669 # Native MSVC
6670 # hardcode_libdir_flag_spec is actually meaningless, as there is
6671 # no search path for DLLs.
6672 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
6673 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
6674 _LT_TAGVAR(always_export_symbols, $1)=yes
6675 _LT_TAGVAR(file_list_spec, $1)='@'
6676 # Tell ltmain to make .lib files, not .a files.
6677 libext=lib
6678 # Tell ltmain to make .dll files, not .so files.
6679 shrext_cmds=.dll
6680 # FIXME: Setting linknames here is a bad hack.
6681 _LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames='
6682 _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then
6683 cp "$export_symbols" "$output_objdir/$soname.def";
6684 echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp";
6685 else
6686 $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp;
6687 fi~
6688 $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
6689 linknames='
6690 # The linker will not automatically build a static lib if we build a DLL.
6691 # _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
6692 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
6693 # Don't use ranlib
6694 _LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib'
6695 _LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~
6696 lt_tool_outputfile="@TOOL_OUTPUT@"~
6697 case $lt_outputfile in
6698 *.exe|*.EXE) ;;
6699 *)
6700 lt_outputfile=$lt_outputfile.exe
6701 lt_tool_outputfile=$lt_tool_outputfile.exe
6702 ;;
6703 esac~
6704 func_to_tool_file "$lt_outputfile"~
6705 if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then
6706 $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
6707 $RM "$lt_outputfile.manifest";
6708 fi'
6709 ;;
6710 *)
6711 # g++
6712 # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
6713 # as there is no search path for DLLs.
6714 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
6715 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-all-symbols'
6716 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
6717 _LT_TAGVAR(always_export_symbols, $1)=no
6718 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
6719
6720 if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
6721 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
6722 # If the export-symbols file already is a .def file, use it as
6723 # is; otherwise, prepend EXPORTS...
6724 _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then
6725 cp $export_symbols $output_objdir/$soname.def;
6726 else
6727 echo EXPORTS > $output_objdir/$soname.def;
6728 cat $export_symbols >> $output_objdir/$soname.def;
6729 fi~
6730 $CC -shared -nostdlib $output_objdir/$soname.def $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
6731 else
6732 _LT_TAGVAR(ld_shlibs, $1)=no
6733 fi
6734 ;;
6735 esac
6736 ;;
6737 darwin* | rhapsody*)
6738 _LT_DARWIN_LINKER_FEATURES($1)
6739 ;;
6740
6741 os2*)
6742 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
6743 _LT_TAGVAR(hardcode_minus_L, $1)=yes
6744 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
6745 shrext_cmds=.dll
6746 _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
6747 $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
6748 $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
6749 $ECHO EXPORTS >> $output_objdir/$libname.def~
6750 emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~
6751 $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
6752 emximp -o $lib $output_objdir/$libname.def'
6753 _LT_TAGVAR(archive_expsym_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
6754 $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
6755 $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
6756 $ECHO EXPORTS >> $output_objdir/$libname.def~
6757 prefix_cmds="$SED"~
6758 if test EXPORTS = "`$SED 1q $export_symbols`"; then
6759 prefix_cmds="$prefix_cmds -e 1d";
6760 fi~
6761 prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~
6762 cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~
6763 $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
6764 emximp -o $lib $output_objdir/$libname.def'
6765 _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'
6766 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
6767 ;;
6768
6769 dgux*)
6770 case $cc_basename in
6771 ec++*)
6772 # FIXME: insert proper C++ library support
6773 _LT_TAGVAR(ld_shlibs, $1)=no
6774 ;;
6775 ghcx*)
6776 # Green Hills C++ Compiler
6777 # FIXME: insert proper C++ library support
6778 _LT_TAGVAR(ld_shlibs, $1)=no
6779 ;;
6780 *)
6781 # FIXME: insert proper C++ library support
6782 _LT_TAGVAR(ld_shlibs, $1)=no
6783 ;;
6784 esac
6785 ;;
6786
6787 freebsd2.*)
6788 # C++ shared libraries reported to be fairly broken before
6789 # switch to ELF
6790 _LT_TAGVAR(ld_shlibs, $1)=no
6791 ;;
6792
6793 freebsd-elf*)
6794 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
6795 ;;
6796
6797 freebsd* | dragonfly*)
6798 # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF
6799 # conventions
6800 _LT_TAGVAR(ld_shlibs, $1)=yes
6801 ;;
6802
6803 haiku*)
6804 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
6805 _LT_TAGVAR(link_all_deplibs, $1)=yes
6806 ;;
6807
6808 hpux9*)
6809 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
6810 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6811 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
6812 _LT_TAGVAR(hardcode_direct, $1)=yes
6813 _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
6814 # but as the default
6815 # location of the library.
6816
6817 case $cc_basename in
6818 CC*)
6819 # FIXME: insert proper C++ library support
6820 _LT_TAGVAR(ld_shlibs, $1)=no
6821 ;;
6822 aCC*)
6823 _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -b $wl+b $wl$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib'
6824 # Commands to make compiler produce verbose output that lists
6825 # what "hidden" libraries, object files and flags are used when
6826 # linking a shared library.
6827 #
6828 # There doesn't appear to be a way to prevent this compiler from
6829 # explicitly linking system object files so we need to strip them
6830 # from the output so that they don't get included in the library
6831 # dependencies.
6832 output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $EGREP " \-L"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
6833 ;;
6834 *)
6835 if test yes = "$GXX"; then
6836 _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared -nostdlib $pic_flag $wl+b $wl$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib'
6837 else
6838 # FIXME: insert proper C++ library support
6839 _LT_TAGVAR(ld_shlibs, $1)=no
6840 fi
6841 ;;
6842 esac
6843 ;;
6844
6845 hpux10*|hpux11*)
6846 if test no = "$with_gnu_ld"; then
6847 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
6848 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6849
6850 case $host_cpu in
6851 hppa*64*|ia64*)
6852 ;;
6853 *)
6854 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
6855 ;;
6856 esac
6857 fi
6858 case $host_cpu in
6859 hppa*64*|ia64*)
6860 _LT_TAGVAR(hardcode_direct, $1)=no
6861 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6862 ;;
6863 *)
6864 _LT_TAGVAR(hardcode_direct, $1)=yes
6865 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
6866 _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
6867 # but as the default
6868 # location of the library.
6869 ;;
6870 esac
6871
6872 case $cc_basename in
6873 CC*)
6874 # FIXME: insert proper C++ library support
6875 _LT_TAGVAR(ld_shlibs, $1)=no
6876 ;;
6877 aCC*)
6878 case $host_cpu in
6879 hppa*64*)
6880 _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6881 ;;
6882 ia64*)
6883 _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6884 ;;
6885 *)
6886 _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6887 ;;
6888 esac
6889 # Commands to make compiler produce verbose output that lists
6890 # what "hidden" libraries, object files and flags are used when
6891 # linking a shared library.
6892 #
6893 # There doesn't appear to be a way to prevent this compiler from
6894 # explicitly linking system object files so we need to strip them
6895 # from the output so that they don't get included in the library
6896 # dependencies.
6897 output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $GREP " \-L"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
6898 ;;
6899 *)
6900 if test yes = "$GXX"; then
6901 if test no = "$with_gnu_ld"; then
6902 case $host_cpu in
6903 hppa*64*)
6904 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC $wl+h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6905 ;;
6906 ia64*)
6907 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $pic_flag $wl+h $wl$soname $wl+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6908 ;;
6909 *)
6910 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6911 ;;
6912 esac
6913 fi
6914 else
6915 # FIXME: insert proper C++ library support
6916 _LT_TAGVAR(ld_shlibs, $1)=no
6917 fi
6918 ;;
6919 esac
6920 ;;
6921
6922 interix[[3-9]]*)
6923 _LT_TAGVAR(hardcode_direct, $1)=no
6924 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6925 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
6926 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
6927 # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
6928 # Instead, shared libraries are loaded at an image base (0x10000000 by
6929 # default) and relocated if they conflict, which is a slow very memory
6930 # consuming and fragmenting process. To avoid this, we pick a random,
6931 # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
6932 # time. Moving up from 0x10000000 also allows more sbrk(2) space.
6933 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
6934 _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--retain-symbols-file,$output_objdir/$soname.expsym $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
6935 ;;
6936 irix5* | irix6*)
6937 case $cc_basename in
6938 CC*)
6939 # SGI C++
6940 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -all -multigot $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib'
6941
6942 # Archives containing C++ object files must be created using
6943 # "CC -ar", where "CC" is the IRIX C++ compiler. This is
6944 # necessary to make sure instantiated templates are included
6945 # in the archive.
6946 _LT_TAGVAR(old_archive_cmds, $1)='$CC -ar -WR,-u -o $oldlib $oldobjs'
6947 ;;
6948 *)
6949 if test yes = "$GXX"; then
6950 if test no = "$with_gnu_ld"; then
6951 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib'
6952 else
6953 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` -o $lib'
6954 fi
6955 fi
6956 _LT_TAGVAR(link_all_deplibs, $1)=yes
6957 ;;
6958 esac
6959 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
6960 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6961 _LT_TAGVAR(inherit_rpath, $1)=yes
6962 ;;
6963
6964 linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
6965 case $cc_basename in
6966 KCC*)
6967 # Kuck and Associates, Inc. (KAI) C++ Compiler
6968
6969 # KCC will only create a shared library if the output file
6970 # ends with ".so" (or ".sl" for HP-UX), so rename the library
6971 # to its proper name (with version) after linking.
6972 _LT_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\$tempext\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib'
6973 _LT_TAGVAR(archive_expsym_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\$tempext\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib $wl-retain-symbols-file,$export_symbols; mv \$templib $lib'
6974 # Commands to make compiler produce verbose output that lists
6975 # what "hidden" libraries, object files and flags are used when
6976 # linking a shared library.
6977 #
6978 # There doesn't appear to be a way to prevent this compiler from
6979 # explicitly linking system object files so we need to strip them
6980 # from the output so that they don't get included in the library
6981 # dependencies.
6982 output_verbose_link_cmd='templist=`$CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 | $GREP "ld"`; rm -f libconftest$shared_ext; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
6983
6984 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
6985 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
6986
6987 # Archives containing C++ object files must be created using
6988 # "CC -Bstatic", where "CC" is the KAI C++ compiler.
6989 _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs'
6990 ;;
6991 icpc* | ecpc* )
6992 # Intel C++
6993 with_gnu_ld=yes
6994 # version 8.0 and above of icpc choke on multiply defined symbols
6995 # if we add $predep_objects and $postdep_objects, however 7.1 and
6996 # earlier do not add the objects themselves.
6997 case `$CC -V 2>&1` in
6998 *"Version 7."*)
6999 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
7000 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
7001 ;;
7002 *) # Version 8.0 or newer
7003 tmp_idyn=
7004 case $host_cpu in
7005 ia64*) tmp_idyn=' -i_dynamic';;
7006 esac
7007 _LT_TAGVAR(archive_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
7008 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
7009 ;;
7010 esac
7011 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
7012 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
7013 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
7014 _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive'
7015 ;;
7016 pgCC* | pgcpp*)
7017 # Portland Group C++ compiler
7018 case `$CC -V` in
7019 *pgCC\ [[1-5]].* | *pgcpp\ [[1-5]].*)
7020 _LT_TAGVAR(prelink_cmds, $1)='tpldir=Template.dir~
7021 rm -rf $tpldir~
7022 $CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~
7023 compile_command="$compile_command `find $tpldir -name \*.o | sort | $NL2SP`"'
7024 _LT_TAGVAR(old_archive_cmds, $1)='tpldir=Template.dir~
7025 rm -rf $tpldir~
7026 $CC --prelink_objects --instantiation_dir $tpldir $oldobjs$old_deplibs~
7027 $AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | sort | $NL2SP`~
7028 $RANLIB $oldlib'
7029 _LT_TAGVAR(archive_cmds, $1)='tpldir=Template.dir~
7030 rm -rf $tpldir~
7031 $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
7032 $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
7033 _LT_TAGVAR(archive_expsym_cmds, $1)='tpldir=Template.dir~
7034 rm -rf $tpldir~
7035 $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
7036 $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
7037 ;;
7038 *) # Version 6 and above use weak symbols
7039 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
7040 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
7041 ;;
7042 esac
7043
7044 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl--rpath $wl$libdir'
7045 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
7046 _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive'
7047 ;;
7048 cxx*)
7049 # Compaq C++
7050 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
7051 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib $wl-retain-symbols-file $wl$export_symbols'
7052
7053 runpath_var=LD_RUN_PATH
7054 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
7055 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
7056
7057 # Commands to make compiler produce verbose output that lists
7058 # what "hidden" libraries, object files and flags are used when
7059 # linking a shared library.
7060 #
7061 # There doesn't appear to be a way to prevent this compiler from
7062 # explicitly linking system object files so we need to strip them
7063 # from the output so that they don't get included in the library
7064 # dependencies.
7065 output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld"`; templist=`func_echo_all "$templist" | $SED "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "X$list" | $Xsed'
7066 ;;
7067 xl* | mpixl* | bgxl*)
7068 # IBM XL 8.0 on PPC, with GNU ld
7069 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
7070 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
7071 _LT_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
7072 if test yes = "$supports_anon_versioning"; then
7073 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
7074 cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
7075 echo "local: *; };" >> $output_objdir/$libname.ver~
7076 $CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib'
7077 fi
7078 ;;
7079 *)
7080 case `$CC -V 2>&1 | sed 5q` in
7081 *Sun\ C*)
7082 # Sun C++ 5.9
7083 _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
7084 _LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
7085 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-retain-symbols-file $wl$export_symbols'
7086 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
7087 _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive'
7088 _LT_TAGVAR(compiler_needs_object, $1)=yes
7089
7090 # Not sure whether something based on
7091 # $CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1
7092 # would be better.
7093 output_verbose_link_cmd='func_echo_all'
7094
7095 # Archives containing C++ object files must be created using
7096 # "CC -xar", where "CC" is the Sun C++ compiler. This is
7097 # necessary to make sure instantiated templates are included
7098 # in the archive.
7099 _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
7100 ;;
7101 esac
7102 ;;
7103 esac
7104 ;;
7105
7106 lynxos*)
7107 # FIXME: insert proper C++ library support
7108 _LT_TAGVAR(ld_shlibs, $1)=no
7109 ;;
7110
7111 m88k*)
7112 # FIXME: insert proper C++ library support
7113 _LT_TAGVAR(ld_shlibs, $1)=no
7114 ;;
7115
7116 mvs*)
7117 case $cc_basename in
7118 cxx*)
7119 # FIXME: insert proper C++ library support
7120 _LT_TAGVAR(ld_shlibs, $1)=no
7121 ;;
7122 *)
7123 # FIXME: insert proper C++ library support
7124 _LT_TAGVAR(ld_shlibs, $1)=no
7125 ;;
7126 esac
7127 ;;
7128
7129 netbsd*)
7130 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
7131 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags'
7132 wlarc=
7133 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
7134 _LT_TAGVAR(hardcode_direct, $1)=yes
7135 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
7136 fi
7137 # Workaround some broken pre-1.5 toolchains
7138 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"'
7139 ;;
7140
7141 *nto* | *qnx*)
7142 _LT_TAGVAR(ld_shlibs, $1)=yes
7143 ;;
7144
7145 openbsd* | bitrig*)
7146 if test -f /usr/libexec/ld.so; then
7147 _LT_TAGVAR(hardcode_direct, $1)=yes
7148 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
7149 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
7150 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
7151 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
7152 if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`"; then
7153 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-retain-symbols-file,$export_symbols -o $lib'
7154 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
7155 _LT_TAGVAR(whole_archive_flag_spec, $1)=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive'
7156 fi
7157 output_verbose_link_cmd=func_echo_all
7158 else
7159 _LT_TAGVAR(ld_shlibs, $1)=no
7160 fi
7161 ;;
7162
7163 osf3* | osf4* | osf5*)
7164 case $cc_basename in
7165 KCC*)
7166 # Kuck and Associates, Inc. (KAI) C++ Compiler
7167
7168 # KCC will only create a shared library if the output file
7169 # ends with ".so" (or ".sl" for HP-UX), so rename the library
7170 # to its proper name (with version) after linking.
7171 _LT_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo "$lib" | $SED -e "s/\$tempext\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib'
7172
7173 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
7174 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
7175
7176 # Archives containing C++ object files must be created using
7177 # the KAI C++ compiler.
7178 case $host in
7179 osf3*) _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' ;;
7180 *) _LT_TAGVAR(old_archive_cmds, $1)='$CC -o $oldlib $oldobjs' ;;
7181 esac
7182 ;;
7183 RCC*)
7184 # Rational C++ 2.4.1
7185 # FIXME: insert proper C++ library support
7186 _LT_TAGVAR(ld_shlibs, $1)=no
7187 ;;
7188 cxx*)
7189 case $host in
7190 osf3*)
7191 _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*'
7192 _LT_TAGVAR(archive_cmds, $1)='$CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $soname `test -n "$verstring" && func_echo_all "$wl-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib'
7193 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
7194 ;;
7195 *)
7196 _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
7197 _LT_TAGVAR(archive_cmds, $1)='$CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib'
7198 _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~
7199 echo "-hidden">> $lib.exp~
7200 $CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname $wl-input $wl$lib.exp `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib~
7201 $RM $lib.exp'
7202 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
7203 ;;
7204 esac
7205
7206 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
7207
7208 # Commands to make compiler produce verbose output that lists
7209 # what "hidden" libraries, object files and flags are used when
7210 # linking a shared library.
7211 #
7212 # There doesn't appear to be a way to prevent this compiler from
7213 # explicitly linking system object files so we need to strip them
7214 # from the output so that they don't get included in the library
7215 # dependencies.
7216 output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld" | $GREP -v "ld:"`; templist=`func_echo_all "$templist" | $SED "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
7217 ;;
7218 *)
7219 if test yes,no = "$GXX,$with_gnu_ld"; then
7220 _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*'
7221 case $host in
7222 osf3*)
7223 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib'
7224 ;;
7225 *)
7226 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-msym $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib'
7227 ;;
7228 esac
7229
7230 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
7231 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
7232
7233 # Commands to make compiler produce verbose output that lists
7234 # what "hidden" libraries, object files and flags are used when
7235 # linking a shared library.
7236 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP " \-L"'
7237
7238 else
7239 # FIXME: insert proper C++ library support
7240 _LT_TAGVAR(ld_shlibs, $1)=no
7241 fi
7242 ;;
7243 esac
7244 ;;
7245
7246 psos*)
7247 # FIXME: insert proper C++ library support
7248 _LT_TAGVAR(ld_shlibs, $1)=no
7249 ;;
7250
7251 sunos4*)
7252 case $cc_basename in
7253 CC*)
7254 # Sun C++ 4.x
7255 # FIXME: insert proper C++ library support
7256 _LT_TAGVAR(ld_shlibs, $1)=no
7257 ;;
7258 lcc*)
7259 # Lucid
7260 # FIXME: insert proper C++ library support
7261 _LT_TAGVAR(ld_shlibs, $1)=no
7262 ;;
7263 *)
7264 # FIXME: insert proper C++ library support
7265 _LT_TAGVAR(ld_shlibs, $1)=no
7266 ;;
7267 esac
7268 ;;
7269
7270 solaris*)
7271 case $cc_basename in
7272 CC* | sunCC*)
7273 # Sun C++ 4.2, 5.x and Centerline C++
7274 _LT_TAGVAR(archive_cmds_need_lc,$1)=yes
7275 _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
7276 _LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
7277 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
7278 $CC -G$allow_undefined_flag $wl-M $wl$lib.exp -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
7279
7280 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
7281 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
7282 case $host_os in
7283 solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
7284 *)
7285 # The compiler driver will combine and reorder linker options,
7286 # but understands '-z linker_flag'.
7287 # Supported since Solaris 2.6 (maybe 2.5.1?)
7288 _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
7289 ;;
7290 esac
7291 _LT_TAGVAR(link_all_deplibs, $1)=yes
7292
7293 output_verbose_link_cmd='func_echo_all'
7294
7295 # Archives containing C++ object files must be created using
7296 # "CC -xar", where "CC" is the Sun C++ compiler. This is
7297 # necessary to make sure instantiated templates are included
7298 # in the archive.
7299 _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
7300 ;;
7301 gcx*)
7302 # Green Hills C++ Compiler
7303 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'
7304
7305 # The C++ compiler must be used to create the archive.
7306 _LT_TAGVAR(old_archive_cmds, $1)='$CC $LDFLAGS -archive -o $oldlib $oldobjs'
7307 ;;
7308 *)
7309 # GNU C++ compiler with Solaris linker
7310 if test yes,no = "$GXX,$with_gnu_ld"; then
7311 _LT_TAGVAR(no_undefined_flag, $1)=' $wl-z ${wl}defs'
7312 if $CC --version | $GREP -v '^2\.7' > /dev/null; then
7313 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'
7314 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
7315 $CC -shared $pic_flag -nostdlib $wl-M $wl$lib.exp $wl-h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
7316
7317 # Commands to make compiler produce verbose output that lists
7318 # what "hidden" libraries, object files and flags are used when
7319 # linking a shared library.
7320 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP " \-L"'
7321 else
7322 # g++ 2.7 appears to require '-G' NOT '-shared' on this
7323 # platform.
7324 _LT_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'
7325 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
7326 $CC -G -nostdlib $wl-M $wl$lib.exp $wl-h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
7327
7328 # Commands to make compiler produce verbose output that lists
7329 # what "hidden" libraries, object files and flags are used when
7330 # linking a shared library.
7331 output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP " \-L"'
7332 fi
7333
7334 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $wl$libdir'
7335 case $host_os in
7336 solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
7337 *)
7338 _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract'
7339 ;;
7340 esac
7341 fi
7342 ;;
7343 esac
7344 ;;
7345
7346 sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
7347 _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text'
7348 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
7349 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
7350 runpath_var='LD_RUN_PATH'
7351
7352 case $cc_basename in
7353 CC*)
7354 _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7355 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7356 ;;
7357 *)
7358 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7359 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7360 ;;
7361 esac
7362 ;;
7363
7364 sysv5* | sco3.2v5* | sco5v6*)
7365 # Note: We CANNOT use -z defs as we might desire, because we do not
7366 # link with -lc, and that would cause any symbols used from libc to
7367 # always be unresolved, which means just about no library would
7368 # ever link correctly. If we're not using GNU ld we use -z text
7369 # though, which does catch some bad symbols but isn't as heavy-handed
7370 # as -z defs.
7371 _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text'
7372 _LT_TAGVAR(allow_undefined_flag, $1)='$wl-z,nodefs'
7373 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
7374 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
7375 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R,$libdir'
7376 _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
7377 _LT_TAGVAR(link_all_deplibs, $1)=yes
7378 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-Bexport'
7379 runpath_var='LD_RUN_PATH'
7380
7381 case $cc_basename in
7382 CC*)
7383 _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7384 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7385 _LT_TAGVAR(old_archive_cmds, $1)='$CC -Tprelink_objects $oldobjs~
7386 '"$_LT_TAGVAR(old_archive_cmds, $1)"
7387 _LT_TAGVAR(reload_cmds, $1)='$CC -Tprelink_objects $reload_objs~
7388 '"$_LT_TAGVAR(reload_cmds, $1)"
7389 ;;
7390 *)
7391 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7392 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7393 ;;
7394 esac
7395 ;;
7396
7397 tandem*)
7398 case $cc_basename in
7399 NCC*)
7400 # NonStop-UX NCC 3.20
7401 # FIXME: insert proper C++ library support
7402 _LT_TAGVAR(ld_shlibs, $1)=no
7403 ;;
7404 *)
7405 # FIXME: insert proper C++ library support
7406 _LT_TAGVAR(ld_shlibs, $1)=no
7407 ;;
7408 esac
7409 ;;
7410
7411 vxworks*)
7412 # FIXME: insert proper C++ library support
7413 _LT_TAGVAR(ld_shlibs, $1)=no
7414 ;;
7415
7416 *)
7417 # FIXME: insert proper C++ library support
7418 _LT_TAGVAR(ld_shlibs, $1)=no
7419 ;;
7420 esac
7421
7422 AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
7423 test no = "$_LT_TAGVAR(ld_shlibs, $1)" && can_build_shared=no
7424
7425 _LT_TAGVAR(GCC, $1)=$GXX
7426 _LT_TAGVAR(LD, $1)=$LD
7427
7428 ## CAVEAT EMPTOR:
7429 ## There is no encapsulation within the following macros, do not change
7430 ## the running order or otherwise move them around unless you know exactly
7431 ## what you are doing...
7432 _LT_SYS_HIDDEN_LIBDEPS($1)
7433 _LT_COMPILER_PIC($1)
7434 _LT_COMPILER_C_O($1)
7435 _LT_COMPILER_FILE_LOCKS($1)
7436 _LT_LINKER_SHLIBS($1)
7437 _LT_SYS_DYNAMIC_LINKER($1)
7438 _LT_LINKER_HARDCODE_LIBPATH($1)
7439
7440 _LT_CONFIG($1)
7441 fi # test -n "$compiler"
7442
7443 CC=$lt_save_CC
7444 CFLAGS=$lt_save_CFLAGS
7445 LDCXX=$LD
7446 LD=$lt_save_LD
7447 GCC=$lt_save_GCC
7448 with_gnu_ld=$lt_save_with_gnu_ld
7449 lt_cv_path_LDCXX=$lt_cv_path_LD
7450 lt_cv_path_LD=$lt_save_path_LD
7451 lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld
7452 lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld
7453 fi # test yes != "$_lt_caught_CXX_error"
7454
7455 AC_LANG_POP
7456 ])# _LT_LANG_CXX_CONFIG
7457
7458
7459 # _LT_FUNC_STRIPNAME_CNF
7460 # ----------------------
7461 # func_stripname_cnf prefix suffix name
7462 # strip PREFIX and SUFFIX off of NAME.
7463 # PREFIX and SUFFIX must not contain globbing or regex special
7464 # characters, hashes, percent signs, but SUFFIX may contain a leading
7465 # dot (in which case that matches only a dot).
7466 #
7467 # This function is identical to the (non-XSI) version of func_stripname,
7468 # except this one can be used by m4 code that may be executed by configure,
7469 # rather than the libtool script.
7470 m4_defun([_LT_FUNC_STRIPNAME_CNF],[dnl
7471 AC_REQUIRE([_LT_DECL_SED])
7472 AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])
7473 func_stripname_cnf ()
7474 {
7475 case @S|@2 in
7476 .*) func_stripname_result=`$ECHO "@S|@3" | $SED "s%^@S|@1%%; s%\\\\@S|@2\$%%"`;;
7477 *) func_stripname_result=`$ECHO "@S|@3" | $SED "s%^@S|@1%%; s%@S|@2\$%%"`;;
7478 esac
7479 } # func_stripname_cnf
7480 ])# _LT_FUNC_STRIPNAME_CNF
7481
7482
7483 # _LT_SYS_HIDDEN_LIBDEPS([TAGNAME])
7484 # ---------------------------------
7485 # Figure out "hidden" library dependencies from verbose
7486 # compiler output when linking a shared library.
7487 # Parse the compiler output and extract the necessary
7488 # objects, libraries and library flags.
7489 m4_defun([_LT_SYS_HIDDEN_LIBDEPS],
7490 [m4_require([_LT_FILEUTILS_DEFAULTS])dnl
7491 AC_REQUIRE([_LT_FUNC_STRIPNAME_CNF])dnl
7492 # Dependencies to place before and after the object being linked:
7493 _LT_TAGVAR(predep_objects, $1)=
7494 _LT_TAGVAR(postdep_objects, $1)=
7495 _LT_TAGVAR(predeps, $1)=
7496 _LT_TAGVAR(postdeps, $1)=
7497 _LT_TAGVAR(compiler_lib_search_path, $1)=
7498
7499 dnl we can't use the lt_simple_compile_test_code here,
7500 dnl because it contains code intended for an executable,
7501 dnl not a library. It's possible we should let each
7502 dnl tag define a new lt_????_link_test_code variable,
7503 dnl but it's only used here...
7504 m4_if([$1], [], [cat > conftest.$ac_ext <<_LT_EOF
7505 int a;
7506 void foo (void) { a = 0; }
7507 _LT_EOF
7508 ], [$1], [CXX], [cat > conftest.$ac_ext <<_LT_EOF
7509 class Foo
7510 {
7511 public:
7512 Foo (void) { a = 0; }
7513 private:
7514 int a;
7515 };
7516 _LT_EOF
7517 ], [$1], [F77], [cat > conftest.$ac_ext <<_LT_EOF
7518 subroutine foo
7519 implicit none
7520 integer*4 a
7521 a=0
7522 return
7523 end
7524 _LT_EOF
7525 ], [$1], [FC], [cat > conftest.$ac_ext <<_LT_EOF
7526 subroutine foo
7527 implicit none
7528 integer a
7529 a=0
7530 return
7531 end
7532 _LT_EOF
7533 ], [$1], [GCJ], [cat > conftest.$ac_ext <<_LT_EOF
7534 public class foo {
7535 private int a;
7536 public void bar (void) {
7537 a = 0;
7538 }
7539 };
7540 _LT_EOF
7541 ], [$1], [GO], [cat > conftest.$ac_ext <<_LT_EOF
7542 package foo
7543 func foo() {
7544 }
7545 _LT_EOF
7546 ])
7547
7548 _lt_libdeps_save_CFLAGS=$CFLAGS
7549 case "$CC $CFLAGS " in #(
7550 *\ -flto*\ *) CFLAGS="$CFLAGS -fno-lto" ;;
7551 *\ -fwhopr*\ *) CFLAGS="$CFLAGS -fno-whopr" ;;
7552 *\ -fuse-linker-plugin*\ *) CFLAGS="$CFLAGS -fno-use-linker-plugin" ;;
7553 esac
7554
7555 dnl Parse the compiler output and extract the necessary
7556 dnl objects, libraries and library flags.
7557 if AC_TRY_EVAL(ac_compile); then
7558 # Parse the compiler output and extract the necessary
7559 # objects, libraries and library flags.
7560
7561 # Sentinel used to keep track of whether or not we are before
7562 # the conftest object file.
7563 pre_test_object_deps_done=no
7564
7565 for p in `eval "$output_verbose_link_cmd"`; do
7566 case $prev$p in
7567
7568 -L* | -R* | -l*)
7569 # Some compilers place space between "-{L,R}" and the path.
7570 # Remove the space.
7571 if test x-L = "$p" ||
7572 test x-R = "$p"; then
7573 prev=$p
7574 continue
7575 fi
7576
7577 # Expand the sysroot to ease extracting the directories later.
7578 if test -z "$prev"; then
7579 case $p in
7580 -L*) func_stripname_cnf '-L' '' "$p"; prev=-L; p=$func_stripname_result ;;
7581 -R*) func_stripname_cnf '-R' '' "$p"; prev=-R; p=$func_stripname_result ;;
7582 -l*) func_stripname_cnf '-l' '' "$p"; prev=-l; p=$func_stripname_result ;;
7583 esac
7584 fi
7585 case $p in
7586 =*) func_stripname_cnf '=' '' "$p"; p=$lt_sysroot$func_stripname_result ;;
7587 esac
7588 if test no = "$pre_test_object_deps_done"; then
7589 case $prev in
7590 -L | -R)
7591 # Internal compiler library paths should come after those
7592 # provided the user. The postdeps already come after the
7593 # user supplied libs so there is no need to process them.
7594 if test -z "$_LT_TAGVAR(compiler_lib_search_path, $1)"; then
7595 _LT_TAGVAR(compiler_lib_search_path, $1)=$prev$p
7596 else
7597 _LT_TAGVAR(compiler_lib_search_path, $1)="${_LT_TAGVAR(compiler_lib_search_path, $1)} $prev$p"
7598 fi
7599 ;;
7600 # The "-l" case would never come before the object being
7601 # linked, so don't bother handling this case.
7602 esac
7603 else
7604 if test -z "$_LT_TAGVAR(postdeps, $1)"; then
7605 _LT_TAGVAR(postdeps, $1)=$prev$p
7606 else
7607 _LT_TAGVAR(postdeps, $1)="${_LT_TAGVAR(postdeps, $1)} $prev$p"
7608 fi
7609 fi
7610 prev=
7611 ;;
7612
7613 *.lto.$objext) ;; # Ignore GCC LTO objects
7614 *.$objext)
7615 # This assumes that the test object file only shows up
7616 # once in the compiler output.
7617 if test "$p" = "conftest.$objext"; then
7618 pre_test_object_deps_done=yes
7619 continue
7620 fi
7621
7622 if test no = "$pre_test_object_deps_done"; then
7623 if test -z "$_LT_TAGVAR(predep_objects, $1)"; then
7624 _LT_TAGVAR(predep_objects, $1)=$p
7625 else
7626 _LT_TAGVAR(predep_objects, $1)="$_LT_TAGVAR(predep_objects, $1) $p"
7627 fi
7628 else
7629 if test -z "$_LT_TAGVAR(postdep_objects, $1)"; then
7630 _LT_TAGVAR(postdep_objects, $1)=$p
7631 else
7632 _LT_TAGVAR(postdep_objects, $1)="$_LT_TAGVAR(postdep_objects, $1) $p"
7633 fi
7634 fi
7635 ;;
7636
7637 *) ;; # Ignore the rest.
7638
7639 esac
7640 done
7641
7642 # Clean up.
7643 rm -f a.out a.exe
7644 else
7645 echo "libtool.m4: error: problem compiling $1 test program"
7646 fi
7647
7648 $RM -f confest.$objext
7649 CFLAGS=$_lt_libdeps_save_CFLAGS
7650
7651 # PORTME: override above test on systems where it is broken
7652 m4_if([$1], [CXX],
7653 [case $host_os in
7654 interix[[3-9]]*)
7655 # Interix 3.5 installs completely hosed .la files for C++, so rather than
7656 # hack all around it, let's just trust "g++" to DTRT.
7657 _LT_TAGVAR(predep_objects,$1)=
7658 _LT_TAGVAR(postdep_objects,$1)=
7659 _LT_TAGVAR(postdeps,$1)=
7660 ;;
7661 esac
7662 ])
7663
7664 case " $_LT_TAGVAR(postdeps, $1) " in
7665 *" -lc "*) _LT_TAGVAR(archive_cmds_need_lc, $1)=no ;;
7666 esac
7667 _LT_TAGVAR(compiler_lib_search_dirs, $1)=
7668 if test -n "${_LT_TAGVAR(compiler_lib_search_path, $1)}"; then
7669 _LT_TAGVAR(compiler_lib_search_dirs, $1)=`echo " ${_LT_TAGVAR(compiler_lib_search_path, $1)}" | $SED -e 's! -L! !g' -e 's!^ !!'`
7670 fi
7671 _LT_TAGDECL([], [compiler_lib_search_dirs], [1],
7672 [The directories searched by this compiler when creating a shared library])
7673 _LT_TAGDECL([], [predep_objects], [1],
7674 [Dependencies to place before and after the objects being linked to
7675 create a shared library])
7676 _LT_TAGDECL([], [postdep_objects], [1])
7677 _LT_TAGDECL([], [predeps], [1])
7678 _LT_TAGDECL([], [postdeps], [1])
7679 _LT_TAGDECL([], [compiler_lib_search_path], [1],
7680 [The library search path used internally by the compiler when linking
7681 a shared library])
7682 ])# _LT_SYS_HIDDEN_LIBDEPS
7683
7684
7685 # _LT_LANG_F77_CONFIG([TAG])
7686 # --------------------------
7687 # Ensure that the configuration variables for a Fortran 77 compiler are
7688 # suitably defined. These variables are subsequently used by _LT_CONFIG
7689 # to write the compiler configuration to 'libtool'.
7690 m4_defun([_LT_LANG_F77_CONFIG],
7691 [AC_LANG_PUSH(Fortran 77)
7692 if test -z "$F77" || test no = "$F77"; then
7693 _lt_disable_F77=yes
7694 fi
7695
7696 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
7697 _LT_TAGVAR(allow_undefined_flag, $1)=
7698 _LT_TAGVAR(always_export_symbols, $1)=no
7699 _LT_TAGVAR(archive_expsym_cmds, $1)=
7700 _LT_TAGVAR(export_dynamic_flag_spec, $1)=
7701 _LT_TAGVAR(hardcode_direct, $1)=no
7702 _LT_TAGVAR(hardcode_direct_absolute, $1)=no
7703 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
7704 _LT_TAGVAR(hardcode_libdir_separator, $1)=
7705 _LT_TAGVAR(hardcode_minus_L, $1)=no
7706 _LT_TAGVAR(hardcode_automatic, $1)=no
7707 _LT_TAGVAR(inherit_rpath, $1)=no
7708 _LT_TAGVAR(module_cmds, $1)=
7709 _LT_TAGVAR(module_expsym_cmds, $1)=
7710 _LT_TAGVAR(link_all_deplibs, $1)=unknown
7711 _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
7712 _LT_TAGVAR(reload_flag, $1)=$reload_flag
7713 _LT_TAGVAR(reload_cmds, $1)=$reload_cmds
7714 _LT_TAGVAR(no_undefined_flag, $1)=
7715 _LT_TAGVAR(whole_archive_flag_spec, $1)=
7716 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
7717
7718 # Source file extension for f77 test sources.
7719 ac_ext=f
7720
7721 # Object file extension for compiled f77 test sources.
7722 objext=o
7723 _LT_TAGVAR(objext, $1)=$objext
7724
7725 # No sense in running all these tests if we already determined that
7726 # the F77 compiler isn't working. Some variables (like enable_shared)
7727 # are currently assumed to apply to all compilers on this platform,
7728 # and will be corrupted by setting them based on a non-working compiler.
7729 if test yes != "$_lt_disable_F77"; then
7730 # Code to be used in simple compile tests
7731 lt_simple_compile_test_code="\
7732 subroutine t
7733 return
7734 end
7735 "
7736
7737 # Code to be used in simple link tests
7738 lt_simple_link_test_code="\
7739 program t
7740 end
7741 "
7742
7743 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
7744 _LT_TAG_COMPILER
7745
7746 # save warnings/boilerplate of simple test code
7747 _LT_COMPILER_BOILERPLATE
7748 _LT_LINKER_BOILERPLATE
7749
7750 # Allow CC to be a program name with arguments.
7751 lt_save_CC=$CC
7752 lt_save_GCC=$GCC
7753 lt_save_CFLAGS=$CFLAGS
7754 CC=${F77-"f77"}
7755 CFLAGS=$FFLAGS
7756 compiler=$CC
7757 _LT_TAGVAR(compiler, $1)=$CC
7758 _LT_CC_BASENAME([$compiler])
7759 GCC=$G77
7760 if test -n "$compiler"; then
7761 AC_MSG_CHECKING([if libtool supports shared libraries])
7762 AC_MSG_RESULT([$can_build_shared])
7763
7764 AC_MSG_CHECKING([whether to build shared libraries])
7765 test no = "$can_build_shared" && enable_shared=no
7766
7767 # On AIX, shared libraries and static libraries use the same namespace, and
7768 # are all built from PIC.
7769 case $host_os in
7770 aix3*)
7771 test yes = "$enable_shared" && enable_static=no
7772 if test -n "$RANLIB"; then
7773 archive_cmds="$archive_cmds~\$RANLIB \$lib"
7774 postinstall_cmds='$RANLIB $lib'
7775 fi
7776 ;;
7777 aix[[4-9]]*)
7778 if test ia64 != "$host_cpu"; then
7779 case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in
7780 yes,aix,yes) ;; # shared object as lib.so file only
7781 yes,svr4,*) ;; # shared object as lib.so archive member only
7782 yes,*) enable_static=no ;; # shared object in lib.a archive as well
7783 esac
7784 fi
7785 ;;
7786 esac
7787 AC_MSG_RESULT([$enable_shared])
7788
7789 AC_MSG_CHECKING([whether to build static libraries])
7790 # Make sure either enable_shared or enable_static is yes.
7791 test yes = "$enable_shared" || enable_static=yes
7792 AC_MSG_RESULT([$enable_static])
7793
7794 _LT_TAGVAR(GCC, $1)=$G77
7795 _LT_TAGVAR(LD, $1)=$LD
7796
7797 ## CAVEAT EMPTOR:
7798 ## There is no encapsulation within the following macros, do not change
7799 ## the running order or otherwise move them around unless you know exactly
7800 ## what you are doing...
7801 _LT_COMPILER_PIC($1)
7802 _LT_COMPILER_C_O($1)
7803 _LT_COMPILER_FILE_LOCKS($1)
7804 _LT_LINKER_SHLIBS($1)
7805 _LT_SYS_DYNAMIC_LINKER($1)
7806 _LT_LINKER_HARDCODE_LIBPATH($1)
7807
7808 _LT_CONFIG($1)
7809 fi # test -n "$compiler"
7810
7811 GCC=$lt_save_GCC
7812 CC=$lt_save_CC
7813 CFLAGS=$lt_save_CFLAGS
7814 fi # test yes != "$_lt_disable_F77"
7815
7816 AC_LANG_POP
7817 ])# _LT_LANG_F77_CONFIG
7818
7819
7820 # _LT_LANG_FC_CONFIG([TAG])
7821 # -------------------------
7822 # Ensure that the configuration variables for a Fortran compiler are
7823 # suitably defined. These variables are subsequently used by _LT_CONFIG
7824 # to write the compiler configuration to 'libtool'.
7825 m4_defun([_LT_LANG_FC_CONFIG],
7826 [AC_LANG_PUSH(Fortran)
7827
7828 if test -z "$FC" || test no = "$FC"; then
7829 _lt_disable_FC=yes
7830 fi
7831
7832 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
7833 _LT_TAGVAR(allow_undefined_flag, $1)=
7834 _LT_TAGVAR(always_export_symbols, $1)=no
7835 _LT_TAGVAR(archive_expsym_cmds, $1)=
7836 _LT_TAGVAR(export_dynamic_flag_spec, $1)=
7837 _LT_TAGVAR(hardcode_direct, $1)=no
7838 _LT_TAGVAR(hardcode_direct_absolute, $1)=no
7839 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
7840 _LT_TAGVAR(hardcode_libdir_separator, $1)=
7841 _LT_TAGVAR(hardcode_minus_L, $1)=no
7842 _LT_TAGVAR(hardcode_automatic, $1)=no
7843 _LT_TAGVAR(inherit_rpath, $1)=no
7844 _LT_TAGVAR(module_cmds, $1)=
7845 _LT_TAGVAR(module_expsym_cmds, $1)=
7846 _LT_TAGVAR(link_all_deplibs, $1)=unknown
7847 _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
7848 _LT_TAGVAR(reload_flag, $1)=$reload_flag
7849 _LT_TAGVAR(reload_cmds, $1)=$reload_cmds
7850 _LT_TAGVAR(no_undefined_flag, $1)=
7851 _LT_TAGVAR(whole_archive_flag_spec, $1)=
7852 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
7853
7854 # Source file extension for fc test sources.
7855 ac_ext=${ac_fc_srcext-f}
7856
7857 # Object file extension for compiled fc test sources.
7858 objext=o
7859 _LT_TAGVAR(objext, $1)=$objext
7860
7861 # No sense in running all these tests if we already determined that
7862 # the FC compiler isn't working. Some variables (like enable_shared)
7863 # are currently assumed to apply to all compilers on this platform,
7864 # and will be corrupted by setting them based on a non-working compiler.
7865 if test yes != "$_lt_disable_FC"; then
7866 # Code to be used in simple compile tests
7867 lt_simple_compile_test_code="\
7868 subroutine t
7869 return
7870 end
7871 "
7872
7873 # Code to be used in simple link tests
7874 lt_simple_link_test_code="\
7875 program t
7876 end
7877 "
7878
7879 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
7880 _LT_TAG_COMPILER
7881
7882 # save warnings/boilerplate of simple test code
7883 _LT_COMPILER_BOILERPLATE
7884 _LT_LINKER_BOILERPLATE
7885
7886 # Allow CC to be a program name with arguments.
7887 lt_save_CC=$CC
7888 lt_save_GCC=$GCC
7889 lt_save_CFLAGS=$CFLAGS
7890 CC=${FC-"f95"}
7891 CFLAGS=$FCFLAGS
7892 compiler=$CC
7893 GCC=$ac_cv_fc_compiler_gnu
7894
7895 _LT_TAGVAR(compiler, $1)=$CC
7896 _LT_CC_BASENAME([$compiler])
7897
7898 if test -n "$compiler"; then
7899 AC_MSG_CHECKING([if libtool supports shared libraries])
7900 AC_MSG_RESULT([$can_build_shared])
7901
7902 AC_MSG_CHECKING([whether to build shared libraries])
7903 test no = "$can_build_shared" && enable_shared=no
7904
7905 # On AIX, shared libraries and static libraries use the same namespace, and
7906 # are all built from PIC.
7907 case $host_os in
7908 aix3*)
7909 test yes = "$enable_shared" && enable_static=no
7910 if test -n "$RANLIB"; then
7911 archive_cmds="$archive_cmds~\$RANLIB \$lib"
7912 postinstall_cmds='$RANLIB $lib'
7913 fi
7914 ;;
7915 aix[[4-9]]*)
7916 if test ia64 != "$host_cpu"; then
7917 case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in
7918 yes,aix,yes) ;; # shared object as lib.so file only
7919 yes,svr4,*) ;; # shared object as lib.so archive member only
7920 yes,*) enable_static=no ;; # shared object in lib.a archive as well
7921 esac
7922 fi
7923 ;;
7924 esac
7925 AC_MSG_RESULT([$enable_shared])
7926
7927 AC_MSG_CHECKING([whether to build static libraries])
7928 # Make sure either enable_shared or enable_static is yes.
7929 test yes = "$enable_shared" || enable_static=yes
7930 AC_MSG_RESULT([$enable_static])
7931
7932 _LT_TAGVAR(GCC, $1)=$ac_cv_fc_compiler_gnu
7933 _LT_TAGVAR(LD, $1)=$LD
7934
7935 ## CAVEAT EMPTOR:
7936 ## There is no encapsulation within the following macros, do not change
7937 ## the running order or otherwise move them around unless you know exactly
7938 ## what you are doing...
7939 _LT_SYS_HIDDEN_LIBDEPS($1)
7940 _LT_COMPILER_PIC($1)
7941 _LT_COMPILER_C_O($1)
7942 _LT_COMPILER_FILE_LOCKS($1)
7943 _LT_LINKER_SHLIBS($1)
7944 _LT_SYS_DYNAMIC_LINKER($1)
7945 _LT_LINKER_HARDCODE_LIBPATH($1)
7946
7947 _LT_CONFIG($1)
7948 fi # test -n "$compiler"
7949
7950 GCC=$lt_save_GCC
7951 CC=$lt_save_CC
7952 CFLAGS=$lt_save_CFLAGS
7953 fi # test yes != "$_lt_disable_FC"
7954
7955 AC_LANG_POP
7956 ])# _LT_LANG_FC_CONFIG
7957
7958
7959 # _LT_LANG_GCJ_CONFIG([TAG])
7960 # --------------------------
7961 # Ensure that the configuration variables for the GNU Java Compiler compiler
7962 # are suitably defined. These variables are subsequently used by _LT_CONFIG
7963 # to write the compiler configuration to 'libtool'.
7964 m4_defun([_LT_LANG_GCJ_CONFIG],
7965 [AC_REQUIRE([LT_PROG_GCJ])dnl
7966 AC_LANG_SAVE
7967
7968 # Source file extension for Java test sources.
7969 ac_ext=java
7970
7971 # Object file extension for compiled Java test sources.
7972 objext=o
7973 _LT_TAGVAR(objext, $1)=$objext
7974
7975 # Code to be used in simple compile tests
7976 lt_simple_compile_test_code="class foo {}"
7977
7978 # Code to be used in simple link tests
7979 lt_simple_link_test_code='public class conftest { public static void main(String[[]] argv) {}; }'
7980
7981 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
7982 _LT_TAG_COMPILER
7983
7984 # save warnings/boilerplate of simple test code
7985 _LT_COMPILER_BOILERPLATE
7986 _LT_LINKER_BOILERPLATE
7987
7988 # Allow CC to be a program name with arguments.
7989 lt_save_CC=$CC
7990 lt_save_CFLAGS=$CFLAGS
7991 lt_save_GCC=$GCC
7992 GCC=yes
7993 CC=${GCJ-"gcj"}
7994 CFLAGS=$GCJFLAGS
7995 compiler=$CC
7996 _LT_TAGVAR(compiler, $1)=$CC
7997 _LT_TAGVAR(LD, $1)=$LD
7998 _LT_CC_BASENAME([$compiler])
7999
8000 # GCJ did not exist at the time GCC didn't implicitly link libc in.
8001 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
8002
8003 _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
8004 _LT_TAGVAR(reload_flag, $1)=$reload_flag
8005 _LT_TAGVAR(reload_cmds, $1)=$reload_cmds
8006
8007 if test -n "$compiler"; then
8008 _LT_COMPILER_NO_RTTI($1)
8009 _LT_COMPILER_PIC($1)
8010 _LT_COMPILER_C_O($1)
8011 _LT_COMPILER_FILE_LOCKS($1)
8012 _LT_LINKER_SHLIBS($1)
8013 _LT_LINKER_HARDCODE_LIBPATH($1)
8014
8015 _LT_CONFIG($1)
8016 fi
8017
8018 AC_LANG_RESTORE
8019
8020 GCC=$lt_save_GCC
8021 CC=$lt_save_CC
8022 CFLAGS=$lt_save_CFLAGS
8023 ])# _LT_LANG_GCJ_CONFIG
8024
8025
8026 # _LT_LANG_GO_CONFIG([TAG])
8027 # --------------------------
8028 # Ensure that the configuration variables for the GNU Go compiler
8029 # are suitably defined. These variables are subsequently used by _LT_CONFIG
8030 # to write the compiler configuration to 'libtool'.
8031 m4_defun([_LT_LANG_GO_CONFIG],
8032 [AC_REQUIRE([LT_PROG_GO])dnl
8033 AC_LANG_SAVE
8034
8035 # Source file extension for Go test sources.
8036 ac_ext=go
8037
8038 # Object file extension for compiled Go test sources.
8039 objext=o
8040 _LT_TAGVAR(objext, $1)=$objext
8041
8042 # Code to be used in simple compile tests
8043 lt_simple_compile_test_code="package main; func main() { }"
8044
8045 # Code to be used in simple link tests
8046 lt_simple_link_test_code='package main; func main() { }'
8047
8048 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
8049 _LT_TAG_COMPILER
8050
8051 # save warnings/boilerplate of simple test code
8052 _LT_COMPILER_BOILERPLATE
8053 _LT_LINKER_BOILERPLATE
8054
8055 # Allow CC to be a program name with arguments.
8056 lt_save_CC=$CC
8057 lt_save_CFLAGS=$CFLAGS
8058 lt_save_GCC=$GCC
8059 GCC=yes
8060 CC=${GOC-"gccgo"}
8061 CFLAGS=$GOFLAGS
8062 compiler=$CC
8063 _LT_TAGVAR(compiler, $1)=$CC
8064 _LT_TAGVAR(LD, $1)=$LD
8065 _LT_CC_BASENAME([$compiler])
8066
8067 # Go did not exist at the time GCC didn't implicitly link libc in.
8068 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
8069
8070 _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
8071 _LT_TAGVAR(reload_flag, $1)=$reload_flag
8072 _LT_TAGVAR(reload_cmds, $1)=$reload_cmds
8073
8074 if test -n "$compiler"; then
8075 _LT_COMPILER_NO_RTTI($1)
8076 _LT_COMPILER_PIC($1)
8077 _LT_COMPILER_C_O($1)
8078 _LT_COMPILER_FILE_LOCKS($1)
8079 _LT_LINKER_SHLIBS($1)
8080 _LT_LINKER_HARDCODE_LIBPATH($1)
8081
8082 _LT_CONFIG($1)
8083 fi
8084
8085 AC_LANG_RESTORE
8086
8087 GCC=$lt_save_GCC
8088 CC=$lt_save_CC
8089 CFLAGS=$lt_save_CFLAGS
8090 ])# _LT_LANG_GO_CONFIG
8091
8092
8093 # _LT_LANG_RC_CONFIG([TAG])
8094 # -------------------------
8095 # Ensure that the configuration variables for the Windows resource compiler
8096 # are suitably defined. These variables are subsequently used by _LT_CONFIG
8097 # to write the compiler configuration to 'libtool'.
8098 m4_defun([_LT_LANG_RC_CONFIG],
8099 [AC_REQUIRE([LT_PROG_RC])dnl
8100 AC_LANG_SAVE
8101
8102 # Source file extension for RC test sources.
8103 ac_ext=rc
8104
8105 # Object file extension for compiled RC test sources.
8106 objext=o
8107 _LT_TAGVAR(objext, $1)=$objext
8108
8109 # Code to be used in simple compile tests
8110 lt_simple_compile_test_code='sample MENU { MENUITEM "&Soup", 100, CHECKED }'
8111
8112 # Code to be used in simple link tests
8113 lt_simple_link_test_code=$lt_simple_compile_test_code
8114
8115 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
8116 _LT_TAG_COMPILER
8117
8118 # save warnings/boilerplate of simple test code
8119 _LT_COMPILER_BOILERPLATE
8120 _LT_LINKER_BOILERPLATE
8121
8122 # Allow CC to be a program name with arguments.
8123 lt_save_CC=$CC
8124 lt_save_CFLAGS=$CFLAGS
8125 lt_save_GCC=$GCC
8126 GCC=
8127 CC=${RC-"windres"}
8128 CFLAGS=
8129 compiler=$CC
8130 _LT_TAGVAR(compiler, $1)=$CC
8131 _LT_CC_BASENAME([$compiler])
8132 _LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
8133
8134 if test -n "$compiler"; then
8135 :
8136 _LT_CONFIG($1)
8137 fi
8138
8139 GCC=$lt_save_GCC
8140 AC_LANG_RESTORE
8141 CC=$lt_save_CC
8142 CFLAGS=$lt_save_CFLAGS
8143 ])# _LT_LANG_RC_CONFIG
8144
8145
8146 # LT_PROG_GCJ
8147 # -----------
8148 AC_DEFUN([LT_PROG_GCJ],
8149 [m4_ifdef([AC_PROG_GCJ], [AC_PROG_GCJ],
8150 [m4_ifdef([A][M_PROG_GCJ], [A][M_PROG_GCJ],
8151 [AC_CHECK_TOOL(GCJ, gcj,)
8152 test set = "${GCJFLAGS+set}" || GCJFLAGS="-g -O2"
8153 AC_SUBST(GCJFLAGS)])])[]dnl
8154 ])
8155
8156 # Old name:
8157 AU_ALIAS([LT_AC_PROG_GCJ], [LT_PROG_GCJ])
8158 dnl aclocal-1.4 backwards compatibility:
8159 dnl AC_DEFUN([LT_AC_PROG_GCJ], [])
8160
8161
8162 # LT_PROG_GO
8163 # ----------
8164 AC_DEFUN([LT_PROG_GO],
8165 [AC_CHECK_TOOL(GOC, gccgo,)
8166 ])
8167
8168
8169 # LT_PROG_RC
8170 # ----------
8171 AC_DEFUN([LT_PROG_RC],
8172 [AC_CHECK_TOOL(RC, windres,)
8173 ])
8174
8175 # Old name:
8176 AU_ALIAS([LT_AC_PROG_RC], [LT_PROG_RC])
8177 dnl aclocal-1.4 backwards compatibility:
8178 dnl AC_DEFUN([LT_AC_PROG_RC], [])
8179
8180
8181 # _LT_DECL_EGREP
8182 # --------------
8183 # If we don't have a new enough Autoconf to choose the best grep
8184 # available, choose the one first in the user's PATH.
8185 m4_defun([_LT_DECL_EGREP],
8186 [AC_REQUIRE([AC_PROG_EGREP])dnl
8187 AC_REQUIRE([AC_PROG_FGREP])dnl
8188 test -z "$GREP" && GREP=grep
8189 _LT_DECL([], [GREP], [1], [A grep program that handles long lines])
8190 _LT_DECL([], [EGREP], [1], [An ERE matcher])
8191 _LT_DECL([], [FGREP], [1], [A literal string matcher])
8192 dnl Non-bleeding-edge autoconf doesn't subst GREP, so do it here too
8193 AC_SUBST([GREP])
8194 ])
8195
8196
8197 # _LT_DECL_OBJDUMP
8198 # --------------
8199 # If we don't have a new enough Autoconf to choose the best objdump
8200 # available, choose the one first in the user's PATH.
8201 m4_defun([_LT_DECL_OBJDUMP],
8202 [AC_CHECK_TOOL(OBJDUMP, objdump, false)
8203 test -z "$OBJDUMP" && OBJDUMP=objdump
8204 _LT_DECL([], [OBJDUMP], [1], [An object symbol dumper])
8205 AC_SUBST([OBJDUMP])
8206 ])
8207
8208 # _LT_DECL_DLLTOOL
8209 # ----------------
8210 # Ensure DLLTOOL variable is set.
8211 m4_defun([_LT_DECL_DLLTOOL],
8212 [AC_CHECK_TOOL(DLLTOOL, dlltool, false)
8213 test -z "$DLLTOOL" && DLLTOOL=dlltool
8214 _LT_DECL([], [DLLTOOL], [1], [DLL creation program])
8215 AC_SUBST([DLLTOOL])
8216 ])
8217
8218 # _LT_DECL_SED
8219 # ------------
8220 # Check for a fully-functional sed program, that truncates
8221 # as few characters as possible. Prefer GNU sed if found.
8222 m4_defun([_LT_DECL_SED],
8223 [AC_PROG_SED
8224 test -z "$SED" && SED=sed
8225 Xsed="$SED -e 1s/^X//"
8226 _LT_DECL([], [SED], [1], [A sed program that does not truncate output])
8227 _LT_DECL([], [Xsed], ["\$SED -e 1s/^X//"],
8228 [Sed that helps us avoid accidentally triggering echo(1) options like -n])
8229 ])# _LT_DECL_SED
8230
8231 m4_ifndef([AC_PROG_SED], [
8232 # NOTE: This macro has been submitted for inclusion into #
8233 # GNU Autoconf as AC_PROG_SED. When it is available in #
8234 # a released version of Autoconf we should remove this #
8235 # macro and use it instead. #
8236
8237 m4_defun([AC_PROG_SED],
8238 [AC_MSG_CHECKING([for a sed that does not truncate output])
8239 AC_CACHE_VAL(lt_cv_path_SED,
8240 [# Loop through the user's path and test for sed and gsed.
8241 # Then use that list of sed's as ones to test for truncation.
8242 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
8243 for as_dir in $PATH
8244 do
8245 IFS=$as_save_IFS
8246 test -z "$as_dir" && as_dir=.
8247 for lt_ac_prog in sed gsed; do
8248 for ac_exec_ext in '' $ac_executable_extensions; do
8249 if $as_executable_p "$as_dir/$lt_ac_prog$ac_exec_ext"; then
8250 lt_ac_sed_list="$lt_ac_sed_list $as_dir/$lt_ac_prog$ac_exec_ext"
8251 fi
8252 done
8253 done
8254 done
8255 IFS=$as_save_IFS
8256 lt_ac_max=0
8257 lt_ac_count=0
8258 # Add /usr/xpg4/bin/sed as it is typically found on Solaris
8259 # along with /bin/sed that truncates output.
8260 for lt_ac_sed in $lt_ac_sed_list /usr/xpg4/bin/sed; do
8261 test ! -f "$lt_ac_sed" && continue
8262 cat /dev/null > conftest.in
8263 lt_ac_count=0
8264 echo $ECHO_N "0123456789$ECHO_C" >conftest.in
8265 # Check for GNU sed and select it if it is found.
8266 if "$lt_ac_sed" --version 2>&1 < /dev/null | grep 'GNU' > /dev/null; then
8267 lt_cv_path_SED=$lt_ac_sed
8268 break
8269 fi
8270 while true; do
8271 cat conftest.in conftest.in >conftest.tmp
8272 mv conftest.tmp conftest.in
8273 cp conftest.in conftest.nl
8274 echo >>conftest.nl
8275 $lt_ac_sed -e 's/a$//' < conftest.nl >conftest.out || break
8276 cmp -s conftest.out conftest.nl || break
8277 # 10000 chars as input seems more than enough
8278 test 10 -lt "$lt_ac_count" && break
8279 lt_ac_count=`expr $lt_ac_count + 1`
8280 if test "$lt_ac_count" -gt "$lt_ac_max"; then
8281 lt_ac_max=$lt_ac_count
8282 lt_cv_path_SED=$lt_ac_sed
8283 fi
8284 done
8285 done
8286 ])
8287 SED=$lt_cv_path_SED
8288 AC_SUBST([SED])
8289 AC_MSG_RESULT([$SED])
8290 ])#AC_PROG_SED
8291 ])#m4_ifndef
8292
8293 # Old name:
8294 AU_ALIAS([LT_AC_PROG_SED], [AC_PROG_SED])
8295 dnl aclocal-1.4 backwards compatibility:
8296 dnl AC_DEFUN([LT_AC_PROG_SED], [])
8297
8298
8299 # _LT_CHECK_SHELL_FEATURES
8300 # ------------------------
8301 # Find out whether the shell is Bourne or XSI compatible,
8302 # or has some other useful features.
8303 m4_defun([_LT_CHECK_SHELL_FEATURES],
8304 [if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
8305 lt_unset=unset
8306 else
8307 lt_unset=false
8308 fi
8309 _LT_DECL([], [lt_unset], [0], [whether the shell understands "unset"])dnl
8310
8311 # test EBCDIC or ASCII
8312 case `echo X|tr X '\101'` in
8313 A) # ASCII based system
8314 # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr
8315 lt_SP2NL='tr \040 \012'
8316 lt_NL2SP='tr \015\012 \040\040'
8317 ;;
8318 *) # EBCDIC based system
8319 lt_SP2NL='tr \100 \n'
8320 lt_NL2SP='tr \r\n \100\100'
8321 ;;
8322 esac
8323 _LT_DECL([SP2NL], [lt_SP2NL], [1], [turn spaces into newlines])dnl
8324 _LT_DECL([NL2SP], [lt_NL2SP], [1], [turn newlines into spaces])dnl
8325 ])# _LT_CHECK_SHELL_FEATURES
8326
8327
8328 # _LT_PATH_CONVERSION_FUNCTIONS
8329 # -----------------------------
8330 # Determine what file name conversion functions should be used by
8331 # func_to_host_file (and, implicitly, by func_to_host_path). These are needed
8332 # for certain cross-compile configurations and native mingw.
8333 m4_defun([_LT_PATH_CONVERSION_FUNCTIONS],
8334 [AC_REQUIRE([AC_CANONICAL_HOST])dnl
8335 AC_REQUIRE([AC_CANONICAL_BUILD])dnl
8336 AC_MSG_CHECKING([how to convert $build file names to $host format])
8337 AC_CACHE_VAL(lt_cv_to_host_file_cmd,
8338 [case $host in
8339 *-*-mingw* )
8340 case $build in
8341 *-*-mingw* ) # actually msys
8342 lt_cv_to_host_file_cmd=func_convert_file_msys_to_w32
8343 ;;
8344 *-*-cygwin* )
8345 lt_cv_to_host_file_cmd=func_convert_file_cygwin_to_w32
8346 ;;
8347 * ) # otherwise, assume *nix
8348 lt_cv_to_host_file_cmd=func_convert_file_nix_to_w32
8349 ;;
8350 esac
8351 ;;
8352 *-*-cygwin* )
8353 case $build in
8354 *-*-mingw* ) # actually msys
8355 lt_cv_to_host_file_cmd=func_convert_file_msys_to_cygwin
8356 ;;
8357 *-*-cygwin* )
8358 lt_cv_to_host_file_cmd=func_convert_file_noop
8359 ;;
8360 * ) # otherwise, assume *nix
8361 lt_cv_to_host_file_cmd=func_convert_file_nix_to_cygwin
8362 ;;
8363 esac
8364 ;;
8365 * ) # unhandled hosts (and "normal" native builds)
8366 lt_cv_to_host_file_cmd=func_convert_file_noop
8367 ;;
8368 esac
8369 ])
8370 to_host_file_cmd=$lt_cv_to_host_file_cmd
8371 AC_MSG_RESULT([$lt_cv_to_host_file_cmd])
8372 _LT_DECL([to_host_file_cmd], [lt_cv_to_host_file_cmd],
8373 [0], [convert $build file names to $host format])dnl
8374
8375 AC_MSG_CHECKING([how to convert $build file names to toolchain format])
8376 AC_CACHE_VAL(lt_cv_to_tool_file_cmd,
8377 [#assume ordinary cross tools, or native build.
8378 lt_cv_to_tool_file_cmd=func_convert_file_noop
8379 case $host in
8380 *-*-mingw* )
8381 case $build in
8382 *-*-mingw* ) # actually msys
8383 lt_cv_to_tool_file_cmd=func_convert_file_msys_to_w32
8384 ;;
8385 esac
8386 ;;
8387 esac
8388 ])
8389 to_tool_file_cmd=$lt_cv_to_tool_file_cmd
8390 AC_MSG_RESULT([$lt_cv_to_tool_file_cmd])
8391 _LT_DECL([to_tool_file_cmd], [lt_cv_to_tool_file_cmd],
8392 [0], [convert $build files to toolchain format])dnl
8393 ])# _LT_PATH_CONVERSION_FUNCTIONS
8394
8395 # Helper functions for option handling. -*- Autoconf -*-
8396 #
8397 # Copyright (C) 2004-2005, 2007-2009, 2011-2015 Free Software
8398 # Foundation, Inc.
8399 # Written by Gary V. Vaughan, 2004
8400 #
8401 # This file is free software; the Free Software Foundation gives
8402 # unlimited permission to copy and/or distribute it, with or without
8403 # modifications, as long as this notice is preserved.
8404
8405 # serial 8 ltoptions.m4
8406
8407 # This is to help aclocal find these macros, as it can't see m4_define.
8408 AC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])])
8409
8410
8411 # _LT_MANGLE_OPTION(MACRO-NAME, OPTION-NAME)
8412 # ------------------------------------------
8413 m4_define([_LT_MANGLE_OPTION],
8414 [[_LT_OPTION_]m4_bpatsubst($1__$2, [[^a-zA-Z0-9_]], [_])])
8415
8416
8417 # _LT_SET_OPTION(MACRO-NAME, OPTION-NAME)
8418 # ---------------------------------------
8419 # Set option OPTION-NAME for macro MACRO-NAME, and if there is a
8420 # matching handler defined, dispatch to it. Other OPTION-NAMEs are
8421 # saved as a flag.
8422 m4_define([_LT_SET_OPTION],
8423 [m4_define(_LT_MANGLE_OPTION([$1], [$2]))dnl
8424 m4_ifdef(_LT_MANGLE_DEFUN([$1], [$2]),
8425 _LT_MANGLE_DEFUN([$1], [$2]),
8426 [m4_warning([Unknown $1 option '$2'])])[]dnl
8427 ])
8428
8429
8430 # _LT_IF_OPTION(MACRO-NAME, OPTION-NAME, IF-SET, [IF-NOT-SET])
8431 # ------------------------------------------------------------
8432 # Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
8433 m4_define([_LT_IF_OPTION],
8434 [m4_ifdef(_LT_MANGLE_OPTION([$1], [$2]), [$3], [$4])])
8435
8436
8437 # _LT_UNLESS_OPTIONS(MACRO-NAME, OPTION-LIST, IF-NOT-SET)
8438 # -------------------------------------------------------
8439 # Execute IF-NOT-SET unless all options in OPTION-LIST for MACRO-NAME
8440 # are set.
8441 m4_define([_LT_UNLESS_OPTIONS],
8442 [m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
8443 [m4_ifdef(_LT_MANGLE_OPTION([$1], _LT_Option),
8444 [m4_define([$0_found])])])[]dnl
8445 m4_ifdef([$0_found], [m4_undefine([$0_found])], [$3
8446 ])[]dnl
8447 ])
8448
8449
8450 # _LT_SET_OPTIONS(MACRO-NAME, OPTION-LIST)
8451 # ----------------------------------------
8452 # OPTION-LIST is a space-separated list of Libtool options associated
8453 # with MACRO-NAME. If any OPTION has a matching handler declared with
8454 # LT_OPTION_DEFINE, dispatch to that macro; otherwise complain about
8455 # the unknown option and exit.
8456 m4_defun([_LT_SET_OPTIONS],
8457 [# Set options
8458 m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
8459 [_LT_SET_OPTION([$1], _LT_Option)])
8460
8461 m4_if([$1],[LT_INIT],[
8462 dnl
8463 dnl Simply set some default values (i.e off) if boolean options were not
8464 dnl specified:
8465 _LT_UNLESS_OPTIONS([LT_INIT], [dlopen], [enable_dlopen=no
8466 ])
8467 _LT_UNLESS_OPTIONS([LT_INIT], [win32-dll], [enable_win32_dll=no
8468 ])
8469 dnl
8470 dnl If no reference was made to various pairs of opposing options, then
8471 dnl we run the default mode handler for the pair. For example, if neither
8472 dnl 'shared' nor 'disable-shared' was passed, we enable building of shared
8473 dnl archives by default:
8474 _LT_UNLESS_OPTIONS([LT_INIT], [shared disable-shared], [_LT_ENABLE_SHARED])
8475 _LT_UNLESS_OPTIONS([LT_INIT], [static disable-static], [_LT_ENABLE_STATIC])
8476 _LT_UNLESS_OPTIONS([LT_INIT], [pic-only no-pic], [_LT_WITH_PIC])
8477 _LT_UNLESS_OPTIONS([LT_INIT], [fast-install disable-fast-install],
8478 [_LT_ENABLE_FAST_INSTALL])
8479 _LT_UNLESS_OPTIONS([LT_INIT], [aix-soname=aix aix-soname=both aix-soname=svr4],
8480 [_LT_WITH_AIX_SONAME([aix])])
8481 ])
8482 ])# _LT_SET_OPTIONS
8483
8484
8485
8486 # _LT_MANGLE_DEFUN(MACRO-NAME, OPTION-NAME)
8487 # -----------------------------------------
8488 m4_define([_LT_MANGLE_DEFUN],
8489 [[_LT_OPTION_DEFUN_]m4_bpatsubst(m4_toupper([$1__$2]), [[^A-Z0-9_]], [_])])
8490
8491
8492 # LT_OPTION_DEFINE(MACRO-NAME, OPTION-NAME, CODE)
8493 # -----------------------------------------------
8494 m4_define([LT_OPTION_DEFINE],
8495 [m4_define(_LT_MANGLE_DEFUN([$1], [$2]), [$3])[]dnl
8496 ])# LT_OPTION_DEFINE
8497
8498
8499 # dlopen
8500 # ------
8501 LT_OPTION_DEFINE([LT_INIT], [dlopen], [enable_dlopen=yes
8502 ])
8503
8504 AU_DEFUN([AC_LIBTOOL_DLOPEN],
8505 [_LT_SET_OPTION([LT_INIT], [dlopen])
8506 AC_DIAGNOSE([obsolete],
8507 [$0: Remove this warning and the call to _LT_SET_OPTION when you
8508 put the 'dlopen' option into LT_INIT's first parameter.])
8509 ])
8510
8511 dnl aclocal-1.4 backwards compatibility:
8512 dnl AC_DEFUN([AC_LIBTOOL_DLOPEN], [])
8513
8514
8515 # win32-dll
8516 # ---------
8517 # Declare package support for building win32 dll's.
8518 LT_OPTION_DEFINE([LT_INIT], [win32-dll],
8519 [enable_win32_dll=yes
8520
8521 case $host in
8522 *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-cegcc*)
8523 AC_CHECK_TOOL(AS, as, false)
8524 AC_CHECK_TOOL(DLLTOOL, dlltool, false)
8525 AC_CHECK_TOOL(OBJDUMP, objdump, false)
8526 ;;
8527 esac
8528
8529 test -z "$AS" && AS=as
8530 _LT_DECL([], [AS], [1], [Assembler program])dnl
8531
8532 test -z "$DLLTOOL" && DLLTOOL=dlltool
8533 _LT_DECL([], [DLLTOOL], [1], [DLL creation program])dnl
8534
8535 test -z "$OBJDUMP" && OBJDUMP=objdump
8536 _LT_DECL([], [OBJDUMP], [1], [Object dumper program])dnl
8537 ])# win32-dll
8538
8539 AU_DEFUN([AC_LIBTOOL_WIN32_DLL],
8540 [AC_REQUIRE([AC_CANONICAL_HOST])dnl
8541 _LT_SET_OPTION([LT_INIT], [win32-dll])
8542 AC_DIAGNOSE([obsolete],
8543 [$0: Remove this warning and the call to _LT_SET_OPTION when you
8544 put the 'win32-dll' option into LT_INIT's first parameter.])
8545 ])
8546
8547 dnl aclocal-1.4 backwards compatibility:
8548 dnl AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [])
8549
8550
8551 # _LT_ENABLE_SHARED([DEFAULT])
8552 # ----------------------------
8553 # implement the --enable-shared flag, and supports the 'shared' and
8554 # 'disable-shared' LT_INIT options.
8555 # DEFAULT is either 'yes' or 'no'. If omitted, it defaults to 'yes'.
8556 m4_define([_LT_ENABLE_SHARED],
8557 [m4_define([_LT_ENABLE_SHARED_DEFAULT], [m4_if($1, no, no, yes)])dnl
8558 AC_ARG_ENABLE([shared],
8559 [AS_HELP_STRING([--enable-shared@<:@=PKGS@:>@],
8560 [build shared libraries @<:@default=]_LT_ENABLE_SHARED_DEFAULT[@:>@])],
8561 [p=${PACKAGE-default}
8562 case $enableval in
8563 yes) enable_shared=yes ;;
8564 no) enable_shared=no ;;
8565 *)
8566 enable_shared=no
8567 # Look at the argument we got. We use all the common list separators.
8568 lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
8569 for pkg in $enableval; do
8570 IFS=$lt_save_ifs
8571 if test "X$pkg" = "X$p"; then
8572 enable_shared=yes
8573 fi
8574 done
8575 IFS=$lt_save_ifs
8576 ;;
8577 esac],
8578 [enable_shared=]_LT_ENABLE_SHARED_DEFAULT)
8579
8580 _LT_DECL([build_libtool_libs], [enable_shared], [0],
8581 [Whether or not to build shared libraries])
8582 ])# _LT_ENABLE_SHARED
8583
8584 LT_OPTION_DEFINE([LT_INIT], [shared], [_LT_ENABLE_SHARED([yes])])
8585 LT_OPTION_DEFINE([LT_INIT], [disable-shared], [_LT_ENABLE_SHARED([no])])
8586
8587 # Old names:
8588 AC_DEFUN([AC_ENABLE_SHARED],
8589 [_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[shared])
8590 ])
8591
8592 AC_DEFUN([AC_DISABLE_SHARED],
8593 [_LT_SET_OPTION([LT_INIT], [disable-shared])
8594 ])
8595
8596 AU_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)])
8597 AU_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)])
8598
8599 dnl aclocal-1.4 backwards compatibility:
8600 dnl AC_DEFUN([AM_ENABLE_SHARED], [])
8601 dnl AC_DEFUN([AM_DISABLE_SHARED], [])
8602
8603
8604
8605 # _LT_ENABLE_STATIC([DEFAULT])
8606 # ----------------------------
8607 # implement the --enable-static flag, and support the 'static' and
8608 # 'disable-static' LT_INIT options.
8609 # DEFAULT is either 'yes' or 'no'. If omitted, it defaults to 'yes'.
8610 m4_define([_LT_ENABLE_STATIC],
8611 [m4_define([_LT_ENABLE_STATIC_DEFAULT], [m4_if($1, no, no, yes)])dnl
8612 AC_ARG_ENABLE([static],
8613 [AS_HELP_STRING([--enable-static@<:@=PKGS@:>@],
8614 [build static libraries @<:@default=]_LT_ENABLE_STATIC_DEFAULT[@:>@])],
8615 [p=${PACKAGE-default}
8616 case $enableval in
8617 yes) enable_static=yes ;;
8618 no) enable_static=no ;;
8619 *)
8620 enable_static=no
8621 # Look at the argument we got. We use all the common list separators.
8622 lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
8623 for pkg in $enableval; do
8624 IFS=$lt_save_ifs
8625 if test "X$pkg" = "X$p"; then
8626 enable_static=yes
8627 fi
8628 done
8629 IFS=$lt_save_ifs
8630 ;;
8631 esac],
8632 [enable_static=]_LT_ENABLE_STATIC_DEFAULT)
8633
8634 _LT_DECL([build_old_libs], [enable_static], [0],
8635 [Whether or not to build static libraries])
8636 ])# _LT_ENABLE_STATIC
8637
8638 LT_OPTION_DEFINE([LT_INIT], [static], [_LT_ENABLE_STATIC([yes])])
8639 LT_OPTION_DEFINE([LT_INIT], [disable-static], [_LT_ENABLE_STATIC([no])])
8640
8641 # Old names:
8642 AC_DEFUN([AC_ENABLE_STATIC],
8643 [_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[static])
8644 ])
8645
8646 AC_DEFUN([AC_DISABLE_STATIC],
8647 [_LT_SET_OPTION([LT_INIT], [disable-static])
8648 ])
8649
8650 AU_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)])
8651 AU_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)])
8652
8653 dnl aclocal-1.4 backwards compatibility:
8654 dnl AC_DEFUN([AM_ENABLE_STATIC], [])
8655 dnl AC_DEFUN([AM_DISABLE_STATIC], [])
8656
8657
8658
8659 # _LT_ENABLE_FAST_INSTALL([DEFAULT])
8660 # ----------------------------------
8661 # implement the --enable-fast-install flag, and support the 'fast-install'
8662 # and 'disable-fast-install' LT_INIT options.
8663 # DEFAULT is either 'yes' or 'no'. If omitted, it defaults to 'yes'.
8664 m4_define([_LT_ENABLE_FAST_INSTALL],
8665 [m4_define([_LT_ENABLE_FAST_INSTALL_DEFAULT], [m4_if($1, no, no, yes)])dnl
8666 AC_ARG_ENABLE([fast-install],
8667 [AS_HELP_STRING([--enable-fast-install@<:@=PKGS@:>@],
8668 [optimize for fast installation @<:@default=]_LT_ENABLE_FAST_INSTALL_DEFAULT[@:>@])],
8669 [p=${PACKAGE-default}
8670 case $enableval in
8671 yes) enable_fast_install=yes ;;
8672 no) enable_fast_install=no ;;
8673 *)
8674 enable_fast_install=no
8675 # Look at the argument we got. We use all the common list separators.
8676 lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
8677 for pkg in $enableval; do
8678 IFS=$lt_save_ifs
8679 if test "X$pkg" = "X$p"; then
8680 enable_fast_install=yes
8681 fi
8682 done
8683 IFS=$lt_save_ifs
8684 ;;
8685 esac],
8686 [enable_fast_install=]_LT_ENABLE_FAST_INSTALL_DEFAULT)
8687
8688 _LT_DECL([fast_install], [enable_fast_install], [0],
8689 [Whether or not to optimize for fast installation])dnl
8690 ])# _LT_ENABLE_FAST_INSTALL
8691
8692 LT_OPTION_DEFINE([LT_INIT], [fast-install], [_LT_ENABLE_FAST_INSTALL([yes])])
8693 LT_OPTION_DEFINE([LT_INIT], [disable-fast-install], [_LT_ENABLE_FAST_INSTALL([no])])
8694
8695 # Old names:
8696 AU_DEFUN([AC_ENABLE_FAST_INSTALL],
8697 [_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[fast-install])
8698 AC_DIAGNOSE([obsolete],
8699 [$0: Remove this warning and the call to _LT_SET_OPTION when you put
8700 the 'fast-install' option into LT_INIT's first parameter.])
8701 ])
8702
8703 AU_DEFUN([AC_DISABLE_FAST_INSTALL],
8704 [_LT_SET_OPTION([LT_INIT], [disable-fast-install])
8705 AC_DIAGNOSE([obsolete],
8706 [$0: Remove this warning and the call to _LT_SET_OPTION when you put
8707 the 'disable-fast-install' option into LT_INIT's first parameter.])
8708 ])
8709
8710 dnl aclocal-1.4 backwards compatibility:
8711 dnl AC_DEFUN([AC_ENABLE_FAST_INSTALL], [])
8712 dnl AC_DEFUN([AM_DISABLE_FAST_INSTALL], [])
8713
8714
8715 # _LT_WITH_AIX_SONAME([DEFAULT])
8716 # ----------------------------------
8717 # implement the --with-aix-soname flag, and support the `aix-soname=aix'
8718 # and `aix-soname=both' and `aix-soname=svr4' LT_INIT options. DEFAULT
8719 # is either `aix', `both' or `svr4'. If omitted, it defaults to `aix'.
8720 m4_define([_LT_WITH_AIX_SONAME],
8721 [m4_define([_LT_WITH_AIX_SONAME_DEFAULT], [m4_if($1, svr4, svr4, m4_if($1, both, both, aix))])dnl
8722 shared_archive_member_spec=
8723 case $host,$enable_shared in
8724 power*-*-aix[[5-9]]*,yes)
8725 AC_MSG_CHECKING([which variant of shared library versioning to provide])
8726 AC_ARG_WITH([aix-soname],
8727 [AS_HELP_STRING([--with-aix-soname=aix|svr4|both],
8728 [shared library versioning (aka "SONAME") variant to provide on AIX, @<:@default=]_LT_WITH_AIX_SONAME_DEFAULT[@:>@.])],
8729 [case $withval in
8730 aix|svr4|both)
8731 ;;
8732 *)
8733 AC_MSG_ERROR([Unknown argument to --with-aix-soname])
8734 ;;
8735 esac
8736 lt_cv_with_aix_soname=$with_aix_soname],
8737 [AC_CACHE_VAL([lt_cv_with_aix_soname],
8738 [lt_cv_with_aix_soname=]_LT_WITH_AIX_SONAME_DEFAULT)
8739 with_aix_soname=$lt_cv_with_aix_soname])
8740 AC_MSG_RESULT([$with_aix_soname])
8741 if test aix != "$with_aix_soname"; then
8742 # For the AIX way of multilib, we name the shared archive member
8743 # based on the bitwidth used, traditionally 'shr.o' or 'shr_64.o',
8744 # and 'shr.imp' or 'shr_64.imp', respectively, for the Import File.
8745 # Even when GNU compilers ignore OBJECT_MODE but need '-maix64' flag,
8746 # the AIX toolchain works better with OBJECT_MODE set (default 32).
8747 if test 64 = "${OBJECT_MODE-32}"; then
8748 shared_archive_member_spec=shr_64
8749 else
8750 shared_archive_member_spec=shr
8751 fi
8752 fi
8753 ;;
8754 *)
8755 with_aix_soname=aix
8756 ;;
8757 esac
8758
8759 _LT_DECL([], [shared_archive_member_spec], [0],
8760 [Shared archive member basename, for filename based shared library versioning on AIX])dnl
8761 ])# _LT_WITH_AIX_SONAME
8762
8763 LT_OPTION_DEFINE([LT_INIT], [aix-soname=aix], [_LT_WITH_AIX_SONAME([aix])])
8764 LT_OPTION_DEFINE([LT_INIT], [aix-soname=both], [_LT_WITH_AIX_SONAME([both])])
8765 LT_OPTION_DEFINE([LT_INIT], [aix-soname=svr4], [_LT_WITH_AIX_SONAME([svr4])])
8766
8767
8768 # _LT_WITH_PIC([MODE])
8769 # --------------------
8770 # implement the --with-pic flag, and support the 'pic-only' and 'no-pic'
8771 # LT_INIT options.
8772 # MODE is either 'yes' or 'no'. If omitted, it defaults to 'both'.
8773 m4_define([_LT_WITH_PIC],
8774 [AC_ARG_WITH([pic],
8775 [AS_HELP_STRING([--with-pic@<:@=PKGS@:>@],
8776 [try to use only PIC/non-PIC objects @<:@default=use both@:>@])],
8777 [lt_p=${PACKAGE-default}
8778 case $withval in
8779 yes|no) pic_mode=$withval ;;
8780 *)
8781 pic_mode=default
8782 # Look at the argument we got. We use all the common list separators.
8783 lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
8784 for lt_pkg in $withval; do
8785 IFS=$lt_save_ifs
8786 if test "X$lt_pkg" = "X$lt_p"; then
8787 pic_mode=yes
8788 fi
8789 done
8790 IFS=$lt_save_ifs
8791 ;;
8792 esac],
8793 [pic_mode=m4_default([$1], [default])])
8794
8795 _LT_DECL([], [pic_mode], [0], [What type of objects to build])dnl
8796 ])# _LT_WITH_PIC
8797
8798 LT_OPTION_DEFINE([LT_INIT], [pic-only], [_LT_WITH_PIC([yes])])
8799 LT_OPTION_DEFINE([LT_INIT], [no-pic], [_LT_WITH_PIC([no])])
8800
8801 # Old name:
8802 AU_DEFUN([AC_LIBTOOL_PICMODE],
8803 [_LT_SET_OPTION([LT_INIT], [pic-only])
8804 AC_DIAGNOSE([obsolete],
8805 [$0: Remove this warning and the call to _LT_SET_OPTION when you
8806 put the 'pic-only' option into LT_INIT's first parameter.])
8807 ])
8808
8809 dnl aclocal-1.4 backwards compatibility:
8810 dnl AC_DEFUN([AC_LIBTOOL_PICMODE], [])
8811
8812
8813 m4_define([_LTDL_MODE], [])
8814 LT_OPTION_DEFINE([LTDL_INIT], [nonrecursive],
8815 [m4_define([_LTDL_MODE], [nonrecursive])])
8816 LT_OPTION_DEFINE([LTDL_INIT], [recursive],
8817 [m4_define([_LTDL_MODE], [recursive])])
8818 LT_OPTION_DEFINE([LTDL_INIT], [subproject],
8819 [m4_define([_LTDL_MODE], [subproject])])
8820
8821 m4_define([_LTDL_TYPE], [])
8822 LT_OPTION_DEFINE([LTDL_INIT], [installable],
8823 [m4_define([_LTDL_TYPE], [installable])])
8824 LT_OPTION_DEFINE([LTDL_INIT], [convenience],
8825 [m4_define([_LTDL_TYPE], [convenience])])
8826
8827 # ltsugar.m4 -- libtool m4 base layer. -*-Autoconf-*-
8828 #
8829 # Copyright (C) 2004-2005, 2007-2008, 2011-2015 Free Software
8830 # Foundation, Inc.
8831 # Written by Gary V. Vaughan, 2004
8832 #
8833 # This file is free software; the Free Software Foundation gives
8834 # unlimited permission to copy and/or distribute it, with or without
8835 # modifications, as long as this notice is preserved.
8836
8837 # serial 6 ltsugar.m4
8838
8839 # This is to help aclocal find these macros, as it can't see m4_define.
8840 AC_DEFUN([LTSUGAR_VERSION], [m4_if([0.1])])
8841
8842
8843 # lt_join(SEP, ARG1, [ARG2...])
8844 # -----------------------------
8845 # Produce ARG1SEPARG2...SEPARGn, omitting [] arguments and their
8846 # associated separator.
8847 # Needed until we can rely on m4_join from Autoconf 2.62, since all earlier
8848 # versions in m4sugar had bugs.
8849 m4_define([lt_join],
8850 [m4_if([$#], [1], [],
8851 [$#], [2], [[$2]],
8852 [m4_if([$2], [], [], [[$2]_])$0([$1], m4_shift(m4_shift($@)))])])
8853 m4_define([_lt_join],
8854 [m4_if([$#$2], [2], [],
8855 [m4_if([$2], [], [], [[$1$2]])$0([$1], m4_shift(m4_shift($@)))])])
8856
8857
8858 # lt_car(LIST)
8859 # lt_cdr(LIST)
8860 # ------------
8861 # Manipulate m4 lists.
8862 # These macros are necessary as long as will still need to support
8863 # Autoconf-2.59, which quotes differently.
8864 m4_define([lt_car], [[$1]])
8865 m4_define([lt_cdr],
8866 [m4_if([$#], 0, [m4_fatal([$0: cannot be called without arguments])],
8867 [$#], 1, [],
8868 [m4_dquote(m4_shift($@))])])
8869 m4_define([lt_unquote], $1)
8870
8871
8872 # lt_append(MACRO-NAME, STRING, [SEPARATOR])
8873 # ------------------------------------------
8874 # Redefine MACRO-NAME to hold its former content plus 'SEPARATOR''STRING'.
8875 # Note that neither SEPARATOR nor STRING are expanded; they are appended
8876 # to MACRO-NAME as is (leaving the expansion for when MACRO-NAME is invoked).
8877 # No SEPARATOR is output if MACRO-NAME was previously undefined (different
8878 # than defined and empty).
8879 #
8880 # This macro is needed until we can rely on Autoconf 2.62, since earlier
8881 # versions of m4sugar mistakenly expanded SEPARATOR but not STRING.
8882 m4_define([lt_append],
8883 [m4_define([$1],
8884 m4_ifdef([$1], [m4_defn([$1])[$3]])[$2])])
8885
8886
8887
8888 # lt_combine(SEP, PREFIX-LIST, INFIX, SUFFIX1, [SUFFIX2...])
8889 # ----------------------------------------------------------
8890 # Produce a SEP delimited list of all paired combinations of elements of
8891 # PREFIX-LIST with SUFFIX1 through SUFFIXn. Each element of the list
8892 # has the form PREFIXmINFIXSUFFIXn.
8893 # Needed until we can rely on m4_combine added in Autoconf 2.62.
8894 m4_define([lt_combine],
8895 [m4_if(m4_eval([$# > 3]), [1],
8896 [m4_pushdef([_Lt_sep], [m4_define([_Lt_sep], m4_defn([lt_car]))])]]dnl
8897 [[m4_foreach([_Lt_prefix], [$2],
8898 [m4_foreach([_Lt_suffix],
8899 ]m4_dquote(m4_dquote(m4_shift(m4_shift(m4_shift($@)))))[,
8900 [_Lt_sep([$1])[]m4_defn([_Lt_prefix])[$3]m4_defn([_Lt_suffix])])])])])
8901
8902
8903 # lt_if_append_uniq(MACRO-NAME, VARNAME, [SEPARATOR], [UNIQ], [NOT-UNIQ])
8904 # -----------------------------------------------------------------------
8905 # Iff MACRO-NAME does not yet contain VARNAME, then append it (delimited
8906 # by SEPARATOR if supplied) and expand UNIQ, else NOT-UNIQ.
8907 m4_define([lt_if_append_uniq],
8908 [m4_ifdef([$1],
8909 [m4_if(m4_index([$3]m4_defn([$1])[$3], [$3$2$3]), [-1],
8910 [lt_append([$1], [$2], [$3])$4],
8911 [$5])],
8912 [lt_append([$1], [$2], [$3])$4])])
8913
8914
8915 # lt_dict_add(DICT, KEY, VALUE)
8916 # -----------------------------
8917 m4_define([lt_dict_add],
8918 [m4_define([$1($2)], [$3])])
8919
8920
8921 # lt_dict_add_subkey(DICT, KEY, SUBKEY, VALUE)
8922 # --------------------------------------------
8923 m4_define([lt_dict_add_subkey],
8924 [m4_define([$1($2:$3)], [$4])])
8925
8926
8927 # lt_dict_fetch(DICT, KEY, [SUBKEY])
8928 # ----------------------------------
8929 m4_define([lt_dict_fetch],
8930 [m4_ifval([$3],
8931 m4_ifdef([$1($2:$3)], [m4_defn([$1($2:$3)])]),
8932 m4_ifdef([$1($2)], [m4_defn([$1($2)])]))])
8933
8934
8935 # lt_if_dict_fetch(DICT, KEY, [SUBKEY], VALUE, IF-TRUE, [IF-FALSE])
8936 # -----------------------------------------------------------------
8937 m4_define([lt_if_dict_fetch],
8938 [m4_if(lt_dict_fetch([$1], [$2], [$3]), [$4],
8939 [$5],
8940 [$6])])
8941
8942
8943 # lt_dict_filter(DICT, [SUBKEY], VALUE, [SEPARATOR], KEY, [...])
8944 # --------------------------------------------------------------
8945 m4_define([lt_dict_filter],
8946 [m4_if([$5], [], [],
8947 [lt_join(m4_quote(m4_default([$4], [[, ]])),
8948 lt_unquote(m4_split(m4_normalize(m4_foreach(_Lt_key, lt_car([m4_shiftn(4, $@)]),
8949 [lt_if_dict_fetch([$1], _Lt_key, [$2], [$3], [_Lt_key ])])))))])[]dnl
8950 ])
8951
8952 # ltversion.m4 -- version numbers -*- Autoconf -*-
8953 #
8954 # Copyright (C) 2004, 2011-2015 Free Software Foundation, Inc.
8955 # Written by Scott James Remnant, 2004
8956 #
8957 # This file is free software; the Free Software Foundation gives
8958 # unlimited permission to copy and/or distribute it, with or without
8959 # modifications, as long as this notice is preserved.
8960
8961 # @configure_input@
8962
8963 # serial 4179 ltversion.m4
8964 # This file is part of GNU Libtool
8965
8966 m4_define([LT_PACKAGE_VERSION], [2.4.6])
8967 m4_define([LT_PACKAGE_REVISION], [2.4.6])
8968
8969 AC_DEFUN([LTVERSION_VERSION],
8970 [macro_version='2.4.6'
8971 macro_revision='2.4.6'
8972 _LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?])
8973 _LT_DECL(, macro_revision, 0)
8974 ])
8975
8976 # lt~obsolete.m4 -- aclocal satisfying obsolete definitions. -*-Autoconf-*-
8977 #
8978 # Copyright (C) 2004-2005, 2007, 2009, 2011-2015 Free Software
8979 # Foundation, Inc.
8980 # Written by Scott James Remnant, 2004.
8981 #
8982 # This file is free software; the Free Software Foundation gives
8983 # unlimited permission to copy and/or distribute it, with or without
8984 # modifications, as long as this notice is preserved.
8985
8986 # serial 5 lt~obsolete.m4
8987
8988 # These exist entirely to fool aclocal when bootstrapping libtool.
8989 #
8990 # In the past libtool.m4 has provided macros via AC_DEFUN (or AU_DEFUN),
8991 # which have later been changed to m4_define as they aren't part of the
8992 # exported API, or moved to Autoconf or Automake where they belong.
8993 #
8994 # The trouble is, aclocal is a bit thick. It'll see the old AC_DEFUN
8995 # in /usr/share/aclocal/libtool.m4 and remember it, then when it sees us
8996 # using a macro with the same name in our local m4/libtool.m4 it'll
8997 # pull the old libtool.m4 in (it doesn't see our shiny new m4_define
8998 # and doesn't know about Autoconf macros at all.)
8999 #
9000 # So we provide this file, which has a silly filename so it's always
9001 # included after everything else. This provides aclocal with the
9002 # AC_DEFUNs it wants, but when m4 processes it, it doesn't do anything
9003 # because those macros already exist, or will be overwritten later.
9004 # We use AC_DEFUN over AU_DEFUN for compatibility with aclocal-1.6.
9005 #
9006 # Anytime we withdraw an AC_DEFUN or AU_DEFUN, remember to add it here.
9007 # Yes, that means every name once taken will need to remain here until
9008 # we give up compatibility with versions before 1.7, at which point
9009 # we need to keep only those names which we still refer to.
9010
9011 # This is to help aclocal find these macros, as it can't see m4_define.
9012 AC_DEFUN([LTOBSOLETE_VERSION], [m4_if([1])])
9013
9014 m4_ifndef([AC_LIBTOOL_LINKER_OPTION], [AC_DEFUN([AC_LIBTOOL_LINKER_OPTION])])
9015 m4_ifndef([AC_PROG_EGREP], [AC_DEFUN([AC_PROG_EGREP])])
9016 m4_ifndef([_LT_AC_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH])])
9017 m4_ifndef([_LT_AC_SHELL_INIT], [AC_DEFUN([_LT_AC_SHELL_INIT])])
9018 m4_ifndef([_LT_AC_SYS_LIBPATH_AIX], [AC_DEFUN([_LT_AC_SYS_LIBPATH_AIX])])
9019 m4_ifndef([_LT_PROG_LTMAIN], [AC_DEFUN([_LT_PROG_LTMAIN])])
9020 m4_ifndef([_LT_AC_TAGVAR], [AC_DEFUN([_LT_AC_TAGVAR])])
9021 m4_ifndef([AC_LTDL_ENABLE_INSTALL], [AC_DEFUN([AC_LTDL_ENABLE_INSTALL])])
9022 m4_ifndef([AC_LTDL_PREOPEN], [AC_DEFUN([AC_LTDL_PREOPEN])])
9023 m4_ifndef([_LT_AC_SYS_COMPILER], [AC_DEFUN([_LT_AC_SYS_COMPILER])])
9024 m4_ifndef([_LT_AC_LOCK], [AC_DEFUN([_LT_AC_LOCK])])
9025 m4_ifndef([AC_LIBTOOL_SYS_OLD_ARCHIVE], [AC_DEFUN([AC_LIBTOOL_SYS_OLD_ARCHIVE])])
9026 m4_ifndef([_LT_AC_TRY_DLOPEN_SELF], [AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF])])
9027 m4_ifndef([AC_LIBTOOL_PROG_CC_C_O], [AC_DEFUN([AC_LIBTOOL_PROG_CC_C_O])])
9028 m4_ifndef([AC_LIBTOOL_SYS_HARD_LINK_LOCKS], [AC_DEFUN([AC_LIBTOOL_SYS_HARD_LINK_LOCKS])])
9029 m4_ifndef([AC_LIBTOOL_OBJDIR], [AC_DEFUN([AC_LIBTOOL_OBJDIR])])
9030 m4_ifndef([AC_LTDL_OBJDIR], [AC_DEFUN([AC_LTDL_OBJDIR])])
9031 m4_ifndef([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH], [AC_DEFUN([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH])])
9032 m4_ifndef([AC_LIBTOOL_SYS_LIB_STRIP], [AC_DEFUN([AC_LIBTOOL_SYS_LIB_STRIP])])
9033 m4_ifndef([AC_PATH_MAGIC], [AC_DEFUN([AC_PATH_MAGIC])])
9034 m4_ifndef([AC_PROG_LD_GNU], [AC_DEFUN([AC_PROG_LD_GNU])])
9035 m4_ifndef([AC_PROG_LD_RELOAD_FLAG], [AC_DEFUN([AC_PROG_LD_RELOAD_FLAG])])
9036 m4_ifndef([AC_DEPLIBS_CHECK_METHOD], [AC_DEFUN([AC_DEPLIBS_CHECK_METHOD])])
9037 m4_ifndef([AC_LIBTOOL_PROG_COMPILER_NO_RTTI], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_NO_RTTI])])
9038 m4_ifndef([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE], [AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE])])
9039 m4_ifndef([AC_LIBTOOL_PROG_COMPILER_PIC], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_PIC])])
9040 m4_ifndef([AC_LIBTOOL_PROG_LD_SHLIBS], [AC_DEFUN([AC_LIBTOOL_PROG_LD_SHLIBS])])
9041 m4_ifndef([AC_LIBTOOL_POSTDEP_PREDEP], [AC_DEFUN([AC_LIBTOOL_POSTDEP_PREDEP])])
9042 m4_ifndef([LT_AC_PROG_EGREP], [AC_DEFUN([LT_AC_PROG_EGREP])])
9043 m4_ifndef([LT_AC_PROG_SED], [AC_DEFUN([LT_AC_PROG_SED])])
9044 m4_ifndef([_LT_CC_BASENAME], [AC_DEFUN([_LT_CC_BASENAME])])
9045 m4_ifndef([_LT_COMPILER_BOILERPLATE], [AC_DEFUN([_LT_COMPILER_BOILERPLATE])])
9046 m4_ifndef([_LT_LINKER_BOILERPLATE], [AC_DEFUN([_LT_LINKER_BOILERPLATE])])
9047 m4_ifndef([_AC_PROG_LIBTOOL], [AC_DEFUN([_AC_PROG_LIBTOOL])])
9048 m4_ifndef([AC_LIBTOOL_SETUP], [AC_DEFUN([AC_LIBTOOL_SETUP])])
9049 m4_ifndef([_LT_AC_CHECK_DLFCN], [AC_DEFUN([_LT_AC_CHECK_DLFCN])])
9050 m4_ifndef([AC_LIBTOOL_SYS_DYNAMIC_LINKER], [AC_DEFUN([AC_LIBTOOL_SYS_DYNAMIC_LINKER])])
9051 m4_ifndef([_LT_AC_TAGCONFIG], [AC_DEFUN([_LT_AC_TAGCONFIG])])
9052 m4_ifndef([AC_DISABLE_FAST_INSTALL], [AC_DEFUN([AC_DISABLE_FAST_INSTALL])])
9053 m4_ifndef([_LT_AC_LANG_CXX], [AC_DEFUN([_LT_AC_LANG_CXX])])
9054 m4_ifndef([_LT_AC_LANG_F77], [AC_DEFUN([_LT_AC_LANG_F77])])
9055 m4_ifndef([_LT_AC_LANG_GCJ], [AC_DEFUN([_LT_AC_LANG_GCJ])])
9056 m4_ifndef([AC_LIBTOOL_LANG_C_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_C_CONFIG])])
9057 m4_ifndef([_LT_AC_LANG_C_CONFIG], [AC_DEFUN([_LT_AC_LANG_C_CONFIG])])
9058 m4_ifndef([AC_LIBTOOL_LANG_CXX_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_CXX_CONFIG])])
9059 m4_ifndef([_LT_AC_LANG_CXX_CONFIG], [AC_DEFUN([_LT_AC_LANG_CXX_CONFIG])])
9060 m4_ifndef([AC_LIBTOOL_LANG_F77_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_F77_CONFIG])])
9061 m4_ifndef([_LT_AC_LANG_F77_CONFIG], [AC_DEFUN([_LT_AC_LANG_F77_CONFIG])])
9062 m4_ifndef([AC_LIBTOOL_LANG_GCJ_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_GCJ_CONFIG])])
9063 m4_ifndef([_LT_AC_LANG_GCJ_CONFIG], [AC_DEFUN([_LT_AC_LANG_GCJ_CONFIG])])
9064 m4_ifndef([AC_LIBTOOL_LANG_RC_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_RC_CONFIG])])
9065 m4_ifndef([_LT_AC_LANG_RC_CONFIG], [AC_DEFUN([_LT_AC_LANG_RC_CONFIG])])
9066 m4_ifndef([AC_LIBTOOL_CONFIG], [AC_DEFUN([AC_LIBTOOL_CONFIG])])
9067 m4_ifndef([_LT_AC_FILE_LTDLL_C], [AC_DEFUN([_LT_AC_FILE_LTDLL_C])])
9068 m4_ifndef([_LT_REQUIRED_DARWIN_CHECKS], [AC_DEFUN([_LT_REQUIRED_DARWIN_CHECKS])])
9069 m4_ifndef([_LT_AC_PROG_CXXCPP], [AC_DEFUN([_LT_AC_PROG_CXXCPP])])
9070 m4_ifndef([_LT_PREPARE_SED_QUOTE_VARS], [AC_DEFUN([_LT_PREPARE_SED_QUOTE_VARS])])
9071 m4_ifndef([_LT_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_PROG_ECHO_BACKSLASH])])
9072 m4_ifndef([_LT_PROG_F77], [AC_DEFUN([_LT_PROG_F77])])
9073 m4_ifndef([_LT_PROG_FC], [AC_DEFUN([_LT_PROG_FC])])
9074 m4_ifndef([_LT_PROG_CXX], [AC_DEFUN([_LT_PROG_CXX])])
9075
9076 # Copyright (C) 2002-2020 Free Software Foundation, Inc.
9077 #
9078 # This file is free software; the Free Software Foundation
9079 # gives unlimited permission to copy and/or distribute it,
9080 # with or without modifications, as long as this notice is preserved.
9081
9082 # AM_AUTOMAKE_VERSION(VERSION)
9083 # ----------------------------
9084 # Automake X.Y traces this macro to ensure aclocal.m4 has been
9085 # generated from the m4 files accompanying Automake X.Y.
9086 # (This private macro should not be called outside this file.)
9087 AC_DEFUN([AM_AUTOMAKE_VERSION],
9088 [am__api_version='1.16'
9089 dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
9090 dnl require some minimum version. Point them to the right macro.
9091 m4_if([$1], [1.16.2], [],
9092 [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
9093 ])
9094
9095 # _AM_AUTOCONF_VERSION(VERSION)
9096 # -----------------------------
9097 # aclocal traces this macro to find the Autoconf version.
9098 # This is a private macro too. Using m4_define simplifies
9099 # the logic in aclocal, which can simply ignore this definition.
9100 m4_define([_AM_AUTOCONF_VERSION], [])
9101
9102 # AM_SET_CURRENT_AUTOMAKE_VERSION
9103 # -------------------------------
9104 # Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
9105 # This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
9106 AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
9107 [AM_AUTOMAKE_VERSION([1.16.2])dnl
9108 m4_ifndef([AC_AUTOCONF_VERSION],
9109 [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
9110 _AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
9111
9112 # AM_AUX_DIR_EXPAND -*- Autoconf -*-
9113
9114 # Copyright (C) 2001-2020 Free Software Foundation, Inc.
9115 #
9116 # This file is free software; the Free Software Foundation
9117 # gives unlimited permission to copy and/or distribute it,
9118 # with or without modifications, as long as this notice is preserved.
9119
9120 # For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets
9121 # $ac_aux_dir to '$srcdir/foo'. In other projects, it is set to
9122 # '$srcdir', '$srcdir/..', or '$srcdir/../..'.
9123 #
9124 # Of course, Automake must honor this variable whenever it calls a
9125 # tool from the auxiliary directory. The problem is that $srcdir (and
9126 # therefore $ac_aux_dir as well) can be either absolute or relative,
9127 # depending on how configure is run. This is pretty annoying, since
9128 # it makes $ac_aux_dir quite unusable in subdirectories: in the top
9129 # source directory, any form will work fine, but in subdirectories a
9130 # relative path needs to be adjusted first.
9131 #
9132 # $ac_aux_dir/missing
9133 # fails when called from a subdirectory if $ac_aux_dir is relative
9134 # $top_srcdir/$ac_aux_dir/missing
9135 # fails if $ac_aux_dir is absolute,
9136 # fails when called from a subdirectory in a VPATH build with
9137 # a relative $ac_aux_dir
9138 #
9139 # The reason of the latter failure is that $top_srcdir and $ac_aux_dir
9140 # are both prefixed by $srcdir. In an in-source build this is usually
9141 # harmless because $srcdir is '.', but things will broke when you
9142 # start a VPATH build or use an absolute $srcdir.
9143 #
9144 # So we could use something similar to $top_srcdir/$ac_aux_dir/missing,
9145 # iff we strip the leading $srcdir from $ac_aux_dir. That would be:
9146 # am_aux_dir='\$(top_srcdir)/'`expr "$ac_aux_dir" : "$srcdir//*\(.*\)"`
9147 # and then we would define $MISSING as
9148 # MISSING="\${SHELL} $am_aux_dir/missing"
9149 # This will work as long as MISSING is not called from configure, because
9150 # unfortunately $(top_srcdir) has no meaning in configure.
9151 # However there are other variables, like CC, which are often used in
9152 # configure, and could therefore not use this "fixed" $ac_aux_dir.
9153 #
9154 # Another solution, used here, is to always expand $ac_aux_dir to an
9155 # absolute PATH. The drawback is that using absolute paths prevent a
9156 # configured tree to be moved without reconfiguration.
9157
9158 AC_DEFUN([AM_AUX_DIR_EXPAND],
9159 [AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl
9160 # Expand $ac_aux_dir to an absolute path.
9161 am_aux_dir=`cd "$ac_aux_dir" && pwd`
9162 ])
9163
9164 # AM_CONDITIONAL -*- Autoconf -*-
9165
9166 # Copyright (C) 1997-2020 Free Software Foundation, Inc.
9167 #
9168 # This file is free software; the Free Software Foundation
9169 # gives unlimited permission to copy and/or distribute it,
9170 # with or without modifications, as long as this notice is preserved.
9171
9172 # AM_CONDITIONAL(NAME, SHELL-CONDITION)
9173 # -------------------------------------
9174 # Define a conditional.
9175 AC_DEFUN([AM_CONDITIONAL],
9176 [AC_PREREQ([2.52])dnl
9177 m4_if([$1], [TRUE], [AC_FATAL([$0: invalid condition: $1])],
9178 [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl
9179 AC_SUBST([$1_TRUE])dnl
9180 AC_SUBST([$1_FALSE])dnl
9181 _AM_SUBST_NOTMAKE([$1_TRUE])dnl
9182 _AM_SUBST_NOTMAKE([$1_FALSE])dnl
9183 m4_define([_AM_COND_VALUE_$1], [$2])dnl
9184 if $2; then
9185 $1_TRUE=
9186 $1_FALSE='#'
9187 else
9188 $1_TRUE='#'
9189 $1_FALSE=
9190 fi
9191 AC_CONFIG_COMMANDS_PRE(
9192 [if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then
9193 AC_MSG_ERROR([[conditional "$1" was never defined.
9194 Usually this means the macro was only invoked conditionally.]])
9195 fi])])
9196
9197 # Copyright (C) 1999-2020 Free Software Foundation, Inc.
9198 #
9199 # This file is free software; the Free Software Foundation
9200 # gives unlimited permission to copy and/or distribute it,
9201 # with or without modifications, as long as this notice is preserved.
9202
9203
9204 # There are a few dirty hacks below to avoid letting 'AC_PROG_CC' be
9205 # written in clear, in which case automake, when reading aclocal.m4,
9206 # will think it sees a *use*, and therefore will trigger all it's
9207 # C support machinery. Also note that it means that autoscan, seeing
9208 # CC etc. in the Makefile, will ask for an AC_PROG_CC use...
9209
9210
9211 # _AM_DEPENDENCIES(NAME)
9212 # ----------------------
9213 # See how the compiler implements dependency checking.
9214 # NAME is "CC", "CXX", "OBJC", "OBJCXX", "UPC", or "GJC".
9215 # We try a few techniques and use that to set a single cache variable.
9216 #
9217 # We don't AC_REQUIRE the corresponding AC_PROG_CC since the latter was
9218 # modified to invoke _AM_DEPENDENCIES(CC); we would have a circular
9219 # dependency, and given that the user is not expected to run this macro,
9220 # just rely on AC_PROG_CC.
9221 AC_DEFUN([_AM_DEPENDENCIES],
9222 [AC_REQUIRE([AM_SET_DEPDIR])dnl
9223 AC_REQUIRE([AM_OUTPUT_DEPENDENCY_COMMANDS])dnl
9224 AC_REQUIRE([AM_MAKE_INCLUDE])dnl
9225 AC_REQUIRE([AM_DEP_TRACK])dnl
9226
9227 m4_if([$1], [CC], [depcc="$CC" am_compiler_list=],
9228 [$1], [CXX], [depcc="$CXX" am_compiler_list=],
9229 [$1], [OBJC], [depcc="$OBJC" am_compiler_list='gcc3 gcc'],
9230 [$1], [OBJCXX], [depcc="$OBJCXX" am_compiler_list='gcc3 gcc'],
9231 [$1], [UPC], [depcc="$UPC" am_compiler_list=],
9232 [$1], [GCJ], [depcc="$GCJ" am_compiler_list='gcc3 gcc'],
9233 [depcc="$$1" am_compiler_list=])
9234
9235 AC_CACHE_CHECK([dependency style of $depcc],
9236 [am_cv_$1_dependencies_compiler_type],
9237 [if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
9238 # We make a subdir and do the tests there. Otherwise we can end up
9239 # making bogus files that we don't know about and never remove. For
9240 # instance it was reported that on HP-UX the gcc test will end up
9241 # making a dummy file named 'D' -- because '-MD' means "put the output
9242 # in D".
9243 rm -rf conftest.dir
9244 mkdir conftest.dir
9245 # Copy depcomp to subdir because otherwise we won't find it if we're
9246 # using a relative directory.
9247 cp "$am_depcomp" conftest.dir
9248 cd conftest.dir
9249 # We will build objects and dependencies in a subdirectory because
9250 # it helps to detect inapplicable dependency modes. For instance
9251 # both Tru64's cc and ICC support -MD to output dependencies as a
9252 # side effect of compilation, but ICC will put the dependencies in
9253 # the current directory while Tru64 will put them in the object
9254 # directory.
9255 mkdir sub
9256
9257 am_cv_$1_dependencies_compiler_type=none
9258 if test "$am_compiler_list" = ""; then
9259 am_compiler_list=`sed -n ['s/^#*\([a-zA-Z0-9]*\))$/\1/p'] < ./depcomp`
9260 fi
9261 am__universal=false
9262 m4_case([$1], [CC],
9263 [case " $depcc " in #(
9264 *\ -arch\ *\ -arch\ *) am__universal=true ;;
9265 esac],
9266 [CXX],
9267 [case " $depcc " in #(
9268 *\ -arch\ *\ -arch\ *) am__universal=true ;;
9269 esac])
9270
9271 for depmode in $am_compiler_list; do
9272 # Setup a source with many dependencies, because some compilers
9273 # like to wrap large dependency lists on column 80 (with \), and
9274 # we should not choose a depcomp mode which is confused by this.
9275 #
9276 # We need to recreate these files for each test, as the compiler may
9277 # overwrite some of them when testing with obscure command lines.
9278 # This happens at least with the AIX C compiler.
9279 : > sub/conftest.c
9280 for i in 1 2 3 4 5 6; do
9281 echo '#include "conftst'$i'.h"' >> sub/conftest.c
9282 # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with
9283 # Solaris 10 /bin/sh.
9284 echo '/* dummy */' > sub/conftst$i.h
9285 done
9286 echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
9287
9288 # We check with '-c' and '-o' for the sake of the "dashmstdout"
9289 # mode. It turns out that the SunPro C++ compiler does not properly
9290 # handle '-M -o', and we need to detect this. Also, some Intel
9291 # versions had trouble with output in subdirs.
9292 am__obj=sub/conftest.${OBJEXT-o}
9293 am__minus_obj="-o $am__obj"
9294 case $depmode in
9295 gcc)
9296 # This depmode causes a compiler race in universal mode.
9297 test "$am__universal" = false || continue
9298 ;;
9299 nosideeffect)
9300 # After this tag, mechanisms are not by side-effect, so they'll
9301 # only be used when explicitly requested.
9302 if test "x$enable_dependency_tracking" = xyes; then
9303 continue
9304 else
9305 break
9306 fi
9307 ;;
9308 msvc7 | msvc7msys | msvisualcpp | msvcmsys)
9309 # This compiler won't grok '-c -o', but also, the minuso test has
9310 # not run yet. These depmodes are late enough in the game, and
9311 # so weak that their functioning should not be impacted.
9312 am__obj=conftest.${OBJEXT-o}
9313 am__minus_obj=
9314 ;;
9315 none) break ;;
9316 esac
9317 if depmode=$depmode \
9318 source=sub/conftest.c object=$am__obj \
9319 depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
9320 $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \
9321 >/dev/null 2>conftest.err &&
9322 grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 &&
9323 grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
9324 grep $am__obj sub/conftest.Po > /dev/null 2>&1 &&
9325 ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
9326 # icc doesn't choke on unknown options, it will just issue warnings
9327 # or remarks (even with -Werror). So we grep stderr for any message
9328 # that says an option was ignored or not supported.
9329 # When given -MP, icc 7.0 and 7.1 complain thusly:
9330 # icc: Command line warning: ignoring option '-M'; no argument required
9331 # The diagnosis changed in icc 8.0:
9332 # icc: Command line remark: option '-MP' not supported
9333 if (grep 'ignoring option' conftest.err ||
9334 grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
9335 am_cv_$1_dependencies_compiler_type=$depmode
9336 break
9337 fi
9338 fi
9339 done
9340
9341 cd ..
9342 rm -rf conftest.dir
9343 else
9344 am_cv_$1_dependencies_compiler_type=none
9345 fi
9346 ])
9347 AC_SUBST([$1DEPMODE], [depmode=$am_cv_$1_dependencies_compiler_type])
9348 AM_CONDITIONAL([am__fastdep$1], [
9349 test "x$enable_dependency_tracking" != xno \
9350 && test "$am_cv_$1_dependencies_compiler_type" = gcc3])
9351 ])
9352
9353
9354 # AM_SET_DEPDIR
9355 # -------------
9356 # Choose a directory name for dependency files.
9357 # This macro is AC_REQUIREd in _AM_DEPENDENCIES.
9358 AC_DEFUN([AM_SET_DEPDIR],
9359 [AC_REQUIRE([AM_SET_LEADING_DOT])dnl
9360 AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl
9361 ])
9362
9363
9364 # AM_DEP_TRACK
9365 # ------------
9366 AC_DEFUN([AM_DEP_TRACK],
9367 [AC_ARG_ENABLE([dependency-tracking], [dnl
9368 AS_HELP_STRING(
9369 [--enable-dependency-tracking],
9370 [do not reject slow dependency extractors])
9371 AS_HELP_STRING(
9372 [--disable-dependency-tracking],
9373 [speeds up one-time build])])
9374 if test "x$enable_dependency_tracking" != xno; then
9375 am_depcomp="$ac_aux_dir/depcomp"
9376 AMDEPBACKSLASH='\'
9377 am__nodep='_no'
9378 fi
9379 AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno])
9380 AC_SUBST([AMDEPBACKSLASH])dnl
9381 _AM_SUBST_NOTMAKE([AMDEPBACKSLASH])dnl
9382 AC_SUBST([am__nodep])dnl
9383 _AM_SUBST_NOTMAKE([am__nodep])dnl
9384 ])
9385
9386 # Generate code to set up dependency tracking. -*- Autoconf -*-
9387
9388 # Copyright (C) 1999-2020 Free Software Foundation, Inc.
9389 #
9390 # This file is free software; the Free Software Foundation
9391 # gives unlimited permission to copy and/or distribute it,
9392 # with or without modifications, as long as this notice is preserved.
9393
9394 # _AM_OUTPUT_DEPENDENCY_COMMANDS
9395 # ------------------------------
9396 AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS],
9397 [{
9398 # Older Autoconf quotes --file arguments for eval, but not when files
9399 # are listed without --file. Let's play safe and only enable the eval
9400 # if we detect the quoting.
9401 # TODO: see whether this extra hack can be removed once we start
9402 # requiring Autoconf 2.70 or later.
9403 AS_CASE([$CONFIG_FILES],
9404 [*\'*], [eval set x "$CONFIG_FILES"],
9405 [*], [set x $CONFIG_FILES])
9406 shift
9407 # Used to flag and report bootstrapping failures.
9408 am_rc=0
9409 for am_mf
9410 do
9411 # Strip MF so we end up with the name of the file.
9412 am_mf=`AS_ECHO(["$am_mf"]) | sed -e 's/:.*$//'`
9413 # Check whether this is an Automake generated Makefile which includes
9414 # dependency-tracking related rules and includes.
9415 # Grep'ing the whole file directly is not great: AIX grep has a line
9416 # limit of 2048, but all sed's we know have understand at least 4000.
9417 sed -n 's,^am--depfiles:.*,X,p' "$am_mf" | grep X >/dev/null 2>&1 \
9418 || continue
9419 am_dirpart=`AS_DIRNAME(["$am_mf"])`
9420 am_filepart=`AS_BASENAME(["$am_mf"])`
9421 AM_RUN_LOG([cd "$am_dirpart" \
9422 && sed -e '/# am--include-marker/d' "$am_filepart" \
9423 | $MAKE -f - am--depfiles]) || am_rc=$?
9424 done
9425 if test $am_rc -ne 0; then
9426 AC_MSG_FAILURE([Something went wrong bootstrapping makefile fragments
9427 for automatic dependency tracking. If GNU make was not used, consider
9428 re-running the configure script with MAKE="gmake" (or whatever is
9429 necessary). You can also try re-running configure with the
9430 '--disable-dependency-tracking' option to at least be able to build
9431 the package (albeit without support for automatic dependency tracking).])
9432 fi
9433 AS_UNSET([am_dirpart])
9434 AS_UNSET([am_filepart])
9435 AS_UNSET([am_mf])
9436 AS_UNSET([am_rc])
9437 rm -f conftest-deps.mk
9438 }
9439 ])# _AM_OUTPUT_DEPENDENCY_COMMANDS
9440
9441
9442 # AM_OUTPUT_DEPENDENCY_COMMANDS
9443 # -----------------------------
9444 # This macro should only be invoked once -- use via AC_REQUIRE.
9445 #
9446 # This code is only required when automatic dependency tracking is enabled.
9447 # This creates each '.Po' and '.Plo' makefile fragment that we'll need in
9448 # order to bootstrap the dependency handling code.
9449 AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
9450 [AC_CONFIG_COMMANDS([depfiles],
9451 [test x"$AMDEP_TRUE" != x"" || _AM_OUTPUT_DEPENDENCY_COMMANDS],
9452 [AMDEP_TRUE="$AMDEP_TRUE" MAKE="${MAKE-make}"])])
9453
9454 # Do all the work for Automake. -*- Autoconf -*-
9455
9456 # Copyright (C) 1996-2020 Free Software Foundation, Inc.
9457 #
9458 # This file is free software; the Free Software Foundation
9459 # gives unlimited permission to copy and/or distribute it,
9460 # with or without modifications, as long as this notice is preserved.
9461
9462 # This macro actually does too much. Some checks are only needed if
9463 # your package does certain things. But this isn't really a big deal.
9464
9465 dnl Redefine AC_PROG_CC to automatically invoke _AM_PROG_CC_C_O.
9466 m4_define([AC_PROG_CC],
9467 m4_defn([AC_PROG_CC])
9468 [_AM_PROG_CC_C_O
9469 ])
9470
9471 # AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE])
9472 # AM_INIT_AUTOMAKE([OPTIONS])
9473 # -----------------------------------------------
9474 # The call with PACKAGE and VERSION arguments is the old style
9475 # call (pre autoconf-2.50), which is being phased out. PACKAGE
9476 # and VERSION should now be passed to AC_INIT and removed from
9477 # the call to AM_INIT_AUTOMAKE.
9478 # We support both call styles for the transition. After
9479 # the next Automake release, Autoconf can make the AC_INIT
9480 # arguments mandatory, and then we can depend on a new Autoconf
9481 # release and drop the old call support.
9482 AC_DEFUN([AM_INIT_AUTOMAKE],
9483 [AC_PREREQ([2.65])dnl
9484 dnl Autoconf wants to disallow AM_ names. We explicitly allow
9485 dnl the ones we care about.
9486 m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl
9487 AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl
9488 AC_REQUIRE([AC_PROG_INSTALL])dnl
9489 if test "`cd $srcdir && pwd`" != "`pwd`"; then
9490 # Use -I$(srcdir) only when $(srcdir) != ., so that make's output
9491 # is not polluted with repeated "-I."
9492 AC_SUBST([am__isrc], [' -I$(srcdir)'])_AM_SUBST_NOTMAKE([am__isrc])dnl
9493 # test to see if srcdir already configured
9494 if test -f $srcdir/config.status; then
9495 AC_MSG_ERROR([source directory already configured; run "make distclean" there first])
9496 fi
9497 fi
9498
9499 # test whether we have cygpath
9500 if test -z "$CYGPATH_W"; then
9501 if (cygpath --version) >/dev/null 2>/dev/null; then
9502 CYGPATH_W='cygpath -w'
9503 else
9504 CYGPATH_W=echo
9505 fi
9506 fi
9507 AC_SUBST([CYGPATH_W])
9508
9509 # Define the identity of the package.
9510 dnl Distinguish between old-style and new-style calls.
9511 m4_ifval([$2],
9512 [AC_DIAGNOSE([obsolete],
9513 [$0: two- and three-arguments forms are deprecated.])
9514 m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl
9515 AC_SUBST([PACKAGE], [$1])dnl
9516 AC_SUBST([VERSION], [$2])],
9517 [_AM_SET_OPTIONS([$1])dnl
9518 dnl Diagnose old-style AC_INIT with new-style AM_AUTOMAKE_INIT.
9519 m4_if(
9520 m4_ifdef([AC_PACKAGE_NAME], [ok]):m4_ifdef([AC_PACKAGE_VERSION], [ok]),
9521 [ok:ok],,
9522 [m4_fatal([AC_INIT should be called with package and version arguments])])dnl
9523 AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl
9524 AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl
9525
9526 _AM_IF_OPTION([no-define],,
9527 [AC_DEFINE_UNQUOTED([PACKAGE], ["$PACKAGE"], [Name of package])
9528 AC_DEFINE_UNQUOTED([VERSION], ["$VERSION"], [Version number of package])])dnl
9529
9530 # Some tools Automake needs.
9531 AC_REQUIRE([AM_SANITY_CHECK])dnl
9532 AC_REQUIRE([AC_ARG_PROGRAM])dnl
9533 AM_MISSING_PROG([ACLOCAL], [aclocal-${am__api_version}])
9534 AM_MISSING_PROG([AUTOCONF], [autoconf])
9535 AM_MISSING_PROG([AUTOMAKE], [automake-${am__api_version}])
9536 AM_MISSING_PROG([AUTOHEADER], [autoheader])
9537 AM_MISSING_PROG([MAKEINFO], [makeinfo])
9538 AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
9539 AC_REQUIRE([AM_PROG_INSTALL_STRIP])dnl
9540 AC_REQUIRE([AC_PROG_MKDIR_P])dnl
9541 # For better backward compatibility. To be removed once Automake 1.9.x
9542 # dies out for good. For more background, see:
9543 # <https://lists.gnu.org/archive/html/automake/2012-07/msg00001.html>
9544 # <https://lists.gnu.org/archive/html/automake/2012-07/msg00014.html>
9545 AC_SUBST([mkdir_p], ['$(MKDIR_P)'])
9546 # We need awk for the "check" target (and possibly the TAP driver). The
9547 # system "awk" is bad on some platforms.
9548 AC_REQUIRE([AC_PROG_AWK])dnl
9549 AC_REQUIRE([AC_PROG_MAKE_SET])dnl
9550 AC_REQUIRE([AM_SET_LEADING_DOT])dnl
9551 _AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])],
9552 [_AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])],
9553 [_AM_PROG_TAR([v7])])])
9554 _AM_IF_OPTION([no-dependencies],,
9555 [AC_PROVIDE_IFELSE([AC_PROG_CC],
9556 [_AM_DEPENDENCIES([CC])],
9557 [m4_define([AC_PROG_CC],
9558 m4_defn([AC_PROG_CC])[_AM_DEPENDENCIES([CC])])])dnl
9559 AC_PROVIDE_IFELSE([AC_PROG_CXX],
9560 [_AM_DEPENDENCIES([CXX])],
9561 [m4_define([AC_PROG_CXX],
9562 m4_defn([AC_PROG_CXX])[_AM_DEPENDENCIES([CXX])])])dnl
9563 AC_PROVIDE_IFELSE([AC_PROG_OBJC],
9564 [_AM_DEPENDENCIES([OBJC])],
9565 [m4_define([AC_PROG_OBJC],
9566 m4_defn([AC_PROG_OBJC])[_AM_DEPENDENCIES([OBJC])])])dnl
9567 AC_PROVIDE_IFELSE([AC_PROG_OBJCXX],
9568 [_AM_DEPENDENCIES([OBJCXX])],
9569 [m4_define([AC_PROG_OBJCXX],
9570 m4_defn([AC_PROG_OBJCXX])[_AM_DEPENDENCIES([OBJCXX])])])dnl
9571 ])
9572 AC_REQUIRE([AM_SILENT_RULES])dnl
9573 dnl The testsuite driver may need to know about EXEEXT, so add the
9574 dnl 'am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen. This
9575 dnl macro is hooked onto _AC_COMPILER_EXEEXT early, see below.
9576 AC_CONFIG_COMMANDS_PRE(dnl
9577 [m4_provide_if([_AM_COMPILER_EXEEXT],
9578 [AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])])])dnl
9579
9580 # POSIX will say in a future version that running "rm -f" with no argument
9581 # is OK; and we want to be able to make that assumption in our Makefile
9582 # recipes. So use an aggressive probe to check that the usage we want is
9583 # actually supported "in the wild" to an acceptable degree.
9584 # See automake bug#10828.
9585 # To make any issue more visible, cause the running configure to be aborted
9586 # by default if the 'rm' program in use doesn't match our expectations; the
9587 # user can still override this though.
9588 if rm -f && rm -fr && rm -rf; then : OK; else
9589 cat >&2 <<'END'
9590 Oops!
9591
9592 Your 'rm' program seems unable to run without file operands specified
9593 on the command line, even when the '-f' option is present. This is contrary
9594 to the behaviour of most rm programs out there, and not conforming with
9595 the upcoming POSIX standard: <http://austingroupbugs.net/view.php?id=542>
9596
9597 Please tell bug-automake@gnu.org about your system, including the value
9598 of your $PATH and any error possibly output before this message. This
9599 can help us improve future automake versions.
9600
9601 END
9602 if test x"$ACCEPT_INFERIOR_RM_PROGRAM" = x"yes"; then
9603 echo 'Configuration will proceed anyway, since you have set the' >&2
9604 echo 'ACCEPT_INFERIOR_RM_PROGRAM variable to "yes"' >&2
9605 echo >&2
9606 else
9607 cat >&2 <<'END'
9608 Aborting the configuration process, to ensure you take notice of the issue.
9609
9610 You can download and install GNU coreutils to get an 'rm' implementation
9611 that behaves properly: <https://www.gnu.org/software/coreutils/>.
9612
9613 If you want to complete the configuration process using your problematic
9614 'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM
9615 to "yes", and re-run configure.
9616
9617 END
9618 AC_MSG_ERROR([Your 'rm' program is bad, sorry.])
9619 fi
9620 fi
9621 dnl The trailing newline in this macro's definition is deliberate, for
9622 dnl backward compatibility and to allow trailing 'dnl'-style comments
9623 dnl after the AM_INIT_AUTOMAKE invocation. See automake bug#16841.
9624 ])
9625
9626 dnl Hook into '_AC_COMPILER_EXEEXT' early to learn its expansion. Do not
9627 dnl add the conditional right here, as _AC_COMPILER_EXEEXT may be further
9628 dnl mangled by Autoconf and run in a shell conditional statement.
9629 m4_define([_AC_COMPILER_EXEEXT],
9630 m4_defn([_AC_COMPILER_EXEEXT])[m4_provide([_AM_COMPILER_EXEEXT])])
9631
9632 # When config.status generates a header, we must update the stamp-h file.
9633 # This file resides in the same directory as the config header
9634 # that is generated. The stamp files are numbered to have different names.
9635
9636 # Autoconf calls _AC_AM_CONFIG_HEADER_HOOK (when defined) in the
9637 # loop where config.status creates the headers, so we can generate
9638 # our stamp files there.
9639 AC_DEFUN([_AC_AM_CONFIG_HEADER_HOOK],
9640 [# Compute $1's index in $config_headers.
9641 _am_arg=$1
9642 _am_stamp_count=1
9643 for _am_header in $config_headers :; do
9644 case $_am_header in
9645 $_am_arg | $_am_arg:* )
9646 break ;;
9647 * )
9648 _am_stamp_count=`expr $_am_stamp_count + 1` ;;
9649 esac
9650 done
9651 echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
9652
9653 # Copyright (C) 2001-2020 Free Software Foundation, Inc.
9654 #
9655 # This file is free software; the Free Software Foundation
9656 # gives unlimited permission to copy and/or distribute it,
9657 # with or without modifications, as long as this notice is preserved.
9658
9659 # AM_PROG_INSTALL_SH
9660 # ------------------
9661 # Define $install_sh.
9662 AC_DEFUN([AM_PROG_INSTALL_SH],
9663 [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
9664 if test x"${install_sh+set}" != xset; then
9665 case $am_aux_dir in
9666 *\ * | *\ *)
9667 install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;;
9668 *)
9669 install_sh="\${SHELL} $am_aux_dir/install-sh"
9670 esac
9671 fi
9672 AC_SUBST([install_sh])])
9673
9674 # Copyright (C) 2003-2020 Free Software Foundation, Inc.
9675 #
9676 # This file is free software; the Free Software Foundation
9677 # gives unlimited permission to copy and/or distribute it,
9678 # with or without modifications, as long as this notice is preserved.
9679
9680 # Check whether the underlying file-system supports filenames
9681 # with a leading dot. For instance MS-DOS doesn't.
9682 AC_DEFUN([AM_SET_LEADING_DOT],
9683 [rm -rf .tst 2>/dev/null
9684 mkdir .tst 2>/dev/null
9685 if test -d .tst; then
9686 am__leading_dot=.
9687 else
9688 am__leading_dot=_
9689 fi
9690 rmdir .tst 2>/dev/null
9691 AC_SUBST([am__leading_dot])])
9692
9693 # Check to see how 'make' treats includes. -*- Autoconf -*-
9694
9695 # Copyright (C) 2001-2020 Free Software Foundation, Inc.
9696 #
9697 # This file is free software; the Free Software Foundation
9698 # gives unlimited permission to copy and/or distribute it,
9699 # with or without modifications, as long as this notice is preserved.
9700
9701 # AM_MAKE_INCLUDE()
9702 # -----------------
9703 # Check whether make has an 'include' directive that can support all
9704 # the idioms we need for our automatic dependency tracking code.
9705 AC_DEFUN([AM_MAKE_INCLUDE],
9706 [AC_MSG_CHECKING([whether ${MAKE-make} supports the include directive])
9707 cat > confinc.mk << 'END'
9708 am__doit:
9709 @echo this is the am__doit target >confinc.out
9710 .PHONY: am__doit
9711 END
9712 am__include="#"
9713 am__quote=
9714 # BSD make does it like this.
9715 echo '.include "confinc.mk" # ignored' > confmf.BSD
9716 # Other make implementations (GNU, Solaris 10, AIX) do it like this.
9717 echo 'include confinc.mk # ignored' > confmf.GNU
9718 _am_result=no
9719 for s in GNU BSD; do
9720 AM_RUN_LOG([${MAKE-make} -f confmf.$s && cat confinc.out])
9721 AS_CASE([$?:`cat confinc.out 2>/dev/null`],
9722 ['0:this is the am__doit target'],
9723 [AS_CASE([$s],
9724 [BSD], [am__include='.include' am__quote='"'],
9725 [am__include='include' am__quote=''])])
9726 if test "$am__include" != "#"; then
9727 _am_result="yes ($s style)"
9728 break
9729 fi
9730 done
9731 rm -f confinc.* confmf.*
9732 AC_MSG_RESULT([${_am_result}])
9733 AC_SUBST([am__include])])
9734 AC_SUBST([am__quote])])
9735
9736 # Fake the existence of programs that GNU maintainers use. -*- Autoconf -*-
9737
9738 # Copyright (C) 1997-2020 Free Software Foundation, Inc.
9739 #
9740 # This file is free software; the Free Software Foundation
9741 # gives unlimited permission to copy and/or distribute it,
9742 # with or without modifications, as long as this notice is preserved.
9743
9744 # AM_MISSING_PROG(NAME, PROGRAM)
9745 # ------------------------------
9746 AC_DEFUN([AM_MISSING_PROG],
9747 [AC_REQUIRE([AM_MISSING_HAS_RUN])
9748 $1=${$1-"${am_missing_run}$2"}
9749 AC_SUBST($1)])
9750
9751 # AM_MISSING_HAS_RUN
9752 # ------------------
9753 # Define MISSING if not defined so far and test if it is modern enough.
9754 # If it is, set am_missing_run to use it, otherwise, to nothing.
9755 AC_DEFUN([AM_MISSING_HAS_RUN],
9756 [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
9757 AC_REQUIRE_AUX_FILE([missing])dnl
9758 if test x"${MISSING+set}" != xset; then
9759 case $am_aux_dir in
9760 *\ * | *\ *)
9761 MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;;
9762 *)
9763 MISSING="\${SHELL} $am_aux_dir/missing" ;;
9764 esac
9765 fi
9766 # Use eval to expand $SHELL
9767 if eval "$MISSING --is-lightweight"; then
9768 am_missing_run="$MISSING "
9769 else
9770 am_missing_run=
9771 AC_MSG_WARN(['missing' script is too old or missing])
9772 fi
9773 ])
9774
9775 # Helper functions for option handling. -*- Autoconf -*-
9776
9777 # Copyright (C) 2001-2020 Free Software Foundation, Inc.
9778 #
9779 # This file is free software; the Free Software Foundation
9780 # gives unlimited permission to copy and/or distribute it,
9781 # with or without modifications, as long as this notice is preserved.
9782
9783 # _AM_MANGLE_OPTION(NAME)
9784 # -----------------------
9785 AC_DEFUN([_AM_MANGLE_OPTION],
9786 [[_AM_OPTION_]m4_bpatsubst($1, [[^a-zA-Z0-9_]], [_])])
9787
9788 # _AM_SET_OPTION(NAME)
9789 # --------------------
9790 # Set option NAME. Presently that only means defining a flag for this option.
9791 AC_DEFUN([_AM_SET_OPTION],
9792 [m4_define(_AM_MANGLE_OPTION([$1]), [1])])
9793
9794 # _AM_SET_OPTIONS(OPTIONS)
9795 # ------------------------
9796 # OPTIONS is a space-separated list of Automake options.
9797 AC_DEFUN([_AM_SET_OPTIONS],
9798 [m4_foreach_w([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])])
9799
9800 # _AM_IF_OPTION(OPTION, IF-SET, [IF-NOT-SET])
9801 # -------------------------------------------
9802 # Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
9803 AC_DEFUN([_AM_IF_OPTION],
9804 [m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
9805
9806 # Copyright (C) 1999-2020 Free Software Foundation, Inc.
9807 #
9808 # This file is free software; the Free Software Foundation
9809 # gives unlimited permission to copy and/or distribute it,
9810 # with or without modifications, as long as this notice is preserved.
9811
9812 # _AM_PROG_CC_C_O
9813 # ---------------
9814 # Like AC_PROG_CC_C_O, but changed for automake. We rewrite AC_PROG_CC
9815 # to automatically call this.
9816 AC_DEFUN([_AM_PROG_CC_C_O],
9817 [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
9818 AC_REQUIRE_AUX_FILE([compile])dnl
9819 AC_LANG_PUSH([C])dnl
9820 AC_CACHE_CHECK(
9821 [whether $CC understands -c and -o together],
9822 [am_cv_prog_cc_c_o],
9823 [AC_LANG_CONFTEST([AC_LANG_PROGRAM([])])
9824 # Make sure it works both with $CC and with simple cc.
9825 # Following AC_PROG_CC_C_O, we do the test twice because some
9826 # compilers refuse to overwrite an existing .o file with -o,
9827 # though they will create one.
9828 am_cv_prog_cc_c_o=yes
9829 for am_i in 1 2; do
9830 if AM_RUN_LOG([$CC -c conftest.$ac_ext -o conftest2.$ac_objext]) \
9831 && test -f conftest2.$ac_objext; then
9832 : OK
9833 else
9834 am_cv_prog_cc_c_o=no
9835 break
9836 fi
9837 done
9838 rm -f core conftest*
9839 unset am_i])
9840 if test "$am_cv_prog_cc_c_o" != yes; then
9841 # Losing compiler, so override with the script.
9842 # FIXME: It is wrong to rewrite CC.
9843 # But if we don't then we get into trouble of one sort or another.
9844 # A longer-term fix would be to have automake use am__CC in this case,
9845 # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)"
9846 CC="$am_aux_dir/compile $CC"
9847 fi
9848 AC_LANG_POP([C])])
9849
9850 # For backward compatibility.
9851 AC_DEFUN_ONCE([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC])])
9852
9853 # Copyright (C) 2001-2020 Free Software Foundation, Inc.
9854 #
9855 # This file is free software; the Free Software Foundation
9856 # gives unlimited permission to copy and/or distribute it,
9857 # with or without modifications, as long as this notice is preserved.
9858
9859 # AM_RUN_LOG(COMMAND)
9860 # -------------------
9861 # Run COMMAND, save the exit status in ac_status, and log it.
9862 # (This has been adapted from Autoconf's _AC_RUN_LOG macro.)
9863 AC_DEFUN([AM_RUN_LOG],
9864 [{ echo "$as_me:$LINENO: $1" >&AS_MESSAGE_LOG_FD
9865 ($1) >&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD
9866 ac_status=$?
9867 echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
9868 (exit $ac_status); }])
9869
9870 # Check to make sure that the build environment is sane. -*- Autoconf -*-
9871
9872 # Copyright (C) 1996-2020 Free Software Foundation, Inc.
9873 #
9874 # This file is free software; the Free Software Foundation
9875 # gives unlimited permission to copy and/or distribute it,
9876 # with or without modifications, as long as this notice is preserved.
9877
9878 # AM_SANITY_CHECK
9879 # ---------------
9880 AC_DEFUN([AM_SANITY_CHECK],
9881 [AC_MSG_CHECKING([whether build environment is sane])
9882 # Reject unsafe characters in $srcdir or the absolute working directory
9883 # name. Accept space and tab only in the latter.
9884 am_lf='
9885 '
9886 case `pwd` in
9887 *[[\\\"\#\$\&\'\`$am_lf]]*)
9888 AC_MSG_ERROR([unsafe absolute working directory name]);;
9889 esac
9890 case $srcdir in
9891 *[[\\\"\#\$\&\'\`$am_lf\ \ ]]*)
9892 AC_MSG_ERROR([unsafe srcdir value: '$srcdir']);;
9893 esac
9894
9895 # Do 'set' in a subshell so we don't clobber the current shell's
9896 # arguments. Must try -L first in case configure is actually a
9897 # symlink; some systems play weird games with the mod time of symlinks
9898 # (eg FreeBSD returns the mod time of the symlink's containing
9899 # directory).
9900 if (
9901 am_has_slept=no
9902 for am_try in 1 2; do
9903 echo "timestamp, slept: $am_has_slept" > conftest.file
9904 set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null`
9905 if test "$[*]" = "X"; then
9906 # -L didn't work.
9907 set X `ls -t "$srcdir/configure" conftest.file`
9908 fi
9909 if test "$[*]" != "X $srcdir/configure conftest.file" \
9910 && test "$[*]" != "X conftest.file $srcdir/configure"; then
9911
9912 # If neither matched, then we have a broken ls. This can happen
9913 # if, for instance, CONFIG_SHELL is bash and it inherits a
9914 # broken ls alias from the environment. This has actually
9915 # happened. Such a system could not be considered "sane".
9916 AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken
9917 alias in your environment])
9918 fi
9919 if test "$[2]" = conftest.file || test $am_try -eq 2; then
9920 break
9921 fi
9922 # Just in case.
9923 sleep 1
9924 am_has_slept=yes
9925 done
9926 test "$[2]" = conftest.file
9927 )
9928 then
9929 # Ok.
9930 :
9931 else
9932 AC_MSG_ERROR([newly created file is older than distributed files!
9933 Check your system clock])
9934 fi
9935 AC_MSG_RESULT([yes])
9936 # If we didn't sleep, we still need to ensure time stamps of config.status and
9937 # generated files are strictly newer.
9938 am_sleep_pid=
9939 if grep 'slept: no' conftest.file >/dev/null 2>&1; then
9940 ( sleep 1 ) &
9941 am_sleep_pid=$!
9942 fi
9943 AC_CONFIG_COMMANDS_PRE(
9944 [AC_MSG_CHECKING([that generated files are newer than configure])
9945 if test -n "$am_sleep_pid"; then
9946 # Hide warnings about reused PIDs.
9947 wait $am_sleep_pid 2>/dev/null
9948 fi
9949 AC_MSG_RESULT([done])])
9950 rm -f conftest.file
9951 ])
9952
9953 # Copyright (C) 2009-2020 Free Software Foundation, Inc.
9954 #
9955 # This file is free software; the Free Software Foundation
9956 # gives unlimited permission to copy and/or distribute it,
9957 # with or without modifications, as long as this notice is preserved.
9958
9959 # AM_SILENT_RULES([DEFAULT])
9960 # --------------------------
9961 # Enable less verbose build rules; with the default set to DEFAULT
9962 # ("yes" being less verbose, "no" or empty being verbose).
9963 AC_DEFUN([AM_SILENT_RULES],
9964 [AC_ARG_ENABLE([silent-rules], [dnl
9965 AS_HELP_STRING(
9966 [--enable-silent-rules],
9967 [less verbose build output (undo: "make V=1")])
9968 AS_HELP_STRING(
9969 [--disable-silent-rules],
9970 [verbose build output (undo: "make V=0")])dnl
9971 ])
9972 case $enable_silent_rules in @%:@ (((
9973 yes) AM_DEFAULT_VERBOSITY=0;;
9974 no) AM_DEFAULT_VERBOSITY=1;;
9975 *) AM_DEFAULT_VERBOSITY=m4_if([$1], [yes], [0], [1]);;
9976 esac
9977 dnl
9978 dnl A few 'make' implementations (e.g., NonStop OS and NextStep)
9979 dnl do not support nested variable expansions.
9980 dnl See automake bug#9928 and bug#10237.
9981 am_make=${MAKE-make}
9982 AC_CACHE_CHECK([whether $am_make supports nested variables],
9983 [am_cv_make_support_nested_variables],
9984 [if AS_ECHO([['TRUE=$(BAR$(V))
9985 BAR0=false
9986 BAR1=true
9987 V=1
9988 am__doit:
9989 @$(TRUE)
9990 .PHONY: am__doit']]) | $am_make -f - >/dev/null 2>&1; then
9991 am_cv_make_support_nested_variables=yes
9992 else
9993 am_cv_make_support_nested_variables=no
9994 fi])
9995 if test $am_cv_make_support_nested_variables = yes; then
9996 dnl Using '$V' instead of '$(V)' breaks IRIX make.
9997 AM_V='$(V)'
9998 AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)'
9999 else
10000 AM_V=$AM_DEFAULT_VERBOSITY
10001 AM_DEFAULT_V=$AM_DEFAULT_VERBOSITY
10002 fi
10003 AC_SUBST([AM_V])dnl
10004 AM_SUBST_NOTMAKE([AM_V])dnl
10005 AC_SUBST([AM_DEFAULT_V])dnl
10006 AM_SUBST_NOTMAKE([AM_DEFAULT_V])dnl
10007 AC_SUBST([AM_DEFAULT_VERBOSITY])dnl
10008 AM_BACKSLASH='\'
10009 AC_SUBST([AM_BACKSLASH])dnl
10010 _AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl
10011 ])
10012
10013 # Copyright (C) 2001-2020 Free Software Foundation, Inc.
10014 #
10015 # This file is free software; the Free Software Foundation
10016 # gives unlimited permission to copy and/or distribute it,
10017 # with or without modifications, as long as this notice is preserved.
10018
10019 # AM_PROG_INSTALL_STRIP
10020 # ---------------------
10021 # One issue with vendor 'install' (even GNU) is that you can't
10022 # specify the program used to strip binaries. This is especially
10023 # annoying in cross-compiling environments, where the build's strip
10024 # is unlikely to handle the host's binaries.
10025 # Fortunately install-sh will honor a STRIPPROG variable, so we
10026 # always use install-sh in "make install-strip", and initialize
10027 # STRIPPROG with the value of the STRIP variable (set by the user).
10028 AC_DEFUN([AM_PROG_INSTALL_STRIP],
10029 [AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
10030 # Installed binaries are usually stripped using 'strip' when the user
10031 # run "make install-strip". However 'strip' might not be the right
10032 # tool to use in cross-compilation environments, therefore Automake
10033 # will honor the 'STRIP' environment variable to overrule this program.
10034 dnl Don't test for $cross_compiling = yes, because it might be 'maybe'.
10035 if test "$cross_compiling" != no; then
10036 AC_CHECK_TOOL([STRIP], [strip], :)
10037 fi
10038 INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
10039 AC_SUBST([INSTALL_STRIP_PROGRAM])])
10040
10041 # Copyright (C) 2006-2020 Free Software Foundation, Inc.
10042 #
10043 # This file is free software; the Free Software Foundation
10044 # gives unlimited permission to copy and/or distribute it,
10045 # with or without modifications, as long as this notice is preserved.
10046
10047 # _AM_SUBST_NOTMAKE(VARIABLE)
10048 # ---------------------------
10049 # Prevent Automake from outputting VARIABLE = @VARIABLE@ in Makefile.in.
10050 # This macro is traced by Automake.
10051 AC_DEFUN([_AM_SUBST_NOTMAKE])
10052
10053 # AM_SUBST_NOTMAKE(VARIABLE)
10054 # --------------------------
10055 # Public sister of _AM_SUBST_NOTMAKE.
10056 AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)])
10057
10058 # Check how to create a tarball. -*- Autoconf -*-
10059
10060 # Copyright (C) 2004-2020 Free Software Foundation, Inc.
10061 #
10062 # This file is free software; the Free Software Foundation
10063 # gives unlimited permission to copy and/or distribute it,
10064 # with or without modifications, as long as this notice is preserved.
10065
10066 # _AM_PROG_TAR(FORMAT)
10067 # --------------------
10068 # Check how to create a tarball in format FORMAT.
10069 # FORMAT should be one of 'v7', 'ustar', or 'pax'.
10070 #
10071 # Substitute a variable $(am__tar) that is a command
10072 # writing to stdout a FORMAT-tarball containing the directory
10073 # $tardir.
10074 # tardir=directory && $(am__tar) > result.tar
10075 #
10076 # Substitute a variable $(am__untar) that extract such
10077 # a tarball read from stdin.
10078 # $(am__untar) < result.tar
10079 #
10080 AC_DEFUN([_AM_PROG_TAR],
10081 [# Always define AMTAR for backward compatibility. Yes, it's still used
10082 # in the wild :-( We should find a proper way to deprecate it ...
10083 AC_SUBST([AMTAR], ['$${TAR-tar}'])
10084
10085 # We'll loop over all known methods to create a tar archive until one works.
10086 _am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none'
10087
10088 m4_if([$1], [v7],
10089 [am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'],
10090
10091 [m4_case([$1],
10092 [ustar],
10093 [# The POSIX 1988 'ustar' format is defined with fixed-size fields.
10094 # There is notably a 21 bits limit for the UID and the GID. In fact,
10095 # the 'pax' utility can hang on bigger UID/GID (see automake bug#8343
10096 # and bug#13588).
10097 am_max_uid=2097151 # 2^21 - 1
10098 am_max_gid=$am_max_uid
10099 # The $UID and $GID variables are not portable, so we need to resort
10100 # to the POSIX-mandated id(1) utility. Errors in the 'id' calls
10101 # below are definitely unexpected, so allow the users to see them
10102 # (that is, avoid stderr redirection).
10103 am_uid=`id -u || echo unknown`
10104 am_gid=`id -g || echo unknown`
10105 AC_MSG_CHECKING([whether UID '$am_uid' is supported by ustar format])
10106 if test $am_uid -le $am_max_uid; then
10107 AC_MSG_RESULT([yes])
10108 else
10109 AC_MSG_RESULT([no])
10110 _am_tools=none
10111 fi
10112 AC_MSG_CHECKING([whether GID '$am_gid' is supported by ustar format])
10113 if test $am_gid -le $am_max_gid; then
10114 AC_MSG_RESULT([yes])
10115 else
10116 AC_MSG_RESULT([no])
10117 _am_tools=none
10118 fi],
10119
10120 [pax],
10121 [],
10122
10123 [m4_fatal([Unknown tar format])])
10124
10125 AC_MSG_CHECKING([how to create a $1 tar archive])
10126
10127 # Go ahead even if we have the value already cached. We do so because we
10128 # need to set the values for the 'am__tar' and 'am__untar' variables.
10129 _am_tools=${am_cv_prog_tar_$1-$_am_tools}
10130
10131 for _am_tool in $_am_tools; do
10132 case $_am_tool in
10133 gnutar)
10134 for _am_tar in tar gnutar gtar; do
10135 AM_RUN_LOG([$_am_tar --version]) && break
10136 done
10137 am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$$tardir"'
10138 am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$tardir"'
10139 am__untar="$_am_tar -xf -"
10140 ;;
10141 plaintar)
10142 # Must skip GNU tar: if it does not support --format= it doesn't create
10143 # ustar tarball either.
10144 (tar --version) >/dev/null 2>&1 && continue
10145 am__tar='tar chf - "$$tardir"'
10146 am__tar_='tar chf - "$tardir"'
10147 am__untar='tar xf -'
10148 ;;
10149 pax)
10150 am__tar='pax -L -x $1 -w "$$tardir"'
10151 am__tar_='pax -L -x $1 -w "$tardir"'
10152 am__untar='pax -r'
10153 ;;
10154 cpio)
10155 am__tar='find "$$tardir" -print | cpio -o -H $1 -L'
10156 am__tar_='find "$tardir" -print | cpio -o -H $1 -L'
10157 am__untar='cpio -i -H $1 -d'
10158 ;;
10159 none)
10160 am__tar=false
10161 am__tar_=false
10162 am__untar=false
10163 ;;
10164 esac
10165
10166 # If the value was cached, stop now. We just wanted to have am__tar
10167 # and am__untar set.
10168 test -n "${am_cv_prog_tar_$1}" && break
10169
10170 # tar/untar a dummy directory, and stop if the command works.
10171 rm -rf conftest.dir
10172 mkdir conftest.dir
10173 echo GrepMe > conftest.dir/file
10174 AM_RUN_LOG([tardir=conftest.dir && eval $am__tar_ >conftest.tar])
10175 rm -rf conftest.dir
10176 if test -s conftest.tar; then
10177 AM_RUN_LOG([$am__untar <conftest.tar])
10178 AM_RUN_LOG([cat conftest.dir/file])
10179 grep GrepMe conftest.dir/file >/dev/null 2>&1 && break
10180 fi
10181 done
10182 rm -rf conftest.dir
10183
10184 AC_CACHE_VAL([am_cv_prog_tar_$1], [am_cv_prog_tar_$1=$_am_tool])
10185 AC_MSG_RESULT([$am_cv_prog_tar_$1])])
10186
10187 AC_SUBST([am__tar])
10188 AC_SUBST([am__untar])
10189 ]) # _AM_PROG_TAR
10190
+0
-17
bootstrap less more
0 #! /bin/sh
1
2 case $OSTYPE in
3 darwin*)
4 LIBTOOLIZE=glibtoolize
5 ;;
6 *)
7 LIBTOOLIZE=libtoolize
8 ;;
9 esac
10
11 aclocal -I . && \
12 autoheader && \
13 $LIBTOOLIZE --automake && \
14 automake --add-missing && \
15 autoconf && \
16 echo "Ready to run ./configure"
0 #! /bin/sh
1 # Wrapper for compilers which do not understand '-c -o'.
2
3 scriptversion=2018-03-07.03; # UTC
4
5 # Copyright (C) 1999-2020 Free Software Foundation, Inc.
6 # Written by Tom Tromey <tromey@cygnus.com>.
7 #
8 # This program is free software; you can redistribute it and/or modify
9 # it under the terms of the GNU General Public License as published by
10 # the Free Software Foundation; either version 2, or (at your option)
11 # any later version.
12 #
13 # This program is distributed in the hope that it will be useful,
14 # but WITHOUT ANY WARRANTY; without even the implied warranty of
15 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 # GNU General Public License for more details.
17 #
18 # You should have received a copy of the GNU General Public License
19 # along with this program. If not, see <https://www.gnu.org/licenses/>.
20
21 # As a special exception to the GNU General Public License, if you
22 # distribute this file as part of a program that contains a
23 # configuration script generated by Autoconf, you may include it under
24 # the same distribution terms that you use for the rest of that program.
25
26 # This file is maintained in Automake, please report
27 # bugs to <bug-automake@gnu.org> or send patches to
28 # <automake-patches@gnu.org>.
29
30 nl='
31 '
32
33 # We need space, tab and new line, in precisely that order. Quoting is
34 # there to prevent tools from complaining about whitespace usage.
35 IFS=" "" $nl"
36
37 file_conv=
38
39 # func_file_conv build_file lazy
40 # Convert a $build file to $host form and store it in $file
41 # Currently only supports Windows hosts. If the determined conversion
42 # type is listed in (the comma separated) LAZY, no conversion will
43 # take place.
44 func_file_conv ()
45 {
46 file=$1
47 case $file in
48 / | /[!/]*) # absolute file, and not a UNC file
49 if test -z "$file_conv"; then
50 # lazily determine how to convert abs files
51 case `uname -s` in
52 MINGW*)
53 file_conv=mingw
54 ;;
55 CYGWIN* | MSYS*)
56 file_conv=cygwin
57 ;;
58 *)
59 file_conv=wine
60 ;;
61 esac
62 fi
63 case $file_conv/,$2, in
64 *,$file_conv,*)
65 ;;
66 mingw/*)
67 file=`cmd //C echo "$file " | sed -e 's/"\(.*\) " *$/\1/'`
68 ;;
69 cygwin/* | msys/*)
70 file=`cygpath -m "$file" || echo "$file"`
71 ;;
72 wine/*)
73 file=`winepath -w "$file" || echo "$file"`
74 ;;
75 esac
76 ;;
77 esac
78 }
79
80 # func_cl_dashL linkdir
81 # Make cl look for libraries in LINKDIR
82 func_cl_dashL ()
83 {
84 func_file_conv "$1"
85 if test -z "$lib_path"; then
86 lib_path=$file
87 else
88 lib_path="$lib_path;$file"
89 fi
90 linker_opts="$linker_opts -LIBPATH:$file"
91 }
92
93 # func_cl_dashl library
94 # Do a library search-path lookup for cl
95 func_cl_dashl ()
96 {
97 lib=$1
98 found=no
99 save_IFS=$IFS
100 IFS=';'
101 for dir in $lib_path $LIB
102 do
103 IFS=$save_IFS
104 if $shared && test -f "$dir/$lib.dll.lib"; then
105 found=yes
106 lib=$dir/$lib.dll.lib
107 break
108 fi
109 if test -f "$dir/$lib.lib"; then
110 found=yes
111 lib=$dir/$lib.lib
112 break
113 fi
114 if test -f "$dir/lib$lib.a"; then
115 found=yes
116 lib=$dir/lib$lib.a
117 break
118 fi
119 done
120 IFS=$save_IFS
121
122 if test "$found" != yes; then
123 lib=$lib.lib
124 fi
125 }
126
127 # func_cl_wrapper cl arg...
128 # Adjust compile command to suit cl
129 func_cl_wrapper ()
130 {
131 # Assume a capable shell
132 lib_path=
133 shared=:
134 linker_opts=
135 for arg
136 do
137 if test -n "$eat"; then
138 eat=
139 else
140 case $1 in
141 -o)
142 # configure might choose to run compile as 'compile cc -o foo foo.c'.
143 eat=1
144 case $2 in
145 *.o | *.[oO][bB][jJ])
146 func_file_conv "$2"
147 set x "$@" -Fo"$file"
148 shift
149 ;;
150 *)
151 func_file_conv "$2"
152 set x "$@" -Fe"$file"
153 shift
154 ;;
155 esac
156 ;;
157 -I)
158 eat=1
159 func_file_conv "$2" mingw
160 set x "$@" -I"$file"
161 shift
162 ;;
163 -I*)
164 func_file_conv "${1#-I}" mingw
165 set x "$@" -I"$file"
166 shift
167 ;;
168 -l)
169 eat=1
170 func_cl_dashl "$2"
171 set x "$@" "$lib"
172 shift
173 ;;
174 -l*)
175 func_cl_dashl "${1#-l}"
176 set x "$@" "$lib"
177 shift
178 ;;
179 -L)
180 eat=1
181 func_cl_dashL "$2"
182 ;;
183 -L*)
184 func_cl_dashL "${1#-L}"
185 ;;
186 -static)
187 shared=false
188 ;;
189 -Wl,*)
190 arg=${1#-Wl,}
191 save_ifs="$IFS"; IFS=','
192 for flag in $arg; do
193 IFS="$save_ifs"
194 linker_opts="$linker_opts $flag"
195 done
196 IFS="$save_ifs"
197 ;;
198 -Xlinker)
199 eat=1
200 linker_opts="$linker_opts $2"
201 ;;
202 -*)
203 set x "$@" "$1"
204 shift
205 ;;
206 *.cc | *.CC | *.cxx | *.CXX | *.[cC]++)
207 func_file_conv "$1"
208 set x "$@" -Tp"$file"
209 shift
210 ;;
211 *.c | *.cpp | *.CPP | *.lib | *.LIB | *.Lib | *.OBJ | *.obj | *.[oO])
212 func_file_conv "$1" mingw
213 set x "$@" "$file"
214 shift
215 ;;
216 *)
217 set x "$@" "$1"
218 shift
219 ;;
220 esac
221 fi
222 shift
223 done
224 if test -n "$linker_opts"; then
225 linker_opts="-link$linker_opts"
226 fi
227 exec "$@" $linker_opts
228 exit 1
229 }
230
231 eat=
232
233 case $1 in
234 '')
235 echo "$0: No command. Try '$0 --help' for more information." 1>&2
236 exit 1;
237 ;;
238 -h | --h*)
239 cat <<\EOF
240 Usage: compile [--help] [--version] PROGRAM [ARGS]
241
242 Wrapper for compilers which do not understand '-c -o'.
243 Remove '-o dest.o' from ARGS, run PROGRAM with the remaining
244 arguments, and rename the output as expected.
245
246 If you are trying to build a whole package this is not the
247 right script to run: please start by reading the file 'INSTALL'.
248
249 Report bugs to <bug-automake@gnu.org>.
250 EOF
251 exit $?
252 ;;
253 -v | --v*)
254 echo "compile $scriptversion"
255 exit $?
256 ;;
257 cl | *[/\\]cl | cl.exe | *[/\\]cl.exe | \
258 icl | *[/\\]icl | icl.exe | *[/\\]icl.exe )
259 func_cl_wrapper "$@" # Doesn't return...
260 ;;
261 esac
262
263 ofile=
264 cfile=
265
266 for arg
267 do
268 if test -n "$eat"; then
269 eat=
270 else
271 case $1 in
272 -o)
273 # configure might choose to run compile as 'compile cc -o foo foo.c'.
274 # So we strip '-o arg' only if arg is an object.
275 eat=1
276 case $2 in
277 *.o | *.obj)
278 ofile=$2
279 ;;
280 *)
281 set x "$@" -o "$2"
282 shift
283 ;;
284 esac
285 ;;
286 *.c)
287 cfile=$1
288 set x "$@" "$1"
289 shift
290 ;;
291 *)
292 set x "$@" "$1"
293 shift
294 ;;
295 esac
296 fi
297 shift
298 done
299
300 if test -z "$ofile" || test -z "$cfile"; then
301 # If no '-o' option was seen then we might have been invoked from a
302 # pattern rule where we don't need one. That is ok -- this is a
303 # normal compilation that the losing compiler can handle. If no
304 # '.c' file was seen then we are probably linking. That is also
305 # ok.
306 exec "$@"
307 fi
308
309 # Name of file we expect compiler to create.
310 cofile=`echo "$cfile" | sed 's|^.*[\\/]||; s|^[a-zA-Z]:||; s/\.c$/.o/'`
311
312 # Create the lock directory.
313 # Note: use '[/\\:.-]' here to ensure that we don't use the same name
314 # that we are using for the .o file. Also, base the name on the expected
315 # object file name, since that is what matters with a parallel build.
316 lockdir=`echo "$cofile" | sed -e 's|[/\\:.-]|_|g'`.d
317 while true; do
318 if mkdir "$lockdir" >/dev/null 2>&1; then
319 break
320 fi
321 sleep 1
322 done
323 # FIXME: race condition here if user kills between mkdir and trap.
324 trap "rmdir '$lockdir'; exit 1" 1 2 15
325
326 # Run the compile.
327 "$@"
328 ret=$?
329
330 if test -f "$cofile"; then
331 test "$cofile" = "$ofile" || mv "$cofile" "$ofile"
332 elif test -f "${cofile}bj"; then
333 test "${cofile}bj" = "$ofile" || mv "${cofile}bj" "$ofile"
334 fi
335
336 rmdir "$lockdir"
337 exit $ret
338
339 # Local Variables:
340 # mode: shell-script
341 # sh-indentation: 2
342 # eval: (add-hook 'before-save-hook 'time-stamp)
343 # time-stamp-start: "scriptversion="
344 # time-stamp-format: "%:y-%02m-%02d.%02H"
345 # time-stamp-time-zone: "UTC0"
346 # time-stamp-end: "; # UTC"
347 # End:
0 #! /bin/sh
1 # Attempt to guess a canonical system name.
2 # Copyright 1992-2018 Free Software Foundation, Inc.
3
4 timestamp='2018-02-24'
5
6 # This file is free software; you can redistribute it and/or modify it
7 # under the terms of the GNU General Public License as published by
8 # the Free Software Foundation; either version 3 of the License, or
9 # (at your option) any later version.
10 #
11 # This program is distributed in the hope that it will be useful, but
12 # WITHOUT ANY WARRANTY; without even the implied warranty of
13 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 # General Public License for more details.
15 #
16 # You should have received a copy of the GNU General Public License
17 # along with this program; if not, see <https://www.gnu.org/licenses/>.
18 #
19 # As a special exception to the GNU General Public License, if you
20 # distribute this file as part of a program that contains a
21 # configuration script generated by Autoconf, you may include it under
22 # the same distribution terms that you use for the rest of that
23 # program. This Exception is an additional permission under section 7
24 # of the GNU General Public License, version 3 ("GPLv3").
25 #
26 # Originally written by Per Bothner; maintained since 2000 by Ben Elliston.
27 #
28 # You can get the latest version of this script from:
29 # https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess
30 #
31 # Please send patches to <config-patches@gnu.org>.
32
33
34 me=`echo "$0" | sed -e 's,.*/,,'`
35
36 usage="\
37 Usage: $0 [OPTION]
38
39 Output the configuration name of the system \`$me' is run on.
40
41 Options:
42 -h, --help print this help, then exit
43 -t, --time-stamp print date of last modification, then exit
44 -v, --version print version number, then exit
45
46 Report bugs and patches to <config-patches@gnu.org>."
47
48 version="\
49 GNU config.guess ($timestamp)
50
51 Originally written by Per Bothner.
52 Copyright 1992-2018 Free Software Foundation, Inc.
53
54 This is free software; see the source for copying conditions. There is NO
55 warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
56
57 help="
58 Try \`$me --help' for more information."
59
60 # Parse command line
61 while test $# -gt 0 ; do
62 case $1 in
63 --time-stamp | --time* | -t )
64 echo "$timestamp" ; exit ;;
65 --version | -v )
66 echo "$version" ; exit ;;
67 --help | --h* | -h )
68 echo "$usage"; exit ;;
69 -- ) # Stop option processing
70 shift; break ;;
71 - ) # Use stdin as input.
72 break ;;
73 -* )
74 echo "$me: invalid option $1$help" >&2
75 exit 1 ;;
76 * )
77 break ;;
78 esac
79 done
80
81 if test $# != 0; then
82 echo "$me: too many arguments$help" >&2
83 exit 1
84 fi
85
86 trap 'exit 1' 1 2 15
87
88 # CC_FOR_BUILD -- compiler used by this script. Note that the use of a
89 # compiler to aid in system detection is discouraged as it requires
90 # temporary files to be created and, as you can see below, it is a
91 # headache to deal with in a portable fashion.
92
93 # Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
94 # use `HOST_CC' if defined, but it is deprecated.
95
96 # Portable tmp directory creation inspired by the Autoconf team.
97
98 set_cc_for_build='
99 trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
100 trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
101 : ${TMPDIR=/tmp} ;
102 { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
103 { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
104 { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
105 { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
106 dummy=$tmp/dummy ;
107 tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;
108 case $CC_FOR_BUILD,$HOST_CC,$CC in
109 ,,) echo "int x;" > "$dummy.c" ;
110 for c in cc gcc c89 c99 ; do
111 if ($c -c -o "$dummy.o" "$dummy.c") >/dev/null 2>&1 ; then
112 CC_FOR_BUILD="$c"; break ;
113 fi ;
114 done ;
115 if test x"$CC_FOR_BUILD" = x ; then
116 CC_FOR_BUILD=no_compiler_found ;
117 fi
118 ;;
119 ,,*) CC_FOR_BUILD=$CC ;;
120 ,*,*) CC_FOR_BUILD=$HOST_CC ;;
121 esac ; set_cc_for_build= ;'
122
123 # This is needed to find uname on a Pyramid OSx when run in the BSD universe.
124 # (ghazi@noc.rutgers.edu 1994-08-24)
125 if (test -f /.attbin/uname) >/dev/null 2>&1 ; then
126 PATH=$PATH:/.attbin ; export PATH
127 fi
128
129 UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
130 UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
131 UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown
132 UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
133
134 case "$UNAME_SYSTEM" in
135 Linux|GNU|GNU/*)
136 # If the system lacks a compiler, then just pick glibc.
137 # We could probably try harder.
138 LIBC=gnu
139
140 eval "$set_cc_for_build"
141 cat <<-EOF > "$dummy.c"
142 #include <features.h>
143 #if defined(__UCLIBC__)
144 LIBC=uclibc
145 #elif defined(__dietlibc__)
146 LIBC=dietlibc
147 #else
148 LIBC=gnu
149 #endif
150 EOF
151 eval "`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^LIBC' | sed 's, ,,g'`"
152
153 # If ldd exists, use it to detect musl libc.
154 if command -v ldd >/dev/null && \
155 ldd --version 2>&1 | grep -q ^musl
156 then
157 LIBC=musl
158 fi
159 ;;
160 esac
161
162 # Note: order is significant - the case branches are not exclusive.
163
164 case "$UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION" in
165 *:NetBSD:*:*)
166 # NetBSD (nbsd) targets should (where applicable) match one or
167 # more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*,
168 # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently
169 # switched to ELF, *-*-netbsd* would select the old
170 # object file format. This provides both forward
171 # compatibility and a consistent mechanism for selecting the
172 # object file format.
173 #
174 # Note: NetBSD doesn't particularly care about the vendor
175 # portion of the name. We always set it to "unknown".
176 sysctl="sysctl -n hw.machine_arch"
177 UNAME_MACHINE_ARCH=`(uname -p 2>/dev/null || \
178 "/sbin/$sysctl" 2>/dev/null || \
179 "/usr/sbin/$sysctl" 2>/dev/null || \
180 echo unknown)`
181 case "$UNAME_MACHINE_ARCH" in
182 armeb) machine=armeb-unknown ;;
183 arm*) machine=arm-unknown ;;
184 sh3el) machine=shl-unknown ;;
185 sh3eb) machine=sh-unknown ;;
186 sh5el) machine=sh5le-unknown ;;
187 earmv*)
188 arch=`echo "$UNAME_MACHINE_ARCH" | sed -e 's,^e\(armv[0-9]\).*$,\1,'`
189 endian=`echo "$UNAME_MACHINE_ARCH" | sed -ne 's,^.*\(eb\)$,\1,p'`
190 machine="${arch}${endian}"-unknown
191 ;;
192 *) machine="$UNAME_MACHINE_ARCH"-unknown ;;
193 esac
194 # The Operating System including object format, if it has switched
195 # to ELF recently (or will in the future) and ABI.
196 case "$UNAME_MACHINE_ARCH" in
197 earm*)
198 os=netbsdelf
199 ;;
200 arm*|i386|m68k|ns32k|sh3*|sparc|vax)
201 eval "$set_cc_for_build"
202 if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
203 | grep -q __ELF__
204 then
205 # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
206 # Return netbsd for either. FIX?
207 os=netbsd
208 else
209 os=netbsdelf
210 fi
211 ;;
212 *)
213 os=netbsd
214 ;;
215 esac
216 # Determine ABI tags.
217 case "$UNAME_MACHINE_ARCH" in
218 earm*)
219 expr='s/^earmv[0-9]/-eabi/;s/eb$//'
220 abi=`echo "$UNAME_MACHINE_ARCH" | sed -e "$expr"`
221 ;;
222 esac
223 # The OS release
224 # Debian GNU/NetBSD machines have a different userland, and
225 # thus, need a distinct triplet. However, they do not need
226 # kernel version information, so it can be replaced with a
227 # suitable tag, in the style of linux-gnu.
228 case "$UNAME_VERSION" in
229 Debian*)
230 release='-gnu'
231 ;;
232 *)
233 release=`echo "$UNAME_RELEASE" | sed -e 's/[-_].*//' | cut -d. -f1,2`
234 ;;
235 esac
236 # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
237 # contains redundant information, the shorter form:
238 # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
239 echo "$machine-${os}${release}${abi}"
240 exit ;;
241 *:Bitrig:*:*)
242 UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'`
243 echo "$UNAME_MACHINE_ARCH"-unknown-bitrig"$UNAME_RELEASE"
244 exit ;;
245 *:OpenBSD:*:*)
246 UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
247 echo "$UNAME_MACHINE_ARCH"-unknown-openbsd"$UNAME_RELEASE"
248 exit ;;
249 *:LibertyBSD:*:*)
250 UNAME_MACHINE_ARCH=`arch | sed 's/^.*BSD\.//'`
251 echo "$UNAME_MACHINE_ARCH"-unknown-libertybsd"$UNAME_RELEASE"
252 exit ;;
253 *:MidnightBSD:*:*)
254 echo "$UNAME_MACHINE"-unknown-midnightbsd"$UNAME_RELEASE"
255 exit ;;
256 *:ekkoBSD:*:*)
257 echo "$UNAME_MACHINE"-unknown-ekkobsd"$UNAME_RELEASE"
258 exit ;;
259 *:SolidBSD:*:*)
260 echo "$UNAME_MACHINE"-unknown-solidbsd"$UNAME_RELEASE"
261 exit ;;
262 macppc:MirBSD:*:*)
263 echo powerpc-unknown-mirbsd"$UNAME_RELEASE"
264 exit ;;
265 *:MirBSD:*:*)
266 echo "$UNAME_MACHINE"-unknown-mirbsd"$UNAME_RELEASE"
267 exit ;;
268 *:Sortix:*:*)
269 echo "$UNAME_MACHINE"-unknown-sortix
270 exit ;;
271 *:Redox:*:*)
272 echo "$UNAME_MACHINE"-unknown-redox
273 exit ;;
274 mips:OSF1:*.*)
275 echo mips-dec-osf1
276 exit ;;
277 alpha:OSF1:*:*)
278 case $UNAME_RELEASE in
279 *4.0)
280 UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
281 ;;
282 *5.*)
283 UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
284 ;;
285 esac
286 # According to Compaq, /usr/sbin/psrinfo has been available on
287 # OSF/1 and Tru64 systems produced since 1995. I hope that
288 # covers most systems running today. This code pipes the CPU
289 # types through head -n 1, so we only detect the type of CPU 0.
290 ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1`
291 case "$ALPHA_CPU_TYPE" in
292 "EV4 (21064)")
293 UNAME_MACHINE=alpha ;;
294 "EV4.5 (21064)")
295 UNAME_MACHINE=alpha ;;
296 "LCA4 (21066/21068)")
297 UNAME_MACHINE=alpha ;;
298 "EV5 (21164)")
299 UNAME_MACHINE=alphaev5 ;;
300 "EV5.6 (21164A)")
301 UNAME_MACHINE=alphaev56 ;;
302 "EV5.6 (21164PC)")
303 UNAME_MACHINE=alphapca56 ;;
304 "EV5.7 (21164PC)")
305 UNAME_MACHINE=alphapca57 ;;
306 "EV6 (21264)")
307 UNAME_MACHINE=alphaev6 ;;
308 "EV6.7 (21264A)")
309 UNAME_MACHINE=alphaev67 ;;
310 "EV6.8CB (21264C)")
311 UNAME_MACHINE=alphaev68 ;;
312 "EV6.8AL (21264B)")
313 UNAME_MACHINE=alphaev68 ;;
314 "EV6.8CX (21264D)")
315 UNAME_MACHINE=alphaev68 ;;
316 "EV6.9A (21264/EV69A)")
317 UNAME_MACHINE=alphaev69 ;;
318 "EV7 (21364)")
319 UNAME_MACHINE=alphaev7 ;;
320 "EV7.9 (21364A)")
321 UNAME_MACHINE=alphaev79 ;;
322 esac
323 # A Pn.n version is a patched version.
324 # A Vn.n version is a released version.
325 # A Tn.n version is a released field test version.
326 # A Xn.n version is an unreleased experimental baselevel.
327 # 1.2 uses "1.2" for uname -r.
328 echo "$UNAME_MACHINE"-dec-osf"`echo "$UNAME_RELEASE" | sed -e 's/^[PVTX]//' | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz`"
329 # Reset EXIT trap before exiting to avoid spurious non-zero exit code.
330 exitcode=$?
331 trap '' 0
332 exit $exitcode ;;
333 Amiga*:UNIX_System_V:4.0:*)
334 echo m68k-unknown-sysv4
335 exit ;;
336 *:[Aa]miga[Oo][Ss]:*:*)
337 echo "$UNAME_MACHINE"-unknown-amigaos
338 exit ;;
339 *:[Mm]orph[Oo][Ss]:*:*)
340 echo "$UNAME_MACHINE"-unknown-morphos
341 exit ;;
342 *:OS/390:*:*)
343 echo i370-ibm-openedition
344 exit ;;
345 *:z/VM:*:*)
346 echo s390-ibm-zvmoe
347 exit ;;
348 *:OS400:*:*)
349 echo powerpc-ibm-os400
350 exit ;;
351 arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
352 echo arm-acorn-riscix"$UNAME_RELEASE"
353 exit ;;
354 arm*:riscos:*:*|arm*:RISCOS:*:*)
355 echo arm-unknown-riscos
356 exit ;;
357 SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
358 echo hppa1.1-hitachi-hiuxmpp
359 exit ;;
360 Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
361 # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
362 if test "`(/bin/universe) 2>/dev/null`" = att ; then
363 echo pyramid-pyramid-sysv3
364 else
365 echo pyramid-pyramid-bsd
366 fi
367 exit ;;
368 NILE*:*:*:dcosx)
369 echo pyramid-pyramid-svr4
370 exit ;;
371 DRS?6000:unix:4.0:6*)
372 echo sparc-icl-nx6
373 exit ;;
374 DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*)
375 case `/usr/bin/uname -p` in
376 sparc) echo sparc-icl-nx7; exit ;;
377 esac ;;
378 s390x:SunOS:*:*)
379 echo "$UNAME_MACHINE"-ibm-solaris2"`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`"
380 exit ;;
381 sun4H:SunOS:5.*:*)
382 echo sparc-hal-solaris2"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`"
383 exit ;;
384 sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
385 echo sparc-sun-solaris2"`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`"
386 exit ;;
387 i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*)
388 echo i386-pc-auroraux"$UNAME_RELEASE"
389 exit ;;
390 i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
391 eval "$set_cc_for_build"
392 SUN_ARCH=i386
393 # If there is a compiler, see if it is configured for 64-bit objects.
394 # Note that the Sun cc does not turn __LP64__ into 1 like gcc does.
395 # This test works for both compilers.
396 if [ "$CC_FOR_BUILD" != no_compiler_found ]; then
397 if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \
398 (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
399 grep IS_64BIT_ARCH >/dev/null
400 then
401 SUN_ARCH=x86_64
402 fi
403 fi
404 echo "$SUN_ARCH"-pc-solaris2"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`"
405 exit ;;
406 sun4*:SunOS:6*:*)
407 # According to config.sub, this is the proper way to canonicalize
408 # SunOS6. Hard to guess exactly what SunOS6 will be like, but
409 # it's likely to be more like Solaris than SunOS4.
410 echo sparc-sun-solaris3"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`"
411 exit ;;
412 sun4*:SunOS:*:*)
413 case "`/usr/bin/arch -k`" in
414 Series*|S4*)
415 UNAME_RELEASE=`uname -v`
416 ;;
417 esac
418 # Japanese Language versions have a version number like `4.1.3-JL'.
419 echo sparc-sun-sunos"`echo "$UNAME_RELEASE"|sed -e 's/-/_/'`"
420 exit ;;
421 sun3*:SunOS:*:*)
422 echo m68k-sun-sunos"$UNAME_RELEASE"
423 exit ;;
424 sun*:*:4.2BSD:*)
425 UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
426 test "x$UNAME_RELEASE" = x && UNAME_RELEASE=3
427 case "`/bin/arch`" in
428 sun3)
429 echo m68k-sun-sunos"$UNAME_RELEASE"
430 ;;
431 sun4)
432 echo sparc-sun-sunos"$UNAME_RELEASE"
433 ;;
434 esac
435 exit ;;
436 aushp:SunOS:*:*)
437 echo sparc-auspex-sunos"$UNAME_RELEASE"
438 exit ;;
439 # The situation for MiNT is a little confusing. The machine name
440 # can be virtually everything (everything which is not
441 # "atarist" or "atariste" at least should have a processor
442 # > m68000). The system name ranges from "MiNT" over "FreeMiNT"
443 # to the lowercase version "mint" (or "freemint"). Finally
444 # the system name "TOS" denotes a system which is actually not
445 # MiNT. But MiNT is downward compatible to TOS, so this should
446 # be no problem.
447 atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
448 echo m68k-atari-mint"$UNAME_RELEASE"
449 exit ;;
450 atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
451 echo m68k-atari-mint"$UNAME_RELEASE"
452 exit ;;
453 *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
454 echo m68k-atari-mint"$UNAME_RELEASE"
455 exit ;;
456 milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
457 echo m68k-milan-mint"$UNAME_RELEASE"
458 exit ;;
459 hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
460 echo m68k-hades-mint"$UNAME_RELEASE"
461 exit ;;
462 *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
463 echo m68k-unknown-mint"$UNAME_RELEASE"
464 exit ;;
465 m68k:machten:*:*)
466 echo m68k-apple-machten"$UNAME_RELEASE"
467 exit ;;
468 powerpc:machten:*:*)
469 echo powerpc-apple-machten"$UNAME_RELEASE"
470 exit ;;
471 RISC*:Mach:*:*)
472 echo mips-dec-mach_bsd4.3
473 exit ;;
474 RISC*:ULTRIX:*:*)
475 echo mips-dec-ultrix"$UNAME_RELEASE"
476 exit ;;
477 VAX*:ULTRIX*:*:*)
478 echo vax-dec-ultrix"$UNAME_RELEASE"
479 exit ;;
480 2020:CLIX:*:* | 2430:CLIX:*:*)
481 echo clipper-intergraph-clix"$UNAME_RELEASE"
482 exit ;;
483 mips:*:*:UMIPS | mips:*:*:RISCos)
484 eval "$set_cc_for_build"
485 sed 's/^ //' << EOF > "$dummy.c"
486 #ifdef __cplusplus
487 #include <stdio.h> /* for printf() prototype */
488 int main (int argc, char *argv[]) {
489 #else
490 int main (argc, argv) int argc; char *argv[]; {
491 #endif
492 #if defined (host_mips) && defined (MIPSEB)
493 #if defined (SYSTYPE_SYSV)
494 printf ("mips-mips-riscos%ssysv\\n", argv[1]); exit (0);
495 #endif
496 #if defined (SYSTYPE_SVR4)
497 printf ("mips-mips-riscos%ssvr4\\n", argv[1]); exit (0);
498 #endif
499 #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
500 printf ("mips-mips-riscos%sbsd\\n", argv[1]); exit (0);
501 #endif
502 #endif
503 exit (-1);
504 }
505 EOF
506 $CC_FOR_BUILD -o "$dummy" "$dummy.c" &&
507 dummyarg=`echo "$UNAME_RELEASE" | sed -n 's/\([0-9]*\).*/\1/p'` &&
508 SYSTEM_NAME=`"$dummy" "$dummyarg"` &&
509 { echo "$SYSTEM_NAME"; exit; }
510 echo mips-mips-riscos"$UNAME_RELEASE"
511 exit ;;
512 Motorola:PowerMAX_OS:*:*)
513 echo powerpc-motorola-powermax
514 exit ;;
515 Motorola:*:4.3:PL8-*)
516 echo powerpc-harris-powermax
517 exit ;;
518 Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
519 echo powerpc-harris-powermax
520 exit ;;
521 Night_Hawk:Power_UNIX:*:*)
522 echo powerpc-harris-powerunix
523 exit ;;
524 m88k:CX/UX:7*:*)
525 echo m88k-harris-cxux7
526 exit ;;
527 m88k:*:4*:R4*)
528 echo m88k-motorola-sysv4
529 exit ;;
530 m88k:*:3*:R3*)
531 echo m88k-motorola-sysv3
532 exit ;;
533 AViiON:dgux:*:*)
534 # DG/UX returns AViiON for all architectures
535 UNAME_PROCESSOR=`/usr/bin/uname -p`
536 if [ "$UNAME_PROCESSOR" = mc88100 ] || [ "$UNAME_PROCESSOR" = mc88110 ]
537 then
538 if [ "$TARGET_BINARY_INTERFACE"x = m88kdguxelfx ] || \
539 [ "$TARGET_BINARY_INTERFACE"x = x ]
540 then
541 echo m88k-dg-dgux"$UNAME_RELEASE"
542 else
543 echo m88k-dg-dguxbcs"$UNAME_RELEASE"
544 fi
545 else
546 echo i586-dg-dgux"$UNAME_RELEASE"
547 fi
548 exit ;;
549 M88*:DolphinOS:*:*) # DolphinOS (SVR3)
550 echo m88k-dolphin-sysv3
551 exit ;;
552 M88*:*:R3*:*)
553 # Delta 88k system running SVR3
554 echo m88k-motorola-sysv3
555 exit ;;
556 XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
557 echo m88k-tektronix-sysv3
558 exit ;;
559 Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
560 echo m68k-tektronix-bsd
561 exit ;;
562 *:IRIX*:*:*)
563 echo mips-sgi-irix"`echo "$UNAME_RELEASE"|sed -e 's/-/_/g'`"
564 exit ;;
565 ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
566 echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id
567 exit ;; # Note that: echo "'`uname -s`'" gives 'AIX '
568 i*86:AIX:*:*)
569 echo i386-ibm-aix
570 exit ;;
571 ia64:AIX:*:*)
572 if [ -x /usr/bin/oslevel ] ; then
573 IBM_REV=`/usr/bin/oslevel`
574 else
575 IBM_REV="$UNAME_VERSION.$UNAME_RELEASE"
576 fi
577 echo "$UNAME_MACHINE"-ibm-aix"$IBM_REV"
578 exit ;;
579 *:AIX:2:3)
580 if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
581 eval "$set_cc_for_build"
582 sed 's/^ //' << EOF > "$dummy.c"
583 #include <sys/systemcfg.h>
584
585 main()
586 {
587 if (!__power_pc())
588 exit(1);
589 puts("powerpc-ibm-aix3.2.5");
590 exit(0);
591 }
592 EOF
593 if $CC_FOR_BUILD -o "$dummy" "$dummy.c" && SYSTEM_NAME=`"$dummy"`
594 then
595 echo "$SYSTEM_NAME"
596 else
597 echo rs6000-ibm-aix3.2.5
598 fi
599 elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
600 echo rs6000-ibm-aix3.2.4
601 else
602 echo rs6000-ibm-aix3.2
603 fi
604 exit ;;
605 *:AIX:*:[4567])
606 IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
607 if /usr/sbin/lsattr -El "$IBM_CPU_ID" | grep ' POWER' >/dev/null 2>&1; then
608 IBM_ARCH=rs6000
609 else
610 IBM_ARCH=powerpc
611 fi
612 if [ -x /usr/bin/lslpp ] ; then
613 IBM_REV=`/usr/bin/lslpp -Lqc bos.rte.libc |
614 awk -F: '{ print $3 }' | sed s/[0-9]*$/0/`
615 else
616 IBM_REV="$UNAME_VERSION.$UNAME_RELEASE"
617 fi
618 echo "$IBM_ARCH"-ibm-aix"$IBM_REV"
619 exit ;;
620 *:AIX:*:*)
621 echo rs6000-ibm-aix
622 exit ;;
623 ibmrt:4.4BSD:*|romp-ibm:4.4BSD:*)
624 echo romp-ibm-bsd4.4
625 exit ;;
626 ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and
627 echo romp-ibm-bsd"$UNAME_RELEASE" # 4.3 with uname added to
628 exit ;; # report: romp-ibm BSD 4.3
629 *:BOSX:*:*)
630 echo rs6000-bull-bosx
631 exit ;;
632 DPX/2?00:B.O.S.:*:*)
633 echo m68k-bull-sysv3
634 exit ;;
635 9000/[34]??:4.3bsd:1.*:*)
636 echo m68k-hp-bsd
637 exit ;;
638 hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
639 echo m68k-hp-bsd4.4
640 exit ;;
641 9000/[34678]??:HP-UX:*:*)
642 HPUX_REV=`echo "$UNAME_RELEASE"|sed -e 's/[^.]*.[0B]*//'`
643 case "$UNAME_MACHINE" in
644 9000/31?) HP_ARCH=m68000 ;;
645 9000/[34]??) HP_ARCH=m68k ;;
646 9000/[678][0-9][0-9])
647 if [ -x /usr/bin/getconf ]; then
648 sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
649 sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
650 case "$sc_cpu_version" in
651 523) HP_ARCH=hppa1.0 ;; # CPU_PA_RISC1_0
652 528) HP_ARCH=hppa1.1 ;; # CPU_PA_RISC1_1
653 532) # CPU_PA_RISC2_0
654 case "$sc_kernel_bits" in
655 32) HP_ARCH=hppa2.0n ;;
656 64) HP_ARCH=hppa2.0w ;;
657 '') HP_ARCH=hppa2.0 ;; # HP-UX 10.20
658 esac ;;
659 esac
660 fi
661 if [ "$HP_ARCH" = "" ]; then
662 eval "$set_cc_for_build"
663 sed 's/^ //' << EOF > "$dummy.c"
664
665 #define _HPUX_SOURCE
666 #include <stdlib.h>
667 #include <unistd.h>
668
669 int main ()
670 {
671 #if defined(_SC_KERNEL_BITS)
672 long bits = sysconf(_SC_KERNEL_BITS);
673 #endif
674 long cpu = sysconf (_SC_CPU_VERSION);
675
676 switch (cpu)
677 {
678 case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
679 case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
680 case CPU_PA_RISC2_0:
681 #if defined(_SC_KERNEL_BITS)
682 switch (bits)
683 {
684 case 64: puts ("hppa2.0w"); break;
685 case 32: puts ("hppa2.0n"); break;
686 default: puts ("hppa2.0"); break;
687 } break;
688 #else /* !defined(_SC_KERNEL_BITS) */
689 puts ("hppa2.0"); break;
690 #endif
691 default: puts ("hppa1.0"); break;
692 }
693 exit (0);
694 }
695 EOF
696 (CCOPTS="" $CC_FOR_BUILD -o "$dummy" "$dummy.c" 2>/dev/null) && HP_ARCH=`"$dummy"`
697 test -z "$HP_ARCH" && HP_ARCH=hppa
698 fi ;;
699 esac
700 if [ "$HP_ARCH" = hppa2.0w ]
701 then
702 eval "$set_cc_for_build"
703
704 # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
705 # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler
706 # generating 64-bit code. GNU and HP use different nomenclature:
707 #
708 # $ CC_FOR_BUILD=cc ./config.guess
709 # => hppa2.0w-hp-hpux11.23
710 # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess
711 # => hppa64-hp-hpux11.23
712
713 if echo __LP64__ | (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) |
714 grep -q __LP64__
715 then
716 HP_ARCH=hppa2.0w
717 else
718 HP_ARCH=hppa64
719 fi
720 fi
721 echo "$HP_ARCH"-hp-hpux"$HPUX_REV"
722 exit ;;
723 ia64:HP-UX:*:*)
724 HPUX_REV=`echo "$UNAME_RELEASE"|sed -e 's/[^.]*.[0B]*//'`
725 echo ia64-hp-hpux"$HPUX_REV"
726 exit ;;
727 3050*:HI-UX:*:*)
728 eval "$set_cc_for_build"
729 sed 's/^ //' << EOF > "$dummy.c"
730 #include <unistd.h>
731 int
732 main ()
733 {
734 long cpu = sysconf (_SC_CPU_VERSION);
735 /* The order matters, because CPU_IS_HP_MC68K erroneously returns
736 true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct
737 results, however. */
738 if (CPU_IS_PA_RISC (cpu))
739 {
740 switch (cpu)
741 {
742 case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break;
743 case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break;
744 case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break;
745 default: puts ("hppa-hitachi-hiuxwe2"); break;
746 }
747 }
748 else if (CPU_IS_HP_MC68K (cpu))
749 puts ("m68k-hitachi-hiuxwe2");
750 else puts ("unknown-hitachi-hiuxwe2");
751 exit (0);
752 }
753 EOF
754 $CC_FOR_BUILD -o "$dummy" "$dummy.c" && SYSTEM_NAME=`"$dummy"` &&
755 { echo "$SYSTEM_NAME"; exit; }
756 echo unknown-hitachi-hiuxwe2
757 exit ;;
758 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:*)
759 echo hppa1.1-hp-bsd
760 exit ;;
761 9000/8??:4.3bsd:*:*)
762 echo hppa1.0-hp-bsd
763 exit ;;
764 *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
765 echo hppa1.0-hp-mpeix
766 exit ;;
767 hp7??:OSF1:*:* | hp8?[79]:OSF1:*:*)
768 echo hppa1.1-hp-osf
769 exit ;;
770 hp8??:OSF1:*:*)
771 echo hppa1.0-hp-osf
772 exit ;;
773 i*86:OSF1:*:*)
774 if [ -x /usr/sbin/sysversion ] ; then
775 echo "$UNAME_MACHINE"-unknown-osf1mk
776 else
777 echo "$UNAME_MACHINE"-unknown-osf1
778 fi
779 exit ;;
780 parisc*:Lites*:*:*)
781 echo hppa1.1-hp-lites
782 exit ;;
783 C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
784 echo c1-convex-bsd
785 exit ;;
786 C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
787 if getsysinfo -f scalar_acc
788 then echo c32-convex-bsd
789 else echo c2-convex-bsd
790 fi
791 exit ;;
792 C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
793 echo c34-convex-bsd
794 exit ;;
795 C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
796 echo c38-convex-bsd
797 exit ;;
798 C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
799 echo c4-convex-bsd
800 exit ;;
801 CRAY*Y-MP:*:*:*)
802 echo ymp-cray-unicos"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'
803 exit ;;
804 CRAY*[A-Z]90:*:*:*)
805 echo "$UNAME_MACHINE"-cray-unicos"$UNAME_RELEASE" \
806 | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
807 -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
808 -e 's/\.[^.]*$/.X/'
809 exit ;;
810 CRAY*TS:*:*:*)
811 echo t90-cray-unicos"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'
812 exit ;;
813 CRAY*T3E:*:*:*)
814 echo alphaev5-cray-unicosmk"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'
815 exit ;;
816 CRAY*SV1:*:*:*)
817 echo sv1-cray-unicos"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'
818 exit ;;
819 *:UNICOS/mp:*:*)
820 echo craynv-cray-unicosmp"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'
821 exit ;;
822 F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
823 FUJITSU_PROC=`uname -m | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz`
824 FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'`
825 FUJITSU_REL=`echo "$UNAME_RELEASE" | sed -e 's/ /_/'`
826 echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
827 exit ;;
828 5000:UNIX_System_V:4.*:*)
829 FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'`
830 FUJITSU_REL=`echo "$UNAME_RELEASE" | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/ /_/'`
831 echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
832 exit ;;
833 i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
834 echo "$UNAME_MACHINE"-pc-bsdi"$UNAME_RELEASE"
835 exit ;;
836 sparc*:BSD/OS:*:*)
837 echo sparc-unknown-bsdi"$UNAME_RELEASE"
838 exit ;;
839 *:BSD/OS:*:*)
840 echo "$UNAME_MACHINE"-unknown-bsdi"$UNAME_RELEASE"
841 exit ;;
842 *:FreeBSD:*:*)
843 UNAME_PROCESSOR=`/usr/bin/uname -p`
844 case "$UNAME_PROCESSOR" in
845 amd64)
846 UNAME_PROCESSOR=x86_64 ;;
847 i386)
848 UNAME_PROCESSOR=i586 ;;
849 esac
850 echo "$UNAME_PROCESSOR"-unknown-freebsd"`echo "$UNAME_RELEASE"|sed -e 's/[-(].*//'`"
851 exit ;;
852 i*:CYGWIN*:*)
853 echo "$UNAME_MACHINE"-pc-cygwin
854 exit ;;
855 *:MINGW64*:*)
856 echo "$UNAME_MACHINE"-pc-mingw64
857 exit ;;
858 *:MINGW*:*)
859 echo "$UNAME_MACHINE"-pc-mingw32
860 exit ;;
861 *:MSYS*:*)
862 echo "$UNAME_MACHINE"-pc-msys
863 exit ;;
864 i*:PW*:*)
865 echo "$UNAME_MACHINE"-pc-pw32
866 exit ;;
867 *:Interix*:*)
868 case "$UNAME_MACHINE" in
869 x86)
870 echo i586-pc-interix"$UNAME_RELEASE"
871 exit ;;
872 authenticamd | genuineintel | EM64T)
873 echo x86_64-unknown-interix"$UNAME_RELEASE"
874 exit ;;
875 IA64)
876 echo ia64-unknown-interix"$UNAME_RELEASE"
877 exit ;;
878 esac ;;
879 i*:UWIN*:*)
880 echo "$UNAME_MACHINE"-pc-uwin
881 exit ;;
882 amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
883 echo x86_64-unknown-cygwin
884 exit ;;
885 prep*:SunOS:5.*:*)
886 echo powerpcle-unknown-solaris2"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`"
887 exit ;;
888 *:GNU:*:*)
889 # the GNU system
890 echo "`echo "$UNAME_MACHINE"|sed -e 's,[-/].*$,,'`-unknown-$LIBC`echo "$UNAME_RELEASE"|sed -e 's,/.*$,,'`"
891 exit ;;
892 *:GNU/*:*:*)
893 # other systems with GNU libc and userland
894 echo "$UNAME_MACHINE-unknown-`echo "$UNAME_SYSTEM" | sed 's,^[^/]*/,,' | tr "[:upper:]" "[:lower:]"``echo "$UNAME_RELEASE"|sed -e 's/[-(].*//'`-$LIBC"
895 exit ;;
896 i*86:Minix:*:*)
897 echo "$UNAME_MACHINE"-pc-minix
898 exit ;;
899 aarch64:Linux:*:*)
900 echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
901 exit ;;
902 aarch64_be:Linux:*:*)
903 UNAME_MACHINE=aarch64_be
904 echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
905 exit ;;
906 alpha:Linux:*:*)
907 case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
908 EV5) UNAME_MACHINE=alphaev5 ;;
909 EV56) UNAME_MACHINE=alphaev56 ;;
910 PCA56) UNAME_MACHINE=alphapca56 ;;
911 PCA57) UNAME_MACHINE=alphapca56 ;;
912 EV6) UNAME_MACHINE=alphaev6 ;;
913 EV67) UNAME_MACHINE=alphaev67 ;;
914 EV68*) UNAME_MACHINE=alphaev68 ;;
915 esac
916 objdump --private-headers /bin/sh | grep -q ld.so.1
917 if test "$?" = 0 ; then LIBC=gnulibc1 ; fi
918 echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
919 exit ;;
920 arc:Linux:*:* | arceb:Linux:*:*)
921 echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
922 exit ;;
923 arm*:Linux:*:*)
924 eval "$set_cc_for_build"
925 if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
926 | grep -q __ARM_EABI__
927 then
928 echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
929 else
930 if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \
931 | grep -q __ARM_PCS_VFP
932 then
933 echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"eabi
934 else
935 echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"eabihf
936 fi
937 fi
938 exit ;;
939 avr32*:Linux:*:*)
940 echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
941 exit ;;
942 cris:Linux:*:*)
943 echo "$UNAME_MACHINE"-axis-linux-"$LIBC"
944 exit ;;
945 crisv32:Linux:*:*)
946 echo "$UNAME_MACHINE"-axis-linux-"$LIBC"
947 exit ;;
948 e2k:Linux:*:*)
949 echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
950 exit ;;
951 frv:Linux:*:*)
952 echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
953 exit ;;
954 hexagon:Linux:*:*)
955 echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
956 exit ;;
957 i*86:Linux:*:*)
958 echo "$UNAME_MACHINE"-pc-linux-"$LIBC"
959 exit ;;
960 ia64:Linux:*:*)
961 echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
962 exit ;;
963 k1om:Linux:*:*)
964 echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
965 exit ;;
966 m32r*:Linux:*:*)
967 echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
968 exit ;;
969 m68*:Linux:*:*)
970 echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
971 exit ;;
972 mips:Linux:*:* | mips64:Linux:*:*)
973 eval "$set_cc_for_build"
974 sed 's/^ //' << EOF > "$dummy.c"
975 #undef CPU
976 #undef ${UNAME_MACHINE}
977 #undef ${UNAME_MACHINE}el
978 #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
979 CPU=${UNAME_MACHINE}el
980 #else
981 #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
982 CPU=${UNAME_MACHINE}
983 #else
984 CPU=
985 #endif
986 #endif
987 EOF
988 eval "`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^CPU'`"
989 test "x$CPU" != x && { echo "$CPU-unknown-linux-$LIBC"; exit; }
990 ;;
991 mips64el:Linux:*:*)
992 echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
993 exit ;;
994 openrisc*:Linux:*:*)
995 echo or1k-unknown-linux-"$LIBC"
996 exit ;;
997 or32:Linux:*:* | or1k*:Linux:*:*)
998 echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
999 exit ;;
1000 padre:Linux:*:*)
1001 echo sparc-unknown-linux-"$LIBC"
1002 exit ;;
1003 parisc64:Linux:*:* | hppa64:Linux:*:*)
1004 echo hppa64-unknown-linux-"$LIBC"
1005 exit ;;
1006 parisc:Linux:*:* | hppa:Linux:*:*)
1007 # Look for CPU level
1008 case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
1009 PA7*) echo hppa1.1-unknown-linux-"$LIBC" ;;
1010 PA8*) echo hppa2.0-unknown-linux-"$LIBC" ;;
1011 *) echo hppa-unknown-linux-"$LIBC" ;;
1012 esac
1013 exit ;;
1014 ppc64:Linux:*:*)
1015 echo powerpc64-unknown-linux-"$LIBC"
1016 exit ;;
1017 ppc:Linux:*:*)
1018 echo powerpc-unknown-linux-"$LIBC"
1019 exit ;;
1020 ppc64le:Linux:*:*)
1021 echo powerpc64le-unknown-linux-"$LIBC"
1022 exit ;;
1023 ppcle:Linux:*:*)
1024 echo powerpcle-unknown-linux-"$LIBC"
1025 exit ;;
1026 riscv32:Linux:*:* | riscv64:Linux:*:*)
1027 echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
1028 exit ;;
1029 s390:Linux:*:* | s390x:Linux:*:*)
1030 echo "$UNAME_MACHINE"-ibm-linux-"$LIBC"
1031 exit ;;
1032 sh64*:Linux:*:*)
1033 echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
1034 exit ;;
1035 sh*:Linux:*:*)
1036 echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
1037 exit ;;
1038 sparc:Linux:*:* | sparc64:Linux:*:*)
1039 echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
1040 exit ;;
1041 tile*:Linux:*:*)
1042 echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
1043 exit ;;
1044 vax:Linux:*:*)
1045 echo "$UNAME_MACHINE"-dec-linux-"$LIBC"
1046 exit ;;
1047 x86_64:Linux:*:*)
1048 if objdump -f /bin/sh | grep -q elf32-x86-64; then
1049 echo "$UNAME_MACHINE"-pc-linux-"$LIBC"x32
1050 else
1051 echo "$UNAME_MACHINE"-pc-linux-"$LIBC"
1052 fi
1053 exit ;;
1054 xtensa*:Linux:*:*)
1055 echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
1056 exit ;;
1057 i*86:DYNIX/ptx:4*:*)
1058 # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
1059 # earlier versions are messed up and put the nodename in both
1060 # sysname and nodename.
1061 echo i386-sequent-sysv4
1062 exit ;;
1063 i*86:UNIX_SV:4.2MP:2.*)
1064 # Unixware is an offshoot of SVR4, but it has its own version
1065 # number series starting with 2...
1066 # I am not positive that other SVR4 systems won't match this,
1067 # I just have to hope. -- rms.
1068 # Use sysv4.2uw... so that sysv4* matches it.
1069 echo "$UNAME_MACHINE"-pc-sysv4.2uw"$UNAME_VERSION"
1070 exit ;;
1071 i*86:OS/2:*:*)
1072 # If we were able to find `uname', then EMX Unix compatibility
1073 # is probably installed.
1074 echo "$UNAME_MACHINE"-pc-os2-emx
1075 exit ;;
1076 i*86:XTS-300:*:STOP)
1077 echo "$UNAME_MACHINE"-unknown-stop
1078 exit ;;
1079 i*86:atheos:*:*)
1080 echo "$UNAME_MACHINE"-unknown-atheos
1081 exit ;;
1082 i*86:syllable:*:*)
1083 echo "$UNAME_MACHINE"-pc-syllable
1084 exit ;;
1085 i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*)
1086 echo i386-unknown-lynxos"$UNAME_RELEASE"
1087 exit ;;
1088 i*86:*DOS:*:*)
1089 echo "$UNAME_MACHINE"-pc-msdosdjgpp
1090 exit ;;
1091 i*86:*:4.*:*)
1092 UNAME_REL=`echo "$UNAME_RELEASE" | sed 's/\/MP$//'`
1093 if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
1094 echo "$UNAME_MACHINE"-univel-sysv"$UNAME_REL"
1095 else
1096 echo "$UNAME_MACHINE"-pc-sysv"$UNAME_REL"
1097 fi
1098 exit ;;
1099 i*86:*:5:[678]*)
1100 # UnixWare 7.x, OpenUNIX and OpenServer 6.
1101 case `/bin/uname -X | grep "^Machine"` in
1102 *486*) UNAME_MACHINE=i486 ;;
1103 *Pentium) UNAME_MACHINE=i586 ;;
1104 *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
1105 esac
1106 echo "$UNAME_MACHINE-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}{$UNAME_VERSION}"
1107 exit ;;
1108 i*86:*:3.2:*)
1109 if test -f /usr/options/cb.name; then
1110 UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
1111 echo "$UNAME_MACHINE"-pc-isc"$UNAME_REL"
1112 elif /bin/uname -X 2>/dev/null >/dev/null ; then
1113 UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
1114 (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
1115 (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \
1116 && UNAME_MACHINE=i586
1117 (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \
1118 && UNAME_MACHINE=i686
1119 (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
1120 && UNAME_MACHINE=i686
1121 echo "$UNAME_MACHINE"-pc-sco"$UNAME_REL"
1122 else
1123 echo "$UNAME_MACHINE"-pc-sysv32
1124 fi
1125 exit ;;
1126 pc:*:*:*)
1127 # Left here for compatibility:
1128 # uname -m prints for DJGPP always 'pc', but it prints nothing about
1129 # the processor, so we play safe by assuming i586.
1130 # Note: whatever this is, it MUST be the same as what config.sub
1131 # prints for the "djgpp" host, or else GDB configure will decide that
1132 # this is a cross-build.
1133 echo i586-pc-msdosdjgpp
1134 exit ;;
1135 Intel:Mach:3*:*)
1136 echo i386-pc-mach3
1137 exit ;;
1138 paragon:*:*:*)
1139 echo i860-intel-osf1
1140 exit ;;
1141 i860:*:4.*:*) # i860-SVR4
1142 if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
1143 echo i860-stardent-sysv"$UNAME_RELEASE" # Stardent Vistra i860-SVR4
1144 else # Add other i860-SVR4 vendors below as they are discovered.
1145 echo i860-unknown-sysv"$UNAME_RELEASE" # Unknown i860-SVR4
1146 fi
1147 exit ;;
1148 mini*:CTIX:SYS*5:*)
1149 # "miniframe"
1150 echo m68010-convergent-sysv
1151 exit ;;
1152 mc68k:UNIX:SYSTEM5:3.51m)
1153 echo m68k-convergent-sysv
1154 exit ;;
1155 M680?0:D-NIX:5.3:*)
1156 echo m68k-diab-dnix
1157 exit ;;
1158 M68*:*:R3V[5678]*:*)
1159 test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;;
1160 3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0 | S7501*:*:4.0:3.0)
1161 OS_REL=''
1162 test -r /etc/.relid \
1163 && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
1164 /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
1165 && { echo i486-ncr-sysv4.3"$OS_REL"; exit; }
1166 /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
1167 && { echo i586-ncr-sysv4.3"$OS_REL"; exit; } ;;
1168 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
1169 /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
1170 && { echo i486-ncr-sysv4; exit; } ;;
1171 NCR*:*:4.2:* | MPRAS*:*:4.2:*)
1172 OS_REL='.3'
1173 test -r /etc/.relid \
1174 && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
1175 /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
1176 && { echo i486-ncr-sysv4.3"$OS_REL"; exit; }
1177 /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
1178 && { echo i586-ncr-sysv4.3"$OS_REL"; exit; }
1179 /bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \
1180 && { echo i586-ncr-sysv4.3"$OS_REL"; exit; } ;;
1181 m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
1182 echo m68k-unknown-lynxos"$UNAME_RELEASE"
1183 exit ;;
1184 mc68030:UNIX_System_V:4.*:*)
1185 echo m68k-atari-sysv4
1186 exit ;;
1187 TSUNAMI:LynxOS:2.*:*)
1188 echo sparc-unknown-lynxos"$UNAME_RELEASE"
1189 exit ;;
1190 rs6000:LynxOS:2.*:*)
1191 echo rs6000-unknown-lynxos"$UNAME_RELEASE"
1192 exit ;;
1193 PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*)
1194 echo powerpc-unknown-lynxos"$UNAME_RELEASE"
1195 exit ;;
1196 SM[BE]S:UNIX_SV:*:*)
1197 echo mips-dde-sysv"$UNAME_RELEASE"
1198 exit ;;
1199 RM*:ReliantUNIX-*:*:*)
1200 echo mips-sni-sysv4
1201 exit ;;
1202 RM*:SINIX-*:*:*)
1203 echo mips-sni-sysv4
1204 exit ;;
1205 *:SINIX-*:*:*)
1206 if uname -p 2>/dev/null >/dev/null ; then
1207 UNAME_MACHINE=`(uname -p) 2>/dev/null`
1208 echo "$UNAME_MACHINE"-sni-sysv4
1209 else
1210 echo ns32k-sni-sysv
1211 fi
1212 exit ;;
1213 PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
1214 # says <Richard.M.Bartel@ccMail.Census.GOV>
1215 echo i586-unisys-sysv4
1216 exit ;;
1217 *:UNIX_System_V:4*:FTX*)
1218 # From Gerald Hewes <hewes@openmarket.com>.
1219 # How about differentiating between stratus architectures? -djm
1220 echo hppa1.1-stratus-sysv4
1221 exit ;;
1222 *:*:*:FTX*)
1223 # From seanf@swdc.stratus.com.
1224 echo i860-stratus-sysv4
1225 exit ;;
1226 i*86:VOS:*:*)
1227 # From Paul.Green@stratus.com.
1228 echo "$UNAME_MACHINE"-stratus-vos
1229 exit ;;
1230 *:VOS:*:*)
1231 # From Paul.Green@stratus.com.
1232 echo hppa1.1-stratus-vos
1233 exit ;;
1234 mc68*:A/UX:*:*)
1235 echo m68k-apple-aux"$UNAME_RELEASE"
1236 exit ;;
1237 news*:NEWS-OS:6*:*)
1238 echo mips-sony-newsos6
1239 exit ;;
1240 R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
1241 if [ -d /usr/nec ]; then
1242 echo mips-nec-sysv"$UNAME_RELEASE"
1243 else
1244 echo mips-unknown-sysv"$UNAME_RELEASE"
1245 fi
1246 exit ;;
1247 BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only.
1248 echo powerpc-be-beos
1249 exit ;;
1250 BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only.
1251 echo powerpc-apple-beos
1252 exit ;;
1253 BePC:BeOS:*:*) # BeOS running on Intel PC compatible.
1254 echo i586-pc-beos
1255 exit ;;
1256 BePC:Haiku:*:*) # Haiku running on Intel PC compatible.
1257 echo i586-pc-haiku
1258 exit ;;
1259 x86_64:Haiku:*:*)
1260 echo x86_64-unknown-haiku
1261 exit ;;
1262 SX-4:SUPER-UX:*:*)
1263 echo sx4-nec-superux"$UNAME_RELEASE"
1264 exit ;;
1265 SX-5:SUPER-UX:*:*)
1266 echo sx5-nec-superux"$UNAME_RELEASE"
1267 exit ;;
1268 SX-6:SUPER-UX:*:*)
1269 echo sx6-nec-superux"$UNAME_RELEASE"
1270 exit ;;
1271 SX-7:SUPER-UX:*:*)
1272 echo sx7-nec-superux"$UNAME_RELEASE"
1273 exit ;;
1274 SX-8:SUPER-UX:*:*)
1275 echo sx8-nec-superux"$UNAME_RELEASE"
1276 exit ;;
1277 SX-8R:SUPER-UX:*:*)
1278 echo sx8r-nec-superux"$UNAME_RELEASE"
1279 exit ;;
1280 SX-ACE:SUPER-UX:*:*)
1281 echo sxace-nec-superux"$UNAME_RELEASE"
1282 exit ;;
1283 Power*:Rhapsody:*:*)
1284 echo powerpc-apple-rhapsody"$UNAME_RELEASE"
1285 exit ;;
1286 *:Rhapsody:*:*)
1287 echo "$UNAME_MACHINE"-apple-rhapsody"$UNAME_RELEASE"
1288 exit ;;
1289 *:Darwin:*:*)
1290 UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
1291 eval "$set_cc_for_build"
1292 if test "$UNAME_PROCESSOR" = unknown ; then
1293 UNAME_PROCESSOR=powerpc
1294 fi
1295 if test "`echo "$UNAME_RELEASE" | sed -e 's/\..*//'`" -le 10 ; then
1296 if [ "$CC_FOR_BUILD" != no_compiler_found ]; then
1297 if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
1298 (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
1299 grep IS_64BIT_ARCH >/dev/null
1300 then
1301 case $UNAME_PROCESSOR in
1302 i386) UNAME_PROCESSOR=x86_64 ;;
1303 powerpc) UNAME_PROCESSOR=powerpc64 ;;
1304 esac
1305 fi
1306 # On 10.4-10.6 one might compile for PowerPC via gcc -arch ppc
1307 if (echo '#ifdef __POWERPC__'; echo IS_PPC; echo '#endif') | \
1308 (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
1309 grep IS_PPC >/dev/null
1310 then
1311 UNAME_PROCESSOR=powerpc
1312 fi
1313 fi
1314 elif test "$UNAME_PROCESSOR" = i386 ; then
1315 # Avoid executing cc on OS X 10.9, as it ships with a stub
1316 # that puts up a graphical alert prompting to install
1317 # developer tools. Any system running Mac OS X 10.7 or
1318 # later (Darwin 11 and later) is required to have a 64-bit
1319 # processor. This is not true of the ARM version of Darwin
1320 # that Apple uses in portable devices.
1321 UNAME_PROCESSOR=x86_64
1322 fi
1323 echo "$UNAME_PROCESSOR"-apple-darwin"$UNAME_RELEASE"
1324 exit ;;
1325 *:procnto*:*:* | *:QNX:[0123456789]*:*)
1326 UNAME_PROCESSOR=`uname -p`
1327 if test "$UNAME_PROCESSOR" = x86; then
1328 UNAME_PROCESSOR=i386
1329 UNAME_MACHINE=pc
1330 fi
1331 echo "$UNAME_PROCESSOR"-"$UNAME_MACHINE"-nto-qnx"$UNAME_RELEASE"
1332 exit ;;
1333 *:QNX:*:4*)
1334 echo i386-pc-qnx
1335 exit ;;
1336 NEO-*:NONSTOP_KERNEL:*:*)
1337 echo neo-tandem-nsk"$UNAME_RELEASE"
1338 exit ;;
1339 NSE-*:NONSTOP_KERNEL:*:*)
1340 echo nse-tandem-nsk"$UNAME_RELEASE"
1341 exit ;;
1342 NSR-*:NONSTOP_KERNEL:*:*)
1343 echo nsr-tandem-nsk"$UNAME_RELEASE"
1344 exit ;;
1345 NSV-*:NONSTOP_KERNEL:*:*)
1346 echo nsv-tandem-nsk"$UNAME_RELEASE"
1347 exit ;;
1348 NSX-*:NONSTOP_KERNEL:*:*)
1349 echo nsx-tandem-nsk"$UNAME_RELEASE"
1350 exit ;;
1351 *:NonStop-UX:*:*)
1352 echo mips-compaq-nonstopux
1353 exit ;;
1354 BS2000:POSIX*:*:*)
1355 echo bs2000-siemens-sysv
1356 exit ;;
1357 DS/*:UNIX_System_V:*:*)
1358 echo "$UNAME_MACHINE"-"$UNAME_SYSTEM"-"$UNAME_RELEASE"
1359 exit ;;
1360 *:Plan9:*:*)
1361 # "uname -m" is not consistent, so use $cputype instead. 386
1362 # is converted to i386 for consistency with other x86
1363 # operating systems.
1364 if test "$cputype" = 386; then
1365 UNAME_MACHINE=i386
1366 else
1367 UNAME_MACHINE="$cputype"
1368 fi
1369 echo "$UNAME_MACHINE"-unknown-plan9
1370 exit ;;
1371 *:TOPS-10:*:*)
1372 echo pdp10-unknown-tops10
1373 exit ;;
1374 *:TENEX:*:*)
1375 echo pdp10-unknown-tenex
1376 exit ;;
1377 KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
1378 echo pdp10-dec-tops20
1379 exit ;;
1380 XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
1381 echo pdp10-xkl-tops20
1382 exit ;;
1383 *:TOPS-20:*:*)
1384 echo pdp10-unknown-tops20
1385 exit ;;
1386 *:ITS:*:*)
1387 echo pdp10-unknown-its
1388 exit ;;
1389 SEI:*:*:SEIUX)
1390 echo mips-sei-seiux"$UNAME_RELEASE"
1391 exit ;;
1392 *:DragonFly:*:*)
1393 echo "$UNAME_MACHINE"-unknown-dragonfly"`echo "$UNAME_RELEASE"|sed -e 's/[-(].*//'`"
1394 exit ;;
1395 *:*VMS:*:*)
1396 UNAME_MACHINE=`(uname -p) 2>/dev/null`
1397 case "$UNAME_MACHINE" in
1398 A*) echo alpha-dec-vms ; exit ;;
1399 I*) echo ia64-dec-vms ; exit ;;
1400 V*) echo vax-dec-vms ; exit ;;
1401 esac ;;
1402 *:XENIX:*:SysV)
1403 echo i386-pc-xenix
1404 exit ;;
1405 i*86:skyos:*:*)
1406 echo "$UNAME_MACHINE"-pc-skyos"`echo "$UNAME_RELEASE" | sed -e 's/ .*$//'`"
1407 exit ;;
1408 i*86:rdos:*:*)
1409 echo "$UNAME_MACHINE"-pc-rdos
1410 exit ;;
1411 i*86:AROS:*:*)
1412 echo "$UNAME_MACHINE"-pc-aros
1413 exit ;;
1414 x86_64:VMkernel:*:*)
1415 echo "$UNAME_MACHINE"-unknown-esx
1416 exit ;;
1417 amd64:Isilon\ OneFS:*:*)
1418 echo x86_64-unknown-onefs
1419 exit ;;
1420 esac
1421
1422 echo "$0: unable to guess system type" >&2
1423
1424 case "$UNAME_MACHINE:$UNAME_SYSTEM" in
1425 mips:Linux | mips64:Linux)
1426 # If we got here on MIPS GNU/Linux, output extra information.
1427 cat >&2 <<EOF
1428
1429 NOTE: MIPS GNU/Linux systems require a C compiler to fully recognize
1430 the system type. Please install a C compiler and try again.
1431 EOF
1432 ;;
1433 esac
1434
1435 cat >&2 <<EOF
1436
1437 This script (version $timestamp), has failed to recognize the
1438 operating system you are using. If your script is old, overwrite *all*
1439 copies of config.guess and config.sub with the latest versions from:
1440
1441 https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess
1442 and
1443 https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub
1444
1445 If $0 has already been updated, send the following data and any
1446 information you think might be pertinent to config-patches@gnu.org to
1447 provide the necessary information to handle your system.
1448
1449 config.guess timestamp = $timestamp
1450
1451 uname -m = `(uname -m) 2>/dev/null || echo unknown`
1452 uname -r = `(uname -r) 2>/dev/null || echo unknown`
1453 uname -s = `(uname -s) 2>/dev/null || echo unknown`
1454 uname -v = `(uname -v) 2>/dev/null || echo unknown`
1455
1456 /usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null`
1457 /bin/uname -X = `(/bin/uname -X) 2>/dev/null`
1458
1459 hostinfo = `(hostinfo) 2>/dev/null`
1460 /bin/universe = `(/bin/universe) 2>/dev/null`
1461 /usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null`
1462 /bin/arch = `(/bin/arch) 2>/dev/null`
1463 /usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null`
1464 /usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
1465
1466 UNAME_MACHINE = "$UNAME_MACHINE"
1467 UNAME_RELEASE = "$UNAME_RELEASE"
1468 UNAME_SYSTEM = "$UNAME_SYSTEM"
1469 UNAME_VERSION = "$UNAME_VERSION"
1470 EOF
1471
1472 exit 1
1473
1474 # Local variables:
1475 # eval: (add-hook 'write-file-functions 'time-stamp)
1476 # time-stamp-start: "timestamp='"
1477 # time-stamp-format: "%:y-%02m-%02d"
1478 # time-stamp-end: "'"
1479 # End:
0 /* config.h.in. Generated from configure.ac by autoheader. */
1
2 /* Define if building universal (internal helper macro) */
3 #undef AC_APPLE_UNIVERSAL_BUILD
4
5 /* Define if you want to use libfaad together with Digital Radio Mondiale
6 (DRM) */
7 #undef DRM
8
9 /* Define if you want support for Digital Radio Mondiale (DRM) parametric
10 stereo */
11 #undef DRM_PS
12
13 /* Define to 1 if you have the <dlfcn.h> header file. */
14 #undef HAVE_DLFCN_H
15
16 /* Define to 1 if you have the <errno.h> header file. */
17 #undef HAVE_ERRNO_H
18
19 /* Define if needed */
20 #undef HAVE_FLOAT32_T
21
22 /* Define to 1 if you have the <float.h> header file. */
23 #undef HAVE_FLOAT_H
24
25 /* Define to 1 if you have the `getpwuid' function. */
26 #undef HAVE_GETPWUID
27
28 /* Define to 1 if you have the <inttypes.h> header file. */
29 #undef HAVE_INTTYPES_H
30
31 /* Define if you have the IOKit API */
32 #undef HAVE_IOKIT_IOKITLIB_H
33
34 /* Define to 1 if you have the <limits.h> header file. */
35 #undef HAVE_LIMITS_H
36
37 /* Define if you have C99's lrintf function. */
38 #undef HAVE_LRINTF
39
40 /* Define to 1 if you have the <mathf.h> header file. */
41 #undef HAVE_MATHF_H
42
43 /* Define to 1 if you have the `memcpy' function. */
44 #undef HAVE_MEMCPY
45
46 /* Define to 1 if you have the <memory.h> header file. */
47 #undef HAVE_MEMORY_H
48
49 /* Define to 1 if you have the <stdint.h> header file. */
50 #undef HAVE_STDINT_H
51
52 /* Define to 1 if you have the <stdlib.h> header file. */
53 #undef HAVE_STDLIB_H
54
55 /* Define to 1 if you have the `strchr' function. */
56 #undef HAVE_STRCHR
57
58 /* Define to 1 if you have the <strings.h> header file. */
59 #undef HAVE_STRINGS_H
60
61 /* Define to 1 if you have the <string.h> header file. */
62 #undef HAVE_STRING_H
63
64 /* Define to 1 if you have the `strsep' function. */
65 #undef HAVE_STRSEP
66
67 /* Define to 1 if you have the <sysfs/libsysfs.h> header file. */
68 #undef HAVE_SYSFS_LIBSYSFS_H
69
70 /* Define to 1 if you have the <sys/stat.h> header file. */
71 #undef HAVE_SYS_STAT_H
72
73 /* Define to 1 if you have the <sys/time.h> header file. */
74 #undef HAVE_SYS_TIME_H
75
76 /* Define to 1 if you have the <sys/types.h> header file. */
77 #undef HAVE_SYS_TYPES_H
78
79 /* Define to 1 if you have the <unistd.h> header file. */
80 #undef HAVE_UNISTD_H
81
82 /* Define to the sub-directory where libtool stores uninstalled libraries. */
83 #undef LT_OBJDIR
84
85 /* Name of package */
86 #undef PACKAGE
87
88 /* Define to the address where bug reports for this package should be sent. */
89 #undef PACKAGE_BUGREPORT
90
91 /* Define to the full name of this package. */
92 #undef PACKAGE_NAME
93
94 /* Define to the full name and version of this package. */
95 #undef PACKAGE_STRING
96
97 /* Define to the one symbol short name of this package. */
98 #undef PACKAGE_TARNAME
99
100 /* Define to the home page for this package. */
101 #undef PACKAGE_URL
102
103 /* Define to the version of this package. */
104 #undef PACKAGE_VERSION
105
106 /* Define to 1 if you have the ANSI C header files. */
107 #undef STDC_HEADERS
108
109 /* Define to 1 if you can safely include both <sys/time.h> and <time.h>. */
110 #undef TIME_WITH_SYS_TIME
111
112 /* Version number of package */
113 #undef VERSION
114
115 /* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most
116 significant byte first (like Motorola and SPARC, unlike Intel). */
117 #if defined AC_APPLE_UNIVERSAL_BUILD
118 # if defined __BIG_ENDIAN__
119 # define WORDS_BIGENDIAN 1
120 # endif
121 #else
122 # ifndef WORDS_BIGENDIAN
123 # undef WORDS_BIGENDIAN
124 # endif
125 #endif
126
127 /* Define to `__inline__' or `__inline' if that's what the C compiler
128 calls it, or to nothing if 'inline' is not supported under any name. */
129 #ifndef __cplusplus
130 #undef inline
131 #endif
132
133 /* Define to `long int' if <sys/types.h> does not define. */
134 #undef off_t
0 #! /bin/sh
1 # Configuration validation subroutine script.
2 # Copyright 1992-2018 Free Software Foundation, Inc.
3
4 timestamp='2018-02-22'
5
6 # This file is free software; you can redistribute it and/or modify it
7 # under the terms of the GNU General Public License as published by
8 # the Free Software Foundation; either version 3 of the License, or
9 # (at your option) any later version.
10 #
11 # This program is distributed in the hope that it will be useful, but
12 # WITHOUT ANY WARRANTY; without even the implied warranty of
13 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 # General Public License for more details.
15 #
16 # You should have received a copy of the GNU General Public License
17 # along with this program; if not, see <https://www.gnu.org/licenses/>.
18 #
19 # As a special exception to the GNU General Public License, if you
20 # distribute this file as part of a program that contains a
21 # configuration script generated by Autoconf, you may include it under
22 # the same distribution terms that you use for the rest of that
23 # program. This Exception is an additional permission under section 7
24 # of the GNU General Public License, version 3 ("GPLv3").
25
26
27 # Please send patches to <config-patches@gnu.org>.
28 #
29 # Configuration subroutine to validate and canonicalize a configuration type.
30 # Supply the specified configuration type as an argument.
31 # If it is invalid, we print an error message on stderr and exit with code 1.
32 # Otherwise, we print the canonical config type on stdout and succeed.
33
34 # You can get the latest version of this script from:
35 # https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub
36
37 # This file is supposed to be the same for all GNU packages
38 # and recognize all the CPU types, system types and aliases
39 # that are meaningful with *any* GNU software.
40 # Each package is responsible for reporting which valid configurations
41 # it does not support. The user should be able to distinguish
42 # a failure to support a valid configuration from a meaningless
43 # configuration.
44
45 # The goal of this file is to map all the various variations of a given
46 # machine specification into a single specification in the form:
47 # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
48 # or in some cases, the newer four-part form:
49 # CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
50 # It is wrong to echo any other type of specification.
51
52 me=`echo "$0" | sed -e 's,.*/,,'`
53
54 usage="\
55 Usage: $0 [OPTION] CPU-MFR-OPSYS or ALIAS
56
57 Canonicalize a configuration name.
58
59 Options:
60 -h, --help print this help, then exit
61 -t, --time-stamp print date of last modification, then exit
62 -v, --version print version number, then exit
63
64 Report bugs and patches to <config-patches@gnu.org>."
65
66 version="\
67 GNU config.sub ($timestamp)
68
69 Copyright 1992-2018 Free Software Foundation, Inc.
70
71 This is free software; see the source for copying conditions. There is NO
72 warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
73
74 help="
75 Try \`$me --help' for more information."
76
77 # Parse command line
78 while test $# -gt 0 ; do
79 case $1 in
80 --time-stamp | --time* | -t )
81 echo "$timestamp" ; exit ;;
82 --version | -v )
83 echo "$version" ; exit ;;
84 --help | --h* | -h )
85 echo "$usage"; exit ;;
86 -- ) # Stop option processing
87 shift; break ;;
88 - ) # Use stdin as input.
89 break ;;
90 -* )
91 echo "$me: invalid option $1$help"
92 exit 1 ;;
93
94 *local*)
95 # First pass through any local machine types.
96 echo "$1"
97 exit ;;
98
99 * )
100 break ;;
101 esac
102 done
103
104 case $# in
105 0) echo "$me: missing argument$help" >&2
106 exit 1;;
107 1) ;;
108 *) echo "$me: too many arguments$help" >&2
109 exit 1;;
110 esac
111
112 # Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any).
113 # Here we must recognize all the valid KERNEL-OS combinations.
114 maybe_os=`echo "$1" | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
115 case $maybe_os in
116 nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \
117 linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \
118 knetbsd*-gnu* | netbsd*-gnu* | netbsd*-eabi* | \
119 kopensolaris*-gnu* | cloudabi*-eabi* | \
120 storm-chaos* | os2-emx* | rtmk-nova*)
121 os=-$maybe_os
122 basic_machine=`echo "$1" | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
123 ;;
124 android-linux)
125 os=-linux-android
126 basic_machine=`echo "$1" | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown
127 ;;
128 *)
129 basic_machine=`echo "$1" | sed 's/-[^-]*$//'`
130 if [ "$basic_machine" != "$1" ]
131 then os=`echo "$1" | sed 's/.*-/-/'`
132 else os=; fi
133 ;;
134 esac
135
136 ### Let's recognize common machines as not being operating systems so
137 ### that things like config.sub decstation-3100 work. We also
138 ### recognize some manufacturers as not being operating systems, so we
139 ### can provide default operating systems below.
140 case $os in
141 -sun*os*)
142 # Prevent following clause from handling this invalid input.
143 ;;
144 -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \
145 -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \
146 -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \
147 -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
148 -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
149 -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
150 -apple | -axis | -knuth | -cray | -microblaze*)
151 os=
152 basic_machine=$1
153 ;;
154 -bluegene*)
155 os=-cnk
156 ;;
157 -sim | -cisco | -oki | -wec | -winbond)
158 os=
159 basic_machine=$1
160 ;;
161 -scout)
162 ;;
163 -wrs)
164 os=-vxworks
165 basic_machine=$1
166 ;;
167 -chorusos*)
168 os=-chorusos
169 basic_machine=$1
170 ;;
171 -chorusrdb)
172 os=-chorusrdb
173 basic_machine=$1
174 ;;
175 -hiux*)
176 os=-hiuxwe2
177 ;;
178 -sco6)
179 os=-sco5v6
180 basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
181 ;;
182 -sco5)
183 os=-sco3.2v5
184 basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
185 ;;
186 -sco4)
187 os=-sco3.2v4
188 basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
189 ;;
190 -sco3.2.[4-9]*)
191 os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
192 basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
193 ;;
194 -sco3.2v[4-9]*)
195 # Don't forget version if it is 3.2v4 or newer.
196 basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
197 ;;
198 -sco5v6*)
199 # Don't forget version if it is 3.2v4 or newer.
200 basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
201 ;;
202 -sco*)
203 os=-sco3.2v2
204 basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
205 ;;
206 -udk*)
207 basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
208 ;;
209 -isc)
210 os=-isc2.2
211 basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
212 ;;
213 -clix*)
214 basic_machine=clipper-intergraph
215 ;;
216 -isc*)
217 basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
218 ;;
219 -lynx*178)
220 os=-lynxos178
221 ;;
222 -lynx*5)
223 os=-lynxos5
224 ;;
225 -lynx*)
226 os=-lynxos
227 ;;
228 -ptx*)
229 basic_machine=`echo "$1" | sed -e 's/86-.*/86-sequent/'`
230 ;;
231 -psos*)
232 os=-psos
233 ;;
234 -mint | -mint[0-9]*)
235 basic_machine=m68k-atari
236 os=-mint
237 ;;
238 esac
239
240 # Decode aliases for certain CPU-COMPANY combinations.
241 case $basic_machine in
242 # Recognize the basic CPU types without company name.
243 # Some are omitted here because they have special meanings below.
244 1750a | 580 \
245 | a29k \
246 | aarch64 | aarch64_be \
247 | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
248 | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
249 | am33_2.0 \
250 | arc | arceb \
251 | arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \
252 | avr | avr32 \
253 | ba \
254 | be32 | be64 \
255 | bfin \
256 | c4x | c8051 | clipper \
257 | d10v | d30v | dlx | dsp16xx \
258 | e2k | epiphany \
259 | fido | fr30 | frv | ft32 \
260 | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
261 | hexagon \
262 | i370 | i860 | i960 | ia16 | ia64 \
263 | ip2k | iq2000 \
264 | k1om \
265 | le32 | le64 \
266 | lm32 \
267 | m32c | m32r | m32rle | m68000 | m68k | m88k \
268 | maxq | mb | microblaze | microblazeel | mcore | mep | metag \
269 | mips | mipsbe | mipseb | mipsel | mipsle \
270 | mips16 \
271 | mips64 | mips64el \
272 | mips64octeon | mips64octeonel \
273 | mips64orion | mips64orionel \
274 | mips64r5900 | mips64r5900el \
275 | mips64vr | mips64vrel \
276 | mips64vr4100 | mips64vr4100el \
277 | mips64vr4300 | mips64vr4300el \
278 | mips64vr5000 | mips64vr5000el \
279 | mips64vr5900 | mips64vr5900el \
280 | mipsisa32 | mipsisa32el \
281 | mipsisa32r2 | mipsisa32r2el \
282 | mipsisa32r6 | mipsisa32r6el \
283 | mipsisa64 | mipsisa64el \
284 | mipsisa64r2 | mipsisa64r2el \
285 | mipsisa64r6 | mipsisa64r6el \
286 | mipsisa64sb1 | mipsisa64sb1el \
287 | mipsisa64sr71k | mipsisa64sr71kel \
288 | mipsr5900 | mipsr5900el \
289 | mipstx39 | mipstx39el \
290 | mn10200 | mn10300 \
291 | moxie \
292 | mt \
293 | msp430 \
294 | nds32 | nds32le | nds32be \
295 | nios | nios2 | nios2eb | nios2el \
296 | ns16k | ns32k \
297 | open8 | or1k | or1knd | or32 \
298 | pdp10 | pj | pjl \
299 | powerpc | powerpc64 | powerpc64le | powerpcle \
300 | pru \
301 | pyramid \
302 | riscv32 | riscv64 \
303 | rl78 | rx \
304 | score \
305 | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[234]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
306 | sh64 | sh64le \
307 | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \
308 | sparcv8 | sparcv9 | sparcv9b | sparcv9v \
309 | spu \
310 | tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \
311 | ubicom32 \
312 | v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \
313 | visium \
314 | wasm32 \
315 | x86 | xc16x | xstormy16 | xtensa \
316 | z8k | z80)
317 basic_machine=$basic_machine-unknown
318 ;;
319 c54x)
320 basic_machine=tic54x-unknown
321 ;;
322 c55x)
323 basic_machine=tic55x-unknown
324 ;;
325 c6x)
326 basic_machine=tic6x-unknown
327 ;;
328 leon|leon[3-9])
329 basic_machine=sparc-$basic_machine
330 ;;
331 m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | nvptx | picochip)
332 basic_machine=$basic_machine-unknown
333 os=-none
334 ;;
335 m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65)
336 ;;
337 ms1)
338 basic_machine=mt-unknown
339 ;;
340
341 strongarm | thumb | xscale)
342 basic_machine=arm-unknown
343 ;;
344 xgate)
345 basic_machine=$basic_machine-unknown
346 os=-none
347 ;;
348 xscaleeb)
349 basic_machine=armeb-unknown
350 ;;
351
352 xscaleel)
353 basic_machine=armel-unknown
354 ;;
355
356 # We use `pc' rather than `unknown'
357 # because (1) that's what they normally are, and
358 # (2) the word "unknown" tends to confuse beginning users.
359 i*86 | x86_64)
360 basic_machine=$basic_machine-pc
361 ;;
362 # Object if more than one company name word.
363 *-*-*)
364 echo Invalid configuration \`"$1"\': machine \`"$basic_machine"\' not recognized 1>&2
365 exit 1
366 ;;
367 # Recognize the basic CPU types with company name.
368 580-* \
369 | a29k-* \
370 | aarch64-* | aarch64_be-* \
371 | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
372 | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
373 | alphapca5[67]-* | alpha64pca5[67]-* | arc-* | arceb-* \
374 | arm-* | armbe-* | armle-* | armeb-* | armv*-* \
375 | avr-* | avr32-* \
376 | ba-* \
377 | be32-* | be64-* \
378 | bfin-* | bs2000-* \
379 | c[123]* | c30-* | [cjt]90-* | c4x-* \
380 | c8051-* | clipper-* | craynv-* | cydra-* \
381 | d10v-* | d30v-* | dlx-* \
382 | e2k-* | elxsi-* \
383 | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
384 | h8300-* | h8500-* \
385 | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
386 | hexagon-* \
387 | i*86-* | i860-* | i960-* | ia16-* | ia64-* \
388 | ip2k-* | iq2000-* \
389 | k1om-* \
390 | le32-* | le64-* \
391 | lm32-* \
392 | m32c-* | m32r-* | m32rle-* \
393 | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
394 | m88110-* | m88k-* | maxq-* | mcore-* | metag-* \
395 | microblaze-* | microblazeel-* \
396 | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
397 | mips16-* \
398 | mips64-* | mips64el-* \
399 | mips64octeon-* | mips64octeonel-* \
400 | mips64orion-* | mips64orionel-* \
401 | mips64r5900-* | mips64r5900el-* \
402 | mips64vr-* | mips64vrel-* \
403 | mips64vr4100-* | mips64vr4100el-* \
404 | mips64vr4300-* | mips64vr4300el-* \
405 | mips64vr5000-* | mips64vr5000el-* \
406 | mips64vr5900-* | mips64vr5900el-* \
407 | mipsisa32-* | mipsisa32el-* \
408 | mipsisa32r2-* | mipsisa32r2el-* \
409 | mipsisa32r6-* | mipsisa32r6el-* \
410 | mipsisa64-* | mipsisa64el-* \
411 | mipsisa64r2-* | mipsisa64r2el-* \
412 | mipsisa64r6-* | mipsisa64r6el-* \
413 | mipsisa64sb1-* | mipsisa64sb1el-* \
414 | mipsisa64sr71k-* | mipsisa64sr71kel-* \
415 | mipsr5900-* | mipsr5900el-* \
416 | mipstx39-* | mipstx39el-* \
417 | mmix-* \
418 | mt-* \
419 | msp430-* \
420 | nds32-* | nds32le-* | nds32be-* \
421 | nios-* | nios2-* | nios2eb-* | nios2el-* \
422 | none-* | np1-* | ns16k-* | ns32k-* \
423 | open8-* \
424 | or1k*-* \
425 | orion-* \
426 | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
427 | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \
428 | pru-* \
429 | pyramid-* \
430 | riscv32-* | riscv64-* \
431 | rl78-* | romp-* | rs6000-* | rx-* \
432 | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
433 | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
434 | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \
435 | sparclite-* \
436 | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx*-* \
437 | tahoe-* \
438 | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
439 | tile*-* \
440 | tron-* \
441 | ubicom32-* \
442 | v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \
443 | vax-* \
444 | visium-* \
445 | wasm32-* \
446 | we32k-* \
447 | x86-* | x86_64-* | xc16x-* | xps100-* \
448 | xstormy16-* | xtensa*-* \
449 | ymp-* \
450 | z8k-* | z80-*)
451 ;;
452 # Recognize the basic CPU types without company name, with glob match.
453 xtensa*)
454 basic_machine=$basic_machine-unknown
455 ;;
456 # Recognize the various machine names and aliases which stand
457 # for a CPU type and a company and sometimes even an OS.
458 386bsd)
459 basic_machine=i386-pc
460 os=-bsd
461 ;;
462 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
463 basic_machine=m68000-att
464 ;;
465 3b*)
466 basic_machine=we32k-att
467 ;;
468 a29khif)
469 basic_machine=a29k-amd
470 os=-udi
471 ;;
472 abacus)
473 basic_machine=abacus-unknown
474 ;;
475 adobe68k)
476 basic_machine=m68010-adobe
477 os=-scout
478 ;;
479 alliant | fx80)
480 basic_machine=fx80-alliant
481 ;;
482 altos | altos3068)
483 basic_machine=m68k-altos
484 ;;
485 am29k)
486 basic_machine=a29k-none
487 os=-bsd
488 ;;
489 amd64)
490 basic_machine=x86_64-pc
491 ;;
492 amd64-*)
493 basic_machine=x86_64-`echo "$basic_machine" | sed 's/^[^-]*-//'`
494 ;;
495 amdahl)
496 basic_machine=580-amdahl
497 os=-sysv
498 ;;
499 amiga | amiga-*)
500 basic_machine=m68k-unknown
501 ;;
502 amigaos | amigados)
503 basic_machine=m68k-unknown
504 os=-amigaos
505 ;;
506 amigaunix | amix)
507 basic_machine=m68k-unknown
508 os=-sysv4
509 ;;
510 apollo68)
511 basic_machine=m68k-apollo
512 os=-sysv
513 ;;
514 apollo68bsd)
515 basic_machine=m68k-apollo
516 os=-bsd
517 ;;
518 aros)
519 basic_machine=i386-pc
520 os=-aros
521 ;;
522 asmjs)
523 basic_machine=asmjs-unknown
524 ;;
525 aux)
526 basic_machine=m68k-apple
527 os=-aux
528 ;;
529 balance)
530 basic_machine=ns32k-sequent
531 os=-dynix
532 ;;
533 blackfin)
534 basic_machine=bfin-unknown
535 os=-linux
536 ;;
537 blackfin-*)
538 basic_machine=bfin-`echo "$basic_machine" | sed 's/^[^-]*-//'`
539 os=-linux
540 ;;
541 bluegene*)
542 basic_machine=powerpc-ibm
543 os=-cnk
544 ;;
545 c54x-*)
546 basic_machine=tic54x-`echo "$basic_machine" | sed 's/^[^-]*-//'`
547 ;;
548 c55x-*)
549 basic_machine=tic55x-`echo "$basic_machine" | sed 's/^[^-]*-//'`
550 ;;
551 c6x-*)
552 basic_machine=tic6x-`echo "$basic_machine" | sed 's/^[^-]*-//'`
553 ;;
554 c90)
555 basic_machine=c90-cray
556 os=-unicos
557 ;;
558 cegcc)
559 basic_machine=arm-unknown
560 os=-cegcc
561 ;;
562 convex-c1)
563 basic_machine=c1-convex
564 os=-bsd
565 ;;
566 convex-c2)
567 basic_machine=c2-convex
568 os=-bsd
569 ;;
570 convex-c32)
571 basic_machine=c32-convex
572 os=-bsd
573 ;;
574 convex-c34)
575 basic_machine=c34-convex
576 os=-bsd
577 ;;
578 convex-c38)
579 basic_machine=c38-convex
580 os=-bsd
581 ;;
582 cray | j90)
583 basic_machine=j90-cray
584 os=-unicos
585 ;;
586 craynv)
587 basic_machine=craynv-cray
588 os=-unicosmp
589 ;;
590 cr16 | cr16-*)
591 basic_machine=cr16-unknown
592 os=-elf
593 ;;
594 crds | unos)
595 basic_machine=m68k-crds
596 ;;
597 crisv32 | crisv32-* | etraxfs*)
598 basic_machine=crisv32-axis
599 ;;
600 cris | cris-* | etrax*)
601 basic_machine=cris-axis
602 ;;
603 crx)
604 basic_machine=crx-unknown
605 os=-elf
606 ;;
607 da30 | da30-*)
608 basic_machine=m68k-da30
609 ;;
610 decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
611 basic_machine=mips-dec
612 ;;
613 decsystem10* | dec10*)
614 basic_machine=pdp10-dec
615 os=-tops10
616 ;;
617 decsystem20* | dec20*)
618 basic_machine=pdp10-dec
619 os=-tops20
620 ;;
621 delta | 3300 | motorola-3300 | motorola-delta \
622 | 3300-motorola | delta-motorola)
623 basic_machine=m68k-motorola
624 ;;
625 delta88)
626 basic_machine=m88k-motorola
627 os=-sysv3
628 ;;
629 dicos)
630 basic_machine=i686-pc
631 os=-dicos
632 ;;
633 djgpp)
634 basic_machine=i586-pc
635 os=-msdosdjgpp
636 ;;
637 dpx20 | dpx20-*)
638 basic_machine=rs6000-bull
639 os=-bosx
640 ;;
641 dpx2*)
642 basic_machine=m68k-bull
643 os=-sysv3
644 ;;
645 e500v[12])
646 basic_machine=powerpc-unknown
647 os=$os"spe"
648 ;;
649 e500v[12]-*)
650 basic_machine=powerpc-`echo "$basic_machine" | sed 's/^[^-]*-//'`
651 os=$os"spe"
652 ;;
653 ebmon29k)
654 basic_machine=a29k-amd
655 os=-ebmon
656 ;;
657 elxsi)
658 basic_machine=elxsi-elxsi
659 os=-bsd
660 ;;
661 encore | umax | mmax)
662 basic_machine=ns32k-encore
663 ;;
664 es1800 | OSE68k | ose68k | ose | OSE)
665 basic_machine=m68k-ericsson
666 os=-ose
667 ;;
668 fx2800)
669 basic_machine=i860-alliant
670 ;;
671 genix)
672 basic_machine=ns32k-ns
673 ;;
674 gmicro)
675 basic_machine=tron-gmicro
676 os=-sysv
677 ;;
678 go32)
679 basic_machine=i386-pc
680 os=-go32
681 ;;
682 h3050r* | hiux*)
683 basic_machine=hppa1.1-hitachi
684 os=-hiuxwe2
685 ;;
686 h8300hms)
687 basic_machine=h8300-hitachi
688 os=-hms
689 ;;
690 h8300xray)
691 basic_machine=h8300-hitachi
692 os=-xray
693 ;;
694 h8500hms)
695 basic_machine=h8500-hitachi
696 os=-hms
697 ;;
698 harris)
699 basic_machine=m88k-harris
700 os=-sysv3
701 ;;
702 hp300-*)
703 basic_machine=m68k-hp
704 ;;
705 hp300bsd)
706 basic_machine=m68k-hp
707 os=-bsd
708 ;;
709 hp300hpux)
710 basic_machine=m68k-hp
711 os=-hpux
712 ;;
713 hp3k9[0-9][0-9] | hp9[0-9][0-9])
714 basic_machine=hppa1.0-hp
715 ;;
716 hp9k2[0-9][0-9] | hp9k31[0-9])
717 basic_machine=m68000-hp
718 ;;
719 hp9k3[2-9][0-9])
720 basic_machine=m68k-hp
721 ;;
722 hp9k6[0-9][0-9] | hp6[0-9][0-9])
723 basic_machine=hppa1.0-hp
724 ;;
725 hp9k7[0-79][0-9] | hp7[0-79][0-9])
726 basic_machine=hppa1.1-hp
727 ;;
728 hp9k78[0-9] | hp78[0-9])
729 # FIXME: really hppa2.0-hp
730 basic_machine=hppa1.1-hp
731 ;;
732 hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893)
733 # FIXME: really hppa2.0-hp
734 basic_machine=hppa1.1-hp
735 ;;
736 hp9k8[0-9][13679] | hp8[0-9][13679])
737 basic_machine=hppa1.1-hp
738 ;;
739 hp9k8[0-9][0-9] | hp8[0-9][0-9])
740 basic_machine=hppa1.0-hp
741 ;;
742 hppaosf)
743 basic_machine=hppa1.1-hp
744 os=-osf
745 ;;
746 hppro)
747 basic_machine=hppa1.1-hp
748 os=-proelf
749 ;;
750 i370-ibm* | ibm*)
751 basic_machine=i370-ibm
752 ;;
753 i*86v32)
754 basic_machine=`echo "$1" | sed -e 's/86.*/86-pc/'`
755 os=-sysv32
756 ;;
757 i*86v4*)
758 basic_machine=`echo "$1" | sed -e 's/86.*/86-pc/'`
759 os=-sysv4
760 ;;
761 i*86v)
762 basic_machine=`echo "$1" | sed -e 's/86.*/86-pc/'`
763 os=-sysv
764 ;;
765 i*86sol2)
766 basic_machine=`echo "$1" | sed -e 's/86.*/86-pc/'`
767 os=-solaris2
768 ;;
769 i386mach)
770 basic_machine=i386-mach
771 os=-mach
772 ;;
773 vsta)
774 basic_machine=i386-unknown
775 os=-vsta
776 ;;
777 iris | iris4d)
778 basic_machine=mips-sgi
779 case $os in
780 -irix*)
781 ;;
782 *)
783 os=-irix4
784 ;;
785 esac
786 ;;
787 isi68 | isi)
788 basic_machine=m68k-isi
789 os=-sysv
790 ;;
791 leon-*|leon[3-9]-*)
792 basic_machine=sparc-`echo "$basic_machine" | sed 's/-.*//'`
793 ;;
794 m68knommu)
795 basic_machine=m68k-unknown
796 os=-linux
797 ;;
798 m68knommu-*)
799 basic_machine=m68k-`echo "$basic_machine" | sed 's/^[^-]*-//'`
800 os=-linux
801 ;;
802 magnum | m3230)
803 basic_machine=mips-mips
804 os=-sysv
805 ;;
806 merlin)
807 basic_machine=ns32k-utek
808 os=-sysv
809 ;;
810 microblaze*)
811 basic_machine=microblaze-xilinx
812 ;;
813 mingw64)
814 basic_machine=x86_64-pc
815 os=-mingw64
816 ;;
817 mingw32)
818 basic_machine=i686-pc
819 os=-mingw32
820 ;;
821 mingw32ce)
822 basic_machine=arm-unknown
823 os=-mingw32ce
824 ;;
825 miniframe)
826 basic_machine=m68000-convergent
827 ;;
828 *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*)
829 basic_machine=m68k-atari
830 os=-mint
831 ;;
832 mips3*-*)
833 basic_machine=`echo "$basic_machine" | sed -e 's/mips3/mips64/'`
834 ;;
835 mips3*)
836 basic_machine=`echo "$basic_machine" | sed -e 's/mips3/mips64/'`-unknown
837 ;;
838 monitor)
839 basic_machine=m68k-rom68k
840 os=-coff
841 ;;
842 morphos)
843 basic_machine=powerpc-unknown
844 os=-morphos
845 ;;
846 moxiebox)
847 basic_machine=moxie-unknown
848 os=-moxiebox
849 ;;
850 msdos)
851 basic_machine=i386-pc
852 os=-msdos
853 ;;
854 ms1-*)
855 basic_machine=`echo "$basic_machine" | sed -e 's/ms1-/mt-/'`
856 ;;
857 msys)
858 basic_machine=i686-pc
859 os=-msys
860 ;;
861 mvs)
862 basic_machine=i370-ibm
863 os=-mvs
864 ;;
865 nacl)
866 basic_machine=le32-unknown
867 os=-nacl
868 ;;
869 ncr3000)
870 basic_machine=i486-ncr
871 os=-sysv4
872 ;;
873 netbsd386)
874 basic_machine=i386-unknown
875 os=-netbsd
876 ;;
877 netwinder)
878 basic_machine=armv4l-rebel
879 os=-linux
880 ;;
881 news | news700 | news800 | news900)
882 basic_machine=m68k-sony
883 os=-newsos
884 ;;
885 news1000)
886 basic_machine=m68030-sony
887 os=-newsos
888 ;;
889 news-3600 | risc-news)
890 basic_machine=mips-sony
891 os=-newsos
892 ;;
893 necv70)
894 basic_machine=v70-nec
895 os=-sysv
896 ;;
897 next | m*-next)
898 basic_machine=m68k-next
899 case $os in
900 -nextstep* )
901 ;;
902 -ns2*)
903 os=-nextstep2
904 ;;
905 *)
906 os=-nextstep3
907 ;;
908 esac
909 ;;
910 nh3000)
911 basic_machine=m68k-harris
912 os=-cxux
913 ;;
914 nh[45]000)
915 basic_machine=m88k-harris
916 os=-cxux
917 ;;
918 nindy960)
919 basic_machine=i960-intel
920 os=-nindy
921 ;;
922 mon960)
923 basic_machine=i960-intel
924 os=-mon960
925 ;;
926 nonstopux)
927 basic_machine=mips-compaq
928 os=-nonstopux
929 ;;
930 np1)
931 basic_machine=np1-gould
932 ;;
933 neo-tandem)
934 basic_machine=neo-tandem
935 ;;
936 nse-tandem)
937 basic_machine=nse-tandem
938 ;;
939 nsr-tandem)
940 basic_machine=nsr-tandem
941 ;;
942 nsv-tandem)
943 basic_machine=nsv-tandem
944 ;;
945 nsx-tandem)
946 basic_machine=nsx-tandem
947 ;;
948 op50n-* | op60c-*)
949 basic_machine=hppa1.1-oki
950 os=-proelf
951 ;;
952 openrisc | openrisc-*)
953 basic_machine=or32-unknown
954 ;;
955 os400)
956 basic_machine=powerpc-ibm
957 os=-os400
958 ;;
959 OSE68000 | ose68000)
960 basic_machine=m68000-ericsson
961 os=-ose
962 ;;
963 os68k)
964 basic_machine=m68k-none
965 os=-os68k
966 ;;
967 pa-hitachi)
968 basic_machine=hppa1.1-hitachi
969 os=-hiuxwe2
970 ;;
971 paragon)
972 basic_machine=i860-intel
973 os=-osf
974 ;;
975 parisc)
976 basic_machine=hppa-unknown
977 os=-linux
978 ;;
979 parisc-*)
980 basic_machine=hppa-`echo "$basic_machine" | sed 's/^[^-]*-//'`
981 os=-linux
982 ;;
983 pbd)
984 basic_machine=sparc-tti
985 ;;
986 pbb)
987 basic_machine=m68k-tti
988 ;;
989 pc532 | pc532-*)
990 basic_machine=ns32k-pc532
991 ;;
992 pc98)
993 basic_machine=i386-pc
994 ;;
995 pc98-*)
996 basic_machine=i386-`echo "$basic_machine" | sed 's/^[^-]*-//'`
997 ;;
998 pentium | p5 | k5 | k6 | nexgen | viac3)
999 basic_machine=i586-pc
1000 ;;
1001 pentiumpro | p6 | 6x86 | athlon | athlon_*)
1002 basic_machine=i686-pc
1003 ;;
1004 pentiumii | pentium2 | pentiumiii | pentium3)
1005 basic_machine=i686-pc
1006 ;;
1007 pentium4)
1008 basic_machine=i786-pc
1009 ;;
1010 pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
1011 basic_machine=i586-`echo "$basic_machine" | sed 's/^[^-]*-//'`
1012 ;;
1013 pentiumpro-* | p6-* | 6x86-* | athlon-*)
1014 basic_machine=i686-`echo "$basic_machine" | sed 's/^[^-]*-//'`
1015 ;;
1016 pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
1017 basic_machine=i686-`echo "$basic_machine" | sed 's/^[^-]*-//'`
1018 ;;
1019 pentium4-*)
1020 basic_machine=i786-`echo "$basic_machine" | sed 's/^[^-]*-//'`
1021 ;;
1022 pn)
1023 basic_machine=pn-gould
1024 ;;
1025 power) basic_machine=power-ibm
1026 ;;
1027 ppc | ppcbe) basic_machine=powerpc-unknown
1028 ;;
1029 ppc-* | ppcbe-*)
1030 basic_machine=powerpc-`echo "$basic_machine" | sed 's/^[^-]*-//'`
1031 ;;
1032 ppcle | powerpclittle)
1033 basic_machine=powerpcle-unknown
1034 ;;
1035 ppcle-* | powerpclittle-*)
1036 basic_machine=powerpcle-`echo "$basic_machine" | sed 's/^[^-]*-//'`
1037 ;;
1038 ppc64) basic_machine=powerpc64-unknown
1039 ;;
1040 ppc64-*) basic_machine=powerpc64-`echo "$basic_machine" | sed 's/^[^-]*-//'`
1041 ;;
1042 ppc64le | powerpc64little)
1043 basic_machine=powerpc64le-unknown
1044 ;;
1045 ppc64le-* | powerpc64little-*)
1046 basic_machine=powerpc64le-`echo "$basic_machine" | sed 's/^[^-]*-//'`
1047 ;;
1048 ps2)
1049 basic_machine=i386-ibm
1050 ;;
1051 pw32)
1052 basic_machine=i586-unknown
1053 os=-pw32
1054 ;;
1055 rdos | rdos64)
1056 basic_machine=x86_64-pc
1057 os=-rdos
1058 ;;
1059 rdos32)
1060 basic_machine=i386-pc
1061 os=-rdos
1062 ;;
1063 rom68k)
1064 basic_machine=m68k-rom68k
1065 os=-coff
1066 ;;
1067 rm[46]00)
1068 basic_machine=mips-siemens
1069 ;;
1070 rtpc | rtpc-*)
1071 basic_machine=romp-ibm
1072 ;;
1073 s390 | s390-*)
1074 basic_machine=s390-ibm
1075 ;;
1076 s390x | s390x-*)
1077 basic_machine=s390x-ibm
1078 ;;
1079 sa29200)
1080 basic_machine=a29k-amd
1081 os=-udi
1082 ;;
1083 sb1)
1084 basic_machine=mipsisa64sb1-unknown
1085 ;;
1086 sb1el)
1087 basic_machine=mipsisa64sb1el-unknown
1088 ;;
1089 sde)
1090 basic_machine=mipsisa32-sde
1091 os=-elf
1092 ;;
1093 sei)
1094 basic_machine=mips-sei
1095 os=-seiux
1096 ;;
1097 sequent)
1098 basic_machine=i386-sequent
1099 ;;
1100 sh5el)
1101 basic_machine=sh5le-unknown
1102 ;;
1103 simso-wrs)
1104 basic_machine=sparclite-wrs
1105 os=-vxworks
1106 ;;
1107 sps7)
1108 basic_machine=m68k-bull
1109 os=-sysv2
1110 ;;
1111 spur)
1112 basic_machine=spur-unknown
1113 ;;
1114 st2000)
1115 basic_machine=m68k-tandem
1116 ;;
1117 stratus)
1118 basic_machine=i860-stratus
1119 os=-sysv4
1120 ;;
1121 strongarm-* | thumb-*)
1122 basic_machine=arm-`echo "$basic_machine" | sed 's/^[^-]*-//'`
1123 ;;
1124 sun2)
1125 basic_machine=m68000-sun
1126 ;;
1127 sun2os3)
1128 basic_machine=m68000-sun
1129 os=-sunos3
1130 ;;
1131 sun2os4)
1132 basic_machine=m68000-sun
1133 os=-sunos4
1134 ;;
1135 sun3os3)
1136 basic_machine=m68k-sun
1137 os=-sunos3
1138 ;;
1139 sun3os4)
1140 basic_machine=m68k-sun
1141 os=-sunos4
1142 ;;
1143 sun4os3)
1144 basic_machine=sparc-sun
1145 os=-sunos3
1146 ;;
1147 sun4os4)
1148 basic_machine=sparc-sun
1149 os=-sunos4
1150 ;;
1151 sun4sol2)
1152 basic_machine=sparc-sun
1153 os=-solaris2
1154 ;;
1155 sun3 | sun3-*)
1156 basic_machine=m68k-sun
1157 ;;
1158 sun4)
1159 basic_machine=sparc-sun
1160 ;;
1161 sun386 | sun386i | roadrunner)
1162 basic_machine=i386-sun
1163 ;;
1164 sv1)
1165 basic_machine=sv1-cray
1166 os=-unicos
1167 ;;
1168 symmetry)
1169 basic_machine=i386-sequent
1170 os=-dynix
1171 ;;
1172 t3e)
1173 basic_machine=alphaev5-cray
1174 os=-unicos
1175 ;;
1176 t90)
1177 basic_machine=t90-cray
1178 os=-unicos
1179 ;;
1180 tile*)
1181 basic_machine=$basic_machine-unknown
1182 os=-linux-gnu
1183 ;;
1184 tx39)
1185 basic_machine=mipstx39-unknown
1186 ;;
1187 tx39el)
1188 basic_machine=mipstx39el-unknown
1189 ;;
1190 toad1)
1191 basic_machine=pdp10-xkl
1192 os=-tops20
1193 ;;
1194 tower | tower-32)
1195 basic_machine=m68k-ncr
1196 ;;
1197 tpf)
1198 basic_machine=s390x-ibm
1199 os=-tpf
1200 ;;
1201 udi29k)
1202 basic_machine=a29k-amd
1203 os=-udi
1204 ;;
1205 ultra3)
1206 basic_machine=a29k-nyu
1207 os=-sym1
1208 ;;
1209 v810 | necv810)
1210 basic_machine=v810-nec
1211 os=-none
1212 ;;
1213 vaxv)
1214 basic_machine=vax-dec
1215 os=-sysv
1216 ;;
1217 vms)
1218 basic_machine=vax-dec
1219 os=-vms
1220 ;;
1221 vpp*|vx|vx-*)
1222 basic_machine=f301-fujitsu
1223 ;;
1224 vxworks960)
1225 basic_machine=i960-wrs
1226 os=-vxworks
1227 ;;
1228 vxworks68)
1229 basic_machine=m68k-wrs
1230 os=-vxworks
1231 ;;
1232 vxworks29k)
1233 basic_machine=a29k-wrs
1234 os=-vxworks
1235 ;;
1236 w65*)
1237 basic_machine=w65-wdc
1238 os=-none
1239 ;;
1240 w89k-*)
1241 basic_machine=hppa1.1-winbond
1242 os=-proelf
1243 ;;
1244 x64)
1245 basic_machine=x86_64-pc
1246 ;;
1247 xbox)
1248 basic_machine=i686-pc
1249 os=-mingw32
1250 ;;
1251 xps | xps100)
1252 basic_machine=xps100-honeywell
1253 ;;
1254 xscale-* | xscalee[bl]-*)
1255 basic_machine=`echo "$basic_machine" | sed 's/^xscale/arm/'`
1256 ;;
1257 ymp)
1258 basic_machine=ymp-cray
1259 os=-unicos
1260 ;;
1261 none)
1262 basic_machine=none-none
1263 os=-none
1264 ;;
1265
1266 # Here we handle the default manufacturer of certain CPU types. It is in
1267 # some cases the only manufacturer, in others, it is the most popular.
1268 w89k)
1269 basic_machine=hppa1.1-winbond
1270 ;;
1271 op50n)
1272 basic_machine=hppa1.1-oki
1273 ;;
1274 op60c)
1275 basic_machine=hppa1.1-oki
1276 ;;
1277 romp)
1278 basic_machine=romp-ibm
1279 ;;
1280 mmix)
1281 basic_machine=mmix-knuth
1282 ;;
1283 rs6000)
1284 basic_machine=rs6000-ibm
1285 ;;
1286 vax)
1287 basic_machine=vax-dec
1288 ;;
1289 pdp11)
1290 basic_machine=pdp11-dec
1291 ;;
1292 we32k)
1293 basic_machine=we32k-att
1294 ;;
1295 sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele)
1296 basic_machine=sh-unknown
1297 ;;
1298 cydra)
1299 basic_machine=cydra-cydrome
1300 ;;
1301 orion)
1302 basic_machine=orion-highlevel
1303 ;;
1304 orion105)
1305 basic_machine=clipper-highlevel
1306 ;;
1307 mac | mpw | mac-mpw)
1308 basic_machine=m68k-apple
1309 ;;
1310 pmac | pmac-mpw)
1311 basic_machine=powerpc-apple
1312 ;;
1313 *-unknown)
1314 # Make sure to match an already-canonicalized machine name.
1315 ;;
1316 *)
1317 echo Invalid configuration \`"$1"\': machine \`"$basic_machine"\' not recognized 1>&2
1318 exit 1
1319 ;;
1320 esac
1321
1322 # Here we canonicalize certain aliases for manufacturers.
1323 case $basic_machine in
1324 *-digital*)
1325 basic_machine=`echo "$basic_machine" | sed 's/digital.*/dec/'`
1326 ;;
1327 *-commodore*)
1328 basic_machine=`echo "$basic_machine" | sed 's/commodore.*/cbm/'`
1329 ;;
1330 *)
1331 ;;
1332 esac
1333
1334 # Decode manufacturer-specific aliases for certain operating systems.
1335
1336 if [ x"$os" != x"" ]
1337 then
1338 case $os in
1339 # First match some system type aliases that might get confused
1340 # with valid system types.
1341 # -solaris* is a basic system type, with this one exception.
1342 -auroraux)
1343 os=-auroraux
1344 ;;
1345 -solaris1 | -solaris1.*)
1346 os=`echo $os | sed -e 's|solaris1|sunos4|'`
1347 ;;
1348 -solaris)
1349 os=-solaris2
1350 ;;
1351 -unixware*)
1352 os=-sysv4.2uw
1353 ;;
1354 -gnu/linux*)
1355 os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'`
1356 ;;
1357 # es1800 is here to avoid being matched by es* (a different OS)
1358 -es1800*)
1359 os=-ose
1360 ;;
1361 # Now accept the basic system types.
1362 # The portable systems comes first.
1363 # Each alternative MUST end in a * to match a version number.
1364 # -sysv* is not here because it comes later, after sysvr4.
1365 -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
1366 | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\
1367 | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \
1368 | -sym* | -kopensolaris* | -plan9* \
1369 | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
1370 | -aos* | -aros* | -cloudabi* | -sortix* \
1371 | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
1372 | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
1373 | -hiux* | -knetbsd* | -mirbsd* | -netbsd* \
1374 | -bitrig* | -openbsd* | -solidbsd* | -libertybsd* \
1375 | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
1376 | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
1377 | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
1378 | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
1379 | -chorusos* | -chorusrdb* | -cegcc* | -glidix* \
1380 | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
1381 | -midipix* | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \
1382 | -linux-newlib* | -linux-musl* | -linux-uclibc* \
1383 | -uxpv* | -beos* | -mpeix* | -udk* | -moxiebox* \
1384 | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* \
1385 | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
1386 | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
1387 | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
1388 | -morphos* | -superux* | -rtmk* | -windiss* \
1389 | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
1390 | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es* \
1391 | -onefs* | -tirtos* | -phoenix* | -fuchsia* | -redox* | -bme* \
1392 | -midnightbsd*)
1393 # Remember, each alternative MUST END IN *, to match a version number.
1394 ;;
1395 -qnx*)
1396 case $basic_machine in
1397 x86-* | i*86-*)
1398 ;;
1399 *)
1400 os=-nto$os
1401 ;;
1402 esac
1403 ;;
1404 -nto-qnx*)
1405 ;;
1406 -nto*)
1407 os=`echo $os | sed -e 's|nto|nto-qnx|'`
1408 ;;
1409 -sim | -xray | -os68k* | -v88r* \
1410 | -windows* | -osx | -abug | -netware* | -os9* \
1411 | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
1412 ;;
1413 -mac*)
1414 os=`echo "$os" | sed -e 's|mac|macos|'`
1415 ;;
1416 -linux-dietlibc)
1417 os=-linux-dietlibc
1418 ;;
1419 -linux*)
1420 os=`echo $os | sed -e 's|linux|linux-gnu|'`
1421 ;;
1422 -sunos5*)
1423 os=`echo "$os" | sed -e 's|sunos5|solaris2|'`
1424 ;;
1425 -sunos6*)
1426 os=`echo "$os" | sed -e 's|sunos6|solaris3|'`
1427 ;;
1428 -opened*)
1429 os=-openedition
1430 ;;
1431 -os400*)
1432 os=-os400
1433 ;;
1434 -wince*)
1435 os=-wince
1436 ;;
1437 -utek*)
1438 os=-bsd
1439 ;;
1440 -dynix*)
1441 os=-bsd
1442 ;;
1443 -acis*)
1444 os=-aos
1445 ;;
1446 -atheos*)
1447 os=-atheos
1448 ;;
1449 -syllable*)
1450 os=-syllable
1451 ;;
1452 -386bsd)
1453 os=-bsd
1454 ;;
1455 -ctix* | -uts*)
1456 os=-sysv
1457 ;;
1458 -nova*)
1459 os=-rtmk-nova
1460 ;;
1461 -ns2)
1462 os=-nextstep2
1463 ;;
1464 -nsk*)
1465 os=-nsk
1466 ;;
1467 # Preserve the version number of sinix5.
1468 -sinix5.*)
1469 os=`echo $os | sed -e 's|sinix|sysv|'`
1470 ;;
1471 -sinix*)
1472 os=-sysv4
1473 ;;
1474 -tpf*)
1475 os=-tpf
1476 ;;
1477 -triton*)
1478 os=-sysv3
1479 ;;
1480 -oss*)
1481 os=-sysv3
1482 ;;
1483 -svr4*)
1484 os=-sysv4
1485 ;;
1486 -svr3)
1487 os=-sysv3
1488 ;;
1489 -sysvr4)
1490 os=-sysv4
1491 ;;
1492 # This must come after -sysvr4.
1493 -sysv*)
1494 ;;
1495 -ose*)
1496 os=-ose
1497 ;;
1498 -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
1499 os=-mint
1500 ;;
1501 -zvmoe)
1502 os=-zvmoe
1503 ;;
1504 -dicos*)
1505 os=-dicos
1506 ;;
1507 -pikeos*)
1508 # Until real need of OS specific support for
1509 # particular features comes up, bare metal
1510 # configurations are quite functional.
1511 case $basic_machine in
1512 arm*)
1513 os=-eabi
1514 ;;
1515 *)
1516 os=-elf
1517 ;;
1518 esac
1519 ;;
1520 -nacl*)
1521 ;;
1522 -ios)
1523 ;;
1524 -none)
1525 ;;
1526 *)
1527 # Get rid of the `-' at the beginning of $os.
1528 os=`echo $os | sed 's/[^-]*-//'`
1529 echo Invalid configuration \`"$1"\': system \`"$os"\' not recognized 1>&2
1530 exit 1
1531 ;;
1532 esac
1533 else
1534
1535 # Here we handle the default operating systems that come with various machines.
1536 # The value should be what the vendor currently ships out the door with their
1537 # machine or put another way, the most popular os provided with the machine.
1538
1539 # Note that if you're going to try to match "-MANUFACTURER" here (say,
1540 # "-sun"), then you have to tell the case statement up towards the top
1541 # that MANUFACTURER isn't an operating system. Otherwise, code above
1542 # will signal an error saying that MANUFACTURER isn't an operating
1543 # system, and we'll never get to this point.
1544
1545 case $basic_machine in
1546 score-*)
1547 os=-elf
1548 ;;
1549 spu-*)
1550 os=-elf
1551 ;;
1552 *-acorn)
1553 os=-riscix1.2
1554 ;;
1555 arm*-rebel)
1556 os=-linux
1557 ;;
1558 arm*-semi)
1559 os=-aout
1560 ;;
1561 c4x-* | tic4x-*)
1562 os=-coff
1563 ;;
1564 c8051-*)
1565 os=-elf
1566 ;;
1567 hexagon-*)
1568 os=-elf
1569 ;;
1570 tic54x-*)
1571 os=-coff
1572 ;;
1573 tic55x-*)
1574 os=-coff
1575 ;;
1576 tic6x-*)
1577 os=-coff
1578 ;;
1579 # This must come before the *-dec entry.
1580 pdp10-*)
1581 os=-tops20
1582 ;;
1583 pdp11-*)
1584 os=-none
1585 ;;
1586 *-dec | vax-*)
1587 os=-ultrix4.2
1588 ;;
1589 m68*-apollo)
1590 os=-domain
1591 ;;
1592 i386-sun)
1593 os=-sunos4.0.2
1594 ;;
1595 m68000-sun)
1596 os=-sunos3
1597 ;;
1598 m68*-cisco)
1599 os=-aout
1600 ;;
1601 mep-*)
1602 os=-elf
1603 ;;
1604 mips*-cisco)
1605 os=-elf
1606 ;;
1607 mips*-*)
1608 os=-elf
1609 ;;
1610 or32-*)
1611 os=-coff
1612 ;;
1613 *-tti) # must be before sparc entry or we get the wrong os.
1614 os=-sysv3
1615 ;;
1616 sparc-* | *-sun)
1617 os=-sunos4.1.1
1618 ;;
1619 pru-*)
1620 os=-elf
1621 ;;
1622 *-be)
1623 os=-beos
1624 ;;
1625 *-ibm)
1626 os=-aix
1627 ;;
1628 *-knuth)
1629 os=-mmixware
1630 ;;
1631 *-wec)
1632 os=-proelf
1633 ;;
1634 *-winbond)
1635 os=-proelf
1636 ;;
1637 *-oki)
1638 os=-proelf
1639 ;;
1640 *-hp)
1641 os=-hpux
1642 ;;
1643 *-hitachi)
1644 os=-hiux
1645 ;;
1646 i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent)
1647 os=-sysv
1648 ;;
1649 *-cbm)
1650 os=-amigaos
1651 ;;
1652 *-dg)
1653 os=-dgux
1654 ;;
1655 *-dolphin)
1656 os=-sysv3
1657 ;;
1658 m68k-ccur)
1659 os=-rtu
1660 ;;
1661 m88k-omron*)
1662 os=-luna
1663 ;;
1664 *-next)
1665 os=-nextstep
1666 ;;
1667 *-sequent)
1668 os=-ptx
1669 ;;
1670 *-crds)
1671 os=-unos
1672 ;;
1673 *-ns)
1674 os=-genix
1675 ;;
1676 i370-*)
1677 os=-mvs
1678 ;;
1679 *-gould)
1680 os=-sysv
1681 ;;
1682 *-highlevel)
1683 os=-bsd
1684 ;;
1685 *-encore)
1686 os=-bsd
1687 ;;
1688 *-sgi)
1689 os=-irix
1690 ;;
1691 *-siemens)
1692 os=-sysv4
1693 ;;
1694 *-masscomp)
1695 os=-rtu
1696 ;;
1697 f30[01]-fujitsu | f700-fujitsu)
1698 os=-uxpv
1699 ;;
1700 *-rom68k)
1701 os=-coff
1702 ;;
1703 *-*bug)
1704 os=-coff
1705 ;;
1706 *-apple)
1707 os=-macos
1708 ;;
1709 *-atari*)
1710 os=-mint
1711 ;;
1712 *)
1713 os=-none
1714 ;;
1715 esac
1716 fi
1717
1718 # Here we handle the case where we know the os, and the CPU type, but not the
1719 # manufacturer. We pick the logical manufacturer.
1720 vendor=unknown
1721 case $basic_machine in
1722 *-unknown)
1723 case $os in
1724 -riscix*)
1725 vendor=acorn
1726 ;;
1727 -sunos*)
1728 vendor=sun
1729 ;;
1730 -cnk*|-aix*)
1731 vendor=ibm
1732 ;;
1733 -beos*)
1734 vendor=be
1735 ;;
1736 -hpux*)
1737 vendor=hp
1738 ;;
1739 -mpeix*)
1740 vendor=hp
1741 ;;
1742 -hiux*)
1743 vendor=hitachi
1744 ;;
1745 -unos*)
1746 vendor=crds
1747 ;;
1748 -dgux*)
1749 vendor=dg
1750 ;;
1751 -luna*)
1752 vendor=omron
1753 ;;
1754 -genix*)
1755 vendor=ns
1756 ;;
1757 -mvs* | -opened*)
1758 vendor=ibm
1759 ;;
1760 -os400*)
1761 vendor=ibm
1762 ;;
1763 -ptx*)
1764 vendor=sequent
1765 ;;
1766 -tpf*)
1767 vendor=ibm
1768 ;;
1769 -vxsim* | -vxworks* | -windiss*)
1770 vendor=wrs
1771 ;;
1772 -aux*)
1773 vendor=apple
1774 ;;
1775 -hms*)
1776 vendor=hitachi
1777 ;;
1778 -mpw* | -macos*)
1779 vendor=apple
1780 ;;
1781 -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
1782 vendor=atari
1783 ;;
1784 -vos*)
1785 vendor=stratus
1786 ;;
1787 esac
1788 basic_machine=`echo "$basic_machine" | sed "s/unknown/$vendor/"`
1789 ;;
1790 esac
1791
1792 echo "$basic_machine$os"
1793 exit
1794
1795 # Local variables:
1796 # eval: (add-hook 'write-file-functions 'time-stamp)
1797 # time-stamp-start: "timestamp='"
1798 # time-stamp-format: "%:y-%02m-%02d"
1799 # time-stamp-end: "'"
1800 # End:
0 #! /bin/sh
1 # Guess values for system-dependent variables and create Makefiles.
2 # Generated by GNU Autoconf 2.69 for faad2 2.9.2.
3 #
4 #
5 # Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc.
6 #
7 #
8 # This configure script is free software; the Free Software Foundation
9 # gives unlimited permission to copy, distribute and modify it.
10 ## -------------------- ##
11 ## M4sh Initialization. ##
12 ## -------------------- ##
13
14 # Be more Bourne compatible
15 DUALCASE=1; export DUALCASE # for MKS sh
16 if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then :
17 emulate sh
18 NULLCMD=:
19 # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
20 # is contrary to our usage. Disable this feature.
21 alias -g '${1+"$@"}'='"$@"'
22 setopt NO_GLOB_SUBST
23 else
24 case `(set -o) 2>/dev/null` in #(
25 *posix*) :
26 set -o posix ;; #(
27 *) :
28 ;;
29 esac
30 fi
31
32
33 as_nl='
34 '
35 export as_nl
36 # Printing a long string crashes Solaris 7 /usr/bin/printf.
37 as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
38 as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
39 as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
40 # Prefer a ksh shell builtin over an external printf program on Solaris,
41 # but without wasting forks for bash or zsh.
42 if test -z "$BASH_VERSION$ZSH_VERSION" \
43 && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then
44 as_echo='print -r --'
45 as_echo_n='print -rn --'
46 elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
47 as_echo='printf %s\n'
48 as_echo_n='printf %s'
49 else
50 if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then
51 as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"'
52 as_echo_n='/usr/ucb/echo -n'
53 else
54 as_echo_body='eval expr "X$1" : "X\\(.*\\)"'
55 as_echo_n_body='eval
56 arg=$1;
57 case $arg in #(
58 *"$as_nl"*)
59 expr "X$arg" : "X\\(.*\\)$as_nl";
60 arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
61 esac;
62 expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl"
63 '
64 export as_echo_n_body
65 as_echo_n='sh -c $as_echo_n_body as_echo'
66 fi
67 export as_echo_body
68 as_echo='sh -c $as_echo_body as_echo'
69 fi
70
71 # The user is always right.
72 if test "${PATH_SEPARATOR+set}" != set; then
73 PATH_SEPARATOR=:
74 (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && {
75 (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 ||
76 PATH_SEPARATOR=';'
77 }
78 fi
79
80
81 # IFS
82 # We need space, tab and new line, in precisely that order. Quoting is
83 # there to prevent editors from complaining about space-tab.
84 # (If _AS_PATH_WALK were called with IFS unset, it would disable word
85 # splitting by setting IFS to empty value.)
86 IFS=" "" $as_nl"
87
88 # Find who we are. Look in the path if we contain no directory separator.
89 as_myself=
90 case $0 in #((
91 *[\\/]* ) as_myself=$0 ;;
92 *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
93 for as_dir in $PATH
94 do
95 IFS=$as_save_IFS
96 test -z "$as_dir" && as_dir=.
97 test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
98 done
99 IFS=$as_save_IFS
100
101 ;;
102 esac
103 # We did not find ourselves, most probably we were run as `sh COMMAND'
104 # in which case we are not to be found in the path.
105 if test "x$as_myself" = x; then
106 as_myself=$0
107 fi
108 if test ! -f "$as_myself"; then
109 $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
110 exit 1
111 fi
112
113 # Unset variables that we do not need and which cause bugs (e.g. in
114 # pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1"
115 # suppresses any "Segmentation fault" message there. '((' could
116 # trigger a bug in pdksh 5.2.14.
117 for as_var in BASH_ENV ENV MAIL MAILPATH
118 do eval test x\${$as_var+set} = xset \
119 && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
120 done
121 PS1='$ '
122 PS2='> '
123 PS4='+ '
124
125 # NLS nuisances.
126 LC_ALL=C
127 export LC_ALL
128 LANGUAGE=C
129 export LANGUAGE
130
131 # CDPATH.
132 (unset CDPATH) >/dev/null 2>&1 && unset CDPATH
133
134 # Use a proper internal environment variable to ensure we don't fall
135 # into an infinite loop, continuously re-executing ourselves.
136 if test x"${_as_can_reexec}" != xno && test "x$CONFIG_SHELL" != x; then
137 _as_can_reexec=no; export _as_can_reexec;
138 # We cannot yet assume a decent shell, so we have to provide a
139 # neutralization value for shells without unset; and this also
140 # works around shells that cannot unset nonexistent variables.
141 # Preserve -v and -x to the replacement shell.
142 BASH_ENV=/dev/null
143 ENV=/dev/null
144 (unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
145 case $- in # ((((
146 *v*x* | *x*v* ) as_opts=-vx ;;
147 *v* ) as_opts=-v ;;
148 *x* ) as_opts=-x ;;
149 * ) as_opts= ;;
150 esac
151 exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"}
152 # Admittedly, this is quite paranoid, since all the known shells bail
153 # out after a failed `exec'.
154 $as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2
155 as_fn_exit 255
156 fi
157 # We don't want this to propagate to other subprocesses.
158 { _as_can_reexec=; unset _as_can_reexec;}
159 if test "x$CONFIG_SHELL" = x; then
160 as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then :
161 emulate sh
162 NULLCMD=:
163 # Pre-4.2 versions of Zsh do word splitting on \${1+\"\$@\"}, which
164 # is contrary to our usage. Disable this feature.
165 alias -g '\${1+\"\$@\"}'='\"\$@\"'
166 setopt NO_GLOB_SUBST
167 else
168 case \`(set -o) 2>/dev/null\` in #(
169 *posix*) :
170 set -o posix ;; #(
171 *) :
172 ;;
173 esac
174 fi
175 "
176 as_required="as_fn_return () { (exit \$1); }
177 as_fn_success () { as_fn_return 0; }
178 as_fn_failure () { as_fn_return 1; }
179 as_fn_ret_success () { return 0; }
180 as_fn_ret_failure () { return 1; }
181
182 exitcode=0
183 as_fn_success || { exitcode=1; echo as_fn_success failed.; }
184 as_fn_failure && { exitcode=1; echo as_fn_failure succeeded.; }
185 as_fn_ret_success || { exitcode=1; echo as_fn_ret_success failed.; }
186 as_fn_ret_failure && { exitcode=1; echo as_fn_ret_failure succeeded.; }
187 if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then :
188
189 else
190 exitcode=1; echo positional parameters were not saved.
191 fi
192 test x\$exitcode = x0 || exit 1
193 test -x / || exit 1"
194 as_suggested=" as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO
195 as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO
196 eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" &&
197 test \"x\`expr \$as_lineno_1'\$as_run' + 1\`\" = \"x\$as_lineno_2'\$as_run'\"' || exit 1
198
199 test -n \"\${ZSH_VERSION+set}\${BASH_VERSION+set}\" || (
200 ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
201 ECHO=\$ECHO\$ECHO\$ECHO\$ECHO\$ECHO
202 ECHO=\$ECHO\$ECHO\$ECHO\$ECHO\$ECHO\$ECHO
203 PATH=/empty FPATH=/empty; export PATH FPATH
204 test \"X\`printf %s \$ECHO\`\" = \"X\$ECHO\" \\
205 || test \"X\`print -r -- \$ECHO\`\" = \"X\$ECHO\" ) || exit 1
206 test \$(( 1 + 1 )) = 2 || exit 1"
207 if (eval "$as_required") 2>/dev/null; then :
208 as_have_required=yes
209 else
210 as_have_required=no
211 fi
212 if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null; then :
213
214 else
215 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
216 as_found=false
217 for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
218 do
219 IFS=$as_save_IFS
220 test -z "$as_dir" && as_dir=.
221 as_found=:
222 case $as_dir in #(
223 /*)
224 for as_base in sh bash ksh sh5; do
225 # Try only shells that exist, to save several forks.
226 as_shell=$as_dir/$as_base
227 if { test -f "$as_shell" || test -f "$as_shell.exe"; } &&
228 { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$as_shell"; } 2>/dev/null; then :
229 CONFIG_SHELL=$as_shell as_have_required=yes
230 if { $as_echo "$as_bourne_compatible""$as_suggested" | as_run=a "$as_shell"; } 2>/dev/null; then :
231 break 2
232 fi
233 fi
234 done;;
235 esac
236 as_found=false
237 done
238 $as_found || { if { test -f "$SHELL" || test -f "$SHELL.exe"; } &&
239 { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$SHELL"; } 2>/dev/null; then :
240 CONFIG_SHELL=$SHELL as_have_required=yes
241 fi; }
242 IFS=$as_save_IFS
243
244
245 if test "x$CONFIG_SHELL" != x; then :
246 export CONFIG_SHELL
247 # We cannot yet assume a decent shell, so we have to provide a
248 # neutralization value for shells without unset; and this also
249 # works around shells that cannot unset nonexistent variables.
250 # Preserve -v and -x to the replacement shell.
251 BASH_ENV=/dev/null
252 ENV=/dev/null
253 (unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV
254 case $- in # ((((
255 *v*x* | *x*v* ) as_opts=-vx ;;
256 *v* ) as_opts=-v ;;
257 *x* ) as_opts=-x ;;
258 * ) as_opts= ;;
259 esac
260 exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"}
261 # Admittedly, this is quite paranoid, since all the known shells bail
262 # out after a failed `exec'.
263 $as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2
264 exit 255
265 fi
266
267 if test x$as_have_required = xno; then :
268 $as_echo "$0: This script requires a shell more modern than all"
269 $as_echo "$0: the shells that I found on your system."
270 if test x${ZSH_VERSION+set} = xset ; then
271 $as_echo "$0: In particular, zsh $ZSH_VERSION has bugs and should"
272 $as_echo "$0: be upgraded to zsh 4.3.4 or later."
273 else
274 $as_echo "$0: Please tell bug-autoconf@gnu.org about your system,
275 $0: including any error possibly output before this
276 $0: message. Then install a modern shell, or manually run
277 $0: the script under such a shell if you do have one."
278 fi
279 exit 1
280 fi
281 fi
282 fi
283 SHELL=${CONFIG_SHELL-/bin/sh}
284 export SHELL
285 # Unset more variables known to interfere with behavior of common tools.
286 CLICOLOR_FORCE= GREP_OPTIONS=
287 unset CLICOLOR_FORCE GREP_OPTIONS
288
289 ## --------------------- ##
290 ## M4sh Shell Functions. ##
291 ## --------------------- ##
292 # as_fn_unset VAR
293 # ---------------
294 # Portably unset VAR.
295 as_fn_unset ()
296 {
297 { eval $1=; unset $1;}
298 }
299 as_unset=as_fn_unset
300
301 # as_fn_set_status STATUS
302 # -----------------------
303 # Set $? to STATUS, without forking.
304 as_fn_set_status ()
305 {
306 return $1
307 } # as_fn_set_status
308
309 # as_fn_exit STATUS
310 # -----------------
311 # Exit the shell with STATUS, even in a "trap 0" or "set -e" context.
312 as_fn_exit ()
313 {
314 set +e
315 as_fn_set_status $1
316 exit $1
317 } # as_fn_exit
318
319 # as_fn_mkdir_p
320 # -------------
321 # Create "$as_dir" as a directory, including parents if necessary.
322 as_fn_mkdir_p ()
323 {
324
325 case $as_dir in #(
326 -*) as_dir=./$as_dir;;
327 esac
328 test -d "$as_dir" || eval $as_mkdir_p || {
329 as_dirs=
330 while :; do
331 case $as_dir in #(
332 *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
333 *) as_qdir=$as_dir;;
334 esac
335 as_dirs="'$as_qdir' $as_dirs"
336 as_dir=`$as_dirname -- "$as_dir" ||
337 $as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
338 X"$as_dir" : 'X\(//\)[^/]' \| \
339 X"$as_dir" : 'X\(//\)$' \| \
340 X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||
341 $as_echo X"$as_dir" |
342 sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
343 s//\1/
344 q
345 }
346 /^X\(\/\/\)[^/].*/{
347 s//\1/
348 q
349 }
350 /^X\(\/\/\)$/{
351 s//\1/
352 q
353 }
354 /^X\(\/\).*/{
355 s//\1/
356 q
357 }
358 s/.*/./; q'`
359 test -d "$as_dir" && break
360 done
361 test -z "$as_dirs" || eval "mkdir $as_dirs"
362 } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir"
363
364
365 } # as_fn_mkdir_p
366
367 # as_fn_executable_p FILE
368 # -----------------------
369 # Test if FILE is an executable regular file.
370 as_fn_executable_p ()
371 {
372 test -f "$1" && test -x "$1"
373 } # as_fn_executable_p
374 # as_fn_append VAR VALUE
375 # ----------------------
376 # Append the text in VALUE to the end of the definition contained in VAR. Take
377 # advantage of any shell optimizations that allow amortized linear growth over
378 # repeated appends, instead of the typical quadratic growth present in naive
379 # implementations.
380 if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then :
381 eval 'as_fn_append ()
382 {
383 eval $1+=\$2
384 }'
385 else
386 as_fn_append ()
387 {
388 eval $1=\$$1\$2
389 }
390 fi # as_fn_append
391
392 # as_fn_arith ARG...
393 # ------------------
394 # Perform arithmetic evaluation on the ARGs, and store the result in the
395 # global $as_val. Take advantage of shells that can avoid forks. The arguments
396 # must be portable across $(()) and expr.
397 if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then :
398 eval 'as_fn_arith ()
399 {
400 as_val=$(( $* ))
401 }'
402 else
403 as_fn_arith ()
404 {
405 as_val=`expr "$@" || test $? -eq 1`
406 }
407 fi # as_fn_arith
408
409
410 # as_fn_error STATUS ERROR [LINENO LOG_FD]
411 # ----------------------------------------
412 # Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are
413 # provided, also output the error to LOG_FD, referencing LINENO. Then exit the
414 # script with STATUS, using 1 if that was 0.
415 as_fn_error ()
416 {
417 as_status=$1; test $as_status -eq 0 && as_status=1
418 if test "$4"; then
419 as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
420 $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4
421 fi
422 $as_echo "$as_me: error: $2" >&2
423 as_fn_exit $as_status
424 } # as_fn_error
425
426 if expr a : '\(a\)' >/dev/null 2>&1 &&
427 test "X`expr 00001 : '.*\(...\)'`" = X001; then
428 as_expr=expr
429 else
430 as_expr=false
431 fi
432
433 if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then
434 as_basename=basename
435 else
436 as_basename=false
437 fi
438
439 if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
440 as_dirname=dirname
441 else
442 as_dirname=false
443 fi
444
445 as_me=`$as_basename -- "$0" ||
446 $as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
447 X"$0" : 'X\(//\)$' \| \
448 X"$0" : 'X\(/\)' \| . 2>/dev/null ||
449 $as_echo X/"$0" |
450 sed '/^.*\/\([^/][^/]*\)\/*$/{
451 s//\1/
452 q
453 }
454 /^X\/\(\/\/\)$/{
455 s//\1/
456 q
457 }
458 /^X\/\(\/\).*/{
459 s//\1/
460 q
461 }
462 s/.*/./; q'`
463
464 # Avoid depending upon Character Ranges.
465 as_cr_letters='abcdefghijklmnopqrstuvwxyz'
466 as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
467 as_cr_Letters=$as_cr_letters$as_cr_LETTERS
468 as_cr_digits='0123456789'
469 as_cr_alnum=$as_cr_Letters$as_cr_digits
470
471
472 as_lineno_1=$LINENO as_lineno_1a=$LINENO
473 as_lineno_2=$LINENO as_lineno_2a=$LINENO
474 eval 'test "x$as_lineno_1'$as_run'" != "x$as_lineno_2'$as_run'" &&
475 test "x`expr $as_lineno_1'$as_run' + 1`" = "x$as_lineno_2'$as_run'"' || {
476 # Blame Lee E. McMahon (1931-1989) for sed's syntax. :-)
477 sed -n '
478 p
479 /[$]LINENO/=
480 ' <$as_myself |
481 sed '
482 s/[$]LINENO.*/&-/
483 t lineno
484 b
485 :lineno
486 N
487 :loop
488 s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/
489 t loop
490 s/-\n.*//
491 ' >$as_me.lineno &&
492 chmod +x "$as_me.lineno" ||
493 { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; }
494
495 # If we had to re-execute with $CONFIG_SHELL, we're ensured to have
496 # already done that, so ensure we don't try to do so again and fall
497 # in an infinite loop. This has already happened in practice.
498 _as_can_reexec=no; export _as_can_reexec
499 # Don't try to exec as it changes $[0], causing all sort of problems
500 # (the dirname of $[0] is not the place where we might find the
501 # original and so on. Autoconf is especially sensitive to this).
502 . "./$as_me.lineno"
503 # Exit status is that of the last command.
504 exit
505 }
506
507 ECHO_C= ECHO_N= ECHO_T=
508 case `echo -n x` in #(((((
509 -n*)
510 case `echo 'xy\c'` in
511 *c*) ECHO_T=' ';; # ECHO_T is single tab character.
512 xy) ECHO_C='\c';;
513 *) echo `echo ksh88 bug on AIX 6.1` > /dev/null
514 ECHO_T=' ';;
515 esac;;
516 *)
517 ECHO_N='-n';;
518 esac
519
520 rm -f conf$$ conf$$.exe conf$$.file
521 if test -d conf$$.dir; then
522 rm -f conf$$.dir/conf$$.file
523 else
524 rm -f conf$$.dir
525 mkdir conf$$.dir 2>/dev/null
526 fi
527 if (echo >conf$$.file) 2>/dev/null; then
528 if ln -s conf$$.file conf$$ 2>/dev/null; then
529 as_ln_s='ln -s'
530 # ... but there are two gotchas:
531 # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
532 # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
533 # In both cases, we have to default to `cp -pR'.
534 ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
535 as_ln_s='cp -pR'
536 elif ln conf$$.file conf$$ 2>/dev/null; then
537 as_ln_s=ln
538 else
539 as_ln_s='cp -pR'
540 fi
541 else
542 as_ln_s='cp -pR'
543 fi
544 rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
545 rmdir conf$$.dir 2>/dev/null
546
547 if mkdir -p . 2>/dev/null; then
548 as_mkdir_p='mkdir -p "$as_dir"'
549 else
550 test -d ./-p && rmdir ./-p
551 as_mkdir_p=false
552 fi
553
554 as_test_x='test -x'
555 as_executable_p=as_fn_executable_p
556
557 # Sed expression to map a string onto a valid CPP name.
558 as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
559
560 # Sed expression to map a string onto a valid variable name.
561 as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
562
563 SHELL=${CONFIG_SHELL-/bin/sh}
564
565
566 test -n "$DJDIR" || exec 7<&0 </dev/null
567 exec 6>&1
568
569 # Name of the host.
570 # hostname on some systems (SVR3.2, old GNU/Linux) returns a bogus exit status,
571 # so uname gets run too.
572 ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q`
573
574 #
575 # Initializations.
576 #
577 ac_default_prefix=/usr/local
578 ac_clean_files=
579 ac_config_libobj_dir=.
580 LIBOBJS=
581 cross_compiling=no
582 subdirs=
583 MFLAGS=
584 MAKEFLAGS=
585
586 # Identity of this package.
587 PACKAGE_NAME='faad2'
588 PACKAGE_TARNAME='faad2'
589 PACKAGE_VERSION='2.9.2'
590 PACKAGE_STRING='faad2 2.9.2'
591 PACKAGE_BUGREPORT=''
592 PACKAGE_URL=''
593
594 # Factoring default headers for most tests.
595 ac_includes_default="\
596 #include <stdio.h>
597 #ifdef HAVE_SYS_TYPES_H
598 # include <sys/types.h>
599 #endif
600 #ifdef HAVE_SYS_STAT_H
601 # include <sys/stat.h>
602 #endif
603 #ifdef STDC_HEADERS
604 # include <stdlib.h>
605 # include <stddef.h>
606 #else
607 # ifdef HAVE_STDLIB_H
608 # include <stdlib.h>
609 # endif
610 #endif
611 #ifdef HAVE_STRING_H
612 # if !defined STDC_HEADERS && defined HAVE_MEMORY_H
613 # include <memory.h>
614 # endif
615 # include <string.h>
616 #endif
617 #ifdef HAVE_STRINGS_H
618 # include <strings.h>
619 #endif
620 #ifdef HAVE_INTTYPES_H
621 # include <inttypes.h>
622 #endif
623 #ifdef HAVE_STDINT_H
624 # include <stdint.h>
625 #endif
626 #ifdef HAVE_UNISTD_H
627 # include <unistd.h>
628 #endif"
629
630 ac_subst_vars='am__EXEEXT_FALSE
631 am__EXEEXT_TRUE
632 LTLIBOBJS
633 LIBOBJS
634 HAVE_XMMS_FALSE
635 HAVE_XMMS_TRUE
636 GTK_CONFIG
637 XMMS_CONFIG
638 HAVE_MPEG4IP_PLUG_FALSE
639 HAVE_MPEG4IP_PLUG_TRUE
640 external_mp4v2
641 MP4FF_LIBS
642 RPMBUILD
643 CXXCPP
644 am__fastdepCXX_FALSE
645 am__fastdepCXX_TRUE
646 CXXDEPMODE
647 ac_ct_CXX
648 CXXFLAGS
649 CXX
650 LIBTOOL_DEPS
651 CPP
652 LT_SYS_LIBRARY_PATH
653 OTOOL64
654 OTOOL
655 LIPO
656 NMEDIT
657 DSYMUTIL
658 MANIFEST_TOOL
659 RANLIB
660 ac_ct_AR
661 AR
662 DLLTOOL
663 OBJDUMP
664 LN_S
665 NM
666 ac_ct_DUMPBIN
667 DUMPBIN
668 LD
669 FGREP
670 EGREP
671 GREP
672 SED
673 am__fastdepCC_FALSE
674 am__fastdepCC_TRUE
675 CCDEPMODE
676 am__nodep
677 AMDEPBACKSLASH
678 AMDEP_FALSE
679 AMDEP_TRUE
680 am__include
681 DEPDIR
682 OBJEXT
683 EXEEXT
684 ac_ct_CC
685 CPPFLAGS
686 LDFLAGS
687 CFLAGS
688 CC
689 host_os
690 host_vendor
691 host_cpu
692 host
693 build_os
694 build_vendor
695 build_cpu
696 build
697 LIBTOOL
698 AM_BACKSLASH
699 AM_DEFAULT_VERBOSITY
700 AM_DEFAULT_V
701 AM_V
702 am__untar
703 am__tar
704 AMTAR
705 am__leading_dot
706 SET_MAKE
707 AWK
708 mkdir_p
709 MKDIR_P
710 INSTALL_STRIP_PROGRAM
711 STRIP
712 install_sh
713 MAKEINFO
714 AUTOHEADER
715 AUTOMAKE
716 AUTOCONF
717 ACLOCAL
718 VERSION
719 PACKAGE
720 CYGPATH_W
721 am__isrc
722 INSTALL_DATA
723 INSTALL_SCRIPT
724 INSTALL_PROGRAM
725 target_alias
726 host_alias
727 build_alias
728 LIBS
729 ECHO_T
730 ECHO_N
731 ECHO_C
732 DEFS
733 mandir
734 localedir
735 libdir
736 psdir
737 pdfdir
738 dvidir
739 htmldir
740 infodir
741 docdir
742 oldincludedir
743 includedir
744 runstatedir
745 localstatedir
746 sharedstatedir
747 sysconfdir
748 datadir
749 datarootdir
750 libexecdir
751 sbindir
752 bindir
753 program_transform_name
754 prefix
755 exec_prefix
756 PACKAGE_URL
757 PACKAGE_BUGREPORT
758 PACKAGE_STRING
759 PACKAGE_VERSION
760 PACKAGE_TARNAME
761 PACKAGE_NAME
762 PATH_SEPARATOR
763 SHELL
764 am__quote'
765 ac_subst_files=''
766 ac_user_opts='
767 enable_option_checking
768 enable_silent_rules
769 enable_shared
770 enable_static
771 with_pic
772 enable_fast_install
773 with_aix_soname
774 enable_dependency_tracking
775 with_gnu_ld
776 with_sysroot
777 enable_libtool_lock
778 with_xmms
779 with_drm
780 with_mpeg4ip
781 '
782 ac_precious_vars='build_alias
783 host_alias
784 target_alias
785 CC
786 CFLAGS
787 LDFLAGS
788 LIBS
789 CPPFLAGS
790 LT_SYS_LIBRARY_PATH
791 CPP
792 CXX
793 CXXFLAGS
794 CCC
795 CXXCPP'
796
797
798 # Initialize some variables set by options.
799 ac_init_help=
800 ac_init_version=false
801 ac_unrecognized_opts=
802 ac_unrecognized_sep=
803 # The variables have the same names as the options, with
804 # dashes changed to underlines.
805 cache_file=/dev/null
806 exec_prefix=NONE
807 no_create=
808 no_recursion=
809 prefix=NONE
810 program_prefix=NONE
811 program_suffix=NONE
812 program_transform_name=s,x,x,
813 silent=
814 site=
815 srcdir=
816 verbose=
817 x_includes=NONE
818 x_libraries=NONE
819
820 # Installation directory options.
821 # These are left unexpanded so users can "make install exec_prefix=/foo"
822 # and all the variables that are supposed to be based on exec_prefix
823 # by default will actually change.
824 # Use braces instead of parens because sh, perl, etc. also accept them.
825 # (The list follows the same order as the GNU Coding Standards.)
826 bindir='${exec_prefix}/bin'
827 sbindir='${exec_prefix}/sbin'
828 libexecdir='${exec_prefix}/libexec'
829 datarootdir='${prefix}/share'
830 datadir='${datarootdir}'
831 sysconfdir='${prefix}/etc'
832 sharedstatedir='${prefix}/com'
833 localstatedir='${prefix}/var'
834 runstatedir='${localstatedir}/run'
835 includedir='${prefix}/include'
836 oldincludedir='/usr/include'
837 docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'
838 infodir='${datarootdir}/info'
839 htmldir='${docdir}'
840 dvidir='${docdir}'
841 pdfdir='${docdir}'
842 psdir='${docdir}'
843 libdir='${exec_prefix}/lib'
844 localedir='${datarootdir}/locale'
845 mandir='${datarootdir}/man'
846
847 ac_prev=
848 ac_dashdash=
849 for ac_option
850 do
851 # If the previous option needs an argument, assign it.
852 if test -n "$ac_prev"; then
853 eval $ac_prev=\$ac_option
854 ac_prev=
855 continue
856 fi
857
858 case $ac_option in
859 *=?*) ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;;
860 *=) ac_optarg= ;;
861 *) ac_optarg=yes ;;
862 esac
863
864 # Accept the important Cygnus configure options, so we can diagnose typos.
865
866 case $ac_dashdash$ac_option in
867 --)
868 ac_dashdash=yes ;;
869
870 -bindir | --bindir | --bindi | --bind | --bin | --bi)
871 ac_prev=bindir ;;
872 -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*)
873 bindir=$ac_optarg ;;
874
875 -build | --build | --buil | --bui | --bu)
876 ac_prev=build_alias ;;
877 -build=* | --build=* | --buil=* | --bui=* | --bu=*)
878 build_alias=$ac_optarg ;;
879
880 -cache-file | --cache-file | --cache-fil | --cache-fi \
881 | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c)
882 ac_prev=cache_file ;;
883 -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \
884 | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*)
885 cache_file=$ac_optarg ;;
886
887 --config-cache | -C)
888 cache_file=config.cache ;;
889
890 -datadir | --datadir | --datadi | --datad)
891 ac_prev=datadir ;;
892 -datadir=* | --datadir=* | --datadi=* | --datad=*)
893 datadir=$ac_optarg ;;
894
895 -datarootdir | --datarootdir | --datarootdi | --datarootd | --dataroot \
896 | --dataroo | --dataro | --datar)
897 ac_prev=datarootdir ;;
898 -datarootdir=* | --datarootdir=* | --datarootdi=* | --datarootd=* \
899 | --dataroot=* | --dataroo=* | --dataro=* | --datar=*)
900 datarootdir=$ac_optarg ;;
901
902 -disable-* | --disable-*)
903 ac_useropt=`expr "x$ac_option" : 'x-*disable-\(.*\)'`
904 # Reject names that are not valid shell variable names.
905 expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
906 as_fn_error $? "invalid feature name: $ac_useropt"
907 ac_useropt_orig=$ac_useropt
908 ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
909 case $ac_user_opts in
910 *"
911 "enable_$ac_useropt"
912 "*) ;;
913 *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--disable-$ac_useropt_orig"
914 ac_unrecognized_sep=', ';;
915 esac
916 eval enable_$ac_useropt=no ;;
917
918 -docdir | --docdir | --docdi | --doc | --do)
919 ac_prev=docdir ;;
920 -docdir=* | --docdir=* | --docdi=* | --doc=* | --do=*)
921 docdir=$ac_optarg ;;
922
923 -dvidir | --dvidir | --dvidi | --dvid | --dvi | --dv)
924 ac_prev=dvidir ;;
925 -dvidir=* | --dvidir=* | --dvidi=* | --dvid=* | --dvi=* | --dv=*)
926 dvidir=$ac_optarg ;;
927
928 -enable-* | --enable-*)
929 ac_useropt=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'`
930 # Reject names that are not valid shell variable names.
931 expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
932 as_fn_error $? "invalid feature name: $ac_useropt"
933 ac_useropt_orig=$ac_useropt
934 ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
935 case $ac_user_opts in
936 *"
937 "enable_$ac_useropt"
938 "*) ;;
939 *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--enable-$ac_useropt_orig"
940 ac_unrecognized_sep=', ';;
941 esac
942 eval enable_$ac_useropt=\$ac_optarg ;;
943
944 -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \
945 | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \
946 | --exec | --exe | --ex)
947 ac_prev=exec_prefix ;;
948 -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \
949 | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \
950 | --exec=* | --exe=* | --ex=*)
951 exec_prefix=$ac_optarg ;;
952
953 -gas | --gas | --ga | --g)
954 # Obsolete; use --with-gas.
955 with_gas=yes ;;
956
957 -help | --help | --hel | --he | -h)
958 ac_init_help=long ;;
959 -help=r* | --help=r* | --hel=r* | --he=r* | -hr*)
960 ac_init_help=recursive ;;
961 -help=s* | --help=s* | --hel=s* | --he=s* | -hs*)
962 ac_init_help=short ;;
963
964 -host | --host | --hos | --ho)
965 ac_prev=host_alias ;;
966 -host=* | --host=* | --hos=* | --ho=*)
967 host_alias=$ac_optarg ;;
968
969 -htmldir | --htmldir | --htmldi | --htmld | --html | --htm | --ht)
970 ac_prev=htmldir ;;
971 -htmldir=* | --htmldir=* | --htmldi=* | --htmld=* | --html=* | --htm=* \
972 | --ht=*)
973 htmldir=$ac_optarg ;;
974
975 -includedir | --includedir | --includedi | --included | --include \
976 | --includ | --inclu | --incl | --inc)
977 ac_prev=includedir ;;
978 -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \
979 | --includ=* | --inclu=* | --incl=* | --inc=*)
980 includedir=$ac_optarg ;;
981
982 -infodir | --infodir | --infodi | --infod | --info | --inf)
983 ac_prev=infodir ;;
984 -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*)
985 infodir=$ac_optarg ;;
986
987 -libdir | --libdir | --libdi | --libd)
988 ac_prev=libdir ;;
989 -libdir=* | --libdir=* | --libdi=* | --libd=*)
990 libdir=$ac_optarg ;;
991
992 -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \
993 | --libexe | --libex | --libe)
994 ac_prev=libexecdir ;;
995 -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \
996 | --libexe=* | --libex=* | --libe=*)
997 libexecdir=$ac_optarg ;;
998
999 -localedir | --localedir | --localedi | --localed | --locale)
1000 ac_prev=localedir ;;
1001 -localedir=* | --localedir=* | --localedi=* | --localed=* | --locale=*)
1002 localedir=$ac_optarg ;;
1003
1004 -localstatedir | --localstatedir | --localstatedi | --localstated \
1005 | --localstate | --localstat | --localsta | --localst | --locals)
1006 ac_prev=localstatedir ;;
1007 -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \
1008 | --localstate=* | --localstat=* | --localsta=* | --localst=* | --locals=*)
1009 localstatedir=$ac_optarg ;;
1010
1011 -mandir | --mandir | --mandi | --mand | --man | --ma | --m)
1012 ac_prev=mandir ;;
1013 -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*)
1014 mandir=$ac_optarg ;;
1015
1016 -nfp | --nfp | --nf)
1017 # Obsolete; use --without-fp.
1018 with_fp=no ;;
1019
1020 -no-create | --no-create | --no-creat | --no-crea | --no-cre \
1021 | --no-cr | --no-c | -n)
1022 no_create=yes ;;
1023
1024 -no-recursion | --no-recursion | --no-recursio | --no-recursi \
1025 | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r)
1026 no_recursion=yes ;;
1027
1028 -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \
1029 | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \
1030 | --oldin | --oldi | --old | --ol | --o)
1031 ac_prev=oldincludedir ;;
1032 -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \
1033 | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \
1034 | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*)
1035 oldincludedir=$ac_optarg ;;
1036
1037 -prefix | --prefix | --prefi | --pref | --pre | --pr | --p)
1038 ac_prev=prefix ;;
1039 -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)
1040 prefix=$ac_optarg ;;
1041
1042 -program-prefix | --program-prefix | --program-prefi | --program-pref \
1043 | --program-pre | --program-pr | --program-p)
1044 ac_prev=program_prefix ;;
1045 -program-prefix=* | --program-prefix=* | --program-prefi=* \
1046 | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*)
1047 program_prefix=$ac_optarg ;;
1048
1049 -program-suffix | --program-suffix | --program-suffi | --program-suff \
1050 | --program-suf | --program-su | --program-s)
1051 ac_prev=program_suffix ;;
1052 -program-suffix=* | --program-suffix=* | --program-suffi=* \
1053 | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*)
1054 program_suffix=$ac_optarg ;;
1055
1056 -program-transform-name | --program-transform-name \
1057 | --program-transform-nam | --program-transform-na \
1058 | --program-transform-n | --program-transform- \
1059 | --program-transform | --program-transfor \
1060 | --program-transfo | --program-transf \
1061 | --program-trans | --program-tran \
1062 | --progr-tra | --program-tr | --program-t)
1063 ac_prev=program_transform_name ;;
1064 -program-transform-name=* | --program-transform-name=* \
1065 | --program-transform-nam=* | --program-transform-na=* \
1066 | --program-transform-n=* | --program-transform-=* \
1067 | --program-transform=* | --program-transfor=* \
1068 | --program-transfo=* | --program-transf=* \
1069 | --program-trans=* | --program-tran=* \
1070 | --progr-tra=* | --program-tr=* | --program-t=*)
1071 program_transform_name=$ac_optarg ;;
1072
1073 -pdfdir | --pdfdir | --pdfdi | --pdfd | --pdf | --pd)
1074 ac_prev=pdfdir ;;
1075 -pdfdir=* | --pdfdir=* | --pdfdi=* | --pdfd=* | --pdf=* | --pd=*)
1076 pdfdir=$ac_optarg ;;
1077
1078 -psdir | --psdir | --psdi | --psd | --ps)
1079 ac_prev=psdir ;;
1080 -psdir=* | --psdir=* | --psdi=* | --psd=* | --ps=*)
1081 psdir=$ac_optarg ;;
1082
1083 -q | -quiet | --quiet | --quie | --qui | --qu | --q \
1084 | -silent | --silent | --silen | --sile | --sil)
1085 silent=yes ;;
1086
1087 -runstatedir | --runstatedir | --runstatedi | --runstated \
1088 | --runstate | --runstat | --runsta | --runst | --runs \
1089 | --run | --ru | --r)
1090 ac_prev=runstatedir ;;
1091 -runstatedir=* | --runstatedir=* | --runstatedi=* | --runstated=* \
1092 | --runstate=* | --runstat=* | --runsta=* | --runst=* | --runs=* \
1093 | --run=* | --ru=* | --r=*)
1094 runstatedir=$ac_optarg ;;
1095
1096 -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
1097 ac_prev=sbindir ;;
1098 -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
1099 | --sbi=* | --sb=*)
1100 sbindir=$ac_optarg ;;
1101
1102 -sharedstatedir | --sharedstatedir | --sharedstatedi \
1103 | --sharedstated | --sharedstate | --sharedstat | --sharedsta \
1104 | --sharedst | --shareds | --shared | --share | --shar \
1105 | --sha | --sh)
1106 ac_prev=sharedstatedir ;;
1107 -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \
1108 | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \
1109 | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \
1110 | --sha=* | --sh=*)
1111 sharedstatedir=$ac_optarg ;;
1112
1113 -site | --site | --sit)
1114 ac_prev=site ;;
1115 -site=* | --site=* | --sit=*)
1116 site=$ac_optarg ;;
1117
1118 -srcdir | --srcdir | --srcdi | --srcd | --src | --sr)
1119 ac_prev=srcdir ;;
1120 -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)
1121 srcdir=$ac_optarg ;;
1122
1123 -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \
1124 | --syscon | --sysco | --sysc | --sys | --sy)
1125 ac_prev=sysconfdir ;;
1126 -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \
1127 | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*)
1128 sysconfdir=$ac_optarg ;;
1129
1130 -target | --target | --targe | --targ | --tar | --ta | --t)
1131 ac_prev=target_alias ;;
1132 -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*)
1133 target_alias=$ac_optarg ;;
1134
1135 -v | -verbose | --verbose | --verbos | --verbo | --verb)
1136 verbose=yes ;;
1137
1138 -version | --version | --versio | --versi | --vers | -V)
1139 ac_init_version=: ;;
1140
1141 -with-* | --with-*)
1142 ac_useropt=`expr "x$ac_option" : 'x-*with-\([^=]*\)'`
1143 # Reject names that are not valid shell variable names.
1144 expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
1145 as_fn_error $? "invalid package name: $ac_useropt"
1146 ac_useropt_orig=$ac_useropt
1147 ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
1148 case $ac_user_opts in
1149 *"
1150 "with_$ac_useropt"
1151 "*) ;;
1152 *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--with-$ac_useropt_orig"
1153 ac_unrecognized_sep=', ';;
1154 esac
1155 eval with_$ac_useropt=\$ac_optarg ;;
1156
1157 -without-* | --without-*)
1158 ac_useropt=`expr "x$ac_option" : 'x-*without-\(.*\)'`
1159 # Reject names that are not valid shell variable names.
1160 expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
1161 as_fn_error $? "invalid package name: $ac_useropt"
1162 ac_useropt_orig=$ac_useropt
1163 ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
1164 case $ac_user_opts in
1165 *"
1166 "with_$ac_useropt"
1167 "*) ;;
1168 *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--without-$ac_useropt_orig"
1169 ac_unrecognized_sep=', ';;
1170 esac
1171 eval with_$ac_useropt=no ;;
1172
1173 --x)
1174 # Obsolete; use --with-x.
1175 with_x=yes ;;
1176
1177 -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \
1178 | --x-incl | --x-inc | --x-in | --x-i)
1179 ac_prev=x_includes ;;
1180 -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \
1181 | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*)
1182 x_includes=$ac_optarg ;;
1183
1184 -x-libraries | --x-libraries | --x-librarie | --x-librari \
1185 | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l)
1186 ac_prev=x_libraries ;;
1187 -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \
1188 | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*)
1189 x_libraries=$ac_optarg ;;
1190
1191 -*) as_fn_error $? "unrecognized option: \`$ac_option'
1192 Try \`$0 --help' for more information"
1193 ;;
1194
1195 *=*)
1196 ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='`
1197 # Reject names that are not valid shell variable names.
1198 case $ac_envvar in #(
1199 '' | [0-9]* | *[!_$as_cr_alnum]* )
1200 as_fn_error $? "invalid variable name: \`$ac_envvar'" ;;
1201 esac
1202 eval $ac_envvar=\$ac_optarg
1203 export $ac_envvar ;;
1204
1205 *)
1206 # FIXME: should be removed in autoconf 3.0.
1207 $as_echo "$as_me: WARNING: you should use --build, --host, --target" >&2
1208 expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
1209 $as_echo "$as_me: WARNING: invalid host type: $ac_option" >&2
1210 : "${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}"
1211 ;;
1212
1213 esac
1214 done
1215
1216 if test -n "$ac_prev"; then
1217 ac_option=--`echo $ac_prev | sed 's/_/-/g'`
1218 as_fn_error $? "missing argument to $ac_option"
1219 fi
1220
1221 if test -n "$ac_unrecognized_opts"; then
1222 case $enable_option_checking in
1223 no) ;;
1224 fatal) as_fn_error $? "unrecognized options: $ac_unrecognized_opts" ;;
1225 *) $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;;
1226 esac
1227 fi
1228
1229 # Check all directory arguments for consistency.
1230 for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \
1231 datadir sysconfdir sharedstatedir localstatedir includedir \
1232 oldincludedir docdir infodir htmldir dvidir pdfdir psdir \
1233 libdir localedir mandir runstatedir
1234 do
1235 eval ac_val=\$$ac_var
1236 # Remove trailing slashes.
1237 case $ac_val in
1238 */ )
1239 ac_val=`expr "X$ac_val" : 'X\(.*[^/]\)' \| "X$ac_val" : 'X\(.*\)'`
1240 eval $ac_var=\$ac_val;;
1241 esac
1242 # Be sure to have absolute directory names.
1243 case $ac_val in
1244 [\\/$]* | ?:[\\/]* ) continue;;
1245 NONE | '' ) case $ac_var in *prefix ) continue;; esac;;
1246 esac
1247 as_fn_error $? "expected an absolute directory name for --$ac_var: $ac_val"
1248 done
1249
1250 # There might be people who depend on the old broken behavior: `$host'
1251 # used to hold the argument of --host etc.
1252 # FIXME: To remove some day.
1253 build=$build_alias
1254 host=$host_alias
1255 target=$target_alias
1256
1257 # FIXME: To remove some day.
1258 if test "x$host_alias" != x; then
1259 if test "x$build_alias" = x; then
1260 cross_compiling=maybe
1261 elif test "x$build_alias" != "x$host_alias"; then
1262 cross_compiling=yes
1263 fi
1264 fi
1265
1266 ac_tool_prefix=
1267 test -n "$host_alias" && ac_tool_prefix=$host_alias-
1268
1269 test "$silent" = yes && exec 6>/dev/null
1270
1271
1272 ac_pwd=`pwd` && test -n "$ac_pwd" &&
1273 ac_ls_di=`ls -di .` &&
1274 ac_pwd_ls_di=`cd "$ac_pwd" && ls -di .` ||
1275 as_fn_error $? "working directory cannot be determined"
1276 test "X$ac_ls_di" = "X$ac_pwd_ls_di" ||
1277 as_fn_error $? "pwd does not report name of working directory"
1278
1279
1280 # Find the source files, if location was not specified.
1281 if test -z "$srcdir"; then
1282 ac_srcdir_defaulted=yes
1283 # Try the directory containing this script, then the parent directory.
1284 ac_confdir=`$as_dirname -- "$as_myself" ||
1285 $as_expr X"$as_myself" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
1286 X"$as_myself" : 'X\(//\)[^/]' \| \
1287 X"$as_myself" : 'X\(//\)$' \| \
1288 X"$as_myself" : 'X\(/\)' \| . 2>/dev/null ||
1289 $as_echo X"$as_myself" |
1290 sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
1291 s//\1/
1292 q
1293 }
1294 /^X\(\/\/\)[^/].*/{
1295 s//\1/
1296 q
1297 }
1298 /^X\(\/\/\)$/{
1299 s//\1/
1300 q
1301 }
1302 /^X\(\/\).*/{
1303 s//\1/
1304 q
1305 }
1306 s/.*/./; q'`
1307 srcdir=$ac_confdir
1308 if test ! -r "$srcdir/$ac_unique_file"; then
1309 srcdir=..
1310 fi
1311 else
1312 ac_srcdir_defaulted=no
1313 fi
1314 if test ! -r "$srcdir/$ac_unique_file"; then
1315 test "$ac_srcdir_defaulted" = yes && srcdir="$ac_confdir or .."
1316 as_fn_error $? "cannot find sources ($ac_unique_file) in $srcdir"
1317 fi
1318 ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work"
1319 ac_abs_confdir=`(
1320 cd "$srcdir" && test -r "./$ac_unique_file" || as_fn_error $? "$ac_msg"
1321 pwd)`
1322 # When building in place, set srcdir=.
1323 if test "$ac_abs_confdir" = "$ac_pwd"; then
1324 srcdir=.
1325 fi
1326 # Remove unnecessary trailing slashes from srcdir.
1327 # Double slashes in file names in object file debugging info
1328 # mess up M-x gdb in Emacs.
1329 case $srcdir in
1330 */) srcdir=`expr "X$srcdir" : 'X\(.*[^/]\)' \| "X$srcdir" : 'X\(.*\)'`;;
1331 esac
1332 for ac_var in $ac_precious_vars; do
1333 eval ac_env_${ac_var}_set=\${${ac_var}+set}
1334 eval ac_env_${ac_var}_value=\$${ac_var}
1335 eval ac_cv_env_${ac_var}_set=\${${ac_var}+set}
1336 eval ac_cv_env_${ac_var}_value=\$${ac_var}
1337 done
1338
1339 #
1340 # Report the --help message.
1341 #
1342 if test "$ac_init_help" = "long"; then
1343 # Omit some internal or obsolete options to make the list less imposing.
1344 # This message is too long to be a string in the A/UX 3.1 sh.
1345 cat <<_ACEOF
1346 \`configure' configures faad2 2.9.2 to adapt to many kinds of systems.
1347
1348 Usage: $0 [OPTION]... [VAR=VALUE]...
1349
1350 To assign environment variables (e.g., CC, CFLAGS...), specify them as
1351 VAR=VALUE. See below for descriptions of some of the useful variables.
1352
1353 Defaults for the options are specified in brackets.
1354
1355 Configuration:
1356 -h, --help display this help and exit
1357 --help=short display options specific to this package
1358 --help=recursive display the short help of all the included packages
1359 -V, --version display version information and exit
1360 -q, --quiet, --silent do not print \`checking ...' messages
1361 --cache-file=FILE cache test results in FILE [disabled]
1362 -C, --config-cache alias for \`--cache-file=config.cache'
1363 -n, --no-create do not create output files
1364 --srcdir=DIR find the sources in DIR [configure dir or \`..']
1365
1366 Installation directories:
1367 --prefix=PREFIX install architecture-independent files in PREFIX
1368 [$ac_default_prefix]
1369 --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX
1370 [PREFIX]
1371
1372 By default, \`make install' will install all the files in
1373 \`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify
1374 an installation prefix other than \`$ac_default_prefix' using \`--prefix',
1375 for instance \`--prefix=\$HOME'.
1376
1377 For better control, use the options below.
1378
1379 Fine tuning of the installation directories:
1380 --bindir=DIR user executables [EPREFIX/bin]
1381 --sbindir=DIR system admin executables [EPREFIX/sbin]
1382 --libexecdir=DIR program executables [EPREFIX/libexec]
1383 --sysconfdir=DIR read-only single-machine data [PREFIX/etc]
1384 --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com]
1385 --localstatedir=DIR modifiable single-machine data [PREFIX/var]
1386 --runstatedir=DIR modifiable per-process data [LOCALSTATEDIR/run]
1387 --libdir=DIR object code libraries [EPREFIX/lib]
1388 --includedir=DIR C header files [PREFIX/include]
1389 --oldincludedir=DIR C header files for non-gcc [/usr/include]
1390 --datarootdir=DIR read-only arch.-independent data root [PREFIX/share]
1391 --datadir=DIR read-only architecture-independent data [DATAROOTDIR]
1392 --infodir=DIR info documentation [DATAROOTDIR/info]
1393 --localedir=DIR locale-dependent data [DATAROOTDIR/locale]
1394 --mandir=DIR man documentation [DATAROOTDIR/man]
1395 --docdir=DIR documentation root [DATAROOTDIR/doc/faad2]
1396 --htmldir=DIR html documentation [DOCDIR]
1397 --dvidir=DIR dvi documentation [DOCDIR]
1398 --pdfdir=DIR pdf documentation [DOCDIR]
1399 --psdir=DIR ps documentation [DOCDIR]
1400 _ACEOF
1401
1402 cat <<\_ACEOF
1403
1404 Program names:
1405 --program-prefix=PREFIX prepend PREFIX to installed program names
1406 --program-suffix=SUFFIX append SUFFIX to installed program names
1407 --program-transform-name=PROGRAM run sed PROGRAM on installed program names
1408
1409 System types:
1410 --build=BUILD configure for building on BUILD [guessed]
1411 --host=HOST cross-compile to build programs to run on HOST [BUILD]
1412 _ACEOF
1413 fi
1414
1415 if test -n "$ac_init_help"; then
1416 case $ac_init_help in
1417 short | recursive ) echo "Configuration of faad2 2.9.2:";;
1418 esac
1419 cat <<\_ACEOF
1420
1421 Optional Features:
1422 --disable-option-checking ignore unrecognized --enable/--with options
1423 --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no)
1424 --enable-FEATURE[=ARG] include FEATURE [ARG=yes]
1425 --enable-silent-rules less verbose build output (undo: "make V=1")
1426 --disable-silent-rules verbose build output (undo: "make V=0")
1427 --enable-shared[=PKGS] build shared libraries [default=yes]
1428 --enable-static[=PKGS] build static libraries [default=yes]
1429 --enable-fast-install[=PKGS]
1430 optimize for fast installation [default=yes]
1431 --enable-dependency-tracking
1432 do not reject slow dependency extractors
1433 --disable-dependency-tracking
1434 speeds up one-time build
1435 --disable-libtool-lock avoid locking (might break parallel builds)
1436
1437 Optional Packages:
1438 --with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
1439 --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no)
1440 --with-pic[=PKGS] try to use only PIC/non-PIC objects [default=use
1441 both]
1442 --with-aix-soname=aix|svr4|both
1443 shared library versioning (aka "SONAME") variant to
1444 provide on AIX, [default=aix].
1445 --with-gnu-ld assume the C compiler uses GNU ld [default=no]
1446 --with-sysroot[=DIR] Search for dependent libraries within DIR (or the
1447 compiler's sysroot if not specified).
1448 --with-xmms compile XMMS-1 plugin
1449 --with-drm compile libfaad with DRM support
1450 --with-mpeg4ip compile mpeg4ip plugin
1451
1452 Some influential environment variables:
1453 CC C compiler command
1454 CFLAGS C compiler flags
1455 LDFLAGS linker flags, e.g. -L<lib dir> if you have libraries in a
1456 nonstandard directory <lib dir>
1457 LIBS libraries to pass to the linker, e.g. -l<library>
1458 CPPFLAGS (Objective) C/C++ preprocessor flags, e.g. -I<include dir> if
1459 you have headers in a nonstandard directory <include dir>
1460 LT_SYS_LIBRARY_PATH
1461 User-defined run-time library search path.
1462 CPP C preprocessor
1463 CXX C++ compiler command
1464 CXXFLAGS C++ compiler flags
1465 CXXCPP C++ preprocessor
1466
1467 Use these variables to override the choices made by `configure' or to help
1468 it to find libraries and programs with nonstandard names/locations.
1469
1470 Report bugs to the package provider.
1471 _ACEOF
1472 ac_status=$?
1473 fi
1474
1475 if test "$ac_init_help" = "recursive"; then
1476 # If there are subdirs, report their specific --help.
1477 for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue
1478 test -d "$ac_dir" ||
1479 { cd "$srcdir" && ac_pwd=`pwd` && srcdir=. && test -d "$ac_dir"; } ||
1480 continue
1481 ac_builddir=.
1482
1483 case "$ac_dir" in
1484 .) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;
1485 *)
1486 ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'`
1487 # A ".." for each directory in $ac_dir_suffix.
1488 ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'`
1489 case $ac_top_builddir_sub in
1490 "") ac_top_builddir_sub=. ac_top_build_prefix= ;;
1491 *) ac_top_build_prefix=$ac_top_builddir_sub/ ;;
1492 esac ;;
1493 esac
1494 ac_abs_top_builddir=$ac_pwd
1495 ac_abs_builddir=$ac_pwd$ac_dir_suffix
1496 # for backward compatibility:
1497 ac_top_builddir=$ac_top_build_prefix
1498
1499 case $srcdir in
1500 .) # We are building in place.
1501 ac_srcdir=.
1502 ac_top_srcdir=$ac_top_builddir_sub
1503 ac_abs_top_srcdir=$ac_pwd ;;
1504 [\\/]* | ?:[\\/]* ) # Absolute name.
1505 ac_srcdir=$srcdir$ac_dir_suffix;
1506 ac_top_srcdir=$srcdir
1507 ac_abs_top_srcdir=$srcdir ;;
1508 *) # Relative name.
1509 ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix
1510 ac_top_srcdir=$ac_top_build_prefix$srcdir
1511 ac_abs_top_srcdir=$ac_pwd/$srcdir ;;
1512 esac
1513 ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix
1514
1515 cd "$ac_dir" || { ac_status=$?; continue; }
1516 # Check for guested configure.
1517 if test -f "$ac_srcdir/configure.gnu"; then
1518 echo &&
1519 $SHELL "$ac_srcdir/configure.gnu" --help=recursive
1520 elif test -f "$ac_srcdir/configure"; then
1521 echo &&
1522 $SHELL "$ac_srcdir/configure" --help=recursive
1523 else
1524 $as_echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2
1525 fi || ac_status=$?
1526 cd "$ac_pwd" || { ac_status=$?; break; }
1527 done
1528 fi
1529
1530 test -n "$ac_init_help" && exit $ac_status
1531 if $ac_init_version; then
1532 cat <<\_ACEOF
1533 faad2 configure 2.9.2
1534 generated by GNU Autoconf 2.69
1535
1536 Copyright (C) 2012 Free Software Foundation, Inc.
1537 This configure script is free software; the Free Software Foundation
1538 gives unlimited permission to copy, distribute and modify it.
1539 _ACEOF
1540 exit
1541 fi
1542
1543 ## ------------------------ ##
1544 ## Autoconf initialization. ##
1545 ## ------------------------ ##
1546
1547 # ac_fn_c_try_compile LINENO
1548 # --------------------------
1549 # Try to compile conftest.$ac_ext, and return whether this succeeded.
1550 ac_fn_c_try_compile ()
1551 {
1552 as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
1553 rm -f conftest.$ac_objext
1554 if { { ac_try="$ac_compile"
1555 case "(($ac_try" in
1556 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
1557 *) ac_try_echo=$ac_try;;
1558 esac
1559 eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
1560 $as_echo "$ac_try_echo"; } >&5
1561 (eval "$ac_compile") 2>conftest.err
1562 ac_status=$?
1563 if test -s conftest.err; then
1564 grep -v '^ *+' conftest.err >conftest.er1
1565 cat conftest.er1 >&5
1566 mv -f conftest.er1 conftest.err
1567 fi
1568 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
1569 test $ac_status = 0; } && {
1570 test -z "$ac_c_werror_flag" ||
1571 test ! -s conftest.err
1572 } && test -s conftest.$ac_objext; then :
1573 ac_retval=0
1574 else
1575 $as_echo "$as_me: failed program was:" >&5
1576 sed 's/^/| /' conftest.$ac_ext >&5
1577
1578 ac_retval=1
1579 fi
1580 eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
1581 as_fn_set_status $ac_retval
1582
1583 } # ac_fn_c_try_compile
1584
1585 # ac_fn_c_try_link LINENO
1586 # -----------------------
1587 # Try to link conftest.$ac_ext, and return whether this succeeded.
1588 ac_fn_c_try_link ()
1589 {
1590 as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
1591 rm -f conftest.$ac_objext conftest$ac_exeext
1592 if { { ac_try="$ac_link"
1593 case "(($ac_try" in
1594 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
1595 *) ac_try_echo=$ac_try;;
1596 esac
1597 eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
1598 $as_echo "$ac_try_echo"; } >&5
1599 (eval "$ac_link") 2>conftest.err
1600 ac_status=$?
1601 if test -s conftest.err; then
1602 grep -v '^ *+' conftest.err >conftest.er1
1603 cat conftest.er1 >&5
1604 mv -f conftest.er1 conftest.err
1605 fi
1606 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
1607 test $ac_status = 0; } && {
1608 test -z "$ac_c_werror_flag" ||
1609 test ! -s conftest.err
1610 } && test -s conftest$ac_exeext && {
1611 test "$cross_compiling" = yes ||
1612 test -x conftest$ac_exeext
1613 }; then :
1614 ac_retval=0
1615 else
1616 $as_echo "$as_me: failed program was:" >&5
1617 sed 's/^/| /' conftest.$ac_ext >&5
1618
1619 ac_retval=1
1620 fi
1621 # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information
1622 # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would
1623 # interfere with the next link command; also delete a directory that is
1624 # left behind by Apple's compiler. We do this before executing the actions.
1625 rm -rf conftest.dSYM conftest_ipa8_conftest.oo
1626 eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
1627 as_fn_set_status $ac_retval
1628
1629 } # ac_fn_c_try_link
1630
1631 # ac_fn_c_check_header_compile LINENO HEADER VAR INCLUDES
1632 # -------------------------------------------------------
1633 # Tests whether HEADER exists and can be compiled using the include files in
1634 # INCLUDES, setting the cache variable VAR accordingly.
1635 ac_fn_c_check_header_compile ()
1636 {
1637 as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
1638 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
1639 $as_echo_n "checking for $2... " >&6; }
1640 if eval \${$3+:} false; then :
1641 $as_echo_n "(cached) " >&6
1642 else
1643 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
1644 /* end confdefs.h. */
1645 $4
1646 #include <$2>
1647 _ACEOF
1648 if ac_fn_c_try_compile "$LINENO"; then :
1649 eval "$3=yes"
1650 else
1651 eval "$3=no"
1652 fi
1653 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
1654 fi
1655 eval ac_res=\$$3
1656 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
1657 $as_echo "$ac_res" >&6; }
1658 eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
1659
1660 } # ac_fn_c_check_header_compile
1661
1662 # ac_fn_c_try_cpp LINENO
1663 # ----------------------
1664 # Try to preprocess conftest.$ac_ext, and return whether this succeeded.
1665 ac_fn_c_try_cpp ()
1666 {
1667 as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
1668 if { { ac_try="$ac_cpp conftest.$ac_ext"
1669 case "(($ac_try" in
1670 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
1671 *) ac_try_echo=$ac_try;;
1672 esac
1673 eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
1674 $as_echo "$ac_try_echo"; } >&5
1675 (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err
1676 ac_status=$?
1677 if test -s conftest.err; then
1678 grep -v '^ *+' conftest.err >conftest.er1
1679 cat conftest.er1 >&5
1680 mv -f conftest.er1 conftest.err
1681 fi
1682 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
1683 test $ac_status = 0; } > conftest.i && {
1684 test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
1685 test ! -s conftest.err
1686 }; then :
1687 ac_retval=0
1688 else
1689 $as_echo "$as_me: failed program was:" >&5
1690 sed 's/^/| /' conftest.$ac_ext >&5
1691
1692 ac_retval=1
1693 fi
1694 eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
1695 as_fn_set_status $ac_retval
1696
1697 } # ac_fn_c_try_cpp
1698
1699 # ac_fn_c_try_run LINENO
1700 # ----------------------
1701 # Try to link conftest.$ac_ext, and return whether this succeeded. Assumes
1702 # that executables *can* be run.
1703 ac_fn_c_try_run ()
1704 {
1705 as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
1706 if { { ac_try="$ac_link"
1707 case "(($ac_try" in
1708 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
1709 *) ac_try_echo=$ac_try;;
1710 esac
1711 eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
1712 $as_echo "$ac_try_echo"; } >&5
1713 (eval "$ac_link") 2>&5
1714 ac_status=$?
1715 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
1716 test $ac_status = 0; } && { ac_try='./conftest$ac_exeext'
1717 { { case "(($ac_try" in
1718 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
1719 *) ac_try_echo=$ac_try;;
1720 esac
1721 eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
1722 $as_echo "$ac_try_echo"; } >&5
1723 (eval "$ac_try") 2>&5
1724 ac_status=$?
1725 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
1726 test $ac_status = 0; }; }; then :
1727 ac_retval=0
1728 else
1729 $as_echo "$as_me: program exited with status $ac_status" >&5
1730 $as_echo "$as_me: failed program was:" >&5
1731 sed 's/^/| /' conftest.$ac_ext >&5
1732
1733 ac_retval=$ac_status
1734 fi
1735 rm -rf conftest.dSYM conftest_ipa8_conftest.oo
1736 eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
1737 as_fn_set_status $ac_retval
1738
1739 } # ac_fn_c_try_run
1740
1741 # ac_fn_c_check_func LINENO FUNC VAR
1742 # ----------------------------------
1743 # Tests whether FUNC exists, setting the cache variable VAR accordingly
1744 ac_fn_c_check_func ()
1745 {
1746 as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
1747 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
1748 $as_echo_n "checking for $2... " >&6; }
1749 if eval \${$3+:} false; then :
1750 $as_echo_n "(cached) " >&6
1751 else
1752 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
1753 /* end confdefs.h. */
1754 /* Define $2 to an innocuous variant, in case <limits.h> declares $2.
1755 For example, HP-UX 11i <limits.h> declares gettimeofday. */
1756 #define $2 innocuous_$2
1757
1758 /* System header to define __stub macros and hopefully few prototypes,
1759 which can conflict with char $2 (); below.
1760 Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
1761 <limits.h> exists even on freestanding compilers. */
1762
1763 #ifdef __STDC__
1764 # include <limits.h>
1765 #else
1766 # include <assert.h>
1767 #endif
1768
1769 #undef $2
1770
1771 /* Override any GCC internal prototype to avoid an error.
1772 Use char because int might match the return type of a GCC
1773 builtin and then its argument prototype would still apply. */
1774 #ifdef __cplusplus
1775 extern "C"
1776 #endif
1777 char $2 ();
1778 /* The GNU C library defines this for functions which it implements
1779 to always fail with ENOSYS. Some functions are actually named
1780 something starting with __ and the normal name is an alias. */
1781 #if defined __stub_$2 || defined __stub___$2
1782 choke me
1783 #endif
1784
1785 int
1786 main ()
1787 {
1788 return $2 ();
1789 ;
1790 return 0;
1791 }
1792 _ACEOF
1793 if ac_fn_c_try_link "$LINENO"; then :
1794 eval "$3=yes"
1795 else
1796 eval "$3=no"
1797 fi
1798 rm -f core conftest.err conftest.$ac_objext \
1799 conftest$ac_exeext conftest.$ac_ext
1800 fi
1801 eval ac_res=\$$3
1802 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
1803 $as_echo "$ac_res" >&6; }
1804 eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
1805
1806 } # ac_fn_c_check_func
1807
1808 # ac_fn_cxx_try_compile LINENO
1809 # ----------------------------
1810 # Try to compile conftest.$ac_ext, and return whether this succeeded.
1811 ac_fn_cxx_try_compile ()
1812 {
1813 as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
1814 rm -f conftest.$ac_objext
1815 if { { ac_try="$ac_compile"
1816 case "(($ac_try" in
1817 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
1818 *) ac_try_echo=$ac_try;;
1819 esac
1820 eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
1821 $as_echo "$ac_try_echo"; } >&5
1822 (eval "$ac_compile") 2>conftest.err
1823 ac_status=$?
1824 if test -s conftest.err; then
1825 grep -v '^ *+' conftest.err >conftest.er1
1826 cat conftest.er1 >&5
1827 mv -f conftest.er1 conftest.err
1828 fi
1829 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
1830 test $ac_status = 0; } && {
1831 test -z "$ac_cxx_werror_flag" ||
1832 test ! -s conftest.err
1833 } && test -s conftest.$ac_objext; then :
1834 ac_retval=0
1835 else
1836 $as_echo "$as_me: failed program was:" >&5
1837 sed 's/^/| /' conftest.$ac_ext >&5
1838
1839 ac_retval=1
1840 fi
1841 eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
1842 as_fn_set_status $ac_retval
1843
1844 } # ac_fn_cxx_try_compile
1845
1846 # ac_fn_cxx_try_cpp LINENO
1847 # ------------------------
1848 # Try to preprocess conftest.$ac_ext, and return whether this succeeded.
1849 ac_fn_cxx_try_cpp ()
1850 {
1851 as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
1852 if { { ac_try="$ac_cpp conftest.$ac_ext"
1853 case "(($ac_try" in
1854 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
1855 *) ac_try_echo=$ac_try;;
1856 esac
1857 eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
1858 $as_echo "$ac_try_echo"; } >&5
1859 (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err
1860 ac_status=$?
1861 if test -s conftest.err; then
1862 grep -v '^ *+' conftest.err >conftest.er1
1863 cat conftest.er1 >&5
1864 mv -f conftest.er1 conftest.err
1865 fi
1866 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
1867 test $ac_status = 0; } > conftest.i && {
1868 test -z "$ac_cxx_preproc_warn_flag$ac_cxx_werror_flag" ||
1869 test ! -s conftest.err
1870 }; then :
1871 ac_retval=0
1872 else
1873 $as_echo "$as_me: failed program was:" >&5
1874 sed 's/^/| /' conftest.$ac_ext >&5
1875
1876 ac_retval=1
1877 fi
1878 eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
1879 as_fn_set_status $ac_retval
1880
1881 } # ac_fn_cxx_try_cpp
1882
1883 # ac_fn_cxx_try_link LINENO
1884 # -------------------------
1885 # Try to link conftest.$ac_ext, and return whether this succeeded.
1886 ac_fn_cxx_try_link ()
1887 {
1888 as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
1889 rm -f conftest.$ac_objext conftest$ac_exeext
1890 if { { ac_try="$ac_link"
1891 case "(($ac_try" in
1892 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
1893 *) ac_try_echo=$ac_try;;
1894 esac
1895 eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
1896 $as_echo "$ac_try_echo"; } >&5
1897 (eval "$ac_link") 2>conftest.err
1898 ac_status=$?
1899 if test -s conftest.err; then
1900 grep -v '^ *+' conftest.err >conftest.er1
1901 cat conftest.er1 >&5
1902 mv -f conftest.er1 conftest.err
1903 fi
1904 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
1905 test $ac_status = 0; } && {
1906 test -z "$ac_cxx_werror_flag" ||
1907 test ! -s conftest.err
1908 } && test -s conftest$ac_exeext && {
1909 test "$cross_compiling" = yes ||
1910 test -x conftest$ac_exeext
1911 }; then :
1912 ac_retval=0
1913 else
1914 $as_echo "$as_me: failed program was:" >&5
1915 sed 's/^/| /' conftest.$ac_ext >&5
1916
1917 ac_retval=1
1918 fi
1919 # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information
1920 # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would
1921 # interfere with the next link command; also delete a directory that is
1922 # left behind by Apple's compiler. We do this before executing the actions.
1923 rm -rf conftest.dSYM conftest_ipa8_conftest.oo
1924 eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
1925 as_fn_set_status $ac_retval
1926
1927 } # ac_fn_cxx_try_link
1928
1929 # ac_fn_c_check_header_mongrel LINENO HEADER VAR INCLUDES
1930 # -------------------------------------------------------
1931 # Tests whether HEADER exists, giving a warning if it cannot be compiled using
1932 # the include files in INCLUDES and setting the cache variable VAR
1933 # accordingly.
1934 ac_fn_c_check_header_mongrel ()
1935 {
1936 as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
1937 if eval \${$3+:} false; then :
1938 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
1939 $as_echo_n "checking for $2... " >&6; }
1940 if eval \${$3+:} false; then :
1941 $as_echo_n "(cached) " >&6
1942 fi
1943 eval ac_res=\$$3
1944 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
1945 $as_echo "$ac_res" >&6; }
1946 else
1947 # Is the header compilable?
1948 { $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 usability" >&5
1949 $as_echo_n "checking $2 usability... " >&6; }
1950 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
1951 /* end confdefs.h. */
1952 $4
1953 #include <$2>
1954 _ACEOF
1955 if ac_fn_c_try_compile "$LINENO"; then :
1956 ac_header_compiler=yes
1957 else
1958 ac_header_compiler=no
1959 fi
1960 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
1961 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_compiler" >&5
1962 $as_echo "$ac_header_compiler" >&6; }
1963
1964 # Is the header present?
1965 { $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 presence" >&5
1966 $as_echo_n "checking $2 presence... " >&6; }
1967 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
1968 /* end confdefs.h. */
1969 #include <$2>
1970 _ACEOF
1971 if ac_fn_c_try_cpp "$LINENO"; then :
1972 ac_header_preproc=yes
1973 else
1974 ac_header_preproc=no
1975 fi
1976 rm -f conftest.err conftest.i conftest.$ac_ext
1977 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_preproc" >&5
1978 $as_echo "$ac_header_preproc" >&6; }
1979
1980 # So? What about this header?
1981 case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in #((
1982 yes:no: )
1983 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&5
1984 $as_echo "$as_me: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&2;}
1985 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5
1986 $as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;}
1987 ;;
1988 no:yes:* )
1989 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: present but cannot be compiled" >&5
1990 $as_echo "$as_me: WARNING: $2: present but cannot be compiled" >&2;}
1991 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: check for missing prerequisite headers?" >&5
1992 $as_echo "$as_me: WARNING: $2: check for missing prerequisite headers?" >&2;}
1993 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: see the Autoconf documentation" >&5
1994 $as_echo "$as_me: WARNING: $2: see the Autoconf documentation" >&2;}
1995 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&5
1996 $as_echo "$as_me: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&2;}
1997 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5
1998 $as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;}
1999 ;;
2000 esac
2001 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
2002 $as_echo_n "checking for $2... " >&6; }
2003 if eval \${$3+:} false; then :
2004 $as_echo_n "(cached) " >&6
2005 else
2006 eval "$3=\$ac_header_compiler"
2007 fi
2008 eval ac_res=\$$3
2009 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
2010 $as_echo "$ac_res" >&6; }
2011 fi
2012 eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
2013
2014 } # ac_fn_c_check_header_mongrel
2015
2016 # ac_fn_c_check_type LINENO TYPE VAR INCLUDES
2017 # -------------------------------------------
2018 # Tests whether TYPE exists after having included INCLUDES, setting cache
2019 # variable VAR accordingly.
2020 ac_fn_c_check_type ()
2021 {
2022 as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
2023 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
2024 $as_echo_n "checking for $2... " >&6; }
2025 if eval \${$3+:} false; then :
2026 $as_echo_n "(cached) " >&6
2027 else
2028 eval "$3=no"
2029 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
2030 /* end confdefs.h. */
2031 $4
2032 int
2033 main ()
2034 {
2035 if (sizeof ($2))
2036 return 0;
2037 ;
2038 return 0;
2039 }
2040 _ACEOF
2041 if ac_fn_c_try_compile "$LINENO"; then :
2042 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
2043 /* end confdefs.h. */
2044 $4
2045 int
2046 main ()
2047 {
2048 if (sizeof (($2)))
2049 return 0;
2050 ;
2051 return 0;
2052 }
2053 _ACEOF
2054 if ac_fn_c_try_compile "$LINENO"; then :
2055
2056 else
2057 eval "$3=yes"
2058 fi
2059 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
2060 fi
2061 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
2062 fi
2063 eval ac_res=\$$3
2064 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
2065 $as_echo "$ac_res" >&6; }
2066 eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
2067
2068 } # ac_fn_c_check_type
2069 cat >config.log <<_ACEOF
2070 This file contains any messages produced by compilers while
2071 running configure, to aid debugging if configure makes a mistake.
2072
2073 It was created by faad2 $as_me 2.9.2, which was
2074 generated by GNU Autoconf 2.69. Invocation command line was
2075
2076 $ $0 $@
2077
2078 _ACEOF
2079 exec 5>>config.log
2080 {
2081 cat <<_ASUNAME
2082 ## --------- ##
2083 ## Platform. ##
2084 ## --------- ##
2085
2086 hostname = `(hostname || uname -n) 2>/dev/null | sed 1q`
2087 uname -m = `(uname -m) 2>/dev/null || echo unknown`
2088 uname -r = `(uname -r) 2>/dev/null || echo unknown`
2089 uname -s = `(uname -s) 2>/dev/null || echo unknown`
2090 uname -v = `(uname -v) 2>/dev/null || echo unknown`
2091
2092 /usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown`
2093 /bin/uname -X = `(/bin/uname -X) 2>/dev/null || echo unknown`
2094
2095 /bin/arch = `(/bin/arch) 2>/dev/null || echo unknown`
2096 /usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null || echo unknown`
2097 /usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown`
2098 /usr/bin/hostinfo = `(/usr/bin/hostinfo) 2>/dev/null || echo unknown`
2099 /bin/machine = `(/bin/machine) 2>/dev/null || echo unknown`
2100 /usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null || echo unknown`
2101 /bin/universe = `(/bin/universe) 2>/dev/null || echo unknown`
2102
2103 _ASUNAME
2104
2105 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
2106 for as_dir in $PATH
2107 do
2108 IFS=$as_save_IFS
2109 test -z "$as_dir" && as_dir=.
2110 $as_echo "PATH: $as_dir"
2111 done
2112 IFS=$as_save_IFS
2113
2114 } >&5
2115
2116 cat >&5 <<_ACEOF
2117
2118
2119 ## ----------- ##
2120 ## Core tests. ##
2121 ## ----------- ##
2122
2123 _ACEOF
2124
2125
2126 # Keep a trace of the command line.
2127 # Strip out --no-create and --no-recursion so they do not pile up.
2128 # Strip out --silent because we don't want to record it for future runs.
2129 # Also quote any args containing shell meta-characters.
2130 # Make two passes to allow for proper duplicate-argument suppression.
2131 ac_configure_args=
2132 ac_configure_args0=
2133 ac_configure_args1=
2134 ac_must_keep_next=false
2135 for ac_pass in 1 2
2136 do
2137 for ac_arg
2138 do
2139 case $ac_arg in
2140 -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;;
2141 -q | -quiet | --quiet | --quie | --qui | --qu | --q \
2142 | -silent | --silent | --silen | --sile | --sil)
2143 continue ;;
2144 *\'*)
2145 ac_arg=`$as_echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
2146 esac
2147 case $ac_pass in
2148 1) as_fn_append ac_configure_args0 " '$ac_arg'" ;;
2149 2)
2150 as_fn_append ac_configure_args1 " '$ac_arg'"
2151 if test $ac_must_keep_next = true; then
2152 ac_must_keep_next=false # Got value, back to normal.
2153 else
2154 case $ac_arg in
2155 *=* | --config-cache | -C | -disable-* | --disable-* \
2156 | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \
2157 | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \
2158 | -with-* | --with-* | -without-* | --without-* | --x)
2159 case "$ac_configure_args0 " in
2160 "$ac_configure_args1"*" '$ac_arg' "* ) continue ;;
2161 esac
2162 ;;
2163 -* ) ac_must_keep_next=true ;;
2164 esac
2165 fi
2166 as_fn_append ac_configure_args " '$ac_arg'"
2167 ;;
2168 esac
2169 done
2170 done
2171 { ac_configure_args0=; unset ac_configure_args0;}
2172 { ac_configure_args1=; unset ac_configure_args1;}
2173
2174 # When interrupted or exit'd, cleanup temporary files, and complete
2175 # config.log. We remove comments because anyway the quotes in there
2176 # would cause problems or look ugly.
2177 # WARNING: Use '\'' to represent an apostrophe within the trap.
2178 # WARNING: Do not start the trap code with a newline, due to a FreeBSD 4.0 bug.
2179 trap 'exit_status=$?
2180 # Save into config.log some information that might help in debugging.
2181 {
2182 echo
2183
2184 $as_echo "## ---------------- ##
2185 ## Cache variables. ##
2186 ## ---------------- ##"
2187 echo
2188 # The following way of writing the cache mishandles newlines in values,
2189 (
2190 for ac_var in `(set) 2>&1 | sed -n '\''s/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'\''`; do
2191 eval ac_val=\$$ac_var
2192 case $ac_val in #(
2193 *${as_nl}*)
2194 case $ac_var in #(
2195 *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5
2196 $as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
2197 esac
2198 case $ac_var in #(
2199 _ | IFS | as_nl) ;; #(
2200 BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #(
2201 *) { eval $ac_var=; unset $ac_var;} ;;
2202 esac ;;
2203 esac
2204 done
2205 (set) 2>&1 |
2206 case $as_nl`(ac_space='\'' '\''; set) 2>&1` in #(
2207 *${as_nl}ac_space=\ *)
2208 sed -n \
2209 "s/'\''/'\''\\\\'\'''\''/g;
2210 s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\''\\2'\''/p"
2211 ;; #(
2212 *)
2213 sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p"
2214 ;;
2215 esac |
2216 sort
2217 )
2218 echo
2219
2220 $as_echo "## ----------------- ##
2221 ## Output variables. ##
2222 ## ----------------- ##"
2223 echo
2224 for ac_var in $ac_subst_vars
2225 do
2226 eval ac_val=\$$ac_var
2227 case $ac_val in
2228 *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
2229 esac
2230 $as_echo "$ac_var='\''$ac_val'\''"
2231 done | sort
2232 echo
2233
2234 if test -n "$ac_subst_files"; then
2235 $as_echo "## ------------------- ##
2236 ## File substitutions. ##
2237 ## ------------------- ##"
2238 echo
2239 for ac_var in $ac_subst_files
2240 do
2241 eval ac_val=\$$ac_var
2242 case $ac_val in
2243 *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
2244 esac
2245 $as_echo "$ac_var='\''$ac_val'\''"
2246 done | sort
2247 echo
2248 fi
2249
2250 if test -s confdefs.h; then
2251 $as_echo "## ----------- ##
2252 ## confdefs.h. ##
2253 ## ----------- ##"
2254 echo
2255 cat confdefs.h
2256 echo
2257 fi
2258 test "$ac_signal" != 0 &&
2259 $as_echo "$as_me: caught signal $ac_signal"
2260 $as_echo "$as_me: exit $exit_status"
2261 } >&5
2262 rm -f core *.core core.conftest.* &&
2263 rm -f -r conftest* confdefs* conf$$* $ac_clean_files &&
2264 exit $exit_status
2265 ' 0
2266 for ac_signal in 1 2 13 15; do
2267 trap 'ac_signal='$ac_signal'; as_fn_exit 1' $ac_signal
2268 done
2269 ac_signal=0
2270
2271 # confdefs.h avoids OS command line length limits that DEFS can exceed.
2272 rm -f -r conftest* confdefs.h
2273
2274 $as_echo "/* confdefs.h */" > confdefs.h
2275
2276 # Predefined preprocessor variables.
2277
2278 cat >>confdefs.h <<_ACEOF
2279 #define PACKAGE_NAME "$PACKAGE_NAME"
2280 _ACEOF
2281
2282 cat >>confdefs.h <<_ACEOF
2283 #define PACKAGE_TARNAME "$PACKAGE_TARNAME"
2284 _ACEOF
2285
2286 cat >>confdefs.h <<_ACEOF
2287 #define PACKAGE_VERSION "$PACKAGE_VERSION"
2288 _ACEOF
2289
2290 cat >>confdefs.h <<_ACEOF
2291 #define PACKAGE_STRING "$PACKAGE_STRING"
2292 _ACEOF
2293
2294 cat >>confdefs.h <<_ACEOF
2295 #define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT"
2296 _ACEOF
2297
2298 cat >>confdefs.h <<_ACEOF
2299 #define PACKAGE_URL "$PACKAGE_URL"
2300 _ACEOF
2301
2302
2303 # Let the site file select an alternate cache file if it wants to.
2304 # Prefer an explicitly selected file to automatically selected ones.
2305 ac_site_file1=NONE
2306 ac_site_file2=NONE
2307 if test -n "$CONFIG_SITE"; then
2308 # We do not want a PATH search for config.site.
2309 case $CONFIG_SITE in #((
2310 -*) ac_site_file1=./$CONFIG_SITE;;
2311 */*) ac_site_file1=$CONFIG_SITE;;
2312 *) ac_site_file1=./$CONFIG_SITE;;
2313 esac
2314 elif test "x$prefix" != xNONE; then
2315 ac_site_file1=$prefix/share/config.site
2316 ac_site_file2=$prefix/etc/config.site
2317 else
2318 ac_site_file1=$ac_default_prefix/share/config.site
2319 ac_site_file2=$ac_default_prefix/etc/config.site
2320 fi
2321 for ac_site_file in "$ac_site_file1" "$ac_site_file2"
2322 do
2323 test "x$ac_site_file" = xNONE && continue
2324 if test /dev/null != "$ac_site_file" && test -r "$ac_site_file"; then
2325 { $as_echo "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5
2326 $as_echo "$as_me: loading site script $ac_site_file" >&6;}
2327 sed 's/^/| /' "$ac_site_file" >&5
2328 . "$ac_site_file" \
2329 || { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
2330 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
2331 as_fn_error $? "failed to load site script $ac_site_file
2332 See \`config.log' for more details" "$LINENO" 5; }
2333 fi
2334 done
2335
2336 if test -r "$cache_file"; then
2337 # Some versions of bash will fail to source /dev/null (special files
2338 # actually), so we avoid doing that. DJGPP emulates it as a regular file.
2339 if test /dev/null != "$cache_file" && test -f "$cache_file"; then
2340 { $as_echo "$as_me:${as_lineno-$LINENO}: loading cache $cache_file" >&5
2341 $as_echo "$as_me: loading cache $cache_file" >&6;}
2342 case $cache_file in
2343 [\\/]* | ?:[\\/]* ) . "$cache_file";;
2344 *) . "./$cache_file";;
2345 esac
2346 fi
2347 else
2348 { $as_echo "$as_me:${as_lineno-$LINENO}: creating cache $cache_file" >&5
2349 $as_echo "$as_me: creating cache $cache_file" >&6;}
2350 >$cache_file
2351 fi
2352
2353 # Check that the precious variables saved in the cache have kept the same
2354 # value.
2355 ac_cache_corrupted=false
2356 for ac_var in $ac_precious_vars; do
2357 eval ac_old_set=\$ac_cv_env_${ac_var}_set
2358 eval ac_new_set=\$ac_env_${ac_var}_set
2359 eval ac_old_val=\$ac_cv_env_${ac_var}_value
2360 eval ac_new_val=\$ac_env_${ac_var}_value
2361 case $ac_old_set,$ac_new_set in
2362 set,)
2363 { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
2364 $as_echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;}
2365 ac_cache_corrupted=: ;;
2366 ,set)
2367 { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was not set in the previous run" >&5
2368 $as_echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
2369 ac_cache_corrupted=: ;;
2370 ,);;
2371 *)
2372 if test "x$ac_old_val" != "x$ac_new_val"; then
2373 # differences in whitespace do not lead to failure.
2374 ac_old_val_w=`echo x $ac_old_val`
2375 ac_new_val_w=`echo x $ac_new_val`
2376 if test "$ac_old_val_w" != "$ac_new_val_w"; then
2377 { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' has changed since the previous run:" >&5
2378 $as_echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;}
2379 ac_cache_corrupted=:
2380 else
2381 { $as_echo "$as_me:${as_lineno-$LINENO}: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5
2382 $as_echo "$as_me: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&2;}
2383 eval $ac_var=\$ac_old_val
2384 fi
2385 { $as_echo "$as_me:${as_lineno-$LINENO}: former value: \`$ac_old_val'" >&5
2386 $as_echo "$as_me: former value: \`$ac_old_val'" >&2;}
2387 { $as_echo "$as_me:${as_lineno-$LINENO}: current value: \`$ac_new_val'" >&5
2388 $as_echo "$as_me: current value: \`$ac_new_val'" >&2;}
2389 fi;;
2390 esac
2391 # Pass precious variables to config.status.
2392 if test "$ac_new_set" = set; then
2393 case $ac_new_val in
2394 *\'*) ac_arg=$ac_var=`$as_echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;;
2395 *) ac_arg=$ac_var=$ac_new_val ;;
2396 esac
2397 case " $ac_configure_args " in
2398 *" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy.
2399 *) as_fn_append ac_configure_args " '$ac_arg'" ;;
2400 esac
2401 fi
2402 done
2403 if $ac_cache_corrupted; then
2404 { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
2405 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
2406 { $as_echo "$as_me:${as_lineno-$LINENO}: error: changes in the environment can compromise the build" >&5
2407 $as_echo "$as_me: error: changes in the environment can compromise the build" >&2;}
2408 as_fn_error $? "run \`make distclean' and/or \`rm $cache_file' and start over" "$LINENO" 5
2409 fi
2410 ## -------------------- ##
2411 ## Main body of script. ##
2412 ## -------------------- ##
2413
2414 ac_ext=c
2415 ac_cpp='$CPP $CPPFLAGS'
2416 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
2417 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
2418 ac_compiler_gnu=$ac_cv_c_compiler_gnu
2419
2420
2421 ac_aux_dir=
2422 for ac_dir in . "$srcdir"/.; do
2423 if test -f "$ac_dir/install-sh"; then
2424 ac_aux_dir=$ac_dir
2425 ac_install_sh="$ac_aux_dir/install-sh -c"
2426 break
2427 elif test -f "$ac_dir/install.sh"; then
2428 ac_aux_dir=$ac_dir
2429 ac_install_sh="$ac_aux_dir/install.sh -c"
2430 break
2431 elif test -f "$ac_dir/shtool"; then
2432 ac_aux_dir=$ac_dir
2433 ac_install_sh="$ac_aux_dir/shtool install -c"
2434 break
2435 fi
2436 done
2437 if test -z "$ac_aux_dir"; then
2438 as_fn_error $? "cannot find install-sh, install.sh, or shtool in . \"$srcdir\"/." "$LINENO" 5
2439 fi
2440
2441 # These three variables are undocumented and unsupported,
2442 # and are intended to be withdrawn in a future Autoconf release.
2443 # They can cause serious problems if a builder's source tree is in a directory
2444 # whose full name contains unusual characters.
2445 ac_config_guess="$SHELL $ac_aux_dir/config.guess" # Please don't use this var.
2446 ac_config_sub="$SHELL $ac_aux_dir/config.sub" # Please don't use this var.
2447 ac_configure="$SHELL $ac_aux_dir/configure" # Please don't use this var.
2448
2449
2450 am__api_version='1.16'
2451
2452 # Find a good install program. We prefer a C program (faster),
2453 # so one script is as good as another. But avoid the broken or
2454 # incompatible versions:
2455 # SysV /etc/install, /usr/sbin/install
2456 # SunOS /usr/etc/install
2457 # IRIX /sbin/install
2458 # AIX /bin/install
2459 # AmigaOS /C/install, which installs bootblocks on floppy discs
2460 # AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag
2461 # AFS /usr/afsws/bin/install, which mishandles nonexistent args
2462 # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
2463 # OS/2's system install, which has a completely different semantic
2464 # ./install, which can be erroneously created by make from ./install.sh.
2465 # Reject install programs that cannot install multiple files.
2466 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for a BSD-compatible install" >&5
2467 $as_echo_n "checking for a BSD-compatible install... " >&6; }
2468 if test -z "$INSTALL"; then
2469 if ${ac_cv_path_install+:} false; then :
2470 $as_echo_n "(cached) " >&6
2471 else
2472 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
2473 for as_dir in $PATH
2474 do
2475 IFS=$as_save_IFS
2476 test -z "$as_dir" && as_dir=.
2477 # Account for people who put trailing slashes in PATH elements.
2478 case $as_dir/ in #((
2479 ./ | .// | /[cC]/* | \
2480 /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \
2481 ?:[\\/]os2[\\/]install[\\/]* | ?:[\\/]OS2[\\/]INSTALL[\\/]* | \
2482 /usr/ucb/* ) ;;
2483 *)
2484 # OSF1 and SCO ODT 3.0 have their own names for install.
2485 # Don't use installbsd from OSF since it installs stuff as root
2486 # by default.
2487 for ac_prog in ginstall scoinst install; do
2488 for ac_exec_ext in '' $ac_executable_extensions; do
2489 if as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then
2490 if test $ac_prog = install &&
2491 grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
2492 # AIX install. It has an incompatible calling convention.
2493 :
2494 elif test $ac_prog = install &&
2495 grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
2496 # program-specific install script used by HP pwplus--don't use.
2497 :
2498 else
2499 rm -rf conftest.one conftest.two conftest.dir
2500 echo one > conftest.one
2501 echo two > conftest.two
2502 mkdir conftest.dir
2503 if "$as_dir/$ac_prog$ac_exec_ext" -c conftest.one conftest.two "`pwd`/conftest.dir" &&
2504 test -s conftest.one && test -s conftest.two &&
2505 test -s conftest.dir/conftest.one &&
2506 test -s conftest.dir/conftest.two
2507 then
2508 ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c"
2509 break 3
2510 fi
2511 fi
2512 fi
2513 done
2514 done
2515 ;;
2516 esac
2517
2518 done
2519 IFS=$as_save_IFS
2520
2521 rm -rf conftest.one conftest.two conftest.dir
2522
2523 fi
2524 if test "${ac_cv_path_install+set}" = set; then
2525 INSTALL=$ac_cv_path_install
2526 else
2527 # As a last resort, use the slow shell script. Don't cache a
2528 # value for INSTALL within a source directory, because that will
2529 # break other packages using the cache if that directory is
2530 # removed, or if the value is a relative name.
2531 INSTALL=$ac_install_sh
2532 fi
2533 fi
2534 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $INSTALL" >&5
2535 $as_echo "$INSTALL" >&6; }
2536
2537 # Use test -z because SunOS4 sh mishandles braces in ${var-val}.
2538 # It thinks the first close brace ends the variable substitution.
2539 test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}'
2540
2541 test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}'
2542
2543 test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
2544
2545 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether build environment is sane" >&5
2546 $as_echo_n "checking whether build environment is sane... " >&6; }
2547 # Reject unsafe characters in $srcdir or the absolute working directory
2548 # name. Accept space and tab only in the latter.
2549 am_lf='
2550 '
2551 case `pwd` in
2552 *[\\\"\#\$\&\'\`$am_lf]*)
2553 as_fn_error $? "unsafe absolute working directory name" "$LINENO" 5;;
2554 esac
2555 case $srcdir in
2556 *[\\\"\#\$\&\'\`$am_lf\ \ ]*)
2557 as_fn_error $? "unsafe srcdir value: '$srcdir'" "$LINENO" 5;;
2558 esac
2559
2560 # Do 'set' in a subshell so we don't clobber the current shell's
2561 # arguments. Must try -L first in case configure is actually a
2562 # symlink; some systems play weird games with the mod time of symlinks
2563 # (eg FreeBSD returns the mod time of the symlink's containing
2564 # directory).
2565 if (
2566 am_has_slept=no
2567 for am_try in 1 2; do
2568 echo "timestamp, slept: $am_has_slept" > conftest.file
2569 set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null`
2570 if test "$*" = "X"; then
2571 # -L didn't work.
2572 set X `ls -t "$srcdir/configure" conftest.file`
2573 fi
2574 if test "$*" != "X $srcdir/configure conftest.file" \
2575 && test "$*" != "X conftest.file $srcdir/configure"; then
2576
2577 # If neither matched, then we have a broken ls. This can happen
2578 # if, for instance, CONFIG_SHELL is bash and it inherits a
2579 # broken ls alias from the environment. This has actually
2580 # happened. Such a system could not be considered "sane".
2581 as_fn_error $? "ls -t appears to fail. Make sure there is not a broken
2582 alias in your environment" "$LINENO" 5
2583 fi
2584 if test "$2" = conftest.file || test $am_try -eq 2; then
2585 break
2586 fi
2587 # Just in case.
2588 sleep 1
2589 am_has_slept=yes
2590 done
2591 test "$2" = conftest.file
2592 )
2593 then
2594 # Ok.
2595 :
2596 else
2597 as_fn_error $? "newly created file is older than distributed files!
2598 Check your system clock" "$LINENO" 5
2599 fi
2600 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
2601 $as_echo "yes" >&6; }
2602 # If we didn't sleep, we still need to ensure time stamps of config.status and
2603 # generated files are strictly newer.
2604 am_sleep_pid=
2605 if grep 'slept: no' conftest.file >/dev/null 2>&1; then
2606 ( sleep 1 ) &
2607 am_sleep_pid=$!
2608 fi
2609
2610 rm -f conftest.file
2611
2612 test "$program_prefix" != NONE &&
2613 program_transform_name="s&^&$program_prefix&;$program_transform_name"
2614 # Use a double $ so make ignores it.
2615 test "$program_suffix" != NONE &&
2616 program_transform_name="s&\$&$program_suffix&;$program_transform_name"
2617 # Double any \ or $.
2618 # By default was `s,x,x', remove it if useless.
2619 ac_script='s/[\\$]/&&/g;s/;s,x,x,$//'
2620 program_transform_name=`$as_echo "$program_transform_name" | sed "$ac_script"`
2621
2622 # Expand $ac_aux_dir to an absolute path.
2623 am_aux_dir=`cd "$ac_aux_dir" && pwd`
2624
2625 if test x"${MISSING+set}" != xset; then
2626 case $am_aux_dir in
2627 *\ * | *\ *)
2628 MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;;
2629 *)
2630 MISSING="\${SHELL} $am_aux_dir/missing" ;;
2631 esac
2632 fi
2633 # Use eval to expand $SHELL
2634 if eval "$MISSING --is-lightweight"; then
2635 am_missing_run="$MISSING "
2636 else
2637 am_missing_run=
2638 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: 'missing' script is too old or missing" >&5
2639 $as_echo "$as_me: WARNING: 'missing' script is too old or missing" >&2;}
2640 fi
2641
2642 if test x"${install_sh+set}" != xset; then
2643 case $am_aux_dir in
2644 *\ * | *\ *)
2645 install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;;
2646 *)
2647 install_sh="\${SHELL} $am_aux_dir/install-sh"
2648 esac
2649 fi
2650
2651 # Installed binaries are usually stripped using 'strip' when the user
2652 # run "make install-strip". However 'strip' might not be the right
2653 # tool to use in cross-compilation environments, therefore Automake
2654 # will honor the 'STRIP' environment variable to overrule this program.
2655 if test "$cross_compiling" != no; then
2656 if test -n "$ac_tool_prefix"; then
2657 # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
2658 set dummy ${ac_tool_prefix}strip; ac_word=$2
2659 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
2660 $as_echo_n "checking for $ac_word... " >&6; }
2661 if ${ac_cv_prog_STRIP+:} false; then :
2662 $as_echo_n "(cached) " >&6
2663 else
2664 if test -n "$STRIP"; then
2665 ac_cv_prog_STRIP="$STRIP" # Let the user override the test.
2666 else
2667 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
2668 for as_dir in $PATH
2669 do
2670 IFS=$as_save_IFS
2671 test -z "$as_dir" && as_dir=.
2672 for ac_exec_ext in '' $ac_executable_extensions; do
2673 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
2674 ac_cv_prog_STRIP="${ac_tool_prefix}strip"
2675 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
2676 break 2
2677 fi
2678 done
2679 done
2680 IFS=$as_save_IFS
2681
2682 fi
2683 fi
2684 STRIP=$ac_cv_prog_STRIP
2685 if test -n "$STRIP"; then
2686 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5
2687 $as_echo "$STRIP" >&6; }
2688 else
2689 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
2690 $as_echo "no" >&6; }
2691 fi
2692
2693
2694 fi
2695 if test -z "$ac_cv_prog_STRIP"; then
2696 ac_ct_STRIP=$STRIP
2697 # Extract the first word of "strip", so it can be a program name with args.
2698 set dummy strip; ac_word=$2
2699 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
2700 $as_echo_n "checking for $ac_word... " >&6; }
2701 if ${ac_cv_prog_ac_ct_STRIP+:} false; then :
2702 $as_echo_n "(cached) " >&6
2703 else
2704 if test -n "$ac_ct_STRIP"; then
2705 ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test.
2706 else
2707 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
2708 for as_dir in $PATH
2709 do
2710 IFS=$as_save_IFS
2711 test -z "$as_dir" && as_dir=.
2712 for ac_exec_ext in '' $ac_executable_extensions; do
2713 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
2714 ac_cv_prog_ac_ct_STRIP="strip"
2715 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
2716 break 2
2717 fi
2718 done
2719 done
2720 IFS=$as_save_IFS
2721
2722 fi
2723 fi
2724 ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP
2725 if test -n "$ac_ct_STRIP"; then
2726 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5
2727 $as_echo "$ac_ct_STRIP" >&6; }
2728 else
2729 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
2730 $as_echo "no" >&6; }
2731 fi
2732
2733 if test "x$ac_ct_STRIP" = x; then
2734 STRIP=":"
2735 else
2736 case $cross_compiling:$ac_tool_warned in
2737 yes:)
2738 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
2739 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
2740 ac_tool_warned=yes ;;
2741 esac
2742 STRIP=$ac_ct_STRIP
2743 fi
2744 else
2745 STRIP="$ac_cv_prog_STRIP"
2746 fi
2747
2748 fi
2749 INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
2750
2751 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for a thread-safe mkdir -p" >&5
2752 $as_echo_n "checking for a thread-safe mkdir -p... " >&6; }
2753 if test -z "$MKDIR_P"; then
2754 if ${ac_cv_path_mkdir+:} false; then :
2755 $as_echo_n "(cached) " >&6
2756 else
2757 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
2758 for as_dir in $PATH$PATH_SEPARATOR/opt/sfw/bin
2759 do
2760 IFS=$as_save_IFS
2761 test -z "$as_dir" && as_dir=.
2762 for ac_prog in mkdir gmkdir; do
2763 for ac_exec_ext in '' $ac_executable_extensions; do
2764 as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext" || continue
2765 case `"$as_dir/$ac_prog$ac_exec_ext" --version 2>&1` in #(
2766 'mkdir (GNU coreutils) '* | \
2767 'mkdir (coreutils) '* | \
2768 'mkdir (fileutils) '4.1*)
2769 ac_cv_path_mkdir=$as_dir/$ac_prog$ac_exec_ext
2770 break 3;;
2771 esac
2772 done
2773 done
2774 done
2775 IFS=$as_save_IFS
2776
2777 fi
2778
2779 test -d ./--version && rmdir ./--version
2780 if test "${ac_cv_path_mkdir+set}" = set; then
2781 MKDIR_P="$ac_cv_path_mkdir -p"
2782 else
2783 # As a last resort, use the slow shell script. Don't cache a
2784 # value for MKDIR_P within a source directory, because that will
2785 # break other packages using the cache if that directory is
2786 # removed, or if the value is a relative name.
2787 MKDIR_P="$ac_install_sh -d"
2788 fi
2789 fi
2790 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MKDIR_P" >&5
2791 $as_echo "$MKDIR_P" >&6; }
2792
2793 for ac_prog in gawk mawk nawk awk
2794 do
2795 # Extract the first word of "$ac_prog", so it can be a program name with args.
2796 set dummy $ac_prog; ac_word=$2
2797 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
2798 $as_echo_n "checking for $ac_word... " >&6; }
2799 if ${ac_cv_prog_AWK+:} false; then :
2800 $as_echo_n "(cached) " >&6
2801 else
2802 if test -n "$AWK"; then
2803 ac_cv_prog_AWK="$AWK" # Let the user override the test.
2804 else
2805 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
2806 for as_dir in $PATH
2807 do
2808 IFS=$as_save_IFS
2809 test -z "$as_dir" && as_dir=.
2810 for ac_exec_ext in '' $ac_executable_extensions; do
2811 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
2812 ac_cv_prog_AWK="$ac_prog"
2813 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
2814 break 2
2815 fi
2816 done
2817 done
2818 IFS=$as_save_IFS
2819
2820 fi
2821 fi
2822 AWK=$ac_cv_prog_AWK
2823 if test -n "$AWK"; then
2824 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AWK" >&5
2825 $as_echo "$AWK" >&6; }
2826 else
2827 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
2828 $as_echo "no" >&6; }
2829 fi
2830
2831
2832 test -n "$AWK" && break
2833 done
2834
2835 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5
2836 $as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; }
2837 set x ${MAKE-make}
2838 ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'`
2839 if eval \${ac_cv_prog_make_${ac_make}_set+:} false; then :
2840 $as_echo_n "(cached) " >&6
2841 else
2842 cat >conftest.make <<\_ACEOF
2843 SHELL = /bin/sh
2844 all:
2845 @echo '@@@%%%=$(MAKE)=@@@%%%'
2846 _ACEOF
2847 # GNU make sometimes prints "make[1]: Entering ...", which would confuse us.
2848 case `${MAKE-make} -f conftest.make 2>/dev/null` in
2849 *@@@%%%=?*=@@@%%%*)
2850 eval ac_cv_prog_make_${ac_make}_set=yes;;
2851 *)
2852 eval ac_cv_prog_make_${ac_make}_set=no;;
2853 esac
2854 rm -f conftest.make
2855 fi
2856 if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then
2857 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
2858 $as_echo "yes" >&6; }
2859 SET_MAKE=
2860 else
2861 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
2862 $as_echo "no" >&6; }
2863 SET_MAKE="MAKE=${MAKE-make}"
2864 fi
2865
2866 rm -rf .tst 2>/dev/null
2867 mkdir .tst 2>/dev/null
2868 if test -d .tst; then
2869 am__leading_dot=.
2870 else
2871 am__leading_dot=_
2872 fi
2873 rmdir .tst 2>/dev/null
2874
2875 # Check whether --enable-silent-rules was given.
2876 if test "${enable_silent_rules+set}" = set; then :
2877 enableval=$enable_silent_rules;
2878 fi
2879
2880 case $enable_silent_rules in # (((
2881 yes) AM_DEFAULT_VERBOSITY=0;;
2882 no) AM_DEFAULT_VERBOSITY=1;;
2883 *) AM_DEFAULT_VERBOSITY=1;;
2884 esac
2885 am_make=${MAKE-make}
2886 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $am_make supports nested variables" >&5
2887 $as_echo_n "checking whether $am_make supports nested variables... " >&6; }
2888 if ${am_cv_make_support_nested_variables+:} false; then :
2889 $as_echo_n "(cached) " >&6
2890 else
2891 if $as_echo 'TRUE=$(BAR$(V))
2892 BAR0=false
2893 BAR1=true
2894 V=1
2895 am__doit:
2896 @$(TRUE)
2897 .PHONY: am__doit' | $am_make -f - >/dev/null 2>&1; then
2898 am_cv_make_support_nested_variables=yes
2899 else
2900 am_cv_make_support_nested_variables=no
2901 fi
2902 fi
2903 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_make_support_nested_variables" >&5
2904 $as_echo "$am_cv_make_support_nested_variables" >&6; }
2905 if test $am_cv_make_support_nested_variables = yes; then
2906 AM_V='$(V)'
2907 AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)'
2908 else
2909 AM_V=$AM_DEFAULT_VERBOSITY
2910 AM_DEFAULT_V=$AM_DEFAULT_VERBOSITY
2911 fi
2912 AM_BACKSLASH='\'
2913
2914 if test "`cd $srcdir && pwd`" != "`pwd`"; then
2915 # Use -I$(srcdir) only when $(srcdir) != ., so that make's output
2916 # is not polluted with repeated "-I."
2917 am__isrc=' -I$(srcdir)'
2918 # test to see if srcdir already configured
2919 if test -f $srcdir/config.status; then
2920 as_fn_error $? "source directory already configured; run \"make distclean\" there first" "$LINENO" 5
2921 fi
2922 fi
2923
2924 # test whether we have cygpath
2925 if test -z "$CYGPATH_W"; then
2926 if (cygpath --version) >/dev/null 2>/dev/null; then
2927 CYGPATH_W='cygpath -w'
2928 else
2929 CYGPATH_W=echo
2930 fi
2931 fi
2932
2933
2934 # Define the identity of the package.
2935 PACKAGE='faad2'
2936 VERSION='2.9.2'
2937
2938
2939 cat >>confdefs.h <<_ACEOF
2940 #define PACKAGE "$PACKAGE"
2941 _ACEOF
2942
2943
2944 cat >>confdefs.h <<_ACEOF
2945 #define VERSION "$VERSION"
2946 _ACEOF
2947
2948 # Some tools Automake needs.
2949
2950 ACLOCAL=${ACLOCAL-"${am_missing_run}aclocal-${am__api_version}"}
2951
2952
2953 AUTOCONF=${AUTOCONF-"${am_missing_run}autoconf"}
2954
2955
2956 AUTOMAKE=${AUTOMAKE-"${am_missing_run}automake-${am__api_version}"}
2957
2958
2959 AUTOHEADER=${AUTOHEADER-"${am_missing_run}autoheader"}
2960
2961
2962 MAKEINFO=${MAKEINFO-"${am_missing_run}makeinfo"}
2963
2964 # For better backward compatibility. To be removed once Automake 1.9.x
2965 # dies out for good. For more background, see:
2966 # <https://lists.gnu.org/archive/html/automake/2012-07/msg00001.html>
2967 # <https://lists.gnu.org/archive/html/automake/2012-07/msg00014.html>
2968 mkdir_p='$(MKDIR_P)'
2969
2970 # We need awk for the "check" target (and possibly the TAP driver). The
2971 # system "awk" is bad on some platforms.
2972 # Always define AMTAR for backward compatibility. Yes, it's still used
2973 # in the wild :-( We should find a proper way to deprecate it ...
2974 AMTAR='$${TAR-tar}'
2975
2976
2977 # We'll loop over all known methods to create a tar archive until one works.
2978 _am_tools='gnutar pax cpio none'
2979
2980 am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'
2981
2982
2983
2984
2985
2986
2987 # POSIX will say in a future version that running "rm -f" with no argument
2988 # is OK; and we want to be able to make that assumption in our Makefile
2989 # recipes. So use an aggressive probe to check that the usage we want is
2990 # actually supported "in the wild" to an acceptable degree.
2991 # See automake bug#10828.
2992 # To make any issue more visible, cause the running configure to be aborted
2993 # by default if the 'rm' program in use doesn't match our expectations; the
2994 # user can still override this though.
2995 if rm -f && rm -fr && rm -rf; then : OK; else
2996 cat >&2 <<'END'
2997 Oops!
2998
2999 Your 'rm' program seems unable to run without file operands specified
3000 on the command line, even when the '-f' option is present. This is contrary
3001 to the behaviour of most rm programs out there, and not conforming with
3002 the upcoming POSIX standard: <http://austingroupbugs.net/view.php?id=542>
3003
3004 Please tell bug-automake@gnu.org about your system, including the value
3005 of your $PATH and any error possibly output before this message. This
3006 can help us improve future automake versions.
3007
3008 END
3009 if test x"$ACCEPT_INFERIOR_RM_PROGRAM" = x"yes"; then
3010 echo 'Configuration will proceed anyway, since you have set the' >&2
3011 echo 'ACCEPT_INFERIOR_RM_PROGRAM variable to "yes"' >&2
3012 echo >&2
3013 else
3014 cat >&2 <<'END'
3015 Aborting the configuration process, to ensure you take notice of the issue.
3016
3017 You can download and install GNU coreutils to get an 'rm' implementation
3018 that behaves properly: <https://www.gnu.org/software/coreutils/>.
3019
3020 If you want to complete the configuration process using your problematic
3021 'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM
3022 to "yes", and re-run configure.
3023
3024 END
3025 as_fn_error $? "Your 'rm' program is bad, sorry." "$LINENO" 5
3026 fi
3027 fi
3028
3029
3030 case `pwd` in
3031 *\ * | *\ *)
3032 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&5
3033 $as_echo "$as_me: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&2;} ;;
3034 esac
3035
3036
3037
3038 macro_version='2.4.6'
3039 macro_revision='2.4.6'
3040
3041
3042
3043
3044
3045
3046
3047
3048
3049
3050
3051
3052
3053 ltmain=$ac_aux_dir/ltmain.sh
3054
3055 # Make sure we can run config.sub.
3056 $SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 ||
3057 as_fn_error $? "cannot run $SHELL $ac_aux_dir/config.sub" "$LINENO" 5
3058
3059 { $as_echo "$as_me:${as_lineno-$LINENO}: checking build system type" >&5
3060 $as_echo_n "checking build system type... " >&6; }
3061 if ${ac_cv_build+:} false; then :
3062 $as_echo_n "(cached) " >&6
3063 else
3064 ac_build_alias=$build_alias
3065 test "x$ac_build_alias" = x &&
3066 ac_build_alias=`$SHELL "$ac_aux_dir/config.guess"`
3067 test "x$ac_build_alias" = x &&
3068 as_fn_error $? "cannot guess build type; you must specify one" "$LINENO" 5
3069 ac_cv_build=`$SHELL "$ac_aux_dir/config.sub" $ac_build_alias` ||
3070 as_fn_error $? "$SHELL $ac_aux_dir/config.sub $ac_build_alias failed" "$LINENO" 5
3071
3072 fi
3073 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build" >&5
3074 $as_echo "$ac_cv_build" >&6; }
3075 case $ac_cv_build in
3076 *-*-*) ;;
3077 *) as_fn_error $? "invalid value of canonical build" "$LINENO" 5;;
3078 esac
3079 build=$ac_cv_build
3080 ac_save_IFS=$IFS; IFS='-'
3081 set x $ac_cv_build
3082 shift
3083 build_cpu=$1
3084 build_vendor=$2
3085 shift; shift
3086 # Remember, the first character of IFS is used to create $*,
3087 # except with old shells:
3088 build_os=$*
3089 IFS=$ac_save_IFS
3090 case $build_os in *\ *) build_os=`echo "$build_os" | sed 's/ /-/g'`;; esac
3091
3092
3093 { $as_echo "$as_me:${as_lineno-$LINENO}: checking host system type" >&5
3094 $as_echo_n "checking host system type... " >&6; }
3095 if ${ac_cv_host+:} false; then :
3096 $as_echo_n "(cached) " >&6
3097 else
3098 if test "x$host_alias" = x; then
3099 ac_cv_host=$ac_cv_build
3100 else
3101 ac_cv_host=`$SHELL "$ac_aux_dir/config.sub" $host_alias` ||
3102 as_fn_error $? "$SHELL $ac_aux_dir/config.sub $host_alias failed" "$LINENO" 5
3103 fi
3104
3105 fi
3106 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_host" >&5
3107 $as_echo "$ac_cv_host" >&6; }
3108 case $ac_cv_host in
3109 *-*-*) ;;
3110 *) as_fn_error $? "invalid value of canonical host" "$LINENO" 5;;
3111 esac
3112 host=$ac_cv_host
3113 ac_save_IFS=$IFS; IFS='-'
3114 set x $ac_cv_host
3115 shift
3116 host_cpu=$1
3117 host_vendor=$2
3118 shift; shift
3119 # Remember, the first character of IFS is used to create $*,
3120 # except with old shells:
3121 host_os=$*
3122 IFS=$ac_save_IFS
3123 case $host_os in *\ *) host_os=`echo "$host_os" | sed 's/ /-/g'`;; esac
3124
3125
3126 # Backslashify metacharacters that are still active within
3127 # double-quoted strings.
3128 sed_quote_subst='s/\(["`$\\]\)/\\\1/g'
3129
3130 # Same as above, but do not quote variable references.
3131 double_quote_subst='s/\(["`\\]\)/\\\1/g'
3132
3133 # Sed substitution to delay expansion of an escaped shell variable in a
3134 # double_quote_subst'ed string.
3135 delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g'
3136
3137 # Sed substitution to delay expansion of an escaped single quote.
3138 delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g'
3139
3140 # Sed substitution to avoid accidental globbing in evaled expressions
3141 no_glob_subst='s/\*/\\\*/g'
3142
3143 ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
3144 ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO
3145 ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
3146
3147 { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to print strings" >&5
3148 $as_echo_n "checking how to print strings... " >&6; }
3149 # Test print first, because it will be a builtin if present.
3150 if test "X`( print -r -- -n ) 2>/dev/null`" = X-n && \
3151 test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then
3152 ECHO='print -r --'
3153 elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then
3154 ECHO='printf %s\n'
3155 else
3156 # Use this function as a fallback that always works.
3157 func_fallback_echo ()
3158 {
3159 eval 'cat <<_LTECHO_EOF
3160 $1
3161 _LTECHO_EOF'
3162 }
3163 ECHO='func_fallback_echo'
3164 fi
3165
3166 # func_echo_all arg...
3167 # Invoke $ECHO with all args, space-separated.
3168 func_echo_all ()
3169 {
3170 $ECHO ""
3171 }
3172
3173 case $ECHO in
3174 printf*) { $as_echo "$as_me:${as_lineno-$LINENO}: result: printf" >&5
3175 $as_echo "printf" >&6; } ;;
3176 print*) { $as_echo "$as_me:${as_lineno-$LINENO}: result: print -r" >&5
3177 $as_echo "print -r" >&6; } ;;
3178 *) { $as_echo "$as_me:${as_lineno-$LINENO}: result: cat" >&5
3179 $as_echo "cat" >&6; } ;;
3180 esac
3181
3182
3183
3184
3185
3186
3187
3188
3189
3190
3191
3192
3193
3194
3195 DEPDIR="${am__leading_dot}deps"
3196
3197 ac_config_commands="$ac_config_commands depfiles"
3198
3199 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} supports the include directive" >&5
3200 $as_echo_n "checking whether ${MAKE-make} supports the include directive... " >&6; }
3201 cat > confinc.mk << 'END'
3202 am__doit:
3203 @echo this is the am__doit target >confinc.out
3204 .PHONY: am__doit
3205 END
3206 am__include="#"
3207 am__quote=
3208 # BSD make does it like this.
3209 echo '.include "confinc.mk" # ignored' > confmf.BSD
3210 # Other make implementations (GNU, Solaris 10, AIX) do it like this.
3211 echo 'include confinc.mk # ignored' > confmf.GNU
3212 _am_result=no
3213 for s in GNU BSD; do
3214 { echo "$as_me:$LINENO: ${MAKE-make} -f confmf.$s && cat confinc.out" >&5
3215 (${MAKE-make} -f confmf.$s && cat confinc.out) >&5 2>&5
3216 ac_status=$?
3217 echo "$as_me:$LINENO: \$? = $ac_status" >&5
3218 (exit $ac_status); }
3219 case $?:`cat confinc.out 2>/dev/null` in #(
3220 '0:this is the am__doit target') :
3221 case $s in #(
3222 BSD) :
3223 am__include='.include' am__quote='"' ;; #(
3224 *) :
3225 am__include='include' am__quote='' ;;
3226 esac ;; #(
3227 *) :
3228 ;;
3229 esac
3230 if test "$am__include" != "#"; then
3231 _am_result="yes ($s style)"
3232 break
3233 fi
3234 done
3235 rm -f confinc.* confmf.*
3236 { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${_am_result}" >&5
3237 $as_echo "${_am_result}" >&6; }
3238
3239 # Check whether --enable-dependency-tracking was given.
3240 if test "${enable_dependency_tracking+set}" = set; then :
3241 enableval=$enable_dependency_tracking;
3242 fi
3243
3244 if test "x$enable_dependency_tracking" != xno; then
3245 am_depcomp="$ac_aux_dir/depcomp"
3246 AMDEPBACKSLASH='\'
3247 am__nodep='_no'
3248 fi
3249 if test "x$enable_dependency_tracking" != xno; then
3250 AMDEP_TRUE=
3251 AMDEP_FALSE='#'
3252 else
3253 AMDEP_TRUE='#'
3254 AMDEP_FALSE=
3255 fi
3256
3257
3258 ac_ext=c
3259 ac_cpp='$CPP $CPPFLAGS'
3260 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
3261 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
3262 ac_compiler_gnu=$ac_cv_c_compiler_gnu
3263 if test -n "$ac_tool_prefix"; then
3264 # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args.
3265 set dummy ${ac_tool_prefix}gcc; ac_word=$2
3266 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
3267 $as_echo_n "checking for $ac_word... " >&6; }
3268 if ${ac_cv_prog_CC+:} false; then :
3269 $as_echo_n "(cached) " >&6
3270 else
3271 if test -n "$CC"; then
3272 ac_cv_prog_CC="$CC" # Let the user override the test.
3273 else
3274 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
3275 for as_dir in $PATH
3276 do
3277 IFS=$as_save_IFS
3278 test -z "$as_dir" && as_dir=.
3279 for ac_exec_ext in '' $ac_executable_extensions; do
3280 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
3281 ac_cv_prog_CC="${ac_tool_prefix}gcc"
3282 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
3283 break 2
3284 fi
3285 done
3286 done
3287 IFS=$as_save_IFS
3288
3289 fi
3290 fi
3291 CC=$ac_cv_prog_CC
3292 if test -n "$CC"; then
3293 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
3294 $as_echo "$CC" >&6; }
3295 else
3296 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
3297 $as_echo "no" >&6; }
3298 fi
3299
3300
3301 fi
3302 if test -z "$ac_cv_prog_CC"; then
3303 ac_ct_CC=$CC
3304 # Extract the first word of "gcc", so it can be a program name with args.
3305 set dummy gcc; ac_word=$2
3306 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
3307 $as_echo_n "checking for $ac_word... " >&6; }
3308 if ${ac_cv_prog_ac_ct_CC+:} false; then :
3309 $as_echo_n "(cached) " >&6
3310 else
3311 if test -n "$ac_ct_CC"; then
3312 ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
3313 else
3314 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
3315 for as_dir in $PATH
3316 do
3317 IFS=$as_save_IFS
3318 test -z "$as_dir" && as_dir=.
3319 for ac_exec_ext in '' $ac_executable_extensions; do
3320 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
3321 ac_cv_prog_ac_ct_CC="gcc"
3322 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
3323 break 2
3324 fi
3325 done
3326 done
3327 IFS=$as_save_IFS
3328
3329 fi
3330 fi
3331 ac_ct_CC=$ac_cv_prog_ac_ct_CC
3332 if test -n "$ac_ct_CC"; then
3333 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
3334 $as_echo "$ac_ct_CC" >&6; }
3335 else
3336 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
3337 $as_echo "no" >&6; }
3338 fi
3339
3340 if test "x$ac_ct_CC" = x; then
3341 CC=""
3342 else
3343 case $cross_compiling:$ac_tool_warned in
3344 yes:)
3345 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
3346 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
3347 ac_tool_warned=yes ;;
3348 esac
3349 CC=$ac_ct_CC
3350 fi
3351 else
3352 CC="$ac_cv_prog_CC"
3353 fi
3354
3355 if test -z "$CC"; then
3356 if test -n "$ac_tool_prefix"; then
3357 # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args.
3358 set dummy ${ac_tool_prefix}cc; ac_word=$2
3359 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
3360 $as_echo_n "checking for $ac_word... " >&6; }
3361 if ${ac_cv_prog_CC+:} false; then :
3362 $as_echo_n "(cached) " >&6
3363 else
3364 if test -n "$CC"; then
3365 ac_cv_prog_CC="$CC" # Let the user override the test.
3366 else
3367 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
3368 for as_dir in $PATH
3369 do
3370 IFS=$as_save_IFS
3371 test -z "$as_dir" && as_dir=.
3372 for ac_exec_ext in '' $ac_executable_extensions; do
3373 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
3374 ac_cv_prog_CC="${ac_tool_prefix}cc"
3375 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
3376 break 2
3377 fi
3378 done
3379 done
3380 IFS=$as_save_IFS
3381
3382 fi
3383 fi
3384 CC=$ac_cv_prog_CC
3385 if test -n "$CC"; then
3386 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
3387 $as_echo "$CC" >&6; }
3388 else
3389 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
3390 $as_echo "no" >&6; }
3391 fi
3392
3393
3394 fi
3395 fi
3396 if test -z "$CC"; then
3397 # Extract the first word of "cc", so it can be a program name with args.
3398 set dummy cc; ac_word=$2
3399 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
3400 $as_echo_n "checking for $ac_word... " >&6; }
3401 if ${ac_cv_prog_CC+:} false; then :
3402 $as_echo_n "(cached) " >&6
3403 else
3404 if test -n "$CC"; then
3405 ac_cv_prog_CC="$CC" # Let the user override the test.
3406 else
3407 ac_prog_rejected=no
3408 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
3409 for as_dir in $PATH
3410 do
3411 IFS=$as_save_IFS
3412 test -z "$as_dir" && as_dir=.
3413 for ac_exec_ext in '' $ac_executable_extensions; do
3414 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
3415 if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then
3416 ac_prog_rejected=yes
3417 continue
3418 fi
3419 ac_cv_prog_CC="cc"
3420 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
3421 break 2
3422 fi
3423 done
3424 done
3425 IFS=$as_save_IFS
3426
3427 if test $ac_prog_rejected = yes; then
3428 # We found a bogon in the path, so make sure we never use it.
3429 set dummy $ac_cv_prog_CC
3430 shift
3431 if test $# != 0; then
3432 # We chose a different compiler from the bogus one.
3433 # However, it has the same basename, so the bogon will be chosen
3434 # first if we set CC to just the basename; use the full file name.
3435 shift
3436 ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@"
3437 fi
3438 fi
3439 fi
3440 fi
3441 CC=$ac_cv_prog_CC
3442 if test -n "$CC"; then
3443 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
3444 $as_echo "$CC" >&6; }
3445 else
3446 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
3447 $as_echo "no" >&6; }
3448 fi
3449
3450
3451 fi
3452 if test -z "$CC"; then
3453 if test -n "$ac_tool_prefix"; then
3454 for ac_prog in cl.exe
3455 do
3456 # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
3457 set dummy $ac_tool_prefix$ac_prog; ac_word=$2
3458 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
3459 $as_echo_n "checking for $ac_word... " >&6; }
3460 if ${ac_cv_prog_CC+:} false; then :
3461 $as_echo_n "(cached) " >&6
3462 else
3463 if test -n "$CC"; then
3464 ac_cv_prog_CC="$CC" # Let the user override the test.
3465 else
3466 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
3467 for as_dir in $PATH
3468 do
3469 IFS=$as_save_IFS
3470 test -z "$as_dir" && as_dir=.
3471 for ac_exec_ext in '' $ac_executable_extensions; do
3472 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
3473 ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
3474 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
3475 break 2
3476 fi
3477 done
3478 done
3479 IFS=$as_save_IFS
3480
3481 fi
3482 fi
3483 CC=$ac_cv_prog_CC
3484 if test -n "$CC"; then
3485 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
3486 $as_echo "$CC" >&6; }
3487 else
3488 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
3489 $as_echo "no" >&6; }
3490 fi
3491
3492
3493 test -n "$CC" && break
3494 done
3495 fi
3496 if test -z "$CC"; then
3497 ac_ct_CC=$CC
3498 for ac_prog in cl.exe
3499 do
3500 # Extract the first word of "$ac_prog", so it can be a program name with args.
3501 set dummy $ac_prog; ac_word=$2
3502 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
3503 $as_echo_n "checking for $ac_word... " >&6; }
3504 if ${ac_cv_prog_ac_ct_CC+:} false; then :
3505 $as_echo_n "(cached) " >&6
3506 else
3507 if test -n "$ac_ct_CC"; then
3508 ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
3509 else
3510 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
3511 for as_dir in $PATH
3512 do
3513 IFS=$as_save_IFS
3514 test -z "$as_dir" && as_dir=.
3515 for ac_exec_ext in '' $ac_executable_extensions; do
3516 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
3517 ac_cv_prog_ac_ct_CC="$ac_prog"
3518 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
3519 break 2
3520 fi
3521 done
3522 done
3523 IFS=$as_save_IFS
3524
3525 fi
3526 fi
3527 ac_ct_CC=$ac_cv_prog_ac_ct_CC
3528 if test -n "$ac_ct_CC"; then
3529 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
3530 $as_echo "$ac_ct_CC" >&6; }
3531 else
3532 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
3533 $as_echo "no" >&6; }
3534 fi
3535
3536
3537 test -n "$ac_ct_CC" && break
3538 done
3539
3540 if test "x$ac_ct_CC" = x; then
3541 CC=""
3542 else
3543 case $cross_compiling:$ac_tool_warned in
3544 yes:)
3545 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
3546 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
3547 ac_tool_warned=yes ;;
3548 esac
3549 CC=$ac_ct_CC
3550 fi
3551 fi
3552
3553 fi
3554
3555
3556 test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
3557 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
3558 as_fn_error $? "no acceptable C compiler found in \$PATH
3559 See \`config.log' for more details" "$LINENO" 5; }
3560
3561 # Provide some information about the compiler.
3562 $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5
3563 set X $ac_compile
3564 ac_compiler=$2
3565 for ac_option in --version -v -V -qversion; do
3566 { { ac_try="$ac_compiler $ac_option >&5"
3567 case "(($ac_try" in
3568 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
3569 *) ac_try_echo=$ac_try;;
3570 esac
3571 eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
3572 $as_echo "$ac_try_echo"; } >&5
3573 (eval "$ac_compiler $ac_option >&5") 2>conftest.err
3574 ac_status=$?
3575 if test -s conftest.err; then
3576 sed '10a\
3577 ... rest of stderr output deleted ...
3578 10q' conftest.err >conftest.er1
3579 cat conftest.er1 >&5
3580 fi
3581 rm -f conftest.er1 conftest.err
3582 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
3583 test $ac_status = 0; }
3584 done
3585
3586 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
3587 /* end confdefs.h. */
3588
3589 int
3590 main ()
3591 {
3592
3593 ;
3594 return 0;
3595 }
3596 _ACEOF
3597 ac_clean_files_save=$ac_clean_files
3598 ac_clean_files="$ac_clean_files a.out a.out.dSYM a.exe b.out"
3599 # Try to create an executable without -o first, disregard a.out.
3600 # It will help us diagnose broken compilers, and finding out an intuition
3601 # of exeext.
3602 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler works" >&5
3603 $as_echo_n "checking whether the C compiler works... " >&6; }
3604 ac_link_default=`$as_echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'`
3605
3606 # The possible output files:
3607 ac_files="a.out conftest.exe conftest a.exe a_out.exe b.out conftest.*"
3608
3609 ac_rmfiles=
3610 for ac_file in $ac_files
3611 do
3612 case $ac_file in
3613 *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;;
3614 * ) ac_rmfiles="$ac_rmfiles $ac_file";;
3615 esac
3616 done
3617 rm -f $ac_rmfiles
3618
3619 if { { ac_try="$ac_link_default"
3620 case "(($ac_try" in
3621 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
3622 *) ac_try_echo=$ac_try;;
3623 esac
3624 eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
3625 $as_echo "$ac_try_echo"; } >&5
3626 (eval "$ac_link_default") 2>&5
3627 ac_status=$?
3628 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
3629 test $ac_status = 0; }; then :
3630 # Autoconf-2.13 could set the ac_cv_exeext variable to `no'.
3631 # So ignore a value of `no', otherwise this would lead to `EXEEXT = no'
3632 # in a Makefile. We should not override ac_cv_exeext if it was cached,
3633 # so that the user can short-circuit this test for compilers unknown to
3634 # Autoconf.
3635 for ac_file in $ac_files ''
3636 do
3637 test -f "$ac_file" || continue
3638 case $ac_file in
3639 *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj )
3640 ;;
3641 [ab].out )
3642 # We found the default executable, but exeext='' is most
3643 # certainly right.
3644 break;;
3645 *.* )
3646 if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no;
3647 then :; else
3648 ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
3649 fi
3650 # We set ac_cv_exeext here because the later test for it is not
3651 # safe: cross compilers may not add the suffix if given an `-o'
3652 # argument, so we may need to know it at that point already.
3653 # Even if this section looks crufty: it has the advantage of
3654 # actually working.
3655 break;;
3656 * )
3657 break;;
3658 esac
3659 done
3660 test "$ac_cv_exeext" = no && ac_cv_exeext=
3661
3662 else
3663 ac_file=''
3664 fi
3665 if test -z "$ac_file"; then :
3666 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
3667 $as_echo "no" >&6; }
3668 $as_echo "$as_me: failed program was:" >&5
3669 sed 's/^/| /' conftest.$ac_ext >&5
3670
3671 { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
3672 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
3673 as_fn_error 77 "C compiler cannot create executables
3674 See \`config.log' for more details" "$LINENO" 5; }
3675 else
3676 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
3677 $as_echo "yes" >&6; }
3678 fi
3679 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler default output file name" >&5
3680 $as_echo_n "checking for C compiler default output file name... " >&6; }
3681 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_file" >&5
3682 $as_echo "$ac_file" >&6; }
3683 ac_exeext=$ac_cv_exeext
3684
3685 rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_exeext b.out
3686 ac_clean_files=$ac_clean_files_save
3687 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of executables" >&5
3688 $as_echo_n "checking for suffix of executables... " >&6; }
3689 if { { ac_try="$ac_link"
3690 case "(($ac_try" in
3691 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
3692 *) ac_try_echo=$ac_try;;
3693 esac
3694 eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
3695 $as_echo "$ac_try_echo"; } >&5
3696 (eval "$ac_link") 2>&5
3697 ac_status=$?
3698 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
3699 test $ac_status = 0; }; then :
3700 # If both `conftest.exe' and `conftest' are `present' (well, observable)
3701 # catch `conftest.exe'. For instance with Cygwin, `ls conftest' will
3702 # work properly (i.e., refer to `conftest.exe'), while it won't with
3703 # `rm'.
3704 for ac_file in conftest.exe conftest conftest.*; do
3705 test -f "$ac_file" || continue
3706 case $ac_file in
3707 *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;;
3708 *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
3709 break;;
3710 * ) break;;
3711 esac
3712 done
3713 else
3714 { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
3715 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
3716 as_fn_error $? "cannot compute suffix of executables: cannot compile and link
3717 See \`config.log' for more details" "$LINENO" 5; }
3718 fi
3719 rm -f conftest conftest$ac_cv_exeext
3720 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_exeext" >&5
3721 $as_echo "$ac_cv_exeext" >&6; }
3722
3723 rm -f conftest.$ac_ext
3724 EXEEXT=$ac_cv_exeext
3725 ac_exeext=$EXEEXT
3726 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
3727 /* end confdefs.h. */
3728 #include <stdio.h>
3729 int
3730 main ()
3731 {
3732 FILE *f = fopen ("conftest.out", "w");
3733 return ferror (f) || fclose (f) != 0;
3734
3735 ;
3736 return 0;
3737 }
3738 _ACEOF
3739 ac_clean_files="$ac_clean_files conftest.out"
3740 # Check that the compiler produces executables we can run. If not, either
3741 # the compiler is broken, or we cross compile.
3742 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5
3743 $as_echo_n "checking whether we are cross compiling... " >&6; }
3744 if test "$cross_compiling" != yes; then
3745 { { ac_try="$ac_link"
3746 case "(($ac_try" in
3747 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
3748 *) ac_try_echo=$ac_try;;
3749 esac
3750 eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
3751 $as_echo "$ac_try_echo"; } >&5
3752 (eval "$ac_link") 2>&5
3753 ac_status=$?
3754 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
3755 test $ac_status = 0; }
3756 if { ac_try='./conftest$ac_cv_exeext'
3757 { { case "(($ac_try" in
3758 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
3759 *) ac_try_echo=$ac_try;;
3760 esac
3761 eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
3762 $as_echo "$ac_try_echo"; } >&5
3763 (eval "$ac_try") 2>&5
3764 ac_status=$?
3765 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
3766 test $ac_status = 0; }; }; then
3767 cross_compiling=no
3768 else
3769 if test "$cross_compiling" = maybe; then
3770 cross_compiling=yes
3771 else
3772 { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
3773 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
3774 as_fn_error $? "cannot run C compiled programs.
3775 If you meant to cross compile, use \`--host'.
3776 See \`config.log' for more details" "$LINENO" 5; }
3777 fi
3778 fi
3779 fi
3780 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5
3781 $as_echo "$cross_compiling" >&6; }
3782
3783 rm -f conftest.$ac_ext conftest$ac_cv_exeext conftest.out
3784 ac_clean_files=$ac_clean_files_save
3785 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of object files" >&5
3786 $as_echo_n "checking for suffix of object files... " >&6; }
3787 if ${ac_cv_objext+:} false; then :
3788 $as_echo_n "(cached) " >&6
3789 else
3790 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
3791 /* end confdefs.h. */
3792
3793 int
3794 main ()
3795 {
3796
3797 ;
3798 return 0;
3799 }
3800 _ACEOF
3801 rm -f conftest.o conftest.obj
3802 if { { ac_try="$ac_compile"
3803 case "(($ac_try" in
3804 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
3805 *) ac_try_echo=$ac_try;;
3806 esac
3807 eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
3808 $as_echo "$ac_try_echo"; } >&5
3809 (eval "$ac_compile") 2>&5
3810 ac_status=$?
3811 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
3812 test $ac_status = 0; }; then :
3813 for ac_file in conftest.o conftest.obj conftest.*; do
3814 test -f "$ac_file" || continue;
3815 case $ac_file in
3816 *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM ) ;;
3817 *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'`
3818 break;;
3819 esac
3820 done
3821 else
3822 $as_echo "$as_me: failed program was:" >&5
3823 sed 's/^/| /' conftest.$ac_ext >&5
3824
3825 { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
3826 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
3827 as_fn_error $? "cannot compute suffix of object files: cannot compile
3828 See \`config.log' for more details" "$LINENO" 5; }
3829 fi
3830 rm -f conftest.$ac_cv_objext conftest.$ac_ext
3831 fi
3832 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_objext" >&5
3833 $as_echo "$ac_cv_objext" >&6; }
3834 OBJEXT=$ac_cv_objext
3835 ac_objext=$OBJEXT
3836 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5
3837 $as_echo_n "checking whether we are using the GNU C compiler... " >&6; }
3838 if ${ac_cv_c_compiler_gnu+:} false; then :
3839 $as_echo_n "(cached) " >&6
3840 else
3841 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
3842 /* end confdefs.h. */
3843
3844 int
3845 main ()
3846 {
3847 #ifndef __GNUC__
3848 choke me
3849 #endif
3850
3851 ;
3852 return 0;
3853 }
3854 _ACEOF
3855 if ac_fn_c_try_compile "$LINENO"; then :
3856 ac_compiler_gnu=yes
3857 else
3858 ac_compiler_gnu=no
3859 fi
3860 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
3861 ac_cv_c_compiler_gnu=$ac_compiler_gnu
3862
3863 fi
3864 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5
3865 $as_echo "$ac_cv_c_compiler_gnu" >&6; }
3866 if test $ac_compiler_gnu = yes; then
3867 GCC=yes
3868 else
3869 GCC=
3870 fi
3871 ac_test_CFLAGS=${CFLAGS+set}
3872 ac_save_CFLAGS=$CFLAGS
3873 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5
3874 $as_echo_n "checking whether $CC accepts -g... " >&6; }
3875 if ${ac_cv_prog_cc_g+:} false; then :
3876 $as_echo_n "(cached) " >&6
3877 else
3878 ac_save_c_werror_flag=$ac_c_werror_flag
3879 ac_c_werror_flag=yes
3880 ac_cv_prog_cc_g=no
3881 CFLAGS="-g"
3882 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
3883 /* end confdefs.h. */
3884
3885 int
3886 main ()
3887 {
3888
3889 ;
3890 return 0;
3891 }
3892 _ACEOF
3893 if ac_fn_c_try_compile "$LINENO"; then :
3894 ac_cv_prog_cc_g=yes
3895 else
3896 CFLAGS=""
3897 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
3898 /* end confdefs.h. */
3899
3900 int
3901 main ()
3902 {
3903
3904 ;
3905 return 0;
3906 }
3907 _ACEOF
3908 if ac_fn_c_try_compile "$LINENO"; then :
3909
3910 else
3911 ac_c_werror_flag=$ac_save_c_werror_flag
3912 CFLAGS="-g"
3913 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
3914 /* end confdefs.h. */
3915
3916 int
3917 main ()
3918 {
3919
3920 ;
3921 return 0;
3922 }
3923 _ACEOF
3924 if ac_fn_c_try_compile "$LINENO"; then :
3925 ac_cv_prog_cc_g=yes
3926 fi
3927 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
3928 fi
3929 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
3930 fi
3931 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
3932 ac_c_werror_flag=$ac_save_c_werror_flag
3933 fi
3934 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5
3935 $as_echo "$ac_cv_prog_cc_g" >&6; }
3936 if test "$ac_test_CFLAGS" = set; then
3937 CFLAGS=$ac_save_CFLAGS
3938 elif test $ac_cv_prog_cc_g = yes; then
3939 if test "$GCC" = yes; then
3940 CFLAGS="-g -O2"
3941 else
3942 CFLAGS="-g"
3943 fi
3944 else
3945 if test "$GCC" = yes; then
3946 CFLAGS="-O2"
3947 else
3948 CFLAGS=
3949 fi
3950 fi
3951 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5
3952 $as_echo_n "checking for $CC option to accept ISO C89... " >&6; }
3953 if ${ac_cv_prog_cc_c89+:} false; then :
3954 $as_echo_n "(cached) " >&6
3955 else
3956 ac_cv_prog_cc_c89=no
3957 ac_save_CC=$CC
3958 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
3959 /* end confdefs.h. */
3960 #include <stdarg.h>
3961 #include <stdio.h>
3962 struct stat;
3963 /* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */
3964 struct buf { int x; };
3965 FILE * (*rcsopen) (struct buf *, struct stat *, int);
3966 static char *e (p, i)
3967 char **p;
3968 int i;
3969 {
3970 return p[i];
3971 }
3972 static char *f (char * (*g) (char **, int), char **p, ...)
3973 {
3974 char *s;
3975 va_list v;
3976 va_start (v,p);
3977 s = g (p, va_arg (v,int));
3978 va_end (v);
3979 return s;
3980 }
3981
3982 /* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has
3983 function prototypes and stuff, but not '\xHH' hex character constants.
3984 These don't provoke an error unfortunately, instead are silently treated
3985 as 'x'. The following induces an error, until -std is added to get
3986 proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an
3987 array size at least. It's necessary to write '\x00'==0 to get something
3988 that's true only with -std. */
3989 int osf4_cc_array ['\x00' == 0 ? 1 : -1];
3990
3991 /* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters
3992 inside strings and character constants. */
3993 #define FOO(x) 'x'
3994 int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1];
3995
3996 int test (int i, double x);
3997 struct s1 {int (*f) (int a);};
3998 struct s2 {int (*f) (double a);};
3999 int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int);
4000 int argc;
4001 char **argv;
4002 int
4003 main ()
4004 {
4005 return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1];
4006 ;
4007 return 0;
4008 }
4009 _ACEOF
4010 for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \
4011 -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
4012 do
4013 CC="$ac_save_CC $ac_arg"
4014 if ac_fn_c_try_compile "$LINENO"; then :
4015 ac_cv_prog_cc_c89=$ac_arg
4016 fi
4017 rm -f core conftest.err conftest.$ac_objext
4018 test "x$ac_cv_prog_cc_c89" != "xno" && break
4019 done
4020 rm -f conftest.$ac_ext
4021 CC=$ac_save_CC
4022
4023 fi
4024 # AC_CACHE_VAL
4025 case "x$ac_cv_prog_cc_c89" in
4026 x)
4027 { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5
4028 $as_echo "none needed" >&6; } ;;
4029 xno)
4030 { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5
4031 $as_echo "unsupported" >&6; } ;;
4032 *)
4033 CC="$CC $ac_cv_prog_cc_c89"
4034 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5
4035 $as_echo "$ac_cv_prog_cc_c89" >&6; } ;;
4036 esac
4037 if test "x$ac_cv_prog_cc_c89" != xno; then :
4038
4039 fi
4040
4041 ac_ext=c
4042 ac_cpp='$CPP $CPPFLAGS'
4043 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
4044 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
4045 ac_compiler_gnu=$ac_cv_c_compiler_gnu
4046
4047 ac_ext=c
4048 ac_cpp='$CPP $CPPFLAGS'
4049 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
4050 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
4051 ac_compiler_gnu=$ac_cv_c_compiler_gnu
4052 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC understands -c and -o together" >&5
4053 $as_echo_n "checking whether $CC understands -c and -o together... " >&6; }
4054 if ${am_cv_prog_cc_c_o+:} false; then :
4055 $as_echo_n "(cached) " >&6
4056 else
4057 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
4058 /* end confdefs.h. */
4059
4060 int
4061 main ()
4062 {
4063
4064 ;
4065 return 0;
4066 }
4067 _ACEOF
4068 # Make sure it works both with $CC and with simple cc.
4069 # Following AC_PROG_CC_C_O, we do the test twice because some
4070 # compilers refuse to overwrite an existing .o file with -o,
4071 # though they will create one.
4072 am_cv_prog_cc_c_o=yes
4073 for am_i in 1 2; do
4074 if { echo "$as_me:$LINENO: $CC -c conftest.$ac_ext -o conftest2.$ac_objext" >&5
4075 ($CC -c conftest.$ac_ext -o conftest2.$ac_objext) >&5 2>&5
4076 ac_status=$?
4077 echo "$as_me:$LINENO: \$? = $ac_status" >&5
4078 (exit $ac_status); } \
4079 && test -f conftest2.$ac_objext; then
4080 : OK
4081 else
4082 am_cv_prog_cc_c_o=no
4083 break
4084 fi
4085 done
4086 rm -f core conftest*
4087 unset am_i
4088 fi
4089 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_prog_cc_c_o" >&5
4090 $as_echo "$am_cv_prog_cc_c_o" >&6; }
4091 if test "$am_cv_prog_cc_c_o" != yes; then
4092 # Losing compiler, so override with the script.
4093 # FIXME: It is wrong to rewrite CC.
4094 # But if we don't then we get into trouble of one sort or another.
4095 # A longer-term fix would be to have automake use am__CC in this case,
4096 # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)"
4097 CC="$am_aux_dir/compile $CC"
4098 fi
4099 ac_ext=c
4100 ac_cpp='$CPP $CPPFLAGS'
4101 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
4102 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
4103 ac_compiler_gnu=$ac_cv_c_compiler_gnu
4104
4105
4106 depcc="$CC" am_compiler_list=
4107
4108 { $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5
4109 $as_echo_n "checking dependency style of $depcc... " >&6; }
4110 if ${am_cv_CC_dependencies_compiler_type+:} false; then :
4111 $as_echo_n "(cached) " >&6
4112 else
4113 if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
4114 # We make a subdir and do the tests there. Otherwise we can end up
4115 # making bogus files that we don't know about and never remove. For
4116 # instance it was reported that on HP-UX the gcc test will end up
4117 # making a dummy file named 'D' -- because '-MD' means "put the output
4118 # in D".
4119 rm -rf conftest.dir
4120 mkdir conftest.dir
4121 # Copy depcomp to subdir because otherwise we won't find it if we're
4122 # using a relative directory.
4123 cp "$am_depcomp" conftest.dir
4124 cd conftest.dir
4125 # We will build objects and dependencies in a subdirectory because
4126 # it helps to detect inapplicable dependency modes. For instance
4127 # both Tru64's cc and ICC support -MD to output dependencies as a
4128 # side effect of compilation, but ICC will put the dependencies in
4129 # the current directory while Tru64 will put them in the object
4130 # directory.
4131 mkdir sub
4132
4133 am_cv_CC_dependencies_compiler_type=none
4134 if test "$am_compiler_list" = ""; then
4135 am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp`
4136 fi
4137 am__universal=false
4138 case " $depcc " in #(
4139 *\ -arch\ *\ -arch\ *) am__universal=true ;;
4140 esac
4141
4142 for depmode in $am_compiler_list; do
4143 # Setup a source with many dependencies, because some compilers
4144 # like to wrap large dependency lists on column 80 (with \), and
4145 # we should not choose a depcomp mode which is confused by this.
4146 #
4147 # We need to recreate these files for each test, as the compiler may
4148 # overwrite some of them when testing with obscure command lines.
4149 # This happens at least with the AIX C compiler.
4150 : > sub/conftest.c
4151 for i in 1 2 3 4 5 6; do
4152 echo '#include "conftst'$i'.h"' >> sub/conftest.c
4153 # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with
4154 # Solaris 10 /bin/sh.
4155 echo '/* dummy */' > sub/conftst$i.h
4156 done
4157 echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
4158
4159 # We check with '-c' and '-o' for the sake of the "dashmstdout"
4160 # mode. It turns out that the SunPro C++ compiler does not properly
4161 # handle '-M -o', and we need to detect this. Also, some Intel
4162 # versions had trouble with output in subdirs.
4163 am__obj=sub/conftest.${OBJEXT-o}
4164 am__minus_obj="-o $am__obj"
4165 case $depmode in
4166 gcc)
4167 # This depmode causes a compiler race in universal mode.
4168 test "$am__universal" = false || continue
4169 ;;
4170 nosideeffect)
4171 # After this tag, mechanisms are not by side-effect, so they'll
4172 # only be used when explicitly requested.
4173 if test "x$enable_dependency_tracking" = xyes; then
4174 continue
4175 else
4176 break
4177 fi
4178 ;;
4179 msvc7 | msvc7msys | msvisualcpp | msvcmsys)
4180 # This compiler won't grok '-c -o', but also, the minuso test has
4181 # not run yet. These depmodes are late enough in the game, and
4182 # so weak that their functioning should not be impacted.
4183 am__obj=conftest.${OBJEXT-o}
4184 am__minus_obj=
4185 ;;
4186 none) break ;;
4187 esac
4188 if depmode=$depmode \
4189 source=sub/conftest.c object=$am__obj \
4190 depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
4191 $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \
4192 >/dev/null 2>conftest.err &&
4193 grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 &&
4194 grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
4195 grep $am__obj sub/conftest.Po > /dev/null 2>&1 &&
4196 ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
4197 # icc doesn't choke on unknown options, it will just issue warnings
4198 # or remarks (even with -Werror). So we grep stderr for any message
4199 # that says an option was ignored or not supported.
4200 # When given -MP, icc 7.0 and 7.1 complain thusly:
4201 # icc: Command line warning: ignoring option '-M'; no argument required
4202 # The diagnosis changed in icc 8.0:
4203 # icc: Command line remark: option '-MP' not supported
4204 if (grep 'ignoring option' conftest.err ||
4205 grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
4206 am_cv_CC_dependencies_compiler_type=$depmode
4207 break
4208 fi
4209 fi
4210 done
4211
4212 cd ..
4213 rm -rf conftest.dir
4214 else
4215 am_cv_CC_dependencies_compiler_type=none
4216 fi
4217
4218 fi
4219 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CC_dependencies_compiler_type" >&5
4220 $as_echo "$am_cv_CC_dependencies_compiler_type" >&6; }
4221 CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type
4222
4223 if
4224 test "x$enable_dependency_tracking" != xno \
4225 && test "$am_cv_CC_dependencies_compiler_type" = gcc3; then
4226 am__fastdepCC_TRUE=
4227 am__fastdepCC_FALSE='#'
4228 else
4229 am__fastdepCC_TRUE='#'
4230 am__fastdepCC_FALSE=
4231 fi
4232
4233
4234 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for a sed that does not truncate output" >&5
4235 $as_echo_n "checking for a sed that does not truncate output... " >&6; }
4236 if ${ac_cv_path_SED+:} false; then :
4237 $as_echo_n "(cached) " >&6
4238 else
4239 ac_script=s/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb/
4240 for ac_i in 1 2 3 4 5 6 7; do
4241 ac_script="$ac_script$as_nl$ac_script"
4242 done
4243 echo "$ac_script" 2>/dev/null | sed 99q >conftest.sed
4244 { ac_script=; unset ac_script;}
4245 if test -z "$SED"; then
4246 ac_path_SED_found=false
4247 # Loop through the user's path and test for each of PROGNAME-LIST
4248 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
4249 for as_dir in $PATH
4250 do
4251 IFS=$as_save_IFS
4252 test -z "$as_dir" && as_dir=.
4253 for ac_prog in sed gsed; do
4254 for ac_exec_ext in '' $ac_executable_extensions; do
4255 ac_path_SED="$as_dir/$ac_prog$ac_exec_ext"
4256 as_fn_executable_p "$ac_path_SED" || continue
4257 # Check for GNU ac_path_SED and select it if it is found.
4258 # Check for GNU $ac_path_SED
4259 case `"$ac_path_SED" --version 2>&1` in
4260 *GNU*)
4261 ac_cv_path_SED="$ac_path_SED" ac_path_SED_found=:;;
4262 *)
4263 ac_count=0
4264 $as_echo_n 0123456789 >"conftest.in"
4265 while :
4266 do
4267 cat "conftest.in" "conftest.in" >"conftest.tmp"
4268 mv "conftest.tmp" "conftest.in"
4269 cp "conftest.in" "conftest.nl"
4270 $as_echo '' >> "conftest.nl"
4271 "$ac_path_SED" -f conftest.sed < "conftest.nl" >"conftest.out" 2>/dev/null || break
4272 diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
4273 as_fn_arith $ac_count + 1 && ac_count=$as_val
4274 if test $ac_count -gt ${ac_path_SED_max-0}; then
4275 # Best one so far, save it but keep looking for a better one
4276 ac_cv_path_SED="$ac_path_SED"
4277 ac_path_SED_max=$ac_count
4278 fi
4279 # 10*(2^10) chars as input seems more than enough
4280 test $ac_count -gt 10 && break
4281 done
4282 rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
4283 esac
4284
4285 $ac_path_SED_found && break 3
4286 done
4287 done
4288 done
4289 IFS=$as_save_IFS
4290 if test -z "$ac_cv_path_SED"; then
4291 as_fn_error $? "no acceptable sed could be found in \$PATH" "$LINENO" 5
4292 fi
4293 else
4294 ac_cv_path_SED=$SED
4295 fi
4296
4297 fi
4298 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_SED" >&5
4299 $as_echo "$ac_cv_path_SED" >&6; }
4300 SED="$ac_cv_path_SED"
4301 rm -f conftest.sed
4302
4303 test -z "$SED" && SED=sed
4304 Xsed="$SED -e 1s/^X//"
4305
4306
4307
4308
4309
4310
4311
4312
4313
4314
4315
4316 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5
4317 $as_echo_n "checking for grep that handles long lines and -e... " >&6; }
4318 if ${ac_cv_path_GREP+:} false; then :
4319 $as_echo_n "(cached) " >&6
4320 else
4321 if test -z "$GREP"; then
4322 ac_path_GREP_found=false
4323 # Loop through the user's path and test for each of PROGNAME-LIST
4324 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
4325 for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
4326 do
4327 IFS=$as_save_IFS
4328 test -z "$as_dir" && as_dir=.
4329 for ac_prog in grep ggrep; do
4330 for ac_exec_ext in '' $ac_executable_extensions; do
4331 ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext"
4332 as_fn_executable_p "$ac_path_GREP" || continue
4333 # Check for GNU ac_path_GREP and select it if it is found.
4334 # Check for GNU $ac_path_GREP
4335 case `"$ac_path_GREP" --version 2>&1` in
4336 *GNU*)
4337 ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;;
4338 *)
4339 ac_count=0
4340 $as_echo_n 0123456789 >"conftest.in"
4341 while :
4342 do
4343 cat "conftest.in" "conftest.in" >"conftest.tmp"
4344 mv "conftest.tmp" "conftest.in"
4345 cp "conftest.in" "conftest.nl"
4346 $as_echo 'GREP' >> "conftest.nl"
4347 "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break
4348 diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
4349 as_fn_arith $ac_count + 1 && ac_count=$as_val
4350 if test $ac_count -gt ${ac_path_GREP_max-0}; then
4351 # Best one so far, save it but keep looking for a better one
4352 ac_cv_path_GREP="$ac_path_GREP"
4353 ac_path_GREP_max=$ac_count
4354 fi
4355 # 10*(2^10) chars as input seems more than enough
4356 test $ac_count -gt 10 && break
4357 done
4358 rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
4359 esac
4360
4361 $ac_path_GREP_found && break 3
4362 done
4363 done
4364 done
4365 IFS=$as_save_IFS
4366 if test -z "$ac_cv_path_GREP"; then
4367 as_fn_error $? "no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5
4368 fi
4369 else
4370 ac_cv_path_GREP=$GREP
4371 fi
4372
4373 fi
4374 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5
4375 $as_echo "$ac_cv_path_GREP" >&6; }
4376 GREP="$ac_cv_path_GREP"
4377
4378
4379 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5
4380 $as_echo_n "checking for egrep... " >&6; }
4381 if ${ac_cv_path_EGREP+:} false; then :
4382 $as_echo_n "(cached) " >&6
4383 else
4384 if echo a | $GREP -E '(a|b)' >/dev/null 2>&1
4385 then ac_cv_path_EGREP="$GREP -E"
4386 else
4387 if test -z "$EGREP"; then
4388 ac_path_EGREP_found=false
4389 # Loop through the user's path and test for each of PROGNAME-LIST
4390 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
4391 for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
4392 do
4393 IFS=$as_save_IFS
4394 test -z "$as_dir" && as_dir=.
4395 for ac_prog in egrep; do
4396 for ac_exec_ext in '' $ac_executable_extensions; do
4397 ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext"
4398 as_fn_executable_p "$ac_path_EGREP" || continue
4399 # Check for GNU ac_path_EGREP and select it if it is found.
4400 # Check for GNU $ac_path_EGREP
4401 case `"$ac_path_EGREP" --version 2>&1` in
4402 *GNU*)
4403 ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;;
4404 *)
4405 ac_count=0
4406 $as_echo_n 0123456789 >"conftest.in"
4407 while :
4408 do
4409 cat "conftest.in" "conftest.in" >"conftest.tmp"
4410 mv "conftest.tmp" "conftest.in"
4411 cp "conftest.in" "conftest.nl"
4412 $as_echo 'EGREP' >> "conftest.nl"
4413 "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break
4414 diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
4415 as_fn_arith $ac_count + 1 && ac_count=$as_val
4416 if test $ac_count -gt ${ac_path_EGREP_max-0}; then
4417 # Best one so far, save it but keep looking for a better one
4418 ac_cv_path_EGREP="$ac_path_EGREP"
4419 ac_path_EGREP_max=$ac_count
4420 fi
4421 # 10*(2^10) chars as input seems more than enough
4422 test $ac_count -gt 10 && break
4423 done
4424 rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
4425 esac
4426
4427 $ac_path_EGREP_found && break 3
4428 done
4429 done
4430 done
4431 IFS=$as_save_IFS
4432 if test -z "$ac_cv_path_EGREP"; then
4433 as_fn_error $? "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5
4434 fi
4435 else
4436 ac_cv_path_EGREP=$EGREP
4437 fi
4438
4439 fi
4440 fi
4441 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5
4442 $as_echo "$ac_cv_path_EGREP" >&6; }
4443 EGREP="$ac_cv_path_EGREP"
4444
4445
4446 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for fgrep" >&5
4447 $as_echo_n "checking for fgrep... " >&6; }
4448 if ${ac_cv_path_FGREP+:} false; then :
4449 $as_echo_n "(cached) " >&6
4450 else
4451 if echo 'ab*c' | $GREP -F 'ab*c' >/dev/null 2>&1
4452 then ac_cv_path_FGREP="$GREP -F"
4453 else
4454 if test -z "$FGREP"; then
4455 ac_path_FGREP_found=false
4456 # Loop through the user's path and test for each of PROGNAME-LIST
4457 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
4458 for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
4459 do
4460 IFS=$as_save_IFS
4461 test -z "$as_dir" && as_dir=.
4462 for ac_prog in fgrep; do
4463 for ac_exec_ext in '' $ac_executable_extensions; do
4464 ac_path_FGREP="$as_dir/$ac_prog$ac_exec_ext"
4465 as_fn_executable_p "$ac_path_FGREP" || continue
4466 # Check for GNU ac_path_FGREP and select it if it is found.
4467 # Check for GNU $ac_path_FGREP
4468 case `"$ac_path_FGREP" --version 2>&1` in
4469 *GNU*)
4470 ac_cv_path_FGREP="$ac_path_FGREP" ac_path_FGREP_found=:;;
4471 *)
4472 ac_count=0
4473 $as_echo_n 0123456789 >"conftest.in"
4474 while :
4475 do
4476 cat "conftest.in" "conftest.in" >"conftest.tmp"
4477 mv "conftest.tmp" "conftest.in"
4478 cp "conftest.in" "conftest.nl"
4479 $as_echo 'FGREP' >> "conftest.nl"
4480 "$ac_path_FGREP" FGREP < "conftest.nl" >"conftest.out" 2>/dev/null || break
4481 diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
4482 as_fn_arith $ac_count + 1 && ac_count=$as_val
4483 if test $ac_count -gt ${ac_path_FGREP_max-0}; then
4484 # Best one so far, save it but keep looking for a better one
4485 ac_cv_path_FGREP="$ac_path_FGREP"
4486 ac_path_FGREP_max=$ac_count
4487 fi
4488 # 10*(2^10) chars as input seems more than enough
4489 test $ac_count -gt 10 && break
4490 done
4491 rm -f conftest.in conftest.tmp conftest.nl conftest.out;;
4492 esac
4493
4494 $ac_path_FGREP_found && break 3
4495 done
4496 done
4497 done
4498 IFS=$as_save_IFS
4499 if test -z "$ac_cv_path_FGREP"; then
4500 as_fn_error $? "no acceptable fgrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5
4501 fi
4502 else
4503 ac_cv_path_FGREP=$FGREP
4504 fi
4505
4506 fi
4507 fi
4508 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_FGREP" >&5
4509 $as_echo "$ac_cv_path_FGREP" >&6; }
4510 FGREP="$ac_cv_path_FGREP"
4511
4512
4513 test -z "$GREP" && GREP=grep
4514
4515
4516
4517
4518
4519
4520
4521
4522
4523
4524
4525
4526
4527
4528
4529
4530
4531
4532
4533 # Check whether --with-gnu-ld was given.
4534 if test "${with_gnu_ld+set}" = set; then :
4535 withval=$with_gnu_ld; test no = "$withval" || with_gnu_ld=yes
4536 else
4537 with_gnu_ld=no
4538 fi
4539
4540 ac_prog=ld
4541 if test yes = "$GCC"; then
4542 # Check if gcc -print-prog-name=ld gives a path.
4543 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld used by $CC" >&5
4544 $as_echo_n "checking for ld used by $CC... " >&6; }
4545 case $host in
4546 *-*-mingw*)
4547 # gcc leaves a trailing carriage return, which upsets mingw
4548 ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
4549 *)
4550 ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
4551 esac
4552 case $ac_prog in
4553 # Accept absolute paths.
4554 [\\/]* | ?:[\\/]*)
4555 re_direlt='/[^/][^/]*/\.\./'
4556 # Canonicalize the pathname of ld
4557 ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'`
4558 while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do
4559 ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"`
4560 done
4561 test -z "$LD" && LD=$ac_prog
4562 ;;
4563 "")
4564 # If it fails, then pretend we aren't using GCC.
4565 ac_prog=ld
4566 ;;
4567 *)
4568 # If it is relative, then search for the first ld in PATH.
4569 with_gnu_ld=unknown
4570 ;;
4571 esac
4572 elif test yes = "$with_gnu_ld"; then
4573 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5
4574 $as_echo_n "checking for GNU ld... " >&6; }
4575 else
4576 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5
4577 $as_echo_n "checking for non-GNU ld... " >&6; }
4578 fi
4579 if ${lt_cv_path_LD+:} false; then :
4580 $as_echo_n "(cached) " >&6
4581 else
4582 if test -z "$LD"; then
4583 lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR
4584 for ac_dir in $PATH; do
4585 IFS=$lt_save_ifs
4586 test -z "$ac_dir" && ac_dir=.
4587 if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
4588 lt_cv_path_LD=$ac_dir/$ac_prog
4589 # Check to see if the program is GNU ld. I'd rather use --version,
4590 # but apparently some variants of GNU ld only accept -v.
4591 # Break only if it was the GNU/non-GNU ld that we prefer.
4592 case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in
4593 *GNU* | *'with BFD'*)
4594 test no != "$with_gnu_ld" && break
4595 ;;
4596 *)
4597 test yes != "$with_gnu_ld" && break
4598 ;;
4599 esac
4600 fi
4601 done
4602 IFS=$lt_save_ifs
4603 else
4604 lt_cv_path_LD=$LD # Let the user override the test with a path.
4605 fi
4606 fi
4607
4608 LD=$lt_cv_path_LD
4609 if test -n "$LD"; then
4610 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LD" >&5
4611 $as_echo "$LD" >&6; }
4612 else
4613 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
4614 $as_echo "no" >&6; }
4615 fi
4616 test -z "$LD" && as_fn_error $? "no acceptable ld found in \$PATH" "$LINENO" 5
4617 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5
4618 $as_echo_n "checking if the linker ($LD) is GNU ld... " >&6; }
4619 if ${lt_cv_prog_gnu_ld+:} false; then :
4620 $as_echo_n "(cached) " >&6
4621 else
4622 # I'd rather use --version here, but apparently some GNU lds only accept -v.
4623 case `$LD -v 2>&1 </dev/null` in
4624 *GNU* | *'with BFD'*)
4625 lt_cv_prog_gnu_ld=yes
4626 ;;
4627 *)
4628 lt_cv_prog_gnu_ld=no
4629 ;;
4630 esac
4631 fi
4632 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_gnu_ld" >&5
4633 $as_echo "$lt_cv_prog_gnu_ld" >&6; }
4634 with_gnu_ld=$lt_cv_prog_gnu_ld
4635
4636
4637
4638
4639
4640
4641
4642
4643
4644 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for BSD- or MS-compatible name lister (nm)" >&5
4645 $as_echo_n "checking for BSD- or MS-compatible name lister (nm)... " >&6; }
4646 if ${lt_cv_path_NM+:} false; then :
4647 $as_echo_n "(cached) " >&6
4648 else
4649 if test -n "$NM"; then
4650 # Let the user override the test.
4651 lt_cv_path_NM=$NM
4652 else
4653 lt_nm_to_check=${ac_tool_prefix}nm
4654 if test -n "$ac_tool_prefix" && test "$build" = "$host"; then
4655 lt_nm_to_check="$lt_nm_to_check nm"
4656 fi
4657 for lt_tmp_nm in $lt_nm_to_check; do
4658 lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR
4659 for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do
4660 IFS=$lt_save_ifs
4661 test -z "$ac_dir" && ac_dir=.
4662 tmp_nm=$ac_dir/$lt_tmp_nm
4663 if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext"; then
4664 # Check to see if the nm accepts a BSD-compat flag.
4665 # Adding the 'sed 1q' prevents false positives on HP-UX, which says:
4666 # nm: unknown option "B" ignored
4667 # Tru64's nm complains that /dev/null is an invalid object file
4668 # MSYS converts /dev/null to NUL, MinGW nm treats NUL as empty
4669 case $build_os in
4670 mingw*) lt_bad_file=conftest.nm/nofile ;;
4671 *) lt_bad_file=/dev/null ;;
4672 esac
4673 case `"$tmp_nm" -B $lt_bad_file 2>&1 | sed '1q'` in
4674 *$lt_bad_file* | *'Invalid file or object type'*)
4675 lt_cv_path_NM="$tmp_nm -B"
4676 break 2
4677 ;;
4678 *)
4679 case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in
4680 */dev/null*)
4681 lt_cv_path_NM="$tmp_nm -p"
4682 break 2
4683 ;;
4684 *)
4685 lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
4686 continue # so that we can try to find one that supports BSD flags
4687 ;;
4688 esac
4689 ;;
4690 esac
4691 fi
4692 done
4693 IFS=$lt_save_ifs
4694 done
4695 : ${lt_cv_path_NM=no}
4696 fi
4697 fi
4698 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_NM" >&5
4699 $as_echo "$lt_cv_path_NM" >&6; }
4700 if test no != "$lt_cv_path_NM"; then
4701 NM=$lt_cv_path_NM
4702 else
4703 # Didn't find any BSD compatible name lister, look for dumpbin.
4704 if test -n "$DUMPBIN"; then :
4705 # Let the user override the test.
4706 else
4707 if test -n "$ac_tool_prefix"; then
4708 for ac_prog in dumpbin "link -dump"
4709 do
4710 # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
4711 set dummy $ac_tool_prefix$ac_prog; ac_word=$2
4712 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
4713 $as_echo_n "checking for $ac_word... " >&6; }
4714 if ${ac_cv_prog_DUMPBIN+:} false; then :
4715 $as_echo_n "(cached) " >&6
4716 else
4717 if test -n "$DUMPBIN"; then
4718 ac_cv_prog_DUMPBIN="$DUMPBIN" # Let the user override the test.
4719 else
4720 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
4721 for as_dir in $PATH
4722 do
4723 IFS=$as_save_IFS
4724 test -z "$as_dir" && as_dir=.
4725 for ac_exec_ext in '' $ac_executable_extensions; do
4726 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
4727 ac_cv_prog_DUMPBIN="$ac_tool_prefix$ac_prog"
4728 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
4729 break 2
4730 fi
4731 done
4732 done
4733 IFS=$as_save_IFS
4734
4735 fi
4736 fi
4737 DUMPBIN=$ac_cv_prog_DUMPBIN
4738 if test -n "$DUMPBIN"; then
4739 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DUMPBIN" >&5
4740 $as_echo "$DUMPBIN" >&6; }
4741 else
4742 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
4743 $as_echo "no" >&6; }
4744 fi
4745
4746
4747 test -n "$DUMPBIN" && break
4748 done
4749 fi
4750 if test -z "$DUMPBIN"; then
4751 ac_ct_DUMPBIN=$DUMPBIN
4752 for ac_prog in dumpbin "link -dump"
4753 do
4754 # Extract the first word of "$ac_prog", so it can be a program name with args.
4755 set dummy $ac_prog; ac_word=$2
4756 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
4757 $as_echo_n "checking for $ac_word... " >&6; }
4758 if ${ac_cv_prog_ac_ct_DUMPBIN+:} false; then :
4759 $as_echo_n "(cached) " >&6
4760 else
4761 if test -n "$ac_ct_DUMPBIN"; then
4762 ac_cv_prog_ac_ct_DUMPBIN="$ac_ct_DUMPBIN" # Let the user override the test.
4763 else
4764 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
4765 for as_dir in $PATH
4766 do
4767 IFS=$as_save_IFS
4768 test -z "$as_dir" && as_dir=.
4769 for ac_exec_ext in '' $ac_executable_extensions; do
4770 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
4771 ac_cv_prog_ac_ct_DUMPBIN="$ac_prog"
4772 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
4773 break 2
4774 fi
4775 done
4776 done
4777 IFS=$as_save_IFS
4778
4779 fi
4780 fi
4781 ac_ct_DUMPBIN=$ac_cv_prog_ac_ct_DUMPBIN
4782 if test -n "$ac_ct_DUMPBIN"; then
4783 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DUMPBIN" >&5
4784 $as_echo "$ac_ct_DUMPBIN" >&6; }
4785 else
4786 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
4787 $as_echo "no" >&6; }
4788 fi
4789
4790
4791 test -n "$ac_ct_DUMPBIN" && break
4792 done
4793
4794 if test "x$ac_ct_DUMPBIN" = x; then
4795 DUMPBIN=":"
4796 else
4797 case $cross_compiling:$ac_tool_warned in
4798 yes:)
4799 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
4800 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
4801 ac_tool_warned=yes ;;
4802 esac
4803 DUMPBIN=$ac_ct_DUMPBIN
4804 fi
4805 fi
4806
4807 case `$DUMPBIN -symbols -headers /dev/null 2>&1 | sed '1q'` in
4808 *COFF*)
4809 DUMPBIN="$DUMPBIN -symbols -headers"
4810 ;;
4811 *)
4812 DUMPBIN=:
4813 ;;
4814 esac
4815 fi
4816
4817 if test : != "$DUMPBIN"; then
4818 NM=$DUMPBIN
4819 fi
4820 fi
4821 test -z "$NM" && NM=nm
4822
4823
4824
4825
4826
4827
4828 { $as_echo "$as_me:${as_lineno-$LINENO}: checking the name lister ($NM) interface" >&5
4829 $as_echo_n "checking the name lister ($NM) interface... " >&6; }
4830 if ${lt_cv_nm_interface+:} false; then :
4831 $as_echo_n "(cached) " >&6
4832 else
4833 lt_cv_nm_interface="BSD nm"
4834 echo "int some_variable = 0;" > conftest.$ac_ext
4835 (eval echo "\"\$as_me:$LINENO: $ac_compile\"" >&5)
4836 (eval "$ac_compile" 2>conftest.err)
4837 cat conftest.err >&5
4838 (eval echo "\"\$as_me:$LINENO: $NM \\\"conftest.$ac_objext\\\"\"" >&5)
4839 (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out)
4840 cat conftest.err >&5
4841 (eval echo "\"\$as_me:$LINENO: output\"" >&5)
4842 cat conftest.out >&5
4843 if $GREP 'External.*some_variable' conftest.out > /dev/null; then
4844 lt_cv_nm_interface="MS dumpbin"
4845 fi
4846 rm -f conftest*
4847 fi
4848 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_nm_interface" >&5
4849 $as_echo "$lt_cv_nm_interface" >&6; }
4850
4851 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ln -s works" >&5
4852 $as_echo_n "checking whether ln -s works... " >&6; }
4853 LN_S=$as_ln_s
4854 if test "$LN_S" = "ln -s"; then
4855 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
4856 $as_echo "yes" >&6; }
4857 else
4858 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no, using $LN_S" >&5
4859 $as_echo "no, using $LN_S" >&6; }
4860 fi
4861
4862 # find the maximum length of command line arguments
4863 { $as_echo "$as_me:${as_lineno-$LINENO}: checking the maximum length of command line arguments" >&5
4864 $as_echo_n "checking the maximum length of command line arguments... " >&6; }
4865 if ${lt_cv_sys_max_cmd_len+:} false; then :
4866 $as_echo_n "(cached) " >&6
4867 else
4868 i=0
4869 teststring=ABCD
4870
4871 case $build_os in
4872 msdosdjgpp*)
4873 # On DJGPP, this test can blow up pretty badly due to problems in libc
4874 # (any single argument exceeding 2000 bytes causes a buffer overrun
4875 # during glob expansion). Even if it were fixed, the result of this
4876 # check would be larger than it should be.
4877 lt_cv_sys_max_cmd_len=12288; # 12K is about right
4878 ;;
4879
4880 gnu*)
4881 # Under GNU Hurd, this test is not required because there is
4882 # no limit to the length of command line arguments.
4883 # Libtool will interpret -1 as no limit whatsoever
4884 lt_cv_sys_max_cmd_len=-1;
4885 ;;
4886
4887 cygwin* | mingw* | cegcc*)
4888 # On Win9x/ME, this test blows up -- it succeeds, but takes
4889 # about 5 minutes as the teststring grows exponentially.
4890 # Worse, since 9x/ME are not pre-emptively multitasking,
4891 # you end up with a "frozen" computer, even though with patience
4892 # the test eventually succeeds (with a max line length of 256k).
4893 # Instead, let's just punt: use the minimum linelength reported by
4894 # all of the supported platforms: 8192 (on NT/2K/XP).
4895 lt_cv_sys_max_cmd_len=8192;
4896 ;;
4897
4898 mint*)
4899 # On MiNT this can take a long time and run out of memory.
4900 lt_cv_sys_max_cmd_len=8192;
4901 ;;
4902
4903 amigaos*)
4904 # On AmigaOS with pdksh, this test takes hours, literally.
4905 # So we just punt and use a minimum line length of 8192.
4906 lt_cv_sys_max_cmd_len=8192;
4907 ;;
4908
4909 bitrig* | darwin* | dragonfly* | freebsd* | netbsd* | openbsd*)
4910 # This has been around since 386BSD, at least. Likely further.
4911 if test -x /sbin/sysctl; then
4912 lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax`
4913 elif test -x /usr/sbin/sysctl; then
4914 lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax`
4915 else
4916 lt_cv_sys_max_cmd_len=65536 # usable default for all BSDs
4917 fi
4918 # And add a safety zone
4919 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
4920 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
4921 ;;
4922
4923 interix*)
4924 # We know the value 262144 and hardcode it with a safety zone (like BSD)
4925 lt_cv_sys_max_cmd_len=196608
4926 ;;
4927
4928 os2*)
4929 # The test takes a long time on OS/2.
4930 lt_cv_sys_max_cmd_len=8192
4931 ;;
4932
4933 osf*)
4934 # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure
4935 # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not
4936 # nice to cause kernel panics so lets avoid the loop below.
4937 # First set a reasonable default.
4938 lt_cv_sys_max_cmd_len=16384
4939 #
4940 if test -x /sbin/sysconfig; then
4941 case `/sbin/sysconfig -q proc exec_disable_arg_limit` in
4942 *1*) lt_cv_sys_max_cmd_len=-1 ;;
4943 esac
4944 fi
4945 ;;
4946 sco3.2v5*)
4947 lt_cv_sys_max_cmd_len=102400
4948 ;;
4949 sysv5* | sco5v6* | sysv4.2uw2*)
4950 kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null`
4951 if test -n "$kargmax"; then
4952 lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[ ]//'`
4953 else
4954 lt_cv_sys_max_cmd_len=32768
4955 fi
4956 ;;
4957 *)
4958 lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null`
4959 if test -n "$lt_cv_sys_max_cmd_len" && \
4960 test undefined != "$lt_cv_sys_max_cmd_len"; then
4961 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4`
4962 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3`
4963 else
4964 # Make teststring a little bigger before we do anything with it.
4965 # a 1K string should be a reasonable start.
4966 for i in 1 2 3 4 5 6 7 8; do
4967 teststring=$teststring$teststring
4968 done
4969 SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}}
4970 # If test is not a shell built-in, we'll probably end up computing a
4971 # maximum length that is only half of the actual maximum length, but
4972 # we can't tell.
4973 while { test X`env echo "$teststring$teststring" 2>/dev/null` \
4974 = "X$teststring$teststring"; } >/dev/null 2>&1 &&
4975 test 17 != "$i" # 1/2 MB should be enough
4976 do
4977 i=`expr $i + 1`
4978 teststring=$teststring$teststring
4979 done
4980 # Only check the string length outside the loop.
4981 lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1`
4982 teststring=
4983 # Add a significant safety factor because C++ compilers can tack on
4984 # massive amounts of additional arguments before passing them to the
4985 # linker. It appears as though 1/2 is a usable value.
4986 lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2`
4987 fi
4988 ;;
4989 esac
4990
4991 fi
4992
4993 if test -n "$lt_cv_sys_max_cmd_len"; then
4994 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sys_max_cmd_len" >&5
4995 $as_echo "$lt_cv_sys_max_cmd_len" >&6; }
4996 else
4997 { $as_echo "$as_me:${as_lineno-$LINENO}: result: none" >&5
4998 $as_echo "none" >&6; }
4999 fi
5000 max_cmd_len=$lt_cv_sys_max_cmd_len
5001
5002
5003
5004
5005
5006
5007 : ${CP="cp -f"}
5008 : ${MV="mv -f"}
5009 : ${RM="rm -f"}
5010
5011 if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
5012 lt_unset=unset
5013 else
5014 lt_unset=false
5015 fi
5016
5017
5018
5019
5020
5021 # test EBCDIC or ASCII
5022 case `echo X|tr X '\101'` in
5023 A) # ASCII based system
5024 # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr
5025 lt_SP2NL='tr \040 \012'
5026 lt_NL2SP='tr \015\012 \040\040'
5027 ;;
5028 *) # EBCDIC based system
5029 lt_SP2NL='tr \100 \n'
5030 lt_NL2SP='tr \r\n \100\100'
5031 ;;
5032 esac
5033
5034
5035
5036
5037
5038
5039
5040
5041
5042 { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to $host format" >&5
5043 $as_echo_n "checking how to convert $build file names to $host format... " >&6; }
5044 if ${lt_cv_to_host_file_cmd+:} false; then :
5045 $as_echo_n "(cached) " >&6
5046 else
5047 case $host in
5048 *-*-mingw* )
5049 case $build in
5050 *-*-mingw* ) # actually msys
5051 lt_cv_to_host_file_cmd=func_convert_file_msys_to_w32
5052 ;;
5053 *-*-cygwin* )
5054 lt_cv_to_host_file_cmd=func_convert_file_cygwin_to_w32
5055 ;;
5056 * ) # otherwise, assume *nix
5057 lt_cv_to_host_file_cmd=func_convert_file_nix_to_w32
5058 ;;
5059 esac
5060 ;;
5061 *-*-cygwin* )
5062 case $build in
5063 *-*-mingw* ) # actually msys
5064 lt_cv_to_host_file_cmd=func_convert_file_msys_to_cygwin
5065 ;;
5066 *-*-cygwin* )
5067 lt_cv_to_host_file_cmd=func_convert_file_noop
5068 ;;
5069 * ) # otherwise, assume *nix
5070 lt_cv_to_host_file_cmd=func_convert_file_nix_to_cygwin
5071 ;;
5072 esac
5073 ;;
5074 * ) # unhandled hosts (and "normal" native builds)
5075 lt_cv_to_host_file_cmd=func_convert_file_noop
5076 ;;
5077 esac
5078
5079 fi
5080
5081 to_host_file_cmd=$lt_cv_to_host_file_cmd
5082 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_to_host_file_cmd" >&5
5083 $as_echo "$lt_cv_to_host_file_cmd" >&6; }
5084
5085
5086
5087
5088
5089 { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to toolchain format" >&5
5090 $as_echo_n "checking how to convert $build file names to toolchain format... " >&6; }
5091 if ${lt_cv_to_tool_file_cmd+:} false; then :
5092 $as_echo_n "(cached) " >&6
5093 else
5094 #assume ordinary cross tools, or native build.
5095 lt_cv_to_tool_file_cmd=func_convert_file_noop
5096 case $host in
5097 *-*-mingw* )
5098 case $build in
5099 *-*-mingw* ) # actually msys
5100 lt_cv_to_tool_file_cmd=func_convert_file_msys_to_w32
5101 ;;
5102 esac
5103 ;;
5104 esac
5105
5106 fi
5107
5108 to_tool_file_cmd=$lt_cv_to_tool_file_cmd
5109 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_to_tool_file_cmd" >&5
5110 $as_echo "$lt_cv_to_tool_file_cmd" >&6; }
5111
5112
5113
5114
5115
5116 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $LD option to reload object files" >&5
5117 $as_echo_n "checking for $LD option to reload object files... " >&6; }
5118 if ${lt_cv_ld_reload_flag+:} false; then :
5119 $as_echo_n "(cached) " >&6
5120 else
5121 lt_cv_ld_reload_flag='-r'
5122 fi
5123 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_reload_flag" >&5
5124 $as_echo "$lt_cv_ld_reload_flag" >&6; }
5125 reload_flag=$lt_cv_ld_reload_flag
5126 case $reload_flag in
5127 "" | " "*) ;;
5128 *) reload_flag=" $reload_flag" ;;
5129 esac
5130 reload_cmds='$LD$reload_flag -o $output$reload_objs'
5131 case $host_os in
5132 cygwin* | mingw* | pw32* | cegcc*)
5133 if test yes != "$GCC"; then
5134 reload_cmds=false
5135 fi
5136 ;;
5137 darwin*)
5138 if test yes = "$GCC"; then
5139 reload_cmds='$LTCC $LTCFLAGS -nostdlib $wl-r -o $output$reload_objs'
5140 else
5141 reload_cmds='$LD$reload_flag -o $output$reload_objs'
5142 fi
5143 ;;
5144 esac
5145
5146
5147
5148
5149
5150
5151
5152
5153
5154 if test -n "$ac_tool_prefix"; then
5155 # Extract the first word of "${ac_tool_prefix}objdump", so it can be a program name with args.
5156 set dummy ${ac_tool_prefix}objdump; ac_word=$2
5157 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
5158 $as_echo_n "checking for $ac_word... " >&6; }
5159 if ${ac_cv_prog_OBJDUMP+:} false; then :
5160 $as_echo_n "(cached) " >&6
5161 else
5162 if test -n "$OBJDUMP"; then
5163 ac_cv_prog_OBJDUMP="$OBJDUMP" # Let the user override the test.
5164 else
5165 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
5166 for as_dir in $PATH
5167 do
5168 IFS=$as_save_IFS
5169 test -z "$as_dir" && as_dir=.
5170 for ac_exec_ext in '' $ac_executable_extensions; do
5171 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
5172 ac_cv_prog_OBJDUMP="${ac_tool_prefix}objdump"
5173 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
5174 break 2
5175 fi
5176 done
5177 done
5178 IFS=$as_save_IFS
5179
5180 fi
5181 fi
5182 OBJDUMP=$ac_cv_prog_OBJDUMP
5183 if test -n "$OBJDUMP"; then
5184 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OBJDUMP" >&5
5185 $as_echo "$OBJDUMP" >&6; }
5186 else
5187 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5188 $as_echo "no" >&6; }
5189 fi
5190
5191
5192 fi
5193 if test -z "$ac_cv_prog_OBJDUMP"; then
5194 ac_ct_OBJDUMP=$OBJDUMP
5195 # Extract the first word of "objdump", so it can be a program name with args.
5196 set dummy objdump; ac_word=$2
5197 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
5198 $as_echo_n "checking for $ac_word... " >&6; }
5199 if ${ac_cv_prog_ac_ct_OBJDUMP+:} false; then :
5200 $as_echo_n "(cached) " >&6
5201 else
5202 if test -n "$ac_ct_OBJDUMP"; then
5203 ac_cv_prog_ac_ct_OBJDUMP="$ac_ct_OBJDUMP" # Let the user override the test.
5204 else
5205 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
5206 for as_dir in $PATH
5207 do
5208 IFS=$as_save_IFS
5209 test -z "$as_dir" && as_dir=.
5210 for ac_exec_ext in '' $ac_executable_extensions; do
5211 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
5212 ac_cv_prog_ac_ct_OBJDUMP="objdump"
5213 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
5214 break 2
5215 fi
5216 done
5217 done
5218 IFS=$as_save_IFS
5219
5220 fi
5221 fi
5222 ac_ct_OBJDUMP=$ac_cv_prog_ac_ct_OBJDUMP
5223 if test -n "$ac_ct_OBJDUMP"; then
5224 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OBJDUMP" >&5
5225 $as_echo "$ac_ct_OBJDUMP" >&6; }
5226 else
5227 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5228 $as_echo "no" >&6; }
5229 fi
5230
5231 if test "x$ac_ct_OBJDUMP" = x; then
5232 OBJDUMP="false"
5233 else
5234 case $cross_compiling:$ac_tool_warned in
5235 yes:)
5236 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
5237 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
5238 ac_tool_warned=yes ;;
5239 esac
5240 OBJDUMP=$ac_ct_OBJDUMP
5241 fi
5242 else
5243 OBJDUMP="$ac_cv_prog_OBJDUMP"
5244 fi
5245
5246 test -z "$OBJDUMP" && OBJDUMP=objdump
5247
5248
5249
5250
5251
5252
5253
5254
5255
5256 { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to recognize dependent libraries" >&5
5257 $as_echo_n "checking how to recognize dependent libraries... " >&6; }
5258 if ${lt_cv_deplibs_check_method+:} false; then :
5259 $as_echo_n "(cached) " >&6
5260 else
5261 lt_cv_file_magic_cmd='$MAGIC_CMD'
5262 lt_cv_file_magic_test_file=
5263 lt_cv_deplibs_check_method='unknown'
5264 # Need to set the preceding variable on all platforms that support
5265 # interlibrary dependencies.
5266 # 'none' -- dependencies not supported.
5267 # 'unknown' -- same as none, but documents that we really don't know.
5268 # 'pass_all' -- all dependencies passed with no checks.
5269 # 'test_compile' -- check by making test program.
5270 # 'file_magic [[regex]]' -- check by looking for files in library path
5271 # that responds to the $file_magic_cmd with a given extended regex.
5272 # If you have 'file' or equivalent on your system and you're not sure
5273 # whether 'pass_all' will *always* work, you probably want this one.
5274
5275 case $host_os in
5276 aix[4-9]*)
5277 lt_cv_deplibs_check_method=pass_all
5278 ;;
5279
5280 beos*)
5281 lt_cv_deplibs_check_method=pass_all
5282 ;;
5283
5284 bsdi[45]*)
5285 lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib)'
5286 lt_cv_file_magic_cmd='/usr/bin/file -L'
5287 lt_cv_file_magic_test_file=/shlib/libc.so
5288 ;;
5289
5290 cygwin*)
5291 # func_win32_libid is a shell function defined in ltmain.sh
5292 lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
5293 lt_cv_file_magic_cmd='func_win32_libid'
5294 ;;
5295
5296 mingw* | pw32*)
5297 # Base MSYS/MinGW do not provide the 'file' command needed by
5298 # func_win32_libid shell function, so use a weaker test based on 'objdump',
5299 # unless we find 'file', for example because we are cross-compiling.
5300 if ( file / ) >/dev/null 2>&1; then
5301 lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
5302 lt_cv_file_magic_cmd='func_win32_libid'
5303 else
5304 # Keep this pattern in sync with the one in func_win32_libid.
5305 lt_cv_deplibs_check_method='file_magic file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)'
5306 lt_cv_file_magic_cmd='$OBJDUMP -f'
5307 fi
5308 ;;
5309
5310 cegcc*)
5311 # use the weaker test based on 'objdump'. See mingw*.
5312 lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?'
5313 lt_cv_file_magic_cmd='$OBJDUMP -f'
5314 ;;
5315
5316 darwin* | rhapsody*)
5317 lt_cv_deplibs_check_method=pass_all
5318 ;;
5319
5320 freebsd* | dragonfly*)
5321 if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
5322 case $host_cpu in
5323 i*86 )
5324 # Not sure whether the presence of OpenBSD here was a mistake.
5325 # Let's accept both of them until this is cleared up.
5326 lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[3-9]86 (compact )?demand paged shared library'
5327 lt_cv_file_magic_cmd=/usr/bin/file
5328 lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*`
5329 ;;
5330 esac
5331 else
5332 lt_cv_deplibs_check_method=pass_all
5333 fi
5334 ;;
5335
5336 haiku*)
5337 lt_cv_deplibs_check_method=pass_all
5338 ;;
5339
5340 hpux10.20* | hpux11*)
5341 lt_cv_file_magic_cmd=/usr/bin/file
5342 case $host_cpu in
5343 ia64*)
5344 lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF-[0-9][0-9]) shared object file - IA64'
5345 lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so
5346 ;;
5347 hppa*64*)
5348 lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF[ -][0-9][0-9])(-bit)?( [LM]SB)? shared object( file)?[, -]* PA-RISC [0-9]\.[0-9]'
5349 lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl
5350 ;;
5351 *)
5352 lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|PA-RISC[0-9]\.[0-9]) shared library'
5353 lt_cv_file_magic_test_file=/usr/lib/libc.sl
5354 ;;
5355 esac
5356 ;;
5357
5358 interix[3-9]*)
5359 # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here
5360 lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so|\.a)$'
5361 ;;
5362
5363 irix5* | irix6* | nonstopux*)
5364 case $LD in
5365 *-32|*"-32 ") libmagic=32-bit;;
5366 *-n32|*"-n32 ") libmagic=N32;;
5367 *-64|*"-64 ") libmagic=64-bit;;
5368 *) libmagic=never-match;;
5369 esac
5370 lt_cv_deplibs_check_method=pass_all
5371 ;;
5372
5373 # This must be glibc/ELF.
5374 linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
5375 lt_cv_deplibs_check_method=pass_all
5376 ;;
5377
5378 netbsd* | netbsdelf*-gnu)
5379 if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then
5380 lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|_pic\.a)$'
5381 else
5382 lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so|_pic\.a)$'
5383 fi
5384 ;;
5385
5386 newos6*)
5387 lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (executable|dynamic lib)'
5388 lt_cv_file_magic_cmd=/usr/bin/file
5389 lt_cv_file_magic_test_file=/usr/lib/libnls.so
5390 ;;
5391
5392 *nto* | *qnx*)
5393 lt_cv_deplibs_check_method=pass_all
5394 ;;
5395
5396 openbsd* | bitrig*)
5397 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then
5398 lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|\.so|_pic\.a)$'
5399 else
5400 lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|_pic\.a)$'
5401 fi
5402 ;;
5403
5404 osf3* | osf4* | osf5*)
5405 lt_cv_deplibs_check_method=pass_all
5406 ;;
5407
5408 rdos*)
5409 lt_cv_deplibs_check_method=pass_all
5410 ;;
5411
5412 solaris*)
5413 lt_cv_deplibs_check_method=pass_all
5414 ;;
5415
5416 sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
5417 lt_cv_deplibs_check_method=pass_all
5418 ;;
5419
5420 sysv4 | sysv4.3*)
5421 case $host_vendor in
5422 motorola)
5423 lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib) M[0-9][0-9]* Version [0-9]'
5424 lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*`
5425 ;;
5426 ncr)
5427 lt_cv_deplibs_check_method=pass_all
5428 ;;
5429 sequent)
5430 lt_cv_file_magic_cmd='/bin/file'
5431 lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )'
5432 ;;
5433 sni)
5434 lt_cv_file_magic_cmd='/bin/file'
5435 lt_cv_deplibs_check_method="file_magic ELF [0-9][0-9]*-bit [LM]SB dynamic lib"
5436 lt_cv_file_magic_test_file=/lib/libc.so
5437 ;;
5438 siemens)
5439 lt_cv_deplibs_check_method=pass_all
5440 ;;
5441 pc)
5442 lt_cv_deplibs_check_method=pass_all
5443 ;;
5444 esac
5445 ;;
5446
5447 tpf*)
5448 lt_cv_deplibs_check_method=pass_all
5449 ;;
5450 os2*)
5451 lt_cv_deplibs_check_method=pass_all
5452 ;;
5453 esac
5454
5455 fi
5456 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_deplibs_check_method" >&5
5457 $as_echo "$lt_cv_deplibs_check_method" >&6; }
5458
5459 file_magic_glob=
5460 want_nocaseglob=no
5461 if test "$build" = "$host"; then
5462 case $host_os in
5463 mingw* | pw32*)
5464 if ( shopt | grep nocaseglob ) >/dev/null 2>&1; then
5465 want_nocaseglob=yes
5466 else
5467 file_magic_glob=`echo aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ | $SED -e "s/\(..\)/s\/[\1]\/[\1]\/g;/g"`
5468 fi
5469 ;;
5470 esac
5471 fi
5472
5473 file_magic_cmd=$lt_cv_file_magic_cmd
5474 deplibs_check_method=$lt_cv_deplibs_check_method
5475 test -z "$deplibs_check_method" && deplibs_check_method=unknown
5476
5477
5478
5479
5480
5481
5482
5483
5484
5485
5486
5487
5488
5489
5490
5491
5492
5493
5494
5495
5496
5497
5498 if test -n "$ac_tool_prefix"; then
5499 # Extract the first word of "${ac_tool_prefix}dlltool", so it can be a program name with args.
5500 set dummy ${ac_tool_prefix}dlltool; ac_word=$2
5501 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
5502 $as_echo_n "checking for $ac_word... " >&6; }
5503 if ${ac_cv_prog_DLLTOOL+:} false; then :
5504 $as_echo_n "(cached) " >&6
5505 else
5506 if test -n "$DLLTOOL"; then
5507 ac_cv_prog_DLLTOOL="$DLLTOOL" # Let the user override the test.
5508 else
5509 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
5510 for as_dir in $PATH
5511 do
5512 IFS=$as_save_IFS
5513 test -z "$as_dir" && as_dir=.
5514 for ac_exec_ext in '' $ac_executable_extensions; do
5515 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
5516 ac_cv_prog_DLLTOOL="${ac_tool_prefix}dlltool"
5517 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
5518 break 2
5519 fi
5520 done
5521 done
5522 IFS=$as_save_IFS
5523
5524 fi
5525 fi
5526 DLLTOOL=$ac_cv_prog_DLLTOOL
5527 if test -n "$DLLTOOL"; then
5528 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DLLTOOL" >&5
5529 $as_echo "$DLLTOOL" >&6; }
5530 else
5531 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5532 $as_echo "no" >&6; }
5533 fi
5534
5535
5536 fi
5537 if test -z "$ac_cv_prog_DLLTOOL"; then
5538 ac_ct_DLLTOOL=$DLLTOOL
5539 # Extract the first word of "dlltool", so it can be a program name with args.
5540 set dummy dlltool; ac_word=$2
5541 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
5542 $as_echo_n "checking for $ac_word... " >&6; }
5543 if ${ac_cv_prog_ac_ct_DLLTOOL+:} false; then :
5544 $as_echo_n "(cached) " >&6
5545 else
5546 if test -n "$ac_ct_DLLTOOL"; then
5547 ac_cv_prog_ac_ct_DLLTOOL="$ac_ct_DLLTOOL" # Let the user override the test.
5548 else
5549 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
5550 for as_dir in $PATH
5551 do
5552 IFS=$as_save_IFS
5553 test -z "$as_dir" && as_dir=.
5554 for ac_exec_ext in '' $ac_executable_extensions; do
5555 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
5556 ac_cv_prog_ac_ct_DLLTOOL="dlltool"
5557 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
5558 break 2
5559 fi
5560 done
5561 done
5562 IFS=$as_save_IFS
5563
5564 fi
5565 fi
5566 ac_ct_DLLTOOL=$ac_cv_prog_ac_ct_DLLTOOL
5567 if test -n "$ac_ct_DLLTOOL"; then
5568 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DLLTOOL" >&5
5569 $as_echo "$ac_ct_DLLTOOL" >&6; }
5570 else
5571 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5572 $as_echo "no" >&6; }
5573 fi
5574
5575 if test "x$ac_ct_DLLTOOL" = x; then
5576 DLLTOOL="false"
5577 else
5578 case $cross_compiling:$ac_tool_warned in
5579 yes:)
5580 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
5581 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
5582 ac_tool_warned=yes ;;
5583 esac
5584 DLLTOOL=$ac_ct_DLLTOOL
5585 fi
5586 else
5587 DLLTOOL="$ac_cv_prog_DLLTOOL"
5588 fi
5589
5590 test -z "$DLLTOOL" && DLLTOOL=dlltool
5591
5592
5593
5594
5595
5596
5597
5598
5599
5600
5601 { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to associate runtime and link libraries" >&5
5602 $as_echo_n "checking how to associate runtime and link libraries... " >&6; }
5603 if ${lt_cv_sharedlib_from_linklib_cmd+:} false; then :
5604 $as_echo_n "(cached) " >&6
5605 else
5606 lt_cv_sharedlib_from_linklib_cmd='unknown'
5607
5608 case $host_os in
5609 cygwin* | mingw* | pw32* | cegcc*)
5610 # two different shell functions defined in ltmain.sh;
5611 # decide which one to use based on capabilities of $DLLTOOL
5612 case `$DLLTOOL --help 2>&1` in
5613 *--identify-strict*)
5614 lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib
5615 ;;
5616 *)
5617 lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib_fallback
5618 ;;
5619 esac
5620 ;;
5621 *)
5622 # fallback: assume linklib IS sharedlib
5623 lt_cv_sharedlib_from_linklib_cmd=$ECHO
5624 ;;
5625 esac
5626
5627 fi
5628 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sharedlib_from_linklib_cmd" >&5
5629 $as_echo "$lt_cv_sharedlib_from_linklib_cmd" >&6; }
5630 sharedlib_from_linklib_cmd=$lt_cv_sharedlib_from_linklib_cmd
5631 test -z "$sharedlib_from_linklib_cmd" && sharedlib_from_linklib_cmd=$ECHO
5632
5633
5634
5635
5636
5637
5638
5639
5640 if test -n "$ac_tool_prefix"; then
5641 for ac_prog in ar
5642 do
5643 # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
5644 set dummy $ac_tool_prefix$ac_prog; ac_word=$2
5645 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
5646 $as_echo_n "checking for $ac_word... " >&6; }
5647 if ${ac_cv_prog_AR+:} false; then :
5648 $as_echo_n "(cached) " >&6
5649 else
5650 if test -n "$AR"; then
5651 ac_cv_prog_AR="$AR" # Let the user override the test.
5652 else
5653 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
5654 for as_dir in $PATH
5655 do
5656 IFS=$as_save_IFS
5657 test -z "$as_dir" && as_dir=.
5658 for ac_exec_ext in '' $ac_executable_extensions; do
5659 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
5660 ac_cv_prog_AR="$ac_tool_prefix$ac_prog"
5661 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
5662 break 2
5663 fi
5664 done
5665 done
5666 IFS=$as_save_IFS
5667
5668 fi
5669 fi
5670 AR=$ac_cv_prog_AR
5671 if test -n "$AR"; then
5672 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AR" >&5
5673 $as_echo "$AR" >&6; }
5674 else
5675 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5676 $as_echo "no" >&6; }
5677 fi
5678
5679
5680 test -n "$AR" && break
5681 done
5682 fi
5683 if test -z "$AR"; then
5684 ac_ct_AR=$AR
5685 for ac_prog in ar
5686 do
5687 # Extract the first word of "$ac_prog", so it can be a program name with args.
5688 set dummy $ac_prog; ac_word=$2
5689 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
5690 $as_echo_n "checking for $ac_word... " >&6; }
5691 if ${ac_cv_prog_ac_ct_AR+:} false; then :
5692 $as_echo_n "(cached) " >&6
5693 else
5694 if test -n "$ac_ct_AR"; then
5695 ac_cv_prog_ac_ct_AR="$ac_ct_AR" # Let the user override the test.
5696 else
5697 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
5698 for as_dir in $PATH
5699 do
5700 IFS=$as_save_IFS
5701 test -z "$as_dir" && as_dir=.
5702 for ac_exec_ext in '' $ac_executable_extensions; do
5703 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
5704 ac_cv_prog_ac_ct_AR="$ac_prog"
5705 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
5706 break 2
5707 fi
5708 done
5709 done
5710 IFS=$as_save_IFS
5711
5712 fi
5713 fi
5714 ac_ct_AR=$ac_cv_prog_ac_ct_AR
5715 if test -n "$ac_ct_AR"; then
5716 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_AR" >&5
5717 $as_echo "$ac_ct_AR" >&6; }
5718 else
5719 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5720 $as_echo "no" >&6; }
5721 fi
5722
5723
5724 test -n "$ac_ct_AR" && break
5725 done
5726
5727 if test "x$ac_ct_AR" = x; then
5728 AR="false"
5729 else
5730 case $cross_compiling:$ac_tool_warned in
5731 yes:)
5732 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
5733 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
5734 ac_tool_warned=yes ;;
5735 esac
5736 AR=$ac_ct_AR
5737 fi
5738 fi
5739
5740 : ${AR=ar}
5741 : ${AR_FLAGS=cr}
5742
5743
5744
5745
5746
5747
5748
5749
5750
5751
5752
5753 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for archiver @FILE support" >&5
5754 $as_echo_n "checking for archiver @FILE support... " >&6; }
5755 if ${lt_cv_ar_at_file+:} false; then :
5756 $as_echo_n "(cached) " >&6
5757 else
5758 lt_cv_ar_at_file=no
5759 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
5760 /* end confdefs.h. */
5761
5762 int
5763 main ()
5764 {
5765
5766 ;
5767 return 0;
5768 }
5769 _ACEOF
5770 if ac_fn_c_try_compile "$LINENO"; then :
5771 echo conftest.$ac_objext > conftest.lst
5772 lt_ar_try='$AR $AR_FLAGS libconftest.a @conftest.lst >&5'
5773 { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$lt_ar_try\""; } >&5
5774 (eval $lt_ar_try) 2>&5
5775 ac_status=$?
5776 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
5777 test $ac_status = 0; }
5778 if test 0 -eq "$ac_status"; then
5779 # Ensure the archiver fails upon bogus file names.
5780 rm -f conftest.$ac_objext libconftest.a
5781 { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$lt_ar_try\""; } >&5
5782 (eval $lt_ar_try) 2>&5
5783 ac_status=$?
5784 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
5785 test $ac_status = 0; }
5786 if test 0 -ne "$ac_status"; then
5787 lt_cv_ar_at_file=@
5788 fi
5789 fi
5790 rm -f conftest.* libconftest.a
5791
5792 fi
5793 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
5794
5795 fi
5796 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ar_at_file" >&5
5797 $as_echo "$lt_cv_ar_at_file" >&6; }
5798
5799 if test no = "$lt_cv_ar_at_file"; then
5800 archiver_list_spec=
5801 else
5802 archiver_list_spec=$lt_cv_ar_at_file
5803 fi
5804
5805
5806
5807
5808
5809
5810
5811 if test -n "$ac_tool_prefix"; then
5812 # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
5813 set dummy ${ac_tool_prefix}strip; ac_word=$2
5814 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
5815 $as_echo_n "checking for $ac_word... " >&6; }
5816 if ${ac_cv_prog_STRIP+:} false; then :
5817 $as_echo_n "(cached) " >&6
5818 else
5819 if test -n "$STRIP"; then
5820 ac_cv_prog_STRIP="$STRIP" # Let the user override the test.
5821 else
5822 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
5823 for as_dir in $PATH
5824 do
5825 IFS=$as_save_IFS
5826 test -z "$as_dir" && as_dir=.
5827 for ac_exec_ext in '' $ac_executable_extensions; do
5828 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
5829 ac_cv_prog_STRIP="${ac_tool_prefix}strip"
5830 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
5831 break 2
5832 fi
5833 done
5834 done
5835 IFS=$as_save_IFS
5836
5837 fi
5838 fi
5839 STRIP=$ac_cv_prog_STRIP
5840 if test -n "$STRIP"; then
5841 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5
5842 $as_echo "$STRIP" >&6; }
5843 else
5844 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5845 $as_echo "no" >&6; }
5846 fi
5847
5848
5849 fi
5850 if test -z "$ac_cv_prog_STRIP"; then
5851 ac_ct_STRIP=$STRIP
5852 # Extract the first word of "strip", so it can be a program name with args.
5853 set dummy strip; ac_word=$2
5854 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
5855 $as_echo_n "checking for $ac_word... " >&6; }
5856 if ${ac_cv_prog_ac_ct_STRIP+:} false; then :
5857 $as_echo_n "(cached) " >&6
5858 else
5859 if test -n "$ac_ct_STRIP"; then
5860 ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test.
5861 else
5862 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
5863 for as_dir in $PATH
5864 do
5865 IFS=$as_save_IFS
5866 test -z "$as_dir" && as_dir=.
5867 for ac_exec_ext in '' $ac_executable_extensions; do
5868 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
5869 ac_cv_prog_ac_ct_STRIP="strip"
5870 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
5871 break 2
5872 fi
5873 done
5874 done
5875 IFS=$as_save_IFS
5876
5877 fi
5878 fi
5879 ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP
5880 if test -n "$ac_ct_STRIP"; then
5881 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5
5882 $as_echo "$ac_ct_STRIP" >&6; }
5883 else
5884 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5885 $as_echo "no" >&6; }
5886 fi
5887
5888 if test "x$ac_ct_STRIP" = x; then
5889 STRIP=":"
5890 else
5891 case $cross_compiling:$ac_tool_warned in
5892 yes:)
5893 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
5894 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
5895 ac_tool_warned=yes ;;
5896 esac
5897 STRIP=$ac_ct_STRIP
5898 fi
5899 else
5900 STRIP="$ac_cv_prog_STRIP"
5901 fi
5902
5903 test -z "$STRIP" && STRIP=:
5904
5905
5906
5907
5908
5909
5910 if test -n "$ac_tool_prefix"; then
5911 # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.
5912 set dummy ${ac_tool_prefix}ranlib; ac_word=$2
5913 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
5914 $as_echo_n "checking for $ac_word... " >&6; }
5915 if ${ac_cv_prog_RANLIB+:} false; then :
5916 $as_echo_n "(cached) " >&6
5917 else
5918 if test -n "$RANLIB"; then
5919 ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test.
5920 else
5921 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
5922 for as_dir in $PATH
5923 do
5924 IFS=$as_save_IFS
5925 test -z "$as_dir" && as_dir=.
5926 for ac_exec_ext in '' $ac_executable_extensions; do
5927 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
5928 ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib"
5929 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
5930 break 2
5931 fi
5932 done
5933 done
5934 IFS=$as_save_IFS
5935
5936 fi
5937 fi
5938 RANLIB=$ac_cv_prog_RANLIB
5939 if test -n "$RANLIB"; then
5940 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $RANLIB" >&5
5941 $as_echo "$RANLIB" >&6; }
5942 else
5943 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5944 $as_echo "no" >&6; }
5945 fi
5946
5947
5948 fi
5949 if test -z "$ac_cv_prog_RANLIB"; then
5950 ac_ct_RANLIB=$RANLIB
5951 # Extract the first word of "ranlib", so it can be a program name with args.
5952 set dummy ranlib; ac_word=$2
5953 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
5954 $as_echo_n "checking for $ac_word... " >&6; }
5955 if ${ac_cv_prog_ac_ct_RANLIB+:} false; then :
5956 $as_echo_n "(cached) " >&6
5957 else
5958 if test -n "$ac_ct_RANLIB"; then
5959 ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test.
5960 else
5961 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
5962 for as_dir in $PATH
5963 do
5964 IFS=$as_save_IFS
5965 test -z "$as_dir" && as_dir=.
5966 for ac_exec_ext in '' $ac_executable_extensions; do
5967 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
5968 ac_cv_prog_ac_ct_RANLIB="ranlib"
5969 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
5970 break 2
5971 fi
5972 done
5973 done
5974 IFS=$as_save_IFS
5975
5976 fi
5977 fi
5978 ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB
5979 if test -n "$ac_ct_RANLIB"; then
5980 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_RANLIB" >&5
5981 $as_echo "$ac_ct_RANLIB" >&6; }
5982 else
5983 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
5984 $as_echo "no" >&6; }
5985 fi
5986
5987 if test "x$ac_ct_RANLIB" = x; then
5988 RANLIB=":"
5989 else
5990 case $cross_compiling:$ac_tool_warned in
5991 yes:)
5992 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
5993 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
5994 ac_tool_warned=yes ;;
5995 esac
5996 RANLIB=$ac_ct_RANLIB
5997 fi
5998 else
5999 RANLIB="$ac_cv_prog_RANLIB"
6000 fi
6001
6002 test -z "$RANLIB" && RANLIB=:
6003
6004
6005
6006
6007
6008
6009 # Determine commands to create old-style static archives.
6010 old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs'
6011 old_postinstall_cmds='chmod 644 $oldlib'
6012 old_postuninstall_cmds=
6013
6014 if test -n "$RANLIB"; then
6015 case $host_os in
6016 bitrig* | openbsd*)
6017 old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$tool_oldlib"
6018 ;;
6019 *)
6020 old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$tool_oldlib"
6021 ;;
6022 esac
6023 old_archive_cmds="$old_archive_cmds~\$RANLIB \$tool_oldlib"
6024 fi
6025
6026 case $host_os in
6027 darwin*)
6028 lock_old_archive_extraction=yes ;;
6029 *)
6030 lock_old_archive_extraction=no ;;
6031 esac
6032
6033
6034
6035
6036
6037
6038
6039
6040
6041
6042
6043
6044
6045
6046
6047
6048
6049
6050
6051
6052
6053
6054
6055
6056
6057
6058
6059
6060
6061
6062
6063
6064
6065
6066
6067
6068
6069
6070
6071 # If no C compiler was specified, use CC.
6072 LTCC=${LTCC-"$CC"}
6073
6074 # If no C compiler flags were specified, use CFLAGS.
6075 LTCFLAGS=${LTCFLAGS-"$CFLAGS"}
6076
6077 # Allow CC to be a program name with arguments.
6078 compiler=$CC
6079
6080
6081 # Check for command to grab the raw symbol name followed by C symbol from nm.
6082 { $as_echo "$as_me:${as_lineno-$LINENO}: checking command to parse $NM output from $compiler object" >&5
6083 $as_echo_n "checking command to parse $NM output from $compiler object... " >&6; }
6084 if ${lt_cv_sys_global_symbol_pipe+:} false; then :
6085 $as_echo_n "(cached) " >&6
6086 else
6087
6088 # These are sane defaults that work on at least a few old systems.
6089 # [They come from Ultrix. What could be older than Ultrix?!! ;)]
6090
6091 # Character class describing NM global symbol codes.
6092 symcode='[BCDEGRST]'
6093
6094 # Regexp to match symbols that can be accessed directly from C.
6095 sympat='\([_A-Za-z][_A-Za-z0-9]*\)'
6096
6097 # Define system-specific variables.
6098 case $host_os in
6099 aix*)
6100 symcode='[BCDT]'
6101 ;;
6102 cygwin* | mingw* | pw32* | cegcc*)
6103 symcode='[ABCDGISTW]'
6104 ;;
6105 hpux*)
6106 if test ia64 = "$host_cpu"; then
6107 symcode='[ABCDEGRST]'
6108 fi
6109 ;;
6110 irix* | nonstopux*)
6111 symcode='[BCDEGRST]'
6112 ;;
6113 osf*)
6114 symcode='[BCDEGQRST]'
6115 ;;
6116 solaris*)
6117 symcode='[BDRT]'
6118 ;;
6119 sco3.2v5*)
6120 symcode='[DT]'
6121 ;;
6122 sysv4.2uw2*)
6123 symcode='[DT]'
6124 ;;
6125 sysv5* | sco5v6* | unixware* | OpenUNIX*)
6126 symcode='[ABDT]'
6127 ;;
6128 sysv4)
6129 symcode='[DFNSTU]'
6130 ;;
6131 esac
6132
6133 # If we're using GNU nm, then use its standard symbol codes.
6134 case `$NM -V 2>&1` in
6135 *GNU* | *'with BFD'*)
6136 symcode='[ABCDGIRSTW]' ;;
6137 esac
6138
6139 if test "$lt_cv_nm_interface" = "MS dumpbin"; then
6140 # Gets list of data symbols to import.
6141 lt_cv_sys_global_symbol_to_import="sed -n -e 's/^I .* \(.*\)$/\1/p'"
6142 # Adjust the below global symbol transforms to fixup imported variables.
6143 lt_cdecl_hook=" -e 's/^I .* \(.*\)$/extern __declspec(dllimport) char \1;/p'"
6144 lt_c_name_hook=" -e 's/^I .* \(.*\)$/ {\"\1\", (void *) 0},/p'"
6145 lt_c_name_lib_hook="\
6146 -e 's/^I .* \(lib.*\)$/ {\"\1\", (void *) 0},/p'\
6147 -e 's/^I .* \(.*\)$/ {\"lib\1\", (void *) 0},/p'"
6148 else
6149 # Disable hooks by default.
6150 lt_cv_sys_global_symbol_to_import=
6151 lt_cdecl_hook=
6152 lt_c_name_hook=
6153 lt_c_name_lib_hook=
6154 fi
6155
6156 # Transform an extracted symbol line into a proper C declaration.
6157 # Some systems (esp. on ia64) link data and code symbols differently,
6158 # so use this general approach.
6159 lt_cv_sys_global_symbol_to_cdecl="sed -n"\
6160 $lt_cdecl_hook\
6161 " -e 's/^T .* \(.*\)$/extern int \1();/p'"\
6162 " -e 's/^$symcode$symcode* .* \(.*\)$/extern char \1;/p'"
6163
6164 # Transform an extracted symbol line into symbol name and symbol address
6165 lt_cv_sys_global_symbol_to_c_name_address="sed -n"\
6166 $lt_c_name_hook\
6167 " -e 's/^: \(.*\) .*$/ {\"\1\", (void *) 0},/p'"\
6168 " -e 's/^$symcode$symcode* .* \(.*\)$/ {\"\1\", (void *) \&\1},/p'"
6169
6170 # Transform an extracted symbol line into symbol name with lib prefix and
6171 # symbol address.
6172 lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n"\
6173 $lt_c_name_lib_hook\
6174 " -e 's/^: \(.*\) .*$/ {\"\1\", (void *) 0},/p'"\
6175 " -e 's/^$symcode$symcode* .* \(lib.*\)$/ {\"\1\", (void *) \&\1},/p'"\
6176 " -e 's/^$symcode$symcode* .* \(.*\)$/ {\"lib\1\", (void *) \&\1},/p'"
6177
6178 # Handle CRLF in mingw tool chain
6179 opt_cr=
6180 case $build_os in
6181 mingw*)
6182 opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp
6183 ;;
6184 esac
6185
6186 # Try without a prefix underscore, then with it.
6187 for ac_symprfx in "" "_"; do
6188
6189 # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol.
6190 symxfrm="\\1 $ac_symprfx\\2 \\2"
6191
6192 # Write the raw and C identifiers.
6193 if test "$lt_cv_nm_interface" = "MS dumpbin"; then
6194 # Fake it for dumpbin and say T for any non-static function,
6195 # D for any global variable and I for any imported variable.
6196 # Also find C++ and __fastcall symbols from MSVC++,
6197 # which start with @ or ?.
6198 lt_cv_sys_global_symbol_pipe="$AWK '"\
6199 " {last_section=section; section=\$ 3};"\
6200 " /^COFF SYMBOL TABLE/{for(i in hide) delete hide[i]};"\
6201 " /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\
6202 " /^ *Symbol name *: /{split(\$ 0,sn,\":\"); si=substr(sn[2],2)};"\
6203 " /^ *Type *: code/{print \"T\",si,substr(si,length(prfx))};"\
6204 " /^ *Type *: data/{print \"I\",si,substr(si,length(prfx))};"\
6205 " \$ 0!~/External *\|/{next};"\
6206 " / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\
6207 " {if(hide[section]) next};"\
6208 " {f=\"D\"}; \$ 0~/\(\).*\|/{f=\"T\"};"\
6209 " {split(\$ 0,a,/\||\r/); split(a[2],s)};"\
6210 " s[1]~/^[@?]/{print f,s[1],s[1]; next};"\
6211 " s[1]~prfx {split(s[1],t,\"@\"); print f,t[1],substr(t[1],length(prfx))}"\
6212 " ' prfx=^$ac_symprfx"
6213 else
6214 lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[ ]\($symcode$symcode*\)[ ][ ]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'"
6215 fi
6216 lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | sed '/ __gnu_lto/d'"
6217
6218 # Check to see that the pipe works correctly.
6219 pipe_works=no
6220
6221 rm -f conftest*
6222 cat > conftest.$ac_ext <<_LT_EOF
6223 #ifdef __cplusplus
6224 extern "C" {
6225 #endif
6226 char nm_test_var;
6227 void nm_test_func(void);
6228 void nm_test_func(void){}
6229 #ifdef __cplusplus
6230 }
6231 #endif
6232 int main(){nm_test_var='a';nm_test_func();return(0);}
6233 _LT_EOF
6234
6235 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
6236 (eval $ac_compile) 2>&5
6237 ac_status=$?
6238 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
6239 test $ac_status = 0; }; then
6240 # Now try to grab the symbols.
6241 nlist=conftest.nm
6242 $ECHO "$as_me:$LINENO: $NM conftest.$ac_objext | $lt_cv_sys_global_symbol_pipe > $nlist" >&5
6243 if eval "$NM" conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist 2>&5 && test -s "$nlist"; then
6244 # Try sorting and uniquifying the output.
6245 if sort "$nlist" | uniq > "$nlist"T; then
6246 mv -f "$nlist"T "$nlist"
6247 else
6248 rm -f "$nlist"T
6249 fi
6250
6251 # Make sure that we snagged all the symbols we need.
6252 if $GREP ' nm_test_var$' "$nlist" >/dev/null; then
6253 if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
6254 cat <<_LT_EOF > conftest.$ac_ext
6255 /* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests. */
6256 #if defined _WIN32 || defined __CYGWIN__ || defined _WIN32_WCE
6257 /* DATA imports from DLLs on WIN32 can't be const, because runtime
6258 relocations are performed -- see ld's documentation on pseudo-relocs. */
6259 # define LT_DLSYM_CONST
6260 #elif defined __osf__
6261 /* This system does not cope well with relocations in const data. */
6262 # define LT_DLSYM_CONST
6263 #else
6264 # define LT_DLSYM_CONST const
6265 #endif
6266
6267 #ifdef __cplusplus
6268 extern "C" {
6269 #endif
6270
6271 _LT_EOF
6272 # Now generate the symbol file.
6273 eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext'
6274
6275 cat <<_LT_EOF >> conftest.$ac_ext
6276
6277 /* The mapping between symbol names and symbols. */
6278 LT_DLSYM_CONST struct {
6279 const char *name;
6280 void *address;
6281 }
6282 lt__PROGRAM__LTX_preloaded_symbols[] =
6283 {
6284 { "@PROGRAM@", (void *) 0 },
6285 _LT_EOF
6286 $SED "s/^$symcode$symcode* .* \(.*\)$/ {\"\1\", (void *) \&\1},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext
6287 cat <<\_LT_EOF >> conftest.$ac_ext
6288 {0, (void *) 0}
6289 };
6290
6291 /* This works around a problem in FreeBSD linker */
6292 #ifdef FREEBSD_WORKAROUND
6293 static const void *lt_preloaded_setup() {
6294 return lt__PROGRAM__LTX_preloaded_symbols;
6295 }
6296 #endif
6297
6298 #ifdef __cplusplus
6299 }
6300 #endif
6301 _LT_EOF
6302 # Now try linking the two files.
6303 mv conftest.$ac_objext conftstm.$ac_objext
6304 lt_globsym_save_LIBS=$LIBS
6305 lt_globsym_save_CFLAGS=$CFLAGS
6306 LIBS=conftstm.$ac_objext
6307 CFLAGS="$CFLAGS$lt_prog_compiler_no_builtin_flag"
6308 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5
6309 (eval $ac_link) 2>&5
6310 ac_status=$?
6311 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
6312 test $ac_status = 0; } && test -s conftest$ac_exeext; then
6313 pipe_works=yes
6314 fi
6315 LIBS=$lt_globsym_save_LIBS
6316 CFLAGS=$lt_globsym_save_CFLAGS
6317 else
6318 echo "cannot find nm_test_func in $nlist" >&5
6319 fi
6320 else
6321 echo "cannot find nm_test_var in $nlist" >&5
6322 fi
6323 else
6324 echo "cannot run $lt_cv_sys_global_symbol_pipe" >&5
6325 fi
6326 else
6327 echo "$progname: failed program was:" >&5
6328 cat conftest.$ac_ext >&5
6329 fi
6330 rm -rf conftest* conftst*
6331
6332 # Do not use the global_symbol_pipe unless it works.
6333 if test yes = "$pipe_works"; then
6334 break
6335 else
6336 lt_cv_sys_global_symbol_pipe=
6337 fi
6338 done
6339
6340 fi
6341
6342 if test -z "$lt_cv_sys_global_symbol_pipe"; then
6343 lt_cv_sys_global_symbol_to_cdecl=
6344 fi
6345 if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then
6346 { $as_echo "$as_me:${as_lineno-$LINENO}: result: failed" >&5
6347 $as_echo "failed" >&6; }
6348 else
6349 { $as_echo "$as_me:${as_lineno-$LINENO}: result: ok" >&5
6350 $as_echo "ok" >&6; }
6351 fi
6352
6353 # Response file support.
6354 if test "$lt_cv_nm_interface" = "MS dumpbin"; then
6355 nm_file_list_spec='@'
6356 elif $NM --help 2>/dev/null | grep '[@]FILE' >/dev/null; then
6357 nm_file_list_spec='@'
6358 fi
6359
6360
6361
6362
6363
6364
6365
6366
6367
6368
6369
6370
6371
6372
6373
6374
6375
6376
6377
6378
6379
6380
6381
6382
6383
6384
6385
6386
6387
6388
6389
6390
6391
6392
6393
6394
6395
6396 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for sysroot" >&5
6397 $as_echo_n "checking for sysroot... " >&6; }
6398
6399 # Check whether --with-sysroot was given.
6400 if test "${with_sysroot+set}" = set; then :
6401 withval=$with_sysroot;
6402 else
6403 with_sysroot=no
6404 fi
6405
6406
6407 lt_sysroot=
6408 case $with_sysroot in #(
6409 yes)
6410 if test yes = "$GCC"; then
6411 lt_sysroot=`$CC --print-sysroot 2>/dev/null`
6412 fi
6413 ;; #(
6414 /*)
6415 lt_sysroot=`echo "$with_sysroot" | sed -e "$sed_quote_subst"`
6416 ;; #(
6417 no|'')
6418 ;; #(
6419 *)
6420 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_sysroot" >&5
6421 $as_echo "$with_sysroot" >&6; }
6422 as_fn_error $? "The sysroot must be an absolute path." "$LINENO" 5
6423 ;;
6424 esac
6425
6426 { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${lt_sysroot:-no}" >&5
6427 $as_echo "${lt_sysroot:-no}" >&6; }
6428
6429
6430
6431
6432
6433 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for a working dd" >&5
6434 $as_echo_n "checking for a working dd... " >&6; }
6435 if ${ac_cv_path_lt_DD+:} false; then :
6436 $as_echo_n "(cached) " >&6
6437 else
6438 printf 0123456789abcdef0123456789abcdef >conftest.i
6439 cat conftest.i conftest.i >conftest2.i
6440 : ${lt_DD:=$DD}
6441 if test -z "$lt_DD"; then
6442 ac_path_lt_DD_found=false
6443 # Loop through the user's path and test for each of PROGNAME-LIST
6444 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
6445 for as_dir in $PATH
6446 do
6447 IFS=$as_save_IFS
6448 test -z "$as_dir" && as_dir=.
6449 for ac_prog in dd; do
6450 for ac_exec_ext in '' $ac_executable_extensions; do
6451 ac_path_lt_DD="$as_dir/$ac_prog$ac_exec_ext"
6452 as_fn_executable_p "$ac_path_lt_DD" || continue
6453 if "$ac_path_lt_DD" bs=32 count=1 <conftest2.i >conftest.out 2>/dev/null; then
6454 cmp -s conftest.i conftest.out \
6455 && ac_cv_path_lt_DD="$ac_path_lt_DD" ac_path_lt_DD_found=:
6456 fi
6457 $ac_path_lt_DD_found && break 3
6458 done
6459 done
6460 done
6461 IFS=$as_save_IFS
6462 if test -z "$ac_cv_path_lt_DD"; then
6463 :
6464 fi
6465 else
6466 ac_cv_path_lt_DD=$lt_DD
6467 fi
6468
6469 rm -f conftest.i conftest2.i conftest.out
6470 fi
6471 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_lt_DD" >&5
6472 $as_echo "$ac_cv_path_lt_DD" >&6; }
6473
6474
6475 { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to truncate binary pipes" >&5
6476 $as_echo_n "checking how to truncate binary pipes... " >&6; }
6477 if ${lt_cv_truncate_bin+:} false; then :
6478 $as_echo_n "(cached) " >&6
6479 else
6480 printf 0123456789abcdef0123456789abcdef >conftest.i
6481 cat conftest.i conftest.i >conftest2.i
6482 lt_cv_truncate_bin=
6483 if "$ac_cv_path_lt_DD" bs=32 count=1 <conftest2.i >conftest.out 2>/dev/null; then
6484 cmp -s conftest.i conftest.out \
6485 && lt_cv_truncate_bin="$ac_cv_path_lt_DD bs=4096 count=1"
6486 fi
6487 rm -f conftest.i conftest2.i conftest.out
6488 test -z "$lt_cv_truncate_bin" && lt_cv_truncate_bin="$SED -e 4q"
6489 fi
6490 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_truncate_bin" >&5
6491 $as_echo "$lt_cv_truncate_bin" >&6; }
6492
6493
6494
6495
6496
6497
6498
6499 # Calculate cc_basename. Skip known compiler wrappers and cross-prefix.
6500 func_cc_basename ()
6501 {
6502 for cc_temp in $*""; do
6503 case $cc_temp in
6504 compile | *[\\/]compile | ccache | *[\\/]ccache ) ;;
6505 distcc | *[\\/]distcc | purify | *[\\/]purify ) ;;
6506 \-*) ;;
6507 *) break;;
6508 esac
6509 done
6510 func_cc_basename_result=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"`
6511 }
6512
6513 # Check whether --enable-libtool-lock was given.
6514 if test "${enable_libtool_lock+set}" = set; then :
6515 enableval=$enable_libtool_lock;
6516 fi
6517
6518 test no = "$enable_libtool_lock" || enable_libtool_lock=yes
6519
6520 # Some flags need to be propagated to the compiler or linker for good
6521 # libtool support.
6522 case $host in
6523 ia64-*-hpux*)
6524 # Find out what ABI is being produced by ac_compile, and set mode
6525 # options accordingly.
6526 echo 'int i;' > conftest.$ac_ext
6527 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
6528 (eval $ac_compile) 2>&5
6529 ac_status=$?
6530 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
6531 test $ac_status = 0; }; then
6532 case `/usr/bin/file conftest.$ac_objext` in
6533 *ELF-32*)
6534 HPUX_IA64_MODE=32
6535 ;;
6536 *ELF-64*)
6537 HPUX_IA64_MODE=64
6538 ;;
6539 esac
6540 fi
6541 rm -rf conftest*
6542 ;;
6543 *-*-irix6*)
6544 # Find out what ABI is being produced by ac_compile, and set linker
6545 # options accordingly.
6546 echo '#line '$LINENO' "configure"' > conftest.$ac_ext
6547 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
6548 (eval $ac_compile) 2>&5
6549 ac_status=$?
6550 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
6551 test $ac_status = 0; }; then
6552 if test yes = "$lt_cv_prog_gnu_ld"; then
6553 case `/usr/bin/file conftest.$ac_objext` in
6554 *32-bit*)
6555 LD="${LD-ld} -melf32bsmip"
6556 ;;
6557 *N32*)
6558 LD="${LD-ld} -melf32bmipn32"
6559 ;;
6560 *64-bit*)
6561 LD="${LD-ld} -melf64bmip"
6562 ;;
6563 esac
6564 else
6565 case `/usr/bin/file conftest.$ac_objext` in
6566 *32-bit*)
6567 LD="${LD-ld} -32"
6568 ;;
6569 *N32*)
6570 LD="${LD-ld} -n32"
6571 ;;
6572 *64-bit*)
6573 LD="${LD-ld} -64"
6574 ;;
6575 esac
6576 fi
6577 fi
6578 rm -rf conftest*
6579 ;;
6580
6581 mips64*-*linux*)
6582 # Find out what ABI is being produced by ac_compile, and set linker
6583 # options accordingly.
6584 echo '#line '$LINENO' "configure"' > conftest.$ac_ext
6585 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
6586 (eval $ac_compile) 2>&5
6587 ac_status=$?
6588 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
6589 test $ac_status = 0; }; then
6590 emul=elf
6591 case `/usr/bin/file conftest.$ac_objext` in
6592 *32-bit*)
6593 emul="${emul}32"
6594 ;;
6595 *64-bit*)
6596 emul="${emul}64"
6597 ;;
6598 esac
6599 case `/usr/bin/file conftest.$ac_objext` in
6600 *MSB*)
6601 emul="${emul}btsmip"
6602 ;;
6603 *LSB*)
6604 emul="${emul}ltsmip"
6605 ;;
6606 esac
6607 case `/usr/bin/file conftest.$ac_objext` in
6608 *N32*)
6609 emul="${emul}n32"
6610 ;;
6611 esac
6612 LD="${LD-ld} -m $emul"
6613 fi
6614 rm -rf conftest*
6615 ;;
6616
6617 x86_64-*kfreebsd*-gnu|x86_64-*linux*|powerpc*-*linux*| \
6618 s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
6619 # Find out what ABI is being produced by ac_compile, and set linker
6620 # options accordingly. Note that the listed cases only cover the
6621 # situations where additional linker options are needed (such as when
6622 # doing 32-bit compilation for a host where ld defaults to 64-bit, or
6623 # vice versa); the common cases where no linker options are needed do
6624 # not appear in the list.
6625 echo 'int i;' > conftest.$ac_ext
6626 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
6627 (eval $ac_compile) 2>&5
6628 ac_status=$?
6629 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
6630 test $ac_status = 0; }; then
6631 case `/usr/bin/file conftest.o` in
6632 *32-bit*)
6633 case $host in
6634 x86_64-*kfreebsd*-gnu)
6635 LD="${LD-ld} -m elf_i386_fbsd"
6636 ;;
6637 x86_64-*linux*)
6638 case `/usr/bin/file conftest.o` in
6639 *x86-64*)
6640 LD="${LD-ld} -m elf32_x86_64"
6641 ;;
6642 *)
6643 LD="${LD-ld} -m elf_i386"
6644 ;;
6645 esac
6646 ;;
6647 powerpc64le-*linux*)
6648 LD="${LD-ld} -m elf32lppclinux"
6649 ;;
6650 powerpc64-*linux*)
6651 LD="${LD-ld} -m elf32ppclinux"
6652 ;;
6653 s390x-*linux*)
6654 LD="${LD-ld} -m elf_s390"
6655 ;;
6656 sparc64-*linux*)
6657 LD="${LD-ld} -m elf32_sparc"
6658 ;;
6659 esac
6660 ;;
6661 *64-bit*)
6662 case $host in
6663 x86_64-*kfreebsd*-gnu)
6664 LD="${LD-ld} -m elf_x86_64_fbsd"
6665 ;;
6666 x86_64-*linux*)
6667 LD="${LD-ld} -m elf_x86_64"
6668 ;;
6669 powerpcle-*linux*)
6670 LD="${LD-ld} -m elf64lppc"
6671 ;;
6672 powerpc-*linux*)
6673 LD="${LD-ld} -m elf64ppc"
6674 ;;
6675 s390*-*linux*|s390*-*tpf*)
6676 LD="${LD-ld} -m elf64_s390"
6677 ;;
6678 sparc*-*linux*)
6679 LD="${LD-ld} -m elf64_sparc"
6680 ;;
6681 esac
6682 ;;
6683 esac
6684 fi
6685 rm -rf conftest*
6686 ;;
6687
6688 *-*-sco3.2v5*)
6689 # On SCO OpenServer 5, we need -belf to get full-featured binaries.
6690 SAVE_CFLAGS=$CFLAGS
6691 CFLAGS="$CFLAGS -belf"
6692 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler needs -belf" >&5
6693 $as_echo_n "checking whether the C compiler needs -belf... " >&6; }
6694 if ${lt_cv_cc_needs_belf+:} false; then :
6695 $as_echo_n "(cached) " >&6
6696 else
6697 ac_ext=c
6698 ac_cpp='$CPP $CPPFLAGS'
6699 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
6700 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
6701 ac_compiler_gnu=$ac_cv_c_compiler_gnu
6702
6703 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
6704 /* end confdefs.h. */
6705
6706 int
6707 main ()
6708 {
6709
6710 ;
6711 return 0;
6712 }
6713 _ACEOF
6714 if ac_fn_c_try_link "$LINENO"; then :
6715 lt_cv_cc_needs_belf=yes
6716 else
6717 lt_cv_cc_needs_belf=no
6718 fi
6719 rm -f core conftest.err conftest.$ac_objext \
6720 conftest$ac_exeext conftest.$ac_ext
6721 ac_ext=c
6722 ac_cpp='$CPP $CPPFLAGS'
6723 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
6724 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
6725 ac_compiler_gnu=$ac_cv_c_compiler_gnu
6726
6727 fi
6728 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_cc_needs_belf" >&5
6729 $as_echo "$lt_cv_cc_needs_belf" >&6; }
6730 if test yes != "$lt_cv_cc_needs_belf"; then
6731 # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
6732 CFLAGS=$SAVE_CFLAGS
6733 fi
6734 ;;
6735 *-*solaris*)
6736 # Find out what ABI is being produced by ac_compile, and set linker
6737 # options accordingly.
6738 echo 'int i;' > conftest.$ac_ext
6739 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
6740 (eval $ac_compile) 2>&5
6741 ac_status=$?
6742 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
6743 test $ac_status = 0; }; then
6744 case `/usr/bin/file conftest.o` in
6745 *64-bit*)
6746 case $lt_cv_prog_gnu_ld in
6747 yes*)
6748 case $host in
6749 i?86-*-solaris*|x86_64-*-solaris*)
6750 LD="${LD-ld} -m elf_x86_64"
6751 ;;
6752 sparc*-*-solaris*)
6753 LD="${LD-ld} -m elf64_sparc"
6754 ;;
6755 esac
6756 # GNU ld 2.21 introduced _sol2 emulations. Use them if available.
6757 if ${LD-ld} -V | grep _sol2 >/dev/null 2>&1; then
6758 LD=${LD-ld}_sol2
6759 fi
6760 ;;
6761 *)
6762 if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then
6763 LD="${LD-ld} -64"
6764 fi
6765 ;;
6766 esac
6767 ;;
6768 esac
6769 fi
6770 rm -rf conftest*
6771 ;;
6772 esac
6773
6774 need_locks=$enable_libtool_lock
6775
6776 if test -n "$ac_tool_prefix"; then
6777 # Extract the first word of "${ac_tool_prefix}mt", so it can be a program name with args.
6778 set dummy ${ac_tool_prefix}mt; ac_word=$2
6779 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
6780 $as_echo_n "checking for $ac_word... " >&6; }
6781 if ${ac_cv_prog_MANIFEST_TOOL+:} false; then :
6782 $as_echo_n "(cached) " >&6
6783 else
6784 if test -n "$MANIFEST_TOOL"; then
6785 ac_cv_prog_MANIFEST_TOOL="$MANIFEST_TOOL" # Let the user override the test.
6786 else
6787 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
6788 for as_dir in $PATH
6789 do
6790 IFS=$as_save_IFS
6791 test -z "$as_dir" && as_dir=.
6792 for ac_exec_ext in '' $ac_executable_extensions; do
6793 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
6794 ac_cv_prog_MANIFEST_TOOL="${ac_tool_prefix}mt"
6795 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
6796 break 2
6797 fi
6798 done
6799 done
6800 IFS=$as_save_IFS
6801
6802 fi
6803 fi
6804 MANIFEST_TOOL=$ac_cv_prog_MANIFEST_TOOL
6805 if test -n "$MANIFEST_TOOL"; then
6806 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MANIFEST_TOOL" >&5
6807 $as_echo "$MANIFEST_TOOL" >&6; }
6808 else
6809 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
6810 $as_echo "no" >&6; }
6811 fi
6812
6813
6814 fi
6815 if test -z "$ac_cv_prog_MANIFEST_TOOL"; then
6816 ac_ct_MANIFEST_TOOL=$MANIFEST_TOOL
6817 # Extract the first word of "mt", so it can be a program name with args.
6818 set dummy mt; ac_word=$2
6819 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
6820 $as_echo_n "checking for $ac_word... " >&6; }
6821 if ${ac_cv_prog_ac_ct_MANIFEST_TOOL+:} false; then :
6822 $as_echo_n "(cached) " >&6
6823 else
6824 if test -n "$ac_ct_MANIFEST_TOOL"; then
6825 ac_cv_prog_ac_ct_MANIFEST_TOOL="$ac_ct_MANIFEST_TOOL" # Let the user override the test.
6826 else
6827 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
6828 for as_dir in $PATH
6829 do
6830 IFS=$as_save_IFS
6831 test -z "$as_dir" && as_dir=.
6832 for ac_exec_ext in '' $ac_executable_extensions; do
6833 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
6834 ac_cv_prog_ac_ct_MANIFEST_TOOL="mt"
6835 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
6836 break 2
6837 fi
6838 done
6839 done
6840 IFS=$as_save_IFS
6841
6842 fi
6843 fi
6844 ac_ct_MANIFEST_TOOL=$ac_cv_prog_ac_ct_MANIFEST_TOOL
6845 if test -n "$ac_ct_MANIFEST_TOOL"; then
6846 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_MANIFEST_TOOL" >&5
6847 $as_echo "$ac_ct_MANIFEST_TOOL" >&6; }
6848 else
6849 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
6850 $as_echo "no" >&6; }
6851 fi
6852
6853 if test "x$ac_ct_MANIFEST_TOOL" = x; then
6854 MANIFEST_TOOL=":"
6855 else
6856 case $cross_compiling:$ac_tool_warned in
6857 yes:)
6858 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
6859 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
6860 ac_tool_warned=yes ;;
6861 esac
6862 MANIFEST_TOOL=$ac_ct_MANIFEST_TOOL
6863 fi
6864 else
6865 MANIFEST_TOOL="$ac_cv_prog_MANIFEST_TOOL"
6866 fi
6867
6868 test -z "$MANIFEST_TOOL" && MANIFEST_TOOL=mt
6869 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $MANIFEST_TOOL is a manifest tool" >&5
6870 $as_echo_n "checking if $MANIFEST_TOOL is a manifest tool... " >&6; }
6871 if ${lt_cv_path_mainfest_tool+:} false; then :
6872 $as_echo_n "(cached) " >&6
6873 else
6874 lt_cv_path_mainfest_tool=no
6875 echo "$as_me:$LINENO: $MANIFEST_TOOL '-?'" >&5
6876 $MANIFEST_TOOL '-?' 2>conftest.err > conftest.out
6877 cat conftest.err >&5
6878 if $GREP 'Manifest Tool' conftest.out > /dev/null; then
6879 lt_cv_path_mainfest_tool=yes
6880 fi
6881 rm -f conftest*
6882 fi
6883 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_mainfest_tool" >&5
6884 $as_echo "$lt_cv_path_mainfest_tool" >&6; }
6885 if test yes != "$lt_cv_path_mainfest_tool"; then
6886 MANIFEST_TOOL=:
6887 fi
6888
6889
6890
6891
6892
6893
6894 case $host_os in
6895 rhapsody* | darwin*)
6896 if test -n "$ac_tool_prefix"; then
6897 # Extract the first word of "${ac_tool_prefix}dsymutil", so it can be a program name with args.
6898 set dummy ${ac_tool_prefix}dsymutil; ac_word=$2
6899 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
6900 $as_echo_n "checking for $ac_word... " >&6; }
6901 if ${ac_cv_prog_DSYMUTIL+:} false; then :
6902 $as_echo_n "(cached) " >&6
6903 else
6904 if test -n "$DSYMUTIL"; then
6905 ac_cv_prog_DSYMUTIL="$DSYMUTIL" # Let the user override the test.
6906 else
6907 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
6908 for as_dir in $PATH
6909 do
6910 IFS=$as_save_IFS
6911 test -z "$as_dir" && as_dir=.
6912 for ac_exec_ext in '' $ac_executable_extensions; do
6913 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
6914 ac_cv_prog_DSYMUTIL="${ac_tool_prefix}dsymutil"
6915 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
6916 break 2
6917 fi
6918 done
6919 done
6920 IFS=$as_save_IFS
6921
6922 fi
6923 fi
6924 DSYMUTIL=$ac_cv_prog_DSYMUTIL
6925 if test -n "$DSYMUTIL"; then
6926 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DSYMUTIL" >&5
6927 $as_echo "$DSYMUTIL" >&6; }
6928 else
6929 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
6930 $as_echo "no" >&6; }
6931 fi
6932
6933
6934 fi
6935 if test -z "$ac_cv_prog_DSYMUTIL"; then
6936 ac_ct_DSYMUTIL=$DSYMUTIL
6937 # Extract the first word of "dsymutil", so it can be a program name with args.
6938 set dummy dsymutil; ac_word=$2
6939 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
6940 $as_echo_n "checking for $ac_word... " >&6; }
6941 if ${ac_cv_prog_ac_ct_DSYMUTIL+:} false; then :
6942 $as_echo_n "(cached) " >&6
6943 else
6944 if test -n "$ac_ct_DSYMUTIL"; then
6945 ac_cv_prog_ac_ct_DSYMUTIL="$ac_ct_DSYMUTIL" # Let the user override the test.
6946 else
6947 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
6948 for as_dir in $PATH
6949 do
6950 IFS=$as_save_IFS
6951 test -z "$as_dir" && as_dir=.
6952 for ac_exec_ext in '' $ac_executable_extensions; do
6953 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
6954 ac_cv_prog_ac_ct_DSYMUTIL="dsymutil"
6955 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
6956 break 2
6957 fi
6958 done
6959 done
6960 IFS=$as_save_IFS
6961
6962 fi
6963 fi
6964 ac_ct_DSYMUTIL=$ac_cv_prog_ac_ct_DSYMUTIL
6965 if test -n "$ac_ct_DSYMUTIL"; then
6966 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DSYMUTIL" >&5
6967 $as_echo "$ac_ct_DSYMUTIL" >&6; }
6968 else
6969 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
6970 $as_echo "no" >&6; }
6971 fi
6972
6973 if test "x$ac_ct_DSYMUTIL" = x; then
6974 DSYMUTIL=":"
6975 else
6976 case $cross_compiling:$ac_tool_warned in
6977 yes:)
6978 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
6979 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
6980 ac_tool_warned=yes ;;
6981 esac
6982 DSYMUTIL=$ac_ct_DSYMUTIL
6983 fi
6984 else
6985 DSYMUTIL="$ac_cv_prog_DSYMUTIL"
6986 fi
6987
6988 if test -n "$ac_tool_prefix"; then
6989 # Extract the first word of "${ac_tool_prefix}nmedit", so it can be a program name with args.
6990 set dummy ${ac_tool_prefix}nmedit; ac_word=$2
6991 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
6992 $as_echo_n "checking for $ac_word... " >&6; }
6993 if ${ac_cv_prog_NMEDIT+:} false; then :
6994 $as_echo_n "(cached) " >&6
6995 else
6996 if test -n "$NMEDIT"; then
6997 ac_cv_prog_NMEDIT="$NMEDIT" # Let the user override the test.
6998 else
6999 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
7000 for as_dir in $PATH
7001 do
7002 IFS=$as_save_IFS
7003 test -z "$as_dir" && as_dir=.
7004 for ac_exec_ext in '' $ac_executable_extensions; do
7005 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
7006 ac_cv_prog_NMEDIT="${ac_tool_prefix}nmedit"
7007 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
7008 break 2
7009 fi
7010 done
7011 done
7012 IFS=$as_save_IFS
7013
7014 fi
7015 fi
7016 NMEDIT=$ac_cv_prog_NMEDIT
7017 if test -n "$NMEDIT"; then
7018 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $NMEDIT" >&5
7019 $as_echo "$NMEDIT" >&6; }
7020 else
7021 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
7022 $as_echo "no" >&6; }
7023 fi
7024
7025
7026 fi
7027 if test -z "$ac_cv_prog_NMEDIT"; then
7028 ac_ct_NMEDIT=$NMEDIT
7029 # Extract the first word of "nmedit", so it can be a program name with args.
7030 set dummy nmedit; ac_word=$2
7031 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
7032 $as_echo_n "checking for $ac_word... " >&6; }
7033 if ${ac_cv_prog_ac_ct_NMEDIT+:} false; then :
7034 $as_echo_n "(cached) " >&6
7035 else
7036 if test -n "$ac_ct_NMEDIT"; then
7037 ac_cv_prog_ac_ct_NMEDIT="$ac_ct_NMEDIT" # Let the user override the test.
7038 else
7039 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
7040 for as_dir in $PATH
7041 do
7042 IFS=$as_save_IFS
7043 test -z "$as_dir" && as_dir=.
7044 for ac_exec_ext in '' $ac_executable_extensions; do
7045 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
7046 ac_cv_prog_ac_ct_NMEDIT="nmedit"
7047 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
7048 break 2
7049 fi
7050 done
7051 done
7052 IFS=$as_save_IFS
7053
7054 fi
7055 fi
7056 ac_ct_NMEDIT=$ac_cv_prog_ac_ct_NMEDIT
7057 if test -n "$ac_ct_NMEDIT"; then
7058 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_NMEDIT" >&5
7059 $as_echo "$ac_ct_NMEDIT" >&6; }
7060 else
7061 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
7062 $as_echo "no" >&6; }
7063 fi
7064
7065 if test "x$ac_ct_NMEDIT" = x; then
7066 NMEDIT=":"
7067 else
7068 case $cross_compiling:$ac_tool_warned in
7069 yes:)
7070 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
7071 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
7072 ac_tool_warned=yes ;;
7073 esac
7074 NMEDIT=$ac_ct_NMEDIT
7075 fi
7076 else
7077 NMEDIT="$ac_cv_prog_NMEDIT"
7078 fi
7079
7080 if test -n "$ac_tool_prefix"; then
7081 # Extract the first word of "${ac_tool_prefix}lipo", so it can be a program name with args.
7082 set dummy ${ac_tool_prefix}lipo; ac_word=$2
7083 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
7084 $as_echo_n "checking for $ac_word... " >&6; }
7085 if ${ac_cv_prog_LIPO+:} false; then :
7086 $as_echo_n "(cached) " >&6
7087 else
7088 if test -n "$LIPO"; then
7089 ac_cv_prog_LIPO="$LIPO" # Let the user override the test.
7090 else
7091 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
7092 for as_dir in $PATH
7093 do
7094 IFS=$as_save_IFS
7095 test -z "$as_dir" && as_dir=.
7096 for ac_exec_ext in '' $ac_executable_extensions; do
7097 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
7098 ac_cv_prog_LIPO="${ac_tool_prefix}lipo"
7099 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
7100 break 2
7101 fi
7102 done
7103 done
7104 IFS=$as_save_IFS
7105
7106 fi
7107 fi
7108 LIPO=$ac_cv_prog_LIPO
7109 if test -n "$LIPO"; then
7110 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIPO" >&5
7111 $as_echo "$LIPO" >&6; }
7112 else
7113 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
7114 $as_echo "no" >&6; }
7115 fi
7116
7117
7118 fi
7119 if test -z "$ac_cv_prog_LIPO"; then
7120 ac_ct_LIPO=$LIPO
7121 # Extract the first word of "lipo", so it can be a program name with args.
7122 set dummy lipo; ac_word=$2
7123 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
7124 $as_echo_n "checking for $ac_word... " >&6; }
7125 if ${ac_cv_prog_ac_ct_LIPO+:} false; then :
7126 $as_echo_n "(cached) " >&6
7127 else
7128 if test -n "$ac_ct_LIPO"; then
7129 ac_cv_prog_ac_ct_LIPO="$ac_ct_LIPO" # Let the user override the test.
7130 else
7131 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
7132 for as_dir in $PATH
7133 do
7134 IFS=$as_save_IFS
7135 test -z "$as_dir" && as_dir=.
7136 for ac_exec_ext in '' $ac_executable_extensions; do
7137 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
7138 ac_cv_prog_ac_ct_LIPO="lipo"
7139 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
7140 break 2
7141 fi
7142 done
7143 done
7144 IFS=$as_save_IFS
7145
7146 fi
7147 fi
7148 ac_ct_LIPO=$ac_cv_prog_ac_ct_LIPO
7149 if test -n "$ac_ct_LIPO"; then
7150 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_LIPO" >&5
7151 $as_echo "$ac_ct_LIPO" >&6; }
7152 else
7153 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
7154 $as_echo "no" >&6; }
7155 fi
7156
7157 if test "x$ac_ct_LIPO" = x; then
7158 LIPO=":"
7159 else
7160 case $cross_compiling:$ac_tool_warned in
7161 yes:)
7162 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
7163 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
7164 ac_tool_warned=yes ;;
7165 esac
7166 LIPO=$ac_ct_LIPO
7167 fi
7168 else
7169 LIPO="$ac_cv_prog_LIPO"
7170 fi
7171
7172 if test -n "$ac_tool_prefix"; then
7173 # Extract the first word of "${ac_tool_prefix}otool", so it can be a program name with args.
7174 set dummy ${ac_tool_prefix}otool; ac_word=$2
7175 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
7176 $as_echo_n "checking for $ac_word... " >&6; }
7177 if ${ac_cv_prog_OTOOL+:} false; then :
7178 $as_echo_n "(cached) " >&6
7179 else
7180 if test -n "$OTOOL"; then
7181 ac_cv_prog_OTOOL="$OTOOL" # Let the user override the test.
7182 else
7183 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
7184 for as_dir in $PATH
7185 do
7186 IFS=$as_save_IFS
7187 test -z "$as_dir" && as_dir=.
7188 for ac_exec_ext in '' $ac_executable_extensions; do
7189 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
7190 ac_cv_prog_OTOOL="${ac_tool_prefix}otool"
7191 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
7192 break 2
7193 fi
7194 done
7195 done
7196 IFS=$as_save_IFS
7197
7198 fi
7199 fi
7200 OTOOL=$ac_cv_prog_OTOOL
7201 if test -n "$OTOOL"; then
7202 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OTOOL" >&5
7203 $as_echo "$OTOOL" >&6; }
7204 else
7205 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
7206 $as_echo "no" >&6; }
7207 fi
7208
7209
7210 fi
7211 if test -z "$ac_cv_prog_OTOOL"; then
7212 ac_ct_OTOOL=$OTOOL
7213 # Extract the first word of "otool", so it can be a program name with args.
7214 set dummy otool; ac_word=$2
7215 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
7216 $as_echo_n "checking for $ac_word... " >&6; }
7217 if ${ac_cv_prog_ac_ct_OTOOL+:} false; then :
7218 $as_echo_n "(cached) " >&6
7219 else
7220 if test -n "$ac_ct_OTOOL"; then
7221 ac_cv_prog_ac_ct_OTOOL="$ac_ct_OTOOL" # Let the user override the test.
7222 else
7223 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
7224 for as_dir in $PATH
7225 do
7226 IFS=$as_save_IFS
7227 test -z "$as_dir" && as_dir=.
7228 for ac_exec_ext in '' $ac_executable_extensions; do
7229 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
7230 ac_cv_prog_ac_ct_OTOOL="otool"
7231 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
7232 break 2
7233 fi
7234 done
7235 done
7236 IFS=$as_save_IFS
7237
7238 fi
7239 fi
7240 ac_ct_OTOOL=$ac_cv_prog_ac_ct_OTOOL
7241 if test -n "$ac_ct_OTOOL"; then
7242 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OTOOL" >&5
7243 $as_echo "$ac_ct_OTOOL" >&6; }
7244 else
7245 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
7246 $as_echo "no" >&6; }
7247 fi
7248
7249 if test "x$ac_ct_OTOOL" = x; then
7250 OTOOL=":"
7251 else
7252 case $cross_compiling:$ac_tool_warned in
7253 yes:)
7254 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
7255 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
7256 ac_tool_warned=yes ;;
7257 esac
7258 OTOOL=$ac_ct_OTOOL
7259 fi
7260 else
7261 OTOOL="$ac_cv_prog_OTOOL"
7262 fi
7263
7264 if test -n "$ac_tool_prefix"; then
7265 # Extract the first word of "${ac_tool_prefix}otool64", so it can be a program name with args.
7266 set dummy ${ac_tool_prefix}otool64; ac_word=$2
7267 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
7268 $as_echo_n "checking for $ac_word... " >&6; }
7269 if ${ac_cv_prog_OTOOL64+:} false; then :
7270 $as_echo_n "(cached) " >&6
7271 else
7272 if test -n "$OTOOL64"; then
7273 ac_cv_prog_OTOOL64="$OTOOL64" # Let the user override the test.
7274 else
7275 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
7276 for as_dir in $PATH
7277 do
7278 IFS=$as_save_IFS
7279 test -z "$as_dir" && as_dir=.
7280 for ac_exec_ext in '' $ac_executable_extensions; do
7281 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
7282 ac_cv_prog_OTOOL64="${ac_tool_prefix}otool64"
7283 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
7284 break 2
7285 fi
7286 done
7287 done
7288 IFS=$as_save_IFS
7289
7290 fi
7291 fi
7292 OTOOL64=$ac_cv_prog_OTOOL64
7293 if test -n "$OTOOL64"; then
7294 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OTOOL64" >&5
7295 $as_echo "$OTOOL64" >&6; }
7296 else
7297 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
7298 $as_echo "no" >&6; }
7299 fi
7300
7301
7302 fi
7303 if test -z "$ac_cv_prog_OTOOL64"; then
7304 ac_ct_OTOOL64=$OTOOL64
7305 # Extract the first word of "otool64", so it can be a program name with args.
7306 set dummy otool64; ac_word=$2
7307 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
7308 $as_echo_n "checking for $ac_word... " >&6; }
7309 if ${ac_cv_prog_ac_ct_OTOOL64+:} false; then :
7310 $as_echo_n "(cached) " >&6
7311 else
7312 if test -n "$ac_ct_OTOOL64"; then
7313 ac_cv_prog_ac_ct_OTOOL64="$ac_ct_OTOOL64" # Let the user override the test.
7314 else
7315 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
7316 for as_dir in $PATH
7317 do
7318 IFS=$as_save_IFS
7319 test -z "$as_dir" && as_dir=.
7320 for ac_exec_ext in '' $ac_executable_extensions; do
7321 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
7322 ac_cv_prog_ac_ct_OTOOL64="otool64"
7323 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
7324 break 2
7325 fi
7326 done
7327 done
7328 IFS=$as_save_IFS
7329
7330 fi
7331 fi
7332 ac_ct_OTOOL64=$ac_cv_prog_ac_ct_OTOOL64
7333 if test -n "$ac_ct_OTOOL64"; then
7334 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OTOOL64" >&5
7335 $as_echo "$ac_ct_OTOOL64" >&6; }
7336 else
7337 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
7338 $as_echo "no" >&6; }
7339 fi
7340
7341 if test "x$ac_ct_OTOOL64" = x; then
7342 OTOOL64=":"
7343 else
7344 case $cross_compiling:$ac_tool_warned in
7345 yes:)
7346 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
7347 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
7348 ac_tool_warned=yes ;;
7349 esac
7350 OTOOL64=$ac_ct_OTOOL64
7351 fi
7352 else
7353 OTOOL64="$ac_cv_prog_OTOOL64"
7354 fi
7355
7356
7357
7358
7359
7360
7361
7362
7363
7364
7365
7366
7367
7368
7369
7370
7371
7372
7373
7374
7375
7376
7377
7378
7379
7380
7381
7382 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -single_module linker flag" >&5
7383 $as_echo_n "checking for -single_module linker flag... " >&6; }
7384 if ${lt_cv_apple_cc_single_mod+:} false; then :
7385 $as_echo_n "(cached) " >&6
7386 else
7387 lt_cv_apple_cc_single_mod=no
7388 if test -z "$LT_MULTI_MODULE"; then
7389 # By default we will add the -single_module flag. You can override
7390 # by either setting the environment variable LT_MULTI_MODULE
7391 # non-empty at configure time, or by adding -multi_module to the
7392 # link flags.
7393 rm -rf libconftest.dylib*
7394 echo "int foo(void){return 1;}" > conftest.c
7395 echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
7396 -dynamiclib -Wl,-single_module conftest.c" >&5
7397 $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
7398 -dynamiclib -Wl,-single_module conftest.c 2>conftest.err
7399 _lt_result=$?
7400 # If there is a non-empty error log, and "single_module"
7401 # appears in it, assume the flag caused a linker warning
7402 if test -s conftest.err && $GREP single_module conftest.err; then
7403 cat conftest.err >&5
7404 # Otherwise, if the output was created with a 0 exit code from
7405 # the compiler, it worked.
7406 elif test -f libconftest.dylib && test 0 = "$_lt_result"; then
7407 lt_cv_apple_cc_single_mod=yes
7408 else
7409 cat conftest.err >&5
7410 fi
7411 rm -rf libconftest.dylib*
7412 rm -f conftest.*
7413 fi
7414 fi
7415 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_apple_cc_single_mod" >&5
7416 $as_echo "$lt_cv_apple_cc_single_mod" >&6; }
7417
7418 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -exported_symbols_list linker flag" >&5
7419 $as_echo_n "checking for -exported_symbols_list linker flag... " >&6; }
7420 if ${lt_cv_ld_exported_symbols_list+:} false; then :
7421 $as_echo_n "(cached) " >&6
7422 else
7423 lt_cv_ld_exported_symbols_list=no
7424 save_LDFLAGS=$LDFLAGS
7425 echo "_main" > conftest.sym
7426 LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym"
7427 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
7428 /* end confdefs.h. */
7429
7430 int
7431 main ()
7432 {
7433
7434 ;
7435 return 0;
7436 }
7437 _ACEOF
7438 if ac_fn_c_try_link "$LINENO"; then :
7439 lt_cv_ld_exported_symbols_list=yes
7440 else
7441 lt_cv_ld_exported_symbols_list=no
7442 fi
7443 rm -f core conftest.err conftest.$ac_objext \
7444 conftest$ac_exeext conftest.$ac_ext
7445 LDFLAGS=$save_LDFLAGS
7446
7447 fi
7448 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_exported_symbols_list" >&5
7449 $as_echo "$lt_cv_ld_exported_symbols_list" >&6; }
7450
7451 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -force_load linker flag" >&5
7452 $as_echo_n "checking for -force_load linker flag... " >&6; }
7453 if ${lt_cv_ld_force_load+:} false; then :
7454 $as_echo_n "(cached) " >&6
7455 else
7456 lt_cv_ld_force_load=no
7457 cat > conftest.c << _LT_EOF
7458 int forced_loaded() { return 2;}
7459 _LT_EOF
7460 echo "$LTCC $LTCFLAGS -c -o conftest.o conftest.c" >&5
7461 $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&5
7462 echo "$AR cr libconftest.a conftest.o" >&5
7463 $AR cr libconftest.a conftest.o 2>&5
7464 echo "$RANLIB libconftest.a" >&5
7465 $RANLIB libconftest.a 2>&5
7466 cat > conftest.c << _LT_EOF
7467 int main() { return 0;}
7468 _LT_EOF
7469 echo "$LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a" >&5
7470 $LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a 2>conftest.err
7471 _lt_result=$?
7472 if test -s conftest.err && $GREP force_load conftest.err; then
7473 cat conftest.err >&5
7474 elif test -f conftest && test 0 = "$_lt_result" && $GREP forced_load conftest >/dev/null 2>&1; then
7475 lt_cv_ld_force_load=yes
7476 else
7477 cat conftest.err >&5
7478 fi
7479 rm -f conftest.err libconftest.a conftest conftest.c
7480 rm -rf conftest.dSYM
7481
7482 fi
7483 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_force_load" >&5
7484 $as_echo "$lt_cv_ld_force_load" >&6; }
7485 case $host_os in
7486 rhapsody* | darwin1.[012])
7487 _lt_dar_allow_undefined='$wl-undefined ${wl}suppress' ;;
7488 darwin1.*)
7489 _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;;
7490 darwin*) # darwin 5.x on
7491 # if running on 10.5 or later, the deployment target defaults
7492 # to the OS version, if on x86, and 10.4, the deployment
7493 # target defaults to 10.4. Don't you love it?
7494 case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
7495 10.0,*86*-darwin8*|10.0,*-darwin[91]*)
7496 _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;;
7497 10.[012][,.]*)
7498 _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;;
7499 10.*)
7500 _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;;
7501 esac
7502 ;;
7503 esac
7504 if test yes = "$lt_cv_apple_cc_single_mod"; then
7505 _lt_dar_single_mod='$single_module'
7506 fi
7507 if test yes = "$lt_cv_ld_exported_symbols_list"; then
7508 _lt_dar_export_syms=' $wl-exported_symbols_list,$output_objdir/$libname-symbols.expsym'
7509 else
7510 _lt_dar_export_syms='~$NMEDIT -s $output_objdir/$libname-symbols.expsym $lib'
7511 fi
7512 if test : != "$DSYMUTIL" && test no = "$lt_cv_ld_force_load"; then
7513 _lt_dsymutil='~$DSYMUTIL $lib || :'
7514 else
7515 _lt_dsymutil=
7516 fi
7517 ;;
7518 esac
7519
7520 # func_munge_path_list VARIABLE PATH
7521 # -----------------------------------
7522 # VARIABLE is name of variable containing _space_ separated list of
7523 # directories to be munged by the contents of PATH, which is string
7524 # having a format:
7525 # "DIR[:DIR]:"
7526 # string "DIR[ DIR]" will be prepended to VARIABLE
7527 # ":DIR[:DIR]"
7528 # string "DIR[ DIR]" will be appended to VARIABLE
7529 # "DIRP[:DIRP]::[DIRA:]DIRA"
7530 # string "DIRP[ DIRP]" will be prepended to VARIABLE and string
7531 # "DIRA[ DIRA]" will be appended to VARIABLE
7532 # "DIR[:DIR]"
7533 # VARIABLE will be replaced by "DIR[ DIR]"
7534 func_munge_path_list ()
7535 {
7536 case x$2 in
7537 x)
7538 ;;
7539 *:)
7540 eval $1=\"`$ECHO $2 | $SED 's/:/ /g'` \$$1\"
7541 ;;
7542 x:*)
7543 eval $1=\"\$$1 `$ECHO $2 | $SED 's/:/ /g'`\"
7544 ;;
7545 *::*)
7546 eval $1=\"\$$1\ `$ECHO $2 | $SED -e 's/.*:://' -e 's/:/ /g'`\"
7547 eval $1=\"`$ECHO $2 | $SED -e 's/::.*//' -e 's/:/ /g'`\ \$$1\"
7548 ;;
7549 *)
7550 eval $1=\"`$ECHO $2 | $SED 's/:/ /g'`\"
7551 ;;
7552 esac
7553 }
7554
7555 ac_ext=c
7556 ac_cpp='$CPP $CPPFLAGS'
7557 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
7558 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
7559 ac_compiler_gnu=$ac_cv_c_compiler_gnu
7560 { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&5
7561 $as_echo_n "checking how to run the C preprocessor... " >&6; }
7562 # On Suns, sometimes $CPP names a directory.
7563 if test -n "$CPP" && test -d "$CPP"; then
7564 CPP=
7565 fi
7566 if test -z "$CPP"; then
7567 if ${ac_cv_prog_CPP+:} false; then :
7568 $as_echo_n "(cached) " >&6
7569 else
7570 # Double quotes because CPP needs to be expanded
7571 for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp"
7572 do
7573 ac_preproc_ok=false
7574 for ac_c_preproc_warn_flag in '' yes
7575 do
7576 # Use a header file that comes with gcc, so configuring glibc
7577 # with a fresh cross-compiler works.
7578 # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
7579 # <limits.h> exists even on freestanding compilers.
7580 # On the NeXT, cc -E runs the code through the compiler's parser,
7581 # not just through cpp. "Syntax error" is here to catch this case.
7582 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
7583 /* end confdefs.h. */
7584 #ifdef __STDC__
7585 # include <limits.h>
7586 #else
7587 # include <assert.h>
7588 #endif
7589 Syntax error
7590 _ACEOF
7591 if ac_fn_c_try_cpp "$LINENO"; then :
7592
7593 else
7594 # Broken: fails on valid input.
7595 continue
7596 fi
7597 rm -f conftest.err conftest.i conftest.$ac_ext
7598
7599 # OK, works on sane cases. Now check whether nonexistent headers
7600 # can be detected and how.
7601 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
7602 /* end confdefs.h. */
7603 #include <ac_nonexistent.h>
7604 _ACEOF
7605 if ac_fn_c_try_cpp "$LINENO"; then :
7606 # Broken: success on invalid input.
7607 continue
7608 else
7609 # Passes both tests.
7610 ac_preproc_ok=:
7611 break
7612 fi
7613 rm -f conftest.err conftest.i conftest.$ac_ext
7614
7615 done
7616 # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
7617 rm -f conftest.i conftest.err conftest.$ac_ext
7618 if $ac_preproc_ok; then :
7619 break
7620 fi
7621
7622 done
7623 ac_cv_prog_CPP=$CPP
7624
7625 fi
7626 CPP=$ac_cv_prog_CPP
7627 else
7628 ac_cv_prog_CPP=$CPP
7629 fi
7630 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CPP" >&5
7631 $as_echo "$CPP" >&6; }
7632 ac_preproc_ok=false
7633 for ac_c_preproc_warn_flag in '' yes
7634 do
7635 # Use a header file that comes with gcc, so configuring glibc
7636 # with a fresh cross-compiler works.
7637 # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
7638 # <limits.h> exists even on freestanding compilers.
7639 # On the NeXT, cc -E runs the code through the compiler's parser,
7640 # not just through cpp. "Syntax error" is here to catch this case.
7641 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
7642 /* end confdefs.h. */
7643 #ifdef __STDC__
7644 # include <limits.h>
7645 #else
7646 # include <assert.h>
7647 #endif
7648 Syntax error
7649 _ACEOF
7650 if ac_fn_c_try_cpp "$LINENO"; then :
7651
7652 else
7653 # Broken: fails on valid input.
7654 continue
7655 fi
7656 rm -f conftest.err conftest.i conftest.$ac_ext
7657
7658 # OK, works on sane cases. Now check whether nonexistent headers
7659 # can be detected and how.
7660 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
7661 /* end confdefs.h. */
7662 #include <ac_nonexistent.h>
7663 _ACEOF
7664 if ac_fn_c_try_cpp "$LINENO"; then :
7665 # Broken: success on invalid input.
7666 continue
7667 else
7668 # Passes both tests.
7669 ac_preproc_ok=:
7670 break
7671 fi
7672 rm -f conftest.err conftest.i conftest.$ac_ext
7673
7674 done
7675 # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
7676 rm -f conftest.i conftest.err conftest.$ac_ext
7677 if $ac_preproc_ok; then :
7678
7679 else
7680 { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
7681 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
7682 as_fn_error $? "C preprocessor \"$CPP\" fails sanity check
7683 See \`config.log' for more details" "$LINENO" 5; }
7684 fi
7685
7686 ac_ext=c
7687 ac_cpp='$CPP $CPPFLAGS'
7688 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
7689 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
7690 ac_compiler_gnu=$ac_cv_c_compiler_gnu
7691
7692
7693 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5
7694 $as_echo_n "checking for ANSI C header files... " >&6; }
7695 if ${ac_cv_header_stdc+:} false; then :
7696 $as_echo_n "(cached) " >&6
7697 else
7698 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
7699 /* end confdefs.h. */
7700 #include <stdlib.h>
7701 #include <stdarg.h>
7702 #include <string.h>
7703 #include <float.h>
7704
7705 int
7706 main ()
7707 {
7708
7709 ;
7710 return 0;
7711 }
7712 _ACEOF
7713 if ac_fn_c_try_compile "$LINENO"; then :
7714 ac_cv_header_stdc=yes
7715 else
7716 ac_cv_header_stdc=no
7717 fi
7718 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
7719
7720 if test $ac_cv_header_stdc = yes; then
7721 # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
7722 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
7723 /* end confdefs.h. */
7724 #include <string.h>
7725
7726 _ACEOF
7727 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
7728 $EGREP "memchr" >/dev/null 2>&1; then :
7729
7730 else
7731 ac_cv_header_stdc=no
7732 fi
7733 rm -f conftest*
7734
7735 fi
7736
7737 if test $ac_cv_header_stdc = yes; then
7738 # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
7739 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
7740 /* end confdefs.h. */
7741 #include <stdlib.h>
7742
7743 _ACEOF
7744 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
7745 $EGREP "free" >/dev/null 2>&1; then :
7746
7747 else
7748 ac_cv_header_stdc=no
7749 fi
7750 rm -f conftest*
7751
7752 fi
7753
7754 if test $ac_cv_header_stdc = yes; then
7755 # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi.
7756 if test "$cross_compiling" = yes; then :
7757 :
7758 else
7759 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
7760 /* end confdefs.h. */
7761 #include <ctype.h>
7762 #include <stdlib.h>
7763 #if ((' ' & 0x0FF) == 0x020)
7764 # define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
7765 # define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c))
7766 #else
7767 # define ISLOWER(c) \
7768 (('a' <= (c) && (c) <= 'i') \
7769 || ('j' <= (c) && (c) <= 'r') \
7770 || ('s' <= (c) && (c) <= 'z'))
7771 # define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c))
7772 #endif
7773
7774 #define XOR(e, f) (((e) && !(f)) || (!(e) && (f)))
7775 int
7776 main ()
7777 {
7778 int i;
7779 for (i = 0; i < 256; i++)
7780 if (XOR (islower (i), ISLOWER (i))
7781 || toupper (i) != TOUPPER (i))
7782 return 2;
7783 return 0;
7784 }
7785 _ACEOF
7786 if ac_fn_c_try_run "$LINENO"; then :
7787
7788 else
7789 ac_cv_header_stdc=no
7790 fi
7791 rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
7792 conftest.$ac_objext conftest.beam conftest.$ac_ext
7793 fi
7794
7795 fi
7796 fi
7797 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5
7798 $as_echo "$ac_cv_header_stdc" >&6; }
7799 if test $ac_cv_header_stdc = yes; then
7800
7801 $as_echo "#define STDC_HEADERS 1" >>confdefs.h
7802
7803 fi
7804
7805 # On IRIX 5.3, sys/types and inttypes.h are conflicting.
7806 for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \
7807 inttypes.h stdint.h unistd.h
7808 do :
7809 as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
7810 ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default
7811 "
7812 if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
7813 cat >>confdefs.h <<_ACEOF
7814 #define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
7815 _ACEOF
7816
7817 fi
7818
7819 done
7820
7821
7822 for ac_header in dlfcn.h
7823 do :
7824 ac_fn_c_check_header_compile "$LINENO" "dlfcn.h" "ac_cv_header_dlfcn_h" "$ac_includes_default
7825 "
7826 if test "x$ac_cv_header_dlfcn_h" = xyes; then :
7827 cat >>confdefs.h <<_ACEOF
7828 #define HAVE_DLFCN_H 1
7829 _ACEOF
7830
7831 fi
7832
7833 done
7834
7835
7836
7837
7838
7839 # Set options
7840
7841
7842
7843 enable_dlopen=no
7844
7845
7846 enable_win32_dll=no
7847
7848
7849 # Check whether --enable-shared was given.
7850 if test "${enable_shared+set}" = set; then :
7851 enableval=$enable_shared; p=${PACKAGE-default}
7852 case $enableval in
7853 yes) enable_shared=yes ;;
7854 no) enable_shared=no ;;
7855 *)
7856 enable_shared=no
7857 # Look at the argument we got. We use all the common list separators.
7858 lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
7859 for pkg in $enableval; do
7860 IFS=$lt_save_ifs
7861 if test "X$pkg" = "X$p"; then
7862 enable_shared=yes
7863 fi
7864 done
7865 IFS=$lt_save_ifs
7866 ;;
7867 esac
7868 else
7869 enable_shared=yes
7870 fi
7871
7872
7873
7874
7875
7876
7877
7878
7879
7880 # Check whether --enable-static was given.
7881 if test "${enable_static+set}" = set; then :
7882 enableval=$enable_static; p=${PACKAGE-default}
7883 case $enableval in
7884 yes) enable_static=yes ;;
7885 no) enable_static=no ;;
7886 *)
7887 enable_static=no
7888 # Look at the argument we got. We use all the common list separators.
7889 lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
7890 for pkg in $enableval; do
7891 IFS=$lt_save_ifs
7892 if test "X$pkg" = "X$p"; then
7893 enable_static=yes
7894 fi
7895 done
7896 IFS=$lt_save_ifs
7897 ;;
7898 esac
7899 else
7900 enable_static=yes
7901 fi
7902
7903
7904
7905
7906
7907
7908
7909
7910
7911
7912 # Check whether --with-pic was given.
7913 if test "${with_pic+set}" = set; then :
7914 withval=$with_pic; lt_p=${PACKAGE-default}
7915 case $withval in
7916 yes|no) pic_mode=$withval ;;
7917 *)
7918 pic_mode=default
7919 # Look at the argument we got. We use all the common list separators.
7920 lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
7921 for lt_pkg in $withval; do
7922 IFS=$lt_save_ifs
7923 if test "X$lt_pkg" = "X$lt_p"; then
7924 pic_mode=yes
7925 fi
7926 done
7927 IFS=$lt_save_ifs
7928 ;;
7929 esac
7930 else
7931 pic_mode=default
7932 fi
7933
7934
7935
7936
7937
7938
7939
7940
7941 # Check whether --enable-fast-install was given.
7942 if test "${enable_fast_install+set}" = set; then :
7943 enableval=$enable_fast_install; p=${PACKAGE-default}
7944 case $enableval in
7945 yes) enable_fast_install=yes ;;
7946 no) enable_fast_install=no ;;
7947 *)
7948 enable_fast_install=no
7949 # Look at the argument we got. We use all the common list separators.
7950 lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
7951 for pkg in $enableval; do
7952 IFS=$lt_save_ifs
7953 if test "X$pkg" = "X$p"; then
7954 enable_fast_install=yes
7955 fi
7956 done
7957 IFS=$lt_save_ifs
7958 ;;
7959 esac
7960 else
7961 enable_fast_install=yes
7962 fi
7963
7964
7965
7966
7967
7968
7969
7970
7971 shared_archive_member_spec=
7972 case $host,$enable_shared in
7973 power*-*-aix[5-9]*,yes)
7974 { $as_echo "$as_me:${as_lineno-$LINENO}: checking which variant of shared library versioning to provide" >&5
7975 $as_echo_n "checking which variant of shared library versioning to provide... " >&6; }
7976
7977 # Check whether --with-aix-soname was given.
7978 if test "${with_aix_soname+set}" = set; then :
7979 withval=$with_aix_soname; case $withval in
7980 aix|svr4|both)
7981 ;;
7982 *)
7983 as_fn_error $? "Unknown argument to --with-aix-soname" "$LINENO" 5
7984 ;;
7985 esac
7986 lt_cv_with_aix_soname=$with_aix_soname
7987 else
7988 if ${lt_cv_with_aix_soname+:} false; then :
7989 $as_echo_n "(cached) " >&6
7990 else
7991 lt_cv_with_aix_soname=aix
7992 fi
7993
7994 with_aix_soname=$lt_cv_with_aix_soname
7995 fi
7996
7997 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_aix_soname" >&5
7998 $as_echo "$with_aix_soname" >&6; }
7999 if test aix != "$with_aix_soname"; then
8000 # For the AIX way of multilib, we name the shared archive member
8001 # based on the bitwidth used, traditionally 'shr.o' or 'shr_64.o',
8002 # and 'shr.imp' or 'shr_64.imp', respectively, for the Import File.
8003 # Even when GNU compilers ignore OBJECT_MODE but need '-maix64' flag,
8004 # the AIX toolchain works better with OBJECT_MODE set (default 32).
8005 if test 64 = "${OBJECT_MODE-32}"; then
8006 shared_archive_member_spec=shr_64
8007 else
8008 shared_archive_member_spec=shr
8009 fi
8010 fi
8011 ;;
8012 *)
8013 with_aix_soname=aix
8014 ;;
8015 esac
8016
8017
8018
8019
8020
8021
8022
8023
8024
8025
8026 # This can be used to rebuild libtool when needed
8027 LIBTOOL_DEPS=$ltmain
8028
8029 # Always use our own libtool.
8030 LIBTOOL='$(SHELL) $(top_builddir)/libtool'
8031
8032
8033
8034
8035
8036
8037
8038
8039
8040
8041
8042
8043
8044
8045
8046
8047
8048
8049
8050
8051
8052
8053
8054
8055
8056
8057
8058
8059
8060
8061 test -z "$LN_S" && LN_S="ln -s"
8062
8063
8064
8065
8066
8067
8068
8069
8070
8071
8072
8073
8074
8075
8076 if test -n "${ZSH_VERSION+set}"; then
8077 setopt NO_GLOB_SUBST
8078 fi
8079
8080 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for objdir" >&5
8081 $as_echo_n "checking for objdir... " >&6; }
8082 if ${lt_cv_objdir+:} false; then :
8083 $as_echo_n "(cached) " >&6
8084 else
8085 rm -f .libs 2>/dev/null
8086 mkdir .libs 2>/dev/null
8087 if test -d .libs; then
8088 lt_cv_objdir=.libs
8089 else
8090 # MS-DOS does not allow filenames that begin with a dot.
8091 lt_cv_objdir=_libs
8092 fi
8093 rmdir .libs 2>/dev/null
8094 fi
8095 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_objdir" >&5
8096 $as_echo "$lt_cv_objdir" >&6; }
8097 objdir=$lt_cv_objdir
8098
8099
8100
8101
8102
8103 cat >>confdefs.h <<_ACEOF
8104 #define LT_OBJDIR "$lt_cv_objdir/"
8105 _ACEOF
8106
8107
8108
8109
8110 case $host_os in
8111 aix3*)
8112 # AIX sometimes has problems with the GCC collect2 program. For some
8113 # reason, if we set the COLLECT_NAMES environment variable, the problems
8114 # vanish in a puff of smoke.
8115 if test set != "${COLLECT_NAMES+set}"; then
8116 COLLECT_NAMES=
8117 export COLLECT_NAMES
8118 fi
8119 ;;
8120 esac
8121
8122 # Global variables:
8123 ofile=libtool
8124 can_build_shared=yes
8125
8126 # All known linkers require a '.a' archive for static linking (except MSVC,
8127 # which needs '.lib').
8128 libext=a
8129
8130 with_gnu_ld=$lt_cv_prog_gnu_ld
8131
8132 old_CC=$CC
8133 old_CFLAGS=$CFLAGS
8134
8135 # Set sane defaults for various variables
8136 test -z "$CC" && CC=cc
8137 test -z "$LTCC" && LTCC=$CC
8138 test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS
8139 test -z "$LD" && LD=ld
8140 test -z "$ac_objext" && ac_objext=o
8141
8142 func_cc_basename $compiler
8143 cc_basename=$func_cc_basename_result
8144
8145
8146 # Only perform the check for file, if the check method requires it
8147 test -z "$MAGIC_CMD" && MAGIC_CMD=file
8148 case $deplibs_check_method in
8149 file_magic*)
8150 if test "$file_magic_cmd" = '$MAGIC_CMD'; then
8151 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ${ac_tool_prefix}file" >&5
8152 $as_echo_n "checking for ${ac_tool_prefix}file... " >&6; }
8153 if ${lt_cv_path_MAGIC_CMD+:} false; then :
8154 $as_echo_n "(cached) " >&6
8155 else
8156 case $MAGIC_CMD in
8157 [\\/*] | ?:[\\/]*)
8158 lt_cv_path_MAGIC_CMD=$MAGIC_CMD # Let the user override the test with a path.
8159 ;;
8160 *)
8161 lt_save_MAGIC_CMD=$MAGIC_CMD
8162 lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR
8163 ac_dummy="/usr/bin$PATH_SEPARATOR$PATH"
8164 for ac_dir in $ac_dummy; do
8165 IFS=$lt_save_ifs
8166 test -z "$ac_dir" && ac_dir=.
8167 if test -f "$ac_dir/${ac_tool_prefix}file"; then
8168 lt_cv_path_MAGIC_CMD=$ac_dir/"${ac_tool_prefix}file"
8169 if test -n "$file_magic_test_file"; then
8170 case $deplibs_check_method in
8171 "file_magic "*)
8172 file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
8173 MAGIC_CMD=$lt_cv_path_MAGIC_CMD
8174 if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
8175 $EGREP "$file_magic_regex" > /dev/null; then
8176 :
8177 else
8178 cat <<_LT_EOF 1>&2
8179
8180 *** Warning: the command libtool uses to detect shared libraries,
8181 *** $file_magic_cmd, produces output that libtool cannot recognize.
8182 *** The result is that libtool may fail to recognize shared libraries
8183 *** as such. This will affect the creation of libtool libraries that
8184 *** depend on shared libraries, but programs linked with such libtool
8185 *** libraries will work regardless of this problem. Nevertheless, you
8186 *** may want to report the problem to your system manager and/or to
8187 *** bug-libtool@gnu.org
8188
8189 _LT_EOF
8190 fi ;;
8191 esac
8192 fi
8193 break
8194 fi
8195 done
8196 IFS=$lt_save_ifs
8197 MAGIC_CMD=$lt_save_MAGIC_CMD
8198 ;;
8199 esac
8200 fi
8201
8202 MAGIC_CMD=$lt_cv_path_MAGIC_CMD
8203 if test -n "$MAGIC_CMD"; then
8204 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5
8205 $as_echo "$MAGIC_CMD" >&6; }
8206 else
8207 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
8208 $as_echo "no" >&6; }
8209 fi
8210
8211
8212
8213
8214
8215 if test -z "$lt_cv_path_MAGIC_CMD"; then
8216 if test -n "$ac_tool_prefix"; then
8217 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for file" >&5
8218 $as_echo_n "checking for file... " >&6; }
8219 if ${lt_cv_path_MAGIC_CMD+:} false; then :
8220 $as_echo_n "(cached) " >&6
8221 else
8222 case $MAGIC_CMD in
8223 [\\/*] | ?:[\\/]*)
8224 lt_cv_path_MAGIC_CMD=$MAGIC_CMD # Let the user override the test with a path.
8225 ;;
8226 *)
8227 lt_save_MAGIC_CMD=$MAGIC_CMD
8228 lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR
8229 ac_dummy="/usr/bin$PATH_SEPARATOR$PATH"
8230 for ac_dir in $ac_dummy; do
8231 IFS=$lt_save_ifs
8232 test -z "$ac_dir" && ac_dir=.
8233 if test -f "$ac_dir/file"; then
8234 lt_cv_path_MAGIC_CMD=$ac_dir/"file"
8235 if test -n "$file_magic_test_file"; then
8236 case $deplibs_check_method in
8237 "file_magic "*)
8238 file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
8239 MAGIC_CMD=$lt_cv_path_MAGIC_CMD
8240 if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
8241 $EGREP "$file_magic_regex" > /dev/null; then
8242 :
8243 else
8244 cat <<_LT_EOF 1>&2
8245
8246 *** Warning: the command libtool uses to detect shared libraries,
8247 *** $file_magic_cmd, produces output that libtool cannot recognize.
8248 *** The result is that libtool may fail to recognize shared libraries
8249 *** as such. This will affect the creation of libtool libraries that
8250 *** depend on shared libraries, but programs linked with such libtool
8251 *** libraries will work regardless of this problem. Nevertheless, you
8252 *** may want to report the problem to your system manager and/or to
8253 *** bug-libtool@gnu.org
8254
8255 _LT_EOF
8256 fi ;;
8257 esac
8258 fi
8259 break
8260 fi
8261 done
8262 IFS=$lt_save_ifs
8263 MAGIC_CMD=$lt_save_MAGIC_CMD
8264 ;;
8265 esac
8266 fi
8267
8268 MAGIC_CMD=$lt_cv_path_MAGIC_CMD
8269 if test -n "$MAGIC_CMD"; then
8270 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5
8271 $as_echo "$MAGIC_CMD" >&6; }
8272 else
8273 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
8274 $as_echo "no" >&6; }
8275 fi
8276
8277
8278 else
8279 MAGIC_CMD=:
8280 fi
8281 fi
8282
8283 fi
8284 ;;
8285 esac
8286
8287 # Use C for the default configuration in the libtool script
8288
8289 lt_save_CC=$CC
8290 ac_ext=c
8291 ac_cpp='$CPP $CPPFLAGS'
8292 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
8293 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
8294 ac_compiler_gnu=$ac_cv_c_compiler_gnu
8295
8296
8297 # Source file extension for C test sources.
8298 ac_ext=c
8299
8300 # Object file extension for compiled C test sources.
8301 objext=o
8302 objext=$objext
8303
8304 # Code to be used in simple compile tests
8305 lt_simple_compile_test_code="int some_variable = 0;"
8306
8307 # Code to be used in simple link tests
8308 lt_simple_link_test_code='int main(){return(0);}'
8309
8310
8311
8312
8313
8314
8315
8316 # If no C compiler was specified, use CC.
8317 LTCC=${LTCC-"$CC"}
8318
8319 # If no C compiler flags were specified, use CFLAGS.
8320 LTCFLAGS=${LTCFLAGS-"$CFLAGS"}
8321
8322 # Allow CC to be a program name with arguments.
8323 compiler=$CC
8324
8325 # Save the default compiler, since it gets overwritten when the other
8326 # tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP.
8327 compiler_DEFAULT=$CC
8328
8329 # save warnings/boilerplate of simple test code
8330 ac_outfile=conftest.$ac_objext
8331 echo "$lt_simple_compile_test_code" >conftest.$ac_ext
8332 eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
8333 _lt_compiler_boilerplate=`cat conftest.err`
8334 $RM conftest*
8335
8336 ac_outfile=conftest.$ac_objext
8337 echo "$lt_simple_link_test_code" >conftest.$ac_ext
8338 eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
8339 _lt_linker_boilerplate=`cat conftest.err`
8340 $RM -r conftest*
8341
8342
8343 if test -n "$compiler"; then
8344
8345 lt_prog_compiler_no_builtin_flag=
8346
8347 if test yes = "$GCC"; then
8348 case $cc_basename in
8349 nvcc*)
8350 lt_prog_compiler_no_builtin_flag=' -Xcompiler -fno-builtin' ;;
8351 *)
8352 lt_prog_compiler_no_builtin_flag=' -fno-builtin' ;;
8353 esac
8354
8355 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -fno-rtti -fno-exceptions" >&5
8356 $as_echo_n "checking if $compiler supports -fno-rtti -fno-exceptions... " >&6; }
8357 if ${lt_cv_prog_compiler_rtti_exceptions+:} false; then :
8358 $as_echo_n "(cached) " >&6
8359 else
8360 lt_cv_prog_compiler_rtti_exceptions=no
8361 ac_outfile=conftest.$ac_objext
8362 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
8363 lt_compiler_flag="-fno-rtti -fno-exceptions" ## exclude from sc_useless_quotes_in_assignment
8364 # Insert the option either (1) after the last *FLAGS variable, or
8365 # (2) before a word containing "conftest.", or (3) at the end.
8366 # Note that $ac_compile itself does not contain backslashes and begins
8367 # with a dollar sign (not a hyphen), so the echo should work correctly.
8368 # The option is referenced via a variable to avoid confusing sed.
8369 lt_compile=`echo "$ac_compile" | $SED \
8370 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
8371 -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
8372 -e 's:$: $lt_compiler_flag:'`
8373 (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5)
8374 (eval "$lt_compile" 2>conftest.err)
8375 ac_status=$?
8376 cat conftest.err >&5
8377 echo "$as_me:$LINENO: \$? = $ac_status" >&5
8378 if (exit $ac_status) && test -s "$ac_outfile"; then
8379 # The compiler can only warn and ignore the option if not recognized
8380 # So say no if there are warnings other than the usual output.
8381 $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp
8382 $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
8383 if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
8384 lt_cv_prog_compiler_rtti_exceptions=yes
8385 fi
8386 fi
8387 $RM conftest*
8388
8389 fi
8390 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_rtti_exceptions" >&5
8391 $as_echo "$lt_cv_prog_compiler_rtti_exceptions" >&6; }
8392
8393 if test yes = "$lt_cv_prog_compiler_rtti_exceptions"; then
8394 lt_prog_compiler_no_builtin_flag="$lt_prog_compiler_no_builtin_flag -fno-rtti -fno-exceptions"
8395 else
8396 :
8397 fi
8398
8399 fi
8400
8401
8402
8403
8404
8405
8406 lt_prog_compiler_wl=
8407 lt_prog_compiler_pic=
8408 lt_prog_compiler_static=
8409
8410
8411 if test yes = "$GCC"; then
8412 lt_prog_compiler_wl='-Wl,'
8413 lt_prog_compiler_static='-static'
8414
8415 case $host_os in
8416 aix*)
8417 # All AIX code is PIC.
8418 if test ia64 = "$host_cpu"; then
8419 # AIX 5 now supports IA64 processor
8420 lt_prog_compiler_static='-Bstatic'
8421 fi
8422 lt_prog_compiler_pic='-fPIC'
8423 ;;
8424
8425 amigaos*)
8426 case $host_cpu in
8427 powerpc)
8428 # see comment about AmigaOS4 .so support
8429 lt_prog_compiler_pic='-fPIC'
8430 ;;
8431 m68k)
8432 # FIXME: we need at least 68020 code to build shared libraries, but
8433 # adding the '-m68020' flag to GCC prevents building anything better,
8434 # like '-m68040'.
8435 lt_prog_compiler_pic='-m68020 -resident32 -malways-restore-a4'
8436 ;;
8437 esac
8438 ;;
8439
8440 beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
8441 # PIC is the default for these OSes.
8442 ;;
8443
8444 mingw* | cygwin* | pw32* | os2* | cegcc*)
8445 # This hack is so that the source file can tell whether it is being
8446 # built for inclusion in a dll (and should export symbols for example).
8447 # Although the cygwin gcc ignores -fPIC, still need this for old-style
8448 # (--disable-auto-import) libraries
8449 lt_prog_compiler_pic='-DDLL_EXPORT'
8450 case $host_os in
8451 os2*)
8452 lt_prog_compiler_static='$wl-static'
8453 ;;
8454 esac
8455 ;;
8456
8457 darwin* | rhapsody*)
8458 # PIC is the default on this platform
8459 # Common symbols not allowed in MH_DYLIB files
8460 lt_prog_compiler_pic='-fno-common'
8461 ;;
8462
8463 haiku*)
8464 # PIC is the default for Haiku.
8465 # The "-static" flag exists, but is broken.
8466 lt_prog_compiler_static=
8467 ;;
8468
8469 hpux*)
8470 # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
8471 # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag
8472 # sets the default TLS model and affects inlining.
8473 case $host_cpu in
8474 hppa*64*)
8475 # +Z the default
8476 ;;
8477 *)
8478 lt_prog_compiler_pic='-fPIC'
8479 ;;
8480 esac
8481 ;;
8482
8483 interix[3-9]*)
8484 # Interix 3.x gcc -fpic/-fPIC options generate broken code.
8485 # Instead, we relocate shared libraries at runtime.
8486 ;;
8487
8488 msdosdjgpp*)
8489 # Just because we use GCC doesn't mean we suddenly get shared libraries
8490 # on systems that don't support them.
8491 lt_prog_compiler_can_build_shared=no
8492 enable_shared=no
8493 ;;
8494
8495 *nto* | *qnx*)
8496 # QNX uses GNU C++, but need to define -shared option too, otherwise
8497 # it will coredump.
8498 lt_prog_compiler_pic='-fPIC -shared'
8499 ;;
8500
8501 sysv4*MP*)
8502 if test -d /usr/nec; then
8503 lt_prog_compiler_pic=-Kconform_pic
8504 fi
8505 ;;
8506
8507 *)
8508 lt_prog_compiler_pic='-fPIC'
8509 ;;
8510 esac
8511
8512 case $cc_basename in
8513 nvcc*) # Cuda Compiler Driver 2.2
8514 lt_prog_compiler_wl='-Xlinker '
8515 if test -n "$lt_prog_compiler_pic"; then
8516 lt_prog_compiler_pic="-Xcompiler $lt_prog_compiler_pic"
8517 fi
8518 ;;
8519 esac
8520 else
8521 # PORTME Check for flag to pass linker flags through the system compiler.
8522 case $host_os in
8523 aix*)
8524 lt_prog_compiler_wl='-Wl,'
8525 if test ia64 = "$host_cpu"; then
8526 # AIX 5 now supports IA64 processor
8527 lt_prog_compiler_static='-Bstatic'
8528 else
8529 lt_prog_compiler_static='-bnso -bI:/lib/syscalls.exp'
8530 fi
8531 ;;
8532
8533 darwin* | rhapsody*)
8534 # PIC is the default on this platform
8535 # Common symbols not allowed in MH_DYLIB files
8536 lt_prog_compiler_pic='-fno-common'
8537 case $cc_basename in
8538 nagfor*)
8539 # NAG Fortran compiler
8540 lt_prog_compiler_wl='-Wl,-Wl,,'
8541 lt_prog_compiler_pic='-PIC'
8542 lt_prog_compiler_static='-Bstatic'
8543 ;;
8544 esac
8545 ;;
8546
8547 mingw* | cygwin* | pw32* | os2* | cegcc*)
8548 # This hack is so that the source file can tell whether it is being
8549 # built for inclusion in a dll (and should export symbols for example).
8550 lt_prog_compiler_pic='-DDLL_EXPORT'
8551 case $host_os in
8552 os2*)
8553 lt_prog_compiler_static='$wl-static'
8554 ;;
8555 esac
8556 ;;
8557
8558 hpux9* | hpux10* | hpux11*)
8559 lt_prog_compiler_wl='-Wl,'
8560 # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
8561 # not for PA HP-UX.
8562 case $host_cpu in
8563 hppa*64*|ia64*)
8564 # +Z the default
8565 ;;
8566 *)
8567 lt_prog_compiler_pic='+Z'
8568 ;;
8569 esac
8570 # Is there a better lt_prog_compiler_static that works with the bundled CC?
8571 lt_prog_compiler_static='$wl-a ${wl}archive'
8572 ;;
8573
8574 irix5* | irix6* | nonstopux*)
8575 lt_prog_compiler_wl='-Wl,'
8576 # PIC (with -KPIC) is the default.
8577 lt_prog_compiler_static='-non_shared'
8578 ;;
8579
8580 linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
8581 case $cc_basename in
8582 # old Intel for x86_64, which still supported -KPIC.
8583 ecc*)
8584 lt_prog_compiler_wl='-Wl,'
8585 lt_prog_compiler_pic='-KPIC'
8586 lt_prog_compiler_static='-static'
8587 ;;
8588 # flang / f18. f95 an alias for gfortran or flang on Debian
8589 flang* | f18* | f95*)
8590 lt_prog_compiler_wl='-Wl,'
8591 lt_prog_compiler_pic='-fPIC'
8592 lt_prog_compiler_static='-static'
8593 ;;
8594 # icc used to be incompatible with GCC.
8595 # ICC 10 doesn't accept -KPIC any more.
8596 icc* | ifort*)
8597 lt_prog_compiler_wl='-Wl,'
8598 lt_prog_compiler_pic='-fPIC'
8599 lt_prog_compiler_static='-static'
8600 ;;
8601 # Lahey Fortran 8.1.
8602 lf95*)
8603 lt_prog_compiler_wl='-Wl,'
8604 lt_prog_compiler_pic='--shared'
8605 lt_prog_compiler_static='--static'
8606 ;;
8607 nagfor*)
8608 # NAG Fortran compiler
8609 lt_prog_compiler_wl='-Wl,-Wl,,'
8610 lt_prog_compiler_pic='-PIC'
8611 lt_prog_compiler_static='-Bstatic'
8612 ;;
8613 tcc*)
8614 # Fabrice Bellard et al's Tiny C Compiler
8615 lt_prog_compiler_wl='-Wl,'
8616 lt_prog_compiler_pic='-fPIC'
8617 lt_prog_compiler_static='-static'
8618 ;;
8619 pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*)
8620 # Portland Group compilers (*not* the Pentium gcc compiler,
8621 # which looks to be a dead project)
8622 lt_prog_compiler_wl='-Wl,'
8623 lt_prog_compiler_pic='-fpic'
8624 lt_prog_compiler_static='-Bstatic'
8625 ;;
8626 ccc*)
8627 lt_prog_compiler_wl='-Wl,'
8628 # All Alpha code is PIC.
8629 lt_prog_compiler_static='-non_shared'
8630 ;;
8631 xl* | bgxl* | bgf* | mpixl*)
8632 # IBM XL C 8.0/Fortran 10.1, 11.1 on PPC and BlueGene
8633 lt_prog_compiler_wl='-Wl,'
8634 lt_prog_compiler_pic='-qpic'
8635 lt_prog_compiler_static='-qstaticlink'
8636 ;;
8637 *)
8638 case `$CC -V 2>&1 | sed 5q` in
8639 *Sun\ Ceres\ Fortran* | *Sun*Fortran*\ [1-7].* | *Sun*Fortran*\ 8.[0-3]*)
8640 # Sun Fortran 8.3 passes all unrecognized flags to the linker
8641 lt_prog_compiler_pic='-KPIC'
8642 lt_prog_compiler_static='-Bstatic'
8643 lt_prog_compiler_wl=''
8644 ;;
8645 *Sun\ F* | *Sun*Fortran*)
8646 lt_prog_compiler_pic='-KPIC'
8647 lt_prog_compiler_static='-Bstatic'
8648 lt_prog_compiler_wl='-Qoption ld '
8649 ;;
8650 *Sun\ C*)
8651 # Sun C 5.9
8652 lt_prog_compiler_pic='-KPIC'
8653 lt_prog_compiler_static='-Bstatic'
8654 lt_prog_compiler_wl='-Wl,'
8655 ;;
8656 *Intel*\ [CF]*Compiler*)
8657 lt_prog_compiler_wl='-Wl,'
8658 lt_prog_compiler_pic='-fPIC'
8659 lt_prog_compiler_static='-static'
8660 ;;
8661 *Portland\ Group*)
8662 lt_prog_compiler_wl='-Wl,'
8663 lt_prog_compiler_pic='-fpic'
8664 lt_prog_compiler_static='-Bstatic'
8665 ;;
8666 esac
8667 ;;
8668 esac
8669 ;;
8670
8671 newsos6)
8672 lt_prog_compiler_pic='-KPIC'
8673 lt_prog_compiler_static='-Bstatic'
8674 ;;
8675
8676 *nto* | *qnx*)
8677 # QNX uses GNU C++, but need to define -shared option too, otherwise
8678 # it will coredump.
8679 lt_prog_compiler_pic='-fPIC -shared'
8680 ;;
8681
8682 osf3* | osf4* | osf5*)
8683 lt_prog_compiler_wl='-Wl,'
8684 # All OSF/1 code is PIC.
8685 lt_prog_compiler_static='-non_shared'
8686 ;;
8687
8688 rdos*)
8689 lt_prog_compiler_static='-non_shared'
8690 ;;
8691
8692 solaris*)
8693 lt_prog_compiler_pic='-KPIC'
8694 lt_prog_compiler_static='-Bstatic'
8695 case $cc_basename in
8696 f77* | f90* | f95* | sunf77* | sunf90* | sunf95*)
8697 lt_prog_compiler_wl='-Qoption ld ';;
8698 *)
8699 lt_prog_compiler_wl='-Wl,';;
8700 esac
8701 ;;
8702
8703 sunos4*)
8704 lt_prog_compiler_wl='-Qoption ld '
8705 lt_prog_compiler_pic='-PIC'
8706 lt_prog_compiler_static='-Bstatic'
8707 ;;
8708
8709 sysv4 | sysv4.2uw2* | sysv4.3*)
8710 lt_prog_compiler_wl='-Wl,'
8711 lt_prog_compiler_pic='-KPIC'
8712 lt_prog_compiler_static='-Bstatic'
8713 ;;
8714
8715 sysv4*MP*)
8716 if test -d /usr/nec; then
8717 lt_prog_compiler_pic='-Kconform_pic'
8718 lt_prog_compiler_static='-Bstatic'
8719 fi
8720 ;;
8721
8722 sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
8723 lt_prog_compiler_wl='-Wl,'
8724 lt_prog_compiler_pic='-KPIC'
8725 lt_prog_compiler_static='-Bstatic'
8726 ;;
8727
8728 unicos*)
8729 lt_prog_compiler_wl='-Wl,'
8730 lt_prog_compiler_can_build_shared=no
8731 ;;
8732
8733 uts4*)
8734 lt_prog_compiler_pic='-pic'
8735 lt_prog_compiler_static='-Bstatic'
8736 ;;
8737
8738 *)
8739 lt_prog_compiler_can_build_shared=no
8740 ;;
8741 esac
8742 fi
8743
8744 case $host_os in
8745 # For platforms that do not support PIC, -DPIC is meaningless:
8746 *djgpp*)
8747 lt_prog_compiler_pic=
8748 ;;
8749 *)
8750 lt_prog_compiler_pic="$lt_prog_compiler_pic -DPIC"
8751 ;;
8752 esac
8753
8754 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&5
8755 $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
8756 if ${lt_cv_prog_compiler_pic+:} false; then :
8757 $as_echo_n "(cached) " >&6
8758 else
8759 lt_cv_prog_compiler_pic=$lt_prog_compiler_pic
8760 fi
8761 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic" >&5
8762 $as_echo "$lt_cv_prog_compiler_pic" >&6; }
8763 lt_prog_compiler_pic=$lt_cv_prog_compiler_pic
8764
8765 #
8766 # Check to make sure the PIC flag actually works.
8767 #
8768 if test -n "$lt_prog_compiler_pic"; then
8769 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler PIC flag $lt_prog_compiler_pic works" >&5
8770 $as_echo_n "checking if $compiler PIC flag $lt_prog_compiler_pic works... " >&6; }
8771 if ${lt_cv_prog_compiler_pic_works+:} false; then :
8772 $as_echo_n "(cached) " >&6
8773 else
8774 lt_cv_prog_compiler_pic_works=no
8775 ac_outfile=conftest.$ac_objext
8776 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
8777 lt_compiler_flag="$lt_prog_compiler_pic -DPIC" ## exclude from sc_useless_quotes_in_assignment
8778 # Insert the option either (1) after the last *FLAGS variable, or
8779 # (2) before a word containing "conftest.", or (3) at the end.
8780 # Note that $ac_compile itself does not contain backslashes and begins
8781 # with a dollar sign (not a hyphen), so the echo should work correctly.
8782 # The option is referenced via a variable to avoid confusing sed.
8783 lt_compile=`echo "$ac_compile" | $SED \
8784 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
8785 -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
8786 -e 's:$: $lt_compiler_flag:'`
8787 (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5)
8788 (eval "$lt_compile" 2>conftest.err)
8789 ac_status=$?
8790 cat conftest.err >&5
8791 echo "$as_me:$LINENO: \$? = $ac_status" >&5
8792 if (exit $ac_status) && test -s "$ac_outfile"; then
8793 # The compiler can only warn and ignore the option if not recognized
8794 # So say no if there are warnings other than the usual output.
8795 $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp
8796 $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
8797 if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
8798 lt_cv_prog_compiler_pic_works=yes
8799 fi
8800 fi
8801 $RM conftest*
8802
8803 fi
8804 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic_works" >&5
8805 $as_echo "$lt_cv_prog_compiler_pic_works" >&6; }
8806
8807 if test yes = "$lt_cv_prog_compiler_pic_works"; then
8808 case $lt_prog_compiler_pic in
8809 "" | " "*) ;;
8810 *) lt_prog_compiler_pic=" $lt_prog_compiler_pic" ;;
8811 esac
8812 else
8813 lt_prog_compiler_pic=
8814 lt_prog_compiler_can_build_shared=no
8815 fi
8816
8817 fi
8818
8819
8820
8821
8822
8823
8824
8825
8826
8827
8828
8829 #
8830 # Check to make sure the static flag actually works.
8831 #
8832 wl=$lt_prog_compiler_wl eval lt_tmp_static_flag=\"$lt_prog_compiler_static\"
8833 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler static flag $lt_tmp_static_flag works" >&5
8834 $as_echo_n "checking if $compiler static flag $lt_tmp_static_flag works... " >&6; }
8835 if ${lt_cv_prog_compiler_static_works+:} false; then :
8836 $as_echo_n "(cached) " >&6
8837 else
8838 lt_cv_prog_compiler_static_works=no
8839 save_LDFLAGS=$LDFLAGS
8840 LDFLAGS="$LDFLAGS $lt_tmp_static_flag"
8841 echo "$lt_simple_link_test_code" > conftest.$ac_ext
8842 if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
8843 # The linker can only warn and ignore the option if not recognized
8844 # So say no if there are warnings
8845 if test -s conftest.err; then
8846 # Append any errors to the config.log.
8847 cat conftest.err 1>&5
8848 $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp
8849 $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
8850 if diff conftest.exp conftest.er2 >/dev/null; then
8851 lt_cv_prog_compiler_static_works=yes
8852 fi
8853 else
8854 lt_cv_prog_compiler_static_works=yes
8855 fi
8856 fi
8857 $RM -r conftest*
8858 LDFLAGS=$save_LDFLAGS
8859
8860 fi
8861 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_static_works" >&5
8862 $as_echo "$lt_cv_prog_compiler_static_works" >&6; }
8863
8864 if test yes = "$lt_cv_prog_compiler_static_works"; then
8865 :
8866 else
8867 lt_prog_compiler_static=
8868 fi
8869
8870
8871
8872
8873
8874
8875
8876 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5
8877 $as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; }
8878 if ${lt_cv_prog_compiler_c_o+:} false; then :
8879 $as_echo_n "(cached) " >&6
8880 else
8881 lt_cv_prog_compiler_c_o=no
8882 $RM -r conftest 2>/dev/null
8883 mkdir conftest
8884 cd conftest
8885 mkdir out
8886 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
8887
8888 lt_compiler_flag="-o out/conftest2.$ac_objext"
8889 # Insert the option either (1) after the last *FLAGS variable, or
8890 # (2) before a word containing "conftest.", or (3) at the end.
8891 # Note that $ac_compile itself does not contain backslashes and begins
8892 # with a dollar sign (not a hyphen), so the echo should work correctly.
8893 lt_compile=`echo "$ac_compile" | $SED \
8894 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
8895 -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
8896 -e 's:$: $lt_compiler_flag:'`
8897 (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5)
8898 (eval "$lt_compile" 2>out/conftest.err)
8899 ac_status=$?
8900 cat out/conftest.err >&5
8901 echo "$as_me:$LINENO: \$? = $ac_status" >&5
8902 if (exit $ac_status) && test -s out/conftest2.$ac_objext
8903 then
8904 # The compiler can only warn and ignore the option if not recognized
8905 # So say no if there are warnings
8906 $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp
8907 $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
8908 if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
8909 lt_cv_prog_compiler_c_o=yes
8910 fi
8911 fi
8912 chmod u+w . 2>&5
8913 $RM conftest*
8914 # SGI C++ compiler will create directory out/ii_files/ for
8915 # template instantiation
8916 test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files
8917 $RM out/* && rmdir out
8918 cd ..
8919 $RM -r conftest
8920 $RM conftest*
8921
8922 fi
8923 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o" >&5
8924 $as_echo "$lt_cv_prog_compiler_c_o" >&6; }
8925
8926
8927
8928
8929
8930
8931 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5
8932 $as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; }
8933 if ${lt_cv_prog_compiler_c_o+:} false; then :
8934 $as_echo_n "(cached) " >&6
8935 else
8936 lt_cv_prog_compiler_c_o=no
8937 $RM -r conftest 2>/dev/null
8938 mkdir conftest
8939 cd conftest
8940 mkdir out
8941 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
8942
8943 lt_compiler_flag="-o out/conftest2.$ac_objext"
8944 # Insert the option either (1) after the last *FLAGS variable, or
8945 # (2) before a word containing "conftest.", or (3) at the end.
8946 # Note that $ac_compile itself does not contain backslashes and begins
8947 # with a dollar sign (not a hyphen), so the echo should work correctly.
8948 lt_compile=`echo "$ac_compile" | $SED \
8949 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
8950 -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
8951 -e 's:$: $lt_compiler_flag:'`
8952 (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5)
8953 (eval "$lt_compile" 2>out/conftest.err)
8954 ac_status=$?
8955 cat out/conftest.err >&5
8956 echo "$as_me:$LINENO: \$? = $ac_status" >&5
8957 if (exit $ac_status) && test -s out/conftest2.$ac_objext
8958 then
8959 # The compiler can only warn and ignore the option if not recognized
8960 # So say no if there are warnings
8961 $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp
8962 $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
8963 if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
8964 lt_cv_prog_compiler_c_o=yes
8965 fi
8966 fi
8967 chmod u+w . 2>&5
8968 $RM conftest*
8969 # SGI C++ compiler will create directory out/ii_files/ for
8970 # template instantiation
8971 test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files
8972 $RM out/* && rmdir out
8973 cd ..
8974 $RM -r conftest
8975 $RM conftest*
8976
8977 fi
8978 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o" >&5
8979 $as_echo "$lt_cv_prog_compiler_c_o" >&6; }
8980
8981
8982
8983
8984 hard_links=nottested
8985 if test no = "$lt_cv_prog_compiler_c_o" && test no != "$need_locks"; then
8986 # do not overwrite the value of need_locks provided by the user
8987 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if we can lock with hard links" >&5
8988 $as_echo_n "checking if we can lock with hard links... " >&6; }
8989 hard_links=yes
8990 $RM conftest*
8991 ln conftest.a conftest.b 2>/dev/null && hard_links=no
8992 touch conftest.a
8993 ln conftest.a conftest.b 2>&5 || hard_links=no
8994 ln conftest.a conftest.b 2>/dev/null && hard_links=no
8995 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $hard_links" >&5
8996 $as_echo "$hard_links" >&6; }
8997 if test no = "$hard_links"; then
8998 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&5
8999 $as_echo "$as_me: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&2;}
9000 need_locks=warn
9001 fi
9002 else
9003 need_locks=no
9004 fi
9005
9006
9007
9008
9009
9010
9011 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&5
9012 $as_echo_n "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; }
9013
9014 runpath_var=
9015 allow_undefined_flag=
9016 always_export_symbols=no
9017 archive_cmds=
9018 archive_expsym_cmds=
9019 compiler_needs_object=no
9020 enable_shared_with_static_runtimes=no
9021 export_dynamic_flag_spec=
9022 export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
9023 hardcode_automatic=no
9024 hardcode_direct=no
9025 hardcode_direct_absolute=no
9026 hardcode_libdir_flag_spec=
9027 hardcode_libdir_separator=
9028 hardcode_minus_L=no
9029 hardcode_shlibpath_var=unsupported
9030 inherit_rpath=no
9031 link_all_deplibs=unknown
9032 module_cmds=
9033 module_expsym_cmds=
9034 old_archive_from_new_cmds=
9035 old_archive_from_expsyms_cmds=
9036 thread_safe_flag_spec=
9037 whole_archive_flag_spec=
9038 # include_expsyms should be a list of space-separated symbols to be *always*
9039 # included in the symbol list
9040 include_expsyms=
9041 # exclude_expsyms can be an extended regexp of symbols to exclude
9042 # it will be wrapped by ' (' and ')$', so one must not match beginning or
9043 # end of line. Example: 'a|bc|.*d.*' will exclude the symbols 'a' and 'bc',
9044 # as well as any symbol that contains 'd'.
9045 exclude_expsyms='_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'
9046 # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
9047 # platforms (ab)use it in PIC code, but their linkers get confused if
9048 # the symbol is explicitly referenced. Since portable code cannot
9049 # rely on this symbol name, it's probably fine to never include it in
9050 # preloaded symbol tables.
9051 # Exclude shared library initialization/finalization symbols.
9052 extract_expsyms_cmds=
9053
9054 case $host_os in
9055 cygwin* | mingw* | pw32* | cegcc*)
9056 # FIXME: the MSVC++ port hasn't been tested in a loooong time
9057 # When not using gcc, we currently assume that we are using
9058 # Microsoft Visual C++.
9059 if test yes != "$GCC"; then
9060 with_gnu_ld=no
9061 fi
9062 ;;
9063 interix*)
9064 # we just hope/assume this is gcc and not c89 (= MSVC++)
9065 with_gnu_ld=yes
9066 ;;
9067 openbsd* | bitrig*)
9068 with_gnu_ld=no
9069 ;;
9070 linux* | k*bsd*-gnu | gnu*)
9071 link_all_deplibs=no
9072 ;;
9073 esac
9074
9075 ld_shlibs=yes
9076
9077 # On some targets, GNU ld is compatible enough with the native linker
9078 # that we're better off using the native interface for both.
9079 lt_use_gnu_ld_interface=no
9080 if test yes = "$with_gnu_ld"; then
9081 case $host_os in
9082 aix*)
9083 # The AIX port of GNU ld has always aspired to compatibility
9084 # with the native linker. However, as the warning in the GNU ld
9085 # block says, versions before 2.19.5* couldn't really create working
9086 # shared libraries, regardless of the interface used.
9087 case `$LD -v 2>&1` in
9088 *\ \(GNU\ Binutils\)\ 2.19.5*) ;;
9089 *\ \(GNU\ Binutils\)\ 2.[2-9]*) ;;
9090 *\ \(GNU\ Binutils\)\ [3-9]*) ;;
9091 *)
9092 lt_use_gnu_ld_interface=yes
9093 ;;
9094 esac
9095 ;;
9096 *)
9097 lt_use_gnu_ld_interface=yes
9098 ;;
9099 esac
9100 fi
9101
9102 if test yes = "$lt_use_gnu_ld_interface"; then
9103 # If archive_cmds runs LD, not CC, wlarc should be empty
9104 wlarc='$wl'
9105
9106 # Set some defaults for GNU ld with shared library support. These
9107 # are reset later if shared libraries are not supported. Putting them
9108 # here allows them to be overridden if necessary.
9109 runpath_var=LD_RUN_PATH
9110 hardcode_libdir_flag_spec='$wl-rpath $wl$libdir'
9111 export_dynamic_flag_spec='$wl--export-dynamic'
9112 # ancient GNU ld didn't support --whole-archive et. al.
9113 if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then
9114 whole_archive_flag_spec=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive'
9115 else
9116 whole_archive_flag_spec=
9117 fi
9118 supports_anon_versioning=no
9119 case `$LD -v | $SED -e 's/(^)\+)\s\+//' 2>&1` in
9120 *GNU\ gold*) supports_anon_versioning=yes ;;
9121 *\ [01].* | *\ 2.[0-9].* | *\ 2.10.*) ;; # catch versions < 2.11
9122 *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ...
9123 *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ...
9124 *\ 2.11.*) ;; # other 2.11 versions
9125 *) supports_anon_versioning=yes ;;
9126 esac
9127
9128 # See if GNU ld supports shared libraries.
9129 case $host_os in
9130 aix[3-9]*)
9131 # On AIX/PPC, the GNU linker is very broken
9132 if test ia64 != "$host_cpu"; then
9133 ld_shlibs=no
9134 cat <<_LT_EOF 1>&2
9135
9136 *** Warning: the GNU linker, at least up to release 2.19, is reported
9137 *** to be unable to reliably create shared libraries on AIX.
9138 *** Therefore, libtool is disabling shared libraries support. If you
9139 *** really care for shared libraries, you may want to install binutils
9140 *** 2.20 or above, or modify your PATH so that a non-GNU linker is found.
9141 *** You will then need to restart the configuration process.
9142
9143 _LT_EOF
9144 fi
9145 ;;
9146
9147 amigaos*)
9148 case $host_cpu in
9149 powerpc)
9150 # see comment about AmigaOS4 .so support
9151 archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
9152 archive_expsym_cmds=''
9153 ;;
9154 m68k)
9155 archive_cmds='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
9156 hardcode_libdir_flag_spec='-L$libdir'
9157 hardcode_minus_L=yes
9158 ;;
9159 esac
9160 ;;
9161
9162 beos*)
9163 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
9164 allow_undefined_flag=unsupported
9165 # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
9166 # support --undefined. This deserves some investigation. FIXME
9167 archive_cmds='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
9168 else
9169 ld_shlibs=no
9170 fi
9171 ;;
9172
9173 cygwin* | mingw* | pw32* | cegcc*)
9174 # _LT_TAGVAR(hardcode_libdir_flag_spec, ) is actually meaningless,
9175 # as there is no search path for DLLs.
9176 hardcode_libdir_flag_spec='-L$libdir'
9177 export_dynamic_flag_spec='$wl--export-all-symbols'
9178 allow_undefined_flag=unsupported
9179 always_export_symbols=no
9180 enable_shared_with_static_runtimes=yes
9181 export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[BCDGRS][ ]/s/.*[ ]\([^ ]*\)/\1 DATA/;s/^.*[ ]__nm__\([^ ]*\)[ ][^ ]*/\1 DATA/;/^I[ ]/d;/^[AITW][ ]/s/.* //'\'' | sort | uniq > $export_symbols'
9182 exclude_expsyms='[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname'
9183
9184 if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
9185 archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
9186 # If the export-symbols file already is a .def file, use it as
9187 # is; otherwise, prepend EXPORTS...
9188 archive_expsym_cmds='if test DEF = "`$SED -n -e '\''s/^[ ]*//'\'' -e '\''/^\(;.*\)*$/d'\'' -e '\''s/^\(EXPORTS\|LIBRARY\)\([ ].*\)*$/DEF/p'\'' -e q $export_symbols`" ; then
9189 cp $export_symbols $output_objdir/$soname.def;
9190 else
9191 echo EXPORTS > $output_objdir/$soname.def;
9192 cat $export_symbols >> $output_objdir/$soname.def;
9193 fi~
9194 $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
9195 else
9196 ld_shlibs=no
9197 fi
9198 ;;
9199
9200 haiku*)
9201 archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
9202 link_all_deplibs=yes
9203 ;;
9204
9205 os2*)
9206 hardcode_libdir_flag_spec='-L$libdir'
9207 hardcode_minus_L=yes
9208 allow_undefined_flag=unsupported
9209 shrext_cmds=.dll
9210 archive_cmds='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
9211 $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
9212 $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
9213 $ECHO EXPORTS >> $output_objdir/$libname.def~
9214 emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~
9215 $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
9216 emximp -o $lib $output_objdir/$libname.def'
9217 archive_expsym_cmds='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
9218 $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
9219 $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
9220 $ECHO EXPORTS >> $output_objdir/$libname.def~
9221 prefix_cmds="$SED"~
9222 if test EXPORTS = "`$SED 1q $export_symbols`"; then
9223 prefix_cmds="$prefix_cmds -e 1d";
9224 fi~
9225 prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~
9226 cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~
9227 $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
9228 emximp -o $lib $output_objdir/$libname.def'
9229 old_archive_From_new_cmds='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'
9230 enable_shared_with_static_runtimes=yes
9231 ;;
9232
9233 interix[3-9]*)
9234 hardcode_direct=no
9235 hardcode_shlibpath_var=no
9236 hardcode_libdir_flag_spec='$wl-rpath,$libdir'
9237 export_dynamic_flag_spec='$wl-E'
9238 # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
9239 # Instead, shared libraries are loaded at an image base (0x10000000 by
9240 # default) and relocated if they conflict, which is a slow very memory
9241 # consuming and fragmenting process. To avoid this, we pick a random,
9242 # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
9243 # time. Moving up from 0x10000000 also allows more sbrk(2) space.
9244 archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
9245 archive_expsym_cmds='sed "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--retain-symbols-file,$output_objdir/$soname.expsym $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
9246 ;;
9247
9248 gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)
9249 tmp_diet=no
9250 if test linux-dietlibc = "$host_os"; then
9251 case $cc_basename in
9252 diet\ *) tmp_diet=yes;; # linux-dietlibc with static linking (!diet-dyn)
9253 esac
9254 fi
9255 if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \
9256 && test no = "$tmp_diet"
9257 then
9258 tmp_addflag=' $pic_flag'
9259 tmp_sharedflag='-shared'
9260 case $cc_basename,$host_cpu in
9261 pgcc*) # Portland Group C compiler
9262 whole_archive_flag_spec='$wl--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive'
9263 tmp_addflag=' $pic_flag'
9264 ;;
9265 pgf77* | pgf90* | pgf95* | pgfortran*)
9266 # Portland Group f77 and f90 compilers
9267 whole_archive_flag_spec='$wl--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive'
9268 tmp_addflag=' $pic_flag -Mnomain' ;;
9269 ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64
9270 tmp_addflag=' -i_dynamic' ;;
9271 efc*,ia64* | ifort*,ia64*) # Intel Fortran compiler on ia64
9272 tmp_addflag=' -i_dynamic -nofor_main' ;;
9273 ifc* | ifort*) # Intel Fortran compiler
9274 tmp_addflag=' -nofor_main' ;;
9275 lf95*) # Lahey Fortran 8.1
9276 whole_archive_flag_spec=
9277 tmp_sharedflag='--shared' ;;
9278 nagfor*) # NAGFOR 5.3
9279 tmp_sharedflag='-Wl,-shared' ;;
9280 xl[cC]* | bgxl[cC]* | mpixl[cC]*) # IBM XL C 8.0 on PPC (deal with xlf below)
9281 tmp_sharedflag='-qmkshrobj'
9282 tmp_addflag= ;;
9283 nvcc*) # Cuda Compiler Driver 2.2
9284 whole_archive_flag_spec='$wl--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive'
9285 compiler_needs_object=yes
9286 ;;
9287 esac
9288 case `$CC -V 2>&1 | sed 5q` in
9289 *Sun\ C*) # Sun C 5.9
9290 whole_archive_flag_spec='$wl--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive'
9291 compiler_needs_object=yes
9292 tmp_sharedflag='-G' ;;
9293 *Sun\ F*) # Sun Fortran 8.3
9294 tmp_sharedflag='-G' ;;
9295 esac
9296 archive_cmds='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
9297
9298 if test yes = "$supports_anon_versioning"; then
9299 archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~
9300 cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
9301 echo "local: *; };" >> $output_objdir/$libname.ver~
9302 $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib'
9303 fi
9304
9305 case $cc_basename in
9306 tcc*)
9307 export_dynamic_flag_spec='-rdynamic'
9308 ;;
9309 xlf* | bgf* | bgxlf* | mpixlf*)
9310 # IBM XL Fortran 10.1 on PPC cannot create shared libs itself
9311 whole_archive_flag_spec='--whole-archive$convenience --no-whole-archive'
9312 hardcode_libdir_flag_spec='$wl-rpath $wl$libdir'
9313 archive_cmds='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib'
9314 if test yes = "$supports_anon_versioning"; then
9315 archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~
9316 cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
9317 echo "local: *; };" >> $output_objdir/$libname.ver~
9318 $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
9319 fi
9320 ;;
9321 esac
9322 else
9323 ld_shlibs=no
9324 fi
9325 ;;
9326
9327 netbsd* | netbsdelf*-gnu)
9328 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
9329 archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
9330 wlarc=
9331 else
9332 archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
9333 archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
9334 fi
9335 ;;
9336
9337 solaris*)
9338 if $LD -v 2>&1 | $GREP 'BFD 2\.8' > /dev/null; then
9339 ld_shlibs=no
9340 cat <<_LT_EOF 1>&2
9341
9342 *** Warning: The releases 2.8.* of the GNU linker cannot reliably
9343 *** create shared libraries on Solaris systems. Therefore, libtool
9344 *** is disabling shared libraries support. We urge you to upgrade GNU
9345 *** binutils to release 2.9.1 or newer. Another option is to modify
9346 *** your PATH or compiler configuration so that the native linker is
9347 *** used, and then restart.
9348
9349 _LT_EOF
9350 elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
9351 archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
9352 archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
9353 else
9354 ld_shlibs=no
9355 fi
9356 ;;
9357
9358 sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*)
9359 case `$LD -v 2>&1` in
9360 *\ [01].* | *\ 2.[0-9].* | *\ 2.1[0-5].*)
9361 ld_shlibs=no
9362 cat <<_LT_EOF 1>&2
9363
9364 *** Warning: Releases of the GNU linker prior to 2.16.91.0.3 cannot
9365 *** reliably create shared libraries on SCO systems. Therefore, libtool
9366 *** is disabling shared libraries support. We urge you to upgrade GNU
9367 *** binutils to release 2.16.91.0.3 or newer. Another option is to modify
9368 *** your PATH or compiler configuration so that the native linker is
9369 *** used, and then restart.
9370
9371 _LT_EOF
9372 ;;
9373 *)
9374 # For security reasons, it is highly recommended that you always
9375 # use absolute paths for naming shared libraries, and exclude the
9376 # DT_RUNPATH tag from executables and libraries. But doing so
9377 # requires that you compile everything twice, which is a pain.
9378 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
9379 hardcode_libdir_flag_spec='$wl-rpath $wl$libdir'
9380 archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
9381 archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
9382 else
9383 ld_shlibs=no
9384 fi
9385 ;;
9386 esac
9387 ;;
9388
9389 sunos4*)
9390 archive_cmds='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags'
9391 wlarc=
9392 hardcode_direct=yes
9393 hardcode_shlibpath_var=no
9394 ;;
9395
9396 *)
9397 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
9398 archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
9399 archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
9400 else
9401 ld_shlibs=no
9402 fi
9403 ;;
9404 esac
9405
9406 if test no = "$ld_shlibs"; then
9407 runpath_var=
9408 hardcode_libdir_flag_spec=
9409 export_dynamic_flag_spec=
9410 whole_archive_flag_spec=
9411 fi
9412 else
9413 # PORTME fill in a description of your system's linker (not GNU ld)
9414 case $host_os in
9415 aix3*)
9416 allow_undefined_flag=unsupported
9417 always_export_symbols=yes
9418 archive_expsym_cmds='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname'
9419 # Note: this linker hardcodes the directories in LIBPATH if there
9420 # are no directories specified by -L.
9421 hardcode_minus_L=yes
9422 if test yes = "$GCC" && test -z "$lt_prog_compiler_static"; then
9423 # Neither direct hardcoding nor static linking is supported with a
9424 # broken collect2.
9425 hardcode_direct=unsupported
9426 fi
9427 ;;
9428
9429 aix[4-9]*)
9430 if test ia64 = "$host_cpu"; then
9431 # On IA64, the linker does run time linking by default, so we don't
9432 # have to do anything special.
9433 aix_use_runtimelinking=no
9434 exp_sym_flag='-Bexport'
9435 no_entry_flag=
9436 else
9437 # If we're using GNU nm, then we don't want the "-C" option.
9438 # -C means demangle to GNU nm, but means don't demangle to AIX nm.
9439 # Without the "-l" option, or with the "-B" option, AIX nm treats
9440 # weak defined symbols like other global defined symbols, whereas
9441 # GNU nm marks them as "W".
9442 # While the 'weak' keyword is ignored in the Export File, we need
9443 # it in the Import File for the 'aix-soname' feature, so we have
9444 # to replace the "-B" option with "-P" for AIX nm.
9445 if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
9446 export_symbols_cmds='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && (substr(\$ 3,1,1) != ".")) { if (\$ 2 == "W") { print \$ 3 " weak" } else { print \$ 3 } } }'\'' | sort -u > $export_symbols'
9447 else
9448 export_symbols_cmds='`func_echo_all $NM | $SED -e '\''s/B\([^B]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && (substr(\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols'
9449 fi
9450 aix_use_runtimelinking=no
9451
9452 # Test if we are trying to use run time linking or normal
9453 # AIX style linking. If -brtl is somewhere in LDFLAGS, we
9454 # have runtime linking enabled, and use it for executables.
9455 # For shared libraries, we enable/disable runtime linking
9456 # depending on the kind of the shared library created -
9457 # when "with_aix_soname,aix_use_runtimelinking" is:
9458 # "aix,no" lib.a(lib.so.V) shared, rtl:no, for executables
9459 # "aix,yes" lib.so shared, rtl:yes, for executables
9460 # lib.a static archive
9461 # "both,no" lib.so.V(shr.o) shared, rtl:yes
9462 # lib.a(lib.so.V) shared, rtl:no, for executables
9463 # "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables
9464 # lib.a(lib.so.V) shared, rtl:no
9465 # "svr4,*" lib.so.V(shr.o) shared, rtl:yes, for executables
9466 # lib.a static archive
9467 case $host_os in aix4.[23]|aix4.[23].*|aix[5-9]*)
9468 for ld_flag in $LDFLAGS; do
9469 if (test x-brtl = "x$ld_flag" || test x-Wl,-brtl = "x$ld_flag"); then
9470 aix_use_runtimelinking=yes
9471 break
9472 fi
9473 done
9474 if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then
9475 # With aix-soname=svr4, we create the lib.so.V shared archives only,
9476 # so we don't have lib.a shared libs to link our executables.
9477 # We have to force runtime linking in this case.
9478 aix_use_runtimelinking=yes
9479 LDFLAGS="$LDFLAGS -Wl,-brtl"
9480 fi
9481 ;;
9482 esac
9483
9484 exp_sym_flag='-bexport'
9485 no_entry_flag='-bnoentry'
9486 fi
9487
9488 # When large executables or shared objects are built, AIX ld can
9489 # have problems creating the table of contents. If linking a library
9490 # or program results in "error TOC overflow" add -mminimal-toc to
9491 # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
9492 # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
9493
9494 archive_cmds=''
9495 hardcode_direct=yes
9496 hardcode_direct_absolute=yes
9497 hardcode_libdir_separator=':'
9498 link_all_deplibs=yes
9499 file_list_spec='$wl-f,'
9500 case $with_aix_soname,$aix_use_runtimelinking in
9501 aix,*) ;; # traditional, no import file
9502 svr4,* | *,yes) # use import file
9503 # The Import File defines what to hardcode.
9504 hardcode_direct=no
9505 hardcode_direct_absolute=no
9506 ;;
9507 esac
9508
9509 if test yes = "$GCC"; then
9510 case $host_os in aix4.[012]|aix4.[012].*)
9511 # We only want to do this on AIX 4.2 and lower, the check
9512 # below for broken collect2 doesn't work under 4.3+
9513 collect2name=`$CC -print-prog-name=collect2`
9514 if test -f "$collect2name" &&
9515 strings "$collect2name" | $GREP resolve_lib_name >/dev/null
9516 then
9517 # We have reworked collect2
9518 :
9519 else
9520 # We have old collect2
9521 hardcode_direct=unsupported
9522 # It fails to find uninstalled libraries when the uninstalled
9523 # path is not listed in the libpath. Setting hardcode_minus_L
9524 # to unsupported forces relinking
9525 hardcode_minus_L=yes
9526 hardcode_libdir_flag_spec='-L$libdir'
9527 hardcode_libdir_separator=
9528 fi
9529 ;;
9530 esac
9531 shared_flag='-shared'
9532 if test yes = "$aix_use_runtimelinking"; then
9533 shared_flag="$shared_flag "'$wl-G'
9534 fi
9535 # Need to ensure runtime linking is disabled for the traditional
9536 # shared library, or the linker may eventually find shared libraries
9537 # /with/ Import File - we do not want to mix them.
9538 shared_flag_aix='-shared'
9539 shared_flag_svr4='-shared $wl-G'
9540 else
9541 # not using gcc
9542 if test ia64 = "$host_cpu"; then
9543 # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
9544 # chokes on -Wl,-G. The following line is correct:
9545 shared_flag='-G'
9546 else
9547 if test yes = "$aix_use_runtimelinking"; then
9548 shared_flag='$wl-G'
9549 else
9550 shared_flag='$wl-bM:SRE'
9551 fi
9552 shared_flag_aix='$wl-bM:SRE'
9553 shared_flag_svr4='$wl-G'
9554 fi
9555 fi
9556
9557 export_dynamic_flag_spec='$wl-bexpall'
9558 # It seems that -bexpall does not export symbols beginning with
9559 # underscore (_), so it is better to generate a list of symbols to export.
9560 always_export_symbols=yes
9561 if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then
9562 # Warning - without using the other runtime loading flags (-brtl),
9563 # -berok will link without error, but may produce a broken library.
9564 allow_undefined_flag='-berok'
9565 # Determine the default libpath from the value encoded in an
9566 # empty executable.
9567 if test set = "${lt_cv_aix_libpath+set}"; then
9568 aix_libpath=$lt_cv_aix_libpath
9569 else
9570 if ${lt_cv_aix_libpath_+:} false; then :
9571 $as_echo_n "(cached) " >&6
9572 else
9573 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
9574 /* end confdefs.h. */
9575
9576 int
9577 main ()
9578 {
9579
9580 ;
9581 return 0;
9582 }
9583 _ACEOF
9584 if ac_fn_c_try_link "$LINENO"; then :
9585
9586 lt_aix_libpath_sed='
9587 /Import File Strings/,/^$/ {
9588 /^0/ {
9589 s/^0 *\([^ ]*\) *$/\1/
9590 p
9591 }
9592 }'
9593 lt_cv_aix_libpath_=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
9594 # Check for a 64-bit object if we didn't find anything.
9595 if test -z "$lt_cv_aix_libpath_"; then
9596 lt_cv_aix_libpath_=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
9597 fi
9598 fi
9599 rm -f core conftest.err conftest.$ac_objext \
9600 conftest$ac_exeext conftest.$ac_ext
9601 if test -z "$lt_cv_aix_libpath_"; then
9602 lt_cv_aix_libpath_=/usr/lib:/lib
9603 fi
9604
9605 fi
9606
9607 aix_libpath=$lt_cv_aix_libpath_
9608 fi
9609
9610 hardcode_libdir_flag_spec='$wl-blibpath:$libdir:'"$aix_libpath"
9611 archive_expsym_cmds='$CC -o $output_objdir/$soname $libobjs $deplibs $wl'$no_entry_flag' $compiler_flags `if test -n "$allow_undefined_flag"; then func_echo_all "$wl$allow_undefined_flag"; else :; fi` $wl'$exp_sym_flag:\$export_symbols' '$shared_flag
9612 else
9613 if test ia64 = "$host_cpu"; then
9614 hardcode_libdir_flag_spec='$wl-R $libdir:/usr/lib:/lib'
9615 allow_undefined_flag="-z nodefs"
9616 archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\$wl$no_entry_flag"' $compiler_flags $wl$allow_undefined_flag '"\$wl$exp_sym_flag:\$export_symbols"
9617 else
9618 # Determine the default libpath from the value encoded in an
9619 # empty executable.
9620 if test set = "${lt_cv_aix_libpath+set}"; then
9621 aix_libpath=$lt_cv_aix_libpath
9622 else
9623 if ${lt_cv_aix_libpath_+:} false; then :
9624 $as_echo_n "(cached) " >&6
9625 else
9626 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
9627 /* end confdefs.h. */
9628
9629 int
9630 main ()
9631 {
9632
9633 ;
9634 return 0;
9635 }
9636 _ACEOF
9637 if ac_fn_c_try_link "$LINENO"; then :
9638
9639 lt_aix_libpath_sed='
9640 /Import File Strings/,/^$/ {
9641 /^0/ {
9642 s/^0 *\([^ ]*\) *$/\1/
9643 p
9644 }
9645 }'
9646 lt_cv_aix_libpath_=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
9647 # Check for a 64-bit object if we didn't find anything.
9648 if test -z "$lt_cv_aix_libpath_"; then
9649 lt_cv_aix_libpath_=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
9650 fi
9651 fi
9652 rm -f core conftest.err conftest.$ac_objext \
9653 conftest$ac_exeext conftest.$ac_ext
9654 if test -z "$lt_cv_aix_libpath_"; then
9655 lt_cv_aix_libpath_=/usr/lib:/lib
9656 fi
9657
9658 fi
9659
9660 aix_libpath=$lt_cv_aix_libpath_
9661 fi
9662
9663 hardcode_libdir_flag_spec='$wl-blibpath:$libdir:'"$aix_libpath"
9664 # Warning - without using the other run time loading flags,
9665 # -berok will link without error, but may produce a broken library.
9666 no_undefined_flag=' $wl-bernotok'
9667 allow_undefined_flag=' $wl-berok'
9668 if test yes = "$with_gnu_ld"; then
9669 # We only use this code for GNU lds that support --whole-archive.
9670 whole_archive_flag_spec='$wl--whole-archive$convenience $wl--no-whole-archive'
9671 else
9672 # Exported symbols can be pulled into shared objects from archives
9673 whole_archive_flag_spec='$convenience'
9674 fi
9675 archive_cmds_need_lc=yes
9676 archive_expsym_cmds='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d'
9677 # -brtl affects multiple linker settings, -berok does not and is overridden later
9678 compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([, ]\\)%-berok\\1%g"`'
9679 if test svr4 != "$with_aix_soname"; then
9680 # This is similar to how AIX traditionally builds its shared libraries.
9681 archive_expsym_cmds="$archive_expsym_cmds"'~$CC '$shared_flag_aix' -o $output_objdir/$realname.d/$soname $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$realname.d/$soname'
9682 fi
9683 if test aix != "$with_aix_soname"; then
9684 archive_expsym_cmds="$archive_expsym_cmds"'~$CC '$shared_flag_svr4' -o $output_objdir/$realname.d/$shared_archive_member_spec.o $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$STRIP -e $output_objdir/$realname.d/$shared_archive_member_spec.o~( func_echo_all "#! $soname($shared_archive_member_spec.o)"; if test shr_64 = "$shared_archive_member_spec"; then func_echo_all "# 64"; else func_echo_all "# 32"; fi; cat $export_symbols ) > $output_objdir/$realname.d/$shared_archive_member_spec.imp~$AR $AR_FLAGS $output_objdir/$soname $output_objdir/$realname.d/$shared_archive_member_spec.o $output_objdir/$realname.d/$shared_archive_member_spec.imp'
9685 else
9686 # used by -dlpreopen to get the symbols
9687 archive_expsym_cmds="$archive_expsym_cmds"'~$MV $output_objdir/$realname.d/$soname $output_objdir'
9688 fi
9689 archive_expsym_cmds="$archive_expsym_cmds"'~$RM -r $output_objdir/$realname.d'
9690 fi
9691 fi
9692 ;;
9693
9694 amigaos*)
9695 case $host_cpu in
9696 powerpc)
9697 # see comment about AmigaOS4 .so support
9698 archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
9699 archive_expsym_cmds=''
9700 ;;
9701 m68k)
9702 archive_cmds='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)'
9703 hardcode_libdir_flag_spec='-L$libdir'
9704 hardcode_minus_L=yes
9705 ;;
9706 esac
9707 ;;
9708
9709 bsdi[45]*)
9710 export_dynamic_flag_spec=-rdynamic
9711 ;;
9712
9713 cygwin* | mingw* | pw32* | cegcc*)
9714 # When not using gcc, we currently assume that we are using
9715 # Microsoft Visual C++.
9716 # hardcode_libdir_flag_spec is actually meaningless, as there is
9717 # no search path for DLLs.
9718 case $cc_basename in
9719 cl*)
9720 # Native MSVC
9721 hardcode_libdir_flag_spec=' '
9722 allow_undefined_flag=unsupported
9723 always_export_symbols=yes
9724 file_list_spec='@'
9725 # Tell ltmain to make .lib files, not .a files.
9726 libext=lib
9727 # Tell ltmain to make .dll files, not .so files.
9728 shrext_cmds=.dll
9729 # FIXME: Setting linknames here is a bad hack.
9730 archive_cmds='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames='
9731 archive_expsym_cmds='if test DEF = "`$SED -n -e '\''s/^[ ]*//'\'' -e '\''/^\(;.*\)*$/d'\'' -e '\''s/^\(EXPORTS\|LIBRARY\)\([ ].*\)*$/DEF/p'\'' -e q $export_symbols`" ; then
9732 cp "$export_symbols" "$output_objdir/$soname.def";
9733 echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp";
9734 else
9735 $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp;
9736 fi~
9737 $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
9738 linknames='
9739 # The linker will not automatically build a static lib if we build a DLL.
9740 # _LT_TAGVAR(old_archive_from_new_cmds, )='true'
9741 enable_shared_with_static_runtimes=yes
9742 exclude_expsyms='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*'
9743 export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[BCDGRS][ ]/s/.*[ ]\([^ ]*\)/\1,DATA/'\'' | $SED -e '\''/^[AITW][ ]/s/.*[ ]//'\'' | sort | uniq > $export_symbols'
9744 # Don't use ranlib
9745 old_postinstall_cmds='chmod 644 $oldlib'
9746 postlink_cmds='lt_outputfile="@OUTPUT@"~
9747 lt_tool_outputfile="@TOOL_OUTPUT@"~
9748 case $lt_outputfile in
9749 *.exe|*.EXE) ;;
9750 *)
9751 lt_outputfile=$lt_outputfile.exe
9752 lt_tool_outputfile=$lt_tool_outputfile.exe
9753 ;;
9754 esac~
9755 if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then
9756 $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
9757 $RM "$lt_outputfile.manifest";
9758 fi'
9759 ;;
9760 *)
9761 # Assume MSVC wrapper
9762 hardcode_libdir_flag_spec=' '
9763 allow_undefined_flag=unsupported
9764 # Tell ltmain to make .lib files, not .a files.
9765 libext=lib
9766 # Tell ltmain to make .dll files, not .so files.
9767 shrext_cmds=.dll
9768 # FIXME: Setting linknames here is a bad hack.
9769 archive_cmds='$CC -o $lib $libobjs $compiler_flags `func_echo_all "$deplibs" | $SED '\''s/ -lc$//'\''` -link -dll~linknames='
9770 # The linker will automatically build a .lib file if we build a DLL.
9771 old_archive_from_new_cmds='true'
9772 # FIXME: Should let the user specify the lib program.
9773 old_archive_cmds='lib -OUT:$oldlib$oldobjs$old_deplibs'
9774 enable_shared_with_static_runtimes=yes
9775 ;;
9776 esac
9777 ;;
9778
9779 darwin* | rhapsody*)
9780
9781
9782 archive_cmds_need_lc=no
9783 hardcode_direct=no
9784 hardcode_automatic=yes
9785 hardcode_shlibpath_var=unsupported
9786 if test yes = "$lt_cv_ld_force_load"; then
9787 whole_archive_flag_spec='`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience $wl-force_load,$conv\"; done; func_echo_all \"$new_convenience\"`'
9788
9789 else
9790 whole_archive_flag_spec=''
9791 fi
9792 link_all_deplibs=yes
9793 allow_undefined_flag=$_lt_dar_allow_undefined
9794 case $cc_basename in
9795 ifort*|nagfor*) _lt_dar_can_shared=yes ;;
9796 *) _lt_dar_can_shared=$GCC ;;
9797 esac
9798 if test yes = "$_lt_dar_can_shared"; then
9799 output_verbose_link_cmd=func_echo_all
9800 archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dsymutil"
9801 module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dsymutil"
9802 archive_expsym_cmds="sed 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dar_export_syms$_lt_dsymutil"
9803 module_expsym_cmds="sed -e 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dar_export_syms$_lt_dsymutil"
9804
9805 else
9806 ld_shlibs=no
9807 fi
9808
9809 ;;
9810
9811 dgux*)
9812 archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
9813 hardcode_libdir_flag_spec='-L$libdir'
9814 hardcode_shlibpath_var=no
9815 ;;
9816
9817 # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
9818 # support. Future versions do this automatically, but an explicit c++rt0.o
9819 # does not break anything, and helps significantly (at the cost of a little
9820 # extra space).
9821 freebsd2.2*)
9822 archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o'
9823 hardcode_libdir_flag_spec='-R$libdir'
9824 hardcode_direct=yes
9825 hardcode_shlibpath_var=no
9826 ;;
9827
9828 # Unfortunately, older versions of FreeBSD 2 do not have this feature.
9829 freebsd2.*)
9830 archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
9831 hardcode_direct=yes
9832 hardcode_minus_L=yes
9833 hardcode_shlibpath_var=no
9834 ;;
9835
9836 # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
9837 freebsd* | dragonfly*)
9838 archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
9839 hardcode_libdir_flag_spec='-R$libdir'
9840 hardcode_direct=yes
9841 hardcode_shlibpath_var=no
9842 ;;
9843
9844 hpux9*)
9845 if test yes = "$GCC"; then
9846 archive_cmds='$RM $output_objdir/$soname~$CC -shared $pic_flag $wl+b $wl$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib'
9847 else
9848 archive_cmds='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib'
9849 fi
9850 hardcode_libdir_flag_spec='$wl+b $wl$libdir'
9851 hardcode_libdir_separator=:
9852 hardcode_direct=yes
9853
9854 # hardcode_minus_L: Not really in the search PATH,
9855 # but as the default location of the library.
9856 hardcode_minus_L=yes
9857 export_dynamic_flag_spec='$wl-E'
9858 ;;
9859
9860 hpux10*)
9861 if test yes,no = "$GCC,$with_gnu_ld"; then
9862 archive_cmds='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
9863 else
9864 archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
9865 fi
9866 if test no = "$with_gnu_ld"; then
9867 hardcode_libdir_flag_spec='$wl+b $wl$libdir'
9868 hardcode_libdir_separator=:
9869 hardcode_direct=yes
9870 hardcode_direct_absolute=yes
9871 export_dynamic_flag_spec='$wl-E'
9872 # hardcode_minus_L: Not really in the search PATH,
9873 # but as the default location of the library.
9874 hardcode_minus_L=yes
9875 fi
9876 ;;
9877
9878 hpux11*)
9879 if test yes,no = "$GCC,$with_gnu_ld"; then
9880 case $host_cpu in
9881 hppa*64*)
9882 archive_cmds='$CC -shared $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'
9883 ;;
9884 ia64*)
9885 archive_cmds='$CC -shared $pic_flag $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
9886 ;;
9887 *)
9888 archive_cmds='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
9889 ;;
9890 esac
9891 else
9892 case $host_cpu in
9893 hppa*64*)
9894 archive_cmds='$CC -b $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'
9895 ;;
9896 ia64*)
9897 archive_cmds='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
9898 ;;
9899 *)
9900
9901 # Older versions of the 11.00 compiler do not understand -b yet
9902 # (HP92453-01 A.11.01.20 doesn't, HP92453-01 B.11.X.35175-35176.GP does)
9903 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC understands -b" >&5
9904 $as_echo_n "checking if $CC understands -b... " >&6; }
9905 if ${lt_cv_prog_compiler__b+:} false; then :
9906 $as_echo_n "(cached) " >&6
9907 else
9908 lt_cv_prog_compiler__b=no
9909 save_LDFLAGS=$LDFLAGS
9910 LDFLAGS="$LDFLAGS -b"
9911 echo "$lt_simple_link_test_code" > conftest.$ac_ext
9912 if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
9913 # The linker can only warn and ignore the option if not recognized
9914 # So say no if there are warnings
9915 if test -s conftest.err; then
9916 # Append any errors to the config.log.
9917 cat conftest.err 1>&5
9918 $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp
9919 $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
9920 if diff conftest.exp conftest.er2 >/dev/null; then
9921 lt_cv_prog_compiler__b=yes
9922 fi
9923 else
9924 lt_cv_prog_compiler__b=yes
9925 fi
9926 fi
9927 $RM -r conftest*
9928 LDFLAGS=$save_LDFLAGS
9929
9930 fi
9931 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler__b" >&5
9932 $as_echo "$lt_cv_prog_compiler__b" >&6; }
9933
9934 if test yes = "$lt_cv_prog_compiler__b"; then
9935 archive_cmds='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
9936 else
9937 archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
9938 fi
9939
9940 ;;
9941 esac
9942 fi
9943 if test no = "$with_gnu_ld"; then
9944 hardcode_libdir_flag_spec='$wl+b $wl$libdir'
9945 hardcode_libdir_separator=:
9946
9947 case $host_cpu in
9948 hppa*64*|ia64*)
9949 hardcode_direct=no
9950 hardcode_shlibpath_var=no
9951 ;;
9952 *)
9953 hardcode_direct=yes
9954 hardcode_direct_absolute=yes
9955 export_dynamic_flag_spec='$wl-E'
9956
9957 # hardcode_minus_L: Not really in the search PATH,
9958 # but as the default location of the library.
9959 hardcode_minus_L=yes
9960 ;;
9961 esac
9962 fi
9963 ;;
9964
9965 irix5* | irix6* | nonstopux*)
9966 if test yes = "$GCC"; then
9967 archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib'
9968 # Try to use the -exported_symbol ld option, if it does not
9969 # work, assume that -exports_file does not work either and
9970 # implicitly export all symbols.
9971 # This should be the same for all languages, so no per-tag cache variable.
9972 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $host_os linker accepts -exported_symbol" >&5
9973 $as_echo_n "checking whether the $host_os linker accepts -exported_symbol... " >&6; }
9974 if ${lt_cv_irix_exported_symbol+:} false; then :
9975 $as_echo_n "(cached) " >&6
9976 else
9977 save_LDFLAGS=$LDFLAGS
9978 LDFLAGS="$LDFLAGS -shared $wl-exported_symbol ${wl}foo $wl-update_registry $wl/dev/null"
9979 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
9980 /* end confdefs.h. */
9981 int foo (void) { return 0; }
9982 _ACEOF
9983 if ac_fn_c_try_link "$LINENO"; then :
9984 lt_cv_irix_exported_symbol=yes
9985 else
9986 lt_cv_irix_exported_symbol=no
9987 fi
9988 rm -f core conftest.err conftest.$ac_objext \
9989 conftest$ac_exeext conftest.$ac_ext
9990 LDFLAGS=$save_LDFLAGS
9991 fi
9992 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_irix_exported_symbol" >&5
9993 $as_echo "$lt_cv_irix_exported_symbol" >&6; }
9994 if test yes = "$lt_cv_irix_exported_symbol"; then
9995 archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations $wl-exports_file $wl$export_symbols -o $lib'
9996 fi
9997 link_all_deplibs=no
9998 else
9999 archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib'
10000 archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -exports_file $export_symbols -o $lib'
10001 fi
10002 archive_cmds_need_lc='no'
10003 hardcode_libdir_flag_spec='$wl-rpath $wl$libdir'
10004 hardcode_libdir_separator=:
10005 inherit_rpath=yes
10006 link_all_deplibs=yes
10007 ;;
10008
10009 linux*)
10010 case $cc_basename in
10011 tcc*)
10012 # Fabrice Bellard et al's Tiny C Compiler
10013 ld_shlibs=yes
10014 archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
10015 ;;
10016 esac
10017 ;;
10018
10019 netbsd* | netbsdelf*-gnu)
10020 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
10021 archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out
10022 else
10023 archive_cmds='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF
10024 fi
10025 hardcode_libdir_flag_spec='-R$libdir'
10026 hardcode_direct=yes
10027 hardcode_shlibpath_var=no
10028 ;;
10029
10030 newsos6)
10031 archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
10032 hardcode_direct=yes
10033 hardcode_libdir_flag_spec='$wl-rpath $wl$libdir'
10034 hardcode_libdir_separator=:
10035 hardcode_shlibpath_var=no
10036 ;;
10037
10038 *nto* | *qnx*)
10039 ;;
10040
10041 openbsd* | bitrig*)
10042 if test -f /usr/libexec/ld.so; then
10043 hardcode_direct=yes
10044 hardcode_shlibpath_var=no
10045 hardcode_direct_absolute=yes
10046 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then
10047 archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
10048 archive_expsym_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags $wl-retain-symbols-file,$export_symbols'
10049 hardcode_libdir_flag_spec='$wl-rpath,$libdir'
10050 export_dynamic_flag_spec='$wl-E'
10051 else
10052 archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
10053 hardcode_libdir_flag_spec='$wl-rpath,$libdir'
10054 fi
10055 else
10056 ld_shlibs=no
10057 fi
10058 ;;
10059
10060 os2*)
10061 hardcode_libdir_flag_spec='-L$libdir'
10062 hardcode_minus_L=yes
10063 allow_undefined_flag=unsupported
10064 shrext_cmds=.dll
10065 archive_cmds='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
10066 $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
10067 $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
10068 $ECHO EXPORTS >> $output_objdir/$libname.def~
10069 emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~
10070 $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
10071 emximp -o $lib $output_objdir/$libname.def'
10072 archive_expsym_cmds='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
10073 $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
10074 $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
10075 $ECHO EXPORTS >> $output_objdir/$libname.def~
10076 prefix_cmds="$SED"~
10077 if test EXPORTS = "`$SED 1q $export_symbols`"; then
10078 prefix_cmds="$prefix_cmds -e 1d";
10079 fi~
10080 prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~
10081 cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~
10082 $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
10083 emximp -o $lib $output_objdir/$libname.def'
10084 old_archive_From_new_cmds='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'
10085 enable_shared_with_static_runtimes=yes
10086 ;;
10087
10088 osf3*)
10089 if test yes = "$GCC"; then
10090 allow_undefined_flag=' $wl-expect_unresolved $wl\*'
10091 archive_cmds='$CC -shared$allow_undefined_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib'
10092 else
10093 allow_undefined_flag=' -expect_unresolved \*'
10094 archive_cmds='$CC -shared$allow_undefined_flag $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib'
10095 fi
10096 archive_cmds_need_lc='no'
10097 hardcode_libdir_flag_spec='$wl-rpath $wl$libdir'
10098 hardcode_libdir_separator=:
10099 ;;
10100
10101 osf4* | osf5*) # as osf3* with the addition of -msym flag
10102 if test yes = "$GCC"; then
10103 allow_undefined_flag=' $wl-expect_unresolved $wl\*'
10104 archive_cmds='$CC -shared$allow_undefined_flag $pic_flag $libobjs $deplibs $compiler_flags $wl-msym $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib'
10105 hardcode_libdir_flag_spec='$wl-rpath $wl$libdir'
10106 else
10107 allow_undefined_flag=' -expect_unresolved \*'
10108 archive_cmds='$CC -shared$allow_undefined_flag $libobjs $deplibs $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib'
10109 archive_expsym_cmds='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; printf "%s\\n" "-hidden">> $lib.exp~
10110 $CC -shared$allow_undefined_flag $wl-input $wl$lib.exp $compiler_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib~$RM $lib.exp'
10111
10112 # Both c and cxx compiler support -rpath directly
10113 hardcode_libdir_flag_spec='-rpath $libdir'
10114 fi
10115 archive_cmds_need_lc='no'
10116 hardcode_libdir_separator=:
10117 ;;
10118
10119 solaris*)
10120 no_undefined_flag=' -z defs'
10121 if test yes = "$GCC"; then
10122 wlarc='$wl'
10123 archive_cmds='$CC -shared $pic_flag $wl-z ${wl}text $wl-h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'
10124 archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
10125 $CC -shared $pic_flag $wl-z ${wl}text $wl-M $wl$lib.exp $wl-h $wl$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
10126 else
10127 case `$CC -V 2>&1` in
10128 *"Compilers 5.0"*)
10129 wlarc=''
10130 archive_cmds='$LD -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $linker_flags'
10131 archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
10132 $LD -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp'
10133 ;;
10134 *)
10135 wlarc='$wl'
10136 archive_cmds='$CC -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $compiler_flags'
10137 archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
10138 $CC -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
10139 ;;
10140 esac
10141 fi
10142 hardcode_libdir_flag_spec='-R$libdir'
10143 hardcode_shlibpath_var=no
10144 case $host_os in
10145 solaris2.[0-5] | solaris2.[0-5].*) ;;
10146 *)
10147 # The compiler driver will combine and reorder linker options,
10148 # but understands '-z linker_flag'. GCC discards it without '$wl',
10149 # but is careful enough not to reorder.
10150 # Supported since Solaris 2.6 (maybe 2.5.1?)
10151 if test yes = "$GCC"; then
10152 whole_archive_flag_spec='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract'
10153 else
10154 whole_archive_flag_spec='-z allextract$convenience -z defaultextract'
10155 fi
10156 ;;
10157 esac
10158 link_all_deplibs=yes
10159 ;;
10160
10161 sunos4*)
10162 if test sequent = "$host_vendor"; then
10163 # Use $CC to link under sequent, because it throws in some extra .o
10164 # files that make .init and .fini sections work.
10165 archive_cmds='$CC -G $wl-h $soname -o $lib $libobjs $deplibs $compiler_flags'
10166 else
10167 archive_cmds='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags'
10168 fi
10169 hardcode_libdir_flag_spec='-L$libdir'
10170 hardcode_direct=yes
10171 hardcode_minus_L=yes
10172 hardcode_shlibpath_var=no
10173 ;;
10174
10175 sysv4)
10176 case $host_vendor in
10177 sni)
10178 archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
10179 hardcode_direct=yes # is this really true???
10180 ;;
10181 siemens)
10182 ## LD is ld it makes a PLAMLIB
10183 ## CC just makes a GrossModule.
10184 archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags'
10185 reload_cmds='$CC -r -o $output$reload_objs'
10186 hardcode_direct=no
10187 ;;
10188 motorola)
10189 archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
10190 hardcode_direct=no #Motorola manual says yes, but my tests say they lie
10191 ;;
10192 esac
10193 runpath_var='LD_RUN_PATH'
10194 hardcode_shlibpath_var=no
10195 ;;
10196
10197 sysv4.3*)
10198 archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
10199 hardcode_shlibpath_var=no
10200 export_dynamic_flag_spec='-Bexport'
10201 ;;
10202
10203 sysv4*MP*)
10204 if test -d /usr/nec; then
10205 archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
10206 hardcode_shlibpath_var=no
10207 runpath_var=LD_RUN_PATH
10208 hardcode_runpath_var=yes
10209 ld_shlibs=yes
10210 fi
10211 ;;
10212
10213 sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[01].[10]* | unixware7* | sco3.2v5.0.[024]*)
10214 no_undefined_flag='$wl-z,text'
10215 archive_cmds_need_lc=no
10216 hardcode_shlibpath_var=no
10217 runpath_var='LD_RUN_PATH'
10218
10219 if test yes = "$GCC"; then
10220 archive_cmds='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
10221 archive_expsym_cmds='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
10222 else
10223 archive_cmds='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
10224 archive_expsym_cmds='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
10225 fi
10226 ;;
10227
10228 sysv5* | sco3.2v5* | sco5v6*)
10229 # Note: We CANNOT use -z defs as we might desire, because we do not
10230 # link with -lc, and that would cause any symbols used from libc to
10231 # always be unresolved, which means just about no library would
10232 # ever link correctly. If we're not using GNU ld we use -z text
10233 # though, which does catch some bad symbols but isn't as heavy-handed
10234 # as -z defs.
10235 no_undefined_flag='$wl-z,text'
10236 allow_undefined_flag='$wl-z,nodefs'
10237 archive_cmds_need_lc=no
10238 hardcode_shlibpath_var=no
10239 hardcode_libdir_flag_spec='$wl-R,$libdir'
10240 hardcode_libdir_separator=':'
10241 link_all_deplibs=yes
10242 export_dynamic_flag_spec='$wl-Bexport'
10243 runpath_var='LD_RUN_PATH'
10244
10245 if test yes = "$GCC"; then
10246 archive_cmds='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
10247 archive_expsym_cmds='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
10248 else
10249 archive_cmds='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
10250 archive_expsym_cmds='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
10251 fi
10252 ;;
10253
10254 uts4*)
10255 archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
10256 hardcode_libdir_flag_spec='-L$libdir'
10257 hardcode_shlibpath_var=no
10258 ;;
10259
10260 *)
10261 ld_shlibs=no
10262 ;;
10263 esac
10264
10265 if test sni = "$host_vendor"; then
10266 case $host in
10267 sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
10268 export_dynamic_flag_spec='$wl-Blargedynsym'
10269 ;;
10270 esac
10271 fi
10272 fi
10273
10274 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs" >&5
10275 $as_echo "$ld_shlibs" >&6; }
10276 test no = "$ld_shlibs" && can_build_shared=no
10277
10278 with_gnu_ld=$with_gnu_ld
10279
10280
10281
10282
10283
10284
10285
10286
10287
10288
10289
10290
10291
10292
10293
10294 #
10295 # Do we need to explicitly link libc?
10296 #
10297 case "x$archive_cmds_need_lc" in
10298 x|xyes)
10299 # Assume -lc should be added
10300 archive_cmds_need_lc=yes
10301
10302 if test yes,yes = "$GCC,$enable_shared"; then
10303 case $archive_cmds in
10304 *'~'*)
10305 # FIXME: we may have to deal with multi-command sequences.
10306 ;;
10307 '$CC '*)
10308 # Test whether the compiler implicitly links with -lc since on some
10309 # systems, -lgcc has to come before -lc. If gcc already passes -lc
10310 # to ld, don't add -lc before -lgcc.
10311 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -lc should be explicitly linked in" >&5
10312 $as_echo_n "checking whether -lc should be explicitly linked in... " >&6; }
10313 if ${lt_cv_archive_cmds_need_lc+:} false; then :
10314 $as_echo_n "(cached) " >&6
10315 else
10316 $RM conftest*
10317 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
10318
10319 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
10320 (eval $ac_compile) 2>&5
10321 ac_status=$?
10322 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
10323 test $ac_status = 0; } 2>conftest.err; then
10324 soname=conftest
10325 lib=conftest
10326 libobjs=conftest.$ac_objext
10327 deplibs=
10328 wl=$lt_prog_compiler_wl
10329 pic_flag=$lt_prog_compiler_pic
10330 compiler_flags=-v
10331 linker_flags=-v
10332 verstring=
10333 output_objdir=.
10334 libname=conftest
10335 lt_save_allow_undefined_flag=$allow_undefined_flag
10336 allow_undefined_flag=
10337 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$archive_cmds 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1\""; } >&5
10338 (eval $archive_cmds 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1) 2>&5
10339 ac_status=$?
10340 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
10341 test $ac_status = 0; }
10342 then
10343 lt_cv_archive_cmds_need_lc=no
10344 else
10345 lt_cv_archive_cmds_need_lc=yes
10346 fi
10347 allow_undefined_flag=$lt_save_allow_undefined_flag
10348 else
10349 cat conftest.err 1>&5
10350 fi
10351 $RM conftest*
10352
10353 fi
10354 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_archive_cmds_need_lc" >&5
10355 $as_echo "$lt_cv_archive_cmds_need_lc" >&6; }
10356 archive_cmds_need_lc=$lt_cv_archive_cmds_need_lc
10357 ;;
10358 esac
10359 fi
10360 ;;
10361 esac
10362
10363
10364
10365
10366
10367
10368
10369
10370
10371
10372
10373
10374
10375
10376
10377
10378
10379
10380
10381
10382
10383
10384
10385
10386
10387
10388
10389
10390
10391
10392
10393
10394
10395
10396
10397
10398
10399
10400
10401
10402
10403
10404
10405
10406
10407
10408
10409
10410
10411
10412
10413
10414
10415
10416
10417
10418
10419
10420
10421
10422
10423
10424
10425
10426
10427
10428
10429
10430
10431
10432
10433
10434
10435
10436
10437
10438
10439
10440
10441
10442
10443
10444
10445
10446
10447
10448
10449
10450
10451
10452
10453
10454
10455
10456
10457
10458
10459
10460
10461
10462
10463
10464
10465
10466
10467
10468
10469
10470
10471
10472
10473
10474
10475
10476
10477
10478
10479
10480
10481
10482
10483
10484
10485
10486
10487
10488
10489
10490
10491
10492
10493
10494
10495
10496
10497
10498
10499
10500
10501
10502
10503
10504
10505
10506
10507
10508
10509
10510
10511
10512
10513
10514 { $as_echo "$as_me:${as_lineno-$LINENO}: checking dynamic linker characteristics" >&5
10515 $as_echo_n "checking dynamic linker characteristics... " >&6; }
10516
10517 if test yes = "$GCC"; then
10518 case $host_os in
10519 darwin*) lt_awk_arg='/^libraries:/,/LR/' ;;
10520 *) lt_awk_arg='/^libraries:/' ;;
10521 esac
10522 case $host_os in
10523 mingw* | cegcc*) lt_sed_strip_eq='s|=\([A-Za-z]:\)|\1|g' ;;
10524 *) lt_sed_strip_eq='s|=/|/|g' ;;
10525 esac
10526 lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e $lt_sed_strip_eq`
10527 case $lt_search_path_spec in
10528 *\;*)
10529 # if the path contains ";" then we assume it to be the separator
10530 # otherwise default to the standard path separator (i.e. ":") - it is
10531 # assumed that no part of a normal pathname contains ";" but that should
10532 # okay in the real world where ";" in dirpaths is itself problematic.
10533 lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED 's/;/ /g'`
10534 ;;
10535 *)
10536 lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED "s/$PATH_SEPARATOR/ /g"`
10537 ;;
10538 esac
10539 # Ok, now we have the path, separated by spaces, we can step through it
10540 # and add multilib dir if necessary...
10541 lt_tmp_lt_search_path_spec=
10542 lt_multi_os_dir=/`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null`
10543 # ...but if some path component already ends with the multilib dir we assume
10544 # that all is fine and trust -print-search-dirs as is (GCC 4.2? or newer).
10545 case "$lt_multi_os_dir; $lt_search_path_spec " in
10546 "/; "* | "/.; "* | "/./; "* | *"$lt_multi_os_dir "* | *"$lt_multi_os_dir/ "*)
10547 lt_multi_os_dir=
10548 ;;
10549 esac
10550 for lt_sys_path in $lt_search_path_spec; do
10551 if test -d "$lt_sys_path$lt_multi_os_dir"; then
10552 lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path$lt_multi_os_dir"
10553 elif test -n "$lt_multi_os_dir"; then
10554 test -d "$lt_sys_path" && \
10555 lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path"
10556 fi
10557 done
10558 lt_search_path_spec=`$ECHO "$lt_tmp_lt_search_path_spec" | awk '
10559 BEGIN {RS = " "; FS = "/|\n";} {
10560 lt_foo = "";
10561 lt_count = 0;
10562 for (lt_i = NF; lt_i > 0; lt_i--) {
10563 if ($lt_i != "" && $lt_i != ".") {
10564 if ($lt_i == "..") {
10565 lt_count++;
10566 } else {
10567 if (lt_count == 0) {
10568 lt_foo = "/" $lt_i lt_foo;
10569 } else {
10570 lt_count--;
10571 }
10572 }
10573 }
10574 }
10575 if (lt_foo != "") { lt_freq[lt_foo]++; }
10576 if (lt_freq[lt_foo] == 1) { print lt_foo; }
10577 }'`
10578 # AWK program above erroneously prepends '/' to C:/dos/paths
10579 # for these hosts.
10580 case $host_os in
10581 mingw* | cegcc*) lt_search_path_spec=`$ECHO "$lt_search_path_spec" |\
10582 $SED 's|/\([A-Za-z]:\)|\1|g'` ;;
10583 esac
10584 sys_lib_search_path_spec=`$ECHO "$lt_search_path_spec" | $lt_NL2SP`
10585 else
10586 sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
10587 fi
10588 library_names_spec=
10589 libname_spec='lib$name'
10590 soname_spec=
10591 shrext_cmds=.so
10592 postinstall_cmds=
10593 postuninstall_cmds=
10594 finish_cmds=
10595 finish_eval=
10596 shlibpath_var=
10597 shlibpath_overrides_runpath=unknown
10598 version_type=none
10599 dynamic_linker="$host_os ld.so"
10600 sys_lib_dlsearch_path_spec="/lib /usr/lib"
10601 need_lib_prefix=unknown
10602 hardcode_into_libs=no
10603
10604 # when you set need_version to no, make sure it does not cause -set_version
10605 # flags to be left without arguments
10606 need_version=unknown
10607
10608
10609
10610 case $host_os in
10611 aix3*)
10612 version_type=linux # correct to gnu/linux during the next big refactor
10613 library_names_spec='$libname$release$shared_ext$versuffix $libname.a'
10614 shlibpath_var=LIBPATH
10615
10616 # AIX 3 has no versioning support, so we append a major version to the name.
10617 soname_spec='$libname$release$shared_ext$major'
10618 ;;
10619
10620 aix[4-9]*)
10621 version_type=linux # correct to gnu/linux during the next big refactor
10622 need_lib_prefix=no
10623 need_version=no
10624 hardcode_into_libs=yes
10625 if test ia64 = "$host_cpu"; then
10626 # AIX 5 supports IA64
10627 library_names_spec='$libname$release$shared_ext$major $libname$release$shared_ext$versuffix $libname$shared_ext'
10628 shlibpath_var=LD_LIBRARY_PATH
10629 else
10630 # With GCC up to 2.95.x, collect2 would create an import file
10631 # for dependence libraries. The import file would start with
10632 # the line '#! .'. This would cause the generated library to
10633 # depend on '.', always an invalid library. This was fixed in
10634 # development snapshots of GCC prior to 3.0.
10635 case $host_os in
10636 aix4 | aix4.[01] | aix4.[01].*)
10637 if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
10638 echo ' yes '
10639 echo '#endif'; } | $CC -E - | $GREP yes > /dev/null; then
10640 :
10641 else
10642 can_build_shared=no
10643 fi
10644 ;;
10645 esac
10646 # Using Import Files as archive members, it is possible to support
10647 # filename-based versioning of shared library archives on AIX. While
10648 # this would work for both with and without runtime linking, it will
10649 # prevent static linking of such archives. So we do filename-based
10650 # shared library versioning with .so extension only, which is used
10651 # when both runtime linking and shared linking is enabled.
10652 # Unfortunately, runtime linking may impact performance, so we do
10653 # not want this to be the default eventually. Also, we use the
10654 # versioned .so libs for executables only if there is the -brtl
10655 # linker flag in LDFLAGS as well, or --with-aix-soname=svr4 only.
10656 # To allow for filename-based versioning support, we need to create
10657 # libNAME.so.V as an archive file, containing:
10658 # *) an Import File, referring to the versioned filename of the
10659 # archive as well as the shared archive member, telling the
10660 # bitwidth (32 or 64) of that shared object, and providing the
10661 # list of exported symbols of that shared object, eventually
10662 # decorated with the 'weak' keyword
10663 # *) the shared object with the F_LOADONLY flag set, to really avoid
10664 # it being seen by the linker.
10665 # At run time we better use the real file rather than another symlink,
10666 # but for link time we create the symlink libNAME.so -> libNAME.so.V
10667
10668 case $with_aix_soname,$aix_use_runtimelinking in
10669 # AIX (on Power*) has no versioning support, so currently we cannot hardcode correct
10670 # soname into executable. Probably we can add versioning support to
10671 # collect2, so additional links can be useful in future.
10672 aix,yes) # traditional libtool
10673 dynamic_linker='AIX unversionable lib.so'
10674 # If using run time linking (on AIX 4.2 or later) use lib<name>.so
10675 # instead of lib<name>.a to let people know that these are not
10676 # typical AIX shared libraries.
10677 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
10678 ;;
10679 aix,no) # traditional AIX only
10680 dynamic_linker='AIX lib.a(lib.so.V)'
10681 # We preserve .a as extension for shared libraries through AIX4.2
10682 # and later when we are not doing run time linking.
10683 library_names_spec='$libname$release.a $libname.a'
10684 soname_spec='$libname$release$shared_ext$major'
10685 ;;
10686 svr4,*) # full svr4 only
10687 dynamic_linker="AIX lib.so.V($shared_archive_member_spec.o)"
10688 library_names_spec='$libname$release$shared_ext$major $libname$shared_ext'
10689 # We do not specify a path in Import Files, so LIBPATH fires.
10690 shlibpath_overrides_runpath=yes
10691 ;;
10692 *,yes) # both, prefer svr4
10693 dynamic_linker="AIX lib.so.V($shared_archive_member_spec.o), lib.a(lib.so.V)"
10694 library_names_spec='$libname$release$shared_ext$major $libname$shared_ext'
10695 # unpreferred sharedlib libNAME.a needs extra handling
10696 postinstall_cmds='test -n "$linkname" || linkname="$realname"~func_stripname "" ".so" "$linkname"~$install_shared_prog "$dir/$func_stripname_result.$libext" "$destdir/$func_stripname_result.$libext"~test -z "$tstripme" || test -z "$striplib" || $striplib "$destdir/$func_stripname_result.$libext"'
10697 postuninstall_cmds='for n in $library_names $old_library; do :; done~func_stripname "" ".so" "$n"~test "$func_stripname_result" = "$n" || func_append rmfiles " $odir/$func_stripname_result.$libext"'
10698 # We do not specify a path in Import Files, so LIBPATH fires.
10699 shlibpath_overrides_runpath=yes
10700 ;;
10701 *,no) # both, prefer aix
10702 dynamic_linker="AIX lib.a(lib.so.V), lib.so.V($shared_archive_member_spec.o)"
10703 library_names_spec='$libname$release.a $libname.a'
10704 soname_spec='$libname$release$shared_ext$major'
10705 # unpreferred sharedlib libNAME.so.V and symlink libNAME.so need extra handling
10706 postinstall_cmds='test -z "$dlname" || $install_shared_prog $dir/$dlname $destdir/$dlname~test -z "$tstripme" || test -z "$striplib" || $striplib $destdir/$dlname~test -n "$linkname" || linkname=$realname~func_stripname "" ".a" "$linkname"~(cd "$destdir" && $LN_S -f $dlname $func_stripname_result.so)'
10707 postuninstall_cmds='test -z "$dlname" || func_append rmfiles " $odir/$dlname"~for n in $old_library $library_names; do :; done~func_stripname "" ".a" "$n"~func_append rmfiles " $odir/$func_stripname_result.so"'
10708 ;;
10709 esac
10710 shlibpath_var=LIBPATH
10711 fi
10712 ;;
10713
10714 amigaos*)
10715 case $host_cpu in
10716 powerpc)
10717 # Since July 2007 AmigaOS4 officially supports .so libraries.
10718 # When compiling the executable, add -use-dynld -Lsobjs: to the compileline.
10719 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
10720 ;;
10721 m68k)
10722 library_names_spec='$libname.ixlibrary $libname.a'
10723 # Create ${libname}_ixlibrary.a entries in /sys/libs.
10724 finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`func_echo_all "$lib" | $SED '\''s%^.*/\([^/]*\)\.ixlibrary$%\1%'\''`; $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done'
10725 ;;
10726 esac
10727 ;;
10728
10729 beos*)
10730 library_names_spec='$libname$shared_ext'
10731 dynamic_linker="$host_os ld.so"
10732 shlibpath_var=LIBRARY_PATH
10733 ;;
10734
10735 bsdi[45]*)
10736 version_type=linux # correct to gnu/linux during the next big refactor
10737 need_version=no
10738 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
10739 soname_spec='$libname$release$shared_ext$major'
10740 finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
10741 shlibpath_var=LD_LIBRARY_PATH
10742 sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
10743 sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
10744 # the default ld.so.conf also contains /usr/contrib/lib and
10745 # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
10746 # libtool to hard-code these into programs
10747 ;;
10748
10749 cygwin* | mingw* | pw32* | cegcc*)
10750 version_type=windows
10751 shrext_cmds=.dll
10752 need_version=no
10753 need_lib_prefix=no
10754
10755 case $GCC,$cc_basename in
10756 yes,*)
10757 # gcc
10758 library_names_spec='$libname.dll.a'
10759 # DLL is installed to $(libdir)/../bin by postinstall_cmds
10760 postinstall_cmds='base_file=`basename \$file`~
10761 dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~
10762 dldir=$destdir/`dirname \$dlpath`~
10763 test -d \$dldir || mkdir -p \$dldir~
10764 $install_prog $dir/$dlname \$dldir/$dlname~
10765 chmod a+x \$dldir/$dlname~
10766 if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
10767 eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
10768 fi'
10769 postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
10770 dlpath=$dir/\$dldll~
10771 $RM \$dlpath'
10772 shlibpath_overrides_runpath=yes
10773
10774 case $host_os in
10775 cygwin*)
10776 # Cygwin DLLs use 'cyg' prefix rather than 'lib'
10777 soname_spec='`echo $libname | sed -e 's/^lib/cyg/'``echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'
10778
10779 sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api"
10780 ;;
10781 mingw* | cegcc*)
10782 # MinGW DLLs use traditional 'lib' prefix
10783 soname_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'
10784 ;;
10785 pw32*)
10786 # pw32 DLLs use 'pw' prefix rather than 'lib'
10787 library_names_spec='`echo $libname | sed -e 's/^lib/pw/'``echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'
10788 ;;
10789 esac
10790 dynamic_linker='Win32 ld.exe'
10791 ;;
10792
10793 *,cl*)
10794 # Native MSVC
10795 libname_spec='$name'
10796 soname_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'
10797 library_names_spec='$libname.dll.lib'
10798
10799 case $build_os in
10800 mingw*)
10801 sys_lib_search_path_spec=
10802 lt_save_ifs=$IFS
10803 IFS=';'
10804 for lt_path in $LIB
10805 do
10806 IFS=$lt_save_ifs
10807 # Let DOS variable expansion print the short 8.3 style file name.
10808 lt_path=`cd "$lt_path" 2>/dev/null && cmd //C "for %i in (".") do @echo %~si"`
10809 sys_lib_search_path_spec="$sys_lib_search_path_spec $lt_path"
10810 done
10811 IFS=$lt_save_ifs
10812 # Convert to MSYS style.
10813 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | sed -e 's|\\\\|/|g' -e 's| \\([a-zA-Z]\\):| /\\1|g' -e 's|^ ||'`
10814 ;;
10815 cygwin*)
10816 # Convert to unix form, then to dos form, then back to unix form
10817 # but this time dos style (no spaces!) so that the unix form looks
10818 # like /cygdrive/c/PROGRA~1:/cygdr...
10819 sys_lib_search_path_spec=`cygpath --path --unix "$LIB"`
10820 sys_lib_search_path_spec=`cygpath --path --dos "$sys_lib_search_path_spec" 2>/dev/null`
10821 sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
10822 ;;
10823 *)
10824 sys_lib_search_path_spec=$LIB
10825 if $ECHO "$sys_lib_search_path_spec" | $GREP ';[c-zC-Z]:/' >/dev/null; then
10826 # It is most probably a Windows format PATH.
10827 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
10828 else
10829 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
10830 fi
10831 # FIXME: find the short name or the path components, as spaces are
10832 # common. (e.g. "Program Files" -> "PROGRA~1")
10833 ;;
10834 esac
10835
10836 # DLL is installed to $(libdir)/../bin by postinstall_cmds
10837 postinstall_cmds='base_file=`basename \$file`~
10838 dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~
10839 dldir=$destdir/`dirname \$dlpath`~
10840 test -d \$dldir || mkdir -p \$dldir~
10841 $install_prog $dir/$dlname \$dldir/$dlname'
10842 postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
10843 dlpath=$dir/\$dldll~
10844 $RM \$dlpath'
10845 shlibpath_overrides_runpath=yes
10846 dynamic_linker='Win32 link.exe'
10847 ;;
10848
10849 *)
10850 # Assume MSVC wrapper
10851 library_names_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext $libname.lib'
10852 dynamic_linker='Win32 ld.exe'
10853 ;;
10854 esac
10855 # FIXME: first we should search . and the directory the executable is in
10856 shlibpath_var=PATH
10857 ;;
10858
10859 darwin* | rhapsody*)
10860 dynamic_linker="$host_os dyld"
10861 version_type=darwin
10862 need_lib_prefix=no
10863 need_version=no
10864 library_names_spec='$libname$release$major$shared_ext $libname$shared_ext'
10865 soname_spec='$libname$release$major$shared_ext'
10866 shlibpath_overrides_runpath=yes
10867 shlibpath_var=DYLD_LIBRARY_PATH
10868 shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
10869
10870 sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"
10871 sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'
10872 ;;
10873
10874 dgux*)
10875 version_type=linux # correct to gnu/linux during the next big refactor
10876 need_lib_prefix=no
10877 need_version=no
10878 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
10879 soname_spec='$libname$release$shared_ext$major'
10880 shlibpath_var=LD_LIBRARY_PATH
10881 ;;
10882
10883 freebsd* | dragonfly*)
10884 # DragonFly does not have aout. When/if they implement a new
10885 # versioning mechanism, adjust this.
10886 if test -x /usr/bin/objformat; then
10887 objformat=`/usr/bin/objformat`
10888 else
10889 case $host_os in
10890 freebsd[23].*) objformat=aout ;;
10891 *) objformat=elf ;;
10892 esac
10893 fi
10894 version_type=freebsd-$objformat
10895 case $version_type in
10896 freebsd-elf*)
10897 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
10898 soname_spec='$libname$release$shared_ext$major'
10899 need_version=no
10900 need_lib_prefix=no
10901 ;;
10902 freebsd-*)
10903 library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
10904 need_version=yes
10905 ;;
10906 esac
10907 shlibpath_var=LD_LIBRARY_PATH
10908 case $host_os in
10909 freebsd2.*)
10910 shlibpath_overrides_runpath=yes
10911 ;;
10912 freebsd3.[01]* | freebsdelf3.[01]*)
10913 shlibpath_overrides_runpath=yes
10914 hardcode_into_libs=yes
10915 ;;
10916 freebsd3.[2-9]* | freebsdelf3.[2-9]* | \
10917 freebsd4.[0-5] | freebsdelf4.[0-5] | freebsd4.1.1 | freebsdelf4.1.1)
10918 shlibpath_overrides_runpath=no
10919 hardcode_into_libs=yes
10920 ;;
10921 *) # from 4.6 on, and DragonFly
10922 shlibpath_overrides_runpath=yes
10923 hardcode_into_libs=yes
10924 ;;
10925 esac
10926 ;;
10927
10928 haiku*)
10929 version_type=linux # correct to gnu/linux during the next big refactor
10930 need_lib_prefix=no
10931 need_version=no
10932 dynamic_linker="$host_os runtime_loader"
10933 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
10934 soname_spec='$libname$release$shared_ext$major'
10935 shlibpath_var=LIBRARY_PATH
10936 shlibpath_overrides_runpath=no
10937 sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib'
10938 hardcode_into_libs=yes
10939 ;;
10940
10941 hpux9* | hpux10* | hpux11*)
10942 # Give a soname corresponding to the major version so that dld.sl refuses to
10943 # link against other versions.
10944 version_type=sunos
10945 need_lib_prefix=no
10946 need_version=no
10947 case $host_cpu in
10948 ia64*)
10949 shrext_cmds='.so'
10950 hardcode_into_libs=yes
10951 dynamic_linker="$host_os dld.so"
10952 shlibpath_var=LD_LIBRARY_PATH
10953 shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
10954 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
10955 soname_spec='$libname$release$shared_ext$major'
10956 if test 32 = "$HPUX_IA64_MODE"; then
10957 sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"
10958 sys_lib_dlsearch_path_spec=/usr/lib/hpux32
10959 else
10960 sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"
10961 sys_lib_dlsearch_path_spec=/usr/lib/hpux64
10962 fi
10963 ;;
10964 hppa*64*)
10965 shrext_cmds='.sl'
10966 hardcode_into_libs=yes
10967 dynamic_linker="$host_os dld.sl"
10968 shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH
10969 shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
10970 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
10971 soname_spec='$libname$release$shared_ext$major'
10972 sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64"
10973 sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
10974 ;;
10975 *)
10976 shrext_cmds='.sl'
10977 dynamic_linker="$host_os dld.sl"
10978 shlibpath_var=SHLIB_PATH
10979 shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
10980 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
10981 soname_spec='$libname$release$shared_ext$major'
10982 ;;
10983 esac
10984 # HP-UX runs *really* slowly unless shared libraries are mode 555, ...
10985 postinstall_cmds='chmod 555 $lib'
10986 # or fails outright, so override atomically:
10987 install_override_mode=555
10988 ;;
10989
10990 interix[3-9]*)
10991 version_type=linux # correct to gnu/linux during the next big refactor
10992 need_lib_prefix=no
10993 need_version=no
10994 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
10995 soname_spec='$libname$release$shared_ext$major'
10996 dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)'
10997 shlibpath_var=LD_LIBRARY_PATH
10998 shlibpath_overrides_runpath=no
10999 hardcode_into_libs=yes
11000 ;;
11001
11002 irix5* | irix6* | nonstopux*)
11003 case $host_os in
11004 nonstopux*) version_type=nonstopux ;;
11005 *)
11006 if test yes = "$lt_cv_prog_gnu_ld"; then
11007 version_type=linux # correct to gnu/linux during the next big refactor
11008 else
11009 version_type=irix
11010 fi ;;
11011 esac
11012 need_lib_prefix=no
11013 need_version=no
11014 soname_spec='$libname$release$shared_ext$major'
11015 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$release$shared_ext $libname$shared_ext'
11016 case $host_os in
11017 irix5* | nonstopux*)
11018 libsuff= shlibsuff=
11019 ;;
11020 *)
11021 case $LD in # libtool.m4 will add one of these switches to LD
11022 *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ")
11023 libsuff= shlibsuff= libmagic=32-bit;;
11024 *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ")
11025 libsuff=32 shlibsuff=N32 libmagic=N32;;
11026 *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ")
11027 libsuff=64 shlibsuff=64 libmagic=64-bit;;
11028 *) libsuff= shlibsuff= libmagic=never-match;;
11029 esac
11030 ;;
11031 esac
11032 shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
11033 shlibpath_overrides_runpath=no
11034 sys_lib_search_path_spec="/usr/lib$libsuff /lib$libsuff /usr/local/lib$libsuff"
11035 sys_lib_dlsearch_path_spec="/usr/lib$libsuff /lib$libsuff"
11036 hardcode_into_libs=yes
11037 ;;
11038
11039 # No shared lib support for Linux oldld, aout, or coff.
11040 linux*oldld* | linux*aout* | linux*coff*)
11041 dynamic_linker=no
11042 ;;
11043
11044 linux*android*)
11045 version_type=none # Android doesn't support versioned libraries.
11046 need_lib_prefix=no
11047 need_version=no
11048 library_names_spec='$libname$release$shared_ext'
11049 soname_spec='$libname$release$shared_ext'
11050 finish_cmds=
11051 shlibpath_var=LD_LIBRARY_PATH
11052 shlibpath_overrides_runpath=yes
11053
11054 # This implies no fast_install, which is unacceptable.
11055 # Some rework will be needed to allow for fast_install
11056 # before this can be enabled.
11057 hardcode_into_libs=yes
11058
11059 dynamic_linker='Android linker'
11060 # Don't embed -rpath directories since the linker doesn't support them.
11061 hardcode_libdir_flag_spec='-L$libdir'
11062 ;;
11063
11064 # This must be glibc/ELF.
11065 linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
11066 version_type=linux # correct to gnu/linux during the next big refactor
11067 need_lib_prefix=no
11068 need_version=no
11069 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
11070 soname_spec='$libname$release$shared_ext$major'
11071 finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
11072 shlibpath_var=LD_LIBRARY_PATH
11073 shlibpath_overrides_runpath=no
11074
11075 # Some binutils ld are patched to set DT_RUNPATH
11076 if ${lt_cv_shlibpath_overrides_runpath+:} false; then :
11077 $as_echo_n "(cached) " >&6
11078 else
11079 lt_cv_shlibpath_overrides_runpath=no
11080 save_LDFLAGS=$LDFLAGS
11081 save_libdir=$libdir
11082 eval "libdir=/foo; wl=\"$lt_prog_compiler_wl\"; \
11083 LDFLAGS=\"\$LDFLAGS $hardcode_libdir_flag_spec\""
11084 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
11085 /* end confdefs.h. */
11086
11087 int
11088 main ()
11089 {
11090
11091 ;
11092 return 0;
11093 }
11094 _ACEOF
11095 if ac_fn_c_try_link "$LINENO"; then :
11096 if ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null; then :
11097 lt_cv_shlibpath_overrides_runpath=yes
11098 fi
11099 fi
11100 rm -f core conftest.err conftest.$ac_objext \
11101 conftest$ac_exeext conftest.$ac_ext
11102 LDFLAGS=$save_LDFLAGS
11103 libdir=$save_libdir
11104
11105 fi
11106
11107 shlibpath_overrides_runpath=$lt_cv_shlibpath_overrides_runpath
11108
11109 # This implies no fast_install, which is unacceptable.
11110 # Some rework will be needed to allow for fast_install
11111 # before this can be enabled.
11112 hardcode_into_libs=yes
11113
11114 # Ideally, we could use ldconfig to report *all* directores which are
11115 # searched for libraries, however this is still not possible. Aside from not
11116 # being certain /sbin/ldconfig is available, command
11117 # 'ldconfig -N -X -v | grep ^/' on 64bit Fedora does not report /usr/lib64,
11118 # even though it is searched at run-time. Try to do the best guess by
11119 # appending ld.so.conf contents (and includes) to the search path.
11120 if test -f /etc/ld.so.conf; then
11121 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' ' '`
11122 sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
11123 fi
11124
11125 # We used to test for /lib/ld.so.1 and disable shared libraries on
11126 # powerpc, because MkLinux only supported shared libraries with the
11127 # GNU dynamic linker. Since this was broken with cross compilers,
11128 # most powerpc-linux boxes support dynamic linking these days and
11129 # people can always --disable-shared, the test was removed, and we
11130 # assume the GNU/Linux dynamic linker is in use.
11131 dynamic_linker='GNU/Linux ld.so'
11132 ;;
11133
11134 netbsdelf*-gnu)
11135 version_type=linux
11136 need_lib_prefix=no
11137 need_version=no
11138 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
11139 soname_spec='${libname}${release}${shared_ext}$major'
11140 shlibpath_var=LD_LIBRARY_PATH
11141 shlibpath_overrides_runpath=no
11142 hardcode_into_libs=yes
11143 dynamic_linker='NetBSD ld.elf_so'
11144 ;;
11145
11146 netbsd*)
11147 version_type=sunos
11148 need_lib_prefix=no
11149 need_version=no
11150 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
11151 library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
11152 finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
11153 dynamic_linker='NetBSD (a.out) ld.so'
11154 else
11155 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
11156 soname_spec='$libname$release$shared_ext$major'
11157 dynamic_linker='NetBSD ld.elf_so'
11158 fi
11159 shlibpath_var=LD_LIBRARY_PATH
11160 shlibpath_overrides_runpath=yes
11161 hardcode_into_libs=yes
11162 ;;
11163
11164 newsos6)
11165 version_type=linux # correct to gnu/linux during the next big refactor
11166 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
11167 shlibpath_var=LD_LIBRARY_PATH
11168 shlibpath_overrides_runpath=yes
11169 ;;
11170
11171 *nto* | *qnx*)
11172 version_type=qnx
11173 need_lib_prefix=no
11174 need_version=no
11175 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
11176 soname_spec='$libname$release$shared_ext$major'
11177 shlibpath_var=LD_LIBRARY_PATH
11178 shlibpath_overrides_runpath=no
11179 hardcode_into_libs=yes
11180 dynamic_linker='ldqnx.so'
11181 ;;
11182
11183 openbsd* | bitrig*)
11184 version_type=sunos
11185 sys_lib_dlsearch_path_spec=/usr/lib
11186 need_lib_prefix=no
11187 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then
11188 need_version=no
11189 else
11190 need_version=yes
11191 fi
11192 library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
11193 finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
11194 shlibpath_var=LD_LIBRARY_PATH
11195 shlibpath_overrides_runpath=yes
11196 ;;
11197
11198 os2*)
11199 libname_spec='$name'
11200 version_type=windows
11201 shrext_cmds=.dll
11202 need_version=no
11203 need_lib_prefix=no
11204 # OS/2 can only load a DLL with a base name of 8 characters or less.
11205 soname_spec='`test -n "$os2dllname" && libname="$os2dllname";
11206 v=$($ECHO $release$versuffix | tr -d .-);
11207 n=$($ECHO $libname | cut -b -$((8 - ${#v})) | tr . _);
11208 $ECHO $n$v`$shared_ext'
11209 library_names_spec='${libname}_dll.$libext'
11210 dynamic_linker='OS/2 ld.exe'
11211 shlibpath_var=BEGINLIBPATH
11212 sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
11213 sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
11214 postinstall_cmds='base_file=`basename \$file`~
11215 dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; $ECHO \$dlname'\''`~
11216 dldir=$destdir/`dirname \$dlpath`~
11217 test -d \$dldir || mkdir -p \$dldir~
11218 $install_prog $dir/$dlname \$dldir/$dlname~
11219 chmod a+x \$dldir/$dlname~
11220 if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
11221 eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
11222 fi'
11223 postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; $ECHO \$dlname'\''`~
11224 dlpath=$dir/\$dldll~
11225 $RM \$dlpath'
11226 ;;
11227
11228 osf3* | osf4* | osf5*)
11229 version_type=osf
11230 need_lib_prefix=no
11231 need_version=no
11232 soname_spec='$libname$release$shared_ext$major'
11233 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
11234 shlibpath_var=LD_LIBRARY_PATH
11235 sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
11236 sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
11237 ;;
11238
11239 rdos*)
11240 dynamic_linker=no
11241 ;;
11242
11243 solaris*)
11244 version_type=linux # correct to gnu/linux during the next big refactor
11245 need_lib_prefix=no
11246 need_version=no
11247 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
11248 soname_spec='$libname$release$shared_ext$major'
11249 shlibpath_var=LD_LIBRARY_PATH
11250 shlibpath_overrides_runpath=yes
11251 hardcode_into_libs=yes
11252 # ldd complains unless libraries are executable
11253 postinstall_cmds='chmod +x $lib'
11254 ;;
11255
11256 sunos4*)
11257 version_type=sunos
11258 library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
11259 finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
11260 shlibpath_var=LD_LIBRARY_PATH
11261 shlibpath_overrides_runpath=yes
11262 if test yes = "$with_gnu_ld"; then
11263 need_lib_prefix=no
11264 fi
11265 need_version=yes
11266 ;;
11267
11268 sysv4 | sysv4.3*)
11269 version_type=linux # correct to gnu/linux during the next big refactor
11270 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
11271 soname_spec='$libname$release$shared_ext$major'
11272 shlibpath_var=LD_LIBRARY_PATH
11273 case $host_vendor in
11274 sni)
11275 shlibpath_overrides_runpath=no
11276 need_lib_prefix=no
11277 runpath_var=LD_RUN_PATH
11278 ;;
11279 siemens)
11280 need_lib_prefix=no
11281 ;;
11282 motorola)
11283 need_lib_prefix=no
11284 need_version=no
11285 shlibpath_overrides_runpath=no
11286 sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
11287 ;;
11288 esac
11289 ;;
11290
11291 sysv4*MP*)
11292 if test -d /usr/nec; then
11293 version_type=linux # correct to gnu/linux during the next big refactor
11294 library_names_spec='$libname$shared_ext.$versuffix $libname$shared_ext.$major $libname$shared_ext'
11295 soname_spec='$libname$shared_ext.$major'
11296 shlibpath_var=LD_LIBRARY_PATH
11297 fi
11298 ;;
11299
11300 sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
11301 version_type=sco
11302 need_lib_prefix=no
11303 need_version=no
11304 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext $libname$shared_ext'
11305 soname_spec='$libname$release$shared_ext$major'
11306 shlibpath_var=LD_LIBRARY_PATH
11307 shlibpath_overrides_runpath=yes
11308 hardcode_into_libs=yes
11309 if test yes = "$with_gnu_ld"; then
11310 sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib'
11311 else
11312 sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'
11313 case $host_os in
11314 sco3.2v5*)
11315 sys_lib_search_path_spec="$sys_lib_search_path_spec /lib"
11316 ;;
11317 esac
11318 fi
11319 sys_lib_dlsearch_path_spec='/usr/lib'
11320 ;;
11321
11322 tpf*)
11323 # TPF is a cross-target only. Preferred cross-host = GNU/Linux.
11324 version_type=linux # correct to gnu/linux during the next big refactor
11325 need_lib_prefix=no
11326 need_version=no
11327 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
11328 shlibpath_var=LD_LIBRARY_PATH
11329 shlibpath_overrides_runpath=no
11330 hardcode_into_libs=yes
11331 ;;
11332
11333 uts4*)
11334 version_type=linux # correct to gnu/linux during the next big refactor
11335 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
11336 soname_spec='$libname$release$shared_ext$major'
11337 shlibpath_var=LD_LIBRARY_PATH
11338 ;;
11339
11340 *)
11341 dynamic_linker=no
11342 ;;
11343 esac
11344 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $dynamic_linker" >&5
11345 $as_echo "$dynamic_linker" >&6; }
11346 test no = "$dynamic_linker" && can_build_shared=no
11347
11348 variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
11349 if test yes = "$GCC"; then
11350 variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
11351 fi
11352
11353 if test set = "${lt_cv_sys_lib_search_path_spec+set}"; then
11354 sys_lib_search_path_spec=$lt_cv_sys_lib_search_path_spec
11355 fi
11356
11357 if test set = "${lt_cv_sys_lib_dlsearch_path_spec+set}"; then
11358 sys_lib_dlsearch_path_spec=$lt_cv_sys_lib_dlsearch_path_spec
11359 fi
11360
11361 # remember unaugmented sys_lib_dlsearch_path content for libtool script decls...
11362 configure_time_dlsearch_path=$sys_lib_dlsearch_path_spec
11363
11364 # ... but it needs LT_SYS_LIBRARY_PATH munging for other configure-time code
11365 func_munge_path_list sys_lib_dlsearch_path_spec "$LT_SYS_LIBRARY_PATH"
11366
11367 # to be used as default LT_SYS_LIBRARY_PATH value in generated libtool
11368 configure_time_lt_sys_library_path=$LT_SYS_LIBRARY_PATH
11369
11370
11371
11372
11373
11374
11375
11376
11377
11378
11379
11380
11381
11382
11383
11384
11385
11386
11387
11388
11389
11390
11391
11392
11393
11394
11395
11396
11397
11398
11399
11400
11401
11402
11403
11404
11405
11406
11407
11408
11409
11410
11411
11412
11413
11414
11415
11416
11417
11418
11419
11420
11421
11422
11423
11424
11425
11426
11427
11428
11429
11430
11431
11432
11433
11434
11435
11436
11437
11438
11439
11440
11441
11442
11443
11444
11445
11446
11447
11448
11449
11450
11451
11452
11453
11454
11455
11456
11457
11458
11459
11460
11461
11462
11463
11464
11465
11466 { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to hardcode library paths into programs" >&5
11467 $as_echo_n "checking how to hardcode library paths into programs... " >&6; }
11468 hardcode_action=
11469 if test -n "$hardcode_libdir_flag_spec" ||
11470 test -n "$runpath_var" ||
11471 test yes = "$hardcode_automatic"; then
11472
11473 # We can hardcode non-existent directories.
11474 if test no != "$hardcode_direct" &&
11475 # If the only mechanism to avoid hardcoding is shlibpath_var, we
11476 # have to relink, otherwise we might link with an installed library
11477 # when we should be linking with a yet-to-be-installed one
11478 ## test no != "$_LT_TAGVAR(hardcode_shlibpath_var, )" &&
11479 test no != "$hardcode_minus_L"; then
11480 # Linking always hardcodes the temporary library directory.
11481 hardcode_action=relink
11482 else
11483 # We can link without hardcoding, and we can hardcode nonexisting dirs.
11484 hardcode_action=immediate
11485 fi
11486 else
11487 # We cannot hardcode anything, or else we can only hardcode existing
11488 # directories.
11489 hardcode_action=unsupported
11490 fi
11491 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $hardcode_action" >&5
11492 $as_echo "$hardcode_action" >&6; }
11493
11494 if test relink = "$hardcode_action" ||
11495 test yes = "$inherit_rpath"; then
11496 # Fast installation is not supported
11497 enable_fast_install=no
11498 elif test yes = "$shlibpath_overrides_runpath" ||
11499 test no = "$enable_shared"; then
11500 # Fast installation is not necessary
11501 enable_fast_install=needless
11502 fi
11503
11504
11505
11506
11507
11508
11509 if test yes != "$enable_dlopen"; then
11510 enable_dlopen=unknown
11511 enable_dlopen_self=unknown
11512 enable_dlopen_self_static=unknown
11513 else
11514 lt_cv_dlopen=no
11515 lt_cv_dlopen_libs=
11516
11517 case $host_os in
11518 beos*)
11519 lt_cv_dlopen=load_add_on
11520 lt_cv_dlopen_libs=
11521 lt_cv_dlopen_self=yes
11522 ;;
11523
11524 mingw* | pw32* | cegcc*)
11525 lt_cv_dlopen=LoadLibrary
11526 lt_cv_dlopen_libs=
11527 ;;
11528
11529 cygwin*)
11530 lt_cv_dlopen=dlopen
11531 lt_cv_dlopen_libs=
11532 ;;
11533
11534 darwin*)
11535 # if libdl is installed we need to link against it
11536 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5
11537 $as_echo_n "checking for dlopen in -ldl... " >&6; }
11538 if ${ac_cv_lib_dl_dlopen+:} false; then :
11539 $as_echo_n "(cached) " >&6
11540 else
11541 ac_check_lib_save_LIBS=$LIBS
11542 LIBS="-ldl $LIBS"
11543 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
11544 /* end confdefs.h. */
11545
11546 /* Override any GCC internal prototype to avoid an error.
11547 Use char because int might match the return type of a GCC
11548 builtin and then its argument prototype would still apply. */
11549 #ifdef __cplusplus
11550 extern "C"
11551 #endif
11552 char dlopen ();
11553 int
11554 main ()
11555 {
11556 return dlopen ();
11557 ;
11558 return 0;
11559 }
11560 _ACEOF
11561 if ac_fn_c_try_link "$LINENO"; then :
11562 ac_cv_lib_dl_dlopen=yes
11563 else
11564 ac_cv_lib_dl_dlopen=no
11565 fi
11566 rm -f core conftest.err conftest.$ac_objext \
11567 conftest$ac_exeext conftest.$ac_ext
11568 LIBS=$ac_check_lib_save_LIBS
11569 fi
11570 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5
11571 $as_echo "$ac_cv_lib_dl_dlopen" >&6; }
11572 if test "x$ac_cv_lib_dl_dlopen" = xyes; then :
11573 lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl
11574 else
11575
11576 lt_cv_dlopen=dyld
11577 lt_cv_dlopen_libs=
11578 lt_cv_dlopen_self=yes
11579
11580 fi
11581
11582 ;;
11583
11584 tpf*)
11585 # Don't try to run any link tests for TPF. We know it's impossible
11586 # because TPF is a cross-compiler, and we know how we open DSOs.
11587 lt_cv_dlopen=dlopen
11588 lt_cv_dlopen_libs=
11589 lt_cv_dlopen_self=no
11590 ;;
11591
11592 *)
11593 ac_fn_c_check_func "$LINENO" "shl_load" "ac_cv_func_shl_load"
11594 if test "x$ac_cv_func_shl_load" = xyes; then :
11595 lt_cv_dlopen=shl_load
11596 else
11597 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for shl_load in -ldld" >&5
11598 $as_echo_n "checking for shl_load in -ldld... " >&6; }
11599 if ${ac_cv_lib_dld_shl_load+:} false; then :
11600 $as_echo_n "(cached) " >&6
11601 else
11602 ac_check_lib_save_LIBS=$LIBS
11603 LIBS="-ldld $LIBS"
11604 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
11605 /* end confdefs.h. */
11606
11607 /* Override any GCC internal prototype to avoid an error.
11608 Use char because int might match the return type of a GCC
11609 builtin and then its argument prototype would still apply. */
11610 #ifdef __cplusplus
11611 extern "C"
11612 #endif
11613 char shl_load ();
11614 int
11615 main ()
11616 {
11617 return shl_load ();
11618 ;
11619 return 0;
11620 }
11621 _ACEOF
11622 if ac_fn_c_try_link "$LINENO"; then :
11623 ac_cv_lib_dld_shl_load=yes
11624 else
11625 ac_cv_lib_dld_shl_load=no
11626 fi
11627 rm -f core conftest.err conftest.$ac_objext \
11628 conftest$ac_exeext conftest.$ac_ext
11629 LIBS=$ac_check_lib_save_LIBS
11630 fi
11631 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_shl_load" >&5
11632 $as_echo "$ac_cv_lib_dld_shl_load" >&6; }
11633 if test "x$ac_cv_lib_dld_shl_load" = xyes; then :
11634 lt_cv_dlopen=shl_load lt_cv_dlopen_libs=-ldld
11635 else
11636 ac_fn_c_check_func "$LINENO" "dlopen" "ac_cv_func_dlopen"
11637 if test "x$ac_cv_func_dlopen" = xyes; then :
11638 lt_cv_dlopen=dlopen
11639 else
11640 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5
11641 $as_echo_n "checking for dlopen in -ldl... " >&6; }
11642 if ${ac_cv_lib_dl_dlopen+:} false; then :
11643 $as_echo_n "(cached) " >&6
11644 else
11645 ac_check_lib_save_LIBS=$LIBS
11646 LIBS="-ldl $LIBS"
11647 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
11648 /* end confdefs.h. */
11649
11650 /* Override any GCC internal prototype to avoid an error.
11651 Use char because int might match the return type of a GCC
11652 builtin and then its argument prototype would still apply. */
11653 #ifdef __cplusplus
11654 extern "C"
11655 #endif
11656 char dlopen ();
11657 int
11658 main ()
11659 {
11660 return dlopen ();
11661 ;
11662 return 0;
11663 }
11664 _ACEOF
11665 if ac_fn_c_try_link "$LINENO"; then :
11666 ac_cv_lib_dl_dlopen=yes
11667 else
11668 ac_cv_lib_dl_dlopen=no
11669 fi
11670 rm -f core conftest.err conftest.$ac_objext \
11671 conftest$ac_exeext conftest.$ac_ext
11672 LIBS=$ac_check_lib_save_LIBS
11673 fi
11674 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5
11675 $as_echo "$ac_cv_lib_dl_dlopen" >&6; }
11676 if test "x$ac_cv_lib_dl_dlopen" = xyes; then :
11677 lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl
11678 else
11679 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -lsvld" >&5
11680 $as_echo_n "checking for dlopen in -lsvld... " >&6; }
11681 if ${ac_cv_lib_svld_dlopen+:} false; then :
11682 $as_echo_n "(cached) " >&6
11683 else
11684 ac_check_lib_save_LIBS=$LIBS
11685 LIBS="-lsvld $LIBS"
11686 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
11687 /* end confdefs.h. */
11688
11689 /* Override any GCC internal prototype to avoid an error.
11690 Use char because int might match the return type of a GCC
11691 builtin and then its argument prototype would still apply. */
11692 #ifdef __cplusplus
11693 extern "C"
11694 #endif
11695 char dlopen ();
11696 int
11697 main ()
11698 {
11699 return dlopen ();
11700 ;
11701 return 0;
11702 }
11703 _ACEOF
11704 if ac_fn_c_try_link "$LINENO"; then :
11705 ac_cv_lib_svld_dlopen=yes
11706 else
11707 ac_cv_lib_svld_dlopen=no
11708 fi
11709 rm -f core conftest.err conftest.$ac_objext \
11710 conftest$ac_exeext conftest.$ac_ext
11711 LIBS=$ac_check_lib_save_LIBS
11712 fi
11713 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_svld_dlopen" >&5
11714 $as_echo "$ac_cv_lib_svld_dlopen" >&6; }
11715 if test "x$ac_cv_lib_svld_dlopen" = xyes; then :
11716 lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-lsvld
11717 else
11718 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dld_link in -ldld" >&5
11719 $as_echo_n "checking for dld_link in -ldld... " >&6; }
11720 if ${ac_cv_lib_dld_dld_link+:} false; then :
11721 $as_echo_n "(cached) " >&6
11722 else
11723 ac_check_lib_save_LIBS=$LIBS
11724 LIBS="-ldld $LIBS"
11725 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
11726 /* end confdefs.h. */
11727
11728 /* Override any GCC internal prototype to avoid an error.
11729 Use char because int might match the return type of a GCC
11730 builtin and then its argument prototype would still apply. */
11731 #ifdef __cplusplus
11732 extern "C"
11733 #endif
11734 char dld_link ();
11735 int
11736 main ()
11737 {
11738 return dld_link ();
11739 ;
11740 return 0;
11741 }
11742 _ACEOF
11743 if ac_fn_c_try_link "$LINENO"; then :
11744 ac_cv_lib_dld_dld_link=yes
11745 else
11746 ac_cv_lib_dld_dld_link=no
11747 fi
11748 rm -f core conftest.err conftest.$ac_objext \
11749 conftest$ac_exeext conftest.$ac_ext
11750 LIBS=$ac_check_lib_save_LIBS
11751 fi
11752 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_dld_link" >&5
11753 $as_echo "$ac_cv_lib_dld_dld_link" >&6; }
11754 if test "x$ac_cv_lib_dld_dld_link" = xyes; then :
11755 lt_cv_dlopen=dld_link lt_cv_dlopen_libs=-ldld
11756 fi
11757
11758
11759 fi
11760
11761
11762 fi
11763
11764
11765 fi
11766
11767
11768 fi
11769
11770
11771 fi
11772
11773 ;;
11774 esac
11775
11776 if test no = "$lt_cv_dlopen"; then
11777 enable_dlopen=no
11778 else
11779 enable_dlopen=yes
11780 fi
11781
11782 case $lt_cv_dlopen in
11783 dlopen)
11784 save_CPPFLAGS=$CPPFLAGS
11785 test yes = "$ac_cv_header_dlfcn_h" && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
11786
11787 save_LDFLAGS=$LDFLAGS
11788 wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
11789
11790 save_LIBS=$LIBS
11791 LIBS="$lt_cv_dlopen_libs $LIBS"
11792
11793 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a program can dlopen itself" >&5
11794 $as_echo_n "checking whether a program can dlopen itself... " >&6; }
11795 if ${lt_cv_dlopen_self+:} false; then :
11796 $as_echo_n "(cached) " >&6
11797 else
11798 if test yes = "$cross_compiling"; then :
11799 lt_cv_dlopen_self=cross
11800 else
11801 lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
11802 lt_status=$lt_dlunknown
11803 cat > conftest.$ac_ext <<_LT_EOF
11804 #line $LINENO "configure"
11805 #include "confdefs.h"
11806
11807 #if HAVE_DLFCN_H
11808 #include <dlfcn.h>
11809 #endif
11810
11811 #include <stdio.h>
11812
11813 #ifdef RTLD_GLOBAL
11814 # define LT_DLGLOBAL RTLD_GLOBAL
11815 #else
11816 # ifdef DL_GLOBAL
11817 # define LT_DLGLOBAL DL_GLOBAL
11818 # else
11819 # define LT_DLGLOBAL 0
11820 # endif
11821 #endif
11822
11823 /* We may have to define LT_DLLAZY_OR_NOW in the command line if we
11824 find out it does not work in some platform. */
11825 #ifndef LT_DLLAZY_OR_NOW
11826 # ifdef RTLD_LAZY
11827 # define LT_DLLAZY_OR_NOW RTLD_LAZY
11828 # else
11829 # ifdef DL_LAZY
11830 # define LT_DLLAZY_OR_NOW DL_LAZY
11831 # else
11832 # ifdef RTLD_NOW
11833 # define LT_DLLAZY_OR_NOW RTLD_NOW
11834 # else
11835 # ifdef DL_NOW
11836 # define LT_DLLAZY_OR_NOW DL_NOW
11837 # else
11838 # define LT_DLLAZY_OR_NOW 0
11839 # endif
11840 # endif
11841 # endif
11842 # endif
11843 #endif
11844
11845 /* When -fvisibility=hidden is used, assume the code has been annotated
11846 correspondingly for the symbols needed. */
11847 #if defined __GNUC__ && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
11848 int fnord () __attribute__((visibility("default")));
11849 #endif
11850
11851 int fnord () { return 42; }
11852 int main ()
11853 {
11854 void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
11855 int status = $lt_dlunknown;
11856
11857 if (self)
11858 {
11859 if (dlsym (self,"fnord")) status = $lt_dlno_uscore;
11860 else
11861 {
11862 if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;
11863 else puts (dlerror ());
11864 }
11865 /* dlclose (self); */
11866 }
11867 else
11868 puts (dlerror ());
11869
11870 return status;
11871 }
11872 _LT_EOF
11873 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5
11874 (eval $ac_link) 2>&5
11875 ac_status=$?
11876 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
11877 test $ac_status = 0; } && test -s "conftest$ac_exeext" 2>/dev/null; then
11878 (./conftest; exit; ) >&5 2>/dev/null
11879 lt_status=$?
11880 case x$lt_status in
11881 x$lt_dlno_uscore) lt_cv_dlopen_self=yes ;;
11882 x$lt_dlneed_uscore) lt_cv_dlopen_self=yes ;;
11883 x$lt_dlunknown|x*) lt_cv_dlopen_self=no ;;
11884 esac
11885 else :
11886 # compilation failed
11887 lt_cv_dlopen_self=no
11888 fi
11889 fi
11890 rm -fr conftest*
11891
11892
11893 fi
11894 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self" >&5
11895 $as_echo "$lt_cv_dlopen_self" >&6; }
11896
11897 if test yes = "$lt_cv_dlopen_self"; then
11898 wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\"
11899 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a statically linked program can dlopen itself" >&5
11900 $as_echo_n "checking whether a statically linked program can dlopen itself... " >&6; }
11901 if ${lt_cv_dlopen_self_static+:} false; then :
11902 $as_echo_n "(cached) " >&6
11903 else
11904 if test yes = "$cross_compiling"; then :
11905 lt_cv_dlopen_self_static=cross
11906 else
11907 lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
11908 lt_status=$lt_dlunknown
11909 cat > conftest.$ac_ext <<_LT_EOF
11910 #line $LINENO "configure"
11911 #include "confdefs.h"
11912
11913 #if HAVE_DLFCN_H
11914 #include <dlfcn.h>
11915 #endif
11916
11917 #include <stdio.h>
11918
11919 #ifdef RTLD_GLOBAL
11920 # define LT_DLGLOBAL RTLD_GLOBAL
11921 #else
11922 # ifdef DL_GLOBAL
11923 # define LT_DLGLOBAL DL_GLOBAL
11924 # else
11925 # define LT_DLGLOBAL 0
11926 # endif
11927 #endif
11928
11929 /* We may have to define LT_DLLAZY_OR_NOW in the command line if we
11930 find out it does not work in some platform. */
11931 #ifndef LT_DLLAZY_OR_NOW
11932 # ifdef RTLD_LAZY
11933 # define LT_DLLAZY_OR_NOW RTLD_LAZY
11934 # else
11935 # ifdef DL_LAZY
11936 # define LT_DLLAZY_OR_NOW DL_LAZY
11937 # else
11938 # ifdef RTLD_NOW
11939 # define LT_DLLAZY_OR_NOW RTLD_NOW
11940 # else
11941 # ifdef DL_NOW
11942 # define LT_DLLAZY_OR_NOW DL_NOW
11943 # else
11944 # define LT_DLLAZY_OR_NOW 0
11945 # endif
11946 # endif
11947 # endif
11948 # endif
11949 #endif
11950
11951 /* When -fvisibility=hidden is used, assume the code has been annotated
11952 correspondingly for the symbols needed. */
11953 #if defined __GNUC__ && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
11954 int fnord () __attribute__((visibility("default")));
11955 #endif
11956
11957 int fnord () { return 42; }
11958 int main ()
11959 {
11960 void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
11961 int status = $lt_dlunknown;
11962
11963 if (self)
11964 {
11965 if (dlsym (self,"fnord")) status = $lt_dlno_uscore;
11966 else
11967 {
11968 if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;
11969 else puts (dlerror ());
11970 }
11971 /* dlclose (self); */
11972 }
11973 else
11974 puts (dlerror ());
11975
11976 return status;
11977 }
11978 _LT_EOF
11979 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5
11980 (eval $ac_link) 2>&5
11981 ac_status=$?
11982 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
11983 test $ac_status = 0; } && test -s "conftest$ac_exeext" 2>/dev/null; then
11984 (./conftest; exit; ) >&5 2>/dev/null
11985 lt_status=$?
11986 case x$lt_status in
11987 x$lt_dlno_uscore) lt_cv_dlopen_self_static=yes ;;
11988 x$lt_dlneed_uscore) lt_cv_dlopen_self_static=yes ;;
11989 x$lt_dlunknown|x*) lt_cv_dlopen_self_static=no ;;
11990 esac
11991 else :
11992 # compilation failed
11993 lt_cv_dlopen_self_static=no
11994 fi
11995 fi
11996 rm -fr conftest*
11997
11998
11999 fi
12000 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self_static" >&5
12001 $as_echo "$lt_cv_dlopen_self_static" >&6; }
12002 fi
12003
12004 CPPFLAGS=$save_CPPFLAGS
12005 LDFLAGS=$save_LDFLAGS
12006 LIBS=$save_LIBS
12007 ;;
12008 esac
12009
12010 case $lt_cv_dlopen_self in
12011 yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;
12012 *) enable_dlopen_self=unknown ;;
12013 esac
12014
12015 case $lt_cv_dlopen_self_static in
12016 yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;
12017 *) enable_dlopen_self_static=unknown ;;
12018 esac
12019 fi
12020
12021
12022
12023
12024
12025
12026
12027
12028
12029
12030
12031
12032
12033
12034
12035
12036
12037 striplib=
12038 old_striplib=
12039 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether stripping libraries is possible" >&5
12040 $as_echo_n "checking whether stripping libraries is possible... " >&6; }
12041 if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then
12042 test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"
12043 test -z "$striplib" && striplib="$STRIP --strip-unneeded"
12044 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
12045 $as_echo "yes" >&6; }
12046 else
12047 # FIXME - insert some real tests, host_os isn't really good enough
12048 case $host_os in
12049 darwin*)
12050 if test -n "$STRIP"; then
12051 striplib="$STRIP -x"
12052 old_striplib="$STRIP -S"
12053 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
12054 $as_echo "yes" >&6; }
12055 else
12056 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
12057 $as_echo "no" >&6; }
12058 fi
12059 ;;
12060 *)
12061 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
12062 $as_echo "no" >&6; }
12063 ;;
12064 esac
12065 fi
12066
12067
12068
12069
12070
12071
12072
12073
12074
12075
12076
12077
12078 # Report what library types will actually be built
12079 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libtool supports shared libraries" >&5
12080 $as_echo_n "checking if libtool supports shared libraries... " >&6; }
12081 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $can_build_shared" >&5
12082 $as_echo "$can_build_shared" >&6; }
12083
12084 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build shared libraries" >&5
12085 $as_echo_n "checking whether to build shared libraries... " >&6; }
12086 test no = "$can_build_shared" && enable_shared=no
12087
12088 # On AIX, shared libraries and static libraries use the same namespace, and
12089 # are all built from PIC.
12090 case $host_os in
12091 aix3*)
12092 test yes = "$enable_shared" && enable_static=no
12093 if test -n "$RANLIB"; then
12094 archive_cmds="$archive_cmds~\$RANLIB \$lib"
12095 postinstall_cmds='$RANLIB $lib'
12096 fi
12097 ;;
12098
12099 aix[4-9]*)
12100 if test ia64 != "$host_cpu"; then
12101 case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in
12102 yes,aix,yes) ;; # shared object as lib.so file only
12103 yes,svr4,*) ;; # shared object as lib.so archive member only
12104 yes,*) enable_static=no ;; # shared object in lib.a archive as well
12105 esac
12106 fi
12107 ;;
12108 esac
12109 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_shared" >&5
12110 $as_echo "$enable_shared" >&6; }
12111
12112 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build static libraries" >&5
12113 $as_echo_n "checking whether to build static libraries... " >&6; }
12114 # Make sure either enable_shared or enable_static is yes.
12115 test yes = "$enable_shared" || enable_static=yes
12116 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_static" >&5
12117 $as_echo "$enable_static" >&6; }
12118
12119
12120
12121
12122 fi
12123 ac_ext=c
12124 ac_cpp='$CPP $CPPFLAGS'
12125 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
12126 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
12127 ac_compiler_gnu=$ac_cv_c_compiler_gnu
12128
12129 CC=$lt_save_CC
12130
12131
12132
12133
12134
12135
12136
12137
12138
12139
12140
12141
12142
12143
12144
12145 ac_config_commands="$ac_config_commands libtool"
12146
12147
12148
12149
12150 # Only expand once:
12151
12152
12153
12154
12155 ac_ext=c
12156 ac_cpp='$CPP $CPPFLAGS'
12157 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
12158 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
12159 ac_compiler_gnu=$ac_cv_c_compiler_gnu
12160 if test -n "$ac_tool_prefix"; then
12161 # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args.
12162 set dummy ${ac_tool_prefix}gcc; ac_word=$2
12163 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
12164 $as_echo_n "checking for $ac_word... " >&6; }
12165 if ${ac_cv_prog_CC+:} false; then :
12166 $as_echo_n "(cached) " >&6
12167 else
12168 if test -n "$CC"; then
12169 ac_cv_prog_CC="$CC" # Let the user override the test.
12170 else
12171 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
12172 for as_dir in $PATH
12173 do
12174 IFS=$as_save_IFS
12175 test -z "$as_dir" && as_dir=.
12176 for ac_exec_ext in '' $ac_executable_extensions; do
12177 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
12178 ac_cv_prog_CC="${ac_tool_prefix}gcc"
12179 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
12180 break 2
12181 fi
12182 done
12183 done
12184 IFS=$as_save_IFS
12185
12186 fi
12187 fi
12188 CC=$ac_cv_prog_CC
12189 if test -n "$CC"; then
12190 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
12191 $as_echo "$CC" >&6; }
12192 else
12193 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
12194 $as_echo "no" >&6; }
12195 fi
12196
12197
12198 fi
12199 if test -z "$ac_cv_prog_CC"; then
12200 ac_ct_CC=$CC
12201 # Extract the first word of "gcc", so it can be a program name with args.
12202 set dummy gcc; ac_word=$2
12203 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
12204 $as_echo_n "checking for $ac_word... " >&6; }
12205 if ${ac_cv_prog_ac_ct_CC+:} false; then :
12206 $as_echo_n "(cached) " >&6
12207 else
12208 if test -n "$ac_ct_CC"; then
12209 ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
12210 else
12211 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
12212 for as_dir in $PATH
12213 do
12214 IFS=$as_save_IFS
12215 test -z "$as_dir" && as_dir=.
12216 for ac_exec_ext in '' $ac_executable_extensions; do
12217 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
12218 ac_cv_prog_ac_ct_CC="gcc"
12219 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
12220 break 2
12221 fi
12222 done
12223 done
12224 IFS=$as_save_IFS
12225
12226 fi
12227 fi
12228 ac_ct_CC=$ac_cv_prog_ac_ct_CC
12229 if test -n "$ac_ct_CC"; then
12230 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
12231 $as_echo "$ac_ct_CC" >&6; }
12232 else
12233 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
12234 $as_echo "no" >&6; }
12235 fi
12236
12237 if test "x$ac_ct_CC" = x; then
12238 CC=""
12239 else
12240 case $cross_compiling:$ac_tool_warned in
12241 yes:)
12242 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
12243 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
12244 ac_tool_warned=yes ;;
12245 esac
12246 CC=$ac_ct_CC
12247 fi
12248 else
12249 CC="$ac_cv_prog_CC"
12250 fi
12251
12252 if test -z "$CC"; then
12253 if test -n "$ac_tool_prefix"; then
12254 # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args.
12255 set dummy ${ac_tool_prefix}cc; ac_word=$2
12256 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
12257 $as_echo_n "checking for $ac_word... " >&6; }
12258 if ${ac_cv_prog_CC+:} false; then :
12259 $as_echo_n "(cached) " >&6
12260 else
12261 if test -n "$CC"; then
12262 ac_cv_prog_CC="$CC" # Let the user override the test.
12263 else
12264 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
12265 for as_dir in $PATH
12266 do
12267 IFS=$as_save_IFS
12268 test -z "$as_dir" && as_dir=.
12269 for ac_exec_ext in '' $ac_executable_extensions; do
12270 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
12271 ac_cv_prog_CC="${ac_tool_prefix}cc"
12272 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
12273 break 2
12274 fi
12275 done
12276 done
12277 IFS=$as_save_IFS
12278
12279 fi
12280 fi
12281 CC=$ac_cv_prog_CC
12282 if test -n "$CC"; then
12283 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
12284 $as_echo "$CC" >&6; }
12285 else
12286 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
12287 $as_echo "no" >&6; }
12288 fi
12289
12290
12291 fi
12292 fi
12293 if test -z "$CC"; then
12294 # Extract the first word of "cc", so it can be a program name with args.
12295 set dummy cc; ac_word=$2
12296 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
12297 $as_echo_n "checking for $ac_word... " >&6; }
12298 if ${ac_cv_prog_CC+:} false; then :
12299 $as_echo_n "(cached) " >&6
12300 else
12301 if test -n "$CC"; then
12302 ac_cv_prog_CC="$CC" # Let the user override the test.
12303 else
12304 ac_prog_rejected=no
12305 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
12306 for as_dir in $PATH
12307 do
12308 IFS=$as_save_IFS
12309 test -z "$as_dir" && as_dir=.
12310 for ac_exec_ext in '' $ac_executable_extensions; do
12311 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
12312 if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then
12313 ac_prog_rejected=yes
12314 continue
12315 fi
12316 ac_cv_prog_CC="cc"
12317 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
12318 break 2
12319 fi
12320 done
12321 done
12322 IFS=$as_save_IFS
12323
12324 if test $ac_prog_rejected = yes; then
12325 # We found a bogon in the path, so make sure we never use it.
12326 set dummy $ac_cv_prog_CC
12327 shift
12328 if test $# != 0; then
12329 # We chose a different compiler from the bogus one.
12330 # However, it has the same basename, so the bogon will be chosen
12331 # first if we set CC to just the basename; use the full file name.
12332 shift
12333 ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@"
12334 fi
12335 fi
12336 fi
12337 fi
12338 CC=$ac_cv_prog_CC
12339 if test -n "$CC"; then
12340 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
12341 $as_echo "$CC" >&6; }
12342 else
12343 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
12344 $as_echo "no" >&6; }
12345 fi
12346
12347
12348 fi
12349 if test -z "$CC"; then
12350 if test -n "$ac_tool_prefix"; then
12351 for ac_prog in cl.exe
12352 do
12353 # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
12354 set dummy $ac_tool_prefix$ac_prog; ac_word=$2
12355 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
12356 $as_echo_n "checking for $ac_word... " >&6; }
12357 if ${ac_cv_prog_CC+:} false; then :
12358 $as_echo_n "(cached) " >&6
12359 else
12360 if test -n "$CC"; then
12361 ac_cv_prog_CC="$CC" # Let the user override the test.
12362 else
12363 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
12364 for as_dir in $PATH
12365 do
12366 IFS=$as_save_IFS
12367 test -z "$as_dir" && as_dir=.
12368 for ac_exec_ext in '' $ac_executable_extensions; do
12369 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
12370 ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
12371 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
12372 break 2
12373 fi
12374 done
12375 done
12376 IFS=$as_save_IFS
12377
12378 fi
12379 fi
12380 CC=$ac_cv_prog_CC
12381 if test -n "$CC"; then
12382 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
12383 $as_echo "$CC" >&6; }
12384 else
12385 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
12386 $as_echo "no" >&6; }
12387 fi
12388
12389
12390 test -n "$CC" && break
12391 done
12392 fi
12393 if test -z "$CC"; then
12394 ac_ct_CC=$CC
12395 for ac_prog in cl.exe
12396 do
12397 # Extract the first word of "$ac_prog", so it can be a program name with args.
12398 set dummy $ac_prog; ac_word=$2
12399 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
12400 $as_echo_n "checking for $ac_word... " >&6; }
12401 if ${ac_cv_prog_ac_ct_CC+:} false; then :
12402 $as_echo_n "(cached) " >&6
12403 else
12404 if test -n "$ac_ct_CC"; then
12405 ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
12406 else
12407 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
12408 for as_dir in $PATH
12409 do
12410 IFS=$as_save_IFS
12411 test -z "$as_dir" && as_dir=.
12412 for ac_exec_ext in '' $ac_executable_extensions; do
12413 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
12414 ac_cv_prog_ac_ct_CC="$ac_prog"
12415 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
12416 break 2
12417 fi
12418 done
12419 done
12420 IFS=$as_save_IFS
12421
12422 fi
12423 fi
12424 ac_ct_CC=$ac_cv_prog_ac_ct_CC
12425 if test -n "$ac_ct_CC"; then
12426 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
12427 $as_echo "$ac_ct_CC" >&6; }
12428 else
12429 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
12430 $as_echo "no" >&6; }
12431 fi
12432
12433
12434 test -n "$ac_ct_CC" && break
12435 done
12436
12437 if test "x$ac_ct_CC" = x; then
12438 CC=""
12439 else
12440 case $cross_compiling:$ac_tool_warned in
12441 yes:)
12442 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
12443 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
12444 ac_tool_warned=yes ;;
12445 esac
12446 CC=$ac_ct_CC
12447 fi
12448 fi
12449
12450 fi
12451
12452
12453 test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
12454 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
12455 as_fn_error $? "no acceptable C compiler found in \$PATH
12456 See \`config.log' for more details" "$LINENO" 5; }
12457
12458 # Provide some information about the compiler.
12459 $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5
12460 set X $ac_compile
12461 ac_compiler=$2
12462 for ac_option in --version -v -V -qversion; do
12463 { { ac_try="$ac_compiler $ac_option >&5"
12464 case "(($ac_try" in
12465 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
12466 *) ac_try_echo=$ac_try;;
12467 esac
12468 eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
12469 $as_echo "$ac_try_echo"; } >&5
12470 (eval "$ac_compiler $ac_option >&5") 2>conftest.err
12471 ac_status=$?
12472 if test -s conftest.err; then
12473 sed '10a\
12474 ... rest of stderr output deleted ...
12475 10q' conftest.err >conftest.er1
12476 cat conftest.er1 >&5
12477 fi
12478 rm -f conftest.er1 conftest.err
12479 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
12480 test $ac_status = 0; }
12481 done
12482
12483 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5
12484 $as_echo_n "checking whether we are using the GNU C compiler... " >&6; }
12485 if ${ac_cv_c_compiler_gnu+:} false; then :
12486 $as_echo_n "(cached) " >&6
12487 else
12488 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
12489 /* end confdefs.h. */
12490
12491 int
12492 main ()
12493 {
12494 #ifndef __GNUC__
12495 choke me
12496 #endif
12497
12498 ;
12499 return 0;
12500 }
12501 _ACEOF
12502 if ac_fn_c_try_compile "$LINENO"; then :
12503 ac_compiler_gnu=yes
12504 else
12505 ac_compiler_gnu=no
12506 fi
12507 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
12508 ac_cv_c_compiler_gnu=$ac_compiler_gnu
12509
12510 fi
12511 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5
12512 $as_echo "$ac_cv_c_compiler_gnu" >&6; }
12513 if test $ac_compiler_gnu = yes; then
12514 GCC=yes
12515 else
12516 GCC=
12517 fi
12518 ac_test_CFLAGS=${CFLAGS+set}
12519 ac_save_CFLAGS=$CFLAGS
12520 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5
12521 $as_echo_n "checking whether $CC accepts -g... " >&6; }
12522 if ${ac_cv_prog_cc_g+:} false; then :
12523 $as_echo_n "(cached) " >&6
12524 else
12525 ac_save_c_werror_flag=$ac_c_werror_flag
12526 ac_c_werror_flag=yes
12527 ac_cv_prog_cc_g=no
12528 CFLAGS="-g"
12529 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
12530 /* end confdefs.h. */
12531
12532 int
12533 main ()
12534 {
12535
12536 ;
12537 return 0;
12538 }
12539 _ACEOF
12540 if ac_fn_c_try_compile "$LINENO"; then :
12541 ac_cv_prog_cc_g=yes
12542 else
12543 CFLAGS=""
12544 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
12545 /* end confdefs.h. */
12546
12547 int
12548 main ()
12549 {
12550
12551 ;
12552 return 0;
12553 }
12554 _ACEOF
12555 if ac_fn_c_try_compile "$LINENO"; then :
12556
12557 else
12558 ac_c_werror_flag=$ac_save_c_werror_flag
12559 CFLAGS="-g"
12560 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
12561 /* end confdefs.h. */
12562
12563 int
12564 main ()
12565 {
12566
12567 ;
12568 return 0;
12569 }
12570 _ACEOF
12571 if ac_fn_c_try_compile "$LINENO"; then :
12572 ac_cv_prog_cc_g=yes
12573 fi
12574 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
12575 fi
12576 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
12577 fi
12578 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
12579 ac_c_werror_flag=$ac_save_c_werror_flag
12580 fi
12581 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5
12582 $as_echo "$ac_cv_prog_cc_g" >&6; }
12583 if test "$ac_test_CFLAGS" = set; then
12584 CFLAGS=$ac_save_CFLAGS
12585 elif test $ac_cv_prog_cc_g = yes; then
12586 if test "$GCC" = yes; then
12587 CFLAGS="-g -O2"
12588 else
12589 CFLAGS="-g"
12590 fi
12591 else
12592 if test "$GCC" = yes; then
12593 CFLAGS="-O2"
12594 else
12595 CFLAGS=
12596 fi
12597 fi
12598 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5
12599 $as_echo_n "checking for $CC option to accept ISO C89... " >&6; }
12600 if ${ac_cv_prog_cc_c89+:} false; then :
12601 $as_echo_n "(cached) " >&6
12602 else
12603 ac_cv_prog_cc_c89=no
12604 ac_save_CC=$CC
12605 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
12606 /* end confdefs.h. */
12607 #include <stdarg.h>
12608 #include <stdio.h>
12609 struct stat;
12610 /* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */
12611 struct buf { int x; };
12612 FILE * (*rcsopen) (struct buf *, struct stat *, int);
12613 static char *e (p, i)
12614 char **p;
12615 int i;
12616 {
12617 return p[i];
12618 }
12619 static char *f (char * (*g) (char **, int), char **p, ...)
12620 {
12621 char *s;
12622 va_list v;
12623 va_start (v,p);
12624 s = g (p, va_arg (v,int));
12625 va_end (v);
12626 return s;
12627 }
12628
12629 /* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has
12630 function prototypes and stuff, but not '\xHH' hex character constants.
12631 These don't provoke an error unfortunately, instead are silently treated
12632 as 'x'. The following induces an error, until -std is added to get
12633 proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an
12634 array size at least. It's necessary to write '\x00'==0 to get something
12635 that's true only with -std. */
12636 int osf4_cc_array ['\x00' == 0 ? 1 : -1];
12637
12638 /* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters
12639 inside strings and character constants. */
12640 #define FOO(x) 'x'
12641 int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1];
12642
12643 int test (int i, double x);
12644 struct s1 {int (*f) (int a);};
12645 struct s2 {int (*f) (double a);};
12646 int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int);
12647 int argc;
12648 char **argv;
12649 int
12650 main ()
12651 {
12652 return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1];
12653 ;
12654 return 0;
12655 }
12656 _ACEOF
12657 for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \
12658 -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
12659 do
12660 CC="$ac_save_CC $ac_arg"
12661 if ac_fn_c_try_compile "$LINENO"; then :
12662 ac_cv_prog_cc_c89=$ac_arg
12663 fi
12664 rm -f core conftest.err conftest.$ac_objext
12665 test "x$ac_cv_prog_cc_c89" != "xno" && break
12666 done
12667 rm -f conftest.$ac_ext
12668 CC=$ac_save_CC
12669
12670 fi
12671 # AC_CACHE_VAL
12672 case "x$ac_cv_prog_cc_c89" in
12673 x)
12674 { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5
12675 $as_echo "none needed" >&6; } ;;
12676 xno)
12677 { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5
12678 $as_echo "unsupported" >&6; } ;;
12679 *)
12680 CC="$CC $ac_cv_prog_cc_c89"
12681 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5
12682 $as_echo "$ac_cv_prog_cc_c89" >&6; } ;;
12683 esac
12684 if test "x$ac_cv_prog_cc_c89" != xno; then :
12685
12686 fi
12687
12688 ac_ext=c
12689 ac_cpp='$CPP $CPPFLAGS'
12690 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
12691 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
12692 ac_compiler_gnu=$ac_cv_c_compiler_gnu
12693
12694 ac_ext=c
12695 ac_cpp='$CPP $CPPFLAGS'
12696 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
12697 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
12698 ac_compiler_gnu=$ac_cv_c_compiler_gnu
12699 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC understands -c and -o together" >&5
12700 $as_echo_n "checking whether $CC understands -c and -o together... " >&6; }
12701 if ${am_cv_prog_cc_c_o+:} false; then :
12702 $as_echo_n "(cached) " >&6
12703 else
12704 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
12705 /* end confdefs.h. */
12706
12707 int
12708 main ()
12709 {
12710
12711 ;
12712 return 0;
12713 }
12714 _ACEOF
12715 # Make sure it works both with $CC and with simple cc.
12716 # Following AC_PROG_CC_C_O, we do the test twice because some
12717 # compilers refuse to overwrite an existing .o file with -o,
12718 # though they will create one.
12719 am_cv_prog_cc_c_o=yes
12720 for am_i in 1 2; do
12721 if { echo "$as_me:$LINENO: $CC -c conftest.$ac_ext -o conftest2.$ac_objext" >&5
12722 ($CC -c conftest.$ac_ext -o conftest2.$ac_objext) >&5 2>&5
12723 ac_status=$?
12724 echo "$as_me:$LINENO: \$? = $ac_status" >&5
12725 (exit $ac_status); } \
12726 && test -f conftest2.$ac_objext; then
12727 : OK
12728 else
12729 am_cv_prog_cc_c_o=no
12730 break
12731 fi
12732 done
12733 rm -f core conftest*
12734 unset am_i
12735 fi
12736 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_prog_cc_c_o" >&5
12737 $as_echo "$am_cv_prog_cc_c_o" >&6; }
12738 if test "$am_cv_prog_cc_c_o" != yes; then
12739 # Losing compiler, so override with the script.
12740 # FIXME: It is wrong to rewrite CC.
12741 # But if we don't then we get into trouble of one sort or another.
12742 # A longer-term fix would be to have automake use am__CC in this case,
12743 # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)"
12744 CC="$am_aux_dir/compile $CC"
12745 fi
12746 ac_ext=c
12747 ac_cpp='$CPP $CPPFLAGS'
12748 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
12749 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
12750 ac_compiler_gnu=$ac_cv_c_compiler_gnu
12751
12752
12753 depcc="$CC" am_compiler_list=
12754
12755 { $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5
12756 $as_echo_n "checking dependency style of $depcc... " >&6; }
12757 if ${am_cv_CC_dependencies_compiler_type+:} false; then :
12758 $as_echo_n "(cached) " >&6
12759 else
12760 if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
12761 # We make a subdir and do the tests there. Otherwise we can end up
12762 # making bogus files that we don't know about and never remove. For
12763 # instance it was reported that on HP-UX the gcc test will end up
12764 # making a dummy file named 'D' -- because '-MD' means "put the output
12765 # in D".
12766 rm -rf conftest.dir
12767 mkdir conftest.dir
12768 # Copy depcomp to subdir because otherwise we won't find it if we're
12769 # using a relative directory.
12770 cp "$am_depcomp" conftest.dir
12771 cd conftest.dir
12772 # We will build objects and dependencies in a subdirectory because
12773 # it helps to detect inapplicable dependency modes. For instance
12774 # both Tru64's cc and ICC support -MD to output dependencies as a
12775 # side effect of compilation, but ICC will put the dependencies in
12776 # the current directory while Tru64 will put them in the object
12777 # directory.
12778 mkdir sub
12779
12780 am_cv_CC_dependencies_compiler_type=none
12781 if test "$am_compiler_list" = ""; then
12782 am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp`
12783 fi
12784 am__universal=false
12785 case " $depcc " in #(
12786 *\ -arch\ *\ -arch\ *) am__universal=true ;;
12787 esac
12788
12789 for depmode in $am_compiler_list; do
12790 # Setup a source with many dependencies, because some compilers
12791 # like to wrap large dependency lists on column 80 (with \), and
12792 # we should not choose a depcomp mode which is confused by this.
12793 #
12794 # We need to recreate these files for each test, as the compiler may
12795 # overwrite some of them when testing with obscure command lines.
12796 # This happens at least with the AIX C compiler.
12797 : > sub/conftest.c
12798 for i in 1 2 3 4 5 6; do
12799 echo '#include "conftst'$i'.h"' >> sub/conftest.c
12800 # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with
12801 # Solaris 10 /bin/sh.
12802 echo '/* dummy */' > sub/conftst$i.h
12803 done
12804 echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
12805
12806 # We check with '-c' and '-o' for the sake of the "dashmstdout"
12807 # mode. It turns out that the SunPro C++ compiler does not properly
12808 # handle '-M -o', and we need to detect this. Also, some Intel
12809 # versions had trouble with output in subdirs.
12810 am__obj=sub/conftest.${OBJEXT-o}
12811 am__minus_obj="-o $am__obj"
12812 case $depmode in
12813 gcc)
12814 # This depmode causes a compiler race in universal mode.
12815 test "$am__universal" = false || continue
12816 ;;
12817 nosideeffect)
12818 # After this tag, mechanisms are not by side-effect, so they'll
12819 # only be used when explicitly requested.
12820 if test "x$enable_dependency_tracking" = xyes; then
12821 continue
12822 else
12823 break
12824 fi
12825 ;;
12826 msvc7 | msvc7msys | msvisualcpp | msvcmsys)
12827 # This compiler won't grok '-c -o', but also, the minuso test has
12828 # not run yet. These depmodes are late enough in the game, and
12829 # so weak that their functioning should not be impacted.
12830 am__obj=conftest.${OBJEXT-o}
12831 am__minus_obj=
12832 ;;
12833 none) break ;;
12834 esac
12835 if depmode=$depmode \
12836 source=sub/conftest.c object=$am__obj \
12837 depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
12838 $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \
12839 >/dev/null 2>conftest.err &&
12840 grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 &&
12841 grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
12842 grep $am__obj sub/conftest.Po > /dev/null 2>&1 &&
12843 ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
12844 # icc doesn't choke on unknown options, it will just issue warnings
12845 # or remarks (even with -Werror). So we grep stderr for any message
12846 # that says an option was ignored or not supported.
12847 # When given -MP, icc 7.0 and 7.1 complain thusly:
12848 # icc: Command line warning: ignoring option '-M'; no argument required
12849 # The diagnosis changed in icc 8.0:
12850 # icc: Command line remark: option '-MP' not supported
12851 if (grep 'ignoring option' conftest.err ||
12852 grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
12853 am_cv_CC_dependencies_compiler_type=$depmode
12854 break
12855 fi
12856 fi
12857 done
12858
12859 cd ..
12860 rm -rf conftest.dir
12861 else
12862 am_cv_CC_dependencies_compiler_type=none
12863 fi
12864
12865 fi
12866 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CC_dependencies_compiler_type" >&5
12867 $as_echo "$am_cv_CC_dependencies_compiler_type" >&6; }
12868 CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type
12869
12870 if
12871 test "x$enable_dependency_tracking" != xno \
12872 && test "$am_cv_CC_dependencies_compiler_type" = gcc3; then
12873 am__fastdepCC_TRUE=
12874 am__fastdepCC_FALSE='#'
12875 else
12876 am__fastdepCC_TRUE='#'
12877 am__fastdepCC_FALSE=
12878 fi
12879
12880
12881
12882 ac_ext=c
12883 ac_cpp='$CPP $CPPFLAGS'
12884 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
12885 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
12886 ac_compiler_gnu=$ac_cv_c_compiler_gnu
12887 { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&5
12888 $as_echo_n "checking how to run the C preprocessor... " >&6; }
12889 # On Suns, sometimes $CPP names a directory.
12890 if test -n "$CPP" && test -d "$CPP"; then
12891 CPP=
12892 fi
12893 if test -z "$CPP"; then
12894 if ${ac_cv_prog_CPP+:} false; then :
12895 $as_echo_n "(cached) " >&6
12896 else
12897 # Double quotes because CPP needs to be expanded
12898 for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp"
12899 do
12900 ac_preproc_ok=false
12901 for ac_c_preproc_warn_flag in '' yes
12902 do
12903 # Use a header file that comes with gcc, so configuring glibc
12904 # with a fresh cross-compiler works.
12905 # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
12906 # <limits.h> exists even on freestanding compilers.
12907 # On the NeXT, cc -E runs the code through the compiler's parser,
12908 # not just through cpp. "Syntax error" is here to catch this case.
12909 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
12910 /* end confdefs.h. */
12911 #ifdef __STDC__
12912 # include <limits.h>
12913 #else
12914 # include <assert.h>
12915 #endif
12916 Syntax error
12917 _ACEOF
12918 if ac_fn_c_try_cpp "$LINENO"; then :
12919
12920 else
12921 # Broken: fails on valid input.
12922 continue
12923 fi
12924 rm -f conftest.err conftest.i conftest.$ac_ext
12925
12926 # OK, works on sane cases. Now check whether nonexistent headers
12927 # can be detected and how.
12928 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
12929 /* end confdefs.h. */
12930 #include <ac_nonexistent.h>
12931 _ACEOF
12932 if ac_fn_c_try_cpp "$LINENO"; then :
12933 # Broken: success on invalid input.
12934 continue
12935 else
12936 # Passes both tests.
12937 ac_preproc_ok=:
12938 break
12939 fi
12940 rm -f conftest.err conftest.i conftest.$ac_ext
12941
12942 done
12943 # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
12944 rm -f conftest.i conftest.err conftest.$ac_ext
12945 if $ac_preproc_ok; then :
12946 break
12947 fi
12948
12949 done
12950 ac_cv_prog_CPP=$CPP
12951
12952 fi
12953 CPP=$ac_cv_prog_CPP
12954 else
12955 ac_cv_prog_CPP=$CPP
12956 fi
12957 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CPP" >&5
12958 $as_echo "$CPP" >&6; }
12959 ac_preproc_ok=false
12960 for ac_c_preproc_warn_flag in '' yes
12961 do
12962 # Use a header file that comes with gcc, so configuring glibc
12963 # with a fresh cross-compiler works.
12964 # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
12965 # <limits.h> exists even on freestanding compilers.
12966 # On the NeXT, cc -E runs the code through the compiler's parser,
12967 # not just through cpp. "Syntax error" is here to catch this case.
12968 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
12969 /* end confdefs.h. */
12970 #ifdef __STDC__
12971 # include <limits.h>
12972 #else
12973 # include <assert.h>
12974 #endif
12975 Syntax error
12976 _ACEOF
12977 if ac_fn_c_try_cpp "$LINENO"; then :
12978
12979 else
12980 # Broken: fails on valid input.
12981 continue
12982 fi
12983 rm -f conftest.err conftest.i conftest.$ac_ext
12984
12985 # OK, works on sane cases. Now check whether nonexistent headers
12986 # can be detected and how.
12987 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
12988 /* end confdefs.h. */
12989 #include <ac_nonexistent.h>
12990 _ACEOF
12991 if ac_fn_c_try_cpp "$LINENO"; then :
12992 # Broken: success on invalid input.
12993 continue
12994 else
12995 # Passes both tests.
12996 ac_preproc_ok=:
12997 break
12998 fi
12999 rm -f conftest.err conftest.i conftest.$ac_ext
13000
13001 done
13002 # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
13003 rm -f conftest.i conftest.err conftest.$ac_ext
13004 if $ac_preproc_ok; then :
13005
13006 else
13007 { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
13008 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
13009 as_fn_error $? "C preprocessor \"$CPP\" fails sanity check
13010 See \`config.log' for more details" "$LINENO" 5; }
13011 fi
13012
13013 ac_ext=c
13014 ac_cpp='$CPP $CPPFLAGS'
13015 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
13016 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
13017 ac_compiler_gnu=$ac_cv_c_compiler_gnu
13018
13019 ac_ext=cpp
13020 ac_cpp='$CXXCPP $CPPFLAGS'
13021 ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
13022 ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
13023 ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
13024 if test -z "$CXX"; then
13025 if test -n "$CCC"; then
13026 CXX=$CCC
13027 else
13028 if test -n "$ac_tool_prefix"; then
13029 for ac_prog in g++ c++ gpp aCC CC cxx cc++ cl.exe FCC KCC RCC xlC_r xlC
13030 do
13031 # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
13032 set dummy $ac_tool_prefix$ac_prog; ac_word=$2
13033 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
13034 $as_echo_n "checking for $ac_word... " >&6; }
13035 if ${ac_cv_prog_CXX+:} false; then :
13036 $as_echo_n "(cached) " >&6
13037 else
13038 if test -n "$CXX"; then
13039 ac_cv_prog_CXX="$CXX" # Let the user override the test.
13040 else
13041 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
13042 for as_dir in $PATH
13043 do
13044 IFS=$as_save_IFS
13045 test -z "$as_dir" && as_dir=.
13046 for ac_exec_ext in '' $ac_executable_extensions; do
13047 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
13048 ac_cv_prog_CXX="$ac_tool_prefix$ac_prog"
13049 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
13050 break 2
13051 fi
13052 done
13053 done
13054 IFS=$as_save_IFS
13055
13056 fi
13057 fi
13058 CXX=$ac_cv_prog_CXX
13059 if test -n "$CXX"; then
13060 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CXX" >&5
13061 $as_echo "$CXX" >&6; }
13062 else
13063 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
13064 $as_echo "no" >&6; }
13065 fi
13066
13067
13068 test -n "$CXX" && break
13069 done
13070 fi
13071 if test -z "$CXX"; then
13072 ac_ct_CXX=$CXX
13073 for ac_prog in g++ c++ gpp aCC CC cxx cc++ cl.exe FCC KCC RCC xlC_r xlC
13074 do
13075 # Extract the first word of "$ac_prog", so it can be a program name with args.
13076 set dummy $ac_prog; ac_word=$2
13077 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
13078 $as_echo_n "checking for $ac_word... " >&6; }
13079 if ${ac_cv_prog_ac_ct_CXX+:} false; then :
13080 $as_echo_n "(cached) " >&6
13081 else
13082 if test -n "$ac_ct_CXX"; then
13083 ac_cv_prog_ac_ct_CXX="$ac_ct_CXX" # Let the user override the test.
13084 else
13085 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
13086 for as_dir in $PATH
13087 do
13088 IFS=$as_save_IFS
13089 test -z "$as_dir" && as_dir=.
13090 for ac_exec_ext in '' $ac_executable_extensions; do
13091 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
13092 ac_cv_prog_ac_ct_CXX="$ac_prog"
13093 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
13094 break 2
13095 fi
13096 done
13097 done
13098 IFS=$as_save_IFS
13099
13100 fi
13101 fi
13102 ac_ct_CXX=$ac_cv_prog_ac_ct_CXX
13103 if test -n "$ac_ct_CXX"; then
13104 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CXX" >&5
13105 $as_echo "$ac_ct_CXX" >&6; }
13106 else
13107 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
13108 $as_echo "no" >&6; }
13109 fi
13110
13111
13112 test -n "$ac_ct_CXX" && break
13113 done
13114
13115 if test "x$ac_ct_CXX" = x; then
13116 CXX="g++"
13117 else
13118 case $cross_compiling:$ac_tool_warned in
13119 yes:)
13120 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
13121 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
13122 ac_tool_warned=yes ;;
13123 esac
13124 CXX=$ac_ct_CXX
13125 fi
13126 fi
13127
13128 fi
13129 fi
13130 # Provide some information about the compiler.
13131 $as_echo "$as_me:${as_lineno-$LINENO}: checking for C++ compiler version" >&5
13132 set X $ac_compile
13133 ac_compiler=$2
13134 for ac_option in --version -v -V -qversion; do
13135 { { ac_try="$ac_compiler $ac_option >&5"
13136 case "(($ac_try" in
13137 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
13138 *) ac_try_echo=$ac_try;;
13139 esac
13140 eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
13141 $as_echo "$ac_try_echo"; } >&5
13142 (eval "$ac_compiler $ac_option >&5") 2>conftest.err
13143 ac_status=$?
13144 if test -s conftest.err; then
13145 sed '10a\
13146 ... rest of stderr output deleted ...
13147 10q' conftest.err >conftest.er1
13148 cat conftest.er1 >&5
13149 fi
13150 rm -f conftest.er1 conftest.err
13151 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
13152 test $ac_status = 0; }
13153 done
13154
13155 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C++ compiler" >&5
13156 $as_echo_n "checking whether we are using the GNU C++ compiler... " >&6; }
13157 if ${ac_cv_cxx_compiler_gnu+:} false; then :
13158 $as_echo_n "(cached) " >&6
13159 else
13160 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
13161 /* end confdefs.h. */
13162
13163 int
13164 main ()
13165 {
13166 #ifndef __GNUC__
13167 choke me
13168 #endif
13169
13170 ;
13171 return 0;
13172 }
13173 _ACEOF
13174 if ac_fn_cxx_try_compile "$LINENO"; then :
13175 ac_compiler_gnu=yes
13176 else
13177 ac_compiler_gnu=no
13178 fi
13179 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
13180 ac_cv_cxx_compiler_gnu=$ac_compiler_gnu
13181
13182 fi
13183 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_cxx_compiler_gnu" >&5
13184 $as_echo "$ac_cv_cxx_compiler_gnu" >&6; }
13185 if test $ac_compiler_gnu = yes; then
13186 GXX=yes
13187 else
13188 GXX=
13189 fi
13190 ac_test_CXXFLAGS=${CXXFLAGS+set}
13191 ac_save_CXXFLAGS=$CXXFLAGS
13192 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CXX accepts -g" >&5
13193 $as_echo_n "checking whether $CXX accepts -g... " >&6; }
13194 if ${ac_cv_prog_cxx_g+:} false; then :
13195 $as_echo_n "(cached) " >&6
13196 else
13197 ac_save_cxx_werror_flag=$ac_cxx_werror_flag
13198 ac_cxx_werror_flag=yes
13199 ac_cv_prog_cxx_g=no
13200 CXXFLAGS="-g"
13201 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
13202 /* end confdefs.h. */
13203
13204 int
13205 main ()
13206 {
13207
13208 ;
13209 return 0;
13210 }
13211 _ACEOF
13212 if ac_fn_cxx_try_compile "$LINENO"; then :
13213 ac_cv_prog_cxx_g=yes
13214 else
13215 CXXFLAGS=""
13216 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
13217 /* end confdefs.h. */
13218
13219 int
13220 main ()
13221 {
13222
13223 ;
13224 return 0;
13225 }
13226 _ACEOF
13227 if ac_fn_cxx_try_compile "$LINENO"; then :
13228
13229 else
13230 ac_cxx_werror_flag=$ac_save_cxx_werror_flag
13231 CXXFLAGS="-g"
13232 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
13233 /* end confdefs.h. */
13234
13235 int
13236 main ()
13237 {
13238
13239 ;
13240 return 0;
13241 }
13242 _ACEOF
13243 if ac_fn_cxx_try_compile "$LINENO"; then :
13244 ac_cv_prog_cxx_g=yes
13245 fi
13246 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
13247 fi
13248 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
13249 fi
13250 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
13251 ac_cxx_werror_flag=$ac_save_cxx_werror_flag
13252 fi
13253 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cxx_g" >&5
13254 $as_echo "$ac_cv_prog_cxx_g" >&6; }
13255 if test "$ac_test_CXXFLAGS" = set; then
13256 CXXFLAGS=$ac_save_CXXFLAGS
13257 elif test $ac_cv_prog_cxx_g = yes; then
13258 if test "$GXX" = yes; then
13259 CXXFLAGS="-g -O2"
13260 else
13261 CXXFLAGS="-g"
13262 fi
13263 else
13264 if test "$GXX" = yes; then
13265 CXXFLAGS="-O2"
13266 else
13267 CXXFLAGS=
13268 fi
13269 fi
13270 ac_ext=c
13271 ac_cpp='$CPP $CPPFLAGS'
13272 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
13273 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
13274 ac_compiler_gnu=$ac_cv_c_compiler_gnu
13275
13276 depcc="$CXX" am_compiler_list=
13277
13278 { $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5
13279 $as_echo_n "checking dependency style of $depcc... " >&6; }
13280 if ${am_cv_CXX_dependencies_compiler_type+:} false; then :
13281 $as_echo_n "(cached) " >&6
13282 else
13283 if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
13284 # We make a subdir and do the tests there. Otherwise we can end up
13285 # making bogus files that we don't know about and never remove. For
13286 # instance it was reported that on HP-UX the gcc test will end up
13287 # making a dummy file named 'D' -- because '-MD' means "put the output
13288 # in D".
13289 rm -rf conftest.dir
13290 mkdir conftest.dir
13291 # Copy depcomp to subdir because otherwise we won't find it if we're
13292 # using a relative directory.
13293 cp "$am_depcomp" conftest.dir
13294 cd conftest.dir
13295 # We will build objects and dependencies in a subdirectory because
13296 # it helps to detect inapplicable dependency modes. For instance
13297 # both Tru64's cc and ICC support -MD to output dependencies as a
13298 # side effect of compilation, but ICC will put the dependencies in
13299 # the current directory while Tru64 will put them in the object
13300 # directory.
13301 mkdir sub
13302
13303 am_cv_CXX_dependencies_compiler_type=none
13304 if test "$am_compiler_list" = ""; then
13305 am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp`
13306 fi
13307 am__universal=false
13308 case " $depcc " in #(
13309 *\ -arch\ *\ -arch\ *) am__universal=true ;;
13310 esac
13311
13312 for depmode in $am_compiler_list; do
13313 # Setup a source with many dependencies, because some compilers
13314 # like to wrap large dependency lists on column 80 (with \), and
13315 # we should not choose a depcomp mode which is confused by this.
13316 #
13317 # We need to recreate these files for each test, as the compiler may
13318 # overwrite some of them when testing with obscure command lines.
13319 # This happens at least with the AIX C compiler.
13320 : > sub/conftest.c
13321 for i in 1 2 3 4 5 6; do
13322 echo '#include "conftst'$i'.h"' >> sub/conftest.c
13323 # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with
13324 # Solaris 10 /bin/sh.
13325 echo '/* dummy */' > sub/conftst$i.h
13326 done
13327 echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
13328
13329 # We check with '-c' and '-o' for the sake of the "dashmstdout"
13330 # mode. It turns out that the SunPro C++ compiler does not properly
13331 # handle '-M -o', and we need to detect this. Also, some Intel
13332 # versions had trouble with output in subdirs.
13333 am__obj=sub/conftest.${OBJEXT-o}
13334 am__minus_obj="-o $am__obj"
13335 case $depmode in
13336 gcc)
13337 # This depmode causes a compiler race in universal mode.
13338 test "$am__universal" = false || continue
13339 ;;
13340 nosideeffect)
13341 # After this tag, mechanisms are not by side-effect, so they'll
13342 # only be used when explicitly requested.
13343 if test "x$enable_dependency_tracking" = xyes; then
13344 continue
13345 else
13346 break
13347 fi
13348 ;;
13349 msvc7 | msvc7msys | msvisualcpp | msvcmsys)
13350 # This compiler won't grok '-c -o', but also, the minuso test has
13351 # not run yet. These depmodes are late enough in the game, and
13352 # so weak that their functioning should not be impacted.
13353 am__obj=conftest.${OBJEXT-o}
13354 am__minus_obj=
13355 ;;
13356 none) break ;;
13357 esac
13358 if depmode=$depmode \
13359 source=sub/conftest.c object=$am__obj \
13360 depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
13361 $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \
13362 >/dev/null 2>conftest.err &&
13363 grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 &&
13364 grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
13365 grep $am__obj sub/conftest.Po > /dev/null 2>&1 &&
13366 ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
13367 # icc doesn't choke on unknown options, it will just issue warnings
13368 # or remarks (even with -Werror). So we grep stderr for any message
13369 # that says an option was ignored or not supported.
13370 # When given -MP, icc 7.0 and 7.1 complain thusly:
13371 # icc: Command line warning: ignoring option '-M'; no argument required
13372 # The diagnosis changed in icc 8.0:
13373 # icc: Command line remark: option '-MP' not supported
13374 if (grep 'ignoring option' conftest.err ||
13375 grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
13376 am_cv_CXX_dependencies_compiler_type=$depmode
13377 break
13378 fi
13379 fi
13380 done
13381
13382 cd ..
13383 rm -rf conftest.dir
13384 else
13385 am_cv_CXX_dependencies_compiler_type=none
13386 fi
13387
13388 fi
13389 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CXX_dependencies_compiler_type" >&5
13390 $as_echo "$am_cv_CXX_dependencies_compiler_type" >&6; }
13391 CXXDEPMODE=depmode=$am_cv_CXX_dependencies_compiler_type
13392
13393 if
13394 test "x$enable_dependency_tracking" != xno \
13395 && test "$am_cv_CXX_dependencies_compiler_type" = gcc3; then
13396 am__fastdepCXX_TRUE=
13397 am__fastdepCXX_FALSE='#'
13398 else
13399 am__fastdepCXX_TRUE='#'
13400 am__fastdepCXX_FALSE=
13401 fi
13402
13403
13404
13405
13406 func_stripname_cnf ()
13407 {
13408 case $2 in
13409 .*) func_stripname_result=`$ECHO "$3" | $SED "s%^$1%%; s%\\\\$2\$%%"`;;
13410 *) func_stripname_result=`$ECHO "$3" | $SED "s%^$1%%; s%$2\$%%"`;;
13411 esac
13412 } # func_stripname_cnf
13413
13414 if test -n "$CXX" && ( test no != "$CXX" &&
13415 ( (test g++ = "$CXX" && `g++ -v >/dev/null 2>&1` ) ||
13416 (test g++ != "$CXX"))); then
13417 ac_ext=cpp
13418 ac_cpp='$CXXCPP $CPPFLAGS'
13419 ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
13420 ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
13421 ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
13422 { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C++ preprocessor" >&5
13423 $as_echo_n "checking how to run the C++ preprocessor... " >&6; }
13424 if test -z "$CXXCPP"; then
13425 if ${ac_cv_prog_CXXCPP+:} false; then :
13426 $as_echo_n "(cached) " >&6
13427 else
13428 # Double quotes because CXXCPP needs to be expanded
13429 for CXXCPP in "$CXX -E" "/lib/cpp"
13430 do
13431 ac_preproc_ok=false
13432 for ac_cxx_preproc_warn_flag in '' yes
13433 do
13434 # Use a header file that comes with gcc, so configuring glibc
13435 # with a fresh cross-compiler works.
13436 # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
13437 # <limits.h> exists even on freestanding compilers.
13438 # On the NeXT, cc -E runs the code through the compiler's parser,
13439 # not just through cpp. "Syntax error" is here to catch this case.
13440 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
13441 /* end confdefs.h. */
13442 #ifdef __STDC__
13443 # include <limits.h>
13444 #else
13445 # include <assert.h>
13446 #endif
13447 Syntax error
13448 _ACEOF
13449 if ac_fn_cxx_try_cpp "$LINENO"; then :
13450
13451 else
13452 # Broken: fails on valid input.
13453 continue
13454 fi
13455 rm -f conftest.err conftest.i conftest.$ac_ext
13456
13457 # OK, works on sane cases. Now check whether nonexistent headers
13458 # can be detected and how.
13459 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
13460 /* end confdefs.h. */
13461 #include <ac_nonexistent.h>
13462 _ACEOF
13463 if ac_fn_cxx_try_cpp "$LINENO"; then :
13464 # Broken: success on invalid input.
13465 continue
13466 else
13467 # Passes both tests.
13468 ac_preproc_ok=:
13469 break
13470 fi
13471 rm -f conftest.err conftest.i conftest.$ac_ext
13472
13473 done
13474 # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
13475 rm -f conftest.i conftest.err conftest.$ac_ext
13476 if $ac_preproc_ok; then :
13477 break
13478 fi
13479
13480 done
13481 ac_cv_prog_CXXCPP=$CXXCPP
13482
13483 fi
13484 CXXCPP=$ac_cv_prog_CXXCPP
13485 else
13486 ac_cv_prog_CXXCPP=$CXXCPP
13487 fi
13488 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CXXCPP" >&5
13489 $as_echo "$CXXCPP" >&6; }
13490 ac_preproc_ok=false
13491 for ac_cxx_preproc_warn_flag in '' yes
13492 do
13493 # Use a header file that comes with gcc, so configuring glibc
13494 # with a fresh cross-compiler works.
13495 # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
13496 # <limits.h> exists even on freestanding compilers.
13497 # On the NeXT, cc -E runs the code through the compiler's parser,
13498 # not just through cpp. "Syntax error" is here to catch this case.
13499 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
13500 /* end confdefs.h. */
13501 #ifdef __STDC__
13502 # include <limits.h>
13503 #else
13504 # include <assert.h>
13505 #endif
13506 Syntax error
13507 _ACEOF
13508 if ac_fn_cxx_try_cpp "$LINENO"; then :
13509
13510 else
13511 # Broken: fails on valid input.
13512 continue
13513 fi
13514 rm -f conftest.err conftest.i conftest.$ac_ext
13515
13516 # OK, works on sane cases. Now check whether nonexistent headers
13517 # can be detected and how.
13518 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
13519 /* end confdefs.h. */
13520 #include <ac_nonexistent.h>
13521 _ACEOF
13522 if ac_fn_cxx_try_cpp "$LINENO"; then :
13523 # Broken: success on invalid input.
13524 continue
13525 else
13526 # Passes both tests.
13527 ac_preproc_ok=:
13528 break
13529 fi
13530 rm -f conftest.err conftest.i conftest.$ac_ext
13531
13532 done
13533 # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
13534 rm -f conftest.i conftest.err conftest.$ac_ext
13535 if $ac_preproc_ok; then :
13536
13537 else
13538 { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
13539 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
13540 as_fn_error $? "C++ preprocessor \"$CXXCPP\" fails sanity check
13541 See \`config.log' for more details" "$LINENO" 5; }
13542 fi
13543
13544 ac_ext=c
13545 ac_cpp='$CPP $CPPFLAGS'
13546 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
13547 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
13548 ac_compiler_gnu=$ac_cv_c_compiler_gnu
13549
13550 else
13551 _lt_caught_CXX_error=yes
13552 fi
13553
13554 ac_ext=cpp
13555 ac_cpp='$CXXCPP $CPPFLAGS'
13556 ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
13557 ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
13558 ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
13559
13560 archive_cmds_need_lc_CXX=no
13561 allow_undefined_flag_CXX=
13562 always_export_symbols_CXX=no
13563 archive_expsym_cmds_CXX=
13564 compiler_needs_object_CXX=no
13565 export_dynamic_flag_spec_CXX=
13566 hardcode_direct_CXX=no
13567 hardcode_direct_absolute_CXX=no
13568 hardcode_libdir_flag_spec_CXX=
13569 hardcode_libdir_separator_CXX=
13570 hardcode_minus_L_CXX=no
13571 hardcode_shlibpath_var_CXX=unsupported
13572 hardcode_automatic_CXX=no
13573 inherit_rpath_CXX=no
13574 module_cmds_CXX=
13575 module_expsym_cmds_CXX=
13576 link_all_deplibs_CXX=unknown
13577 old_archive_cmds_CXX=$old_archive_cmds
13578 reload_flag_CXX=$reload_flag
13579 reload_cmds_CXX=$reload_cmds
13580 no_undefined_flag_CXX=
13581 whole_archive_flag_spec_CXX=
13582 enable_shared_with_static_runtimes_CXX=no
13583
13584 # Source file extension for C++ test sources.
13585 ac_ext=cpp
13586
13587 # Object file extension for compiled C++ test sources.
13588 objext=o
13589 objext_CXX=$objext
13590
13591 # No sense in running all these tests if we already determined that
13592 # the CXX compiler isn't working. Some variables (like enable_shared)
13593 # are currently assumed to apply to all compilers on this platform,
13594 # and will be corrupted by setting them based on a non-working compiler.
13595 if test yes != "$_lt_caught_CXX_error"; then
13596 # Code to be used in simple compile tests
13597 lt_simple_compile_test_code="int some_variable = 0;"
13598
13599 # Code to be used in simple link tests
13600 lt_simple_link_test_code='int main(int, char *[]) { return(0); }'
13601
13602 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
13603
13604
13605
13606
13607
13608
13609 # If no C compiler was specified, use CC.
13610 LTCC=${LTCC-"$CC"}
13611
13612 # If no C compiler flags were specified, use CFLAGS.
13613 LTCFLAGS=${LTCFLAGS-"$CFLAGS"}
13614
13615 # Allow CC to be a program name with arguments.
13616 compiler=$CC
13617
13618
13619 # save warnings/boilerplate of simple test code
13620 ac_outfile=conftest.$ac_objext
13621 echo "$lt_simple_compile_test_code" >conftest.$ac_ext
13622 eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
13623 _lt_compiler_boilerplate=`cat conftest.err`
13624 $RM conftest*
13625
13626 ac_outfile=conftest.$ac_objext
13627 echo "$lt_simple_link_test_code" >conftest.$ac_ext
13628 eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
13629 _lt_linker_boilerplate=`cat conftest.err`
13630 $RM -r conftest*
13631
13632
13633 # Allow CC to be a program name with arguments.
13634 lt_save_CC=$CC
13635 lt_save_CFLAGS=$CFLAGS
13636 lt_save_LD=$LD
13637 lt_save_GCC=$GCC
13638 GCC=$GXX
13639 lt_save_with_gnu_ld=$with_gnu_ld
13640 lt_save_path_LD=$lt_cv_path_LD
13641 if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then
13642 lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx
13643 else
13644 $as_unset lt_cv_prog_gnu_ld
13645 fi
13646 if test -n "${lt_cv_path_LDCXX+set}"; then
13647 lt_cv_path_LD=$lt_cv_path_LDCXX
13648 else
13649 $as_unset lt_cv_path_LD
13650 fi
13651 test -z "${LDCXX+set}" || LD=$LDCXX
13652 CC=${CXX-"c++"}
13653 CFLAGS=$CXXFLAGS
13654 compiler=$CC
13655 compiler_CXX=$CC
13656 func_cc_basename $compiler
13657 cc_basename=$func_cc_basename_result
13658
13659
13660 if test -n "$compiler"; then
13661 # We don't want -fno-exception when compiling C++ code, so set the
13662 # no_builtin_flag separately
13663 if test yes = "$GXX"; then
13664 lt_prog_compiler_no_builtin_flag_CXX=' -fno-builtin'
13665 else
13666 lt_prog_compiler_no_builtin_flag_CXX=
13667 fi
13668
13669 if test yes = "$GXX"; then
13670 # Set up default GNU C++ configuration
13671
13672
13673
13674 # Check whether --with-gnu-ld was given.
13675 if test "${with_gnu_ld+set}" = set; then :
13676 withval=$with_gnu_ld; test no = "$withval" || with_gnu_ld=yes
13677 else
13678 with_gnu_ld=no
13679 fi
13680
13681 ac_prog=ld
13682 if test yes = "$GCC"; then
13683 # Check if gcc -print-prog-name=ld gives a path.
13684 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld used by $CC" >&5
13685 $as_echo_n "checking for ld used by $CC... " >&6; }
13686 case $host in
13687 *-*-mingw*)
13688 # gcc leaves a trailing carriage return, which upsets mingw
13689 ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
13690 *)
13691 ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
13692 esac
13693 case $ac_prog in
13694 # Accept absolute paths.
13695 [\\/]* | ?:[\\/]*)
13696 re_direlt='/[^/][^/]*/\.\./'
13697 # Canonicalize the pathname of ld
13698 ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'`
13699 while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do
13700 ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"`
13701 done
13702 test -z "$LD" && LD=$ac_prog
13703 ;;
13704 "")
13705 # If it fails, then pretend we aren't using GCC.
13706 ac_prog=ld
13707 ;;
13708 *)
13709 # If it is relative, then search for the first ld in PATH.
13710 with_gnu_ld=unknown
13711 ;;
13712 esac
13713 elif test yes = "$with_gnu_ld"; then
13714 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5
13715 $as_echo_n "checking for GNU ld... " >&6; }
13716 else
13717 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5
13718 $as_echo_n "checking for non-GNU ld... " >&6; }
13719 fi
13720 if ${lt_cv_path_LD+:} false; then :
13721 $as_echo_n "(cached) " >&6
13722 else
13723 if test -z "$LD"; then
13724 lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR
13725 for ac_dir in $PATH; do
13726 IFS=$lt_save_ifs
13727 test -z "$ac_dir" && ac_dir=.
13728 if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
13729 lt_cv_path_LD=$ac_dir/$ac_prog
13730 # Check to see if the program is GNU ld. I'd rather use --version,
13731 # but apparently some variants of GNU ld only accept -v.
13732 # Break only if it was the GNU/non-GNU ld that we prefer.
13733 case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in
13734 *GNU* | *'with BFD'*)
13735 test no != "$with_gnu_ld" && break
13736 ;;
13737 *)
13738 test yes != "$with_gnu_ld" && break
13739 ;;
13740 esac
13741 fi
13742 done
13743 IFS=$lt_save_ifs
13744 else
13745 lt_cv_path_LD=$LD # Let the user override the test with a path.
13746 fi
13747 fi
13748
13749 LD=$lt_cv_path_LD
13750 if test -n "$LD"; then
13751 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LD" >&5
13752 $as_echo "$LD" >&6; }
13753 else
13754 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
13755 $as_echo "no" >&6; }
13756 fi
13757 test -z "$LD" && as_fn_error $? "no acceptable ld found in \$PATH" "$LINENO" 5
13758 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5
13759 $as_echo_n "checking if the linker ($LD) is GNU ld... " >&6; }
13760 if ${lt_cv_prog_gnu_ld+:} false; then :
13761 $as_echo_n "(cached) " >&6
13762 else
13763 # I'd rather use --version here, but apparently some GNU lds only accept -v.
13764 case `$LD -v 2>&1 </dev/null` in
13765 *GNU* | *'with BFD'*)
13766 lt_cv_prog_gnu_ld=yes
13767 ;;
13768 *)
13769 lt_cv_prog_gnu_ld=no
13770 ;;
13771 esac
13772 fi
13773 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_gnu_ld" >&5
13774 $as_echo "$lt_cv_prog_gnu_ld" >&6; }
13775 with_gnu_ld=$lt_cv_prog_gnu_ld
13776
13777
13778
13779
13780
13781
13782
13783 # Check if GNU C++ uses GNU ld as the underlying linker, since the
13784 # archiving commands below assume that GNU ld is being used.
13785 if test yes = "$with_gnu_ld"; then
13786 archive_cmds_CXX='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
13787 archive_expsym_cmds_CXX='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
13788
13789 hardcode_libdir_flag_spec_CXX='$wl-rpath $wl$libdir'
13790 export_dynamic_flag_spec_CXX='$wl--export-dynamic'
13791
13792 # If archive_cmds runs LD, not CC, wlarc should be empty
13793 # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to
13794 # investigate it a little bit more. (MM)
13795 wlarc='$wl'
13796
13797 # ancient GNU ld didn't support --whole-archive et. al.
13798 if eval "`$CC -print-prog-name=ld` --help 2>&1" |
13799 $GREP 'no-whole-archive' > /dev/null; then
13800 whole_archive_flag_spec_CXX=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive'
13801 else
13802 whole_archive_flag_spec_CXX=
13803 fi
13804 else
13805 with_gnu_ld=no
13806 wlarc=
13807
13808 # A generic and very simple default shared library creation
13809 # command for GNU C++ for the case where it uses the native
13810 # linker, instead of GNU ld. If possible, this setting should
13811 # overridden to take advantage of the native linker features on
13812 # the platform it is being used on.
13813 archive_cmds_CXX='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
13814 fi
13815
13816 # Commands to make compiler produce verbose output that lists
13817 # what "hidden" libraries, object files and flags are used when
13818 # linking a shared library.
13819 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP " \-L"'
13820
13821 else
13822 GXX=no
13823 with_gnu_ld=no
13824 wlarc=
13825 fi
13826
13827 # PORTME: fill in a description of your system's C++ link characteristics
13828 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&5
13829 $as_echo_n "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; }
13830 ld_shlibs_CXX=yes
13831 case $host_os in
13832 aix3*)
13833 # FIXME: insert proper C++ library support
13834 ld_shlibs_CXX=no
13835 ;;
13836 aix[4-9]*)
13837 if test ia64 = "$host_cpu"; then
13838 # On IA64, the linker does run time linking by default, so we don't
13839 # have to do anything special.
13840 aix_use_runtimelinking=no
13841 exp_sym_flag='-Bexport'
13842 no_entry_flag=
13843 else
13844 aix_use_runtimelinking=no
13845
13846 # Test if we are trying to use run time linking or normal
13847 # AIX style linking. If -brtl is somewhere in LDFLAGS, we
13848 # have runtime linking enabled, and use it for executables.
13849 # For shared libraries, we enable/disable runtime linking
13850 # depending on the kind of the shared library created -
13851 # when "with_aix_soname,aix_use_runtimelinking" is:
13852 # "aix,no" lib.a(lib.so.V) shared, rtl:no, for executables
13853 # "aix,yes" lib.so shared, rtl:yes, for executables
13854 # lib.a static archive
13855 # "both,no" lib.so.V(shr.o) shared, rtl:yes
13856 # lib.a(lib.so.V) shared, rtl:no, for executables
13857 # "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables
13858 # lib.a(lib.so.V) shared, rtl:no
13859 # "svr4,*" lib.so.V(shr.o) shared, rtl:yes, for executables
13860 # lib.a static archive
13861 case $host_os in aix4.[23]|aix4.[23].*|aix[5-9]*)
13862 for ld_flag in $LDFLAGS; do
13863 case $ld_flag in
13864 *-brtl*)
13865 aix_use_runtimelinking=yes
13866 break
13867 ;;
13868 esac
13869 done
13870 if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then
13871 # With aix-soname=svr4, we create the lib.so.V shared archives only,
13872 # so we don't have lib.a shared libs to link our executables.
13873 # We have to force runtime linking in this case.
13874 aix_use_runtimelinking=yes
13875 LDFLAGS="$LDFLAGS -Wl,-brtl"
13876 fi
13877 ;;
13878 esac
13879
13880 exp_sym_flag='-bexport'
13881 no_entry_flag='-bnoentry'
13882 fi
13883
13884 # When large executables or shared objects are built, AIX ld can
13885 # have problems creating the table of contents. If linking a library
13886 # or program results in "error TOC overflow" add -mminimal-toc to
13887 # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
13888 # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
13889
13890 archive_cmds_CXX=''
13891 hardcode_direct_CXX=yes
13892 hardcode_direct_absolute_CXX=yes
13893 hardcode_libdir_separator_CXX=':'
13894 link_all_deplibs_CXX=yes
13895 file_list_spec_CXX='$wl-f,'
13896 case $with_aix_soname,$aix_use_runtimelinking in
13897 aix,*) ;; # no import file
13898 svr4,* | *,yes) # use import file
13899 # The Import File defines what to hardcode.
13900 hardcode_direct_CXX=no
13901 hardcode_direct_absolute_CXX=no
13902 ;;
13903 esac
13904
13905 if test yes = "$GXX"; then
13906 case $host_os in aix4.[012]|aix4.[012].*)
13907 # We only want to do this on AIX 4.2 and lower, the check
13908 # below for broken collect2 doesn't work under 4.3+
13909 collect2name=`$CC -print-prog-name=collect2`
13910 if test -f "$collect2name" &&
13911 strings "$collect2name" | $GREP resolve_lib_name >/dev/null
13912 then
13913 # We have reworked collect2
13914 :
13915 else
13916 # We have old collect2
13917 hardcode_direct_CXX=unsupported
13918 # It fails to find uninstalled libraries when the uninstalled
13919 # path is not listed in the libpath. Setting hardcode_minus_L
13920 # to unsupported forces relinking
13921 hardcode_minus_L_CXX=yes
13922 hardcode_libdir_flag_spec_CXX='-L$libdir'
13923 hardcode_libdir_separator_CXX=
13924 fi
13925 esac
13926 shared_flag='-shared'
13927 if test yes = "$aix_use_runtimelinking"; then
13928 shared_flag=$shared_flag' $wl-G'
13929 fi
13930 # Need to ensure runtime linking is disabled for the traditional
13931 # shared library, or the linker may eventually find shared libraries
13932 # /with/ Import File - we do not want to mix them.
13933 shared_flag_aix='-shared'
13934 shared_flag_svr4='-shared $wl-G'
13935 else
13936 # not using gcc
13937 if test ia64 = "$host_cpu"; then
13938 # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
13939 # chokes on -Wl,-G. The following line is correct:
13940 shared_flag='-G'
13941 else
13942 if test yes = "$aix_use_runtimelinking"; then
13943 shared_flag='$wl-G'
13944 else
13945 shared_flag='$wl-bM:SRE'
13946 fi
13947 shared_flag_aix='$wl-bM:SRE'
13948 shared_flag_svr4='$wl-G'
13949 fi
13950 fi
13951
13952 export_dynamic_flag_spec_CXX='$wl-bexpall'
13953 # It seems that -bexpall does not export symbols beginning with
13954 # underscore (_), so it is better to generate a list of symbols to
13955 # export.
13956 always_export_symbols_CXX=yes
13957 if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then
13958 # Warning - without using the other runtime loading flags (-brtl),
13959 # -berok will link without error, but may produce a broken library.
13960 # The "-G" linker flag allows undefined symbols.
13961 no_undefined_flag_CXX='-bernotok'
13962 # Determine the default libpath from the value encoded in an empty
13963 # executable.
13964 if test set = "${lt_cv_aix_libpath+set}"; then
13965 aix_libpath=$lt_cv_aix_libpath
13966 else
13967 if ${lt_cv_aix_libpath__CXX+:} false; then :
13968 $as_echo_n "(cached) " >&6
13969 else
13970 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
13971 /* end confdefs.h. */
13972
13973 int
13974 main ()
13975 {
13976
13977 ;
13978 return 0;
13979 }
13980 _ACEOF
13981 if ac_fn_cxx_try_link "$LINENO"; then :
13982
13983 lt_aix_libpath_sed='
13984 /Import File Strings/,/^$/ {
13985 /^0/ {
13986 s/^0 *\([^ ]*\) *$/\1/
13987 p
13988 }
13989 }'
13990 lt_cv_aix_libpath__CXX=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
13991 # Check for a 64-bit object if we didn't find anything.
13992 if test -z "$lt_cv_aix_libpath__CXX"; then
13993 lt_cv_aix_libpath__CXX=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
13994 fi
13995 fi
13996 rm -f core conftest.err conftest.$ac_objext \
13997 conftest$ac_exeext conftest.$ac_ext
13998 if test -z "$lt_cv_aix_libpath__CXX"; then
13999 lt_cv_aix_libpath__CXX=/usr/lib:/lib
14000 fi
14001
14002 fi
14003
14004 aix_libpath=$lt_cv_aix_libpath__CXX
14005 fi
14006
14007 hardcode_libdir_flag_spec_CXX='$wl-blibpath:$libdir:'"$aix_libpath"
14008
14009 archive_expsym_cmds_CXX='$CC -o $output_objdir/$soname $libobjs $deplibs $wl'$no_entry_flag' $compiler_flags `if test -n "$allow_undefined_flag"; then func_echo_all "$wl$allow_undefined_flag"; else :; fi` $wl'$exp_sym_flag:\$export_symbols' '$shared_flag
14010 else
14011 if test ia64 = "$host_cpu"; then
14012 hardcode_libdir_flag_spec_CXX='$wl-R $libdir:/usr/lib:/lib'
14013 allow_undefined_flag_CXX="-z nodefs"
14014 archive_expsym_cmds_CXX="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\$wl$no_entry_flag"' $compiler_flags $wl$allow_undefined_flag '"\$wl$exp_sym_flag:\$export_symbols"
14015 else
14016 # Determine the default libpath from the value encoded in an
14017 # empty executable.
14018 if test set = "${lt_cv_aix_libpath+set}"; then
14019 aix_libpath=$lt_cv_aix_libpath
14020 else
14021 if ${lt_cv_aix_libpath__CXX+:} false; then :
14022 $as_echo_n "(cached) " >&6
14023 else
14024 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
14025 /* end confdefs.h. */
14026
14027 int
14028 main ()
14029 {
14030
14031 ;
14032 return 0;
14033 }
14034 _ACEOF
14035 if ac_fn_cxx_try_link "$LINENO"; then :
14036
14037 lt_aix_libpath_sed='
14038 /Import File Strings/,/^$/ {
14039 /^0/ {
14040 s/^0 *\([^ ]*\) *$/\1/
14041 p
14042 }
14043 }'
14044 lt_cv_aix_libpath__CXX=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
14045 # Check for a 64-bit object if we didn't find anything.
14046 if test -z "$lt_cv_aix_libpath__CXX"; then
14047 lt_cv_aix_libpath__CXX=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
14048 fi
14049 fi
14050 rm -f core conftest.err conftest.$ac_objext \
14051 conftest$ac_exeext conftest.$ac_ext
14052 if test -z "$lt_cv_aix_libpath__CXX"; then
14053 lt_cv_aix_libpath__CXX=/usr/lib:/lib
14054 fi
14055
14056 fi
14057
14058 aix_libpath=$lt_cv_aix_libpath__CXX
14059 fi
14060
14061 hardcode_libdir_flag_spec_CXX='$wl-blibpath:$libdir:'"$aix_libpath"
14062 # Warning - without using the other run time loading flags,
14063 # -berok will link without error, but may produce a broken library.
14064 no_undefined_flag_CXX=' $wl-bernotok'
14065 allow_undefined_flag_CXX=' $wl-berok'
14066 if test yes = "$with_gnu_ld"; then
14067 # We only use this code for GNU lds that support --whole-archive.
14068 whole_archive_flag_spec_CXX='$wl--whole-archive$convenience $wl--no-whole-archive'
14069 else
14070 # Exported symbols can be pulled into shared objects from archives
14071 whole_archive_flag_spec_CXX='$convenience'
14072 fi
14073 archive_cmds_need_lc_CXX=yes
14074 archive_expsym_cmds_CXX='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d'
14075 # -brtl affects multiple linker settings, -berok does not and is overridden later
14076 compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([, ]\\)%-berok\\1%g"`'
14077 if test svr4 != "$with_aix_soname"; then
14078 # This is similar to how AIX traditionally builds its shared
14079 # libraries. Need -bnortl late, we may have -brtl in LDFLAGS.
14080 archive_expsym_cmds_CXX="$archive_expsym_cmds_CXX"'~$CC '$shared_flag_aix' -o $output_objdir/$realname.d/$soname $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$realname.d/$soname'
14081 fi
14082 if test aix != "$with_aix_soname"; then
14083 archive_expsym_cmds_CXX="$archive_expsym_cmds_CXX"'~$CC '$shared_flag_svr4' -o $output_objdir/$realname.d/$shared_archive_member_spec.o $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$STRIP -e $output_objdir/$realname.d/$shared_archive_member_spec.o~( func_echo_all "#! $soname($shared_archive_member_spec.o)"; if test shr_64 = "$shared_archive_member_spec"; then func_echo_all "# 64"; else func_echo_all "# 32"; fi; cat $export_symbols ) > $output_objdir/$realname.d/$shared_archive_member_spec.imp~$AR $AR_FLAGS $output_objdir/$soname $output_objdir/$realname.d/$shared_archive_member_spec.o $output_objdir/$realname.d/$shared_archive_member_spec.imp'
14084 else
14085 # used by -dlpreopen to get the symbols
14086 archive_expsym_cmds_CXX="$archive_expsym_cmds_CXX"'~$MV $output_objdir/$realname.d/$soname $output_objdir'
14087 fi
14088 archive_expsym_cmds_CXX="$archive_expsym_cmds_CXX"'~$RM -r $output_objdir/$realname.d'
14089 fi
14090 fi
14091 ;;
14092
14093 beos*)
14094 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
14095 allow_undefined_flag_CXX=unsupported
14096 # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
14097 # support --undefined. This deserves some investigation. FIXME
14098 archive_cmds_CXX='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
14099 else
14100 ld_shlibs_CXX=no
14101 fi
14102 ;;
14103
14104 chorus*)
14105 case $cc_basename in
14106 *)
14107 # FIXME: insert proper C++ library support
14108 ld_shlibs_CXX=no
14109 ;;
14110 esac
14111 ;;
14112
14113 cygwin* | mingw* | pw32* | cegcc*)
14114 case $GXX,$cc_basename in
14115 ,cl* | no,cl*)
14116 # Native MSVC
14117 # hardcode_libdir_flag_spec is actually meaningless, as there is
14118 # no search path for DLLs.
14119 hardcode_libdir_flag_spec_CXX=' '
14120 allow_undefined_flag_CXX=unsupported
14121 always_export_symbols_CXX=yes
14122 file_list_spec_CXX='@'
14123 # Tell ltmain to make .lib files, not .a files.
14124 libext=lib
14125 # Tell ltmain to make .dll files, not .so files.
14126 shrext_cmds=.dll
14127 # FIXME: Setting linknames here is a bad hack.
14128 archive_cmds_CXX='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames='
14129 archive_expsym_cmds_CXX='if test DEF = "`$SED -n -e '\''s/^[ ]*//'\'' -e '\''/^\(;.*\)*$/d'\'' -e '\''s/^\(EXPORTS\|LIBRARY\)\([ ].*\)*$/DEF/p'\'' -e q $export_symbols`" ; then
14130 cp "$export_symbols" "$output_objdir/$soname.def";
14131 echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp";
14132 else
14133 $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp;
14134 fi~
14135 $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
14136 linknames='
14137 # The linker will not automatically build a static lib if we build a DLL.
14138 # _LT_TAGVAR(old_archive_from_new_cmds, CXX)='true'
14139 enable_shared_with_static_runtimes_CXX=yes
14140 # Don't use ranlib
14141 old_postinstall_cmds_CXX='chmod 644 $oldlib'
14142 postlink_cmds_CXX='lt_outputfile="@OUTPUT@"~
14143 lt_tool_outputfile="@TOOL_OUTPUT@"~
14144 case $lt_outputfile in
14145 *.exe|*.EXE) ;;
14146 *)
14147 lt_outputfile=$lt_outputfile.exe
14148 lt_tool_outputfile=$lt_tool_outputfile.exe
14149 ;;
14150 esac~
14151 func_to_tool_file "$lt_outputfile"~
14152 if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then
14153 $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
14154 $RM "$lt_outputfile.manifest";
14155 fi'
14156 ;;
14157 *)
14158 # g++
14159 # _LT_TAGVAR(hardcode_libdir_flag_spec, CXX) is actually meaningless,
14160 # as there is no search path for DLLs.
14161 hardcode_libdir_flag_spec_CXX='-L$libdir'
14162 export_dynamic_flag_spec_CXX='$wl--export-all-symbols'
14163 allow_undefined_flag_CXX=unsupported
14164 always_export_symbols_CXX=no
14165 enable_shared_with_static_runtimes_CXX=yes
14166
14167 if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
14168 archive_cmds_CXX='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
14169 # If the export-symbols file already is a .def file, use it as
14170 # is; otherwise, prepend EXPORTS...
14171 archive_expsym_cmds_CXX='if test DEF = "`$SED -n -e '\''s/^[ ]*//'\'' -e '\''/^\(;.*\)*$/d'\'' -e '\''s/^\(EXPORTS\|LIBRARY\)\([ ].*\)*$/DEF/p'\'' -e q $export_symbols`" ; then
14172 cp $export_symbols $output_objdir/$soname.def;
14173 else
14174 echo EXPORTS > $output_objdir/$soname.def;
14175 cat $export_symbols >> $output_objdir/$soname.def;
14176 fi~
14177 $CC -shared -nostdlib $output_objdir/$soname.def $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
14178 else
14179 ld_shlibs_CXX=no
14180 fi
14181 ;;
14182 esac
14183 ;;
14184 darwin* | rhapsody*)
14185
14186
14187 archive_cmds_need_lc_CXX=no
14188 hardcode_direct_CXX=no
14189 hardcode_automatic_CXX=yes
14190 hardcode_shlibpath_var_CXX=unsupported
14191 if test yes = "$lt_cv_ld_force_load"; then
14192 whole_archive_flag_spec_CXX='`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience $wl-force_load,$conv\"; done; func_echo_all \"$new_convenience\"`'
14193
14194 else
14195 whole_archive_flag_spec_CXX=''
14196 fi
14197 link_all_deplibs_CXX=yes
14198 allow_undefined_flag_CXX=$_lt_dar_allow_undefined
14199 case $cc_basename in
14200 ifort*|nagfor*) _lt_dar_can_shared=yes ;;
14201 *) _lt_dar_can_shared=$GCC ;;
14202 esac
14203 if test yes = "$_lt_dar_can_shared"; then
14204 output_verbose_link_cmd=func_echo_all
14205 archive_cmds_CXX="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dsymutil"
14206 module_cmds_CXX="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dsymutil"
14207 archive_expsym_cmds_CXX="sed 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dar_export_syms$_lt_dsymutil"
14208 module_expsym_cmds_CXX="sed -e 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dar_export_syms$_lt_dsymutil"
14209 if test yes != "$lt_cv_apple_cc_single_mod"; then
14210 archive_cmds_CXX="\$CC -r -keep_private_externs -nostdlib -o \$lib-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$lib-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring$_lt_dsymutil"
14211 archive_expsym_cmds_CXX="sed 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC -r -keep_private_externs -nostdlib -o \$lib-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$lib-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring$_lt_dar_export_syms$_lt_dsymutil"
14212 fi
14213
14214 else
14215 ld_shlibs_CXX=no
14216 fi
14217
14218 ;;
14219
14220 os2*)
14221 hardcode_libdir_flag_spec_CXX='-L$libdir'
14222 hardcode_minus_L_CXX=yes
14223 allow_undefined_flag_CXX=unsupported
14224 shrext_cmds=.dll
14225 archive_cmds_CXX='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
14226 $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
14227 $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
14228 $ECHO EXPORTS >> $output_objdir/$libname.def~
14229 emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~
14230 $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
14231 emximp -o $lib $output_objdir/$libname.def'
14232 archive_expsym_cmds_CXX='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
14233 $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
14234 $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
14235 $ECHO EXPORTS >> $output_objdir/$libname.def~
14236 prefix_cmds="$SED"~
14237 if test EXPORTS = "`$SED 1q $export_symbols`"; then
14238 prefix_cmds="$prefix_cmds -e 1d";
14239 fi~
14240 prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~
14241 cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~
14242 $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
14243 emximp -o $lib $output_objdir/$libname.def'
14244 old_archive_From_new_cmds_CXX='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'
14245 enable_shared_with_static_runtimes_CXX=yes
14246 ;;
14247
14248 dgux*)
14249 case $cc_basename in
14250 ec++*)
14251 # FIXME: insert proper C++ library support
14252 ld_shlibs_CXX=no
14253 ;;
14254 ghcx*)
14255 # Green Hills C++ Compiler
14256 # FIXME: insert proper C++ library support
14257 ld_shlibs_CXX=no
14258 ;;
14259 *)
14260 # FIXME: insert proper C++ library support
14261 ld_shlibs_CXX=no
14262 ;;
14263 esac
14264 ;;
14265
14266 freebsd2.*)
14267 # C++ shared libraries reported to be fairly broken before
14268 # switch to ELF
14269 ld_shlibs_CXX=no
14270 ;;
14271
14272 freebsd-elf*)
14273 archive_cmds_need_lc_CXX=no
14274 ;;
14275
14276 freebsd* | dragonfly*)
14277 # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF
14278 # conventions
14279 ld_shlibs_CXX=yes
14280 ;;
14281
14282 haiku*)
14283 archive_cmds_CXX='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
14284 link_all_deplibs_CXX=yes
14285 ;;
14286
14287 hpux9*)
14288 hardcode_libdir_flag_spec_CXX='$wl+b $wl$libdir'
14289 hardcode_libdir_separator_CXX=:
14290 export_dynamic_flag_spec_CXX='$wl-E'
14291 hardcode_direct_CXX=yes
14292 hardcode_minus_L_CXX=yes # Not in the search PATH,
14293 # but as the default
14294 # location of the library.
14295
14296 case $cc_basename in
14297 CC*)
14298 # FIXME: insert proper C++ library support
14299 ld_shlibs_CXX=no
14300 ;;
14301 aCC*)
14302 archive_cmds_CXX='$RM $output_objdir/$soname~$CC -b $wl+b $wl$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib'
14303 # Commands to make compiler produce verbose output that lists
14304 # what "hidden" libraries, object files and flags are used when
14305 # linking a shared library.
14306 #
14307 # There doesn't appear to be a way to prevent this compiler from
14308 # explicitly linking system object files so we need to strip them
14309 # from the output so that they don't get included in the library
14310 # dependencies.
14311 output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $EGREP " \-L"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
14312 ;;
14313 *)
14314 if test yes = "$GXX"; then
14315 archive_cmds_CXX='$RM $output_objdir/$soname~$CC -shared -nostdlib $pic_flag $wl+b $wl$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib'
14316 else
14317 # FIXME: insert proper C++ library support
14318 ld_shlibs_CXX=no
14319 fi
14320 ;;
14321 esac
14322 ;;
14323
14324 hpux10*|hpux11*)
14325 if test no = "$with_gnu_ld"; then
14326 hardcode_libdir_flag_spec_CXX='$wl+b $wl$libdir'
14327 hardcode_libdir_separator_CXX=:
14328
14329 case $host_cpu in
14330 hppa*64*|ia64*)
14331 ;;
14332 *)
14333 export_dynamic_flag_spec_CXX='$wl-E'
14334 ;;
14335 esac
14336 fi
14337 case $host_cpu in
14338 hppa*64*|ia64*)
14339 hardcode_direct_CXX=no
14340 hardcode_shlibpath_var_CXX=no
14341 ;;
14342 *)
14343 hardcode_direct_CXX=yes
14344 hardcode_direct_absolute_CXX=yes
14345 hardcode_minus_L_CXX=yes # Not in the search PATH,
14346 # but as the default
14347 # location of the library.
14348 ;;
14349 esac
14350
14351 case $cc_basename in
14352 CC*)
14353 # FIXME: insert proper C++ library support
14354 ld_shlibs_CXX=no
14355 ;;
14356 aCC*)
14357 case $host_cpu in
14358 hppa*64*)
14359 archive_cmds_CXX='$CC -b $wl+h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
14360 ;;
14361 ia64*)
14362 archive_cmds_CXX='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
14363 ;;
14364 *)
14365 archive_cmds_CXX='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
14366 ;;
14367 esac
14368 # Commands to make compiler produce verbose output that lists
14369 # what "hidden" libraries, object files and flags are used when
14370 # linking a shared library.
14371 #
14372 # There doesn't appear to be a way to prevent this compiler from
14373 # explicitly linking system object files so we need to strip them
14374 # from the output so that they don't get included in the library
14375 # dependencies.
14376 output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $GREP " \-L"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
14377 ;;
14378 *)
14379 if test yes = "$GXX"; then
14380 if test no = "$with_gnu_ld"; then
14381 case $host_cpu in
14382 hppa*64*)
14383 archive_cmds_CXX='$CC -shared -nostdlib -fPIC $wl+h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
14384 ;;
14385 ia64*)
14386 archive_cmds_CXX='$CC -shared -nostdlib $pic_flag $wl+h $wl$soname $wl+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
14387 ;;
14388 *)
14389 archive_cmds_CXX='$CC -shared -nostdlib $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
14390 ;;
14391 esac
14392 fi
14393 else
14394 # FIXME: insert proper C++ library support
14395 ld_shlibs_CXX=no
14396 fi
14397 ;;
14398 esac
14399 ;;
14400
14401 interix[3-9]*)
14402 hardcode_direct_CXX=no
14403 hardcode_shlibpath_var_CXX=no
14404 hardcode_libdir_flag_spec_CXX='$wl-rpath,$libdir'
14405 export_dynamic_flag_spec_CXX='$wl-E'
14406 # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
14407 # Instead, shared libraries are loaded at an image base (0x10000000 by
14408 # default) and relocated if they conflict, which is a slow very memory
14409 # consuming and fragmenting process. To avoid this, we pick a random,
14410 # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
14411 # time. Moving up from 0x10000000 also allows more sbrk(2) space.
14412 archive_cmds_CXX='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
14413 archive_expsym_cmds_CXX='sed "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--retain-symbols-file,$output_objdir/$soname.expsym $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
14414 ;;
14415 irix5* | irix6*)
14416 case $cc_basename in
14417 CC*)
14418 # SGI C++
14419 archive_cmds_CXX='$CC -shared -all -multigot $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib'
14420
14421 # Archives containing C++ object files must be created using
14422 # "CC -ar", where "CC" is the IRIX C++ compiler. This is
14423 # necessary to make sure instantiated templates are included
14424 # in the archive.
14425 old_archive_cmds_CXX='$CC -ar -WR,-u -o $oldlib $oldobjs'
14426 ;;
14427 *)
14428 if test yes = "$GXX"; then
14429 if test no = "$with_gnu_ld"; then
14430 archive_cmds_CXX='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib'
14431 else
14432 archive_cmds_CXX='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` -o $lib'
14433 fi
14434 fi
14435 link_all_deplibs_CXX=yes
14436 ;;
14437 esac
14438 hardcode_libdir_flag_spec_CXX='$wl-rpath $wl$libdir'
14439 hardcode_libdir_separator_CXX=:
14440 inherit_rpath_CXX=yes
14441 ;;
14442
14443 linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
14444 case $cc_basename in
14445 KCC*)
14446 # Kuck and Associates, Inc. (KAI) C++ Compiler
14447
14448 # KCC will only create a shared library if the output file
14449 # ends with ".so" (or ".sl" for HP-UX), so rename the library
14450 # to its proper name (with version) after linking.
14451 archive_cmds_CXX='tempext=`echo $shared_ext | $SED -e '\''s/\([^()0-9A-Za-z{}]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\$tempext\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib'
14452 archive_expsym_cmds_CXX='tempext=`echo $shared_ext | $SED -e '\''s/\([^()0-9A-Za-z{}]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\$tempext\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib $wl-retain-symbols-file,$export_symbols; mv \$templib $lib'
14453 # Commands to make compiler produce verbose output that lists
14454 # what "hidden" libraries, object files and flags are used when
14455 # linking a shared library.
14456 #
14457 # There doesn't appear to be a way to prevent this compiler from
14458 # explicitly linking system object files so we need to strip them
14459 # from the output so that they don't get included in the library
14460 # dependencies.
14461 output_verbose_link_cmd='templist=`$CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 | $GREP "ld"`; rm -f libconftest$shared_ext; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
14462
14463 hardcode_libdir_flag_spec_CXX='$wl-rpath,$libdir'
14464 export_dynamic_flag_spec_CXX='$wl--export-dynamic'
14465
14466 # Archives containing C++ object files must be created using
14467 # "CC -Bstatic", where "CC" is the KAI C++ compiler.
14468 old_archive_cmds_CXX='$CC -Bstatic -o $oldlib $oldobjs'
14469 ;;
14470 icpc* | ecpc* )
14471 # Intel C++
14472 with_gnu_ld=yes
14473 # version 8.0 and above of icpc choke on multiply defined symbols
14474 # if we add $predep_objects and $postdep_objects, however 7.1 and
14475 # earlier do not add the objects themselves.
14476 case `$CC -V 2>&1` in
14477 *"Version 7."*)
14478 archive_cmds_CXX='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
14479 archive_expsym_cmds_CXX='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
14480 ;;
14481 *) # Version 8.0 or newer
14482 tmp_idyn=
14483 case $host_cpu in
14484 ia64*) tmp_idyn=' -i_dynamic';;
14485 esac
14486 archive_cmds_CXX='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
14487 archive_expsym_cmds_CXX='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
14488 ;;
14489 esac
14490 archive_cmds_need_lc_CXX=no
14491 hardcode_libdir_flag_spec_CXX='$wl-rpath,$libdir'
14492 export_dynamic_flag_spec_CXX='$wl--export-dynamic'
14493 whole_archive_flag_spec_CXX='$wl--whole-archive$convenience $wl--no-whole-archive'
14494 ;;
14495 pgCC* | pgcpp*)
14496 # Portland Group C++ compiler
14497 case `$CC -V` in
14498 *pgCC\ [1-5].* | *pgcpp\ [1-5].*)
14499 prelink_cmds_CXX='tpldir=Template.dir~
14500 rm -rf $tpldir~
14501 $CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~
14502 compile_command="$compile_command `find $tpldir -name \*.o | sort | $NL2SP`"'
14503 old_archive_cmds_CXX='tpldir=Template.dir~
14504 rm -rf $tpldir~
14505 $CC --prelink_objects --instantiation_dir $tpldir $oldobjs$old_deplibs~
14506 $AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | sort | $NL2SP`~
14507 $RANLIB $oldlib'
14508 archive_cmds_CXX='tpldir=Template.dir~
14509 rm -rf $tpldir~
14510 $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
14511 $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
14512 archive_expsym_cmds_CXX='tpldir=Template.dir~
14513 rm -rf $tpldir~
14514 $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
14515 $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
14516 ;;
14517 *) # Version 6 and above use weak symbols
14518 archive_cmds_CXX='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
14519 archive_expsym_cmds_CXX='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
14520 ;;
14521 esac
14522
14523 hardcode_libdir_flag_spec_CXX='$wl--rpath $wl$libdir'
14524 export_dynamic_flag_spec_CXX='$wl--export-dynamic'
14525 whole_archive_flag_spec_CXX='$wl--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive'
14526 ;;
14527 cxx*)
14528 # Compaq C++
14529 archive_cmds_CXX='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
14530 archive_expsym_cmds_CXX='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib $wl-retain-symbols-file $wl$export_symbols'
14531
14532 runpath_var=LD_RUN_PATH
14533 hardcode_libdir_flag_spec_CXX='-rpath $libdir'
14534 hardcode_libdir_separator_CXX=:
14535
14536 # Commands to make compiler produce verbose output that lists
14537 # what "hidden" libraries, object files and flags are used when
14538 # linking a shared library.
14539 #
14540 # There doesn't appear to be a way to prevent this compiler from
14541 # explicitly linking system object files so we need to strip them
14542 # from the output so that they don't get included in the library
14543 # dependencies.
14544 output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld"`; templist=`func_echo_all "$templist" | $SED "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "X$list" | $Xsed'
14545 ;;
14546 xl* | mpixl* | bgxl*)
14547 # IBM XL 8.0 on PPC, with GNU ld
14548 hardcode_libdir_flag_spec_CXX='$wl-rpath $wl$libdir'
14549 export_dynamic_flag_spec_CXX='$wl--export-dynamic'
14550 archive_cmds_CXX='$CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
14551 if test yes = "$supports_anon_versioning"; then
14552 archive_expsym_cmds_CXX='echo "{ global:" > $output_objdir/$libname.ver~
14553 cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
14554 echo "local: *; };" >> $output_objdir/$libname.ver~
14555 $CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib'
14556 fi
14557 ;;
14558 *)
14559 case `$CC -V 2>&1 | sed 5q` in
14560 *Sun\ C*)
14561 # Sun C++ 5.9
14562 no_undefined_flag_CXX=' -zdefs'
14563 archive_cmds_CXX='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
14564 archive_expsym_cmds_CXX='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-retain-symbols-file $wl$export_symbols'
14565 hardcode_libdir_flag_spec_CXX='-R$libdir'
14566 whole_archive_flag_spec_CXX='$wl--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive'
14567 compiler_needs_object_CXX=yes
14568
14569 # Not sure whether something based on
14570 # $CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1
14571 # would be better.
14572 output_verbose_link_cmd='func_echo_all'
14573
14574 # Archives containing C++ object files must be created using
14575 # "CC -xar", where "CC" is the Sun C++ compiler. This is
14576 # necessary to make sure instantiated templates are included
14577 # in the archive.
14578 old_archive_cmds_CXX='$CC -xar -o $oldlib $oldobjs'
14579 ;;
14580 esac
14581 ;;
14582 esac
14583 ;;
14584
14585 lynxos*)
14586 # FIXME: insert proper C++ library support
14587 ld_shlibs_CXX=no
14588 ;;
14589
14590 m88k*)
14591 # FIXME: insert proper C++ library support
14592 ld_shlibs_CXX=no
14593 ;;
14594
14595 mvs*)
14596 case $cc_basename in
14597 cxx*)
14598 # FIXME: insert proper C++ library support
14599 ld_shlibs_CXX=no
14600 ;;
14601 *)
14602 # FIXME: insert proper C++ library support
14603 ld_shlibs_CXX=no
14604 ;;
14605 esac
14606 ;;
14607
14608 netbsd*)
14609 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
14610 archive_cmds_CXX='$LD -Bshareable -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags'
14611 wlarc=
14612 hardcode_libdir_flag_spec_CXX='-R$libdir'
14613 hardcode_direct_CXX=yes
14614 hardcode_shlibpath_var_CXX=no
14615 fi
14616 # Workaround some broken pre-1.5 toolchains
14617 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"'
14618 ;;
14619
14620 *nto* | *qnx*)
14621 ld_shlibs_CXX=yes
14622 ;;
14623
14624 openbsd* | bitrig*)
14625 if test -f /usr/libexec/ld.so; then
14626 hardcode_direct_CXX=yes
14627 hardcode_shlibpath_var_CXX=no
14628 hardcode_direct_absolute_CXX=yes
14629 archive_cmds_CXX='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
14630 hardcode_libdir_flag_spec_CXX='$wl-rpath,$libdir'
14631 if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`"; then
14632 archive_expsym_cmds_CXX='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-retain-symbols-file,$export_symbols -o $lib'
14633 export_dynamic_flag_spec_CXX='$wl-E'
14634 whole_archive_flag_spec_CXX=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive'
14635 fi
14636 output_verbose_link_cmd=func_echo_all
14637 else
14638 ld_shlibs_CXX=no
14639 fi
14640 ;;
14641
14642 osf3* | osf4* | osf5*)
14643 case $cc_basename in
14644 KCC*)
14645 # Kuck and Associates, Inc. (KAI) C++ Compiler
14646
14647 # KCC will only create a shared library if the output file
14648 # ends with ".so" (or ".sl" for HP-UX), so rename the library
14649 # to its proper name (with version) after linking.
14650 archive_cmds_CXX='tempext=`echo $shared_ext | $SED -e '\''s/\([^()0-9A-Za-z{}]\)/\\\\\1/g'\''`; templib=`echo "$lib" | $SED -e "s/\$tempext\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib'
14651
14652 hardcode_libdir_flag_spec_CXX='$wl-rpath,$libdir'
14653 hardcode_libdir_separator_CXX=:
14654
14655 # Archives containing C++ object files must be created using
14656 # the KAI C++ compiler.
14657 case $host in
14658 osf3*) old_archive_cmds_CXX='$CC -Bstatic -o $oldlib $oldobjs' ;;
14659 *) old_archive_cmds_CXX='$CC -o $oldlib $oldobjs' ;;
14660 esac
14661 ;;
14662 RCC*)
14663 # Rational C++ 2.4.1
14664 # FIXME: insert proper C++ library support
14665 ld_shlibs_CXX=no
14666 ;;
14667 cxx*)
14668 case $host in
14669 osf3*)
14670 allow_undefined_flag_CXX=' $wl-expect_unresolved $wl\*'
14671 archive_cmds_CXX='$CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $soname `test -n "$verstring" && func_echo_all "$wl-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib'
14672 hardcode_libdir_flag_spec_CXX='$wl-rpath $wl$libdir'
14673 ;;
14674 *)
14675 allow_undefined_flag_CXX=' -expect_unresolved \*'
14676 archive_cmds_CXX='$CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib'
14677 archive_expsym_cmds_CXX='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~
14678 echo "-hidden">> $lib.exp~
14679 $CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname $wl-input $wl$lib.exp `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib~
14680 $RM $lib.exp'
14681 hardcode_libdir_flag_spec_CXX='-rpath $libdir'
14682 ;;
14683 esac
14684
14685 hardcode_libdir_separator_CXX=:
14686
14687 # Commands to make compiler produce verbose output that lists
14688 # what "hidden" libraries, object files and flags are used when
14689 # linking a shared library.
14690 #
14691 # There doesn't appear to be a way to prevent this compiler from
14692 # explicitly linking system object files so we need to strip them
14693 # from the output so that they don't get included in the library
14694 # dependencies.
14695 output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld" | $GREP -v "ld:"`; templist=`func_echo_all "$templist" | $SED "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
14696 ;;
14697 *)
14698 if test yes,no = "$GXX,$with_gnu_ld"; then
14699 allow_undefined_flag_CXX=' $wl-expect_unresolved $wl\*'
14700 case $host in
14701 osf3*)
14702 archive_cmds_CXX='$CC -shared -nostdlib $allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib'
14703 ;;
14704 *)
14705 archive_cmds_CXX='$CC -shared $pic_flag -nostdlib $allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-msym $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib'
14706 ;;
14707 esac
14708
14709 hardcode_libdir_flag_spec_CXX='$wl-rpath $wl$libdir'
14710 hardcode_libdir_separator_CXX=:
14711
14712 # Commands to make compiler produce verbose output that lists
14713 # what "hidden" libraries, object files and flags are used when
14714 # linking a shared library.
14715 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP " \-L"'
14716
14717 else
14718 # FIXME: insert proper C++ library support
14719 ld_shlibs_CXX=no
14720 fi
14721 ;;
14722 esac
14723 ;;
14724
14725 psos*)
14726 # FIXME: insert proper C++ library support
14727 ld_shlibs_CXX=no
14728 ;;
14729
14730 sunos4*)
14731 case $cc_basename in
14732 CC*)
14733 # Sun C++ 4.x
14734 # FIXME: insert proper C++ library support
14735 ld_shlibs_CXX=no
14736 ;;
14737 lcc*)
14738 # Lucid
14739 # FIXME: insert proper C++ library support
14740 ld_shlibs_CXX=no
14741 ;;
14742 *)
14743 # FIXME: insert proper C++ library support
14744 ld_shlibs_CXX=no
14745 ;;
14746 esac
14747 ;;
14748
14749 solaris*)
14750 case $cc_basename in
14751 CC* | sunCC*)
14752 # Sun C++ 4.2, 5.x and Centerline C++
14753 archive_cmds_need_lc_CXX=yes
14754 no_undefined_flag_CXX=' -zdefs'
14755 archive_cmds_CXX='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
14756 archive_expsym_cmds_CXX='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
14757 $CC -G$allow_undefined_flag $wl-M $wl$lib.exp -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
14758
14759 hardcode_libdir_flag_spec_CXX='-R$libdir'
14760 hardcode_shlibpath_var_CXX=no
14761 case $host_os in
14762 solaris2.[0-5] | solaris2.[0-5].*) ;;
14763 *)
14764 # The compiler driver will combine and reorder linker options,
14765 # but understands '-z linker_flag'.
14766 # Supported since Solaris 2.6 (maybe 2.5.1?)
14767 whole_archive_flag_spec_CXX='-z allextract$convenience -z defaultextract'
14768 ;;
14769 esac
14770 link_all_deplibs_CXX=yes
14771
14772 output_verbose_link_cmd='func_echo_all'
14773
14774 # Archives containing C++ object files must be created using
14775 # "CC -xar", where "CC" is the Sun C++ compiler. This is
14776 # necessary to make sure instantiated templates are included
14777 # in the archive.
14778 old_archive_cmds_CXX='$CC -xar -o $oldlib $oldobjs'
14779 ;;
14780 gcx*)
14781 # Green Hills C++ Compiler
14782 archive_cmds_CXX='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'
14783
14784 # The C++ compiler must be used to create the archive.
14785 old_archive_cmds_CXX='$CC $LDFLAGS -archive -o $oldlib $oldobjs'
14786 ;;
14787 *)
14788 # GNU C++ compiler with Solaris linker
14789 if test yes,no = "$GXX,$with_gnu_ld"; then
14790 no_undefined_flag_CXX=' $wl-z ${wl}defs'
14791 if $CC --version | $GREP -v '^2\.7' > /dev/null; then
14792 archive_cmds_CXX='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'
14793 archive_expsym_cmds_CXX='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
14794 $CC -shared $pic_flag -nostdlib $wl-M $wl$lib.exp $wl-h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
14795
14796 # Commands to make compiler produce verbose output that lists
14797 # what "hidden" libraries, object files and flags are used when
14798 # linking a shared library.
14799 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP " \-L"'
14800 else
14801 # g++ 2.7 appears to require '-G' NOT '-shared' on this
14802 # platform.
14803 archive_cmds_CXX='$CC -G -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'
14804 archive_expsym_cmds_CXX='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
14805 $CC -G -nostdlib $wl-M $wl$lib.exp $wl-h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp'
14806
14807 # Commands to make compiler produce verbose output that lists
14808 # what "hidden" libraries, object files and flags are used when
14809 # linking a shared library.
14810 output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP " \-L"'
14811 fi
14812
14813 hardcode_libdir_flag_spec_CXX='$wl-R $wl$libdir'
14814 case $host_os in
14815 solaris2.[0-5] | solaris2.[0-5].*) ;;
14816 *)
14817 whole_archive_flag_spec_CXX='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract'
14818 ;;
14819 esac
14820 fi
14821 ;;
14822 esac
14823 ;;
14824
14825 sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[01].[10]* | unixware7* | sco3.2v5.0.[024]*)
14826 no_undefined_flag_CXX='$wl-z,text'
14827 archive_cmds_need_lc_CXX=no
14828 hardcode_shlibpath_var_CXX=no
14829 runpath_var='LD_RUN_PATH'
14830
14831 case $cc_basename in
14832 CC*)
14833 archive_cmds_CXX='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
14834 archive_expsym_cmds_CXX='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
14835 ;;
14836 *)
14837 archive_cmds_CXX='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
14838 archive_expsym_cmds_CXX='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
14839 ;;
14840 esac
14841 ;;
14842
14843 sysv5* | sco3.2v5* | sco5v6*)
14844 # Note: We CANNOT use -z defs as we might desire, because we do not
14845 # link with -lc, and that would cause any symbols used from libc to
14846 # always be unresolved, which means just about no library would
14847 # ever link correctly. If we're not using GNU ld we use -z text
14848 # though, which does catch some bad symbols but isn't as heavy-handed
14849 # as -z defs.
14850 no_undefined_flag_CXX='$wl-z,text'
14851 allow_undefined_flag_CXX='$wl-z,nodefs'
14852 archive_cmds_need_lc_CXX=no
14853 hardcode_shlibpath_var_CXX=no
14854 hardcode_libdir_flag_spec_CXX='$wl-R,$libdir'
14855 hardcode_libdir_separator_CXX=':'
14856 link_all_deplibs_CXX=yes
14857 export_dynamic_flag_spec_CXX='$wl-Bexport'
14858 runpath_var='LD_RUN_PATH'
14859
14860 case $cc_basename in
14861 CC*)
14862 archive_cmds_CXX='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
14863 archive_expsym_cmds_CXX='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
14864 old_archive_cmds_CXX='$CC -Tprelink_objects $oldobjs~
14865 '"$old_archive_cmds_CXX"
14866 reload_cmds_CXX='$CC -Tprelink_objects $reload_objs~
14867 '"$reload_cmds_CXX"
14868 ;;
14869 *)
14870 archive_cmds_CXX='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
14871 archive_expsym_cmds_CXX='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
14872 ;;
14873 esac
14874 ;;
14875
14876 tandem*)
14877 case $cc_basename in
14878 NCC*)
14879 # NonStop-UX NCC 3.20
14880 # FIXME: insert proper C++ library support
14881 ld_shlibs_CXX=no
14882 ;;
14883 *)
14884 # FIXME: insert proper C++ library support
14885 ld_shlibs_CXX=no
14886 ;;
14887 esac
14888 ;;
14889
14890 vxworks*)
14891 # FIXME: insert proper C++ library support
14892 ld_shlibs_CXX=no
14893 ;;
14894
14895 *)
14896 # FIXME: insert proper C++ library support
14897 ld_shlibs_CXX=no
14898 ;;
14899 esac
14900
14901 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs_CXX" >&5
14902 $as_echo "$ld_shlibs_CXX" >&6; }
14903 test no = "$ld_shlibs_CXX" && can_build_shared=no
14904
14905 GCC_CXX=$GXX
14906 LD_CXX=$LD
14907
14908 ## CAVEAT EMPTOR:
14909 ## There is no encapsulation within the following macros, do not change
14910 ## the running order or otherwise move them around unless you know exactly
14911 ## what you are doing...
14912 # Dependencies to place before and after the object being linked:
14913 predep_objects_CXX=
14914 postdep_objects_CXX=
14915 predeps_CXX=
14916 postdeps_CXX=
14917 compiler_lib_search_path_CXX=
14918
14919 cat > conftest.$ac_ext <<_LT_EOF
14920 class Foo
14921 {
14922 public:
14923 Foo (void) { a = 0; }
14924 private:
14925 int a;
14926 };
14927 _LT_EOF
14928
14929
14930 _lt_libdeps_save_CFLAGS=$CFLAGS
14931 case "$CC $CFLAGS " in #(
14932 *\ -flto*\ *) CFLAGS="$CFLAGS -fno-lto" ;;
14933 *\ -fwhopr*\ *) CFLAGS="$CFLAGS -fno-whopr" ;;
14934 *\ -fuse-linker-plugin*\ *) CFLAGS="$CFLAGS -fno-use-linker-plugin" ;;
14935 esac
14936
14937 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
14938 (eval $ac_compile) 2>&5
14939 ac_status=$?
14940 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
14941 test $ac_status = 0; }; then
14942 # Parse the compiler output and extract the necessary
14943 # objects, libraries and library flags.
14944
14945 # Sentinel used to keep track of whether or not we are before
14946 # the conftest object file.
14947 pre_test_object_deps_done=no
14948
14949 for p in `eval "$output_verbose_link_cmd"`; do
14950 case $prev$p in
14951
14952 -L* | -R* | -l*)
14953 # Some compilers place space between "-{L,R}" and the path.
14954 # Remove the space.
14955 if test x-L = "$p" ||
14956 test x-R = "$p"; then
14957 prev=$p
14958 continue
14959 fi
14960
14961 # Expand the sysroot to ease extracting the directories later.
14962 if test -z "$prev"; then
14963 case $p in
14964 -L*) func_stripname_cnf '-L' '' "$p"; prev=-L; p=$func_stripname_result ;;
14965 -R*) func_stripname_cnf '-R' '' "$p"; prev=-R; p=$func_stripname_result ;;
14966 -l*) func_stripname_cnf '-l' '' "$p"; prev=-l; p=$func_stripname_result ;;
14967 esac
14968 fi
14969 case $p in
14970 =*) func_stripname_cnf '=' '' "$p"; p=$lt_sysroot$func_stripname_result ;;
14971 esac
14972 if test no = "$pre_test_object_deps_done"; then
14973 case $prev in
14974 -L | -R)
14975 # Internal compiler library paths should come after those
14976 # provided the user. The postdeps already come after the
14977 # user supplied libs so there is no need to process them.
14978 if test -z "$compiler_lib_search_path_CXX"; then
14979 compiler_lib_search_path_CXX=$prev$p
14980 else
14981 compiler_lib_search_path_CXX="${compiler_lib_search_path_CXX} $prev$p"
14982 fi
14983 ;;
14984 # The "-l" case would never come before the object being
14985 # linked, so don't bother handling this case.
14986 esac
14987 else
14988 if test -z "$postdeps_CXX"; then
14989 postdeps_CXX=$prev$p
14990 else
14991 postdeps_CXX="${postdeps_CXX} $prev$p"
14992 fi
14993 fi
14994 prev=
14995 ;;
14996
14997 *.lto.$objext) ;; # Ignore GCC LTO objects
14998 *.$objext)
14999 # This assumes that the test object file only shows up
15000 # once in the compiler output.
15001 if test "$p" = "conftest.$objext"; then
15002 pre_test_object_deps_done=yes
15003 continue
15004 fi
15005
15006 if test no = "$pre_test_object_deps_done"; then
15007 if test -z "$predep_objects_CXX"; then
15008 predep_objects_CXX=$p
15009 else
15010 predep_objects_CXX="$predep_objects_CXX $p"
15011 fi
15012 else
15013 if test -z "$postdep_objects_CXX"; then
15014 postdep_objects_CXX=$p
15015 else
15016 postdep_objects_CXX="$postdep_objects_CXX $p"
15017 fi
15018 fi
15019 ;;
15020
15021 *) ;; # Ignore the rest.
15022
15023 esac
15024 done
15025
15026 # Clean up.
15027 rm -f a.out a.exe
15028 else
15029 echo "libtool.m4: error: problem compiling CXX test program"
15030 fi
15031
15032 $RM -f confest.$objext
15033 CFLAGS=$_lt_libdeps_save_CFLAGS
15034
15035 # PORTME: override above test on systems where it is broken
15036 case $host_os in
15037 interix[3-9]*)
15038 # Interix 3.5 installs completely hosed .la files for C++, so rather than
15039 # hack all around it, let's just trust "g++" to DTRT.
15040 predep_objects_CXX=
15041 postdep_objects_CXX=
15042 postdeps_CXX=
15043 ;;
15044 esac
15045
15046
15047 case " $postdeps_CXX " in
15048 *" -lc "*) archive_cmds_need_lc_CXX=no ;;
15049 esac
15050 compiler_lib_search_dirs_CXX=
15051 if test -n "${compiler_lib_search_path_CXX}"; then
15052 compiler_lib_search_dirs_CXX=`echo " ${compiler_lib_search_path_CXX}" | $SED -e 's! -L! !g' -e 's!^ !!'`
15053 fi
15054
15055
15056
15057
15058
15059
15060
15061
15062
15063
15064
15065
15066
15067
15068
15069
15070
15071
15072
15073
15074
15075
15076
15077
15078
15079
15080
15081
15082
15083
15084
15085 lt_prog_compiler_wl_CXX=
15086 lt_prog_compiler_pic_CXX=
15087 lt_prog_compiler_static_CXX=
15088
15089
15090 # C++ specific cases for pic, static, wl, etc.
15091 if test yes = "$GXX"; then
15092 lt_prog_compiler_wl_CXX='-Wl,'
15093 lt_prog_compiler_static_CXX='-static'
15094
15095 case $host_os in
15096 aix*)
15097 # All AIX code is PIC.
15098 if test ia64 = "$host_cpu"; then
15099 # AIX 5 now supports IA64 processor
15100 lt_prog_compiler_static_CXX='-Bstatic'
15101 fi
15102 lt_prog_compiler_pic_CXX='-fPIC'
15103 ;;
15104
15105 amigaos*)
15106 case $host_cpu in
15107 powerpc)
15108 # see comment about AmigaOS4 .so support
15109 lt_prog_compiler_pic_CXX='-fPIC'
15110 ;;
15111 m68k)
15112 # FIXME: we need at least 68020 code to build shared libraries, but
15113 # adding the '-m68020' flag to GCC prevents building anything better,
15114 # like '-m68040'.
15115 lt_prog_compiler_pic_CXX='-m68020 -resident32 -malways-restore-a4'
15116 ;;
15117 esac
15118 ;;
15119
15120 beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
15121 # PIC is the default for these OSes.
15122 ;;
15123 mingw* | cygwin* | os2* | pw32* | cegcc*)
15124 # This hack is so that the source file can tell whether it is being
15125 # built for inclusion in a dll (and should export symbols for example).
15126 # Although the cygwin gcc ignores -fPIC, still need this for old-style
15127 # (--disable-auto-import) libraries
15128 lt_prog_compiler_pic_CXX='-DDLL_EXPORT'
15129 case $host_os in
15130 os2*)
15131 lt_prog_compiler_static_CXX='$wl-static'
15132 ;;
15133 esac
15134 ;;
15135 darwin* | rhapsody*)
15136 # PIC is the default on this platform
15137 # Common symbols not allowed in MH_DYLIB files
15138 lt_prog_compiler_pic_CXX='-fno-common'
15139 ;;
15140 *djgpp*)
15141 # DJGPP does not support shared libraries at all
15142 lt_prog_compiler_pic_CXX=
15143 ;;
15144 haiku*)
15145 # PIC is the default for Haiku.
15146 # The "-static" flag exists, but is broken.
15147 lt_prog_compiler_static_CXX=
15148 ;;
15149 interix[3-9]*)
15150 # Interix 3.x gcc -fpic/-fPIC options generate broken code.
15151 # Instead, we relocate shared libraries at runtime.
15152 ;;
15153 sysv4*MP*)
15154 if test -d /usr/nec; then
15155 lt_prog_compiler_pic_CXX=-Kconform_pic
15156 fi
15157 ;;
15158 hpux*)
15159 # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
15160 # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag
15161 # sets the default TLS model and affects inlining.
15162 case $host_cpu in
15163 hppa*64*)
15164 ;;
15165 *)
15166 lt_prog_compiler_pic_CXX='-fPIC'
15167 ;;
15168 esac
15169 ;;
15170 *qnx* | *nto*)
15171 # QNX uses GNU C++, but need to define -shared option too, otherwise
15172 # it will coredump.
15173 lt_prog_compiler_pic_CXX='-fPIC -shared'
15174 ;;
15175 *)
15176 lt_prog_compiler_pic_CXX='-fPIC'
15177 ;;
15178 esac
15179 else
15180 case $host_os in
15181 aix[4-9]*)
15182 # All AIX code is PIC.
15183 if test ia64 = "$host_cpu"; then
15184 # AIX 5 now supports IA64 processor
15185 lt_prog_compiler_static_CXX='-Bstatic'
15186 else
15187 lt_prog_compiler_static_CXX='-bnso -bI:/lib/syscalls.exp'
15188 fi
15189 ;;
15190 chorus*)
15191 case $cc_basename in
15192 cxch68*)
15193 # Green Hills C++ Compiler
15194 # _LT_TAGVAR(lt_prog_compiler_static, CXX)="--no_auto_instantiation -u __main -u __premain -u _abort -r $COOL_DIR/lib/libOrb.a $MVME_DIR/lib/CC/libC.a $MVME_DIR/lib/classix/libcx.s.a"
15195 ;;
15196 esac
15197 ;;
15198 mingw* | cygwin* | os2* | pw32* | cegcc*)
15199 # This hack is so that the source file can tell whether it is being
15200 # built for inclusion in a dll (and should export symbols for example).
15201 lt_prog_compiler_pic_CXX='-DDLL_EXPORT'
15202 ;;
15203 dgux*)
15204 case $cc_basename in
15205 ec++*)
15206 lt_prog_compiler_pic_CXX='-KPIC'
15207 ;;
15208 ghcx*)
15209 # Green Hills C++ Compiler
15210 lt_prog_compiler_pic_CXX='-pic'
15211 ;;
15212 *)
15213 ;;
15214 esac
15215 ;;
15216 freebsd* | dragonfly*)
15217 # FreeBSD uses GNU C++
15218 ;;
15219 hpux9* | hpux10* | hpux11*)
15220 case $cc_basename in
15221 CC*)
15222 lt_prog_compiler_wl_CXX='-Wl,'
15223 lt_prog_compiler_static_CXX='$wl-a ${wl}archive'
15224 if test ia64 != "$host_cpu"; then
15225 lt_prog_compiler_pic_CXX='+Z'
15226 fi
15227 ;;
15228 aCC*)
15229 lt_prog_compiler_wl_CXX='-Wl,'
15230 lt_prog_compiler_static_CXX='$wl-a ${wl}archive'
15231 case $host_cpu in
15232 hppa*64*|ia64*)
15233 # +Z the default
15234 ;;
15235 *)
15236 lt_prog_compiler_pic_CXX='+Z'
15237 ;;
15238 esac
15239 ;;
15240 *)
15241 ;;
15242 esac
15243 ;;
15244 interix*)
15245 # This is c89, which is MS Visual C++ (no shared libs)
15246 # Anyone wants to do a port?
15247 ;;
15248 irix5* | irix6* | nonstopux*)
15249 case $cc_basename in
15250 CC*)
15251 lt_prog_compiler_wl_CXX='-Wl,'
15252 lt_prog_compiler_static_CXX='-non_shared'
15253 # CC pic flag -KPIC is the default.
15254 ;;
15255 *)
15256 ;;
15257 esac
15258 ;;
15259 linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
15260 case $cc_basename in
15261 KCC*)
15262 # KAI C++ Compiler
15263 lt_prog_compiler_wl_CXX='--backend -Wl,'
15264 lt_prog_compiler_pic_CXX='-fPIC'
15265 ;;
15266 ecpc* )
15267 # old Intel C++ for x86_64, which still supported -KPIC.
15268 lt_prog_compiler_wl_CXX='-Wl,'
15269 lt_prog_compiler_pic_CXX='-KPIC'
15270 lt_prog_compiler_static_CXX='-static'
15271 ;;
15272 icpc* )
15273 # Intel C++, used to be incompatible with GCC.
15274 # ICC 10 doesn't accept -KPIC any more.
15275 lt_prog_compiler_wl_CXX='-Wl,'
15276 lt_prog_compiler_pic_CXX='-fPIC'
15277 lt_prog_compiler_static_CXX='-static'
15278 ;;
15279 pgCC* | pgcpp*)
15280 # Portland Group C++ compiler
15281 lt_prog_compiler_wl_CXX='-Wl,'
15282 lt_prog_compiler_pic_CXX='-fpic'
15283 lt_prog_compiler_static_CXX='-Bstatic'
15284 ;;
15285 cxx*)
15286 # Compaq C++
15287 # Make sure the PIC flag is empty. It appears that all Alpha
15288 # Linux and Compaq Tru64 Unix objects are PIC.
15289 lt_prog_compiler_pic_CXX=
15290 lt_prog_compiler_static_CXX='-non_shared'
15291 ;;
15292 xlc* | xlC* | bgxl[cC]* | mpixl[cC]*)
15293 # IBM XL 8.0, 9.0 on PPC and BlueGene
15294 lt_prog_compiler_wl_CXX='-Wl,'
15295 lt_prog_compiler_pic_CXX='-qpic'
15296 lt_prog_compiler_static_CXX='-qstaticlink'
15297 ;;
15298 *)
15299 case `$CC -V 2>&1 | sed 5q` in
15300 *Sun\ C*)
15301 # Sun C++ 5.9
15302 lt_prog_compiler_pic_CXX='-KPIC'
15303 lt_prog_compiler_static_CXX='-Bstatic'
15304 lt_prog_compiler_wl_CXX='-Qoption ld '
15305 ;;
15306 esac
15307 ;;
15308 esac
15309 ;;
15310 lynxos*)
15311 ;;
15312 m88k*)
15313 ;;
15314 mvs*)
15315 case $cc_basename in
15316 cxx*)
15317 lt_prog_compiler_pic_CXX='-W c,exportall'
15318 ;;
15319 *)
15320 ;;
15321 esac
15322 ;;
15323 netbsd* | netbsdelf*-gnu)
15324 ;;
15325 *qnx* | *nto*)
15326 # QNX uses GNU C++, but need to define -shared option too, otherwise
15327 # it will coredump.
15328 lt_prog_compiler_pic_CXX='-fPIC -shared'
15329 ;;
15330 osf3* | osf4* | osf5*)
15331 case $cc_basename in
15332 KCC*)
15333 lt_prog_compiler_wl_CXX='--backend -Wl,'
15334 ;;
15335 RCC*)
15336 # Rational C++ 2.4.1
15337 lt_prog_compiler_pic_CXX='-pic'
15338 ;;
15339 cxx*)
15340 # Digital/Compaq C++
15341 lt_prog_compiler_wl_CXX='-Wl,'
15342 # Make sure the PIC flag is empty. It appears that all Alpha
15343 # Linux and Compaq Tru64 Unix objects are PIC.
15344 lt_prog_compiler_pic_CXX=
15345 lt_prog_compiler_static_CXX='-non_shared'
15346 ;;
15347 *)
15348 ;;
15349 esac
15350 ;;
15351 psos*)
15352 ;;
15353 solaris*)
15354 case $cc_basename in
15355 CC* | sunCC*)
15356 # Sun C++ 4.2, 5.x and Centerline C++
15357 lt_prog_compiler_pic_CXX='-KPIC'
15358 lt_prog_compiler_static_CXX='-Bstatic'
15359 lt_prog_compiler_wl_CXX='-Qoption ld '
15360 ;;
15361 gcx*)
15362 # Green Hills C++ Compiler
15363 lt_prog_compiler_pic_CXX='-PIC'
15364 ;;
15365 *)
15366 ;;
15367 esac
15368 ;;
15369 sunos4*)
15370 case $cc_basename in
15371 CC*)
15372 # Sun C++ 4.x
15373 lt_prog_compiler_pic_CXX='-pic'
15374 lt_prog_compiler_static_CXX='-Bstatic'
15375 ;;
15376 lcc*)
15377 # Lucid
15378 lt_prog_compiler_pic_CXX='-pic'
15379 ;;
15380 *)
15381 ;;
15382 esac
15383 ;;
15384 sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
15385 case $cc_basename in
15386 CC*)
15387 lt_prog_compiler_wl_CXX='-Wl,'
15388 lt_prog_compiler_pic_CXX='-KPIC'
15389 lt_prog_compiler_static_CXX='-Bstatic'
15390 ;;
15391 esac
15392 ;;
15393 tandem*)
15394 case $cc_basename in
15395 NCC*)
15396 # NonStop-UX NCC 3.20
15397 lt_prog_compiler_pic_CXX='-KPIC'
15398 ;;
15399 *)
15400 ;;
15401 esac
15402 ;;
15403 vxworks*)
15404 ;;
15405 *)
15406 lt_prog_compiler_can_build_shared_CXX=no
15407 ;;
15408 esac
15409 fi
15410
15411 case $host_os in
15412 # For platforms that do not support PIC, -DPIC is meaningless:
15413 *djgpp*)
15414 lt_prog_compiler_pic_CXX=
15415 ;;
15416 *)
15417 lt_prog_compiler_pic_CXX="$lt_prog_compiler_pic_CXX -DPIC"
15418 ;;
15419 esac
15420
15421 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&5
15422 $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
15423 if ${lt_cv_prog_compiler_pic_CXX+:} false; then :
15424 $as_echo_n "(cached) " >&6
15425 else
15426 lt_cv_prog_compiler_pic_CXX=$lt_prog_compiler_pic_CXX
15427 fi
15428 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic_CXX" >&5
15429 $as_echo "$lt_cv_prog_compiler_pic_CXX" >&6; }
15430 lt_prog_compiler_pic_CXX=$lt_cv_prog_compiler_pic_CXX
15431
15432 #
15433 # Check to make sure the PIC flag actually works.
15434 #
15435 if test -n "$lt_prog_compiler_pic_CXX"; then
15436 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler PIC flag $lt_prog_compiler_pic_CXX works" >&5
15437 $as_echo_n "checking if $compiler PIC flag $lt_prog_compiler_pic_CXX works... " >&6; }
15438 if ${lt_cv_prog_compiler_pic_works_CXX+:} false; then :
15439 $as_echo_n "(cached) " >&6
15440 else
15441 lt_cv_prog_compiler_pic_works_CXX=no
15442 ac_outfile=conftest.$ac_objext
15443 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
15444 lt_compiler_flag="$lt_prog_compiler_pic_CXX -DPIC" ## exclude from sc_useless_quotes_in_assignment
15445 # Insert the option either (1) after the last *FLAGS variable, or
15446 # (2) before a word containing "conftest.", or (3) at the end.
15447 # Note that $ac_compile itself does not contain backslashes and begins
15448 # with a dollar sign (not a hyphen), so the echo should work correctly.
15449 # The option is referenced via a variable to avoid confusing sed.
15450 lt_compile=`echo "$ac_compile" | $SED \
15451 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
15452 -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
15453 -e 's:$: $lt_compiler_flag:'`
15454 (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5)
15455 (eval "$lt_compile" 2>conftest.err)
15456 ac_status=$?
15457 cat conftest.err >&5
15458 echo "$as_me:$LINENO: \$? = $ac_status" >&5
15459 if (exit $ac_status) && test -s "$ac_outfile"; then
15460 # The compiler can only warn and ignore the option if not recognized
15461 # So say no if there are warnings other than the usual output.
15462 $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp
15463 $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
15464 if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
15465 lt_cv_prog_compiler_pic_works_CXX=yes
15466 fi
15467 fi
15468 $RM conftest*
15469
15470 fi
15471 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic_works_CXX" >&5
15472 $as_echo "$lt_cv_prog_compiler_pic_works_CXX" >&6; }
15473
15474 if test yes = "$lt_cv_prog_compiler_pic_works_CXX"; then
15475 case $lt_prog_compiler_pic_CXX in
15476 "" | " "*) ;;
15477 *) lt_prog_compiler_pic_CXX=" $lt_prog_compiler_pic_CXX" ;;
15478 esac
15479 else
15480 lt_prog_compiler_pic_CXX=
15481 lt_prog_compiler_can_build_shared_CXX=no
15482 fi
15483
15484 fi
15485
15486
15487
15488
15489
15490 #
15491 # Check to make sure the static flag actually works.
15492 #
15493 wl=$lt_prog_compiler_wl_CXX eval lt_tmp_static_flag=\"$lt_prog_compiler_static_CXX\"
15494 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler static flag $lt_tmp_static_flag works" >&5
15495 $as_echo_n "checking if $compiler static flag $lt_tmp_static_flag works... " >&6; }
15496 if ${lt_cv_prog_compiler_static_works_CXX+:} false; then :
15497 $as_echo_n "(cached) " >&6
15498 else
15499 lt_cv_prog_compiler_static_works_CXX=no
15500 save_LDFLAGS=$LDFLAGS
15501 LDFLAGS="$LDFLAGS $lt_tmp_static_flag"
15502 echo "$lt_simple_link_test_code" > conftest.$ac_ext
15503 if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
15504 # The linker can only warn and ignore the option if not recognized
15505 # So say no if there are warnings
15506 if test -s conftest.err; then
15507 # Append any errors to the config.log.
15508 cat conftest.err 1>&5
15509 $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp
15510 $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
15511 if diff conftest.exp conftest.er2 >/dev/null; then
15512 lt_cv_prog_compiler_static_works_CXX=yes
15513 fi
15514 else
15515 lt_cv_prog_compiler_static_works_CXX=yes
15516 fi
15517 fi
15518 $RM -r conftest*
15519 LDFLAGS=$save_LDFLAGS
15520
15521 fi
15522 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_static_works_CXX" >&5
15523 $as_echo "$lt_cv_prog_compiler_static_works_CXX" >&6; }
15524
15525 if test yes = "$lt_cv_prog_compiler_static_works_CXX"; then
15526 :
15527 else
15528 lt_prog_compiler_static_CXX=
15529 fi
15530
15531
15532
15533
15534 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5
15535 $as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; }
15536 if ${lt_cv_prog_compiler_c_o_CXX+:} false; then :
15537 $as_echo_n "(cached) " >&6
15538 else
15539 lt_cv_prog_compiler_c_o_CXX=no
15540 $RM -r conftest 2>/dev/null
15541 mkdir conftest
15542 cd conftest
15543 mkdir out
15544 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
15545
15546 lt_compiler_flag="-o out/conftest2.$ac_objext"
15547 # Insert the option either (1) after the last *FLAGS variable, or
15548 # (2) before a word containing "conftest.", or (3) at the end.
15549 # Note that $ac_compile itself does not contain backslashes and begins
15550 # with a dollar sign (not a hyphen), so the echo should work correctly.
15551 lt_compile=`echo "$ac_compile" | $SED \
15552 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
15553 -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
15554 -e 's:$: $lt_compiler_flag:'`
15555 (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5)
15556 (eval "$lt_compile" 2>out/conftest.err)
15557 ac_status=$?
15558 cat out/conftest.err >&5
15559 echo "$as_me:$LINENO: \$? = $ac_status" >&5
15560 if (exit $ac_status) && test -s out/conftest2.$ac_objext
15561 then
15562 # The compiler can only warn and ignore the option if not recognized
15563 # So say no if there are warnings
15564 $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp
15565 $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
15566 if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
15567 lt_cv_prog_compiler_c_o_CXX=yes
15568 fi
15569 fi
15570 chmod u+w . 2>&5
15571 $RM conftest*
15572 # SGI C++ compiler will create directory out/ii_files/ for
15573 # template instantiation
15574 test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files
15575 $RM out/* && rmdir out
15576 cd ..
15577 $RM -r conftest
15578 $RM conftest*
15579
15580 fi
15581 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o_CXX" >&5
15582 $as_echo "$lt_cv_prog_compiler_c_o_CXX" >&6; }
15583
15584
15585
15586 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5
15587 $as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; }
15588 if ${lt_cv_prog_compiler_c_o_CXX+:} false; then :
15589 $as_echo_n "(cached) " >&6
15590 else
15591 lt_cv_prog_compiler_c_o_CXX=no
15592 $RM -r conftest 2>/dev/null
15593 mkdir conftest
15594 cd conftest
15595 mkdir out
15596 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
15597
15598 lt_compiler_flag="-o out/conftest2.$ac_objext"
15599 # Insert the option either (1) after the last *FLAGS variable, or
15600 # (2) before a word containing "conftest.", or (3) at the end.
15601 # Note that $ac_compile itself does not contain backslashes and begins
15602 # with a dollar sign (not a hyphen), so the echo should work correctly.
15603 lt_compile=`echo "$ac_compile" | $SED \
15604 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
15605 -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
15606 -e 's:$: $lt_compiler_flag:'`
15607 (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5)
15608 (eval "$lt_compile" 2>out/conftest.err)
15609 ac_status=$?
15610 cat out/conftest.err >&5
15611 echo "$as_me:$LINENO: \$? = $ac_status" >&5
15612 if (exit $ac_status) && test -s out/conftest2.$ac_objext
15613 then
15614 # The compiler can only warn and ignore the option if not recognized
15615 # So say no if there are warnings
15616 $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp
15617 $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
15618 if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
15619 lt_cv_prog_compiler_c_o_CXX=yes
15620 fi
15621 fi
15622 chmod u+w . 2>&5
15623 $RM conftest*
15624 # SGI C++ compiler will create directory out/ii_files/ for
15625 # template instantiation
15626 test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files
15627 $RM out/* && rmdir out
15628 cd ..
15629 $RM -r conftest
15630 $RM conftest*
15631
15632 fi
15633 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o_CXX" >&5
15634 $as_echo "$lt_cv_prog_compiler_c_o_CXX" >&6; }
15635
15636
15637
15638
15639 hard_links=nottested
15640 if test no = "$lt_cv_prog_compiler_c_o_CXX" && test no != "$need_locks"; then
15641 # do not overwrite the value of need_locks provided by the user
15642 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if we can lock with hard links" >&5
15643 $as_echo_n "checking if we can lock with hard links... " >&6; }
15644 hard_links=yes
15645 $RM conftest*
15646 ln conftest.a conftest.b 2>/dev/null && hard_links=no
15647 touch conftest.a
15648 ln conftest.a conftest.b 2>&5 || hard_links=no
15649 ln conftest.a conftest.b 2>/dev/null && hard_links=no
15650 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $hard_links" >&5
15651 $as_echo "$hard_links" >&6; }
15652 if test no = "$hard_links"; then
15653 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&5
15654 $as_echo "$as_me: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&2;}
15655 need_locks=warn
15656 fi
15657 else
15658 need_locks=no
15659 fi
15660
15661
15662
15663 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&5
15664 $as_echo_n "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; }
15665
15666 export_symbols_cmds_CXX='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
15667 exclude_expsyms_CXX='_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'
15668 case $host_os in
15669 aix[4-9]*)
15670 # If we're using GNU nm, then we don't want the "-C" option.
15671 # -C means demangle to GNU nm, but means don't demangle to AIX nm.
15672 # Without the "-l" option, or with the "-B" option, AIX nm treats
15673 # weak defined symbols like other global defined symbols, whereas
15674 # GNU nm marks them as "W".
15675 # While the 'weak' keyword is ignored in the Export File, we need
15676 # it in the Import File for the 'aix-soname' feature, so we have
15677 # to replace the "-B" option with "-P" for AIX nm.
15678 if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
15679 export_symbols_cmds_CXX='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && (substr(\$ 3,1,1) != ".")) { if (\$ 2 == "W") { print \$ 3 " weak" } else { print \$ 3 } } }'\'' | sort -u > $export_symbols'
15680 else
15681 export_symbols_cmds_CXX='`func_echo_all $NM | $SED -e '\''s/B\([^B]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && (substr(\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols'
15682 fi
15683 ;;
15684 pw32*)
15685 export_symbols_cmds_CXX=$ltdll_cmds
15686 ;;
15687 cygwin* | mingw* | cegcc*)
15688 case $cc_basename in
15689 cl*)
15690 exclude_expsyms_CXX='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*'
15691 ;;
15692 *)
15693 export_symbols_cmds_CXX='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[BCDGRS][ ]/s/.*[ ]\([^ ]*\)/\1 DATA/;s/^.*[ ]__nm__\([^ ]*\)[ ][^ ]*/\1 DATA/;/^I[ ]/d;/^[AITW][ ]/s/.* //'\'' | sort | uniq > $export_symbols'
15694 exclude_expsyms_CXX='[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname'
15695 ;;
15696 esac
15697 ;;
15698 linux* | k*bsd*-gnu | gnu*)
15699 link_all_deplibs_CXX=no
15700 ;;
15701 *)
15702 export_symbols_cmds_CXX='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
15703 ;;
15704 esac
15705
15706 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs_CXX" >&5
15707 $as_echo "$ld_shlibs_CXX" >&6; }
15708 test no = "$ld_shlibs_CXX" && can_build_shared=no
15709
15710 with_gnu_ld_CXX=$with_gnu_ld
15711
15712
15713
15714
15715
15716
15717 #
15718 # Do we need to explicitly link libc?
15719 #
15720 case "x$archive_cmds_need_lc_CXX" in
15721 x|xyes)
15722 # Assume -lc should be added
15723 archive_cmds_need_lc_CXX=yes
15724
15725 if test yes,yes = "$GCC,$enable_shared"; then
15726 case $archive_cmds_CXX in
15727 *'~'*)
15728 # FIXME: we may have to deal with multi-command sequences.
15729 ;;
15730 '$CC '*)
15731 # Test whether the compiler implicitly links with -lc since on some
15732 # systems, -lgcc has to come before -lc. If gcc already passes -lc
15733 # to ld, don't add -lc before -lgcc.
15734 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -lc should be explicitly linked in" >&5
15735 $as_echo_n "checking whether -lc should be explicitly linked in... " >&6; }
15736 if ${lt_cv_archive_cmds_need_lc_CXX+:} false; then :
15737 $as_echo_n "(cached) " >&6
15738 else
15739 $RM conftest*
15740 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
15741
15742 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
15743 (eval $ac_compile) 2>&5
15744 ac_status=$?
15745 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
15746 test $ac_status = 0; } 2>conftest.err; then
15747 soname=conftest
15748 lib=conftest
15749 libobjs=conftest.$ac_objext
15750 deplibs=
15751 wl=$lt_prog_compiler_wl_CXX
15752 pic_flag=$lt_prog_compiler_pic_CXX
15753 compiler_flags=-v
15754 linker_flags=-v
15755 verstring=
15756 output_objdir=.
15757 libname=conftest
15758 lt_save_allow_undefined_flag=$allow_undefined_flag_CXX
15759 allow_undefined_flag_CXX=
15760 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$archive_cmds_CXX 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1\""; } >&5
15761 (eval $archive_cmds_CXX 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1) 2>&5
15762 ac_status=$?
15763 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
15764 test $ac_status = 0; }
15765 then
15766 lt_cv_archive_cmds_need_lc_CXX=no
15767 else
15768 lt_cv_archive_cmds_need_lc_CXX=yes
15769 fi
15770 allow_undefined_flag_CXX=$lt_save_allow_undefined_flag
15771 else
15772 cat conftest.err 1>&5
15773 fi
15774 $RM conftest*
15775
15776 fi
15777 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_archive_cmds_need_lc_CXX" >&5
15778 $as_echo "$lt_cv_archive_cmds_need_lc_CXX" >&6; }
15779 archive_cmds_need_lc_CXX=$lt_cv_archive_cmds_need_lc_CXX
15780 ;;
15781 esac
15782 fi
15783 ;;
15784 esac
15785
15786
15787
15788
15789
15790
15791
15792
15793
15794
15795
15796
15797
15798
15799
15800
15801
15802
15803
15804
15805
15806
15807
15808
15809
15810
15811
15812
15813
15814
15815
15816
15817
15818
15819
15820
15821
15822
15823
15824
15825
15826
15827
15828
15829
15830
15831
15832
15833
15834
15835
15836
15837
15838
15839
15840
15841
15842
15843
15844
15845
15846
15847 { $as_echo "$as_me:${as_lineno-$LINENO}: checking dynamic linker characteristics" >&5
15848 $as_echo_n "checking dynamic linker characteristics... " >&6; }
15849
15850 library_names_spec=
15851 libname_spec='lib$name'
15852 soname_spec=
15853 shrext_cmds=.so
15854 postinstall_cmds=
15855 postuninstall_cmds=
15856 finish_cmds=
15857 finish_eval=
15858 shlibpath_var=
15859 shlibpath_overrides_runpath=unknown
15860 version_type=none
15861 dynamic_linker="$host_os ld.so"
15862 sys_lib_dlsearch_path_spec="/lib /usr/lib"
15863 need_lib_prefix=unknown
15864 hardcode_into_libs=no
15865
15866 # when you set need_version to no, make sure it does not cause -set_version
15867 # flags to be left without arguments
15868 need_version=unknown
15869
15870
15871
15872 case $host_os in
15873 aix3*)
15874 version_type=linux # correct to gnu/linux during the next big refactor
15875 library_names_spec='$libname$release$shared_ext$versuffix $libname.a'
15876 shlibpath_var=LIBPATH
15877
15878 # AIX 3 has no versioning support, so we append a major version to the name.
15879 soname_spec='$libname$release$shared_ext$major'
15880 ;;
15881
15882 aix[4-9]*)
15883 version_type=linux # correct to gnu/linux during the next big refactor
15884 need_lib_prefix=no
15885 need_version=no
15886 hardcode_into_libs=yes
15887 if test ia64 = "$host_cpu"; then
15888 # AIX 5 supports IA64
15889 library_names_spec='$libname$release$shared_ext$major $libname$release$shared_ext$versuffix $libname$shared_ext'
15890 shlibpath_var=LD_LIBRARY_PATH
15891 else
15892 # With GCC up to 2.95.x, collect2 would create an import file
15893 # for dependence libraries. The import file would start with
15894 # the line '#! .'. This would cause the generated library to
15895 # depend on '.', always an invalid library. This was fixed in
15896 # development snapshots of GCC prior to 3.0.
15897 case $host_os in
15898 aix4 | aix4.[01] | aix4.[01].*)
15899 if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
15900 echo ' yes '
15901 echo '#endif'; } | $CC -E - | $GREP yes > /dev/null; then
15902 :
15903 else
15904 can_build_shared=no
15905 fi
15906 ;;
15907 esac
15908 # Using Import Files as archive members, it is possible to support
15909 # filename-based versioning of shared library archives on AIX. While
15910 # this would work for both with and without runtime linking, it will
15911 # prevent static linking of such archives. So we do filename-based
15912 # shared library versioning with .so extension only, which is used
15913 # when both runtime linking and shared linking is enabled.
15914 # Unfortunately, runtime linking may impact performance, so we do
15915 # not want this to be the default eventually. Also, we use the
15916 # versioned .so libs for executables only if there is the -brtl
15917 # linker flag in LDFLAGS as well, or --with-aix-soname=svr4 only.
15918 # To allow for filename-based versioning support, we need to create
15919 # libNAME.so.V as an archive file, containing:
15920 # *) an Import File, referring to the versioned filename of the
15921 # archive as well as the shared archive member, telling the
15922 # bitwidth (32 or 64) of that shared object, and providing the
15923 # list of exported symbols of that shared object, eventually
15924 # decorated with the 'weak' keyword
15925 # *) the shared object with the F_LOADONLY flag set, to really avoid
15926 # it being seen by the linker.
15927 # At run time we better use the real file rather than another symlink,
15928 # but for link time we create the symlink libNAME.so -> libNAME.so.V
15929
15930 case $with_aix_soname,$aix_use_runtimelinking in
15931 # AIX (on Power*) has no versioning support, so currently we cannot hardcode correct
15932 # soname into executable. Probably we can add versioning support to
15933 # collect2, so additional links can be useful in future.
15934 aix,yes) # traditional libtool
15935 dynamic_linker='AIX unversionable lib.so'
15936 # If using run time linking (on AIX 4.2 or later) use lib<name>.so
15937 # instead of lib<name>.a to let people know that these are not
15938 # typical AIX shared libraries.
15939 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
15940 ;;
15941 aix,no) # traditional AIX only
15942 dynamic_linker='AIX lib.a(lib.so.V)'
15943 # We preserve .a as extension for shared libraries through AIX4.2
15944 # and later when we are not doing run time linking.
15945 library_names_spec='$libname$release.a $libname.a'
15946 soname_spec='$libname$release$shared_ext$major'
15947 ;;
15948 svr4,*) # full svr4 only
15949 dynamic_linker="AIX lib.so.V($shared_archive_member_spec.o)"
15950 library_names_spec='$libname$release$shared_ext$major $libname$shared_ext'
15951 # We do not specify a path in Import Files, so LIBPATH fires.
15952 shlibpath_overrides_runpath=yes
15953 ;;
15954 *,yes) # both, prefer svr4
15955 dynamic_linker="AIX lib.so.V($shared_archive_member_spec.o), lib.a(lib.so.V)"
15956 library_names_spec='$libname$release$shared_ext$major $libname$shared_ext'
15957 # unpreferred sharedlib libNAME.a needs extra handling
15958 postinstall_cmds='test -n "$linkname" || linkname="$realname"~func_stripname "" ".so" "$linkname"~$install_shared_prog "$dir/$func_stripname_result.$libext" "$destdir/$func_stripname_result.$libext"~test -z "$tstripme" || test -z "$striplib" || $striplib "$destdir/$func_stripname_result.$libext"'
15959 postuninstall_cmds='for n in $library_names $old_library; do :; done~func_stripname "" ".so" "$n"~test "$func_stripname_result" = "$n" || func_append rmfiles " $odir/$func_stripname_result.$libext"'
15960 # We do not specify a path in Import Files, so LIBPATH fires.
15961 shlibpath_overrides_runpath=yes
15962 ;;
15963 *,no) # both, prefer aix
15964 dynamic_linker="AIX lib.a(lib.so.V), lib.so.V($shared_archive_member_spec.o)"
15965 library_names_spec='$libname$release.a $libname.a'
15966 soname_spec='$libname$release$shared_ext$major'
15967 # unpreferred sharedlib libNAME.so.V and symlink libNAME.so need extra handling
15968 postinstall_cmds='test -z "$dlname" || $install_shared_prog $dir/$dlname $destdir/$dlname~test -z "$tstripme" || test -z "$striplib" || $striplib $destdir/$dlname~test -n "$linkname" || linkname=$realname~func_stripname "" ".a" "$linkname"~(cd "$destdir" && $LN_S -f $dlname $func_stripname_result.so)'
15969 postuninstall_cmds='test -z "$dlname" || func_append rmfiles " $odir/$dlname"~for n in $old_library $library_names; do :; done~func_stripname "" ".a" "$n"~func_append rmfiles " $odir/$func_stripname_result.so"'
15970 ;;
15971 esac
15972 shlibpath_var=LIBPATH
15973 fi
15974 ;;
15975
15976 amigaos*)
15977 case $host_cpu in
15978 powerpc)
15979 # Since July 2007 AmigaOS4 officially supports .so libraries.
15980 # When compiling the executable, add -use-dynld -Lsobjs: to the compileline.
15981 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
15982 ;;
15983 m68k)
15984 library_names_spec='$libname.ixlibrary $libname.a'
15985 # Create ${libname}_ixlibrary.a entries in /sys/libs.
15986 finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`func_echo_all "$lib" | $SED '\''s%^.*/\([^/]*\)\.ixlibrary$%\1%'\''`; $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done'
15987 ;;
15988 esac
15989 ;;
15990
15991 beos*)
15992 library_names_spec='$libname$shared_ext'
15993 dynamic_linker="$host_os ld.so"
15994 shlibpath_var=LIBRARY_PATH
15995 ;;
15996
15997 bsdi[45]*)
15998 version_type=linux # correct to gnu/linux during the next big refactor
15999 need_version=no
16000 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
16001 soname_spec='$libname$release$shared_ext$major'
16002 finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
16003 shlibpath_var=LD_LIBRARY_PATH
16004 sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
16005 sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
16006 # the default ld.so.conf also contains /usr/contrib/lib and
16007 # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
16008 # libtool to hard-code these into programs
16009 ;;
16010
16011 cygwin* | mingw* | pw32* | cegcc*)
16012 version_type=windows
16013 shrext_cmds=.dll
16014 need_version=no
16015 need_lib_prefix=no
16016
16017 case $GCC,$cc_basename in
16018 yes,*)
16019 # gcc
16020 library_names_spec='$libname.dll.a'
16021 # DLL is installed to $(libdir)/../bin by postinstall_cmds
16022 postinstall_cmds='base_file=`basename \$file`~
16023 dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~
16024 dldir=$destdir/`dirname \$dlpath`~
16025 test -d \$dldir || mkdir -p \$dldir~
16026 $install_prog $dir/$dlname \$dldir/$dlname~
16027 chmod a+x \$dldir/$dlname~
16028 if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
16029 eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
16030 fi'
16031 postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
16032 dlpath=$dir/\$dldll~
16033 $RM \$dlpath'
16034 shlibpath_overrides_runpath=yes
16035
16036 case $host_os in
16037 cygwin*)
16038 # Cygwin DLLs use 'cyg' prefix rather than 'lib'
16039 soname_spec='`echo $libname | sed -e 's/^lib/cyg/'``echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'
16040
16041 ;;
16042 mingw* | cegcc*)
16043 # MinGW DLLs use traditional 'lib' prefix
16044 soname_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'
16045 ;;
16046 pw32*)
16047 # pw32 DLLs use 'pw' prefix rather than 'lib'
16048 library_names_spec='`echo $libname | sed -e 's/^lib/pw/'``echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'
16049 ;;
16050 esac
16051 dynamic_linker='Win32 ld.exe'
16052 ;;
16053
16054 *,cl*)
16055 # Native MSVC
16056 libname_spec='$name'
16057 soname_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'
16058 library_names_spec='$libname.dll.lib'
16059
16060 case $build_os in
16061 mingw*)
16062 sys_lib_search_path_spec=
16063 lt_save_ifs=$IFS
16064 IFS=';'
16065 for lt_path in $LIB
16066 do
16067 IFS=$lt_save_ifs
16068 # Let DOS variable expansion print the short 8.3 style file name.
16069 lt_path=`cd "$lt_path" 2>/dev/null && cmd //C "for %i in (".") do @echo %~si"`
16070 sys_lib_search_path_spec="$sys_lib_search_path_spec $lt_path"
16071 done
16072 IFS=$lt_save_ifs
16073 # Convert to MSYS style.
16074 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | sed -e 's|\\\\|/|g' -e 's| \\([a-zA-Z]\\):| /\\1|g' -e 's|^ ||'`
16075 ;;
16076 cygwin*)
16077 # Convert to unix form, then to dos form, then back to unix form
16078 # but this time dos style (no spaces!) so that the unix form looks
16079 # like /cygdrive/c/PROGRA~1:/cygdr...
16080 sys_lib_search_path_spec=`cygpath --path --unix "$LIB"`
16081 sys_lib_search_path_spec=`cygpath --path --dos "$sys_lib_search_path_spec" 2>/dev/null`
16082 sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
16083 ;;
16084 *)
16085 sys_lib_search_path_spec=$LIB
16086 if $ECHO "$sys_lib_search_path_spec" | $GREP ';[c-zC-Z]:/' >/dev/null; then
16087 # It is most probably a Windows format PATH.
16088 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
16089 else
16090 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
16091 fi
16092 # FIXME: find the short name or the path components, as spaces are
16093 # common. (e.g. "Program Files" -> "PROGRA~1")
16094 ;;
16095 esac
16096
16097 # DLL is installed to $(libdir)/../bin by postinstall_cmds
16098 postinstall_cmds='base_file=`basename \$file`~
16099 dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~
16100 dldir=$destdir/`dirname \$dlpath`~
16101 test -d \$dldir || mkdir -p \$dldir~
16102 $install_prog $dir/$dlname \$dldir/$dlname'
16103 postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
16104 dlpath=$dir/\$dldll~
16105 $RM \$dlpath'
16106 shlibpath_overrides_runpath=yes
16107 dynamic_linker='Win32 link.exe'
16108 ;;
16109
16110 *)
16111 # Assume MSVC wrapper
16112 library_names_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext $libname.lib'
16113 dynamic_linker='Win32 ld.exe'
16114 ;;
16115 esac
16116 # FIXME: first we should search . and the directory the executable is in
16117 shlibpath_var=PATH
16118 ;;
16119
16120 darwin* | rhapsody*)
16121 dynamic_linker="$host_os dyld"
16122 version_type=darwin
16123 need_lib_prefix=no
16124 need_version=no
16125 library_names_spec='$libname$release$major$shared_ext $libname$shared_ext'
16126 soname_spec='$libname$release$major$shared_ext'
16127 shlibpath_overrides_runpath=yes
16128 shlibpath_var=DYLD_LIBRARY_PATH
16129 shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
16130
16131 sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'
16132 ;;
16133
16134 dgux*)
16135 version_type=linux # correct to gnu/linux during the next big refactor
16136 need_lib_prefix=no
16137 need_version=no
16138 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
16139 soname_spec='$libname$release$shared_ext$major'
16140 shlibpath_var=LD_LIBRARY_PATH
16141 ;;
16142
16143 freebsd* | dragonfly*)
16144 # DragonFly does not have aout. When/if they implement a new
16145 # versioning mechanism, adjust this.
16146 if test -x /usr/bin/objformat; then
16147 objformat=`/usr/bin/objformat`
16148 else
16149 case $host_os in
16150 freebsd[23].*) objformat=aout ;;
16151 *) objformat=elf ;;
16152 esac
16153 fi
16154 version_type=freebsd-$objformat
16155 case $version_type in
16156 freebsd-elf*)
16157 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
16158 soname_spec='$libname$release$shared_ext$major'
16159 need_version=no
16160 need_lib_prefix=no
16161 ;;
16162 freebsd-*)
16163 library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
16164 need_version=yes
16165 ;;
16166 esac
16167 shlibpath_var=LD_LIBRARY_PATH
16168 case $host_os in
16169 freebsd2.*)
16170 shlibpath_overrides_runpath=yes
16171 ;;
16172 freebsd3.[01]* | freebsdelf3.[01]*)
16173 shlibpath_overrides_runpath=yes
16174 hardcode_into_libs=yes
16175 ;;
16176 freebsd3.[2-9]* | freebsdelf3.[2-9]* | \
16177 freebsd4.[0-5] | freebsdelf4.[0-5] | freebsd4.1.1 | freebsdelf4.1.1)
16178 shlibpath_overrides_runpath=no
16179 hardcode_into_libs=yes
16180 ;;
16181 *) # from 4.6 on, and DragonFly
16182 shlibpath_overrides_runpath=yes
16183 hardcode_into_libs=yes
16184 ;;
16185 esac
16186 ;;
16187
16188 haiku*)
16189 version_type=linux # correct to gnu/linux during the next big refactor
16190 need_lib_prefix=no
16191 need_version=no
16192 dynamic_linker="$host_os runtime_loader"
16193 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
16194 soname_spec='$libname$release$shared_ext$major'
16195 shlibpath_var=LIBRARY_PATH
16196 shlibpath_overrides_runpath=no
16197 sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib'
16198 hardcode_into_libs=yes
16199 ;;
16200
16201 hpux9* | hpux10* | hpux11*)
16202 # Give a soname corresponding to the major version so that dld.sl refuses to
16203 # link against other versions.
16204 version_type=sunos
16205 need_lib_prefix=no
16206 need_version=no
16207 case $host_cpu in
16208 ia64*)
16209 shrext_cmds='.so'
16210 hardcode_into_libs=yes
16211 dynamic_linker="$host_os dld.so"
16212 shlibpath_var=LD_LIBRARY_PATH
16213 shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
16214 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
16215 soname_spec='$libname$release$shared_ext$major'
16216 if test 32 = "$HPUX_IA64_MODE"; then
16217 sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"
16218 sys_lib_dlsearch_path_spec=/usr/lib/hpux32
16219 else
16220 sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"
16221 sys_lib_dlsearch_path_spec=/usr/lib/hpux64
16222 fi
16223 ;;
16224 hppa*64*)
16225 shrext_cmds='.sl'
16226 hardcode_into_libs=yes
16227 dynamic_linker="$host_os dld.sl"
16228 shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH
16229 shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
16230 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
16231 soname_spec='$libname$release$shared_ext$major'
16232 sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64"
16233 sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
16234 ;;
16235 *)
16236 shrext_cmds='.sl'
16237 dynamic_linker="$host_os dld.sl"
16238 shlibpath_var=SHLIB_PATH
16239 shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
16240 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
16241 soname_spec='$libname$release$shared_ext$major'
16242 ;;
16243 esac
16244 # HP-UX runs *really* slowly unless shared libraries are mode 555, ...
16245 postinstall_cmds='chmod 555 $lib'
16246 # or fails outright, so override atomically:
16247 install_override_mode=555
16248 ;;
16249
16250 interix[3-9]*)
16251 version_type=linux # correct to gnu/linux during the next big refactor
16252 need_lib_prefix=no
16253 need_version=no
16254 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
16255 soname_spec='$libname$release$shared_ext$major'
16256 dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)'
16257 shlibpath_var=LD_LIBRARY_PATH
16258 shlibpath_overrides_runpath=no
16259 hardcode_into_libs=yes
16260 ;;
16261
16262 irix5* | irix6* | nonstopux*)
16263 case $host_os in
16264 nonstopux*) version_type=nonstopux ;;
16265 *)
16266 if test yes = "$lt_cv_prog_gnu_ld"; then
16267 version_type=linux # correct to gnu/linux during the next big refactor
16268 else
16269 version_type=irix
16270 fi ;;
16271 esac
16272 need_lib_prefix=no
16273 need_version=no
16274 soname_spec='$libname$release$shared_ext$major'
16275 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$release$shared_ext $libname$shared_ext'
16276 case $host_os in
16277 irix5* | nonstopux*)
16278 libsuff= shlibsuff=
16279 ;;
16280 *)
16281 case $LD in # libtool.m4 will add one of these switches to LD
16282 *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ")
16283 libsuff= shlibsuff= libmagic=32-bit;;
16284 *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ")
16285 libsuff=32 shlibsuff=N32 libmagic=N32;;
16286 *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ")
16287 libsuff=64 shlibsuff=64 libmagic=64-bit;;
16288 *) libsuff= shlibsuff= libmagic=never-match;;
16289 esac
16290 ;;
16291 esac
16292 shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
16293 shlibpath_overrides_runpath=no
16294 sys_lib_search_path_spec="/usr/lib$libsuff /lib$libsuff /usr/local/lib$libsuff"
16295 sys_lib_dlsearch_path_spec="/usr/lib$libsuff /lib$libsuff"
16296 hardcode_into_libs=yes
16297 ;;
16298
16299 # No shared lib support for Linux oldld, aout, or coff.
16300 linux*oldld* | linux*aout* | linux*coff*)
16301 dynamic_linker=no
16302 ;;
16303
16304 linux*android*)
16305 version_type=none # Android doesn't support versioned libraries.
16306 need_lib_prefix=no
16307 need_version=no
16308 library_names_spec='$libname$release$shared_ext'
16309 soname_spec='$libname$release$shared_ext'
16310 finish_cmds=
16311 shlibpath_var=LD_LIBRARY_PATH
16312 shlibpath_overrides_runpath=yes
16313
16314 # This implies no fast_install, which is unacceptable.
16315 # Some rework will be needed to allow for fast_install
16316 # before this can be enabled.
16317 hardcode_into_libs=yes
16318
16319 dynamic_linker='Android linker'
16320 # Don't embed -rpath directories since the linker doesn't support them.
16321 hardcode_libdir_flag_spec_CXX='-L$libdir'
16322 ;;
16323
16324 # This must be glibc/ELF.
16325 linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
16326 version_type=linux # correct to gnu/linux during the next big refactor
16327 need_lib_prefix=no
16328 need_version=no
16329 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
16330 soname_spec='$libname$release$shared_ext$major'
16331 finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
16332 shlibpath_var=LD_LIBRARY_PATH
16333 shlibpath_overrides_runpath=no
16334
16335 # Some binutils ld are patched to set DT_RUNPATH
16336 if ${lt_cv_shlibpath_overrides_runpath+:} false; then :
16337 $as_echo_n "(cached) " >&6
16338 else
16339 lt_cv_shlibpath_overrides_runpath=no
16340 save_LDFLAGS=$LDFLAGS
16341 save_libdir=$libdir
16342 eval "libdir=/foo; wl=\"$lt_prog_compiler_wl_CXX\"; \
16343 LDFLAGS=\"\$LDFLAGS $hardcode_libdir_flag_spec_CXX\""
16344 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
16345 /* end confdefs.h. */
16346
16347 int
16348 main ()
16349 {
16350
16351 ;
16352 return 0;
16353 }
16354 _ACEOF
16355 if ac_fn_cxx_try_link "$LINENO"; then :
16356 if ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null; then :
16357 lt_cv_shlibpath_overrides_runpath=yes
16358 fi
16359 fi
16360 rm -f core conftest.err conftest.$ac_objext \
16361 conftest$ac_exeext conftest.$ac_ext
16362 LDFLAGS=$save_LDFLAGS
16363 libdir=$save_libdir
16364
16365 fi
16366
16367 shlibpath_overrides_runpath=$lt_cv_shlibpath_overrides_runpath
16368
16369 # This implies no fast_install, which is unacceptable.
16370 # Some rework will be needed to allow for fast_install
16371 # before this can be enabled.
16372 hardcode_into_libs=yes
16373
16374 # Ideally, we could use ldconfig to report *all* directores which are
16375 # searched for libraries, however this is still not possible. Aside from not
16376 # being certain /sbin/ldconfig is available, command
16377 # 'ldconfig -N -X -v | grep ^/' on 64bit Fedora does not report /usr/lib64,
16378 # even though it is searched at run-time. Try to do the best guess by
16379 # appending ld.so.conf contents (and includes) to the search path.
16380 if test -f /etc/ld.so.conf; then
16381 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' ' '`
16382 sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
16383 fi
16384
16385 # We used to test for /lib/ld.so.1 and disable shared libraries on
16386 # powerpc, because MkLinux only supported shared libraries with the
16387 # GNU dynamic linker. Since this was broken with cross compilers,
16388 # most powerpc-linux boxes support dynamic linking these days and
16389 # people can always --disable-shared, the test was removed, and we
16390 # assume the GNU/Linux dynamic linker is in use.
16391 dynamic_linker='GNU/Linux ld.so'
16392 ;;
16393
16394 netbsdelf*-gnu)
16395 version_type=linux
16396 need_lib_prefix=no
16397 need_version=no
16398 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
16399 soname_spec='${libname}${release}${shared_ext}$major'
16400 shlibpath_var=LD_LIBRARY_PATH
16401 shlibpath_overrides_runpath=no
16402 hardcode_into_libs=yes
16403 dynamic_linker='NetBSD ld.elf_so'
16404 ;;
16405
16406 netbsd*)
16407 version_type=sunos
16408 need_lib_prefix=no
16409 need_version=no
16410 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
16411 library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
16412 finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
16413 dynamic_linker='NetBSD (a.out) ld.so'
16414 else
16415 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
16416 soname_spec='$libname$release$shared_ext$major'
16417 dynamic_linker='NetBSD ld.elf_so'
16418 fi
16419 shlibpath_var=LD_LIBRARY_PATH
16420 shlibpath_overrides_runpath=yes
16421 hardcode_into_libs=yes
16422 ;;
16423
16424 newsos6)
16425 version_type=linux # correct to gnu/linux during the next big refactor
16426 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
16427 shlibpath_var=LD_LIBRARY_PATH
16428 shlibpath_overrides_runpath=yes
16429 ;;
16430
16431 *nto* | *qnx*)
16432 version_type=qnx
16433 need_lib_prefix=no
16434 need_version=no
16435 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
16436 soname_spec='$libname$release$shared_ext$major'
16437 shlibpath_var=LD_LIBRARY_PATH
16438 shlibpath_overrides_runpath=no
16439 hardcode_into_libs=yes
16440 dynamic_linker='ldqnx.so'
16441 ;;
16442
16443 openbsd* | bitrig*)
16444 version_type=sunos
16445 sys_lib_dlsearch_path_spec=/usr/lib
16446 need_lib_prefix=no
16447 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then
16448 need_version=no
16449 else
16450 need_version=yes
16451 fi
16452 library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
16453 finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
16454 shlibpath_var=LD_LIBRARY_PATH
16455 shlibpath_overrides_runpath=yes
16456 ;;
16457
16458 os2*)
16459 libname_spec='$name'
16460 version_type=windows
16461 shrext_cmds=.dll
16462 need_version=no
16463 need_lib_prefix=no
16464 # OS/2 can only load a DLL with a base name of 8 characters or less.
16465 soname_spec='`test -n "$os2dllname" && libname="$os2dllname";
16466 v=$($ECHO $release$versuffix | tr -d .-);
16467 n=$($ECHO $libname | cut -b -$((8 - ${#v})) | tr . _);
16468 $ECHO $n$v`$shared_ext'
16469 library_names_spec='${libname}_dll.$libext'
16470 dynamic_linker='OS/2 ld.exe'
16471 shlibpath_var=BEGINLIBPATH
16472 sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
16473 sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
16474 postinstall_cmds='base_file=`basename \$file`~
16475 dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; $ECHO \$dlname'\''`~
16476 dldir=$destdir/`dirname \$dlpath`~
16477 test -d \$dldir || mkdir -p \$dldir~
16478 $install_prog $dir/$dlname \$dldir/$dlname~
16479 chmod a+x \$dldir/$dlname~
16480 if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
16481 eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
16482 fi'
16483 postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; $ECHO \$dlname'\''`~
16484 dlpath=$dir/\$dldll~
16485 $RM \$dlpath'
16486 ;;
16487
16488 osf3* | osf4* | osf5*)
16489 version_type=osf
16490 need_lib_prefix=no
16491 need_version=no
16492 soname_spec='$libname$release$shared_ext$major'
16493 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
16494 shlibpath_var=LD_LIBRARY_PATH
16495 sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
16496 sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
16497 ;;
16498
16499 rdos*)
16500 dynamic_linker=no
16501 ;;
16502
16503 solaris*)
16504 version_type=linux # correct to gnu/linux during the next big refactor
16505 need_lib_prefix=no
16506 need_version=no
16507 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
16508 soname_spec='$libname$release$shared_ext$major'
16509 shlibpath_var=LD_LIBRARY_PATH
16510 shlibpath_overrides_runpath=yes
16511 hardcode_into_libs=yes
16512 # ldd complains unless libraries are executable
16513 postinstall_cmds='chmod +x $lib'
16514 ;;
16515
16516 sunos4*)
16517 version_type=sunos
16518 library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
16519 finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
16520 shlibpath_var=LD_LIBRARY_PATH
16521 shlibpath_overrides_runpath=yes
16522 if test yes = "$with_gnu_ld"; then
16523 need_lib_prefix=no
16524 fi
16525 need_version=yes
16526 ;;
16527
16528 sysv4 | sysv4.3*)
16529 version_type=linux # correct to gnu/linux during the next big refactor
16530 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
16531 soname_spec='$libname$release$shared_ext$major'
16532 shlibpath_var=LD_LIBRARY_PATH
16533 case $host_vendor in
16534 sni)
16535 shlibpath_overrides_runpath=no
16536 need_lib_prefix=no
16537 runpath_var=LD_RUN_PATH
16538 ;;
16539 siemens)
16540 need_lib_prefix=no
16541 ;;
16542 motorola)
16543 need_lib_prefix=no
16544 need_version=no
16545 shlibpath_overrides_runpath=no
16546 sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
16547 ;;
16548 esac
16549 ;;
16550
16551 sysv4*MP*)
16552 if test -d /usr/nec; then
16553 version_type=linux # correct to gnu/linux during the next big refactor
16554 library_names_spec='$libname$shared_ext.$versuffix $libname$shared_ext.$major $libname$shared_ext'
16555 soname_spec='$libname$shared_ext.$major'
16556 shlibpath_var=LD_LIBRARY_PATH
16557 fi
16558 ;;
16559
16560 sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
16561 version_type=sco
16562 need_lib_prefix=no
16563 need_version=no
16564 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext $libname$shared_ext'
16565 soname_spec='$libname$release$shared_ext$major'
16566 shlibpath_var=LD_LIBRARY_PATH
16567 shlibpath_overrides_runpath=yes
16568 hardcode_into_libs=yes
16569 if test yes = "$with_gnu_ld"; then
16570 sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib'
16571 else
16572 sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'
16573 case $host_os in
16574 sco3.2v5*)
16575 sys_lib_search_path_spec="$sys_lib_search_path_spec /lib"
16576 ;;
16577 esac
16578 fi
16579 sys_lib_dlsearch_path_spec='/usr/lib'
16580 ;;
16581
16582 tpf*)
16583 # TPF is a cross-target only. Preferred cross-host = GNU/Linux.
16584 version_type=linux # correct to gnu/linux during the next big refactor
16585 need_lib_prefix=no
16586 need_version=no
16587 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
16588 shlibpath_var=LD_LIBRARY_PATH
16589 shlibpath_overrides_runpath=no
16590 hardcode_into_libs=yes
16591 ;;
16592
16593 uts4*)
16594 version_type=linux # correct to gnu/linux during the next big refactor
16595 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
16596 soname_spec='$libname$release$shared_ext$major'
16597 shlibpath_var=LD_LIBRARY_PATH
16598 ;;
16599
16600 *)
16601 dynamic_linker=no
16602 ;;
16603 esac
16604 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $dynamic_linker" >&5
16605 $as_echo "$dynamic_linker" >&6; }
16606 test no = "$dynamic_linker" && can_build_shared=no
16607
16608 variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
16609 if test yes = "$GCC"; then
16610 variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
16611 fi
16612
16613 if test set = "${lt_cv_sys_lib_search_path_spec+set}"; then
16614 sys_lib_search_path_spec=$lt_cv_sys_lib_search_path_spec
16615 fi
16616
16617 if test set = "${lt_cv_sys_lib_dlsearch_path_spec+set}"; then
16618 sys_lib_dlsearch_path_spec=$lt_cv_sys_lib_dlsearch_path_spec
16619 fi
16620
16621 # remember unaugmented sys_lib_dlsearch_path content for libtool script decls...
16622 configure_time_dlsearch_path=$sys_lib_dlsearch_path_spec
16623
16624 # ... but it needs LT_SYS_LIBRARY_PATH munging for other configure-time code
16625 func_munge_path_list sys_lib_dlsearch_path_spec "$LT_SYS_LIBRARY_PATH"
16626
16627 # to be used as default LT_SYS_LIBRARY_PATH value in generated libtool
16628 configure_time_lt_sys_library_path=$LT_SYS_LIBRARY_PATH
16629
16630
16631
16632
16633
16634
16635
16636
16637
16638
16639
16640
16641
16642
16643
16644
16645
16646
16647
16648
16649
16650
16651
16652
16653
16654
16655
16656
16657
16658
16659
16660
16661
16662
16663
16664
16665
16666
16667
16668
16669 { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to hardcode library paths into programs" >&5
16670 $as_echo_n "checking how to hardcode library paths into programs... " >&6; }
16671 hardcode_action_CXX=
16672 if test -n "$hardcode_libdir_flag_spec_CXX" ||
16673 test -n "$runpath_var_CXX" ||
16674 test yes = "$hardcode_automatic_CXX"; then
16675
16676 # We can hardcode non-existent directories.
16677 if test no != "$hardcode_direct_CXX" &&
16678 # If the only mechanism to avoid hardcoding is shlibpath_var, we
16679 # have to relink, otherwise we might link with an installed library
16680 # when we should be linking with a yet-to-be-installed one
16681 ## test no != "$_LT_TAGVAR(hardcode_shlibpath_var, CXX)" &&
16682 test no != "$hardcode_minus_L_CXX"; then
16683 # Linking always hardcodes the temporary library directory.
16684 hardcode_action_CXX=relink
16685 else
16686 # We can link without hardcoding, and we can hardcode nonexisting dirs.
16687 hardcode_action_CXX=immediate
16688 fi
16689 else
16690 # We cannot hardcode anything, or else we can only hardcode existing
16691 # directories.
16692 hardcode_action_CXX=unsupported
16693 fi
16694 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $hardcode_action_CXX" >&5
16695 $as_echo "$hardcode_action_CXX" >&6; }
16696
16697 if test relink = "$hardcode_action_CXX" ||
16698 test yes = "$inherit_rpath_CXX"; then
16699 # Fast installation is not supported
16700 enable_fast_install=no
16701 elif test yes = "$shlibpath_overrides_runpath" ||
16702 test no = "$enable_shared"; then
16703 # Fast installation is not necessary
16704 enable_fast_install=needless
16705 fi
16706
16707
16708
16709
16710
16711
16712
16713 fi # test -n "$compiler"
16714
16715 CC=$lt_save_CC
16716 CFLAGS=$lt_save_CFLAGS
16717 LDCXX=$LD
16718 LD=$lt_save_LD
16719 GCC=$lt_save_GCC
16720 with_gnu_ld=$lt_save_with_gnu_ld
16721 lt_cv_path_LDCXX=$lt_cv_path_LD
16722 lt_cv_path_LD=$lt_save_path_LD
16723 lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld
16724 lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld
16725 fi # test yes != "$_lt_caught_CXX_error"
16726
16727 ac_ext=c
16728 ac_cpp='$CPP $CPPFLAGS'
16729 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
16730 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
16731 ac_compiler_gnu=$ac_cv_c_compiler_gnu
16732
16733
16734
16735 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ln -s works" >&5
16736 $as_echo_n "checking whether ln -s works... " >&6; }
16737 LN_S=$as_ln_s
16738 if test "$LN_S" = "ln -s"; then
16739 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
16740 $as_echo "yes" >&6; }
16741 else
16742 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no, using $LN_S" >&5
16743 $as_echo "no, using $LN_S" >&6; }
16744 fi
16745
16746 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5
16747 $as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; }
16748 set x ${MAKE-make}
16749 ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'`
16750 if eval \${ac_cv_prog_make_${ac_make}_set+:} false; then :
16751 $as_echo_n "(cached) " >&6
16752 else
16753 cat >conftest.make <<\_ACEOF
16754 SHELL = /bin/sh
16755 all:
16756 @echo '@@@%%%=$(MAKE)=@@@%%%'
16757 _ACEOF
16758 # GNU make sometimes prints "make[1]: Entering ...", which would confuse us.
16759 case `${MAKE-make} -f conftest.make 2>/dev/null` in
16760 *@@@%%%=?*=@@@%%%*)
16761 eval ac_cv_prog_make_${ac_make}_set=yes;;
16762 *)
16763 eval ac_cv_prog_make_${ac_make}_set=no;;
16764 esac
16765 rm -f conftest.make
16766 fi
16767 if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then
16768 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
16769 $as_echo "yes" >&6; }
16770 SET_MAKE=
16771 else
16772 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
16773 $as_echo "no" >&6; }
16774 SET_MAKE="MAKE=${MAKE-make}"
16775 fi
16776
16777 for ac_prog in rpmbuild
16778 do
16779 # Extract the first word of "$ac_prog", so it can be a program name with args.
16780 set dummy $ac_prog; ac_word=$2
16781 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
16782 $as_echo_n "checking for $ac_word... " >&6; }
16783 if ${ac_cv_prog_RPMBUILD+:} false; then :
16784 $as_echo_n "(cached) " >&6
16785 else
16786 if test -n "$RPMBUILD"; then
16787 ac_cv_prog_RPMBUILD="$RPMBUILD" # Let the user override the test.
16788 else
16789 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
16790 for as_dir in $PATH
16791 do
16792 IFS=$as_save_IFS
16793 test -z "$as_dir" && as_dir=.
16794 for ac_exec_ext in '' $ac_executable_extensions; do
16795 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
16796 ac_cv_prog_RPMBUILD="$ac_prog"
16797 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
16798 break 2
16799 fi
16800 done
16801 done
16802 IFS=$as_save_IFS
16803
16804 fi
16805 fi
16806 RPMBUILD=$ac_cv_prog_RPMBUILD
16807 if test -n "$RPMBUILD"; then
16808 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $RPMBUILD" >&5
16809 $as_echo "$RPMBUILD" >&6; }
16810 else
16811 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
16812 $as_echo "no" >&6; }
16813 fi
16814
16815
16816 test -n "$RPMBUILD" && break
16817 done
16818 test -n "$RPMBUILD" || RPMBUILD="rpm"
16819
16820
16821 ac_config_headers="$ac_config_headers config.h"
16822
16823
16824
16825 # Check whether --with-xmms was given.
16826 if test "${with_xmms+set}" = set; then :
16827 withval=$with_xmms; WITHXMMS=$withval
16828 else
16829 WITHXMMS=no
16830 fi
16831
16832
16833
16834 # Check whether --with-drm was given.
16835 if test "${with_drm+set}" = set; then :
16836 withval=$with_drm; WITHDRM=$withval
16837 else
16838 WITHDRM=no
16839 fi
16840
16841
16842
16843 # Check whether --with-mpeg4ip was given.
16844 if test "${with_mpeg4ip+set}" = set; then :
16845 withval=$with_mpeg4ip; WITHMPEG4IP=$withval
16846 else
16847 WITHMPEG4IP=no
16848 fi
16849
16850
16851 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5
16852 $as_echo_n "checking for ANSI C header files... " >&6; }
16853 if ${ac_cv_header_stdc+:} false; then :
16854 $as_echo_n "(cached) " >&6
16855 else
16856 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
16857 /* end confdefs.h. */
16858 #include <stdlib.h>
16859 #include <stdarg.h>
16860 #include <string.h>
16861 #include <float.h>
16862
16863 int
16864 main ()
16865 {
16866
16867 ;
16868 return 0;
16869 }
16870 _ACEOF
16871 if ac_fn_c_try_compile "$LINENO"; then :
16872 ac_cv_header_stdc=yes
16873 else
16874 ac_cv_header_stdc=no
16875 fi
16876 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
16877
16878 if test $ac_cv_header_stdc = yes; then
16879 # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
16880 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
16881 /* end confdefs.h. */
16882 #include <string.h>
16883
16884 _ACEOF
16885 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
16886 $EGREP "memchr" >/dev/null 2>&1; then :
16887
16888 else
16889 ac_cv_header_stdc=no
16890 fi
16891 rm -f conftest*
16892
16893 fi
16894
16895 if test $ac_cv_header_stdc = yes; then
16896 # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
16897 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
16898 /* end confdefs.h. */
16899 #include <stdlib.h>
16900
16901 _ACEOF
16902 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
16903 $EGREP "free" >/dev/null 2>&1; then :
16904
16905 else
16906 ac_cv_header_stdc=no
16907 fi
16908 rm -f conftest*
16909
16910 fi
16911
16912 if test $ac_cv_header_stdc = yes; then
16913 # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi.
16914 if test "$cross_compiling" = yes; then :
16915 :
16916 else
16917 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
16918 /* end confdefs.h. */
16919 #include <ctype.h>
16920 #include <stdlib.h>
16921 #if ((' ' & 0x0FF) == 0x020)
16922 # define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
16923 # define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c))
16924 #else
16925 # define ISLOWER(c) \
16926 (('a' <= (c) && (c) <= 'i') \
16927 || ('j' <= (c) && (c) <= 'r') \
16928 || ('s' <= (c) && (c) <= 'z'))
16929 # define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c))
16930 #endif
16931
16932 #define XOR(e, f) (((e) && !(f)) || (!(e) && (f)))
16933 int
16934 main ()
16935 {
16936 int i;
16937 for (i = 0; i < 256; i++)
16938 if (XOR (islower (i), ISLOWER (i))
16939 || toupper (i) != TOUPPER (i))
16940 return 2;
16941 return 0;
16942 }
16943 _ACEOF
16944 if ac_fn_c_try_run "$LINENO"; then :
16945
16946 else
16947 ac_cv_header_stdc=no
16948 fi
16949 rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
16950 conftest.$ac_objext conftest.beam conftest.$ac_ext
16951 fi
16952
16953 fi
16954 fi
16955 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5
16956 $as_echo "$ac_cv_header_stdc" >&6; }
16957 if test $ac_cv_header_stdc = yes; then
16958
16959 $as_echo "#define STDC_HEADERS 1" >>confdefs.h
16960
16961 fi
16962
16963 for ac_header in stdint.h inttypes.h
16964 do :
16965 as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
16966 ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
16967 if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
16968 cat >>confdefs.h <<_ACEOF
16969 #define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
16970 _ACEOF
16971
16972 fi
16973
16974 done
16975
16976 for ac_header in mathf.h
16977 do :
16978 ac_fn_c_check_header_mongrel "$LINENO" "mathf.h" "ac_cv_header_mathf_h" "$ac_includes_default"
16979 if test "x$ac_cv_header_mathf_h" = xyes; then :
16980 cat >>confdefs.h <<_ACEOF
16981 #define HAVE_MATHF_H 1
16982 _ACEOF
16983
16984 fi
16985
16986 done
16987
16988 for ac_header in float.h
16989 do :
16990 ac_fn_c_check_header_mongrel "$LINENO" "float.h" "ac_cv_header_float_h" "$ac_includes_default"
16991 if test "x$ac_cv_header_float_h" = xyes; then :
16992 cat >>confdefs.h <<_ACEOF
16993 #define HAVE_FLOAT_H 1
16994 _ACEOF
16995
16996 fi
16997
16998 done
16999
17000 for ac_func in strchr memcpy
17001 do :
17002 as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
17003 ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
17004 if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
17005 cat >>confdefs.h <<_ACEOF
17006 #define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
17007 _ACEOF
17008
17009 fi
17010 done
17011
17012 for ac_header in sys/time.h
17013 do :
17014 ac_fn_c_check_header_mongrel "$LINENO" "sys/time.h" "ac_cv_header_sys_time_h" "$ac_includes_default"
17015 if test "x$ac_cv_header_sys_time_h" = xyes; then :
17016 cat >>confdefs.h <<_ACEOF
17017 #define HAVE_SYS_TIME_H 1
17018 _ACEOF
17019
17020 fi
17021
17022 done
17023
17024 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether time.h and sys/time.h may both be included" >&5
17025 $as_echo_n "checking whether time.h and sys/time.h may both be included... " >&6; }
17026 if ${ac_cv_header_time+:} false; then :
17027 $as_echo_n "(cached) " >&6
17028 else
17029 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
17030 /* end confdefs.h. */
17031 #include <sys/types.h>
17032 #include <sys/time.h>
17033 #include <time.h>
17034
17035 int
17036 main ()
17037 {
17038 if ((struct tm *) 0)
17039 return 0;
17040 ;
17041 return 0;
17042 }
17043 _ACEOF
17044 if ac_fn_c_try_compile "$LINENO"; then :
17045 ac_cv_header_time=yes
17046 else
17047 ac_cv_header_time=no
17048 fi
17049 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
17050 fi
17051 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_time" >&5
17052 $as_echo "$ac_cv_header_time" >&6; }
17053 if test $ac_cv_header_time = yes; then
17054
17055 $as_echo "#define TIME_WITH_SYS_TIME 1" >>confdefs.h
17056
17057 fi
17058
17059
17060 for ac_header in errno.h sys/stat.h sys/types.h limits.h
17061 do :
17062 as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
17063 ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
17064 if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
17065 cat >>confdefs.h <<_ACEOF
17066 #define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
17067 _ACEOF
17068
17069 fi
17070
17071 done
17072
17073 for ac_header in sysfs/libsysfs.h
17074 do :
17075 ac_fn_c_check_header_mongrel "$LINENO" "sysfs/libsysfs.h" "ac_cv_header_sysfs_libsysfs_h" "$ac_includes_default"
17076 if test "x$ac_cv_header_sysfs_libsysfs_h" = xyes; then :
17077 cat >>confdefs.h <<_ACEOF
17078 #define HAVE_SYSFS_LIBSYSFS_H 1
17079 _ACEOF
17080
17081 fi
17082
17083 done
17084
17085 for ac_header in IOKit/IOKitLib.h
17086 do :
17087 ac_fn_c_check_header_mongrel "$LINENO" "IOKit/IOKitLib.h" "ac_cv_header_IOKit_IOKitLib_h" "$ac_includes_default"
17088 if test "x$ac_cv_header_IOKit_IOKitLib_h" = xyes; then :
17089 cat >>confdefs.h <<_ACEOF
17090 #define HAVE_IOKIT_IOKITLIB_H 1
17091 _ACEOF
17092 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for main in -lIOKit" >&5
17093 $as_echo_n "checking for main in -lIOKit... " >&6; }
17094 if ${ac_cv_lib_IOKit_main+:} false; then :
17095 $as_echo_n "(cached) " >&6
17096 else
17097 ac_check_lib_save_LIBS=$LIBS
17098 LIBS="-lIOKit $LIBS"
17099 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
17100 /* end confdefs.h. */
17101
17102
17103 int
17104 main ()
17105 {
17106 return main ();
17107 ;
17108 return 0;
17109 }
17110 _ACEOF
17111 if ac_fn_c_try_link "$LINENO"; then :
17112 ac_cv_lib_IOKit_main=yes
17113 else
17114 ac_cv_lib_IOKit_main=no
17115 fi
17116 rm -f core conftest.err conftest.$ac_objext \
17117 conftest$ac_exeext conftest.$ac_ext
17118 LIBS=$ac_check_lib_save_LIBS
17119 fi
17120 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_IOKit_main" >&5
17121 $as_echo "$ac_cv_lib_IOKit_main" >&6; }
17122 if test "x$ac_cv_lib_IOKit_main" = xyes; then :
17123
17124 $as_echo "#define HAVE_IOKIT_IOKITLIB_H 1" >>confdefs.h
17125
17126 MP4FF_LIBS="-lIOKit"
17127
17128 fi
17129
17130 fi
17131
17132 done
17133
17134 for ac_func in getpwuid
17135 do :
17136 ac_fn_c_check_func "$LINENO" "getpwuid" "ac_cv_func_getpwuid"
17137 if test "x$ac_cv_func_getpwuid" = xyes; then :
17138 cat >>confdefs.h <<_ACEOF
17139 #define HAVE_GETPWUID 1
17140 _ACEOF
17141
17142 fi
17143 done
17144
17145
17146 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for inline" >&5
17147 $as_echo_n "checking for inline... " >&6; }
17148 if ${ac_cv_c_inline+:} false; then :
17149 $as_echo_n "(cached) " >&6
17150 else
17151 ac_cv_c_inline=no
17152 for ac_kw in inline __inline__ __inline; do
17153 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
17154 /* end confdefs.h. */
17155 #ifndef __cplusplus
17156 typedef int foo_t;
17157 static $ac_kw foo_t static_foo () {return 0; }
17158 $ac_kw foo_t foo () {return 0; }
17159 #endif
17160
17161 _ACEOF
17162 if ac_fn_c_try_compile "$LINENO"; then :
17163 ac_cv_c_inline=$ac_kw
17164 fi
17165 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
17166 test "$ac_cv_c_inline" != no && break
17167 done
17168
17169 fi
17170 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_inline" >&5
17171 $as_echo "$ac_cv_c_inline" >&6; }
17172
17173 case $ac_cv_c_inline in
17174 inline | yes) ;;
17175 *)
17176 case $ac_cv_c_inline in
17177 no) ac_val=;;
17178 *) ac_val=$ac_cv_c_inline;;
17179 esac
17180 cat >>confdefs.h <<_ACEOF
17181 #ifndef __cplusplus
17182 #define inline $ac_val
17183 #endif
17184 _ACEOF
17185 ;;
17186 esac
17187
17188 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether byte ordering is bigendian" >&5
17189 $as_echo_n "checking whether byte ordering is bigendian... " >&6; }
17190 if ${ac_cv_c_bigendian+:} false; then :
17191 $as_echo_n "(cached) " >&6
17192 else
17193 ac_cv_c_bigendian=unknown
17194 # See if we're dealing with a universal compiler.
17195 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
17196 /* end confdefs.h. */
17197 #ifndef __APPLE_CC__
17198 not a universal capable compiler
17199 #endif
17200 typedef int dummy;
17201
17202 _ACEOF
17203 if ac_fn_c_try_compile "$LINENO"; then :
17204
17205 # Check for potential -arch flags. It is not universal unless
17206 # there are at least two -arch flags with different values.
17207 ac_arch=
17208 ac_prev=
17209 for ac_word in $CC $CFLAGS $CPPFLAGS $LDFLAGS; do
17210 if test -n "$ac_prev"; then
17211 case $ac_word in
17212 i?86 | x86_64 | ppc | ppc64)
17213 if test -z "$ac_arch" || test "$ac_arch" = "$ac_word"; then
17214 ac_arch=$ac_word
17215 else
17216 ac_cv_c_bigendian=universal
17217 break
17218 fi
17219 ;;
17220 esac
17221 ac_prev=
17222 elif test "x$ac_word" = "x-arch"; then
17223 ac_prev=arch
17224 fi
17225 done
17226 fi
17227 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
17228 if test $ac_cv_c_bigendian = unknown; then
17229 # See if sys/param.h defines the BYTE_ORDER macro.
17230 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
17231 /* end confdefs.h. */
17232 #include <sys/types.h>
17233 #include <sys/param.h>
17234
17235 int
17236 main ()
17237 {
17238 #if ! (defined BYTE_ORDER && defined BIG_ENDIAN \
17239 && defined LITTLE_ENDIAN && BYTE_ORDER && BIG_ENDIAN \
17240 && LITTLE_ENDIAN)
17241 bogus endian macros
17242 #endif
17243
17244 ;
17245 return 0;
17246 }
17247 _ACEOF
17248 if ac_fn_c_try_compile "$LINENO"; then :
17249 # It does; now see whether it defined to BIG_ENDIAN or not.
17250 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
17251 /* end confdefs.h. */
17252 #include <sys/types.h>
17253 #include <sys/param.h>
17254
17255 int
17256 main ()
17257 {
17258 #if BYTE_ORDER != BIG_ENDIAN
17259 not big endian
17260 #endif
17261
17262 ;
17263 return 0;
17264 }
17265 _ACEOF
17266 if ac_fn_c_try_compile "$LINENO"; then :
17267 ac_cv_c_bigendian=yes
17268 else
17269 ac_cv_c_bigendian=no
17270 fi
17271 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
17272 fi
17273 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
17274 fi
17275 if test $ac_cv_c_bigendian = unknown; then
17276 # See if <limits.h> defines _LITTLE_ENDIAN or _BIG_ENDIAN (e.g., Solaris).
17277 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
17278 /* end confdefs.h. */
17279 #include <limits.h>
17280
17281 int
17282 main ()
17283 {
17284 #if ! (defined _LITTLE_ENDIAN || defined _BIG_ENDIAN)
17285 bogus endian macros
17286 #endif
17287
17288 ;
17289 return 0;
17290 }
17291 _ACEOF
17292 if ac_fn_c_try_compile "$LINENO"; then :
17293 # It does; now see whether it defined to _BIG_ENDIAN or not.
17294 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
17295 /* end confdefs.h. */
17296 #include <limits.h>
17297
17298 int
17299 main ()
17300 {
17301 #ifndef _BIG_ENDIAN
17302 not big endian
17303 #endif
17304
17305 ;
17306 return 0;
17307 }
17308 _ACEOF
17309 if ac_fn_c_try_compile "$LINENO"; then :
17310 ac_cv_c_bigendian=yes
17311 else
17312 ac_cv_c_bigendian=no
17313 fi
17314 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
17315 fi
17316 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
17317 fi
17318 if test $ac_cv_c_bigendian = unknown; then
17319 # Compile a test program.
17320 if test "$cross_compiling" = yes; then :
17321 # Try to guess by grepping values from an object file.
17322 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
17323 /* end confdefs.h. */
17324 short int ascii_mm[] =
17325 { 0x4249, 0x4765, 0x6E44, 0x6961, 0x6E53, 0x7953, 0 };
17326 short int ascii_ii[] =
17327 { 0x694C, 0x5454, 0x656C, 0x6E45, 0x6944, 0x6E61, 0 };
17328 int use_ascii (int i) {
17329 return ascii_mm[i] + ascii_ii[i];
17330 }
17331 short int ebcdic_ii[] =
17332 { 0x89D3, 0xE3E3, 0x8593, 0x95C5, 0x89C4, 0x9581, 0 };
17333 short int ebcdic_mm[] =
17334 { 0xC2C9, 0xC785, 0x95C4, 0x8981, 0x95E2, 0xA8E2, 0 };
17335 int use_ebcdic (int i) {
17336 return ebcdic_mm[i] + ebcdic_ii[i];
17337 }
17338 extern int foo;
17339
17340 int
17341 main ()
17342 {
17343 return use_ascii (foo) == use_ebcdic (foo);
17344 ;
17345 return 0;
17346 }
17347 _ACEOF
17348 if ac_fn_c_try_compile "$LINENO"; then :
17349 if grep BIGenDianSyS conftest.$ac_objext >/dev/null; then
17350 ac_cv_c_bigendian=yes
17351 fi
17352 if grep LiTTleEnDian conftest.$ac_objext >/dev/null ; then
17353 if test "$ac_cv_c_bigendian" = unknown; then
17354 ac_cv_c_bigendian=no
17355 else
17356 # finding both strings is unlikely to happen, but who knows?
17357 ac_cv_c_bigendian=unknown
17358 fi
17359 fi
17360 fi
17361 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
17362 else
17363 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
17364 /* end confdefs.h. */
17365 $ac_includes_default
17366 int
17367 main ()
17368 {
17369
17370 /* Are we little or big endian? From Harbison&Steele. */
17371 union
17372 {
17373 long int l;
17374 char c[sizeof (long int)];
17375 } u;
17376 u.l = 1;
17377 return u.c[sizeof (long int) - 1] == 1;
17378
17379 ;
17380 return 0;
17381 }
17382 _ACEOF
17383 if ac_fn_c_try_run "$LINENO"; then :
17384 ac_cv_c_bigendian=no
17385 else
17386 ac_cv_c_bigendian=yes
17387 fi
17388 rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
17389 conftest.$ac_objext conftest.beam conftest.$ac_ext
17390 fi
17391
17392 fi
17393 fi
17394 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_bigendian" >&5
17395 $as_echo "$ac_cv_c_bigendian" >&6; }
17396 case $ac_cv_c_bigendian in #(
17397 yes)
17398 $as_echo "#define WORDS_BIGENDIAN 1" >>confdefs.h
17399 ;; #(
17400 no)
17401 ;; #(
17402 universal)
17403
17404 $as_echo "#define AC_APPLE_UNIVERSAL_BUILD 1" >>confdefs.h
17405
17406 ;; #(
17407 *)
17408 as_fn_error $? "unknown endianness
17409 presetting ac_cv_c_bigendian=no (or yes) will help" "$LINENO" 5 ;;
17410 esac
17411
17412
17413 ac_fn_c_check_type "$LINENO" "off_t" "ac_cv_type_off_t" "$ac_includes_default"
17414 if test "x$ac_cv_type_off_t" = xyes; then :
17415
17416 else
17417
17418 cat >>confdefs.h <<_ACEOF
17419 #define off_t long int
17420 _ACEOF
17421
17422 fi
17423
17424
17425
17426
17427 # AC_C99_FUNC_LRINTF
17428 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for lrintf" >&5
17429 $as_echo_n "checking for lrintf... " >&6; }
17430 if ${ac_cv_c99_lrintf+:} false; then :
17431 $as_echo_n "(cached) " >&6
17432 else
17433
17434 lrintf_save_CFLAGS=$CFLAGS
17435 lrintf_save_LIBS=$LIBS
17436 CFLAGS="-O"
17437 LIBS="-lm"
17438 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
17439 /* end confdefs.h. */
17440
17441 #define _ISOC9X_SOURCE 1
17442 #define _ISOC99_SOURCE 1
17443 #define __USE_ISOC99 1
17444 #define __USE_ISOC9X 1
17445
17446 #include <math.h>
17447
17448 int
17449 main ()
17450 {
17451 if (!lrintf(3.14159)) lrintf(2.7183);
17452 ;
17453 return 0;
17454 }
17455 _ACEOF
17456 if ac_fn_c_try_link "$LINENO"; then :
17457 ac_cv_c99_lrintf=yes
17458 else
17459 ac_cv_c99_lrintf=no
17460 fi
17461 rm -f core conftest.err conftest.$ac_objext \
17462 conftest$ac_exeext conftest.$ac_ext
17463
17464 CFLAGS=$lrintf_save_CFLAGS
17465 LIBS=$lrintf_save_LIBS
17466
17467
17468 fi
17469 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c99_lrintf" >&5
17470 $as_echo "$ac_cv_c99_lrintf" >&6; }
17471
17472 if test "$ac_cv_c99_lrintf" = yes; then
17473
17474 $as_echo "#define HAVE_LRINTF 1" >>confdefs.h
17475
17476 fi
17477
17478
17479
17480 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for float32_t temp" >&5
17481 $as_echo_n "checking for float32_t temp... " >&6; }
17482 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
17483 /* end confdefs.h. */
17484 #include <sys/types.h>,
17485 #include <sys/float.h>
17486 int
17487 main ()
17488 {
17489 float32_t temp;
17490 ;
17491 return 0;
17492 }
17493 _ACEOF
17494 if ac_fn_c_try_compile "$LINENO"; then :
17495 libfaad_ok=yes
17496 else
17497 libfaad_ok=no
17498 fi
17499 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
17500 if test $libfaad_ok = yes; then
17501
17502 $as_echo "#define HAVE_FLOAT32_T 1" >>confdefs.h
17503
17504 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
17505 $as_echo "yes" >&6; }
17506 else
17507 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
17508 $as_echo "no" >&6; }
17509 fi
17510
17511
17512 for ac_func in strsep
17513 do :
17514 ac_fn_c_check_func "$LINENO" "strsep" "ac_cv_func_strsep"
17515 if test "x$ac_cv_func_strsep" = xyes; then :
17516 cat >>confdefs.h <<_ACEOF
17517 #define HAVE_STRSEP 1
17518 _ACEOF
17519
17520 fi
17521 done
17522
17523
17524 # Extract the first word of "mpeg4ip-config", so it can be a program name with args.
17525 set dummy mpeg4ip-config; ac_word=$2
17526 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
17527 $as_echo_n "checking for $ac_word... " >&6; }
17528 if ${ac_cv_prog_external_mp4v2+:} false; then :
17529 $as_echo_n "(cached) " >&6
17530 else
17531 if test -n "$external_mp4v2"; then
17532 ac_cv_prog_external_mp4v2="$external_mp4v2" # Let the user override the test.
17533 else
17534 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
17535 for as_dir in $PATH
17536 do
17537 IFS=$as_save_IFS
17538 test -z "$as_dir" && as_dir=.
17539 for ac_exec_ext in '' $ac_executable_extensions; do
17540 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
17541 ac_cv_prog_external_mp4v2="yes"
17542 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
17543 break 2
17544 fi
17545 done
17546 done
17547 IFS=$as_save_IFS
17548
17549 test -z "$ac_cv_prog_external_mp4v2" && ac_cv_prog_external_mp4v2="no"
17550 fi
17551 fi
17552 external_mp4v2=$ac_cv_prog_external_mp4v2
17553 if test -n "$external_mp4v2"; then
17554 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $external_mp4v2" >&5
17555 $as_echo "$external_mp4v2" >&6; }
17556 else
17557 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
17558 $as_echo "no" >&6; }
17559 fi
17560
17561
17562 if false; then
17563 HAVE_MPEG4IP_PLUG_TRUE=
17564 HAVE_MPEG4IP_PLUG_FALSE='#'
17565 else
17566 HAVE_MPEG4IP_PLUG_TRUE='#'
17567 HAVE_MPEG4IP_PLUG_FALSE=
17568 fi
17569
17570 if test x$WITHMPEG4IP = xyes; then
17571 if test x$external_mp4v2 = xyes; then
17572 if true; then
17573 HAVE_MPEG4IP_PLUG_TRUE=
17574 HAVE_MPEG4IP_PLUG_FALSE='#'
17575 else
17576 HAVE_MPEG4IP_PLUG_TRUE='#'
17577 HAVE_MPEG4IP_PLUG_FALSE=
17578 fi
17579
17580 { $as_echo "$as_me:${as_lineno-$LINENO}: \"Building MPEG4IP plugin\"" >&5
17581 $as_echo "$as_me: \"Building MPEG4IP plugin\"" >&6;}
17582 else
17583 { $as_echo "$as_me:${as_lineno-$LINENO}: \"MPEG4IP libmp4v2 is required for MPEG4IP plugin\"" >&5
17584 $as_echo "$as_me: \"MPEG4IP libmp4v2 is required for MPEG4IP plugin\"" >&6;}
17585 fi
17586 fi
17587
17588 if test x$WITHXMMS = xyes; then
17589 for ac_prog in xmms-config
17590 do
17591 # Extract the first word of "$ac_prog", so it can be a program name with args.
17592 set dummy $ac_prog; ac_word=$2
17593 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
17594 $as_echo_n "checking for $ac_word... " >&6; }
17595 if ${ac_cv_prog_XMMS_CONFIG+:} false; then :
17596 $as_echo_n "(cached) " >&6
17597 else
17598 if test -n "$XMMS_CONFIG"; then
17599 ac_cv_prog_XMMS_CONFIG="$XMMS_CONFIG" # Let the user override the test.
17600 else
17601 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
17602 for as_dir in $PATH
17603 do
17604 IFS=$as_save_IFS
17605 test -z "$as_dir" && as_dir=.
17606 for ac_exec_ext in '' $ac_executable_extensions; do
17607 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
17608 ac_cv_prog_XMMS_CONFIG="$ac_prog"
17609 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
17610 break 2
17611 fi
17612 done
17613 done
17614 IFS=$as_save_IFS
17615
17616 fi
17617 fi
17618 XMMS_CONFIG=$ac_cv_prog_XMMS_CONFIG
17619 if test -n "$XMMS_CONFIG"; then
17620 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $XMMS_CONFIG" >&5
17621 $as_echo "$XMMS_CONFIG" >&6; }
17622 else
17623 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
17624 $as_echo "no" >&6; }
17625 fi
17626
17627
17628 test -n "$XMMS_CONFIG" && break
17629 done
17630 test -n "$XMMS_CONFIG" || XMMS_CONFIG=""not_found""
17631
17632 if test "$XMMS_CONFIG" = "not_found"; then
17633 as_fn_error $? "\"*** xmms-config not found - xmms plugin can't be build\"" "$LINENO" 5
17634 fi
17635 ac_fn_c_check_header_mongrel "$LINENO" "pthread.h" "ac_cv_header_pthread_h" "$ac_includes_default"
17636 if test "x$ac_cv_header_pthread_h" = xyes; then :
17637
17638 else
17639 as_fn_error $? "*** pthread headers support not installed or not found" "$LINENO" 5
17640 fi
17641
17642
17643 ac_fn_c_check_header_mongrel "$LINENO" "id3.h" "ac_cv_header_id3_h" "$ac_includes_default"
17644 if test "x$ac_cv_header_id3_h" = xyes; then :
17645
17646 else
17647 as_fn_error $? "*** id3lib headers support not installed or not found" "$LINENO" 5
17648 fi
17649
17650
17651 for ac_prog in gtk-config
17652 do
17653 # Extract the first word of "$ac_prog", so it can be a program name with args.
17654 set dummy $ac_prog; ac_word=$2
17655 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
17656 $as_echo_n "checking for $ac_word... " >&6; }
17657 if ${ac_cv_prog_GTK_CONFIG+:} false; then :
17658 $as_echo_n "(cached) " >&6
17659 else
17660 if test -n "$GTK_CONFIG"; then
17661 ac_cv_prog_GTK_CONFIG="$GTK_CONFIG" # Let the user override the test.
17662 else
17663 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
17664 for as_dir in $PATH
17665 do
17666 IFS=$as_save_IFS
17667 test -z "$as_dir" && as_dir=.
17668 for ac_exec_ext in '' $ac_executable_extensions; do
17669 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
17670 ac_cv_prog_GTK_CONFIG="$ac_prog"
17671 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
17672 break 2
17673 fi
17674 done
17675 done
17676 IFS=$as_save_IFS
17677
17678 fi
17679 fi
17680 GTK_CONFIG=$ac_cv_prog_GTK_CONFIG
17681 if test -n "$GTK_CONFIG"; then
17682 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GTK_CONFIG" >&5
17683 $as_echo "$GTK_CONFIG" >&6; }
17684 else
17685 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
17686 $as_echo "no" >&6; }
17687 fi
17688
17689
17690 test -n "$GTK_CONFIG" && break
17691 done
17692 test -n "$GTK_CONFIG" || GTK_CONFIG=""not_found""
17693
17694 if test "$XGTK_CONFIG" = "not_found"; then
17695 as_fn_error $? "\"*** gtk-config not found - xmms plugin can't be build without\"" "$LINENO" 5
17696 fi
17697
17698 if true; then
17699 HAVE_XMMS_TRUE=
17700 HAVE_XMMS_FALSE='#'
17701 else
17702 HAVE_XMMS_TRUE='#'
17703 HAVE_XMMS_FALSE=
17704 fi
17705
17706 else
17707 { $as_echo "$as_me:${as_lineno-$LINENO}: no xmms build configured" >&5
17708 $as_echo "$as_me: no xmms build configured" >&6;}
17709 if false; then
17710 HAVE_XMMS_TRUE=
17711 HAVE_XMMS_FALSE='#'
17712 else
17713 HAVE_XMMS_TRUE='#'
17714 HAVE_XMMS_FALSE=
17715 fi
17716
17717 fi
17718
17719 if test x$WITHDRM = xyes; then
17720
17721 $as_echo "#define DRM 1" >>confdefs.h
17722
17723
17724 $as_echo "#define DRM_PS 1" >>confdefs.h
17725
17726 fi
17727
17728 ac_config_files="$ac_config_files libfaad/Makefile"
17729
17730 ac_config_files="$ac_config_files libfaad/faad2.pc"
17731
17732 ac_config_files="$ac_config_files plugins/Makefile"
17733
17734 ac_config_files="$ac_config_files plugins/xmms/Makefile"
17735
17736 ac_config_files="$ac_config_files plugins/xmms/src/Makefile"
17737
17738 ac_config_files="$ac_config_files plugins/mpeg4ip/Makefile"
17739
17740 ac_config_files="$ac_config_files faad2.spec"
17741
17742 ac_config_files="$ac_config_files frontend/Makefile"
17743
17744 ac_config_files="$ac_config_files Makefile"
17745
17746
17747 cat >confcache <<\_ACEOF
17748 # This file is a shell script that caches the results of configure
17749 # tests run on this system so they can be shared between configure
17750 # scripts and configure runs, see configure's option --config-cache.
17751 # It is not useful on other systems. If it contains results you don't
17752 # want to keep, you may remove or edit it.
17753 #
17754 # config.status only pays attention to the cache file if you give it
17755 # the --recheck option to rerun configure.
17756 #
17757 # `ac_cv_env_foo' variables (set or unset) will be overridden when
17758 # loading this file, other *unset* `ac_cv_foo' will be assigned the
17759 # following values.
17760
17761 _ACEOF
17762
17763 # The following way of writing the cache mishandles newlines in values,
17764 # but we know of no workaround that is simple, portable, and efficient.
17765 # So, we kill variables containing newlines.
17766 # Ultrix sh set writes to stderr and can't be redirected directly,
17767 # and sets the high bit in the cache file unless we assign to the vars.
17768 (
17769 for ac_var in `(set) 2>&1 | sed -n 's/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'`; do
17770 eval ac_val=\$$ac_var
17771 case $ac_val in #(
17772 *${as_nl}*)
17773 case $ac_var in #(
17774 *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5
17775 $as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
17776 esac
17777 case $ac_var in #(
17778 _ | IFS | as_nl) ;; #(
17779 BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #(
17780 *) { eval $ac_var=; unset $ac_var;} ;;
17781 esac ;;
17782 esac
17783 done
17784
17785 (set) 2>&1 |
17786 case $as_nl`(ac_space=' '; set) 2>&1` in #(
17787 *${as_nl}ac_space=\ *)
17788 # `set' does not quote correctly, so add quotes: double-quote
17789 # substitution turns \\\\ into \\, and sed turns \\ into \.
17790 sed -n \
17791 "s/'/'\\\\''/g;
17792 s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p"
17793 ;; #(
17794 *)
17795 # `set' quotes correctly as required by POSIX, so do not add quotes.
17796 sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p"
17797 ;;
17798 esac |
17799 sort
17800 ) |
17801 sed '
17802 /^ac_cv_env_/b end
17803 t clear
17804 :clear
17805 s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/
17806 t end
17807 s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/
17808 :end' >>confcache
17809 if diff "$cache_file" confcache >/dev/null 2>&1; then :; else
17810 if test -w "$cache_file"; then
17811 if test "x$cache_file" != "x/dev/null"; then
17812 { $as_echo "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5
17813 $as_echo "$as_me: updating cache $cache_file" >&6;}
17814 if test ! -f "$cache_file" || test -h "$cache_file"; then
17815 cat confcache >"$cache_file"
17816 else
17817 case $cache_file in #(
17818 */* | ?:*)
17819 mv -f confcache "$cache_file"$$ &&
17820 mv -f "$cache_file"$$ "$cache_file" ;; #(
17821 *)
17822 mv -f confcache "$cache_file" ;;
17823 esac
17824 fi
17825 fi
17826 else
17827 { $as_echo "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5
17828 $as_echo "$as_me: not updating unwritable cache $cache_file" >&6;}
17829 fi
17830 fi
17831 rm -f confcache
17832
17833 test "x$prefix" = xNONE && prefix=$ac_default_prefix
17834 # Let make expand exec_prefix.
17835 test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
17836
17837 DEFS=-DHAVE_CONFIG_H
17838
17839 ac_libobjs=
17840 ac_ltlibobjs=
17841 U=
17842 for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue
17843 # 1. Remove the extension, and $U if already installed.
17844 ac_script='s/\$U\././;s/\.o$//;s/\.obj$//'
17845 ac_i=`$as_echo "$ac_i" | sed "$ac_script"`
17846 # 2. Prepend LIBOBJDIR. When used with automake>=1.10 LIBOBJDIR
17847 # will be set to the directory where LIBOBJS objects are built.
17848 as_fn_append ac_libobjs " \${LIBOBJDIR}$ac_i\$U.$ac_objext"
17849 as_fn_append ac_ltlibobjs " \${LIBOBJDIR}$ac_i"'$U.lo'
17850 done
17851 LIBOBJS=$ac_libobjs
17852
17853 LTLIBOBJS=$ac_ltlibobjs
17854
17855
17856 { $as_echo "$as_me:${as_lineno-$LINENO}: checking that generated files are newer than configure" >&5
17857 $as_echo_n "checking that generated files are newer than configure... " >&6; }
17858 if test -n "$am_sleep_pid"; then
17859 # Hide warnings about reused PIDs.
17860 wait $am_sleep_pid 2>/dev/null
17861 fi
17862 { $as_echo "$as_me:${as_lineno-$LINENO}: result: done" >&5
17863 $as_echo "done" >&6; }
17864 if test -n "$EXEEXT"; then
17865 am__EXEEXT_TRUE=
17866 am__EXEEXT_FALSE='#'
17867 else
17868 am__EXEEXT_TRUE='#'
17869 am__EXEEXT_FALSE=
17870 fi
17871
17872 if test -z "${AMDEP_TRUE}" && test -z "${AMDEP_FALSE}"; then
17873 as_fn_error $? "conditional \"AMDEP\" was never defined.
17874 Usually this means the macro was only invoked conditionally." "$LINENO" 5
17875 fi
17876 if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then
17877 as_fn_error $? "conditional \"am__fastdepCC\" was never defined.
17878 Usually this means the macro was only invoked conditionally." "$LINENO" 5
17879 fi
17880 if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then
17881 as_fn_error $? "conditional \"am__fastdepCC\" was never defined.
17882 Usually this means the macro was only invoked conditionally." "$LINENO" 5
17883 fi
17884 if test -z "${am__fastdepCXX_TRUE}" && test -z "${am__fastdepCXX_FALSE}"; then
17885 as_fn_error $? "conditional \"am__fastdepCXX\" was never defined.
17886 Usually this means the macro was only invoked conditionally." "$LINENO" 5
17887 fi
17888
17889 if test -z "${HAVE_MPEG4IP_PLUG_TRUE}" && test -z "${HAVE_MPEG4IP_PLUG_FALSE}"; then
17890 as_fn_error $? "conditional \"HAVE_MPEG4IP_PLUG\" was never defined.
17891 Usually this means the macro was only invoked conditionally." "$LINENO" 5
17892 fi
17893 if test -z "${HAVE_MPEG4IP_PLUG_TRUE}" && test -z "${HAVE_MPEG4IP_PLUG_FALSE}"; then
17894 as_fn_error $? "conditional \"HAVE_MPEG4IP_PLUG\" was never defined.
17895 Usually this means the macro was only invoked conditionally." "$LINENO" 5
17896 fi
17897 if test -z "${HAVE_XMMS_TRUE}" && test -z "${HAVE_XMMS_FALSE}"; then
17898 as_fn_error $? "conditional \"HAVE_XMMS\" was never defined.
17899 Usually this means the macro was only invoked conditionally." "$LINENO" 5
17900 fi
17901 if test -z "${HAVE_XMMS_TRUE}" && test -z "${HAVE_XMMS_FALSE}"; then
17902 as_fn_error $? "conditional \"HAVE_XMMS\" was never defined.
17903 Usually this means the macro was only invoked conditionally." "$LINENO" 5
17904 fi
17905
17906 : "${CONFIG_STATUS=./config.status}"
17907 ac_write_fail=0
17908 ac_clean_files_save=$ac_clean_files
17909 ac_clean_files="$ac_clean_files $CONFIG_STATUS"
17910 { $as_echo "$as_me:${as_lineno-$LINENO}: creating $CONFIG_STATUS" >&5
17911 $as_echo "$as_me: creating $CONFIG_STATUS" >&6;}
17912 as_write_fail=0
17913 cat >$CONFIG_STATUS <<_ASEOF || as_write_fail=1
17914 #! $SHELL
17915 # Generated by $as_me.
17916 # Run this file to recreate the current configuration.
17917 # Compiler output produced by configure, useful for debugging
17918 # configure, is in config.log if it exists.
17919
17920 debug=false
17921 ac_cs_recheck=false
17922 ac_cs_silent=false
17923
17924 SHELL=\${CONFIG_SHELL-$SHELL}
17925 export SHELL
17926 _ASEOF
17927 cat >>$CONFIG_STATUS <<\_ASEOF || as_write_fail=1
17928 ## -------------------- ##
17929 ## M4sh Initialization. ##
17930 ## -------------------- ##
17931
17932 # Be more Bourne compatible
17933 DUALCASE=1; export DUALCASE # for MKS sh
17934 if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then :
17935 emulate sh
17936 NULLCMD=:
17937 # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
17938 # is contrary to our usage. Disable this feature.
17939 alias -g '${1+"$@"}'='"$@"'
17940 setopt NO_GLOB_SUBST
17941 else
17942 case `(set -o) 2>/dev/null` in #(
17943 *posix*) :
17944 set -o posix ;; #(
17945 *) :
17946 ;;
17947 esac
17948 fi
17949
17950
17951 as_nl='
17952 '
17953 export as_nl
17954 # Printing a long string crashes Solaris 7 /usr/bin/printf.
17955 as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
17956 as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
17957 as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
17958 # Prefer a ksh shell builtin over an external printf program on Solaris,
17959 # but without wasting forks for bash or zsh.
17960 if test -z "$BASH_VERSION$ZSH_VERSION" \
17961 && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then
17962 as_echo='print -r --'
17963 as_echo_n='print -rn --'
17964 elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
17965 as_echo='printf %s\n'
17966 as_echo_n='printf %s'
17967 else
17968 if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then
17969 as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"'
17970 as_echo_n='/usr/ucb/echo -n'
17971 else
17972 as_echo_body='eval expr "X$1" : "X\\(.*\\)"'
17973 as_echo_n_body='eval
17974 arg=$1;
17975 case $arg in #(
17976 *"$as_nl"*)
17977 expr "X$arg" : "X\\(.*\\)$as_nl";
17978 arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
17979 esac;
17980 expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl"
17981 '
17982 export as_echo_n_body
17983 as_echo_n='sh -c $as_echo_n_body as_echo'
17984 fi
17985 export as_echo_body
17986 as_echo='sh -c $as_echo_body as_echo'
17987 fi
17988
17989 # The user is always right.
17990 if test "${PATH_SEPARATOR+set}" != set; then
17991 PATH_SEPARATOR=:
17992 (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && {
17993 (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 ||
17994 PATH_SEPARATOR=';'
17995 }
17996 fi
17997
17998
17999 # IFS
18000 # We need space, tab and new line, in precisely that order. Quoting is
18001 # there to prevent editors from complaining about space-tab.
18002 # (If _AS_PATH_WALK were called with IFS unset, it would disable word
18003 # splitting by setting IFS to empty value.)
18004 IFS=" "" $as_nl"
18005
18006 # Find who we are. Look in the path if we contain no directory separator.
18007 as_myself=
18008 case $0 in #((
18009 *[\\/]* ) as_myself=$0 ;;
18010 *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
18011 for as_dir in $PATH
18012 do
18013 IFS=$as_save_IFS
18014 test -z "$as_dir" && as_dir=.
18015 test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
18016 done
18017 IFS=$as_save_IFS
18018
18019 ;;
18020 esac
18021 # We did not find ourselves, most probably we were run as `sh COMMAND'
18022 # in which case we are not to be found in the path.
18023 if test "x$as_myself" = x; then
18024 as_myself=$0
18025 fi
18026 if test ! -f "$as_myself"; then
18027 $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
18028 exit 1
18029 fi
18030
18031 # Unset variables that we do not need and which cause bugs (e.g. in
18032 # pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1"
18033 # suppresses any "Segmentation fault" message there. '((' could
18034 # trigger a bug in pdksh 5.2.14.
18035 for as_var in BASH_ENV ENV MAIL MAILPATH
18036 do eval test x\${$as_var+set} = xset \
18037 && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
18038 done
18039 PS1='$ '
18040 PS2='> '
18041 PS4='+ '
18042
18043 # NLS nuisances.
18044 LC_ALL=C
18045 export LC_ALL
18046 LANGUAGE=C
18047 export LANGUAGE
18048
18049 # CDPATH.
18050 (unset CDPATH) >/dev/null 2>&1 && unset CDPATH
18051
18052
18053 # as_fn_error STATUS ERROR [LINENO LOG_FD]
18054 # ----------------------------------------
18055 # Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are
18056 # provided, also output the error to LOG_FD, referencing LINENO. Then exit the
18057 # script with STATUS, using 1 if that was 0.
18058 as_fn_error ()
18059 {
18060 as_status=$1; test $as_status -eq 0 && as_status=1
18061 if test "$4"; then
18062 as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
18063 $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4
18064 fi
18065 $as_echo "$as_me: error: $2" >&2
18066 as_fn_exit $as_status
18067 } # as_fn_error
18068
18069
18070 # as_fn_set_status STATUS
18071 # -----------------------
18072 # Set $? to STATUS, without forking.
18073 as_fn_set_status ()
18074 {
18075 return $1
18076 } # as_fn_set_status
18077
18078 # as_fn_exit STATUS
18079 # -----------------
18080 # Exit the shell with STATUS, even in a "trap 0" or "set -e" context.
18081 as_fn_exit ()
18082 {
18083 set +e
18084 as_fn_set_status $1
18085 exit $1
18086 } # as_fn_exit
18087
18088 # as_fn_unset VAR
18089 # ---------------
18090 # Portably unset VAR.
18091 as_fn_unset ()
18092 {
18093 { eval $1=; unset $1;}
18094 }
18095 as_unset=as_fn_unset
18096 # as_fn_append VAR VALUE
18097 # ----------------------
18098 # Append the text in VALUE to the end of the definition contained in VAR. Take
18099 # advantage of any shell optimizations that allow amortized linear growth over
18100 # repeated appends, instead of the typical quadratic growth present in naive
18101 # implementations.
18102 if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then :
18103 eval 'as_fn_append ()
18104 {
18105 eval $1+=\$2
18106 }'
18107 else
18108 as_fn_append ()
18109 {
18110 eval $1=\$$1\$2
18111 }
18112 fi # as_fn_append
18113
18114 # as_fn_arith ARG...
18115 # ------------------
18116 # Perform arithmetic evaluation on the ARGs, and store the result in the
18117 # global $as_val. Take advantage of shells that can avoid forks. The arguments
18118 # must be portable across $(()) and expr.
18119 if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then :
18120 eval 'as_fn_arith ()
18121 {
18122 as_val=$(( $* ))
18123 }'
18124 else
18125 as_fn_arith ()
18126 {
18127 as_val=`expr "$@" || test $? -eq 1`
18128 }
18129 fi # as_fn_arith
18130
18131
18132 if expr a : '\(a\)' >/dev/null 2>&1 &&
18133 test "X`expr 00001 : '.*\(...\)'`" = X001; then
18134 as_expr=expr
18135 else
18136 as_expr=false
18137 fi
18138
18139 if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then
18140 as_basename=basename
18141 else
18142 as_basename=false
18143 fi
18144
18145 if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
18146 as_dirname=dirname
18147 else
18148 as_dirname=false
18149 fi
18150
18151 as_me=`$as_basename -- "$0" ||
18152 $as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
18153 X"$0" : 'X\(//\)$' \| \
18154 X"$0" : 'X\(/\)' \| . 2>/dev/null ||
18155 $as_echo X/"$0" |
18156 sed '/^.*\/\([^/][^/]*\)\/*$/{
18157 s//\1/
18158 q
18159 }
18160 /^X\/\(\/\/\)$/{
18161 s//\1/
18162 q
18163 }
18164 /^X\/\(\/\).*/{
18165 s//\1/
18166 q
18167 }
18168 s/.*/./; q'`
18169
18170 # Avoid depending upon Character Ranges.
18171 as_cr_letters='abcdefghijklmnopqrstuvwxyz'
18172 as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
18173 as_cr_Letters=$as_cr_letters$as_cr_LETTERS
18174 as_cr_digits='0123456789'
18175 as_cr_alnum=$as_cr_Letters$as_cr_digits
18176
18177 ECHO_C= ECHO_N= ECHO_T=
18178 case `echo -n x` in #(((((
18179 -n*)
18180 case `echo 'xy\c'` in
18181 *c*) ECHO_T=' ';; # ECHO_T is single tab character.
18182 xy) ECHO_C='\c';;
18183 *) echo `echo ksh88 bug on AIX 6.1` > /dev/null
18184 ECHO_T=' ';;
18185 esac;;
18186 *)
18187 ECHO_N='-n';;
18188 esac
18189
18190 rm -f conf$$ conf$$.exe conf$$.file
18191 if test -d conf$$.dir; then
18192 rm -f conf$$.dir/conf$$.file
18193 else
18194 rm -f conf$$.dir
18195 mkdir conf$$.dir 2>/dev/null
18196 fi
18197 if (echo >conf$$.file) 2>/dev/null; then
18198 if ln -s conf$$.file conf$$ 2>/dev/null; then
18199 as_ln_s='ln -s'
18200 # ... but there are two gotchas:
18201 # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
18202 # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
18203 # In both cases, we have to default to `cp -pR'.
18204 ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
18205 as_ln_s='cp -pR'
18206 elif ln conf$$.file conf$$ 2>/dev/null; then
18207 as_ln_s=ln
18208 else
18209 as_ln_s='cp -pR'
18210 fi
18211 else
18212 as_ln_s='cp -pR'
18213 fi
18214 rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
18215 rmdir conf$$.dir 2>/dev/null
18216
18217
18218 # as_fn_mkdir_p
18219 # -------------
18220 # Create "$as_dir" as a directory, including parents if necessary.
18221 as_fn_mkdir_p ()
18222 {
18223
18224 case $as_dir in #(
18225 -*) as_dir=./$as_dir;;
18226 esac
18227 test -d "$as_dir" || eval $as_mkdir_p || {
18228 as_dirs=
18229 while :; do
18230 case $as_dir in #(
18231 *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
18232 *) as_qdir=$as_dir;;
18233 esac
18234 as_dirs="'$as_qdir' $as_dirs"
18235 as_dir=`$as_dirname -- "$as_dir" ||
18236 $as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
18237 X"$as_dir" : 'X\(//\)[^/]' \| \
18238 X"$as_dir" : 'X\(//\)$' \| \
18239 X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||
18240 $as_echo X"$as_dir" |
18241 sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
18242 s//\1/
18243 q
18244 }
18245 /^X\(\/\/\)[^/].*/{
18246 s//\1/
18247 q
18248 }
18249 /^X\(\/\/\)$/{
18250 s//\1/
18251 q
18252 }
18253 /^X\(\/\).*/{
18254 s//\1/
18255 q
18256 }
18257 s/.*/./; q'`
18258 test -d "$as_dir" && break
18259 done
18260 test -z "$as_dirs" || eval "mkdir $as_dirs"
18261 } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir"
18262
18263
18264 } # as_fn_mkdir_p
18265 if mkdir -p . 2>/dev/null; then
18266 as_mkdir_p='mkdir -p "$as_dir"'
18267 else
18268 test -d ./-p && rmdir ./-p
18269 as_mkdir_p=false
18270 fi
18271
18272
18273 # as_fn_executable_p FILE
18274 # -----------------------
18275 # Test if FILE is an executable regular file.
18276 as_fn_executable_p ()
18277 {
18278 test -f "$1" && test -x "$1"
18279 } # as_fn_executable_p
18280 as_test_x='test -x'
18281 as_executable_p=as_fn_executable_p
18282
18283 # Sed expression to map a string onto a valid CPP name.
18284 as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
18285
18286 # Sed expression to map a string onto a valid variable name.
18287 as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
18288
18289
18290 exec 6>&1
18291 ## ----------------------------------- ##
18292 ## Main body of $CONFIG_STATUS script. ##
18293 ## ----------------------------------- ##
18294 _ASEOF
18295 test $as_write_fail = 0 && chmod +x $CONFIG_STATUS || ac_write_fail=1
18296
18297 cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
18298 # Save the log message, to keep $0 and so on meaningful, and to
18299 # report actual input values of CONFIG_FILES etc. instead of their
18300 # values after options handling.
18301 ac_log="
18302 This file was extended by faad2 $as_me 2.9.2, which was
18303 generated by GNU Autoconf 2.69. Invocation command line was
18304
18305 CONFIG_FILES = $CONFIG_FILES
18306 CONFIG_HEADERS = $CONFIG_HEADERS
18307 CONFIG_LINKS = $CONFIG_LINKS
18308 CONFIG_COMMANDS = $CONFIG_COMMANDS
18309 $ $0 $@
18310
18311 on `(hostname || uname -n) 2>/dev/null | sed 1q`
18312 "
18313
18314 _ACEOF
18315
18316 case $ac_config_files in *"
18317 "*) set x $ac_config_files; shift; ac_config_files=$*;;
18318 esac
18319
18320 case $ac_config_headers in *"
18321 "*) set x $ac_config_headers; shift; ac_config_headers=$*;;
18322 esac
18323
18324
18325 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
18326 # Files that config.status was made for.
18327 config_files="$ac_config_files"
18328 config_headers="$ac_config_headers"
18329 config_commands="$ac_config_commands"
18330
18331 _ACEOF
18332
18333 cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
18334 ac_cs_usage="\
18335 \`$as_me' instantiates files and other configuration actions
18336 from templates according to the current configuration. Unless the files
18337 and actions are specified as TAGs, all are instantiated by default.
18338
18339 Usage: $0 [OPTION]... [TAG]...
18340
18341 -h, --help print this help, then exit
18342 -V, --version print version number and configuration settings, then exit
18343 --config print configuration, then exit
18344 -q, --quiet, --silent
18345 do not print progress messages
18346 -d, --debug don't remove temporary files
18347 --recheck update $as_me by reconfiguring in the same conditions
18348 --file=FILE[:TEMPLATE]
18349 instantiate the configuration file FILE
18350 --header=FILE[:TEMPLATE]
18351 instantiate the configuration header FILE
18352
18353 Configuration files:
18354 $config_files
18355
18356 Configuration headers:
18357 $config_headers
18358
18359 Configuration commands:
18360 $config_commands
18361
18362 Report bugs to the package provider."
18363
18364 _ACEOF
18365 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
18366 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
18367 ac_cs_version="\\
18368 faad2 config.status 2.9.2
18369 configured by $0, generated by GNU Autoconf 2.69,
18370 with options \\"\$ac_cs_config\\"
18371
18372 Copyright (C) 2012 Free Software Foundation, Inc.
18373 This config.status script is free software; the Free Software Foundation
18374 gives unlimited permission to copy, distribute and modify it."
18375
18376 ac_pwd='$ac_pwd'
18377 srcdir='$srcdir'
18378 INSTALL='$INSTALL'
18379 MKDIR_P='$MKDIR_P'
18380 AWK='$AWK'
18381 test -n "\$AWK" || AWK=awk
18382 _ACEOF
18383
18384 cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
18385 # The default lists apply if the user does not specify any file.
18386 ac_need_defaults=:
18387 while test $# != 0
18388 do
18389 case $1 in
18390 --*=?*)
18391 ac_option=`expr "X$1" : 'X\([^=]*\)='`
18392 ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'`
18393 ac_shift=:
18394 ;;
18395 --*=)
18396 ac_option=`expr "X$1" : 'X\([^=]*\)='`
18397 ac_optarg=
18398 ac_shift=:
18399 ;;
18400 *)
18401 ac_option=$1
18402 ac_optarg=$2
18403 ac_shift=shift
18404 ;;
18405 esac
18406
18407 case $ac_option in
18408 # Handling of the options.
18409 -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
18410 ac_cs_recheck=: ;;
18411 --version | --versio | --versi | --vers | --ver | --ve | --v | -V )
18412 $as_echo "$ac_cs_version"; exit ;;
18413 --config | --confi | --conf | --con | --co | --c )
18414 $as_echo "$ac_cs_config"; exit ;;
18415 --debug | --debu | --deb | --de | --d | -d )
18416 debug=: ;;
18417 --file | --fil | --fi | --f )
18418 $ac_shift
18419 case $ac_optarg in
18420 *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;
18421 '') as_fn_error $? "missing file argument" ;;
18422 esac
18423 as_fn_append CONFIG_FILES " '$ac_optarg'"
18424 ac_need_defaults=false;;
18425 --header | --heade | --head | --hea )
18426 $ac_shift
18427 case $ac_optarg in
18428 *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;
18429 esac
18430 as_fn_append CONFIG_HEADERS " '$ac_optarg'"
18431 ac_need_defaults=false;;
18432 --he | --h)
18433 # Conflict between --help and --header
18434 as_fn_error $? "ambiguous option: \`$1'
18435 Try \`$0 --help' for more information.";;
18436 --help | --hel | -h )
18437 $as_echo "$ac_cs_usage"; exit ;;
18438 -q | -quiet | --quiet | --quie | --qui | --qu | --q \
18439 | -silent | --silent | --silen | --sile | --sil | --si | --s)
18440 ac_cs_silent=: ;;
18441
18442 # This is an error.
18443 -*) as_fn_error $? "unrecognized option: \`$1'
18444 Try \`$0 --help' for more information." ;;
18445
18446 *) as_fn_append ac_config_targets " $1"
18447 ac_need_defaults=false ;;
18448
18449 esac
18450 shift
18451 done
18452
18453 ac_configure_extra_args=
18454
18455 if $ac_cs_silent; then
18456 exec 6>/dev/null
18457 ac_configure_extra_args="$ac_configure_extra_args --silent"
18458 fi
18459
18460 _ACEOF
18461 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
18462 if \$ac_cs_recheck; then
18463 set X $SHELL '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion
18464 shift
18465 \$as_echo "running CONFIG_SHELL=$SHELL \$*" >&6
18466 CONFIG_SHELL='$SHELL'
18467 export CONFIG_SHELL
18468 exec "\$@"
18469 fi
18470
18471 _ACEOF
18472 cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
18473 exec 5>>config.log
18474 {
18475 echo
18476 sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX
18477 ## Running $as_me. ##
18478 _ASBOX
18479 $as_echo "$ac_log"
18480 } >&5
18481
18482 _ACEOF
18483 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
18484 #
18485 # INIT-COMMANDS
18486 #
18487 AMDEP_TRUE="$AMDEP_TRUE" MAKE="${MAKE-make}"
18488
18489
18490 # The HP-UX ksh and POSIX shell print the target directory to stdout
18491 # if CDPATH is set.
18492 (unset CDPATH) >/dev/null 2>&1 && unset CDPATH
18493
18494 sed_quote_subst='$sed_quote_subst'
18495 double_quote_subst='$double_quote_subst'
18496 delay_variable_subst='$delay_variable_subst'
18497 macro_version='`$ECHO "$macro_version" | $SED "$delay_single_quote_subst"`'
18498 macro_revision='`$ECHO "$macro_revision" | $SED "$delay_single_quote_subst"`'
18499 enable_shared='`$ECHO "$enable_shared" | $SED "$delay_single_quote_subst"`'
18500 enable_static='`$ECHO "$enable_static" | $SED "$delay_single_quote_subst"`'
18501 pic_mode='`$ECHO "$pic_mode" | $SED "$delay_single_quote_subst"`'
18502 enable_fast_install='`$ECHO "$enable_fast_install" | $SED "$delay_single_quote_subst"`'
18503 shared_archive_member_spec='`$ECHO "$shared_archive_member_spec" | $SED "$delay_single_quote_subst"`'
18504 SHELL='`$ECHO "$SHELL" | $SED "$delay_single_quote_subst"`'
18505 ECHO='`$ECHO "$ECHO" | $SED "$delay_single_quote_subst"`'
18506 PATH_SEPARATOR='`$ECHO "$PATH_SEPARATOR" | $SED "$delay_single_quote_subst"`'
18507 host_alias='`$ECHO "$host_alias" | $SED "$delay_single_quote_subst"`'
18508 host='`$ECHO "$host" | $SED "$delay_single_quote_subst"`'
18509 host_os='`$ECHO "$host_os" | $SED "$delay_single_quote_subst"`'
18510 build_alias='`$ECHO "$build_alias" | $SED "$delay_single_quote_subst"`'
18511 build='`$ECHO "$build" | $SED "$delay_single_quote_subst"`'
18512 build_os='`$ECHO "$build_os" | $SED "$delay_single_quote_subst"`'
18513 SED='`$ECHO "$SED" | $SED "$delay_single_quote_subst"`'
18514 Xsed='`$ECHO "$Xsed" | $SED "$delay_single_quote_subst"`'
18515 GREP='`$ECHO "$GREP" | $SED "$delay_single_quote_subst"`'
18516 EGREP='`$ECHO "$EGREP" | $SED "$delay_single_quote_subst"`'
18517 FGREP='`$ECHO "$FGREP" | $SED "$delay_single_quote_subst"`'
18518 LD='`$ECHO "$LD" | $SED "$delay_single_quote_subst"`'
18519 NM='`$ECHO "$NM" | $SED "$delay_single_quote_subst"`'
18520 LN_S='`$ECHO "$LN_S" | $SED "$delay_single_quote_subst"`'
18521 max_cmd_len='`$ECHO "$max_cmd_len" | $SED "$delay_single_quote_subst"`'
18522 ac_objext='`$ECHO "$ac_objext" | $SED "$delay_single_quote_subst"`'
18523 exeext='`$ECHO "$exeext" | $SED "$delay_single_quote_subst"`'
18524 lt_unset='`$ECHO "$lt_unset" | $SED "$delay_single_quote_subst"`'
18525 lt_SP2NL='`$ECHO "$lt_SP2NL" | $SED "$delay_single_quote_subst"`'
18526 lt_NL2SP='`$ECHO "$lt_NL2SP" | $SED "$delay_single_quote_subst"`'
18527 lt_cv_to_host_file_cmd='`$ECHO "$lt_cv_to_host_file_cmd" | $SED "$delay_single_quote_subst"`'
18528 lt_cv_to_tool_file_cmd='`$ECHO "$lt_cv_to_tool_file_cmd" | $SED "$delay_single_quote_subst"`'
18529 reload_flag='`$ECHO "$reload_flag" | $SED "$delay_single_quote_subst"`'
18530 reload_cmds='`$ECHO "$reload_cmds" | $SED "$delay_single_quote_subst"`'
18531 OBJDUMP='`$ECHO "$OBJDUMP" | $SED "$delay_single_quote_subst"`'
18532 deplibs_check_method='`$ECHO "$deplibs_check_method" | $SED "$delay_single_quote_subst"`'
18533 file_magic_cmd='`$ECHO "$file_magic_cmd" | $SED "$delay_single_quote_subst"`'
18534 file_magic_glob='`$ECHO "$file_magic_glob" | $SED "$delay_single_quote_subst"`'
18535 want_nocaseglob='`$ECHO "$want_nocaseglob" | $SED "$delay_single_quote_subst"`'
18536 DLLTOOL='`$ECHO "$DLLTOOL" | $SED "$delay_single_quote_subst"`'
18537 sharedlib_from_linklib_cmd='`$ECHO "$sharedlib_from_linklib_cmd" | $SED "$delay_single_quote_subst"`'
18538 AR='`$ECHO "$AR" | $SED "$delay_single_quote_subst"`'
18539 AR_FLAGS='`$ECHO "$AR_FLAGS" | $SED "$delay_single_quote_subst"`'
18540 archiver_list_spec='`$ECHO "$archiver_list_spec" | $SED "$delay_single_quote_subst"`'
18541 STRIP='`$ECHO "$STRIP" | $SED "$delay_single_quote_subst"`'
18542 RANLIB='`$ECHO "$RANLIB" | $SED "$delay_single_quote_subst"`'
18543 old_postinstall_cmds='`$ECHO "$old_postinstall_cmds" | $SED "$delay_single_quote_subst"`'
18544 old_postuninstall_cmds='`$ECHO "$old_postuninstall_cmds" | $SED "$delay_single_quote_subst"`'
18545 old_archive_cmds='`$ECHO "$old_archive_cmds" | $SED "$delay_single_quote_subst"`'
18546 lock_old_archive_extraction='`$ECHO "$lock_old_archive_extraction" | $SED "$delay_single_quote_subst"`'
18547 CC='`$ECHO "$CC" | $SED "$delay_single_quote_subst"`'
18548 CFLAGS='`$ECHO "$CFLAGS" | $SED "$delay_single_quote_subst"`'
18549 compiler='`$ECHO "$compiler" | $SED "$delay_single_quote_subst"`'
18550 GCC='`$ECHO "$GCC" | $SED "$delay_single_quote_subst"`'
18551 lt_cv_sys_global_symbol_pipe='`$ECHO "$lt_cv_sys_global_symbol_pipe" | $SED "$delay_single_quote_subst"`'
18552 lt_cv_sys_global_symbol_to_cdecl='`$ECHO "$lt_cv_sys_global_symbol_to_cdecl" | $SED "$delay_single_quote_subst"`'
18553 lt_cv_sys_global_symbol_to_import='`$ECHO "$lt_cv_sys_global_symbol_to_import" | $SED "$delay_single_quote_subst"`'
18554 lt_cv_sys_global_symbol_to_c_name_address='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address" | $SED "$delay_single_quote_subst"`'
18555 lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address_lib_prefix" | $SED "$delay_single_quote_subst"`'
18556 lt_cv_nm_interface='`$ECHO "$lt_cv_nm_interface" | $SED "$delay_single_quote_subst"`'
18557 nm_file_list_spec='`$ECHO "$nm_file_list_spec" | $SED "$delay_single_quote_subst"`'
18558 lt_sysroot='`$ECHO "$lt_sysroot" | $SED "$delay_single_quote_subst"`'
18559 lt_cv_truncate_bin='`$ECHO "$lt_cv_truncate_bin" | $SED "$delay_single_quote_subst"`'
18560 objdir='`$ECHO "$objdir" | $SED "$delay_single_quote_subst"`'
18561 MAGIC_CMD='`$ECHO "$MAGIC_CMD" | $SED "$delay_single_quote_subst"`'
18562 lt_prog_compiler_no_builtin_flag='`$ECHO "$lt_prog_compiler_no_builtin_flag" | $SED "$delay_single_quote_subst"`'
18563 lt_prog_compiler_pic='`$ECHO "$lt_prog_compiler_pic" | $SED "$delay_single_quote_subst"`'
18564 lt_prog_compiler_wl='`$ECHO "$lt_prog_compiler_wl" | $SED "$delay_single_quote_subst"`'
18565 lt_prog_compiler_static='`$ECHO "$lt_prog_compiler_static" | $SED "$delay_single_quote_subst"`'
18566 lt_cv_prog_compiler_c_o='`$ECHO "$lt_cv_prog_compiler_c_o" | $SED "$delay_single_quote_subst"`'
18567 need_locks='`$ECHO "$need_locks" | $SED "$delay_single_quote_subst"`'
18568 MANIFEST_TOOL='`$ECHO "$MANIFEST_TOOL" | $SED "$delay_single_quote_subst"`'
18569 DSYMUTIL='`$ECHO "$DSYMUTIL" | $SED "$delay_single_quote_subst"`'
18570 NMEDIT='`$ECHO "$NMEDIT" | $SED "$delay_single_quote_subst"`'
18571 LIPO='`$ECHO "$LIPO" | $SED "$delay_single_quote_subst"`'
18572 OTOOL='`$ECHO "$OTOOL" | $SED "$delay_single_quote_subst"`'
18573 OTOOL64='`$ECHO "$OTOOL64" | $SED "$delay_single_quote_subst"`'
18574 libext='`$ECHO "$libext" | $SED "$delay_single_quote_subst"`'
18575 shrext_cmds='`$ECHO "$shrext_cmds" | $SED "$delay_single_quote_subst"`'
18576 extract_expsyms_cmds='`$ECHO "$extract_expsyms_cmds" | $SED "$delay_single_quote_subst"`'
18577 archive_cmds_need_lc='`$ECHO "$archive_cmds_need_lc" | $SED "$delay_single_quote_subst"`'
18578 enable_shared_with_static_runtimes='`$ECHO "$enable_shared_with_static_runtimes" | $SED "$delay_single_quote_subst"`'
18579 export_dynamic_flag_spec='`$ECHO "$export_dynamic_flag_spec" | $SED "$delay_single_quote_subst"`'
18580 whole_archive_flag_spec='`$ECHO "$whole_archive_flag_spec" | $SED "$delay_single_quote_subst"`'
18581 compiler_needs_object='`$ECHO "$compiler_needs_object" | $SED "$delay_single_quote_subst"`'
18582 old_archive_from_new_cmds='`$ECHO "$old_archive_from_new_cmds" | $SED "$delay_single_quote_subst"`'
18583 old_archive_from_expsyms_cmds='`$ECHO "$old_archive_from_expsyms_cmds" | $SED "$delay_single_quote_subst"`'
18584 archive_cmds='`$ECHO "$archive_cmds" | $SED "$delay_single_quote_subst"`'
18585 archive_expsym_cmds='`$ECHO "$archive_expsym_cmds" | $SED "$delay_single_quote_subst"`'
18586 module_cmds='`$ECHO "$module_cmds" | $SED "$delay_single_quote_subst"`'
18587 module_expsym_cmds='`$ECHO "$module_expsym_cmds" | $SED "$delay_single_quote_subst"`'
18588 with_gnu_ld='`$ECHO "$with_gnu_ld" | $SED "$delay_single_quote_subst"`'
18589 allow_undefined_flag='`$ECHO "$allow_undefined_flag" | $SED "$delay_single_quote_subst"`'
18590 no_undefined_flag='`$ECHO "$no_undefined_flag" | $SED "$delay_single_quote_subst"`'
18591 hardcode_libdir_flag_spec='`$ECHO "$hardcode_libdir_flag_spec" | $SED "$delay_single_quote_subst"`'
18592 hardcode_libdir_separator='`$ECHO "$hardcode_libdir_separator" | $SED "$delay_single_quote_subst"`'
18593 hardcode_direct='`$ECHO "$hardcode_direct" | $SED "$delay_single_quote_subst"`'
18594 hardcode_direct_absolute='`$ECHO "$hardcode_direct_absolute" | $SED "$delay_single_quote_subst"`'
18595 hardcode_minus_L='`$ECHO "$hardcode_minus_L" | $SED "$delay_single_quote_subst"`'
18596 hardcode_shlibpath_var='`$ECHO "$hardcode_shlibpath_var" | $SED "$delay_single_quote_subst"`'
18597 hardcode_automatic='`$ECHO "$hardcode_automatic" | $SED "$delay_single_quote_subst"`'
18598 inherit_rpath='`$ECHO "$inherit_rpath" | $SED "$delay_single_quote_subst"`'
18599 link_all_deplibs='`$ECHO "$link_all_deplibs" | $SED "$delay_single_quote_subst"`'
18600 always_export_symbols='`$ECHO "$always_export_symbols" | $SED "$delay_single_quote_subst"`'
18601 export_symbols_cmds='`$ECHO "$export_symbols_cmds" | $SED "$delay_single_quote_subst"`'
18602 exclude_expsyms='`$ECHO "$exclude_expsyms" | $SED "$delay_single_quote_subst"`'
18603 include_expsyms='`$ECHO "$include_expsyms" | $SED "$delay_single_quote_subst"`'
18604 prelink_cmds='`$ECHO "$prelink_cmds" | $SED "$delay_single_quote_subst"`'
18605 postlink_cmds='`$ECHO "$postlink_cmds" | $SED "$delay_single_quote_subst"`'
18606 file_list_spec='`$ECHO "$file_list_spec" | $SED "$delay_single_quote_subst"`'
18607 variables_saved_for_relink='`$ECHO "$variables_saved_for_relink" | $SED "$delay_single_quote_subst"`'
18608 need_lib_prefix='`$ECHO "$need_lib_prefix" | $SED "$delay_single_quote_subst"`'
18609 need_version='`$ECHO "$need_version" | $SED "$delay_single_quote_subst"`'
18610 version_type='`$ECHO "$version_type" | $SED "$delay_single_quote_subst"`'
18611 runpath_var='`$ECHO "$runpath_var" | $SED "$delay_single_quote_subst"`'
18612 shlibpath_var='`$ECHO "$shlibpath_var" | $SED "$delay_single_quote_subst"`'
18613 shlibpath_overrides_runpath='`$ECHO "$shlibpath_overrides_runpath" | $SED "$delay_single_quote_subst"`'
18614 libname_spec='`$ECHO "$libname_spec" | $SED "$delay_single_quote_subst"`'
18615 library_names_spec='`$ECHO "$library_names_spec" | $SED "$delay_single_quote_subst"`'
18616 soname_spec='`$ECHO "$soname_spec" | $SED "$delay_single_quote_subst"`'
18617 install_override_mode='`$ECHO "$install_override_mode" | $SED "$delay_single_quote_subst"`'
18618 postinstall_cmds='`$ECHO "$postinstall_cmds" | $SED "$delay_single_quote_subst"`'
18619 postuninstall_cmds='`$ECHO "$postuninstall_cmds" | $SED "$delay_single_quote_subst"`'
18620 finish_cmds='`$ECHO "$finish_cmds" | $SED "$delay_single_quote_subst"`'
18621 finish_eval='`$ECHO "$finish_eval" | $SED "$delay_single_quote_subst"`'
18622 hardcode_into_libs='`$ECHO "$hardcode_into_libs" | $SED "$delay_single_quote_subst"`'
18623 sys_lib_search_path_spec='`$ECHO "$sys_lib_search_path_spec" | $SED "$delay_single_quote_subst"`'
18624 configure_time_dlsearch_path='`$ECHO "$configure_time_dlsearch_path" | $SED "$delay_single_quote_subst"`'
18625 configure_time_lt_sys_library_path='`$ECHO "$configure_time_lt_sys_library_path" | $SED "$delay_single_quote_subst"`'
18626 hardcode_action='`$ECHO "$hardcode_action" | $SED "$delay_single_quote_subst"`'
18627 enable_dlopen='`$ECHO "$enable_dlopen" | $SED "$delay_single_quote_subst"`'
18628 enable_dlopen_self='`$ECHO "$enable_dlopen_self" | $SED "$delay_single_quote_subst"`'
18629 enable_dlopen_self_static='`$ECHO "$enable_dlopen_self_static" | $SED "$delay_single_quote_subst"`'
18630 old_striplib='`$ECHO "$old_striplib" | $SED "$delay_single_quote_subst"`'
18631 striplib='`$ECHO "$striplib" | $SED "$delay_single_quote_subst"`'
18632 compiler_lib_search_dirs='`$ECHO "$compiler_lib_search_dirs" | $SED "$delay_single_quote_subst"`'
18633 predep_objects='`$ECHO "$predep_objects" | $SED "$delay_single_quote_subst"`'
18634 postdep_objects='`$ECHO "$postdep_objects" | $SED "$delay_single_quote_subst"`'
18635 predeps='`$ECHO "$predeps" | $SED "$delay_single_quote_subst"`'
18636 postdeps='`$ECHO "$postdeps" | $SED "$delay_single_quote_subst"`'
18637 compiler_lib_search_path='`$ECHO "$compiler_lib_search_path" | $SED "$delay_single_quote_subst"`'
18638 LD_CXX='`$ECHO "$LD_CXX" | $SED "$delay_single_quote_subst"`'
18639 reload_flag_CXX='`$ECHO "$reload_flag_CXX" | $SED "$delay_single_quote_subst"`'
18640 reload_cmds_CXX='`$ECHO "$reload_cmds_CXX" | $SED "$delay_single_quote_subst"`'
18641 old_archive_cmds_CXX='`$ECHO "$old_archive_cmds_CXX" | $SED "$delay_single_quote_subst"`'
18642 compiler_CXX='`$ECHO "$compiler_CXX" | $SED "$delay_single_quote_subst"`'
18643 GCC_CXX='`$ECHO "$GCC_CXX" | $SED "$delay_single_quote_subst"`'
18644 lt_prog_compiler_no_builtin_flag_CXX='`$ECHO "$lt_prog_compiler_no_builtin_flag_CXX" | $SED "$delay_single_quote_subst"`'
18645 lt_prog_compiler_pic_CXX='`$ECHO "$lt_prog_compiler_pic_CXX" | $SED "$delay_single_quote_subst"`'
18646 lt_prog_compiler_wl_CXX='`$ECHO "$lt_prog_compiler_wl_CXX" | $SED "$delay_single_quote_subst"`'
18647 lt_prog_compiler_static_CXX='`$ECHO "$lt_prog_compiler_static_CXX" | $SED "$delay_single_quote_subst"`'
18648 lt_cv_prog_compiler_c_o_CXX='`$ECHO "$lt_cv_prog_compiler_c_o_CXX" | $SED "$delay_single_quote_subst"`'
18649 archive_cmds_need_lc_CXX='`$ECHO "$archive_cmds_need_lc_CXX" | $SED "$delay_single_quote_subst"`'
18650 enable_shared_with_static_runtimes_CXX='`$ECHO "$enable_shared_with_static_runtimes_CXX" | $SED "$delay_single_quote_subst"`'
18651 export_dynamic_flag_spec_CXX='`$ECHO "$export_dynamic_flag_spec_CXX" | $SED "$delay_single_quote_subst"`'
18652 whole_archive_flag_spec_CXX='`$ECHO "$whole_archive_flag_spec_CXX" | $SED "$delay_single_quote_subst"`'
18653 compiler_needs_object_CXX='`$ECHO "$compiler_needs_object_CXX" | $SED "$delay_single_quote_subst"`'
18654 old_archive_from_new_cmds_CXX='`$ECHO "$old_archive_from_new_cmds_CXX" | $SED "$delay_single_quote_subst"`'
18655 old_archive_from_expsyms_cmds_CXX='`$ECHO "$old_archive_from_expsyms_cmds_CXX" | $SED "$delay_single_quote_subst"`'
18656 archive_cmds_CXX='`$ECHO "$archive_cmds_CXX" | $SED "$delay_single_quote_subst"`'
18657 archive_expsym_cmds_CXX='`$ECHO "$archive_expsym_cmds_CXX" | $SED "$delay_single_quote_subst"`'
18658 module_cmds_CXX='`$ECHO "$module_cmds_CXX" | $SED "$delay_single_quote_subst"`'
18659 module_expsym_cmds_CXX='`$ECHO "$module_expsym_cmds_CXX" | $SED "$delay_single_quote_subst"`'
18660 with_gnu_ld_CXX='`$ECHO "$with_gnu_ld_CXX" | $SED "$delay_single_quote_subst"`'
18661 allow_undefined_flag_CXX='`$ECHO "$allow_undefined_flag_CXX" | $SED "$delay_single_quote_subst"`'
18662 no_undefined_flag_CXX='`$ECHO "$no_undefined_flag_CXX" | $SED "$delay_single_quote_subst"`'
18663 hardcode_libdir_flag_spec_CXX='`$ECHO "$hardcode_libdir_flag_spec_CXX" | $SED "$delay_single_quote_subst"`'
18664 hardcode_libdir_separator_CXX='`$ECHO "$hardcode_libdir_separator_CXX" | $SED "$delay_single_quote_subst"`'
18665 hardcode_direct_CXX='`$ECHO "$hardcode_direct_CXX" | $SED "$delay_single_quote_subst"`'
18666 hardcode_direct_absolute_CXX='`$ECHO "$hardcode_direct_absolute_CXX" | $SED "$delay_single_quote_subst"`'
18667 hardcode_minus_L_CXX='`$ECHO "$hardcode_minus_L_CXX" | $SED "$delay_single_quote_subst"`'
18668 hardcode_shlibpath_var_CXX='`$ECHO "$hardcode_shlibpath_var_CXX" | $SED "$delay_single_quote_subst"`'
18669 hardcode_automatic_CXX='`$ECHO "$hardcode_automatic_CXX" | $SED "$delay_single_quote_subst"`'
18670 inherit_rpath_CXX='`$ECHO "$inherit_rpath_CXX" | $SED "$delay_single_quote_subst"`'
18671 link_all_deplibs_CXX='`$ECHO "$link_all_deplibs_CXX" | $SED "$delay_single_quote_subst"`'
18672 always_export_symbols_CXX='`$ECHO "$always_export_symbols_CXX" | $SED "$delay_single_quote_subst"`'
18673 export_symbols_cmds_CXX='`$ECHO "$export_symbols_cmds_CXX" | $SED "$delay_single_quote_subst"`'
18674 exclude_expsyms_CXX='`$ECHO "$exclude_expsyms_CXX" | $SED "$delay_single_quote_subst"`'
18675 include_expsyms_CXX='`$ECHO "$include_expsyms_CXX" | $SED "$delay_single_quote_subst"`'
18676 prelink_cmds_CXX='`$ECHO "$prelink_cmds_CXX" | $SED "$delay_single_quote_subst"`'
18677 postlink_cmds_CXX='`$ECHO "$postlink_cmds_CXX" | $SED "$delay_single_quote_subst"`'
18678 file_list_spec_CXX='`$ECHO "$file_list_spec_CXX" | $SED "$delay_single_quote_subst"`'
18679 hardcode_action_CXX='`$ECHO "$hardcode_action_CXX" | $SED "$delay_single_quote_subst"`'
18680 compiler_lib_search_dirs_CXX='`$ECHO "$compiler_lib_search_dirs_CXX" | $SED "$delay_single_quote_subst"`'
18681 predep_objects_CXX='`$ECHO "$predep_objects_CXX" | $SED "$delay_single_quote_subst"`'
18682 postdep_objects_CXX='`$ECHO "$postdep_objects_CXX" | $SED "$delay_single_quote_subst"`'
18683 predeps_CXX='`$ECHO "$predeps_CXX" | $SED "$delay_single_quote_subst"`'
18684 postdeps_CXX='`$ECHO "$postdeps_CXX" | $SED "$delay_single_quote_subst"`'
18685 compiler_lib_search_path_CXX='`$ECHO "$compiler_lib_search_path_CXX" | $SED "$delay_single_quote_subst"`'
18686
18687 LTCC='$LTCC'
18688 LTCFLAGS='$LTCFLAGS'
18689 compiler='$compiler_DEFAULT'
18690
18691 # A function that is used when there is no print builtin or printf.
18692 func_fallback_echo ()
18693 {
18694 eval 'cat <<_LTECHO_EOF
18695 \$1
18696 _LTECHO_EOF'
18697 }
18698
18699 # Quote evaled strings.
18700 for var in SHELL \
18701 ECHO \
18702 PATH_SEPARATOR \
18703 SED \
18704 GREP \
18705 EGREP \
18706 FGREP \
18707 LD \
18708 NM \
18709 LN_S \
18710 lt_SP2NL \
18711 lt_NL2SP \
18712 reload_flag \
18713 OBJDUMP \
18714 deplibs_check_method \
18715 file_magic_cmd \
18716 file_magic_glob \
18717 want_nocaseglob \
18718 DLLTOOL \
18719 sharedlib_from_linklib_cmd \
18720 AR \
18721 AR_FLAGS \
18722 archiver_list_spec \
18723 STRIP \
18724 RANLIB \
18725 CC \
18726 CFLAGS \
18727 compiler \
18728 lt_cv_sys_global_symbol_pipe \
18729 lt_cv_sys_global_symbol_to_cdecl \
18730 lt_cv_sys_global_symbol_to_import \
18731 lt_cv_sys_global_symbol_to_c_name_address \
18732 lt_cv_sys_global_symbol_to_c_name_address_lib_prefix \
18733 lt_cv_nm_interface \
18734 nm_file_list_spec \
18735 lt_cv_truncate_bin \
18736 lt_prog_compiler_no_builtin_flag \
18737 lt_prog_compiler_pic \
18738 lt_prog_compiler_wl \
18739 lt_prog_compiler_static \
18740 lt_cv_prog_compiler_c_o \
18741 need_locks \
18742 MANIFEST_TOOL \
18743 DSYMUTIL \
18744 NMEDIT \
18745 LIPO \
18746 OTOOL \
18747 OTOOL64 \
18748 shrext_cmds \
18749 export_dynamic_flag_spec \
18750 whole_archive_flag_spec \
18751 compiler_needs_object \
18752 with_gnu_ld \
18753 allow_undefined_flag \
18754 no_undefined_flag \
18755 hardcode_libdir_flag_spec \
18756 hardcode_libdir_separator \
18757 exclude_expsyms \
18758 include_expsyms \
18759 file_list_spec \
18760 variables_saved_for_relink \
18761 libname_spec \
18762 library_names_spec \
18763 soname_spec \
18764 install_override_mode \
18765 finish_eval \
18766 old_striplib \
18767 striplib \
18768 compiler_lib_search_dirs \
18769 predep_objects \
18770 postdep_objects \
18771 predeps \
18772 postdeps \
18773 compiler_lib_search_path \
18774 LD_CXX \
18775 reload_flag_CXX \
18776 compiler_CXX \
18777 lt_prog_compiler_no_builtin_flag_CXX \
18778 lt_prog_compiler_pic_CXX \
18779 lt_prog_compiler_wl_CXX \
18780 lt_prog_compiler_static_CXX \
18781 lt_cv_prog_compiler_c_o_CXX \
18782 export_dynamic_flag_spec_CXX \
18783 whole_archive_flag_spec_CXX \
18784 compiler_needs_object_CXX \
18785 with_gnu_ld_CXX \
18786 allow_undefined_flag_CXX \
18787 no_undefined_flag_CXX \
18788 hardcode_libdir_flag_spec_CXX \
18789 hardcode_libdir_separator_CXX \
18790 exclude_expsyms_CXX \
18791 include_expsyms_CXX \
18792 file_list_spec_CXX \
18793 compiler_lib_search_dirs_CXX \
18794 predep_objects_CXX \
18795 postdep_objects_CXX \
18796 predeps_CXX \
18797 postdeps_CXX \
18798 compiler_lib_search_path_CXX; do
18799 case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in
18800 *[\\\\\\\`\\"\\\$]*)
18801 eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED \\"\\\$sed_quote_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes
18802 ;;
18803 *)
18804 eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
18805 ;;
18806 esac
18807 done
18808
18809 # Double-quote double-evaled strings.
18810 for var in reload_cmds \
18811 old_postinstall_cmds \
18812 old_postuninstall_cmds \
18813 old_archive_cmds \
18814 extract_expsyms_cmds \
18815 old_archive_from_new_cmds \
18816 old_archive_from_expsyms_cmds \
18817 archive_cmds \
18818 archive_expsym_cmds \
18819 module_cmds \
18820 module_expsym_cmds \
18821 export_symbols_cmds \
18822 prelink_cmds \
18823 postlink_cmds \
18824 postinstall_cmds \
18825 postuninstall_cmds \
18826 finish_cmds \
18827 sys_lib_search_path_spec \
18828 configure_time_dlsearch_path \
18829 configure_time_lt_sys_library_path \
18830 reload_cmds_CXX \
18831 old_archive_cmds_CXX \
18832 old_archive_from_new_cmds_CXX \
18833 old_archive_from_expsyms_cmds_CXX \
18834 archive_cmds_CXX \
18835 archive_expsym_cmds_CXX \
18836 module_cmds_CXX \
18837 module_expsym_cmds_CXX \
18838 export_symbols_cmds_CXX \
18839 prelink_cmds_CXX \
18840 postlink_cmds_CXX; do
18841 case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in
18842 *[\\\\\\\`\\"\\\$]*)
18843 eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes
18844 ;;
18845 *)
18846 eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
18847 ;;
18848 esac
18849 done
18850
18851 ac_aux_dir='$ac_aux_dir'
18852
18853 # See if we are running on zsh, and set the options that allow our
18854 # commands through without removal of \ escapes INIT.
18855 if test -n "\${ZSH_VERSION+set}"; then
18856 setopt NO_GLOB_SUBST
18857 fi
18858
18859
18860 PACKAGE='$PACKAGE'
18861 VERSION='$VERSION'
18862 RM='$RM'
18863 ofile='$ofile'
18864
18865
18866
18867
18868
18869
18870 _ACEOF
18871
18872 cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
18873
18874 # Handling of arguments.
18875 for ac_config_target in $ac_config_targets
18876 do
18877 case $ac_config_target in
18878 "depfiles") CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;;
18879 "libtool") CONFIG_COMMANDS="$CONFIG_COMMANDS libtool" ;;
18880 "config.h") CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;;
18881 "libfaad/Makefile") CONFIG_FILES="$CONFIG_FILES libfaad/Makefile" ;;
18882 "libfaad/faad2.pc") CONFIG_FILES="$CONFIG_FILES libfaad/faad2.pc" ;;
18883 "plugins/Makefile") CONFIG_FILES="$CONFIG_FILES plugins/Makefile" ;;
18884 "plugins/xmms/Makefile") CONFIG_FILES="$CONFIG_FILES plugins/xmms/Makefile" ;;
18885 "plugins/xmms/src/Makefile") CONFIG_FILES="$CONFIG_FILES plugins/xmms/src/Makefile" ;;
18886 "plugins/mpeg4ip/Makefile") CONFIG_FILES="$CONFIG_FILES plugins/mpeg4ip/Makefile" ;;
18887 "faad2.spec") CONFIG_FILES="$CONFIG_FILES faad2.spec" ;;
18888 "frontend/Makefile") CONFIG_FILES="$CONFIG_FILES frontend/Makefile" ;;
18889 "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;;
18890
18891 *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;;
18892 esac
18893 done
18894
18895
18896 # If the user did not use the arguments to specify the items to instantiate,
18897 # then the envvar interface is used. Set only those that are not.
18898 # We use the long form for the default assignment because of an extremely
18899 # bizarre bug on SunOS 4.1.3.
18900 if $ac_need_defaults; then
18901 test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files
18902 test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers
18903 test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands
18904 fi
18905
18906 # Have a temporary directory for convenience. Make it in the build tree
18907 # simply because there is no reason against having it here, and in addition,
18908 # creating and moving files from /tmp can sometimes cause problems.
18909 # Hook for its removal unless debugging.
18910 # Note that there is a small window in which the directory will not be cleaned:
18911 # after its creation but before its name has been assigned to `$tmp'.
18912 $debug ||
18913 {
18914 tmp= ac_tmp=
18915 trap 'exit_status=$?
18916 : "${ac_tmp:=$tmp}"
18917 { test ! -d "$ac_tmp" || rm -fr "$ac_tmp"; } && exit $exit_status
18918 ' 0
18919 trap 'as_fn_exit 1' 1 2 13 15
18920 }
18921 # Create a (secure) tmp directory for tmp files.
18922
18923 {
18924 tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` &&
18925 test -d "$tmp"
18926 } ||
18927 {
18928 tmp=./conf$$-$RANDOM
18929 (umask 077 && mkdir "$tmp")
18930 } || as_fn_error $? "cannot create a temporary directory in ." "$LINENO" 5
18931 ac_tmp=$tmp
18932
18933 # Set up the scripts for CONFIG_FILES section.
18934 # No need to generate them if there are no CONFIG_FILES.
18935 # This happens for instance with `./config.status config.h'.
18936 if test -n "$CONFIG_FILES"; then
18937
18938
18939 ac_cr=`echo X | tr X '\015'`
18940 # On cygwin, bash can eat \r inside `` if the user requested igncr.
18941 # But we know of no other shell where ac_cr would be empty at this
18942 # point, so we can use a bashism as a fallback.
18943 if test "x$ac_cr" = x; then
18944 eval ac_cr=\$\'\\r\'
18945 fi
18946 ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' </dev/null 2>/dev/null`
18947 if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then
18948 ac_cs_awk_cr='\\r'
18949 else
18950 ac_cs_awk_cr=$ac_cr
18951 fi
18952
18953 echo 'BEGIN {' >"$ac_tmp/subs1.awk" &&
18954 _ACEOF
18955
18956
18957 {
18958 echo "cat >conf$$subs.awk <<_ACEOF" &&
18959 echo "$ac_subst_vars" | sed 's/.*/&!$&$ac_delim/' &&
18960 echo "_ACEOF"
18961 } >conf$$subs.sh ||
18962 as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
18963 ac_delim_num=`echo "$ac_subst_vars" | grep -c '^'`
18964 ac_delim='%!_!# '
18965 for ac_last_try in false false false false false :; do
18966 . ./conf$$subs.sh ||
18967 as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
18968
18969 ac_delim_n=`sed -n "s/.*$ac_delim\$/X/p" conf$$subs.awk | grep -c X`
18970 if test $ac_delim_n = $ac_delim_num; then
18971 break
18972 elif $ac_last_try; then
18973 as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
18974 else
18975 ac_delim="$ac_delim!$ac_delim _$ac_delim!! "
18976 fi
18977 done
18978 rm -f conf$$subs.sh
18979
18980 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
18981 cat >>"\$ac_tmp/subs1.awk" <<\\_ACAWK &&
18982 _ACEOF
18983 sed -n '
18984 h
18985 s/^/S["/; s/!.*/"]=/
18986 p
18987 g
18988 s/^[^!]*!//
18989 :repl
18990 t repl
18991 s/'"$ac_delim"'$//
18992 t delim
18993 :nl
18994 h
18995 s/\(.\{148\}\)..*/\1/
18996 t more1
18997 s/["\\]/\\&/g; s/^/"/; s/$/\\n"\\/
18998 p
18999 n
19000 b repl
19001 :more1
19002 s/["\\]/\\&/g; s/^/"/; s/$/"\\/
19003 p
19004 g
19005 s/.\{148\}//
19006 t nl
19007 :delim
19008 h
19009 s/\(.\{148\}\)..*/\1/
19010 t more2
19011 s/["\\]/\\&/g; s/^/"/; s/$/"/
19012 p
19013 b
19014 :more2
19015 s/["\\]/\\&/g; s/^/"/; s/$/"\\/
19016 p
19017 g
19018 s/.\{148\}//
19019 t delim
19020 ' <conf$$subs.awk | sed '
19021 /^[^""]/{
19022 N
19023 s/\n//
19024 }
19025 ' >>$CONFIG_STATUS || ac_write_fail=1
19026 rm -f conf$$subs.awk
19027 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
19028 _ACAWK
19029 cat >>"\$ac_tmp/subs1.awk" <<_ACAWK &&
19030 for (key in S) S_is_set[key] = 1
19031 FS = ""
19032
19033 }
19034 {
19035 line = $ 0
19036 nfields = split(line, field, "@")
19037 substed = 0
19038 len = length(field[1])
19039 for (i = 2; i < nfields; i++) {
19040 key = field[i]
19041 keylen = length(key)
19042 if (S_is_set[key]) {
19043 value = S[key]
19044 line = substr(line, 1, len) "" value "" substr(line, len + keylen + 3)
19045 len += length(value) + length(field[++i])
19046 substed = 1
19047 } else
19048 len += 1 + keylen
19049 }
19050
19051 print line
19052 }
19053
19054 _ACAWK
19055 _ACEOF
19056 cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
19057 if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then
19058 sed "s/$ac_cr\$//; s/$ac_cr/$ac_cs_awk_cr/g"
19059 else
19060 cat
19061 fi < "$ac_tmp/subs1.awk" > "$ac_tmp/subs.awk" \
19062 || as_fn_error $? "could not setup config files machinery" "$LINENO" 5
19063 _ACEOF
19064
19065 # VPATH may cause trouble with some makes, so we remove sole $(srcdir),
19066 # ${srcdir} and @srcdir@ entries from VPATH if srcdir is ".", strip leading and
19067 # trailing colons and then remove the whole line if VPATH becomes empty
19068 # (actually we leave an empty line to preserve line numbers).
19069 if test "x$srcdir" = x.; then
19070 ac_vpsub='/^[ ]*VPATH[ ]*=[ ]*/{
19071 h
19072 s///
19073 s/^/:/
19074 s/[ ]*$/:/
19075 s/:\$(srcdir):/:/g
19076 s/:\${srcdir}:/:/g
19077 s/:@srcdir@:/:/g
19078 s/^:*//
19079 s/:*$//
19080 x
19081 s/\(=[ ]*\).*/\1/
19082 G
19083 s/\n//
19084 s/^[^=]*=[ ]*$//
19085 }'
19086 fi
19087
19088 cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
19089 fi # test -n "$CONFIG_FILES"
19090
19091 # Set up the scripts for CONFIG_HEADERS section.
19092 # No need to generate them if there are no CONFIG_HEADERS.
19093 # This happens for instance with `./config.status Makefile'.
19094 if test -n "$CONFIG_HEADERS"; then
19095 cat >"$ac_tmp/defines.awk" <<\_ACAWK ||
19096 BEGIN {
19097 _ACEOF
19098
19099 # Transform confdefs.h into an awk script `defines.awk', embedded as
19100 # here-document in config.status, that substitutes the proper values into
19101 # config.h.in to produce config.h.
19102
19103 # Create a delimiter string that does not exist in confdefs.h, to ease
19104 # handling of long lines.
19105 ac_delim='%!_!# '
19106 for ac_last_try in false false :; do
19107 ac_tt=`sed -n "/$ac_delim/p" confdefs.h`
19108 if test -z "$ac_tt"; then
19109 break
19110 elif $ac_last_try; then
19111 as_fn_error $? "could not make $CONFIG_HEADERS" "$LINENO" 5
19112 else
19113 ac_delim="$ac_delim!$ac_delim _$ac_delim!! "
19114 fi
19115 done
19116
19117 # For the awk script, D is an array of macro values keyed by name,
19118 # likewise P contains macro parameters if any. Preserve backslash
19119 # newline sequences.
19120
19121 ac_word_re=[_$as_cr_Letters][_$as_cr_alnum]*
19122 sed -n '
19123 s/.\{148\}/&'"$ac_delim"'/g
19124 t rset
19125 :rset
19126 s/^[ ]*#[ ]*define[ ][ ]*/ /
19127 t def
19128 d
19129 :def
19130 s/\\$//
19131 t bsnl
19132 s/["\\]/\\&/g
19133 s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\
19134 D["\1"]=" \3"/p
19135 s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2"/p
19136 d
19137 :bsnl
19138 s/["\\]/\\&/g
19139 s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\
19140 D["\1"]=" \3\\\\\\n"\\/p
19141 t cont
19142 s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2\\\\\\n"\\/p
19143 t cont
19144 d
19145 :cont
19146 n
19147 s/.\{148\}/&'"$ac_delim"'/g
19148 t clear
19149 :clear
19150 s/\\$//
19151 t bsnlc
19152 s/["\\]/\\&/g; s/^/"/; s/$/"/p
19153 d
19154 :bsnlc
19155 s/["\\]/\\&/g; s/^/"/; s/$/\\\\\\n"\\/p
19156 b cont
19157 ' <confdefs.h | sed '
19158 s/'"$ac_delim"'/"\\\
19159 "/g' >>$CONFIG_STATUS || ac_write_fail=1
19160
19161 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
19162 for (key in D) D_is_set[key] = 1
19163 FS = ""
19164 }
19165 /^[\t ]*#[\t ]*(define|undef)[\t ]+$ac_word_re([\t (]|\$)/ {
19166 line = \$ 0
19167 split(line, arg, " ")
19168 if (arg[1] == "#") {
19169 defundef = arg[2]
19170 mac1 = arg[3]
19171 } else {
19172 defundef = substr(arg[1], 2)
19173 mac1 = arg[2]
19174 }
19175 split(mac1, mac2, "(") #)
19176 macro = mac2[1]
19177 prefix = substr(line, 1, index(line, defundef) - 1)
19178 if (D_is_set[macro]) {
19179 # Preserve the white space surrounding the "#".
19180 print prefix "define", macro P[macro] D[macro]
19181 next
19182 } else {
19183 # Replace #undef with comments. This is necessary, for example,
19184 # in the case of _POSIX_SOURCE, which is predefined and required
19185 # on some systems where configure will not decide to define it.
19186 if (defundef == "undef") {
19187 print "/*", prefix defundef, macro, "*/"
19188 next
19189 }
19190 }
19191 }
19192 { print }
19193 _ACAWK
19194 _ACEOF
19195 cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
19196 as_fn_error $? "could not setup config headers machinery" "$LINENO" 5
19197 fi # test -n "$CONFIG_HEADERS"
19198
19199
19200 eval set X " :F $CONFIG_FILES :H $CONFIG_HEADERS :C $CONFIG_COMMANDS"
19201 shift
19202 for ac_tag
19203 do
19204 case $ac_tag in
19205 :[FHLC]) ac_mode=$ac_tag; continue;;
19206 esac
19207 case $ac_mode$ac_tag in
19208 :[FHL]*:*);;
19209 :L* | :C*:*) as_fn_error $? "invalid tag \`$ac_tag'" "$LINENO" 5;;
19210 :[FH]-) ac_tag=-:-;;
19211 :[FH]*) ac_tag=$ac_tag:$ac_tag.in;;
19212 esac
19213 ac_save_IFS=$IFS
19214 IFS=:
19215 set x $ac_tag
19216 IFS=$ac_save_IFS
19217 shift
19218 ac_file=$1
19219 shift
19220
19221 case $ac_mode in
19222 :L) ac_source=$1;;
19223 :[FH])
19224 ac_file_inputs=
19225 for ac_f
19226 do
19227 case $ac_f in
19228 -) ac_f="$ac_tmp/stdin";;
19229 *) # Look for the file first in the build tree, then in the source tree
19230 # (if the path is not absolute). The absolute path cannot be DOS-style,
19231 # because $ac_f cannot contain `:'.
19232 test -f "$ac_f" ||
19233 case $ac_f in
19234 [\\/$]*) false;;
19235 *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";;
19236 esac ||
19237 as_fn_error 1 "cannot find input file: \`$ac_f'" "$LINENO" 5;;
19238 esac
19239 case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac
19240 as_fn_append ac_file_inputs " '$ac_f'"
19241 done
19242
19243 # Let's still pretend it is `configure' which instantiates (i.e., don't
19244 # use $as_me), people would be surprised to read:
19245 # /* config.h. Generated by config.status. */
19246 configure_input='Generated from '`
19247 $as_echo "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g'
19248 `' by configure.'
19249 if test x"$ac_file" != x-; then
19250 configure_input="$ac_file. $configure_input"
19251 { $as_echo "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5
19252 $as_echo "$as_me: creating $ac_file" >&6;}
19253 fi
19254 # Neutralize special characters interpreted by sed in replacement strings.
19255 case $configure_input in #(
19256 *\&* | *\|* | *\\* )
19257 ac_sed_conf_input=`$as_echo "$configure_input" |
19258 sed 's/[\\\\&|]/\\\\&/g'`;; #(
19259 *) ac_sed_conf_input=$configure_input;;
19260 esac
19261
19262 case $ac_tag in
19263 *:-:* | *:-) cat >"$ac_tmp/stdin" \
19264 || as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;;
19265 esac
19266 ;;
19267 esac
19268
19269 ac_dir=`$as_dirname -- "$ac_file" ||
19270 $as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
19271 X"$ac_file" : 'X\(//\)[^/]' \| \
19272 X"$ac_file" : 'X\(//\)$' \| \
19273 X"$ac_file" : 'X\(/\)' \| . 2>/dev/null ||
19274 $as_echo X"$ac_file" |
19275 sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
19276 s//\1/
19277 q
19278 }
19279 /^X\(\/\/\)[^/].*/{
19280 s//\1/
19281 q
19282 }
19283 /^X\(\/\/\)$/{
19284 s//\1/
19285 q
19286 }
19287 /^X\(\/\).*/{
19288 s//\1/
19289 q
19290 }
19291 s/.*/./; q'`
19292 as_dir="$ac_dir"; as_fn_mkdir_p
19293 ac_builddir=.
19294
19295 case "$ac_dir" in
19296 .) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;
19297 *)
19298 ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'`
19299 # A ".." for each directory in $ac_dir_suffix.
19300 ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'`
19301 case $ac_top_builddir_sub in
19302 "") ac_top_builddir_sub=. ac_top_build_prefix= ;;
19303 *) ac_top_build_prefix=$ac_top_builddir_sub/ ;;
19304 esac ;;
19305 esac
19306 ac_abs_top_builddir=$ac_pwd
19307 ac_abs_builddir=$ac_pwd$ac_dir_suffix
19308 # for backward compatibility:
19309 ac_top_builddir=$ac_top_build_prefix
19310
19311 case $srcdir in
19312 .) # We are building in place.
19313 ac_srcdir=.
19314 ac_top_srcdir=$ac_top_builddir_sub
19315 ac_abs_top_srcdir=$ac_pwd ;;
19316 [\\/]* | ?:[\\/]* ) # Absolute name.
19317 ac_srcdir=$srcdir$ac_dir_suffix;
19318 ac_top_srcdir=$srcdir
19319 ac_abs_top_srcdir=$srcdir ;;
19320 *) # Relative name.
19321 ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix
19322 ac_top_srcdir=$ac_top_build_prefix$srcdir
19323 ac_abs_top_srcdir=$ac_pwd/$srcdir ;;
19324 esac
19325 ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix
19326
19327
19328 case $ac_mode in
19329 :F)
19330 #
19331 # CONFIG_FILE
19332 #
19333
19334 case $INSTALL in
19335 [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;;
19336 *) ac_INSTALL=$ac_top_build_prefix$INSTALL ;;
19337 esac
19338 ac_MKDIR_P=$MKDIR_P
19339 case $MKDIR_P in
19340 [\\/$]* | ?:[\\/]* ) ;;
19341 */*) ac_MKDIR_P=$ac_top_build_prefix$MKDIR_P ;;
19342 esac
19343 _ACEOF
19344
19345 cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
19346 # If the template does not know about datarootdir, expand it.
19347 # FIXME: This hack should be removed a few years after 2.60.
19348 ac_datarootdir_hack=; ac_datarootdir_seen=
19349 ac_sed_dataroot='
19350 /datarootdir/ {
19351 p
19352 q
19353 }
19354 /@datadir@/p
19355 /@docdir@/p
19356 /@infodir@/p
19357 /@localedir@/p
19358 /@mandir@/p'
19359 case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in
19360 *datarootdir*) ac_datarootdir_seen=yes;;
19361 *@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*)
19362 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5
19363 $as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;}
19364 _ACEOF
19365 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
19366 ac_datarootdir_hack='
19367 s&@datadir@&$datadir&g
19368 s&@docdir@&$docdir&g
19369 s&@infodir@&$infodir&g
19370 s&@localedir@&$localedir&g
19371 s&@mandir@&$mandir&g
19372 s&\\\${datarootdir}&$datarootdir&g' ;;
19373 esac
19374 _ACEOF
19375
19376 # Neutralize VPATH when `$srcdir' = `.'.
19377 # Shell code in configure.ac might set extrasub.
19378 # FIXME: do we really want to maintain this feature?
19379 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
19380 ac_sed_extra="$ac_vpsub
19381 $extrasub
19382 _ACEOF
19383 cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
19384 :t
19385 /@[a-zA-Z_][a-zA-Z_0-9]*@/!b
19386 s|@configure_input@|$ac_sed_conf_input|;t t
19387 s&@top_builddir@&$ac_top_builddir_sub&;t t
19388 s&@top_build_prefix@&$ac_top_build_prefix&;t t
19389 s&@srcdir@&$ac_srcdir&;t t
19390 s&@abs_srcdir@&$ac_abs_srcdir&;t t
19391 s&@top_srcdir@&$ac_top_srcdir&;t t
19392 s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t
19393 s&@builddir@&$ac_builddir&;t t
19394 s&@abs_builddir@&$ac_abs_builddir&;t t
19395 s&@abs_top_builddir@&$ac_abs_top_builddir&;t t
19396 s&@INSTALL@&$ac_INSTALL&;t t
19397 s&@MKDIR_P@&$ac_MKDIR_P&;t t
19398 $ac_datarootdir_hack
19399 "
19400 eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$ac_tmp/subs.awk" \
19401 >$ac_tmp/out || as_fn_error $? "could not create $ac_file" "$LINENO" 5
19402
19403 test -z "$ac_datarootdir_hack$ac_datarootdir_seen" &&
19404 { ac_out=`sed -n '/\${datarootdir}/p' "$ac_tmp/out"`; test -n "$ac_out"; } &&
19405 { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' \
19406 "$ac_tmp/out"`; test -z "$ac_out"; } &&
19407 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir'
19408 which seems to be undefined. Please make sure it is defined" >&5
19409 $as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir'
19410 which seems to be undefined. Please make sure it is defined" >&2;}
19411
19412 rm -f "$ac_tmp/stdin"
19413 case $ac_file in
19414 -) cat "$ac_tmp/out" && rm -f "$ac_tmp/out";;
19415 *) rm -f "$ac_file" && mv "$ac_tmp/out" "$ac_file";;
19416 esac \
19417 || as_fn_error $? "could not create $ac_file" "$LINENO" 5
19418 ;;
19419 :H)
19420 #
19421 # CONFIG_HEADER
19422 #
19423 if test x"$ac_file" != x-; then
19424 {
19425 $as_echo "/* $configure_input */" \
19426 && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs"
19427 } >"$ac_tmp/config.h" \
19428 || as_fn_error $? "could not create $ac_file" "$LINENO" 5
19429 if diff "$ac_file" "$ac_tmp/config.h" >/dev/null 2>&1; then
19430 { $as_echo "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5
19431 $as_echo "$as_me: $ac_file is unchanged" >&6;}
19432 else
19433 rm -f "$ac_file"
19434 mv "$ac_tmp/config.h" "$ac_file" \
19435 || as_fn_error $? "could not create $ac_file" "$LINENO" 5
19436 fi
19437 else
19438 $as_echo "/* $configure_input */" \
19439 && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" \
19440 || as_fn_error $? "could not create -" "$LINENO" 5
19441 fi
19442 # Compute "$ac_file"'s index in $config_headers.
19443 _am_arg="$ac_file"
19444 _am_stamp_count=1
19445 for _am_header in $config_headers :; do
19446 case $_am_header in
19447 $_am_arg | $_am_arg:* )
19448 break ;;
19449 * )
19450 _am_stamp_count=`expr $_am_stamp_count + 1` ;;
19451 esac
19452 done
19453 echo "timestamp for $_am_arg" >`$as_dirname -- "$_am_arg" ||
19454 $as_expr X"$_am_arg" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
19455 X"$_am_arg" : 'X\(//\)[^/]' \| \
19456 X"$_am_arg" : 'X\(//\)$' \| \
19457 X"$_am_arg" : 'X\(/\)' \| . 2>/dev/null ||
19458 $as_echo X"$_am_arg" |
19459 sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
19460 s//\1/
19461 q
19462 }
19463 /^X\(\/\/\)[^/].*/{
19464 s//\1/
19465 q
19466 }
19467 /^X\(\/\/\)$/{
19468 s//\1/
19469 q
19470 }
19471 /^X\(\/\).*/{
19472 s//\1/
19473 q
19474 }
19475 s/.*/./; q'`/stamp-h$_am_stamp_count
19476 ;;
19477
19478 :C) { $as_echo "$as_me:${as_lineno-$LINENO}: executing $ac_file commands" >&5
19479 $as_echo "$as_me: executing $ac_file commands" >&6;}
19480 ;;
19481 esac
19482
19483
19484 case $ac_file$ac_mode in
19485 "depfiles":C) test x"$AMDEP_TRUE" != x"" || {
19486 # Older Autoconf quotes --file arguments for eval, but not when files
19487 # are listed without --file. Let's play safe and only enable the eval
19488 # if we detect the quoting.
19489 # TODO: see whether this extra hack can be removed once we start
19490 # requiring Autoconf 2.70 or later.
19491 case $CONFIG_FILES in #(
19492 *\'*) :
19493 eval set x "$CONFIG_FILES" ;; #(
19494 *) :
19495 set x $CONFIG_FILES ;; #(
19496 *) :
19497 ;;
19498 esac
19499 shift
19500 # Used to flag and report bootstrapping failures.
19501 am_rc=0
19502 for am_mf
19503 do
19504 # Strip MF so we end up with the name of the file.
19505 am_mf=`$as_echo "$am_mf" | sed -e 's/:.*$//'`
19506 # Check whether this is an Automake generated Makefile which includes
19507 # dependency-tracking related rules and includes.
19508 # Grep'ing the whole file directly is not great: AIX grep has a line
19509 # limit of 2048, but all sed's we know have understand at least 4000.
19510 sed -n 's,^am--depfiles:.*,X,p' "$am_mf" | grep X >/dev/null 2>&1 \
19511 || continue
19512 am_dirpart=`$as_dirname -- "$am_mf" ||
19513 $as_expr X"$am_mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
19514 X"$am_mf" : 'X\(//\)[^/]' \| \
19515 X"$am_mf" : 'X\(//\)$' \| \
19516 X"$am_mf" : 'X\(/\)' \| . 2>/dev/null ||
19517 $as_echo X"$am_mf" |
19518 sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
19519 s//\1/
19520 q
19521 }
19522 /^X\(\/\/\)[^/].*/{
19523 s//\1/
19524 q
19525 }
19526 /^X\(\/\/\)$/{
19527 s//\1/
19528 q
19529 }
19530 /^X\(\/\).*/{
19531 s//\1/
19532 q
19533 }
19534 s/.*/./; q'`
19535 am_filepart=`$as_basename -- "$am_mf" ||
19536 $as_expr X/"$am_mf" : '.*/\([^/][^/]*\)/*$' \| \
19537 X"$am_mf" : 'X\(//\)$' \| \
19538 X"$am_mf" : 'X\(/\)' \| . 2>/dev/null ||
19539 $as_echo X/"$am_mf" |
19540 sed '/^.*\/\([^/][^/]*\)\/*$/{
19541 s//\1/
19542 q
19543 }
19544 /^X\/\(\/\/\)$/{
19545 s//\1/
19546 q
19547 }
19548 /^X\/\(\/\).*/{
19549 s//\1/
19550 q
19551 }
19552 s/.*/./; q'`
19553 { echo "$as_me:$LINENO: cd "$am_dirpart" \
19554 && sed -e '/# am--include-marker/d' "$am_filepart" \
19555 | $MAKE -f - am--depfiles" >&5
19556 (cd "$am_dirpart" \
19557 && sed -e '/# am--include-marker/d' "$am_filepart" \
19558 | $MAKE -f - am--depfiles) >&5 2>&5
19559 ac_status=$?
19560 echo "$as_me:$LINENO: \$? = $ac_status" >&5
19561 (exit $ac_status); } || am_rc=$?
19562 done
19563 if test $am_rc -ne 0; then
19564 { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
19565 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
19566 as_fn_error $? "Something went wrong bootstrapping makefile fragments
19567 for automatic dependency tracking. If GNU make was not used, consider
19568 re-running the configure script with MAKE=\"gmake\" (or whatever is
19569 necessary). You can also try re-running configure with the
19570 '--disable-dependency-tracking' option to at least be able to build
19571 the package (albeit without support for automatic dependency tracking).
19572 See \`config.log' for more details" "$LINENO" 5; }
19573 fi
19574 { am_dirpart=; unset am_dirpart;}
19575 { am_filepart=; unset am_filepart;}
19576 { am_mf=; unset am_mf;}
19577 { am_rc=; unset am_rc;}
19578 rm -f conftest-deps.mk
19579 }
19580 ;;
19581 "libtool":C)
19582
19583 # See if we are running on zsh, and set the options that allow our
19584 # commands through without removal of \ escapes.
19585 if test -n "${ZSH_VERSION+set}"; then
19586 setopt NO_GLOB_SUBST
19587 fi
19588
19589 cfgfile=${ofile}T
19590 trap "$RM \"$cfgfile\"; exit 1" 1 2 15
19591 $RM "$cfgfile"
19592
19593 cat <<_LT_EOF >> "$cfgfile"
19594 #! $SHELL
19595 # Generated automatically by $as_me ($PACKAGE) $VERSION
19596 # NOTE: Changes made to this file will be lost: look at ltmain.sh.
19597
19598 # Provide generalized library-building support services.
19599 # Written by Gordon Matzigkeit, 1996
19600
19601 # Copyright (C) 2014 Free Software Foundation, Inc.
19602 # This is free software; see the source for copying conditions. There is NO
19603 # warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
19604
19605 # GNU Libtool is free software; you can redistribute it and/or modify
19606 # it under the terms of the GNU General Public License as published by
19607 # the Free Software Foundation; either version 2 of of the License, or
19608 # (at your option) any later version.
19609 #
19610 # As a special exception to the GNU General Public License, if you
19611 # distribute this file as part of a program or library that is built
19612 # using GNU Libtool, you may include this file under the same
19613 # distribution terms that you use for the rest of that program.
19614 #
19615 # GNU Libtool is distributed in the hope that it will be useful, but
19616 # WITHOUT ANY WARRANTY; without even the implied warranty of
19617 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19618 # GNU General Public License for more details.
19619 #
19620 # You should have received a copy of the GNU General Public License
19621 # along with this program. If not, see <http://www.gnu.org/licenses/>.
19622
19623
19624 # The names of the tagged configurations supported by this script.
19625 available_tags='CXX '
19626
19627 # Configured defaults for sys_lib_dlsearch_path munging.
19628 : \${LT_SYS_LIBRARY_PATH="$configure_time_lt_sys_library_path"}
19629
19630 # ### BEGIN LIBTOOL CONFIG
19631
19632 # Which release of libtool.m4 was used?
19633 macro_version=$macro_version
19634 macro_revision=$macro_revision
19635
19636 # Whether or not to build shared libraries.
19637 build_libtool_libs=$enable_shared
19638
19639 # Whether or not to build static libraries.
19640 build_old_libs=$enable_static
19641
19642 # What type of objects to build.
19643 pic_mode=$pic_mode
19644
19645 # Whether or not to optimize for fast installation.
19646 fast_install=$enable_fast_install
19647
19648 # Shared archive member basename,for filename based shared library versioning on AIX.
19649 shared_archive_member_spec=$shared_archive_member_spec
19650
19651 # Shell to use when invoking shell scripts.
19652 SHELL=$lt_SHELL
19653
19654 # An echo program that protects backslashes.
19655 ECHO=$lt_ECHO
19656
19657 # The PATH separator for the build system.
19658 PATH_SEPARATOR=$lt_PATH_SEPARATOR
19659
19660 # The host system.
19661 host_alias=$host_alias
19662 host=$host
19663 host_os=$host_os
19664
19665 # The build system.
19666 build_alias=$build_alias
19667 build=$build
19668 build_os=$build_os
19669
19670 # A sed program that does not truncate output.
19671 SED=$lt_SED
19672
19673 # Sed that helps us avoid accidentally triggering echo(1) options like -n.
19674 Xsed="\$SED -e 1s/^X//"
19675
19676 # A grep program that handles long lines.
19677 GREP=$lt_GREP
19678
19679 # An ERE matcher.
19680 EGREP=$lt_EGREP
19681
19682 # A literal string matcher.
19683 FGREP=$lt_FGREP
19684
19685 # A BSD- or MS-compatible name lister.
19686 NM=$lt_NM
19687
19688 # Whether we need soft or hard links.
19689 LN_S=$lt_LN_S
19690
19691 # What is the maximum length of a command?
19692 max_cmd_len=$max_cmd_len
19693
19694 # Object file suffix (normally "o").
19695 objext=$ac_objext
19696
19697 # Executable file suffix (normally "").
19698 exeext=$exeext
19699
19700 # whether the shell understands "unset".
19701 lt_unset=$lt_unset
19702
19703 # turn spaces into newlines.
19704 SP2NL=$lt_lt_SP2NL
19705
19706 # turn newlines into spaces.
19707 NL2SP=$lt_lt_NL2SP
19708
19709 # convert \$build file names to \$host format.
19710 to_host_file_cmd=$lt_cv_to_host_file_cmd
19711
19712 # convert \$build files to toolchain format.
19713 to_tool_file_cmd=$lt_cv_to_tool_file_cmd
19714
19715 # An object symbol dumper.
19716 OBJDUMP=$lt_OBJDUMP
19717
19718 # Method to check whether dependent libraries are shared objects.
19719 deplibs_check_method=$lt_deplibs_check_method
19720
19721 # Command to use when deplibs_check_method = "file_magic".
19722 file_magic_cmd=$lt_file_magic_cmd
19723
19724 # How to find potential files when deplibs_check_method = "file_magic".
19725 file_magic_glob=$lt_file_magic_glob
19726
19727 # Find potential files using nocaseglob when deplibs_check_method = "file_magic".
19728 want_nocaseglob=$lt_want_nocaseglob
19729
19730 # DLL creation program.
19731 DLLTOOL=$lt_DLLTOOL
19732
19733 # Command to associate shared and link libraries.
19734 sharedlib_from_linklib_cmd=$lt_sharedlib_from_linklib_cmd
19735
19736 # The archiver.
19737 AR=$lt_AR
19738
19739 # Flags to create an archive.
19740 AR_FLAGS=$lt_AR_FLAGS
19741
19742 # How to feed a file listing to the archiver.
19743 archiver_list_spec=$lt_archiver_list_spec
19744
19745 # A symbol stripping program.
19746 STRIP=$lt_STRIP
19747
19748 # Commands used to install an old-style archive.
19749 RANLIB=$lt_RANLIB
19750 old_postinstall_cmds=$lt_old_postinstall_cmds
19751 old_postuninstall_cmds=$lt_old_postuninstall_cmds
19752
19753 # Whether to use a lock for old archive extraction.
19754 lock_old_archive_extraction=$lock_old_archive_extraction
19755
19756 # A C compiler.
19757 LTCC=$lt_CC
19758
19759 # LTCC compiler flags.
19760 LTCFLAGS=$lt_CFLAGS
19761
19762 # Take the output of nm and produce a listing of raw symbols and C names.
19763 global_symbol_pipe=$lt_lt_cv_sys_global_symbol_pipe
19764
19765 # Transform the output of nm in a proper C declaration.
19766 global_symbol_to_cdecl=$lt_lt_cv_sys_global_symbol_to_cdecl
19767
19768 # Transform the output of nm into a list of symbols to manually relocate.
19769 global_symbol_to_import=$lt_lt_cv_sys_global_symbol_to_import
19770
19771 # Transform the output of nm in a C name address pair.
19772 global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address
19773
19774 # Transform the output of nm in a C name address pair when lib prefix is needed.
19775 global_symbol_to_c_name_address_lib_prefix=$lt_lt_cv_sys_global_symbol_to_c_name_address_lib_prefix
19776
19777 # The name lister interface.
19778 nm_interface=$lt_lt_cv_nm_interface
19779
19780 # Specify filename containing input files for \$NM.
19781 nm_file_list_spec=$lt_nm_file_list_spec
19782
19783 # The root where to search for dependent libraries,and where our libraries should be installed.
19784 lt_sysroot=$lt_sysroot
19785
19786 # Command to truncate a binary pipe.
19787 lt_truncate_bin=$lt_lt_cv_truncate_bin
19788
19789 # The name of the directory that contains temporary libtool files.
19790 objdir=$objdir
19791
19792 # Used to examine libraries when file_magic_cmd begins with "file".
19793 MAGIC_CMD=$MAGIC_CMD
19794
19795 # Must we lock files when doing compilation?
19796 need_locks=$lt_need_locks
19797
19798 # Manifest tool.
19799 MANIFEST_TOOL=$lt_MANIFEST_TOOL
19800
19801 # Tool to manipulate archived DWARF debug symbol files on Mac OS X.
19802 DSYMUTIL=$lt_DSYMUTIL
19803
19804 # Tool to change global to local symbols on Mac OS X.
19805 NMEDIT=$lt_NMEDIT
19806
19807 # Tool to manipulate fat objects and archives on Mac OS X.
19808 LIPO=$lt_LIPO
19809
19810 # ldd/readelf like tool for Mach-O binaries on Mac OS X.
19811 OTOOL=$lt_OTOOL
19812
19813 # ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4.
19814 OTOOL64=$lt_OTOOL64
19815
19816 # Old archive suffix (normally "a").
19817 libext=$libext
19818
19819 # Shared library suffix (normally ".so").
19820 shrext_cmds=$lt_shrext_cmds
19821
19822 # The commands to extract the exported symbol list from a shared archive.
19823 extract_expsyms_cmds=$lt_extract_expsyms_cmds
19824
19825 # Variables whose values should be saved in libtool wrapper scripts and
19826 # restored at link time.
19827 variables_saved_for_relink=$lt_variables_saved_for_relink
19828
19829 # Do we need the "lib" prefix for modules?
19830 need_lib_prefix=$need_lib_prefix
19831
19832 # Do we need a version for libraries?
19833 need_version=$need_version
19834
19835 # Library versioning type.
19836 version_type=$version_type
19837
19838 # Shared library runtime path variable.
19839 runpath_var=$runpath_var
19840
19841 # Shared library path variable.
19842 shlibpath_var=$shlibpath_var
19843
19844 # Is shlibpath searched before the hard-coded library search path?
19845 shlibpath_overrides_runpath=$shlibpath_overrides_runpath
19846
19847 # Format of library name prefix.
19848 libname_spec=$lt_libname_spec
19849
19850 # List of archive names. First name is the real one, the rest are links.
19851 # The last name is the one that the linker finds with -lNAME
19852 library_names_spec=$lt_library_names_spec
19853
19854 # The coded name of the library, if different from the real name.
19855 soname_spec=$lt_soname_spec
19856
19857 # Permission mode override for installation of shared libraries.
19858 install_override_mode=$lt_install_override_mode
19859
19860 # Command to use after installation of a shared archive.
19861 postinstall_cmds=$lt_postinstall_cmds
19862
19863 # Command to use after uninstallation of a shared archive.
19864 postuninstall_cmds=$lt_postuninstall_cmds
19865
19866 # Commands used to finish a libtool library installation in a directory.
19867 finish_cmds=$lt_finish_cmds
19868
19869 # As "finish_cmds", except a single script fragment to be evaled but
19870 # not shown.
19871 finish_eval=$lt_finish_eval
19872
19873 # Whether we should hardcode library paths into libraries.
19874 hardcode_into_libs=$hardcode_into_libs
19875
19876 # Compile-time system search path for libraries.
19877 sys_lib_search_path_spec=$lt_sys_lib_search_path_spec
19878
19879 # Detected run-time system search path for libraries.
19880 sys_lib_dlsearch_path_spec=$lt_configure_time_dlsearch_path
19881
19882 # Explicit LT_SYS_LIBRARY_PATH set during ./configure time.
19883 configure_time_lt_sys_library_path=$lt_configure_time_lt_sys_library_path
19884
19885 # Whether dlopen is supported.
19886 dlopen_support=$enable_dlopen
19887
19888 # Whether dlopen of programs is supported.
19889 dlopen_self=$enable_dlopen_self
19890
19891 # Whether dlopen of statically linked programs is supported.
19892 dlopen_self_static=$enable_dlopen_self_static
19893
19894 # Commands to strip libraries.
19895 old_striplib=$lt_old_striplib
19896 striplib=$lt_striplib
19897
19898
19899 # The linker used to build libraries.
19900 LD=$lt_LD
19901
19902 # How to create reloadable object files.
19903 reload_flag=$lt_reload_flag
19904 reload_cmds=$lt_reload_cmds
19905
19906 # Commands used to build an old-style archive.
19907 old_archive_cmds=$lt_old_archive_cmds
19908
19909 # A language specific compiler.
19910 CC=$lt_compiler
19911
19912 # Is the compiler the GNU compiler?
19913 with_gcc=$GCC
19914
19915 # Compiler flag to turn off builtin functions.
19916 no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag
19917
19918 # Additional compiler flags for building library objects.
19919 pic_flag=$lt_lt_prog_compiler_pic
19920
19921 # How to pass a linker flag through the compiler.
19922 wl=$lt_lt_prog_compiler_wl
19923
19924 # Compiler flag to prevent dynamic linking.
19925 link_static_flag=$lt_lt_prog_compiler_static
19926
19927 # Does compiler simultaneously support -c and -o options?
19928 compiler_c_o=$lt_lt_cv_prog_compiler_c_o
19929
19930 # Whether or not to add -lc for building shared libraries.
19931 build_libtool_need_lc=$archive_cmds_need_lc
19932
19933 # Whether or not to disallow shared libs when runtime libs are static.
19934 allow_libtool_libs_with_static_runtimes=$enable_shared_with_static_runtimes
19935
19936 # Compiler flag to allow reflexive dlopens.
19937 export_dynamic_flag_spec=$lt_export_dynamic_flag_spec
19938
19939 # Compiler flag to generate shared objects directly from archives.
19940 whole_archive_flag_spec=$lt_whole_archive_flag_spec
19941
19942 # Whether the compiler copes with passing no objects directly.
19943 compiler_needs_object=$lt_compiler_needs_object
19944
19945 # Create an old-style archive from a shared archive.
19946 old_archive_from_new_cmds=$lt_old_archive_from_new_cmds
19947
19948 # Create a temporary old-style archive to link instead of a shared archive.
19949 old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds
19950
19951 # Commands used to build a shared archive.
19952 archive_cmds=$lt_archive_cmds
19953 archive_expsym_cmds=$lt_archive_expsym_cmds
19954
19955 # Commands used to build a loadable module if different from building
19956 # a shared archive.
19957 module_cmds=$lt_module_cmds
19958 module_expsym_cmds=$lt_module_expsym_cmds
19959
19960 # Whether we are building with GNU ld or not.
19961 with_gnu_ld=$lt_with_gnu_ld
19962
19963 # Flag that allows shared libraries with undefined symbols to be built.
19964 allow_undefined_flag=$lt_allow_undefined_flag
19965
19966 # Flag that enforces no undefined symbols.
19967 no_undefined_flag=$lt_no_undefined_flag
19968
19969 # Flag to hardcode \$libdir into a binary during linking.
19970 # This must work even if \$libdir does not exist
19971 hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec
19972
19973 # Whether we need a single "-rpath" flag with a separated argument.
19974 hardcode_libdir_separator=$lt_hardcode_libdir_separator
19975
19976 # Set to "yes" if using DIR/libNAME\$shared_ext during linking hardcodes
19977 # DIR into the resulting binary.
19978 hardcode_direct=$hardcode_direct
19979
19980 # Set to "yes" if using DIR/libNAME\$shared_ext during linking hardcodes
19981 # DIR into the resulting binary and the resulting library dependency is
19982 # "absolute",i.e impossible to change by setting \$shlibpath_var if the
19983 # library is relocated.
19984 hardcode_direct_absolute=$hardcode_direct_absolute
19985
19986 # Set to "yes" if using the -LDIR flag during linking hardcodes DIR
19987 # into the resulting binary.
19988 hardcode_minus_L=$hardcode_minus_L
19989
19990 # Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR
19991 # into the resulting binary.
19992 hardcode_shlibpath_var=$hardcode_shlibpath_var
19993
19994 # Set to "yes" if building a shared library automatically hardcodes DIR
19995 # into the library and all subsequent libraries and executables linked
19996 # against it.
19997 hardcode_automatic=$hardcode_automatic
19998
19999 # Set to yes if linker adds runtime paths of dependent libraries
20000 # to runtime path list.
20001 inherit_rpath=$inherit_rpath
20002
20003 # Whether libtool must link a program against all its dependency libraries.
20004 link_all_deplibs=$link_all_deplibs
20005
20006 # Set to "yes" if exported symbols are required.
20007 always_export_symbols=$always_export_symbols
20008
20009 # The commands to list exported symbols.
20010 export_symbols_cmds=$lt_export_symbols_cmds
20011
20012 # Symbols that should not be listed in the preloaded symbols.
20013 exclude_expsyms=$lt_exclude_expsyms
20014
20015 # Symbols that must always be exported.
20016 include_expsyms=$lt_include_expsyms
20017
20018 # Commands necessary for linking programs (against libraries) with templates.
20019 prelink_cmds=$lt_prelink_cmds
20020
20021 # Commands necessary for finishing linking programs.
20022 postlink_cmds=$lt_postlink_cmds
20023
20024 # Specify filename containing input files.
20025 file_list_spec=$lt_file_list_spec
20026
20027 # How to hardcode a shared library path into an executable.
20028 hardcode_action=$hardcode_action
20029
20030 # The directories searched by this compiler when creating a shared library.
20031 compiler_lib_search_dirs=$lt_compiler_lib_search_dirs
20032
20033 # Dependencies to place before and after the objects being linked to
20034 # create a shared library.
20035 predep_objects=$lt_predep_objects
20036 postdep_objects=$lt_postdep_objects
20037 predeps=$lt_predeps
20038 postdeps=$lt_postdeps
20039
20040 # The library search path used internally by the compiler when linking
20041 # a shared library.
20042 compiler_lib_search_path=$lt_compiler_lib_search_path
20043
20044 # ### END LIBTOOL CONFIG
20045
20046 _LT_EOF
20047
20048 cat <<'_LT_EOF' >> "$cfgfile"
20049
20050 # ### BEGIN FUNCTIONS SHARED WITH CONFIGURE
20051
20052 # func_munge_path_list VARIABLE PATH
20053 # -----------------------------------
20054 # VARIABLE is name of variable containing _space_ separated list of
20055 # directories to be munged by the contents of PATH, which is string
20056 # having a format:
20057 # "DIR[:DIR]:"
20058 # string "DIR[ DIR]" will be prepended to VARIABLE
20059 # ":DIR[:DIR]"
20060 # string "DIR[ DIR]" will be appended to VARIABLE
20061 # "DIRP[:DIRP]::[DIRA:]DIRA"
20062 # string "DIRP[ DIRP]" will be prepended to VARIABLE and string
20063 # "DIRA[ DIRA]" will be appended to VARIABLE
20064 # "DIR[:DIR]"
20065 # VARIABLE will be replaced by "DIR[ DIR]"
20066 func_munge_path_list ()
20067 {
20068 case x$2 in
20069 x)
20070 ;;
20071 *:)
20072 eval $1=\"`$ECHO $2 | $SED 's/:/ /g'` \$$1\"
20073 ;;
20074 x:*)
20075 eval $1=\"\$$1 `$ECHO $2 | $SED 's/:/ /g'`\"
20076 ;;
20077 *::*)
20078 eval $1=\"\$$1\ `$ECHO $2 | $SED -e 's/.*:://' -e 's/:/ /g'`\"
20079 eval $1=\"`$ECHO $2 | $SED -e 's/::.*//' -e 's/:/ /g'`\ \$$1\"
20080 ;;
20081 *)
20082 eval $1=\"`$ECHO $2 | $SED 's/:/ /g'`\"
20083 ;;
20084 esac
20085 }
20086
20087
20088 # Calculate cc_basename. Skip known compiler wrappers and cross-prefix.
20089 func_cc_basename ()
20090 {
20091 for cc_temp in $*""; do
20092 case $cc_temp in
20093 compile | *[\\/]compile | ccache | *[\\/]ccache ) ;;
20094 distcc | *[\\/]distcc | purify | *[\\/]purify ) ;;
20095 \-*) ;;
20096 *) break;;
20097 esac
20098 done
20099 func_cc_basename_result=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"`
20100 }
20101
20102
20103 # ### END FUNCTIONS SHARED WITH CONFIGURE
20104
20105 _LT_EOF
20106
20107 case $host_os in
20108 aix3*)
20109 cat <<\_LT_EOF >> "$cfgfile"
20110 # AIX sometimes has problems with the GCC collect2 program. For some
20111 # reason, if we set the COLLECT_NAMES environment variable, the problems
20112 # vanish in a puff of smoke.
20113 if test set != "${COLLECT_NAMES+set}"; then
20114 COLLECT_NAMES=
20115 export COLLECT_NAMES
20116 fi
20117 _LT_EOF
20118 ;;
20119 esac
20120
20121
20122 ltmain=$ac_aux_dir/ltmain.sh
20123
20124
20125 # We use sed instead of cat because bash on DJGPP gets confused if
20126 # if finds mixed CR/LF and LF-only lines. Since sed operates in
20127 # text mode, it properly converts lines to CR/LF. This bash problem
20128 # is reportedly fixed, but why not run on old versions too?
20129 sed '$q' "$ltmain" >> "$cfgfile" \
20130 || (rm -f "$cfgfile"; exit 1)
20131
20132 mv -f "$cfgfile" "$ofile" ||
20133 (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")
20134 chmod +x "$ofile"
20135
20136
20137 cat <<_LT_EOF >> "$ofile"
20138
20139 # ### BEGIN LIBTOOL TAG CONFIG: CXX
20140
20141 # The linker used to build libraries.
20142 LD=$lt_LD_CXX
20143
20144 # How to create reloadable object files.
20145 reload_flag=$lt_reload_flag_CXX
20146 reload_cmds=$lt_reload_cmds_CXX
20147
20148 # Commands used to build an old-style archive.
20149 old_archive_cmds=$lt_old_archive_cmds_CXX
20150
20151 # A language specific compiler.
20152 CC=$lt_compiler_CXX
20153
20154 # Is the compiler the GNU compiler?
20155 with_gcc=$GCC_CXX
20156
20157 # Compiler flag to turn off builtin functions.
20158 no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag_CXX
20159
20160 # Additional compiler flags for building library objects.
20161 pic_flag=$lt_lt_prog_compiler_pic_CXX
20162
20163 # How to pass a linker flag through the compiler.
20164 wl=$lt_lt_prog_compiler_wl_CXX
20165
20166 # Compiler flag to prevent dynamic linking.
20167 link_static_flag=$lt_lt_prog_compiler_static_CXX
20168
20169 # Does compiler simultaneously support -c and -o options?
20170 compiler_c_o=$lt_lt_cv_prog_compiler_c_o_CXX
20171
20172 # Whether or not to add -lc for building shared libraries.
20173 build_libtool_need_lc=$archive_cmds_need_lc_CXX
20174
20175 # Whether or not to disallow shared libs when runtime libs are static.
20176 allow_libtool_libs_with_static_runtimes=$enable_shared_with_static_runtimes_CXX
20177
20178 # Compiler flag to allow reflexive dlopens.
20179 export_dynamic_flag_spec=$lt_export_dynamic_flag_spec_CXX
20180
20181 # Compiler flag to generate shared objects directly from archives.
20182 whole_archive_flag_spec=$lt_whole_archive_flag_spec_CXX
20183
20184 # Whether the compiler copes with passing no objects directly.
20185 compiler_needs_object=$lt_compiler_needs_object_CXX
20186
20187 # Create an old-style archive from a shared archive.
20188 old_archive_from_new_cmds=$lt_old_archive_from_new_cmds_CXX
20189
20190 # Create a temporary old-style archive to link instead of a shared archive.
20191 old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds_CXX
20192
20193 # Commands used to build a shared archive.
20194 archive_cmds=$lt_archive_cmds_CXX
20195 archive_expsym_cmds=$lt_archive_expsym_cmds_CXX
20196
20197 # Commands used to build a loadable module if different from building
20198 # a shared archive.
20199 module_cmds=$lt_module_cmds_CXX
20200 module_expsym_cmds=$lt_module_expsym_cmds_CXX
20201
20202 # Whether we are building with GNU ld or not.
20203 with_gnu_ld=$lt_with_gnu_ld_CXX
20204
20205 # Flag that allows shared libraries with undefined symbols to be built.
20206 allow_undefined_flag=$lt_allow_undefined_flag_CXX
20207
20208 # Flag that enforces no undefined symbols.
20209 no_undefined_flag=$lt_no_undefined_flag_CXX
20210
20211 # Flag to hardcode \$libdir into a binary during linking.
20212 # This must work even if \$libdir does not exist
20213 hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec_CXX
20214
20215 # Whether we need a single "-rpath" flag with a separated argument.
20216 hardcode_libdir_separator=$lt_hardcode_libdir_separator_CXX
20217
20218 # Set to "yes" if using DIR/libNAME\$shared_ext during linking hardcodes
20219 # DIR into the resulting binary.
20220 hardcode_direct=$hardcode_direct_CXX
20221
20222 # Set to "yes" if using DIR/libNAME\$shared_ext during linking hardcodes
20223 # DIR into the resulting binary and the resulting library dependency is
20224 # "absolute",i.e impossible to change by setting \$shlibpath_var if the
20225 # library is relocated.
20226 hardcode_direct_absolute=$hardcode_direct_absolute_CXX
20227
20228 # Set to "yes" if using the -LDIR flag during linking hardcodes DIR
20229 # into the resulting binary.
20230 hardcode_minus_L=$hardcode_minus_L_CXX
20231
20232 # Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR
20233 # into the resulting binary.
20234 hardcode_shlibpath_var=$hardcode_shlibpath_var_CXX
20235
20236 # Set to "yes" if building a shared library automatically hardcodes DIR
20237 # into the library and all subsequent libraries and executables linked
20238 # against it.
20239 hardcode_automatic=$hardcode_automatic_CXX
20240
20241 # Set to yes if linker adds runtime paths of dependent libraries
20242 # to runtime path list.
20243 inherit_rpath=$inherit_rpath_CXX
20244
20245 # Whether libtool must link a program against all its dependency libraries.
20246 link_all_deplibs=$link_all_deplibs_CXX
20247
20248 # Set to "yes" if exported symbols are required.
20249 always_export_symbols=$always_export_symbols_CXX
20250
20251 # The commands to list exported symbols.
20252 export_symbols_cmds=$lt_export_symbols_cmds_CXX
20253
20254 # Symbols that should not be listed in the preloaded symbols.
20255 exclude_expsyms=$lt_exclude_expsyms_CXX
20256
20257 # Symbols that must always be exported.
20258 include_expsyms=$lt_include_expsyms_CXX
20259
20260 # Commands necessary for linking programs (against libraries) with templates.
20261 prelink_cmds=$lt_prelink_cmds_CXX
20262
20263 # Commands necessary for finishing linking programs.
20264 postlink_cmds=$lt_postlink_cmds_CXX
20265
20266 # Specify filename containing input files.
20267 file_list_spec=$lt_file_list_spec_CXX
20268
20269 # How to hardcode a shared library path into an executable.
20270 hardcode_action=$hardcode_action_CXX
20271
20272 # The directories searched by this compiler when creating a shared library.
20273 compiler_lib_search_dirs=$lt_compiler_lib_search_dirs_CXX
20274
20275 # Dependencies to place before and after the objects being linked to
20276 # create a shared library.
20277 predep_objects=$lt_predep_objects_CXX
20278 postdep_objects=$lt_postdep_objects_CXX
20279 predeps=$lt_predeps_CXX
20280 postdeps=$lt_postdeps_CXX
20281
20282 # The library search path used internally by the compiler when linking
20283 # a shared library.
20284 compiler_lib_search_path=$lt_compiler_lib_search_path_CXX
20285
20286 # ### END LIBTOOL TAG CONFIG: CXX
20287 _LT_EOF
20288
20289 ;;
20290
20291 esac
20292 done # for ac_tag
20293
20294
20295 as_fn_exit 0
20296 _ACEOF
20297 ac_clean_files=$ac_clean_files_save
20298
20299 test $ac_write_fail = 0 ||
20300 as_fn_error $? "write failure creating $CONFIG_STATUS" "$LINENO" 5
20301
20302
20303 # configure is writing to config.log, and then calls config.status.
20304 # config.status does its own redirection, appending to config.log.
20305 # Unfortunately, on DOS this fails, as config.log is still kept open
20306 # by configure, so config.status won't be able to write to it; its
20307 # output is simply discarded. So we exec the FD to /dev/null,
20308 # effectively closing config.log, so it can be properly (re)opened and
20309 # appended to by config.status. When coming back to configure, we
20310 # need to make the FD available again.
20311 if test "$no_create" != yes; then
20312 ac_cs_success=:
20313 ac_config_status_args=
20314 test "$silent" = yes &&
20315 ac_config_status_args="$ac_config_status_args --quiet"
20316 exec 5>/dev/null
20317 $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false
20318 exec 5>>config.log
20319 # Use ||, not &&, to avoid exiting from the if with $? = 1, which
20320 # would make configure fail if this is the last instruction.
20321 $ac_cs_success || as_fn_exit 1
20322 fi
20323 if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then
20324 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5
20325 $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;}
20326 fi
20327
0 #! /bin/sh
1 # depcomp - compile a program generating dependencies as side-effects
2
3 scriptversion=2018-03-07.03; # UTC
4
5 # Copyright (C) 1999-2020 Free Software Foundation, Inc.
6
7 # This program is free software; you can redistribute it and/or modify
8 # it under the terms of the GNU General Public License as published by
9 # the Free Software Foundation; either version 2, or (at your option)
10 # any later version.
11
12 # This program is distributed in the hope that it will be useful,
13 # but WITHOUT ANY WARRANTY; without even the implied warranty of
14 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 # GNU General Public License for more details.
16
17 # You should have received a copy of the GNU General Public License
18 # along with this program. If not, see <https://www.gnu.org/licenses/>.
19
20 # As a special exception to the GNU General Public License, if you
21 # distribute this file as part of a program that contains a
22 # configuration script generated by Autoconf, you may include it under
23 # the same distribution terms that you use for the rest of that program.
24
25 # Originally written by Alexandre Oliva <oliva@dcc.unicamp.br>.
26
27 case $1 in
28 '')
29 echo "$0: No command. Try '$0 --help' for more information." 1>&2
30 exit 1;
31 ;;
32 -h | --h*)
33 cat <<\EOF
34 Usage: depcomp [--help] [--version] PROGRAM [ARGS]
35
36 Run PROGRAMS ARGS to compile a file, generating dependencies
37 as side-effects.
38
39 Environment variables:
40 depmode Dependency tracking mode.
41 source Source file read by 'PROGRAMS ARGS'.
42 object Object file output by 'PROGRAMS ARGS'.
43 DEPDIR directory where to store dependencies.
44 depfile Dependency file to output.
45 tmpdepfile Temporary file to use when outputting dependencies.
46 libtool Whether libtool is used (yes/no).
47
48 Report bugs to <bug-automake@gnu.org>.
49 EOF
50 exit $?
51 ;;
52 -v | --v*)
53 echo "depcomp $scriptversion"
54 exit $?
55 ;;
56 esac
57
58 # Get the directory component of the given path, and save it in the
59 # global variables '$dir'. Note that this directory component will
60 # be either empty or ending with a '/' character. This is deliberate.
61 set_dir_from ()
62 {
63 case $1 in
64 */*) dir=`echo "$1" | sed -e 's|/[^/]*$|/|'`;;
65 *) dir=;;
66 esac
67 }
68
69 # Get the suffix-stripped basename of the given path, and save it the
70 # global variable '$base'.
71 set_base_from ()
72 {
73 base=`echo "$1" | sed -e 's|^.*/||' -e 's/\.[^.]*$//'`
74 }
75
76 # If no dependency file was actually created by the compiler invocation,
77 # we still have to create a dummy depfile, to avoid errors with the
78 # Makefile "include basename.Plo" scheme.
79 make_dummy_depfile ()
80 {
81 echo "#dummy" > "$depfile"
82 }
83
84 # Factor out some common post-processing of the generated depfile.
85 # Requires the auxiliary global variable '$tmpdepfile' to be set.
86 aix_post_process_depfile ()
87 {
88 # If the compiler actually managed to produce a dependency file,
89 # post-process it.
90 if test -f "$tmpdepfile"; then
91 # Each line is of the form 'foo.o: dependency.h'.
92 # Do two passes, one to just change these to
93 # $object: dependency.h
94 # and one to simply output
95 # dependency.h:
96 # which is needed to avoid the deleted-header problem.
97 { sed -e "s,^.*\.[$lower]*:,$object:," < "$tmpdepfile"
98 sed -e "s,^.*\.[$lower]*:[$tab ]*,," -e 's,$,:,' < "$tmpdepfile"
99 } > "$depfile"
100 rm -f "$tmpdepfile"
101 else
102 make_dummy_depfile
103 fi
104 }
105
106 # A tabulation character.
107 tab=' '
108 # A newline character.
109 nl='
110 '
111 # Character ranges might be problematic outside the C locale.
112 # These definitions help.
113 upper=ABCDEFGHIJKLMNOPQRSTUVWXYZ
114 lower=abcdefghijklmnopqrstuvwxyz
115 digits=0123456789
116 alpha=${upper}${lower}
117
118 if test -z "$depmode" || test -z "$source" || test -z "$object"; then
119 echo "depcomp: Variables source, object and depmode must be set" 1>&2
120 exit 1
121 fi
122
123 # Dependencies for sub/bar.o or sub/bar.obj go into sub/.deps/bar.Po.
124 depfile=${depfile-`echo "$object" |
125 sed 's|[^\\/]*$|'${DEPDIR-.deps}'/&|;s|\.\([^.]*\)$|.P\1|;s|Pobj$|Po|'`}
126 tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`}
127
128 rm -f "$tmpdepfile"
129
130 # Avoid interferences from the environment.
131 gccflag= dashmflag=
132
133 # Some modes work just like other modes, but use different flags. We
134 # parameterize here, but still list the modes in the big case below,
135 # to make depend.m4 easier to write. Note that we *cannot* use a case
136 # here, because this file can only contain one case statement.
137 if test "$depmode" = hp; then
138 # HP compiler uses -M and no extra arg.
139 gccflag=-M
140 depmode=gcc
141 fi
142
143 if test "$depmode" = dashXmstdout; then
144 # This is just like dashmstdout with a different argument.
145 dashmflag=-xM
146 depmode=dashmstdout
147 fi
148
149 cygpath_u="cygpath -u -f -"
150 if test "$depmode" = msvcmsys; then
151 # This is just like msvisualcpp but w/o cygpath translation.
152 # Just convert the backslash-escaped backslashes to single forward
153 # slashes to satisfy depend.m4
154 cygpath_u='sed s,\\\\,/,g'
155 depmode=msvisualcpp
156 fi
157
158 if test "$depmode" = msvc7msys; then
159 # This is just like msvc7 but w/o cygpath translation.
160 # Just convert the backslash-escaped backslashes to single forward
161 # slashes to satisfy depend.m4
162 cygpath_u='sed s,\\\\,/,g'
163 depmode=msvc7
164 fi
165
166 if test "$depmode" = xlc; then
167 # IBM C/C++ Compilers xlc/xlC can output gcc-like dependency information.
168 gccflag=-qmakedep=gcc,-MF
169 depmode=gcc
170 fi
171
172 case "$depmode" in
173 gcc3)
174 ## gcc 3 implements dependency tracking that does exactly what
175 ## we want. Yay! Note: for some reason libtool 1.4 doesn't like
176 ## it if -MD -MP comes after the -MF stuff. Hmm.
177 ## Unfortunately, FreeBSD c89 acceptance of flags depends upon
178 ## the command line argument order; so add the flags where they
179 ## appear in depend2.am. Note that the slowdown incurred here
180 ## affects only configure: in makefiles, %FASTDEP% shortcuts this.
181 for arg
182 do
183 case $arg in
184 -c) set fnord "$@" -MT "$object" -MD -MP -MF "$tmpdepfile" "$arg" ;;
185 *) set fnord "$@" "$arg" ;;
186 esac
187 shift # fnord
188 shift # $arg
189 done
190 "$@"
191 stat=$?
192 if test $stat -ne 0; then
193 rm -f "$tmpdepfile"
194 exit $stat
195 fi
196 mv "$tmpdepfile" "$depfile"
197 ;;
198
199 gcc)
200 ## Note that this doesn't just cater to obsosete pre-3.x GCC compilers.
201 ## but also to in-use compilers like IMB xlc/xlC and the HP C compiler.
202 ## (see the conditional assignment to $gccflag above).
203 ## There are various ways to get dependency output from gcc. Here's
204 ## why we pick this rather obscure method:
205 ## - Don't want to use -MD because we'd like the dependencies to end
206 ## up in a subdir. Having to rename by hand is ugly.
207 ## (We might end up doing this anyway to support other compilers.)
208 ## - The DEPENDENCIES_OUTPUT environment variable makes gcc act like
209 ## -MM, not -M (despite what the docs say). Also, it might not be
210 ## supported by the other compilers which use the 'gcc' depmode.
211 ## - Using -M directly means running the compiler twice (even worse
212 ## than renaming).
213 if test -z "$gccflag"; then
214 gccflag=-MD,
215 fi
216 "$@" -Wp,"$gccflag$tmpdepfile"
217 stat=$?
218 if test $stat -ne 0; then
219 rm -f "$tmpdepfile"
220 exit $stat
221 fi
222 rm -f "$depfile"
223 echo "$object : \\" > "$depfile"
224 # The second -e expression handles DOS-style file names with drive
225 # letters.
226 sed -e 's/^[^:]*: / /' \
227 -e 's/^['$alpha']:\/[^:]*: / /' < "$tmpdepfile" >> "$depfile"
228 ## This next piece of magic avoids the "deleted header file" problem.
229 ## The problem is that when a header file which appears in a .P file
230 ## is deleted, the dependency causes make to die (because there is
231 ## typically no way to rebuild the header). We avoid this by adding
232 ## dummy dependencies for each header file. Too bad gcc doesn't do
233 ## this for us directly.
234 ## Some versions of gcc put a space before the ':'. On the theory
235 ## that the space means something, we add a space to the output as
236 ## well. hp depmode also adds that space, but also prefixes the VPATH
237 ## to the object. Take care to not repeat it in the output.
238 ## Some versions of the HPUX 10.20 sed can't process this invocation
239 ## correctly. Breaking it into two sed invocations is a workaround.
240 tr ' ' "$nl" < "$tmpdepfile" \
241 | sed -e 's/^\\$//' -e '/^$/d' -e "s|.*$object$||" -e '/:$/d' \
242 | sed -e 's/$/ :/' >> "$depfile"
243 rm -f "$tmpdepfile"
244 ;;
245
246 hp)
247 # This case exists only to let depend.m4 do its work. It works by
248 # looking at the text of this script. This case will never be run,
249 # since it is checked for above.
250 exit 1
251 ;;
252
253 sgi)
254 if test "$libtool" = yes; then
255 "$@" "-Wp,-MDupdate,$tmpdepfile"
256 else
257 "$@" -MDupdate "$tmpdepfile"
258 fi
259 stat=$?
260 if test $stat -ne 0; then
261 rm -f "$tmpdepfile"
262 exit $stat
263 fi
264 rm -f "$depfile"
265
266 if test -f "$tmpdepfile"; then # yes, the sourcefile depend on other files
267 echo "$object : \\" > "$depfile"
268 # Clip off the initial element (the dependent). Don't try to be
269 # clever and replace this with sed code, as IRIX sed won't handle
270 # lines with more than a fixed number of characters (4096 in
271 # IRIX 6.2 sed, 8192 in IRIX 6.5). We also remove comment lines;
272 # the IRIX cc adds comments like '#:fec' to the end of the
273 # dependency line.
274 tr ' ' "$nl" < "$tmpdepfile" \
275 | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' \
276 | tr "$nl" ' ' >> "$depfile"
277 echo >> "$depfile"
278 # The second pass generates a dummy entry for each header file.
279 tr ' ' "$nl" < "$tmpdepfile" \
280 | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \
281 >> "$depfile"
282 else
283 make_dummy_depfile
284 fi
285 rm -f "$tmpdepfile"
286 ;;
287
288 xlc)
289 # This case exists only to let depend.m4 do its work. It works by
290 # looking at the text of this script. This case will never be run,
291 # since it is checked for above.
292 exit 1
293 ;;
294
295 aix)
296 # The C for AIX Compiler uses -M and outputs the dependencies
297 # in a .u file. In older versions, this file always lives in the
298 # current directory. Also, the AIX compiler puts '$object:' at the
299 # start of each line; $object doesn't have directory information.
300 # Version 6 uses the directory in both cases.
301 set_dir_from "$object"
302 set_base_from "$object"
303 if test "$libtool" = yes; then
304 tmpdepfile1=$dir$base.u
305 tmpdepfile2=$base.u
306 tmpdepfile3=$dir.libs/$base.u
307 "$@" -Wc,-M
308 else
309 tmpdepfile1=$dir$base.u
310 tmpdepfile2=$dir$base.u
311 tmpdepfile3=$dir$base.u
312 "$@" -M
313 fi
314 stat=$?
315 if test $stat -ne 0; then
316 rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
317 exit $stat
318 fi
319
320 for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
321 do
322 test -f "$tmpdepfile" && break
323 done
324 aix_post_process_depfile
325 ;;
326
327 tcc)
328 # tcc (Tiny C Compiler) understand '-MD -MF file' since version 0.9.26
329 # FIXME: That version still under development at the moment of writing.
330 # Make that this statement remains true also for stable, released
331 # versions.
332 # It will wrap lines (doesn't matter whether long or short) with a
333 # trailing '\', as in:
334 #
335 # foo.o : \
336 # foo.c \
337 # foo.h \
338 #
339 # It will put a trailing '\' even on the last line, and will use leading
340 # spaces rather than leading tabs (at least since its commit 0394caf7
341 # "Emit spaces for -MD").
342 "$@" -MD -MF "$tmpdepfile"
343 stat=$?
344 if test $stat -ne 0; then
345 rm -f "$tmpdepfile"
346 exit $stat
347 fi
348 rm -f "$depfile"
349 # Each non-empty line is of the form 'foo.o : \' or ' dep.h \'.
350 # We have to change lines of the first kind to '$object: \'.
351 sed -e "s|.*:|$object :|" < "$tmpdepfile" > "$depfile"
352 # And for each line of the second kind, we have to emit a 'dep.h:'
353 # dummy dependency, to avoid the deleted-header problem.
354 sed -n -e 's|^ *\(.*\) *\\$|\1:|p' < "$tmpdepfile" >> "$depfile"
355 rm -f "$tmpdepfile"
356 ;;
357
358 ## The order of this option in the case statement is important, since the
359 ## shell code in configure will try each of these formats in the order
360 ## listed in this file. A plain '-MD' option would be understood by many
361 ## compilers, so we must ensure this comes after the gcc and icc options.
362 pgcc)
363 # Portland's C compiler understands '-MD'.
364 # Will always output deps to 'file.d' where file is the root name of the
365 # source file under compilation, even if file resides in a subdirectory.
366 # The object file name does not affect the name of the '.d' file.
367 # pgcc 10.2 will output
368 # foo.o: sub/foo.c sub/foo.h
369 # and will wrap long lines using '\' :
370 # foo.o: sub/foo.c ... \
371 # sub/foo.h ... \
372 # ...
373 set_dir_from "$object"
374 # Use the source, not the object, to determine the base name, since
375 # that's sadly what pgcc will do too.
376 set_base_from "$source"
377 tmpdepfile=$base.d
378
379 # For projects that build the same source file twice into different object
380 # files, the pgcc approach of using the *source* file root name can cause
381 # problems in parallel builds. Use a locking strategy to avoid stomping on
382 # the same $tmpdepfile.
383 lockdir=$base.d-lock
384 trap "
385 echo '$0: caught signal, cleaning up...' >&2
386 rmdir '$lockdir'
387 exit 1
388 " 1 2 13 15
389 numtries=100
390 i=$numtries
391 while test $i -gt 0; do
392 # mkdir is a portable test-and-set.
393 if mkdir "$lockdir" 2>/dev/null; then
394 # This process acquired the lock.
395 "$@" -MD
396 stat=$?
397 # Release the lock.
398 rmdir "$lockdir"
399 break
400 else
401 # If the lock is being held by a different process, wait
402 # until the winning process is done or we timeout.
403 while test -d "$lockdir" && test $i -gt 0; do
404 sleep 1
405 i=`expr $i - 1`
406 done
407 fi
408 i=`expr $i - 1`
409 done
410 trap - 1 2 13 15
411 if test $i -le 0; then
412 echo "$0: failed to acquire lock after $numtries attempts" >&2
413 echo "$0: check lockdir '$lockdir'" >&2
414 exit 1
415 fi
416
417 if test $stat -ne 0; then
418 rm -f "$tmpdepfile"
419 exit $stat
420 fi
421 rm -f "$depfile"
422 # Each line is of the form `foo.o: dependent.h',
423 # or `foo.o: dep1.h dep2.h \', or ` dep3.h dep4.h \'.
424 # Do two passes, one to just change these to
425 # `$object: dependent.h' and one to simply `dependent.h:'.
426 sed "s,^[^:]*:,$object :," < "$tmpdepfile" > "$depfile"
427 # Some versions of the HPUX 10.20 sed can't process this invocation
428 # correctly. Breaking it into two sed invocations is a workaround.
429 sed 's,^[^:]*: \(.*\)$,\1,;s/^\\$//;/^$/d;/:$/d' < "$tmpdepfile" \
430 | sed -e 's/$/ :/' >> "$depfile"
431 rm -f "$tmpdepfile"
432 ;;
433
434 hp2)
435 # The "hp" stanza above does not work with aCC (C++) and HP's ia64
436 # compilers, which have integrated preprocessors. The correct option
437 # to use with these is +Maked; it writes dependencies to a file named
438 # 'foo.d', which lands next to the object file, wherever that
439 # happens to be.
440 # Much of this is similar to the tru64 case; see comments there.
441 set_dir_from "$object"
442 set_base_from "$object"
443 if test "$libtool" = yes; then
444 tmpdepfile1=$dir$base.d
445 tmpdepfile2=$dir.libs/$base.d
446 "$@" -Wc,+Maked
447 else
448 tmpdepfile1=$dir$base.d
449 tmpdepfile2=$dir$base.d
450 "$@" +Maked
451 fi
452 stat=$?
453 if test $stat -ne 0; then
454 rm -f "$tmpdepfile1" "$tmpdepfile2"
455 exit $stat
456 fi
457
458 for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2"
459 do
460 test -f "$tmpdepfile" && break
461 done
462 if test -f "$tmpdepfile"; then
463 sed -e "s,^.*\.[$lower]*:,$object:," "$tmpdepfile" > "$depfile"
464 # Add 'dependent.h:' lines.
465 sed -ne '2,${
466 s/^ *//
467 s/ \\*$//
468 s/$/:/
469 p
470 }' "$tmpdepfile" >> "$depfile"
471 else
472 make_dummy_depfile
473 fi
474 rm -f "$tmpdepfile" "$tmpdepfile2"
475 ;;
476
477 tru64)
478 # The Tru64 compiler uses -MD to generate dependencies as a side
479 # effect. 'cc -MD -o foo.o ...' puts the dependencies into 'foo.o.d'.
480 # At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put
481 # dependencies in 'foo.d' instead, so we check for that too.
482 # Subdirectories are respected.
483 set_dir_from "$object"
484 set_base_from "$object"
485
486 if test "$libtool" = yes; then
487 # Libtool generates 2 separate objects for the 2 libraries. These
488 # two compilations output dependencies in $dir.libs/$base.o.d and
489 # in $dir$base.o.d. We have to check for both files, because
490 # one of the two compilations can be disabled. We should prefer
491 # $dir$base.o.d over $dir.libs/$base.o.d because the latter is
492 # automatically cleaned when .libs/ is deleted, while ignoring
493 # the former would cause a distcleancheck panic.
494 tmpdepfile1=$dir$base.o.d # libtool 1.5
495 tmpdepfile2=$dir.libs/$base.o.d # Likewise.
496 tmpdepfile3=$dir.libs/$base.d # Compaq CCC V6.2-504
497 "$@" -Wc,-MD
498 else
499 tmpdepfile1=$dir$base.d
500 tmpdepfile2=$dir$base.d
501 tmpdepfile3=$dir$base.d
502 "$@" -MD
503 fi
504
505 stat=$?
506 if test $stat -ne 0; then
507 rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
508 exit $stat
509 fi
510
511 for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
512 do
513 test -f "$tmpdepfile" && break
514 done
515 # Same post-processing that is required for AIX mode.
516 aix_post_process_depfile
517 ;;
518
519 msvc7)
520 if test "$libtool" = yes; then
521 showIncludes=-Wc,-showIncludes
522 else
523 showIncludes=-showIncludes
524 fi
525 "$@" $showIncludes > "$tmpdepfile"
526 stat=$?
527 grep -v '^Note: including file: ' "$tmpdepfile"
528 if test $stat -ne 0; then
529 rm -f "$tmpdepfile"
530 exit $stat
531 fi
532 rm -f "$depfile"
533 echo "$object : \\" > "$depfile"
534 # The first sed program below extracts the file names and escapes
535 # backslashes for cygpath. The second sed program outputs the file
536 # name when reading, but also accumulates all include files in the
537 # hold buffer in order to output them again at the end. This only
538 # works with sed implementations that can handle large buffers.
539 sed < "$tmpdepfile" -n '
540 /^Note: including file: *\(.*\)/ {
541 s//\1/
542 s/\\/\\\\/g
543 p
544 }' | $cygpath_u | sort -u | sed -n '
545 s/ /\\ /g
546 s/\(.*\)/'"$tab"'\1 \\/p
547 s/.\(.*\) \\/\1:/
548 H
549 $ {
550 s/.*/'"$tab"'/
551 G
552 p
553 }' >> "$depfile"
554 echo >> "$depfile" # make sure the fragment doesn't end with a backslash
555 rm -f "$tmpdepfile"
556 ;;
557
558 msvc7msys)
559 # This case exists only to let depend.m4 do its work. It works by
560 # looking at the text of this script. This case will never be run,
561 # since it is checked for above.
562 exit 1
563 ;;
564
565 #nosideeffect)
566 # This comment above is used by automake to tell side-effect
567 # dependency tracking mechanisms from slower ones.
568
569 dashmstdout)
570 # Important note: in order to support this mode, a compiler *must*
571 # always write the preprocessed file to stdout, regardless of -o.
572 "$@" || exit $?
573
574 # Remove the call to Libtool.
575 if test "$libtool" = yes; then
576 while test "X$1" != 'X--mode=compile'; do
577 shift
578 done
579 shift
580 fi
581
582 # Remove '-o $object'.
583 IFS=" "
584 for arg
585 do
586 case $arg in
587 -o)
588 shift
589 ;;
590 $object)
591 shift
592 ;;
593 *)
594 set fnord "$@" "$arg"
595 shift # fnord
596 shift # $arg
597 ;;
598 esac
599 done
600
601 test -z "$dashmflag" && dashmflag=-M
602 # Require at least two characters before searching for ':'
603 # in the target name. This is to cope with DOS-style filenames:
604 # a dependency such as 'c:/foo/bar' could be seen as target 'c' otherwise.
605 "$@" $dashmflag |
606 sed "s|^[$tab ]*[^:$tab ][^:][^:]*:[$tab ]*|$object: |" > "$tmpdepfile"
607 rm -f "$depfile"
608 cat < "$tmpdepfile" > "$depfile"
609 # Some versions of the HPUX 10.20 sed can't process this sed invocation
610 # correctly. Breaking it into two sed invocations is a workaround.
611 tr ' ' "$nl" < "$tmpdepfile" \
612 | sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' \
613 | sed -e 's/$/ :/' >> "$depfile"
614 rm -f "$tmpdepfile"
615 ;;
616
617 dashXmstdout)
618 # This case only exists to satisfy depend.m4. It is never actually
619 # run, as this mode is specially recognized in the preamble.
620 exit 1
621 ;;
622
623 makedepend)
624 "$@" || exit $?
625 # Remove any Libtool call
626 if test "$libtool" = yes; then
627 while test "X$1" != 'X--mode=compile'; do
628 shift
629 done
630 shift
631 fi
632 # X makedepend
633 shift
634 cleared=no eat=no
635 for arg
636 do
637 case $cleared in
638 no)
639 set ""; shift
640 cleared=yes ;;
641 esac
642 if test $eat = yes; then
643 eat=no
644 continue
645 fi
646 case "$arg" in
647 -D*|-I*)
648 set fnord "$@" "$arg"; shift ;;
649 # Strip any option that makedepend may not understand. Remove
650 # the object too, otherwise makedepend will parse it as a source file.
651 -arch)
652 eat=yes ;;
653 -*|$object)
654 ;;
655 *)
656 set fnord "$@" "$arg"; shift ;;
657 esac
658 done
659 obj_suffix=`echo "$object" | sed 's/^.*\././'`
660 touch "$tmpdepfile"
661 ${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@"
662 rm -f "$depfile"
663 # makedepend may prepend the VPATH from the source file name to the object.
664 # No need to regex-escape $object, excess matching of '.' is harmless.
665 sed "s|^.*\($object *:\)|\1|" "$tmpdepfile" > "$depfile"
666 # Some versions of the HPUX 10.20 sed can't process the last invocation
667 # correctly. Breaking it into two sed invocations is a workaround.
668 sed '1,2d' "$tmpdepfile" \
669 | tr ' ' "$nl" \
670 | sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' \
671 | sed -e 's/$/ :/' >> "$depfile"
672 rm -f "$tmpdepfile" "$tmpdepfile".bak
673 ;;
674
675 cpp)
676 # Important note: in order to support this mode, a compiler *must*
677 # always write the preprocessed file to stdout.
678 "$@" || exit $?
679
680 # Remove the call to Libtool.
681 if test "$libtool" = yes; then
682 while test "X$1" != 'X--mode=compile'; do
683 shift
684 done
685 shift
686 fi
687
688 # Remove '-o $object'.
689 IFS=" "
690 for arg
691 do
692 case $arg in
693 -o)
694 shift
695 ;;
696 $object)
697 shift
698 ;;
699 *)
700 set fnord "$@" "$arg"
701 shift # fnord
702 shift # $arg
703 ;;
704 esac
705 done
706
707 "$@" -E \
708 | sed -n -e '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \
709 -e '/^#line [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \
710 | sed '$ s: \\$::' > "$tmpdepfile"
711 rm -f "$depfile"
712 echo "$object : \\" > "$depfile"
713 cat < "$tmpdepfile" >> "$depfile"
714 sed < "$tmpdepfile" '/^$/d;s/^ //;s/ \\$//;s/$/ :/' >> "$depfile"
715 rm -f "$tmpdepfile"
716 ;;
717
718 msvisualcpp)
719 # Important note: in order to support this mode, a compiler *must*
720 # always write the preprocessed file to stdout.
721 "$@" || exit $?
722
723 # Remove the call to Libtool.
724 if test "$libtool" = yes; then
725 while test "X$1" != 'X--mode=compile'; do
726 shift
727 done
728 shift
729 fi
730
731 IFS=" "
732 for arg
733 do
734 case "$arg" in
735 -o)
736 shift
737 ;;
738 $object)
739 shift
740 ;;
741 "-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI")
742 set fnord "$@"
743 shift
744 shift
745 ;;
746 *)
747 set fnord "$@" "$arg"
748 shift
749 shift
750 ;;
751 esac
752 done
753 "$@" -E 2>/dev/null |
754 sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::\1:p' | $cygpath_u | sort -u > "$tmpdepfile"
755 rm -f "$depfile"
756 echo "$object : \\" > "$depfile"
757 sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::'"$tab"'\1 \\:p' >> "$depfile"
758 echo "$tab" >> "$depfile"
759 sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::\1\::p' >> "$depfile"
760 rm -f "$tmpdepfile"
761 ;;
762
763 msvcmsys)
764 # This case exists only to let depend.m4 do its work. It works by
765 # looking at the text of this script. This case will never be run,
766 # since it is checked for above.
767 exit 1
768 ;;
769
770 none)
771 exec "$@"
772 ;;
773
774 *)
775 echo "Unknown depmode $depmode" 1>&2
776 exit 1
777 ;;
778 esac
779
780 exit 0
781
782 # Local Variables:
783 # mode: shell-script
784 # sh-indentation: 2
785 # eval: (add-hook 'before-save-hook 'time-stamp)
786 # time-stamp-start: "scriptversion="
787 # time-stamp-format: "%:y-%02m-%02d.%02H"
788 # time-stamp-time-zone: "UTC0"
789 # time-stamp-end: "; # UTC"
790 # End:
docs/Ahead AAC Decoder library documentation.doc less more
Binary diff not shown
docs/Ahead AAC Decoder library documentation.pdf less more
Binary diff not shown
0 # option to compile without XMMS plugin
1 %if %{?without_xmms:1}%{!?without_xmms:0}
2 %define _without_xmms --without-xmms
3 %else
4 %define _with_xmms --with-xmms
5 %endif
6 # this has been taken from http://www.hyperborea.org/software/dillo/dillo.spec
7 #################################################################################
8 # Identify which distribution we're building on.
9 # This will determine any changes in menu structure or release number (i.e. .mdk)
10 # Eventually, need to make this configurable from the rpmbuild command line.
11
12 %define freedesktop %(if [ -e /usr/share/applications ]; then echo 1; else echo 0; fi;)
13 %define conectiva %(if [ -e /etc/conectiva-release ]; then echo 1; else echo 0; fi;)
14 %define mdk %(if [ -e /etc/mandrake-release ]; then echo 1; else echo 0; fi;)
15 %define suse %(if [ -e /etc/SuSE-release ]; then echo 1; else echo 0; fi;)
16 %define oldsuse 0
17 %if %{suse}
18 %define oldsuse %(if [ `grep VERSION /etc/SuSE-release | sed -e "s/VERSION = //"` \\< 8.0 ]; then echo 1; else echo 0; fi;)
19 %endif
20
21 %define oldredhat %(if [ -e /etc/redhat-release ]; then echo 1; else echo 0; fi;) && !%{mdk} && !%{suse} && !%{conectiva} && !%{freedesktop}
22 %define plain !%{mdk} && !%{suse} && !%{conectiva} && !%{oldredhat} && !%{freedesktop}
23
24 Summary: C library and frontend for decoding MPEG2/4 AAC
25 Name: faad2
26 Version: 2.9.2
27 Release: 1
28 License: GPL
29 Group: Applications/Multimedia
30 Source0: http://download.sourceforge.net/faad/%{name}-%{version}.tar.gz
31 #Patch: faad2-%{version}.patch
32 BuildRequires: autoconf, automake, libtool, gcc-c++
33
34 %if %{?_with_xmms:1}%{!?_with_xmms:0}
35 BuildRequires: xmms-devel
36 %endif
37
38 URL: http://www.audiocoding.com/
39 #################################################################################
40 %if %{?_with_xmms:1}%{!?_with_xmms:0}
41 # GTK Dependencies
42 %if %{mdk}
43 BuildRequires: libgtk+-devel >= 1.2.0
44 %endif
45 %if %{suse}
46 BuildRequires: gtk-devel >= 1.2.0
47 %endif
48 %if !%{suse} && !%{mdk}
49 BuildRequires: gtk+-devel >= 1.2.0
50 %endif
51 %endif
52
53 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
54 Packager: a.kurpiers@nt.tu-darmstadt.de
55
56 %description
57 FAAD 2 is a LC, MAIN and LTP profile, MPEG2 and MPEG-4 AAC decoder, completely
58 written from scratch. FAAD 2 is licensed under the GPL.
59
60 Includes libmp4ff, a Quicktime library for UNIX in a freely redistributable,
61 statically linkable library.
62
63 %package devel
64 Summary: Development libraries the FAAD 2 AAC decoder.
65 Group: Development/Libraries
66 Requires: %{name}
67
68 %description devel
69 Header files and development documentation for libfaad.
70
71 %if %{?_with_xmms:1}%{!?_with_xmms:0}
72 %package xmms
73 Group: Applications/Multimedia
74 Summary: AAC and MP4 input plugin for xmms
75 Requires: %{name}, xmms
76
77
78 %description xmms
79 The AAC xmms input plugin for xmms recognizes AAC files by an
80 .aac extension.
81 This MP4 xmms plugin reads AAC files with and without ID3 tags (version 2.x).
82 AAC files are MPEG2 or MPEG4 files that can be found in MPEG4 audio files
83 (.mp4). MPEG4 files with AAC inside can be read by RealPlayer or Quicktime.
84 %endif
85
86 %prep
87 #%setup -n %{name}
88 %setup -n %{name}-%{version}
89 #%patch -p0
90
91 %build
92 #sh bootstrap
93 ./configure --with-drm %{?_with_xmms} %{?_without_xmms} --prefix=/usr
94 make
95
96 %install
97 rm -rf %{buildroot}
98 # Hack to work around a problem with DESTDIR in libtool 1.4.x
99 LIBRARY_PATH="%{buildroot}/usr/lib:${LIBRARY_PATH}" make install DESTDIR=%{buildroot}
100 # install libmp4ff
101 install -m 755 common/mp4ff/libmp4ff.a %{buildroot}%{_libdir}
102 install common/mp4ff/mp4ff.h %{buildroot}%{_includedir}
103
104 %post -p /sbin/ldconfig
105
106 %postun -p /sbin/ldconfig
107
108 %clean
109 rm -rf %{buildroot}
110
111 %files
112 %defattr(-, root, root)
113 %doc AUTHORS COPYING ChangeLog NEWS README TODO
114 %{_bindir}/*
115 %{_libdir}/libfaad.so*
116
117 %files devel
118 %defattr(-, root, root)
119 %{_libdir}/libfaad.a
120 %{_libdir}/libfaad.la
121 %{_includedir}/faad.h
122 %{_includedir}/neaacdec.h
123 %{_includedir}/mp4ff.h
124 %{_libdir}/libmp4ff.a
125
126 %if %{?_with_xmms:1}%{!?_with_xmms:0}
127 %files xmms
128 %defattr(-,root,root)
129 %doc plugins/xmms/README
130 %_libdir/xmms/Input/*
131 %endif
132
133 %changelog
134 * Tue Jan 24 2006 Alexander Kurpiers <a.kurpiers@nt.tu-darmstadt.de>
135 - fix wrong function declaration in mp4ffint.h
136
137 * Wed Nov 15 2005 Alexander Kurpiers <a.kurpiers@nt.tu-darmstadt.de>
138 - fix requirements for xmms plugin
139 - add libmp4ff to devel package (only static library)
140
141 * Sat Aug 13 2005 Alexander Kurpiers <a.kurpiers@nt.tu-darmstadt.de>
142 - fix dependencies for xmms plugin. libmp4v2/id3lib no longer needed
143
144 * Sun Apr 24 2005 Alexander Kurpiers <a.kurpiers@nt.tu-darmstadt.de>
145 - make xmms plugin generation optional. Build with '--define "without_xmms 1"'
146
147 * Tue Nov 02 2004 Alexander Kurpiers <a.kurpiers@nt.tu-darmstadt.de>
148 - remove libmp4ff and libmp4v2 from RPM
149 - changes for new version of faad2
150
151 * Sat Apr 17 2004 Alexander Kurpiers <a.kurpiers@nt.tu-darmstadt.de>
152 - apply fix to make DRM support work
153 - use "platform-independant" dependencies (taken from dillo.spec)
154
155 * Fri Feb 06 2004 Alexander Kurpiers <a.kurpiers@nt.tu-darmstadt.de>
156 - remove seperate libmp4ff target
157
158 * Wed Nov 05 2003 Alexander Kurpiers <a.kurpiers@nt.tu-darmstadt.de>
159 - include xmms plugins/libmp4v2/libmp4ff into RPM
160
161 * Tue Aug 12 2003 Matthias Saou <matthias.saou@est.une.marmotte.net>
162 - Update to 2.0rc1.
163 - Introduced LD_LIBRARY_PATH workaround.
164 - Removed optional xmms plugin build, it seems mandatory now.
165 - Added gtk+ build dep for the xmms plugin.
166
167 * Wed May 14 2003 Matthias Saou <matthias.saou@est.une.marmotte.net>
168 - Added xmms plugin build.
169
170 * Wed Apr 9 2003 Matthias Saou <matthias.saou@est.une.marmotte.net>
171 - Spec file cleanup.
172 - Now exclude .la file.
173 - Update to latest CVS checkout to fix compile problem.
174
175
176 * Fri Aug 10 2002 Alexander Kurpiers <a.kurpiers@nt.tu-darmstadt.de>
177 - changes to compile v1.1 release
178
179 * Tue Jun 18 2002 Alexander Kurpiers <a.kurpiers@nt.tu-darmstadt.de>
180 - First RPM.
181
0 # Makefile.in generated by automake 1.16.2 from Makefile.am.
1 # @configure_input@
2
3 # Copyright (C) 1994-2020 Free Software Foundation, Inc.
4
5 # This Makefile.in is free software; the Free Software Foundation
6 # gives unlimited permission to copy and/or distribute it,
7 # with or without modifications, as long as this notice is preserved.
8
9 # This program is distributed in the hope that it will be useful,
10 # but WITHOUT ANY WARRANTY, to the extent permitted by law; without
11 # even the implied warranty of MERCHANTABILITY or FITNESS FOR A
12 # PARTICULAR PURPOSE.
13
14 @SET_MAKE@
15
16 VPATH = @srcdir@
17 am__is_gnu_make = { \
18 if test -z '$(MAKELEVEL)'; then \
19 false; \
20 elif test -n '$(MAKE_HOST)'; then \
21 true; \
22 elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
23 true; \
24 else \
25 false; \
26 fi; \
27 }
28 am__make_running_with_option = \
29 case $${target_option-} in \
30 ?) ;; \
31 *) echo "am__make_running_with_option: internal error: invalid" \
32 "target option '$${target_option-}' specified" >&2; \
33 exit 1;; \
34 esac; \
35 has_opt=no; \
36 sane_makeflags=$$MAKEFLAGS; \
37 if $(am__is_gnu_make); then \
38 sane_makeflags=$$MFLAGS; \
39 else \
40 case $$MAKEFLAGS in \
41 *\\[\ \ ]*) \
42 bs=\\; \
43 sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
44 | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
45 esac; \
46 fi; \
47 skip_next=no; \
48 strip_trailopt () \
49 { \
50 flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
51 }; \
52 for flg in $$sane_makeflags; do \
53 test $$skip_next = yes && { skip_next=no; continue; }; \
54 case $$flg in \
55 *=*|--*) continue;; \
56 -*I) strip_trailopt 'I'; skip_next=yes;; \
57 -*I?*) strip_trailopt 'I';; \
58 -*O) strip_trailopt 'O'; skip_next=yes;; \
59 -*O?*) strip_trailopt 'O';; \
60 -*l) strip_trailopt 'l'; skip_next=yes;; \
61 -*l?*) strip_trailopt 'l';; \
62 -[dEDm]) skip_next=yes;; \
63 -[JT]) skip_next=yes;; \
64 esac; \
65 case $$flg in \
66 *$$target_option*) has_opt=yes; break;; \
67 esac; \
68 done; \
69 test $$has_opt = yes
70 am__make_dryrun = (target_option=n; $(am__make_running_with_option))
71 am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
72 pkgdatadir = $(datadir)/@PACKAGE@
73 pkgincludedir = $(includedir)/@PACKAGE@
74 pkglibdir = $(libdir)/@PACKAGE@
75 pkglibexecdir = $(libexecdir)/@PACKAGE@
76 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
77 install_sh_DATA = $(install_sh) -c -m 644
78 install_sh_PROGRAM = $(install_sh) -c
79 install_sh_SCRIPT = $(install_sh) -c
80 INSTALL_HEADER = $(INSTALL_DATA)
81 transform = $(program_transform_name)
82 NORMAL_INSTALL = :
83 PRE_INSTALL = :
84 POST_INSTALL = :
85 NORMAL_UNINSTALL = :
86 PRE_UNINSTALL = :
87 POST_UNINSTALL = :
88 build_triplet = @build@
89 host_triplet = @host@
90 bin_PROGRAMS = faad$(EXEEXT)
91 subdir = frontend
92 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
93 am__aclocal_m4_deps = $(top_srcdir)/configure.ac
94 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
95 $(ACLOCAL_M4)
96 DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
97 mkinstalldirs = $(install_sh) -d
98 CONFIG_HEADER = $(top_builddir)/config.h
99 CONFIG_CLEAN_FILES =
100 CONFIG_CLEAN_VPATH_FILES =
101 am__installdirs = "$(DESTDIR)$(bindir)" "$(DESTDIR)$(man1dir)"
102 PROGRAMS = $(bin_PROGRAMS)
103 am_faad_OBJECTS = mp4read.$(OBJEXT) audio.$(OBJEXT) main.$(OBJEXT) \
104 unicode_support.$(OBJEXT)
105 faad_OBJECTS = $(am_faad_OBJECTS)
106 faad_DEPENDENCIES = $(top_builddir)/libfaad/libfaad.la
107 AM_V_lt = $(am__v_lt_@AM_V@)
108 am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
109 am__v_lt_0 = --silent
110 am__v_lt_1 =
111 AM_V_P = $(am__v_P_@AM_V@)
112 am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
113 am__v_P_0 = false
114 am__v_P_1 = :
115 AM_V_GEN = $(am__v_GEN_@AM_V@)
116 am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
117 am__v_GEN_0 = @echo " GEN " $@;
118 am__v_GEN_1 =
119 AM_V_at = $(am__v_at_@AM_V@)
120 am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
121 am__v_at_0 = @
122 am__v_at_1 =
123 DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
124 depcomp = $(SHELL) $(top_srcdir)/depcomp
125 am__maybe_remake_depfiles = depfiles
126 am__depfiles_remade = ./$(DEPDIR)/audio.Po ./$(DEPDIR)/getopt.Po \
127 ./$(DEPDIR)/main.Po ./$(DEPDIR)/mp4read.Po \
128 ./$(DEPDIR)/unicode_support.Po
129 am__mv = mv -f
130 COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
131 $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
132 LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
133 $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \
134 $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
135 $(AM_CFLAGS) $(CFLAGS)
136 AM_V_CC = $(am__v_CC_@AM_V@)
137 am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@)
138 am__v_CC_0 = @echo " CC " $@;
139 am__v_CC_1 =
140 CCLD = $(CC)
141 LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
142 $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
143 $(AM_LDFLAGS) $(LDFLAGS) -o $@
144 AM_V_CCLD = $(am__v_CCLD_@AM_V@)
145 am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@)
146 am__v_CCLD_0 = @echo " CCLD " $@;
147 am__v_CCLD_1 =
148 SOURCES = $(faad_SOURCES) $(EXTRA_faad_SOURCES)
149 DIST_SOURCES = $(faad_SOURCES) $(EXTRA_faad_SOURCES)
150 am__can_run_installinfo = \
151 case $$AM_UPDATE_INFO_DIR in \
152 n|no|NO) false;; \
153 *) (install-info --version) >/dev/null 2>&1;; \
154 esac
155 am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
156 am__vpath_adj = case $$p in \
157 $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
158 *) f=$$p;; \
159 esac;
160 am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
161 am__install_max = 40
162 am__nobase_strip_setup = \
163 srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
164 am__nobase_strip = \
165 for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
166 am__nobase_list = $(am__nobase_strip_setup); \
167 for p in $$list; do echo "$$p $$p"; done | \
168 sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
169 $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
170 if (++n[$$2] == $(am__install_max)) \
171 { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
172 END { for (dir in files) print dir, files[dir] }'
173 am__base_list = \
174 sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
175 sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
176 am__uninstall_files_from_dir = { \
177 test -z "$$files" \
178 || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
179 || { echo " ( cd '$$dir' && rm -f" $$files ")"; \
180 $(am__cd) "$$dir" && rm -f $$files; }; \
181 }
182 man1dir = $(mandir)/man1
183 NROFF = nroff
184 MANS = $(dist_man1_MANS)
185 am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
186 # Read a list of newline-separated strings from the standard input,
187 # and print each of them once, without duplicates. Input order is
188 # *not* preserved.
189 am__uniquify_input = $(AWK) '\
190 BEGIN { nonempty = 0; } \
191 { items[$$0] = 1; nonempty = 1; } \
192 END { if (nonempty) { for (i in items) print i; }; } \
193 '
194 # Make sure the list of sources is unique. This is necessary because,
195 # e.g., the same source file might be shared among _SOURCES variables
196 # for different programs/libraries.
197 am__define_uniq_tagged_files = \
198 list='$(am__tagged_files)'; \
199 unique=`for i in $$list; do \
200 if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
201 done | $(am__uniquify_input)`
202 ETAGS = etags
203 CTAGS = ctags
204 am__DIST_COMMON = $(dist_man1_MANS) $(srcdir)/Makefile.in \
205 $(top_srcdir)/depcomp
206 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
207 ACLOCAL = @ACLOCAL@
208 AMTAR = @AMTAR@
209 AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
210 AR = @AR@
211 AUTOCONF = @AUTOCONF@
212 AUTOHEADER = @AUTOHEADER@
213 AUTOMAKE = @AUTOMAKE@
214 AWK = @AWK@
215 CC = @CC@
216 CCDEPMODE = @CCDEPMODE@
217 CFLAGS = @CFLAGS@
218 CPP = @CPP@
219 CPPFLAGS = @CPPFLAGS@
220 CXX = @CXX@
221 CXXCPP = @CXXCPP@
222 CXXDEPMODE = @CXXDEPMODE@
223 CXXFLAGS = @CXXFLAGS@
224 CYGPATH_W = @CYGPATH_W@
225 DEFS = @DEFS@
226 DEPDIR = @DEPDIR@
227 DLLTOOL = @DLLTOOL@
228 DSYMUTIL = @DSYMUTIL@
229 DUMPBIN = @DUMPBIN@
230 ECHO_C = @ECHO_C@
231 ECHO_N = @ECHO_N@
232 ECHO_T = @ECHO_T@
233 EGREP = @EGREP@
234 EXEEXT = @EXEEXT@
235 FGREP = @FGREP@
236 GREP = @GREP@
237 GTK_CONFIG = @GTK_CONFIG@
238 INSTALL = @INSTALL@
239 INSTALL_DATA = @INSTALL_DATA@
240 INSTALL_PROGRAM = @INSTALL_PROGRAM@
241 INSTALL_SCRIPT = @INSTALL_SCRIPT@
242 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
243 LD = @LD@
244 LDFLAGS = @LDFLAGS@
245 LIBOBJS = @LIBOBJS@
246 LIBS = @LIBS@
247 LIBTOOL = @LIBTOOL@
248 LIBTOOL_DEPS = @LIBTOOL_DEPS@
249 LIPO = @LIPO@
250 LN_S = @LN_S@
251 LTLIBOBJS = @LTLIBOBJS@
252 LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
253 MAKEINFO = @MAKEINFO@
254 MANIFEST_TOOL = @MANIFEST_TOOL@
255 MKDIR_P = @MKDIR_P@
256 MP4FF_LIBS = @MP4FF_LIBS@
257 NM = @NM@
258 NMEDIT = @NMEDIT@
259 OBJDUMP = @OBJDUMP@
260 OBJEXT = @OBJEXT@
261 OTOOL = @OTOOL@
262 OTOOL64 = @OTOOL64@
263 PACKAGE = @PACKAGE@
264 PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
265 PACKAGE_NAME = @PACKAGE_NAME@
266 PACKAGE_STRING = @PACKAGE_STRING@
267 PACKAGE_TARNAME = @PACKAGE_TARNAME@
268 PACKAGE_URL = @PACKAGE_URL@
269 PACKAGE_VERSION = @PACKAGE_VERSION@
270 PATH_SEPARATOR = @PATH_SEPARATOR@
271 RANLIB = @RANLIB@
272 RPMBUILD = @RPMBUILD@
273 SED = @SED@
274 SET_MAKE = @SET_MAKE@
275 SHELL = @SHELL@
276 STRIP = @STRIP@
277 VERSION = @VERSION@
278 XMMS_CONFIG = @XMMS_CONFIG@
279 abs_builddir = @abs_builddir@
280 abs_srcdir = @abs_srcdir@
281 abs_top_builddir = @abs_top_builddir@
282 abs_top_srcdir = @abs_top_srcdir@
283 ac_ct_AR = @ac_ct_AR@
284 ac_ct_CC = @ac_ct_CC@
285 ac_ct_CXX = @ac_ct_CXX@
286 ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
287 am__include = @am__include@
288 am__leading_dot = @am__leading_dot@
289 am__quote = @am__quote@
290 am__tar = @am__tar@
291 am__untar = @am__untar@
292 bindir = @bindir@
293 build = @build@
294 build_alias = @build_alias@
295 build_cpu = @build_cpu@
296 build_os = @build_os@
297 build_vendor = @build_vendor@
298 builddir = @builddir@
299 datadir = @datadir@
300 datarootdir = @datarootdir@
301 docdir = @docdir@
302 dvidir = @dvidir@
303 exec_prefix = @exec_prefix@
304 external_mp4v2 = @external_mp4v2@
305 host = @host@
306 host_alias = @host_alias@
307 host_cpu = @host_cpu@
308 host_os = @host_os@
309 host_vendor = @host_vendor@
310 htmldir = @htmldir@
311 includedir = @includedir@
312 infodir = @infodir@
313 install_sh = @install_sh@
314 libdir = @libdir@
315 libexecdir = @libexecdir@
316 localedir = @localedir@
317 localstatedir = @localstatedir@
318 mandir = @mandir@
319 mkdir_p = @mkdir_p@
320 oldincludedir = @oldincludedir@
321 pdfdir = @pdfdir@
322 prefix = @prefix@
323 program_transform_name = @program_transform_name@
324 psdir = @psdir@
325 runstatedir = @runstatedir@
326 sbindir = @sbindir@
327 sharedstatedir = @sharedstatedir@
328 srcdir = @srcdir@
329 sysconfdir = @sysconfdir@
330 target_alias = @target_alias@
331 top_build_prefix = @top_build_prefix@
332 top_builddir = @top_builddir@
333 top_srcdir = @top_srcdir@
334 dist_man1_MANS = faad.man
335 AM_CPPFLAGS = -I$(top_srcdir)/include
336 faad_LDADD = $(top_builddir)/libfaad/libfaad.la
337 faad_SOURCES = mp4read.c audio.c main.c audio.h mp4read.h unicode_support.c unicode_support.h
338 EXTRA_faad_SOURCES = getopt.c getopt.h
339 all: all-am
340
341 .SUFFIXES:
342 .SUFFIXES: .c .lo .o .obj
343 $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
344 @for dep in $?; do \
345 case '$(am__configure_deps)' in \
346 *$$dep*) \
347 ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
348 && { if test -f $@; then exit 0; else break; fi; }; \
349 exit 1;; \
350 esac; \
351 done; \
352 echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu frontend/Makefile'; \
353 $(am__cd) $(top_srcdir) && \
354 $(AUTOMAKE) --gnu frontend/Makefile
355 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
356 @case '$?' in \
357 *config.status*) \
358 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
359 *) \
360 echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \
361 cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \
362 esac;
363
364 $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
365 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
366
367 $(top_srcdir)/configure: $(am__configure_deps)
368 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
369 $(ACLOCAL_M4): $(am__aclocal_m4_deps)
370 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
371 $(am__aclocal_m4_deps):
372 install-binPROGRAMS: $(bin_PROGRAMS)
373 @$(NORMAL_INSTALL)
374 @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
375 if test -n "$$list"; then \
376 echo " $(MKDIR_P) '$(DESTDIR)$(bindir)'"; \
377 $(MKDIR_P) "$(DESTDIR)$(bindir)" || exit 1; \
378 fi; \
379 for p in $$list; do echo "$$p $$p"; done | \
380 sed 's/$(EXEEXT)$$//' | \
381 while read p p1; do if test -f $$p \
382 || test -f $$p1 \
383 ; then echo "$$p"; echo "$$p"; else :; fi; \
384 done | \
385 sed -e 'p;s,.*/,,;n;h' \
386 -e 's|.*|.|' \
387 -e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \
388 sed 'N;N;N;s,\n, ,g' | \
389 $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \
390 { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
391 if ($$2 == $$4) files[d] = files[d] " " $$1; \
392 else { print "f", $$3 "/" $$4, $$1; } } \
393 END { for (d in files) print "f", d, files[d] }' | \
394 while read type dir files; do \
395 if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
396 test -z "$$files" || { \
397 echo " $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files '$(DESTDIR)$(bindir)$$dir'"; \
398 $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(bindir)$$dir" || exit $$?; \
399 } \
400 ; done
401
402 uninstall-binPROGRAMS:
403 @$(NORMAL_UNINSTALL)
404 @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
405 files=`for p in $$list; do echo "$$p"; done | \
406 sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \
407 -e 's/$$/$(EXEEXT)/' \
408 `; \
409 test -n "$$list" || exit 0; \
410 echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \
411 cd "$(DESTDIR)$(bindir)" && rm -f $$files
412
413 clean-binPROGRAMS:
414 @list='$(bin_PROGRAMS)'; test -n "$$list" || exit 0; \
415 echo " rm -f" $$list; \
416 rm -f $$list || exit $$?; \
417 test -n "$(EXEEXT)" || exit 0; \
418 list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
419 echo " rm -f" $$list; \
420 rm -f $$list
421
422 faad$(EXEEXT): $(faad_OBJECTS) $(faad_DEPENDENCIES) $(EXTRA_faad_DEPENDENCIES)
423 @rm -f faad$(EXEEXT)
424 $(AM_V_CCLD)$(LINK) $(faad_OBJECTS) $(faad_LDADD) $(LIBS)
425
426 mostlyclean-compile:
427 -rm -f *.$(OBJEXT)
428
429 distclean-compile:
430 -rm -f *.tab.c
431
432 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/audio.Po@am__quote@ # am--include-marker
433 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/getopt.Po@am__quote@ # am--include-marker
434 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/main.Po@am__quote@ # am--include-marker
435 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mp4read.Po@am__quote@ # am--include-marker
436 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/unicode_support.Po@am__quote@ # am--include-marker
437
438 $(am__depfiles_remade):
439 @$(MKDIR_P) $(@D)
440 @echo '# dummy' >$@-t && $(am__mv) $@-t $@
441
442 am--depfiles: $(am__depfiles_remade)
443
444 .c.o:
445 @am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\
446 @am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\
447 @am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po
448 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
449 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
450 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $<
451
452 .c.obj:
453 @am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.obj$$||'`;\
454 @am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ `$(CYGPATH_W) '$<'` &&\
455 @am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po
456 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
457 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
458 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
459
460 .c.lo:
461 @am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.lo$$||'`;\
462 @am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\
463 @am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Plo
464 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
465 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
466 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $<
467
468 mostlyclean-libtool:
469 -rm -f *.lo
470
471 clean-libtool:
472 -rm -rf .libs _libs
473 install-man1: $(dist_man1_MANS)
474 @$(NORMAL_INSTALL)
475 @list1='$(dist_man1_MANS)'; \
476 list2=''; \
477 test -n "$(man1dir)" \
478 && test -n "`echo $$list1$$list2`" \
479 || exit 0; \
480 echo " $(MKDIR_P) '$(DESTDIR)$(man1dir)'"; \
481 $(MKDIR_P) "$(DESTDIR)$(man1dir)" || exit 1; \
482 { for i in $$list1; do echo "$$i"; done; \
483 if test -n "$$list2"; then \
484 for i in $$list2; do echo "$$i"; done \
485 | sed -n '/\.1[a-z]*$$/p'; \
486 fi; \
487 } | while read p; do \
488 if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
489 echo "$$d$$p"; echo "$$p"; \
490 done | \
491 sed -e 'n;s,.*/,,;p;h;s,.*\.,,;s,^[^1][0-9a-z]*$$,1,;x' \
492 -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,' | \
493 sed 'N;N;s,\n, ,g' | { \
494 list=; while read file base inst; do \
495 if test "$$base" = "$$inst"; then list="$$list $$file"; else \
496 echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man1dir)/$$inst'"; \
497 $(INSTALL_DATA) "$$file" "$(DESTDIR)$(man1dir)/$$inst" || exit $$?; \
498 fi; \
499 done; \
500 for i in $$list; do echo "$$i"; done | $(am__base_list) | \
501 while read files; do \
502 test -z "$$files" || { \
503 echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(man1dir)'"; \
504 $(INSTALL_DATA) $$files "$(DESTDIR)$(man1dir)" || exit $$?; }; \
505 done; }
506
507 uninstall-man1:
508 @$(NORMAL_UNINSTALL)
509 @list='$(dist_man1_MANS)'; test -n "$(man1dir)" || exit 0; \
510 files=`{ for i in $$list; do echo "$$i"; done; \
511 } | sed -e 's,.*/,,;h;s,.*\.,,;s,^[^1][0-9a-z]*$$,1,;x' \
512 -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \
513 dir='$(DESTDIR)$(man1dir)'; $(am__uninstall_files_from_dir)
514
515 ID: $(am__tagged_files)
516 $(am__define_uniq_tagged_files); mkid -fID $$unique
517 tags: tags-am
518 TAGS: tags
519
520 tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
521 set x; \
522 here=`pwd`; \
523 $(am__define_uniq_tagged_files); \
524 shift; \
525 if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
526 test -n "$$unique" || unique=$$empty_fix; \
527 if test $$# -gt 0; then \
528 $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
529 "$$@" $$unique; \
530 else \
531 $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
532 $$unique; \
533 fi; \
534 fi
535 ctags: ctags-am
536
537 CTAGS: ctags
538 ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
539 $(am__define_uniq_tagged_files); \
540 test -z "$(CTAGS_ARGS)$$unique" \
541 || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
542 $$unique
543
544 GTAGS:
545 here=`$(am__cd) $(top_builddir) && pwd` \
546 && $(am__cd) $(top_srcdir) \
547 && gtags -i $(GTAGS_ARGS) "$$here"
548 cscopelist: cscopelist-am
549
550 cscopelist-am: $(am__tagged_files)
551 list='$(am__tagged_files)'; \
552 case "$(srcdir)" in \
553 [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
554 *) sdir=$(subdir)/$(srcdir) ;; \
555 esac; \
556 for i in $$list; do \
557 if test -f "$$i"; then \
558 echo "$(subdir)/$$i"; \
559 else \
560 echo "$$sdir/$$i"; \
561 fi; \
562 done >> $(top_builddir)/cscope.files
563
564 distclean-tags:
565 -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
566
567 distdir: $(BUILT_SOURCES)
568 $(MAKE) $(AM_MAKEFLAGS) distdir-am
569
570 distdir-am: $(DISTFILES)
571 @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
572 topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
573 list='$(DISTFILES)'; \
574 dist_files=`for file in $$list; do echo $$file; done | \
575 sed -e "s|^$$srcdirstrip/||;t" \
576 -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
577 case $$dist_files in \
578 */*) $(MKDIR_P) `echo "$$dist_files" | \
579 sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
580 sort -u` ;; \
581 esac; \
582 for file in $$dist_files; do \
583 if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
584 if test -d $$d/$$file; then \
585 dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
586 if test -d "$(distdir)/$$file"; then \
587 find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
588 fi; \
589 if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
590 cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
591 find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
592 fi; \
593 cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
594 else \
595 test -f "$(distdir)/$$file" \
596 || cp -p $$d/$$file "$(distdir)/$$file" \
597 || exit 1; \
598 fi; \
599 done
600 check-am: all-am
601 check: check-am
602 all-am: Makefile $(PROGRAMS) $(MANS)
603 installdirs:
604 for dir in "$(DESTDIR)$(bindir)" "$(DESTDIR)$(man1dir)"; do \
605 test -z "$$dir" || $(MKDIR_P) "$$dir"; \
606 done
607 install: install-am
608 install-exec: install-exec-am
609 install-data: install-data-am
610 uninstall: uninstall-am
611
612 install-am: all-am
613 @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
614
615 installcheck: installcheck-am
616 install-strip:
617 if test -z '$(STRIP)'; then \
618 $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
619 install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
620 install; \
621 else \
622 $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
623 install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
624 "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
625 fi
626 mostlyclean-generic:
627
628 clean-generic:
629
630 distclean-generic:
631 -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
632 -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
633
634 maintainer-clean-generic:
635 @echo "This command is intended for maintainers to use"
636 @echo "it deletes files that may require special tools to rebuild."
637 clean: clean-am
638
639 clean-am: clean-binPROGRAMS clean-generic clean-libtool mostlyclean-am
640
641 distclean: distclean-am
642 -rm -f ./$(DEPDIR)/audio.Po
643 -rm -f ./$(DEPDIR)/getopt.Po
644 -rm -f ./$(DEPDIR)/main.Po
645 -rm -f ./$(DEPDIR)/mp4read.Po
646 -rm -f ./$(DEPDIR)/unicode_support.Po
647 -rm -f Makefile
648 distclean-am: clean-am distclean-compile distclean-generic \
649 distclean-tags
650
651 dvi: dvi-am
652
653 dvi-am:
654
655 html: html-am
656
657 html-am:
658
659 info: info-am
660
661 info-am:
662
663 install-data-am: install-man
664
665 install-dvi: install-dvi-am
666
667 install-dvi-am:
668
669 install-exec-am: install-binPROGRAMS
670
671 install-html: install-html-am
672
673 install-html-am:
674
675 install-info: install-info-am
676
677 install-info-am:
678
679 install-man: install-man1
680
681 install-pdf: install-pdf-am
682
683 install-pdf-am:
684
685 install-ps: install-ps-am
686
687 install-ps-am:
688
689 installcheck-am:
690
691 maintainer-clean: maintainer-clean-am
692 -rm -f ./$(DEPDIR)/audio.Po
693 -rm -f ./$(DEPDIR)/getopt.Po
694 -rm -f ./$(DEPDIR)/main.Po
695 -rm -f ./$(DEPDIR)/mp4read.Po
696 -rm -f ./$(DEPDIR)/unicode_support.Po
697 -rm -f Makefile
698 maintainer-clean-am: distclean-am maintainer-clean-generic
699
700 mostlyclean: mostlyclean-am
701
702 mostlyclean-am: mostlyclean-compile mostlyclean-generic \
703 mostlyclean-libtool
704
705 pdf: pdf-am
706
707 pdf-am:
708
709 ps: ps-am
710
711 ps-am:
712
713 uninstall-am: uninstall-binPROGRAMS uninstall-man
714
715 uninstall-man: uninstall-man1
716
717 .MAKE: install-am install-strip
718
719 .PHONY: CTAGS GTAGS TAGS all all-am am--depfiles check check-am clean \
720 clean-binPROGRAMS clean-generic clean-libtool cscopelist-am \
721 ctags ctags-am distclean distclean-compile distclean-generic \
722 distclean-libtool distclean-tags distdir dvi dvi-am html \
723 html-am info info-am install install-am install-binPROGRAMS \
724 install-data install-data-am install-dvi install-dvi-am \
725 install-exec install-exec-am install-html install-html-am \
726 install-info install-info-am install-man install-man1 \
727 install-pdf install-pdf-am install-ps install-ps-am \
728 install-strip installcheck installcheck-am installdirs \
729 maintainer-clean maintainer-clean-generic mostlyclean \
730 mostlyclean-compile mostlyclean-generic mostlyclean-libtool \
731 pdf pdf-am ps ps-am tags tags-am uninstall uninstall-am \
732 uninstall-binPROGRAMS uninstall-man uninstall-man1
733
734 .PRECIOUS: Makefile
735
736
737 # Tell versions [3.59,3.63) of GNU make to not export all variables.
738 # Otherwise a system limit (for SysV at least) may be exceeded.
739 .NOEXPORT:
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
203203 }
204204
205205 #endif /* GNU C library. */
206
206
207207 /* Handle permutation of arguments. */
208208
209209 /* Describe the part of ARGV that contains non-options that have
264264 temp = *first; *first = *last; *last = temp; first++; last--;
265265 }
266266 }
267
267
268268 /* Scan elements of ARGV (whose length is ARGC) for option characters
269269 given in OPTSTRING.
270270
679679 }
680680
681681 #endif /* _LIBC or not __GNU_LIBRARY__. */
682
682
683683 #ifdef TEST
684684
685685 /* Compile with -DTEST to make an executable for use in testing
153153 while ((b->bytes_into_buffer > 0) && (bytes > 0))
154154 {
155155 int chunk = min(bytes, b->bytes_into_buffer);
156
156
157157 bytes -= chunk;
158158 b->file_offset += chunk;
159159 b->bytes_consumed = chunk;
9494 if (!txt[size])
9595 break;
9696 }
97 txt[sizemax-1] = '\0';
9798
9899 return size;
99100 }
342343 u32in();
343344 // Number of entries
344345 mp4config.frame.ents = u32in();
345 // fixme: check atom size
346
347 if (!(mp4config.frame.ents + 1))
348 return ERR_FAIL;
349
346350 mp4config.frame.data = malloc(sizeof(*mp4config.frame.data)
347351 * (mp4config.frame.ents + 1));
348352
101101 fprintf(stderr, "\nFATAL: Malloc failed\n\n");
102102 exit(-1);
103103 }
104
104
105105 for(i = 0; i < nArgs; i++)
106106 {
107107 (*argv)[i] = utf16_to_utf8(szArglist[i]);
118118 void free_commandline_arguments_utf8(int *argc, char ***argv)
119119 {
120120 int i = 0;
121
121
122122 if(*argv != NULL)
123123 {
124124 for(i = 0; i < *argc; i++)
139139 FILE *ret = NULL;
140140 wchar_t *filename_utf16 = utf8_to_utf16(filename_utf8);
141141 wchar_t *mode_utf16 = utf8_to_utf16(mode_utf8);
142
142
143143 if(filename_utf16 && mode_utf16)
144144 {
145145 ret = _wfopen(filename_utf16, mode_utf16);
+0
-21
in_mpeg4aac.nsi less more
0 Name "AudioCoding.com MP4 Winamp plugin"
1 OutFile in_mp4.exe
2 CRCCheck on
3 LicenseText "You must read the following license before installing."
4 LicenseData COPYING
5 ComponentText "This will install the AudioCoding.com MP4 Winamp plugin on your computer."
6 InstType Normal
7 AutoCloseWindow true
8 SetOverwrite on
9 SetDateSave on
10
11 InstallDir $PROGRAMFILES\Winamp
12 InstallDirRegKey HKEY_LOCAL_MACHINE "Software\Microsoft\Windows\CurrentVersion\Uninstall\Winamp" "UninstallString"
13 ;DirShow
14 DirText "The installer has detected the path to Winamp. If it is not correct, please change."
15
16 Section "AudioCoding.com MP4 Winamp plugin"
17 SectionIn 1
18 SetOutPath $INSTDIR\Plugins
19 File plugins\in_mp4\Release\in_mp4.dll
20 SectionEnd
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
0 #!/bin/sh
1 # install - install a program, script, or datafile
2
3 scriptversion=2018-03-11.20; # UTC
4
5 # This originates from X11R5 (mit/util/scripts/install.sh), which was
6 # later released in X11R6 (xc/config/util/install.sh) with the
7 # following copyright and license.
8 #
9 # Copyright (C) 1994 X Consortium
10 #
11 # Permission is hereby granted, free of charge, to any person obtaining a copy
12 # of this software and associated documentation files (the "Software"), to
13 # deal in the Software without restriction, including without limitation the
14 # rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
15 # sell copies of the Software, and to permit persons to whom the Software is
16 # furnished to do so, subject to the following conditions:
17 #
18 # The above copyright notice and this permission notice shall be included in
19 # all copies or substantial portions of the Software.
20 #
21 # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
22 # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
23 # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
24 # X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
25 # AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC-
26 # TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
27 #
28 # Except as contained in this notice, the name of the X Consortium shall not
29 # be used in advertising or otherwise to promote the sale, use or other deal-
30 # ings in this Software without prior written authorization from the X Consor-
31 # tium.
32 #
33 #
34 # FSF changes to this file are in the public domain.
35 #
36 # Calling this script install-sh is preferred over install.sh, to prevent
37 # 'make' implicit rules from creating a file called install from it
38 # when there is no Makefile.
39 #
40 # This script is compatible with the BSD install script, but was written
41 # from scratch.
42
43 tab=' '
44 nl='
45 '
46 IFS=" $tab$nl"
47
48 # Set DOITPROG to "echo" to test this script.
49
50 doit=${DOITPROG-}
51 doit_exec=${doit:-exec}
52
53 # Put in absolute file names if you don't have them in your path;
54 # or use environment vars.
55
56 chgrpprog=${CHGRPPROG-chgrp}
57 chmodprog=${CHMODPROG-chmod}
58 chownprog=${CHOWNPROG-chown}
59 cmpprog=${CMPPROG-cmp}
60 cpprog=${CPPROG-cp}
61 mkdirprog=${MKDIRPROG-mkdir}
62 mvprog=${MVPROG-mv}
63 rmprog=${RMPROG-rm}
64 stripprog=${STRIPPROG-strip}
65
66 posix_mkdir=
67
68 # Desired mode of installed file.
69 mode=0755
70
71 chgrpcmd=
72 chmodcmd=$chmodprog
73 chowncmd=
74 mvcmd=$mvprog
75 rmcmd="$rmprog -f"
76 stripcmd=
77
78 src=
79 dst=
80 dir_arg=
81 dst_arg=
82
83 copy_on_change=false
84 is_target_a_directory=possibly
85
86 usage="\
87 Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE
88 or: $0 [OPTION]... SRCFILES... DIRECTORY
89 or: $0 [OPTION]... -t DIRECTORY SRCFILES...
90 or: $0 [OPTION]... -d DIRECTORIES...
91
92 In the 1st form, copy SRCFILE to DSTFILE.
93 In the 2nd and 3rd, copy all SRCFILES to DIRECTORY.
94 In the 4th, create DIRECTORIES.
95
96 Options:
97 --help display this help and exit.
98 --version display version info and exit.
99
100 -c (ignored)
101 -C install only if different (preserve the last data modification time)
102 -d create directories instead of installing files.
103 -g GROUP $chgrpprog installed files to GROUP.
104 -m MODE $chmodprog installed files to MODE.
105 -o USER $chownprog installed files to USER.
106 -s $stripprog installed files.
107 -t DIRECTORY install into DIRECTORY.
108 -T report an error if DSTFILE is a directory.
109
110 Environment variables override the default commands:
111 CHGRPPROG CHMODPROG CHOWNPROG CMPPROG CPPROG MKDIRPROG MVPROG
112 RMPROG STRIPPROG
113 "
114
115 while test $# -ne 0; do
116 case $1 in
117 -c) ;;
118
119 -C) copy_on_change=true;;
120
121 -d) dir_arg=true;;
122
123 -g) chgrpcmd="$chgrpprog $2"
124 shift;;
125
126 --help) echo "$usage"; exit $?;;
127
128 -m) mode=$2
129 case $mode in
130 *' '* | *"$tab"* | *"$nl"* | *'*'* | *'?'* | *'['*)
131 echo "$0: invalid mode: $mode" >&2
132 exit 1;;
133 esac
134 shift;;
135
136 -o) chowncmd="$chownprog $2"
137 shift;;
138
139 -s) stripcmd=$stripprog;;
140
141 -t)
142 is_target_a_directory=always
143 dst_arg=$2
144 # Protect names problematic for 'test' and other utilities.
145 case $dst_arg in
146 -* | [=\(\)!]) dst_arg=./$dst_arg;;
147 esac
148 shift;;
149
150 -T) is_target_a_directory=never;;
151
152 --version) echo "$0 $scriptversion"; exit $?;;
153
154 --) shift
155 break;;
156
157 -*) echo "$0: invalid option: $1" >&2
158 exit 1;;
159
160 *) break;;
161 esac
162 shift
163 done
164
165 # We allow the use of options -d and -T together, by making -d
166 # take the precedence; this is for compatibility with GNU install.
167
168 if test -n "$dir_arg"; then
169 if test -n "$dst_arg"; then
170 echo "$0: target directory not allowed when installing a directory." >&2
171 exit 1
172 fi
173 fi
174
175 if test $# -ne 0 && test -z "$dir_arg$dst_arg"; then
176 # When -d is used, all remaining arguments are directories to create.
177 # When -t is used, the destination is already specified.
178 # Otherwise, the last argument is the destination. Remove it from $@.
179 for arg
180 do
181 if test -n "$dst_arg"; then
182 # $@ is not empty: it contains at least $arg.
183 set fnord "$@" "$dst_arg"
184 shift # fnord
185 fi
186 shift # arg
187 dst_arg=$arg
188 # Protect names problematic for 'test' and other utilities.
189 case $dst_arg in
190 -* | [=\(\)!]) dst_arg=./$dst_arg;;
191 esac
192 done
193 fi
194
195 if test $# -eq 0; then
196 if test -z "$dir_arg"; then
197 echo "$0: no input file specified." >&2
198 exit 1
199 fi
200 # It's OK to call 'install-sh -d' without argument.
201 # This can happen when creating conditional directories.
202 exit 0
203 fi
204
205 if test -z "$dir_arg"; then
206 if test $# -gt 1 || test "$is_target_a_directory" = always; then
207 if test ! -d "$dst_arg"; then
208 echo "$0: $dst_arg: Is not a directory." >&2
209 exit 1
210 fi
211 fi
212 fi
213
214 if test -z "$dir_arg"; then
215 do_exit='(exit $ret); exit $ret'
216 trap "ret=129; $do_exit" 1
217 trap "ret=130; $do_exit" 2
218 trap "ret=141; $do_exit" 13
219 trap "ret=143; $do_exit" 15
220
221 # Set umask so as not to create temps with too-generous modes.
222 # However, 'strip' requires both read and write access to temps.
223 case $mode in
224 # Optimize common cases.
225 *644) cp_umask=133;;
226 *755) cp_umask=22;;
227
228 *[0-7])
229 if test -z "$stripcmd"; then
230 u_plus_rw=
231 else
232 u_plus_rw='% 200'
233 fi
234 cp_umask=`expr '(' 777 - $mode % 1000 ')' $u_plus_rw`;;
235 *)
236 if test -z "$stripcmd"; then
237 u_plus_rw=
238 else
239 u_plus_rw=,u+rw
240 fi
241 cp_umask=$mode$u_plus_rw;;
242 esac
243 fi
244
245 for src
246 do
247 # Protect names problematic for 'test' and other utilities.
248 case $src in
249 -* | [=\(\)!]) src=./$src;;
250 esac
251
252 if test -n "$dir_arg"; then
253 dst=$src
254 dstdir=$dst
255 test -d "$dstdir"
256 dstdir_status=$?
257 else
258
259 # Waiting for this to be detected by the "$cpprog $src $dsttmp" command
260 # might cause directories to be created, which would be especially bad
261 # if $src (and thus $dsttmp) contains '*'.
262 if test ! -f "$src" && test ! -d "$src"; then
263 echo "$0: $src does not exist." >&2
264 exit 1
265 fi
266
267 if test -z "$dst_arg"; then
268 echo "$0: no destination specified." >&2
269 exit 1
270 fi
271 dst=$dst_arg
272
273 # If destination is a directory, append the input filename.
274 if test -d "$dst"; then
275 if test "$is_target_a_directory" = never; then
276 echo "$0: $dst_arg: Is a directory" >&2
277 exit 1
278 fi
279 dstdir=$dst
280 dstbase=`basename "$src"`
281 case $dst in
282 */) dst=$dst$dstbase;;
283 *) dst=$dst/$dstbase;;
284 esac
285 dstdir_status=0
286 else
287 dstdir=`dirname "$dst"`
288 test -d "$dstdir"
289 dstdir_status=$?
290 fi
291 fi
292
293 case $dstdir in
294 */) dstdirslash=$dstdir;;
295 *) dstdirslash=$dstdir/;;
296 esac
297
298 obsolete_mkdir_used=false
299
300 if test $dstdir_status != 0; then
301 case $posix_mkdir in
302 '')
303 # Create intermediate dirs using mode 755 as modified by the umask.
304 # This is like FreeBSD 'install' as of 1997-10-28.
305 umask=`umask`
306 case $stripcmd.$umask in
307 # Optimize common cases.
308 *[2367][2367]) mkdir_umask=$umask;;
309 .*0[02][02] | .[02][02] | .[02]) mkdir_umask=22;;
310
311 *[0-7])
312 mkdir_umask=`expr $umask + 22 \
313 - $umask % 100 % 40 + $umask % 20 \
314 - $umask % 10 % 4 + $umask % 2
315 `;;
316 *) mkdir_umask=$umask,go-w;;
317 esac
318
319 # With -d, create the new directory with the user-specified mode.
320 # Otherwise, rely on $mkdir_umask.
321 if test -n "$dir_arg"; then
322 mkdir_mode=-m$mode
323 else
324 mkdir_mode=
325 fi
326
327 posix_mkdir=false
328 case $umask in
329 *[123567][0-7][0-7])
330 # POSIX mkdir -p sets u+wx bits regardless of umask, which
331 # is incompatible with FreeBSD 'install' when (umask & 300) != 0.
332 ;;
333 *)
334 # Note that $RANDOM variable is not portable (e.g. dash); Use it
335 # here however when possible just to lower collision chance.
336 tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$
337
338 trap 'ret=$?; rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir" 2>/dev/null; exit $ret' 0
339
340 # Because "mkdir -p" follows existing symlinks and we likely work
341 # directly in world-writeable /tmp, make sure that the '$tmpdir'
342 # directory is successfully created first before we actually test
343 # 'mkdir -p' feature.
344 if (umask $mkdir_umask &&
345 $mkdirprog $mkdir_mode "$tmpdir" &&
346 exec $mkdirprog $mkdir_mode -p -- "$tmpdir/a/b") >/dev/null 2>&1
347 then
348 if test -z "$dir_arg" || {
349 # Check for POSIX incompatibilities with -m.
350 # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or
351 # other-writable bit of parent directory when it shouldn't.
352 # FreeBSD 6.1 mkdir -m -p sets mode of existing directory.
353 test_tmpdir="$tmpdir/a"
354 ls_ld_tmpdir=`ls -ld "$test_tmpdir"`
355 case $ls_ld_tmpdir in
356 d????-?r-*) different_mode=700;;
357 d????-?--*) different_mode=755;;
358 *) false;;
359 esac &&
360 $mkdirprog -m$different_mode -p -- "$test_tmpdir" && {
361 ls_ld_tmpdir_1=`ls -ld "$test_tmpdir"`
362 test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1"
363 }
364 }
365 then posix_mkdir=:
366 fi
367 rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir"
368 else
369 # Remove any dirs left behind by ancient mkdir implementations.
370 rmdir ./$mkdir_mode ./-p ./-- "$tmpdir" 2>/dev/null
371 fi
372 trap '' 0;;
373 esac;;
374 esac
375
376 if
377 $posix_mkdir && (
378 umask $mkdir_umask &&
379 $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir"
380 )
381 then :
382 else
383
384 # The umask is ridiculous, or mkdir does not conform to POSIX,
385 # or it failed possibly due to a race condition. Create the
386 # directory the slow way, step by step, checking for races as we go.
387
388 case $dstdir in
389 /*) prefix='/';;
390 [-=\(\)!]*) prefix='./';;
391 *) prefix='';;
392 esac
393
394 oIFS=$IFS
395 IFS=/
396 set -f
397 set fnord $dstdir
398 shift
399 set +f
400 IFS=$oIFS
401
402 prefixes=
403
404 for d
405 do
406 test X"$d" = X && continue
407
408 prefix=$prefix$d
409 if test -d "$prefix"; then
410 prefixes=
411 else
412 if $posix_mkdir; then
413 (umask=$mkdir_umask &&
414 $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir") && break
415 # Don't fail if two instances are running concurrently.
416 test -d "$prefix" || exit 1
417 else
418 case $prefix in
419 *\'*) qprefix=`echo "$prefix" | sed "s/'/'\\\\\\\\''/g"`;;
420 *) qprefix=$prefix;;
421 esac
422 prefixes="$prefixes '$qprefix'"
423 fi
424 fi
425 prefix=$prefix/
426 done
427
428 if test -n "$prefixes"; then
429 # Don't fail if two instances are running concurrently.
430 (umask $mkdir_umask &&
431 eval "\$doit_exec \$mkdirprog $prefixes") ||
432 test -d "$dstdir" || exit 1
433 obsolete_mkdir_used=true
434 fi
435 fi
436 fi
437
438 if test -n "$dir_arg"; then
439 { test -z "$chowncmd" || $doit $chowncmd "$dst"; } &&
440 { test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } &&
441 { test "$obsolete_mkdir_used$chowncmd$chgrpcmd" = false ||
442 test -z "$chmodcmd" || $doit $chmodcmd $mode "$dst"; } || exit 1
443 else
444
445 # Make a couple of temp file names in the proper directory.
446 dsttmp=${dstdirslash}_inst.$$_
447 rmtmp=${dstdirslash}_rm.$$_
448
449 # Trap to clean up those temp files at exit.
450 trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0
451
452 # Copy the file name to the temp name.
453 (umask $cp_umask &&
454 { test -z "$stripcmd" || {
455 # Create $dsttmp read-write so that cp doesn't create it read-only,
456 # which would cause strip to fail.
457 if test -z "$doit"; then
458 : >"$dsttmp" # No need to fork-exec 'touch'.
459 else
460 $doit touch "$dsttmp"
461 fi
462 }
463 } &&
464 $doit_exec $cpprog "$src" "$dsttmp") &&
465
466 # and set any options; do chmod last to preserve setuid bits.
467 #
468 # If any of these fail, we abort the whole thing. If we want to
469 # ignore errors from any of these, just make sure not to ignore
470 # errors from the above "$doit $cpprog $src $dsttmp" command.
471 #
472 { test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } &&
473 { test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } &&
474 { test -z "$stripcmd" || $doit $stripcmd "$dsttmp"; } &&
475 { test -z "$chmodcmd" || $doit $chmodcmd $mode "$dsttmp"; } &&
476
477 # If -C, don't bother to copy if it wouldn't change the file.
478 if $copy_on_change &&
479 old=`LC_ALL=C ls -dlL "$dst" 2>/dev/null` &&
480 new=`LC_ALL=C ls -dlL "$dsttmp" 2>/dev/null` &&
481 set -f &&
482 set X $old && old=:$2:$4:$5:$6 &&
483 set X $new && new=:$2:$4:$5:$6 &&
484 set +f &&
485 test "$old" = "$new" &&
486 $cmpprog "$dst" "$dsttmp" >/dev/null 2>&1
487 then
488 rm -f "$dsttmp"
489 else
490 # Rename the file to the real destination.
491 $doit $mvcmd -f "$dsttmp" "$dst" 2>/dev/null ||
492
493 # The rename failed, perhaps because mv can't rename something else
494 # to itself, or perhaps because mv is so ancient that it does not
495 # support -f.
496 {
497 # Now remove or move aside any old file at destination location.
498 # We try this two ways since rm can't unlink itself on some
499 # systems and the destination file might be busy for other
500 # reasons. In this case, the final cleanup might fail but the new
501 # file should still install successfully.
502 {
503 test ! -f "$dst" ||
504 $doit $rmcmd -f "$dst" 2>/dev/null ||
505 { $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null &&
506 { $doit $rmcmd -f "$rmtmp" 2>/dev/null; :; }
507 } ||
508 { echo "$0: cannot unlink or rename $dst" >&2
509 (exit 1); exit 1
510 }
511 } &&
512
513 # Now rename the file to the real destination.
514 $doit $mvcmd "$dsttmp" "$dst"
515 }
516 fi || exit 1
517
518 trap '' 0
519 fi
520 done
521
522 # Local variables:
523 # eval: (add-hook 'before-save-hook 'time-stamp)
524 # time-stamp-start: "scriptversion="
525 # time-stamp-format: "%:y-%02m-%02d.%02H"
526 # time-stamp-time-zone: "UTC0"
527 # time-stamp-end: "; # UTC"
528 # End:
0 # Makefile.in generated by automake 1.16.2 from Makefile.am.
1 # @configure_input@
2
3 # Copyright (C) 1994-2020 Free Software Foundation, Inc.
4
5 # This Makefile.in is free software; the Free Software Foundation
6 # gives unlimited permission to copy and/or distribute it,
7 # with or without modifications, as long as this notice is preserved.
8
9 # This program is distributed in the hope that it will be useful,
10 # but WITHOUT ANY WARRANTY, to the extent permitted by law; without
11 # even the implied warranty of MERCHANTABILITY or FITNESS FOR A
12 # PARTICULAR PURPOSE.
13
14 @SET_MAKE@
15
16
17
18 VPATH = @srcdir@
19 am__is_gnu_make = { \
20 if test -z '$(MAKELEVEL)'; then \
21 false; \
22 elif test -n '$(MAKE_HOST)'; then \
23 true; \
24 elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
25 true; \
26 else \
27 false; \
28 fi; \
29 }
30 am__make_running_with_option = \
31 case $${target_option-} in \
32 ?) ;; \
33 *) echo "am__make_running_with_option: internal error: invalid" \
34 "target option '$${target_option-}' specified" >&2; \
35 exit 1;; \
36 esac; \
37 has_opt=no; \
38 sane_makeflags=$$MAKEFLAGS; \
39 if $(am__is_gnu_make); then \
40 sane_makeflags=$$MFLAGS; \
41 else \
42 case $$MAKEFLAGS in \
43 *\\[\ \ ]*) \
44 bs=\\; \
45 sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
46 | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
47 esac; \
48 fi; \
49 skip_next=no; \
50 strip_trailopt () \
51 { \
52 flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
53 }; \
54 for flg in $$sane_makeflags; do \
55 test $$skip_next = yes && { skip_next=no; continue; }; \
56 case $$flg in \
57 *=*|--*) continue;; \
58 -*I) strip_trailopt 'I'; skip_next=yes;; \
59 -*I?*) strip_trailopt 'I';; \
60 -*O) strip_trailopt 'O'; skip_next=yes;; \
61 -*O?*) strip_trailopt 'O';; \
62 -*l) strip_trailopt 'l'; skip_next=yes;; \
63 -*l?*) strip_trailopt 'l';; \
64 -[dEDm]) skip_next=yes;; \
65 -[JT]) skip_next=yes;; \
66 esac; \
67 case $$flg in \
68 *$$target_option*) has_opt=yes; break;; \
69 esac; \
70 done; \
71 test $$has_opt = yes
72 am__make_dryrun = (target_option=n; $(am__make_running_with_option))
73 am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
74 pkgdatadir = $(datadir)/@PACKAGE@
75 pkgincludedir = $(includedir)/@PACKAGE@
76 pkglibdir = $(libdir)/@PACKAGE@
77 pkglibexecdir = $(libexecdir)/@PACKAGE@
78 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
79 install_sh_DATA = $(install_sh) -c -m 644
80 install_sh_PROGRAM = $(install_sh) -c
81 install_sh_SCRIPT = $(install_sh) -c
82 INSTALL_HEADER = $(INSTALL_DATA)
83 transform = $(program_transform_name)
84 NORMAL_INSTALL = :
85 PRE_INSTALL = :
86 POST_INSTALL = :
87 NORMAL_UNINSTALL = :
88 PRE_UNINSTALL = :
89 POST_UNINSTALL = :
90 build_triplet = @build@
91 host_triplet = @host@
92 subdir = libfaad
93 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
94 am__aclocal_m4_deps = $(top_srcdir)/configure.ac
95 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
96 $(ACLOCAL_M4)
97 DIST_COMMON = $(srcdir)/Makefile.am $(include_HEADERS) \
98 $(am__DIST_COMMON)
99 mkinstalldirs = $(install_sh) -d
100 CONFIG_HEADER = $(top_builddir)/config.h
101 CONFIG_CLEAN_FILES = faad2.pc
102 CONFIG_CLEAN_VPATH_FILES =
103 am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
104 am__vpath_adj = case $$p in \
105 $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
106 *) f=$$p;; \
107 esac;
108 am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
109 am__install_max = 40
110 am__nobase_strip_setup = \
111 srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
112 am__nobase_strip = \
113 for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
114 am__nobase_list = $(am__nobase_strip_setup); \
115 for p in $$list; do echo "$$p $$p"; done | \
116 sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
117 $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
118 if (++n[$$2] == $(am__install_max)) \
119 { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
120 END { for (dir in files) print dir, files[dir] }'
121 am__base_list = \
122 sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
123 sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
124 am__uninstall_files_from_dir = { \
125 test -z "$$files" \
126 || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
127 || { echo " ( cd '$$dir' && rm -f" $$files ")"; \
128 $(am__cd) "$$dir" && rm -f $$files; }; \
129 }
130 am__installdirs = "$(DESTDIR)$(libdir)" "$(DESTDIR)$(pkgconfigdir)" \
131 "$(DESTDIR)$(includedir)"
132 LTLIBRARIES = $(lib_LTLIBRARIES)
133 libfaad_la_DEPENDENCIES =
134 am_libfaad_la_OBJECTS = libfaad_la-bits.lo libfaad_la-cfft.lo \
135 libfaad_la-decoder.lo libfaad_la-drc.lo libfaad_la-drm_dec.lo \
136 libfaad_la-error.lo libfaad_la-filtbank.lo \
137 libfaad_la-ic_predict.lo libfaad_la-is.lo \
138 libfaad_la-lt_predict.lo libfaad_la-mdct.lo libfaad_la-mp4.lo \
139 libfaad_la-ms.lo libfaad_la-output.lo libfaad_la-pns.lo \
140 libfaad_la-ps_dec.lo libfaad_la-ps_syntax.lo \
141 libfaad_la-pulse.lo libfaad_la-specrec.lo libfaad_la-syntax.lo \
142 libfaad_la-tns.lo libfaad_la-hcr.lo libfaad_la-huffman.lo \
143 libfaad_la-rvlc.lo libfaad_la-ssr.lo libfaad_la-ssr_fb.lo \
144 libfaad_la-ssr_ipqf.lo libfaad_la-common.lo \
145 libfaad_la-sbr_dct.lo libfaad_la-sbr_e_nf.lo \
146 libfaad_la-sbr_fbt.lo libfaad_la-sbr_hfadj.lo \
147 libfaad_la-sbr_hfgen.lo libfaad_la-sbr_huff.lo \
148 libfaad_la-sbr_qmf.lo libfaad_la-sbr_syntax.lo \
149 libfaad_la-sbr_tf_grid.lo libfaad_la-sbr_dec.lo
150 libfaad_la_OBJECTS = $(am_libfaad_la_OBJECTS)
151 AM_V_lt = $(am__v_lt_@AM_V@)
152 am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
153 am__v_lt_0 = --silent
154 am__v_lt_1 =
155 libfaad_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
156 $(LIBTOOLFLAGS) --mode=link $(CCLD) $(libfaad_la_CFLAGS) \
157 $(CFLAGS) $(libfaad_la_LDFLAGS) $(LDFLAGS) -o $@
158 am__DEPENDENCIES_1 =
159 libfaad_drm_la_DEPENDENCIES = $(am__DEPENDENCIES_1)
160 am__objects_1 = libfaad_drm_la-bits.lo libfaad_drm_la-cfft.lo \
161 libfaad_drm_la-decoder.lo libfaad_drm_la-drc.lo \
162 libfaad_drm_la-drm_dec.lo libfaad_drm_la-error.lo \
163 libfaad_drm_la-filtbank.lo libfaad_drm_la-ic_predict.lo \
164 libfaad_drm_la-is.lo libfaad_drm_la-lt_predict.lo \
165 libfaad_drm_la-mdct.lo libfaad_drm_la-mp4.lo \
166 libfaad_drm_la-ms.lo libfaad_drm_la-output.lo \
167 libfaad_drm_la-pns.lo libfaad_drm_la-ps_dec.lo \
168 libfaad_drm_la-ps_syntax.lo libfaad_drm_la-pulse.lo \
169 libfaad_drm_la-specrec.lo libfaad_drm_la-syntax.lo \
170 libfaad_drm_la-tns.lo libfaad_drm_la-hcr.lo \
171 libfaad_drm_la-huffman.lo libfaad_drm_la-rvlc.lo \
172 libfaad_drm_la-ssr.lo libfaad_drm_la-ssr_fb.lo \
173 libfaad_drm_la-ssr_ipqf.lo libfaad_drm_la-common.lo \
174 libfaad_drm_la-sbr_dct.lo libfaad_drm_la-sbr_e_nf.lo \
175 libfaad_drm_la-sbr_fbt.lo libfaad_drm_la-sbr_hfadj.lo \
176 libfaad_drm_la-sbr_hfgen.lo libfaad_drm_la-sbr_huff.lo \
177 libfaad_drm_la-sbr_qmf.lo libfaad_drm_la-sbr_syntax.lo \
178 libfaad_drm_la-sbr_tf_grid.lo libfaad_drm_la-sbr_dec.lo
179 am_libfaad_drm_la_OBJECTS = $(am__objects_1)
180 libfaad_drm_la_OBJECTS = $(am_libfaad_drm_la_OBJECTS)
181 libfaad_drm_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \
182 $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \
183 $(libfaad_drm_la_CFLAGS) $(CFLAGS) $(libfaad_drm_la_LDFLAGS) \
184 $(LDFLAGS) -o $@
185 AM_V_P = $(am__v_P_@AM_V@)
186 am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
187 am__v_P_0 = false
188 am__v_P_1 = :
189 AM_V_GEN = $(am__v_GEN_@AM_V@)
190 am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
191 am__v_GEN_0 = @echo " GEN " $@;
192 am__v_GEN_1 =
193 AM_V_at = $(am__v_at_@AM_V@)
194 am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
195 am__v_at_0 = @
196 am__v_at_1 =
197 DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
198 depcomp = $(SHELL) $(top_srcdir)/depcomp
199 am__maybe_remake_depfiles = depfiles
200 am__depfiles_remade = ./$(DEPDIR)/libfaad_drm_la-bits.Plo \
201 ./$(DEPDIR)/libfaad_drm_la-cfft.Plo \
202 ./$(DEPDIR)/libfaad_drm_la-common.Plo \
203 ./$(DEPDIR)/libfaad_drm_la-decoder.Plo \
204 ./$(DEPDIR)/libfaad_drm_la-drc.Plo \
205 ./$(DEPDIR)/libfaad_drm_la-drm_dec.Plo \
206 ./$(DEPDIR)/libfaad_drm_la-error.Plo \
207 ./$(DEPDIR)/libfaad_drm_la-filtbank.Plo \
208 ./$(DEPDIR)/libfaad_drm_la-hcr.Plo \
209 ./$(DEPDIR)/libfaad_drm_la-huffman.Plo \
210 ./$(DEPDIR)/libfaad_drm_la-ic_predict.Plo \
211 ./$(DEPDIR)/libfaad_drm_la-is.Plo \
212 ./$(DEPDIR)/libfaad_drm_la-lt_predict.Plo \
213 ./$(DEPDIR)/libfaad_drm_la-mdct.Plo \
214 ./$(DEPDIR)/libfaad_drm_la-mp4.Plo \
215 ./$(DEPDIR)/libfaad_drm_la-ms.Plo \
216 ./$(DEPDIR)/libfaad_drm_la-output.Plo \
217 ./$(DEPDIR)/libfaad_drm_la-pns.Plo \
218 ./$(DEPDIR)/libfaad_drm_la-ps_dec.Plo \
219 ./$(DEPDIR)/libfaad_drm_la-ps_syntax.Plo \
220 ./$(DEPDIR)/libfaad_drm_la-pulse.Plo \
221 ./$(DEPDIR)/libfaad_drm_la-rvlc.Plo \
222 ./$(DEPDIR)/libfaad_drm_la-sbr_dct.Plo \
223 ./$(DEPDIR)/libfaad_drm_la-sbr_dec.Plo \
224 ./$(DEPDIR)/libfaad_drm_la-sbr_e_nf.Plo \
225 ./$(DEPDIR)/libfaad_drm_la-sbr_fbt.Plo \
226 ./$(DEPDIR)/libfaad_drm_la-sbr_hfadj.Plo \
227 ./$(DEPDIR)/libfaad_drm_la-sbr_hfgen.Plo \
228 ./$(DEPDIR)/libfaad_drm_la-sbr_huff.Plo \
229 ./$(DEPDIR)/libfaad_drm_la-sbr_qmf.Plo \
230 ./$(DEPDIR)/libfaad_drm_la-sbr_syntax.Plo \
231 ./$(DEPDIR)/libfaad_drm_la-sbr_tf_grid.Plo \
232 ./$(DEPDIR)/libfaad_drm_la-specrec.Plo \
233 ./$(DEPDIR)/libfaad_drm_la-ssr.Plo \
234 ./$(DEPDIR)/libfaad_drm_la-ssr_fb.Plo \
235 ./$(DEPDIR)/libfaad_drm_la-ssr_ipqf.Plo \
236 ./$(DEPDIR)/libfaad_drm_la-syntax.Plo \
237 ./$(DEPDIR)/libfaad_drm_la-tns.Plo \
238 ./$(DEPDIR)/libfaad_la-bits.Plo \
239 ./$(DEPDIR)/libfaad_la-cfft.Plo \
240 ./$(DEPDIR)/libfaad_la-common.Plo \
241 ./$(DEPDIR)/libfaad_la-decoder.Plo \
242 ./$(DEPDIR)/libfaad_la-drc.Plo \
243 ./$(DEPDIR)/libfaad_la-drm_dec.Plo \
244 ./$(DEPDIR)/libfaad_la-error.Plo \
245 ./$(DEPDIR)/libfaad_la-filtbank.Plo \
246 ./$(DEPDIR)/libfaad_la-hcr.Plo \
247 ./$(DEPDIR)/libfaad_la-huffman.Plo \
248 ./$(DEPDIR)/libfaad_la-ic_predict.Plo \
249 ./$(DEPDIR)/libfaad_la-is.Plo \
250 ./$(DEPDIR)/libfaad_la-lt_predict.Plo \
251 ./$(DEPDIR)/libfaad_la-mdct.Plo ./$(DEPDIR)/libfaad_la-mp4.Plo \
252 ./$(DEPDIR)/libfaad_la-ms.Plo \
253 ./$(DEPDIR)/libfaad_la-output.Plo \
254 ./$(DEPDIR)/libfaad_la-pns.Plo \
255 ./$(DEPDIR)/libfaad_la-ps_dec.Plo \
256 ./$(DEPDIR)/libfaad_la-ps_syntax.Plo \
257 ./$(DEPDIR)/libfaad_la-pulse.Plo \
258 ./$(DEPDIR)/libfaad_la-rvlc.Plo \
259 ./$(DEPDIR)/libfaad_la-sbr_dct.Plo \
260 ./$(DEPDIR)/libfaad_la-sbr_dec.Plo \
261 ./$(DEPDIR)/libfaad_la-sbr_e_nf.Plo \
262 ./$(DEPDIR)/libfaad_la-sbr_fbt.Plo \
263 ./$(DEPDIR)/libfaad_la-sbr_hfadj.Plo \
264 ./$(DEPDIR)/libfaad_la-sbr_hfgen.Plo \
265 ./$(DEPDIR)/libfaad_la-sbr_huff.Plo \
266 ./$(DEPDIR)/libfaad_la-sbr_qmf.Plo \
267 ./$(DEPDIR)/libfaad_la-sbr_syntax.Plo \
268 ./$(DEPDIR)/libfaad_la-sbr_tf_grid.Plo \
269 ./$(DEPDIR)/libfaad_la-specrec.Plo \
270 ./$(DEPDIR)/libfaad_la-ssr.Plo \
271 ./$(DEPDIR)/libfaad_la-ssr_fb.Plo \
272 ./$(DEPDIR)/libfaad_la-ssr_ipqf.Plo \
273 ./$(DEPDIR)/libfaad_la-syntax.Plo \
274 ./$(DEPDIR)/libfaad_la-tns.Plo
275 am__mv = mv -f
276 COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
277 $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
278 LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
279 $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \
280 $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
281 $(AM_CFLAGS) $(CFLAGS)
282 AM_V_CC = $(am__v_CC_@AM_V@)
283 am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@)
284 am__v_CC_0 = @echo " CC " $@;
285 am__v_CC_1 =
286 CCLD = $(CC)
287 LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
288 $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
289 $(AM_LDFLAGS) $(LDFLAGS) -o $@
290 AM_V_CCLD = $(am__v_CCLD_@AM_V@)
291 am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@)
292 am__v_CCLD_0 = @echo " CCLD " $@;
293 am__v_CCLD_1 =
294 SOURCES = $(libfaad_la_SOURCES) $(libfaad_drm_la_SOURCES)
295 DIST_SOURCES = $(libfaad_la_SOURCES) $(libfaad_drm_la_SOURCES)
296 am__can_run_installinfo = \
297 case $$AM_UPDATE_INFO_DIR in \
298 n|no|NO) false;; \
299 *) (install-info --version) >/dev/null 2>&1;; \
300 esac
301 DATA = $(pkgconfig_DATA)
302 HEADERS = $(include_HEADERS)
303 am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
304 # Read a list of newline-separated strings from the standard input,
305 # and print each of them once, without duplicates. Input order is
306 # *not* preserved.
307 am__uniquify_input = $(AWK) '\
308 BEGIN { nonempty = 0; } \
309 { items[$$0] = 1; nonempty = 1; } \
310 END { if (nonempty) { for (i in items) print i; }; } \
311 '
312 # Make sure the list of sources is unique. This is necessary because,
313 # e.g., the same source file might be shared among _SOURCES variables
314 # for different programs/libraries.
315 am__define_uniq_tagged_files = \
316 list='$(am__tagged_files)'; \
317 unique=`for i in $$list; do \
318 if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
319 done | $(am__uniquify_input)`
320 ETAGS = etags
321 CTAGS = ctags
322 am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/faad2.pc.in \
323 $(top_srcdir)/depcomp
324 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
325 ACLOCAL = @ACLOCAL@
326 AMTAR = @AMTAR@
327 AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
328 AR = @AR@
329 AUTOCONF = @AUTOCONF@
330 AUTOHEADER = @AUTOHEADER@
331 AUTOMAKE = @AUTOMAKE@
332 AWK = @AWK@
333 CC = @CC@
334 CCDEPMODE = @CCDEPMODE@
335 CFLAGS = @CFLAGS@
336 CPP = @CPP@
337 CPPFLAGS = @CPPFLAGS@
338 CXX = @CXX@
339 CXXCPP = @CXXCPP@
340 CXXDEPMODE = @CXXDEPMODE@
341 CXXFLAGS = @CXXFLAGS@
342 CYGPATH_W = @CYGPATH_W@
343 DEFS = @DEFS@
344 DEPDIR = @DEPDIR@
345 DLLTOOL = @DLLTOOL@
346 DSYMUTIL = @DSYMUTIL@
347 DUMPBIN = @DUMPBIN@
348 ECHO_C = @ECHO_C@
349 ECHO_N = @ECHO_N@
350 ECHO_T = @ECHO_T@
351 EGREP = @EGREP@
352 EXEEXT = @EXEEXT@
353 FGREP = @FGREP@
354 GREP = @GREP@
355 GTK_CONFIG = @GTK_CONFIG@
356 INSTALL = @INSTALL@
357 INSTALL_DATA = @INSTALL_DATA@
358 INSTALL_PROGRAM = @INSTALL_PROGRAM@
359 INSTALL_SCRIPT = @INSTALL_SCRIPT@
360 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
361 LD = @LD@
362 LDFLAGS = @LDFLAGS@
363 LIBOBJS = @LIBOBJS@
364 LIBS = @LIBS@
365 LIBTOOL = @LIBTOOL@
366 LIBTOOL_DEPS = @LIBTOOL_DEPS@
367 LIPO = @LIPO@
368 LN_S = @LN_S@
369 LTLIBOBJS = @LTLIBOBJS@
370 LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
371 MAKEINFO = @MAKEINFO@
372 MANIFEST_TOOL = @MANIFEST_TOOL@
373 MKDIR_P = @MKDIR_P@
374 MP4FF_LIBS = @MP4FF_LIBS@
375 NM = @NM@
376 NMEDIT = @NMEDIT@
377 OBJDUMP = @OBJDUMP@
378 OBJEXT = @OBJEXT@
379 OTOOL = @OTOOL@
380 OTOOL64 = @OTOOL64@
381 PACKAGE = @PACKAGE@
382 PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
383 PACKAGE_NAME = @PACKAGE_NAME@
384 PACKAGE_STRING = @PACKAGE_STRING@
385 PACKAGE_TARNAME = @PACKAGE_TARNAME@
386 PACKAGE_URL = @PACKAGE_URL@
387 PACKAGE_VERSION = @PACKAGE_VERSION@
388 PATH_SEPARATOR = @PATH_SEPARATOR@
389 RANLIB = @RANLIB@
390 RPMBUILD = @RPMBUILD@
391 SED = @SED@
392 SET_MAKE = @SET_MAKE@
393 SHELL = @SHELL@
394 STRIP = @STRIP@
395 VERSION = @VERSION@
396 XMMS_CONFIG = @XMMS_CONFIG@
397 abs_builddir = @abs_builddir@
398 abs_srcdir = @abs_srcdir@
399 abs_top_builddir = @abs_top_builddir@
400 abs_top_srcdir = @abs_top_srcdir@
401 ac_ct_AR = @ac_ct_AR@
402 ac_ct_CC = @ac_ct_CC@
403 ac_ct_CXX = @ac_ct_CXX@
404 ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
405 am__include = @am__include@
406 am__leading_dot = @am__leading_dot@
407 am__quote = @am__quote@
408 am__tar = @am__tar@
409 am__untar = @am__untar@
410 bindir = @bindir@
411 build = @build@
412 build_alias = @build_alias@
413 build_cpu = @build_cpu@
414 build_os = @build_os@
415 build_vendor = @build_vendor@
416 builddir = @builddir@
417 datadir = @datadir@
418 datarootdir = @datarootdir@
419 docdir = @docdir@
420 dvidir = @dvidir@
421 exec_prefix = @exec_prefix@
422 external_mp4v2 = @external_mp4v2@
423 host = @host@
424 host_alias = @host_alias@
425 host_cpu = @host_cpu@
426 host_os = @host_os@
427 host_vendor = @host_vendor@
428 htmldir = @htmldir@
429 includedir = @includedir@
430 infodir = @infodir@
431 install_sh = @install_sh@
432 libdir = @libdir@
433 libexecdir = @libexecdir@
434 localedir = @localedir@
435 localstatedir = @localstatedir@
436 mandir = @mandir@
437 mkdir_p = @mkdir_p@
438 oldincludedir = @oldincludedir@
439 pdfdir = @pdfdir@
440 prefix = @prefix@
441 program_transform_name = @program_transform_name@
442 psdir = @psdir@
443 runstatedir = @runstatedir@
444 sbindir = @sbindir@
445 sharedstatedir = @sharedstatedir@
446 srcdir = @srcdir@
447 sysconfdir = @sysconfdir@
448 target_alias = @target_alias@
449 top_build_prefix = @top_build_prefix@
450 top_builddir = @top_builddir@
451 top_srcdir = @top_srcdir@
452 lib_LTLIBRARIES = libfaad.la libfaad_drm.la
453 AM_CPPFLAGS = -iquote $(top_srcdir)/include
454 include_HEADERS = $(top_srcdir)/include/faad.h \
455 $(top_srcdir)/include/neaacdec.h
456
457 libfaad_la_LDFLAGS = -version-info 2:0:0 -no-undefined
458 libfaad_la_LIBADD = -lm
459 libfaad_la_CFLAGS = -fvisibility=hidden
460 libfaad_la_SOURCES = bits.c cfft.c decoder.c drc.c \
461 drm_dec.c error.c filtbank.c \
462 ic_predict.c is.c lt_predict.c mdct.c mp4.c ms.c output.c pns.c \
463 ps_dec.c ps_syntax.c \
464 pulse.c specrec.c syntax.c tns.c hcr.c huffman.c \
465 rvlc.c ssr.c ssr_fb.c ssr_ipqf.c common.c \
466 sbr_dct.c sbr_e_nf.c sbr_fbt.c sbr_hfadj.c sbr_hfgen.c \
467 sbr_huff.c sbr_qmf.c sbr_syntax.c sbr_tf_grid.c sbr_dec.c \
468 analysis.h bits.h cfft.h cfft_tab.h common.h \
469 drc.h drm_dec.h error.h fixed.h filtbank.h \
470 huffman.h ic_predict.h iq_table.h is.h kbd_win.h lt_predict.h \
471 mdct.h mdct_tab.h mp4.h ms.h output.h pns.h ps_dec.h ps_tables.h \
472 pulse.h rvlc.h \
473 sbr_dct.h sbr_dec.h sbr_e_nf.h sbr_fbt.h sbr_hfadj.h sbr_hfgen.h \
474 sbr_huff.h sbr_noise.h sbr_qmf.h sbr_syntax.h sbr_tf_grid.h \
475 sine_win.h specrec.h ssr.h ssr_fb.h ssr_ipqf.h \
476 ssr_win.h syntax.h structs.h tns.h \
477 sbr_qmf_c.h codebook/hcb.h \
478 codebook/hcb_1.h codebook/hcb_2.h codebook/hcb_3.h codebook/hcb_4.h \
479 codebook/hcb_5.h codebook/hcb_6.h codebook/hcb_7.h codebook/hcb_8.h \
480 codebook/hcb_9.h codebook/hcb_10.h codebook/hcb_11.h codebook/hcb_sf.h
481
482 libfaad_drm_la_LDFLAGS = ${libfaad_la_LDFLAGS}
483 libfaad_drm_la_LIBADD = ${libfaad_la_LIBADD}
484 libfaad_drm_la_CFLAGS = ${libfaad_la_CFLAGS} -DDRM_SUPPORT
485 libfaad_drm_la_SOURCES = ${libfaad_la_SOURCES}
486 pkgconfigdir = $(libdir)/pkgconfig
487 pkgconfig_DATA = faad2.pc
488 EXTRA_DIST = faad2.pc.in
489 all: all-am
490
491 .SUFFIXES:
492 .SUFFIXES: .c .lo .o .obj
493 $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
494 @for dep in $?; do \
495 case '$(am__configure_deps)' in \
496 *$$dep*) \
497 ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
498 && { if test -f $@; then exit 0; else break; fi; }; \
499 exit 1;; \
500 esac; \
501 done; \
502 echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu libfaad/Makefile'; \
503 $(am__cd) $(top_srcdir) && \
504 $(AUTOMAKE) --gnu libfaad/Makefile
505 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
506 @case '$?' in \
507 *config.status*) \
508 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
509 *) \
510 echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \
511 cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \
512 esac;
513
514 $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
515 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
516
517 $(top_srcdir)/configure: $(am__configure_deps)
518 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
519 $(ACLOCAL_M4): $(am__aclocal_m4_deps)
520 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
521 $(am__aclocal_m4_deps):
522 faad2.pc: $(top_builddir)/config.status $(srcdir)/faad2.pc.in
523 cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
524
525 install-libLTLIBRARIES: $(lib_LTLIBRARIES)
526 @$(NORMAL_INSTALL)
527 @list='$(lib_LTLIBRARIES)'; test -n "$(libdir)" || list=; \
528 list2=; for p in $$list; do \
529 if test -f $$p; then \
530 list2="$$list2 $$p"; \
531 else :; fi; \
532 done; \
533 test -z "$$list2" || { \
534 echo " $(MKDIR_P) '$(DESTDIR)$(libdir)'"; \
535 $(MKDIR_P) "$(DESTDIR)$(libdir)" || exit 1; \
536 echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 '$(DESTDIR)$(libdir)'"; \
537 $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 "$(DESTDIR)$(libdir)"; \
538 }
539
540 uninstall-libLTLIBRARIES:
541 @$(NORMAL_UNINSTALL)
542 @list='$(lib_LTLIBRARIES)'; test -n "$(libdir)" || list=; \
543 for p in $$list; do \
544 $(am__strip_dir) \
545 echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f '$(DESTDIR)$(libdir)/$$f'"; \
546 $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f "$(DESTDIR)$(libdir)/$$f"; \
547 done
548
549 clean-libLTLIBRARIES:
550 -test -z "$(lib_LTLIBRARIES)" || rm -f $(lib_LTLIBRARIES)
551 @list='$(lib_LTLIBRARIES)'; \
552 locs=`for p in $$list; do echo $$p; done | \
553 sed 's|^[^/]*$$|.|; s|/[^/]*$$||; s|$$|/so_locations|' | \
554 sort -u`; \
555 test -z "$$locs" || { \
556 echo rm -f $${locs}; \
557 rm -f $${locs}; \
558 }
559
560 libfaad.la: $(libfaad_la_OBJECTS) $(libfaad_la_DEPENDENCIES) $(EXTRA_libfaad_la_DEPENDENCIES)
561 $(AM_V_CCLD)$(libfaad_la_LINK) -rpath $(libdir) $(libfaad_la_OBJECTS) $(libfaad_la_LIBADD) $(LIBS)
562
563 libfaad_drm.la: $(libfaad_drm_la_OBJECTS) $(libfaad_drm_la_DEPENDENCIES) $(EXTRA_libfaad_drm_la_DEPENDENCIES)
564 $(AM_V_CCLD)$(libfaad_drm_la_LINK) -rpath $(libdir) $(libfaad_drm_la_OBJECTS) $(libfaad_drm_la_LIBADD) $(LIBS)
565
566 mostlyclean-compile:
567 -rm -f *.$(OBJEXT)
568
569 distclean-compile:
570 -rm -f *.tab.c
571
572 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-bits.Plo@am__quote@ # am--include-marker
573 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-cfft.Plo@am__quote@ # am--include-marker
574 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-common.Plo@am__quote@ # am--include-marker
575 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-decoder.Plo@am__quote@ # am--include-marker
576 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-drc.Plo@am__quote@ # am--include-marker
577 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-drm_dec.Plo@am__quote@ # am--include-marker
578 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-error.Plo@am__quote@ # am--include-marker
579 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-filtbank.Plo@am__quote@ # am--include-marker
580 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-hcr.Plo@am__quote@ # am--include-marker
581 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-huffman.Plo@am__quote@ # am--include-marker
582 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-ic_predict.Plo@am__quote@ # am--include-marker
583 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-is.Plo@am__quote@ # am--include-marker
584 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-lt_predict.Plo@am__quote@ # am--include-marker
585 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-mdct.Plo@am__quote@ # am--include-marker
586 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-mp4.Plo@am__quote@ # am--include-marker
587 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-ms.Plo@am__quote@ # am--include-marker
588 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-output.Plo@am__quote@ # am--include-marker
589 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-pns.Plo@am__quote@ # am--include-marker
590 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-ps_dec.Plo@am__quote@ # am--include-marker
591 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-ps_syntax.Plo@am__quote@ # am--include-marker
592 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-pulse.Plo@am__quote@ # am--include-marker
593 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-rvlc.Plo@am__quote@ # am--include-marker
594 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-sbr_dct.Plo@am__quote@ # am--include-marker
595 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-sbr_dec.Plo@am__quote@ # am--include-marker
596 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-sbr_e_nf.Plo@am__quote@ # am--include-marker
597 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-sbr_fbt.Plo@am__quote@ # am--include-marker
598 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-sbr_hfadj.Plo@am__quote@ # am--include-marker
599 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-sbr_hfgen.Plo@am__quote@ # am--include-marker
600 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-sbr_huff.Plo@am__quote@ # am--include-marker
601 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-sbr_qmf.Plo@am__quote@ # am--include-marker
602 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-sbr_syntax.Plo@am__quote@ # am--include-marker
603 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-sbr_tf_grid.Plo@am__quote@ # am--include-marker
604 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-specrec.Plo@am__quote@ # am--include-marker
605 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-ssr.Plo@am__quote@ # am--include-marker
606 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-ssr_fb.Plo@am__quote@ # am--include-marker
607 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-ssr_ipqf.Plo@am__quote@ # am--include-marker
608 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-syntax.Plo@am__quote@ # am--include-marker
609 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-tns.Plo@am__quote@ # am--include-marker
610 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-bits.Plo@am__quote@ # am--include-marker
611 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-cfft.Plo@am__quote@ # am--include-marker
612 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-common.Plo@am__quote@ # am--include-marker
613 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-decoder.Plo@am__quote@ # am--include-marker
614 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-drc.Plo@am__quote@ # am--include-marker
615 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-drm_dec.Plo@am__quote@ # am--include-marker
616 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-error.Plo@am__quote@ # am--include-marker
617 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-filtbank.Plo@am__quote@ # am--include-marker
618 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-hcr.Plo@am__quote@ # am--include-marker
619 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-huffman.Plo@am__quote@ # am--include-marker
620 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-ic_predict.Plo@am__quote@ # am--include-marker
621 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-is.Plo@am__quote@ # am--include-marker
622 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-lt_predict.Plo@am__quote@ # am--include-marker
623 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-mdct.Plo@am__quote@ # am--include-marker
624 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-mp4.Plo@am__quote@ # am--include-marker
625 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-ms.Plo@am__quote@ # am--include-marker
626 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-output.Plo@am__quote@ # am--include-marker
627 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-pns.Plo@am__quote@ # am--include-marker
628 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-ps_dec.Plo@am__quote@ # am--include-marker
629 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-ps_syntax.Plo@am__quote@ # am--include-marker
630 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-pulse.Plo@am__quote@ # am--include-marker
631 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-rvlc.Plo@am__quote@ # am--include-marker
632 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-sbr_dct.Plo@am__quote@ # am--include-marker
633 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-sbr_dec.Plo@am__quote@ # am--include-marker
634 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-sbr_e_nf.Plo@am__quote@ # am--include-marker
635 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-sbr_fbt.Plo@am__quote@ # am--include-marker
636 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-sbr_hfadj.Plo@am__quote@ # am--include-marker
637 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-sbr_hfgen.Plo@am__quote@ # am--include-marker
638 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-sbr_huff.Plo@am__quote@ # am--include-marker
639 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-sbr_qmf.Plo@am__quote@ # am--include-marker
640 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-sbr_syntax.Plo@am__quote@ # am--include-marker
641 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-sbr_tf_grid.Plo@am__quote@ # am--include-marker
642 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-specrec.Plo@am__quote@ # am--include-marker
643 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-ssr.Plo@am__quote@ # am--include-marker
644 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-ssr_fb.Plo@am__quote@ # am--include-marker
645 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-ssr_ipqf.Plo@am__quote@ # am--include-marker
646 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-syntax.Plo@am__quote@ # am--include-marker
647 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-tns.Plo@am__quote@ # am--include-marker
648
649 $(am__depfiles_remade):
650 @$(MKDIR_P) $(@D)
651 @echo '# dummy' >$@-t && $(am__mv) $@-t $@
652
653 am--depfiles: $(am__depfiles_remade)
654
655 .c.o:
656 @am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\
657 @am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\
658 @am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po
659 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
660 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
661 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $<
662
663 .c.obj:
664 @am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.obj$$||'`;\
665 @am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ `$(CYGPATH_W) '$<'` &&\
666 @am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po
667 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
668 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
669 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
670
671 .c.lo:
672 @am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.lo$$||'`;\
673 @am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\
674 @am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Plo
675 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
676 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
677 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $<
678
679 libfaad_la-bits.lo: bits.c
680 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -MT libfaad_la-bits.lo -MD -MP -MF $(DEPDIR)/libfaad_la-bits.Tpo -c -o libfaad_la-bits.lo `test -f 'bits.c' || echo '$(srcdir)/'`bits.c
681 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-bits.Tpo $(DEPDIR)/libfaad_la-bits.Plo
682 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='bits.c' object='libfaad_la-bits.lo' libtool=yes @AMDEPBACKSLASH@
683 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
684 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -c -o libfaad_la-bits.lo `test -f 'bits.c' || echo '$(srcdir)/'`bits.c
685
686 libfaad_la-cfft.lo: cfft.c
687 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -MT libfaad_la-cfft.lo -MD -MP -MF $(DEPDIR)/libfaad_la-cfft.Tpo -c -o libfaad_la-cfft.lo `test -f 'cfft.c' || echo '$(srcdir)/'`cfft.c
688 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-cfft.Tpo $(DEPDIR)/libfaad_la-cfft.Plo
689 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='cfft.c' object='libfaad_la-cfft.lo' libtool=yes @AMDEPBACKSLASH@
690 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
691 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -c -o libfaad_la-cfft.lo `test -f 'cfft.c' || echo '$(srcdir)/'`cfft.c
692
693 libfaad_la-decoder.lo: decoder.c
694 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -MT libfaad_la-decoder.lo -MD -MP -MF $(DEPDIR)/libfaad_la-decoder.Tpo -c -o libfaad_la-decoder.lo `test -f 'decoder.c' || echo '$(srcdir)/'`decoder.c
695 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-decoder.Tpo $(DEPDIR)/libfaad_la-decoder.Plo
696 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='decoder.c' object='libfaad_la-decoder.lo' libtool=yes @AMDEPBACKSLASH@
697 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
698 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -c -o libfaad_la-decoder.lo `test -f 'decoder.c' || echo '$(srcdir)/'`decoder.c
699
700 libfaad_la-drc.lo: drc.c
701 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -MT libfaad_la-drc.lo -MD -MP -MF $(DEPDIR)/libfaad_la-drc.Tpo -c -o libfaad_la-drc.lo `test -f 'drc.c' || echo '$(srcdir)/'`drc.c
702 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-drc.Tpo $(DEPDIR)/libfaad_la-drc.Plo
703 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='drc.c' object='libfaad_la-drc.lo' libtool=yes @AMDEPBACKSLASH@
704 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
705 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -c -o libfaad_la-drc.lo `test -f 'drc.c' || echo '$(srcdir)/'`drc.c
706
707 libfaad_la-drm_dec.lo: drm_dec.c
708 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -MT libfaad_la-drm_dec.lo -MD -MP -MF $(DEPDIR)/libfaad_la-drm_dec.Tpo -c -o libfaad_la-drm_dec.lo `test -f 'drm_dec.c' || echo '$(srcdir)/'`drm_dec.c
709 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-drm_dec.Tpo $(DEPDIR)/libfaad_la-drm_dec.Plo
710 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='drm_dec.c' object='libfaad_la-drm_dec.lo' libtool=yes @AMDEPBACKSLASH@
711 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
712 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -c -o libfaad_la-drm_dec.lo `test -f 'drm_dec.c' || echo '$(srcdir)/'`drm_dec.c
713
714 libfaad_la-error.lo: error.c
715 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -MT libfaad_la-error.lo -MD -MP -MF $(DEPDIR)/libfaad_la-error.Tpo -c -o libfaad_la-error.lo `test -f 'error.c' || echo '$(srcdir)/'`error.c
716 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-error.Tpo $(DEPDIR)/libfaad_la-error.Plo
717 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='error.c' object='libfaad_la-error.lo' libtool=yes @AMDEPBACKSLASH@
718 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
719 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -c -o libfaad_la-error.lo `test -f 'error.c' || echo '$(srcdir)/'`error.c
720
721 libfaad_la-filtbank.lo: filtbank.c
722 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -MT libfaad_la-filtbank.lo -MD -MP -MF $(DEPDIR)/libfaad_la-filtbank.Tpo -c -o libfaad_la-filtbank.lo `test -f 'filtbank.c' || echo '$(srcdir)/'`filtbank.c
723 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-filtbank.Tpo $(DEPDIR)/libfaad_la-filtbank.Plo
724 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='filtbank.c' object='libfaad_la-filtbank.lo' libtool=yes @AMDEPBACKSLASH@
725 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
726 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -c -o libfaad_la-filtbank.lo `test -f 'filtbank.c' || echo '$(srcdir)/'`filtbank.c
727
728 libfaad_la-ic_predict.lo: ic_predict.c
729 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -MT libfaad_la-ic_predict.lo -MD -MP -MF $(DEPDIR)/libfaad_la-ic_predict.Tpo -c -o libfaad_la-ic_predict.lo `test -f 'ic_predict.c' || echo '$(srcdir)/'`ic_predict.c
730 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-ic_predict.Tpo $(DEPDIR)/libfaad_la-ic_predict.Plo
731 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='ic_predict.c' object='libfaad_la-ic_predict.lo' libtool=yes @AMDEPBACKSLASH@
732 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
733 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -c -o libfaad_la-ic_predict.lo `test -f 'ic_predict.c' || echo '$(srcdir)/'`ic_predict.c
734
735 libfaad_la-is.lo: is.c
736 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -MT libfaad_la-is.lo -MD -MP -MF $(DEPDIR)/libfaad_la-is.Tpo -c -o libfaad_la-is.lo `test -f 'is.c' || echo '$(srcdir)/'`is.c
737 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-is.Tpo $(DEPDIR)/libfaad_la-is.Plo
738 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='is.c' object='libfaad_la-is.lo' libtool=yes @AMDEPBACKSLASH@
739 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
740 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -c -o libfaad_la-is.lo `test -f 'is.c' || echo '$(srcdir)/'`is.c
741
742 libfaad_la-lt_predict.lo: lt_predict.c
743 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -MT libfaad_la-lt_predict.lo -MD -MP -MF $(DEPDIR)/libfaad_la-lt_predict.Tpo -c -o libfaad_la-lt_predict.lo `test -f 'lt_predict.c' || echo '$(srcdir)/'`lt_predict.c
744 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-lt_predict.Tpo $(DEPDIR)/libfaad_la-lt_predict.Plo
745 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lt_predict.c' object='libfaad_la-lt_predict.lo' libtool=yes @AMDEPBACKSLASH@
746 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
747 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -c -o libfaad_la-lt_predict.lo `test -f 'lt_predict.c' || echo '$(srcdir)/'`lt_predict.c
748
749 libfaad_la-mdct.lo: mdct.c
750 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -MT libfaad_la-mdct.lo -MD -MP -MF $(DEPDIR)/libfaad_la-mdct.Tpo -c -o libfaad_la-mdct.lo `test -f 'mdct.c' || echo '$(srcdir)/'`mdct.c
751 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-mdct.Tpo $(DEPDIR)/libfaad_la-mdct.Plo
752 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mdct.c' object='libfaad_la-mdct.lo' libtool=yes @AMDEPBACKSLASH@
753 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
754 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -c -o libfaad_la-mdct.lo `test -f 'mdct.c' || echo '$(srcdir)/'`mdct.c
755
756 libfaad_la-mp4.lo: mp4.c
757 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -MT libfaad_la-mp4.lo -MD -MP -MF $(DEPDIR)/libfaad_la-mp4.Tpo -c -o libfaad_la-mp4.lo `test -f 'mp4.c' || echo '$(srcdir)/'`mp4.c
758 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-mp4.Tpo $(DEPDIR)/libfaad_la-mp4.Plo
759 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mp4.c' object='libfaad_la-mp4.lo' libtool=yes @AMDEPBACKSLASH@
760 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
761 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -c -o libfaad_la-mp4.lo `test -f 'mp4.c' || echo '$(srcdir)/'`mp4.c
762
763 libfaad_la-ms.lo: ms.c
764 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -MT libfaad_la-ms.lo -MD -MP -MF $(DEPDIR)/libfaad_la-ms.Tpo -c -o libfaad_la-ms.lo `test -f 'ms.c' || echo '$(srcdir)/'`ms.c
765 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-ms.Tpo $(DEPDIR)/libfaad_la-ms.Plo
766 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='ms.c' object='libfaad_la-ms.lo' libtool=yes @AMDEPBACKSLASH@
767 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
768 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -c -o libfaad_la-ms.lo `test -f 'ms.c' || echo '$(srcdir)/'`ms.c
769
770 libfaad_la-output.lo: output.c
771 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -MT libfaad_la-output.lo -MD -MP -MF $(DEPDIR)/libfaad_la-output.Tpo -c -o libfaad_la-output.lo `test -f 'output.c' || echo '$(srcdir)/'`output.c
772 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-output.Tpo $(DEPDIR)/libfaad_la-output.Plo
773 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='output.c' object='libfaad_la-output.lo' libtool=yes @AMDEPBACKSLASH@
774 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
775 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -c -o libfaad_la-output.lo `test -f 'output.c' || echo '$(srcdir)/'`output.c
776
777 libfaad_la-pns.lo: pns.c
778 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -MT libfaad_la-pns.lo -MD -MP -MF $(DEPDIR)/libfaad_la-pns.Tpo -c -o libfaad_la-pns.lo `test -f 'pns.c' || echo '$(srcdir)/'`pns.c
779 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-pns.Tpo $(DEPDIR)/libfaad_la-pns.Plo
780 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='pns.c' object='libfaad_la-pns.lo' libtool=yes @AMDEPBACKSLASH@
781 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
782 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -c -o libfaad_la-pns.lo `test -f 'pns.c' || echo '$(srcdir)/'`pns.c
783
784 libfaad_la-ps_dec.lo: ps_dec.c
785 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -MT libfaad_la-ps_dec.lo -MD -MP -MF $(DEPDIR)/libfaad_la-ps_dec.Tpo -c -o libfaad_la-ps_dec.lo `test -f 'ps_dec.c' || echo '$(srcdir)/'`ps_dec.c
786 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-ps_dec.Tpo $(DEPDIR)/libfaad_la-ps_dec.Plo
787 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='ps_dec.c' object='libfaad_la-ps_dec.lo' libtool=yes @AMDEPBACKSLASH@
788 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
789 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -c -o libfaad_la-ps_dec.lo `test -f 'ps_dec.c' || echo '$(srcdir)/'`ps_dec.c
790
791 libfaad_la-ps_syntax.lo: ps_syntax.c
792 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -MT libfaad_la-ps_syntax.lo -MD -MP -MF $(DEPDIR)/libfaad_la-ps_syntax.Tpo -c -o libfaad_la-ps_syntax.lo `test -f 'ps_syntax.c' || echo '$(srcdir)/'`ps_syntax.c
793 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-ps_syntax.Tpo $(DEPDIR)/libfaad_la-ps_syntax.Plo
794 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='ps_syntax.c' object='libfaad_la-ps_syntax.lo' libtool=yes @AMDEPBACKSLASH@
795 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
796 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -c -o libfaad_la-ps_syntax.lo `test -f 'ps_syntax.c' || echo '$(srcdir)/'`ps_syntax.c
797
798 libfaad_la-pulse.lo: pulse.c
799 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -MT libfaad_la-pulse.lo -MD -MP -MF $(DEPDIR)/libfaad_la-pulse.Tpo -c -o libfaad_la-pulse.lo `test -f 'pulse.c' || echo '$(srcdir)/'`pulse.c
800 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-pulse.Tpo $(DEPDIR)/libfaad_la-pulse.Plo
801 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='pulse.c' object='libfaad_la-pulse.lo' libtool=yes @AMDEPBACKSLASH@
802 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
803 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -c -o libfaad_la-pulse.lo `test -f 'pulse.c' || echo '$(srcdir)/'`pulse.c
804
805 libfaad_la-specrec.lo: specrec.c
806 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -MT libfaad_la-specrec.lo -MD -MP -MF $(DEPDIR)/libfaad_la-specrec.Tpo -c -o libfaad_la-specrec.lo `test -f 'specrec.c' || echo '$(srcdir)/'`specrec.c
807 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-specrec.Tpo $(DEPDIR)/libfaad_la-specrec.Plo
808 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='specrec.c' object='libfaad_la-specrec.lo' libtool=yes @AMDEPBACKSLASH@
809 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
810 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -c -o libfaad_la-specrec.lo `test -f 'specrec.c' || echo '$(srcdir)/'`specrec.c
811
812 libfaad_la-syntax.lo: syntax.c
813 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -MT libfaad_la-syntax.lo -MD -MP -MF $(DEPDIR)/libfaad_la-syntax.Tpo -c -o libfaad_la-syntax.lo `test -f 'syntax.c' || echo '$(srcdir)/'`syntax.c
814 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-syntax.Tpo $(DEPDIR)/libfaad_la-syntax.Plo
815 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='syntax.c' object='libfaad_la-syntax.lo' libtool=yes @AMDEPBACKSLASH@
816 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
817 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -c -o libfaad_la-syntax.lo `test -f 'syntax.c' || echo '$(srcdir)/'`syntax.c
818
819 libfaad_la-tns.lo: tns.c
820 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -MT libfaad_la-tns.lo -MD -MP -MF $(DEPDIR)/libfaad_la-tns.Tpo -c -o libfaad_la-tns.lo `test -f 'tns.c' || echo '$(srcdir)/'`tns.c
821 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-tns.Tpo $(DEPDIR)/libfaad_la-tns.Plo
822 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tns.c' object='libfaad_la-tns.lo' libtool=yes @AMDEPBACKSLASH@
823 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
824 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -c -o libfaad_la-tns.lo `test -f 'tns.c' || echo '$(srcdir)/'`tns.c
825
826 libfaad_la-hcr.lo: hcr.c
827 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -MT libfaad_la-hcr.lo -MD -MP -MF $(DEPDIR)/libfaad_la-hcr.Tpo -c -o libfaad_la-hcr.lo `test -f 'hcr.c' || echo '$(srcdir)/'`hcr.c
828 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-hcr.Tpo $(DEPDIR)/libfaad_la-hcr.Plo
829 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='hcr.c' object='libfaad_la-hcr.lo' libtool=yes @AMDEPBACKSLASH@
830 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
831 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -c -o libfaad_la-hcr.lo `test -f 'hcr.c' || echo '$(srcdir)/'`hcr.c
832
833 libfaad_la-huffman.lo: huffman.c
834 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -MT libfaad_la-huffman.lo -MD -MP -MF $(DEPDIR)/libfaad_la-huffman.Tpo -c -o libfaad_la-huffman.lo `test -f 'huffman.c' || echo '$(srcdir)/'`huffman.c
835 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-huffman.Tpo $(DEPDIR)/libfaad_la-huffman.Plo
836 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='huffman.c' object='libfaad_la-huffman.lo' libtool=yes @AMDEPBACKSLASH@
837 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
838 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -c -o libfaad_la-huffman.lo `test -f 'huffman.c' || echo '$(srcdir)/'`huffman.c
839
840 libfaad_la-rvlc.lo: rvlc.c
841 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -MT libfaad_la-rvlc.lo -MD -MP -MF $(DEPDIR)/libfaad_la-rvlc.Tpo -c -o libfaad_la-rvlc.lo `test -f 'rvlc.c' || echo '$(srcdir)/'`rvlc.c
842 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-rvlc.Tpo $(DEPDIR)/libfaad_la-rvlc.Plo
843 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='rvlc.c' object='libfaad_la-rvlc.lo' libtool=yes @AMDEPBACKSLASH@
844 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
845 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -c -o libfaad_la-rvlc.lo `test -f 'rvlc.c' || echo '$(srcdir)/'`rvlc.c
846
847 libfaad_la-ssr.lo: ssr.c
848 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -MT libfaad_la-ssr.lo -MD -MP -MF $(DEPDIR)/libfaad_la-ssr.Tpo -c -o libfaad_la-ssr.lo `test -f 'ssr.c' || echo '$(srcdir)/'`ssr.c
849 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-ssr.Tpo $(DEPDIR)/libfaad_la-ssr.Plo
850 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='ssr.c' object='libfaad_la-ssr.lo' libtool=yes @AMDEPBACKSLASH@
851 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
852 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -c -o libfaad_la-ssr.lo `test -f 'ssr.c' || echo '$(srcdir)/'`ssr.c
853
854 libfaad_la-ssr_fb.lo: ssr_fb.c
855 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -MT libfaad_la-ssr_fb.lo -MD -MP -MF $(DEPDIR)/libfaad_la-ssr_fb.Tpo -c -o libfaad_la-ssr_fb.lo `test -f 'ssr_fb.c' || echo '$(srcdir)/'`ssr_fb.c
856 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-ssr_fb.Tpo $(DEPDIR)/libfaad_la-ssr_fb.Plo
857 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='ssr_fb.c' object='libfaad_la-ssr_fb.lo' libtool=yes @AMDEPBACKSLASH@
858 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
859 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -c -o libfaad_la-ssr_fb.lo `test -f 'ssr_fb.c' || echo '$(srcdir)/'`ssr_fb.c
860
861 libfaad_la-ssr_ipqf.lo: ssr_ipqf.c
862 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -MT libfaad_la-ssr_ipqf.lo -MD -MP -MF $(DEPDIR)/libfaad_la-ssr_ipqf.Tpo -c -o libfaad_la-ssr_ipqf.lo `test -f 'ssr_ipqf.c' || echo '$(srcdir)/'`ssr_ipqf.c
863 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-ssr_ipqf.Tpo $(DEPDIR)/libfaad_la-ssr_ipqf.Plo
864 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='ssr_ipqf.c' object='libfaad_la-ssr_ipqf.lo' libtool=yes @AMDEPBACKSLASH@
865 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
866 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -c -o libfaad_la-ssr_ipqf.lo `test -f 'ssr_ipqf.c' || echo '$(srcdir)/'`ssr_ipqf.c
867
868 libfaad_la-common.lo: common.c
869 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -MT libfaad_la-common.lo -MD -MP -MF $(DEPDIR)/libfaad_la-common.Tpo -c -o libfaad_la-common.lo `test -f 'common.c' || echo '$(srcdir)/'`common.c
870 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-common.Tpo $(DEPDIR)/libfaad_la-common.Plo
871 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='common.c' object='libfaad_la-common.lo' libtool=yes @AMDEPBACKSLASH@
872 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
873 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -c -o libfaad_la-common.lo `test -f 'common.c' || echo '$(srcdir)/'`common.c
874
875 libfaad_la-sbr_dct.lo: sbr_dct.c
876 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -MT libfaad_la-sbr_dct.lo -MD -MP -MF $(DEPDIR)/libfaad_la-sbr_dct.Tpo -c -o libfaad_la-sbr_dct.lo `test -f 'sbr_dct.c' || echo '$(srcdir)/'`sbr_dct.c
877 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-sbr_dct.Tpo $(DEPDIR)/libfaad_la-sbr_dct.Plo
878 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='sbr_dct.c' object='libfaad_la-sbr_dct.lo' libtool=yes @AMDEPBACKSLASH@
879 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
880 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -c -o libfaad_la-sbr_dct.lo `test -f 'sbr_dct.c' || echo '$(srcdir)/'`sbr_dct.c
881
882 libfaad_la-sbr_e_nf.lo: sbr_e_nf.c
883 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -MT libfaad_la-sbr_e_nf.lo -MD -MP -MF $(DEPDIR)/libfaad_la-sbr_e_nf.Tpo -c -o libfaad_la-sbr_e_nf.lo `test -f 'sbr_e_nf.c' || echo '$(srcdir)/'`sbr_e_nf.c
884 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-sbr_e_nf.Tpo $(DEPDIR)/libfaad_la-sbr_e_nf.Plo
885 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='sbr_e_nf.c' object='libfaad_la-sbr_e_nf.lo' libtool=yes @AMDEPBACKSLASH@
886 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
887 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -c -o libfaad_la-sbr_e_nf.lo `test -f 'sbr_e_nf.c' || echo '$(srcdir)/'`sbr_e_nf.c
888
889 libfaad_la-sbr_fbt.lo: sbr_fbt.c
890 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -MT libfaad_la-sbr_fbt.lo -MD -MP -MF $(DEPDIR)/libfaad_la-sbr_fbt.Tpo -c -o libfaad_la-sbr_fbt.lo `test -f 'sbr_fbt.c' || echo '$(srcdir)/'`sbr_fbt.c
891 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-sbr_fbt.Tpo $(DEPDIR)/libfaad_la-sbr_fbt.Plo
892 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='sbr_fbt.c' object='libfaad_la-sbr_fbt.lo' libtool=yes @AMDEPBACKSLASH@
893 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
894 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -c -o libfaad_la-sbr_fbt.lo `test -f 'sbr_fbt.c' || echo '$(srcdir)/'`sbr_fbt.c
895
896 libfaad_la-sbr_hfadj.lo: sbr_hfadj.c
897 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -MT libfaad_la-sbr_hfadj.lo -MD -MP -MF $(DEPDIR)/libfaad_la-sbr_hfadj.Tpo -c -o libfaad_la-sbr_hfadj.lo `test -f 'sbr_hfadj.c' || echo '$(srcdir)/'`sbr_hfadj.c
898 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-sbr_hfadj.Tpo $(DEPDIR)/libfaad_la-sbr_hfadj.Plo
899 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='sbr_hfadj.c' object='libfaad_la-sbr_hfadj.lo' libtool=yes @AMDEPBACKSLASH@
900 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
901 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -c -o libfaad_la-sbr_hfadj.lo `test -f 'sbr_hfadj.c' || echo '$(srcdir)/'`sbr_hfadj.c
902
903 libfaad_la-sbr_hfgen.lo: sbr_hfgen.c
904 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -MT libfaad_la-sbr_hfgen.lo -MD -MP -MF $(DEPDIR)/libfaad_la-sbr_hfgen.Tpo -c -o libfaad_la-sbr_hfgen.lo `test -f 'sbr_hfgen.c' || echo '$(srcdir)/'`sbr_hfgen.c
905 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-sbr_hfgen.Tpo $(DEPDIR)/libfaad_la-sbr_hfgen.Plo
906 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='sbr_hfgen.c' object='libfaad_la-sbr_hfgen.lo' libtool=yes @AMDEPBACKSLASH@
907 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
908 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -c -o libfaad_la-sbr_hfgen.lo `test -f 'sbr_hfgen.c' || echo '$(srcdir)/'`sbr_hfgen.c
909
910 libfaad_la-sbr_huff.lo: sbr_huff.c
911 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -MT libfaad_la-sbr_huff.lo -MD -MP -MF $(DEPDIR)/libfaad_la-sbr_huff.Tpo -c -o libfaad_la-sbr_huff.lo `test -f 'sbr_huff.c' || echo '$(srcdir)/'`sbr_huff.c
912 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-sbr_huff.Tpo $(DEPDIR)/libfaad_la-sbr_huff.Plo
913 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='sbr_huff.c' object='libfaad_la-sbr_huff.lo' libtool=yes @AMDEPBACKSLASH@
914 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
915 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -c -o libfaad_la-sbr_huff.lo `test -f 'sbr_huff.c' || echo '$(srcdir)/'`sbr_huff.c
916
917 libfaad_la-sbr_qmf.lo: sbr_qmf.c
918 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -MT libfaad_la-sbr_qmf.lo -MD -MP -MF $(DEPDIR)/libfaad_la-sbr_qmf.Tpo -c -o libfaad_la-sbr_qmf.lo `test -f 'sbr_qmf.c' || echo '$(srcdir)/'`sbr_qmf.c
919 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-sbr_qmf.Tpo $(DEPDIR)/libfaad_la-sbr_qmf.Plo
920 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='sbr_qmf.c' object='libfaad_la-sbr_qmf.lo' libtool=yes @AMDEPBACKSLASH@
921 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
922 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -c -o libfaad_la-sbr_qmf.lo `test -f 'sbr_qmf.c' || echo '$(srcdir)/'`sbr_qmf.c
923
924 libfaad_la-sbr_syntax.lo: sbr_syntax.c
925 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -MT libfaad_la-sbr_syntax.lo -MD -MP -MF $(DEPDIR)/libfaad_la-sbr_syntax.Tpo -c -o libfaad_la-sbr_syntax.lo `test -f 'sbr_syntax.c' || echo '$(srcdir)/'`sbr_syntax.c
926 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-sbr_syntax.Tpo $(DEPDIR)/libfaad_la-sbr_syntax.Plo
927 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='sbr_syntax.c' object='libfaad_la-sbr_syntax.lo' libtool=yes @AMDEPBACKSLASH@
928 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
929 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -c -o libfaad_la-sbr_syntax.lo `test -f 'sbr_syntax.c' || echo '$(srcdir)/'`sbr_syntax.c
930
931 libfaad_la-sbr_tf_grid.lo: sbr_tf_grid.c
932 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -MT libfaad_la-sbr_tf_grid.lo -MD -MP -MF $(DEPDIR)/libfaad_la-sbr_tf_grid.Tpo -c -o libfaad_la-sbr_tf_grid.lo `test -f 'sbr_tf_grid.c' || echo '$(srcdir)/'`sbr_tf_grid.c
933 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-sbr_tf_grid.Tpo $(DEPDIR)/libfaad_la-sbr_tf_grid.Plo
934 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='sbr_tf_grid.c' object='libfaad_la-sbr_tf_grid.lo' libtool=yes @AMDEPBACKSLASH@
935 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
936 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -c -o libfaad_la-sbr_tf_grid.lo `test -f 'sbr_tf_grid.c' || echo '$(srcdir)/'`sbr_tf_grid.c
937
938 libfaad_la-sbr_dec.lo: sbr_dec.c
939 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -MT libfaad_la-sbr_dec.lo -MD -MP -MF $(DEPDIR)/libfaad_la-sbr_dec.Tpo -c -o libfaad_la-sbr_dec.lo `test -f 'sbr_dec.c' || echo '$(srcdir)/'`sbr_dec.c
940 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-sbr_dec.Tpo $(DEPDIR)/libfaad_la-sbr_dec.Plo
941 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='sbr_dec.c' object='libfaad_la-sbr_dec.lo' libtool=yes @AMDEPBACKSLASH@
942 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
943 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_la_CFLAGS) $(CFLAGS) -c -o libfaad_la-sbr_dec.lo `test -f 'sbr_dec.c' || echo '$(srcdir)/'`sbr_dec.c
944
945 libfaad_drm_la-bits.lo: bits.c
946 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -MT libfaad_drm_la-bits.lo -MD -MP -MF $(DEPDIR)/libfaad_drm_la-bits.Tpo -c -o libfaad_drm_la-bits.lo `test -f 'bits.c' || echo '$(srcdir)/'`bits.c
947 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-bits.Tpo $(DEPDIR)/libfaad_drm_la-bits.Plo
948 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='bits.c' object='libfaad_drm_la-bits.lo' libtool=yes @AMDEPBACKSLASH@
949 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
950 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -c -o libfaad_drm_la-bits.lo `test -f 'bits.c' || echo '$(srcdir)/'`bits.c
951
952 libfaad_drm_la-cfft.lo: cfft.c
953 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -MT libfaad_drm_la-cfft.lo -MD -MP -MF $(DEPDIR)/libfaad_drm_la-cfft.Tpo -c -o libfaad_drm_la-cfft.lo `test -f 'cfft.c' || echo '$(srcdir)/'`cfft.c
954 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-cfft.Tpo $(DEPDIR)/libfaad_drm_la-cfft.Plo
955 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='cfft.c' object='libfaad_drm_la-cfft.lo' libtool=yes @AMDEPBACKSLASH@
956 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
957 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -c -o libfaad_drm_la-cfft.lo `test -f 'cfft.c' || echo '$(srcdir)/'`cfft.c
958
959 libfaad_drm_la-decoder.lo: decoder.c
960 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -MT libfaad_drm_la-decoder.lo -MD -MP -MF $(DEPDIR)/libfaad_drm_la-decoder.Tpo -c -o libfaad_drm_la-decoder.lo `test -f 'decoder.c' || echo '$(srcdir)/'`decoder.c
961 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-decoder.Tpo $(DEPDIR)/libfaad_drm_la-decoder.Plo
962 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='decoder.c' object='libfaad_drm_la-decoder.lo' libtool=yes @AMDEPBACKSLASH@
963 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
964 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -c -o libfaad_drm_la-decoder.lo `test -f 'decoder.c' || echo '$(srcdir)/'`decoder.c
965
966 libfaad_drm_la-drc.lo: drc.c
967 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -MT libfaad_drm_la-drc.lo -MD -MP -MF $(DEPDIR)/libfaad_drm_la-drc.Tpo -c -o libfaad_drm_la-drc.lo `test -f 'drc.c' || echo '$(srcdir)/'`drc.c
968 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-drc.Tpo $(DEPDIR)/libfaad_drm_la-drc.Plo
969 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='drc.c' object='libfaad_drm_la-drc.lo' libtool=yes @AMDEPBACKSLASH@
970 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
971 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -c -o libfaad_drm_la-drc.lo `test -f 'drc.c' || echo '$(srcdir)/'`drc.c
972
973 libfaad_drm_la-drm_dec.lo: drm_dec.c
974 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -MT libfaad_drm_la-drm_dec.lo -MD -MP -MF $(DEPDIR)/libfaad_drm_la-drm_dec.Tpo -c -o libfaad_drm_la-drm_dec.lo `test -f 'drm_dec.c' || echo '$(srcdir)/'`drm_dec.c
975 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-drm_dec.Tpo $(DEPDIR)/libfaad_drm_la-drm_dec.Plo
976 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='drm_dec.c' object='libfaad_drm_la-drm_dec.lo' libtool=yes @AMDEPBACKSLASH@
977 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
978 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -c -o libfaad_drm_la-drm_dec.lo `test -f 'drm_dec.c' || echo '$(srcdir)/'`drm_dec.c
979
980 libfaad_drm_la-error.lo: error.c
981 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -MT libfaad_drm_la-error.lo -MD -MP -MF $(DEPDIR)/libfaad_drm_la-error.Tpo -c -o libfaad_drm_la-error.lo `test -f 'error.c' || echo '$(srcdir)/'`error.c
982 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-error.Tpo $(DEPDIR)/libfaad_drm_la-error.Plo
983 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='error.c' object='libfaad_drm_la-error.lo' libtool=yes @AMDEPBACKSLASH@
984 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
985 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -c -o libfaad_drm_la-error.lo `test -f 'error.c' || echo '$(srcdir)/'`error.c
986
987 libfaad_drm_la-filtbank.lo: filtbank.c
988 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -MT libfaad_drm_la-filtbank.lo -MD -MP -MF $(DEPDIR)/libfaad_drm_la-filtbank.Tpo -c -o libfaad_drm_la-filtbank.lo `test -f 'filtbank.c' || echo '$(srcdir)/'`filtbank.c
989 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-filtbank.Tpo $(DEPDIR)/libfaad_drm_la-filtbank.Plo
990 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='filtbank.c' object='libfaad_drm_la-filtbank.lo' libtool=yes @AMDEPBACKSLASH@
991 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
992 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -c -o libfaad_drm_la-filtbank.lo `test -f 'filtbank.c' || echo '$(srcdir)/'`filtbank.c
993
994 libfaad_drm_la-ic_predict.lo: ic_predict.c
995 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -MT libfaad_drm_la-ic_predict.lo -MD -MP -MF $(DEPDIR)/libfaad_drm_la-ic_predict.Tpo -c -o libfaad_drm_la-ic_predict.lo `test -f 'ic_predict.c' || echo '$(srcdir)/'`ic_predict.c
996 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-ic_predict.Tpo $(DEPDIR)/libfaad_drm_la-ic_predict.Plo
997 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='ic_predict.c' object='libfaad_drm_la-ic_predict.lo' libtool=yes @AMDEPBACKSLASH@
998 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
999 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -c -o libfaad_drm_la-ic_predict.lo `test -f 'ic_predict.c' || echo '$(srcdir)/'`ic_predict.c
1000
1001 libfaad_drm_la-is.lo: is.c
1002 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -MT libfaad_drm_la-is.lo -MD -MP -MF $(DEPDIR)/libfaad_drm_la-is.Tpo -c -o libfaad_drm_la-is.lo `test -f 'is.c' || echo '$(srcdir)/'`is.c
1003 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-is.Tpo $(DEPDIR)/libfaad_drm_la-is.Plo
1004 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='is.c' object='libfaad_drm_la-is.lo' libtool=yes @AMDEPBACKSLASH@
1005 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
1006 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -c -o libfaad_drm_la-is.lo `test -f 'is.c' || echo '$(srcdir)/'`is.c
1007
1008 libfaad_drm_la-lt_predict.lo: lt_predict.c
1009 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -MT libfaad_drm_la-lt_predict.lo -MD -MP -MF $(DEPDIR)/libfaad_drm_la-lt_predict.Tpo -c -o libfaad_drm_la-lt_predict.lo `test -f 'lt_predict.c' || echo '$(srcdir)/'`lt_predict.c
1010 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-lt_predict.Tpo $(DEPDIR)/libfaad_drm_la-lt_predict.Plo
1011 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lt_predict.c' object='libfaad_drm_la-lt_predict.lo' libtool=yes @AMDEPBACKSLASH@
1012 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
1013 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -c -o libfaad_drm_la-lt_predict.lo `test -f 'lt_predict.c' || echo '$(srcdir)/'`lt_predict.c
1014
1015 libfaad_drm_la-mdct.lo: mdct.c
1016 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -MT libfaad_drm_la-mdct.lo -MD -MP -MF $(DEPDIR)/libfaad_drm_la-mdct.Tpo -c -o libfaad_drm_la-mdct.lo `test -f 'mdct.c' || echo '$(srcdir)/'`mdct.c
1017 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-mdct.Tpo $(DEPDIR)/libfaad_drm_la-mdct.Plo
1018 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mdct.c' object='libfaad_drm_la-mdct.lo' libtool=yes @AMDEPBACKSLASH@
1019 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
1020 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -c -o libfaad_drm_la-mdct.lo `test -f 'mdct.c' || echo '$(srcdir)/'`mdct.c
1021
1022 libfaad_drm_la-mp4.lo: mp4.c
1023 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -MT libfaad_drm_la-mp4.lo -MD -MP -MF $(DEPDIR)/libfaad_drm_la-mp4.Tpo -c -o libfaad_drm_la-mp4.lo `test -f 'mp4.c' || echo '$(srcdir)/'`mp4.c
1024 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-mp4.Tpo $(DEPDIR)/libfaad_drm_la-mp4.Plo
1025 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mp4.c' object='libfaad_drm_la-mp4.lo' libtool=yes @AMDEPBACKSLASH@
1026 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
1027 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -c -o libfaad_drm_la-mp4.lo `test -f 'mp4.c' || echo '$(srcdir)/'`mp4.c
1028
1029 libfaad_drm_la-ms.lo: ms.c
1030 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -MT libfaad_drm_la-ms.lo -MD -MP -MF $(DEPDIR)/libfaad_drm_la-ms.Tpo -c -o libfaad_drm_la-ms.lo `test -f 'ms.c' || echo '$(srcdir)/'`ms.c
1031 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-ms.Tpo $(DEPDIR)/libfaad_drm_la-ms.Plo
1032 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='ms.c' object='libfaad_drm_la-ms.lo' libtool=yes @AMDEPBACKSLASH@
1033 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
1034 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -c -o libfaad_drm_la-ms.lo `test -f 'ms.c' || echo '$(srcdir)/'`ms.c
1035
1036 libfaad_drm_la-output.lo: output.c
1037 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -MT libfaad_drm_la-output.lo -MD -MP -MF $(DEPDIR)/libfaad_drm_la-output.Tpo -c -o libfaad_drm_la-output.lo `test -f 'output.c' || echo '$(srcdir)/'`output.c
1038 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-output.Tpo $(DEPDIR)/libfaad_drm_la-output.Plo
1039 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='output.c' object='libfaad_drm_la-output.lo' libtool=yes @AMDEPBACKSLASH@
1040 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
1041 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -c -o libfaad_drm_la-output.lo `test -f 'output.c' || echo '$(srcdir)/'`output.c
1042
1043 libfaad_drm_la-pns.lo: pns.c
1044 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -MT libfaad_drm_la-pns.lo -MD -MP -MF $(DEPDIR)/libfaad_drm_la-pns.Tpo -c -o libfaad_drm_la-pns.lo `test -f 'pns.c' || echo '$(srcdir)/'`pns.c
1045 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-pns.Tpo $(DEPDIR)/libfaad_drm_la-pns.Plo
1046 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='pns.c' object='libfaad_drm_la-pns.lo' libtool=yes @AMDEPBACKSLASH@
1047 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
1048 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -c -o libfaad_drm_la-pns.lo `test -f 'pns.c' || echo '$(srcdir)/'`pns.c
1049
1050 libfaad_drm_la-ps_dec.lo: ps_dec.c
1051 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -MT libfaad_drm_la-ps_dec.lo -MD -MP -MF $(DEPDIR)/libfaad_drm_la-ps_dec.Tpo -c -o libfaad_drm_la-ps_dec.lo `test -f 'ps_dec.c' || echo '$(srcdir)/'`ps_dec.c
1052 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-ps_dec.Tpo $(DEPDIR)/libfaad_drm_la-ps_dec.Plo
1053 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='ps_dec.c' object='libfaad_drm_la-ps_dec.lo' libtool=yes @AMDEPBACKSLASH@
1054 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
1055 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -c -o libfaad_drm_la-ps_dec.lo `test -f 'ps_dec.c' || echo '$(srcdir)/'`ps_dec.c
1056
1057 libfaad_drm_la-ps_syntax.lo: ps_syntax.c
1058 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -MT libfaad_drm_la-ps_syntax.lo -MD -MP -MF $(DEPDIR)/libfaad_drm_la-ps_syntax.Tpo -c -o libfaad_drm_la-ps_syntax.lo `test -f 'ps_syntax.c' || echo '$(srcdir)/'`ps_syntax.c
1059 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-ps_syntax.Tpo $(DEPDIR)/libfaad_drm_la-ps_syntax.Plo
1060 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='ps_syntax.c' object='libfaad_drm_la-ps_syntax.lo' libtool=yes @AMDEPBACKSLASH@
1061 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
1062 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -c -o libfaad_drm_la-ps_syntax.lo `test -f 'ps_syntax.c' || echo '$(srcdir)/'`ps_syntax.c
1063
1064 libfaad_drm_la-pulse.lo: pulse.c
1065 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -MT libfaad_drm_la-pulse.lo -MD -MP -MF $(DEPDIR)/libfaad_drm_la-pulse.Tpo -c -o libfaad_drm_la-pulse.lo `test -f 'pulse.c' || echo '$(srcdir)/'`pulse.c
1066 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-pulse.Tpo $(DEPDIR)/libfaad_drm_la-pulse.Plo
1067 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='pulse.c' object='libfaad_drm_la-pulse.lo' libtool=yes @AMDEPBACKSLASH@
1068 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
1069 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -c -o libfaad_drm_la-pulse.lo `test -f 'pulse.c' || echo '$(srcdir)/'`pulse.c
1070
1071 libfaad_drm_la-specrec.lo: specrec.c
1072 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -MT libfaad_drm_la-specrec.lo -MD -MP -MF $(DEPDIR)/libfaad_drm_la-specrec.Tpo -c -o libfaad_drm_la-specrec.lo `test -f 'specrec.c' || echo '$(srcdir)/'`specrec.c
1073 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-specrec.Tpo $(DEPDIR)/libfaad_drm_la-specrec.Plo
1074 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='specrec.c' object='libfaad_drm_la-specrec.lo' libtool=yes @AMDEPBACKSLASH@
1075 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
1076 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -c -o libfaad_drm_la-specrec.lo `test -f 'specrec.c' || echo '$(srcdir)/'`specrec.c
1077
1078 libfaad_drm_la-syntax.lo: syntax.c
1079 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -MT libfaad_drm_la-syntax.lo -MD -MP -MF $(DEPDIR)/libfaad_drm_la-syntax.Tpo -c -o libfaad_drm_la-syntax.lo `test -f 'syntax.c' || echo '$(srcdir)/'`syntax.c
1080 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-syntax.Tpo $(DEPDIR)/libfaad_drm_la-syntax.Plo
1081 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='syntax.c' object='libfaad_drm_la-syntax.lo' libtool=yes @AMDEPBACKSLASH@
1082 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
1083 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -c -o libfaad_drm_la-syntax.lo `test -f 'syntax.c' || echo '$(srcdir)/'`syntax.c
1084
1085 libfaad_drm_la-tns.lo: tns.c
1086 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -MT libfaad_drm_la-tns.lo -MD -MP -MF $(DEPDIR)/libfaad_drm_la-tns.Tpo -c -o libfaad_drm_la-tns.lo `test -f 'tns.c' || echo '$(srcdir)/'`tns.c
1087 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-tns.Tpo $(DEPDIR)/libfaad_drm_la-tns.Plo
1088 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tns.c' object='libfaad_drm_la-tns.lo' libtool=yes @AMDEPBACKSLASH@
1089 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
1090 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -c -o libfaad_drm_la-tns.lo `test -f 'tns.c' || echo '$(srcdir)/'`tns.c
1091
1092 libfaad_drm_la-hcr.lo: hcr.c
1093 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -MT libfaad_drm_la-hcr.lo -MD -MP -MF $(DEPDIR)/libfaad_drm_la-hcr.Tpo -c -o libfaad_drm_la-hcr.lo `test -f 'hcr.c' || echo '$(srcdir)/'`hcr.c
1094 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-hcr.Tpo $(DEPDIR)/libfaad_drm_la-hcr.Plo
1095 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='hcr.c' object='libfaad_drm_la-hcr.lo' libtool=yes @AMDEPBACKSLASH@
1096 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
1097 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -c -o libfaad_drm_la-hcr.lo `test -f 'hcr.c' || echo '$(srcdir)/'`hcr.c
1098
1099 libfaad_drm_la-huffman.lo: huffman.c
1100 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -MT libfaad_drm_la-huffman.lo -MD -MP -MF $(DEPDIR)/libfaad_drm_la-huffman.Tpo -c -o libfaad_drm_la-huffman.lo `test -f 'huffman.c' || echo '$(srcdir)/'`huffman.c
1101 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-huffman.Tpo $(DEPDIR)/libfaad_drm_la-huffman.Plo
1102 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='huffman.c' object='libfaad_drm_la-huffman.lo' libtool=yes @AMDEPBACKSLASH@
1103 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
1104 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -c -o libfaad_drm_la-huffman.lo `test -f 'huffman.c' || echo '$(srcdir)/'`huffman.c
1105
1106 libfaad_drm_la-rvlc.lo: rvlc.c
1107 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -MT libfaad_drm_la-rvlc.lo -MD -MP -MF $(DEPDIR)/libfaad_drm_la-rvlc.Tpo -c -o libfaad_drm_la-rvlc.lo `test -f 'rvlc.c' || echo '$(srcdir)/'`rvlc.c
1108 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-rvlc.Tpo $(DEPDIR)/libfaad_drm_la-rvlc.Plo
1109 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='rvlc.c' object='libfaad_drm_la-rvlc.lo' libtool=yes @AMDEPBACKSLASH@
1110 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
1111 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -c -o libfaad_drm_la-rvlc.lo `test -f 'rvlc.c' || echo '$(srcdir)/'`rvlc.c
1112
1113 libfaad_drm_la-ssr.lo: ssr.c
1114 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -MT libfaad_drm_la-ssr.lo -MD -MP -MF $(DEPDIR)/libfaad_drm_la-ssr.Tpo -c -o libfaad_drm_la-ssr.lo `test -f 'ssr.c' || echo '$(srcdir)/'`ssr.c
1115 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-ssr.Tpo $(DEPDIR)/libfaad_drm_la-ssr.Plo
1116 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='ssr.c' object='libfaad_drm_la-ssr.lo' libtool=yes @AMDEPBACKSLASH@
1117 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
1118 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -c -o libfaad_drm_la-ssr.lo `test -f 'ssr.c' || echo '$(srcdir)/'`ssr.c
1119
1120 libfaad_drm_la-ssr_fb.lo: ssr_fb.c
1121 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -MT libfaad_drm_la-ssr_fb.lo -MD -MP -MF $(DEPDIR)/libfaad_drm_la-ssr_fb.Tpo -c -o libfaad_drm_la-ssr_fb.lo `test -f 'ssr_fb.c' || echo '$(srcdir)/'`ssr_fb.c
1122 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-ssr_fb.Tpo $(DEPDIR)/libfaad_drm_la-ssr_fb.Plo
1123 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='ssr_fb.c' object='libfaad_drm_la-ssr_fb.lo' libtool=yes @AMDEPBACKSLASH@
1124 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
1125 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -c -o libfaad_drm_la-ssr_fb.lo `test -f 'ssr_fb.c' || echo '$(srcdir)/'`ssr_fb.c
1126
1127 libfaad_drm_la-ssr_ipqf.lo: ssr_ipqf.c
1128 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -MT libfaad_drm_la-ssr_ipqf.lo -MD -MP -MF $(DEPDIR)/libfaad_drm_la-ssr_ipqf.Tpo -c -o libfaad_drm_la-ssr_ipqf.lo `test -f 'ssr_ipqf.c' || echo '$(srcdir)/'`ssr_ipqf.c
1129 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-ssr_ipqf.Tpo $(DEPDIR)/libfaad_drm_la-ssr_ipqf.Plo
1130 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='ssr_ipqf.c' object='libfaad_drm_la-ssr_ipqf.lo' libtool=yes @AMDEPBACKSLASH@
1131 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
1132 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -c -o libfaad_drm_la-ssr_ipqf.lo `test -f 'ssr_ipqf.c' || echo '$(srcdir)/'`ssr_ipqf.c
1133
1134 libfaad_drm_la-common.lo: common.c
1135 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -MT libfaad_drm_la-common.lo -MD -MP -MF $(DEPDIR)/libfaad_drm_la-common.Tpo -c -o libfaad_drm_la-common.lo `test -f 'common.c' || echo '$(srcdir)/'`common.c
1136 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-common.Tpo $(DEPDIR)/libfaad_drm_la-common.Plo
1137 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='common.c' object='libfaad_drm_la-common.lo' libtool=yes @AMDEPBACKSLASH@
1138 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
1139 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -c -o libfaad_drm_la-common.lo `test -f 'common.c' || echo '$(srcdir)/'`common.c
1140
1141 libfaad_drm_la-sbr_dct.lo: sbr_dct.c
1142 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -MT libfaad_drm_la-sbr_dct.lo -MD -MP -MF $(DEPDIR)/libfaad_drm_la-sbr_dct.Tpo -c -o libfaad_drm_la-sbr_dct.lo `test -f 'sbr_dct.c' || echo '$(srcdir)/'`sbr_dct.c
1143 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-sbr_dct.Tpo $(DEPDIR)/libfaad_drm_la-sbr_dct.Plo
1144 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='sbr_dct.c' object='libfaad_drm_la-sbr_dct.lo' libtool=yes @AMDEPBACKSLASH@
1145 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
1146 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -c -o libfaad_drm_la-sbr_dct.lo `test -f 'sbr_dct.c' || echo '$(srcdir)/'`sbr_dct.c
1147
1148 libfaad_drm_la-sbr_e_nf.lo: sbr_e_nf.c
1149 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -MT libfaad_drm_la-sbr_e_nf.lo -MD -MP -MF $(DEPDIR)/libfaad_drm_la-sbr_e_nf.Tpo -c -o libfaad_drm_la-sbr_e_nf.lo `test -f 'sbr_e_nf.c' || echo '$(srcdir)/'`sbr_e_nf.c
1150 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-sbr_e_nf.Tpo $(DEPDIR)/libfaad_drm_la-sbr_e_nf.Plo
1151 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='sbr_e_nf.c' object='libfaad_drm_la-sbr_e_nf.lo' libtool=yes @AMDEPBACKSLASH@
1152 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
1153 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -c -o libfaad_drm_la-sbr_e_nf.lo `test -f 'sbr_e_nf.c' || echo '$(srcdir)/'`sbr_e_nf.c
1154
1155 libfaad_drm_la-sbr_fbt.lo: sbr_fbt.c
1156 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -MT libfaad_drm_la-sbr_fbt.lo -MD -MP -MF $(DEPDIR)/libfaad_drm_la-sbr_fbt.Tpo -c -o libfaad_drm_la-sbr_fbt.lo `test -f 'sbr_fbt.c' || echo '$(srcdir)/'`sbr_fbt.c
1157 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-sbr_fbt.Tpo $(DEPDIR)/libfaad_drm_la-sbr_fbt.Plo
1158 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='sbr_fbt.c' object='libfaad_drm_la-sbr_fbt.lo' libtool=yes @AMDEPBACKSLASH@
1159 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
1160 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -c -o libfaad_drm_la-sbr_fbt.lo `test -f 'sbr_fbt.c' || echo '$(srcdir)/'`sbr_fbt.c
1161
1162 libfaad_drm_la-sbr_hfadj.lo: sbr_hfadj.c
1163 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -MT libfaad_drm_la-sbr_hfadj.lo -MD -MP -MF $(DEPDIR)/libfaad_drm_la-sbr_hfadj.Tpo -c -o libfaad_drm_la-sbr_hfadj.lo `test -f 'sbr_hfadj.c' || echo '$(srcdir)/'`sbr_hfadj.c
1164 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-sbr_hfadj.Tpo $(DEPDIR)/libfaad_drm_la-sbr_hfadj.Plo
1165 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='sbr_hfadj.c' object='libfaad_drm_la-sbr_hfadj.lo' libtool=yes @AMDEPBACKSLASH@
1166 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
1167 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -c -o libfaad_drm_la-sbr_hfadj.lo `test -f 'sbr_hfadj.c' || echo '$(srcdir)/'`sbr_hfadj.c
1168
1169 libfaad_drm_la-sbr_hfgen.lo: sbr_hfgen.c
1170 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -MT libfaad_drm_la-sbr_hfgen.lo -MD -MP -MF $(DEPDIR)/libfaad_drm_la-sbr_hfgen.Tpo -c -o libfaad_drm_la-sbr_hfgen.lo `test -f 'sbr_hfgen.c' || echo '$(srcdir)/'`sbr_hfgen.c
1171 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-sbr_hfgen.Tpo $(DEPDIR)/libfaad_drm_la-sbr_hfgen.Plo
1172 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='sbr_hfgen.c' object='libfaad_drm_la-sbr_hfgen.lo' libtool=yes @AMDEPBACKSLASH@
1173 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
1174 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -c -o libfaad_drm_la-sbr_hfgen.lo `test -f 'sbr_hfgen.c' || echo '$(srcdir)/'`sbr_hfgen.c
1175
1176 libfaad_drm_la-sbr_huff.lo: sbr_huff.c
1177 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -MT libfaad_drm_la-sbr_huff.lo -MD -MP -MF $(DEPDIR)/libfaad_drm_la-sbr_huff.Tpo -c -o libfaad_drm_la-sbr_huff.lo `test -f 'sbr_huff.c' || echo '$(srcdir)/'`sbr_huff.c
1178 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-sbr_huff.Tpo $(DEPDIR)/libfaad_drm_la-sbr_huff.Plo
1179 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='sbr_huff.c' object='libfaad_drm_la-sbr_huff.lo' libtool=yes @AMDEPBACKSLASH@
1180 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
1181 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -c -o libfaad_drm_la-sbr_huff.lo `test -f 'sbr_huff.c' || echo '$(srcdir)/'`sbr_huff.c
1182
1183 libfaad_drm_la-sbr_qmf.lo: sbr_qmf.c
1184 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -MT libfaad_drm_la-sbr_qmf.lo -MD -MP -MF $(DEPDIR)/libfaad_drm_la-sbr_qmf.Tpo -c -o libfaad_drm_la-sbr_qmf.lo `test -f 'sbr_qmf.c' || echo '$(srcdir)/'`sbr_qmf.c
1185 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-sbr_qmf.Tpo $(DEPDIR)/libfaad_drm_la-sbr_qmf.Plo
1186 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='sbr_qmf.c' object='libfaad_drm_la-sbr_qmf.lo' libtool=yes @AMDEPBACKSLASH@
1187 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
1188 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -c -o libfaad_drm_la-sbr_qmf.lo `test -f 'sbr_qmf.c' || echo '$(srcdir)/'`sbr_qmf.c
1189
1190 libfaad_drm_la-sbr_syntax.lo: sbr_syntax.c
1191 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -MT libfaad_drm_la-sbr_syntax.lo -MD -MP -MF $(DEPDIR)/libfaad_drm_la-sbr_syntax.Tpo -c -o libfaad_drm_la-sbr_syntax.lo `test -f 'sbr_syntax.c' || echo '$(srcdir)/'`sbr_syntax.c
1192 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-sbr_syntax.Tpo $(DEPDIR)/libfaad_drm_la-sbr_syntax.Plo
1193 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='sbr_syntax.c' object='libfaad_drm_la-sbr_syntax.lo' libtool=yes @AMDEPBACKSLASH@
1194 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
1195 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -c -o libfaad_drm_la-sbr_syntax.lo `test -f 'sbr_syntax.c' || echo '$(srcdir)/'`sbr_syntax.c
1196
1197 libfaad_drm_la-sbr_tf_grid.lo: sbr_tf_grid.c
1198 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -MT libfaad_drm_la-sbr_tf_grid.lo -MD -MP -MF $(DEPDIR)/libfaad_drm_la-sbr_tf_grid.Tpo -c -o libfaad_drm_la-sbr_tf_grid.lo `test -f 'sbr_tf_grid.c' || echo '$(srcdir)/'`sbr_tf_grid.c
1199 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-sbr_tf_grid.Tpo $(DEPDIR)/libfaad_drm_la-sbr_tf_grid.Plo
1200 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='sbr_tf_grid.c' object='libfaad_drm_la-sbr_tf_grid.lo' libtool=yes @AMDEPBACKSLASH@
1201 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
1202 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -c -o libfaad_drm_la-sbr_tf_grid.lo `test -f 'sbr_tf_grid.c' || echo '$(srcdir)/'`sbr_tf_grid.c
1203
1204 libfaad_drm_la-sbr_dec.lo: sbr_dec.c
1205 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -MT libfaad_drm_la-sbr_dec.lo -MD -MP -MF $(DEPDIR)/libfaad_drm_la-sbr_dec.Tpo -c -o libfaad_drm_la-sbr_dec.lo `test -f 'sbr_dec.c' || echo '$(srcdir)/'`sbr_dec.c
1206 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-sbr_dec.Tpo $(DEPDIR)/libfaad_drm_la-sbr_dec.Plo
1207 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='sbr_dec.c' object='libfaad_drm_la-sbr_dec.lo' libtool=yes @AMDEPBACKSLASH@
1208 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
1209 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libfaad_drm_la_CFLAGS) $(CFLAGS) -c -o libfaad_drm_la-sbr_dec.lo `test -f 'sbr_dec.c' || echo '$(srcdir)/'`sbr_dec.c
1210
1211 mostlyclean-libtool:
1212 -rm -f *.lo
1213
1214 clean-libtool:
1215 -rm -rf .libs _libs
1216 install-pkgconfigDATA: $(pkgconfig_DATA)
1217 @$(NORMAL_INSTALL)
1218 @list='$(pkgconfig_DATA)'; test -n "$(pkgconfigdir)" || list=; \
1219 if test -n "$$list"; then \
1220 echo " $(MKDIR_P) '$(DESTDIR)$(pkgconfigdir)'"; \
1221 $(MKDIR_P) "$(DESTDIR)$(pkgconfigdir)" || exit 1; \
1222 fi; \
1223 for p in $$list; do \
1224 if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
1225 echo "$$d$$p"; \
1226 done | $(am__base_list) | \
1227 while read files; do \
1228 echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(pkgconfigdir)'"; \
1229 $(INSTALL_DATA) $$files "$(DESTDIR)$(pkgconfigdir)" || exit $$?; \
1230 done
1231
1232 uninstall-pkgconfigDATA:
1233 @$(NORMAL_UNINSTALL)
1234 @list='$(pkgconfig_DATA)'; test -n "$(pkgconfigdir)" || list=; \
1235 files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
1236 dir='$(DESTDIR)$(pkgconfigdir)'; $(am__uninstall_files_from_dir)
1237 install-includeHEADERS: $(include_HEADERS)
1238 @$(NORMAL_INSTALL)
1239 @list='$(include_HEADERS)'; test -n "$(includedir)" || list=; \
1240 if test -n "$$list"; then \
1241 echo " $(MKDIR_P) '$(DESTDIR)$(includedir)'"; \
1242 $(MKDIR_P) "$(DESTDIR)$(includedir)" || exit 1; \
1243 fi; \
1244 for p in $$list; do \
1245 if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
1246 echo "$$d$$p"; \
1247 done | $(am__base_list) | \
1248 while read files; do \
1249 echo " $(INSTALL_HEADER) $$files '$(DESTDIR)$(includedir)'"; \
1250 $(INSTALL_HEADER) $$files "$(DESTDIR)$(includedir)" || exit $$?; \
1251 done
1252
1253 uninstall-includeHEADERS:
1254 @$(NORMAL_UNINSTALL)
1255 @list='$(include_HEADERS)'; test -n "$(includedir)" || list=; \
1256 files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
1257 dir='$(DESTDIR)$(includedir)'; $(am__uninstall_files_from_dir)
1258
1259 ID: $(am__tagged_files)
1260 $(am__define_uniq_tagged_files); mkid -fID $$unique
1261 tags: tags-am
1262 TAGS: tags
1263
1264 tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
1265 set x; \
1266 here=`pwd`; \
1267 $(am__define_uniq_tagged_files); \
1268 shift; \
1269 if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
1270 test -n "$$unique" || unique=$$empty_fix; \
1271 if test $$# -gt 0; then \
1272 $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
1273 "$$@" $$unique; \
1274 else \
1275 $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
1276 $$unique; \
1277 fi; \
1278 fi
1279 ctags: ctags-am
1280
1281 CTAGS: ctags
1282 ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
1283 $(am__define_uniq_tagged_files); \
1284 test -z "$(CTAGS_ARGS)$$unique" \
1285 || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
1286 $$unique
1287
1288 GTAGS:
1289 here=`$(am__cd) $(top_builddir) && pwd` \
1290 && $(am__cd) $(top_srcdir) \
1291 && gtags -i $(GTAGS_ARGS) "$$here"
1292 cscopelist: cscopelist-am
1293
1294 cscopelist-am: $(am__tagged_files)
1295 list='$(am__tagged_files)'; \
1296 case "$(srcdir)" in \
1297 [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
1298 *) sdir=$(subdir)/$(srcdir) ;; \
1299 esac; \
1300 for i in $$list; do \
1301 if test -f "$$i"; then \
1302 echo "$(subdir)/$$i"; \
1303 else \
1304 echo "$$sdir/$$i"; \
1305 fi; \
1306 done >> $(top_builddir)/cscope.files
1307
1308 distclean-tags:
1309 -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
1310
1311 distdir: $(BUILT_SOURCES)
1312 $(MAKE) $(AM_MAKEFLAGS) distdir-am
1313
1314 distdir-am: $(DISTFILES)
1315 @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
1316 topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
1317 list='$(DISTFILES)'; \
1318 dist_files=`for file in $$list; do echo $$file; done | \
1319 sed -e "s|^$$srcdirstrip/||;t" \
1320 -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
1321 case $$dist_files in \
1322 */*) $(MKDIR_P) `echo "$$dist_files" | \
1323 sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
1324 sort -u` ;; \
1325 esac; \
1326 for file in $$dist_files; do \
1327 if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
1328 if test -d $$d/$$file; then \
1329 dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
1330 if test -d "$(distdir)/$$file"; then \
1331 find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
1332 fi; \
1333 if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
1334 cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
1335 find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
1336 fi; \
1337 cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
1338 else \
1339 test -f "$(distdir)/$$file" \
1340 || cp -p $$d/$$file "$(distdir)/$$file" \
1341 || exit 1; \
1342 fi; \
1343 done
1344 check-am: all-am
1345 check: check-am
1346 all-am: Makefile $(LTLIBRARIES) $(DATA) $(HEADERS)
1347 installdirs:
1348 for dir in "$(DESTDIR)$(libdir)" "$(DESTDIR)$(pkgconfigdir)" "$(DESTDIR)$(includedir)"; do \
1349 test -z "$$dir" || $(MKDIR_P) "$$dir"; \
1350 done
1351 install: install-am
1352 install-exec: install-exec-am
1353 install-data: install-data-am
1354 uninstall: uninstall-am
1355
1356 install-am: all-am
1357 @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
1358
1359 installcheck: installcheck-am
1360 install-strip:
1361 if test -z '$(STRIP)'; then \
1362 $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
1363 install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
1364 install; \
1365 else \
1366 $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
1367 install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
1368 "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
1369 fi
1370 mostlyclean-generic:
1371
1372 clean-generic:
1373
1374 distclean-generic:
1375 -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
1376 -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
1377
1378 maintainer-clean-generic:
1379 @echo "This command is intended for maintainers to use"
1380 @echo "it deletes files that may require special tools to rebuild."
1381 clean: clean-am
1382
1383 clean-am: clean-generic clean-libLTLIBRARIES clean-libtool \
1384 mostlyclean-am
1385
1386 distclean: distclean-am
1387 -rm -f ./$(DEPDIR)/libfaad_drm_la-bits.Plo
1388 -rm -f ./$(DEPDIR)/libfaad_drm_la-cfft.Plo
1389 -rm -f ./$(DEPDIR)/libfaad_drm_la-common.Plo
1390 -rm -f ./$(DEPDIR)/libfaad_drm_la-decoder.Plo
1391 -rm -f ./$(DEPDIR)/libfaad_drm_la-drc.Plo
1392 -rm -f ./$(DEPDIR)/libfaad_drm_la-drm_dec.Plo
1393 -rm -f ./$(DEPDIR)/libfaad_drm_la-error.Plo
1394 -rm -f ./$(DEPDIR)/libfaad_drm_la-filtbank.Plo
1395 -rm -f ./$(DEPDIR)/libfaad_drm_la-hcr.Plo
1396 -rm -f ./$(DEPDIR)/libfaad_drm_la-huffman.Plo
1397 -rm -f ./$(DEPDIR)/libfaad_drm_la-ic_predict.Plo
1398 -rm -f ./$(DEPDIR)/libfaad_drm_la-is.Plo
1399 -rm -f ./$(DEPDIR)/libfaad_drm_la-lt_predict.Plo
1400 -rm -f ./$(DEPDIR)/libfaad_drm_la-mdct.Plo
1401 -rm -f ./$(DEPDIR)/libfaad_drm_la-mp4.Plo
1402 -rm -f ./$(DEPDIR)/libfaad_drm_la-ms.Plo
1403 -rm -f ./$(DEPDIR)/libfaad_drm_la-output.Plo
1404 -rm -f ./$(DEPDIR)/libfaad_drm_la-pns.Plo
1405 -rm -f ./$(DEPDIR)/libfaad_drm_la-ps_dec.Plo
1406 -rm -f ./$(DEPDIR)/libfaad_drm_la-ps_syntax.Plo
1407 -rm -f ./$(DEPDIR)/libfaad_drm_la-pulse.Plo
1408 -rm -f ./$(DEPDIR)/libfaad_drm_la-rvlc.Plo
1409 -rm -f ./$(DEPDIR)/libfaad_drm_la-sbr_dct.Plo
1410 -rm -f ./$(DEPDIR)/libfaad_drm_la-sbr_dec.Plo
1411 -rm -f ./$(DEPDIR)/libfaad_drm_la-sbr_e_nf.Plo
1412 -rm -f ./$(DEPDIR)/libfaad_drm_la-sbr_fbt.Plo
1413 -rm -f ./$(DEPDIR)/libfaad_drm_la-sbr_hfadj.Plo
1414 -rm -f ./$(DEPDIR)/libfaad_drm_la-sbr_hfgen.Plo
1415 -rm -f ./$(DEPDIR)/libfaad_drm_la-sbr_huff.Plo
1416 -rm -f ./$(DEPDIR)/libfaad_drm_la-sbr_qmf.Plo
1417 -rm -f ./$(DEPDIR)/libfaad_drm_la-sbr_syntax.Plo
1418 -rm -f ./$(DEPDIR)/libfaad_drm_la-sbr_tf_grid.Plo
1419 -rm -f ./$(DEPDIR)/libfaad_drm_la-specrec.Plo
1420 -rm -f ./$(DEPDIR)/libfaad_drm_la-ssr.Plo
1421 -rm -f ./$(DEPDIR)/libfaad_drm_la-ssr_fb.Plo
1422 -rm -f ./$(DEPDIR)/libfaad_drm_la-ssr_ipqf.Plo
1423 -rm -f ./$(DEPDIR)/libfaad_drm_la-syntax.Plo
1424 -rm -f ./$(DEPDIR)/libfaad_drm_la-tns.Plo
1425 -rm -f ./$(DEPDIR)/libfaad_la-bits.Plo
1426 -rm -f ./$(DEPDIR)/libfaad_la-cfft.Plo
1427 -rm -f ./$(DEPDIR)/libfaad_la-common.Plo
1428 -rm -f ./$(DEPDIR)/libfaad_la-decoder.Plo
1429 -rm -f ./$(DEPDIR)/libfaad_la-drc.Plo
1430 -rm -f ./$(DEPDIR)/libfaad_la-drm_dec.Plo
1431 -rm -f ./$(DEPDIR)/libfaad_la-error.Plo
1432 -rm -f ./$(DEPDIR)/libfaad_la-filtbank.Plo
1433 -rm -f ./$(DEPDIR)/libfaad_la-hcr.Plo
1434 -rm -f ./$(DEPDIR)/libfaad_la-huffman.Plo
1435 -rm -f ./$(DEPDIR)/libfaad_la-ic_predict.Plo
1436 -rm -f ./$(DEPDIR)/libfaad_la-is.Plo
1437 -rm -f ./$(DEPDIR)/libfaad_la-lt_predict.Plo
1438 -rm -f ./$(DEPDIR)/libfaad_la-mdct.Plo
1439 -rm -f ./$(DEPDIR)/libfaad_la-mp4.Plo
1440 -rm -f ./$(DEPDIR)/libfaad_la-ms.Plo
1441 -rm -f ./$(DEPDIR)/libfaad_la-output.Plo
1442 -rm -f ./$(DEPDIR)/libfaad_la-pns.Plo
1443 -rm -f ./$(DEPDIR)/libfaad_la-ps_dec.Plo
1444 -rm -f ./$(DEPDIR)/libfaad_la-ps_syntax.Plo
1445 -rm -f ./$(DEPDIR)/libfaad_la-pulse.Plo
1446 -rm -f ./$(DEPDIR)/libfaad_la-rvlc.Plo
1447 -rm -f ./$(DEPDIR)/libfaad_la-sbr_dct.Plo
1448 -rm -f ./$(DEPDIR)/libfaad_la-sbr_dec.Plo
1449 -rm -f ./$(DEPDIR)/libfaad_la-sbr_e_nf.Plo
1450 -rm -f ./$(DEPDIR)/libfaad_la-sbr_fbt.Plo
1451 -rm -f ./$(DEPDIR)/libfaad_la-sbr_hfadj.Plo
1452 -rm -f ./$(DEPDIR)/libfaad_la-sbr_hfgen.Plo
1453 -rm -f ./$(DEPDIR)/libfaad_la-sbr_huff.Plo
1454 -rm -f ./$(DEPDIR)/libfaad_la-sbr_qmf.Plo
1455 -rm -f ./$(DEPDIR)/libfaad_la-sbr_syntax.Plo
1456 -rm -f ./$(DEPDIR)/libfaad_la-sbr_tf_grid.Plo
1457 -rm -f ./$(DEPDIR)/libfaad_la-specrec.Plo
1458 -rm -f ./$(DEPDIR)/libfaad_la-ssr.Plo
1459 -rm -f ./$(DEPDIR)/libfaad_la-ssr_fb.Plo
1460 -rm -f ./$(DEPDIR)/libfaad_la-ssr_ipqf.Plo
1461 -rm -f ./$(DEPDIR)/libfaad_la-syntax.Plo
1462 -rm -f ./$(DEPDIR)/libfaad_la-tns.Plo
1463 -rm -f Makefile
1464 distclean-am: clean-am distclean-compile distclean-generic \
1465 distclean-tags
1466
1467 dvi: dvi-am
1468
1469 dvi-am:
1470
1471 html: html-am
1472
1473 html-am:
1474
1475 info: info-am
1476
1477 info-am:
1478
1479 install-data-am: install-includeHEADERS install-pkgconfigDATA
1480
1481 install-dvi: install-dvi-am
1482
1483 install-dvi-am:
1484
1485 install-exec-am: install-libLTLIBRARIES
1486
1487 install-html: install-html-am
1488
1489 install-html-am:
1490
1491 install-info: install-info-am
1492
1493 install-info-am:
1494
1495 install-man:
1496
1497 install-pdf: install-pdf-am
1498
1499 install-pdf-am:
1500
1501 install-ps: install-ps-am
1502
1503 install-ps-am:
1504
1505 installcheck-am:
1506
1507 maintainer-clean: maintainer-clean-am
1508 -rm -f ./$(DEPDIR)/libfaad_drm_la-bits.Plo
1509 -rm -f ./$(DEPDIR)/libfaad_drm_la-cfft.Plo
1510 -rm -f ./$(DEPDIR)/libfaad_drm_la-common.Plo
1511 -rm -f ./$(DEPDIR)/libfaad_drm_la-decoder.Plo
1512 -rm -f ./$(DEPDIR)/libfaad_drm_la-drc.Plo
1513 -rm -f ./$(DEPDIR)/libfaad_drm_la-drm_dec.Plo
1514 -rm -f ./$(DEPDIR)/libfaad_drm_la-error.Plo
1515 -rm -f ./$(DEPDIR)/libfaad_drm_la-filtbank.Plo
1516 -rm -f ./$(DEPDIR)/libfaad_drm_la-hcr.Plo
1517 -rm -f ./$(DEPDIR)/libfaad_drm_la-huffman.Plo
1518 -rm -f ./$(DEPDIR)/libfaad_drm_la-ic_predict.Plo
1519 -rm -f ./$(DEPDIR)/libfaad_drm_la-is.Plo
1520 -rm -f ./$(DEPDIR)/libfaad_drm_la-lt_predict.Plo
1521 -rm -f ./$(DEPDIR)/libfaad_drm_la-mdct.Plo
1522 -rm -f ./$(DEPDIR)/libfaad_drm_la-mp4.Plo
1523 -rm -f ./$(DEPDIR)/libfaad_drm_la-ms.Plo
1524 -rm -f ./$(DEPDIR)/libfaad_drm_la-output.Plo
1525 -rm -f ./$(DEPDIR)/libfaad_drm_la-pns.Plo
1526 -rm -f ./$(DEPDIR)/libfaad_drm_la-ps_dec.Plo
1527 -rm -f ./$(DEPDIR)/libfaad_drm_la-ps_syntax.Plo
1528 -rm -f ./$(DEPDIR)/libfaad_drm_la-pulse.Plo
1529 -rm -f ./$(DEPDIR)/libfaad_drm_la-rvlc.Plo
1530 -rm -f ./$(DEPDIR)/libfaad_drm_la-sbr_dct.Plo
1531 -rm -f ./$(DEPDIR)/libfaad_drm_la-sbr_dec.Plo
1532 -rm -f ./$(DEPDIR)/libfaad_drm_la-sbr_e_nf.Plo
1533 -rm -f ./$(DEPDIR)/libfaad_drm_la-sbr_fbt.Plo
1534 -rm -f ./$(DEPDIR)/libfaad_drm_la-sbr_hfadj.Plo
1535 -rm -f ./$(DEPDIR)/libfaad_drm_la-sbr_hfgen.Plo
1536 -rm -f ./$(DEPDIR)/libfaad_drm_la-sbr_huff.Plo
1537 -rm -f ./$(DEPDIR)/libfaad_drm_la-sbr_qmf.Plo
1538 -rm -f ./$(DEPDIR)/libfaad_drm_la-sbr_syntax.Plo
1539 -rm -f ./$(DEPDIR)/libfaad_drm_la-sbr_tf_grid.Plo
1540 -rm -f ./$(DEPDIR)/libfaad_drm_la-specrec.Plo
1541 -rm -f ./$(DEPDIR)/libfaad_drm_la-ssr.Plo
1542 -rm -f ./$(DEPDIR)/libfaad_drm_la-ssr_fb.Plo
1543 -rm -f ./$(DEPDIR)/libfaad_drm_la-ssr_ipqf.Plo
1544 -rm -f ./$(DEPDIR)/libfaad_drm_la-syntax.Plo
1545 -rm -f ./$(DEPDIR)/libfaad_drm_la-tns.Plo
1546 -rm -f ./$(DEPDIR)/libfaad_la-bits.Plo
1547 -rm -f ./$(DEPDIR)/libfaad_la-cfft.Plo
1548 -rm -f ./$(DEPDIR)/libfaad_la-common.Plo
1549 -rm -f ./$(DEPDIR)/libfaad_la-decoder.Plo
1550 -rm -f ./$(DEPDIR)/libfaad_la-drc.Plo
1551 -rm -f ./$(DEPDIR)/libfaad_la-drm_dec.Plo
1552 -rm -f ./$(DEPDIR)/libfaad_la-error.Plo
1553 -rm -f ./$(DEPDIR)/libfaad_la-filtbank.Plo
1554 -rm -f ./$(DEPDIR)/libfaad_la-hcr.Plo
1555 -rm -f ./$(DEPDIR)/libfaad_la-huffman.Plo
1556 -rm -f ./$(DEPDIR)/libfaad_la-ic_predict.Plo
1557 -rm -f ./$(DEPDIR)/libfaad_la-is.Plo
1558 -rm -f ./$(DEPDIR)/libfaad_la-lt_predict.Plo
1559 -rm -f ./$(DEPDIR)/libfaad_la-mdct.Plo
1560 -rm -f ./$(DEPDIR)/libfaad_la-mp4.Plo
1561 -rm -f ./$(DEPDIR)/libfaad_la-ms.Plo
1562 -rm -f ./$(DEPDIR)/libfaad_la-output.Plo
1563 -rm -f ./$(DEPDIR)/libfaad_la-pns.Plo
1564 -rm -f ./$(DEPDIR)/libfaad_la-ps_dec.Plo
1565 -rm -f ./$(DEPDIR)/libfaad_la-ps_syntax.Plo
1566 -rm -f ./$(DEPDIR)/libfaad_la-pulse.Plo
1567 -rm -f ./$(DEPDIR)/libfaad_la-rvlc.Plo
1568 -rm -f ./$(DEPDIR)/libfaad_la-sbr_dct.Plo
1569 -rm -f ./$(DEPDIR)/libfaad_la-sbr_dec.Plo
1570 -rm -f ./$(DEPDIR)/libfaad_la-sbr_e_nf.Plo
1571 -rm -f ./$(DEPDIR)/libfaad_la-sbr_fbt.Plo
1572 -rm -f ./$(DEPDIR)/libfaad_la-sbr_hfadj.Plo
1573 -rm -f ./$(DEPDIR)/libfaad_la-sbr_hfgen.Plo
1574 -rm -f ./$(DEPDIR)/libfaad_la-sbr_huff.Plo
1575 -rm -f ./$(DEPDIR)/libfaad_la-sbr_qmf.Plo
1576 -rm -f ./$(DEPDIR)/libfaad_la-sbr_syntax.Plo
1577 -rm -f ./$(DEPDIR)/libfaad_la-sbr_tf_grid.Plo
1578 -rm -f ./$(DEPDIR)/libfaad_la-specrec.Plo
1579 -rm -f ./$(DEPDIR)/libfaad_la-ssr.Plo
1580 -rm -f ./$(DEPDIR)/libfaad_la-ssr_fb.Plo
1581 -rm -f ./$(DEPDIR)/libfaad_la-ssr_ipqf.Plo
1582 -rm -f ./$(DEPDIR)/libfaad_la-syntax.Plo
1583 -rm -f ./$(DEPDIR)/libfaad_la-tns.Plo
1584 -rm -f Makefile
1585 maintainer-clean-am: distclean-am maintainer-clean-generic
1586
1587 mostlyclean: mostlyclean-am
1588
1589 mostlyclean-am: mostlyclean-compile mostlyclean-generic \
1590 mostlyclean-libtool
1591
1592 pdf: pdf-am
1593
1594 pdf-am:
1595
1596 ps: ps-am
1597
1598 ps-am:
1599
1600 uninstall-am: uninstall-includeHEADERS uninstall-libLTLIBRARIES \
1601 uninstall-pkgconfigDATA
1602
1603 .MAKE: install-am install-strip
1604
1605 .PHONY: CTAGS GTAGS TAGS all all-am am--depfiles check check-am clean \
1606 clean-generic clean-libLTLIBRARIES clean-libtool cscopelist-am \
1607 ctags ctags-am distclean distclean-compile distclean-generic \
1608 distclean-libtool distclean-tags distdir dvi dvi-am html \
1609 html-am info info-am install install-am install-data \
1610 install-data-am install-dvi install-dvi-am install-exec \
1611 install-exec-am install-html install-html-am \
1612 install-includeHEADERS install-info install-info-am \
1613 install-libLTLIBRARIES install-man install-pdf install-pdf-am \
1614 install-pkgconfigDATA install-ps install-ps-am install-strip \
1615 installcheck installcheck-am installdirs maintainer-clean \
1616 maintainer-clean-generic mostlyclean mostlyclean-compile \
1617 mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
1618 tags tags-am uninstall uninstall-am uninstall-includeHEADERS \
1619 uninstall-libLTLIBRARIES uninstall-pkgconfigDATA
1620
1621 .PRECIOUS: Makefile
1622
1623
1624 # Tell versions [3.59,3.63) of GNU make to not export all variables.
1625 # Otherwise a system limit (for SysV at least) may be exceeded.
1626 .NOEXPORT:
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
285285 #endif
286286
287287 faad_initbits(&ld, buffer, buffer_size);
288
288
289289 #if 0
290290 memset(l, 0, sizeof(latm_header));
291291 is_latm = latmCheck(l, &ld);
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
4848
4949
5050 /* binary search huffman tables */
51 static const int8_t f_huffman_sa[][2] =
51 static const int8_t f_huffman_sa[][2] =
5252 {
5353 { /*0*/ -15, 1 }, /* index 0: 1 bits: x */
5454 { 2, 3 }, /* index 1: 2 bits: 1x */
6666 { /*-7*/ -22, /*-6*/ -21 } /* index 13: 7 bits: 111111x */
6767 };
6868
69 static const int8_t t_huffman_sa[][2] =
69 static const int8_t t_huffman_sa[][2] =
7070 {
7171 { /*0*/ -15, 1 }, /* index 0: 1 bits: x */
7272 { 2, 3 }, /* index 1: 2 bits: 1x */
8484 { /*6*/ -9, /*7*/ -8 } /* index 13: 9 bits: 11111111x */
8585 };
8686
87 static const int8_t f_huffman_pan[][2] =
87 static const int8_t f_huffman_pan[][2] =
8888 {
8989 { /*0*/ -15, 1 }, /* index 0: 1 bits: x */
9090 { /*-1*/ -16, 2 }, /* index 1: 2 bits: 1x */
116116 { /*12*/ -3, /*14*/ -1 } /* index 27: 16 bits: 111111111111111x */
117117 };
118118
119 static const int8_t t_huffman_pan[][2] =
119 static const int8_t t_huffman_pan[][2] =
120120 {
121121 { /*0*/ -15, 1 }, /* index 0: 1 bits: x */
122122 { /*-1*/ -16, 2 }, /* index 1: 2 bits: 1x */
149149 };
150150
151151 /* There are 3 classes in the standard but the last 2 are identical */
152 static const real_t sa_quant[8][2] =
152 static const real_t sa_quant[8][2] =
153153 {
154154 { FRAC_CONST(0.0000), FRAC_CONST(0.0000) },
155155 { FRAC_CONST(0.0501), FRAC_CONST(0.1778) },
163163
164164 /* We don't need the actual quantizer values */
165165 #if 0
166 static const real_t pan_quant[8][5] =
166 static const real_t pan_quant[8][5] =
167167 {
168168 { COEF_CONST(0.0000), COEF_CONST(0.0000), COEF_CONST(0.0000), COEF_CONST(0.0000), COEF_CONST(0.0000) },
169169 { COEF_CONST(0.1661), COEF_CONST(0.1661), COEF_CONST(0.3322), COEF_CONST(0.3322), COEF_CONST(0.3322) },
202202
203203 /* 2^(pan_quant[x][y]/30) */
204204 static const real_t pan_pow_2_30_pos[8][5] = {
205 { COEF_CONST(1), COEF_CONST(1), COEF_CONST(1), COEF_CONST(1), COEF_CONST(1) },
206 { COEF_CONST(1.003845098), COEF_CONST(1.003845098), COEF_CONST(1.007704982), COEF_CONST(1.007704982), COEF_CONST(1.007704982) },
207 { COEF_CONST(1.007704982), COEF_CONST(1.007704982), COEF_CONST(1.01546933), COEF_CONST(1.019373909), COEF_CONST(1.019373909) },
208 { COEF_CONST(1.011579706), COEF_CONST(1.01546933), COEF_CONST(1.023293502), COEF_CONST(1.035142941), COEF_CONST(1.039123167) },
205 { COEF_CONST(1), COEF_CONST(1), COEF_CONST(1), COEF_CONST(1), COEF_CONST(1) },
206 { COEF_CONST(1.003845098), COEF_CONST(1.003845098), COEF_CONST(1.007704982), COEF_CONST(1.007704982), COEF_CONST(1.007704982) },
207 { COEF_CONST(1.007704982), COEF_CONST(1.007704982), COEF_CONST(1.01546933), COEF_CONST(1.019373909), COEF_CONST(1.019373909) },
208 { COEF_CONST(1.011579706), COEF_CONST(1.01546933), COEF_CONST(1.023293502), COEF_CONST(1.035142941), COEF_CONST(1.039123167) },
209209 { COEF_CONST(1.01546933), COEF_CONST(1.023293502), COEF_CONST(1.035142941), COEF_CONST(1.051155908), COEF_CONST(1.059252598) },
210 { COEF_CONST(1.019373909), COEF_CONST(1.03117796), COEF_CONST(1.051155908), COEF_CONST(1.071518432), COEF_CONST(1.0839263) },
211 { COEF_CONST(1.023293502), COEF_CONST(1.043118698), COEF_CONST(1.067414119), COEF_CONST(1.092277933), COEF_CONST(1.113439626) },
210 { COEF_CONST(1.019373909), COEF_CONST(1.03117796), COEF_CONST(1.051155908), COEF_CONST(1.071518432), COEF_CONST(1.0839263) },
211 { COEF_CONST(1.023293502), COEF_CONST(1.043118698), COEF_CONST(1.067414119), COEF_CONST(1.092277933), COEF_CONST(1.113439626) },
212212 { COEF_CONST(1.03117796), COEF_CONST(1.055195268), COEF_CONST(1.0839263), COEF_CONST(1.113439626), COEF_CONST(1.143756546) }
213213 };
214214
215215 /* 2^(-pan_quant[x][y]/30) */
216216 static const real_t pan_pow_2_30_neg[8][5] = {
217217 { COEF_CONST(1), COEF_CONST(1), COEF_CONST(1), COEF_CONST(1), COEF_CONST(1) },
218 { COEF_CONST(0.99616963), COEF_CONST(0.99616963), COEF_CONST(0.992353931), COEF_CONST(0.992353931), COEF_CONST(0.99235393) },
219 { COEF_CONST(0.992353931), COEF_CONST(0.992353931), COEF_CONST(0.984766325), COEF_CONST(0.980994305), COEF_CONST(0.980994305) },
220 { COEF_CONST(0.988552848), COEF_CONST(0.984766325), COEF_CONST(0.977236734), COEF_CONST(0.966050157), COEF_CONST(0.962349827) },
221 { COEF_CONST(0.984766325), COEF_CONST(0.977236734), COEF_CONST(0.966050157), COEF_CONST(0.951333663), COEF_CONST(0.944061881) },
222 { COEF_CONST(0.980994305), COEF_CONST(0.969764715), COEF_CONST(0.951333663), COEF_CONST(0.933255062), COEF_CONST(0.922571949) },
223 { COEF_CONST(0.977236734), COEF_CONST(0.958663671), COEF_CONST(0.936843519), COEF_CONST(0.915517901), COEF_CONST(0.898117847) },
218 { COEF_CONST(0.99616963), COEF_CONST(0.99616963), COEF_CONST(0.992353931), COEF_CONST(0.992353931), COEF_CONST(0.99235393) },
219 { COEF_CONST(0.992353931), COEF_CONST(0.992353931), COEF_CONST(0.984766325), COEF_CONST(0.980994305), COEF_CONST(0.980994305) },
220 { COEF_CONST(0.988552848), COEF_CONST(0.984766325), COEF_CONST(0.977236734), COEF_CONST(0.966050157), COEF_CONST(0.962349827) },
221 { COEF_CONST(0.984766325), COEF_CONST(0.977236734), COEF_CONST(0.966050157), COEF_CONST(0.951333663), COEF_CONST(0.944061881) },
222 { COEF_CONST(0.980994305), COEF_CONST(0.969764715), COEF_CONST(0.951333663), COEF_CONST(0.933255062), COEF_CONST(0.922571949) },
223 { COEF_CONST(0.977236734), COEF_CONST(0.958663671), COEF_CONST(0.936843519), COEF_CONST(0.915517901), COEF_CONST(0.898117847) },
224224 { COEF_CONST(0.969764715), COEF_CONST(0.947691892), COEF_CONST(0.922571949), COEF_CONST(0.898117847), COEF_CONST(0.874311936) }
225225 };
226226
227227 static const real_t g_decayslope[MAX_SA_BAND] = {
228 FRAC_CONST(1), FRAC_CONST(1), FRAC_CONST(1), FRAC_CONST(0.95),FRAC_CONST(0.9), FRAC_CONST(0.85), FRAC_CONST(0.8),
229 FRAC_CONST(0.75),FRAC_CONST(0.7), FRAC_CONST(0.65),FRAC_CONST(0.6), FRAC_CONST(0.55),FRAC_CONST(0.5), FRAC_CONST(0.45),
228 FRAC_CONST(1), FRAC_CONST(1), FRAC_CONST(1), FRAC_CONST(0.95),FRAC_CONST(0.9), FRAC_CONST(0.85), FRAC_CONST(0.8),
229 FRAC_CONST(0.75),FRAC_CONST(0.7), FRAC_CONST(0.65),FRAC_CONST(0.6), FRAC_CONST(0.55),FRAC_CONST(0.5), FRAC_CONST(0.45),
230230 FRAC_CONST(0.4), FRAC_CONST(0.35),FRAC_CONST(0.3), FRAC_CONST(0.25),FRAC_CONST(0.2), FRAC_CONST(0.15), FRAC_CONST(0.1),
231 FRAC_CONST(0.05),FRAC_CONST(0), FRAC_CONST(0), FRAC_CONST(0), FRAC_CONST(0), FRAC_CONST(0), FRAC_CONST(0),
232 FRAC_CONST(0), FRAC_CONST(0), FRAC_CONST(0), FRAC_CONST(0), FRAC_CONST(0), FRAC_CONST(0), FRAC_CONST(0),
233 FRAC_CONST(0), FRAC_CONST(0), FRAC_CONST(0), FRAC_CONST(0), FRAC_CONST(0), FRAC_CONST(0), FRAC_CONST(0),
231 FRAC_CONST(0.05),FRAC_CONST(0), FRAC_CONST(0), FRAC_CONST(0), FRAC_CONST(0), FRAC_CONST(0), FRAC_CONST(0),
232 FRAC_CONST(0), FRAC_CONST(0), FRAC_CONST(0), FRAC_CONST(0), FRAC_CONST(0), FRAC_CONST(0), FRAC_CONST(0),
233 FRAC_CONST(0), FRAC_CONST(0), FRAC_CONST(0), FRAC_CONST(0), FRAC_CONST(0), FRAC_CONST(0), FRAC_CONST(0),
234234 FRAC_CONST(0), FRAC_CONST(0), FRAC_CONST(0)
235235 };
236236
245245 { FRAC_CONST(0.929071574), FRAC_CONST(0) }
246246 };
247247
248 static const uint8_t sa_freq_scale[9] =
248 static const uint8_t sa_freq_scale[9] =
249249 {
250250 0, 1, 2, 3, 5, 7, 10, 13, 23
251251 };
252252
253 static const uint8_t pan_freq_scale[21] =
253 static const uint8_t pan_freq_scale[21] =
254254 {
255255 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10,
256256 11, 12, 13, 14, 15, 18, 22, 26, 32, 64
257257 };
258258
259 static const uint8_t pan_quant_class[20] =
259 static const uint8_t pan_quant_class[20] =
260260 {
261261 0, 1, 1, 1, 1, 1, 1, 1, 1, 1,
262262 2, 2, 2, 2, 3, 3, 3, 4, 4, 4
264264
265265 /* Inverse mapping lookup */
266266 static const uint8_t pan_inv_freq[64] = {
267 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15,
268 15, 15, 16, 16, 16, 16, 17, 17, 17, 17, 18, 18, 18, 18, 18, 18,
267 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15,
268 15, 15, 16, 16, 16, 16, 17, 17, 17, 17, 18, 18, 18, 18, 18, 18,
269269 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
270270 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19
271271 };
272272
273273 static const uint8_t sa_inv_freq[MAX_SA_BAND] = {
274274 0, 1, 2, 3, 3, 4, 4, 5, 5, 5, 6, 6, 6,
275 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
276 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
275 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
276 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
277277 7, 7, 7, 7, 7, 7, 7
278278 };
279279
280 static const real_t filter_coeff[] =
280 static const real_t filter_coeff[] =
281281 {
282282 FRAC_CONST(0.65143905754106),
283283 FRAC_CONST(0.56471812200776),
284284 FRAC_CONST(0.48954165955695)
285285 };
286286
287 static const uint8_t delay_length[3] =
287 static const uint8_t delay_length[3] =
288288 {
289289 3, 4, 5
290290 };
291291
292 static const real_t delay_fraction[] =
292 static const real_t delay_fraction[] =
293293 {
294294 FRAC_CONST(0.43), FRAC_CONST(0.75), FRAC_CONST(0.347)
295295 };
533533 }
534534
535535 static int8_t pan_delta_clip(drm_ps_info *ps, int8_t i)
536 {
536 {
537537 if (i < -7) {
538538 /* printf(" PANminclip %d", i); */
539539 ps->pan_decode_error = 1;
546546 return i;
547547 }
548548
549 static void drm_ps_delta_decode(drm_ps_info *ps)
550 {
551 uint8_t band;
552
553 if (ps->bs_enable_sa)
554 {
555 if (ps->bs_sa_dt_flag && !ps->g_last_had_sa)
556 {
549 static void drm_ps_delta_decode(drm_ps_info *ps)
550 {
551 uint8_t band;
552
553 if (ps->bs_enable_sa)
554 {
555 if (ps->bs_sa_dt_flag && !ps->g_last_had_sa)
556 {
557557 /* wait until we get a DT frame */
558558 ps->bs_enable_sa = 0;
559559 } else if (ps->bs_sa_dt_flag) {
560560 /* DT frame, we have a last frame, so we can decode */
561 ps->g_sa_index[0] = sa_delta_clip(ps, ps->g_prev_sa_index[0]+ps->bs_sa_data[0]);
561 ps->g_sa_index[0] = sa_delta_clip(ps, ps->g_prev_sa_index[0]+ps->bs_sa_data[0]);
562562 } else {
563563 /* DF always decodable */
564 ps->g_sa_index[0] = sa_delta_clip(ps,ps->bs_sa_data[0]);
565 }
566
564 ps->g_sa_index[0] = sa_delta_clip(ps,ps->bs_sa_data[0]);
565 }
566
567567 for (band = 1; band < DRM_NUM_SA_BANDS; band++)
568 {
568 {
569569 if (ps->bs_sa_dt_flag && ps->g_last_had_sa)
570570 {
571571 ps->g_sa_index[band] = sa_delta_clip(ps, ps->g_prev_sa_index[band] + ps->bs_sa_data[band]);
572572 } else if (!ps->bs_sa_dt_flag) {
573 ps->g_sa_index[band] = sa_delta_clip(ps, ps->g_sa_index[band-1] + ps->bs_sa_data[band]);
573 ps->g_sa_index[band] = sa_delta_clip(ps, ps->g_sa_index[band-1] + ps->bs_sa_data[band]);
574574 }
575575 }
576576 }
582582 ps->bs_enable_pan = ps->g_last_had_pan;
583583 ps->bs_enable_sa = ps->g_last_had_sa;
584584 }
585
586
587 if (ps->bs_enable_sa)
588 {
585
586
587 if (ps->bs_enable_sa)
588 {
589589 if (ps->sa_decode_error) {
590590 for (band = 0; band < DRM_NUM_SA_BANDS; band++)
591 {
591 {
592592 ps->g_sa_index[band] = ps->g_last_good_sa_index[band];
593593 }
594594 } else {
595595 for (band = 0; band < DRM_NUM_SA_BANDS; band++)
596 {
596 {
597597 ps->g_last_good_sa_index[band] = ps->g_sa_index[band];
598598 }
599599 }
600600 }
601
602 if (ps->bs_enable_pan)
603 {
604 if (ps->bs_pan_dt_flag && !ps->g_last_had_pan)
601
602 if (ps->bs_enable_pan)
603 {
604 if (ps->bs_pan_dt_flag && !ps->g_last_had_pan)
605605 {
606606 ps->bs_enable_pan = 0;
607 } else if (ps->bs_pan_dt_flag) {
607 } else if (ps->bs_pan_dt_flag) {
608608 ps->g_pan_index[0] = pan_delta_clip(ps, ps->g_prev_pan_index[0]+ps->bs_pan_data[0]);
609609 } else {
610610 ps->g_pan_index[0] = pan_delta_clip(ps, ps->bs_pan_data[0]);
611611 }
612
612
613613 for (band = 1; band < DRM_NUM_PAN_BANDS; band++)
614 {
614 {
615615 if (ps->bs_pan_dt_flag && ps->g_last_had_pan)
616616 {
617617 ps->g_pan_index[band] = pan_delta_clip(ps, ps->g_prev_pan_index[band] + ps->bs_pan_data[band]);
619619 ps->g_pan_index[band] = pan_delta_clip(ps, ps->g_pan_index[band-1] + ps->bs_pan_data[band]);
620620 }
621621 }
622
622
623623 if (ps->pan_decode_error) {
624624 for (band = 0; band < DRM_NUM_PAN_BANDS; band++)
625 {
625 {
626626 ps->g_pan_index[band] = ps->g_last_good_pan_index[band];
627627 }
628628 } else {
629629 for (band = 0; band < DRM_NUM_PAN_BANDS; band++)
630 {
630 {
631631 ps->g_last_good_pan_index[band] = ps->g_pan_index[band];
632632 }
633633 }
634634 }
635635 }
636636
637 static void drm_calc_sa_side_signal(drm_ps_info *ps, qmf_t X[38][64])
638 {
637 static void drm_calc_sa_side_signal(drm_ps_info *ps, qmf_t X[38][64])
638 {
639639 uint8_t s, b, k;
640640 complex_t qfrac, tmp0, tmp, in, R0;
641641 real_t peakdiff;
651651
652652 for (b = 0; b < sa_freq_scale[DRM_NUM_SA_BANDS]; b++)
653653 {
654 /* set delay indices */
654 /* set delay indices */
655655 for (k = 0; k < NUM_OF_LINKS; k++)
656656 temp_delay_ser[k] = ps->delay_buf_index_ser[k];
657657
659659 IM(Phi_Fract) = IM(Phi_Fract_Qmf[b]);
660660
661661 for (s = 0; s < NUM_OF_SUBSAMPLES; s++)
662 {
662 {
663663 const real_t gamma = REAL_CONST(1.5);
664664 const real_t sigma = REAL_CONST(1.5625);
665665
694694 } else {
695695 transratio = MUL_R(DIV_R(nrg, MUL_R(peakdiff, gamma)), sigma);
696696 }
697
698 for (k = 0; k < NUM_OF_LINKS; k++)
697
698 for (k = 0; k < NUM_OF_LINKS; k++)
699699 {
700700 new_delay_slopes[k] = MUL_F(g_decayslope[b], filter_coeff[k]);
701701 }
707707 IM(ps->d_buff[0][b]) = IM(ps->d_buff[1][b]);
708708
709709 RE(ps->d_buff[1][b]) = RE(in);
710 IM(ps->d_buff[1][b]) = IM(in);
710 IM(ps->d_buff[1][b]) = IM(in);
711711
712712 ComplexMult(&RE(tmp), &IM(tmp), RE(tmp0), IM(tmp0), RE(Phi_Fract), IM(Phi_Fract));
713713
714714 RE(R0) = RE(tmp);
715715 IM(R0) = IM(tmp);
716716
717 for (k = 0; k < NUM_OF_LINKS; k++)
717 for (k = 0; k < NUM_OF_LINKS; k++)
718718 {
719719 RE(qfrac) = RE(Q_Fract_allpass_Qmf[b][k]);
720720 IM(qfrac) = IM(Q_Fract_allpass_Qmf[b][k]);
742742 if (++temp_delay_ser[k] >= delay_length[k])
743743 temp_delay_ser[k] = 0;
744744 }
745 }
745 }
746746 }
747747
748748 for (k = 0; k < NUM_OF_LINKS; k++)
749749 ps->delay_buf_index_ser[k] = temp_delay_ser[k];
750750 }
751751
752 static void drm_add_ambiance(drm_ps_info *ps, qmf_t X_left[38][64], qmf_t X_right[38][64])
753 {
754 uint8_t s, b, ifreq, qclass;
752 static void drm_add_ambiance(drm_ps_info *ps, qmf_t X_left[38][64], qmf_t X_right[38][64])
753 {
754 uint8_t s, b, ifreq, qclass;
755755 real_t sa_map[MAX_SA_BAND], sa_dir_map[MAX_SA_BAND], k_sa_map[MAX_SA_BAND], k_sa_dir_map[MAX_SA_BAND];
756756 real_t new_dir_map, new_sa_map;
757
757
758758 if (ps->bs_enable_sa)
759759 {
760760 /* Instead of dequantization and mapping, we use an inverse mapping
769769 sa_map[b] = sa_quant[ps->g_prev_sa_index[ifreq]][qclass];
770770 new_sa_map = sa_quant[ps->g_sa_index[ifreq]][qclass];
771771
772 k_sa_map[b] = MUL_F(inv_f_num_of_subsamples, (new_sa_map - sa_map[b]));
773
774 sa_dir_map[b] = sa_sqrt_1_minus[ps->g_prev_sa_index[ifreq]][qclass];
772 k_sa_map[b] = MUL_F(inv_f_num_of_subsamples, (new_sa_map - sa_map[b]));
773
774 sa_dir_map[b] = sa_sqrt_1_minus[ps->g_prev_sa_index[ifreq]][qclass];
775775 new_dir_map = sa_sqrt_1_minus[ps->g_sa_index[ifreq]][qclass];
776
776
777777 k_sa_dir_map[b] = MUL_F(inv_f_num_of_subsamples, (new_dir_map - sa_dir_map[b]));
778778
779779 }
781781 for (s = 0; s < NUM_OF_SUBSAMPLES; s++)
782782 {
783783 for (b = 0; b < sa_freq_scale[DRM_NUM_SA_BANDS]; b++)
784 {
784 {
785785 QMF_RE(X_right[s][b]) = MUL_F(QMF_RE(X_left[s][b]), sa_dir_map[b]) - MUL_F(QMF_RE(ps->SA[s][b]), sa_map[b]);
786786 QMF_IM(X_right[s][b]) = MUL_F(QMF_IM(X_left[s][b]), sa_dir_map[b]) - MUL_F(QMF_IM(ps->SA[s][b]), sa_map[b]);
787787 QMF_RE(X_left[s][b]) = MUL_F(QMF_RE(X_left[s][b]), sa_dir_map[b]) + MUL_F(QMF_RE(ps->SA[s][b]), sa_map[b]);
788788 QMF_IM(X_left[s][b]) = MUL_F(QMF_IM(X_left[s][b]), sa_dir_map[b]) + MUL_F(QMF_IM(ps->SA[s][b]), sa_map[b]);
789
789
790790 sa_map[b] += k_sa_map[b];
791791 sa_dir_map[b] += k_sa_dir_map[b];
792792 }
793793 for (b = sa_freq_scale[DRM_NUM_SA_BANDS]; b < NUM_OF_QMF_CHANNELS; b++)
794 {
794 {
795795 QMF_RE(X_right[s][b]) = QMF_RE(X_left[s][b]);
796796 QMF_IM(X_right[s][b]) = QMF_IM(X_left[s][b]);
797797 }
798798 }
799 }
799 }
800800 else {
801801 for (s = 0; s < NUM_OF_SUBSAMPLES; s++)
802802 {
803803 for (b = 0; b < NUM_OF_QMF_CHANNELS; b++)
804804 {
805805 QMF_RE(X_right[s][b]) = QMF_RE(X_left[s][b]);
806 QMF_IM(X_right[s][b]) = QMF_IM(X_left[s][b]);
807 }
808 }
809 }
810 }
811
812 static void drm_add_pan(drm_ps_info *ps, qmf_t X_left[38][64], qmf_t X_right[38][64])
806 QMF_IM(X_right[s][b]) = QMF_IM(X_left[s][b]);
807 }
808 }
809 }
810 }
811
812 static void drm_add_pan(drm_ps_info *ps, qmf_t X_left[38][64], qmf_t X_right[38][64])
813813 {
814814 uint8_t s, b, qclass, ifreq;
815815 real_t tmp, coeff1, coeff2;
819819
820820 if (ps->bs_enable_pan)
821821 {
822 for (b = 0; b < NUM_OF_QMF_CHANNELS; b++)
822 for (b = 0; b < NUM_OF_QMF_CHANNELS; b++)
823823 {
824824 /* Instead of dequantization, 20->64 mapping and 2^G(x,y) we do an
825825 inverse mapping 64->20 and look up the 2^G(x,y) values directly */
828828
829829 if (ps->g_prev_pan_index[ifreq] >= 0)
830830 {
831 pan_base[b] = pan_pow_2_pos[ps->g_prev_pan_index[ifreq]][qclass];
831 pan_base[b] = pan_pow_2_pos[ps->g_prev_pan_index[ifreq]][qclass];
832832 } else {
833833 pan_base[b] = pan_pow_2_neg[-ps->g_prev_pan_index[ifreq]][qclass];
834834 }
837837 /* a en b can be negative so we may need to inverse parts */
838838 if (ps->g_pan_index[ifreq] >= 0)
839839 {
840 if (ps->g_prev_pan_index[ifreq] >= 0)
840 if (ps->g_prev_pan_index[ifreq] >= 0)
841841 {
842842 pan_delta[b] = MUL_C(pan_pow_2_30_pos[ps->g_pan_index[ifreq]][qclass],
843843 pan_pow_2_30_neg[ps->g_prev_pan_index[ifreq]][qclass]);
846846 pan_pow_2_30_pos[-ps->g_prev_pan_index[ifreq]][qclass]);
847847 }
848848 } else {
849 if (ps->g_prev_pan_index[ifreq] >= 0)
849 if (ps->g_prev_pan_index[ifreq] >= 0)
850850 {
851851 pan_delta[b] = MUL_C(pan_pow_2_30_neg[-ps->g_pan_index[ifreq]][qclass],
852852 pan_pow_2_30_neg[ps->g_prev_pan_index[ifreq]][qclass]);
865865 tmp = pan_base[b];
866866
867867 coeff2 = DIV_R(REAL_CONST(2.0), (REAL_CONST(1.0) + tmp));
868 coeff1 = MUL_R(coeff2, tmp);
868 coeff1 = MUL_R(coeff2, tmp);
869869
870870 QMF_RE(temp_l) = QMF_RE(X_left[s][b]);
871871 QMF_IM(temp_l) = QMF_IM(X_left[s][b]);
876876 QMF_IM(X_left[s][b]) = MUL_R(QMF_IM(temp_l), coeff1);
877877 QMF_RE(X_right[s][b]) = MUL_R(QMF_RE(temp_r), coeff2);
878878 QMF_IM(X_right[s][b]) = MUL_R(QMF_IM(temp_r), coeff2);
879
879
880880 /* 2^(a+k*b) = 2^a * 2^b * ... * 2^b */
881881 /* ^^^^^^^^^^^^^^^ k times */
882882 pan_base[b] = MUL_C(pan_base[b], pan_delta[b]);
883 }
884 }
885 }
883 }
884 }
885 }
886886 }
887887
888888 drm_ps_info *drm_ps_init(void)
889889 {
890890 drm_ps_info *ps = (drm_ps_info*)faad_malloc(sizeof(drm_ps_info));
891891
892 memset(ps, 0, sizeof(drm_ps_info));
892 memset(ps, 0, sizeof(drm_ps_info));
893893
894894 return ps;
895895 }
901901
902902 /* main DRM PS decoding function */
903903 uint8_t drm_ps_decode(drm_ps_info *ps, uint8_t guess, qmf_t X_left[38][64], qmf_t X_right[38][64])
904 {
905 if (ps == NULL)
904 {
905 if (ps == NULL)
906906 {
907907 memcpy(X_right, X_left, sizeof(qmf_t)*30*64);
908 return 0;
909 }
910
911 if (!ps->drm_ps_data_available && !guess)
908 return 0;
909 }
910
911 if (!ps->drm_ps_data_available && !guess)
912912 {
913913 memcpy(X_right, X_left, sizeof(qmf_t)*30*64);
914914 memset(ps->g_prev_sa_index, 0, sizeof(ps->g_prev_sa_index));
923923 ps->sa_decode_error = 0;
924924 ps->pan_decode_error = 0;
925925 drm_ps_delta_decode(ps);
926 } else
926 } else
927927 {
928928 ps->sa_decode_error = 1;
929929 ps->pan_decode_error = 1;
930930 /* don't even bother decoding */
931931 }
932
932
933933 ps->drm_ps_data_available = 0;
934934
935935 drm_calc_sa_side_signal(ps, X_left);
937937
938938 if (ps->bs_enable_sa)
939939 {
940 ps->g_last_had_sa = 1;
941
942 memcpy(ps->g_prev_sa_index, ps->g_sa_index, sizeof(int8_t) * DRM_NUM_SA_BANDS);
940 ps->g_last_had_sa = 1;
941
942 memcpy(ps->g_prev_sa_index, ps->g_sa_index, sizeof(int8_t) * DRM_NUM_SA_BANDS);
943943
944944 } else {
945945 ps->g_last_had_sa = 0;
946946 }
947
947
948948 if (ps->bs_enable_pan)
949949 {
950950 drm_add_pan(ps, X_left, X_right);
951
952 ps->g_last_had_pan = 1;
951
952 ps->g_last_had_pan = 1;
953953
954954 memcpy(ps->g_prev_pan_index, ps->g_pan_index, sizeof(int8_t) * DRM_NUM_PAN_BANDS);
955955
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
4747 #define MAX_DELAY 5
4848
4949 typedef struct
50 {
50 {
5151 uint8_t drm_ps_data_available;
5252 uint8_t bs_enable_sa;
5353 uint8_t bs_enable_pan;
6060
6161 int8_t bs_sa_data[DRM_NUM_SA_BANDS];
6262 int8_t bs_pan_data[DRM_NUM_PAN_BANDS];
63
63
6464 int8_t g_sa_index[DRM_NUM_SA_BANDS];
65 int8_t g_pan_index[DRM_NUM_PAN_BANDS];
65 int8_t g_pan_index[DRM_NUM_PAN_BANDS];
6666 int8_t g_prev_sa_index[DRM_NUM_SA_BANDS];
67 int8_t g_prev_pan_index[DRM_NUM_PAN_BANDS];
67 int8_t g_prev_pan_index[DRM_NUM_PAN_BANDS];
6868
6969 int8_t sa_decode_error;
7070 int8_t pan_decode_error;
7171
7272 int8_t g_last_good_sa_index[DRM_NUM_SA_BANDS];
7373 int8_t g_last_good_pan_index[DRM_NUM_PAN_BANDS];
74
75 qmf_t SA[NUM_OF_SUBSAMPLES][MAX_SA_BAND];
74
75 qmf_t SA[NUM_OF_SUBSAMPLES][MAX_SA_BAND];
7676
7777 complex_t d_buff[2][MAX_SA_BAND];
7878 complex_t d2_buff[NUM_OF_LINKS][MAX_DELAY][MAX_SA_BAND];
7979
80 uint8_t delay_buf_index_ser[NUM_OF_LINKS];
81
80 uint8_t delay_buf_index_ser[NUM_OF_LINKS];
81
8282 real_t prev_nrg[MAX_SA_BAND];
8383 real_t prev_peakdiff[MAX_SA_BAND];
84 real_t peakdecay_fast[MAX_SA_BAND];
84 real_t peakdecay_fast[MAX_SA_BAND];
8585 } drm_ps_info;
8686
8787
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
3636 #include "specrec.h"
3737 #include "huffman.h"
3838
39 /* ISO/IEC 14496-3/Amd.1
40 * 8.5.3.3: Huffman Codeword Reordering for AAC spectral data (HCR)
39 /* ISO/IEC 14496-3/Amd.1
40 * 8.5.3.3: Huffman Codeword Reordering for AAC spectral data (HCR)
4141 *
42 * HCR devides the spectral data in known fixed size segments, and
43 * sorts it by the importance of the data. The importance is firstly
44 * the (lower) position in the spectrum, and secondly the largest
45 * value in the used codebook.
42 * HCR devides the spectral data in known fixed size segments, and
43 * sorts it by the importance of the data. The importance is firstly
44 * the (lower) position in the spectrum, and secondly the largest
45 * value in the used codebook.
4646 * The most important data is written at the start of each segment
47 * (at known positions), the remaining data is interleaved inbetween,
47 * (at known positions), the remaining data is interleaved inbetween,
4848 * with the writing direction alternating.
4949 * Data length is not increased.
5050 */
5959 #define VCB11_FIRST 16
6060 #define VCB11_LAST 31
6161
62 static const uint8_t PreSortCB_STD[NUM_CB] =
62 static const uint8_t PreSortCB_STD[NUM_CB] =
6363 { 11, 9, 7, 5, 3, 1};
6464
65 static const uint8_t PreSortCB_ER[NUM_CB_ER] =
65 static const uint8_t PreSortCB_ER[NUM_CB_ER] =
6666 { 11, 31, 30, 29, 28, 27, 26, 25, 24, 23, 22, 21, 20, 19, 18, 17, 16, 9, 7, 5, 3, 1};
6767
6868 /* 8.5.3.3.2 Derivation of segment width */
7373 #define segmentWidth(cb) min(maxCwLen[cb], ics->length_of_longest_codeword)
7474
7575 /* bit-twiddling helpers */
76 static const uint8_t S[] = {1, 2, 4, 8, 16};
76 static const uint8_t S[] = {1, 2, 4, 8, 16};
7777 static const uint32_t B[] = {0x55555555, 0x33333333, 0x0F0F0F0F, 0x00FF00FF, 0x0000FFFF};
7878
7979 typedef struct
8787 /* rewind and reverse */
8888 /* 32 bit version */
8989 static uint32_t rewrev_word(uint32_t v, const uint8_t len)
90 {
90 {
9191 /* 32 bit reverse */
92 v = ((v >> S[0]) & B[0]) | ((v << S[0]) & ~B[0]);
93 v = ((v >> S[1]) & B[1]) | ((v << S[1]) & ~B[1]);
94 v = ((v >> S[2]) & B[2]) | ((v << S[2]) & ~B[2]);
92 v = ((v >> S[0]) & B[0]) | ((v << S[0]) & ~B[0]);
93 v = ((v >> S[1]) & B[1]) | ((v << S[1]) & ~B[1]);
94 v = ((v >> S[2]) & B[2]) | ((v << S[2]) & ~B[2]);
9595 v = ((v >> S[3]) & B[3]) | ((v << S[3]) & ~B[3]);
9696 v = ((v >> S[4]) & B[4]) | ((v << S[4]) & ~B[4]);
9797
103103
104104 /* 64 bit version */
105105 static void rewrev_lword(uint32_t *hi, uint32_t *lo, const uint8_t len)
106 {
106 {
107107 if (len <= 32) {
108108 *hi = 0;
109109 *lo = rewrev_word(*lo, len);
112112 uint32_t t = *hi, v = *lo;
113113
114114 /* double 32 bit reverse */
115 v = ((v >> S[0]) & B[0]) | ((v << S[0]) & ~B[0]);
116 t = ((t >> S[0]) & B[0]) | ((t << S[0]) & ~B[0]);
117 v = ((v >> S[1]) & B[1]) | ((v << S[1]) & ~B[1]);
118 t = ((t >> S[1]) & B[1]) | ((t << S[1]) & ~B[1]);
119 v = ((v >> S[2]) & B[2]) | ((v << S[2]) & ~B[2]);
120 t = ((t >> S[2]) & B[2]) | ((t << S[2]) & ~B[2]);
115 v = ((v >> S[0]) & B[0]) | ((v << S[0]) & ~B[0]);
116 t = ((t >> S[0]) & B[0]) | ((t << S[0]) & ~B[0]);
117 v = ((v >> S[1]) & B[1]) | ((v << S[1]) & ~B[1]);
118 t = ((t >> S[1]) & B[1]) | ((t << S[1]) & ~B[1]);
119 v = ((v >> S[2]) & B[2]) | ((v << S[2]) & ~B[2]);
120 t = ((t >> S[2]) & B[2]) | ((t << S[2]) & ~B[2]);
121121 v = ((v >> S[3]) & B[3]) | ((v << S[3]) & ~B[3]);
122122 t = ((t >> S[3]) & B[3]) | ((t << S[3]) & ~B[3]);
123 v = ((v >> S[4]) & B[4]) | ((v << S[4]) & ~B[4]);
123 v = ((v >> S[4]) & B[4]) | ((v << S[4]) & ~B[4]);
124124 t = ((t >> S[4]) & B[4]) | ((t << S[4]) & ~B[4]);
125125
126126 /* last 32<>32 bit swap is implicit below */
127
127
128128 /* shift off low bits (this is really only one 64 bit shift) */
129129 *lo = (t >> (64 - len)) | (v << (len - 32));
130 *hi = v >> (64 - len);
130 *hi = v >> (64 - len);
131131 }
132132 }
133133
149149
150150 al = a->bufa;
151151 ah = a->bufb;
152
152
153153 if (b->len > 32)
154154 {
155155 /* maskoff superfluous high b bits */
160160 al = 0;
161161 } else {
162162 bl = b->bufa & ((1 << (b->len)) - 1);
163 bh = 0;
163 bh = 0;
164164 ah = (ah << (b->len)) | (al >> (32 - b->len));
165165 al = al << b->len;
166166 }
171171
172172 b->len += a->len;
173173 }
174
174
175175 static uint8_t is_good_cb(uint8_t this_CB, uint8_t this_sec_CB)
176176 {
177177 /* only want spectral data CB's */
189189 }
190190 return 0;
191191 }
192
192
193193 static void read_segment(bits_t *segment, uint8_t segwidth, bitfile *ld)
194194 {
195195 segment->len = segwidth;
196196
197197 if (segwidth > 32)
198198 {
199 segment->bufb = faad_getbits(ld, segwidth - 32);
200 segment->bufa = faad_getbits(ld, 32);
199 segment->bufb = faad_getbits(ld, segwidth - 32);
200 segment->bufa = faad_getbits(ld, 32);
201201
202202 } else {
203203 segment->bufa = faad_getbits(ld, segwidth);
204 segment->bufb = 0;
205 }
204 segment->bufb = 0;
205 }
206206 }
207207
208208 static void fill_in_codeword(codeword_t *codeword, uint16_t index, uint16_t sp, uint8_t cb)
213213 codeword[index].bits.len = 0;
214214 }
215215
216 uint8_t reordered_spectral_data(NeAACDecStruct *hDecoder, ic_stream *ics,
216 uint8_t reordered_spectral_data(NeAACDecStruct *hDecoder, ic_stream *ics,
217217 bitfile *ld, int16_t *spectral_data)
218 {
218 {
219219 uint16_t PCWs_done;
220 uint16_t numberOfSegments, numberOfSets, numberOfCodewords;
220 uint16_t numberOfSegments, numberOfSets, numberOfCodewords;
221221
222222 codeword_t codeword[512];
223223 bits_t segment[512];
225225 uint16_t sp_offset[8];
226226 uint16_t g, i, sortloop, set, bitsread;
227227 /*uint16_t bitsleft, codewordsleft*/;
228 uint8_t w_idx, sfb, this_CB, last_CB, this_sec_CB;
229
228 uint8_t w_idx, sfb, this_CB, last_CB, this_sec_CB;
229
230230 const uint16_t nshort = hDecoder->frameLength/8;
231231 const uint16_t sp_data_len = ics->length_of_reordered_spectral_data;
232
232
233233 const uint8_t *PreSortCb;
234234
235235 /* no data (e.g. silence) */
241241 return 10;
242242
243243 if (sp_data_len < ics->length_of_longest_codeword)
244 return 10;
244 return 10;
245245
246246 sp_offset[0] = 0;
247247 for (g = 1; g < ics->num_window_groups; g++)
264264 PreSortCb = PreSortCB_STD;
265265 last_CB = NUM_CB;
266266 }
267
267
268268 /* step 1: decode PCW's (set 0), and stuff data in easier-to-use format */
269269 for (sortloop = 0; sortloop < last_CB; sortloop++)
270270 {
271271 /* select codebook to process this pass */
272272 this_CB = PreSortCb[sortloop];
273
273
274274 /* loop over sfbs */
275275 for (sfb = 0; sfb < ics->max_sfb; sfb++)
276276 {
283283 {
284284 /* check whether sfb used here is the one we want to process */
285285 if ((ics->sect_start[g][i] <= sfb) && (ics->sect_end[g][i] > sfb))
286 {
286 {
287287 /* check whether codebook used here is the one we want to process */
288288 this_sec_CB = ics->sect_cb[g][i];
289
290 if (is_good_cb(this_CB, this_sec_CB))
289
290 if (is_good_cb(this_CB, this_sec_CB))
291291 {
292292 /* precalculate some stuff */
293293 uint16_t sect_sfb_size = ics->sect_sfb_offset[g][sfb+1] - ics->sect_sfb_offset[g][sfb];
294294 uint8_t inc = (this_sec_CB < FIRST_PAIR_HCB) ? QUAD_LEN : PAIR_LEN;
295295 uint16_t group_cws_count = (4*ics->window_group_length[g])/inc;
296296 uint8_t segwidth = segmentWidth(this_sec_CB);
297 uint16_t cws;
298
299 /* read codewords until end of sfb or end of window group (shouldn't only 1 trigger?) */
297 uint16_t cws;
298
299 /* read codewords until end of sfb or end of window group (shouldn't only 1 trigger?) */
300300 for (cws = 0; (cws < group_cws_count) && ((cws + w_idx*group_cws_count) < sect_sfb_size); cws++)
301301 {
302 uint16_t sp = sp_offset[g] + ics->sect_sfb_offset[g][sfb] + inc * (cws + w_idx*group_cws_count);
302 uint16_t sp = sp_offset[g] + ics->sect_sfb_offset[g][sfb] + inc * (cws + w_idx*group_cws_count);
303303
304304 /* read and decode PCW */
305305 if (!PCWs_done)
306 {
306 {
307307 /* read in normal segments */
308308 if (bitsread + segwidth <= sp_data_len)
309 {
310 read_segment(&segment[numberOfSegments], segwidth, ld);
309 {
310 read_segment(&segment[numberOfSegments], segwidth, ld);
311311 bitsread += segwidth;
312
313 huffman_spectral_data_2(this_sec_CB, &segment[numberOfSegments], &spectral_data[sp]);
312
313 huffman_spectral_data_2(this_sec_CB, &segment[numberOfSegments], &spectral_data[sp]);
314314
315315 /* keep leftover bits */
316316 rewrev_bits(&segment[numberOfSegments]);
321321 this in earlier because it might not fit in 64 bits. since we already
322322 decoded (and removed) the PCW it is now guaranteed to fit */
323323 if (bitsread < sp_data_len)
324 {
325 const uint8_t additional_bits = sp_data_len - bitsread;
326
327 read_segment(&segment[numberOfSegments], additional_bits, ld);
324 {
325 const uint8_t additional_bits = sp_data_len - bitsread;
326
327 read_segment(&segment[numberOfSegments], additional_bits, ld);
328328 segment[numberOfSegments].len += segment[numberOfSegments-1].len;
329 rewrev_bits(&segment[numberOfSegments]);
329 rewrev_bits(&segment[numberOfSegments]);
330330
331331 if (segment[numberOfSegments-1].len > 32)
332332 {
333 segment[numberOfSegments-1].bufb = segment[numberOfSegments].bufb +
333 segment[numberOfSegments-1].bufb = segment[numberOfSegments].bufb +
334334 showbits_hcr(&segment[numberOfSegments-1], segment[numberOfSegments-1].len - 32);
335 segment[numberOfSegments-1].bufa = segment[numberOfSegments].bufa +
335 segment[numberOfSegments-1].bufa = segment[numberOfSegments].bufa +
336336 showbits_hcr(&segment[numberOfSegments-1], 32);
337337 } else {
338 segment[numberOfSegments-1].bufa = segment[numberOfSegments].bufa +
338 segment[numberOfSegments-1].bufa = segment[numberOfSegments].bufa +
339339 showbits_hcr(&segment[numberOfSegments-1], segment[numberOfSegments-1].len);
340340 segment[numberOfSegments-1].bufb = segment[numberOfSegments].bufb;
341 }
341 }
342342 segment[numberOfSegments-1].len += additional_bits;
343343 }
344344 bitsread = sp_data_len;
345345 PCWs_done = 1;
346346
347 fill_in_codeword(codeword, 0, sp, this_sec_CB);
347 fill_in_codeword(codeword, 0, sp, this_sec_CB);
348348 }
349 } else {
350 fill_in_codeword(codeword, numberOfCodewords - numberOfSegments, sp, this_sec_CB);
349 } else {
350 fill_in_codeword(codeword, numberOfCodewords - numberOfSegments, sp, this_sec_CB);
351351 }
352352 numberOfCodewords++;
353 }
353 }
354354 }
355355 }
356 }
357 }
356 }
357 }
358358 }
359359 }
360360 }
361361
362362 if (numberOfSegments == 0)
363 return 10;
364
365 numberOfSets = numberOfCodewords / numberOfSegments;
363 return 10;
364
365 numberOfSets = numberOfCodewords / numberOfSegments;
366366
367367 /* step 2: decode nonPCWs */
368368 for (set = 1; set <= numberOfSets; set++)
385385 {
386386 uint8_t tmplen;
387387
388 if (codeword[codeword_idx].bits.len != 0)
389 concat_bits(&segment[segment_idx], &codeword[codeword_idx].bits);
390
388 if (codeword[codeword_idx].bits.len != 0)
389 concat_bits(&segment[segment_idx], &codeword[codeword_idx].bits);
390
391391 tmplen = segment[segment_idx].len;
392392
393393 if (huffman_spectral_data_2(codeword[codeword_idx].cb, &segment[segment_idx],
394394 &spectral_data[codeword[codeword_idx].sp_offset]) >= 0)
395395 {
396396 codeword[codeword_idx].decoded = 1;
397 } else
398 {
397 } else
398 {
399399 codeword[codeword_idx].bits = segment[segment_idx];
400 codeword[codeword_idx].bits.len = tmplen;
400 codeword[codeword_idx].bits.len = tmplen;
401401 }
402
402
403403 }
404404 }
405405 }
408408 }
409409
410410 #if 0 // Seems to give false errors
411 bitsleft = 0;
412
411 bitsleft = 0;
412
413413 for (i = 0; i < numberOfSegments && !bitsleft; i++)
414414 bitsleft += segment[i].len;
415415
417417
418418 codewordsleft = 0;
419419
420 for (i = 0; (i < numberOfCodewords - numberOfSegments) && (!codewordsleft); i++)
421 if (!codeword[i].decoded)
422 codewordsleft++;
420 for (i = 0; (i < numberOfCodewords - numberOfSegments) && (!codewordsleft); i++)
421 if (!codeword[i].decoded)
422 codewordsleft++;
423423
424424 if (codewordsleft) return 10;
425425 #endif
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
356356 return huffman_2step_pair_sign(cb, ld, sp);
357357 case 12: {
358358 uint8_t err = huffman_2step_pair(11, ld, sp);
359 sp[0] = huffman_codebook(0); sp[1] = huffman_codebook(1);
359 sp[0] = huffman_codebook(0); sp[1] = huffman_codebook(1);
360360 return err; }
361361 case 11:
362362 {
445445 vcb11 = cb;
446446 cb = 11;
447447 }
448
448
449449 cw = showbits_hcr(ld, hcbN[cb]);
450450 offset = hcb_table[cb][cw].offset;
451451 extra_bits = hcb_table[cb][cw].extra_bits;
468468 while (!hcb3[offset].is_leaf)
469469 {
470470 uint8_t b;
471
471
472472 if ( get1bit_hcr(ld, &b) ) return -1;
473473 offset += hcb3[offset].data[b];
474474 }
487487 while (!hcb_bin_table[cb][offset].is_leaf)
488488 {
489489 uint8_t b;
490
490
491491 if (get1bit_hcr(ld, &b) ) return -1;
492492 offset += hcb_bin_table[cb][offset].data[b];
493493 }
526526 int32_t j;
527527 uint32_t off;
528528
529 neg = (sp[k] < 0) ? 1 : 0;
529 neg = (sp[k] < 0) ? 1 : 0;
530530
531531 for (i = 4; ; i++)
532532 {
550550 /* this finds errors in the ESCAPE signal */
551551 vcb11_check_LAV(vcb11, sp);
552552 }
553 }
553 }
554554 return ld->len;
555555 }
556556
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
5353 tmp |= (uint32_t)0x00010000; /* insert 1 lsb */
5454 tmp2 = tmp; /* add 1 lsb and elided one */
5555 tmp &= (uint32_t)0xff800000; /* extract exponent and sign */
56
56
5757 *pf = *(float32_t*)&tmp1 + *(float32_t*)&tmp2 - *(float32_t*)&tmp;
5858 } else {
5959 *pf = *(float32_t*)&tmp;
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
3131 * Fast (I)MDCT Implementation using (I)FFT ((Inverse) Fast Fourier Transform)
3232 * and consists of three steps: pre-(I)FFT complex multiplication, complex
3333 * (I)FFT, post-(I)FFT complex multiplication,
34 *
34 *
3535 * As described in:
3636 * P. Duhamel, Y. Mahieux, and J.P. Petit, "A Fast Algorithm for the
3737 * Implementation of Filter Banks Based on 'Time Domain Aliasing
38 * Cancellation’," IEEE Proc. on ICASSP‘91, 1991, pp. 2209-2212.
38 * Cancellation'," IEEE Proc. on ICASSP'91, 1991, pp. 2209-2212.
3939 *
4040 *
4141 * As of April 6th 2002 completely rewritten.
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
4141 uint32_t buffer_size,
4242 mp4AudioSpecificConfig *mp4ASC,
4343 program_config *pce, uint8_t short_form);
44
44
4545 int8_t AudioSpecificConfigFromBitfile(bitfile *ld,
4646 mp4AudioSpecificConfig *mp4ASC,
4747 program_config *pce, uint32_t bsize, uint8_t short_form);
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
4747
4848 if (ics->ms_mask_present >= 1)
4949 {
50 for (g = 0; g < ics->num_window_groups; g++)
50 for (g = 0; g < ics->num_window_groups; g++)
5151 {
5252 for (b = 0; b < ics->window_group_length[g]; b++)
5353 {
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
453453 int8_t index;
454454 uint32_t cw;
455455 rvlc_huff_table *h = book_rvlc;
456
456
457457 i = h->len;
458458 if (direction > 0)
459459 cw = faad_getbits(ld_sf, i DEBUGVAR(1,0,""));
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
165165 }
166166
167167 #ifdef PS_DEC
168 if (sbr->ps != NULL)
168 if (sbr->ps != NULL)
169169 ps_free(sbr->ps);
170170 #endif
171171
204204
205205 memset(sbr->Xsbr[0], 0, (sbr->numTimeSlotsRate+sbr->tHFGen)*64 * sizeof(qmf_t));
206206 memset(sbr->Xsbr[1], 0, (sbr->numTimeSlotsRate+sbr->tHFGen)*64 * sizeof(qmf_t));
207
207
208208 sbr->GQ_ringbuf_index[0] = 0;
209209 sbr->GQ_ringbuf_index[1] = 0;
210210 sbr->header_count = 0;
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
7979 {
8080 return startMin + offset[offsetIndex][bs_start_freq];
8181
82 #if 0 /* replaced by offsetIndexTable */
82 #if 0 /* replaced by offsetIndexTable */
8383 switch (sample_rate)
8484 {
8585 case 16000:
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
395395 };
396396
397397 static const real_t log_Qplus1[31] = {
398 REAL_CONST(6.022367813028454), REAL_CONST(5.044394119358453), REAL_CONST(4.087462841250339),
399 REAL_CONST(3.169925001442313), REAL_CONST(2.321928094887362), REAL_CONST(1.584962500721156),
400 REAL_CONST(1.000000000000000), REAL_CONST(0.584962500721156), REAL_CONST(0.321928094887362),
401 REAL_CONST(0.169925001442312), REAL_CONST(0.087462841250339), REAL_CONST(0.044394119358453),
402 REAL_CONST(0.022367813028455), REAL_CONST(0.011227255423254), REAL_CONST(0.005624549193878),
403 REAL_CONST(0.002815015607054), REAL_CONST(0.001408194392808), REAL_CONST(0.000704269011247),
404 REAL_CONST(0.000352177480301), REAL_CONST(0.000176099486443), REAL_CONST(0.000088052430122),
405 REAL_CONST(0.000044026886827), REAL_CONST(0.000022013611360), REAL_CONST(0.000011006847667),
406 REAL_CONST(0.000005503434331), REAL_CONST(0.000002751719790), REAL_CONST(0.000001375860551),
407 REAL_CONST(0.000000687930439), REAL_CONST(0.000000343965261), REAL_CONST(0.000000171982641),
398 REAL_CONST(6.022367813028454), REAL_CONST(5.044394119358453), REAL_CONST(4.087462841250339),
399 REAL_CONST(3.169925001442313), REAL_CONST(2.321928094887362), REAL_CONST(1.584962500721156),
400 REAL_CONST(1.000000000000000), REAL_CONST(0.584962500721156), REAL_CONST(0.321928094887362),
401 REAL_CONST(0.169925001442312), REAL_CONST(0.087462841250339), REAL_CONST(0.044394119358453),
402 REAL_CONST(0.022367813028455), REAL_CONST(0.011227255423254), REAL_CONST(0.005624549193878),
403 REAL_CONST(0.002815015607054), REAL_CONST(0.001408194392808), REAL_CONST(0.000704269011247),
404 REAL_CONST(0.000352177480301), REAL_CONST(0.000176099486443), REAL_CONST(0.000088052430122),
405 REAL_CONST(0.000044026886827), REAL_CONST(0.000022013611360), REAL_CONST(0.000011006847667),
406 REAL_CONST(0.000005503434331), REAL_CONST(0.000002751719790), REAL_CONST(0.000001375860551),
407 REAL_CONST(0.000000687930439), REAL_CONST(0.000000343965261), REAL_CONST(0.000000171982641),
408408 REAL_CONST(0.000000000000000)
409409 };
410410
867867 };
868868
869869 static const real_t log_Qplus1[31] = {
870 REAL_CONST(6.022367813028454), REAL_CONST(5.044394119358453), REAL_CONST(4.087462841250339),
871 REAL_CONST(3.169925001442313), REAL_CONST(2.321928094887362), REAL_CONST(1.584962500721156),
872 REAL_CONST(1.000000000000000), REAL_CONST(0.584962500721156), REAL_CONST(0.321928094887362),
873 REAL_CONST(0.169925001442312), REAL_CONST(0.087462841250339), REAL_CONST(0.044394119358453),
874 REAL_CONST(0.022367813028455), REAL_CONST(0.011227255423254), REAL_CONST(0.005624549193878),
875 REAL_CONST(0.002815015607054), REAL_CONST(0.001408194392808), REAL_CONST(0.000704269011247),
876 REAL_CONST(0.000352177480301), REAL_CONST(0.000176099486443), REAL_CONST(0.000088052430122),
877 REAL_CONST(0.000044026886827), REAL_CONST(0.000022013611360), REAL_CONST(0.000011006847667),
878 REAL_CONST(0.000005503434331), REAL_CONST(0.000002751719790), REAL_CONST(0.000001375860551),
879 REAL_CONST(0.000000687930439), REAL_CONST(0.000000343965261), REAL_CONST(0.000000171982641),
870 REAL_CONST(6.022367813028454), REAL_CONST(5.044394119358453), REAL_CONST(4.087462841250339),
871 REAL_CONST(3.169925001442313), REAL_CONST(2.321928094887362), REAL_CONST(1.584962500721156),
872 REAL_CONST(1.000000000000000), REAL_CONST(0.584962500721156), REAL_CONST(0.321928094887362),
873 REAL_CONST(0.169925001442312), REAL_CONST(0.087462841250339), REAL_CONST(0.044394119358453),
874 REAL_CONST(0.022367813028455), REAL_CONST(0.011227255423254), REAL_CONST(0.005624549193878),
875 REAL_CONST(0.002815015607054), REAL_CONST(0.001408194392808), REAL_CONST(0.000704269011247),
876 REAL_CONST(0.000352177480301), REAL_CONST(0.000176099486443), REAL_CONST(0.000088052430122),
877 REAL_CONST(0.000044026886827), REAL_CONST(0.000022013611360), REAL_CONST(0.000011006847667),
878 REAL_CONST(0.000005503434331), REAL_CONST(0.000002751719790), REAL_CONST(0.000001375860551),
879 REAL_CONST(0.000000687930439), REAL_CONST(0.000000343965261), REAL_CONST(0.000000171982641),
880880 REAL_CONST(0.000000000000000)
881881 };
882882
14161416 i++;
14171417 }
14181418 }
1419 }
1419 }
14201420
14211421 if (grouping)
14221422 {
14381438 for (k = 0; k < sbr->N_G[l]; k++)
14391439 {
14401440 E_total_est = E_total = 0;
1441
1441
14421442 for (m = sbr->f_group[l][k<<1]; m < sbr->f_group[l][(k<<1) + 1]; m++)
14431443 {
14441444 /* E_curr: integer */
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
297297 /* improves accuracy */
298298 if (exp > 0)
299299 exp -= 1;
300
300
301301 pow2_to_exp = 1<<(exp-1);
302302
303303 temp2_r = (QMF_RE(buffer[offset-2][bd]) + pow2_to_exp) >> exp;
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
216216 {
217217 result += calc_sbr_tables(sbr, saved_start_freq, saved_stop_freq,
218218 saved_samplerate_mode, saved_freq_scale,
219 saved_alter_scale, saved_xover_band);
219 saved_alter_scale, saved_xover_band);
220220 }
221221
222222 /* we should be able to safely set result to 0 now, */
247247 #ifdef DRM
248248 if (!sbr->Is_DRM_SBR)
249249 #endif
250 {
250 {
251251 /* -4 does not apply, bs_extension_type is re-read in this function */
252252 num_align_bits = 8*cnt /*- 4*/ - num_sbr_bits2;
253253
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
621621 wb = wa + bin;
622622
623623 spec_data[wb+0] = iquant(quant_data[k+0], tab, &error) * scf;
624 spec_data[wb+1] = iquant(quant_data[k+1], tab, &error) * scf;
625 spec_data[wb+2] = iquant(quant_data[k+2], tab, &error) * scf;
624 spec_data[wb+1] = iquant(quant_data[k+1], tab, &error) * scf;
625 spec_data[wb+2] = iquant(quant_data[k+2], tab, &error) * scf;
626626 spec_data[wb+3] = iquant(quant_data[k+3], tab, &error) * scf;
627
627
628628 #else
629629 real_t iq0 = iquant(quant_data[k+0], tab, &error);
630630 real_t iq1 = iquant(quant_data[k+1], tab, &error);
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Ahead Software AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
5858 -2.1939551286300665E-02, -2.4533179947088161E-02, -2.2591663337768787E-02,
5959 -1.5122066420044672E-02, -1.7971713448186293E-03, 1.6903413428575379E-02,
6060 3.9672315874127042E-02, 6.4487527248102796E-02, 8.8850025474701726E-02,
61 0.1101132906105560 , 0.1258540205143761 , 0.1342239368467012
61 0.1101132906105560 , 0.1258540205143761 , 0.1342239368467012
6262 };
6363
6464 for (j = 0; j < 48; ++j)
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Ahead Software AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Ahead Software AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
12781278 }
12791279 #else
12801280 faad_get1bit(ld);
1281 #endif
1281 #endif
12821282
12831283 hInfo->error = side_info(hDecoder, &cpe, ld, ics1, 1);
12841284 if (hInfo->error > 0)
16101610 if (result > 0)
16111611 return result;
16121612
1613 if (hDecoder->object_type >= ER_OBJECT_START)
1613 if (hDecoder->object_type >= ER_OBJECT_START)
16141614 {
16151615 if (ics->tns_data_present)
16161616 tns_data(ics, &(ics->tns), ld);
21782178 return n;
21792179 case EXT_FILL_DATA:
21802180 /* fill_nibble = */ faad_getbits(ld, 4
2181 DEBUGVAR(1,136,"extension_payload(): fill_nibble")); /* must be ‘0000’ */
2181 DEBUGVAR(1,136,"extension_payload(): fill_nibble")); /* must be '0000' */
21822182 for (i = 0; i < count-1; i++)
21832183 {
21842184 /* fill_byte[i] = */ faad_getbits(ld, 8
2185 DEBUGVAR(1,88,"extension_payload(): fill_byte")); /* must be ‘10100101’ */
2185 DEBUGVAR(1,88,"extension_payload(): fill_byte")); /* must be '10100101' */
21862186 }
21872187 return count;
21882188 case EXT_DATA_ELEMENT:
26412641 endpos = faad_get_processed_bits(ld);
26422642 if(ret>0)
26432643 return (len*8)-(endpos-initpos);
2644 //faad_getbits(ld, initpos-endpos); //go back to initpos, but is valid a getbits(-N) ?
2644 //faad_getbits(ld, initpos-endpos); //go back to initpos, but is valid a getbits(-N) ?
26452645 }
26462646 return 0xFFFFFFFF;
26472647 }
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
00 /*
11 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
22 ** Copyright (C) 2003-2005 M. Bakker, Nero AG, http://www.nero.com
3 **
3 **
44 ** This program is free software; you can redistribute it and/or modify
55 ** it under the terms of the GNU General Public License as published by
66 ** the Free Software Foundation; either version 2 of the License, or
77 ** (at your option) any later version.
8 **
8 **
99 ** This program is distributed in the hope that it will be useful,
1010 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
1111 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1212 ** GNU General Public License for more details.
13 **
13 **
1414 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
15 ** along with this program; if not, write to the Free Software
1616 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
1717 **
1818 ** Any non-GPL usage of this software or parts of this software is strictly
3737
3838 #define TNS_MAX_ORDER 20
3939
40
40
4141 void tns_decode_frame(ic_stream *ics, tns_info *tns, uint8_t sr_index,
4242 uint8_t object_type, real_t *spec, uint16_t frame_len);
4343 void tns_encode_frame(ic_stream *ics, tns_info *tns, uint8_t sr_index,
0 #! /bin/sh
1 ## DO NOT EDIT - This file generated from ./build-aux/ltmain.in
2 ## by inline-source v2014-01-03.01
3
4 # libtool (GNU libtool) 2.4.6
5 # Provide generalized library-building support services.
6 # Written by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
7
8 # Copyright (C) 1996-2015 Free Software Foundation, Inc.
9 # This is free software; see the source for copying conditions. There is NO
10 # warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
11
12 # GNU Libtool is free software; you can redistribute it and/or modify
13 # it under the terms of the GNU General Public License as published by
14 # the Free Software Foundation; either version 2 of the License, or
15 # (at your option) any later version.
16 #
17 # As a special exception to the GNU General Public License,
18 # if you distribute this file as part of a program or library that
19 # is built using GNU Libtool, you may include this file under the
20 # same distribution terms that you use for the rest of that program.
21 #
22 # GNU Libtool is distributed in the hope that it will be useful, but
23 # WITHOUT ANY WARRANTY; without even the implied warranty of
24 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
25 # General Public License for more details.
26 #
27 # You should have received a copy of the GNU General Public License
28 # along with this program. If not, see <http://www.gnu.org/licenses/>.
29
30
31 PROGRAM=libtool
32 PACKAGE=libtool
33 VERSION="2.4.6 Debian-2.4.6-14"
34 package_revision=2.4.6
35
36
37 ## ------ ##
38 ## Usage. ##
39 ## ------ ##
40
41 # Run './libtool --help' for help with using this script from the
42 # command line.
43
44
45 ## ------------------------------- ##
46 ## User overridable command paths. ##
47 ## ------------------------------- ##
48
49 # After configure completes, it has a better idea of some of the
50 # shell tools we need than the defaults used by the functions shared
51 # with bootstrap, so set those here where they can still be over-
52 # ridden by the user, but otherwise take precedence.
53
54 : ${AUTOCONF="autoconf"}
55 : ${AUTOMAKE="automake"}
56
57
58 ## -------------------------- ##
59 ## Source external libraries. ##
60 ## -------------------------- ##
61
62 # Much of our low-level functionality needs to be sourced from external
63 # libraries, which are installed to $pkgauxdir.
64
65 # Set a version string for this script.
66 scriptversion=2015-01-20.17; # UTC
67
68 # General shell script boiler plate, and helper functions.
69 # Written by Gary V. Vaughan, 2004
70
71 # Copyright (C) 2004-2015 Free Software Foundation, Inc.
72 # This is free software; see the source for copying conditions. There is NO
73 # warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
74
75 # This program is free software; you can redistribute it and/or modify
76 # it under the terms of the GNU General Public License as published by
77 # the Free Software Foundation; either version 3 of the License, or
78 # (at your option) any later version.
79
80 # As a special exception to the GNU General Public License, if you distribute
81 # this file as part of a program or library that is built using GNU Libtool,
82 # you may include this file under the same distribution terms that you use
83 # for the rest of that program.
84
85 # This program is distributed in the hope that it will be useful,
86 # but WITHOUT ANY WARRANTY; without even the implied warranty of
87 # MERCHANTABILITY or FITNES FOR A PARTICULAR PURPOSE. See the GNU
88 # General Public License for more details.
89
90 # You should have received a copy of the GNU General Public License
91 # along with this program. If not, see <http://www.gnu.org/licenses/>.
92
93 # Please report bugs or propose patches to gary@gnu.org.
94
95
96 ## ------ ##
97 ## Usage. ##
98 ## ------ ##
99
100 # Evaluate this file near the top of your script to gain access to
101 # the functions and variables defined here:
102 #
103 # . `echo "$0" | ${SED-sed} 's|[^/]*$||'`/build-aux/funclib.sh
104 #
105 # If you need to override any of the default environment variable
106 # settings, do that before evaluating this file.
107
108
109 ## -------------------- ##
110 ## Shell normalisation. ##
111 ## -------------------- ##
112
113 # Some shells need a little help to be as Bourne compatible as possible.
114 # Before doing anything else, make sure all that help has been provided!
115
116 DUALCASE=1; export DUALCASE # for MKS sh
117 if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then :
118 emulate sh
119 NULLCMD=:
120 # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
121 # is contrary to our usage. Disable this feature.
122 alias -g '${1+"$@"}'='"$@"'
123 setopt NO_GLOB_SUBST
124 else
125 case `(set -o) 2>/dev/null` in *posix*) set -o posix ;; esac
126 fi
127
128 # NLS nuisances: We save the old values in case they are required later.
129 _G_user_locale=
130 _G_safe_locale=
131 for _G_var in LANG LANGUAGE LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES
132 do
133 eval "if test set = \"\${$_G_var+set}\"; then
134 save_$_G_var=\$$_G_var
135 $_G_var=C
136 export $_G_var
137 _G_user_locale=\"$_G_var=\\\$save_\$_G_var; \$_G_user_locale\"
138 _G_safe_locale=\"$_G_var=C; \$_G_safe_locale\"
139 fi"
140 done
141
142 # CDPATH.
143 (unset CDPATH) >/dev/null 2>&1 && unset CDPATH
144
145 # Make sure IFS has a sensible default
146 sp=' '
147 nl='
148 '
149 IFS="$sp $nl"
150
151 # There are apparently some retarded systems that use ';' as a PATH separator!
152 if test "${PATH_SEPARATOR+set}" != set; then
153 PATH_SEPARATOR=:
154 (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && {
155 (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 ||
156 PATH_SEPARATOR=';'
157 }
158 fi
159
160
161
162 ## ------------------------- ##
163 ## Locate command utilities. ##
164 ## ------------------------- ##
165
166
167 # func_executable_p FILE
168 # ----------------------
169 # Check that FILE is an executable regular file.
170 func_executable_p ()
171 {
172 test -f "$1" && test -x "$1"
173 }
174
175
176 # func_path_progs PROGS_LIST CHECK_FUNC [PATH]
177 # --------------------------------------------
178 # Search for either a program that responds to --version with output
179 # containing "GNU", or else returned by CHECK_FUNC otherwise, by
180 # trying all the directories in PATH with each of the elements of
181 # PROGS_LIST.
182 #
183 # CHECK_FUNC should accept the path to a candidate program, and
184 # set $func_check_prog_result if it truncates its output less than
185 # $_G_path_prog_max characters.
186 func_path_progs ()
187 {
188 _G_progs_list=$1
189 _G_check_func=$2
190 _G_PATH=${3-"$PATH"}
191
192 _G_path_prog_max=0
193 _G_path_prog_found=false
194 _G_save_IFS=$IFS; IFS=${PATH_SEPARATOR-:}
195 for _G_dir in $_G_PATH; do
196 IFS=$_G_save_IFS
197 test -z "$_G_dir" && _G_dir=.
198 for _G_prog_name in $_G_progs_list; do
199 for _exeext in '' .EXE; do
200 _G_path_prog=$_G_dir/$_G_prog_name$_exeext
201 func_executable_p "$_G_path_prog" || continue
202 case `"$_G_path_prog" --version 2>&1` in
203 *GNU*) func_path_progs_result=$_G_path_prog _G_path_prog_found=: ;;
204 *) $_G_check_func $_G_path_prog
205 func_path_progs_result=$func_check_prog_result
206 ;;
207 esac
208 $_G_path_prog_found && break 3
209 done
210 done
211 done
212 IFS=$_G_save_IFS
213 test -z "$func_path_progs_result" && {
214 echo "no acceptable sed could be found in \$PATH" >&2
215 exit 1
216 }
217 }
218
219
220 # We want to be able to use the functions in this file before configure
221 # has figured out where the best binaries are kept, which means we have
222 # to search for them ourselves - except when the results are already set
223 # where we skip the searches.
224
225 # Unless the user overrides by setting SED, search the path for either GNU
226 # sed, or the sed that truncates its output the least.
227 test -z "$SED" && {
228 _G_sed_script=s/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb/
229 for _G_i in 1 2 3 4 5 6 7; do
230 _G_sed_script=$_G_sed_script$nl$_G_sed_script
231 done
232 echo "$_G_sed_script" 2>/dev/null | sed 99q >conftest.sed
233 _G_sed_script=
234
235 func_check_prog_sed ()
236 {
237 _G_path_prog=$1
238
239 _G_count=0
240 printf 0123456789 >conftest.in
241 while :
242 do
243 cat conftest.in conftest.in >conftest.tmp
244 mv conftest.tmp conftest.in
245 cp conftest.in conftest.nl
246 echo '' >> conftest.nl
247 "$_G_path_prog" -f conftest.sed <conftest.nl >conftest.out 2>/dev/null || break
248 diff conftest.out conftest.nl >/dev/null 2>&1 || break
249 _G_count=`expr $_G_count + 1`
250 if test "$_G_count" -gt "$_G_path_prog_max"; then
251 # Best one so far, save it but keep looking for a better one
252 func_check_prog_result=$_G_path_prog
253 _G_path_prog_max=$_G_count
254 fi
255 # 10*(2^10) chars as input seems more than enough
256 test 10 -lt "$_G_count" && break
257 done
258 rm -f conftest.in conftest.tmp conftest.nl conftest.out
259 }
260
261 func_path_progs "sed gsed" func_check_prog_sed $PATH:/usr/xpg4/bin
262 rm -f conftest.sed
263 SED=$func_path_progs_result
264 }
265
266
267 # Unless the user overrides by setting GREP, search the path for either GNU
268 # grep, or the grep that truncates its output the least.
269 test -z "$GREP" && {
270 func_check_prog_grep ()
271 {
272 _G_path_prog=$1
273
274 _G_count=0
275 _G_path_prog_max=0
276 printf 0123456789 >conftest.in
277 while :
278 do
279 cat conftest.in conftest.in >conftest.tmp
280 mv conftest.tmp conftest.in
281 cp conftest.in conftest.nl
282 echo 'GREP' >> conftest.nl
283 "$_G_path_prog" -e 'GREP$' -e '-(cannot match)-' <conftest.nl >conftest.out 2>/dev/null || break
284 diff conftest.out conftest.nl >/dev/null 2>&1 || break
285 _G_count=`expr $_G_count + 1`
286 if test "$_G_count" -gt "$_G_path_prog_max"; then
287 # Best one so far, save it but keep looking for a better one
288 func_check_prog_result=$_G_path_prog
289 _G_path_prog_max=$_G_count
290 fi
291 # 10*(2^10) chars as input seems more than enough
292 test 10 -lt "$_G_count" && break
293 done
294 rm -f conftest.in conftest.tmp conftest.nl conftest.out
295 }
296
297 func_path_progs "grep ggrep" func_check_prog_grep $PATH:/usr/xpg4/bin
298 GREP=$func_path_progs_result
299 }
300
301
302 ## ------------------------------- ##
303 ## User overridable command paths. ##
304 ## ------------------------------- ##
305
306 # All uppercase variable names are used for environment variables. These
307 # variables can be overridden by the user before calling a script that
308 # uses them if a suitable command of that name is not already available
309 # in the command search PATH.
310
311 : ${CP="cp -f"}
312 : ${ECHO="printf %s\n"}
313 : ${EGREP="$GREP -E"}
314 : ${FGREP="$GREP -F"}
315 : ${LN_S="ln -s"}
316 : ${MAKE="make"}
317 : ${MKDIR="mkdir"}
318 : ${MV="mv -f"}
319 : ${RM="rm -f"}
320 : ${SHELL="${CONFIG_SHELL-/bin/sh}"}
321
322
323 ## -------------------- ##
324 ## Useful sed snippets. ##
325 ## -------------------- ##
326
327 sed_dirname='s|/[^/]*$||'
328 sed_basename='s|^.*/||'
329
330 # Sed substitution that helps us do robust quoting. It backslashifies
331 # metacharacters that are still active within double-quoted strings.
332 sed_quote_subst='s|\([`"$\\]\)|\\\1|g'
333
334 # Same as above, but do not quote variable references.
335 sed_double_quote_subst='s/\(["`\\]\)/\\\1/g'
336
337 # Sed substitution that turns a string into a regex matching for the
338 # string literally.
339 sed_make_literal_regex='s|[].[^$\\*\/]|\\&|g'
340
341 # Sed substitution that converts a w32 file name or path
342 # that contains forward slashes, into one that contains
343 # (escaped) backslashes. A very naive implementation.
344 sed_naive_backslashify='s|\\\\*|\\|g;s|/|\\|g;s|\\|\\\\|g'
345
346 # Re-'\' parameter expansions in output of sed_double_quote_subst that
347 # were '\'-ed in input to the same. If an odd number of '\' preceded a
348 # '$' in input to sed_double_quote_subst, that '$' was protected from
349 # expansion. Since each input '\' is now two '\'s, look for any number
350 # of runs of four '\'s followed by two '\'s and then a '$'. '\' that '$'.
351 _G_bs='\\'
352 _G_bs2='\\\\'
353 _G_bs4='\\\\\\\\'
354 _G_dollar='\$'
355 sed_double_backslash="\
356 s/$_G_bs4/&\\
357 /g
358 s/^$_G_bs2$_G_dollar/$_G_bs&/
359 s/\\([^$_G_bs]\\)$_G_bs2$_G_dollar/\\1$_G_bs2$_G_bs$_G_dollar/g
360 s/\n//g"
361
362
363 ## ----------------- ##
364 ## Global variables. ##
365 ## ----------------- ##
366
367 # Except for the global variables explicitly listed below, the following
368 # functions in the '^func_' namespace, and the '^require_' namespace
369 # variables initialised in the 'Resource management' section, sourcing
370 # this file will not pollute your global namespace with anything
371 # else. There's no portable way to scope variables in Bourne shell
372 # though, so actually running these functions will sometimes place
373 # results into a variable named after the function, and often use
374 # temporary variables in the '^_G_' namespace. If you are careful to
375 # avoid using those namespaces casually in your sourcing script, things
376 # should continue to work as you expect. And, of course, you can freely
377 # overwrite any of the functions or variables defined here before
378 # calling anything to customize them.
379
380 EXIT_SUCCESS=0
381 EXIT_FAILURE=1
382 EXIT_MISMATCH=63 # $? = 63 is used to indicate version mismatch to missing.
383 EXIT_SKIP=77 # $? = 77 is used to indicate a skipped test to automake.
384
385 # Allow overriding, eg assuming that you follow the convention of
386 # putting '$debug_cmd' at the start of all your functions, you can get
387 # bash to show function call trace with:
388 #
389 # debug_cmd='echo "${FUNCNAME[0]} $*" >&2' bash your-script-name
390 debug_cmd=${debug_cmd-":"}
391 exit_cmd=:
392
393 # By convention, finish your script with:
394 #
395 # exit $exit_status
396 #
397 # so that you can set exit_status to non-zero if you want to indicate
398 # something went wrong during execution without actually bailing out at
399 # the point of failure.
400 exit_status=$EXIT_SUCCESS
401
402 # Work around backward compatibility issue on IRIX 6.5. On IRIX 6.4+, sh
403 # is ksh but when the shell is invoked as "sh" and the current value of
404 # the _XPG environment variable is not equal to 1 (one), the special
405 # positional parameter $0, within a function call, is the name of the
406 # function.
407 progpath=$0
408
409 # The name of this program.
410 progname=`$ECHO "$progpath" |$SED "$sed_basename"`
411
412 # Make sure we have an absolute progpath for reexecution:
413 case $progpath in
414 [\\/]*|[A-Za-z]:\\*) ;;
415 *[\\/]*)
416 progdir=`$ECHO "$progpath" |$SED "$sed_dirname"`
417 progdir=`cd "$progdir" && pwd`
418 progpath=$progdir/$progname
419 ;;
420 *)
421 _G_IFS=$IFS
422 IFS=${PATH_SEPARATOR-:}
423 for progdir in $PATH; do
424 IFS=$_G_IFS
425 test -x "$progdir/$progname" && break
426 done
427 IFS=$_G_IFS
428 test -n "$progdir" || progdir=`pwd`
429 progpath=$progdir/$progname
430 ;;
431 esac
432
433
434 ## ----------------- ##
435 ## Standard options. ##
436 ## ----------------- ##
437
438 # The following options affect the operation of the functions defined
439 # below, and should be set appropriately depending on run-time para-
440 # meters passed on the command line.
441
442 opt_dry_run=false
443 opt_quiet=false
444 opt_verbose=false
445
446 # Categories 'all' and 'none' are always available. Append any others
447 # you will pass as the first argument to func_warning from your own
448 # code.
449 warning_categories=
450
451 # By default, display warnings according to 'opt_warning_types'. Set
452 # 'warning_func' to ':' to elide all warnings, or func_fatal_error to
453 # treat the next displayed warning as a fatal error.
454 warning_func=func_warn_and_continue
455
456 # Set to 'all' to display all warnings, 'none' to suppress all
457 # warnings, or a space delimited list of some subset of
458 # 'warning_categories' to display only the listed warnings.
459 opt_warning_types=all
460
461
462 ## -------------------- ##
463 ## Resource management. ##
464 ## -------------------- ##
465
466 # This section contains definitions for functions that each ensure a
467 # particular resource (a file, or a non-empty configuration variable for
468 # example) is available, and if appropriate to extract default values
469 # from pertinent package files. Call them using their associated
470 # 'require_*' variable to ensure that they are executed, at most, once.
471 #
472 # It's entirely deliberate that calling these functions can set
473 # variables that don't obey the namespace limitations obeyed by the rest
474 # of this file, in order that that they be as useful as possible to
475 # callers.
476
477
478 # require_term_colors
479 # -------------------
480 # Allow display of bold text on terminals that support it.
481 require_term_colors=func_require_term_colors
482 func_require_term_colors ()
483 {
484 $debug_cmd
485
486 test -t 1 && {
487 # COLORTERM and USE_ANSI_COLORS environment variables take
488 # precedence, because most terminfo databases neglect to describe
489 # whether color sequences are supported.
490 test -n "${COLORTERM+set}" && : ${USE_ANSI_COLORS="1"}
491
492 if test 1 = "$USE_ANSI_COLORS"; then
493 # Standard ANSI escape sequences
494 tc_reset=''
495 tc_bold=''; tc_standout=''
496 tc_red=''; tc_green=''
497 tc_blue=''; tc_cyan=''
498 else
499 # Otherwise trust the terminfo database after all.
500 test -n "`tput sgr0 2>/dev/null`" && {
501 tc_reset=`tput sgr0`
502 test -n "`tput bold 2>/dev/null`" && tc_bold=`tput bold`
503 tc_standout=$tc_bold
504 test -n "`tput smso 2>/dev/null`" && tc_standout=`tput smso`
505 test -n "`tput setaf 1 2>/dev/null`" && tc_red=`tput setaf 1`
506 test -n "`tput setaf 2 2>/dev/null`" && tc_green=`tput setaf 2`
507 test -n "`tput setaf 4 2>/dev/null`" && tc_blue=`tput setaf 4`
508 test -n "`tput setaf 5 2>/dev/null`" && tc_cyan=`tput setaf 5`
509 }
510 fi
511 }
512
513 require_term_colors=:
514 }
515
516
517 ## ----------------- ##
518 ## Function library. ##
519 ## ----------------- ##
520
521 # This section contains a variety of useful functions to call in your
522 # scripts. Take note of the portable wrappers for features provided by
523 # some modern shells, which will fall back to slower equivalents on
524 # less featureful shells.
525
526
527 # func_append VAR VALUE
528 # ---------------------
529 # Append VALUE onto the existing contents of VAR.
530
531 # We should try to minimise forks, especially on Windows where they are
532 # unreasonably slow, so skip the feature probes when bash or zsh are
533 # being used:
534 if test set = "${BASH_VERSION+set}${ZSH_VERSION+set}"; then
535 : ${_G_HAVE_ARITH_OP="yes"}
536 : ${_G_HAVE_XSI_OPS="yes"}
537 # The += operator was introduced in bash 3.1
538 case $BASH_VERSION in
539 [12].* | 3.0 | 3.0*) ;;
540 *)
541 : ${_G_HAVE_PLUSEQ_OP="yes"}
542 ;;
543 esac
544 fi
545
546 # _G_HAVE_PLUSEQ_OP
547 # Can be empty, in which case the shell is probed, "yes" if += is
548 # useable or anything else if it does not work.
549 test -z "$_G_HAVE_PLUSEQ_OP" \
550 && (eval 'x=a; x+=" b"; test "a b" = "$x"') 2>/dev/null \
551 && _G_HAVE_PLUSEQ_OP=yes
552
553 if test yes = "$_G_HAVE_PLUSEQ_OP"
554 then
555 # This is an XSI compatible shell, allowing a faster implementation...
556 eval 'func_append ()
557 {
558 $debug_cmd
559
560 eval "$1+=\$2"
561 }'
562 else
563 # ...otherwise fall back to using expr, which is often a shell builtin.
564 func_append ()
565 {
566 $debug_cmd
567
568 eval "$1=\$$1\$2"
569 }
570 fi
571
572
573 # func_append_quoted VAR VALUE
574 # ----------------------------
575 # Quote VALUE and append to the end of shell variable VAR, separated
576 # by a space.
577 if test yes = "$_G_HAVE_PLUSEQ_OP"; then
578 eval 'func_append_quoted ()
579 {
580 $debug_cmd
581
582 func_quote_for_eval "$2"
583 eval "$1+=\\ \$func_quote_for_eval_result"
584 }'
585 else
586 func_append_quoted ()
587 {
588 $debug_cmd
589
590 func_quote_for_eval "$2"
591 eval "$1=\$$1\\ \$func_quote_for_eval_result"
592 }
593 fi
594
595
596 # func_append_uniq VAR VALUE
597 # --------------------------
598 # Append unique VALUE onto the existing contents of VAR, assuming
599 # entries are delimited by the first character of VALUE. For example:
600 #
601 # func_append_uniq options " --another-option option-argument"
602 #
603 # will only append to $options if " --another-option option-argument "
604 # is not already present somewhere in $options already (note spaces at
605 # each end implied by leading space in second argument).
606 func_append_uniq ()
607 {
608 $debug_cmd
609
610 eval _G_current_value='`$ECHO $'$1'`'
611 _G_delim=`expr "$2" : '\(.\)'`
612
613 case $_G_delim$_G_current_value$_G_delim in
614 *"$2$_G_delim"*) ;;
615 *) func_append "$@" ;;
616 esac
617 }
618
619
620 # func_arith TERM...
621 # ------------------
622 # Set func_arith_result to the result of evaluating TERMs.
623 test -z "$_G_HAVE_ARITH_OP" \
624 && (eval 'test 2 = $(( 1 + 1 ))') 2>/dev/null \
625 && _G_HAVE_ARITH_OP=yes
626
627 if test yes = "$_G_HAVE_ARITH_OP"; then
628 eval 'func_arith ()
629 {
630 $debug_cmd
631
632 func_arith_result=$(( $* ))
633 }'
634 else
635 func_arith ()
636 {
637 $debug_cmd
638
639 func_arith_result=`expr "$@"`
640 }
641 fi
642
643
644 # func_basename FILE
645 # ------------------
646 # Set func_basename_result to FILE with everything up to and including
647 # the last / stripped.
648 if test yes = "$_G_HAVE_XSI_OPS"; then
649 # If this shell supports suffix pattern removal, then use it to avoid
650 # forking. Hide the definitions single quotes in case the shell chokes
651 # on unsupported syntax...
652 _b='func_basename_result=${1##*/}'
653 _d='case $1 in
654 */*) func_dirname_result=${1%/*}$2 ;;
655 * ) func_dirname_result=$3 ;;
656 esac'
657
658 else
659 # ...otherwise fall back to using sed.
660 _b='func_basename_result=`$ECHO "$1" |$SED "$sed_basename"`'
661 _d='func_dirname_result=`$ECHO "$1" |$SED "$sed_dirname"`
662 if test "X$func_dirname_result" = "X$1"; then
663 func_dirname_result=$3
664 else
665 func_append func_dirname_result "$2"
666 fi'
667 fi
668
669 eval 'func_basename ()
670 {
671 $debug_cmd
672
673 '"$_b"'
674 }'
675
676
677 # func_dirname FILE APPEND NONDIR_REPLACEMENT
678 # -------------------------------------------
679 # Compute the dirname of FILE. If nonempty, add APPEND to the result,
680 # otherwise set result to NONDIR_REPLACEMENT.
681 eval 'func_dirname ()
682 {
683 $debug_cmd
684
685 '"$_d"'
686 }'
687
688
689 # func_dirname_and_basename FILE APPEND NONDIR_REPLACEMENT
690 # --------------------------------------------------------
691 # Perform func_basename and func_dirname in a single function
692 # call:
693 # dirname: Compute the dirname of FILE. If nonempty,
694 # add APPEND to the result, otherwise set result
695 # to NONDIR_REPLACEMENT.
696 # value returned in "$func_dirname_result"
697 # basename: Compute filename of FILE.
698 # value retuned in "$func_basename_result"
699 # For efficiency, we do not delegate to the functions above but instead
700 # duplicate the functionality here.
701 eval 'func_dirname_and_basename ()
702 {
703 $debug_cmd
704
705 '"$_b"'
706 '"$_d"'
707 }'
708
709
710 # func_echo ARG...
711 # ----------------
712 # Echo program name prefixed message.
713 func_echo ()
714 {
715 $debug_cmd
716
717 _G_message=$*
718
719 func_echo_IFS=$IFS
720 IFS=$nl
721 for _G_line in $_G_message; do
722 IFS=$func_echo_IFS
723 $ECHO "$progname: $_G_line"
724 done
725 IFS=$func_echo_IFS
726 }
727
728
729 # func_echo_all ARG...
730 # --------------------
731 # Invoke $ECHO with all args, space-separated.
732 func_echo_all ()
733 {
734 $ECHO "$*"
735 }
736
737
738 # func_echo_infix_1 INFIX ARG...
739 # ------------------------------
740 # Echo program name, followed by INFIX on the first line, with any
741 # additional lines not showing INFIX.
742 func_echo_infix_1 ()
743 {
744 $debug_cmd
745
746 $require_term_colors
747
748 _G_infix=$1; shift
749 _G_indent=$_G_infix
750 _G_prefix="$progname: $_G_infix: "
751 _G_message=$*
752
753 # Strip color escape sequences before counting printable length
754 for _G_tc in "$tc_reset" "$tc_bold" "$tc_standout" "$tc_red" "$tc_green" "$tc_blue" "$tc_cyan"
755 do
756 test -n "$_G_tc" && {
757 _G_esc_tc=`$ECHO "$_G_tc" | $SED "$sed_make_literal_regex"`
758 _G_indent=`$ECHO "$_G_indent" | $SED "s|$_G_esc_tc||g"`
759 }
760 done
761 _G_indent="$progname: "`echo "$_G_indent" | $SED 's|.| |g'`" " ## exclude from sc_prohibit_nested_quotes
762
763 func_echo_infix_1_IFS=$IFS
764 IFS=$nl
765 for _G_line in $_G_message; do
766 IFS=$func_echo_infix_1_IFS
767 $ECHO "$_G_prefix$tc_bold$_G_line$tc_reset" >&2
768 _G_prefix=$_G_indent
769 done
770 IFS=$func_echo_infix_1_IFS
771 }
772
773
774 # func_error ARG...
775 # -----------------
776 # Echo program name prefixed message to standard error.
777 func_error ()
778 {
779 $debug_cmd
780
781 $require_term_colors
782
783 func_echo_infix_1 " $tc_standout${tc_red}error$tc_reset" "$*" >&2
784 }
785
786
787 # func_fatal_error ARG...
788 # -----------------------
789 # Echo program name prefixed message to standard error, and exit.
790 func_fatal_error ()
791 {
792 $debug_cmd
793
794 func_error "$*"
795 exit $EXIT_FAILURE
796 }
797
798
799 # func_grep EXPRESSION FILENAME
800 # -----------------------------
801 # Check whether EXPRESSION matches any line of FILENAME, without output.
802 func_grep ()
803 {
804 $debug_cmd
805
806 $GREP "$1" "$2" >/dev/null 2>&1
807 }
808
809
810 # func_len STRING
811 # ---------------
812 # Set func_len_result to the length of STRING. STRING may not
813 # start with a hyphen.
814 test -z "$_G_HAVE_XSI_OPS" \
815 && (eval 'x=a/b/c;
816 test 5aa/bb/cc = "${#x}${x%%/*}${x%/*}${x#*/}${x##*/}"') 2>/dev/null \
817 && _G_HAVE_XSI_OPS=yes
818
819 if test yes = "$_G_HAVE_XSI_OPS"; then
820 eval 'func_len ()
821 {
822 $debug_cmd
823
824 func_len_result=${#1}
825 }'
826 else
827 func_len ()
828 {
829 $debug_cmd
830
831 func_len_result=`expr "$1" : ".*" 2>/dev/null || echo $max_cmd_len`
832 }
833 fi
834
835
836 # func_mkdir_p DIRECTORY-PATH
837 # ---------------------------
838 # Make sure the entire path to DIRECTORY-PATH is available.
839 func_mkdir_p ()
840 {
841 $debug_cmd
842
843 _G_directory_path=$1
844 _G_dir_list=
845
846 if test -n "$_G_directory_path" && test : != "$opt_dry_run"; then
847
848 # Protect directory names starting with '-'
849 case $_G_directory_path in
850 -*) _G_directory_path=./$_G_directory_path ;;
851 esac
852
853 # While some portion of DIR does not yet exist...
854 while test ! -d "$_G_directory_path"; do
855 # ...make a list in topmost first order. Use a colon delimited
856 # list incase some portion of path contains whitespace.
857 _G_dir_list=$_G_directory_path:$_G_dir_list
858
859 # If the last portion added has no slash in it, the list is done
860 case $_G_directory_path in */*) ;; *) break ;; esac
861
862 # ...otherwise throw away the child directory and loop
863 _G_directory_path=`$ECHO "$_G_directory_path" | $SED -e "$sed_dirname"`
864 done
865 _G_dir_list=`$ECHO "$_G_dir_list" | $SED 's|:*$||'`
866
867 func_mkdir_p_IFS=$IFS; IFS=:
868 for _G_dir in $_G_dir_list; do
869 IFS=$func_mkdir_p_IFS
870 # mkdir can fail with a 'File exist' error if two processes
871 # try to create one of the directories concurrently. Don't
872 # stop in that case!
873 $MKDIR "$_G_dir" 2>/dev/null || :
874 done
875 IFS=$func_mkdir_p_IFS
876
877 # Bail out if we (or some other process) failed to create a directory.
878 test -d "$_G_directory_path" || \
879 func_fatal_error "Failed to create '$1'"
880 fi
881 }
882
883
884 # func_mktempdir [BASENAME]
885 # -------------------------
886 # Make a temporary directory that won't clash with other running
887 # libtool processes, and avoids race conditions if possible. If
888 # given, BASENAME is the basename for that directory.
889 func_mktempdir ()
890 {
891 $debug_cmd
892
893 _G_template=${TMPDIR-/tmp}/${1-$progname}
894
895 if test : = "$opt_dry_run"; then
896 # Return a directory name, but don't create it in dry-run mode
897 _G_tmpdir=$_G_template-$$
898 else
899
900 # If mktemp works, use that first and foremost
901 _G_tmpdir=`mktemp -d "$_G_template-XXXXXXXX" 2>/dev/null`
902
903 if test ! -d "$_G_tmpdir"; then
904 # Failing that, at least try and use $RANDOM to avoid a race
905 _G_tmpdir=$_G_template-${RANDOM-0}$$
906
907 func_mktempdir_umask=`umask`
908 umask 0077
909 $MKDIR "$_G_tmpdir"
910 umask $func_mktempdir_umask
911 fi
912
913 # If we're not in dry-run mode, bomb out on failure
914 test -d "$_G_tmpdir" || \
915 func_fatal_error "cannot create temporary directory '$_G_tmpdir'"
916 fi
917
918 $ECHO "$_G_tmpdir"
919 }
920
921
922 # func_normal_abspath PATH
923 # ------------------------
924 # Remove doubled-up and trailing slashes, "." path components,
925 # and cancel out any ".." path components in PATH after making
926 # it an absolute path.
927 func_normal_abspath ()
928 {
929 $debug_cmd
930
931 # These SED scripts presuppose an absolute path with a trailing slash.
932 _G_pathcar='s|^/\([^/]*\).*$|\1|'
933 _G_pathcdr='s|^/[^/]*||'
934 _G_removedotparts=':dotsl
935 s|/\./|/|g
936 t dotsl
937 s|/\.$|/|'
938 _G_collapseslashes='s|/\{1,\}|/|g'
939 _G_finalslash='s|/*$|/|'
940
941 # Start from root dir and reassemble the path.
942 func_normal_abspath_result=
943 func_normal_abspath_tpath=$1
944 func_normal_abspath_altnamespace=
945 case $func_normal_abspath_tpath in
946 "")
947 # Empty path, that just means $cwd.
948 func_stripname '' '/' "`pwd`"
949 func_normal_abspath_result=$func_stripname_result
950 return
951 ;;
952 # The next three entries are used to spot a run of precisely
953 # two leading slashes without using negated character classes;
954 # we take advantage of case's first-match behaviour.
955 ///*)
956 # Unusual form of absolute path, do nothing.
957 ;;
958 //*)
959 # Not necessarily an ordinary path; POSIX reserves leading '//'
960 # and for example Cygwin uses it to access remote file shares
961 # over CIFS/SMB, so we conserve a leading double slash if found.
962 func_normal_abspath_altnamespace=/
963 ;;
964 /*)
965 # Absolute path, do nothing.
966 ;;
967 *)
968 # Relative path, prepend $cwd.
969 func_normal_abspath_tpath=`pwd`/$func_normal_abspath_tpath
970 ;;
971 esac
972
973 # Cancel out all the simple stuff to save iterations. We also want
974 # the path to end with a slash for ease of parsing, so make sure
975 # there is one (and only one) here.
976 func_normal_abspath_tpath=`$ECHO "$func_normal_abspath_tpath" | $SED \
977 -e "$_G_removedotparts" -e "$_G_collapseslashes" -e "$_G_finalslash"`
978 while :; do
979 # Processed it all yet?
980 if test / = "$func_normal_abspath_tpath"; then
981 # If we ascended to the root using ".." the result may be empty now.
982 if test -z "$func_normal_abspath_result"; then
983 func_normal_abspath_result=/
984 fi
985 break
986 fi
987 func_normal_abspath_tcomponent=`$ECHO "$func_normal_abspath_tpath" | $SED \
988 -e "$_G_pathcar"`
989 func_normal_abspath_tpath=`$ECHO "$func_normal_abspath_tpath" | $SED \
990 -e "$_G_pathcdr"`
991 # Figure out what to do with it
992 case $func_normal_abspath_tcomponent in
993 "")
994 # Trailing empty path component, ignore it.
995 ;;
996 ..)
997 # Parent dir; strip last assembled component from result.
998 func_dirname "$func_normal_abspath_result"
999 func_normal_abspath_result=$func_dirname_result
1000 ;;
1001 *)
1002 # Actual path component, append it.
1003 func_append func_normal_abspath_result "/$func_normal_abspath_tcomponent"
1004 ;;
1005 esac
1006 done
1007 # Restore leading double-slash if one was found on entry.
1008 func_normal_abspath_result=$func_normal_abspath_altnamespace$func_normal_abspath_result
1009 }
1010
1011
1012 # func_notquiet ARG...
1013 # --------------------
1014 # Echo program name prefixed message only when not in quiet mode.
1015 func_notquiet ()
1016 {
1017 $debug_cmd
1018
1019 $opt_quiet || func_echo ${1+"$@"}
1020
1021 # A bug in bash halts the script if the last line of a function
1022 # fails when set -e is in force, so we need another command to
1023 # work around that:
1024 :
1025 }
1026
1027
1028 # func_relative_path SRCDIR DSTDIR
1029 # --------------------------------
1030 # Set func_relative_path_result to the relative path from SRCDIR to DSTDIR.
1031 func_relative_path ()
1032 {
1033 $debug_cmd
1034
1035 func_relative_path_result=
1036 func_normal_abspath "$1"
1037 func_relative_path_tlibdir=$func_normal_abspath_result
1038 func_normal_abspath "$2"
1039 func_relative_path_tbindir=$func_normal_abspath_result
1040
1041 # Ascend the tree starting from libdir
1042 while :; do
1043 # check if we have found a prefix of bindir
1044 case $func_relative_path_tbindir in
1045 $func_relative_path_tlibdir)
1046 # found an exact match
1047 func_relative_path_tcancelled=
1048 break
1049 ;;
1050 $func_relative_path_tlibdir*)
1051 # found a matching prefix
1052 func_stripname "$func_relative_path_tlibdir" '' "$func_relative_path_tbindir"
1053 func_relative_path_tcancelled=$func_stripname_result
1054 if test -z "$func_relative_path_result"; then
1055 func_relative_path_result=.
1056 fi
1057 break
1058 ;;
1059 *)
1060 func_dirname $func_relative_path_tlibdir
1061 func_relative_path_tlibdir=$func_dirname_result
1062 if test -z "$func_relative_path_tlibdir"; then
1063 # Have to descend all the way to the root!
1064 func_relative_path_result=../$func_relative_path_result
1065 func_relative_path_tcancelled=$func_relative_path_tbindir
1066 break
1067 fi
1068 func_relative_path_result=../$func_relative_path_result
1069 ;;
1070 esac
1071 done
1072
1073 # Now calculate path; take care to avoid doubling-up slashes.
1074 func_stripname '' '/' "$func_relative_path_result"
1075 func_relative_path_result=$func_stripname_result
1076 func_stripname '/' '/' "$func_relative_path_tcancelled"
1077 if test -n "$func_stripname_result"; then
1078 func_append func_relative_path_result "/$func_stripname_result"
1079 fi
1080
1081 # Normalisation. If bindir is libdir, return '.' else relative path.
1082 if test -n "$func_relative_path_result"; then
1083 func_stripname './' '' "$func_relative_path_result"
1084 func_relative_path_result=$func_stripname_result
1085 fi
1086
1087 test -n "$func_relative_path_result" || func_relative_path_result=.
1088
1089 :
1090 }
1091
1092
1093 # func_quote_for_eval ARG...
1094 # --------------------------
1095 # Aesthetically quote ARGs to be evaled later.
1096 # This function returns two values:
1097 # i) func_quote_for_eval_result
1098 # double-quoted, suitable for a subsequent eval
1099 # ii) func_quote_for_eval_unquoted_result
1100 # has all characters that are still active within double
1101 # quotes backslashified.
1102 func_quote_for_eval ()
1103 {
1104 $debug_cmd
1105
1106 func_quote_for_eval_unquoted_result=
1107 func_quote_for_eval_result=
1108 while test 0 -lt $#; do
1109 case $1 in
1110 *[\\\`\"\$]*)
1111 _G_unquoted_arg=`printf '%s\n' "$1" |$SED "$sed_quote_subst"` ;;
1112 *)
1113 _G_unquoted_arg=$1 ;;
1114 esac
1115 if test -n "$func_quote_for_eval_unquoted_result"; then
1116 func_append func_quote_for_eval_unquoted_result " $_G_unquoted_arg"
1117 else
1118 func_append func_quote_for_eval_unquoted_result "$_G_unquoted_arg"
1119 fi
1120
1121 case $_G_unquoted_arg in
1122 # Double-quote args containing shell metacharacters to delay
1123 # word splitting, command substitution and variable expansion
1124 # for a subsequent eval.
1125 # Many Bourne shells cannot handle close brackets correctly
1126 # in scan sets, so we specify it separately.
1127 *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
1128 _G_quoted_arg=\"$_G_unquoted_arg\"
1129 ;;
1130 *)
1131 _G_quoted_arg=$_G_unquoted_arg
1132 ;;
1133 esac
1134
1135 if test -n "$func_quote_for_eval_result"; then
1136 func_append func_quote_for_eval_result " $_G_quoted_arg"
1137 else
1138 func_append func_quote_for_eval_result "$_G_quoted_arg"
1139 fi
1140 shift
1141 done
1142 }
1143
1144
1145 # func_quote_for_expand ARG
1146 # -------------------------
1147 # Aesthetically quote ARG to be evaled later; same as above,
1148 # but do not quote variable references.
1149 func_quote_for_expand ()
1150 {
1151 $debug_cmd
1152
1153 case $1 in
1154 *[\\\`\"]*)
1155 _G_arg=`$ECHO "$1" | $SED \
1156 -e "$sed_double_quote_subst" -e "$sed_double_backslash"` ;;
1157 *)
1158 _G_arg=$1 ;;
1159 esac
1160
1161 case $_G_arg in
1162 # Double-quote args containing shell metacharacters to delay
1163 # word splitting and command substitution for a subsequent eval.
1164 # Many Bourne shells cannot handle close brackets correctly
1165 # in scan sets, so we specify it separately.
1166 *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"")
1167 _G_arg=\"$_G_arg\"
1168 ;;
1169 esac
1170
1171 func_quote_for_expand_result=$_G_arg
1172 }
1173
1174
1175 # func_stripname PREFIX SUFFIX NAME
1176 # ---------------------------------
1177 # strip PREFIX and SUFFIX from NAME, and store in func_stripname_result.
1178 # PREFIX and SUFFIX must not contain globbing or regex special
1179 # characters, hashes, percent signs, but SUFFIX may contain a leading
1180 # dot (in which case that matches only a dot).
1181 if test yes = "$_G_HAVE_XSI_OPS"; then
1182 eval 'func_stripname ()
1183 {
1184 $debug_cmd
1185
1186 # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are
1187 # positional parameters, so assign one to ordinary variable first.
1188 func_stripname_result=$3
1189 func_stripname_result=${func_stripname_result#"$1"}
1190 func_stripname_result=${func_stripname_result%"$2"}
1191 }'
1192 else
1193 func_stripname ()
1194 {
1195 $debug_cmd
1196
1197 case $2 in
1198 .*) func_stripname_result=`$ECHO "$3" | $SED -e "s%^$1%%" -e "s%\\\\$2\$%%"`;;
1199 *) func_stripname_result=`$ECHO "$3" | $SED -e "s%^$1%%" -e "s%$2\$%%"`;;
1200 esac
1201 }
1202 fi
1203
1204
1205 # func_show_eval CMD [FAIL_EXP]
1206 # -----------------------------
1207 # Unless opt_quiet is true, then output CMD. Then, if opt_dryrun is
1208 # not true, evaluate CMD. If the evaluation of CMD fails, and FAIL_EXP
1209 # is given, then evaluate it.
1210 func_show_eval ()
1211 {
1212 $debug_cmd
1213
1214 _G_cmd=$1
1215 _G_fail_exp=${2-':'}
1216
1217 func_quote_for_expand "$_G_cmd"
1218 eval "func_notquiet $func_quote_for_expand_result"
1219
1220 $opt_dry_run || {
1221 eval "$_G_cmd"
1222 _G_status=$?
1223 if test 0 -ne "$_G_status"; then
1224 eval "(exit $_G_status); $_G_fail_exp"
1225 fi
1226 }
1227 }
1228
1229
1230 # func_show_eval_locale CMD [FAIL_EXP]
1231 # ------------------------------------
1232 # Unless opt_quiet is true, then output CMD. Then, if opt_dryrun is
1233 # not true, evaluate CMD. If the evaluation of CMD fails, and FAIL_EXP
1234 # is given, then evaluate it. Use the saved locale for evaluation.
1235 func_show_eval_locale ()
1236 {
1237 $debug_cmd
1238
1239 _G_cmd=$1
1240 _G_fail_exp=${2-':'}
1241
1242 $opt_quiet || {
1243 func_quote_for_expand "$_G_cmd"
1244 eval "func_echo $func_quote_for_expand_result"
1245 }
1246
1247 $opt_dry_run || {
1248 eval "$_G_user_locale
1249 $_G_cmd"
1250 _G_status=$?
1251 eval "$_G_safe_locale"
1252 if test 0 -ne "$_G_status"; then
1253 eval "(exit $_G_status); $_G_fail_exp"
1254 fi
1255 }
1256 }
1257
1258
1259 # func_tr_sh
1260 # ----------
1261 # Turn $1 into a string suitable for a shell variable name.
1262 # Result is stored in $func_tr_sh_result. All characters
1263 # not in the set a-zA-Z0-9_ are replaced with '_'. Further,
1264 # if $1 begins with a digit, a '_' is prepended as well.
1265 func_tr_sh ()
1266 {
1267 $debug_cmd
1268
1269 case $1 in
1270 [0-9]* | *[!a-zA-Z0-9_]*)
1271 func_tr_sh_result=`$ECHO "$1" | $SED -e 's/^\([0-9]\)/_\1/' -e 's/[^a-zA-Z0-9_]/_/g'`
1272 ;;
1273 * )
1274 func_tr_sh_result=$1
1275 ;;
1276 esac
1277 }
1278
1279
1280 # func_verbose ARG...
1281 # -------------------
1282 # Echo program name prefixed message in verbose mode only.
1283 func_verbose ()
1284 {
1285 $debug_cmd
1286
1287 $opt_verbose && func_echo "$*"
1288
1289 :
1290 }
1291
1292
1293 # func_warn_and_continue ARG...
1294 # -----------------------------
1295 # Echo program name prefixed warning message to standard error.
1296 func_warn_and_continue ()
1297 {
1298 $debug_cmd
1299
1300 $require_term_colors
1301
1302 func_echo_infix_1 "${tc_red}warning$tc_reset" "$*" >&2
1303 }
1304
1305
1306 # func_warning CATEGORY ARG...
1307 # ----------------------------
1308 # Echo program name prefixed warning message to standard error. Warning
1309 # messages can be filtered according to CATEGORY, where this function
1310 # elides messages where CATEGORY is not listed in the global variable
1311 # 'opt_warning_types'.
1312 func_warning ()
1313 {
1314 $debug_cmd
1315
1316 # CATEGORY must be in the warning_categories list!
1317 case " $warning_categories " in
1318 *" $1 "*) ;;
1319 *) func_internal_error "invalid warning category '$1'" ;;
1320 esac
1321
1322 _G_category=$1
1323 shift
1324
1325 case " $opt_warning_types " in
1326 *" $_G_category "*) $warning_func ${1+"$@"} ;;
1327 esac
1328 }
1329
1330
1331 # func_sort_ver VER1 VER2
1332 # -----------------------
1333 # 'sort -V' is not generally available.
1334 # Note this deviates from the version comparison in automake
1335 # in that it treats 1.5 < 1.5.0, and treats 1.4.4a < 1.4-p3a
1336 # but this should suffice as we won't be specifying old
1337 # version formats or redundant trailing .0 in bootstrap.conf.
1338 # If we did want full compatibility then we should probably
1339 # use m4_version_compare from autoconf.
1340 func_sort_ver ()
1341 {
1342 $debug_cmd
1343
1344 printf '%s\n%s\n' "$1" "$2" \
1345 | sort -t. -k 1,1n -k 2,2n -k 3,3n -k 4,4n -k 5,5n -k 6,6n -k 7,7n -k 8,8n -k 9,9n
1346 }
1347
1348 # func_lt_ver PREV CURR
1349 # ---------------------
1350 # Return true if PREV and CURR are in the correct order according to
1351 # func_sort_ver, otherwise false. Use it like this:
1352 #
1353 # func_lt_ver "$prev_ver" "$proposed_ver" || func_fatal_error "..."
1354 func_lt_ver ()
1355 {
1356 $debug_cmd
1357
1358 test "x$1" = x`func_sort_ver "$1" "$2" | $SED 1q`
1359 }
1360
1361
1362 # Local variables:
1363 # mode: shell-script
1364 # sh-indentation: 2
1365 # eval: (add-hook 'before-save-hook 'time-stamp)
1366 # time-stamp-pattern: "10/scriptversion=%:y-%02m-%02d.%02H; # UTC"
1367 # time-stamp-time-zone: "UTC"
1368 # End:
1369 #! /bin/sh
1370
1371 # Set a version string for this script.
1372 scriptversion=2015-10-07.11; # UTC
1373
1374 # A portable, pluggable option parser for Bourne shell.
1375 # Written by Gary V. Vaughan, 2010
1376
1377 # Copyright (C) 2010-2015 Free Software Foundation, Inc.
1378 # This is free software; see the source for copying conditions. There is NO
1379 # warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
1380
1381 # This program is free software: you can redistribute it and/or modify
1382 # it under the terms of the GNU General Public License as published by
1383 # the Free Software Foundation, either version 3 of the License, or
1384 # (at your option) any later version.
1385
1386 # This program is distributed in the hope that it will be useful,
1387 # but WITHOUT ANY WARRANTY; without even the implied warranty of
1388 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
1389 # GNU General Public License for more details.
1390
1391 # You should have received a copy of the GNU General Public License
1392 # along with this program. If not, see <http://www.gnu.org/licenses/>.
1393
1394 # Please report bugs or propose patches to gary@gnu.org.
1395
1396
1397 ## ------ ##
1398 ## Usage. ##
1399 ## ------ ##
1400
1401 # This file is a library for parsing options in your shell scripts along
1402 # with assorted other useful supporting features that you can make use
1403 # of too.
1404 #
1405 # For the simplest scripts you might need only:
1406 #
1407 # #!/bin/sh
1408 # . relative/path/to/funclib.sh
1409 # . relative/path/to/options-parser
1410 # scriptversion=1.0
1411 # func_options ${1+"$@"}
1412 # eval set dummy "$func_options_result"; shift
1413 # ...rest of your script...
1414 #
1415 # In order for the '--version' option to work, you will need to have a
1416 # suitably formatted comment like the one at the top of this file
1417 # starting with '# Written by ' and ending with '# warranty; '.
1418 #
1419 # For '-h' and '--help' to work, you will also need a one line
1420 # description of your script's purpose in a comment directly above the
1421 # '# Written by ' line, like the one at the top of this file.
1422 #
1423 # The default options also support '--debug', which will turn on shell
1424 # execution tracing (see the comment above debug_cmd below for another
1425 # use), and '--verbose' and the func_verbose function to allow your script
1426 # to display verbose messages only when your user has specified
1427 # '--verbose'.
1428 #
1429 # After sourcing this file, you can plug processing for additional
1430 # options by amending the variables from the 'Configuration' section
1431 # below, and following the instructions in the 'Option parsing'
1432 # section further down.
1433
1434 ## -------------- ##
1435 ## Configuration. ##
1436 ## -------------- ##
1437
1438 # You should override these variables in your script after sourcing this
1439 # file so that they reflect the customisations you have added to the
1440 # option parser.
1441
1442 # The usage line for option parsing errors and the start of '-h' and
1443 # '--help' output messages. You can embed shell variables for delayed
1444 # expansion at the time the message is displayed, but you will need to
1445 # quote other shell meta-characters carefully to prevent them being
1446 # expanded when the contents are evaled.
1447 usage='$progpath [OPTION]...'
1448
1449 # Short help message in response to '-h' and '--help'. Add to this or
1450 # override it after sourcing this library to reflect the full set of
1451 # options your script accepts.
1452 usage_message="\
1453 --debug enable verbose shell tracing
1454 -W, --warnings=CATEGORY
1455 report the warnings falling in CATEGORY [all]
1456 -v, --verbose verbosely report processing
1457 --version print version information and exit
1458 -h, --help print short or long help message and exit
1459 "
1460
1461 # Additional text appended to 'usage_message' in response to '--help'.
1462 long_help_message="
1463 Warning categories include:
1464 'all' show all warnings
1465 'none' turn off all the warnings
1466 'error' warnings are treated as fatal errors"
1467
1468 # Help message printed before fatal option parsing errors.
1469 fatal_help="Try '\$progname --help' for more information."
1470
1471
1472
1473 ## ------------------------- ##
1474 ## Hook function management. ##
1475 ## ------------------------- ##
1476
1477 # This section contains functions for adding, removing, and running hooks
1478 # to the main code. A hook is just a named list of of function, that can
1479 # be run in order later on.
1480
1481 # func_hookable FUNC_NAME
1482 # -----------------------
1483 # Declare that FUNC_NAME will run hooks added with
1484 # 'func_add_hook FUNC_NAME ...'.
1485 func_hookable ()
1486 {
1487 $debug_cmd
1488
1489 func_append hookable_fns " $1"
1490 }
1491
1492
1493 # func_add_hook FUNC_NAME HOOK_FUNC
1494 # ---------------------------------
1495 # Request that FUNC_NAME call HOOK_FUNC before it returns. FUNC_NAME must
1496 # first have been declared "hookable" by a call to 'func_hookable'.
1497 func_add_hook ()
1498 {
1499 $debug_cmd
1500
1501 case " $hookable_fns " in
1502 *" $1 "*) ;;
1503 *) func_fatal_error "'$1' does not accept hook functions." ;;
1504 esac
1505
1506 eval func_append ${1}_hooks '" $2"'
1507 }
1508
1509
1510 # func_remove_hook FUNC_NAME HOOK_FUNC
1511 # ------------------------------------
1512 # Remove HOOK_FUNC from the list of functions called by FUNC_NAME.
1513 func_remove_hook ()
1514 {
1515 $debug_cmd
1516
1517 eval ${1}_hooks='`$ECHO "\$'$1'_hooks" |$SED "s| '$2'||"`'
1518 }
1519
1520
1521 # func_run_hooks FUNC_NAME [ARG]...
1522 # ---------------------------------
1523 # Run all hook functions registered to FUNC_NAME.
1524 # It is assumed that the list of hook functions contains nothing more
1525 # than a whitespace-delimited list of legal shell function names, and
1526 # no effort is wasted trying to catch shell meta-characters or preserve
1527 # whitespace.
1528 func_run_hooks ()
1529 {
1530 $debug_cmd
1531
1532 _G_rc_run_hooks=false
1533
1534 case " $hookable_fns " in
1535 *" $1 "*) ;;
1536 *) func_fatal_error "'$1' does not support hook funcions.n" ;;
1537 esac
1538
1539 eval _G_hook_fns=\$$1_hooks; shift
1540
1541 for _G_hook in $_G_hook_fns; do
1542 if eval $_G_hook '"$@"'; then
1543 # store returned options list back into positional
1544 # parameters for next 'cmd' execution.
1545 eval _G_hook_result=\$${_G_hook}_result
1546 eval set dummy "$_G_hook_result"; shift
1547 _G_rc_run_hooks=:
1548 fi
1549 done
1550
1551 $_G_rc_run_hooks && func_run_hooks_result=$_G_hook_result
1552 }
1553
1554
1555
1556 ## --------------- ##
1557 ## Option parsing. ##
1558 ## --------------- ##
1559
1560 # In order to add your own option parsing hooks, you must accept the
1561 # full positional parameter list in your hook function, you may remove/edit
1562 # any options that you action, and then pass back the remaining unprocessed
1563 # options in '<hooked_function_name>_result', escaped suitably for
1564 # 'eval'. In this case you also must return $EXIT_SUCCESS to let the
1565 # hook's caller know that it should pay attention to
1566 # '<hooked_function_name>_result'. Returning $EXIT_FAILURE signalizes that
1567 # arguments are left untouched by the hook and therefore caller will ignore the
1568 # result variable.
1569 #
1570 # Like this:
1571 #
1572 # my_options_prep ()
1573 # {
1574 # $debug_cmd
1575 #
1576 # # Extend the existing usage message.
1577 # usage_message=$usage_message'
1578 # -s, --silent don'\''t print informational messages
1579 # '
1580 # # No change in '$@' (ignored completely by this hook). There is
1581 # # no need to do the equivalent (but slower) action:
1582 # # func_quote_for_eval ${1+"$@"}
1583 # # my_options_prep_result=$func_quote_for_eval_result
1584 # false
1585 # }
1586 # func_add_hook func_options_prep my_options_prep
1587 #
1588 #
1589 # my_silent_option ()
1590 # {
1591 # $debug_cmd
1592 #
1593 # args_changed=false
1594 #
1595 # # Note that for efficiency, we parse as many options as we can
1596 # # recognise in a loop before passing the remainder back to the
1597 # # caller on the first unrecognised argument we encounter.
1598 # while test $# -gt 0; do
1599 # opt=$1; shift
1600 # case $opt in
1601 # --silent|-s) opt_silent=:
1602 # args_changed=:
1603 # ;;
1604 # # Separate non-argument short options:
1605 # -s*) func_split_short_opt "$_G_opt"
1606 # set dummy "$func_split_short_opt_name" \
1607 # "-$func_split_short_opt_arg" ${1+"$@"}
1608 # shift
1609 # args_changed=:
1610 # ;;
1611 # *) # Make sure the first unrecognised option "$_G_opt"
1612 # # is added back to "$@", we could need that later
1613 # # if $args_changed is true.
1614 # set dummy "$_G_opt" ${1+"$@"}; shift; break ;;
1615 # esac
1616 # done
1617 #
1618 # if $args_changed; then
1619 # func_quote_for_eval ${1+"$@"}
1620 # my_silent_option_result=$func_quote_for_eval_result
1621 # fi
1622 #
1623 # $args_changed
1624 # }
1625 # func_add_hook func_parse_options my_silent_option
1626 #
1627 #
1628 # my_option_validation ()
1629 # {
1630 # $debug_cmd
1631 #
1632 # $opt_silent && $opt_verbose && func_fatal_help "\
1633 # '--silent' and '--verbose' options are mutually exclusive."
1634 #
1635 # false
1636 # }
1637 # func_add_hook func_validate_options my_option_validation
1638 #
1639 # You'll also need to manually amend $usage_message to reflect the extra
1640 # options you parse. It's preferable to append if you can, so that
1641 # multiple option parsing hooks can be added safely.
1642
1643
1644 # func_options_finish [ARG]...
1645 # ----------------------------
1646 # Finishing the option parse loop (call 'func_options' hooks ATM).
1647 func_options_finish ()
1648 {
1649 $debug_cmd
1650
1651 _G_func_options_finish_exit=false
1652 if func_run_hooks func_options ${1+"$@"}; then
1653 func_options_finish_result=$func_run_hooks_result
1654 _G_func_options_finish_exit=:
1655 fi
1656
1657 $_G_func_options_finish_exit
1658 }
1659
1660
1661 # func_options [ARG]...
1662 # ---------------------
1663 # All the functions called inside func_options are hookable. See the
1664 # individual implementations for details.
1665 func_hookable func_options
1666 func_options ()
1667 {
1668 $debug_cmd
1669
1670 _G_rc_options=false
1671
1672 for my_func in options_prep parse_options validate_options options_finish
1673 do
1674 if eval func_$my_func '${1+"$@"}'; then
1675 eval _G_res_var='$'"func_${my_func}_result"
1676 eval set dummy "$_G_res_var" ; shift
1677 _G_rc_options=:
1678 fi
1679 done
1680
1681 # Save modified positional parameters for caller. As a top-level
1682 # options-parser function we always need to set the 'func_options_result'
1683 # variable (regardless the $_G_rc_options value).
1684 if $_G_rc_options; then
1685 func_options_result=$_G_res_var
1686 else
1687 func_quote_for_eval ${1+"$@"}
1688 func_options_result=$func_quote_for_eval_result
1689 fi
1690
1691 $_G_rc_options
1692 }
1693
1694
1695 # func_options_prep [ARG]...
1696 # --------------------------
1697 # All initialisations required before starting the option parse loop.
1698 # Note that when calling hook functions, we pass through the list of
1699 # positional parameters. If a hook function modifies that list, and
1700 # needs to propagate that back to rest of this script, then the complete
1701 # modified list must be put in 'func_run_hooks_result' before
1702 # returning $EXIT_SUCCESS (otherwise $EXIT_FAILURE is returned).
1703 func_hookable func_options_prep
1704 func_options_prep ()
1705 {
1706 $debug_cmd
1707
1708 # Option defaults:
1709 opt_verbose=false
1710 opt_warning_types=
1711
1712 _G_rc_options_prep=false
1713 if func_run_hooks func_options_prep ${1+"$@"}; then
1714 _G_rc_options_prep=:
1715 # save modified positional parameters for caller
1716 func_options_prep_result=$func_run_hooks_result
1717 fi
1718
1719 $_G_rc_options_prep
1720 }
1721
1722
1723 # func_parse_options [ARG]...
1724 # ---------------------------
1725 # The main option parsing loop.
1726 func_hookable func_parse_options
1727 func_parse_options ()
1728 {
1729 $debug_cmd
1730
1731 func_parse_options_result=
1732
1733 _G_rc_parse_options=false
1734 # this just eases exit handling
1735 while test $# -gt 0; do
1736 # Defer to hook functions for initial option parsing, so they
1737 # get priority in the event of reusing an option name.
1738 if func_run_hooks func_parse_options ${1+"$@"}; then
1739 eval set dummy "$func_run_hooks_result"; shift
1740 _G_rc_parse_options=:
1741 fi
1742
1743 # Break out of the loop if we already parsed every option.
1744 test $# -gt 0 || break
1745
1746 _G_match_parse_options=:
1747 _G_opt=$1
1748 shift
1749 case $_G_opt in
1750 --debug|-x) debug_cmd='set -x'
1751 func_echo "enabling shell trace mode"
1752 $debug_cmd
1753 ;;
1754
1755 --no-warnings|--no-warning|--no-warn)
1756 set dummy --warnings none ${1+"$@"}
1757 shift
1758 ;;
1759
1760 --warnings|--warning|-W)
1761 if test $# = 0 && func_missing_arg $_G_opt; then
1762 _G_rc_parse_options=:
1763 break
1764 fi
1765 case " $warning_categories $1" in
1766 *" $1 "*)
1767 # trailing space prevents matching last $1 above
1768 func_append_uniq opt_warning_types " $1"
1769 ;;
1770 *all)
1771 opt_warning_types=$warning_categories
1772 ;;
1773 *none)
1774 opt_warning_types=none
1775 warning_func=:
1776 ;;
1777 *error)
1778 opt_warning_types=$warning_categories
1779 warning_func=func_fatal_error
1780 ;;
1781 *)
1782 func_fatal_error \
1783 "unsupported warning category: '$1'"
1784 ;;
1785 esac
1786 shift
1787 ;;
1788
1789 --verbose|-v) opt_verbose=: ;;
1790 --version) func_version ;;
1791 -\?|-h) func_usage ;;
1792 --help) func_help ;;
1793
1794 # Separate optargs to long options (plugins may need this):
1795 --*=*) func_split_equals "$_G_opt"
1796 set dummy "$func_split_equals_lhs" \
1797 "$func_split_equals_rhs" ${1+"$@"}
1798 shift
1799 ;;
1800
1801 # Separate optargs to short options:
1802 -W*)
1803 func_split_short_opt "$_G_opt"
1804 set dummy "$func_split_short_opt_name" \
1805 "$func_split_short_opt_arg" ${1+"$@"}
1806 shift
1807 ;;
1808
1809 # Separate non-argument short options:
1810 -\?*|-h*|-v*|-x*)
1811 func_split_short_opt "$_G_opt"
1812 set dummy "$func_split_short_opt_name" \
1813 "-$func_split_short_opt_arg" ${1+"$@"}
1814 shift
1815 ;;
1816
1817 --) _G_rc_parse_options=: ; break ;;
1818 -*) func_fatal_help "unrecognised option: '$_G_opt'" ;;
1819 *) set dummy "$_G_opt" ${1+"$@"}; shift
1820 _G_match_parse_options=false
1821 break
1822 ;;
1823 esac
1824
1825 $_G_match_parse_options && _G_rc_parse_options=:
1826 done
1827
1828
1829 if $_G_rc_parse_options; then
1830 # save modified positional parameters for caller
1831 func_quote_for_eval ${1+"$@"}
1832 func_parse_options_result=$func_quote_for_eval_result
1833 fi
1834
1835 $_G_rc_parse_options
1836 }
1837
1838
1839 # func_validate_options [ARG]...
1840 # ------------------------------
1841 # Perform any sanity checks on option settings and/or unconsumed
1842 # arguments.
1843 func_hookable func_validate_options
1844 func_validate_options ()
1845 {
1846 $debug_cmd
1847
1848 _G_rc_validate_options=false
1849
1850 # Display all warnings if -W was not given.
1851 test -n "$opt_warning_types" || opt_warning_types=" $warning_categories"
1852
1853 if func_run_hooks func_validate_options ${1+"$@"}; then
1854 # save modified positional parameters for caller
1855 func_validate_options_result=$func_run_hooks_result
1856 _G_rc_validate_options=:
1857 fi
1858
1859 # Bail if the options were screwed!
1860 $exit_cmd $EXIT_FAILURE
1861
1862 $_G_rc_validate_options
1863 }
1864
1865
1866
1867 ## ----------------- ##
1868 ## Helper functions. ##
1869 ## ----------------- ##
1870
1871 # This section contains the helper functions used by the rest of the
1872 # hookable option parser framework in ascii-betical order.
1873
1874
1875 # func_fatal_help ARG...
1876 # ----------------------
1877 # Echo program name prefixed message to standard error, followed by
1878 # a help hint, and exit.
1879 func_fatal_help ()
1880 {
1881 $debug_cmd
1882
1883 eval \$ECHO \""Usage: $usage"\"
1884 eval \$ECHO \""$fatal_help"\"
1885 func_error ${1+"$@"}
1886 exit $EXIT_FAILURE
1887 }
1888
1889
1890 # func_help
1891 # ---------
1892 # Echo long help message to standard output and exit.
1893 func_help ()
1894 {
1895 $debug_cmd
1896
1897 func_usage_message
1898 $ECHO "$long_help_message"
1899 exit 0
1900 }
1901
1902
1903 # func_missing_arg ARGNAME
1904 # ------------------------
1905 # Echo program name prefixed message to standard error and set global
1906 # exit_cmd.
1907 func_missing_arg ()
1908 {
1909 $debug_cmd
1910
1911 func_error "Missing argument for '$1'."
1912 exit_cmd=exit
1913 }
1914
1915
1916 # func_split_equals STRING
1917 # ------------------------
1918 # Set func_split_equals_lhs and func_split_equals_rhs shell variables after
1919 # splitting STRING at the '=' sign.
1920 test -z "$_G_HAVE_XSI_OPS" \
1921 && (eval 'x=a/b/c;
1922 test 5aa/bb/cc = "${#x}${x%%/*}${x%/*}${x#*/}${x##*/}"') 2>/dev/null \
1923 && _G_HAVE_XSI_OPS=yes
1924
1925 if test yes = "$_G_HAVE_XSI_OPS"
1926 then
1927 # This is an XSI compatible shell, allowing a faster implementation...
1928 eval 'func_split_equals ()
1929 {
1930 $debug_cmd
1931
1932 func_split_equals_lhs=${1%%=*}
1933 func_split_equals_rhs=${1#*=}
1934 test "x$func_split_equals_lhs" = "x$1" \
1935 && func_split_equals_rhs=
1936 }'
1937 else
1938 # ...otherwise fall back to using expr, which is often a shell builtin.
1939 func_split_equals ()
1940 {
1941 $debug_cmd
1942
1943 func_split_equals_lhs=`expr "x$1" : 'x\([^=]*\)'`
1944 func_split_equals_rhs=
1945 test "x$func_split_equals_lhs" = "x$1" \
1946 || func_split_equals_rhs=`expr "x$1" : 'x[^=]*=\(.*\)$'`
1947 }
1948 fi #func_split_equals
1949
1950
1951 # func_split_short_opt SHORTOPT
1952 # -----------------------------
1953 # Set func_split_short_opt_name and func_split_short_opt_arg shell
1954 # variables after splitting SHORTOPT after the 2nd character.
1955 if test yes = "$_G_HAVE_XSI_OPS"
1956 then
1957 # This is an XSI compatible shell, allowing a faster implementation...
1958 eval 'func_split_short_opt ()
1959 {
1960 $debug_cmd
1961
1962 func_split_short_opt_arg=${1#??}
1963 func_split_short_opt_name=${1%"$func_split_short_opt_arg"}
1964 }'
1965 else
1966 # ...otherwise fall back to using expr, which is often a shell builtin.
1967 func_split_short_opt ()
1968 {
1969 $debug_cmd
1970
1971 func_split_short_opt_name=`expr "x$1" : 'x-\(.\)'`
1972 func_split_short_opt_arg=`expr "x$1" : 'x-.\(.*\)$'`
1973 }
1974 fi #func_split_short_opt
1975
1976
1977 # func_usage
1978 # ----------
1979 # Echo short help message to standard output and exit.
1980 func_usage ()
1981 {
1982 $debug_cmd
1983
1984 func_usage_message
1985 $ECHO "Run '$progname --help |${PAGER-more}' for full usage"
1986 exit 0
1987 }
1988
1989
1990 # func_usage_message
1991 # ------------------
1992 # Echo short help message to standard output.
1993 func_usage_message ()
1994 {
1995 $debug_cmd
1996
1997 eval \$ECHO \""Usage: $usage"\"
1998 echo
1999 $SED -n 's|^# ||
2000 /^Written by/{
2001 x;p;x
2002 }
2003 h
2004 /^Written by/q' < "$progpath"
2005 echo
2006 eval \$ECHO \""$usage_message"\"
2007 }
2008
2009
2010 # func_version
2011 # ------------
2012 # Echo version message to standard output and exit.
2013 func_version ()
2014 {
2015 $debug_cmd
2016
2017 printf '%s\n' "$progname $scriptversion"
2018 $SED -n '
2019 /(C)/!b go
2020 :more
2021 /\./!{
2022 N
2023 s|\n# | |
2024 b more
2025 }
2026 :go
2027 /^# Written by /,/# warranty; / {
2028 s|^# ||
2029 s|^# *$||
2030 s|\((C)\)[ 0-9,-]*[ ,-]\([1-9][0-9]* \)|\1 \2|
2031 p
2032 }
2033 /^# Written by / {
2034 s|^# ||
2035 p
2036 }
2037 /^warranty; /q' < "$progpath"
2038
2039 exit $?
2040 }
2041
2042
2043 # Local variables:
2044 # mode: shell-script
2045 # sh-indentation: 2
2046 # eval: (add-hook 'before-save-hook 'time-stamp)
2047 # time-stamp-pattern: "10/scriptversion=%:y-%02m-%02d.%02H; # UTC"
2048 # time-stamp-time-zone: "UTC"
2049 # End:
2050
2051 # Set a version string.
2052 scriptversion='(GNU libtool) 2.4.6'
2053
2054
2055 # func_echo ARG...
2056 # ----------------
2057 # Libtool also displays the current mode in messages, so override
2058 # funclib.sh func_echo with this custom definition.
2059 func_echo ()
2060 {
2061 $debug_cmd
2062
2063 _G_message=$*
2064
2065 func_echo_IFS=$IFS
2066 IFS=$nl
2067 for _G_line in $_G_message; do
2068 IFS=$func_echo_IFS
2069 $ECHO "$progname${opt_mode+: $opt_mode}: $_G_line"
2070 done
2071 IFS=$func_echo_IFS
2072 }
2073
2074
2075 # func_warning ARG...
2076 # -------------------
2077 # Libtool warnings are not categorized, so override funclib.sh
2078 # func_warning with this simpler definition.
2079 func_warning ()
2080 {
2081 $debug_cmd
2082
2083 $warning_func ${1+"$@"}
2084 }
2085
2086
2087 ## ---------------- ##
2088 ## Options parsing. ##
2089 ## ---------------- ##
2090
2091 # Hook in the functions to make sure our own options are parsed during
2092 # the option parsing loop.
2093
2094 usage='$progpath [OPTION]... [MODE-ARG]...'
2095
2096 # Short help message in response to '-h'.
2097 usage_message="Options:
2098 --config show all configuration variables
2099 --debug enable verbose shell tracing
2100 -n, --dry-run display commands without modifying any files
2101 --features display basic configuration information and exit
2102 --mode=MODE use operation mode MODE
2103 --no-warnings equivalent to '-Wnone'
2104 --preserve-dup-deps don't remove duplicate dependency libraries
2105 --quiet, --silent don't print informational messages
2106 --tag=TAG use configuration variables from tag TAG
2107 -v, --verbose print more informational messages than default
2108 --version print version information
2109 -W, --warnings=CATEGORY report the warnings falling in CATEGORY [all]
2110 -h, --help, --help-all print short, long, or detailed help message
2111 "
2112
2113 # Additional text appended to 'usage_message' in response to '--help'.
2114 func_help ()
2115 {
2116 $debug_cmd
2117
2118 func_usage_message
2119 $ECHO "$long_help_message
2120
2121 MODE must be one of the following:
2122
2123 clean remove files from the build directory
2124 compile compile a source file into a libtool object
2125 execute automatically set library path, then run a program
2126 finish complete the installation of libtool libraries
2127 install install libraries or executables
2128 link create a library or an executable
2129 uninstall remove libraries from an installed directory
2130
2131 MODE-ARGS vary depending on the MODE. When passed as first option,
2132 '--mode=MODE' may be abbreviated as 'MODE' or a unique abbreviation of that.
2133 Try '$progname --help --mode=MODE' for a more detailed description of MODE.
2134
2135 When reporting a bug, please describe a test case to reproduce it and
2136 include the following information:
2137
2138 host-triplet: $host
2139 shell: $SHELL
2140 compiler: $LTCC
2141 compiler flags: $LTCFLAGS
2142 linker: $LD (gnu? $with_gnu_ld)
2143 version: $progname $scriptversion Debian-2.4.6-14
2144 automake: `($AUTOMAKE --version) 2>/dev/null |$SED 1q`
2145 autoconf: `($AUTOCONF --version) 2>/dev/null |$SED 1q`
2146
2147 Report bugs to <bug-libtool@gnu.org>.
2148 GNU libtool home page: <http://www.gnu.org/s/libtool/>.
2149 General help using GNU software: <http://www.gnu.org/gethelp/>."
2150 exit 0
2151 }
2152
2153
2154 # func_lo2o OBJECT-NAME
2155 # ---------------------
2156 # Transform OBJECT-NAME from a '.lo' suffix to the platform specific
2157 # object suffix.
2158
2159 lo2o=s/\\.lo\$/.$objext/
2160 o2lo=s/\\.$objext\$/.lo/
2161
2162 if test yes = "$_G_HAVE_XSI_OPS"; then
2163 eval 'func_lo2o ()
2164 {
2165 case $1 in
2166 *.lo) func_lo2o_result=${1%.lo}.$objext ;;
2167 * ) func_lo2o_result=$1 ;;
2168 esac
2169 }'
2170
2171 # func_xform LIBOBJ-OR-SOURCE
2172 # ---------------------------
2173 # Transform LIBOBJ-OR-SOURCE from a '.o' or '.c' (or otherwise)
2174 # suffix to a '.lo' libtool-object suffix.
2175 eval 'func_xform ()
2176 {
2177 func_xform_result=${1%.*}.lo
2178 }'
2179 else
2180 # ...otherwise fall back to using sed.
2181 func_lo2o ()
2182 {
2183 func_lo2o_result=`$ECHO "$1" | $SED "$lo2o"`
2184 }
2185
2186 func_xform ()
2187 {
2188 func_xform_result=`$ECHO "$1" | $SED 's|\.[^.]*$|.lo|'`
2189 }
2190 fi
2191
2192
2193 # func_fatal_configuration ARG...
2194 # -------------------------------
2195 # Echo program name prefixed message to standard error, followed by
2196 # a configuration failure hint, and exit.
2197 func_fatal_configuration ()
2198 {
2199 func__fatal_error ${1+"$@"} \
2200 "See the $PACKAGE documentation for more information." \
2201 "Fatal configuration error."
2202 }
2203
2204
2205 # func_config
2206 # -----------
2207 # Display the configuration for all the tags in this script.
2208 func_config ()
2209 {
2210 re_begincf='^# ### BEGIN LIBTOOL'
2211 re_endcf='^# ### END LIBTOOL'
2212
2213 # Default configuration.
2214 $SED "1,/$re_begincf CONFIG/d;/$re_endcf CONFIG/,\$d" < "$progpath"
2215
2216 # Now print the configurations for the tags.
2217 for tagname in $taglist; do
2218 $SED -n "/$re_begincf TAG CONFIG: $tagname\$/,/$re_endcf TAG CONFIG: $tagname\$/p" < "$progpath"
2219 done
2220
2221 exit $?
2222 }
2223
2224
2225 # func_features
2226 # -------------
2227 # Display the features supported by this script.
2228 func_features ()
2229 {
2230 echo "host: $host"
2231 if test yes = "$build_libtool_libs"; then
2232 echo "enable shared libraries"
2233 else
2234 echo "disable shared libraries"
2235 fi
2236 if test yes = "$build_old_libs"; then
2237 echo "enable static libraries"
2238 else
2239 echo "disable static libraries"
2240 fi
2241
2242 exit $?
2243 }
2244
2245
2246 # func_enable_tag TAGNAME
2247 # -----------------------
2248 # Verify that TAGNAME is valid, and either flag an error and exit, or
2249 # enable the TAGNAME tag. We also add TAGNAME to the global $taglist
2250 # variable here.
2251 func_enable_tag ()
2252 {
2253 # Global variable:
2254 tagname=$1
2255
2256 re_begincf="^# ### BEGIN LIBTOOL TAG CONFIG: $tagname\$"
2257 re_endcf="^# ### END LIBTOOL TAG CONFIG: $tagname\$"
2258 sed_extractcf=/$re_begincf/,/$re_endcf/p
2259
2260 # Validate tagname.
2261 case $tagname in
2262 *[!-_A-Za-z0-9,/]*)
2263 func_fatal_error "invalid tag name: $tagname"
2264 ;;
2265 esac
2266
2267 # Don't test for the "default" C tag, as we know it's
2268 # there but not specially marked.
2269 case $tagname in
2270 CC) ;;
2271 *)
2272 if $GREP "$re_begincf" "$progpath" >/dev/null 2>&1; then
2273 taglist="$taglist $tagname"
2274
2275 # Evaluate the configuration. Be careful to quote the path
2276 # and the sed script, to avoid splitting on whitespace, but
2277 # also don't use non-portable quotes within backquotes within
2278 # quotes we have to do it in 2 steps:
2279 extractedcf=`$SED -n -e "$sed_extractcf" < "$progpath"`
2280 eval "$extractedcf"
2281 else
2282 func_error "ignoring unknown tag $tagname"
2283 fi
2284 ;;
2285 esac
2286 }
2287
2288
2289 # func_check_version_match
2290 # ------------------------
2291 # Ensure that we are using m4 macros, and libtool script from the same
2292 # release of libtool.
2293 func_check_version_match ()
2294 {
2295 if test "$package_revision" != "$macro_revision"; then
2296 if test "$VERSION" != "$macro_version"; then
2297 if test -z "$macro_version"; then
2298 cat >&2 <<_LT_EOF
2299 $progname: Version mismatch error. This is $PACKAGE $VERSION, but the
2300 $progname: definition of this LT_INIT comes from an older release.
2301 $progname: You should recreate aclocal.m4 with macros from $PACKAGE $VERSION
2302 $progname: and run autoconf again.
2303 _LT_EOF
2304 else
2305 cat >&2 <<_LT_EOF
2306 $progname: Version mismatch error. This is $PACKAGE $VERSION, but the
2307 $progname: definition of this LT_INIT comes from $PACKAGE $macro_version.
2308 $progname: You should recreate aclocal.m4 with macros from $PACKAGE $VERSION
2309 $progname: and run autoconf again.
2310 _LT_EOF
2311 fi
2312 else
2313 cat >&2 <<_LT_EOF
2314 $progname: Version mismatch error. This is $PACKAGE $VERSION, revision $package_revision,
2315 $progname: but the definition of this LT_INIT comes from revision $macro_revision.
2316 $progname: You should recreate aclocal.m4 with macros from revision $package_revision
2317 $progname: of $PACKAGE $VERSION and run autoconf again.
2318 _LT_EOF
2319 fi
2320
2321 exit $EXIT_MISMATCH
2322 fi
2323 }
2324
2325
2326 # libtool_options_prep [ARG]...
2327 # -----------------------------
2328 # Preparation for options parsed by libtool.
2329 libtool_options_prep ()
2330 {
2331 $debug_mode
2332
2333 # Option defaults:
2334 opt_config=false
2335 opt_dlopen=
2336 opt_dry_run=false
2337 opt_help=false
2338 opt_mode=
2339 opt_preserve_dup_deps=false
2340 opt_quiet=false
2341
2342 nonopt=
2343 preserve_args=
2344
2345 _G_rc_lt_options_prep=:
2346
2347 # Shorthand for --mode=foo, only valid as the first argument
2348 case $1 in
2349 clean|clea|cle|cl)
2350 shift; set dummy --mode clean ${1+"$@"}; shift
2351 ;;
2352 compile|compil|compi|comp|com|co|c)
2353 shift; set dummy --mode compile ${1+"$@"}; shift
2354 ;;
2355 execute|execut|execu|exec|exe|ex|e)
2356 shift; set dummy --mode execute ${1+"$@"}; shift
2357 ;;
2358 finish|finis|fini|fin|fi|f)
2359 shift; set dummy --mode finish ${1+"$@"}; shift
2360 ;;
2361 install|instal|insta|inst|ins|in|i)
2362 shift; set dummy --mode install ${1+"$@"}; shift
2363 ;;
2364 link|lin|li|l)
2365 shift; set dummy --mode link ${1+"$@"}; shift
2366 ;;
2367 uninstall|uninstal|uninsta|uninst|unins|unin|uni|un|u)
2368 shift; set dummy --mode uninstall ${1+"$@"}; shift
2369 ;;
2370 *)
2371 _G_rc_lt_options_prep=false
2372 ;;
2373 esac
2374
2375 if $_G_rc_lt_options_prep; then
2376 # Pass back the list of options.
2377 func_quote_for_eval ${1+"$@"}
2378 libtool_options_prep_result=$func_quote_for_eval_result
2379 fi
2380
2381 $_G_rc_lt_options_prep
2382 }
2383 func_add_hook func_options_prep libtool_options_prep
2384
2385
2386 # libtool_parse_options [ARG]...
2387 # ---------------------------------
2388 # Provide handling for libtool specific options.
2389 libtool_parse_options ()
2390 {
2391 $debug_cmd
2392
2393 _G_rc_lt_parse_options=false
2394
2395 # Perform our own loop to consume as many options as possible in
2396 # each iteration.
2397 while test $# -gt 0; do
2398 _G_match_lt_parse_options=:
2399 _G_opt=$1
2400 shift
2401 case $_G_opt in
2402 --dry-run|--dryrun|-n)
2403 opt_dry_run=:
2404 ;;
2405
2406 --config) func_config ;;
2407
2408 --dlopen|-dlopen)
2409 opt_dlopen="${opt_dlopen+$opt_dlopen
2410 }$1"
2411 shift
2412 ;;
2413
2414 --preserve-dup-deps)
2415 opt_preserve_dup_deps=: ;;
2416
2417 --features) func_features ;;
2418
2419 --finish) set dummy --mode finish ${1+"$@"}; shift ;;
2420
2421 --help) opt_help=: ;;
2422
2423 --help-all) opt_help=': help-all' ;;
2424
2425 --mode) test $# = 0 && func_missing_arg $_G_opt && break
2426 opt_mode=$1
2427 case $1 in
2428 # Valid mode arguments:
2429 clean|compile|execute|finish|install|link|relink|uninstall) ;;
2430
2431 # Catch anything else as an error
2432 *) func_error "invalid argument for $_G_opt"
2433 exit_cmd=exit
2434 break
2435 ;;
2436 esac
2437 shift
2438 ;;
2439
2440 --no-silent|--no-quiet)
2441 opt_quiet=false
2442 func_append preserve_args " $_G_opt"
2443 ;;
2444
2445 --no-warnings|--no-warning|--no-warn)
2446 opt_warning=false
2447 func_append preserve_args " $_G_opt"
2448 ;;
2449
2450 --no-verbose)
2451 opt_verbose=false
2452 func_append preserve_args " $_G_opt"
2453 ;;
2454
2455 --silent|--quiet)
2456 opt_quiet=:
2457 opt_verbose=false
2458 func_append preserve_args " $_G_opt"
2459 ;;
2460
2461 --tag) test $# = 0 && func_missing_arg $_G_opt && break
2462 opt_tag=$1
2463 func_append preserve_args " $_G_opt $1"
2464 func_enable_tag "$1"
2465 shift
2466 ;;
2467
2468 --verbose|-v) opt_quiet=false
2469 opt_verbose=:
2470 func_append preserve_args " $_G_opt"
2471 ;;
2472
2473 # An option not handled by this hook function:
2474 *) set dummy "$_G_opt" ${1+"$@"} ; shift
2475 _G_match_lt_parse_options=false
2476 break
2477 ;;
2478 esac
2479 $_G_match_lt_parse_options && _G_rc_lt_parse_options=:
2480 done
2481
2482 if $_G_rc_lt_parse_options; then
2483 # save modified positional parameters for caller
2484 func_quote_for_eval ${1+"$@"}
2485 libtool_parse_options_result=$func_quote_for_eval_result
2486 fi
2487
2488 $_G_rc_lt_parse_options
2489 }
2490 func_add_hook func_parse_options libtool_parse_options
2491
2492
2493
2494 # libtool_validate_options [ARG]...
2495 # ---------------------------------
2496 # Perform any sanity checks on option settings and/or unconsumed
2497 # arguments.
2498 libtool_validate_options ()
2499 {
2500 # save first non-option argument
2501 if test 0 -lt $#; then
2502 nonopt=$1
2503 shift
2504 fi
2505
2506 # preserve --debug
2507 test : = "$debug_cmd" || func_append preserve_args " --debug"
2508
2509 case $host in
2510 # Solaris2 added to fix http://debbugs.gnu.org/cgi/bugreport.cgi?bug=16452
2511 # see also: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59788
2512 *cygwin* | *mingw* | *pw32* | *cegcc* | *solaris2* | *os2*)
2513 # don't eliminate duplications in $postdeps and $predeps
2514 opt_duplicate_compiler_generated_deps=:
2515 ;;
2516 *)
2517 opt_duplicate_compiler_generated_deps=$opt_preserve_dup_deps
2518 ;;
2519 esac
2520
2521 $opt_help || {
2522 # Sanity checks first:
2523 func_check_version_match
2524
2525 test yes != "$build_libtool_libs" \
2526 && test yes != "$build_old_libs" \
2527 && func_fatal_configuration "not configured to build any kind of library"
2528
2529 # Darwin sucks
2530 eval std_shrext=\"$shrext_cmds\"
2531
2532 # Only execute mode is allowed to have -dlopen flags.
2533 if test -n "$opt_dlopen" && test execute != "$opt_mode"; then
2534 func_error "unrecognized option '-dlopen'"
2535 $ECHO "$help" 1>&2
2536 exit $EXIT_FAILURE
2537 fi
2538
2539 # Change the help message to a mode-specific one.
2540 generic_help=$help
2541 help="Try '$progname --help --mode=$opt_mode' for more information."
2542 }
2543
2544 # Pass back the unparsed argument list
2545 func_quote_for_eval ${1+"$@"}
2546 libtool_validate_options_result=$func_quote_for_eval_result
2547 }
2548 func_add_hook func_validate_options libtool_validate_options
2549
2550
2551 # Process options as early as possible so that --help and --version
2552 # can return quickly.
2553 func_options ${1+"$@"}
2554 eval set dummy "$func_options_result"; shift
2555
2556
2557
2558 ## ----------- ##
2559 ## Main. ##
2560 ## ----------- ##
2561
2562 magic='%%%MAGIC variable%%%'
2563 magic_exe='%%%MAGIC EXE variable%%%'
2564
2565 # Global variables.
2566 extracted_archives=
2567 extracted_serial=0
2568
2569 # If this variable is set in any of the actions, the command in it
2570 # will be execed at the end. This prevents here-documents from being
2571 # left over by shells.
2572 exec_cmd=
2573
2574
2575 # A function that is used when there is no print builtin or printf.
2576 func_fallback_echo ()
2577 {
2578 eval 'cat <<_LTECHO_EOF
2579 $1
2580 _LTECHO_EOF'
2581 }
2582
2583 # func_generated_by_libtool
2584 # True iff stdin has been generated by Libtool. This function is only
2585 # a basic sanity check; it will hardly flush out determined imposters.
2586 func_generated_by_libtool_p ()
2587 {
2588 $GREP "^# Generated by .*$PACKAGE" > /dev/null 2>&1
2589 }
2590
2591 # func_lalib_p file
2592 # True iff FILE is a libtool '.la' library or '.lo' object file.
2593 # This function is only a basic sanity check; it will hardly flush out
2594 # determined imposters.
2595 func_lalib_p ()
2596 {
2597 test -f "$1" &&
2598 $SED -e 4q "$1" 2>/dev/null | func_generated_by_libtool_p
2599 }
2600
2601 # func_lalib_unsafe_p file
2602 # True iff FILE is a libtool '.la' library or '.lo' object file.
2603 # This function implements the same check as func_lalib_p without
2604 # resorting to external programs. To this end, it redirects stdin and
2605 # closes it afterwards, without saving the original file descriptor.
2606 # As a safety measure, use it only where a negative result would be
2607 # fatal anyway. Works if 'file' does not exist.
2608 func_lalib_unsafe_p ()
2609 {
2610 lalib_p=no
2611 if test -f "$1" && test -r "$1" && exec 5<&0 <"$1"; then
2612 for lalib_p_l in 1 2 3 4
2613 do
2614 read lalib_p_line
2615 case $lalib_p_line in
2616 \#\ Generated\ by\ *$PACKAGE* ) lalib_p=yes; break;;
2617 esac
2618 done
2619 exec 0<&5 5<&-
2620 fi
2621 test yes = "$lalib_p"
2622 }
2623
2624 # func_ltwrapper_script_p file
2625 # True iff FILE is a libtool wrapper script
2626 # This function is only a basic sanity check; it will hardly flush out
2627 # determined imposters.
2628 func_ltwrapper_script_p ()
2629 {
2630 test -f "$1" &&
2631 $lt_truncate_bin < "$1" 2>/dev/null | func_generated_by_libtool_p
2632 }
2633
2634 # func_ltwrapper_executable_p file
2635 # True iff FILE is a libtool wrapper executable
2636 # This function is only a basic sanity check; it will hardly flush out
2637 # determined imposters.
2638 func_ltwrapper_executable_p ()
2639 {
2640 func_ltwrapper_exec_suffix=
2641 case $1 in
2642 *.exe) ;;
2643 *) func_ltwrapper_exec_suffix=.exe ;;
2644 esac
2645 $GREP "$magic_exe" "$1$func_ltwrapper_exec_suffix" >/dev/null 2>&1
2646 }
2647
2648 # func_ltwrapper_scriptname file
2649 # Assumes file is an ltwrapper_executable
2650 # uses $file to determine the appropriate filename for a
2651 # temporary ltwrapper_script.
2652 func_ltwrapper_scriptname ()
2653 {
2654 func_dirname_and_basename "$1" "" "."
2655 func_stripname '' '.exe' "$func_basename_result"
2656 func_ltwrapper_scriptname_result=$func_dirname_result/$objdir/${func_stripname_result}_ltshwrapper
2657 }
2658
2659 # func_ltwrapper_p file
2660 # True iff FILE is a libtool wrapper script or wrapper executable
2661 # This function is only a basic sanity check; it will hardly flush out
2662 # determined imposters.
2663 func_ltwrapper_p ()
2664 {
2665 func_ltwrapper_script_p "$1" || func_ltwrapper_executable_p "$1"
2666 }
2667
2668
2669 # func_execute_cmds commands fail_cmd
2670 # Execute tilde-delimited COMMANDS.
2671 # If FAIL_CMD is given, eval that upon failure.
2672 # FAIL_CMD may read-access the current command in variable CMD!
2673 func_execute_cmds ()
2674 {
2675 $debug_cmd
2676
2677 save_ifs=$IFS; IFS='~'
2678 for cmd in $1; do
2679 IFS=$sp$nl
2680 eval cmd=\"$cmd\"
2681 IFS=$save_ifs
2682 func_show_eval "$cmd" "${2-:}"
2683 done
2684 IFS=$save_ifs
2685 }
2686
2687
2688 # func_source file
2689 # Source FILE, adding directory component if necessary.
2690 # Note that it is not necessary on cygwin/mingw to append a dot to
2691 # FILE even if both FILE and FILE.exe exist: automatic-append-.exe
2692 # behavior happens only for exec(3), not for open(2)! Also, sourcing
2693 # 'FILE.' does not work on cygwin managed mounts.
2694 func_source ()
2695 {
2696 $debug_cmd
2697
2698 case $1 in
2699 */* | *\\*) . "$1" ;;
2700 *) . "./$1" ;;
2701 esac
2702 }
2703
2704
2705 # func_resolve_sysroot PATH
2706 # Replace a leading = in PATH with a sysroot. Store the result into
2707 # func_resolve_sysroot_result
2708 func_resolve_sysroot ()
2709 {
2710 func_resolve_sysroot_result=$1
2711 case $func_resolve_sysroot_result in
2712 =*)
2713 func_stripname '=' '' "$func_resolve_sysroot_result"
2714 func_resolve_sysroot_result=$lt_sysroot$func_stripname_result
2715 ;;
2716 esac
2717 }
2718
2719 # func_replace_sysroot PATH
2720 # If PATH begins with the sysroot, replace it with = and
2721 # store the result into func_replace_sysroot_result.
2722 func_replace_sysroot ()
2723 {
2724 case $lt_sysroot:$1 in
2725 ?*:"$lt_sysroot"*)
2726 func_stripname "$lt_sysroot" '' "$1"
2727 func_replace_sysroot_result='='$func_stripname_result
2728 ;;
2729 *)
2730 # Including no sysroot.
2731 func_replace_sysroot_result=$1
2732 ;;
2733 esac
2734 }
2735
2736 # func_infer_tag arg
2737 # Infer tagged configuration to use if any are available and
2738 # if one wasn't chosen via the "--tag" command line option.
2739 # Only attempt this if the compiler in the base compile
2740 # command doesn't match the default compiler.
2741 # arg is usually of the form 'gcc ...'
2742 func_infer_tag ()
2743 {
2744 $debug_cmd
2745
2746 if test -n "$available_tags" && test -z "$tagname"; then
2747 CC_quoted=
2748 for arg in $CC; do
2749 func_append_quoted CC_quoted "$arg"
2750 done
2751 CC_expanded=`func_echo_all $CC`
2752 CC_quoted_expanded=`func_echo_all $CC_quoted`
2753 case $@ in
2754 # Blanks in the command may have been stripped by the calling shell,
2755 # but not from the CC environment variable when configure was run.
2756 " $CC "* | "$CC "* | " $CC_expanded "* | "$CC_expanded "* | \
2757 " $CC_quoted"* | "$CC_quoted "* | " $CC_quoted_expanded "* | "$CC_quoted_expanded "*) ;;
2758 # Blanks at the start of $base_compile will cause this to fail
2759 # if we don't check for them as well.
2760 *)
2761 for z in $available_tags; do
2762 if $GREP "^# ### BEGIN LIBTOOL TAG CONFIG: $z$" < "$progpath" > /dev/null; then
2763 # Evaluate the configuration.
2764 eval "`$SED -n -e '/^# ### BEGIN LIBTOOL TAG CONFIG: '$z'$/,/^# ### END LIBTOOL TAG CONFIG: '$z'$/p' < $progpath`"
2765 CC_quoted=
2766 for arg in $CC; do
2767 # Double-quote args containing other shell metacharacters.
2768 func_append_quoted CC_quoted "$arg"
2769 done
2770 CC_expanded=`func_echo_all $CC`
2771 CC_quoted_expanded=`func_echo_all $CC_quoted`
2772 case "$@ " in
2773 " $CC "* | "$CC "* | " $CC_expanded "* | "$CC_expanded "* | \
2774 " $CC_quoted"* | "$CC_quoted "* | " $CC_quoted_expanded "* | "$CC_quoted_expanded "*)
2775 # The compiler in the base compile command matches
2776 # the one in the tagged configuration.
2777 # Assume this is the tagged configuration we want.
2778 tagname=$z
2779 break
2780 ;;
2781 esac
2782 fi
2783 done
2784 # If $tagname still isn't set, then no tagged configuration
2785 # was found and let the user know that the "--tag" command
2786 # line option must be used.
2787 if test -z "$tagname"; then
2788 func_echo "unable to infer tagged configuration"
2789 func_fatal_error "specify a tag with '--tag'"
2790 # else
2791 # func_verbose "using $tagname tagged configuration"
2792 fi
2793 ;;
2794 esac
2795 fi
2796 }
2797
2798
2799
2800 # func_write_libtool_object output_name pic_name nonpic_name
2801 # Create a libtool object file (analogous to a ".la" file),
2802 # but don't create it if we're doing a dry run.
2803 func_write_libtool_object ()
2804 {
2805 write_libobj=$1
2806 if test yes = "$build_libtool_libs"; then
2807 write_lobj=\'$2\'
2808 else
2809 write_lobj=none
2810 fi
2811
2812 if test yes = "$build_old_libs"; then
2813 write_oldobj=\'$3\'
2814 else
2815 write_oldobj=none
2816 fi
2817
2818 $opt_dry_run || {
2819 cat >${write_libobj}T <<EOF
2820 # $write_libobj - a libtool object file
2821 # Generated by $PROGRAM (GNU $PACKAGE) $VERSION
2822 #
2823 # Please DO NOT delete this file!
2824 # It is necessary for linking the library.
2825
2826 # Name of the PIC object.
2827 pic_object=$write_lobj
2828
2829 # Name of the non-PIC object
2830 non_pic_object=$write_oldobj
2831
2832 EOF
2833 $MV "${write_libobj}T" "$write_libobj"
2834 }
2835 }
2836
2837
2838 ##################################################
2839 # FILE NAME AND PATH CONVERSION HELPER FUNCTIONS #
2840 ##################################################
2841
2842 # func_convert_core_file_wine_to_w32 ARG
2843 # Helper function used by file name conversion functions when $build is *nix,
2844 # and $host is mingw, cygwin, or some other w32 environment. Relies on a
2845 # correctly configured wine environment available, with the winepath program
2846 # in $build's $PATH.
2847 #
2848 # ARG is the $build file name to be converted to w32 format.
2849 # Result is available in $func_convert_core_file_wine_to_w32_result, and will
2850 # be empty on error (or when ARG is empty)
2851 func_convert_core_file_wine_to_w32 ()
2852 {
2853 $debug_cmd
2854
2855 func_convert_core_file_wine_to_w32_result=$1
2856 if test -n "$1"; then
2857 # Unfortunately, winepath does not exit with a non-zero error code, so we
2858 # are forced to check the contents of stdout. On the other hand, if the
2859 # command is not found, the shell will set an exit code of 127 and print
2860 # *an error message* to stdout. So we must check for both error code of
2861 # zero AND non-empty stdout, which explains the odd construction:
2862 func_convert_core_file_wine_to_w32_tmp=`winepath -w "$1" 2>/dev/null`
2863 if test "$?" -eq 0 && test -n "$func_convert_core_file_wine_to_w32_tmp"; then
2864 func_convert_core_file_wine_to_w32_result=`$ECHO "$func_convert_core_file_wine_to_w32_tmp" |
2865 $SED -e "$sed_naive_backslashify"`
2866 else
2867 func_convert_core_file_wine_to_w32_result=
2868 fi
2869 fi
2870 }
2871 # end: func_convert_core_file_wine_to_w32
2872
2873
2874 # func_convert_core_path_wine_to_w32 ARG
2875 # Helper function used by path conversion functions when $build is *nix, and
2876 # $host is mingw, cygwin, or some other w32 environment. Relies on a correctly
2877 # configured wine environment available, with the winepath program in $build's
2878 # $PATH. Assumes ARG has no leading or trailing path separator characters.
2879 #
2880 # ARG is path to be converted from $build format to win32.
2881 # Result is available in $func_convert_core_path_wine_to_w32_result.
2882 # Unconvertible file (directory) names in ARG are skipped; if no directory names
2883 # are convertible, then the result may be empty.
2884 func_convert_core_path_wine_to_w32 ()
2885 {
2886 $debug_cmd
2887
2888 # unfortunately, winepath doesn't convert paths, only file names
2889 func_convert_core_path_wine_to_w32_result=
2890 if test -n "$1"; then
2891 oldIFS=$IFS
2892 IFS=:
2893 for func_convert_core_path_wine_to_w32_f in $1; do
2894 IFS=$oldIFS
2895 func_convert_core_file_wine_to_w32 "$func_convert_core_path_wine_to_w32_f"
2896 if test -n "$func_convert_core_file_wine_to_w32_result"; then
2897 if test -z "$func_convert_core_path_wine_to_w32_result"; then
2898 func_convert_core_path_wine_to_w32_result=$func_convert_core_file_wine_to_w32_result
2899 else
2900 func_append func_convert_core_path_wine_to_w32_result ";$func_convert_core_file_wine_to_w32_result"
2901 fi
2902 fi
2903 done
2904 IFS=$oldIFS
2905 fi
2906 }
2907 # end: func_convert_core_path_wine_to_w32
2908
2909
2910 # func_cygpath ARGS...
2911 # Wrapper around calling the cygpath program via LT_CYGPATH. This is used when
2912 # when (1) $build is *nix and Cygwin is hosted via a wine environment; or (2)
2913 # $build is MSYS and $host is Cygwin, or (3) $build is Cygwin. In case (1) or
2914 # (2), returns the Cygwin file name or path in func_cygpath_result (input
2915 # file name or path is assumed to be in w32 format, as previously converted
2916 # from $build's *nix or MSYS format). In case (3), returns the w32 file name
2917 # or path in func_cygpath_result (input file name or path is assumed to be in
2918 # Cygwin format). Returns an empty string on error.
2919 #
2920 # ARGS are passed to cygpath, with the last one being the file name or path to
2921 # be converted.
2922 #
2923 # Specify the absolute *nix (or w32) name to cygpath in the LT_CYGPATH
2924 # environment variable; do not put it in $PATH.
2925 func_cygpath ()
2926 {
2927 $debug_cmd
2928
2929 if test -n "$LT_CYGPATH" && test -f "$LT_CYGPATH"; then
2930 func_cygpath_result=`$LT_CYGPATH "$@" 2>/dev/null`
2931 if test "$?" -ne 0; then
2932 # on failure, ensure result is empty
2933 func_cygpath_result=
2934 fi
2935 else
2936 func_cygpath_result=
2937 func_error "LT_CYGPATH is empty or specifies non-existent file: '$LT_CYGPATH'"
2938 fi
2939 }
2940 #end: func_cygpath
2941
2942
2943 # func_convert_core_msys_to_w32 ARG
2944 # Convert file name or path ARG from MSYS format to w32 format. Return
2945 # result in func_convert_core_msys_to_w32_result.
2946 func_convert_core_msys_to_w32 ()
2947 {
2948 $debug_cmd
2949
2950 # awkward: cmd appends spaces to result
2951 func_convert_core_msys_to_w32_result=`( cmd //c echo "$1" ) 2>/dev/null |
2952 $SED -e 's/[ ]*$//' -e "$sed_naive_backslashify"`
2953 }
2954 #end: func_convert_core_msys_to_w32
2955
2956
2957 # func_convert_file_check ARG1 ARG2
2958 # Verify that ARG1 (a file name in $build format) was converted to $host
2959 # format in ARG2. Otherwise, emit an error message, but continue (resetting
2960 # func_to_host_file_result to ARG1).
2961 func_convert_file_check ()
2962 {
2963 $debug_cmd
2964
2965 if test -z "$2" && test -n "$1"; then
2966 func_error "Could not determine host file name corresponding to"
2967 func_error " '$1'"
2968 func_error "Continuing, but uninstalled executables may not work."
2969 # Fallback:
2970 func_to_host_file_result=$1
2971 fi
2972 }
2973 # end func_convert_file_check
2974
2975
2976 # func_convert_path_check FROM_PATHSEP TO_PATHSEP FROM_PATH TO_PATH
2977 # Verify that FROM_PATH (a path in $build format) was converted to $host
2978 # format in TO_PATH. Otherwise, emit an error message, but continue, resetting
2979 # func_to_host_file_result to a simplistic fallback value (see below).
2980 func_convert_path_check ()
2981 {
2982 $debug_cmd
2983
2984 if test -z "$4" && test -n "$3"; then
2985 func_error "Could not determine the host path corresponding to"
2986 func_error " '$3'"
2987 func_error "Continuing, but uninstalled executables may not work."
2988 # Fallback. This is a deliberately simplistic "conversion" and
2989 # should not be "improved". See libtool.info.
2990 if test "x$1" != "x$2"; then
2991 lt_replace_pathsep_chars="s|$1|$2|g"
2992 func_to_host_path_result=`echo "$3" |
2993 $SED -e "$lt_replace_pathsep_chars"`
2994 else
2995 func_to_host_path_result=$3
2996 fi
2997 fi
2998 }
2999 # end func_convert_path_check
3000
3001
3002 # func_convert_path_front_back_pathsep FRONTPAT BACKPAT REPL ORIG
3003 # Modifies func_to_host_path_result by prepending REPL if ORIG matches FRONTPAT
3004 # and appending REPL if ORIG matches BACKPAT.
3005 func_convert_path_front_back_pathsep ()
3006 {
3007 $debug_cmd
3008
3009 case $4 in
3010 $1 ) func_to_host_path_result=$3$func_to_host_path_result
3011 ;;
3012 esac
3013 case $4 in
3014 $2 ) func_append func_to_host_path_result "$3"
3015 ;;
3016 esac
3017 }
3018 # end func_convert_path_front_back_pathsep
3019
3020
3021 ##################################################
3022 # $build to $host FILE NAME CONVERSION FUNCTIONS #
3023 ##################################################
3024 # invoked via '$to_host_file_cmd ARG'
3025 #
3026 # In each case, ARG is the path to be converted from $build to $host format.
3027 # Result will be available in $func_to_host_file_result.
3028
3029
3030 # func_to_host_file ARG
3031 # Converts the file name ARG from $build format to $host format. Return result
3032 # in func_to_host_file_result.
3033 func_to_host_file ()
3034 {
3035 $debug_cmd
3036
3037 $to_host_file_cmd "$1"
3038 }
3039 # end func_to_host_file
3040
3041
3042 # func_to_tool_file ARG LAZY
3043 # converts the file name ARG from $build format to toolchain format. Return
3044 # result in func_to_tool_file_result. If the conversion in use is listed
3045 # in (the comma separated) LAZY, no conversion takes place.
3046 func_to_tool_file ()
3047 {
3048 $debug_cmd
3049
3050 case ,$2, in
3051 *,"$to_tool_file_cmd",*)
3052 func_to_tool_file_result=$1
3053 ;;
3054 *)
3055 $to_tool_file_cmd "$1"
3056 func_to_tool_file_result=$func_to_host_file_result
3057 ;;
3058 esac
3059 }
3060 # end func_to_tool_file
3061
3062
3063 # func_convert_file_noop ARG
3064 # Copy ARG to func_to_host_file_result.
3065 func_convert_file_noop ()
3066 {
3067 func_to_host_file_result=$1
3068 }
3069 # end func_convert_file_noop
3070
3071
3072 # func_convert_file_msys_to_w32 ARG
3073 # Convert file name ARG from (mingw) MSYS to (mingw) w32 format; automatic
3074 # conversion to w32 is not available inside the cwrapper. Returns result in
3075 # func_to_host_file_result.
3076 func_convert_file_msys_to_w32 ()
3077 {
3078 $debug_cmd
3079
3080 func_to_host_file_result=$1
3081 if test -n "$1"; then
3082 func_convert_core_msys_to_w32 "$1"
3083 func_to_host_file_result=$func_convert_core_msys_to_w32_result
3084 fi
3085 func_convert_file_check "$1" "$func_to_host_file_result"
3086 }
3087 # end func_convert_file_msys_to_w32
3088
3089
3090 # func_convert_file_cygwin_to_w32 ARG
3091 # Convert file name ARG from Cygwin to w32 format. Returns result in
3092 # func_to_host_file_result.
3093 func_convert_file_cygwin_to_w32 ()
3094 {
3095 $debug_cmd
3096
3097 func_to_host_file_result=$1
3098 if test -n "$1"; then
3099 # because $build is cygwin, we call "the" cygpath in $PATH; no need to use
3100 # LT_CYGPATH in this case.
3101 func_to_host_file_result=`cygpath -m "$1"`
3102 fi
3103 func_convert_file_check "$1" "$func_to_host_file_result"
3104 }
3105 # end func_convert_file_cygwin_to_w32
3106
3107
3108 # func_convert_file_nix_to_w32 ARG
3109 # Convert file name ARG from *nix to w32 format. Requires a wine environment
3110 # and a working winepath. Returns result in func_to_host_file_result.
3111 func_convert_file_nix_to_w32 ()
3112 {
3113 $debug_cmd
3114
3115 func_to_host_file_result=$1
3116 if test -n "$1"; then
3117 func_convert_core_file_wine_to_w32 "$1"
3118 func_to_host_file_result=$func_convert_core_file_wine_to_w32_result
3119 fi
3120 func_convert_file_check "$1" "$func_to_host_file_result"
3121 }
3122 # end func_convert_file_nix_to_w32
3123
3124
3125 # func_convert_file_msys_to_cygwin ARG
3126 # Convert file name ARG from MSYS to Cygwin format. Requires LT_CYGPATH set.
3127 # Returns result in func_to_host_file_result.
3128 func_convert_file_msys_to_cygwin ()
3129 {
3130 $debug_cmd
3131
3132 func_to_host_file_result=$1
3133 if test -n "$1"; then
3134 func_convert_core_msys_to_w32 "$1"
3135 func_cygpath -u "$func_convert_core_msys_to_w32_result"
3136 func_to_host_file_result=$func_cygpath_result
3137 fi
3138 func_convert_file_check "$1" "$func_to_host_file_result"
3139 }
3140 # end func_convert_file_msys_to_cygwin
3141
3142
3143 # func_convert_file_nix_to_cygwin ARG
3144 # Convert file name ARG from *nix to Cygwin format. Requires Cygwin installed
3145 # in a wine environment, working winepath, and LT_CYGPATH set. Returns result
3146 # in func_to_host_file_result.
3147 func_convert_file_nix_to_cygwin ()
3148 {
3149 $debug_cmd
3150
3151 func_to_host_file_result=$1
3152 if test -n "$1"; then
3153 # convert from *nix to w32, then use cygpath to convert from w32 to cygwin.
3154 func_convert_core_file_wine_to_w32 "$1"
3155 func_cygpath -u "$func_convert_core_file_wine_to_w32_result"
3156 func_to_host_file_result=$func_cygpath_result
3157 fi
3158 func_convert_file_check "$1" "$func_to_host_file_result"
3159 }
3160 # end func_convert_file_nix_to_cygwin
3161
3162
3163 #############################################
3164 # $build to $host PATH CONVERSION FUNCTIONS #
3165 #############################################
3166 # invoked via '$to_host_path_cmd ARG'
3167 #
3168 # In each case, ARG is the path to be converted from $build to $host format.
3169 # The result will be available in $func_to_host_path_result.
3170 #
3171 # Path separators are also converted from $build format to $host format. If
3172 # ARG begins or ends with a path separator character, it is preserved (but
3173 # converted to $host format) on output.
3174 #
3175 # All path conversion functions are named using the following convention:
3176 # file name conversion function : func_convert_file_X_to_Y ()
3177 # path conversion function : func_convert_path_X_to_Y ()
3178 # where, for any given $build/$host combination the 'X_to_Y' value is the
3179 # same. If conversion functions are added for new $build/$host combinations,
3180 # the two new functions must follow this pattern, or func_init_to_host_path_cmd
3181 # will break.
3182
3183
3184 # func_init_to_host_path_cmd
3185 # Ensures that function "pointer" variable $to_host_path_cmd is set to the
3186 # appropriate value, based on the value of $to_host_file_cmd.
3187 to_host_path_cmd=
3188 func_init_to_host_path_cmd ()
3189 {
3190 $debug_cmd
3191
3192 if test -z "$to_host_path_cmd"; then
3193 func_stripname 'func_convert_file_' '' "$to_host_file_cmd"
3194 to_host_path_cmd=func_convert_path_$func_stripname_result
3195 fi
3196 }
3197
3198
3199 # func_to_host_path ARG
3200 # Converts the path ARG from $build format to $host format. Return result
3201 # in func_to_host_path_result.
3202 func_to_host_path ()
3203 {
3204 $debug_cmd
3205
3206 func_init_to_host_path_cmd
3207 $to_host_path_cmd "$1"
3208 }
3209 # end func_to_host_path
3210
3211
3212 # func_convert_path_noop ARG
3213 # Copy ARG to func_to_host_path_result.
3214 func_convert_path_noop ()
3215 {
3216 func_to_host_path_result=$1
3217 }
3218 # end func_convert_path_noop
3219
3220
3221 # func_convert_path_msys_to_w32 ARG
3222 # Convert path ARG from (mingw) MSYS to (mingw) w32 format; automatic
3223 # conversion to w32 is not available inside the cwrapper. Returns result in
3224 # func_to_host_path_result.
3225 func_convert_path_msys_to_w32 ()
3226 {
3227 $debug_cmd
3228
3229 func_to_host_path_result=$1
3230 if test -n "$1"; then
3231 # Remove leading and trailing path separator characters from ARG. MSYS
3232 # behavior is inconsistent here; cygpath turns them into '.;' and ';.';
3233 # and winepath ignores them completely.
3234 func_stripname : : "$1"
3235 func_to_host_path_tmp1=$func_stripname_result
3236 func_convert_core_msys_to_w32 "$func_to_host_path_tmp1"
3237 func_to_host_path_result=$func_convert_core_msys_to_w32_result
3238 func_convert_path_check : ";" \
3239 "$func_to_host_path_tmp1" "$func_to_host_path_result"
3240 func_convert_path_front_back_pathsep ":*" "*:" ";" "$1"
3241 fi
3242 }
3243 # end func_convert_path_msys_to_w32
3244
3245
3246 # func_convert_path_cygwin_to_w32 ARG
3247 # Convert path ARG from Cygwin to w32 format. Returns result in
3248 # func_to_host_file_result.
3249 func_convert_path_cygwin_to_w32 ()
3250 {
3251 $debug_cmd
3252
3253 func_to_host_path_result=$1
3254 if test -n "$1"; then
3255 # See func_convert_path_msys_to_w32:
3256 func_stripname : : "$1"
3257 func_to_host_path_tmp1=$func_stripname_result
3258 func_to_host_path_result=`cygpath -m -p "$func_to_host_path_tmp1"`
3259 func_convert_path_check : ";" \
3260 "$func_to_host_path_tmp1" "$func_to_host_path_result"
3261 func_convert_path_front_back_pathsep ":*" "*:" ";" "$1"
3262 fi
3263 }
3264 # end func_convert_path_cygwin_to_w32
3265
3266
3267 # func_convert_path_nix_to_w32 ARG
3268 # Convert path ARG from *nix to w32 format. Requires a wine environment and
3269 # a working winepath. Returns result in func_to_host_file_result.
3270 func_convert_path_nix_to_w32 ()
3271 {
3272 $debug_cmd
3273
3274 func_to_host_path_result=$1
3275 if test -n "$1"; then
3276 # See func_convert_path_msys_to_w32:
3277 func_stripname : : "$1"
3278 func_to_host_path_tmp1=$func_stripname_result
3279 func_convert_core_path_wine_to_w32 "$func_to_host_path_tmp1"
3280 func_to_host_path_result=$func_convert_core_path_wine_to_w32_result
3281 func_convert_path_check : ";" \
3282 "$func_to_host_path_tmp1" "$func_to_host_path_result"
3283 func_convert_path_front_back_pathsep ":*" "*:" ";" "$1"
3284 fi
3285 }
3286 # end func_convert_path_nix_to_w32
3287
3288
3289 # func_convert_path_msys_to_cygwin ARG
3290 # Convert path ARG from MSYS to Cygwin format. Requires LT_CYGPATH set.
3291 # Returns result in func_to_host_file_result.
3292 func_convert_path_msys_to_cygwin ()
3293 {
3294 $debug_cmd
3295
3296 func_to_host_path_result=$1
3297 if test -n "$1"; then
3298 # See func_convert_path_msys_to_w32:
3299 func_stripname : : "$1"
3300 func_to_host_path_tmp1=$func_stripname_result
3301 func_convert_core_msys_to_w32 "$func_to_host_path_tmp1"
3302 func_cygpath -u -p "$func_convert_core_msys_to_w32_result"
3303 func_to_host_path_result=$func_cygpath_result
3304 func_convert_path_check : : \
3305 "$func_to_host_path_tmp1" "$func_to_host_path_result"
3306 func_convert_path_front_back_pathsep ":*" "*:" : "$1"
3307 fi
3308 }
3309 # end func_convert_path_msys_to_cygwin
3310
3311
3312 # func_convert_path_nix_to_cygwin ARG
3313 # Convert path ARG from *nix to Cygwin format. Requires Cygwin installed in a
3314 # a wine environment, working winepath, and LT_CYGPATH set. Returns result in
3315 # func_to_host_file_result.
3316 func_convert_path_nix_to_cygwin ()
3317 {
3318 $debug_cmd
3319
3320 func_to_host_path_result=$1
3321 if test -n "$1"; then
3322 # Remove leading and trailing path separator characters from
3323 # ARG. msys behavior is inconsistent here, cygpath turns them
3324 # into '.;' and ';.', and winepath ignores them completely.
3325 func_stripname : : "$1"
3326 func_to_host_path_tmp1=$func_stripname_result
3327 func_convert_core_path_wine_to_w32 "$func_to_host_path_tmp1"
3328 func_cygpath -u -p "$func_convert_core_path_wine_to_w32_result"
3329 func_to_host_path_result=$func_cygpath_result
3330 func_convert_path_check : : \
3331 "$func_to_host_path_tmp1" "$func_to_host_path_result"
3332 func_convert_path_front_back_pathsep ":*" "*:" : "$1"
3333 fi
3334 }
3335 # end func_convert_path_nix_to_cygwin
3336
3337
3338 # func_dll_def_p FILE
3339 # True iff FILE is a Windows DLL '.def' file.
3340 # Keep in sync with _LT_DLL_DEF_P in libtool.m4
3341 func_dll_def_p ()
3342 {
3343 $debug_cmd
3344
3345 func_dll_def_p_tmp=`$SED -n \
3346 -e 's/^[ ]*//' \
3347 -e '/^\(;.*\)*$/d' \
3348 -e 's/^\(EXPORTS\|LIBRARY\)\([ ].*\)*$/DEF/p' \
3349 -e q \
3350 "$1"`
3351 test DEF = "$func_dll_def_p_tmp"
3352 }
3353
3354
3355 # func_mode_compile arg...
3356 func_mode_compile ()
3357 {
3358 $debug_cmd
3359
3360 # Get the compilation command and the source file.
3361 base_compile=
3362 srcfile=$nonopt # always keep a non-empty value in "srcfile"
3363 suppress_opt=yes
3364 suppress_output=
3365 arg_mode=normal
3366 libobj=
3367 later=
3368 pie_flag=
3369
3370 for arg
3371 do
3372 case $arg_mode in
3373 arg )
3374 # do not "continue". Instead, add this to base_compile
3375 lastarg=$arg
3376 arg_mode=normal
3377 ;;
3378
3379 target )
3380 libobj=$arg
3381 arg_mode=normal
3382 continue
3383 ;;
3384
3385 normal )
3386 # Accept any command-line options.
3387 case $arg in
3388 -o)
3389 test -n "$libobj" && \
3390 func_fatal_error "you cannot specify '-o' more than once"
3391 arg_mode=target
3392 continue
3393 ;;
3394
3395 -pie | -fpie | -fPIE)
3396 func_append pie_flag " $arg"
3397 continue
3398 ;;
3399
3400 -shared | -static | -prefer-pic | -prefer-non-pic)
3401 func_append later " $arg"
3402 continue
3403 ;;
3404
3405 -no-suppress)
3406 suppress_opt=no
3407 continue
3408 ;;
3409
3410 -Xcompiler)
3411 arg_mode=arg # the next one goes into the "base_compile" arg list
3412 continue # The current "srcfile" will either be retained or
3413 ;; # replaced later. I would guess that would be a bug.
3414
3415 -Wc,*)
3416 func_stripname '-Wc,' '' "$arg"
3417 args=$func_stripname_result
3418 lastarg=
3419 save_ifs=$IFS; IFS=,
3420 for arg in $args; do
3421 IFS=$save_ifs
3422 func_append_quoted lastarg "$arg"
3423 done
3424 IFS=$save_ifs
3425 func_stripname ' ' '' "$lastarg"
3426 lastarg=$func_stripname_result
3427
3428 # Add the arguments to base_compile.
3429 func_append base_compile " $lastarg"
3430 continue
3431 ;;
3432
3433 *)
3434 # Accept the current argument as the source file.
3435 # The previous "srcfile" becomes the current argument.
3436 #
3437 lastarg=$srcfile
3438 srcfile=$arg
3439 ;;
3440 esac # case $arg
3441 ;;
3442 esac # case $arg_mode
3443
3444 # Aesthetically quote the previous argument.
3445 func_append_quoted base_compile "$lastarg"
3446 done # for arg
3447
3448 case $arg_mode in
3449 arg)
3450 func_fatal_error "you must specify an argument for -Xcompile"
3451 ;;
3452 target)
3453 func_fatal_error "you must specify a target with '-o'"
3454 ;;
3455 *)
3456 # Get the name of the library object.
3457 test -z "$libobj" && {
3458 func_basename "$srcfile"
3459 libobj=$func_basename_result
3460 }
3461 ;;
3462 esac
3463
3464 # Recognize several different file suffixes.
3465 # If the user specifies -o file.o, it is replaced with file.lo
3466 case $libobj in
3467 *.[cCFSifmso] | \
3468 *.ada | *.adb | *.ads | *.asm | \
3469 *.c++ | *.cc | *.ii | *.class | *.cpp | *.cxx | \
3470 *.[fF][09]? | *.for | *.java | *.go | *.obj | *.sx | *.cu | *.cup)
3471 func_xform "$libobj"
3472 libobj=$func_xform_result
3473 ;;
3474 esac
3475
3476 case $libobj in
3477 *.lo) func_lo2o "$libobj"; obj=$func_lo2o_result ;;
3478 *)
3479 func_fatal_error "cannot determine name of library object from '$libobj'"
3480 ;;
3481 esac
3482
3483 func_infer_tag $base_compile
3484
3485 for arg in $later; do
3486 case $arg in
3487 -shared)
3488 test yes = "$build_libtool_libs" \
3489 || func_fatal_configuration "cannot build a shared library"
3490 build_old_libs=no
3491 continue
3492 ;;
3493
3494 -static)
3495 build_libtool_libs=no
3496 build_old_libs=yes
3497 continue
3498 ;;
3499
3500 -prefer-pic)
3501 pic_mode=yes
3502 continue
3503 ;;
3504
3505 -prefer-non-pic)
3506 pic_mode=no
3507 continue
3508 ;;
3509 esac
3510 done
3511
3512 func_quote_for_eval "$libobj"
3513 test "X$libobj" != "X$func_quote_for_eval_result" \
3514 && $ECHO "X$libobj" | $GREP '[]~#^*{};<>?"'"'"' &()|`$[]' \
3515 && func_warning "libobj name '$libobj' may not contain shell special characters."
3516 func_dirname_and_basename "$obj" "/" ""
3517 objname=$func_basename_result
3518 xdir=$func_dirname_result
3519 lobj=$xdir$objdir/$objname
3520
3521 test -z "$base_compile" && \
3522 func_fatal_help "you must specify a compilation command"
3523
3524 # Delete any leftover library objects.
3525 if test yes = "$build_old_libs"; then
3526 removelist="$obj $lobj $libobj ${libobj}T"
3527 else
3528 removelist="$lobj $libobj ${libobj}T"
3529 fi
3530
3531 # On Cygwin there's no "real" PIC flag so we must build both object types
3532 case $host_os in
3533 cygwin* | mingw* | pw32* | os2* | cegcc*)
3534 pic_mode=default
3535 ;;
3536 esac
3537 if test no = "$pic_mode" && test pass_all != "$deplibs_check_method"; then
3538 # non-PIC code in shared libraries is not supported
3539 pic_mode=default
3540 fi
3541
3542 # Calculate the filename of the output object if compiler does
3543 # not support -o with -c
3544 if test no = "$compiler_c_o"; then
3545 output_obj=`$ECHO "$srcfile" | $SED 's%^.*/%%; s%\.[^.]*$%%'`.$objext
3546 lockfile=$output_obj.lock
3547 else
3548 output_obj=
3549 need_locks=no
3550 lockfile=
3551 fi
3552
3553 # Lock this critical section if it is needed
3554 # We use this script file to make the link, it avoids creating a new file
3555 if test yes = "$need_locks"; then
3556 until $opt_dry_run || ln "$progpath" "$lockfile" 2>/dev/null; do
3557 func_echo "Waiting for $lockfile to be removed"
3558 sleep 2
3559 done
3560 elif test warn = "$need_locks"; then
3561 if test -f "$lockfile"; then
3562 $ECHO "\
3563 *** ERROR, $lockfile exists and contains:
3564 `cat $lockfile 2>/dev/null`
3565
3566 This indicates that another process is trying to use the same
3567 temporary object file, and libtool could not work around it because
3568 your compiler does not support '-c' and '-o' together. If you
3569 repeat this compilation, it may succeed, by chance, but you had better
3570 avoid parallel builds (make -j) in this platform, or get a better
3571 compiler."
3572
3573 $opt_dry_run || $RM $removelist
3574 exit $EXIT_FAILURE
3575 fi
3576 func_append removelist " $output_obj"
3577 $ECHO "$srcfile" > "$lockfile"
3578 fi
3579
3580 $opt_dry_run || $RM $removelist
3581 func_append removelist " $lockfile"
3582 trap '$opt_dry_run || $RM $removelist; exit $EXIT_FAILURE' 1 2 15
3583
3584 func_to_tool_file "$srcfile" func_convert_file_msys_to_w32
3585 srcfile=$func_to_tool_file_result
3586 func_quote_for_eval "$srcfile"
3587 qsrcfile=$func_quote_for_eval_result
3588
3589 # Only build a PIC object if we are building libtool libraries.
3590 if test yes = "$build_libtool_libs"; then
3591 # Without this assignment, base_compile gets emptied.
3592 fbsd_hideous_sh_bug=$base_compile
3593
3594 if test no != "$pic_mode"; then
3595 command="$base_compile $qsrcfile $pic_flag"
3596 else
3597 # Don't build PIC code
3598 command="$base_compile $qsrcfile"
3599 fi
3600
3601 func_mkdir_p "$xdir$objdir"
3602
3603 if test -z "$output_obj"; then
3604 # Place PIC objects in $objdir
3605 func_append command " -o $lobj"
3606 fi
3607
3608 func_show_eval_locale "$command" \
3609 'test -n "$output_obj" && $RM $removelist; exit $EXIT_FAILURE'
3610
3611 if test warn = "$need_locks" &&
3612 test "X`cat $lockfile 2>/dev/null`" != "X$srcfile"; then
3613 $ECHO "\
3614 *** ERROR, $lockfile contains:
3615 `cat $lockfile 2>/dev/null`
3616
3617 but it should contain:
3618 $srcfile
3619
3620 This indicates that another process is trying to use the same
3621 temporary object file, and libtool could not work around it because
3622 your compiler does not support '-c' and '-o' together. If you
3623 repeat this compilation, it may succeed, by chance, but you had better
3624 avoid parallel builds (make -j) in this platform, or get a better
3625 compiler."
3626
3627 $opt_dry_run || $RM $removelist
3628 exit $EXIT_FAILURE
3629 fi
3630
3631 # Just move the object if needed, then go on to compile the next one
3632 if test -n "$output_obj" && test "X$output_obj" != "X$lobj"; then
3633 func_show_eval '$MV "$output_obj" "$lobj"' \
3634 'error=$?; $opt_dry_run || $RM $removelist; exit $error'
3635 fi
3636
3637 # Allow error messages only from the first compilation.
3638 if test yes = "$suppress_opt"; then
3639 suppress_output=' >/dev/null 2>&1'
3640 fi
3641 fi
3642
3643 # Only build a position-dependent object if we build old libraries.
3644 if test yes = "$build_old_libs"; then
3645 if test yes != "$pic_mode"; then
3646 # Don't build PIC code
3647 command="$base_compile $qsrcfile$pie_flag"
3648 else
3649 command="$base_compile $qsrcfile $pic_flag"
3650 fi
3651 if test yes = "$compiler_c_o"; then
3652 func_append command " -o $obj"
3653 fi
3654
3655 # Suppress compiler output if we already did a PIC compilation.
3656 func_append command "$suppress_output"
3657 func_show_eval_locale "$command" \
3658 '$opt_dry_run || $RM $removelist; exit $EXIT_FAILURE'
3659
3660 if test warn = "$need_locks" &&
3661 test "X`cat $lockfile 2>/dev/null`" != "X$srcfile"; then
3662 $ECHO "\
3663 *** ERROR, $lockfile contains:
3664 `cat $lockfile 2>/dev/null`
3665
3666 but it should contain:
3667 $srcfile
3668
3669 This indicates that another process is trying to use the same
3670 temporary object file, and libtool could not work around it because
3671 your compiler does not support '-c' and '-o' together. If you
3672 repeat this compilation, it may succeed, by chance, but you had better
3673 avoid parallel builds (make -j) in this platform, or get a better
3674 compiler."
3675
3676 $opt_dry_run || $RM $removelist
3677 exit $EXIT_FAILURE
3678 fi
3679
3680 # Just move the object if needed
3681 if test -n "$output_obj" && test "X$output_obj" != "X$obj"; then
3682 func_show_eval '$MV "$output_obj" "$obj"' \
3683 'error=$?; $opt_dry_run || $RM $removelist; exit $error'
3684 fi
3685 fi
3686
3687 $opt_dry_run || {
3688 func_write_libtool_object "$libobj" "$objdir/$objname" "$objname"
3689
3690 # Unlock the critical section if it was locked
3691 if test no != "$need_locks"; then
3692 removelist=$lockfile
3693 $RM "$lockfile"
3694 fi
3695 }
3696
3697 exit $EXIT_SUCCESS
3698 }
3699
3700 $opt_help || {
3701 test compile = "$opt_mode" && func_mode_compile ${1+"$@"}
3702 }
3703
3704 func_mode_help ()
3705 {
3706 # We need to display help for each of the modes.
3707 case $opt_mode in
3708 "")
3709 # Generic help is extracted from the usage comments
3710 # at the start of this file.
3711 func_help
3712 ;;
3713
3714 clean)
3715 $ECHO \
3716 "Usage: $progname [OPTION]... --mode=clean RM [RM-OPTION]... FILE...
3717
3718 Remove files from the build directory.
3719
3720 RM is the name of the program to use to delete files associated with each FILE
3721 (typically '/bin/rm'). RM-OPTIONS are options (such as '-f') to be passed
3722 to RM.
3723
3724 If FILE is a libtool library, object or program, all the files associated
3725 with it are deleted. Otherwise, only FILE itself is deleted using RM."
3726 ;;
3727
3728 compile)
3729 $ECHO \
3730 "Usage: $progname [OPTION]... --mode=compile COMPILE-COMMAND... SOURCEFILE
3731
3732 Compile a source file into a libtool library object.
3733
3734 This mode accepts the following additional options:
3735
3736 -o OUTPUT-FILE set the output file name to OUTPUT-FILE
3737 -no-suppress do not suppress compiler output for multiple passes
3738 -prefer-pic try to build PIC objects only
3739 -prefer-non-pic try to build non-PIC objects only
3740 -shared do not build a '.o' file suitable for static linking
3741 -static only build a '.o' file suitable for static linking
3742 -Wc,FLAG pass FLAG directly to the compiler
3743
3744 COMPILE-COMMAND is a command to be used in creating a 'standard' object file
3745 from the given SOURCEFILE.
3746
3747 The output file name is determined by removing the directory component from
3748 SOURCEFILE, then substituting the C source code suffix '.c' with the
3749 library object suffix, '.lo'."
3750 ;;
3751
3752 execute)
3753 $ECHO \
3754 "Usage: $progname [OPTION]... --mode=execute COMMAND [ARGS]...
3755
3756 Automatically set library path, then run a program.
3757
3758 This mode accepts the following additional options:
3759
3760 -dlopen FILE add the directory containing FILE to the library path
3761
3762 This mode sets the library path environment variable according to '-dlopen'
3763 flags.
3764
3765 If any of the ARGS are libtool executable wrappers, then they are translated
3766 into their corresponding uninstalled binary, and any of their required library
3767 directories are added to the library path.
3768
3769 Then, COMMAND is executed, with ARGS as arguments."
3770 ;;
3771
3772 finish)
3773 $ECHO \
3774 "Usage: $progname [OPTION]... --mode=finish [LIBDIR]...
3775
3776 Complete the installation of libtool libraries.
3777
3778 Each LIBDIR is a directory that contains libtool libraries.
3779
3780 The commands that this mode executes may require superuser privileges. Use
3781 the '--dry-run' option if you just want to see what would be executed."
3782 ;;
3783
3784 install)
3785 $ECHO \
3786 "Usage: $progname [OPTION]... --mode=install INSTALL-COMMAND...
3787
3788 Install executables or libraries.
3789
3790 INSTALL-COMMAND is the installation command. The first component should be
3791 either the 'install' or 'cp' program.
3792
3793 The following components of INSTALL-COMMAND are treated specially:
3794
3795 -inst-prefix-dir PREFIX-DIR Use PREFIX-DIR as a staging area for installation
3796
3797 The rest of the components are interpreted as arguments to that command (only
3798 BSD-compatible install options are recognized)."
3799 ;;
3800
3801 link)
3802 $ECHO \
3803 "Usage: $progname [OPTION]... --mode=link LINK-COMMAND...
3804
3805 Link object files or libraries together to form another library, or to
3806 create an executable program.
3807
3808 LINK-COMMAND is a command using the C compiler that you would use to create
3809 a program from several object files.
3810
3811 The following components of LINK-COMMAND are treated specially:
3812
3813 -all-static do not do any dynamic linking at all
3814 -avoid-version do not add a version suffix if possible
3815 -bindir BINDIR specify path to binaries directory (for systems where
3816 libraries must be found in the PATH setting at runtime)
3817 -dlopen FILE '-dlpreopen' FILE if it cannot be dlopened at runtime
3818 -dlpreopen FILE link in FILE and add its symbols to lt_preloaded_symbols
3819 -export-dynamic allow symbols from OUTPUT-FILE to be resolved with dlsym(3)
3820 -export-symbols SYMFILE
3821 try to export only the symbols listed in SYMFILE
3822 -export-symbols-regex REGEX
3823 try to export only the symbols matching REGEX
3824 -LLIBDIR search LIBDIR for required installed libraries
3825 -lNAME OUTPUT-FILE requires the installed library libNAME
3826 -module build a library that can dlopened
3827 -no-fast-install disable the fast-install mode
3828 -no-install link a not-installable executable
3829 -no-undefined declare that a library does not refer to external symbols
3830 -o OUTPUT-FILE create OUTPUT-FILE from the specified objects
3831 -objectlist FILE use a list of object files found in FILE to specify objects
3832 -os2dllname NAME force a short DLL name on OS/2 (no effect on other OSes)
3833 -precious-files-regex REGEX
3834 don't remove output files matching REGEX
3835 -release RELEASE specify package release information
3836 -rpath LIBDIR the created library will eventually be installed in LIBDIR
3837 -R[ ]LIBDIR add LIBDIR to the runtime path of programs and libraries
3838 -shared only do dynamic linking of libtool libraries
3839 -shrext SUFFIX override the standard shared library file extension
3840 -static do not do any dynamic linking of uninstalled libtool libraries
3841 -static-libtool-libs
3842 do not do any dynamic linking of libtool libraries
3843 -version-info CURRENT[:REVISION[:AGE]]
3844 specify library version info [each variable defaults to 0]
3845 -weak LIBNAME declare that the target provides the LIBNAME interface
3846 -Wc,FLAG
3847 -Xcompiler FLAG pass linker-specific FLAG directly to the compiler
3848 -Wl,FLAG
3849 -Xlinker FLAG pass linker-specific FLAG directly to the linker
3850 -XCClinker FLAG pass link-specific FLAG to the compiler driver (CC)
3851
3852 All other options (arguments beginning with '-') are ignored.
3853
3854 Every other argument is treated as a filename. Files ending in '.la' are
3855 treated as uninstalled libtool libraries, other files are standard or library
3856 object files.
3857
3858 If the OUTPUT-FILE ends in '.la', then a libtool library is created,
3859 only library objects ('.lo' files) may be specified, and '-rpath' is
3860 required, except when creating a convenience library.
3861
3862 If OUTPUT-FILE ends in '.a' or '.lib', then a standard library is created
3863 using 'ar' and 'ranlib', or on Windows using 'lib'.
3864
3865 If OUTPUT-FILE ends in '.lo' or '.$objext', then a reloadable object file
3866 is created, otherwise an executable program is created."
3867 ;;
3868
3869 uninstall)
3870 $ECHO \
3871 "Usage: $progname [OPTION]... --mode=uninstall RM [RM-OPTION]... FILE...
3872
3873 Remove libraries from an installation directory.
3874
3875 RM is the name of the program to use to delete files associated with each FILE
3876 (typically '/bin/rm'). RM-OPTIONS are options (such as '-f') to be passed
3877 to RM.
3878
3879 If FILE is a libtool library, all the files associated with it are deleted.
3880 Otherwise, only FILE itself is deleted using RM."
3881 ;;
3882
3883 *)
3884 func_fatal_help "invalid operation mode '$opt_mode'"
3885 ;;
3886 esac
3887
3888 echo
3889 $ECHO "Try '$progname --help' for more information about other modes."
3890 }
3891
3892 # Now that we've collected a possible --mode arg, show help if necessary
3893 if $opt_help; then
3894 if test : = "$opt_help"; then
3895 func_mode_help
3896 else
3897 {
3898 func_help noexit
3899 for opt_mode in compile link execute install finish uninstall clean; do
3900 func_mode_help
3901 done
3902 } | $SED -n '1p; 2,$s/^Usage:/ or: /p'
3903 {
3904 func_help noexit
3905 for opt_mode in compile link execute install finish uninstall clean; do
3906 echo
3907 func_mode_help
3908 done
3909 } |
3910 $SED '1d
3911 /^When reporting/,/^Report/{
3912 H
3913 d
3914 }
3915 $x
3916 /information about other modes/d
3917 /more detailed .*MODE/d
3918 s/^Usage:.*--mode=\([^ ]*\) .*/Description of \1 mode:/'
3919 fi
3920 exit $?
3921 fi
3922
3923
3924 # func_mode_execute arg...
3925 func_mode_execute ()
3926 {
3927 $debug_cmd
3928
3929 # The first argument is the command name.
3930 cmd=$nonopt
3931 test -z "$cmd" && \
3932 func_fatal_help "you must specify a COMMAND"
3933
3934 # Handle -dlopen flags immediately.
3935 for file in $opt_dlopen; do
3936 test -f "$file" \
3937 || func_fatal_help "'$file' is not a file"
3938
3939 dir=
3940 case $file in
3941 *.la)
3942 func_resolve_sysroot "$file"
3943 file=$func_resolve_sysroot_result
3944
3945 # Check to see that this really is a libtool archive.
3946 func_lalib_unsafe_p "$file" \
3947 || func_fatal_help "'$lib' is not a valid libtool archive"
3948
3949 # Read the libtool library.
3950 dlname=
3951 library_names=
3952 func_source "$file"
3953
3954 # Skip this library if it cannot be dlopened.
3955 if test -z "$dlname"; then
3956 # Warn if it was a shared library.
3957 test -n "$library_names" && \
3958 func_warning "'$file' was not linked with '-export-dynamic'"
3959 continue
3960 fi
3961
3962 func_dirname "$file" "" "."
3963 dir=$func_dirname_result
3964
3965 if test -f "$dir/$objdir/$dlname"; then
3966 func_append dir "/$objdir"
3967 else
3968 if test ! -f "$dir/$dlname"; then
3969 func_fatal_error "cannot find '$dlname' in '$dir' or '$dir/$objdir'"
3970 fi
3971 fi
3972 ;;
3973
3974 *.lo)
3975 # Just add the directory containing the .lo file.
3976 func_dirname "$file" "" "."
3977 dir=$func_dirname_result
3978 ;;
3979
3980 *)
3981 func_warning "'-dlopen' is ignored for non-libtool libraries and objects"
3982 continue
3983 ;;
3984 esac
3985
3986 # Get the absolute pathname.
3987 absdir=`cd "$dir" && pwd`
3988 test -n "$absdir" && dir=$absdir
3989
3990 # Now add the directory to shlibpath_var.
3991 if eval "test -z \"\$$shlibpath_var\""; then
3992 eval "$shlibpath_var=\"\$dir\""
3993 else
3994 eval "$shlibpath_var=\"\$dir:\$$shlibpath_var\""
3995 fi
3996 done
3997
3998 # This variable tells wrapper scripts just to set shlibpath_var
3999 # rather than running their programs.
4000 libtool_execute_magic=$magic
4001
4002 # Check if any of the arguments is a wrapper script.
4003 args=
4004 for file
4005 do
4006 case $file in
4007 -* | *.la | *.lo ) ;;
4008 *)
4009 # Do a test to see if this is really a libtool program.
4010 if func_ltwrapper_script_p "$file"; then
4011 func_source "$file"
4012 # Transform arg to wrapped name.
4013 file=$progdir/$program
4014 elif func_ltwrapper_executable_p "$file"; then
4015 func_ltwrapper_scriptname "$file"
4016 func_source "$func_ltwrapper_scriptname_result"
4017 # Transform arg to wrapped name.
4018 file=$progdir/$program
4019 fi
4020 ;;
4021 esac
4022 # Quote arguments (to preserve shell metacharacters).
4023 func_append_quoted args "$file"
4024 done
4025
4026 if $opt_dry_run; then
4027 # Display what would be done.
4028 if test -n "$shlibpath_var"; then
4029 eval "\$ECHO \"\$shlibpath_var=\$$shlibpath_var\""
4030 echo "export $shlibpath_var"
4031 fi
4032 $ECHO "$cmd$args"
4033 exit $EXIT_SUCCESS
4034 else
4035 if test -n "$shlibpath_var"; then
4036 # Export the shlibpath_var.
4037 eval "export $shlibpath_var"
4038 fi
4039
4040 # Restore saved environment variables
4041 for lt_var in LANG LANGUAGE LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES
4042 do
4043 eval "if test \"\${save_$lt_var+set}\" = set; then
4044 $lt_var=\$save_$lt_var; export $lt_var
4045 else
4046 $lt_unset $lt_var
4047 fi"
4048 done
4049
4050 # Now prepare to actually exec the command.
4051 exec_cmd=\$cmd$args
4052 fi
4053 }
4054
4055 test execute = "$opt_mode" && func_mode_execute ${1+"$@"}
4056
4057
4058 # func_mode_finish arg...
4059 func_mode_finish ()
4060 {
4061 $debug_cmd
4062
4063 libs=
4064 libdirs=
4065 admincmds=
4066
4067 for opt in "$nonopt" ${1+"$@"}
4068 do
4069 if test -d "$opt"; then
4070 func_append libdirs " $opt"
4071
4072 elif test -f "$opt"; then
4073 if func_lalib_unsafe_p "$opt"; then
4074 func_append libs " $opt"
4075 else
4076 func_warning "'$opt' is not a valid libtool archive"
4077 fi
4078
4079 else
4080 func_fatal_error "invalid argument '$opt'"
4081 fi
4082 done
4083
4084 if test -n "$libs"; then
4085 if test -n "$lt_sysroot"; then
4086 sysroot_regex=`$ECHO "$lt_sysroot" | $SED "$sed_make_literal_regex"`
4087 sysroot_cmd="s/\([ ']\)$sysroot_regex/\1/g;"
4088 else
4089 sysroot_cmd=
4090 fi
4091
4092 # Remove sysroot references
4093 if $opt_dry_run; then
4094 for lib in $libs; do
4095 echo "removing references to $lt_sysroot and '=' prefixes from $lib"
4096 done
4097 else
4098 tmpdir=`func_mktempdir`
4099 for lib in $libs; do
4100 $SED -e "$sysroot_cmd s/\([ ']-[LR]\)=/\1/g; s/\([ ']\)=/\1/g" $lib \
4101 > $tmpdir/tmp-la
4102 mv -f $tmpdir/tmp-la $lib
4103 done
4104 ${RM}r "$tmpdir"
4105 fi
4106 fi
4107
4108 if test -n "$finish_cmds$finish_eval" && test -n "$libdirs"; then
4109 for libdir in $libdirs; do
4110 if test -n "$finish_cmds"; then
4111 # Do each command in the finish commands.
4112 func_execute_cmds "$finish_cmds" 'admincmds="$admincmds
4113 '"$cmd"'"'
4114 fi
4115 if test -n "$finish_eval"; then
4116 # Do the single finish_eval.
4117 eval cmds=\"$finish_eval\"
4118 $opt_dry_run || eval "$cmds" || func_append admincmds "
4119 $cmds"
4120 fi
4121 done
4122 fi
4123
4124 # Exit here if they wanted silent mode.
4125 $opt_quiet && exit $EXIT_SUCCESS
4126
4127 if test -n "$finish_cmds$finish_eval" && test -n "$libdirs"; then
4128 echo "----------------------------------------------------------------------"
4129 echo "Libraries have been installed in:"
4130 for libdir in $libdirs; do
4131 $ECHO " $libdir"
4132 done
4133 echo
4134 echo "If you ever happen to want to link against installed libraries"
4135 echo "in a given directory, LIBDIR, you must either use libtool, and"
4136 echo "specify the full pathname of the library, or use the '-LLIBDIR'"
4137 echo "flag during linking and do at least one of the following:"
4138 if test -n "$shlibpath_var"; then
4139 echo " - add LIBDIR to the '$shlibpath_var' environment variable"
4140 echo " during execution"
4141 fi
4142 if test -n "$runpath_var"; then
4143 echo " - add LIBDIR to the '$runpath_var' environment variable"
4144 echo " during linking"
4145 fi
4146 if test -n "$hardcode_libdir_flag_spec"; then
4147 libdir=LIBDIR
4148 eval flag=\"$hardcode_libdir_flag_spec\"
4149
4150 $ECHO " - use the '$flag' linker flag"
4151 fi
4152 if test -n "$admincmds"; then
4153 $ECHO " - have your system administrator run these commands:$admincmds"
4154 fi
4155 if test -f /etc/ld.so.conf; then
4156 echo " - have your system administrator add LIBDIR to '/etc/ld.so.conf'"
4157 fi
4158 echo
4159
4160 echo "See any operating system documentation about shared libraries for"
4161 case $host in
4162 solaris2.[6789]|solaris2.1[0-9])
4163 echo "more information, such as the ld(1), crle(1) and ld.so(8) manual"
4164 echo "pages."
4165 ;;
4166 *)
4167 echo "more information, such as the ld(1) and ld.so(8) manual pages."
4168 ;;
4169 esac
4170 echo "----------------------------------------------------------------------"
4171 fi
4172 exit $EXIT_SUCCESS
4173 }
4174
4175 test finish = "$opt_mode" && func_mode_finish ${1+"$@"}
4176
4177
4178 # func_mode_install arg...
4179 func_mode_install ()
4180 {
4181 $debug_cmd
4182
4183 # There may be an optional sh(1) argument at the beginning of
4184 # install_prog (especially on Windows NT).
4185 if test "$SHELL" = "$nonopt" || test /bin/sh = "$nonopt" ||
4186 # Allow the use of GNU shtool's install command.
4187 case $nonopt in *shtool*) :;; *) false;; esac
4188 then
4189 # Aesthetically quote it.
4190 func_quote_for_eval "$nonopt"
4191 install_prog="$func_quote_for_eval_result "
4192 arg=$1
4193 shift
4194 else
4195 install_prog=
4196 arg=$nonopt
4197 fi
4198
4199 # The real first argument should be the name of the installation program.
4200 # Aesthetically quote it.
4201 func_quote_for_eval "$arg"
4202 func_append install_prog "$func_quote_for_eval_result"
4203 install_shared_prog=$install_prog
4204 case " $install_prog " in
4205 *[\\\ /]cp\ *) install_cp=: ;;
4206 *) install_cp=false ;;
4207 esac
4208
4209 # We need to accept at least all the BSD install flags.
4210 dest=
4211 files=
4212 opts=
4213 prev=
4214 install_type=
4215 isdir=false
4216 stripme=
4217 no_mode=:
4218 for arg
4219 do
4220 arg2=
4221 if test -n "$dest"; then
4222 func_append files " $dest"
4223 dest=$arg
4224 continue
4225 fi
4226
4227 case $arg in
4228 -d) isdir=: ;;
4229 -f)
4230 if $install_cp; then :; else
4231 prev=$arg
4232 fi
4233 ;;
4234 -g | -m | -o)
4235 prev=$arg
4236 ;;
4237 -s)
4238 stripme=" -s"
4239 continue
4240 ;;
4241 -*)
4242 ;;
4243 *)
4244 # If the previous option needed an argument, then skip it.
4245 if test -n "$prev"; then
4246 if test X-m = "X$prev" && test -n "$install_override_mode"; then
4247 arg2=$install_override_mode
4248 no_mode=false
4249 fi
4250 prev=
4251 else
4252 dest=$arg
4253 continue
4254 fi
4255 ;;
4256 esac
4257
4258 # Aesthetically quote the argument.
4259 func_quote_for_eval "$arg"
4260 func_append install_prog " $func_quote_for_eval_result"
4261 if test -n "$arg2"; then
4262 func_quote_for_eval "$arg2"
4263 fi
4264 func_append install_shared_prog " $func_quote_for_eval_result"
4265 done
4266
4267 test -z "$install_prog" && \
4268 func_fatal_help "you must specify an install program"
4269
4270 test -n "$prev" && \
4271 func_fatal_help "the '$prev' option requires an argument"
4272
4273 if test -n "$install_override_mode" && $no_mode; then
4274 if $install_cp; then :; else
4275 func_quote_for_eval "$install_override_mode"
4276 func_append install_shared_prog " -m $func_quote_for_eval_result"
4277 fi
4278 fi
4279
4280 if test -z "$files"; then
4281 if test -z "$dest"; then
4282 func_fatal_help "no file or destination specified"
4283 else
4284 func_fatal_help "you must specify a destination"
4285 fi
4286 fi
4287
4288 # Strip any trailing slash from the destination.
4289 func_stripname '' '/' "$dest"
4290 dest=$func_stripname_result
4291
4292 # Check to see that the destination is a directory.
4293 test -d "$dest" && isdir=:
4294 if $isdir; then
4295 destdir=$dest
4296 destname=
4297 else
4298 func_dirname_and_basename "$dest" "" "."
4299 destdir=$func_dirname_result
4300 destname=$func_basename_result
4301
4302 # Not a directory, so check to see that there is only one file specified.
4303 set dummy $files; shift
4304 test "$#" -gt 1 && \
4305 func_fatal_help "'$dest' is not a directory"
4306 fi
4307 case $destdir in
4308 [\\/]* | [A-Za-z]:[\\/]*) ;;
4309 *)
4310 for file in $files; do
4311 case $file in
4312 *.lo) ;;
4313 *)
4314 func_fatal_help "'$destdir' must be an absolute directory name"
4315 ;;
4316 esac
4317 done
4318 ;;
4319 esac
4320
4321 # This variable tells wrapper scripts just to set variables rather
4322 # than running their programs.
4323 libtool_install_magic=$magic
4324
4325 staticlibs=
4326 future_libdirs=
4327 current_libdirs=
4328 for file in $files; do
4329
4330 # Do each installation.
4331 case $file in
4332 *.$libext)
4333 # Do the static libraries later.
4334 func_append staticlibs " $file"
4335 ;;
4336
4337 *.la)
4338 func_resolve_sysroot "$file"
4339 file=$func_resolve_sysroot_result
4340
4341 # Check to see that this really is a libtool archive.
4342 func_lalib_unsafe_p "$file" \
4343 || func_fatal_help "'$file' is not a valid libtool archive"
4344
4345 library_names=
4346 old_library=
4347 relink_command=
4348 func_source "$file"
4349
4350 # Add the libdir to current_libdirs if it is the destination.
4351 if test "X$destdir" = "X$libdir"; then
4352 case "$current_libdirs " in
4353 *" $libdir "*) ;;
4354 *) func_append current_libdirs " $libdir" ;;
4355 esac
4356 else
4357 # Note the libdir as a future libdir.
4358 case "$future_libdirs " in
4359 *" $libdir "*) ;;
4360 *) func_append future_libdirs " $libdir" ;;
4361 esac
4362 fi
4363
4364 func_dirname "$file" "/" ""
4365 dir=$func_dirname_result
4366 func_append dir "$objdir"
4367
4368 if test -n "$relink_command"; then
4369 # Determine the prefix the user has applied to our future dir.
4370 inst_prefix_dir=`$ECHO "$destdir" | $SED -e "s%$libdir\$%%"`
4371
4372 # Don't allow the user to place us outside of our expected
4373 # location b/c this prevents finding dependent libraries that
4374 # are installed to the same prefix.
4375 # At present, this check doesn't affect windows .dll's that
4376 # are installed into $libdir/../bin (currently, that works fine)
4377 # but it's something to keep an eye on.
4378 test "$inst_prefix_dir" = "$destdir" && \
4379 func_fatal_error "error: cannot install '$file' to a directory not ending in $libdir"
4380
4381 if test -n "$inst_prefix_dir"; then
4382 # Stick the inst_prefix_dir data into the link command.
4383 relink_command=`$ECHO "$relink_command" | $SED "s%@inst_prefix_dir@%-inst-prefix-dir $inst_prefix_dir%"`
4384 else
4385 relink_command=`$ECHO "$relink_command" | $SED "s%@inst_prefix_dir@%%"`
4386 fi
4387
4388 func_warning "relinking '$file'"
4389 func_show_eval "$relink_command" \
4390 'func_fatal_error "error: relink '\''$file'\'' with the above command before installing it"'
4391 fi
4392
4393 # See the names of the shared library.
4394 set dummy $library_names; shift
4395 if test -n "$1"; then
4396 realname=$1
4397 shift
4398
4399 srcname=$realname
4400 test -n "$relink_command" && srcname=${realname}T
4401
4402 # Install the shared library and build the symlinks.
4403 func_show_eval "$install_shared_prog $dir/$srcname $destdir/$realname" \
4404 'exit $?'
4405 tstripme=$stripme
4406 case $host_os in
4407 cygwin* | mingw* | pw32* | cegcc*)
4408 case $realname in
4409 *.dll.a)
4410 tstripme=
4411 ;;
4412 esac
4413 ;;
4414 os2*)
4415 case $realname in
4416 *_dll.a)
4417 tstripme=
4418 ;;
4419 esac
4420 ;;
4421 esac
4422 if test -n "$tstripme" && test -n "$striplib"; then
4423 func_show_eval "$striplib $destdir/$realname" 'exit $?'
4424 fi
4425
4426 if test "$#" -gt 0; then
4427 # Delete the old symlinks, and create new ones.
4428 # Try 'ln -sf' first, because the 'ln' binary might depend on
4429 # the symlink we replace! Solaris /bin/ln does not understand -f,
4430 # so we also need to try rm && ln -s.
4431 for linkname
4432 do
4433 test "$linkname" != "$realname" \
4434 && func_show_eval "(cd $destdir && { $LN_S -f $realname $linkname || { $RM $linkname && $LN_S $realname $linkname; }; })"
4435 done
4436 fi
4437
4438 # Do each command in the postinstall commands.
4439 lib=$destdir/$realname
4440 func_execute_cmds "$postinstall_cmds" 'exit $?'
4441 fi
4442
4443 # Install the pseudo-library for information purposes.
4444 func_basename "$file"
4445 name=$func_basename_result
4446 instname=$dir/${name}i
4447 func_show_eval "$install_prog $instname $destdir/$name" 'exit $?'
4448
4449 # Maybe install the static library, too.
4450 test -n "$old_library" && func_append staticlibs " $dir/$old_library"
4451 ;;
4452
4453 *.lo)
4454 # Install (i.e. copy) a libtool object.
4455
4456 # Figure out destination file name, if it wasn't already specified.
4457 if test -n "$destname"; then
4458 destfile=$destdir/$destname
4459 else
4460 func_basename "$file"
4461 destfile=$func_basename_result
4462 destfile=$destdir/$destfile
4463 fi
4464
4465 # Deduce the name of the destination old-style object file.
4466 case $destfile in
4467 *.lo)
4468 func_lo2o "$destfile"
4469 staticdest=$func_lo2o_result
4470 ;;
4471 *.$objext)
4472 staticdest=$destfile
4473 destfile=
4474 ;;
4475 *)
4476 func_fatal_help "cannot copy a libtool object to '$destfile'"
4477 ;;
4478 esac
4479
4480 # Install the libtool object if requested.
4481 test -n "$destfile" && \
4482 func_show_eval "$install_prog $file $destfile" 'exit $?'
4483
4484 # Install the old object if enabled.
4485 if test yes = "$build_old_libs"; then
4486 # Deduce the name of the old-style object file.
4487 func_lo2o "$file"
4488 staticobj=$func_lo2o_result
4489 func_show_eval "$install_prog \$staticobj \$staticdest" 'exit $?'
4490 fi
4491 exit $EXIT_SUCCESS
4492 ;;
4493
4494 *)
4495 # Figure out destination file name, if it wasn't already specified.
4496 if test -n "$destname"; then
4497 destfile=$destdir/$destname
4498 else
4499 func_basename "$file"
4500 destfile=$func_basename_result
4501 destfile=$destdir/$destfile
4502 fi
4503
4504 # If the file is missing, and there is a .exe on the end, strip it
4505 # because it is most likely a libtool script we actually want to
4506 # install
4507 stripped_ext=
4508 case $file in
4509 *.exe)
4510 if test ! -f "$file"; then
4511 func_stripname '' '.exe' "$file"
4512 file=$func_stripname_result
4513 stripped_ext=.exe
4514 fi
4515 ;;
4516 esac
4517
4518 # Do a test to see if this is really a libtool program.
4519 case $host in
4520 *cygwin* | *mingw*)
4521 if func_ltwrapper_executable_p "$file"; then
4522 func_ltwrapper_scriptname "$file"
4523 wrapper=$func_ltwrapper_scriptname_result
4524 else
4525 func_stripname '' '.exe' "$file"
4526 wrapper=$func_stripname_result
4527 fi
4528 ;;
4529 *)
4530 wrapper=$file
4531 ;;
4532 esac
4533 if func_ltwrapper_script_p "$wrapper"; then
4534 notinst_deplibs=
4535 relink_command=
4536
4537 func_source "$wrapper"
4538
4539 # Check the variables that should have been set.
4540 test -z "$generated_by_libtool_version" && \
4541 func_fatal_error "invalid libtool wrapper script '$wrapper'"
4542
4543 finalize=:
4544 for lib in $notinst_deplibs; do
4545 # Check to see that each library is installed.
4546 libdir=
4547 if test -f "$lib"; then
4548 func_source "$lib"
4549 fi
4550 libfile=$libdir/`$ECHO "$lib" | $SED 's%^.*/%%g'`
4551 if test -n "$libdir" && test ! -f "$libfile"; then
4552 func_warning "'$lib' has not been installed in '$libdir'"
4553 finalize=false
4554 fi
4555 done
4556
4557 relink_command=
4558 func_source "$wrapper"
4559
4560 outputname=
4561 if test no = "$fast_install" && test -n "$relink_command"; then
4562 $opt_dry_run || {
4563 if $finalize; then
4564 tmpdir=`func_mktempdir`
4565 func_basename "$file$stripped_ext"
4566 file=$func_basename_result
4567 outputname=$tmpdir/$file
4568 # Replace the output file specification.
4569 relink_command=`$ECHO "$relink_command" | $SED 's%@OUTPUT@%'"$outputname"'%g'`
4570
4571 $opt_quiet || {
4572 func_quote_for_expand "$relink_command"
4573 eval "func_echo $func_quote_for_expand_result"
4574 }
4575 if eval "$relink_command"; then :
4576 else
4577 func_error "error: relink '$file' with the above command before installing it"
4578 $opt_dry_run || ${RM}r "$tmpdir"
4579 continue
4580 fi
4581 file=$outputname
4582 else
4583 func_warning "cannot relink '$file'"
4584 fi
4585 }
4586 else
4587 # Install the binary that we compiled earlier.
4588 file=`$ECHO "$file$stripped_ext" | $SED "s%\([^/]*\)$%$objdir/\1%"`
4589 fi
4590 fi
4591
4592 # remove .exe since cygwin /usr/bin/install will append another
4593 # one anyway
4594 case $install_prog,$host in
4595 */usr/bin/install*,*cygwin*)
4596 case $file:$destfile in
4597 *.exe:*.exe)
4598 # this is ok
4599 ;;
4600 *.exe:*)
4601 destfile=$destfile.exe
4602 ;;
4603 *:*.exe)
4604 func_stripname '' '.exe' "$destfile"
4605 destfile=$func_stripname_result
4606 ;;
4607 esac
4608 ;;
4609 esac
4610 func_show_eval "$install_prog\$stripme \$file \$destfile" 'exit $?'
4611 $opt_dry_run || if test -n "$outputname"; then
4612 ${RM}r "$tmpdir"
4613 fi
4614 ;;
4615 esac
4616 done
4617
4618 for file in $staticlibs; do
4619 func_basename "$file"
4620 name=$func_basename_result
4621
4622 # Set up the ranlib parameters.
4623 oldlib=$destdir/$name
4624 func_to_tool_file "$oldlib" func_convert_file_msys_to_w32
4625 tool_oldlib=$func_to_tool_file_result
4626
4627 func_show_eval "$install_prog \$file \$oldlib" 'exit $?'
4628
4629 if test -n "$stripme" && test -n "$old_striplib"; then
4630 func_show_eval "$old_striplib $tool_oldlib" 'exit $?'
4631 fi
4632
4633 # Do each command in the postinstall commands.
4634 func_execute_cmds "$old_postinstall_cmds" 'exit $?'
4635 done
4636
4637 test -n "$future_libdirs" && \
4638 func_warning "remember to run '$progname --finish$future_libdirs'"
4639
4640 if test -n "$current_libdirs"; then
4641 # Maybe just do a dry run.
4642 $opt_dry_run && current_libdirs=" -n$current_libdirs"
4643 exec_cmd='$SHELL "$progpath" $preserve_args --finish$current_libdirs'
4644 else
4645 exit $EXIT_SUCCESS
4646 fi
4647 }
4648
4649 test install = "$opt_mode" && func_mode_install ${1+"$@"}
4650
4651
4652 # func_generate_dlsyms outputname originator pic_p
4653 # Extract symbols from dlprefiles and create ${outputname}S.o with
4654 # a dlpreopen symbol table.
4655 func_generate_dlsyms ()
4656 {
4657 $debug_cmd
4658
4659 my_outputname=$1
4660 my_originator=$2
4661 my_pic_p=${3-false}
4662 my_prefix=`$ECHO "$my_originator" | $SED 's%[^a-zA-Z0-9]%_%g'`
4663 my_dlsyms=
4664
4665 if test -n "$dlfiles$dlprefiles" || test no != "$dlself"; then
4666 if test -n "$NM" && test -n "$global_symbol_pipe"; then
4667 my_dlsyms=${my_outputname}S.c
4668 else
4669 func_error "not configured to extract global symbols from dlpreopened files"
4670 fi
4671 fi
4672
4673 if test -n "$my_dlsyms"; then
4674 case $my_dlsyms in
4675 "") ;;
4676 *.c)
4677 # Discover the nlist of each of the dlfiles.
4678 nlist=$output_objdir/$my_outputname.nm
4679
4680 func_show_eval "$RM $nlist ${nlist}S ${nlist}T"
4681
4682 # Parse the name list into a source file.
4683 func_verbose "creating $output_objdir/$my_dlsyms"
4684
4685 $opt_dry_run || $ECHO > "$output_objdir/$my_dlsyms" "\
4686 /* $my_dlsyms - symbol resolution table for '$my_outputname' dlsym emulation. */
4687 /* Generated by $PROGRAM (GNU $PACKAGE) $VERSION */
4688
4689 #ifdef __cplusplus
4690 extern \"C\" {
4691 #endif
4692
4693 #if defined __GNUC__ && (((__GNUC__ == 4) && (__GNUC_MINOR__ >= 4)) || (__GNUC__ > 4))
4694 #pragma GCC diagnostic ignored \"-Wstrict-prototypes\"
4695 #endif
4696
4697 /* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests. */
4698 #if defined _WIN32 || defined __CYGWIN__ || defined _WIN32_WCE
4699 /* DATA imports from DLLs on WIN32 can't be const, because runtime
4700 relocations are performed -- see ld's documentation on pseudo-relocs. */
4701 # define LT_DLSYM_CONST
4702 #elif defined __osf__
4703 /* This system does not cope well with relocations in const data. */
4704 # define LT_DLSYM_CONST
4705 #else
4706 # define LT_DLSYM_CONST const
4707 #endif
4708
4709 #define STREQ(s1, s2) (strcmp ((s1), (s2)) == 0)
4710
4711 /* External symbol declarations for the compiler. */\
4712 "
4713
4714 if test yes = "$dlself"; then
4715 func_verbose "generating symbol list for '$output'"
4716
4717 $opt_dry_run || echo ': @PROGRAM@ ' > "$nlist"
4718
4719 # Add our own program objects to the symbol list.
4720 progfiles=`$ECHO "$objs$old_deplibs" | $SP2NL | $SED "$lo2o" | $NL2SP`
4721 for progfile in $progfiles; do
4722 func_to_tool_file "$progfile" func_convert_file_msys_to_w32
4723 func_verbose "extracting global C symbols from '$func_to_tool_file_result'"
4724 $opt_dry_run || eval "$NM $func_to_tool_file_result | $global_symbol_pipe >> '$nlist'"
4725 done
4726
4727 if test -n "$exclude_expsyms"; then
4728 $opt_dry_run || {
4729 eval '$EGREP -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T'
4730 eval '$MV "$nlist"T "$nlist"'
4731 }
4732 fi
4733
4734 if test -n "$export_symbols_regex"; then
4735 $opt_dry_run || {
4736 eval '$EGREP -e "$export_symbols_regex" "$nlist" > "$nlist"T'
4737 eval '$MV "$nlist"T "$nlist"'
4738 }
4739 fi
4740
4741 # Prepare the list of exported symbols
4742 if test -z "$export_symbols"; then
4743 export_symbols=$output_objdir/$outputname.exp
4744 $opt_dry_run || {
4745 $RM $export_symbols
4746 eval "$SED -n -e '/^: @PROGRAM@ $/d' -e 's/^.* \(.*\)$/\1/p' "'< "$nlist" > "$export_symbols"'
4747 case $host in
4748 *cygwin* | *mingw* | *cegcc* )
4749 eval "echo EXPORTS "'> "$output_objdir/$outputname.def"'
4750 eval 'cat "$export_symbols" >> "$output_objdir/$outputname.def"'
4751 ;;
4752 esac
4753 }
4754 else
4755 $opt_dry_run || {
4756 eval "$SED -e 's/\([].[*^$]\)/\\\\\1/g' -e 's/^/ /' -e 's/$/$/'"' < "$export_symbols" > "$output_objdir/$outputname.exp"'
4757 eval '$GREP -f "$output_objdir/$outputname.exp" < "$nlist" > "$nlist"T'
4758 eval '$MV "$nlist"T "$nlist"'
4759 case $host in
4760 *cygwin* | *mingw* | *cegcc* )
4761 eval "echo EXPORTS "'> "$output_objdir/$outputname.def"'
4762 eval 'cat "$nlist" >> "$output_objdir/$outputname.def"'
4763 ;;
4764 esac
4765 }
4766 fi
4767 fi
4768
4769 for dlprefile in $dlprefiles; do
4770 func_verbose "extracting global C symbols from '$dlprefile'"
4771 func_basename "$dlprefile"
4772 name=$func_basename_result
4773 case $host in
4774 *cygwin* | *mingw* | *cegcc* )
4775 # if an import library, we need to obtain dlname
4776 if func_win32_import_lib_p "$dlprefile"; then
4777 func_tr_sh "$dlprefile"
4778 eval "curr_lafile=\$libfile_$func_tr_sh_result"
4779 dlprefile_dlbasename=
4780 if test -n "$curr_lafile" && func_lalib_p "$curr_lafile"; then
4781 # Use subshell, to avoid clobbering current variable values
4782 dlprefile_dlname=`source "$curr_lafile" && echo "$dlname"`
4783 if test -n "$dlprefile_dlname"; then
4784 func_basename "$dlprefile_dlname"
4785 dlprefile_dlbasename=$func_basename_result
4786 else
4787 # no lafile. user explicitly requested -dlpreopen <import library>.
4788 $sharedlib_from_linklib_cmd "$dlprefile"
4789 dlprefile_dlbasename=$sharedlib_from_linklib_result
4790 fi
4791 fi
4792 $opt_dry_run || {
4793 if test -n "$dlprefile_dlbasename"; then
4794 eval '$ECHO ": $dlprefile_dlbasename" >> "$nlist"'
4795 else
4796 func_warning "Could not compute DLL name from $name"
4797 eval '$ECHO ": $name " >> "$nlist"'
4798 fi
4799 func_to_tool_file "$dlprefile" func_convert_file_msys_to_w32
4800 eval "$NM \"$func_to_tool_file_result\" 2>/dev/null | $global_symbol_pipe |
4801 $SED -e '/I __imp/d' -e 's/I __nm_/D /;s/_nm__//' >> '$nlist'"
4802 }
4803 else # not an import lib
4804 $opt_dry_run || {
4805 eval '$ECHO ": $name " >> "$nlist"'
4806 func_to_tool_file "$dlprefile" func_convert_file_msys_to_w32
4807 eval "$NM \"$func_to_tool_file_result\" 2>/dev/null | $global_symbol_pipe >> '$nlist'"
4808 }
4809 fi
4810 ;;
4811 *)
4812 $opt_dry_run || {
4813 eval '$ECHO ": $name " >> "$nlist"'
4814 func_to_tool_file "$dlprefile" func_convert_file_msys_to_w32
4815 eval "$NM \"$func_to_tool_file_result\" 2>/dev/null | $global_symbol_pipe >> '$nlist'"
4816 }
4817 ;;
4818 esac
4819 done
4820
4821 $opt_dry_run || {
4822 # Make sure we have at least an empty file.
4823 test -f "$nlist" || : > "$nlist"
4824
4825 if test -n "$exclude_expsyms"; then
4826 $EGREP -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T
4827 $MV "$nlist"T "$nlist"
4828 fi
4829
4830 # Try sorting and uniquifying the output.
4831 if $GREP -v "^: " < "$nlist" |
4832 if sort -k 3 </dev/null >/dev/null 2>&1; then
4833 sort -k 3
4834 else
4835 sort +2
4836 fi |
4837 uniq > "$nlist"S; then
4838 :
4839 else
4840 $GREP -v "^: " < "$nlist" > "$nlist"S
4841 fi
4842
4843 if test -f "$nlist"S; then
4844 eval "$global_symbol_to_cdecl"' < "$nlist"S >> "$output_objdir/$my_dlsyms"'
4845 else
4846 echo '/* NONE */' >> "$output_objdir/$my_dlsyms"
4847 fi
4848
4849 func_show_eval '$RM "${nlist}I"'
4850 if test -n "$global_symbol_to_import"; then
4851 eval "$global_symbol_to_import"' < "$nlist"S > "$nlist"I'
4852 fi
4853
4854 echo >> "$output_objdir/$my_dlsyms" "\
4855
4856 /* The mapping between symbol names and symbols. */
4857 typedef struct {
4858 const char *name;
4859 void *address;
4860 } lt_dlsymlist;
4861 extern LT_DLSYM_CONST lt_dlsymlist
4862 lt_${my_prefix}_LTX_preloaded_symbols[];\
4863 "
4864
4865 if test -s "$nlist"I; then
4866 echo >> "$output_objdir/$my_dlsyms" "\
4867 static void lt_syminit(void)
4868 {
4869 LT_DLSYM_CONST lt_dlsymlist *symbol = lt_${my_prefix}_LTX_preloaded_symbols;
4870 for (; symbol->name; ++symbol)
4871 {"
4872 $SED 's/.*/ if (STREQ (symbol->name, \"&\")) symbol->address = (void *) \&&;/' < "$nlist"I >> "$output_objdir/$my_dlsyms"
4873 echo >> "$output_objdir/$my_dlsyms" "\
4874 }
4875 }"
4876 fi
4877 echo >> "$output_objdir/$my_dlsyms" "\
4878 LT_DLSYM_CONST lt_dlsymlist
4879 lt_${my_prefix}_LTX_preloaded_symbols[] =
4880 { {\"$my_originator\", (void *) 0},"
4881
4882 if test -s "$nlist"I; then
4883 echo >> "$output_objdir/$my_dlsyms" "\
4884 {\"@INIT@\", (void *) &lt_syminit},"
4885 fi
4886
4887 case $need_lib_prefix in
4888 no)
4889 eval "$global_symbol_to_c_name_address" < "$nlist" >> "$output_objdir/$my_dlsyms"
4890 ;;
4891 *)
4892 eval "$global_symbol_to_c_name_address_lib_prefix" < "$nlist" >> "$output_objdir/$my_dlsyms"
4893 ;;
4894 esac
4895 echo >> "$output_objdir/$my_dlsyms" "\
4896 {0, (void *) 0}
4897 };
4898
4899 /* This works around a problem in FreeBSD linker */
4900 #ifdef FREEBSD_WORKAROUND
4901 static const void *lt_preloaded_setup() {
4902 return lt_${my_prefix}_LTX_preloaded_symbols;
4903 }
4904 #endif
4905
4906 #ifdef __cplusplus
4907 }
4908 #endif\
4909 "
4910 } # !$opt_dry_run
4911
4912 pic_flag_for_symtable=
4913 case "$compile_command " in
4914 *" -static "*) ;;
4915 *)
4916 case $host in
4917 # compiling the symbol table file with pic_flag works around
4918 # a FreeBSD bug that causes programs to crash when -lm is
4919 # linked before any other PIC object. But we must not use
4920 # pic_flag when linking with -static. The problem exists in
4921 # FreeBSD 2.2.6 and is fixed in FreeBSD 3.1.
4922 *-*-freebsd2.*|*-*-freebsd3.0*|*-*-freebsdelf3.0*)
4923 pic_flag_for_symtable=" $pic_flag -DFREEBSD_WORKAROUND" ;;
4924 *-*-hpux*)
4925 pic_flag_for_symtable=" $pic_flag" ;;
4926 *)
4927 $my_pic_p && pic_flag_for_symtable=" $pic_flag"
4928 ;;
4929 esac
4930 ;;
4931 esac
4932 symtab_cflags=
4933 for arg in $LTCFLAGS; do
4934 case $arg in
4935 -pie | -fpie | -fPIE) ;;
4936 *) func_append symtab_cflags " $arg" ;;
4937 esac
4938 done
4939
4940 # Now compile the dynamic symbol file.
4941 func_show_eval '(cd $output_objdir && $LTCC$symtab_cflags -c$no_builtin_flag$pic_flag_for_symtable "$my_dlsyms")' 'exit $?'
4942
4943 # Clean up the generated files.
4944 func_show_eval '$RM "$output_objdir/$my_dlsyms" "$nlist" "${nlist}S" "${nlist}T" "${nlist}I"'
4945
4946 # Transform the symbol file into the correct name.
4947 symfileobj=$output_objdir/${my_outputname}S.$objext
4948 case $host in
4949 *cygwin* | *mingw* | *cegcc* )
4950 if test -f "$output_objdir/$my_outputname.def"; then
4951 compile_command=`$ECHO "$compile_command" | $SED "s%@SYMFILE@%$output_objdir/$my_outputname.def $symfileobj%"`
4952 finalize_command=`$ECHO "$finalize_command" | $SED "s%@SYMFILE@%$output_objdir/$my_outputname.def $symfileobj%"`
4953 else
4954 compile_command=`$ECHO "$compile_command" | $SED "s%@SYMFILE@%$symfileobj%"`
4955 finalize_command=`$ECHO "$finalize_command" | $SED "s%@SYMFILE@%$symfileobj%"`
4956 fi
4957 ;;
4958 *)
4959 compile_command=`$ECHO "$compile_command" | $SED "s%@SYMFILE@%$symfileobj%"`
4960 finalize_command=`$ECHO "$finalize_command" | $SED "s%@SYMFILE@%$symfileobj%"`
4961 ;;
4962 esac
4963 ;;
4964 *)
4965 func_fatal_error "unknown suffix for '$my_dlsyms'"
4966 ;;
4967 esac
4968 else
4969 # We keep going just in case the user didn't refer to
4970 # lt_preloaded_symbols. The linker will fail if global_symbol_pipe
4971 # really was required.
4972
4973 # Nullify the symbol file.
4974 compile_command=`$ECHO "$compile_command" | $SED "s% @SYMFILE@%%"`
4975 finalize_command=`$ECHO "$finalize_command" | $SED "s% @SYMFILE@%%"`
4976 fi
4977 }
4978
4979 # func_cygming_gnu_implib_p ARG
4980 # This predicate returns with zero status (TRUE) if
4981 # ARG is a GNU/binutils-style import library. Returns
4982 # with nonzero status (FALSE) otherwise.
4983 func_cygming_gnu_implib_p ()
4984 {
4985 $debug_cmd
4986
4987 func_to_tool_file "$1" func_convert_file_msys_to_w32
4988 func_cygming_gnu_implib_tmp=`$NM "$func_to_tool_file_result" | eval "$global_symbol_pipe" | $EGREP ' (_head_[A-Za-z0-9_]+_[ad]l*|[A-Za-z0-9_]+_[ad]l*_iname)$'`
4989 test -n "$func_cygming_gnu_implib_tmp"
4990 }
4991
4992 # func_cygming_ms_implib_p ARG
4993 # This predicate returns with zero status (TRUE) if
4994 # ARG is an MS-style import library. Returns
4995 # with nonzero status (FALSE) otherwise.
4996 func_cygming_ms_implib_p ()
4997 {
4998 $debug_cmd
4999
5000 func_to_tool_file "$1" func_convert_file_msys_to_w32
5001 func_cygming_ms_implib_tmp=`$NM "$func_to_tool_file_result" | eval "$global_symbol_pipe" | $GREP '_NULL_IMPORT_DESCRIPTOR'`
5002 test -n "$func_cygming_ms_implib_tmp"
5003 }
5004
5005 # func_win32_libid arg
5006 # return the library type of file 'arg'
5007 #
5008 # Need a lot of goo to handle *both* DLLs and import libs
5009 # Has to be a shell function in order to 'eat' the argument
5010 # that is supplied when $file_magic_command is called.
5011 # Despite the name, also deal with 64 bit binaries.
5012 func_win32_libid ()
5013 {
5014 $debug_cmd
5015
5016 win32_libid_type=unknown
5017 win32_fileres=`file -L $1 2>/dev/null`
5018 case $win32_fileres in
5019 *ar\ archive\ import\ library*) # definitely import
5020 win32_libid_type="x86 archive import"
5021 ;;
5022 *ar\ archive*) # could be an import, or static
5023 # Keep the egrep pattern in sync with the one in _LT_CHECK_MAGIC_METHOD.
5024 if eval $OBJDUMP -f $1 | $SED -e '10q' 2>/dev/null |
5025 $EGREP 'file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)' >/dev/null; then
5026 case $nm_interface in
5027 "MS dumpbin")
5028 if func_cygming_ms_implib_p "$1" ||
5029 func_cygming_gnu_implib_p "$1"
5030 then
5031 win32_nmres=import
5032 else
5033 win32_nmres=
5034 fi
5035 ;;
5036 *)
5037 func_to_tool_file "$1" func_convert_file_msys_to_w32
5038 win32_nmres=`eval $NM -f posix -A \"$func_to_tool_file_result\" |
5039 $SED -n -e '
5040 1,100{
5041 / I /{
5042 s|.*|import|
5043 p
5044 q
5045 }
5046 }'`
5047 ;;
5048 esac
5049 case $win32_nmres in
5050 import*) win32_libid_type="x86 archive import";;
5051 *) win32_libid_type="x86 archive static";;
5052 esac
5053 fi
5054 ;;
5055 *DLL*)
5056 win32_libid_type="x86 DLL"
5057 ;;
5058 *executable*) # but shell scripts are "executable" too...
5059 case $win32_fileres in
5060 *MS\ Windows\ PE\ Intel*)
5061 win32_libid_type="x86 DLL"
5062 ;;
5063 esac
5064 ;;
5065 esac
5066 $ECHO "$win32_libid_type"
5067 }
5068
5069 # func_cygming_dll_for_implib ARG
5070 #
5071 # Platform-specific function to extract the
5072 # name of the DLL associated with the specified
5073 # import library ARG.
5074 # Invoked by eval'ing the libtool variable
5075 # $sharedlib_from_linklib_cmd
5076 # Result is available in the variable
5077 # $sharedlib_from_linklib_result
5078 func_cygming_dll_for_implib ()
5079 {
5080 $debug_cmd
5081
5082 sharedlib_from_linklib_result=`$DLLTOOL --identify-strict --identify "$1"`
5083 }
5084
5085 # func_cygming_dll_for_implib_fallback_core SECTION_NAME LIBNAMEs
5086 #
5087 # The is the core of a fallback implementation of a
5088 # platform-specific function to extract the name of the
5089 # DLL associated with the specified import library LIBNAME.
5090 #
5091 # SECTION_NAME is either .idata$6 or .idata$7, depending
5092 # on the platform and compiler that created the implib.
5093 #
5094 # Echos the name of the DLL associated with the
5095 # specified import library.
5096 func_cygming_dll_for_implib_fallback_core ()
5097 {
5098 $debug_cmd
5099
5100 match_literal=`$ECHO "$1" | $SED "$sed_make_literal_regex"`
5101 $OBJDUMP -s --section "$1" "$2" 2>/dev/null |
5102 $SED '/^Contents of section '"$match_literal"':/{
5103 # Place marker at beginning of archive member dllname section
5104 s/.*/====MARK====/
5105 p
5106 d
5107 }
5108 # These lines can sometimes be longer than 43 characters, but
5109 # are always uninteresting
5110 /:[ ]*file format pe[i]\{,1\}-/d
5111 /^In archive [^:]*:/d
5112 # Ensure marker is printed
5113 /^====MARK====/p
5114 # Remove all lines with less than 43 characters
5115 /^.\{43\}/!d
5116 # From remaining lines, remove first 43 characters
5117 s/^.\{43\}//' |
5118 $SED -n '
5119 # Join marker and all lines until next marker into a single line
5120 /^====MARK====/ b para
5121 H
5122 $ b para
5123 b
5124 :para
5125 x
5126 s/\n//g
5127 # Remove the marker
5128 s/^====MARK====//
5129 # Remove trailing dots and whitespace
5130 s/[\. \t]*$//
5131 # Print
5132 /./p' |
5133 # we now have a list, one entry per line, of the stringified
5134 # contents of the appropriate section of all members of the
5135 # archive that possess that section. Heuristic: eliminate
5136 # all those that have a first or second character that is
5137 # a '.' (that is, objdump's representation of an unprintable
5138 # character.) This should work for all archives with less than
5139 # 0x302f exports -- but will fail for DLLs whose name actually
5140 # begins with a literal '.' or a single character followed by
5141 # a '.'.
5142 #
5143 # Of those that remain, print the first one.
5144 $SED -e '/^\./d;/^.\./d;q'
5145 }
5146
5147 # func_cygming_dll_for_implib_fallback ARG
5148 # Platform-specific function to extract the
5149 # name of the DLL associated with the specified
5150 # import library ARG.
5151 #
5152 # This fallback implementation is for use when $DLLTOOL
5153 # does not support the --identify-strict option.
5154 # Invoked by eval'ing the libtool variable
5155 # $sharedlib_from_linklib_cmd
5156 # Result is available in the variable
5157 # $sharedlib_from_linklib_result
5158 func_cygming_dll_for_implib_fallback ()
5159 {
5160 $debug_cmd
5161
5162 if func_cygming_gnu_implib_p "$1"; then
5163 # binutils import library
5164 sharedlib_from_linklib_result=`func_cygming_dll_for_implib_fallback_core '.idata$7' "$1"`
5165 elif func_cygming_ms_implib_p "$1"; then
5166 # ms-generated import library
5167 sharedlib_from_linklib_result=`func_cygming_dll_for_implib_fallback_core '.idata$6' "$1"`
5168 else
5169 # unknown
5170 sharedlib_from_linklib_result=
5171 fi
5172 }
5173
5174
5175 # func_extract_an_archive dir oldlib
5176 func_extract_an_archive ()
5177 {
5178 $debug_cmd
5179
5180 f_ex_an_ar_dir=$1; shift
5181 f_ex_an_ar_oldlib=$1
5182 if test yes = "$lock_old_archive_extraction"; then
5183 lockfile=$f_ex_an_ar_oldlib.lock
5184 until $opt_dry_run || ln "$progpath" "$lockfile" 2>/dev/null; do
5185 func_echo "Waiting for $lockfile to be removed"
5186 sleep 2
5187 done
5188 fi
5189 func_show_eval "(cd \$f_ex_an_ar_dir && $AR x \"\$f_ex_an_ar_oldlib\")" \
5190 'stat=$?; rm -f "$lockfile"; exit $stat'
5191 if test yes = "$lock_old_archive_extraction"; then
5192 $opt_dry_run || rm -f "$lockfile"
5193 fi
5194 if ($AR t "$f_ex_an_ar_oldlib" | sort | sort -uc >/dev/null 2>&1); then
5195 :
5196 else
5197 func_fatal_error "object name conflicts in archive: $f_ex_an_ar_dir/$f_ex_an_ar_oldlib"
5198 fi
5199 }
5200
5201
5202 # func_extract_archives gentop oldlib ...
5203 func_extract_archives ()
5204 {
5205 $debug_cmd
5206
5207 my_gentop=$1; shift
5208 my_oldlibs=${1+"$@"}
5209 my_oldobjs=
5210 my_xlib=
5211 my_xabs=
5212 my_xdir=
5213
5214 for my_xlib in $my_oldlibs; do
5215 # Extract the objects.
5216 case $my_xlib in
5217 [\\/]* | [A-Za-z]:[\\/]*) my_xabs=$my_xlib ;;
5218 *) my_xabs=`pwd`"/$my_xlib" ;;
5219 esac
5220 func_basename "$my_xlib"
5221 my_xlib=$func_basename_result
5222 my_xlib_u=$my_xlib
5223 while :; do
5224 case " $extracted_archives " in
5225 *" $my_xlib_u "*)
5226 func_arith $extracted_serial + 1
5227 extracted_serial=$func_arith_result
5228 my_xlib_u=lt$extracted_serial-$my_xlib ;;
5229 *) break ;;
5230 esac
5231 done
5232 extracted_archives="$extracted_archives $my_xlib_u"
5233 my_xdir=$my_gentop/$my_xlib_u
5234
5235 func_mkdir_p "$my_xdir"
5236
5237 case $host in
5238 *-darwin*)
5239 func_verbose "Extracting $my_xabs"
5240 # Do not bother doing anything if just a dry run
5241 $opt_dry_run || {
5242 darwin_orig_dir=`pwd`
5243 cd $my_xdir || exit $?
5244 darwin_archive=$my_xabs
5245 darwin_curdir=`pwd`
5246 func_basename "$darwin_archive"
5247 darwin_base_archive=$func_basename_result
5248 darwin_arches=`$LIPO -info "$darwin_archive" 2>/dev/null | $GREP Architectures 2>/dev/null || true`
5249 if test -n "$darwin_arches"; then
5250 darwin_arches=`$ECHO "$darwin_arches" | $SED -e 's/.*are://'`
5251 darwin_arch=
5252 func_verbose "$darwin_base_archive has multiple architectures $darwin_arches"
5253 for darwin_arch in $darwin_arches; do
5254 func_mkdir_p "unfat-$$/$darwin_base_archive-$darwin_arch"
5255 $LIPO -thin $darwin_arch -output "unfat-$$/$darwin_base_archive-$darwin_arch/$darwin_base_archive" "$darwin_archive"
5256 cd "unfat-$$/$darwin_base_archive-$darwin_arch"
5257 func_extract_an_archive "`pwd`" "$darwin_base_archive"
5258 cd "$darwin_curdir"
5259 $RM "unfat-$$/$darwin_base_archive-$darwin_arch/$darwin_base_archive"
5260 done # $darwin_arches
5261 ## Okay now we've a bunch of thin objects, gotta fatten them up :)
5262 darwin_filelist=`find unfat-$$ -type f -name \*.o -print -o -name \*.lo -print | $SED -e "$sed_basename" | sort -u`
5263 darwin_file=
5264 darwin_files=
5265 for darwin_file in $darwin_filelist; do
5266 darwin_files=`find unfat-$$ -name $darwin_file -print | sort | $NL2SP`
5267 $LIPO -create -output "$darwin_file" $darwin_files
5268 done # $darwin_filelist
5269 $RM -rf unfat-$$
5270 cd "$darwin_orig_dir"
5271 else
5272 cd $darwin_orig_dir
5273 func_extract_an_archive "$my_xdir" "$my_xabs"
5274 fi # $darwin_arches
5275 } # !$opt_dry_run
5276 ;;
5277 *)
5278 func_extract_an_archive "$my_xdir" "$my_xabs"
5279 ;;
5280 esac
5281 my_oldobjs="$my_oldobjs "`find $my_xdir -name \*.$objext -print -o -name \*.lo -print | sort | $NL2SP`
5282 done
5283
5284 func_extract_archives_result=$my_oldobjs
5285 }
5286
5287
5288 # func_emit_wrapper [arg=no]
5289 #
5290 # Emit a libtool wrapper script on stdout.
5291 # Don't directly open a file because we may want to
5292 # incorporate the script contents within a cygwin/mingw
5293 # wrapper executable. Must ONLY be called from within
5294 # func_mode_link because it depends on a number of variables
5295 # set therein.
5296 #
5297 # ARG is the value that the WRAPPER_SCRIPT_BELONGS_IN_OBJDIR
5298 # variable will take. If 'yes', then the emitted script
5299 # will assume that the directory where it is stored is
5300 # the $objdir directory. This is a cygwin/mingw-specific
5301 # behavior.
5302 func_emit_wrapper ()
5303 {
5304 func_emit_wrapper_arg1=${1-no}
5305
5306 $ECHO "\
5307 #! $SHELL
5308
5309 # $output - temporary wrapper script for $objdir/$outputname
5310 # Generated by $PROGRAM (GNU $PACKAGE) $VERSION
5311 #
5312 # The $output program cannot be directly executed until all the libtool
5313 # libraries that it depends on are installed.
5314 #
5315 # This wrapper script should never be moved out of the build directory.
5316 # If it is, it will not operate correctly.
5317
5318 # Sed substitution that helps us do robust quoting. It backslashifies
5319 # metacharacters that are still active within double-quoted strings.
5320 sed_quote_subst='$sed_quote_subst'
5321
5322 # Be Bourne compatible
5323 if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then
5324 emulate sh
5325 NULLCMD=:
5326 # Zsh 3.x and 4.x performs word splitting on \${1+\"\$@\"}, which
5327 # is contrary to our usage. Disable this feature.
5328 alias -g '\${1+\"\$@\"}'='\"\$@\"'
5329 setopt NO_GLOB_SUBST
5330 else
5331 case \`(set -o) 2>/dev/null\` in *posix*) set -o posix;; esac
5332 fi
5333 BIN_SH=xpg4; export BIN_SH # for Tru64
5334 DUALCASE=1; export DUALCASE # for MKS sh
5335
5336 # The HP-UX ksh and POSIX shell print the target directory to stdout
5337 # if CDPATH is set.
5338 (unset CDPATH) >/dev/null 2>&1 && unset CDPATH
5339
5340 relink_command=\"$relink_command\"
5341
5342 # This environment variable determines our operation mode.
5343 if test \"\$libtool_install_magic\" = \"$magic\"; then
5344 # install mode needs the following variables:
5345 generated_by_libtool_version='$macro_version'
5346 notinst_deplibs='$notinst_deplibs'
5347 else
5348 # When we are sourced in execute mode, \$file and \$ECHO are already set.
5349 if test \"\$libtool_execute_magic\" != \"$magic\"; then
5350 file=\"\$0\""
5351
5352 qECHO=`$ECHO "$ECHO" | $SED "$sed_quote_subst"`
5353 $ECHO "\
5354
5355 # A function that is used when there is no print builtin or printf.
5356 func_fallback_echo ()
5357 {
5358 eval 'cat <<_LTECHO_EOF
5359 \$1
5360 _LTECHO_EOF'
5361 }
5362 ECHO=\"$qECHO\"
5363 fi
5364
5365 # Very basic option parsing. These options are (a) specific to
5366 # the libtool wrapper, (b) are identical between the wrapper
5367 # /script/ and the wrapper /executable/ that is used only on
5368 # windows platforms, and (c) all begin with the string "--lt-"
5369 # (application programs are unlikely to have options that match
5370 # this pattern).
5371 #
5372 # There are only two supported options: --lt-debug and
5373 # --lt-dump-script. There is, deliberately, no --lt-help.
5374 #
5375 # The first argument to this parsing function should be the
5376 # script's $0 value, followed by "$@".
5377 lt_option_debug=
5378 func_parse_lt_options ()
5379 {
5380 lt_script_arg0=\$0
5381 shift
5382 for lt_opt
5383 do
5384 case \"\$lt_opt\" in
5385 --lt-debug) lt_option_debug=1 ;;
5386 --lt-dump-script)
5387 lt_dump_D=\`\$ECHO \"X\$lt_script_arg0\" | $SED -e 's/^X//' -e 's%/[^/]*$%%'\`
5388 test \"X\$lt_dump_D\" = \"X\$lt_script_arg0\" && lt_dump_D=.
5389 lt_dump_F=\`\$ECHO \"X\$lt_script_arg0\" | $SED -e 's/^X//' -e 's%^.*/%%'\`
5390 cat \"\$lt_dump_D/\$lt_dump_F\"
5391 exit 0
5392 ;;
5393 --lt-*)
5394 \$ECHO \"Unrecognized --lt- option: '\$lt_opt'\" 1>&2
5395 exit 1
5396 ;;
5397 esac
5398 done
5399
5400 # Print the debug banner immediately:
5401 if test -n \"\$lt_option_debug\"; then
5402 echo \"$outputname:$output:\$LINENO: libtool wrapper (GNU $PACKAGE) $VERSION\" 1>&2
5403 fi
5404 }
5405
5406 # Used when --lt-debug. Prints its arguments to stdout
5407 # (redirection is the responsibility of the caller)
5408 func_lt_dump_args ()
5409 {
5410 lt_dump_args_N=1;
5411 for lt_arg
5412 do
5413 \$ECHO \"$outputname:$output:\$LINENO: newargv[\$lt_dump_args_N]: \$lt_arg\"
5414 lt_dump_args_N=\`expr \$lt_dump_args_N + 1\`
5415 done
5416 }
5417
5418 # Core function for launching the target application
5419 func_exec_program_core ()
5420 {
5421 "
5422 case $host in
5423 # Backslashes separate directories on plain windows
5424 *-*-mingw | *-*-os2* | *-cegcc*)
5425 $ECHO "\
5426 if test -n \"\$lt_option_debug\"; then
5427 \$ECHO \"$outputname:$output:\$LINENO: newargv[0]: \$progdir\\\\\$program\" 1>&2
5428 func_lt_dump_args \${1+\"\$@\"} 1>&2
5429 fi
5430 exec \"\$progdir\\\\\$program\" \${1+\"\$@\"}
5431 "
5432 ;;
5433
5434 *)
5435 $ECHO "\
5436 if test -n \"\$lt_option_debug\"; then
5437 \$ECHO \"$outputname:$output:\$LINENO: newargv[0]: \$progdir/\$program\" 1>&2
5438 func_lt_dump_args \${1+\"\$@\"} 1>&2
5439 fi
5440 exec \"\$progdir/\$program\" \${1+\"\$@\"}
5441 "
5442 ;;
5443 esac
5444 $ECHO "\
5445 \$ECHO \"\$0: cannot exec \$program \$*\" 1>&2
5446 exit 1
5447 }
5448
5449 # A function to encapsulate launching the target application
5450 # Strips options in the --lt-* namespace from \$@ and
5451 # launches target application with the remaining arguments.
5452 func_exec_program ()
5453 {
5454 case \" \$* \" in
5455 *\\ --lt-*)
5456 for lt_wr_arg
5457 do
5458 case \$lt_wr_arg in
5459 --lt-*) ;;
5460 *) set x \"\$@\" \"\$lt_wr_arg\"; shift;;
5461 esac
5462 shift
5463 done ;;
5464 esac
5465 func_exec_program_core \${1+\"\$@\"}
5466 }
5467
5468 # Parse options
5469 func_parse_lt_options \"\$0\" \${1+\"\$@\"}
5470
5471 # Find the directory that this script lives in.
5472 thisdir=\`\$ECHO \"\$file\" | $SED 's%/[^/]*$%%'\`
5473 test \"x\$thisdir\" = \"x\$file\" && thisdir=.
5474
5475 # Follow symbolic links until we get to the real thisdir.
5476 file=\`ls -ld \"\$file\" | $SED -n 's/.*-> //p'\`
5477 while test -n \"\$file\"; do
5478 destdir=\`\$ECHO \"\$file\" | $SED 's%/[^/]*\$%%'\`
5479
5480 # If there was a directory component, then change thisdir.
5481 if test \"x\$destdir\" != \"x\$file\"; then
5482 case \"\$destdir\" in
5483 [\\\\/]* | [A-Za-z]:[\\\\/]*) thisdir=\"\$destdir\" ;;
5484 *) thisdir=\"\$thisdir/\$destdir\" ;;
5485 esac
5486 fi
5487
5488 file=\`\$ECHO \"\$file\" | $SED 's%^.*/%%'\`
5489 file=\`ls -ld \"\$thisdir/\$file\" | $SED -n 's/.*-> //p'\`
5490 done
5491
5492 # Usually 'no', except on cygwin/mingw when embedded into
5493 # the cwrapper.
5494 WRAPPER_SCRIPT_BELONGS_IN_OBJDIR=$func_emit_wrapper_arg1
5495 if test \"\$WRAPPER_SCRIPT_BELONGS_IN_OBJDIR\" = \"yes\"; then
5496 # special case for '.'
5497 if test \"\$thisdir\" = \".\"; then
5498 thisdir=\`pwd\`
5499 fi
5500 # remove .libs from thisdir
5501 case \"\$thisdir\" in
5502 *[\\\\/]$objdir ) thisdir=\`\$ECHO \"\$thisdir\" | $SED 's%[\\\\/][^\\\\/]*$%%'\` ;;
5503 $objdir ) thisdir=. ;;
5504 esac
5505 fi
5506
5507 # Try to get the absolute directory name.
5508 absdir=\`cd \"\$thisdir\" && pwd\`
5509 test -n \"\$absdir\" && thisdir=\"\$absdir\"
5510 "
5511
5512 if test yes = "$fast_install"; then
5513 $ECHO "\
5514 program=lt-'$outputname'$exeext
5515 progdir=\"\$thisdir/$objdir\"
5516
5517 if test ! -f \"\$progdir/\$program\" ||
5518 { file=\`ls -1dt \"\$progdir/\$program\" \"\$progdir/../\$program\" 2>/dev/null | $SED 1q\`; \\
5519 test \"X\$file\" != \"X\$progdir/\$program\"; }; then
5520
5521 file=\"\$\$-\$program\"
5522
5523 if test ! -d \"\$progdir\"; then
5524 $MKDIR \"\$progdir\"
5525 else
5526 $RM \"\$progdir/\$file\"
5527 fi"
5528
5529 $ECHO "\
5530
5531 # relink executable if necessary
5532 if test -n \"\$relink_command\"; then
5533 if relink_command_output=\`eval \$relink_command 2>&1\`; then :
5534 else
5535 \$ECHO \"\$relink_command_output\" >&2
5536 $RM \"\$progdir/\$file\"
5537 exit 1
5538 fi
5539 fi
5540
5541 $MV \"\$progdir/\$file\" \"\$progdir/\$program\" 2>/dev/null ||
5542 { $RM \"\$progdir/\$program\";
5543 $MV \"\$progdir/\$file\" \"\$progdir/\$program\"; }
5544 $RM \"\$progdir/\$file\"
5545 fi"
5546 else
5547 $ECHO "\
5548 program='$outputname'
5549 progdir=\"\$thisdir/$objdir\"
5550 "
5551 fi
5552
5553 $ECHO "\
5554
5555 if test -f \"\$progdir/\$program\"; then"
5556
5557 # fixup the dll searchpath if we need to.
5558 #
5559 # Fix the DLL searchpath if we need to. Do this before prepending
5560 # to shlibpath, because on Windows, both are PATH and uninstalled
5561 # libraries must come first.
5562 if test -n "$dllsearchpath"; then
5563 $ECHO "\
5564 # Add the dll search path components to the executable PATH
5565 PATH=$dllsearchpath:\$PATH
5566 "
5567 fi
5568
5569 # Export our shlibpath_var if we have one.
5570 if test yes = "$shlibpath_overrides_runpath" && test -n "$shlibpath_var" && test -n "$temp_rpath"; then
5571 $ECHO "\
5572 # Add our own library path to $shlibpath_var
5573 $shlibpath_var=\"$temp_rpath\$$shlibpath_var\"
5574
5575 # Some systems cannot cope with colon-terminated $shlibpath_var
5576 # The second colon is a workaround for a bug in BeOS R4 sed
5577 $shlibpath_var=\`\$ECHO \"\$$shlibpath_var\" | $SED 's/::*\$//'\`
5578
5579 export $shlibpath_var
5580 "
5581 fi
5582
5583 $ECHO "\
5584 if test \"\$libtool_execute_magic\" != \"$magic\"; then
5585 # Run the actual program with our arguments.
5586 func_exec_program \${1+\"\$@\"}
5587 fi
5588 else
5589 # The program doesn't exist.
5590 \$ECHO \"\$0: error: '\$progdir/\$program' does not exist\" 1>&2
5591 \$ECHO \"This script is just a wrapper for \$program.\" 1>&2
5592 \$ECHO \"See the $PACKAGE documentation for more information.\" 1>&2
5593 exit 1
5594 fi
5595 fi\
5596 "
5597 }
5598
5599
5600 # func_emit_cwrapperexe_src
5601 # emit the source code for a wrapper executable on stdout
5602 # Must ONLY be called from within func_mode_link because
5603 # it depends on a number of variable set therein.
5604 func_emit_cwrapperexe_src ()
5605 {
5606 cat <<EOF
5607
5608 /* $cwrappersource - temporary wrapper executable for $objdir/$outputname
5609 Generated by $PROGRAM (GNU $PACKAGE) $VERSION
5610
5611 The $output program cannot be directly executed until all the libtool
5612 libraries that it depends on are installed.
5613
5614 This wrapper executable should never be moved out of the build directory.
5615 If it is, it will not operate correctly.
5616 */
5617 EOF
5618 cat <<"EOF"
5619 #ifdef _MSC_VER
5620 # define _CRT_SECURE_NO_DEPRECATE 1
5621 #endif
5622 #include <stdio.h>
5623 #include <stdlib.h>
5624 #ifdef _MSC_VER
5625 # include <direct.h>
5626 # include <process.h>
5627 # include <io.h>
5628 #else
5629 # include <unistd.h>
5630 # include <stdint.h>
5631 # ifdef __CYGWIN__
5632 # include <io.h>
5633 # endif
5634 #endif
5635 #include <malloc.h>
5636 #include <stdarg.h>
5637 #include <assert.h>
5638 #include <string.h>
5639 #include <ctype.h>
5640 #include <errno.h>
5641 #include <fcntl.h>
5642 #include <sys/stat.h>
5643
5644 #define STREQ(s1, s2) (strcmp ((s1), (s2)) == 0)
5645
5646 /* declarations of non-ANSI functions */
5647 #if defined __MINGW32__
5648 # ifdef __STRICT_ANSI__
5649 int _putenv (const char *);
5650 # endif
5651 #elif defined __CYGWIN__
5652 # ifdef __STRICT_ANSI__
5653 char *realpath (const char *, char *);
5654 int putenv (char *);
5655 int setenv (const char *, const char *, int);
5656 # endif
5657 /* #elif defined other_platform || defined ... */
5658 #endif
5659
5660 /* portability defines, excluding path handling macros */
5661 #if defined _MSC_VER
5662 # define setmode _setmode
5663 # define stat _stat
5664 # define chmod _chmod
5665 # define getcwd _getcwd
5666 # define putenv _putenv
5667 # define S_IXUSR _S_IEXEC
5668 #elif defined __MINGW32__
5669 # define setmode _setmode
5670 # define stat _stat
5671 # define chmod _chmod
5672 # define getcwd _getcwd
5673 # define putenv _putenv
5674 #elif defined __CYGWIN__
5675 # define HAVE_SETENV
5676 # define FOPEN_WB "wb"
5677 /* #elif defined other platforms ... */
5678 #endif
5679
5680 #if defined PATH_MAX
5681 # define LT_PATHMAX PATH_MAX
5682 #elif defined MAXPATHLEN
5683 # define LT_PATHMAX MAXPATHLEN
5684 #else
5685 # define LT_PATHMAX 1024
5686 #endif
5687
5688 #ifndef S_IXOTH
5689 # define S_IXOTH 0
5690 #endif
5691 #ifndef S_IXGRP
5692 # define S_IXGRP 0
5693 #endif
5694
5695 /* path handling portability macros */
5696 #ifndef DIR_SEPARATOR
5697 # define DIR_SEPARATOR '/'
5698 # define PATH_SEPARATOR ':'
5699 #endif
5700
5701 #if defined _WIN32 || defined __MSDOS__ || defined __DJGPP__ || \
5702 defined __OS2__
5703 # define HAVE_DOS_BASED_FILE_SYSTEM
5704 # define FOPEN_WB "wb"
5705 # ifndef DIR_SEPARATOR_2
5706 # define DIR_SEPARATOR_2 '\\'
5707 # endif
5708 # ifndef PATH_SEPARATOR_2
5709 # define PATH_SEPARATOR_2 ';'
5710 # endif
5711 #endif
5712
5713 #ifndef DIR_SEPARATOR_2
5714 # define IS_DIR_SEPARATOR(ch) ((ch) == DIR_SEPARATOR)
5715 #else /* DIR_SEPARATOR_2 */
5716 # define IS_DIR_SEPARATOR(ch) \
5717 (((ch) == DIR_SEPARATOR) || ((ch) == DIR_SEPARATOR_2))
5718 #endif /* DIR_SEPARATOR_2 */
5719
5720 #ifndef PATH_SEPARATOR_2
5721 # define IS_PATH_SEPARATOR(ch) ((ch) == PATH_SEPARATOR)
5722 #else /* PATH_SEPARATOR_2 */
5723 # define IS_PATH_SEPARATOR(ch) ((ch) == PATH_SEPARATOR_2)
5724 #endif /* PATH_SEPARATOR_2 */
5725
5726 #ifndef FOPEN_WB
5727 # define FOPEN_WB "w"
5728 #endif
5729 #ifndef _O_BINARY
5730 # define _O_BINARY 0
5731 #endif
5732
5733 #define XMALLOC(type, num) ((type *) xmalloc ((num) * sizeof(type)))
5734 #define XFREE(stale) do { \
5735 if (stale) { free (stale); stale = 0; } \
5736 } while (0)
5737
5738 #if defined LT_DEBUGWRAPPER
5739 static int lt_debug = 1;
5740 #else
5741 static int lt_debug = 0;
5742 #endif
5743
5744 const char *program_name = "libtool-wrapper"; /* in case xstrdup fails */
5745
5746 void *xmalloc (size_t num);
5747 char *xstrdup (const char *string);
5748 const char *base_name (const char *name);
5749 char *find_executable (const char *wrapper);
5750 char *chase_symlinks (const char *pathspec);
5751 int make_executable (const char *path);
5752 int check_executable (const char *path);
5753 char *strendzap (char *str, const char *pat);
5754 void lt_debugprintf (const char *file, int line, const char *fmt, ...);
5755 void lt_fatal (const char *file, int line, const char *message, ...);
5756 static const char *nonnull (const char *s);
5757 static const char *nonempty (const char *s);
5758 void lt_setenv (const char *name, const char *value);
5759 char *lt_extend_str (const char *orig_value, const char *add, int to_end);
5760 void lt_update_exe_path (const char *name, const char *value);
5761 void lt_update_lib_path (const char *name, const char *value);
5762 char **prepare_spawn (char **argv);
5763 void lt_dump_script (FILE *f);
5764 EOF
5765
5766 cat <<EOF
5767 #if __GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 5)
5768 # define externally_visible volatile
5769 #else
5770 # define externally_visible __attribute__((externally_visible)) volatile
5771 #endif
5772 externally_visible const char * MAGIC_EXE = "$magic_exe";
5773 const char * LIB_PATH_VARNAME = "$shlibpath_var";
5774 EOF
5775
5776 if test yes = "$shlibpath_overrides_runpath" && test -n "$shlibpath_var" && test -n "$temp_rpath"; then
5777 func_to_host_path "$temp_rpath"
5778 cat <<EOF
5779 const char * LIB_PATH_VALUE = "$func_to_host_path_result";
5780 EOF
5781 else
5782 cat <<"EOF"
5783 const char * LIB_PATH_VALUE = "";
5784 EOF
5785 fi
5786
5787 if test -n "$dllsearchpath"; then
5788 func_to_host_path "$dllsearchpath:"
5789 cat <<EOF
5790 const char * EXE_PATH_VARNAME = "PATH";
5791 const char * EXE_PATH_VALUE = "$func_to_host_path_result";
5792 EOF
5793 else
5794 cat <<"EOF"
5795 const char * EXE_PATH_VARNAME = "";
5796 const char * EXE_PATH_VALUE = "";
5797 EOF
5798 fi
5799
5800 if test yes = "$fast_install"; then
5801 cat <<EOF
5802 const char * TARGET_PROGRAM_NAME = "lt-$outputname"; /* hopefully, no .exe */
5803 EOF
5804 else
5805 cat <<EOF
5806 const char * TARGET_PROGRAM_NAME = "$outputname"; /* hopefully, no .exe */
5807 EOF
5808 fi
5809
5810
5811 cat <<"EOF"
5812
5813 #define LTWRAPPER_OPTION_PREFIX "--lt-"
5814
5815 static const char *ltwrapper_option_prefix = LTWRAPPER_OPTION_PREFIX;
5816 static const char *dumpscript_opt = LTWRAPPER_OPTION_PREFIX "dump-script";
5817 static const char *debug_opt = LTWRAPPER_OPTION_PREFIX "debug";
5818
5819 int
5820 main (int argc, char *argv[])
5821 {
5822 char **newargz;
5823 int newargc;
5824 char *tmp_pathspec;
5825 char *actual_cwrapper_path;
5826 char *actual_cwrapper_name;
5827 char *target_name;
5828 char *lt_argv_zero;
5829 int rval = 127;
5830
5831 int i;
5832
5833 program_name = (char *) xstrdup (base_name (argv[0]));
5834 newargz = XMALLOC (char *, (size_t) argc + 1);
5835
5836 /* very simple arg parsing; don't want to rely on getopt
5837 * also, copy all non cwrapper options to newargz, except
5838 * argz[0], which is handled differently
5839 */
5840 newargc=0;
5841 for (i = 1; i < argc; i++)
5842 {
5843 if (STREQ (argv[i], dumpscript_opt))
5844 {
5845 EOF
5846 case $host in
5847 *mingw* | *cygwin* )
5848 # make stdout use "unix" line endings
5849 echo " setmode(1,_O_BINARY);"
5850 ;;
5851 esac
5852
5853 cat <<"EOF"
5854 lt_dump_script (stdout);
5855 return 0;
5856 }
5857 if (STREQ (argv[i], debug_opt))
5858 {
5859 lt_debug = 1;
5860 continue;
5861 }
5862 if (STREQ (argv[i], ltwrapper_option_prefix))
5863 {
5864 /* however, if there is an option in the LTWRAPPER_OPTION_PREFIX
5865 namespace, but it is not one of the ones we know about and
5866 have already dealt with, above (inluding dump-script), then
5867 report an error. Otherwise, targets might begin to believe
5868 they are allowed to use options in the LTWRAPPER_OPTION_PREFIX
5869 namespace. The first time any user complains about this, we'll
5870 need to make LTWRAPPER_OPTION_PREFIX a configure-time option
5871 or a configure.ac-settable value.
5872 */
5873 lt_fatal (__FILE__, __LINE__,
5874 "unrecognized %s option: '%s'",
5875 ltwrapper_option_prefix, argv[i]);
5876 }
5877 /* otherwise ... */
5878 newargz[++newargc] = xstrdup (argv[i]);
5879 }
5880 newargz[++newargc] = NULL;
5881
5882 EOF
5883 cat <<EOF
5884 /* The GNU banner must be the first non-error debug message */
5885 lt_debugprintf (__FILE__, __LINE__, "libtool wrapper (GNU $PACKAGE) $VERSION\n");
5886 EOF
5887 cat <<"EOF"
5888 lt_debugprintf (__FILE__, __LINE__, "(main) argv[0]: %s\n", argv[0]);
5889 lt_debugprintf (__FILE__, __LINE__, "(main) program_name: %s\n", program_name);
5890
5891 tmp_pathspec = find_executable (argv[0]);
5892 if (tmp_pathspec == NULL)
5893 lt_fatal (__FILE__, __LINE__, "couldn't find %s", argv[0]);
5894 lt_debugprintf (__FILE__, __LINE__,
5895 "(main) found exe (before symlink chase) at: %s\n",
5896 tmp_pathspec);
5897
5898 actual_cwrapper_path = chase_symlinks (tmp_pathspec);
5899 lt_debugprintf (__FILE__, __LINE__,
5900 "(main) found exe (after symlink chase) at: %s\n",
5901 actual_cwrapper_path);
5902 XFREE (tmp_pathspec);
5903
5904 actual_cwrapper_name = xstrdup (base_name (actual_cwrapper_path));
5905 strendzap (actual_cwrapper_path, actual_cwrapper_name);
5906
5907 /* wrapper name transforms */
5908 strendzap (actual_cwrapper_name, ".exe");
5909 tmp_pathspec = lt_extend_str (actual_cwrapper_name, ".exe", 1);
5910 XFREE (actual_cwrapper_name);
5911 actual_cwrapper_name = tmp_pathspec;
5912 tmp_pathspec = 0;
5913
5914 /* target_name transforms -- use actual target program name; might have lt- prefix */
5915 target_name = xstrdup (base_name (TARGET_PROGRAM_NAME));
5916 strendzap (target_name, ".exe");
5917 tmp_pathspec = lt_extend_str (target_name, ".exe", 1);
5918 XFREE (target_name);
5919 target_name = tmp_pathspec;
5920 tmp_pathspec = 0;
5921
5922 lt_debugprintf (__FILE__, __LINE__,
5923 "(main) libtool target name: %s\n",
5924 target_name);
5925 EOF
5926
5927 cat <<EOF
5928 newargz[0] =
5929 XMALLOC (char, (strlen (actual_cwrapper_path) +
5930 strlen ("$objdir") + 1 + strlen (actual_cwrapper_name) + 1));
5931 strcpy (newargz[0], actual_cwrapper_path);
5932 strcat (newargz[0], "$objdir");
5933 strcat (newargz[0], "/");
5934 EOF
5935
5936 cat <<"EOF"
5937 /* stop here, and copy so we don't have to do this twice */
5938 tmp_pathspec = xstrdup (newargz[0]);
5939
5940 /* do NOT want the lt- prefix here, so use actual_cwrapper_name */
5941 strcat (newargz[0], actual_cwrapper_name);
5942
5943 /* DO want the lt- prefix here if it exists, so use target_name */
5944 lt_argv_zero = lt_extend_str (tmp_pathspec, target_name, 1);
5945 XFREE (tmp_pathspec);
5946 tmp_pathspec = NULL;
5947 EOF
5948
5949 case $host_os in
5950 mingw*)
5951 cat <<"EOF"
5952 {
5953 char* p;
5954 while ((p = strchr (newargz[0], '\\')) != NULL)
5955 {
5956 *p = '/';
5957 }
5958 while ((p = strchr (lt_argv_zero, '\\')) != NULL)
5959 {
5960 *p = '/';
5961 }
5962 }
5963 EOF
5964 ;;
5965 esac
5966
5967 cat <<"EOF"
5968 XFREE (target_name);
5969 XFREE (actual_cwrapper_path);
5970 XFREE (actual_cwrapper_name);
5971
5972 lt_setenv ("BIN_SH", "xpg4"); /* for Tru64 */
5973 lt_setenv ("DUALCASE", "1"); /* for MSK sh */
5974 /* Update the DLL searchpath. EXE_PATH_VALUE ($dllsearchpath) must
5975 be prepended before (that is, appear after) LIB_PATH_VALUE ($temp_rpath)
5976 because on Windows, both *_VARNAMEs are PATH but uninstalled
5977 libraries must come first. */
5978 lt_update_exe_path (EXE_PATH_VARNAME, EXE_PATH_VALUE);
5979 lt_update_lib_path (LIB_PATH_VARNAME, LIB_PATH_VALUE);
5980
5981 lt_debugprintf (__FILE__, __LINE__, "(main) lt_argv_zero: %s\n",
5982 nonnull (lt_argv_zero));
5983 for (i = 0; i < newargc; i++)
5984 {
5985 lt_debugprintf (__FILE__, __LINE__, "(main) newargz[%d]: %s\n",
5986 i, nonnull (newargz[i]));
5987 }
5988
5989 EOF
5990
5991 case $host_os in
5992 mingw*)
5993 cat <<"EOF"
5994 /* execv doesn't actually work on mingw as expected on unix */
5995 newargz = prepare_spawn (newargz);
5996 rval = (int) _spawnv (_P_WAIT, lt_argv_zero, (const char * const *) newargz);
5997 if (rval == -1)
5998 {
5999 /* failed to start process */
6000 lt_debugprintf (__FILE__, __LINE__,
6001 "(main) failed to launch target \"%s\": %s\n",
6002 lt_argv_zero, nonnull (strerror (errno)));
6003 return 127;
6004 }
6005 return rval;
6006 EOF
6007 ;;
6008 *)
6009 cat <<"EOF"
6010 execv (lt_argv_zero, newargz);
6011 return rval; /* =127, but avoids unused variable warning */
6012 EOF
6013 ;;
6014 esac
6015
6016 cat <<"EOF"
6017 }
6018
6019 void *
6020 xmalloc (size_t num)
6021 {
6022 void *p = (void *) malloc (num);
6023 if (!p)
6024 lt_fatal (__FILE__, __LINE__, "memory exhausted");
6025
6026 return p;
6027 }
6028
6029 char *
6030 xstrdup (const char *string)
6031 {
6032 return string ? strcpy ((char *) xmalloc (strlen (string) + 1),
6033 string) : NULL;
6034 }
6035
6036 const char *
6037 base_name (const char *name)
6038 {
6039 const char *base;
6040
6041 #if defined HAVE_DOS_BASED_FILE_SYSTEM
6042 /* Skip over the disk name in MSDOS pathnames. */
6043 if (isalpha ((unsigned char) name[0]) && name[1] == ':')
6044 name += 2;
6045 #endif
6046
6047 for (base = name; *name; name++)
6048 if (IS_DIR_SEPARATOR (*name))
6049 base = name + 1;
6050 return base;
6051 }
6052
6053 int
6054 check_executable (const char *path)
6055 {
6056 struct stat st;
6057
6058 lt_debugprintf (__FILE__, __LINE__, "(check_executable): %s\n",
6059 nonempty (path));
6060 if ((!path) || (!*path))
6061 return 0;
6062
6063 if ((stat (path, &st) >= 0)
6064 && (st.st_mode & (S_IXUSR | S_IXGRP | S_IXOTH)))
6065 return 1;
6066 else
6067 return 0;
6068 }
6069
6070 int
6071 make_executable (const char *path)
6072 {
6073 int rval = 0;
6074 struct stat st;
6075
6076 lt_debugprintf (__FILE__, __LINE__, "(make_executable): %s\n",
6077 nonempty (path));
6078 if ((!path) || (!*path))
6079 return 0;
6080
6081 if (stat (path, &st) >= 0)
6082 {
6083 rval = chmod (path, st.st_mode | S_IXOTH | S_IXGRP | S_IXUSR);
6084 }
6085 return rval;
6086 }
6087
6088 /* Searches for the full path of the wrapper. Returns
6089 newly allocated full path name if found, NULL otherwise
6090 Does not chase symlinks, even on platforms that support them.
6091 */
6092 char *
6093 find_executable (const char *wrapper)
6094 {
6095 int has_slash = 0;
6096 const char *p;
6097 const char *p_next;
6098 /* static buffer for getcwd */
6099 char tmp[LT_PATHMAX + 1];
6100 size_t tmp_len;
6101 char *concat_name;
6102
6103 lt_debugprintf (__FILE__, __LINE__, "(find_executable): %s\n",
6104 nonempty (wrapper));
6105
6106 if ((wrapper == NULL) || (*wrapper == '\0'))
6107 return NULL;
6108
6109 /* Absolute path? */
6110 #if defined HAVE_DOS_BASED_FILE_SYSTEM
6111 if (isalpha ((unsigned char) wrapper[0]) && wrapper[1] == ':')
6112 {
6113 concat_name = xstrdup (wrapper);
6114 if (check_executable (concat_name))
6115 return concat_name;
6116 XFREE (concat_name);
6117 }
6118 else
6119 {
6120 #endif
6121 if (IS_DIR_SEPARATOR (wrapper[0]))
6122 {
6123 concat_name = xstrdup (wrapper);
6124 if (check_executable (concat_name))
6125 return concat_name;
6126 XFREE (concat_name);
6127 }
6128 #if defined HAVE_DOS_BASED_FILE_SYSTEM
6129 }
6130 #endif
6131
6132 for (p = wrapper; *p; p++)
6133 if (*p == '/')
6134 {
6135 has_slash = 1;
6136 break;
6137 }
6138 if (!has_slash)
6139 {
6140 /* no slashes; search PATH */
6141 const char *path = getenv ("PATH");
6142 if (path != NULL)
6143 {
6144 for (p = path; *p; p = p_next)
6145 {
6146 const char *q;
6147 size_t p_len;
6148 for (q = p; *q; q++)
6149 if (IS_PATH_SEPARATOR (*q))
6150 break;
6151 p_len = (size_t) (q - p);
6152 p_next = (*q == '\0' ? q : q + 1);
6153 if (p_len == 0)
6154 {
6155 /* empty path: current directory */
6156 if (getcwd (tmp, LT_PATHMAX) == NULL)
6157 lt_fatal (__FILE__, __LINE__, "getcwd failed: %s",
6158 nonnull (strerror (errno)));
6159 tmp_len = strlen (tmp);
6160 concat_name =
6161 XMALLOC (char, tmp_len + 1 + strlen (wrapper) + 1);
6162 memcpy (concat_name, tmp, tmp_len);
6163 concat_name[tmp_len] = '/';
6164 strcpy (concat_name + tmp_len + 1, wrapper);
6165 }
6166 else
6167 {
6168 concat_name =
6169 XMALLOC (char, p_len + 1 + strlen (wrapper) + 1);
6170 memcpy (concat_name, p, p_len);
6171 concat_name[p_len] = '/';
6172 strcpy (concat_name + p_len + 1, wrapper);
6173 }
6174 if (check_executable (concat_name))
6175 return concat_name;
6176 XFREE (concat_name);
6177 }
6178 }
6179 /* not found in PATH; assume curdir */
6180 }
6181 /* Relative path | not found in path: prepend cwd */
6182 if (getcwd (tmp, LT_PATHMAX) == NULL)
6183 lt_fatal (__FILE__, __LINE__, "getcwd failed: %s",
6184 nonnull (strerror (errno)));
6185 tmp_len = strlen (tmp);
6186 concat_name = XMALLOC (char, tmp_len + 1 + strlen (wrapper) + 1);
6187 memcpy (concat_name, tmp, tmp_len);
6188 concat_name[tmp_len] = '/';
6189 strcpy (concat_name + tmp_len + 1, wrapper);
6190
6191 if (check_executable (concat_name))
6192 return concat_name;
6193 XFREE (concat_name);
6194 return NULL;
6195 }
6196
6197 char *
6198 chase_symlinks (const char *pathspec)
6199 {
6200 #ifndef S_ISLNK
6201 return xstrdup (pathspec);
6202 #else
6203 char buf[LT_PATHMAX];
6204 struct stat s;
6205 char *tmp_pathspec = xstrdup (pathspec);
6206 char *p;
6207 int has_symlinks = 0;
6208 while (strlen (tmp_pathspec) && !has_symlinks)
6209 {
6210 lt_debugprintf (__FILE__, __LINE__,
6211 "checking path component for symlinks: %s\n",
6212 tmp_pathspec);
6213 if (lstat (tmp_pathspec, &s) == 0)
6214 {
6215 if (S_ISLNK (s.st_mode) != 0)
6216 {
6217 has_symlinks = 1;
6218 break;
6219 }
6220
6221 /* search backwards for last DIR_SEPARATOR */
6222 p = tmp_pathspec + strlen (tmp_pathspec) - 1;
6223 while ((p > tmp_pathspec) && (!IS_DIR_SEPARATOR (*p)))
6224 p--;
6225 if ((p == tmp_pathspec) && (!IS_DIR_SEPARATOR (*p)))
6226 {
6227 /* no more DIR_SEPARATORS left */
6228 break;
6229 }
6230 *p = '\0';
6231 }
6232 else
6233 {
6234 lt_fatal (__FILE__, __LINE__,
6235 "error accessing file \"%s\": %s",
6236 tmp_pathspec, nonnull (strerror (errno)));
6237 }
6238 }
6239 XFREE (tmp_pathspec);
6240
6241 if (!has_symlinks)
6242 {
6243 return xstrdup (pathspec);
6244 }
6245
6246 tmp_pathspec = realpath (pathspec, buf);
6247 if (tmp_pathspec == 0)
6248 {
6249 lt_fatal (__FILE__, __LINE__,
6250 "could not follow symlinks for %s", pathspec);
6251 }
6252 return xstrdup (tmp_pathspec);
6253 #endif
6254 }
6255
6256 char *
6257 strendzap (char *str, const char *pat)
6258 {
6259 size_t len, patlen;
6260
6261 assert (str != NULL);
6262 assert (pat != NULL);
6263
6264 len = strlen (str);
6265 patlen = strlen (pat);
6266
6267 if (patlen <= len)
6268 {
6269 str += len - patlen;
6270 if (STREQ (str, pat))
6271 *str = '\0';
6272 }
6273 return str;
6274 }
6275
6276 void
6277 lt_debugprintf (const char *file, int line, const char *fmt, ...)
6278 {
6279 va_list args;
6280 if (lt_debug)
6281 {
6282 (void) fprintf (stderr, "%s:%s:%d: ", program_name, file, line);
6283 va_start (args, fmt);
6284 (void) vfprintf (stderr, fmt, args);
6285 va_end (args);
6286 }
6287 }
6288
6289 static void
6290 lt_error_core (int exit_status, const char *file,
6291 int line, const char *mode,
6292 const char *message, va_list ap)
6293 {
6294 fprintf (stderr, "%s:%s:%d: %s: ", program_name, file, line, mode);
6295 vfprintf (stderr, message, ap);
6296 fprintf (stderr, ".\n");
6297
6298 if (exit_status >= 0)
6299 exit (exit_status);
6300 }
6301
6302 void
6303 lt_fatal (const char *file, int line, const char *message, ...)
6304 {
6305 va_list ap;
6306 va_start (ap, message);
6307 lt_error_core (EXIT_FAILURE, file, line, "FATAL", message, ap);
6308 va_end (ap);
6309 }
6310
6311 static const char *
6312 nonnull (const char *s)
6313 {
6314 return s ? s : "(null)";
6315 }
6316
6317 static const char *
6318 nonempty (const char *s)
6319 {
6320 return (s && !*s) ? "(empty)" : nonnull (s);
6321 }
6322
6323 void
6324 lt_setenv (const char *name, const char *value)
6325 {
6326 lt_debugprintf (__FILE__, __LINE__,
6327 "(lt_setenv) setting '%s' to '%s'\n",
6328 nonnull (name), nonnull (value));
6329 {
6330 #ifdef HAVE_SETENV
6331 /* always make a copy, for consistency with !HAVE_SETENV */
6332 char *str = xstrdup (value);
6333 setenv (name, str, 1);
6334 #else
6335 size_t len = strlen (name) + 1 + strlen (value) + 1;
6336 char *str = XMALLOC (char, len);
6337 sprintf (str, "%s=%s", name, value);
6338 if (putenv (str) != EXIT_SUCCESS)
6339 {
6340 XFREE (str);
6341 }
6342 #endif
6343 }
6344 }
6345
6346 char *
6347 lt_extend_str (const char *orig_value, const char *add, int to_end)
6348 {
6349 char *new_value;
6350 if (orig_value && *orig_value)
6351 {
6352 size_t orig_value_len = strlen (orig_value);
6353 size_t add_len = strlen (add);
6354 new_value = XMALLOC (char, add_len + orig_value_len + 1);
6355 if (to_end)
6356 {
6357 strcpy (new_value, orig_value);
6358 strcpy (new_value + orig_value_len, add);
6359 }
6360 else
6361 {
6362 strcpy (new_value, add);
6363 strcpy (new_value + add_len, orig_value);
6364 }
6365 }
6366 else
6367 {
6368 new_value = xstrdup (add);
6369 }
6370 return new_value;
6371 }
6372
6373 void
6374 lt_update_exe_path (const char *name, const char *value)
6375 {
6376 lt_debugprintf (__FILE__, __LINE__,
6377 "(lt_update_exe_path) modifying '%s' by prepending '%s'\n",
6378 nonnull (name), nonnull (value));
6379
6380 if (name && *name && value && *value)
6381 {
6382 char *new_value = lt_extend_str (getenv (name), value, 0);
6383 /* some systems can't cope with a ':'-terminated path #' */
6384 size_t len = strlen (new_value);
6385 while ((len > 0) && IS_PATH_SEPARATOR (new_value[len-1]))
6386 {
6387 new_value[--len] = '\0';
6388 }
6389 lt_setenv (name, new_value);
6390 XFREE (new_value);
6391 }
6392 }
6393
6394 void
6395 lt_update_lib_path (const char *name, const char *value)
6396 {
6397 lt_debugprintf (__FILE__, __LINE__,
6398 "(lt_update_lib_path) modifying '%s' by prepending '%s'\n",
6399 nonnull (name), nonnull (value));
6400
6401 if (name && *name && value && *value)
6402 {
6403 char *new_value = lt_extend_str (getenv (name), value, 0);
6404 lt_setenv (name, new_value);
6405 XFREE (new_value);
6406 }
6407 }
6408
6409 EOF
6410 case $host_os in
6411 mingw*)
6412 cat <<"EOF"
6413
6414 /* Prepares an argument vector before calling spawn().
6415 Note that spawn() does not by itself call the command interpreter
6416 (getenv ("COMSPEC") != NULL ? getenv ("COMSPEC") :
6417 ({ OSVERSIONINFO v; v.dwOSVersionInfoSize = sizeof(OSVERSIONINFO);
6418 GetVersionEx(&v);
6419 v.dwPlatformId == VER_PLATFORM_WIN32_NT;
6420 }) ? "cmd.exe" : "command.com").
6421 Instead it simply concatenates the arguments, separated by ' ', and calls
6422 CreateProcess(). We must quote the arguments since Win32 CreateProcess()
6423 interprets characters like ' ', '\t', '\\', '"' (but not '<' and '>') in a
6424 special way:
6425 - Space and tab are interpreted as delimiters. They are not treated as
6426 delimiters if they are surrounded by double quotes: "...".
6427 - Unescaped double quotes are removed from the input. Their only effect is
6428 that within double quotes, space and tab are treated like normal
6429 characters.
6430 - Backslashes not followed by double quotes are not special.
6431 - But 2*n+1 backslashes followed by a double quote become
6432 n backslashes followed by a double quote (n >= 0):
6433 \" -> "
6434 \\\" -> \"
6435 \\\\\" -> \\"
6436 */
6437 #define SHELL_SPECIAL_CHARS "\"\\ \001\002\003\004\005\006\007\010\011\012\013\014\015\016\017\020\021\022\023\024\025\026\027\030\031\032\033\034\035\036\037"
6438 #define SHELL_SPACE_CHARS " \001\002\003\004\005\006\007\010\011\012\013\014\015\016\017\020\021\022\023\024\025\026\027\030\031\032\033\034\035\036\037"
6439 char **
6440 prepare_spawn (char **argv)
6441 {
6442 size_t argc;
6443 char **new_argv;
6444 size_t i;
6445
6446 /* Count number of arguments. */
6447 for (argc = 0; argv[argc] != NULL; argc++)
6448 ;
6449
6450 /* Allocate new argument vector. */
6451 new_argv = XMALLOC (char *, argc + 1);
6452
6453 /* Put quoted arguments into the new argument vector. */
6454 for (i = 0; i < argc; i++)
6455 {
6456 const char *string = argv[i];
6457
6458 if (string[0] == '\0')
6459 new_argv[i] = xstrdup ("\"\"");
6460 else if (strpbrk (string, SHELL_SPECIAL_CHARS) != NULL)
6461 {
6462 int quote_around = (strpbrk (string, SHELL_SPACE_CHARS) != NULL);
6463 size_t length;
6464 unsigned int backslashes;
6465 const char *s;
6466 char *quoted_string;
6467 char *p;
6468
6469 length = 0;
6470 backslashes = 0;
6471 if (quote_around)
6472 length++;
6473 for (s = string; *s != '\0'; s++)
6474 {
6475 char c = *s;
6476 if (c == '"')
6477 length += backslashes + 1;
6478 length++;
6479 if (c == '\\')
6480 backslashes++;
6481 else
6482 backslashes = 0;
6483 }
6484 if (quote_around)
6485 length += backslashes + 1;
6486
6487 quoted_string = XMALLOC (char, length + 1);
6488
6489 p = quoted_string;
6490 backslashes = 0;
6491 if (quote_around)
6492 *p++ = '"';
6493 for (s = string; *s != '\0'; s++)
6494 {
6495 char c = *s;
6496 if (c == '"')
6497 {
6498 unsigned int j;
6499 for (j = backslashes + 1; j > 0; j--)
6500 *p++ = '\\';
6501 }
6502 *p++ = c;
6503 if (c == '\\')
6504 backslashes++;
6505 else
6506 backslashes = 0;
6507 }
6508 if (quote_around)
6509 {
6510 unsigned int j;
6511 for (j = backslashes; j > 0; j--)
6512 *p++ = '\\';
6513 *p++ = '"';
6514 }
6515 *p = '\0';
6516
6517 new_argv[i] = quoted_string;
6518 }
6519 else
6520 new_argv[i] = (char *) string;
6521 }
6522 new_argv[argc] = NULL;
6523
6524 return new_argv;
6525 }
6526 EOF
6527 ;;
6528 esac
6529
6530 cat <<"EOF"
6531 void lt_dump_script (FILE* f)
6532 {
6533 EOF
6534 func_emit_wrapper yes |
6535 $SED -n -e '
6536 s/^\(.\{79\}\)\(..*\)/\1\
6537 \2/
6538 h
6539 s/\([\\"]\)/\\\1/g
6540 s/$/\\n/
6541 s/\([^\n]*\).*/ fputs ("\1", f);/p
6542 g
6543 D'
6544 cat <<"EOF"
6545 }
6546 EOF
6547 }
6548 # end: func_emit_cwrapperexe_src
6549
6550 # func_win32_import_lib_p ARG
6551 # True if ARG is an import lib, as indicated by $file_magic_cmd
6552 func_win32_import_lib_p ()
6553 {
6554 $debug_cmd
6555
6556 case `eval $file_magic_cmd \"\$1\" 2>/dev/null | $SED -e 10q` in
6557 *import*) : ;;
6558 *) false ;;
6559 esac
6560 }
6561
6562 # func_suncc_cstd_abi
6563 # !!ONLY CALL THIS FOR SUN CC AFTER $compile_command IS FULLY EXPANDED!!
6564 # Several compiler flags select an ABI that is incompatible with the
6565 # Cstd library. Avoid specifying it if any are in CXXFLAGS.
6566 func_suncc_cstd_abi ()
6567 {
6568 $debug_cmd
6569
6570 case " $compile_command " in
6571 *" -compat=g "*|*\ -std=c++[0-9][0-9]\ *|*" -library=stdcxx4 "*|*" -library=stlport4 "*)
6572 suncc_use_cstd_abi=no
6573 ;;
6574 *)
6575 suncc_use_cstd_abi=yes
6576 ;;
6577 esac
6578 }
6579
6580 # func_mode_link arg...
6581 func_mode_link ()
6582 {
6583 $debug_cmd
6584
6585 case $host in
6586 *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*)
6587 # It is impossible to link a dll without this setting, and
6588 # we shouldn't force the makefile maintainer to figure out
6589 # what system we are compiling for in order to pass an extra
6590 # flag for every libtool invocation.
6591 # allow_undefined=no
6592
6593 # FIXME: Unfortunately, there are problems with the above when trying
6594 # to make a dll that has undefined symbols, in which case not
6595 # even a static library is built. For now, we need to specify
6596 # -no-undefined on the libtool link line when we can be certain
6597 # that all symbols are satisfied, otherwise we get a static library.
6598 allow_undefined=yes
6599 ;;
6600 *)
6601 allow_undefined=yes
6602 ;;
6603 esac
6604 libtool_args=$nonopt
6605 base_compile="$nonopt $@"
6606 compile_command=$nonopt
6607 finalize_command=$nonopt
6608
6609 compile_rpath=
6610 finalize_rpath=
6611 compile_shlibpath=
6612 finalize_shlibpath=
6613 convenience=
6614 old_convenience=
6615 deplibs=
6616 old_deplibs=
6617 compiler_flags=
6618 linker_flags=
6619 dllsearchpath=
6620 lib_search_path=`pwd`
6621 inst_prefix_dir=
6622 new_inherited_linker_flags=
6623
6624 avoid_version=no
6625 bindir=
6626 dlfiles=
6627 dlprefiles=
6628 dlself=no
6629 export_dynamic=no
6630 export_symbols=
6631 export_symbols_regex=
6632 generated=
6633 libobjs=
6634 ltlibs=
6635 module=no
6636 no_install=no
6637 objs=
6638 os2dllname=
6639 non_pic_objects=
6640 precious_files_regex=
6641 prefer_static_libs=no
6642 preload=false
6643 prev=
6644 prevarg=
6645 release=
6646 rpath=
6647 xrpath=
6648 perm_rpath=
6649 temp_rpath=
6650 thread_safe=no
6651 vinfo=
6652 vinfo_number=no
6653 weak_libs=
6654 single_module=$wl-single_module
6655 func_infer_tag $base_compile
6656
6657 # We need to know -static, to get the right output filenames.
6658 for arg
6659 do
6660 case $arg in
6661 -shared)
6662 test yes != "$build_libtool_libs" \
6663 && func_fatal_configuration "cannot build a shared library"
6664 build_old_libs=no
6665 break
6666 ;;
6667 -all-static | -static | -static-libtool-libs)
6668 case $arg in
6669 -all-static)
6670 if test yes = "$build_libtool_libs" && test -z "$link_static_flag"; then
6671 func_warning "complete static linking is impossible in this configuration"
6672 fi
6673 if test -n "$link_static_flag"; then
6674 dlopen_self=$dlopen_self_static
6675 fi
6676 prefer_static_libs=yes
6677 ;;
6678 -static)
6679 if test -z "$pic_flag" && test -n "$link_static_flag"; then
6680 dlopen_self=$dlopen_self_static
6681 fi
6682 prefer_static_libs=built
6683 ;;
6684 -static-libtool-libs)
6685 if test -z "$pic_flag" && test -n "$link_static_flag"; then
6686 dlopen_self=$dlopen_self_static
6687 fi
6688 prefer_static_libs=yes
6689 ;;
6690 esac
6691 build_libtool_libs=no
6692 build_old_libs=yes
6693 break
6694 ;;
6695 esac
6696 done
6697
6698 # See if our shared archives depend on static archives.
6699 test -n "$old_archive_from_new_cmds" && build_old_libs=yes
6700
6701 # Go through the arguments, transforming them on the way.
6702 while test "$#" -gt 0; do
6703 arg=$1
6704 shift
6705 func_quote_for_eval "$arg"
6706 qarg=$func_quote_for_eval_unquoted_result
6707 func_append libtool_args " $func_quote_for_eval_result"
6708
6709 # If the previous option needs an argument, assign it.
6710 if test -n "$prev"; then
6711 case $prev in
6712 output)
6713 func_append compile_command " @OUTPUT@"
6714 func_append finalize_command " @OUTPUT@"
6715 ;;
6716 esac
6717
6718 case $prev in
6719 bindir)
6720 bindir=$arg
6721 prev=
6722 continue
6723 ;;
6724 dlfiles|dlprefiles)
6725 $preload || {
6726 # Add the symbol object into the linking commands.
6727 func_append compile_command " @SYMFILE@"
6728 func_append finalize_command " @SYMFILE@"
6729 preload=:
6730 }
6731 case $arg in
6732 *.la | *.lo) ;; # We handle these cases below.
6733 force)
6734 if test no = "$dlself"; then
6735 dlself=needless
6736 export_dynamic=yes
6737 fi
6738 prev=
6739 continue
6740 ;;
6741 self)
6742 if test dlprefiles = "$prev"; then
6743 dlself=yes
6744 elif test dlfiles = "$prev" && test yes != "$dlopen_self"; then
6745 dlself=yes
6746 else
6747 dlself=needless
6748 export_dynamic=yes
6749 fi
6750 prev=
6751 continue
6752 ;;
6753 *)
6754 if test dlfiles = "$prev"; then
6755 func_append dlfiles " $arg"
6756 else
6757 func_append dlprefiles " $arg"
6758 fi
6759 prev=
6760 continue
6761 ;;
6762 esac
6763 ;;
6764 expsyms)
6765 export_symbols=$arg
6766 test -f "$arg" \
6767 || func_fatal_error "symbol file '$arg' does not exist"
6768 prev=
6769 continue
6770 ;;
6771 expsyms_regex)
6772 export_symbols_regex=$arg
6773 prev=
6774 continue
6775 ;;
6776 framework)
6777 case $host in
6778 *-*-darwin*)
6779 case "$deplibs " in
6780 *" $qarg.ltframework "*) ;;
6781 *) func_append deplibs " $qarg.ltframework" # this is fixed later
6782 ;;
6783 esac
6784 ;;
6785 esac
6786 prev=
6787 continue
6788 ;;
6789 inst_prefix)
6790 inst_prefix_dir=$arg
6791 prev=
6792 continue
6793 ;;
6794 mllvm)
6795 # Clang does not use LLVM to link, so we can simply discard any
6796 # '-mllvm $arg' options when doing the link step.
6797 prev=
6798 continue
6799 ;;
6800 objectlist)
6801 if test -f "$arg"; then
6802 save_arg=$arg
6803 moreargs=
6804 for fil in `cat "$save_arg"`
6805 do
6806 # func_append moreargs " $fil"
6807 arg=$fil
6808 # A libtool-controlled object.
6809
6810 # Check to see that this really is a libtool object.
6811 if func_lalib_unsafe_p "$arg"; then
6812 pic_object=
6813 non_pic_object=
6814
6815 # Read the .lo file
6816 func_source "$arg"
6817
6818 if test -z "$pic_object" ||
6819 test -z "$non_pic_object" ||
6820 test none = "$pic_object" &&
6821 test none = "$non_pic_object"; then
6822 func_fatal_error "cannot find name of object for '$arg'"
6823 fi
6824
6825 # Extract subdirectory from the argument.
6826 func_dirname "$arg" "/" ""
6827 xdir=$func_dirname_result
6828
6829 if test none != "$pic_object"; then
6830 # Prepend the subdirectory the object is found in.
6831 pic_object=$xdir$pic_object
6832
6833 if test dlfiles = "$prev"; then
6834 if test yes = "$build_libtool_libs" && test yes = "$dlopen_support"; then
6835 func_append dlfiles " $pic_object"
6836 prev=
6837 continue
6838 else
6839 # If libtool objects are unsupported, then we need to preload.
6840 prev=dlprefiles
6841 fi
6842 fi
6843
6844 # CHECK ME: I think I busted this. -Ossama
6845 if test dlprefiles = "$prev"; then
6846 # Preload the old-style object.
6847 func_append dlprefiles " $pic_object"
6848 prev=
6849 fi
6850
6851 # A PIC object.
6852 func_append libobjs " $pic_object"
6853 arg=$pic_object
6854 fi
6855
6856 # Non-PIC object.
6857 if test none != "$non_pic_object"; then
6858 # Prepend the subdirectory the object is found in.
6859 non_pic_object=$xdir$non_pic_object
6860
6861 # A standard non-PIC object
6862 func_append non_pic_objects " $non_pic_object"
6863 if test -z "$pic_object" || test none = "$pic_object"; then
6864 arg=$non_pic_object
6865 fi
6866 else
6867 # If the PIC object exists, use it instead.
6868 # $xdir was prepended to $pic_object above.
6869 non_pic_object=$pic_object
6870 func_append non_pic_objects " $non_pic_object"
6871 fi
6872 else
6873 # Only an error if not doing a dry-run.
6874 if $opt_dry_run; then
6875 # Extract subdirectory from the argument.
6876 func_dirname "$arg" "/" ""
6877 xdir=$func_dirname_result
6878
6879 func_lo2o "$arg"
6880 pic_object=$xdir$objdir/$func_lo2o_result
6881 non_pic_object=$xdir$func_lo2o_result
6882 func_append libobjs " $pic_object"
6883 func_append non_pic_objects " $non_pic_object"
6884 else
6885 func_fatal_error "'$arg' is not a valid libtool object"
6886 fi
6887 fi
6888 done
6889 else
6890 func_fatal_error "link input file '$arg' does not exist"
6891 fi
6892 arg=$save_arg
6893 prev=
6894 continue
6895 ;;
6896 os2dllname)
6897 os2dllname=$arg
6898 prev=
6899 continue
6900 ;;
6901 precious_regex)
6902 precious_files_regex=$arg
6903 prev=
6904 continue
6905 ;;
6906 release)
6907 release=-$arg
6908 prev=
6909 continue
6910 ;;
6911 rpath | xrpath)
6912 # We need an absolute path.
6913 case $arg in
6914 [\\/]* | [A-Za-z]:[\\/]*) ;;
6915 *)
6916 func_fatal_error "only absolute run-paths are allowed"
6917 ;;
6918 esac
6919 if test rpath = "$prev"; then
6920 case "$rpath " in
6921 *" $arg "*) ;;
6922 *) func_append rpath " $arg" ;;
6923 esac
6924 else
6925 case "$xrpath " in
6926 *" $arg "*) ;;
6927 *) func_append xrpath " $arg" ;;
6928 esac
6929 fi
6930 prev=
6931 continue
6932 ;;
6933 shrext)
6934 shrext_cmds=$arg
6935 prev=
6936 continue
6937 ;;
6938 weak)
6939 func_append weak_libs " $arg"
6940 prev=
6941 continue
6942 ;;
6943 xcclinker)
6944 func_append linker_flags " $qarg"
6945 func_append compiler_flags " $qarg"
6946 prev=
6947 func_append compile_command " $qarg"
6948 func_append finalize_command " $qarg"
6949 continue
6950 ;;
6951 xcompiler)
6952 func_append compiler_flags " $qarg"
6953 prev=
6954 func_append compile_command " $qarg"
6955 func_append finalize_command " $qarg"
6956 continue
6957 ;;
6958 xlinker)
6959 func_append linker_flags " $qarg"
6960 func_append compiler_flags " $wl$qarg"
6961 prev=
6962 func_append compile_command " $wl$qarg"
6963 func_append finalize_command " $wl$qarg"
6964 continue
6965 ;;
6966 *)
6967 eval "$prev=\"\$arg\""
6968 prev=
6969 continue
6970 ;;
6971 esac
6972 fi # test -n "$prev"
6973
6974 prevarg=$arg
6975
6976 case $arg in
6977 -all-static)
6978 if test -n "$link_static_flag"; then
6979 # See comment for -static flag below, for more details.
6980 func_append compile_command " $link_static_flag"
6981 func_append finalize_command " $link_static_flag"
6982 fi
6983 continue
6984 ;;
6985
6986 -allow-undefined)
6987 # FIXME: remove this flag sometime in the future.
6988 func_fatal_error "'-allow-undefined' must not be used because it is the default"
6989 ;;
6990
6991 -avoid-version)
6992 avoid_version=yes
6993 continue
6994 ;;
6995
6996 -bindir)
6997 prev=bindir
6998 continue
6999 ;;
7000
7001 -dlopen)
7002 prev=dlfiles
7003 continue
7004 ;;
7005
7006 -dlpreopen)
7007 prev=dlprefiles
7008 continue
7009 ;;
7010
7011 -export-dynamic)
7012 export_dynamic=yes
7013 continue
7014 ;;
7015
7016 -export-symbols | -export-symbols-regex)
7017 if test -n "$export_symbols" || test -n "$export_symbols_regex"; then
7018 func_fatal_error "more than one -exported-symbols argument is not allowed"
7019 fi
7020 if test X-export-symbols = "X$arg"; then
7021 prev=expsyms
7022 else
7023 prev=expsyms_regex
7024 fi
7025 continue
7026 ;;
7027
7028 -framework)
7029 prev=framework
7030 continue
7031 ;;
7032
7033 -inst-prefix-dir)
7034 prev=inst_prefix
7035 continue
7036 ;;
7037
7038 # The native IRIX linker understands -LANG:*, -LIST:* and -LNO:*
7039 # so, if we see these flags be careful not to treat them like -L
7040 -L[A-Z][A-Z]*:*)
7041 case $with_gcc/$host in
7042 no/*-*-irix* | /*-*-irix*)
7043 func_append compile_command " $arg"
7044 func_append finalize_command " $arg"
7045 ;;
7046 esac
7047 continue
7048 ;;
7049
7050 -L*)
7051 func_stripname "-L" '' "$arg"
7052 if test -z "$func_stripname_result"; then
7053 if test "$#" -gt 0; then
7054 func_fatal_error "require no space between '-L' and '$1'"
7055 else
7056 func_fatal_error "need path for '-L' option"
7057 fi
7058 fi
7059 func_resolve_sysroot "$func_stripname_result"
7060 dir=$func_resolve_sysroot_result
7061 # We need an absolute path.
7062 case $dir in
7063 [\\/]* | [A-Za-z]:[\\/]*) ;;
7064 *)
7065 absdir=`cd "$dir" && pwd`
7066 test -z "$absdir" && \
7067 func_fatal_error "cannot determine absolute directory name of '$dir'"
7068 dir=$absdir
7069 ;;
7070 esac
7071 case "$deplibs " in
7072 *" -L$dir "* | *" $arg "*)
7073 # Will only happen for absolute or sysroot arguments
7074 ;;
7075 *)
7076 # Preserve sysroot, but never include relative directories
7077 case $dir in
7078 [\\/]* | [A-Za-z]:[\\/]* | =*) func_append deplibs " $arg" ;;
7079 *) func_append deplibs " -L$dir" ;;
7080 esac
7081 func_append lib_search_path " $dir"
7082 ;;
7083 esac
7084 case $host in
7085 *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*)
7086 testbindir=`$ECHO "$dir" | $SED 's*/lib$*/bin*'`
7087 case :$dllsearchpath: in
7088 *":$dir:"*) ;;
7089 ::) dllsearchpath=$dir;;
7090 *) func_append dllsearchpath ":$dir";;
7091 esac
7092 case :$dllsearchpath: in
7093 *":$testbindir:"*) ;;
7094 ::) dllsearchpath=$testbindir;;
7095 *) func_append dllsearchpath ":$testbindir";;
7096 esac
7097 ;;
7098 esac
7099 continue
7100 ;;
7101
7102 -l*)
7103 if test X-lc = "X$arg" || test X-lm = "X$arg"; then
7104 case $host in
7105 *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-beos* | *-cegcc* | *-*-haiku*)
7106 # These systems don't actually have a C or math library (as such)
7107 continue
7108 ;;
7109 *-*-os2*)
7110 # These systems don't actually have a C library (as such)
7111 test X-lc = "X$arg" && continue
7112 ;;
7113 *-*-openbsd* | *-*-freebsd* | *-*-dragonfly* | *-*-bitrig*)
7114 # Do not include libc due to us having libc/libc_r.
7115 test X-lc = "X$arg" && continue
7116 ;;
7117 *-*-rhapsody* | *-*-darwin1.[012])
7118 # Rhapsody C and math libraries are in the System framework
7119 func_append deplibs " System.ltframework"
7120 continue
7121 ;;
7122 *-*-sco3.2v5* | *-*-sco5v6*)
7123 # Causes problems with __ctype
7124 test X-lc = "X$arg" && continue
7125 ;;
7126 *-*-sysv4.2uw2* | *-*-sysv5* | *-*-unixware* | *-*-OpenUNIX*)
7127 # Compiler inserts libc in the correct place for threads to work
7128 test X-lc = "X$arg" && continue
7129 ;;
7130 esac
7131 elif test X-lc_r = "X$arg"; then
7132 case $host in
7133 *-*-openbsd* | *-*-freebsd* | *-*-dragonfly* | *-*-bitrig*)
7134 # Do not include libc_r directly, use -pthread flag.
7135 continue
7136 ;;
7137 esac
7138 fi
7139 func_append deplibs " $arg"
7140 continue
7141 ;;
7142
7143 -mllvm)
7144 prev=mllvm
7145 continue
7146 ;;
7147
7148 -module)
7149 module=yes
7150 continue
7151 ;;
7152
7153 # Tru64 UNIX uses -model [arg] to determine the layout of C++
7154 # classes, name mangling, and exception handling.
7155 # Darwin uses the -arch flag to determine output architecture.
7156 -model|-arch|-isysroot|--sysroot)
7157 func_append compiler_flags " $arg"
7158 func_append compile_command " $arg"
7159 func_append finalize_command " $arg"
7160 prev=xcompiler
7161 continue
7162 ;;
7163
7164 -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe \
7165 |-threads|-fopenmp|-openmp|-mp|-xopenmp|-omp|-qsmp=*)
7166 func_append compiler_flags " $arg"
7167 func_append compile_command " $arg"
7168 func_append finalize_command " $arg"
7169 case "$new_inherited_linker_flags " in
7170 *" $arg "*) ;;
7171 * ) func_append new_inherited_linker_flags " $arg" ;;
7172 esac
7173 continue
7174 ;;
7175
7176 -multi_module)
7177 single_module=$wl-multi_module
7178 continue
7179 ;;
7180
7181 -no-fast-install)
7182 fast_install=no
7183 continue
7184 ;;
7185
7186 -no-install)
7187 case $host in
7188 *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-darwin* | *-cegcc*)
7189 # The PATH hackery in wrapper scripts is required on Windows
7190 # and Darwin in order for the loader to find any dlls it needs.
7191 func_warning "'-no-install' is ignored for $host"
7192 func_warning "assuming '-no-fast-install' instead"
7193 fast_install=no
7194 ;;
7195 *) no_install=yes ;;
7196 esac
7197 continue
7198 ;;
7199
7200 -no-undefined)
7201 allow_undefined=no
7202 continue
7203 ;;
7204
7205 -objectlist)
7206 prev=objectlist
7207 continue
7208 ;;
7209
7210 -os2dllname)
7211 prev=os2dllname
7212 continue
7213 ;;
7214
7215 -o) prev=output ;;
7216
7217 -precious-files-regex)
7218 prev=precious_regex
7219 continue
7220 ;;
7221
7222 -release)
7223 prev=release
7224 continue
7225 ;;
7226
7227 -rpath)
7228 prev=rpath
7229 continue
7230 ;;
7231
7232 -R)
7233 prev=xrpath
7234 continue
7235 ;;
7236
7237 -R*)
7238 func_stripname '-R' '' "$arg"
7239 dir=$func_stripname_result
7240 # We need an absolute path.
7241 case $dir in
7242 [\\/]* | [A-Za-z]:[\\/]*) ;;
7243 =*)
7244 func_stripname '=' '' "$dir"
7245 dir=$lt_sysroot$func_stripname_result
7246 ;;
7247 *)
7248 func_fatal_error "only absolute run-paths are allowed"
7249 ;;
7250 esac
7251 case "$xrpath " in
7252 *" $dir "*) ;;
7253 *) func_append xrpath " $dir" ;;
7254 esac
7255 continue
7256 ;;
7257
7258 -shared)
7259 # The effects of -shared are defined in a previous loop.
7260 continue
7261 ;;
7262
7263 -shrext)
7264 prev=shrext
7265 continue
7266 ;;
7267
7268 -static | -static-libtool-libs)
7269 # The effects of -static are defined in a previous loop.
7270 # We used to do the same as -all-static on platforms that
7271 # didn't have a PIC flag, but the assumption that the effects
7272 # would be equivalent was wrong. It would break on at least
7273 # Digital Unix and AIX.
7274 continue
7275 ;;
7276
7277 -thread-safe)
7278 thread_safe=yes
7279 continue
7280 ;;
7281
7282 -version-info)
7283 prev=vinfo
7284 continue
7285 ;;
7286
7287 -version-number)
7288 prev=vinfo
7289 vinfo_number=yes
7290 continue
7291 ;;
7292
7293 -weak)
7294 prev=weak
7295 continue
7296 ;;
7297
7298 -Wc,*)
7299 func_stripname '-Wc,' '' "$arg"
7300 args=$func_stripname_result
7301 arg=
7302 save_ifs=$IFS; IFS=,
7303 for flag in $args; do
7304 IFS=$save_ifs
7305 func_quote_for_eval "$flag"
7306 func_append arg " $func_quote_for_eval_result"
7307 func_append compiler_flags " $func_quote_for_eval_result"
7308 done
7309 IFS=$save_ifs
7310 func_stripname ' ' '' "$arg"
7311 arg=$func_stripname_result
7312 ;;
7313
7314 -Wl,*)
7315 func_stripname '-Wl,' '' "$arg"
7316 args=$func_stripname_result
7317 arg=
7318 save_ifs=$IFS; IFS=,
7319 for flag in $args; do
7320 IFS=$save_ifs
7321 func_quote_for_eval "$flag"
7322 func_append arg " $wl$func_quote_for_eval_result"
7323 func_append compiler_flags " $wl$func_quote_for_eval_result"
7324 func_append linker_flags " $func_quote_for_eval_result"
7325 done
7326 IFS=$save_ifs
7327 func_stripname ' ' '' "$arg"
7328 arg=$func_stripname_result
7329 ;;
7330
7331 -Xcompiler)
7332 prev=xcompiler
7333 continue
7334 ;;
7335
7336 -Xlinker)
7337 prev=xlinker
7338 continue
7339 ;;
7340
7341 -XCClinker)
7342 prev=xcclinker
7343 continue
7344 ;;
7345
7346 # -msg_* for osf cc
7347 -msg_*)
7348 func_quote_for_eval "$arg"
7349 arg=$func_quote_for_eval_result
7350 ;;
7351
7352 # Flags to be passed through unchanged, with rationale:
7353 # -64, -mips[0-9] enable 64-bit mode for the SGI compiler
7354 # -r[0-9][0-9]* specify processor for the SGI compiler
7355 # -xarch=*, -xtarget=* enable 64-bit mode for the Sun compiler
7356 # +DA*, +DD* enable 64-bit mode for the HP compiler
7357 # -q* compiler args for the IBM compiler
7358 # -m*, -t[45]*, -txscale* architecture-specific flags for GCC
7359 # -F/path path to uninstalled frameworks, gcc on darwin
7360 # -p, -pg, --coverage, -fprofile-* profiling flags for GCC
7361 # -fstack-protector* stack protector flags for GCC
7362 # @file GCC response files
7363 # -tp=* Portland pgcc target processor selection
7364 # --sysroot=* for sysroot support
7365 # -O*, -g*, -flto*, -fwhopr*, -fuse-linker-plugin GCC link-time optimization
7366 # -specs=* GCC specs files
7367 # -stdlib=* select c++ std lib with clang
7368 # -fsanitize=* Clang/GCC memory and address sanitizer
7369 # -fuse-ld=* Linker select flags for GCC
7370 # -static-* direct GCC to link specific libraries statically
7371 # -fcilkplus Cilk Plus language extension features for C/C++
7372 -64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*| \
7373 -t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*|-tp=*|--sysroot=*| \
7374 -O*|-g*|-flto*|-fwhopr*|-fuse-linker-plugin|-fstack-protector*|-stdlib=*| \
7375 -specs=*|-fsanitize=*|-fuse-ld=*|-static-*|-fcilkplus)
7376 func_quote_for_eval "$arg"
7377 arg=$func_quote_for_eval_result
7378 func_append compile_command " $arg"
7379 func_append finalize_command " $arg"
7380 func_append compiler_flags " $arg"
7381 continue
7382 ;;
7383
7384 -Z*)
7385 if test os2 = "`expr $host : '.*\(os2\)'`"; then
7386 # OS/2 uses -Zxxx to specify OS/2-specific options
7387 compiler_flags="$compiler_flags $arg"
7388 func_append compile_command " $arg"
7389 func_append finalize_command " $arg"
7390 case $arg in
7391 -Zlinker | -Zstack)
7392 prev=xcompiler
7393 ;;
7394 esac
7395 continue
7396 else
7397 # Otherwise treat like 'Some other compiler flag' below
7398 func_quote_for_eval "$arg"
7399 arg=$func_quote_for_eval_result
7400 fi
7401 ;;
7402
7403 # Some other compiler flag.
7404 -* | +*)
7405 func_quote_for_eval "$arg"
7406 arg=$func_quote_for_eval_result
7407 ;;
7408
7409 *.$objext)
7410 # A standard object.
7411 func_append objs " $arg"
7412 ;;
7413
7414 *.lo)
7415 # A libtool-controlled object.
7416
7417 # Check to see that this really is a libtool object.
7418 if func_lalib_unsafe_p "$arg"; then
7419 pic_object=
7420 non_pic_object=
7421
7422 # Read the .lo file
7423 func_source "$arg"
7424
7425 if test -z "$pic_object" ||
7426 test -z "$non_pic_object" ||
7427 test none = "$pic_object" &&
7428 test none = "$non_pic_object"; then
7429 func_fatal_error "cannot find name of object for '$arg'"
7430 fi
7431
7432 # Extract subdirectory from the argument.
7433 func_dirname "$arg" "/" ""
7434 xdir=$func_dirname_result
7435
7436 test none = "$pic_object" || {
7437 # Prepend the subdirectory the object is found in.
7438 pic_object=$xdir$pic_object
7439
7440 if test dlfiles = "$prev"; then
7441 if test yes = "$build_libtool_libs" && test yes = "$dlopen_support"; then
7442 func_append dlfiles " $pic_object"
7443 prev=
7444 continue
7445 else
7446 # If libtool objects are unsupported, then we need to preload.
7447 prev=dlprefiles
7448 fi
7449 fi
7450
7451 # CHECK ME: I think I busted this. -Ossama
7452 if test dlprefiles = "$prev"; then
7453 # Preload the old-style object.
7454 func_append dlprefiles " $pic_object"
7455 prev=
7456 fi
7457
7458 # A PIC object.
7459 func_append libobjs " $pic_object"
7460 arg=$pic_object
7461 }
7462
7463 # Non-PIC object.
7464 if test none != "$non_pic_object"; then
7465 # Prepend the subdirectory the object is found in.
7466 non_pic_object=$xdir$non_pic_object
7467
7468 # A standard non-PIC object
7469 func_append non_pic_objects " $non_pic_object"
7470 if test -z "$pic_object" || test none = "$pic_object"; then
7471 arg=$non_pic_object
7472 fi
7473 else
7474 # If the PIC object exists, use it instead.
7475 # $xdir was prepended to $pic_object above.
7476 non_pic_object=$pic_object
7477 func_append non_pic_objects " $non_pic_object"
7478 fi
7479 else
7480 # Only an error if not doing a dry-run.
7481 if $opt_dry_run; then
7482 # Extract subdirectory from the argument.
7483 func_dirname "$arg" "/" ""
7484 xdir=$func_dirname_result
7485
7486 func_lo2o "$arg"
7487 pic_object=$xdir$objdir/$func_lo2o_result
7488 non_pic_object=$xdir$func_lo2o_result
7489 func_append libobjs " $pic_object"
7490 func_append non_pic_objects " $non_pic_object"
7491 else
7492 func_fatal_error "'$arg' is not a valid libtool object"
7493 fi
7494 fi
7495 ;;
7496
7497 *.$libext)
7498 # An archive.
7499 func_append deplibs " $arg"
7500 func_append old_deplibs " $arg"
7501 continue
7502 ;;
7503
7504 *.la)
7505 # A libtool-controlled library.
7506
7507 func_resolve_sysroot "$arg"
7508 if test dlfiles = "$prev"; then
7509 # This library was specified with -dlopen.
7510 func_append dlfiles " $func_resolve_sysroot_result"
7511 prev=
7512 elif test dlprefiles = "$prev"; then
7513 # The library was specified with -dlpreopen.
7514 func_append dlprefiles " $func_resolve_sysroot_result"
7515 prev=
7516 else
7517 func_append deplibs " $func_resolve_sysroot_result"
7518 fi
7519 continue
7520 ;;
7521
7522 # Some other compiler argument.
7523 *)
7524 # Unknown arguments in both finalize_command and compile_command need
7525 # to be aesthetically quoted because they are evaled later.
7526 func_quote_for_eval "$arg"
7527 arg=$func_quote_for_eval_result
7528 ;;
7529 esac # arg
7530
7531 # Now actually substitute the argument into the commands.
7532 if test -n "$arg"; then
7533 func_append compile_command " $arg"
7534 func_append finalize_command " $arg"
7535 fi
7536 done # argument parsing loop
7537
7538 test -n "$prev" && \
7539 func_fatal_help "the '$prevarg' option requires an argument"
7540
7541 if test yes = "$export_dynamic" && test -n "$export_dynamic_flag_spec"; then
7542 eval arg=\"$export_dynamic_flag_spec\"
7543 func_append compile_command " $arg"
7544 func_append finalize_command " $arg"
7545 fi
7546
7547 oldlibs=
7548 # calculate the name of the file, without its directory
7549 func_basename "$output"
7550 outputname=$func_basename_result
7551 libobjs_save=$libobjs
7552
7553 if test -n "$shlibpath_var"; then
7554 # get the directories listed in $shlibpath_var
7555 eval shlib_search_path=\`\$ECHO \"\$$shlibpath_var\" \| \$SED \'s/:/ /g\'\`
7556 else
7557 shlib_search_path=
7558 fi
7559 eval sys_lib_search_path=\"$sys_lib_search_path_spec\"
7560 eval sys_lib_dlsearch_path=\"$sys_lib_dlsearch_path_spec\"
7561
7562 # Definition is injected by LT_CONFIG during libtool generation.
7563 func_munge_path_list sys_lib_dlsearch_path "$LT_SYS_LIBRARY_PATH"
7564
7565 func_dirname "$output" "/" ""
7566 output_objdir=$func_dirname_result$objdir
7567 func_to_tool_file "$output_objdir/"
7568 tool_output_objdir=$func_to_tool_file_result
7569 # Create the object directory.
7570 func_mkdir_p "$output_objdir"
7571
7572 # Determine the type of output
7573 case $output in
7574 "")
7575 func_fatal_help "you must specify an output file"
7576 ;;
7577 *.$libext) linkmode=oldlib ;;
7578 *.lo | *.$objext) linkmode=obj ;;
7579 *.la) linkmode=lib ;;
7580 *) linkmode=prog ;; # Anything else should be a program.
7581 esac
7582
7583 specialdeplibs=
7584
7585 libs=
7586 # Find all interdependent deplibs by searching for libraries
7587 # that are linked more than once (e.g. -la -lb -la)
7588 for deplib in $deplibs; do
7589 if $opt_preserve_dup_deps; then
7590 case "$libs " in
7591 *" $deplib "*) func_append specialdeplibs " $deplib" ;;
7592 esac
7593 fi
7594 func_append libs " $deplib"
7595 done
7596
7597 if test lib = "$linkmode"; then
7598 libs="$predeps $libs $compiler_lib_search_path $postdeps"
7599
7600 # Compute libraries that are listed more than once in $predeps
7601 # $postdeps and mark them as special (i.e., whose duplicates are
7602 # not to be eliminated).
7603 pre_post_deps=
7604 if $opt_duplicate_compiler_generated_deps; then
7605 for pre_post_dep in $predeps $postdeps; do
7606 case "$pre_post_deps " in
7607 *" $pre_post_dep "*) func_append specialdeplibs " $pre_post_deps" ;;
7608 esac
7609 func_append pre_post_deps " $pre_post_dep"
7610 done
7611 fi
7612 pre_post_deps=
7613 fi
7614
7615 deplibs=
7616 newdependency_libs=
7617 newlib_search_path=
7618 need_relink=no # whether we're linking any uninstalled libtool libraries
7619 notinst_deplibs= # not-installed libtool libraries
7620 notinst_path= # paths that contain not-installed libtool libraries
7621
7622 case $linkmode in
7623 lib)
7624 passes="conv dlpreopen link"
7625 for file in $dlfiles $dlprefiles; do
7626 case $file in
7627 *.la) ;;
7628 *)
7629 func_fatal_help "libraries can '-dlopen' only libtool libraries: $file"
7630 ;;
7631 esac
7632 done
7633 ;;
7634 prog)
7635 compile_deplibs=
7636 finalize_deplibs=
7637 alldeplibs=false
7638 newdlfiles=
7639 newdlprefiles=
7640 passes="conv scan dlopen dlpreopen link"
7641 ;;
7642 *) passes="conv"
7643 ;;
7644 esac
7645
7646 for pass in $passes; do
7647 # The preopen pass in lib mode reverses $deplibs; put it back here
7648 # so that -L comes before libs that need it for instance...
7649 if test lib,link = "$linkmode,$pass"; then
7650 ## FIXME: Find the place where the list is rebuilt in the wrong
7651 ## order, and fix it there properly
7652 tmp_deplibs=
7653 for deplib in $deplibs; do
7654 tmp_deplibs="$deplib $tmp_deplibs"
7655 done
7656 deplibs=$tmp_deplibs
7657 fi
7658
7659 if test lib,link = "$linkmode,$pass" ||
7660 test prog,scan = "$linkmode,$pass"; then
7661 libs=$deplibs
7662 deplibs=
7663 fi
7664 if test prog = "$linkmode"; then
7665 case $pass in
7666 dlopen) libs=$dlfiles ;;
7667 dlpreopen) libs=$dlprefiles ;;
7668 link)
7669 libs="$deplibs %DEPLIBS%"
7670 test "X$link_all_deplibs" != Xno && libs="$libs $dependency_libs"
7671 ;;
7672 esac
7673 fi
7674 if test lib,dlpreopen = "$linkmode,$pass"; then
7675 # Collect and forward deplibs of preopened libtool libs
7676 for lib in $dlprefiles; do
7677 # Ignore non-libtool-libs
7678 dependency_libs=
7679 func_resolve_sysroot "$lib"
7680 case $lib in
7681 *.la) func_source "$func_resolve_sysroot_result" ;;
7682 esac
7683
7684 # Collect preopened libtool deplibs, except any this library
7685 # has declared as weak libs
7686 for deplib in $dependency_libs; do
7687 func_basename "$deplib"
7688 deplib_base=$func_basename_result
7689 case " $weak_libs " in
7690 *" $deplib_base "*) ;;
7691 *) func_append deplibs " $deplib" ;;
7692 esac
7693 done
7694 done
7695 libs=$dlprefiles
7696 fi
7697 if test dlopen = "$pass"; then
7698 # Collect dlpreopened libraries
7699 save_deplibs=$deplibs
7700 deplibs=
7701 fi
7702
7703 for deplib in $libs; do
7704 lib=
7705 found=false
7706 case $deplib in
7707 -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe \
7708 |-threads|-fopenmp|-openmp|-mp|-xopenmp|-omp|-qsmp=*)
7709 if test prog,link = "$linkmode,$pass"; then
7710 compile_deplibs="$deplib $compile_deplibs"
7711 finalize_deplibs="$deplib $finalize_deplibs"
7712 else
7713 func_append compiler_flags " $deplib"
7714 if test lib = "$linkmode"; then
7715 case "$new_inherited_linker_flags " in
7716 *" $deplib "*) ;;
7717 * ) func_append new_inherited_linker_flags " $deplib" ;;
7718 esac
7719 fi
7720 fi
7721 continue
7722 ;;
7723 -l*)
7724 if test lib != "$linkmode" && test prog != "$linkmode"; then
7725 func_warning "'-l' is ignored for archives/objects"
7726 continue
7727 fi
7728 func_stripname '-l' '' "$deplib"
7729 name=$func_stripname_result
7730 if test lib = "$linkmode"; then
7731 searchdirs="$newlib_search_path $lib_search_path $compiler_lib_search_dirs $sys_lib_search_path $shlib_search_path"
7732 else
7733 searchdirs="$newlib_search_path $lib_search_path $sys_lib_search_path $shlib_search_path"
7734 fi
7735 for searchdir in $searchdirs; do
7736 for search_ext in .la $std_shrext .so .a; do
7737 # Search the libtool library
7738 lib=$searchdir/lib$name$search_ext
7739 if test -f "$lib"; then
7740 if test .la = "$search_ext"; then
7741 found=:
7742 else
7743 found=false
7744 fi
7745 break 2
7746 fi
7747 done
7748 done
7749 if $found; then
7750 # deplib is a libtool library
7751 # If $allow_libtool_libs_with_static_runtimes && $deplib is a stdlib,
7752 # We need to do some special things here, and not later.
7753 if test yes = "$allow_libtool_libs_with_static_runtimes"; then
7754 case " $predeps $postdeps " in
7755 *" $deplib "*)
7756 if func_lalib_p "$lib"; then
7757 library_names=
7758 old_library=
7759 func_source "$lib"
7760 for l in $old_library $library_names; do
7761 ll=$l
7762 done
7763 if test "X$ll" = "X$old_library"; then # only static version available
7764 found=false
7765 func_dirname "$lib" "" "."
7766 ladir=$func_dirname_result
7767 lib=$ladir/$old_library
7768 if test prog,link = "$linkmode,$pass"; then
7769 compile_deplibs="$deplib $compile_deplibs"
7770 finalize_deplibs="$deplib $finalize_deplibs"
7771 else
7772 deplibs="$deplib $deplibs"
7773 test lib = "$linkmode" && newdependency_libs="$deplib $newdependency_libs"
7774 fi
7775 continue
7776 fi
7777 fi
7778 ;;
7779 *) ;;
7780 esac
7781 fi
7782 else
7783 # deplib doesn't seem to be a libtool library
7784 if test prog,link = "$linkmode,$pass"; then
7785 compile_deplibs="$deplib $compile_deplibs"
7786 finalize_deplibs="$deplib $finalize_deplibs"
7787 else
7788 deplibs="$deplib $deplibs"
7789 test lib = "$linkmode" && newdependency_libs="$deplib $newdependency_libs"
7790 fi
7791 continue
7792 fi
7793 ;; # -l
7794 *.ltframework)
7795 if test prog,link = "$linkmode,$pass"; then
7796 compile_deplibs="$deplib $compile_deplibs"
7797 finalize_deplibs="$deplib $finalize_deplibs"
7798 else
7799 deplibs="$deplib $deplibs"
7800 if test lib = "$linkmode"; then
7801 case "$new_inherited_linker_flags " in
7802 *" $deplib "*) ;;
7803 * ) func_append new_inherited_linker_flags " $deplib" ;;
7804 esac
7805 fi
7806 fi
7807 continue
7808 ;;
7809 -L*)
7810 case $linkmode in
7811 lib)
7812 deplibs="$deplib $deplibs"
7813 test conv = "$pass" && continue
7814 newdependency_libs="$deplib $newdependency_libs"
7815 func_stripname '-L' '' "$deplib"
7816 func_resolve_sysroot "$func_stripname_result"
7817 func_append newlib_search_path " $func_resolve_sysroot_result"
7818 ;;
7819 prog)
7820 if test conv = "$pass"; then
7821 deplibs="$deplib $deplibs"
7822 continue
7823 fi
7824 if test scan = "$pass"; then
7825 deplibs="$deplib $deplibs"
7826 else
7827 compile_deplibs="$deplib $compile_deplibs"
7828 finalize_deplibs="$deplib $finalize_deplibs"
7829 fi
7830 func_stripname '-L' '' "$deplib"
7831 func_resolve_sysroot "$func_stripname_result"
7832 func_append newlib_search_path " $func_resolve_sysroot_result"
7833 ;;
7834 *)
7835 func_warning "'-L' is ignored for archives/objects"
7836 ;;
7837 esac # linkmode
7838 continue
7839 ;; # -L
7840 -R*)
7841 if test link = "$pass"; then
7842 func_stripname '-R' '' "$deplib"
7843 func_resolve_sysroot "$func_stripname_result"
7844 dir=$func_resolve_sysroot_result
7845 # Make sure the xrpath contains only unique directories.
7846 case "$xrpath " in
7847 *" $dir "*) ;;
7848 *) func_append xrpath " $dir" ;;
7849 esac
7850 fi
7851 deplibs="$deplib $deplibs"
7852 continue
7853 ;;
7854 *.la)
7855 func_resolve_sysroot "$deplib"
7856 lib=$func_resolve_sysroot_result
7857 ;;
7858 *.$libext)
7859 if test conv = "$pass"; then
7860 deplibs="$deplib $deplibs"
7861 continue
7862 fi
7863 case $linkmode in
7864 lib)
7865 # Linking convenience modules into shared libraries is allowed,
7866 # but linking other static libraries is non-portable.
7867 case " $dlpreconveniencelibs " in
7868 *" $deplib "*) ;;
7869 *)
7870 valid_a_lib=false
7871 case $deplibs_check_method in
7872 match_pattern*)
7873 set dummy $deplibs_check_method; shift
7874 match_pattern_regex=`expr "$deplibs_check_method" : "$1 \(.*\)"`
7875 if eval "\$ECHO \"$deplib\"" 2>/dev/null | $SED 10q \
7876 | $EGREP "$match_pattern_regex" > /dev/null; then
7877 valid_a_lib=:
7878 fi
7879 ;;
7880 pass_all)
7881 valid_a_lib=:
7882 ;;
7883 esac
7884 if $valid_a_lib; then
7885 echo
7886 $ECHO "*** Warning: Linking the shared library $output against the"
7887 $ECHO "*** static library $deplib is not portable!"
7888 deplibs="$deplib $deplibs"
7889 else
7890 echo
7891 $ECHO "*** Warning: Trying to link with static lib archive $deplib."
7892 echo "*** I have the capability to make that library automatically link in when"
7893 echo "*** you link to this library. But I can only do this if you have a"
7894 echo "*** shared version of the library, which you do not appear to have"
7895 echo "*** because the file extensions .$libext of this argument makes me believe"
7896 echo "*** that it is just a static archive that I should not use here."
7897 fi
7898 ;;
7899 esac
7900 continue
7901 ;;
7902 prog)
7903 if test link != "$pass"; then
7904 deplibs="$deplib $deplibs"
7905 else
7906 compile_deplibs="$deplib $compile_deplibs"
7907 finalize_deplibs="$deplib $finalize_deplibs"
7908 fi
7909 continue
7910 ;;
7911 esac # linkmode
7912 ;; # *.$libext
7913 *.lo | *.$objext)
7914 if test conv = "$pass"; then
7915 deplibs="$deplib $deplibs"
7916 elif test prog = "$linkmode"; then
7917 if test dlpreopen = "$pass" || test yes != "$dlopen_support" || test no = "$build_libtool_libs"; then
7918 # If there is no dlopen support or we're linking statically,
7919 # we need to preload.
7920 func_append newdlprefiles " $deplib"
7921 compile_deplibs="$deplib $compile_deplibs"
7922 finalize_deplibs="$deplib $finalize_deplibs"
7923 else
7924 func_append newdlfiles " $deplib"
7925 fi
7926 fi
7927 continue
7928 ;;
7929 %DEPLIBS%)
7930 alldeplibs=:
7931 continue
7932 ;;
7933 esac # case $deplib
7934
7935 $found || test -f "$lib" \
7936 || func_fatal_error "cannot find the library '$lib' or unhandled argument '$deplib'"
7937
7938 # Check to see that this really is a libtool archive.
7939 func_lalib_unsafe_p "$lib" \
7940 || func_fatal_error "'$lib' is not a valid libtool archive"
7941
7942 func_dirname "$lib" "" "."
7943 ladir=$func_dirname_result
7944
7945 dlname=
7946 dlopen=
7947 dlpreopen=
7948 libdir=
7949 library_names=
7950 old_library=
7951 inherited_linker_flags=
7952 # If the library was installed with an old release of libtool,
7953 # it will not redefine variables installed, or shouldnotlink
7954 installed=yes
7955 shouldnotlink=no
7956 avoidtemprpath=
7957
7958
7959 # Read the .la file
7960 func_source "$lib"
7961
7962 # Convert "-framework foo" to "foo.ltframework"
7963 if test -n "$inherited_linker_flags"; then
7964 tmp_inherited_linker_flags=`$ECHO "$inherited_linker_flags" | $SED 's/-framework \([^ $]*\)/\1.ltframework/g'`
7965 for tmp_inherited_linker_flag in $tmp_inherited_linker_flags; do
7966 case " $new_inherited_linker_flags " in
7967 *" $tmp_inherited_linker_flag "*) ;;
7968 *) func_append new_inherited_linker_flags " $tmp_inherited_linker_flag";;
7969 esac
7970 done
7971 fi
7972 dependency_libs=`$ECHO " $dependency_libs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'`
7973 if test lib,link = "$linkmode,$pass" ||
7974 test prog,scan = "$linkmode,$pass" ||
7975 { test prog != "$linkmode" && test lib != "$linkmode"; }; then
7976 test -n "$dlopen" && func_append dlfiles " $dlopen"
7977 test -n "$dlpreopen" && func_append dlprefiles " $dlpreopen"
7978 fi
7979
7980 if test conv = "$pass"; then
7981 # Only check for convenience libraries
7982 deplibs="$lib $deplibs"
7983 if test -z "$libdir"; then
7984 if test -z "$old_library"; then
7985 func_fatal_error "cannot find name of link library for '$lib'"
7986 fi
7987 # It is a libtool convenience library, so add in its objects.
7988 func_append convenience " $ladir/$objdir/$old_library"
7989 func_append old_convenience " $ladir/$objdir/$old_library"
7990 tmp_libs=
7991 for deplib in $dependency_libs; do
7992 deplibs="$deplib $deplibs"
7993 if $opt_preserve_dup_deps; then
7994 case "$tmp_libs " in
7995 *" $deplib "*) func_append specialdeplibs " $deplib" ;;
7996 esac
7997 fi
7998 func_append tmp_libs " $deplib"
7999 done
8000 elif test prog != "$linkmode" && test lib != "$linkmode"; then
8001 func_fatal_error "'$lib' is not a convenience library"
8002 fi
8003 continue
8004 fi # $pass = conv
8005
8006
8007 # Get the name of the library we link against.
8008 linklib=
8009 if test -n "$old_library" &&
8010 { test yes = "$prefer_static_libs" ||
8011 test built,no = "$prefer_static_libs,$installed"; }; then
8012 linklib=$old_library
8013 else
8014 for l in $old_library $library_names; do
8015 linklib=$l
8016 done
8017 fi
8018 if test -z "$linklib"; then
8019 func_fatal_error "cannot find name of link library for '$lib'"
8020 fi
8021
8022 # This library was specified with -dlopen.
8023 if test dlopen = "$pass"; then
8024 test -z "$libdir" \
8025 && func_fatal_error "cannot -dlopen a convenience library: '$lib'"
8026 if test -z "$dlname" ||
8027 test yes != "$dlopen_support" ||
8028 test no = "$build_libtool_libs"
8029 then
8030 # If there is no dlname, no dlopen support or we're linking
8031 # statically, we need to preload. We also need to preload any
8032 # dependent libraries so libltdl's deplib preloader doesn't
8033 # bomb out in the load deplibs phase.
8034 func_append dlprefiles " $lib $dependency_libs"
8035 else
8036 func_append newdlfiles " $lib"
8037 fi
8038 continue
8039 fi # $pass = dlopen
8040
8041 # We need an absolute path.
8042 case $ladir in
8043 [\\/]* | [A-Za-z]:[\\/]*) abs_ladir=$ladir ;;
8044 *)
8045 abs_ladir=`cd "$ladir" && pwd`
8046 if test -z "$abs_ladir"; then
8047 func_warning "cannot determine absolute directory name of '$ladir'"
8048 func_warning "passing it literally to the linker, although it might fail"
8049 abs_ladir=$ladir
8050 fi
8051 ;;
8052 esac
8053 func_basename "$lib"
8054 laname=$func_basename_result
8055
8056 # Find the relevant object directory and library name.
8057 if test yes = "$installed"; then
8058 if test ! -f "$lt_sysroot$libdir/$linklib" && test -f "$abs_ladir/$linklib"; then
8059 func_warning "library '$lib' was moved."
8060 dir=$ladir
8061 absdir=$abs_ladir
8062 libdir=$abs_ladir
8063 else
8064 dir=$lt_sysroot$libdir
8065 absdir=$lt_sysroot$libdir
8066 fi
8067 test yes = "$hardcode_automatic" && avoidtemprpath=yes
8068 else
8069 if test ! -f "$ladir/$objdir/$linklib" && test -f "$abs_ladir/$linklib"; then
8070 dir=$ladir
8071 absdir=$abs_ladir
8072 # Remove this search path later
8073 func_append notinst_path " $abs_ladir"
8074 else
8075 dir=$ladir/$objdir
8076 absdir=$abs_ladir/$objdir
8077 # Remove this search path later
8078 func_append notinst_path " $abs_ladir"
8079 fi
8080 fi # $installed = yes
8081 func_stripname 'lib' '.la' "$laname"
8082 name=$func_stripname_result
8083
8084 # This library was specified with -dlpreopen.
8085 if test dlpreopen = "$pass"; then
8086 if test -z "$libdir" && test prog = "$linkmode"; then
8087 func_fatal_error "only libraries may -dlpreopen a convenience library: '$lib'"
8088 fi
8089 case $host in
8090 # special handling for platforms with PE-DLLs.
8091 *cygwin* | *mingw* | *cegcc* )
8092 # Linker will automatically link against shared library if both
8093 # static and shared are present. Therefore, ensure we extract
8094 # symbols from the import library if a shared library is present
8095 # (otherwise, the dlopen module name will be incorrect). We do
8096 # this by putting the import library name into $newdlprefiles.
8097 # We recover the dlopen module name by 'saving' the la file
8098 # name in a special purpose variable, and (later) extracting the
8099 # dlname from the la file.
8100 if test -n "$dlname"; then
8101 func_tr_sh "$dir/$linklib"
8102 eval "libfile_$func_tr_sh_result=\$abs_ladir/\$laname"
8103 func_append newdlprefiles " $dir/$linklib"
8104 else
8105 func_append newdlprefiles " $dir/$old_library"
8106 # Keep a list of preopened convenience libraries to check
8107 # that they are being used correctly in the link pass.
8108 test -z "$libdir" && \
8109 func_append dlpreconveniencelibs " $dir/$old_library"
8110 fi
8111 ;;
8112 * )
8113 # Prefer using a static library (so that no silly _DYNAMIC symbols
8114 # are required to link).
8115 if test -n "$old_library"; then
8116 func_append newdlprefiles " $dir/$old_library"
8117 # Keep a list of preopened convenience libraries to check
8118 # that they are being used correctly in the link pass.
8119 test -z "$libdir" && \
8120 func_append dlpreconveniencelibs " $dir/$old_library"
8121 # Otherwise, use the dlname, so that lt_dlopen finds it.
8122 elif test -n "$dlname"; then
8123 func_append newdlprefiles " $dir/$dlname"
8124 else
8125 func_append newdlprefiles " $dir/$linklib"
8126 fi
8127 ;;
8128 esac
8129 fi # $pass = dlpreopen
8130
8131 if test -z "$libdir"; then
8132 # Link the convenience library
8133 if test lib = "$linkmode"; then
8134 deplibs="$dir/$old_library $deplibs"
8135 elif test prog,link = "$linkmode,$pass"; then
8136 compile_deplibs="$dir/$old_library $compile_deplibs"
8137 finalize_deplibs="$dir/$old_library $finalize_deplibs"
8138 else
8139 deplibs="$lib $deplibs" # used for prog,scan pass
8140 fi
8141 continue
8142 fi
8143
8144
8145 if test prog = "$linkmode" && test link != "$pass"; then
8146 func_append newlib_search_path " $ladir"
8147 deplibs="$lib $deplibs"
8148
8149 linkalldeplibs=false
8150 if test no != "$link_all_deplibs" || test -z "$library_names" ||
8151 test no = "$build_libtool_libs"; then
8152 linkalldeplibs=:
8153 fi
8154
8155 tmp_libs=
8156 for deplib in $dependency_libs; do
8157 case $deplib in
8158 -L*) func_stripname '-L' '' "$deplib"
8159 func_resolve_sysroot "$func_stripname_result"
8160 func_append newlib_search_path " $func_resolve_sysroot_result"
8161 ;;
8162 esac
8163 # Need to link against all dependency_libs?
8164 if $linkalldeplibs; then
8165 deplibs="$deplib $deplibs"
8166 else
8167 # Need to hardcode shared library paths
8168 # or/and link against static libraries
8169 newdependency_libs="$deplib $newdependency_libs"
8170 fi
8171 if $opt_preserve_dup_deps; then
8172 case "$tmp_libs " in
8173 *" $deplib "*) func_append specialdeplibs " $deplib" ;;
8174 esac
8175 fi
8176 func_append tmp_libs " $deplib"
8177 done # for deplib
8178 continue
8179 fi # $linkmode = prog...
8180
8181 if test prog,link = "$linkmode,$pass"; then
8182 if test -n "$library_names" &&
8183 { { test no = "$prefer_static_libs" ||
8184 test built,yes = "$prefer_static_libs,$installed"; } ||
8185 test -z "$old_library"; }; then
8186 # We need to hardcode the library path
8187 if test -n "$shlibpath_var" && test -z "$avoidtemprpath"; then
8188 # Make sure the rpath contains only unique directories.
8189 case $temp_rpath: in
8190 *"$absdir:"*) ;;
8191 *) func_append temp_rpath "$absdir:" ;;
8192 esac
8193 fi
8194
8195 # Hardcode the library path.
8196 # Skip directories that are in the system default run-time
8197 # search path.
8198 case " $sys_lib_dlsearch_path " in
8199 *" $absdir "*) ;;
8200 *)
8201 case "$compile_rpath " in
8202 *" $absdir "*) ;;
8203 *) func_append compile_rpath " $absdir" ;;
8204 esac
8205 ;;
8206 esac
8207 case " $sys_lib_dlsearch_path " in
8208 *" $libdir "*) ;;
8209 *)
8210 case "$finalize_rpath " in
8211 *" $libdir "*) ;;
8212 *) func_append finalize_rpath " $libdir" ;;
8213 esac
8214 ;;
8215 esac
8216 fi # $linkmode,$pass = prog,link...
8217
8218 if $alldeplibs &&
8219 { test pass_all = "$deplibs_check_method" ||
8220 { test yes = "$build_libtool_libs" &&
8221 test -n "$library_names"; }; }; then
8222 # We only need to search for static libraries
8223 continue
8224 fi
8225 fi
8226
8227 link_static=no # Whether the deplib will be linked statically
8228 use_static_libs=$prefer_static_libs
8229 if test built = "$use_static_libs" && test yes = "$installed"; then
8230 use_static_libs=no
8231 fi
8232 if test -n "$library_names" &&
8233 { test no = "$use_static_libs" || test -z "$old_library"; }; then
8234 case $host in
8235 *cygwin* | *mingw* | *cegcc* | *os2*)
8236 # No point in relinking DLLs because paths are not encoded
8237 func_append notinst_deplibs " $lib"
8238 need_relink=no
8239 ;;
8240 *)
8241 if test no = "$installed"; then
8242 func_append notinst_deplibs " $lib"
8243 need_relink=yes
8244 fi
8245 ;;
8246 esac
8247 # This is a shared library
8248
8249 # Warn about portability, can't link against -module's on some
8250 # systems (darwin). Don't bleat about dlopened modules though!
8251 dlopenmodule=
8252 for dlpremoduletest in $dlprefiles; do
8253 if test "X$dlpremoduletest" = "X$lib"; then
8254 dlopenmodule=$dlpremoduletest
8255 break
8256 fi
8257 done
8258 if test -z "$dlopenmodule" && test yes = "$shouldnotlink" && test link = "$pass"; then
8259 echo
8260 if test prog = "$linkmode"; then
8261 $ECHO "*** Warning: Linking the executable $output against the loadable module"
8262 else
8263 $ECHO "*** Warning: Linking the shared library $output against the loadable module"
8264 fi
8265 $ECHO "*** $linklib is not portable!"
8266 fi
8267 if test lib = "$linkmode" &&
8268 test yes = "$hardcode_into_libs"; then
8269 # Hardcode the library path.
8270 # Skip directories that are in the system default run-time
8271 # search path.
8272 case " $sys_lib_dlsearch_path " in
8273 *" $absdir "*) ;;
8274 *)
8275 case "$compile_rpath " in
8276 *" $absdir "*) ;;
8277 *) func_append compile_rpath " $absdir" ;;
8278 esac
8279 ;;
8280 esac
8281 case " $sys_lib_dlsearch_path " in
8282 *" $libdir "*) ;;
8283 *)
8284 case "$finalize_rpath " in
8285 *" $libdir "*) ;;
8286 *) func_append finalize_rpath " $libdir" ;;
8287 esac
8288 ;;
8289 esac
8290 fi
8291
8292 if test -n "$old_archive_from_expsyms_cmds"; then
8293 # figure out the soname
8294 set dummy $library_names
8295 shift
8296 realname=$1
8297 shift
8298 libname=`eval "\\$ECHO \"$libname_spec\""`
8299 # use dlname if we got it. it's perfectly good, no?
8300 if test -n "$dlname"; then
8301 soname=$dlname
8302 elif test -n "$soname_spec"; then
8303 # bleh windows
8304 case $host in
8305 *cygwin* | mingw* | *cegcc* | *os2*)
8306 func_arith $current - $age
8307 major=$func_arith_result
8308 versuffix=-$major
8309 ;;
8310 esac
8311 eval soname=\"$soname_spec\"
8312 else
8313 soname=$realname
8314 fi
8315
8316 # Make a new name for the extract_expsyms_cmds to use
8317 soroot=$soname
8318 func_basename "$soroot"
8319 soname=$func_basename_result
8320 func_stripname 'lib' '.dll' "$soname"
8321 newlib=libimp-$func_stripname_result.a
8322
8323 # If the library has no export list, then create one now
8324 if test -f "$output_objdir/$soname-def"; then :
8325 else
8326 func_verbose "extracting exported symbol list from '$soname'"
8327 func_execute_cmds "$extract_expsyms_cmds" 'exit $?'
8328 fi
8329
8330 # Create $newlib
8331 if test -f "$output_objdir/$newlib"; then :; else
8332 func_verbose "generating import library for '$soname'"
8333 func_execute_cmds "$old_archive_from_expsyms_cmds" 'exit $?'
8334 fi
8335 # make sure the library variables are pointing to the new library
8336 dir=$output_objdir
8337 linklib=$newlib
8338 fi # test -n "$old_archive_from_expsyms_cmds"
8339
8340 if test prog = "$linkmode" || test relink != "$opt_mode"; then
8341 add_shlibpath=
8342 add_dir=
8343 add=
8344 lib_linked=yes
8345 case $hardcode_action in
8346 immediate | unsupported)
8347 if test no = "$hardcode_direct"; then
8348 add=$dir/$linklib
8349 case $host in
8350 *-*-sco3.2v5.0.[024]*) add_dir=-L$dir ;;
8351 *-*-sysv4*uw2*) add_dir=-L$dir ;;
8352 *-*-sysv5OpenUNIX* | *-*-sysv5UnixWare7.[01].[10]* | \
8353 *-*-unixware7*) add_dir=-L$dir ;;
8354 *-*-darwin* )
8355 # if the lib is a (non-dlopened) module then we cannot
8356 # link against it, someone is ignoring the earlier warnings
8357 if /usr/bin/file -L $add 2> /dev/null |
8358 $GREP ": [^:]* bundle" >/dev/null; then
8359 if test "X$dlopenmodule" != "X$lib"; then
8360 $ECHO "*** Warning: lib $linklib is a module, not a shared library"
8361 if test -z "$old_library"; then
8362 echo
8363 echo "*** And there doesn't seem to be a static archive available"
8364 echo "*** The link will probably fail, sorry"
8365 else
8366 add=$dir/$old_library
8367 fi
8368 elif test -n "$old_library"; then
8369 add=$dir/$old_library
8370 fi
8371 fi
8372 esac
8373 elif test no = "$hardcode_minus_L"; then
8374 case $host in
8375 *-*-sunos*) add_shlibpath=$dir ;;
8376 esac
8377 add_dir=-L$dir
8378 add=-l$name
8379 elif test no = "$hardcode_shlibpath_var"; then
8380 add_shlibpath=$dir
8381 add=-l$name
8382 else
8383 lib_linked=no
8384 fi
8385 ;;
8386 relink)
8387 if test yes = "$hardcode_direct" &&
8388 test no = "$hardcode_direct_absolute"; then
8389 add=$dir/$linklib
8390 elif test yes = "$hardcode_minus_L"; then
8391 add_dir=-L$absdir
8392 # Try looking first in the location we're being installed to.
8393 if test -n "$inst_prefix_dir"; then
8394 case $libdir in
8395 [\\/]*)
8396 func_append add_dir " -L$inst_prefix_dir$libdir"
8397 ;;
8398 esac
8399 fi
8400 add=-l$name
8401 elif test yes = "$hardcode_shlibpath_var"; then
8402 add_shlibpath=$dir
8403 add=-l$name
8404 else
8405 lib_linked=no
8406 fi
8407 ;;
8408 *) lib_linked=no ;;
8409 esac
8410
8411 if test yes != "$lib_linked"; then
8412 func_fatal_configuration "unsupported hardcode properties"
8413 fi
8414
8415 if test -n "$add_shlibpath"; then
8416 case :$compile_shlibpath: in
8417 *":$add_shlibpath:"*) ;;
8418 *) func_append compile_shlibpath "$add_shlibpath:" ;;
8419 esac
8420 fi
8421 if test prog = "$linkmode"; then
8422 test -n "$add_dir" && compile_deplibs="$add_dir $compile_deplibs"
8423 test -n "$add" && compile_deplibs="$add $compile_deplibs"
8424 else
8425 test -n "$add_dir" && deplibs="$add_dir $deplibs"
8426 test -n "$add" && deplibs="$add $deplibs"
8427 if test yes != "$hardcode_direct" &&
8428 test yes != "$hardcode_minus_L" &&
8429 test yes = "$hardcode_shlibpath_var"; then
8430 case :$finalize_shlibpath: in
8431 *":$libdir:"*) ;;
8432 *) func_append finalize_shlibpath "$libdir:" ;;
8433 esac
8434 fi
8435 fi
8436 fi
8437
8438 if test prog = "$linkmode" || test relink = "$opt_mode"; then
8439 add_shlibpath=
8440 add_dir=
8441 add=
8442 # Finalize command for both is simple: just hardcode it.
8443 if test yes = "$hardcode_direct" &&
8444 test no = "$hardcode_direct_absolute"; then
8445 add=$libdir/$linklib
8446 elif test yes = "$hardcode_minus_L"; then
8447 add_dir=-L$libdir
8448 add=-l$name
8449 elif test yes = "$hardcode_shlibpath_var"; then
8450 case :$finalize_shlibpath: in
8451 *":$libdir:"*) ;;
8452 *) func_append finalize_shlibpath "$libdir:" ;;
8453 esac
8454 add=-l$name
8455 elif test yes = "$hardcode_automatic"; then
8456 if test -n "$inst_prefix_dir" &&
8457 test -f "$inst_prefix_dir$libdir/$linklib"; then
8458 add=$inst_prefix_dir$libdir/$linklib
8459 else
8460 add=$libdir/$linklib
8461 fi
8462 else
8463 # We cannot seem to hardcode it, guess we'll fake it.
8464 add_dir=-L$libdir
8465 # Try looking first in the location we're being installed to.
8466 if test -n "$inst_prefix_dir"; then
8467 case $libdir in
8468 [\\/]*)
8469 func_append add_dir " -L$inst_prefix_dir$libdir"
8470 ;;
8471 esac
8472 fi
8473 add=-l$name
8474 fi
8475
8476 if test prog = "$linkmode"; then
8477 test -n "$add_dir" && finalize_deplibs="$add_dir $finalize_deplibs"
8478 test -n "$add" && finalize_deplibs="$add $finalize_deplibs"
8479 else
8480 test -n "$add_dir" && deplibs="$add_dir $deplibs"
8481 test -n "$add" && deplibs="$add $deplibs"
8482 fi
8483 fi
8484 elif test prog = "$linkmode"; then
8485 # Here we assume that one of hardcode_direct or hardcode_minus_L
8486 # is not unsupported. This is valid on all known static and
8487 # shared platforms.
8488 if test unsupported != "$hardcode_direct"; then
8489 test -n "$old_library" && linklib=$old_library
8490 compile_deplibs="$dir/$linklib $compile_deplibs"
8491 finalize_deplibs="$dir/$linklib $finalize_deplibs"
8492 else
8493 compile_deplibs="-l$name -L$dir $compile_deplibs"
8494 finalize_deplibs="-l$name -L$dir $finalize_deplibs"
8495 fi
8496 elif test yes = "$build_libtool_libs"; then
8497 # Not a shared library
8498 if test pass_all != "$deplibs_check_method"; then
8499 # We're trying link a shared library against a static one
8500 # but the system doesn't support it.
8501
8502 # Just print a warning and add the library to dependency_libs so
8503 # that the program can be linked against the static library.
8504 echo
8505 $ECHO "*** Warning: This system cannot link to static lib archive $lib."
8506 echo "*** I have the capability to make that library automatically link in when"
8507 echo "*** you link to this library. But I can only do this if you have a"
8508 echo "*** shared version of the library, which you do not appear to have."
8509 if test yes = "$module"; then
8510 echo "*** But as you try to build a module library, libtool will still create "
8511 echo "*** a static module, that should work as long as the dlopening application"
8512 echo "*** is linked with the -dlopen flag to resolve symbols at runtime."
8513 if test -z "$global_symbol_pipe"; then
8514 echo
8515 echo "*** However, this would only work if libtool was able to extract symbol"
8516 echo "*** lists from a program, using 'nm' or equivalent, but libtool could"
8517 echo "*** not find such a program. So, this module is probably useless."
8518 echo "*** 'nm' from GNU binutils and a full rebuild may help."
8519 fi
8520 if test no = "$build_old_libs"; then
8521 build_libtool_libs=module
8522 build_old_libs=yes
8523 else
8524 build_libtool_libs=no
8525 fi
8526 fi
8527 else
8528 deplibs="$dir/$old_library $deplibs"
8529 link_static=yes
8530 fi
8531 fi # link shared/static library?
8532
8533 if test lib = "$linkmode"; then
8534 if test -n "$dependency_libs" &&
8535 { test yes != "$hardcode_into_libs" ||
8536 test yes = "$build_old_libs" ||
8537 test yes = "$link_static"; }; then
8538 # Extract -R from dependency_libs
8539 temp_deplibs=
8540 for libdir in $dependency_libs; do
8541 case $libdir in
8542 -R*) func_stripname '-R' '' "$libdir"
8543 temp_xrpath=$func_stripname_result
8544 case " $xrpath " in
8545 *" $temp_xrpath "*) ;;
8546 *) func_append xrpath " $temp_xrpath";;
8547 esac;;
8548 *) func_append temp_deplibs " $libdir";;
8549 esac
8550 done
8551 dependency_libs=$temp_deplibs
8552 fi
8553
8554 func_append newlib_search_path " $absdir"
8555 # Link against this library
8556 test no = "$link_static" && newdependency_libs="$abs_ladir/$laname $newdependency_libs"
8557 # ... and its dependency_libs
8558 tmp_libs=
8559 for deplib in $dependency_libs; do
8560 newdependency_libs="$deplib $newdependency_libs"
8561 case $deplib in
8562 -L*) func_stripname '-L' '' "$deplib"
8563 func_resolve_sysroot "$func_stripname_result";;
8564 *) func_resolve_sysroot "$deplib" ;;
8565 esac
8566 if $opt_preserve_dup_deps; then
8567 case "$tmp_libs " in
8568 *" $func_resolve_sysroot_result "*)
8569 func_append specialdeplibs " $func_resolve_sysroot_result" ;;
8570 esac
8571 fi
8572 func_append tmp_libs " $func_resolve_sysroot_result"
8573 done
8574
8575 if test no != "$link_all_deplibs"; then
8576 # Add the search paths of all dependency libraries
8577 for deplib in $dependency_libs; do
8578 path=
8579 case $deplib in
8580 -L*) path=$deplib ;;
8581 *.la)
8582 func_resolve_sysroot "$deplib"
8583 deplib=$func_resolve_sysroot_result
8584 func_dirname "$deplib" "" "."
8585 dir=$func_dirname_result
8586 # We need an absolute path.
8587 case $dir in
8588 [\\/]* | [A-Za-z]:[\\/]*) absdir=$dir ;;
8589 *)
8590 absdir=`cd "$dir" && pwd`
8591 if test -z "$absdir"; then
8592 func_warning "cannot determine absolute directory name of '$dir'"
8593 absdir=$dir
8594 fi
8595 ;;
8596 esac
8597 if $GREP "^installed=no" $deplib > /dev/null; then
8598 case $host in
8599 *-*-darwin*)
8600 depdepl=
8601 eval deplibrary_names=`$SED -n -e 's/^library_names=\(.*\)$/\1/p' $deplib`
8602 if test -n "$deplibrary_names"; then
8603 for tmp in $deplibrary_names; do
8604 depdepl=$tmp
8605 done
8606 if test -f "$absdir/$objdir/$depdepl"; then
8607 depdepl=$absdir/$objdir/$depdepl
8608 darwin_install_name=`$OTOOL -L $depdepl | awk '{if (NR == 2) {print $1;exit}}'`
8609 if test -z "$darwin_install_name"; then
8610 darwin_install_name=`$OTOOL64 -L $depdepl | awk '{if (NR == 2) {print $1;exit}}'`
8611 fi
8612 func_append compiler_flags " $wl-dylib_file $wl$darwin_install_name:$depdepl"
8613 func_append linker_flags " -dylib_file $darwin_install_name:$depdepl"
8614 path=
8615 fi
8616 fi
8617 ;;
8618 *)
8619 path=-L$absdir/$objdir
8620 ;;
8621 esac
8622 else
8623 eval libdir=`$SED -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
8624 test -z "$libdir" && \
8625 func_fatal_error "'$deplib' is not a valid libtool archive"
8626 test "$absdir" != "$libdir" && \
8627 func_warning "'$deplib' seems to be moved"
8628
8629 path=-L$absdir
8630 fi
8631 ;;
8632 esac
8633 case " $deplibs " in
8634 *" $path "*) ;;
8635 *) deplibs="$path $deplibs" ;;
8636 esac
8637 done
8638 fi # link_all_deplibs != no
8639 fi # linkmode = lib
8640 done # for deplib in $libs
8641 if test link = "$pass"; then
8642 if test prog = "$linkmode"; then
8643 compile_deplibs="$new_inherited_linker_flags $compile_deplibs"
8644 finalize_deplibs="$new_inherited_linker_flags $finalize_deplibs"
8645 else
8646 compiler_flags="$compiler_flags "`$ECHO " $new_inherited_linker_flags" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'`
8647 fi
8648 fi
8649 dependency_libs=$newdependency_libs
8650 if test dlpreopen = "$pass"; then
8651 # Link the dlpreopened libraries before other libraries
8652 for deplib in $save_deplibs; do
8653 deplibs="$deplib $deplibs"
8654 done
8655 fi
8656 if test dlopen != "$pass"; then
8657 test conv = "$pass" || {
8658 # Make sure lib_search_path contains only unique directories.
8659 lib_search_path=
8660 for dir in $newlib_search_path; do
8661 case "$lib_search_path " in
8662 *" $dir "*) ;;
8663 *) func_append lib_search_path " $dir" ;;
8664 esac
8665 done
8666 newlib_search_path=
8667 }
8668
8669 if test prog,link = "$linkmode,$pass"; then
8670 vars="compile_deplibs finalize_deplibs"
8671 else
8672 vars=deplibs
8673 fi
8674 for var in $vars dependency_libs; do
8675 # Add libraries to $var in reverse order
8676 eval tmp_libs=\"\$$var\"
8677 new_libs=
8678 for deplib in $tmp_libs; do
8679 # FIXME: Pedantically, this is the right thing to do, so
8680 # that some nasty dependency loop isn't accidentally
8681 # broken:
8682 #new_libs="$deplib $new_libs"
8683 # Pragmatically, this seems to cause very few problems in
8684 # practice:
8685 case $deplib in
8686 -L*) new_libs="$deplib $new_libs" ;;
8687 -R*) ;;
8688 *)
8689 # And here is the reason: when a library appears more
8690 # than once as an explicit dependence of a library, or
8691 # is implicitly linked in more than once by the
8692 # compiler, it is considered special, and multiple
8693 # occurrences thereof are not removed. Compare this
8694 # with having the same library being listed as a
8695 # dependency of multiple other libraries: in this case,
8696 # we know (pedantically, we assume) the library does not
8697 # need to be listed more than once, so we keep only the
8698 # last copy. This is not always right, but it is rare
8699 # enough that we require users that really mean to play
8700 # such unportable linking tricks to link the library
8701 # using -Wl,-lname, so that libtool does not consider it
8702 # for duplicate removal.
8703 case " $specialdeplibs " in
8704 *" $deplib "*) new_libs="$deplib $new_libs" ;;
8705 *)
8706 case " $new_libs " in
8707 *" $deplib "*) ;;
8708 *) new_libs="$deplib $new_libs" ;;
8709 esac
8710 ;;
8711 esac
8712 ;;
8713 esac
8714 done
8715 tmp_libs=
8716 for deplib in $new_libs; do
8717 case $deplib in
8718 -L*)
8719 case " $tmp_libs " in
8720 *" $deplib "*) ;;
8721 *) func_append tmp_libs " $deplib" ;;
8722 esac
8723 ;;
8724 *) func_append tmp_libs " $deplib" ;;
8725 esac
8726 done
8727 eval $var=\"$tmp_libs\"
8728 done # for var
8729 fi
8730
8731 # Add Sun CC postdeps if required:
8732 test CXX = "$tagname" && {
8733 case $host_os in
8734 linux*)
8735 case `$CC -V 2>&1 | sed 5q` in
8736 *Sun\ C*) # Sun C++ 5.9
8737 func_suncc_cstd_abi
8738
8739 if test no != "$suncc_use_cstd_abi"; then
8740 func_append postdeps ' -library=Cstd -library=Crun'
8741 fi
8742 ;;
8743 esac
8744 ;;
8745
8746 solaris*)
8747 func_cc_basename "$CC"
8748 case $func_cc_basename_result in
8749 CC* | sunCC*)
8750 func_suncc_cstd_abi
8751
8752 if test no != "$suncc_use_cstd_abi"; then
8753 func_append postdeps ' -library=Cstd -library=Crun'
8754 fi
8755 ;;
8756 esac
8757 ;;
8758 esac
8759 }
8760
8761 # Last step: remove runtime libs from dependency_libs
8762 # (they stay in deplibs)
8763 tmp_libs=
8764 for i in $dependency_libs; do
8765 case " $predeps $postdeps $compiler_lib_search_path " in
8766 *" $i "*)
8767 i=
8768 ;;
8769 esac
8770 if test -n "$i"; then
8771 func_append tmp_libs " $i"
8772 fi
8773 done
8774 dependency_libs=$tmp_libs
8775 done # for pass
8776 if test prog = "$linkmode"; then
8777 dlfiles=$newdlfiles
8778 fi
8779 if test prog = "$linkmode" || test lib = "$linkmode"; then
8780 dlprefiles=$newdlprefiles
8781 fi
8782
8783 case $linkmode in
8784 oldlib)
8785 if test -n "$dlfiles$dlprefiles" || test no != "$dlself"; then
8786 func_warning "'-dlopen' is ignored for archives"
8787 fi
8788
8789 case " $deplibs" in
8790 *\ -l* | *\ -L*)
8791 func_warning "'-l' and '-L' are ignored for archives" ;;
8792 esac
8793
8794 test -n "$rpath" && \
8795 func_warning "'-rpath' is ignored for archives"
8796
8797 test -n "$xrpath" && \
8798 func_warning "'-R' is ignored for archives"
8799
8800 test -n "$vinfo" && \
8801 func_warning "'-version-info/-version-number' is ignored for archives"
8802
8803 test -n "$release" && \
8804 func_warning "'-release' is ignored for archives"
8805
8806 test -n "$export_symbols$export_symbols_regex" && \
8807 func_warning "'-export-symbols' is ignored for archives"
8808
8809 # Now set the variables for building old libraries.
8810 build_libtool_libs=no
8811 oldlibs=$output
8812 func_append objs "$old_deplibs"
8813 ;;
8814
8815 lib)
8816 # Make sure we only generate libraries of the form 'libNAME.la'.
8817 case $outputname in
8818 lib*)
8819 func_stripname 'lib' '.la' "$outputname"
8820 name=$func_stripname_result
8821 eval shared_ext=\"$shrext_cmds\"
8822 eval libname=\"$libname_spec\"
8823 ;;
8824 *)
8825 test no = "$module" \
8826 && func_fatal_help "libtool library '$output' must begin with 'lib'"
8827
8828 if test no != "$need_lib_prefix"; then
8829 # Add the "lib" prefix for modules if required
8830 func_stripname '' '.la' "$outputname"
8831 name=$func_stripname_result
8832 eval shared_ext=\"$shrext_cmds\"
8833 eval libname=\"$libname_spec\"
8834 else
8835 func_stripname '' '.la' "$outputname"
8836 libname=$func_stripname_result
8837 fi
8838 ;;
8839 esac
8840
8841 if test -n "$objs"; then
8842 if test pass_all != "$deplibs_check_method"; then
8843 func_fatal_error "cannot build libtool library '$output' from non-libtool objects on this host:$objs"
8844 else
8845 echo
8846 $ECHO "*** Warning: Linking the shared library $output against the non-libtool"
8847 $ECHO "*** objects $objs is not portable!"
8848 func_append libobjs " $objs"
8849 fi
8850 fi
8851
8852 test no = "$dlself" \
8853 || func_warning "'-dlopen self' is ignored for libtool libraries"
8854
8855 set dummy $rpath
8856 shift
8857 test 1 -lt "$#" \
8858 && func_warning "ignoring multiple '-rpath's for a libtool library"
8859
8860 install_libdir=$1
8861
8862 oldlibs=
8863 if test -z "$rpath"; then
8864 if test yes = "$build_libtool_libs"; then
8865 # Building a libtool convenience library.
8866 # Some compilers have problems with a '.al' extension so
8867 # convenience libraries should have the same extension an
8868 # archive normally would.
8869 oldlibs="$output_objdir/$libname.$libext $oldlibs"
8870 build_libtool_libs=convenience
8871 build_old_libs=yes
8872 fi
8873
8874 test -n "$vinfo" && \
8875 func_warning "'-version-info/-version-number' is ignored for convenience libraries"
8876
8877 test -n "$release" && \
8878 func_warning "'-release' is ignored for convenience libraries"
8879 else
8880
8881 # Parse the version information argument.
8882 save_ifs=$IFS; IFS=:
8883 set dummy $vinfo 0 0 0
8884 shift
8885 IFS=$save_ifs
8886
8887 test -n "$7" && \
8888 func_fatal_help "too many parameters to '-version-info'"
8889
8890 # convert absolute version numbers to libtool ages
8891 # this retains compatibility with .la files and attempts
8892 # to make the code below a bit more comprehensible
8893
8894 case $vinfo_number in
8895 yes)
8896 number_major=$1
8897 number_minor=$2
8898 number_revision=$3
8899 #
8900 # There are really only two kinds -- those that
8901 # use the current revision as the major version
8902 # and those that subtract age and use age as
8903 # a minor version. But, then there is irix
8904 # that has an extra 1 added just for fun
8905 #
8906 case $version_type in
8907 # correct linux to gnu/linux during the next big refactor
8908 darwin|freebsd-elf|linux|osf|windows|none)
8909 func_arith $number_major + $number_minor
8910 current=$func_arith_result
8911 age=$number_minor
8912 revision=$number_revision
8913 ;;
8914 freebsd-aout|qnx|sunos)
8915 current=$number_major
8916 revision=$number_minor
8917 age=0
8918 ;;
8919 irix|nonstopux)
8920 func_arith $number_major + $number_minor
8921 current=$func_arith_result
8922 age=$number_minor
8923 revision=$number_minor
8924 lt_irix_increment=no
8925 ;;
8926 *)
8927 func_fatal_configuration "$modename: unknown library version type '$version_type'"
8928 ;;
8929 esac
8930 ;;
8931 no)
8932 current=$1
8933 revision=$2
8934 age=$3
8935 ;;
8936 esac
8937
8938 # Check that each of the things are valid numbers.
8939 case $current in
8940 0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;;
8941 *)
8942 func_error "CURRENT '$current' must be a nonnegative integer"
8943 func_fatal_error "'$vinfo' is not valid version information"
8944 ;;
8945 esac
8946
8947 case $revision in
8948 0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;;
8949 *)
8950 func_error "REVISION '$revision' must be a nonnegative integer"
8951 func_fatal_error "'$vinfo' is not valid version information"
8952 ;;
8953 esac
8954
8955 case $age in
8956 0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;;
8957 *)
8958 func_error "AGE '$age' must be a nonnegative integer"
8959 func_fatal_error "'$vinfo' is not valid version information"
8960 ;;
8961 esac
8962
8963 if test "$age" -gt "$current"; then
8964 func_error "AGE '$age' is greater than the current interface number '$current'"
8965 func_fatal_error "'$vinfo' is not valid version information"
8966 fi
8967
8968 # Calculate the version variables.
8969 major=
8970 versuffix=
8971 verstring=
8972 case $version_type in
8973 none) ;;
8974
8975 darwin)
8976 # Like Linux, but with the current version available in
8977 # verstring for coding it into the library header
8978 func_arith $current - $age
8979 major=.$func_arith_result
8980 versuffix=$major.$age.$revision
8981 # Darwin ld doesn't like 0 for these options...
8982 func_arith $current + 1
8983 minor_current=$func_arith_result
8984 xlcverstring="$wl-compatibility_version $wl$minor_current $wl-current_version $wl$minor_current.$revision"
8985 verstring="-compatibility_version $minor_current -current_version $minor_current.$revision"
8986 # On Darwin other compilers
8987 case $CC in
8988 nagfor*)
8989 verstring="$wl-compatibility_version $wl$minor_current $wl-current_version $wl$minor_current.$revision"
8990 ;;
8991 *)
8992 verstring="-compatibility_version $minor_current -current_version $minor_current.$revision"
8993 ;;
8994 esac
8995 ;;
8996
8997 freebsd-aout)
8998 major=.$current
8999 versuffix=.$current.$revision
9000 ;;
9001
9002 freebsd-elf)
9003 func_arith $current - $age
9004 major=.$func_arith_result
9005 versuffix=$major.$age.$revision
9006 ;;
9007
9008 irix | nonstopux)
9009 if test no = "$lt_irix_increment"; then
9010 func_arith $current - $age
9011 else
9012 func_arith $current - $age + 1
9013 fi
9014 major=$func_arith_result
9015
9016 case $version_type in
9017 nonstopux) verstring_prefix=nonstopux ;;
9018 *) verstring_prefix=sgi ;;
9019 esac
9020 verstring=$verstring_prefix$major.$revision
9021
9022 # Add in all the interfaces that we are compatible with.
9023 loop=$revision
9024 while test 0 -ne "$loop"; do
9025 func_arith $revision - $loop
9026 iface=$func_arith_result
9027 func_arith $loop - 1
9028 loop=$func_arith_result
9029 verstring=$verstring_prefix$major.$iface:$verstring
9030 done
9031
9032 # Before this point, $major must not contain '.'.
9033 major=.$major
9034 versuffix=$major.$revision
9035 ;;
9036
9037 linux) # correct to gnu/linux during the next big refactor
9038 func_arith $current - $age
9039 major=.$func_arith_result
9040 versuffix=$major.$age.$revision
9041 ;;
9042
9043 osf)
9044 func_arith $current - $age
9045 major=.$func_arith_result
9046 versuffix=.$current.$age.$revision
9047 verstring=$current.$age.$revision
9048
9049 # Add in all the interfaces that we are compatible with.
9050 loop=$age
9051 while test 0 -ne "$loop"; do
9052 func_arith $current - $loop
9053 iface=$func_arith_result
9054 func_arith $loop - 1
9055 loop=$func_arith_result
9056 verstring=$verstring:$iface.0
9057 done
9058
9059 # Make executables depend on our current version.
9060 func_append verstring ":$current.0"
9061 ;;
9062
9063 qnx)
9064 major=.$current
9065 versuffix=.$current
9066 ;;
9067
9068 sco)
9069 major=.$current
9070 versuffix=.$current
9071 ;;
9072
9073 sunos)
9074 major=.$current
9075 versuffix=.$current.$revision
9076 ;;
9077
9078 windows)
9079 # Use '-' rather than '.', since we only want one
9080 # extension on DOS 8.3 file systems.
9081 func_arith $current - $age
9082 major=$func_arith_result
9083 versuffix=-$major
9084 ;;
9085
9086 *)
9087 func_fatal_configuration "unknown library version type '$version_type'"
9088 ;;
9089 esac
9090
9091 # Clear the version info if we defaulted, and they specified a release.
9092 if test -z "$vinfo" && test -n "$release"; then
9093 major=
9094 case $version_type in
9095 darwin)
9096 # we can't check for "0.0" in archive_cmds due to quoting
9097 # problems, so we reset it completely
9098 verstring=
9099 ;;
9100 *)
9101 verstring=0.0
9102 ;;
9103 esac
9104 if test no = "$need_version"; then
9105 versuffix=
9106 else
9107 versuffix=.0.0
9108 fi
9109 fi
9110
9111 # Remove version info from name if versioning should be avoided
9112 if test yes,no = "$avoid_version,$need_version"; then
9113 major=
9114 versuffix=
9115 verstring=
9116 fi
9117
9118 # Check to see if the archive will have undefined symbols.
9119 if test yes = "$allow_undefined"; then
9120 if test unsupported = "$allow_undefined_flag"; then
9121 if test yes = "$build_old_libs"; then
9122 func_warning "undefined symbols not allowed in $host shared libraries; building static only"
9123 build_libtool_libs=no
9124 else
9125 func_fatal_error "can't build $host shared library unless -no-undefined is specified"
9126 fi
9127 fi
9128 else
9129 # Don't allow undefined symbols.
9130 allow_undefined_flag=$no_undefined_flag
9131 fi
9132
9133 fi
9134
9135 func_generate_dlsyms "$libname" "$libname" :
9136 func_append libobjs " $symfileobj"
9137 test " " = "$libobjs" && libobjs=
9138
9139 if test relink != "$opt_mode"; then
9140 # Remove our outputs, but don't remove object files since they
9141 # may have been created when compiling PIC objects.
9142 removelist=
9143 tempremovelist=`$ECHO "$output_objdir/*"`
9144 for p in $tempremovelist; do
9145 case $p in
9146 *.$objext | *.gcno)
9147 ;;
9148 $output_objdir/$outputname | $output_objdir/$libname.* | $output_objdir/$libname$release.*)
9149 if test -n "$precious_files_regex"; then
9150 if $ECHO "$p" | $EGREP -e "$precious_files_regex" >/dev/null 2>&1
9151 then
9152 continue
9153 fi
9154 fi
9155 func_append removelist " $p"
9156 ;;
9157 *) ;;
9158 esac
9159 done
9160 test -n "$removelist" && \
9161 func_show_eval "${RM}r \$removelist"
9162 fi
9163
9164 # Now set the variables for building old libraries.
9165 if test yes = "$build_old_libs" && test convenience != "$build_libtool_libs"; then
9166 func_append oldlibs " $output_objdir/$libname.$libext"
9167
9168 # Transform .lo files to .o files.
9169 oldobjs="$objs "`$ECHO "$libobjs" | $SP2NL | $SED "/\.$libext$/d; $lo2o" | $NL2SP`
9170 fi
9171
9172 # Eliminate all temporary directories.
9173 #for path in $notinst_path; do
9174 # lib_search_path=`$ECHO "$lib_search_path " | $SED "s% $path % %g"`
9175 # deplibs=`$ECHO "$deplibs " | $SED "s% -L$path % %g"`
9176 # dependency_libs=`$ECHO "$dependency_libs " | $SED "s% -L$path % %g"`
9177 #done
9178
9179 if test -n "$xrpath"; then
9180 # If the user specified any rpath flags, then add them.
9181 temp_xrpath=
9182 for libdir in $xrpath; do
9183 func_replace_sysroot "$libdir"
9184 func_append temp_xrpath " -R$func_replace_sysroot_result"
9185 case "$finalize_rpath " in
9186 *" $libdir "*) ;;
9187 *) func_append finalize_rpath " $libdir" ;;
9188 esac
9189 done
9190 if test yes != "$hardcode_into_libs" || test yes = "$build_old_libs"; then
9191 dependency_libs="$temp_xrpath $dependency_libs"
9192 fi
9193 fi
9194
9195 # Make sure dlfiles contains only unique files that won't be dlpreopened
9196 old_dlfiles=$dlfiles
9197 dlfiles=
9198 for lib in $old_dlfiles; do
9199 case " $dlprefiles $dlfiles " in
9200 *" $lib "*) ;;
9201 *) func_append dlfiles " $lib" ;;
9202 esac
9203 done
9204
9205 # Make sure dlprefiles contains only unique files
9206 old_dlprefiles=$dlprefiles
9207 dlprefiles=
9208 for lib in $old_dlprefiles; do
9209 case "$dlprefiles " in
9210 *" $lib "*) ;;
9211 *) func_append dlprefiles " $lib" ;;
9212 esac
9213 done
9214
9215 if test yes = "$build_libtool_libs"; then
9216 if test -n "$rpath"; then
9217 case $host in
9218 *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-beos* | *-cegcc* | *-*-haiku*)
9219 # these systems don't actually have a c library (as such)!
9220 ;;
9221 *-*-rhapsody* | *-*-darwin1.[012])
9222 # Rhapsody C library is in the System framework
9223 func_append deplibs " System.ltframework"
9224 ;;
9225 *-*-netbsd*)
9226 # Don't link with libc until the a.out ld.so is fixed.
9227 ;;
9228 *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*)
9229 # Do not include libc due to us having libc/libc_r.
9230 ;;
9231 *-*-sco3.2v5* | *-*-sco5v6*)
9232 # Causes problems with __ctype
9233 ;;
9234 *-*-sysv4.2uw2* | *-*-sysv5* | *-*-unixware* | *-*-OpenUNIX*)
9235 # Compiler inserts libc in the correct place for threads to work
9236 ;;
9237 *)
9238 # Add libc to deplibs on all other systems if necessary.
9239 if test yes = "$build_libtool_need_lc"; then
9240 func_append deplibs " -lc"
9241 fi
9242 ;;
9243 esac
9244 fi
9245
9246 # Transform deplibs into only deplibs that can be linked in shared.
9247 name_save=$name
9248 libname_save=$libname
9249 release_save=$release
9250 versuffix_save=$versuffix
9251 major_save=$major
9252 # I'm not sure if I'm treating the release correctly. I think
9253 # release should show up in the -l (ie -lgmp5) so we don't want to
9254 # add it in twice. Is that correct?
9255 release=
9256 versuffix=
9257 major=
9258 newdeplibs=
9259 droppeddeps=no
9260 case $deplibs_check_method in
9261 pass_all)
9262 # Don't check for shared/static. Everything works.
9263 # This might be a little naive. We might want to check
9264 # whether the library exists or not. But this is on
9265 # osf3 & osf4 and I'm not really sure... Just
9266 # implementing what was already the behavior.
9267 newdeplibs=$deplibs
9268 ;;
9269 test_compile)
9270 # This code stresses the "libraries are programs" paradigm to its
9271 # limits. Maybe even breaks it. We compile a program, linking it
9272 # against the deplibs as a proxy for the library. Then we can check
9273 # whether they linked in statically or dynamically with ldd.
9274 $opt_dry_run || $RM conftest.c
9275 cat > conftest.c <<EOF
9276 int main() { return 0; }
9277 EOF
9278 $opt_dry_run || $RM conftest
9279 if $LTCC $LTCFLAGS -o conftest conftest.c $deplibs; then
9280 ldd_output=`ldd conftest`
9281 for i in $deplibs; do
9282 case $i in
9283 -l*)
9284 func_stripname -l '' "$i"
9285 name=$func_stripname_result
9286 if test yes = "$allow_libtool_libs_with_static_runtimes"; then
9287 case " $predeps $postdeps " in
9288 *" $i "*)
9289 func_append newdeplibs " $i"
9290 i=
9291 ;;
9292 esac
9293 fi
9294 if test -n "$i"; then
9295 libname=`eval "\\$ECHO \"$libname_spec\""`
9296 deplib_matches=`eval "\\$ECHO \"$library_names_spec\""`
9297 set dummy $deplib_matches; shift
9298 deplib_match=$1
9299 if test `expr "$ldd_output" : ".*$deplib_match"` -ne 0; then
9300 func_append newdeplibs " $i"
9301 else
9302 droppeddeps=yes
9303 echo
9304 $ECHO "*** Warning: dynamic linker does not accept needed library $i."
9305 echo "*** I have the capability to make that library automatically link in when"
9306 echo "*** you link to this library. But I can only do this if you have a"
9307 echo "*** shared version of the library, which I believe you do not have"
9308 echo "*** because a test_compile did reveal that the linker did not use it for"
9309 echo "*** its dynamic dependency list that programs get resolved with at runtime."
9310 fi
9311 fi
9312 ;;
9313 *)
9314 func_append newdeplibs " $i"
9315 ;;
9316 esac
9317 done
9318 else
9319 # Error occurred in the first compile. Let's try to salvage
9320 # the situation: Compile a separate program for each library.
9321 for i in $deplibs; do
9322 case $i in
9323 -l*)
9324 func_stripname -l '' "$i"
9325 name=$func_stripname_result
9326 $opt_dry_run || $RM conftest
9327 if $LTCC $LTCFLAGS -o conftest conftest.c $i; then
9328 ldd_output=`ldd conftest`
9329 if test yes = "$allow_libtool_libs_with_static_runtimes"; then
9330 case " $predeps $postdeps " in
9331 *" $i "*)
9332 func_append newdeplibs " $i"
9333 i=
9334 ;;
9335 esac
9336 fi
9337 if test -n "$i"; then
9338 libname=`eval "\\$ECHO \"$libname_spec\""`
9339 deplib_matches=`eval "\\$ECHO \"$library_names_spec\""`
9340 set dummy $deplib_matches; shift
9341 deplib_match=$1
9342 if test `expr "$ldd_output" : ".*$deplib_match"` -ne 0; then
9343 func_append newdeplibs " $i"
9344 else
9345 droppeddeps=yes
9346 echo
9347 $ECHO "*** Warning: dynamic linker does not accept needed library $i."
9348 echo "*** I have the capability to make that library automatically link in when"
9349 echo "*** you link to this library. But I can only do this if you have a"
9350 echo "*** shared version of the library, which you do not appear to have"
9351 echo "*** because a test_compile did reveal that the linker did not use this one"
9352 echo "*** as a dynamic dependency that programs can get resolved with at runtime."
9353 fi
9354 fi
9355 else
9356 droppeddeps=yes
9357 echo
9358 $ECHO "*** Warning! Library $i is needed by this library but I was not able to"
9359 echo "*** make it link in! You will probably need to install it or some"
9360 echo "*** library that it depends on before this library will be fully"
9361 echo "*** functional. Installing it before continuing would be even better."
9362 fi
9363 ;;
9364 *)
9365 func_append newdeplibs " $i"
9366 ;;
9367 esac
9368 done
9369 fi
9370 ;;
9371 file_magic*)
9372 set dummy $deplibs_check_method; shift
9373 file_magic_regex=`expr "$deplibs_check_method" : "$1 \(.*\)"`
9374 for a_deplib in $deplibs; do
9375 case $a_deplib in
9376 -l*)
9377 func_stripname -l '' "$a_deplib"
9378 name=$func_stripname_result
9379 if test yes = "$allow_libtool_libs_with_static_runtimes"; then
9380 case " $predeps $postdeps " in
9381 *" $a_deplib "*)
9382 func_append newdeplibs " $a_deplib"
9383 a_deplib=
9384 ;;
9385 esac
9386 fi
9387 if test -n "$a_deplib"; then
9388 libname=`eval "\\$ECHO \"$libname_spec\""`
9389 if test -n "$file_magic_glob"; then
9390 libnameglob=`func_echo_all "$libname" | $SED -e $file_magic_glob`
9391 else
9392 libnameglob=$libname
9393 fi
9394 test yes = "$want_nocaseglob" && nocaseglob=`shopt -p nocaseglob`
9395 for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do
9396 if test yes = "$want_nocaseglob"; then
9397 shopt -s nocaseglob
9398 potential_libs=`ls $i/$libnameglob[.-]* 2>/dev/null`
9399 $nocaseglob
9400 else
9401 potential_libs=`ls $i/$libnameglob[.-]* 2>/dev/null`
9402 fi
9403 for potent_lib in $potential_libs; do
9404 # Follow soft links.
9405 if ls -lLd "$potent_lib" 2>/dev/null |
9406 $GREP " -> " >/dev/null; then
9407 continue
9408 fi
9409 # The statement above tries to avoid entering an
9410 # endless loop below, in case of cyclic links.
9411 # We might still enter an endless loop, since a link
9412 # loop can be closed while we follow links,
9413 # but so what?
9414 potlib=$potent_lib
9415 while test -h "$potlib" 2>/dev/null; do
9416 potliblink=`ls -ld $potlib | $SED 's/.* -> //'`
9417 case $potliblink in
9418 [\\/]* | [A-Za-z]:[\\/]*) potlib=$potliblink;;
9419 *) potlib=`$ECHO "$potlib" | $SED 's|[^/]*$||'`"$potliblink";;
9420 esac
9421 done
9422 if eval $file_magic_cmd \"\$potlib\" 2>/dev/null |
9423 $SED -e 10q |
9424 $EGREP "$file_magic_regex" > /dev/null; then
9425 func_append newdeplibs " $a_deplib"
9426 a_deplib=
9427 break 2
9428 fi
9429 done
9430 done
9431 fi
9432 if test -n "$a_deplib"; then
9433 droppeddeps=yes
9434 echo
9435 $ECHO "*** Warning: linker path does not have real file for library $a_deplib."
9436 echo "*** I have the capability to make that library automatically link in when"
9437 echo "*** you link to this library. But I can only do this if you have a"
9438 echo "*** shared version of the library, which you do not appear to have"
9439 echo "*** because I did check the linker path looking for a file starting"
9440 if test -z "$potlib"; then
9441 $ECHO "*** with $libname but no candidates were found. (...for file magic test)"
9442 else
9443 $ECHO "*** with $libname and none of the candidates passed a file format test"
9444 $ECHO "*** using a file magic. Last file checked: $potlib"
9445 fi
9446 fi
9447 ;;
9448 *)
9449 # Add a -L argument.
9450 func_append newdeplibs " $a_deplib"
9451 ;;
9452 esac
9453 done # Gone through all deplibs.
9454 ;;
9455 match_pattern*)
9456 set dummy $deplibs_check_method; shift
9457 match_pattern_regex=`expr "$deplibs_check_method" : "$1 \(.*\)"`
9458 for a_deplib in $deplibs; do
9459 case $a_deplib in
9460 -l*)
9461 func_stripname -l '' "$a_deplib"
9462 name=$func_stripname_result
9463 if test yes = "$allow_libtool_libs_with_static_runtimes"; then
9464 case " $predeps $postdeps " in
9465 *" $a_deplib "*)
9466 func_append newdeplibs " $a_deplib"
9467 a_deplib=
9468 ;;
9469 esac
9470 fi
9471 if test -n "$a_deplib"; then
9472 libname=`eval "\\$ECHO \"$libname_spec\""`
9473 for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do
9474 potential_libs=`ls $i/$libname[.-]* 2>/dev/null`
9475 for potent_lib in $potential_libs; do
9476 potlib=$potent_lib # see symlink-check above in file_magic test
9477 if eval "\$ECHO \"$potent_lib\"" 2>/dev/null | $SED 10q | \
9478 $EGREP "$match_pattern_regex" > /dev/null; then
9479 func_append newdeplibs " $a_deplib"
9480 a_deplib=
9481 break 2
9482 fi
9483 done
9484 done
9485 fi
9486 if test -n "$a_deplib"; then
9487 droppeddeps=yes
9488 echo
9489 $ECHO "*** Warning: linker path does not have real file for library $a_deplib."
9490 echo "*** I have the capability to make that library automatically link in when"
9491 echo "*** you link to this library. But I can only do this if you have a"
9492 echo "*** shared version of the library, which you do not appear to have"
9493 echo "*** because I did check the linker path looking for a file starting"
9494 if test -z "$potlib"; then
9495 $ECHO "*** with $libname but no candidates were found. (...for regex pattern test)"
9496 else
9497 $ECHO "*** with $libname and none of the candidates passed a file format test"
9498 $ECHO "*** using a regex pattern. Last file checked: $potlib"
9499 fi
9500 fi
9501 ;;
9502 *)
9503 # Add a -L argument.
9504 func_append newdeplibs " $a_deplib"
9505 ;;
9506 esac
9507 done # Gone through all deplibs.
9508 ;;
9509 none | unknown | *)
9510 newdeplibs=
9511 tmp_deplibs=`$ECHO " $deplibs" | $SED 's/ -lc$//; s/ -[LR][^ ]*//g'`
9512 if test yes = "$allow_libtool_libs_with_static_runtimes"; then
9513 for i in $predeps $postdeps; do
9514 # can't use Xsed below, because $i might contain '/'
9515 tmp_deplibs=`$ECHO " $tmp_deplibs" | $SED "s|$i||"`
9516 done
9517 fi
9518 case $tmp_deplibs in
9519 *[!\ \ ]*)
9520 echo
9521 if test none = "$deplibs_check_method"; then
9522 echo "*** Warning: inter-library dependencies are not supported in this platform."
9523 else
9524 echo "*** Warning: inter-library dependencies are not known to be supported."
9525 fi
9526 echo "*** All declared inter-library dependencies are being dropped."
9527 droppeddeps=yes
9528 ;;
9529 esac
9530 ;;
9531 esac
9532 versuffix=$versuffix_save
9533 major=$major_save
9534 release=$release_save
9535 libname=$libname_save
9536 name=$name_save
9537
9538 case $host in
9539 *-*-rhapsody* | *-*-darwin1.[012])
9540 # On Rhapsody replace the C library with the System framework
9541 newdeplibs=`$ECHO " $newdeplibs" | $SED 's/ -lc / System.ltframework /'`
9542 ;;
9543 esac
9544
9545 if test yes = "$droppeddeps"; then
9546 if test yes = "$module"; then
9547 echo
9548 echo "*** Warning: libtool could not satisfy all declared inter-library"
9549 $ECHO "*** dependencies of module $libname. Therefore, libtool will create"
9550 echo "*** a static module, that should work as long as the dlopening"
9551 echo "*** application is linked with the -dlopen flag."
9552 if test -z "$global_symbol_pipe"; then
9553 echo
9554 echo "*** However, this would only work if libtool was able to extract symbol"
9555 echo "*** lists from a program, using 'nm' or equivalent, but libtool could"
9556 echo "*** not find such a program. So, this module is probably useless."
9557 echo "*** 'nm' from GNU binutils and a full rebuild may help."
9558 fi
9559 if test no = "$build_old_libs"; then
9560 oldlibs=$output_objdir/$libname.$libext
9561 build_libtool_libs=module
9562 build_old_libs=yes
9563 else
9564 build_libtool_libs=no
9565 fi
9566 else
9567 echo "*** The inter-library dependencies that have been dropped here will be"
9568 echo "*** automatically added whenever a program is linked with this library"
9569 echo "*** or is declared to -dlopen it."
9570
9571 if test no = "$allow_undefined"; then
9572 echo
9573 echo "*** Since this library must not contain undefined symbols,"
9574 echo "*** because either the platform does not support them or"
9575 echo "*** it was explicitly requested with -no-undefined,"
9576 echo "*** libtool will only create a static version of it."
9577 if test no = "$build_old_libs"; then
9578 oldlibs=$output_objdir/$libname.$libext
9579 build_libtool_libs=module
9580 build_old_libs=yes
9581 else
9582 build_libtool_libs=no
9583 fi
9584 fi
9585 fi
9586 fi
9587 # Done checking deplibs!
9588 deplibs=$newdeplibs
9589 fi
9590 # Time to change all our "foo.ltframework" stuff back to "-framework foo"
9591 case $host in
9592 *-*-darwin*)
9593 newdeplibs=`$ECHO " $newdeplibs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'`
9594 new_inherited_linker_flags=`$ECHO " $new_inherited_linker_flags" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'`
9595 deplibs=`$ECHO " $deplibs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'`
9596 ;;
9597 esac
9598
9599 # move library search paths that coincide with paths to not yet
9600 # installed libraries to the beginning of the library search list
9601 new_libs=
9602 for path in $notinst_path; do
9603 case " $new_libs " in
9604 *" -L$path/$objdir "*) ;;
9605 *)
9606 case " $deplibs " in
9607 *" -L$path/$objdir "*)
9608 func_append new_libs " -L$path/$objdir" ;;
9609 esac
9610 ;;
9611 esac
9612 done
9613 for deplib in $deplibs; do
9614 case $deplib in
9615 -L*)
9616 case " $new_libs " in
9617 *" $deplib "*) ;;
9618 *) func_append new_libs " $deplib" ;;
9619 esac
9620 ;;
9621 *) func_append new_libs " $deplib" ;;
9622 esac
9623 done
9624 deplibs=$new_libs
9625
9626 # All the library-specific variables (install_libdir is set above).
9627 library_names=
9628 old_library=
9629 dlname=
9630
9631 # Test again, we may have decided not to build it any more
9632 if test yes = "$build_libtool_libs"; then
9633 # Remove $wl instances when linking with ld.
9634 # FIXME: should test the right _cmds variable.
9635 case $archive_cmds in
9636 *\$LD\ *) wl= ;;
9637 esac
9638 if test yes = "$hardcode_into_libs"; then
9639 # Hardcode the library paths
9640 hardcode_libdirs=
9641 dep_rpath=
9642 rpath=$finalize_rpath
9643 test relink = "$opt_mode" || rpath=$compile_rpath$rpath
9644 for libdir in $rpath; do
9645 if test -n "$hardcode_libdir_flag_spec"; then
9646 if test -n "$hardcode_libdir_separator"; then
9647 func_replace_sysroot "$libdir"
9648 libdir=$func_replace_sysroot_result
9649 if test -z "$hardcode_libdirs"; then
9650 hardcode_libdirs=$libdir
9651 else
9652 # Just accumulate the unique libdirs.
9653 case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in
9654 *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*)
9655 ;;
9656 *)
9657 func_append hardcode_libdirs "$hardcode_libdir_separator$libdir"
9658 ;;
9659 esac
9660 fi
9661 else
9662 eval flag=\"$hardcode_libdir_flag_spec\"
9663 func_append dep_rpath " $flag"
9664 fi
9665 elif test -n "$runpath_var"; then
9666 case "$perm_rpath " in
9667 *" $libdir "*) ;;
9668 *) func_append perm_rpath " $libdir" ;;
9669 esac
9670 fi
9671 done
9672 # Substitute the hardcoded libdirs into the rpath.
9673 if test -n "$hardcode_libdir_separator" &&
9674 test -n "$hardcode_libdirs"; then
9675 libdir=$hardcode_libdirs
9676 eval "dep_rpath=\"$hardcode_libdir_flag_spec\""
9677 fi
9678 if test -n "$runpath_var" && test -n "$perm_rpath"; then
9679 # We should set the runpath_var.
9680 rpath=
9681 for dir in $perm_rpath; do
9682 func_append rpath "$dir:"
9683 done
9684 eval "$runpath_var='$rpath\$$runpath_var'; export $runpath_var"
9685 fi
9686 test -n "$dep_rpath" && deplibs="$dep_rpath $deplibs"
9687 fi
9688
9689 shlibpath=$finalize_shlibpath
9690 test relink = "$opt_mode" || shlibpath=$compile_shlibpath$shlibpath
9691 if test -n "$shlibpath"; then
9692 eval "$shlibpath_var='$shlibpath\$$shlibpath_var'; export $shlibpath_var"
9693 fi
9694
9695 # Get the real and link names of the library.
9696 eval shared_ext=\"$shrext_cmds\"
9697 eval library_names=\"$library_names_spec\"
9698 set dummy $library_names
9699 shift
9700 realname=$1
9701 shift
9702
9703 if test -n "$soname_spec"; then
9704 eval soname=\"$soname_spec\"
9705 else
9706 soname=$realname
9707 fi
9708 if test -z "$dlname"; then
9709 dlname=$soname
9710 fi
9711
9712 lib=$output_objdir/$realname
9713 linknames=
9714 for link
9715 do
9716 func_append linknames " $link"
9717 done
9718
9719 # Use standard objects if they are pic
9720 test -z "$pic_flag" && libobjs=`$ECHO "$libobjs" | $SP2NL | $SED "$lo2o" | $NL2SP`
9721 test "X$libobjs" = "X " && libobjs=
9722
9723 delfiles=
9724 if test -n "$export_symbols" && test -n "$include_expsyms"; then
9725 $opt_dry_run || cp "$export_symbols" "$output_objdir/$libname.uexp"
9726 export_symbols=$output_objdir/$libname.uexp
9727 func_append delfiles " $export_symbols"
9728 fi
9729
9730 orig_export_symbols=
9731 case $host_os in
9732 cygwin* | mingw* | cegcc*)
9733 if test -n "$export_symbols" && test -z "$export_symbols_regex"; then
9734 # exporting using user supplied symfile
9735 func_dll_def_p "$export_symbols" || {
9736 # and it's NOT already a .def file. Must figure out
9737 # which of the given symbols are data symbols and tag
9738 # them as such. So, trigger use of export_symbols_cmds.
9739 # export_symbols gets reassigned inside the "prepare
9740 # the list of exported symbols" if statement, so the
9741 # include_expsyms logic still works.
9742 orig_export_symbols=$export_symbols
9743 export_symbols=
9744 always_export_symbols=yes
9745 }
9746 fi
9747 ;;
9748 esac
9749
9750 # Prepare the list of exported symbols
9751 if test -z "$export_symbols"; then
9752 if test yes = "$always_export_symbols" || test -n "$export_symbols_regex"; then
9753 func_verbose "generating symbol list for '$libname.la'"
9754 export_symbols=$output_objdir/$libname.exp
9755 $opt_dry_run || $RM $export_symbols
9756 cmds=$export_symbols_cmds
9757 save_ifs=$IFS; IFS='~'
9758 for cmd1 in $cmds; do
9759 IFS=$save_ifs
9760 # Take the normal branch if the nm_file_list_spec branch
9761 # doesn't work or if tool conversion is not needed.
9762 case $nm_file_list_spec~$to_tool_file_cmd in
9763 *~func_convert_file_noop | *~func_convert_file_msys_to_w32 | ~*)
9764 try_normal_branch=yes
9765 eval cmd=\"$cmd1\"
9766 func_len " $cmd"
9767 len=$func_len_result
9768 ;;
9769 *)
9770 try_normal_branch=no
9771 ;;
9772 esac
9773 if test yes = "$try_normal_branch" \
9774 && { test "$len" -lt "$max_cmd_len" \
9775 || test "$max_cmd_len" -le -1; }
9776 then
9777 func_show_eval "$cmd" 'exit $?'
9778 skipped_export=false
9779 elif test -n "$nm_file_list_spec"; then
9780 func_basename "$output"
9781 output_la=$func_basename_result
9782 save_libobjs=$libobjs
9783 save_output=$output
9784 output=$output_objdir/$output_la.nm
9785 func_to_tool_file "$output"
9786 libobjs=$nm_file_list_spec$func_to_tool_file_result
9787 func_append delfiles " $output"
9788 func_verbose "creating $NM input file list: $output"
9789 for obj in $save_libobjs; do
9790 func_to_tool_file "$obj"
9791 $ECHO "$func_to_tool_file_result"
9792 done > "$output"
9793 eval cmd=\"$cmd1\"
9794 func_show_eval "$cmd" 'exit $?'
9795 output=$save_output
9796 libobjs=$save_libobjs
9797 skipped_export=false
9798 else
9799 # The command line is too long to execute in one step.
9800 func_verbose "using reloadable object file for export list..."
9801 skipped_export=:
9802 # Break out early, otherwise skipped_export may be
9803 # set to false by a later but shorter cmd.
9804 break
9805 fi
9806 done
9807 IFS=$save_ifs
9808 if test -n "$export_symbols_regex" && test : != "$skipped_export"; then
9809 func_show_eval '$EGREP -e "$export_symbols_regex" "$export_symbols" > "${export_symbols}T"'
9810 func_show_eval '$MV "${export_symbols}T" "$export_symbols"'
9811 fi
9812 fi
9813 fi
9814
9815 if test -n "$export_symbols" && test -n "$include_expsyms"; then
9816 tmp_export_symbols=$export_symbols
9817 test -n "$orig_export_symbols" && tmp_export_symbols=$orig_export_symbols
9818 $opt_dry_run || eval '$ECHO "$include_expsyms" | $SP2NL >> "$tmp_export_symbols"'
9819 fi
9820
9821 if test : != "$skipped_export" && test -n "$orig_export_symbols"; then
9822 # The given exports_symbols file has to be filtered, so filter it.
9823 func_verbose "filter symbol list for '$libname.la' to tag DATA exports"
9824 # FIXME: $output_objdir/$libname.filter potentially contains lots of
9825 # 's' commands, which not all seds can handle. GNU sed should be fine
9826 # though. Also, the filter scales superlinearly with the number of
9827 # global variables. join(1) would be nice here, but unfortunately
9828 # isn't a blessed tool.
9829 $opt_dry_run || $SED -e '/[ ,]DATA/!d;s,\(.*\)\([ \,].*\),s|^\1$|\1\2|,' < $export_symbols > $output_objdir/$libname.filter
9830 func_append delfiles " $export_symbols $output_objdir/$libname.filter"
9831 export_symbols=$output_objdir/$libname.def
9832 $opt_dry_run || $SED -f $output_objdir/$libname.filter < $orig_export_symbols > $export_symbols
9833 fi
9834
9835 tmp_deplibs=
9836 for test_deplib in $deplibs; do
9837 case " $convenience " in
9838 *" $test_deplib "*) ;;
9839 *)
9840 func_append tmp_deplibs " $test_deplib"
9841 ;;
9842 esac
9843 done
9844 deplibs=$tmp_deplibs
9845
9846 if test -n "$convenience"; then
9847 if test -n "$whole_archive_flag_spec" &&
9848 test yes = "$compiler_needs_object" &&
9849 test -z "$libobjs"; then
9850 # extract the archives, so we have objects to list.
9851 # TODO: could optimize this to just extract one archive.
9852 whole_archive_flag_spec=
9853 fi
9854 if test -n "$whole_archive_flag_spec"; then
9855 save_libobjs=$libobjs
9856 eval libobjs=\"\$libobjs $whole_archive_flag_spec\"
9857 test "X$libobjs" = "X " && libobjs=
9858 else
9859 gentop=$output_objdir/${outputname}x
9860 func_append generated " $gentop"
9861
9862 func_extract_archives $gentop $convenience
9863 func_append libobjs " $func_extract_archives_result"
9864 test "X$libobjs" = "X " && libobjs=
9865 fi
9866 fi
9867
9868 if test yes = "$thread_safe" && test -n "$thread_safe_flag_spec"; then
9869 eval flag=\"$thread_safe_flag_spec\"
9870 func_append linker_flags " $flag"
9871 fi
9872
9873 # Make a backup of the uninstalled library when relinking
9874 if test relink = "$opt_mode"; then
9875 $opt_dry_run || eval '(cd $output_objdir && $RM ${realname}U && $MV $realname ${realname}U)' || exit $?
9876 fi
9877
9878 # Do each of the archive commands.
9879 if test yes = "$module" && test -n "$module_cmds"; then
9880 if test -n "$export_symbols" && test -n "$module_expsym_cmds"; then
9881 eval test_cmds=\"$module_expsym_cmds\"
9882 cmds=$module_expsym_cmds
9883 else
9884 eval test_cmds=\"$module_cmds\"
9885 cmds=$module_cmds
9886 fi
9887 else
9888 if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then
9889 eval test_cmds=\"$archive_expsym_cmds\"
9890 cmds=$archive_expsym_cmds
9891 else
9892 eval test_cmds=\"$archive_cmds\"
9893 cmds=$archive_cmds
9894 fi
9895 fi
9896
9897 if test : != "$skipped_export" &&
9898 func_len " $test_cmds" &&
9899 len=$func_len_result &&
9900 test "$len" -lt "$max_cmd_len" || test "$max_cmd_len" -le -1; then
9901 :
9902 else
9903 # The command line is too long to link in one step, link piecewise
9904 # or, if using GNU ld and skipped_export is not :, use a linker
9905 # script.
9906
9907 # Save the value of $output and $libobjs because we want to
9908 # use them later. If we have whole_archive_flag_spec, we
9909 # want to use save_libobjs as it was before
9910 # whole_archive_flag_spec was expanded, because we can't
9911 # assume the linker understands whole_archive_flag_spec.
9912 # This may have to be revisited, in case too many
9913 # convenience libraries get linked in and end up exceeding
9914 # the spec.
9915 if test -z "$convenience" || test -z "$whole_archive_flag_spec"; then
9916 save_libobjs=$libobjs
9917 fi
9918 save_output=$output
9919 func_basename "$output"
9920 output_la=$func_basename_result
9921
9922 # Clear the reloadable object creation command queue and
9923 # initialize k to one.
9924 test_cmds=
9925 concat_cmds=
9926 objlist=
9927 last_robj=
9928 k=1
9929
9930 if test -n "$save_libobjs" && test : != "$skipped_export" && test yes = "$with_gnu_ld"; then
9931 output=$output_objdir/$output_la.lnkscript
9932 func_verbose "creating GNU ld script: $output"
9933 echo 'INPUT (' > $output
9934 for obj in $save_libobjs
9935 do
9936 func_to_tool_file "$obj"
9937 $ECHO "$func_to_tool_file_result" >> $output
9938 done
9939 echo ')' >> $output
9940 func_append delfiles " $output"
9941 func_to_tool_file "$output"
9942 output=$func_to_tool_file_result
9943 elif test -n "$save_libobjs" && test : != "$skipped_export" && test -n "$file_list_spec"; then
9944 output=$output_objdir/$output_la.lnk
9945 func_verbose "creating linker input file list: $output"
9946 : > $output
9947 set x $save_libobjs
9948 shift
9949 firstobj=
9950 if test yes = "$compiler_needs_object"; then
9951 firstobj="$1 "
9952 shift
9953 fi
9954 for obj
9955 do
9956 func_to_tool_file "$obj"
9957 $ECHO "$func_to_tool_file_result" >> $output
9958 done
9959 func_append delfiles " $output"
9960 func_to_tool_file "$output"
9961 output=$firstobj\"$file_list_spec$func_to_tool_file_result\"
9962 else
9963 if test -n "$save_libobjs"; then
9964 func_verbose "creating reloadable object files..."
9965 output=$output_objdir/$output_la-$k.$objext
9966 eval test_cmds=\"$reload_cmds\"
9967 func_len " $test_cmds"
9968 len0=$func_len_result
9969 len=$len0
9970
9971 # Loop over the list of objects to be linked.
9972 for obj in $save_libobjs
9973 do
9974 func_len " $obj"
9975 func_arith $len + $func_len_result
9976 len=$func_arith_result
9977 if test -z "$objlist" ||
9978 test "$len" -lt "$max_cmd_len"; then
9979 func_append objlist " $obj"
9980 else
9981 # The command $test_cmds is almost too long, add a
9982 # command to the queue.
9983 if test 1 -eq "$k"; then
9984 # The first file doesn't have a previous command to add.
9985 reload_objs=$objlist
9986 eval concat_cmds=\"$reload_cmds\"
9987 else
9988 # All subsequent reloadable object files will link in
9989 # the last one created.
9990 reload_objs="$objlist $last_robj"
9991 eval concat_cmds=\"\$concat_cmds~$reload_cmds~\$RM $last_robj\"
9992 fi
9993 last_robj=$output_objdir/$output_la-$k.$objext
9994 func_arith $k + 1
9995 k=$func_arith_result
9996 output=$output_objdir/$output_la-$k.$objext
9997 objlist=" $obj"
9998 func_len " $last_robj"
9999 func_arith $len0 + $func_len_result
10000 len=$func_arith_result
10001 fi
10002 done
10003 # Handle the remaining objects by creating one last
10004 # reloadable object file. All subsequent reloadable object
10005 # files will link in the last one created.
10006 test -z "$concat_cmds" || concat_cmds=$concat_cmds~
10007 reload_objs="$objlist $last_robj"
10008 eval concat_cmds=\"\$concat_cmds$reload_cmds\"
10009 if test -n "$last_robj"; then
10010 eval concat_cmds=\"\$concat_cmds~\$RM $last_robj\"
10011 fi
10012 func_append delfiles " $output"
10013
10014 else
10015 output=
10016 fi
10017
10018 ${skipped_export-false} && {
10019 func_verbose "generating symbol list for '$libname.la'"
10020 export_symbols=$output_objdir/$libname.exp
10021 $opt_dry_run || $RM $export_symbols
10022 libobjs=$output
10023 # Append the command to create the export file.
10024 test -z "$concat_cmds" || concat_cmds=$concat_cmds~
10025 eval concat_cmds=\"\$concat_cmds$export_symbols_cmds\"
10026 if test -n "$last_robj"; then
10027 eval concat_cmds=\"\$concat_cmds~\$RM $last_robj\"
10028 fi
10029 }
10030
10031 test -n "$save_libobjs" &&
10032 func_verbose "creating a temporary reloadable object file: $output"
10033
10034 # Loop through the commands generated above and execute them.
10035 save_ifs=$IFS; IFS='~'
10036 for cmd in $concat_cmds; do
10037 IFS=$save_ifs
10038 $opt_quiet || {
10039 func_quote_for_expand "$cmd"
10040 eval "func_echo $func_quote_for_expand_result"
10041 }
10042 $opt_dry_run || eval "$cmd" || {
10043 lt_exit=$?
10044
10045 # Restore the uninstalled library and exit
10046 if test relink = "$opt_mode"; then
10047 ( cd "$output_objdir" && \
10048 $RM "${realname}T" && \
10049 $MV "${realname}U" "$realname" )
10050 fi
10051
10052 exit $lt_exit
10053 }
10054 done
10055 IFS=$save_ifs
10056
10057 if test -n "$export_symbols_regex" && ${skipped_export-false}; then
10058 func_show_eval '$EGREP -e "$export_symbols_regex" "$export_symbols" > "${export_symbols}T"'
10059 func_show_eval '$MV "${export_symbols}T" "$export_symbols"'
10060 fi
10061 fi
10062
10063 ${skipped_export-false} && {
10064 if test -n "$export_symbols" && test -n "$include_expsyms"; then
10065 tmp_export_symbols=$export_symbols
10066 test -n "$orig_export_symbols" && tmp_export_symbols=$orig_export_symbols
10067 $opt_dry_run || eval '$ECHO "$include_expsyms" | $SP2NL >> "$tmp_export_symbols"'
10068 fi
10069
10070 if test -n "$orig_export_symbols"; then
10071 # The given exports_symbols file has to be filtered, so filter it.
10072 func_verbose "filter symbol list for '$libname.la' to tag DATA exports"
10073 # FIXME: $output_objdir/$libname.filter potentially contains lots of
10074 # 's' commands, which not all seds can handle. GNU sed should be fine
10075 # though. Also, the filter scales superlinearly with the number of
10076 # global variables. join(1) would be nice here, but unfortunately
10077 # isn't a blessed tool.
10078 $opt_dry_run || $SED -e '/[ ,]DATA/!d;s,\(.*\)\([ \,].*\),s|^\1$|\1\2|,' < $export_symbols > $output_objdir/$libname.filter
10079 func_append delfiles " $export_symbols $output_objdir/$libname.filter"
10080 export_symbols=$output_objdir/$libname.def
10081 $opt_dry_run || $SED -f $output_objdir/$libname.filter < $orig_export_symbols > $export_symbols
10082 fi
10083 }
10084
10085 libobjs=$output
10086 # Restore the value of output.
10087 output=$save_output
10088
10089 if test -n "$convenience" && test -n "$whole_archive_flag_spec"; then
10090 eval libobjs=\"\$libobjs $whole_archive_flag_spec\"
10091 test "X$libobjs" = "X " && libobjs=
10092 fi
10093 # Expand the library linking commands again to reset the
10094 # value of $libobjs for piecewise linking.
10095
10096 # Do each of the archive commands.
10097 if test yes = "$module" && test -n "$module_cmds"; then
10098 if test -n "$export_symbols" && test -n "$module_expsym_cmds"; then
10099 cmds=$module_expsym_cmds
10100 else
10101 cmds=$module_cmds
10102 fi
10103 else
10104 if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then
10105 cmds=$archive_expsym_cmds
10106 else
10107 cmds=$archive_cmds
10108 fi
10109 fi
10110 fi
10111
10112 if test -n "$delfiles"; then
10113 # Append the command to remove temporary files to $cmds.
10114 eval cmds=\"\$cmds~\$RM $delfiles\"
10115 fi
10116
10117 # Add any objects from preloaded convenience libraries
10118 if test -n "$dlprefiles"; then
10119 gentop=$output_objdir/${outputname}x
10120 func_append generated " $gentop"
10121
10122 func_extract_archives $gentop $dlprefiles
10123 func_append libobjs " $func_extract_archives_result"
10124 test "X$libobjs" = "X " && libobjs=
10125 fi
10126
10127 save_ifs=$IFS; IFS='~'
10128 for cmd in $cmds; do
10129 IFS=$sp$nl
10130 eval cmd=\"$cmd\"
10131 IFS=$save_ifs
10132 $opt_quiet || {
10133 func_quote_for_expand "$cmd"
10134 eval "func_echo $func_quote_for_expand_result"
10135 }
10136 $opt_dry_run || eval "$cmd" || {
10137 lt_exit=$?
10138
10139 # Restore the uninstalled library and exit
10140 if test relink = "$opt_mode"; then
10141 ( cd "$output_objdir" && \
10142 $RM "${realname}T" && \
10143 $MV "${realname}U" "$realname" )
10144 fi
10145
10146 exit $lt_exit
10147 }
10148 done
10149 IFS=$save_ifs
10150
10151 # Restore the uninstalled library and exit
10152 if test relink = "$opt_mode"; then
10153 $opt_dry_run || eval '(cd $output_objdir && $RM ${realname}T && $MV $realname ${realname}T && $MV ${realname}U $realname)' || exit $?
10154
10155 if test -n "$convenience"; then
10156 if test -z "$whole_archive_flag_spec"; then
10157 func_show_eval '${RM}r "$gentop"'
10158 fi
10159 fi
10160
10161 exit $EXIT_SUCCESS
10162 fi
10163
10164 # Create links to the real library.
10165 for linkname in $linknames; do
10166 if test "$realname" != "$linkname"; then
10167 func_show_eval '(cd "$output_objdir" && $RM "$linkname" && $LN_S "$realname" "$linkname")' 'exit $?'
10168 fi
10169 done
10170
10171 # If -module or -export-dynamic was specified, set the dlname.
10172 if test yes = "$module" || test yes = "$export_dynamic"; then
10173 # On all known operating systems, these are identical.
10174 dlname=$soname
10175 fi
10176 fi
10177 ;;
10178
10179 obj)
10180 if test -n "$dlfiles$dlprefiles" || test no != "$dlself"; then
10181 func_warning "'-dlopen' is ignored for objects"
10182 fi
10183
10184 case " $deplibs" in
10185 *\ -l* | *\ -L*)
10186 func_warning "'-l' and '-L' are ignored for objects" ;;
10187 esac
10188
10189 test -n "$rpath" && \
10190 func_warning "'-rpath' is ignored for objects"
10191
10192 test -n "$xrpath" && \
10193 func_warning "'-R' is ignored for objects"
10194
10195 test -n "$vinfo" && \
10196 func_warning "'-version-info' is ignored for objects"
10197
10198 test -n "$release" && \
10199 func_warning "'-release' is ignored for objects"
10200
10201 case $output in
10202 *.lo)
10203 test -n "$objs$old_deplibs" && \
10204 func_fatal_error "cannot build library object '$output' from non-libtool objects"
10205
10206 libobj=$output
10207 func_lo2o "$libobj"
10208 obj=$func_lo2o_result
10209 ;;
10210 *)
10211 libobj=
10212 obj=$output
10213 ;;
10214 esac
10215
10216 # Delete the old objects.
10217 $opt_dry_run || $RM $obj $libobj
10218
10219 # Objects from convenience libraries. This assumes
10220 # single-version convenience libraries. Whenever we create
10221 # different ones for PIC/non-PIC, this we'll have to duplicate
10222 # the extraction.
10223 reload_conv_objs=
10224 gentop=
10225 # if reload_cmds runs $LD directly, get rid of -Wl from
10226 # whole_archive_flag_spec and hope we can get by with turning comma
10227 # into space.
10228 case $reload_cmds in
10229 *\$LD[\ \$]*) wl= ;;
10230 esac
10231 if test -n "$convenience"; then
10232 if test -n "$whole_archive_flag_spec"; then
10233 eval tmp_whole_archive_flags=\"$whole_archive_flag_spec\"
10234 test -n "$wl" || tmp_whole_archive_flags=`$ECHO "$tmp_whole_archive_flags" | $SED 's|,| |g'`
10235 reload_conv_objs=$reload_objs\ $tmp_whole_archive_flags
10236 else
10237 gentop=$output_objdir/${obj}x
10238 func_append generated " $gentop"
10239
10240 func_extract_archives $gentop $convenience
10241 reload_conv_objs="$reload_objs $func_extract_archives_result"
10242 fi
10243 fi
10244
10245 # If we're not building shared, we need to use non_pic_objs
10246 test yes = "$build_libtool_libs" || libobjs=$non_pic_objects
10247
10248 # Create the old-style object.
10249 reload_objs=$objs$old_deplibs' '`$ECHO "$libobjs" | $SP2NL | $SED "/\.$libext$/d; /\.lib$/d; $lo2o" | $NL2SP`' '$reload_conv_objs
10250
10251 output=$obj
10252 func_execute_cmds "$reload_cmds" 'exit $?'
10253
10254 # Exit if we aren't doing a library object file.
10255 if test -z "$libobj"; then
10256 if test -n "$gentop"; then
10257 func_show_eval '${RM}r "$gentop"'
10258 fi
10259
10260 exit $EXIT_SUCCESS
10261 fi
10262
10263 test yes = "$build_libtool_libs" || {
10264 if test -n "$gentop"; then
10265 func_show_eval '${RM}r "$gentop"'
10266 fi
10267
10268 # Create an invalid libtool object if no PIC, so that we don't
10269 # accidentally link it into a program.
10270 # $show "echo timestamp > $libobj"
10271 # $opt_dry_run || eval "echo timestamp > $libobj" || exit $?
10272 exit $EXIT_SUCCESS
10273 }
10274
10275 if test -n "$pic_flag" || test default != "$pic_mode"; then
10276 # Only do commands if we really have different PIC objects.
10277 reload_objs="$libobjs $reload_conv_objs"
10278 output=$libobj
10279 func_execute_cmds "$reload_cmds" 'exit $?'
10280 fi
10281
10282 if test -n "$gentop"; then
10283 func_show_eval '${RM}r "$gentop"'
10284 fi
10285
10286 exit $EXIT_SUCCESS
10287 ;;
10288
10289 prog)
10290 case $host in
10291 *cygwin*) func_stripname '' '.exe' "$output"
10292 output=$func_stripname_result.exe;;
10293 esac
10294 test -n "$vinfo" && \
10295 func_warning "'-version-info' is ignored for programs"
10296
10297 test -n "$release" && \
10298 func_warning "'-release' is ignored for programs"
10299
10300 $preload \
10301 && test unknown,unknown,unknown = "$dlopen_support,$dlopen_self,$dlopen_self_static" \
10302 && func_warning "'LT_INIT([dlopen])' not used. Assuming no dlopen support."
10303
10304 case $host in
10305 *-*-rhapsody* | *-*-darwin1.[012])
10306 # On Rhapsody replace the C library is the System framework
10307 compile_deplibs=`$ECHO " $compile_deplibs" | $SED 's/ -lc / System.ltframework /'`
10308 finalize_deplibs=`$ECHO " $finalize_deplibs" | $SED 's/ -lc / System.ltframework /'`
10309 ;;
10310 esac
10311
10312 case $host in
10313 *-*-darwin*)
10314 # Don't allow lazy linking, it breaks C++ global constructors
10315 # But is supposedly fixed on 10.4 or later (yay!).
10316 if test CXX = "$tagname"; then
10317 case ${MACOSX_DEPLOYMENT_TARGET-10.0} in
10318 10.[0123])
10319 func_append compile_command " $wl-bind_at_load"
10320 func_append finalize_command " $wl-bind_at_load"
10321 ;;
10322 esac
10323 fi
10324 # Time to change all our "foo.ltframework" stuff back to "-framework foo"
10325 compile_deplibs=`$ECHO " $compile_deplibs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'`
10326 finalize_deplibs=`$ECHO " $finalize_deplibs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'`
10327 ;;
10328 esac
10329
10330
10331 # move library search paths that coincide with paths to not yet
10332 # installed libraries to the beginning of the library search list
10333 new_libs=
10334 for path in $notinst_path; do
10335 case " $new_libs " in
10336 *" -L$path/$objdir "*) ;;
10337 *)
10338 case " $compile_deplibs " in
10339 *" -L$path/$objdir "*)
10340 func_append new_libs " -L$path/$objdir" ;;
10341 esac
10342 ;;
10343 esac
10344 done
10345 for deplib in $compile_deplibs; do
10346 case $deplib in
10347 -L*)
10348 case " $new_libs " in
10349 *" $deplib "*) ;;
10350 *) func_append new_libs " $deplib" ;;
10351 esac
10352 ;;
10353 *) func_append new_libs " $deplib" ;;
10354 esac
10355 done
10356 compile_deplibs=$new_libs
10357
10358
10359 func_append compile_command " $compile_deplibs"
10360 func_append finalize_command " $finalize_deplibs"
10361
10362 if test -n "$rpath$xrpath"; then
10363 # If the user specified any rpath flags, then add them.
10364 for libdir in $rpath $xrpath; do
10365 # This is the magic to use -rpath.
10366 case "$finalize_rpath " in
10367 *" $libdir "*) ;;
10368 *) func_append finalize_rpath " $libdir" ;;
10369 esac
10370 done
10371 fi
10372
10373 # Now hardcode the library paths
10374 rpath=
10375 hardcode_libdirs=
10376 for libdir in $compile_rpath $finalize_rpath; do
10377 if test -n "$hardcode_libdir_flag_spec"; then
10378 if test -n "$hardcode_libdir_separator"; then
10379 if test -z "$hardcode_libdirs"; then
10380 hardcode_libdirs=$libdir
10381 else
10382 # Just accumulate the unique libdirs.
10383 case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in
10384 *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*)
10385 ;;
10386 *)
10387 func_append hardcode_libdirs "$hardcode_libdir_separator$libdir"
10388 ;;
10389 esac
10390 fi
10391 else
10392 eval flag=\"$hardcode_libdir_flag_spec\"
10393 func_append rpath " $flag"
10394 fi
10395 elif test -n "$runpath_var"; then
10396 case "$perm_rpath " in
10397 *" $libdir "*) ;;
10398 *) func_append perm_rpath " $libdir" ;;
10399 esac
10400 fi
10401 case $host in
10402 *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*)
10403 testbindir=`$ECHO "$libdir" | $SED -e 's*/lib$*/bin*'`
10404 case :$dllsearchpath: in
10405 *":$libdir:"*) ;;
10406 ::) dllsearchpath=$libdir;;
10407 *) func_append dllsearchpath ":$libdir";;
10408 esac
10409 case :$dllsearchpath: in
10410 *":$testbindir:"*) ;;
10411 ::) dllsearchpath=$testbindir;;
10412 *) func_append dllsearchpath ":$testbindir";;
10413 esac
10414 ;;
10415 esac
10416 done
10417 # Substitute the hardcoded libdirs into the rpath.
10418 if test -n "$hardcode_libdir_separator" &&
10419 test -n "$hardcode_libdirs"; then
10420 libdir=$hardcode_libdirs
10421 eval rpath=\" $hardcode_libdir_flag_spec\"
10422 fi
10423 compile_rpath=$rpath
10424
10425 rpath=
10426 hardcode_libdirs=
10427 for libdir in $finalize_rpath; do
10428 if test -n "$hardcode_libdir_flag_spec"; then
10429 if test -n "$hardcode_libdir_separator"; then
10430 if test -z "$hardcode_libdirs"; then
10431 hardcode_libdirs=$libdir
10432 else
10433 # Just accumulate the unique libdirs.
10434 case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in
10435 *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*)
10436 ;;
10437 *)
10438 func_append hardcode_libdirs "$hardcode_libdir_separator$libdir"
10439 ;;
10440 esac
10441 fi
10442 else
10443 eval flag=\"$hardcode_libdir_flag_spec\"
10444 func_append rpath " $flag"
10445 fi
10446 elif test -n "$runpath_var"; then
10447 case "$finalize_perm_rpath " in
10448 *" $libdir "*) ;;
10449 *) func_append finalize_perm_rpath " $libdir" ;;
10450 esac
10451 fi
10452 done
10453 # Substitute the hardcoded libdirs into the rpath.
10454 if test -n "$hardcode_libdir_separator" &&
10455 test -n "$hardcode_libdirs"; then
10456 libdir=$hardcode_libdirs
10457 eval rpath=\" $hardcode_libdir_flag_spec\"
10458 fi
10459 finalize_rpath=$rpath
10460
10461 if test -n "$libobjs" && test yes = "$build_old_libs"; then
10462 # Transform all the library objects into standard objects.
10463 compile_command=`$ECHO "$compile_command" | $SP2NL | $SED "$lo2o" | $NL2SP`
10464 finalize_command=`$ECHO "$finalize_command" | $SP2NL | $SED "$lo2o" | $NL2SP`
10465 fi
10466
10467 func_generate_dlsyms "$outputname" "@PROGRAM@" false
10468
10469 # template prelinking step
10470 if test -n "$prelink_cmds"; then
10471 func_execute_cmds "$prelink_cmds" 'exit $?'
10472 fi
10473
10474 wrappers_required=:
10475 case $host in
10476 *cegcc* | *mingw32ce*)
10477 # Disable wrappers for cegcc and mingw32ce hosts, we are cross compiling anyway.
10478 wrappers_required=false
10479 ;;
10480 *cygwin* | *mingw* )
10481 test yes = "$build_libtool_libs" || wrappers_required=false
10482 ;;
10483 *)
10484 if test no = "$need_relink" || test yes != "$build_libtool_libs"; then
10485 wrappers_required=false
10486 fi
10487 ;;
10488 esac
10489 $wrappers_required || {
10490 # Replace the output file specification.
10491 compile_command=`$ECHO "$compile_command" | $SED 's%@OUTPUT@%'"$output"'%g'`
10492 link_command=$compile_command$compile_rpath
10493
10494 # We have no uninstalled library dependencies, so finalize right now.
10495 exit_status=0
10496 func_show_eval "$link_command" 'exit_status=$?'
10497
10498 if test -n "$postlink_cmds"; then
10499 func_to_tool_file "$output"
10500 postlink_cmds=`func_echo_all "$postlink_cmds" | $SED -e 's%@OUTPUT@%'"$output"'%g' -e 's%@TOOL_OUTPUT@%'"$func_to_tool_file_result"'%g'`
10501 func_execute_cmds "$postlink_cmds" 'exit $?'
10502 fi
10503
10504 # Delete the generated files.
10505 if test -f "$output_objdir/${outputname}S.$objext"; then
10506 func_show_eval '$RM "$output_objdir/${outputname}S.$objext"'
10507 fi
10508
10509 exit $exit_status
10510 }
10511
10512 if test -n "$compile_shlibpath$finalize_shlibpath"; then
10513 compile_command="$shlibpath_var=\"$compile_shlibpath$finalize_shlibpath\$$shlibpath_var\" $compile_command"
10514 fi
10515 if test -n "$finalize_shlibpath"; then
10516 finalize_command="$shlibpath_var=\"$finalize_shlibpath\$$shlibpath_var\" $finalize_command"
10517 fi
10518
10519 compile_var=
10520 finalize_var=
10521 if test -n "$runpath_var"; then
10522 if test -n "$perm_rpath"; then
10523 # We should set the runpath_var.
10524 rpath=
10525 for dir in $perm_rpath; do
10526 func_append rpath "$dir:"
10527 done
10528 compile_var="$runpath_var=\"$rpath\$$runpath_var\" "
10529 fi
10530 if test -n "$finalize_perm_rpath"; then
10531 # We should set the runpath_var.
10532 rpath=
10533 for dir in $finalize_perm_rpath; do
10534 func_append rpath "$dir:"
10535 done
10536 finalize_var="$runpath_var=\"$rpath\$$runpath_var\" "
10537 fi
10538 fi
10539
10540 if test yes = "$no_install"; then
10541 # We don't need to create a wrapper script.
10542 link_command=$compile_var$compile_command$compile_rpath
10543 # Replace the output file specification.
10544 link_command=`$ECHO "$link_command" | $SED 's%@OUTPUT@%'"$output"'%g'`
10545 # Delete the old output file.
10546 $opt_dry_run || $RM $output
10547 # Link the executable and exit
10548 func_show_eval "$link_command" 'exit $?'
10549
10550 if test -n "$postlink_cmds"; then
10551 func_to_tool_file "$output"
10552 postlink_cmds=`func_echo_all "$postlink_cmds" | $SED -e 's%@OUTPUT@%'"$output"'%g' -e 's%@TOOL_OUTPUT@%'"$func_to_tool_file_result"'%g'`
10553 func_execute_cmds "$postlink_cmds" 'exit $?'
10554 fi
10555
10556 exit $EXIT_SUCCESS
10557 fi
10558
10559 case $hardcode_action,$fast_install in
10560 relink,*)
10561 # Fast installation is not supported
10562 link_command=$compile_var$compile_command$compile_rpath
10563 relink_command=$finalize_var$finalize_command$finalize_rpath
10564
10565 func_warning "this platform does not like uninstalled shared libraries"
10566 func_warning "'$output' will be relinked during installation"
10567 ;;
10568 *,yes)
10569 link_command=$finalize_var$compile_command$finalize_rpath
10570 relink_command=`$ECHO "$compile_var$compile_command$compile_rpath" | $SED 's%@OUTPUT@%\$progdir/\$file%g'`
10571 ;;
10572 *,no)
10573 link_command=$compile_var$compile_command$compile_rpath
10574 relink_command=$finalize_var$finalize_command$finalize_rpath
10575 ;;
10576 *,needless)
10577 link_command=$finalize_var$compile_command$finalize_rpath
10578 relink_command=
10579 ;;
10580 esac
10581
10582 # Replace the output file specification.
10583 link_command=`$ECHO "$link_command" | $SED 's%@OUTPUT@%'"$output_objdir/$outputname"'%g'`
10584
10585 # Delete the old output files.
10586 $opt_dry_run || $RM $output $output_objdir/$outputname $output_objdir/lt-$outputname
10587
10588 func_show_eval "$link_command" 'exit $?'
10589
10590 if test -n "$postlink_cmds"; then
10591 func_to_tool_file "$output_objdir/$outputname"
10592 postlink_cmds=`func_echo_all "$postlink_cmds" | $SED -e 's%@OUTPUT@%'"$output_objdir/$outputname"'%g' -e 's%@TOOL_OUTPUT@%'"$func_to_tool_file_result"'%g'`
10593 func_execute_cmds "$postlink_cmds" 'exit $?'
10594 fi
10595
10596 # Now create the wrapper script.
10597 func_verbose "creating $output"
10598
10599 # Quote the relink command for shipping.
10600 if test -n "$relink_command"; then
10601 # Preserve any variables that may affect compiler behavior
10602 for var in $variables_saved_for_relink; do
10603 if eval test -z \"\${$var+set}\"; then
10604 relink_command="{ test -z \"\${$var+set}\" || $lt_unset $var || { $var=; export $var; }; }; $relink_command"
10605 elif eval var_value=\$$var; test -z "$var_value"; then
10606 relink_command="$var=; export $var; $relink_command"
10607 else
10608 func_quote_for_eval "$var_value"
10609 relink_command="$var=$func_quote_for_eval_result; export $var; $relink_command"
10610 fi
10611 done
10612 relink_command="(cd `pwd`; $relink_command)"
10613 relink_command=`$ECHO "$relink_command" | $SED "$sed_quote_subst"`
10614 fi
10615
10616 # Only actually do things if not in dry run mode.
10617 $opt_dry_run || {
10618 # win32 will think the script is a binary if it has
10619 # a .exe suffix, so we strip it off here.
10620 case $output in
10621 *.exe) func_stripname '' '.exe' "$output"
10622 output=$func_stripname_result ;;
10623 esac
10624 # test for cygwin because mv fails w/o .exe extensions
10625 case $host in
10626 *cygwin*)
10627 exeext=.exe
10628 func_stripname '' '.exe' "$outputname"
10629 outputname=$func_stripname_result ;;
10630 *) exeext= ;;
10631 esac
10632 case $host in
10633 *cygwin* | *mingw* )
10634 func_dirname_and_basename "$output" "" "."
10635 output_name=$func_basename_result
10636 output_path=$func_dirname_result
10637 cwrappersource=$output_path/$objdir/lt-$output_name.c
10638 cwrapper=$output_path/$output_name.exe
10639 $RM $cwrappersource $cwrapper
10640 trap "$RM $cwrappersource $cwrapper; exit $EXIT_FAILURE" 1 2 15
10641
10642 func_emit_cwrapperexe_src > $cwrappersource
10643
10644 # The wrapper executable is built using the $host compiler,
10645 # because it contains $host paths and files. If cross-
10646 # compiling, it, like the target executable, must be
10647 # executed on the $host or under an emulation environment.
10648 $opt_dry_run || {
10649 $LTCC $LTCFLAGS -o $cwrapper $cwrappersource
10650 $STRIP $cwrapper
10651 }
10652
10653 # Now, create the wrapper script for func_source use:
10654 func_ltwrapper_scriptname $cwrapper
10655 $RM $func_ltwrapper_scriptname_result
10656 trap "$RM $func_ltwrapper_scriptname_result; exit $EXIT_FAILURE" 1 2 15
10657 $opt_dry_run || {
10658 # note: this script will not be executed, so do not chmod.
10659 if test "x$build" = "x$host"; then
10660 $cwrapper --lt-dump-script > $func_ltwrapper_scriptname_result
10661 else
10662 func_emit_wrapper no > $func_ltwrapper_scriptname_result
10663 fi
10664 }
10665 ;;
10666 * )
10667 $RM $output
10668 trap "$RM $output; exit $EXIT_FAILURE" 1 2 15
10669
10670 func_emit_wrapper no > $output
10671 chmod +x $output
10672 ;;
10673 esac
10674 }
10675 exit $EXIT_SUCCESS
10676 ;;
10677 esac
10678
10679 # See if we need to build an old-fashioned archive.
10680 for oldlib in $oldlibs; do
10681
10682 case $build_libtool_libs in
10683 convenience)
10684 oldobjs="$libobjs_save $symfileobj"
10685 addlibs=$convenience
10686 build_libtool_libs=no
10687 ;;
10688 module)
10689 oldobjs=$libobjs_save
10690 addlibs=$old_convenience
10691 build_libtool_libs=no
10692 ;;
10693 *)
10694 oldobjs="$old_deplibs $non_pic_objects"
10695 $preload && test -f "$symfileobj" \
10696 && func_append oldobjs " $symfileobj"
10697 addlibs=$old_convenience
10698 ;;
10699 esac
10700
10701 if test -n "$addlibs"; then
10702 gentop=$output_objdir/${outputname}x
10703 func_append generated " $gentop"
10704
10705 func_extract_archives $gentop $addlibs
10706 func_append oldobjs " $func_extract_archives_result"
10707 fi
10708
10709 # Do each command in the archive commands.
10710 if test -n "$old_archive_from_new_cmds" && test yes = "$build_libtool_libs"; then
10711 cmds=$old_archive_from_new_cmds
10712 else
10713
10714 # Add any objects from preloaded convenience libraries
10715 if test -n "$dlprefiles"; then
10716 gentop=$output_objdir/${outputname}x
10717 func_append generated " $gentop"
10718
10719 func_extract_archives $gentop $dlprefiles
10720 func_append oldobjs " $func_extract_archives_result"
10721 fi
10722
10723 # POSIX demands no paths to be encoded in archives. We have
10724 # to avoid creating archives with duplicate basenames if we
10725 # might have to extract them afterwards, e.g., when creating a
10726 # static archive out of a convenience library, or when linking
10727 # the entirety of a libtool archive into another (currently
10728 # not supported by libtool).
10729 if (for obj in $oldobjs
10730 do
10731 func_basename "$obj"
10732 $ECHO "$func_basename_result"
10733 done | sort | sort -uc >/dev/null 2>&1); then
10734 :
10735 else
10736 echo "copying selected object files to avoid basename conflicts..."
10737 gentop=$output_objdir/${outputname}x
10738 func_append generated " $gentop"
10739 func_mkdir_p "$gentop"
10740 save_oldobjs=$oldobjs
10741 oldobjs=
10742 counter=1
10743 for obj in $save_oldobjs
10744 do
10745 func_basename "$obj"
10746 objbase=$func_basename_result
10747 case " $oldobjs " in
10748 " ") oldobjs=$obj ;;
10749 *[\ /]"$objbase "*)
10750 while :; do
10751 # Make sure we don't pick an alternate name that also
10752 # overlaps.
10753 newobj=lt$counter-$objbase
10754 func_arith $counter + 1
10755 counter=$func_arith_result
10756 case " $oldobjs " in
10757 *[\ /]"$newobj "*) ;;
10758 *) if test ! -f "$gentop/$newobj"; then break; fi ;;
10759 esac
10760 done
10761 func_show_eval "ln $obj $gentop/$newobj || cp $obj $gentop/$newobj"
10762 func_append oldobjs " $gentop/$newobj"
10763 ;;
10764 *) func_append oldobjs " $obj" ;;
10765 esac
10766 done
10767 fi
10768 func_to_tool_file "$oldlib" func_convert_file_msys_to_w32
10769 tool_oldlib=$func_to_tool_file_result
10770 eval cmds=\"$old_archive_cmds\"
10771
10772 func_len " $cmds"
10773 len=$func_len_result
10774 if test "$len" -lt "$max_cmd_len" || test "$max_cmd_len" -le -1; then
10775 cmds=$old_archive_cmds
10776 elif test -n "$archiver_list_spec"; then
10777 func_verbose "using command file archive linking..."
10778 for obj in $oldobjs
10779 do
10780 func_to_tool_file "$obj"
10781 $ECHO "$func_to_tool_file_result"
10782 done > $output_objdir/$libname.libcmd
10783 func_to_tool_file "$output_objdir/$libname.libcmd"
10784 oldobjs=" $archiver_list_spec$func_to_tool_file_result"
10785 cmds=$old_archive_cmds
10786 else
10787 # the command line is too long to link in one step, link in parts
10788 func_verbose "using piecewise archive linking..."
10789 save_RANLIB=$RANLIB
10790 RANLIB=:
10791 objlist=
10792 concat_cmds=
10793 save_oldobjs=$oldobjs
10794 oldobjs=
10795 # Is there a better way of finding the last object in the list?
10796 for obj in $save_oldobjs
10797 do
10798 last_oldobj=$obj
10799 done
10800 eval test_cmds=\"$old_archive_cmds\"
10801 func_len " $test_cmds"
10802 len0=$func_len_result
10803 len=$len0
10804 for obj in $save_oldobjs
10805 do
10806 func_len " $obj"
10807 func_arith $len + $func_len_result
10808 len=$func_arith_result
10809 func_append objlist " $obj"
10810 if test "$len" -lt "$max_cmd_len"; then
10811 :
10812 else
10813 # the above command should be used before it gets too long
10814 oldobjs=$objlist
10815 if test "$obj" = "$last_oldobj"; then
10816 RANLIB=$save_RANLIB
10817 fi
10818 test -z "$concat_cmds" || concat_cmds=$concat_cmds~
10819 eval concat_cmds=\"\$concat_cmds$old_archive_cmds\"
10820 objlist=
10821 len=$len0
10822 fi
10823 done
10824 RANLIB=$save_RANLIB
10825 oldobjs=$objlist
10826 if test -z "$oldobjs"; then
10827 eval cmds=\"\$concat_cmds\"
10828 else
10829 eval cmds=\"\$concat_cmds~\$old_archive_cmds\"
10830 fi
10831 fi
10832 fi
10833 func_execute_cmds "$cmds" 'exit $?'
10834 done
10835
10836 test -n "$generated" && \
10837 func_show_eval "${RM}r$generated"
10838
10839 # Now create the libtool archive.
10840 case $output in
10841 *.la)
10842 old_library=
10843 test yes = "$build_old_libs" && old_library=$libname.$libext
10844 func_verbose "creating $output"
10845
10846 # Preserve any variables that may affect compiler behavior
10847 for var in $variables_saved_for_relink; do
10848 if eval test -z \"\${$var+set}\"; then
10849 relink_command="{ test -z \"\${$var+set}\" || $lt_unset $var || { $var=; export $var; }; }; $relink_command"
10850 elif eval var_value=\$$var; test -z "$var_value"; then
10851 relink_command="$var=; export $var; $relink_command"
10852 else
10853 func_quote_for_eval "$var_value"
10854 relink_command="$var=$func_quote_for_eval_result; export $var; $relink_command"
10855 fi
10856 done
10857 # Quote the link command for shipping.
10858 relink_command="(cd `pwd`; $SHELL \"$progpath\" $preserve_args --mode=relink $libtool_args @inst_prefix_dir@)"
10859 relink_command=`$ECHO "$relink_command" | $SED "$sed_quote_subst"`
10860 if test yes = "$hardcode_automatic"; then
10861 relink_command=
10862 fi
10863
10864 # Only create the output if not a dry run.
10865 $opt_dry_run || {
10866 for installed in no yes; do
10867 if test yes = "$installed"; then
10868 if test -z "$install_libdir"; then
10869 break
10870 fi
10871 output=$output_objdir/${outputname}i
10872 # Replace all uninstalled libtool libraries with the installed ones
10873 newdependency_libs=
10874 for deplib in $dependency_libs; do
10875 case $deplib in
10876 *.la)
10877 func_basename "$deplib"
10878 name=$func_basename_result
10879 func_resolve_sysroot "$deplib"
10880 eval libdir=`$SED -n -e 's/^libdir=\(.*\)$/\1/p' $func_resolve_sysroot_result`
10881 test -z "$libdir" && \
10882 func_fatal_error "'$deplib' is not a valid libtool archive"
10883 func_append newdependency_libs " ${lt_sysroot:+=}$libdir/$name"
10884 ;;
10885 -L*)
10886 func_stripname -L '' "$deplib"
10887 func_replace_sysroot "$func_stripname_result"
10888 func_append newdependency_libs " -L$func_replace_sysroot_result"
10889 ;;
10890 -R*)
10891 func_stripname -R '' "$deplib"
10892 func_replace_sysroot "$func_stripname_result"
10893 func_append newdependency_libs " -R$func_replace_sysroot_result"
10894 ;;
10895 *) func_append newdependency_libs " $deplib" ;;
10896 esac
10897 done
10898 dependency_libs=$newdependency_libs
10899 newdlfiles=
10900
10901 for lib in $dlfiles; do
10902 case $lib in
10903 *.la)
10904 func_basename "$lib"
10905 name=$func_basename_result
10906 eval libdir=`$SED -n -e 's/^libdir=\(.*\)$/\1/p' $lib`
10907 test -z "$libdir" && \
10908 func_fatal_error "'$lib' is not a valid libtool archive"
10909 func_append newdlfiles " ${lt_sysroot:+=}$libdir/$name"
10910 ;;
10911 *) func_append newdlfiles " $lib" ;;
10912 esac
10913 done
10914 dlfiles=$newdlfiles
10915 newdlprefiles=
10916 for lib in $dlprefiles; do
10917 case $lib in
10918 *.la)
10919 # Only pass preopened files to the pseudo-archive (for
10920 # eventual linking with the app. that links it) if we
10921 # didn't already link the preopened objects directly into
10922 # the library:
10923 func_basename "$lib"
10924 name=$func_basename_result
10925 eval libdir=`$SED -n -e 's/^libdir=\(.*\)$/\1/p' $lib`
10926 test -z "$libdir" && \
10927 func_fatal_error "'$lib' is not a valid libtool archive"
10928 func_append newdlprefiles " ${lt_sysroot:+=}$libdir/$name"
10929 ;;
10930 esac
10931 done
10932 dlprefiles=$newdlprefiles
10933 else
10934 newdlfiles=
10935 for lib in $dlfiles; do
10936 case $lib in
10937 [\\/]* | [A-Za-z]:[\\/]*) abs=$lib ;;
10938 *) abs=`pwd`"/$lib" ;;
10939 esac
10940 func_append newdlfiles " $abs"
10941 done
10942 dlfiles=$newdlfiles
10943 newdlprefiles=
10944 for lib in $dlprefiles; do
10945 case $lib in
10946 [\\/]* | [A-Za-z]:[\\/]*) abs=$lib ;;
10947 *) abs=`pwd`"/$lib" ;;
10948 esac
10949 func_append newdlprefiles " $abs"
10950 done
10951 dlprefiles=$newdlprefiles
10952 fi
10953 $RM $output
10954 # place dlname in correct position for cygwin
10955 # In fact, it would be nice if we could use this code for all target
10956 # systems that can't hard-code library paths into their executables
10957 # and that have no shared library path variable independent of PATH,
10958 # but it turns out we can't easily determine that from inspecting
10959 # libtool variables, so we have to hard-code the OSs to which it
10960 # applies here; at the moment, that means platforms that use the PE
10961 # object format with DLL files. See the long comment at the top of
10962 # tests/bindir.at for full details.
10963 tdlname=$dlname
10964 case $host,$output,$installed,$module,$dlname in
10965 *cygwin*,*lai,yes,no,*.dll | *mingw*,*lai,yes,no,*.dll | *cegcc*,*lai,yes,no,*.dll)
10966 # If a -bindir argument was supplied, place the dll there.
10967 if test -n "$bindir"; then
10968 func_relative_path "$install_libdir" "$bindir"
10969 tdlname=$func_relative_path_result/$dlname
10970 else
10971 # Otherwise fall back on heuristic.
10972 tdlname=../bin/$dlname
10973 fi
10974 ;;
10975 esac
10976 $ECHO > $output "\
10977 # $outputname - a libtool library file
10978 # Generated by $PROGRAM (GNU $PACKAGE) $VERSION
10979 #
10980 # Please DO NOT delete this file!
10981 # It is necessary for linking the library.
10982
10983 # The name that we can dlopen(3).
10984 dlname='$tdlname'
10985
10986 # Names of this library.
10987 library_names='$library_names'
10988
10989 # The name of the static archive.
10990 old_library='$old_library'
10991
10992 # Linker flags that cannot go in dependency_libs.
10993 inherited_linker_flags='$new_inherited_linker_flags'
10994
10995 # Libraries that this one depends upon.
10996 dependency_libs='$dependency_libs'
10997
10998 # Names of additional weak libraries provided by this library
10999 weak_library_names='$weak_libs'
11000
11001 # Version information for $libname.
11002 current=$current
11003 age=$age
11004 revision=$revision
11005
11006 # Is this an already installed library?
11007 installed=$installed
11008
11009 # Should we warn about portability when linking against -modules?
11010 shouldnotlink=$module
11011
11012 # Files to dlopen/dlpreopen
11013 dlopen='$dlfiles'
11014 dlpreopen='$dlprefiles'
11015
11016 # Directory that this library needs to be installed in:
11017 libdir='$install_libdir'"
11018 if test no,yes = "$installed,$need_relink"; then
11019 $ECHO >> $output "\
11020 relink_command=\"$relink_command\""
11021 fi
11022 done
11023 }
11024
11025 # Do a symbolic link so that the libtool archive can be found in
11026 # LD_LIBRARY_PATH before the program is installed.
11027 func_show_eval '( cd "$output_objdir" && $RM "$outputname" && $LN_S "../$outputname" "$outputname" )' 'exit $?'
11028 ;;
11029 esac
11030 exit $EXIT_SUCCESS
11031 }
11032
11033 if test link = "$opt_mode" || test relink = "$opt_mode"; then
11034 func_mode_link ${1+"$@"}
11035 fi
11036
11037
11038 # func_mode_uninstall arg...
11039 func_mode_uninstall ()
11040 {
11041 $debug_cmd
11042
11043 RM=$nonopt
11044 files=
11045 rmforce=false
11046 exit_status=0
11047
11048 # This variable tells wrapper scripts just to set variables rather
11049 # than running their programs.
11050 libtool_install_magic=$magic
11051
11052 for arg
11053 do
11054 case $arg in
11055 -f) func_append RM " $arg"; rmforce=: ;;
11056 -*) func_append RM " $arg" ;;
11057 *) func_append files " $arg" ;;
11058 esac
11059 done
11060
11061 test -z "$RM" && \
11062 func_fatal_help "you must specify an RM program"
11063
11064 rmdirs=
11065
11066 for file in $files; do
11067 func_dirname "$file" "" "."
11068 dir=$func_dirname_result
11069 if test . = "$dir"; then
11070 odir=$objdir
11071 else
11072 odir=$dir/$objdir
11073 fi
11074 func_basename "$file"
11075 name=$func_basename_result
11076 test uninstall = "$opt_mode" && odir=$dir
11077
11078 # Remember odir for removal later, being careful to avoid duplicates
11079 if test clean = "$opt_mode"; then
11080 case " $rmdirs " in
11081 *" $odir "*) ;;
11082 *) func_append rmdirs " $odir" ;;
11083 esac
11084 fi
11085
11086 # Don't error if the file doesn't exist and rm -f was used.
11087 if { test -L "$file"; } >/dev/null 2>&1 ||
11088 { test -h "$file"; } >/dev/null 2>&1 ||
11089 test -f "$file"; then
11090 :
11091 elif test -d "$file"; then
11092 exit_status=1
11093 continue
11094 elif $rmforce; then
11095 continue
11096 fi
11097
11098 rmfiles=$file
11099
11100 case $name in
11101 *.la)
11102 # Possibly a libtool archive, so verify it.
11103 if func_lalib_p "$file"; then
11104 func_source $dir/$name
11105
11106 # Delete the libtool libraries and symlinks.
11107 for n in $library_names; do
11108 func_append rmfiles " $odir/$n"
11109 done
11110 test -n "$old_library" && func_append rmfiles " $odir/$old_library"
11111
11112 case $opt_mode in
11113 clean)
11114 case " $library_names " in
11115 *" $dlname "*) ;;
11116 *) test -n "$dlname" && func_append rmfiles " $odir/$dlname" ;;
11117 esac
11118 test -n "$libdir" && func_append rmfiles " $odir/$name $odir/${name}i"
11119 ;;
11120 uninstall)
11121 if test -n "$library_names"; then
11122 # Do each command in the postuninstall commands.
11123 func_execute_cmds "$postuninstall_cmds" '$rmforce || exit_status=1'
11124 fi
11125
11126 if test -n "$old_library"; then
11127 # Do each command in the old_postuninstall commands.
11128 func_execute_cmds "$old_postuninstall_cmds" '$rmforce || exit_status=1'
11129 fi
11130 # FIXME: should reinstall the best remaining shared library.
11131 ;;
11132 esac
11133 fi
11134 ;;
11135
11136 *.lo)
11137 # Possibly a libtool object, so verify it.
11138 if func_lalib_p "$file"; then
11139
11140 # Read the .lo file
11141 func_source $dir/$name
11142
11143 # Add PIC object to the list of files to remove.
11144 if test -n "$pic_object" && test none != "$pic_object"; then
11145 func_append rmfiles " $dir/$pic_object"
11146 fi
11147
11148 # Add non-PIC object to the list of files to remove.
11149 if test -n "$non_pic_object" && test none != "$non_pic_object"; then
11150 func_append rmfiles " $dir/$non_pic_object"
11151 fi
11152 fi
11153 ;;
11154
11155 *)
11156 if test clean = "$opt_mode"; then
11157 noexename=$name
11158 case $file in
11159 *.exe)
11160 func_stripname '' '.exe' "$file"
11161 file=$func_stripname_result
11162 func_stripname '' '.exe' "$name"
11163 noexename=$func_stripname_result
11164 # $file with .exe has already been added to rmfiles,
11165 # add $file without .exe
11166 func_append rmfiles " $file"
11167 ;;
11168 esac
11169 # Do a test to see if this is a libtool program.
11170 if func_ltwrapper_p "$file"; then
11171 if func_ltwrapper_executable_p "$file"; then
11172 func_ltwrapper_scriptname "$file"
11173 relink_command=
11174 func_source $func_ltwrapper_scriptname_result
11175 func_append rmfiles " $func_ltwrapper_scriptname_result"
11176 else
11177 relink_command=
11178 func_source $dir/$noexename
11179 fi
11180
11181 # note $name still contains .exe if it was in $file originally
11182 # as does the version of $file that was added into $rmfiles
11183 func_append rmfiles " $odir/$name $odir/${name}S.$objext"
11184 if test yes = "$fast_install" && test -n "$relink_command"; then
11185 func_append rmfiles " $odir/lt-$name"
11186 fi
11187 if test "X$noexename" != "X$name"; then
11188 func_append rmfiles " $odir/lt-$noexename.c"
11189 fi
11190 fi
11191 fi
11192 ;;
11193 esac
11194 func_show_eval "$RM $rmfiles" 'exit_status=1'
11195 done
11196
11197 # Try to remove the $objdir's in the directories where we deleted files
11198 for dir in $rmdirs; do
11199 if test -d "$dir"; then
11200 func_show_eval "rmdir $dir >/dev/null 2>&1"
11201 fi
11202 done
11203
11204 exit $exit_status
11205 }
11206
11207 if test uninstall = "$opt_mode" || test clean = "$opt_mode"; then
11208 func_mode_uninstall ${1+"$@"}
11209 fi
11210
11211 test -z "$opt_mode" && {
11212 help=$generic_help
11213 func_fatal_help "you must specify a MODE"
11214 }
11215
11216 test -z "$exec_cmd" && \
11217 func_fatal_help "invalid operation mode '$opt_mode'"
11218
11219 if test -n "$exec_cmd"; then
11220 eval exec "$exec_cmd"
11221 exit $EXIT_FAILURE
11222 fi
11223
11224 exit $exit_status
11225
11226
11227 # The TAGs below are defined such that we never get into a situation
11228 # where we disable both kinds of libraries. Given conflicting
11229 # choices, we go for a static library, that is the most portable,
11230 # since we can't tell whether shared libraries were disabled because
11231 # the user asked for that or because the platform doesn't support
11232 # them. This is particularly important on AIX, because we don't
11233 # support having both static and shared libraries enabled at the same
11234 # time on that platform, so we default to a shared-only configuration.
11235 # If a disable-shared tag is given, we'll fallback to a static-only
11236 # configuration. But we'll never go from static-only to shared-only.
11237
11238 # ### BEGIN LIBTOOL TAG CONFIG: disable-shared
11239 build_libtool_libs=no
11240 build_old_libs=yes
11241 # ### END LIBTOOL TAG CONFIG: disable-shared
11242
11243 # ### BEGIN LIBTOOL TAG CONFIG: disable-static
11244 build_old_libs=`case $build_libtool_libs in yes) echo no;; *) echo yes;; esac`
11245 # ### END LIBTOOL TAG CONFIG: disable-static
11246
11247 # Local Variables:
11248 # mode:shell-script
11249 # sh-indentation:2
11250 # End:
0 #! /bin/sh
1 # Common wrapper for a few potentially missing GNU programs.
2
3 scriptversion=2018-03-07.03; # UTC
4
5 # Copyright (C) 1996-2020 Free Software Foundation, Inc.
6 # Originally written by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
7
8 # This program is free software; you can redistribute it and/or modify
9 # it under the terms of the GNU General Public License as published by
10 # the Free Software Foundation; either version 2, or (at your option)
11 # any later version.
12
13 # This program is distributed in the hope that it will be useful,
14 # but WITHOUT ANY WARRANTY; without even the implied warranty of
15 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 # GNU General Public License for more details.
17
18 # You should have received a copy of the GNU General Public License
19 # along with this program. If not, see <https://www.gnu.org/licenses/>.
20
21 # As a special exception to the GNU General Public License, if you
22 # distribute this file as part of a program that contains a
23 # configuration script generated by Autoconf, you may include it under
24 # the same distribution terms that you use for the rest of that program.
25
26 if test $# -eq 0; then
27 echo 1>&2 "Try '$0 --help' for more information"
28 exit 1
29 fi
30
31 case $1 in
32
33 --is-lightweight)
34 # Used by our autoconf macros to check whether the available missing
35 # script is modern enough.
36 exit 0
37 ;;
38
39 --run)
40 # Back-compat with the calling convention used by older automake.
41 shift
42 ;;
43
44 -h|--h|--he|--hel|--help)
45 echo "\
46 $0 [OPTION]... PROGRAM [ARGUMENT]...
47
48 Run 'PROGRAM [ARGUMENT]...', returning a proper advice when this fails due
49 to PROGRAM being missing or too old.
50
51 Options:
52 -h, --help display this help and exit
53 -v, --version output version information and exit
54
55 Supported PROGRAM values:
56 aclocal autoconf autoheader autom4te automake makeinfo
57 bison yacc flex lex help2man
58
59 Version suffixes to PROGRAM as well as the prefixes 'gnu-', 'gnu', and
60 'g' are ignored when checking the name.
61
62 Send bug reports to <bug-automake@gnu.org>."
63 exit $?
64 ;;
65
66 -v|--v|--ve|--ver|--vers|--versi|--versio|--version)
67 echo "missing $scriptversion (GNU Automake)"
68 exit $?
69 ;;
70
71 -*)
72 echo 1>&2 "$0: unknown '$1' option"
73 echo 1>&2 "Try '$0 --help' for more information"
74 exit 1
75 ;;
76
77 esac
78
79 # Run the given program, remember its exit status.
80 "$@"; st=$?
81
82 # If it succeeded, we are done.
83 test $st -eq 0 && exit 0
84
85 # Also exit now if we it failed (or wasn't found), and '--version' was
86 # passed; such an option is passed most likely to detect whether the
87 # program is present and works.
88 case $2 in --version|--help) exit $st;; esac
89
90 # Exit code 63 means version mismatch. This often happens when the user
91 # tries to use an ancient version of a tool on a file that requires a
92 # minimum version.
93 if test $st -eq 63; then
94 msg="probably too old"
95 elif test $st -eq 127; then
96 # Program was missing.
97 msg="missing on your system"
98 else
99 # Program was found and executed, but failed. Give up.
100 exit $st
101 fi
102
103 perl_URL=https://www.perl.org/
104 flex_URL=https://github.com/westes/flex
105 gnu_software_URL=https://www.gnu.org/software
106
107 program_details ()
108 {
109 case $1 in
110 aclocal|automake)
111 echo "The '$1' program is part of the GNU Automake package:"
112 echo "<$gnu_software_URL/automake>"
113 echo "It also requires GNU Autoconf, GNU m4 and Perl in order to run:"
114 echo "<$gnu_software_URL/autoconf>"
115 echo "<$gnu_software_URL/m4/>"
116 echo "<$perl_URL>"
117 ;;
118 autoconf|autom4te|autoheader)
119 echo "The '$1' program is part of the GNU Autoconf package:"
120 echo "<$gnu_software_URL/autoconf/>"
121 echo "It also requires GNU m4 and Perl in order to run:"
122 echo "<$gnu_software_URL/m4/>"
123 echo "<$perl_URL>"
124 ;;
125 esac
126 }
127
128 give_advice ()
129 {
130 # Normalize program name to check for.
131 normalized_program=`echo "$1" | sed '
132 s/^gnu-//; t
133 s/^gnu//; t
134 s/^g//; t'`
135
136 printf '%s\n' "'$1' is $msg."
137
138 configure_deps="'configure.ac' or m4 files included by 'configure.ac'"
139 case $normalized_program in
140 autoconf*)
141 echo "You should only need it if you modified 'configure.ac',"
142 echo "or m4 files included by it."
143 program_details 'autoconf'
144 ;;
145 autoheader*)
146 echo "You should only need it if you modified 'acconfig.h' or"
147 echo "$configure_deps."
148 program_details 'autoheader'
149 ;;
150 automake*)
151 echo "You should only need it if you modified 'Makefile.am' or"
152 echo "$configure_deps."
153 program_details 'automake'
154 ;;
155 aclocal*)
156 echo "You should only need it if you modified 'acinclude.m4' or"
157 echo "$configure_deps."
158 program_details 'aclocal'
159 ;;
160 autom4te*)
161 echo "You might have modified some maintainer files that require"
162 echo "the 'autom4te' program to be rebuilt."
163 program_details 'autom4te'
164 ;;
165 bison*|yacc*)
166 echo "You should only need it if you modified a '.y' file."
167 echo "You may want to install the GNU Bison package:"
168 echo "<$gnu_software_URL/bison/>"
169 ;;
170 lex*|flex*)
171 echo "You should only need it if you modified a '.l' file."
172 echo "You may want to install the Fast Lexical Analyzer package:"
173 echo "<$flex_URL>"
174 ;;
175 help2man*)
176 echo "You should only need it if you modified a dependency" \
177 "of a man page."
178 echo "You may want to install the GNU Help2man package:"
179 echo "<$gnu_software_URL/help2man/>"
180 ;;
181 makeinfo*)
182 echo "You should only need it if you modified a '.texi' file, or"
183 echo "any other file indirectly affecting the aspect of the manual."
184 echo "You might want to install the Texinfo package:"
185 echo "<$gnu_software_URL/texinfo/>"
186 echo "The spurious makeinfo call might also be the consequence of"
187 echo "using a buggy 'make' (AIX, DU, IRIX), in which case you might"
188 echo "want to install GNU make:"
189 echo "<$gnu_software_URL/make/>"
190 ;;
191 *)
192 echo "You might have modified some files without having the proper"
193 echo "tools for further handling them. Check the 'README' file, it"
194 echo "often tells you about the needed prerequisites for installing"
195 echo "this package. You may also peek at any GNU archive site, in"
196 echo "case some other package contains this missing '$1' program."
197 ;;
198 esac
199 }
200
201 give_advice "$1" | sed -e '1s/^/WARNING: /' \
202 -e '2,$s/^/ /' >&2
203
204 # Propagate the correct exit status (expected to be 127 for a program
205 # not found, 63 for a program that failed due to version mismatch).
206 exit $st
207
208 # Local variables:
209 # eval: (add-hook 'before-save-hook 'time-stamp)
210 # time-stamp-start: "scriptversion="
211 # time-stamp-format: "%:y-%02m-%02d.%02H"
212 # time-stamp-time-zone: "UTC0"
213 # time-stamp-end: "; # UTC"
214 # End:
0 # Makefile.in generated by automake 1.16.2 from Makefile.am.
1 # @configure_input@
2
3 # Copyright (C) 1994-2020 Free Software Foundation, Inc.
4
5 # This Makefile.in is free software; the Free Software Foundation
6 # gives unlimited permission to copy and/or distribute it,
7 # with or without modifications, as long as this notice is preserved.
8
9 # This program is distributed in the hope that it will be useful,
10 # but WITHOUT ANY WARRANTY, to the extent permitted by law; without
11 # even the implied warranty of MERCHANTABILITY or FITNESS FOR A
12 # PARTICULAR PURPOSE.
13
14 @SET_MAKE@
15 VPATH = @srcdir@
16 am__is_gnu_make = { \
17 if test -z '$(MAKELEVEL)'; then \
18 false; \
19 elif test -n '$(MAKE_HOST)'; then \
20 true; \
21 elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
22 true; \
23 else \
24 false; \
25 fi; \
26 }
27 am__make_running_with_option = \
28 case $${target_option-} in \
29 ?) ;; \
30 *) echo "am__make_running_with_option: internal error: invalid" \
31 "target option '$${target_option-}' specified" >&2; \
32 exit 1;; \
33 esac; \
34 has_opt=no; \
35 sane_makeflags=$$MAKEFLAGS; \
36 if $(am__is_gnu_make); then \
37 sane_makeflags=$$MFLAGS; \
38 else \
39 case $$MAKEFLAGS in \
40 *\\[\ \ ]*) \
41 bs=\\; \
42 sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
43 | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
44 esac; \
45 fi; \
46 skip_next=no; \
47 strip_trailopt () \
48 { \
49 flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
50 }; \
51 for flg in $$sane_makeflags; do \
52 test $$skip_next = yes && { skip_next=no; continue; }; \
53 case $$flg in \
54 *=*|--*) continue;; \
55 -*I) strip_trailopt 'I'; skip_next=yes;; \
56 -*I?*) strip_trailopt 'I';; \
57 -*O) strip_trailopt 'O'; skip_next=yes;; \
58 -*O?*) strip_trailopt 'O';; \
59 -*l) strip_trailopt 'l'; skip_next=yes;; \
60 -*l?*) strip_trailopt 'l';; \
61 -[dEDm]) skip_next=yes;; \
62 -[JT]) skip_next=yes;; \
63 esac; \
64 case $$flg in \
65 *$$target_option*) has_opt=yes; break;; \
66 esac; \
67 done; \
68 test $$has_opt = yes
69 am__make_dryrun = (target_option=n; $(am__make_running_with_option))
70 am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
71 pkgdatadir = $(datadir)/@PACKAGE@
72 pkgincludedir = $(includedir)/@PACKAGE@
73 pkglibdir = $(libdir)/@PACKAGE@
74 pkglibexecdir = $(libexecdir)/@PACKAGE@
75 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
76 install_sh_DATA = $(install_sh) -c -m 644
77 install_sh_PROGRAM = $(install_sh) -c
78 install_sh_SCRIPT = $(install_sh) -c
79 INSTALL_HEADER = $(INSTALL_DATA)
80 transform = $(program_transform_name)
81 NORMAL_INSTALL = :
82 PRE_INSTALL = :
83 POST_INSTALL = :
84 NORMAL_UNINSTALL = :
85 PRE_UNINSTALL = :
86 POST_UNINSTALL = :
87 build_triplet = @build@
88 host_triplet = @host@
89 subdir = plugins
90 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
91 am__aclocal_m4_deps = $(top_srcdir)/configure.ac
92 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
93 $(ACLOCAL_M4)
94 DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
95 mkinstalldirs = $(install_sh) -d
96 CONFIG_HEADER = $(top_builddir)/config.h
97 CONFIG_CLEAN_FILES =
98 CONFIG_CLEAN_VPATH_FILES =
99 AM_V_P = $(am__v_P_@AM_V@)
100 am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
101 am__v_P_0 = false
102 am__v_P_1 = :
103 AM_V_GEN = $(am__v_GEN_@AM_V@)
104 am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
105 am__v_GEN_0 = @echo " GEN " $@;
106 am__v_GEN_1 =
107 AM_V_at = $(am__v_at_@AM_V@)
108 am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
109 am__v_at_0 = @
110 am__v_at_1 =
111 SOURCES =
112 DIST_SOURCES =
113 RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \
114 ctags-recursive dvi-recursive html-recursive info-recursive \
115 install-data-recursive install-dvi-recursive \
116 install-exec-recursive install-html-recursive \
117 install-info-recursive install-pdf-recursive \
118 install-ps-recursive install-recursive installcheck-recursive \
119 installdirs-recursive pdf-recursive ps-recursive \
120 tags-recursive uninstall-recursive
121 am__can_run_installinfo = \
122 case $$AM_UPDATE_INFO_DIR in \
123 n|no|NO) false;; \
124 *) (install-info --version) >/dev/null 2>&1;; \
125 esac
126 RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \
127 distclean-recursive maintainer-clean-recursive
128 am__recursive_targets = \
129 $(RECURSIVE_TARGETS) \
130 $(RECURSIVE_CLEAN_TARGETS) \
131 $(am__extra_recursive_targets)
132 AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \
133 distdir distdir-am
134 am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
135 # Read a list of newline-separated strings from the standard input,
136 # and print each of them once, without duplicates. Input order is
137 # *not* preserved.
138 am__uniquify_input = $(AWK) '\
139 BEGIN { nonempty = 0; } \
140 { items[$$0] = 1; nonempty = 1; } \
141 END { if (nonempty) { for (i in items) print i; }; } \
142 '
143 # Make sure the list of sources is unique. This is necessary because,
144 # e.g., the same source file might be shared among _SOURCES variables
145 # for different programs/libraries.
146 am__define_uniq_tagged_files = \
147 list='$(am__tagged_files)'; \
148 unique=`for i in $$list; do \
149 if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
150 done | $(am__uniquify_input)`
151 ETAGS = etags
152 CTAGS = ctags
153 DIST_SUBDIRS = xmms mpeg4ip
154 am__DIST_COMMON = $(srcdir)/Makefile.in
155 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
156 am__relativize = \
157 dir0=`pwd`; \
158 sed_first='s,^\([^/]*\)/.*$$,\1,'; \
159 sed_rest='s,^[^/]*/*,,'; \
160 sed_last='s,^.*/\([^/]*\)$$,\1,'; \
161 sed_butlast='s,/*[^/]*$$,,'; \
162 while test -n "$$dir1"; do \
163 first=`echo "$$dir1" | sed -e "$$sed_first"`; \
164 if test "$$first" != "."; then \
165 if test "$$first" = ".."; then \
166 dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
167 dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
168 else \
169 first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
170 if test "$$first2" = "$$first"; then \
171 dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
172 else \
173 dir2="../$$dir2"; \
174 fi; \
175 dir0="$$dir0"/"$$first"; \
176 fi; \
177 fi; \
178 dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
179 done; \
180 reldir="$$dir2"
181 ACLOCAL = @ACLOCAL@
182 AMTAR = @AMTAR@
183 AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
184 AR = @AR@
185 AUTOCONF = @AUTOCONF@
186 AUTOHEADER = @AUTOHEADER@
187 AUTOMAKE = @AUTOMAKE@
188 AWK = @AWK@
189 CC = @CC@
190 CCDEPMODE = @CCDEPMODE@
191 CFLAGS = @CFLAGS@
192 CPP = @CPP@
193 CPPFLAGS = @CPPFLAGS@
194 CXX = @CXX@
195 CXXCPP = @CXXCPP@
196 CXXDEPMODE = @CXXDEPMODE@
197 CXXFLAGS = @CXXFLAGS@
198 CYGPATH_W = @CYGPATH_W@
199 DEFS = @DEFS@
200 DEPDIR = @DEPDIR@
201 DLLTOOL = @DLLTOOL@
202 DSYMUTIL = @DSYMUTIL@
203 DUMPBIN = @DUMPBIN@
204 ECHO_C = @ECHO_C@
205 ECHO_N = @ECHO_N@
206 ECHO_T = @ECHO_T@
207 EGREP = @EGREP@
208 EXEEXT = @EXEEXT@
209 FGREP = @FGREP@
210 GREP = @GREP@
211 GTK_CONFIG = @GTK_CONFIG@
212 INSTALL = @INSTALL@
213 INSTALL_DATA = @INSTALL_DATA@
214 INSTALL_PROGRAM = @INSTALL_PROGRAM@
215 INSTALL_SCRIPT = @INSTALL_SCRIPT@
216 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
217 LD = @LD@
218 LDFLAGS = @LDFLAGS@
219 LIBOBJS = @LIBOBJS@
220 LIBS = @LIBS@
221 LIBTOOL = @LIBTOOL@
222 LIBTOOL_DEPS = @LIBTOOL_DEPS@
223 LIPO = @LIPO@
224 LN_S = @LN_S@
225 LTLIBOBJS = @LTLIBOBJS@
226 LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
227 MAKEINFO = @MAKEINFO@
228 MANIFEST_TOOL = @MANIFEST_TOOL@
229 MKDIR_P = @MKDIR_P@
230 MP4FF_LIBS = @MP4FF_LIBS@
231 NM = @NM@
232 NMEDIT = @NMEDIT@
233 OBJDUMP = @OBJDUMP@
234 OBJEXT = @OBJEXT@
235 OTOOL = @OTOOL@
236 OTOOL64 = @OTOOL64@
237 PACKAGE = @PACKAGE@
238 PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
239 PACKAGE_NAME = @PACKAGE_NAME@
240 PACKAGE_STRING = @PACKAGE_STRING@
241 PACKAGE_TARNAME = @PACKAGE_TARNAME@
242 PACKAGE_URL = @PACKAGE_URL@
243 PACKAGE_VERSION = @PACKAGE_VERSION@
244 PATH_SEPARATOR = @PATH_SEPARATOR@
245 RANLIB = @RANLIB@
246 RPMBUILD = @RPMBUILD@
247 SED = @SED@
248 SET_MAKE = @SET_MAKE@
249 SHELL = @SHELL@
250 STRIP = @STRIP@
251 VERSION = @VERSION@
252 XMMS_CONFIG = @XMMS_CONFIG@
253 abs_builddir = @abs_builddir@
254 abs_srcdir = @abs_srcdir@
255 abs_top_builddir = @abs_top_builddir@
256 abs_top_srcdir = @abs_top_srcdir@
257 ac_ct_AR = @ac_ct_AR@
258 ac_ct_CC = @ac_ct_CC@
259 ac_ct_CXX = @ac_ct_CXX@
260 ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
261 am__include = @am__include@
262 am__leading_dot = @am__leading_dot@
263 am__quote = @am__quote@
264 am__tar = @am__tar@
265 am__untar = @am__untar@
266 bindir = @bindir@
267 build = @build@
268 build_alias = @build_alias@
269 build_cpu = @build_cpu@
270 build_os = @build_os@
271 build_vendor = @build_vendor@
272 builddir = @builddir@
273 datadir = @datadir@
274 datarootdir = @datarootdir@
275 docdir = @docdir@
276 dvidir = @dvidir@
277 exec_prefix = @exec_prefix@
278 external_mp4v2 = @external_mp4v2@
279 host = @host@
280 host_alias = @host_alias@
281 host_cpu = @host_cpu@
282 host_os = @host_os@
283 host_vendor = @host_vendor@
284 htmldir = @htmldir@
285 includedir = @includedir@
286 infodir = @infodir@
287 install_sh = @install_sh@
288 libdir = @libdir@
289 libexecdir = @libexecdir@
290 localedir = @localedir@
291 localstatedir = @localstatedir@
292 mandir = @mandir@
293 mkdir_p = @mkdir_p@
294 oldincludedir = @oldincludedir@
295 pdfdir = @pdfdir@
296 prefix = @prefix@
297 program_transform_name = @program_transform_name@
298 psdir = @psdir@
299 runstatedir = @runstatedir@
300 sbindir = @sbindir@
301 sharedstatedir = @sharedstatedir@
302 srcdir = @srcdir@
303 sysconfdir = @sysconfdir@
304 target_alias = @target_alias@
305 top_build_prefix = @top_build_prefix@
306 top_builddir = @top_builddir@
307 top_srcdir = @top_srcdir@
308 @HAVE_MPEG4IP_PLUG_FALSE@@HAVE_XMMS_FALSE@SUBDIRS =
309 @HAVE_MPEG4IP_PLUG_FALSE@@HAVE_XMMS_TRUE@SUBDIRS = xmms
310 @HAVE_MPEG4IP_PLUG_TRUE@@HAVE_XMMS_FALSE@SUBDIRS = mpeg4ip
311 @HAVE_MPEG4IP_PLUG_TRUE@@HAVE_XMMS_TRUE@SUBDIRS = xmms mpeg4ip
312 all: all-recursive
313
314 .SUFFIXES:
315 $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
316 @for dep in $?; do \
317 case '$(am__configure_deps)' in \
318 *$$dep*) \
319 ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
320 && { if test -f $@; then exit 0; else break; fi; }; \
321 exit 1;; \
322 esac; \
323 done; \
324 echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu plugins/Makefile'; \
325 $(am__cd) $(top_srcdir) && \
326 $(AUTOMAKE) --gnu plugins/Makefile
327 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
328 @case '$?' in \
329 *config.status*) \
330 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
331 *) \
332 echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \
333 cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \
334 esac;
335
336 $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
337 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
338
339 $(top_srcdir)/configure: $(am__configure_deps)
340 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
341 $(ACLOCAL_M4): $(am__aclocal_m4_deps)
342 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
343 $(am__aclocal_m4_deps):
344
345 mostlyclean-libtool:
346 -rm -f *.lo
347
348 clean-libtool:
349 -rm -rf .libs _libs
350
351 # This directory's subdirectories are mostly independent; you can cd
352 # into them and run 'make' without going through this Makefile.
353 # To change the values of 'make' variables: instead of editing Makefiles,
354 # (1) if the variable is set in 'config.status', edit 'config.status'
355 # (which will cause the Makefiles to be regenerated when you run 'make');
356 # (2) otherwise, pass the desired values on the 'make' command line.
357 $(am__recursive_targets):
358 @fail=; \
359 if $(am__make_keepgoing); then \
360 failcom='fail=yes'; \
361 else \
362 failcom='exit 1'; \
363 fi; \
364 dot_seen=no; \
365 target=`echo $@ | sed s/-recursive//`; \
366 case "$@" in \
367 distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
368 *) list='$(SUBDIRS)' ;; \
369 esac; \
370 for subdir in $$list; do \
371 echo "Making $$target in $$subdir"; \
372 if test "$$subdir" = "."; then \
373 dot_seen=yes; \
374 local_target="$$target-am"; \
375 else \
376 local_target="$$target"; \
377 fi; \
378 ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
379 || eval $$failcom; \
380 done; \
381 if test "$$dot_seen" = "no"; then \
382 $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
383 fi; test -z "$$fail"
384
385 ID: $(am__tagged_files)
386 $(am__define_uniq_tagged_files); mkid -fID $$unique
387 tags: tags-recursive
388 TAGS: tags
389
390 tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
391 set x; \
392 here=`pwd`; \
393 if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
394 include_option=--etags-include; \
395 empty_fix=.; \
396 else \
397 include_option=--include; \
398 empty_fix=; \
399 fi; \
400 list='$(SUBDIRS)'; for subdir in $$list; do \
401 if test "$$subdir" = .; then :; else \
402 test ! -f $$subdir/TAGS || \
403 set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
404 fi; \
405 done; \
406 $(am__define_uniq_tagged_files); \
407 shift; \
408 if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
409 test -n "$$unique" || unique=$$empty_fix; \
410 if test $$# -gt 0; then \
411 $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
412 "$$@" $$unique; \
413 else \
414 $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
415 $$unique; \
416 fi; \
417 fi
418 ctags: ctags-recursive
419
420 CTAGS: ctags
421 ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
422 $(am__define_uniq_tagged_files); \
423 test -z "$(CTAGS_ARGS)$$unique" \
424 || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
425 $$unique
426
427 GTAGS:
428 here=`$(am__cd) $(top_builddir) && pwd` \
429 && $(am__cd) $(top_srcdir) \
430 && gtags -i $(GTAGS_ARGS) "$$here"
431 cscopelist: cscopelist-recursive
432
433 cscopelist-am: $(am__tagged_files)
434 list='$(am__tagged_files)'; \
435 case "$(srcdir)" in \
436 [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
437 *) sdir=$(subdir)/$(srcdir) ;; \
438 esac; \
439 for i in $$list; do \
440 if test -f "$$i"; then \
441 echo "$(subdir)/$$i"; \
442 else \
443 echo "$$sdir/$$i"; \
444 fi; \
445 done >> $(top_builddir)/cscope.files
446
447 distclean-tags:
448 -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
449
450 distdir: $(BUILT_SOURCES)
451 $(MAKE) $(AM_MAKEFLAGS) distdir-am
452
453 distdir-am: $(DISTFILES)
454 @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
455 topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
456 list='$(DISTFILES)'; \
457 dist_files=`for file in $$list; do echo $$file; done | \
458 sed -e "s|^$$srcdirstrip/||;t" \
459 -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
460 case $$dist_files in \
461 */*) $(MKDIR_P) `echo "$$dist_files" | \
462 sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
463 sort -u` ;; \
464 esac; \
465 for file in $$dist_files; do \
466 if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
467 if test -d $$d/$$file; then \
468 dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
469 if test -d "$(distdir)/$$file"; then \
470 find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
471 fi; \
472 if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
473 cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
474 find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
475 fi; \
476 cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
477 else \
478 test -f "$(distdir)/$$file" \
479 || cp -p $$d/$$file "$(distdir)/$$file" \
480 || exit 1; \
481 fi; \
482 done
483 @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
484 if test "$$subdir" = .; then :; else \
485 $(am__make_dryrun) \
486 || test -d "$(distdir)/$$subdir" \
487 || $(MKDIR_P) "$(distdir)/$$subdir" \
488 || exit 1; \
489 dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
490 $(am__relativize); \
491 new_distdir=$$reldir; \
492 dir1=$$subdir; dir2="$(top_distdir)"; \
493 $(am__relativize); \
494 new_top_distdir=$$reldir; \
495 echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
496 echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
497 ($(am__cd) $$subdir && \
498 $(MAKE) $(AM_MAKEFLAGS) \
499 top_distdir="$$new_top_distdir" \
500 distdir="$$new_distdir" \
501 am__remove_distdir=: \
502 am__skip_length_check=: \
503 am__skip_mode_fix=: \
504 distdir) \
505 || exit 1; \
506 fi; \
507 done
508 check-am: all-am
509 check: check-recursive
510 all-am: Makefile
511 installdirs: installdirs-recursive
512 installdirs-am:
513 install: install-recursive
514 install-exec: install-exec-recursive
515 install-data: install-data-recursive
516 uninstall: uninstall-recursive
517
518 install-am: all-am
519 @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
520
521 installcheck: installcheck-recursive
522 install-strip:
523 if test -z '$(STRIP)'; then \
524 $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
525 install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
526 install; \
527 else \
528 $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
529 install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
530 "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
531 fi
532 mostlyclean-generic:
533
534 clean-generic:
535
536 distclean-generic:
537 -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
538 -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
539
540 maintainer-clean-generic:
541 @echo "This command is intended for maintainers to use"
542 @echo "it deletes files that may require special tools to rebuild."
543 clean: clean-recursive
544
545 clean-am: clean-generic clean-libtool mostlyclean-am
546
547 distclean: distclean-recursive
548 -rm -f Makefile
549 distclean-am: clean-am distclean-generic distclean-tags
550
551 dvi: dvi-recursive
552
553 dvi-am:
554
555 html: html-recursive
556
557 html-am:
558
559 info: info-recursive
560
561 info-am:
562
563 install-data-am:
564
565 install-dvi: install-dvi-recursive
566
567 install-dvi-am:
568
569 install-exec-am:
570
571 install-html: install-html-recursive
572
573 install-html-am:
574
575 install-info: install-info-recursive
576
577 install-info-am:
578
579 install-man:
580
581 install-pdf: install-pdf-recursive
582
583 install-pdf-am:
584
585 install-ps: install-ps-recursive
586
587 install-ps-am:
588
589 installcheck-am:
590
591 maintainer-clean: maintainer-clean-recursive
592 -rm -f Makefile
593 maintainer-clean-am: distclean-am maintainer-clean-generic
594
595 mostlyclean: mostlyclean-recursive
596
597 mostlyclean-am: mostlyclean-generic mostlyclean-libtool
598
599 pdf: pdf-recursive
600
601 pdf-am:
602
603 ps: ps-recursive
604
605 ps-am:
606
607 uninstall-am:
608
609 .MAKE: $(am__recursive_targets) install-am install-strip
610
611 .PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am check \
612 check-am clean clean-generic clean-libtool cscopelist-am ctags \
613 ctags-am distclean distclean-generic distclean-libtool \
614 distclean-tags distdir dvi dvi-am html html-am info info-am \
615 install install-am install-data install-data-am install-dvi \
616 install-dvi-am install-exec install-exec-am install-html \
617 install-html-am install-info install-info-am install-man \
618 install-pdf install-pdf-am install-ps install-ps-am \
619 install-strip installcheck installcheck-am installdirs \
620 installdirs-am maintainer-clean maintainer-clean-generic \
621 mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \
622 ps ps-am tags tags-am uninstall uninstall-am
623
624 .PRECIOUS: Makefile
625
626
627 # Tell versions [3.59,3.63) of GNU make to not export all variables.
628 # Otherwise a system limit (for SysV at least) may be exceeded.
629 .NOEXPORT:
+0
-1030
plugins/QCD/QCDFAAD.c less more
0 /*
1 ** FAAD - Freeware Advanced Audio Decoder
2 ** Copyright (C) 2002 M. Bakker
3 **
4 ** This program is free software; you can redistribute it and/or modify
5 ** it under the terms of the GNU General Public License as published by
6 ** the Free Software Foundation; either version 2 of the License, or
7 ** (at your option) any later version.
8 **
9 ** This program is distributed in the hope that it will be useful,
10 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
11 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 ** GNU General Public License for more details.
13 **
14 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
16 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
17 **
18 ** $Id: QCDFAAD.c,v 1.2 2003/04/28 19:04:35 menno Exp $
19 ** based on menno's in_faad.dll plugin for Winamp
20 **
21 ** The tag function has been removed because QCD supports ID3v1 & ID3v2 very well
22 ** About how to tagging: Please read the "ReadMe.txt" first
23 **/
24
25 #define WIN32_LEAN_AND_MEAN
26
27 #include <windows.h>
28 #include <mmreg.h>
29 #include <commctrl.h>
30 #include <shellapi.h>
31 #include <stdlib.h>
32 #include <stdio.h>
33 #include "QCDInputDLL.h"
34
35 #include "resource.h"
36
37 #include <faad.h>
38 #include <aacinfo.h>
39 #include <filestream.h>
40 //#include <id3v2tag.h>
41
42 static char app_name[] = "QCDFAAD";
43
44 faadAACInfo file_info;
45
46 faacDecHandle hDecoder;
47 faacDecFrameInfo frameInfo;
48
49 HINSTANCE hInstance;
50 HWND hwndPlayer, hwndConfig, hwndAbout;
51 QCDModInitIn sQCDCallbacks, *QCDCallbacks;
52 BOOL oldAPIs = 0;
53 static char lastfn[MAX_PATH]; // currently playing file (used for getting info on the current file)
54 int file_length; // file length, in bytes
55 int paused; // are we paused?
56 int seek_needed; // if != -1, it is the point that the decode thread should seek to, in ms.
57
58 char *sample_buffer; // sample buffer
59 unsigned char *buffer; // input buffer
60 unsigned char *memmap_buffer; // input buffer for whole file
61 long memmap_index;
62
63 long buffercount, fileread, bytecount;
64
65 // seek table for ADTS header files
66 unsigned long *seek_table = NULL;
67 int seek_table_length=0;
68
69 int killPlayThread = 0; // the kill switch for the decode thread
70 HANDLE play_thread_handle = INVALID_HANDLE_VALUE; // the handle to the decode thread
71 FILE_STREAM *infile;
72
73 /* Function definitions */
74 int id3v2_tag(unsigned char *buffer);
75 DWORD WINAPI PlayThread(void *b); // the decode thread procedure
76
77 // general funcz
78 static void show_error(const char *message,...)
79 {
80 char foo[512];
81 va_list args;
82 va_start(args, message);
83 vsprintf(foo, message, args);
84 va_end(args);
85 MessageBox(hwndPlayer, foo, "FAAD Plug-in Error", MB_ICONSTOP);
86 }
87
88
89 // 1= use vbr display, 0 = use average bitrate. This value only controls what shows up in the
90 // configuration form. Also- Streaming uses an on-the-fly bitrate display regardless of this value.
91 long m_variable_bitrate_display=0;
92 long m_priority = 5;
93 long m_memmap_file = 0;
94 static char INI_FILE[MAX_PATH];
95
96 char *priority_text[] = { "",
97 "Decode Thread Priority: Lowest",
98 "Decode Thread Priority: Lower",
99 "Decode Thread Priority: Normal",
100 "Decode Thread Priority: Higher",
101 "Decode Thread Priority: Highest (default)"
102 };
103
104 long priority_table[] = {0, THREAD_PRIORITY_LOWEST, THREAD_PRIORITY_BELOW_NORMAL, THREAD_PRIORITY_NORMAL, THREAD_PRIORITY_ABOVE_NORMAL, THREAD_PRIORITY_HIGHEST};
105
106 long current_file_mode = 0;
107
108 int PlayThread_memmap();
109 int PlayThread_file();
110
111 static void _r_s(char *name,char *data, int mlen)
112 {
113 char buf[10];
114 strcpy(buf,data);
115 GetPrivateProfileString(app_name,name,buf,data,mlen,INI_FILE);
116 }
117
118 #define RS(x) (_r_s(#x,x,sizeof(x)))
119 #define WS(x) (WritePrivateProfileString(app_name,#x,x,INI_FILE))
120
121 void config_read()
122 {
123 char variable_bitrate_display[10];
124 char priority[10];
125 char memmap_file[10];
126 char local_buffer_size[10];
127 char stream_buffer_size[10];
128
129 strcpy(variable_bitrate_display, "1");
130 strcpy(priority, "5");
131 strcpy(memmap_file, "0");
132 strcpy(local_buffer_size, "128");
133 strcpy(stream_buffer_size, "64");
134
135 RS(variable_bitrate_display);
136 RS(priority);
137 RS(memmap_file);
138 RS(local_buffer_size);
139 RS(stream_buffer_size);
140
141 m_priority = atoi(priority);
142 m_variable_bitrate_display = atoi(variable_bitrate_display);
143 m_memmap_file = atoi(memmap_file);
144 m_local_buffer_size = atoi(local_buffer_size);
145 m_stream_buffer_size = atoi(stream_buffer_size);
146 }
147
148 void config_write()
149 {
150 char variable_bitrate_display[10];
151 char priority[10];
152 char memmap_file[10];
153 char local_buffer_size[10];
154 char stream_buffer_size[10];
155
156 itoa(m_priority, priority, 10);
157 itoa(m_variable_bitrate_display, variable_bitrate_display, 10);
158 itoa(m_memmap_file, memmap_file, 10);
159 itoa(m_local_buffer_size, local_buffer_size, 10);
160 itoa(m_stream_buffer_size, stream_buffer_size, 10);
161
162 WS(variable_bitrate_display);
163 WS(priority);
164 WS(memmap_file);
165 WS(local_buffer_size);
166 WS(stream_buffer_size);
167 }
168
169 //-----------------------------------------------------------------------------
170
171 BOOL WINAPI DllMain(HINSTANCE hInst, DWORD fdwReason, LPVOID pRes)
172 {
173 if (fdwReason == DLL_PROCESS_ATTACH)
174 hInstance = hInst;
175 return TRUE;
176 }
177
178 //-----------------------------------------------------------------------------
179 //old entrypoint api
180 PLUGIN_API BOOL QInputModule(QCDModInitIn *ModInit, QCDModInfo *ModInfo)
181 {
182 ModInit->version = PLUGIN_API_VERSION;
183 ModInit->toModule.ShutDown = ShutDown;
184 ModInit->toModule.GetTrackExtents = GetTrackExtents;
185 ModInit->toModule.GetMediaSupported = GetMediaSupported;
186 ModInit->toModule.GetCurrentPosition= GetCurrentPosition;
187 ModInit->toModule.Play = Play;
188 ModInit->toModule.Pause = Pause;
189 ModInit->toModule.Stop = Stop;
190 ModInit->toModule.SetVolume = SetVolume;
191 ModInit->toModule.About = About;
192 ModInit->toModule.Configure = Configure;
193 QCDCallbacks = ModInit;
194
195 ModInfo->moduleString = "FAAD Plugin v1.0b";
196 /* read config */
197 QCDCallbacks->Service(opGetPluginSettingsFile, INI_FILE, MAX_PATH, 0);
198
199 config_read();
200 ModInfo->moduleExtensions = "AAC";
201
202 hwndPlayer = (HWND)ModInit->Service(opGetParentWnd, 0, 0, 0);
203 lastfn[0] = 0;
204 play_thread_handle = INVALID_HANDLE_VALUE;
205
206 oldAPIs = 1;
207
208 return TRUE;
209 }
210
211 //-----------------------------------------------------------------------------
212
213 PLUGIN_API QCDModInitIn* INPUTDLL_ENTRY_POINT()
214 {
215 sQCDCallbacks.version = PLUGIN_API_VERSION;
216 sQCDCallbacks.toModule.Initialize = Initialize;
217 sQCDCallbacks.toModule.ShutDown = ShutDown;
218 sQCDCallbacks.toModule.GetTrackExtents = GetTrackExtents;
219 sQCDCallbacks.toModule.GetMediaSupported = GetMediaSupported;
220 sQCDCallbacks.toModule.GetCurrentPosition = GetCurrentPosition;
221 sQCDCallbacks.toModule.Play = Play;
222 sQCDCallbacks.toModule.Pause = Pause;
223 sQCDCallbacks.toModule.Stop = Stop;
224 sQCDCallbacks.toModule.SetVolume = SetVolume;
225 sQCDCallbacks.toModule.About = About;
226 sQCDCallbacks.toModule.Configure = Configure;
227
228 QCDCallbacks = &sQCDCallbacks;
229 return &sQCDCallbacks;
230 }
231
232 //----------------------------------------------------------------------------
233
234 BOOL CALLBACK config_dialog_proc(HWND hwndDlg, UINT message, WPARAM wParam, LPARAM lParam)
235 {
236 char tmp[10];
237
238 switch (message)
239 {
240 case WM_INITDIALOG:
241 /* Set priority slider range and previous position */
242 SendMessage(GetDlgItem(hwndDlg, THREAD_PRIORITY_SLIDER), TBM_SETRANGE, TRUE, MAKELONG(1, 5));
243 SendMessage(GetDlgItem(hwndDlg, THREAD_PRIORITY_SLIDER), TBM_SETPOS, TRUE, m_priority);
244 SetDlgItemText(hwndDlg, IDC_STATIC2, priority_text[m_priority]);
245
246 /* Put a limit to the amount of characters allowed in the buffer boxes */
247 SendMessage(GetDlgItem(hwndDlg, LOCAL_BUFFER_TXT), EM_LIMITTEXT, 4, 0);
248 SendMessage(GetDlgItem(hwndDlg, STREAM_BUFFER_TXT), EM_LIMITTEXT, 4, 0);
249
250 if(m_variable_bitrate_display)
251 SendMessage(GetDlgItem(hwndDlg, VARBITRATE_CHK), BM_SETCHECK, BST_CHECKED, 0);
252 if(m_memmap_file)
253 SendMessage(GetDlgItem(hwndDlg, IDC_MEMMAP), BM_SETCHECK, BST_CHECKED, 0);
254
255 itoa(m_local_buffer_size, tmp, 10);
256 SetDlgItemText(hwndDlg, LOCAL_BUFFER_TXT, tmp);
257
258 itoa(m_stream_buffer_size, tmp, 10);
259 SetDlgItemText(hwndDlg, STREAM_BUFFER_TXT, tmp);
260
261 return TRUE;
262
263 case WM_HSCROLL:
264
265 /* Thread priority slider moved */
266 if(GetDlgItem(hwndDlg, THREAD_PRIORITY_SLIDER) == (HWND) lParam)
267 {
268 int tmp;
269 tmp = SendMessage(GetDlgItem(hwndDlg, THREAD_PRIORITY_SLIDER), TBM_GETPOS, 0, 0);
270
271 if(tmp > 0)
272 {
273 m_priority = tmp;
274
275 SetDlgItemText(hwndDlg, IDC_STATIC2, priority_text[m_priority]);
276
277 if(play_thread_handle)
278 SetThreadPriority(play_thread_handle, priority_table[m_priority]);
279 }
280 }
281
282 return TRUE;
283
284 case WM_COMMAND:
285
286 if(HIWORD(wParam) == BN_CLICKED)
287 {
288 if(GetDlgItem(hwndDlg, VARBITRATE_CHK) == (HWND) lParam)
289 {
290 /* Variable Bitrate checkbox hit */
291 m_variable_bitrate_display = SendMessage(GetDlgItem(hwndDlg, VARBITRATE_CHK), BM_GETCHECK, 0, 0);
292 }
293 if(GetDlgItem(hwndDlg, IDC_MEMMAP) == (HWND) lParam)
294 {
295 /* Variable Bitrate checkbox hit */
296 m_memmap_file = SendMessage(GetDlgItem(hwndDlg, IDC_MEMMAP), BM_GETCHECK, 0, 0);
297 }
298 }
299
300 switch (LOWORD(wParam))
301 {
302 case OK_BTN:
303 /* User hit OK, save buffer settings (all others are set on command) */
304 GetDlgItemText(hwndDlg, LOCAL_BUFFER_TXT, tmp, 5);
305 m_local_buffer_size = atol(tmp);
306
307 GetDlgItemText(hwndDlg, STREAM_BUFFER_TXT, tmp, 5);
308 m_stream_buffer_size = atol(tmp);
309
310 config_write();
311
312 EndDialog(hwndDlg, wParam);
313 return TRUE;
314 case RESET_BTN:
315 SendMessage(GetDlgItem(hwndDlg, VARBITRATE_CHK), BM_SETCHECK, BST_CHECKED, 0);
316 m_variable_bitrate_display = 1;
317 SendMessage(GetDlgItem(hwndDlg, IDC_MEMMAP), BM_SETCHECK, BST_UNCHECKED, 0);
318 m_memmap_file = 0;
319 SendMessage(GetDlgItem(hwndDlg, THREAD_PRIORITY_SLIDER), TBM_SETPOS, TRUE, 5);
320 m_priority = 5;
321 SetDlgItemText(hwndDlg, IDC_STATIC2, priority_text[5]);
322 SetDlgItemText(hwndDlg, LOCAL_BUFFER_TXT, "128");
323 m_local_buffer_size = 128;
324 SetDlgItemText(hwndDlg, STREAM_BUFFER_TXT, "64");
325 m_stream_buffer_size = 64;
326 return TRUE;
327 case IDCANCEL:
328 case CANCEL_BTN:
329 /* User hit Cancel or the X, just close without saving buffer settings */
330 DestroyWindow(hwndDlg);
331 return TRUE;
332 }
333 }
334 return FALSE;
335 }
336
337
338 void Configure(int flags)
339 {
340 if(!IsWindow(hwndConfig))
341 hwndConfig = CreateDialog(hInstance, MAKEINTRESOURCE(IDD_CONFIG), hwndPlayer, config_dialog_proc);
342 ShowWindow(hwndConfig, SW_NORMAL);
343 }
344
345 //-----------------------------------------------------------------------------
346 // proc of "About Dialog"
347 INT_PTR CALLBACK about_dialog_proc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
348 {
349 static RECT rcLOGO, rcMail1, rcMail2/*, rcMail3*/;
350 POINT ptMouse;
351 static char szPluginVer[] = "QCD FAAD Input Plug-in v1.0b\nCompiled on " __TIME__ ", " __DATE__;
352 static char szFLACVer[] = "Using: FAAD2 v "FAAD2_VERSION" by";
353
354 switch (uMsg)
355 {
356 case WM_INITDIALOG:
357 case WM_MOVE:
358 GetWindowRect(GetDlgItem(hwndDlg, IDC_LOGO), &rcLOGO);
359 GetWindowRect(GetDlgItem(hwndDlg, IDC_MAIL1), &rcMail1);
360 GetWindowRect(GetDlgItem(hwndDlg, IDC_MAIL2), &rcMail2);
361 // GetWindowRect(GetDlgItem(hwndDlg, IDC_MAIL2), &rcMail3);
362
363 SetDlgItemText(hwndDlg, IDC_PLUGINVER, szPluginVer);
364 SetDlgItemText(hwndDlg, IDC_FAADVER, szFLACVer);
365
366 return TRUE;
367 case WM_MOUSEMOVE:
368 ptMouse.x = LOWORD(lParam);
369 ptMouse.y = HIWORD(lParam);
370 ClientToScreen(hwndDlg, &ptMouse);
371 if( (ptMouse.x >= rcLOGO.left && ptMouse.x <= rcLOGO.right &&
372 ptMouse.y >= rcLOGO.top && ptMouse.y<= rcLOGO.bottom)
373 ||
374 (ptMouse.x >= rcMail1.left && ptMouse.x <= rcMail1.right &&
375 ptMouse.y >= rcMail1.top && ptMouse.y<= rcMail1.bottom)
376 ||
377 (ptMouse.x >= rcMail2.left && ptMouse.x <= rcMail2.right &&
378 ptMouse.y >= rcMail2.top && ptMouse.y<= rcMail2.bottom)
379 /* ||
380 (ptMouse.x >= rcMail3.left && ptMouse.x <= rcMail3.right &&
381 ptMouse.y >= rcMail3.top && ptMouse.y<= rcMail3.bottom)*/ )
382 SetCursor(LoadCursor(NULL, MAKEINTRESOURCE(32649)));
383 else
384 SetCursor(LoadCursor(NULL, IDC_ARROW));
385
386 return TRUE;
387 case WM_LBUTTONDOWN:
388 ptMouse.x = LOWORD(lParam);
389 ptMouse.y = HIWORD(lParam);
390 ClientToScreen(hwndDlg, &ptMouse);
391 if(ptMouse.x >= rcLOGO.left && ptMouse.x <= rcLOGO.right &&
392 ptMouse.y >= rcLOGO.top && ptMouse.y<= rcLOGO.bottom)
393 ShellExecute(0, NULL, "http://www.audiocoding.com", NULL,NULL, SW_NORMAL);
394 else if(ptMouse.x >= rcMail1.left && ptMouse.x <= rcMail1.right &&
395 ptMouse.y >= rcMail1.top && ptMouse.y<= rcMail1.bottom)
396 ShellExecute(0, NULL, "mailto:shaohao@elong.com", NULL,NULL, SW_NORMAL);
397 else if(ptMouse.x >= rcMail2.left && ptMouse.x <= rcMail2.right &&
398 ptMouse.y >= rcMail2.top && ptMouse.y<= rcMail2.bottom)
399 ShellExecute(0, NULL, "mailto:menno@audiocoding.com", NULL,NULL, SW_NORMAL);
400 /* else if(ptMouse.x >= rcMail3.left && ptMouse.x <= rcMail3.right &&
401 ptMouse.y >= rcMail3.top && ptMouse.y<= rcMail3.bottom)
402 ShellExecute(0, NULL, "I don't know", NULL,NULL, SW_NORMAL);
403 */
404 return TRUE;
405 case WM_COMMAND:
406 switch(LOWORD(wParam))
407 {
408 case IDOK:
409 default:
410 DestroyWindow(hwndDlg);
411 return TRUE;
412 }
413 }
414 return FALSE;
415 }
416
417 void About(int flags)
418 {
419 if(!IsWindow(hwndAbout))
420 hwndAbout = CreateDialog(hInstance, MAKEINTRESOURCE(IDD_ABOUT), hwndPlayer, about_dialog_proc);
421 ShowWindow(hwndAbout, SW_SHOW);
422 }
423
424 //-----------------------------------------------------------------------------
425
426 BOOL Initialize(QCDModInfo *ModInfo, int flags)
427 {
428 hwndPlayer = (HWND)QCDCallbacks->Service(opGetParentWnd, 0, 0, 0);
429
430 lastfn[0] = 0;
431 seek_needed = -1;
432 paused = 0;
433 play_thread_handle = INVALID_HANDLE_VALUE;
434
435 /* read config */
436 QCDCallbacks->Service(opGetPluginSettingsFile, INI_FILE, MAX_PATH, 0);
437 config_read();
438
439 ModInfo->moduleString = "FAAD Plugin v1.0b";
440 ModInfo->moduleExtensions = "AAC";
441
442 /* Initialize winsock, necessary for streaming */
443 WinsockInit();
444
445 // insert menu item into plugin menu
446 // QCDCallbacks->Service(opSetPluginMenuItem, hInstance, IDD_CONFIG, (long)"FAAD Plug-in");
447
448 return TRUE;
449 }
450
451 //----------------------------------------------------------------------------
452
453 void ShutDown(int flags)
454 {
455 Stop(lastfn, STOPFLAG_FORCESTOP);
456
457 if(buffer)
458 LocalFree(buffer);
459
460 /* Deallocate winsock */
461 WinsockDeInit();
462
463 // delete the inserted plugin menu
464 // QCDCallbacks->Service(opSetPluginMenuItem, hInstance, 0, 0);
465 }
466
467 //-----------------------------------------------------------------------------
468
469 BOOL GetMediaSupported(LPCSTR medianame, MediaInfo *mediaInfo)
470 {
471 FILE_STREAM *in;
472 faadAACInfo tmp;
473 char *ch = strrchr(medianame, '.');
474
475 if (!medianame || !*medianame)
476 return FALSE;
477
478 if(!ch)
479 return (lstrlen(medianame) > 2); // no extension defaults to me (if not drive letter)
480
481 /* Finally fixed */
482 if(StringComp(ch, ".aac", 4) == 0)
483 {
484 in = open_filestream((char *)medianame);
485
486 if(in != NULL && mediaInfo)
487 {
488 if(in->http)
489 {
490 /* No seeking in http streams */
491 mediaInfo->mediaType = DIGITAL_STREAM_MEDIA;
492 mediaInfo->op_canSeek = FALSE;
493 }
494 else
495 {
496 mediaInfo->mediaType = DIGITAL_FILE_MEDIA;
497 get_AAC_format((char *)medianame, &tmp, NULL, NULL, 1);
498 if(tmp.headertype == 2) /* ADTS header - seekable */
499 mediaInfo->op_canSeek = TRUE;
500 else
501 mediaInfo->op_canSeek = FALSE; /* ADIF or Headerless - not seekable */
502 }
503
504 close_filestream(in);
505 return TRUE;
506 }
507 else
508 {
509 close_filestream(in);
510 return FALSE;
511 }
512 }
513 else
514 return FALSE;
515 }
516
517 unsigned long samplerate, channels;
518
519 int play_memmap(char *fn)
520 {
521 int tagsize = 0;
522
523 infile = open_filestream(fn);
524
525 if (infile == NULL)
526 return 1;
527
528 fileread = filelength_filestream(infile);
529
530 memmap_buffer = (char*)LocalAlloc(LPTR, fileread);
531 read_buffer_filestream(infile, memmap_buffer, fileread);
532
533 /* skip id3v2 tag */
534 memmap_index = id3v2_tag(memmap_buffer);
535
536 hDecoder = faacDecOpen();
537
538 /* Copy the configuration dialog setting and use it as the default */
539 /* initialize the decoder, and get samplerate and channel info */
540
541 if( (buffercount = faacDecInit(hDecoder, memmap_buffer + memmap_index,
542 fileread - memmap_index - 1, &samplerate, &channels)) < 0 )
543 {
544 show_error("Error opening input file");
545 return 1;
546 }
547
548 memmap_index += buffercount;
549
550 PlayThread_memmap();
551
552 return 0;
553 }
554
555 int play_file(char *fn)
556 {
557 int k;
558 int tagsize;
559
560 ZeroMemory(buffer, 768*2);
561
562 infile = open_filestream(fn);
563
564 if (infile == NULL)
565 return 1;
566
567 fileread = filelength_filestream(infile);
568
569 buffercount = bytecount = 0;
570 read_buffer_filestream(infile, buffer, 768*2);
571
572 tagsize = id3v2_tag(buffer);
573
574 /* If we find a tag, run right over it */
575 if(tagsize)
576 {
577 if(infile->http)
578 {
579 int i;
580 /* Crude way of doing this, but I believe its fast enough to not make a big difference */
581 close_filestream(infile);
582 infile = open_filestream(fn);
583
584 for(i=0; i < tagsize; i++)
585 read_byte_filestream(infile);
586 }
587 else
588 seek_filestream(infile, tagsize, FILE_BEGIN);
589
590 bytecount = tagsize;
591 buffercount = 0;
592 read_buffer_filestream(infile, buffer, 768*2);
593 }
594
595 hDecoder = faacDecOpen();
596
597 /* Copy the configuration dialog setting and use it as the default */
598 /* initialize the decoder, and get samplerate and channel info */
599
600 if((buffercount = faacDecInit(hDecoder, buffer, 768*2, &samplerate, &channels)) < 0)
601 {
602 show_error("Error opening input file");
603 return 1;
604 }
605
606 if(buffercount > 0)
607 {
608 bytecount += buffercount;
609
610 for (k = 0; k < (768*2 - buffercount); k++)
611 buffer[k] = buffer[k + buffercount];
612
613 read_buffer_filestream(infile, buffer + (768*2) - buffercount, buffercount);
614 buffercount = 0;
615 }
616
617 PlayThread_file();
618
619 return 0;
620 }
621
622
623 //-----------------------------------------------------------------------------
624
625 BOOL Play(LPCSTR medianame, int playfrom, int playto, int flags)
626 {
627 if(stricmp(lastfn, medianame) != 0)
628 {
629 sQCDCallbacks.toPlayer.OutputStop(STOPFLAG_PLAYDONE);
630 Stop(lastfn, STOPFLAG_PLAYDONE);
631 }
632
633 if(paused)
634 {
635 // Update the player controls to reflect the new unpaused state
636 sQCDCallbacks.toPlayer.OutputPause(0);
637
638 Pause(medianame, PAUSE_DISABLED);
639
640 if (playfrom >= 0)
641 seek_needed = playfrom;
642 }
643 else if(play_thread_handle != INVALID_HANDLE_VALUE)
644 {
645 seek_needed = playfrom;
646 return TRUE;
647 }
648 else
649 {
650 int thread_id;
651
652 // alloc the input buffer
653 buffer = (unsigned char*)LocalAlloc(LPTR, 768*2);
654
655 current_file_mode = m_memmap_file;
656
657 if(current_file_mode)
658 {
659 if(play_memmap((char *)medianame))
660 return FALSE;
661 }
662 else
663 {
664 if(play_file((char *)medianame))
665 return FALSE;
666 }
667
668 if(seek_table)
669 {
670 free(seek_table);
671 seek_table = NULL;
672 seek_table_length = 0;
673 }
674
675 get_AAC_format((char *)medianame, &file_info, &seek_table, &seek_table_length, 0);
676
677 seek_needed = playfrom > 0 ? playfrom : -1;
678 killPlayThread = 0;
679 strcpy(lastfn,medianame);
680
681 /*
682 To RageAmp: This is really needed, because aacinfo isn't very accurate on ADIF files yet.
683 Can be fixed though :-)
684 */
685 file_info.sampling_rate = samplerate;
686 file_info.channels = frameInfo.channels;
687
688 play_thread_handle = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE) PlayThread, (void *) &killPlayThread, 0, &thread_id);
689 if(!play_thread_handle)
690 return FALSE;
691
692 // Note: This line seriously slows down start up time
693 if(m_priority != 3) // if the priority in config window is set to normal, there is nothing to reset!
694 SetThreadPriority(play_thread_handle, priority_table[m_priority]);
695
696 }
697
698 return TRUE;
699 }
700
701 //-----------------------------------------------------------------------------
702
703 BOOL Pause(LPCSTR medianame, int flags)
704 {
705 if(QCDCallbacks->toPlayer.OutputPause(flags))
706 {
707 // send back pause/unpause notification
708 QCDCallbacks->toPlayer.PlayPaused(medianame, flags);
709 paused = flags;
710 return TRUE;
711 }
712 return FALSE;
713 }
714
715 //-----------------------------------------------------------------------------
716
717 BOOL Stop(LPCSTR medianame, int flags)
718 {
719 if(medianame && *medianame && stricmp(lastfn, medianame) == 0)
720 {
721 sQCDCallbacks.toPlayer.OutputStop(flags);
722
723 killPlayThread = 1;
724 if(play_thread_handle != INVALID_HANDLE_VALUE)
725 {
726 if(WaitForSingleObject(play_thread_handle, INFINITE) == WAIT_TIMEOUT)
727 {
728 // MessageBox(hwndPlayer, "FAAD thread kill timeout", "debug", 0);
729 TerminateThread(play_thread_handle,0);
730 }
731 CloseHandle(play_thread_handle);
732 play_thread_handle = INVALID_HANDLE_VALUE;
733 }
734
735 if (oldAPIs)
736 QCDCallbacks->toPlayer.PlayStopped(lastfn);
737
738 lastfn[0] = 0;
739 }
740
741 return TRUE;
742 }
743
744 int aac_seek(int pos_ms, int *sktable)
745 {
746 double offset_sec;
747
748 offset_sec = pos_ms / 1000.0;
749 if(!current_file_mode)
750 {
751 seek_filestream(infile, sktable[(int)(offset_sec+0.5)], FILE_BEGIN);
752
753 bytecount = sktable[(int)(offset_sec+0.5)];
754 buffercount = 0;
755 read_buffer_filestream(infile, buffer, 768*2);
756 }
757 else
758 {
759 memmap_index = sktable[(int)(offset_sec+0.5)];
760 }
761
762 return 0;
763 }
764
765 //-----------------------------------------------------------------------------
766
767 void SetVolume(int levelleft, int levelright, int flags)
768 {
769 QCDCallbacks->toPlayer.OutputSetVol(levelleft, levelright, flags);
770 }
771
772 //-----------------------------------------------------------------------------
773
774 BOOL GetCurrentPosition(LPCSTR medianame, long *track, long *offset)
775 {
776 return QCDCallbacks->toPlayer.OutputGetCurrentPosition((UINT*)offset, 0);
777 }
778
779 //-----------------------------------------------------------------------------
780
781 BOOL GetTrackExtents(LPCSTR medianame, TrackExtents *ext, int flags)
782 {
783 faadAACInfo tmp;
784
785 if(get_AAC_format((char*)medianame, &tmp, NULL, NULL, 1))
786 return FALSE;
787
788 ext->track = 1;
789 ext->start = 0;
790 ext->end = tmp.length;
791 ext->bytesize = tmp.bitrate * tmp.length;
792 ext->unitpersec = 1000;
793
794 return TRUE;
795 }
796
797 //--------------------------for play thread-------------------------------------
798
799 int last_frame;
800
801 DWORD WINAPI PlayThread(void *b)
802 {
803 BOOL done = FALSE, updatePos = FALSE;
804 int decode_pos_ms = 0; // current decoding position, in milliseconds
805 int l;
806 int decoded_frames=0;
807 int br_calc_frames=0;
808 int br_bytes_consumed=0;
809 unsigned long bytesconsumed;
810
811 last_frame = 0;
812
813 if(!done)
814 {
815 // open outputdevice
816 WAVEFORMATEX wf;
817 wf.wFormatTag = WAVE_FORMAT_PCM;
818 wf.cbSize = 0;
819 wf.nChannels = file_info.channels;
820 wf.wBitsPerSample = 16;
821 wf.nSamplesPerSec = file_info.sampling_rate;
822 wf.nBlockAlign = wf.nChannels * wf.wBitsPerSample / 8;
823 wf.nAvgBytesPerSec = wf.nSamplesPerSec * wf.nBlockAlign;
824 if (!QCDCallbacks->toPlayer.OutputOpen(lastfn, &wf))
825 {
826 show_error("Error: Failed openning output plugin!");
827 done = TRUE; // cannot open sound device
828 }
829 }
830
831 while (! *((int *)b) )
832 {
833 /********************** SEEK ************************/
834 if (!done && seek_needed >= 0)
835 {
836 int seconds;
837
838 // Round off to a second
839 seconds = seek_needed - (seek_needed%1000);
840 QCDCallbacks->toPlayer.OutputFlush(decode_pos_ms);
841 aac_seek(seconds, seek_table);
842 decode_pos_ms = seconds;
843 decoded_frames = 0;
844 br_calc_frames = 0;
845 br_bytes_consumed = 0;
846
847 seek_needed = -1;
848 updatePos = 1;
849 }
850
851 /********************* QUIT *************************/
852 if (done)
853 {
854 if (QCDCallbacks->toPlayer.OutputDrain(0) && !(seek_needed >= 0))
855 {
856 play_thread_handle = INVALID_HANDLE_VALUE;
857 QCDCallbacks->toPlayer.OutputStop(STOPFLAG_PLAYDONE);
858 QCDCallbacks->toPlayer.PlayDone(lastfn);
859 }
860 else if (seek_needed >= 0)
861 {
862 done = FALSE;
863 continue;
864 }
865 break;
866 }
867
868 /******************* DECODE TO BUFFER ****************/
869 else
870 {
871 if (current_file_mode)
872 bytesconsumed = PlayThread_memmap();
873 else
874 bytesconsumed = PlayThread_file();
875
876 if(last_frame)
877 done = TRUE;
878 else
879 {
880
881 decoded_frames++;
882 br_calc_frames++;
883 br_bytes_consumed += bytesconsumed;
884
885 /* Update the variable bitrate about every second */
886 if(m_variable_bitrate_display && br_calc_frames == 43)
887 {
888 AudioInfo vai;
889 vai.struct_size = sizeof(AudioInfo);
890 vai.frequency = file_info.sampling_rate;
891 vai.bitrate = (int)((br_bytes_consumed * 8) / (decoded_frames / 43.07));
892 vai.mode = (channels == 2) ? 0 : 3;
893 vai.layer = 0;
894 vai.level = file_info.version;
895 QCDCallbacks->Service(opSetAudioInfo, &vai, sizeof(AudioInfo), 0);
896
897 br_calc_frames = 0;
898 }
899
900 if (!killPlayThread && (frameInfo.samples > 0))
901 {
902 //update the time display
903 if (updatePos)
904 {
905 QCDCallbacks->toPlayer.PositionUpdate(decode_pos_ms);
906 updatePos = 0;
907 }
908
909 {
910 WriteDataStruct wd;
911
912 l = frameInfo.samples * sizeof(short);
913
914 decode_pos_ms += (1024*1000)/file_info.sampling_rate;
915
916 wd.bytelen = l;
917 wd.data = sample_buffer;
918 wd.markerend = 0;
919 wd.markerstart = decode_pos_ms;
920 wd.bps = 16;
921 wd.nch = frameInfo.channels;
922 wd.numsamples =l/file_info.channels/(16/8);
923 wd.srate = file_info.sampling_rate;
924
925 if (!QCDCallbacks->toPlayer.OutputWrite(&wd))
926 done = TRUE;
927 }
928 }
929 }
930 }
931 Sleep(10);
932 }
933
934 // close up
935 play_thread_handle = INVALID_HANDLE_VALUE;
936
937 faacDecClose(hDecoder);
938 hDecoder = INVALID_HANDLE_VALUE;
939 close_filestream(infile);
940 infile = NULL;
941
942 if(seek_table)
943 {
944 free(seek_table);
945 seek_table = NULL;
946 seek_table_length = 0;
947 }
948
949 if(buffer)
950 {
951 LocalFree(buffer);
952 buffer = NULL;
953 }
954 if(memmap_buffer)
955 {
956 LocalFree(memmap_buffer);
957 memmap_buffer = NULL;
958 }
959
960 return 0;
961 }
962
963 // thread play funcs
964 int PlayThread_memmap()
965 {
966 sample_buffer = (char*)faacDecDecode(hDecoder, &frameInfo,
967 memmap_buffer + memmap_index, fileread - memmap_index - 1);
968 if (frameInfo.error)
969 {
970 // show_error(faacDecGetErrorMessage(frameInfo.error));
971 last_frame = 1;
972 }
973
974 memmap_index += frameInfo.bytesconsumed;
975 if (memmap_index >= fileread)
976 last_frame = 1;
977
978 return frameInfo.bytesconsumed;
979 }
980
981 int PlayThread_file()
982 {
983 int k;
984
985 if (buffercount > 0)
986 {
987 for (k = 0; k < (768*2 - buffercount); k++)
988 buffer[k] = buffer[k + buffercount];
989
990 read_buffer_filestream(infile, buffer + (768*2) - buffercount, buffercount);
991 buffercount = 0;
992 }
993
994 sample_buffer = (char*)faacDecDecode(hDecoder, &frameInfo, buffer, 768*2);
995 if (frameInfo.error)
996 {
997 // show_error(faacDecGetErrorMessage(frameInfo.error));
998 last_frame = 1;
999 }
1000
1001 buffercount += frameInfo.bytesconsumed;
1002
1003 bytecount += frameInfo.bytesconsumed;
1004 if (bytecount >= fileread)
1005 last_frame = 1;
1006
1007 return frameInfo.bytesconsumed;
1008 }
1009
1010 // tag
1011 int id3v2_tag(unsigned char *buffer)
1012 {
1013 if (StringComp(buffer, "ID3", 3) == 0)
1014 {
1015 unsigned long tagsize;
1016
1017 /* high bit is not used */
1018 tagsize = (buffer[6] << 21) | (buffer[7] << 14) |
1019 (buffer[8] << 7) | (buffer[9] << 0);
1020
1021 tagsize += 10;
1022
1023 return tagsize;
1024 }
1025 else
1026 {
1027 return 0;
1028 }
1029 }
+0
-29
plugins/QCD/QCDFAAD.sln less more
0 
1 Microsoft Visual Studio Solution File, Format Version 9.00
2 # Visual Studio 2005
3 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "QCDFAAD", "QCDFAAD.vcproj", "{71955EB0-4F77-462B-A844-2BA56E74B87E}"
4 ProjectSection(ProjectDependencies) = postProject
5 {BC3EFE27-9015-4C9C-AD3C-72B3B7ED2114} = {BC3EFE27-9015-4C9C-AD3C-72B3B7ED2114}
6 EndProjectSection
7 EndProject
8 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libfaad", "..\..\libfaad\libfaad.vcproj", "{BC3EFE27-9015-4C9C-AD3C-72B3B7ED2114}"
9 EndProject
10 Global
11 GlobalSection(SolutionConfigurationPlatforms) = preSolution
12 Debug|Win32 = Debug|Win32
13 Release|Win32 = Release|Win32
14 EndGlobalSection
15 GlobalSection(ProjectConfigurationPlatforms) = postSolution
16 {71955EB0-4F77-462B-A844-2BA56E74B87E}.Debug|Win32.ActiveCfg = Debug|Win32
17 {71955EB0-4F77-462B-A844-2BA56E74B87E}.Debug|Win32.Build.0 = Debug|Win32
18 {71955EB0-4F77-462B-A844-2BA56E74B87E}.Release|Win32.ActiveCfg = Release|Win32
19 {71955EB0-4F77-462B-A844-2BA56E74B87E}.Release|Win32.Build.0 = Release|Win32
20 {BC3EFE27-9015-4C9C-AD3C-72B3B7ED2114}.Debug|Win32.ActiveCfg = Debug|Win32
21 {BC3EFE27-9015-4C9C-AD3C-72B3B7ED2114}.Debug|Win32.Build.0 = Debug|Win32
22 {BC3EFE27-9015-4C9C-AD3C-72B3B7ED2114}.Release|Win32.ActiveCfg = Release|Win32
23 {BC3EFE27-9015-4C9C-AD3C-72B3B7ED2114}.Release|Win32.Build.0 = Release|Win32
24 EndGlobalSection
25 GlobalSection(SolutionProperties) = preSolution
26 HideSolutionNode = FALSE
27 EndGlobalSection
28 EndGlobal
+0
-348
plugins/QCD/QCDFAAD.vcproj less more
0 <?xml version="1.0" encoding="Windows-1252"?>
1 <VisualStudioProject
2 ProjectType="Visual C++"
3 Version="8.00"
4 Name="QCDFAAD"
5 ProjectGUID="{71955EB0-4F77-462B-A844-2BA56E74B87E}"
6 >
7 <Platforms>
8 <Platform
9 Name="Win32"
10 />
11 </Platforms>
12 <ToolFiles>
13 </ToolFiles>
14 <Configurations>
15 <Configuration
16 Name="Debug|Win32"
17 OutputDirectory=".\Debug"
18 IntermediateDirectory=".\Debug"
19 ConfigurationType="2"
20 InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"
21 UseOfMFC="0"
22 ATLMinimizesCRunTimeLibraryUsage="false"
23 >
24 <Tool
25 Name="VCPreBuildEventTool"
26 />
27 <Tool
28 Name="VCCustomBuildTool"
29 />
30 <Tool
31 Name="VCXMLDataGeneratorTool"
32 />
33 <Tool
34 Name="VCWebServiceProxyGeneratorTool"
35 />
36 <Tool
37 Name="VCMIDLTool"
38 PreprocessorDefinitions="_DEBUG"
39 MkTypLibCompatible="true"
40 SuppressStartupBanner="true"
41 TargetEnvironment="1"
42 TypeLibraryName=".\Debug/QCDFAAD.tlb"
43 HeaderFileName=""
44 />
45 <Tool
46 Name="VCCLCompilerTool"
47 Optimization="0"
48 AdditionalIncludeDirectories="..\..\include,..\..\common\faad,..\..\plugins\winamp,..\..\common\id3lib\include"
49 PreprocessorDefinitions="_DEBUG;WIN32;_WINDOWS;ID3LIB_COMPILATION"
50 MinimalRebuild="true"
51 BasicRuntimeChecks="3"
52 RuntimeLibrary="3"
53 PrecompiledHeaderFile=".\Debug/QCDFAAD.pch"
54 AssemblerListingLocation=".\Debug/"
55 ObjectFile=".\Debug/"
56 ProgramDataBaseFileName=".\Debug/"
57 BrowseInformation="1"
58 WarningLevel="3"
59 SuppressStartupBanner="true"
60 DebugInformationFormat="4"
61 />
62 <Tool
63 Name="VCManagedResourceCompilerTool"
64 />
65 <Tool
66 Name="VCResourceCompilerTool"
67 PreprocessorDefinitions="_DEBUG"
68 Culture="1043"
69 />
70 <Tool
71 Name="VCPreLinkEventTool"
72 />
73 <Tool
74 Name="VCLinkerTool"
75 AdditionalDependencies="ws2_32.lib odbc32.lib odbccp32.lib"
76 OutputFile=".\Debug/QCDFAAD.dll"
77 LinkIncremental="2"
78 SuppressStartupBanner="true"
79 GenerateDebugInformation="true"
80 ProgramDatabaseFile=".\Debug/QCDFAAD.pdb"
81 SubSystem="2"
82 ImportLibrary=".\Debug/QCDFAAD.lib"
83 TargetMachine="1"
84 />
85 <Tool
86 Name="VCALinkTool"
87 />
88 <Tool
89 Name="VCManifestTool"
90 />
91 <Tool
92 Name="VCXDCMakeTool"
93 />
94 <Tool
95 Name="VCBscMakeTool"
96 SuppressStartupBanner="true"
97 OutputFile=".\Debug/QCDFAAD.bsc"
98 />
99 <Tool
100 Name="VCFxCopTool"
101 />
102 <Tool
103 Name="VCAppVerifierTool"
104 />
105 <Tool
106 Name="VCWebDeploymentTool"
107 />
108 <Tool
109 Name="VCPostBuildEventTool"
110 />
111 </Configuration>
112 <Configuration
113 Name="Release|Win32"
114 OutputDirectory=".\Release"
115 IntermediateDirectory=".\Release"
116 ConfigurationType="2"
117 InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC60.vsprops"
118 UseOfMFC="0"
119 ATLMinimizesCRunTimeLibraryUsage="false"
120 >
121 <Tool
122 Name="VCPreBuildEventTool"
123 />
124 <Tool
125 Name="VCCustomBuildTool"
126 />
127 <Tool
128 Name="VCXMLDataGeneratorTool"
129 />
130 <Tool
131 Name="VCWebServiceProxyGeneratorTool"
132 />
133 <Tool
134 Name="VCMIDLTool"
135 PreprocessorDefinitions="NDEBUG"
136 MkTypLibCompatible="true"
137 SuppressStartupBanner="true"
138 TargetEnvironment="1"
139 TypeLibraryName=".\Release/QCDFAAD.tlb"
140 HeaderFileName=""
141 />
142 <Tool
143 Name="VCCLCompilerTool"
144 Optimization="2"
145 InlineFunctionExpansion="1"
146 AdditionalIncludeDirectories="..\..\include,..\..\common\faad,..\..\plugins\winamp,..\..\common\id3lib\include"
147 PreprocessorDefinitions="NDEBUG;WIN32;_WINDOWS;ID3LIB_COMPILATION"
148 StringPooling="true"
149 RuntimeLibrary="2"
150 EnableFunctionLevelLinking="true"
151 PrecompiledHeaderFile=".\Release/QCDFAAD.pch"
152 AssemblerListingLocation=".\Release/"
153 ObjectFile=".\Release/"
154 ProgramDataBaseFileName=".\Release/"
155 WarningLevel="3"
156 SuppressStartupBanner="true"
157 />
158 <Tool
159 Name="VCManagedResourceCompilerTool"
160 />
161 <Tool
162 Name="VCResourceCompilerTool"
163 PreprocessorDefinitions="NDEBUG"
164 Culture="1043"
165 />
166 <Tool
167 Name="VCPreLinkEventTool"
168 />
169 <Tool
170 Name="VCLinkerTool"
171 AdditionalDependencies="ws2_32.lib odbc32.lib odbccp32.lib"
172 OutputFile=".\Release/QCDFAAD.dll"
173 LinkIncremental="1"
174 SuppressStartupBanner="true"
175 ProgramDatabaseFile=".\Release/QCDFAAD.pdb"
176 SubSystem="2"
177 ImportLibrary=".\Release/QCDFAAD.lib"
178 TargetMachine="1"
179 />
180 <Tool
181 Name="VCALinkTool"
182 />
183 <Tool
184 Name="VCManifestTool"
185 />
186 <Tool
187 Name="VCXDCMakeTool"
188 />
189 <Tool
190 Name="VCBscMakeTool"
191 SuppressStartupBanner="true"
192 OutputFile=".\Release/QCDFAAD.bsc"
193 />
194 <Tool
195 Name="VCFxCopTool"
196 />
197 <Tool
198 Name="VCAppVerifierTool"
199 />
200 <Tool
201 Name="VCWebDeploymentTool"
202 />
203 <Tool
204 Name="VCPostBuildEventTool"
205 />
206 </Configuration>
207 </Configurations>
208 <References>
209 </References>
210 <Files>
211 <Filter
212 Name="Source Files"
213 Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
214 >
215 <File
216 RelativePath="..\..\common\faad\aacinfo.c"
217 >
218 <FileConfiguration
219 Name="Debug|Win32"
220 >
221 <Tool
222 Name="VCCLCompilerTool"
223 AdditionalIncludeDirectories=""
224 PreprocessorDefinitions=""
225 />
226 </FileConfiguration>
227 <FileConfiguration
228 Name="Release|Win32"
229 >
230 <Tool
231 Name="VCCLCompilerTool"
232 AdditionalIncludeDirectories=""
233 PreprocessorDefinitions=""
234 />
235 </FileConfiguration>
236 </File>
237 <File
238 RelativePath="..\..\common\faad\filestream.c"
239 >
240 <FileConfiguration
241 Name="Debug|Win32"
242 >
243 <Tool
244 Name="VCCLCompilerTool"
245 AdditionalIncludeDirectories=""
246 PreprocessorDefinitions=""
247 />
248 </FileConfiguration>
249 <FileConfiguration
250 Name="Release|Win32"
251 >
252 <Tool
253 Name="VCCLCompilerTool"
254 AdditionalIncludeDirectories=""
255 PreprocessorDefinitions=""
256 />
257 </FileConfiguration>
258 </File>
259 <File
260 RelativePath="QCDFAAD.c"
261 >
262 <FileConfiguration
263 Name="Debug|Win32"
264 >
265 <Tool
266 Name="VCCLCompilerTool"
267 AdditionalIncludeDirectories=""
268 PreprocessorDefinitions=""
269 />
270 </FileConfiguration>
271 <FileConfiguration
272 Name="Release|Win32"
273 >
274 <Tool
275 Name="VCCLCompilerTool"
276 AdditionalIncludeDirectories=""
277 PreprocessorDefinitions=""
278 />
279 </FileConfiguration>
280 </File>
281 </Filter>
282 <Filter
283 Name="Header Files"
284 Filter="h;hpp;hxx;hm;inl"
285 >
286 <File
287 RelativePath="..\..\common\faad\aacinfo.h"
288 >
289 </File>
290 <File
291 RelativePath="..\..\include\faad.h"
292 >
293 </File>
294 <File
295 RelativePath="..\..\common\faad\filestream.h"
296 >
297 </File>
298 <File
299 RelativePath="QCDInputDLL.h"
300 >
301 </File>
302 <File
303 RelativePath="QCDModDefs.h"
304 >
305 </File>
306 <File
307 RelativePath="QCDModInput.h"
308 >
309 </File>
310 </Filter>
311 <Filter
312 Name="Resource Files"
313 Filter="ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
314 >
315 <File
316 RelativePath="hand.cur"
317 >
318 </File>
319 <File
320 RelativePath="logo.bmp"
321 >
322 </File>
323 <File
324 RelativePath="plugin_dlg.rc"
325 >
326 <FileConfiguration
327 Name="Debug|Win32"
328 >
329 <Tool
330 Name="VCResourceCompilerTool"
331 PreprocessorDefinitions=""
332 />
333 </FileConfiguration>
334 <FileConfiguration
335 Name="Release|Win32"
336 >
337 <Tool
338 Name="VCResourceCompilerTool"
339 PreprocessorDefinitions=""
340 />
341 </FileConfiguration>
342 </File>
343 </Filter>
344 </Files>
345 <Globals>
346 </Globals>
347 </VisualStudioProject>
+0
-50
plugins/QCD/QCDInputDLL.h less more
0 //-----------------------------------------------------------------------------
1 //
2 // File: QCDInputDLL.h
3 //
4 // About: QCD Player Input module DLL interface. For more documentation, see
5 // QCDModInput.h.
6 //
7 // Authors: Written by Paul Quinn and Richard Carlson.
8 //
9 // QCD multimedia player application Software Development Kit Release 1.0.
10 //
11 // Copyright (C) 1997-2002 Quinnware
12 //
13 // This code is free. If you redistribute it in any form, leave this notice
14 // here.
15 //
16 // This program is distributed in the hope that it will be useful,
17 // but WITHOUT ANY WARRANTY; without even the implied warranty of
18 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
19 //
20 //-----------------------------------------------------------------------------
21
22 #ifndef QCDInputDLL_H
23 #define QCDInputDLL_H
24
25 #include "QCDModInput.h"
26
27 extern HINSTANCE hInstance;
28 extern HWND hwndPlayer;
29 extern QCDModInitIn sQCDCallbacks, *QCDCallbacks;
30
31 // Calls from the Player
32 int GetMediaSupported(const char* medianame, MediaInfo *mediaInfo);
33 int GetTrackExtents(const char* medianame, TrackExtents *ext, int flags);
34 int GetCurrentPosition(const char* medianame, long *track, long *offset);
35
36 void SetEQ(EQInfo*);
37 void SetVolume(int levelleft, int levelright, int flags);
38
39 int Play(const char* medianame, int framefrom, int frameto, int flags);
40 int Pause(const char* medianame, int flags);
41 int Stop(const char* medianame, int flags);
42 int Eject(const char* medianame, int flags);
43
44 int Initialize(QCDModInfo *ModInfo, int flags);
45 void ShutDown(int flags);
46 void Configure(int flags);
47 void About(int flags);
48
49 #endif //QCDInputDLL_H
+0
-340
plugins/QCD/QCDModDefs.h less more
0 //-----------------------------------------------------------------------------
1 //
2 // File: QCDModDefs.h
3 //
4 // About: Module definitions file. Miscellanious definitions used by different
5 // module types. This file is published with the plugin SDKs.
6 //
7 // Authors: Written by Paul Quinn and Richard Carlson.
8 //
9 // Copyright:
10 //
11 // QCD multimedia player application Software Development Kit Release 1.0.
12 //
13 // Copyright (C) 1997-2002 Quinnware
14 //
15 // This code is free. If you redistribute it in any form, leave this notice
16 // here.
17 //
18 // This program is distributed in the hope that it will be useful,
19 // but WITHOUT ANY WARRANTY; without even the implied warranty of
20 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
21 //
22 //-----------------------------------------------------------------------------
23
24 #ifndef QCDMODDEFS_H
25 #define QCDMODDEFS_H
26
27 #include <windows.h>
28
29 #ifdef __cplusplus
30 #define PLUGIN_API extern "C" __declspec(dllexport)
31 #else
32 #define PLUGIN_API __declspec(dllexport)
33 #endif
34
35 // Current plugin version
36 #define PLUGIN_API_VERSION 250
37
38 //-----------------------------------------------------------------------------
39
40 typedef struct {
41 char *moduleString;
42 char *moduleExtensions;
43
44 } QCDModInfo;
45
46 //-----------------------------------------------------------------------------
47 // Services (ops) provided by the Player
48 //-----------------------------------------------------------------------------
49 typedef enum
50 { //*** below returns numeric info (*buffer not used)
51
52 opGetPlayerVersion = 0, // high-order word = major version (eg 3.01 is 3), low-order word = minor (eg 3.01 = 1)
53 opGetParentWnd = 1, // handle to player window
54 opGetPlayerInstance = 2, // HINSTANCE to player executable
55
56 opGetPlayerState = 9, // get current state of the player (returns: 1 = stopped, 2 = playing, 3 = paused, 0 = failed)
57 opGetNumTracks = 10, // number of tracks in playlist
58 opGetCurrentIndex = 11, // index of current track in playlist (0 based)
59 opGetNextIndex = 12, // get index of next track to play (0 based), param1 = index start index. -1 for after current
60 opGetTrackNum = 13, // get track number of index, param1 = index of track in playlist, -1 for current
61 // - 'track number' is the number of the track in it's respective album, as opposed to playlist number
62 // - the 'track number' for digital files will be 1, unless they are tagged with the CDDB identifier
63
64 opGetTrackLength = 14, // get track length, param1 = index of track in playlist, -1 for current
65 // param2 = 0 for seconds, 1 for milliseconds
66 opGetTime = 15, // get time on player, param1 = 0 for time displayed, 1 for track time, 2 for playlist time
67 // param2 = 0 for elapsed, 1 for remaining
68 opGetTrackState = 16, // get whether track is marked, param1 = index of track, -1 for current
69 opGetPlaylistNum = 17, // get playlist number of index, param1 = index of track in playlist, -1 for current
70 opGetMediaType = 18, // get media type of track, param1 = index if track in playlist, -1 for current
71 // - see MediaTypes below for return values
72
73 opGetAudioInfo = 19, // get format info about currently playing track
74 // - param1 = 0 for samplerate, 1 for bitrate, 2 for num channels
75
76 opGetOffline = 20, // true if client is in Offline Mode
77 opGetVisTarget = 21, // where is vis being drawn > 0 - internal to skin, 1 - external window, 2 - full screen
78 opGetAlwaysOnTop = 22, // true if player is set to 'Always on Top'
79 opGetRepeatState = 23, // returns: 0 - repeat off, 1 - repeat track, 2 - repeat all
80 opGetShuffleState = 27, // returns: 0 - shuffle off, 1 - shuffle enabled
81
82 opGetTimerState = 24, // low-order word: 0 - track ascend, 1 - playlist ascend, 2 - track descend, 3 - playlist descend
83 // hi-order word: 1 if 'show hours' is set, else 0
84
85 opGetVolume = 25, // get master volume level (0 - 100), param1: 0 = combined, 1 = left, 2 = right
86 opSetVolume = 26, // set master volume level, param1: vol level 0 - 100, param2: balance (-100 left, 0 center, 100 right)
87
88 opGetIndexFromPLNum = 28, // get index from playlist number, param1 = playlist number
89
90 opGetChildWnd = 30, // handle to the draggable window extension (only available on some skins)
91 opGetExtVisWnd = 31, // handle to the external visual window
92 opGetMusicBrowserWnd = 32, // handle to the music browser window
93 opGetSkinPreviewWnd = 33, // handle to the skin preview window
94 opGetPropertiesWnd = 34, // handle to the player properties window
95 opGetExtInfoWnd = 35, // handle to the extended information window
96 opGetAboutWnd = 36, // handle to the about window
97 opGetSegmentsWnd = 37, // handle to the segments window
98 opGetEQPresetsWnd = 38, // handle to the EQ presets window
99
100 opGetVisDimensions = 50, // gets the width and height of visual window (param1 = -1 current vis window, 0 internal vis, 1 external vis, 2 full screen)
101 // returns: HEIGHT in high word, WIDTH in low word
102
103 opGetQueriesComplete = 60, // get status on whether all tracks in playlist have been queryied for their info
104
105 // playlist manipulation
106 opDeleteIndex = 90, // delete index from playlist (param1 = index)
107 opSelectIndex = 91, // mark index as selected (param1 = index, param2 = 1 - set, 0 - unset)
108 opBlockIndex = 92, // mark index as blocked (param1 = index, param2 = 1 - set, 0 - unset)
109
110 opGetMediaInfo = 99, // get the CddbDisc object for the index specified, param1 = index of track, -1 for current
111 // param2 = pointer to integer that receives track value
112 // returns: pointer to CddbDisc object. Do not release or deallocate this pointer
113
114
115 //*** below returns string info in buffer, param1 = size of buffer
116 //*** returns 1 on success, 0 on failure
117
118 opGetTrackName = 100, // get track name, param2 = index of track in playlist, -1 for current
119 opGetArtistName = 101, // get artist name, param2 = index of track in playlist, -1 for current
120 opGetDiscName = 102, // get disc name, param2 = index of track in playlist, -1 for current
121
122 opGetTrackFile = 103, // file name of track in playlist, param2 = index of track in playlist, -1 for current
123 opGetSkinName = 104, // get current skin name
124
125 opGetPluginFolder = 105, // get current plugin folder
126 opGetPluginSettingsFile = 106, // get settings file (plugins.ini) that plugin should save settings to
127 opGetPluginCacheFile = 107, // get file that describes plugin validity, functions and names
128 opGetPlayerSettingsFile = 108, // get settings file (qcd.ini) that player saves it settings to (should use for read-only)
129
130 opGetMusicFolder = 110, // get current music folder
131 opGetPlaylistFolder = 111, // get current playlist folder
132 opGetSkinFolder = 112, // get current skin folder
133 opGetCDDBCacheFolder = 113, // get current folder for CDDB cached info
134
135 opGetCurrentPlaylist = 114, // get full pathname of playlist currently loaded
136
137 opGetMediaID = 115, // get media identifier, param2 = index of track in playlist, -1 for current
138 // - for CD's it's the TOC - for anything else, right now it's 0
139
140 opGetSupportedExtensions = 116, // get file extensions supported by the player, param2 = 0 - get all extensions, 1 - get registered extensions
141 // - returned extensions will be colon delimited
142
143
144 //*** below buffer points to struct or other object
145 //*** returns 1 on success, 0 on failure
146
147 opShowMainMenu = 120, // Display Main QCD Menu (buffer = POINT* - location to display menu)
148 opGetMainMenu = 121, // Returns copy of HMENU handle to QCD Menu (must use DestroyMenu on handle when complete)
149
150 opShowQuickTrack = 125, // Display QuickTrack Menu (buffer = POINT* - location to display menu)
151
152 opGetEQVals = 200, // get current EQ levels/on/off (buffer = EQInfo*)
153 opSetEQVals = 201, // set EQ levels/on/off (buffer = EQInfo*)
154
155 opGetProxyInfo = 202, // get proxy info (buffer = ProxyInfo*), returns 0 if proxy not in use
156
157
158 //*** below returns numeric info, buffer used
159
160 opGetIndexFromFilename = 210, // get the index of a file that exists in current playlist (buffer = full path of file),
161 // param1 = startindex (index to start searching on)
162 // returns -1 if file not in playlist
163
164
165 //*** below send information to player
166 //*** returns 1 on success, 0 on failure
167
168 opSetStatusMessage = 1000, // display message in status area (buffer = msg buffer (null term), param1 = text flags (see below))
169
170 opSetBrowserUrl = 1001, // set music browser URL (buffer = url (null term))
171 // null url buffer - closes browser
172 // param1 = 0 - normal, 1 - force open
173
174 opSetAudioInfo = 1002, // set the current music bitrate/khz (buffer = AudioInfo*, param1 = size of AudioInfo)
175
176 opSetTrackAlbum = 1003, // update track ablum name (buffer = album (null term), param1 = (string ptr)file name), param2 = MediaTypes
177 opSetTrackTitle = 1004, // update track title (buffer = title (null term), param1 = (string ptr)file name), param2 = MediaTypes
178 opSetTrackArtist = 1005, // update track artist name (buffer = artist (null term), param1 = (string ptr)file name), param2 = MediaTypes
179
180 opSetPlaylist = 1006, // add files to or reset playlist with new files (buffer = file list (null term), param1 = (string ptr)originating path (can be NULL), param2 = 1 - clear playlist flag, 2 - enqueue to top
181
182 opSetTrackExtents = 1007, // update track TrackExtents info (buffer = &TrackExtents), param1 = (string ptr)file name)
183 opSetTrackSeekable = 1008, // update track seekable flag (buffer = (string ptr)file name), param1 = TRUE/FALSE
184 opSetPlayNext = 1009, // set the next index to be played (buffer = NULL, param1 = index, index = -1 unsets playnext)
185 opSetIndexFilename = 1010, // updates the filename (or stream) that an index in the current playlist refers to, buffer = new filename, param1 = index
186
187 opSetSeekPosition = 1100, // seek to position during playback (buffer = NULL, param1 = position, param2 = 0 - position is in seconds, 1 - position is in milliseconds, 2 - position is in percent (use (float)param1))
188
189
190 //*** below configures custom plugin menu items for the 'plugin menu'
191 //*** Player will call plugin's configure routine with menu value when menu item selected
192 //*** returns 1 on success, 0 on failure
193
194 opSetPluginMenuItem = 2000, // buffer = HINSTANCE of plugin, param1 = item id, param2 = (string ptr)string to display
195 // - set param2 = 0 to remove item id from menu
196 // - set param1 = 0 and param2 = 0 to remove whole menu
197 opSetPluginMenuState = 2001, // buffer = HINSTANCE of plugin, param1 = item id, param2 = menu flags (same as windows menu flags - eg: MF_CHECKED)
198
199
200 //*** other services
201
202 opSafeWait = 10000 // plugin's can use this to wait on an object without worrying about deadlocking the player.
203 // this should only be called by the thread that enters the plugin, not by any plugin-created threads
204
205 } PluginServiceOp;
206
207 //-----------------------------------------------------------------------------
208 // Info services api provided by the Player, called by Plugin.
209 //-----------------------------------------------------------------------------
210 typedef long (*PluginServiceFunc)(PluginServiceOp op, void *buffer, long param1, long param2);
211
212
213 //-----------------------------------------------------------------------------
214 typedef struct // for Output Plugin Write callback
215 {
216 void *data; // pointer to valid data
217 int bytelen; // length of data pointed to by 'data' in bytes
218 UINT numsamples; // number of samples represented by 'data'
219 UINT bps; // bits per sample
220 UINT nch; // number of channels
221 UINT srate; // sample rate
222
223 UINT markerstart; // Marker position at start of data (marker is time value of data)
224 // (set to WAVE_VIS_DATA_ONLY to not have data sent to output plugins)
225 UINT markerend; // Marker position at end of data (not currently used, set to 0)
226 } WriteDataStruct;
227
228 //-----------------------------------------------------------------------------
229 typedef struct // for GetTrackExtents Input Plugin callback
230 {
231 UINT track; // for CD's, set the track number. Otherwise set to 1.
232 UINT start; // for CD's or media that doesn't start at the beginning
233 // of the file, set to start position. Otherwise set to 0.
234 UINT end; // set to end position of media.
235 UINT unitpersec; // whatever units are being used for this media, how many
236 // of them per second.
237 // (Note: ((end - start) / unitpersecond) = file length
238 UINT bytesize; // size of file in bytes (if applicable, otherwise 0).
239 } TrackExtents;
240
241 //-----------------------------------------------------------------------------
242 typedef struct // for opSetAudioInfo service
243 {
244 long struct_size; // sizeof(AudioInfo)
245 long level; // MPEG level (1 for MPEG1, 2 for MPEG2, 3 for MPEG2.5, 7 for MPEGpro)
246 long layer; // and layer (1, 2 or 3)
247 long bitrate; // audio bitrate in bits per second
248 long frequency; // audio freq in Hz
249 long mode; // 0 for stereo, 1 for joint-stereo, 2 for dual-channel, 3 for mono, 4 for multi-channel
250 } AudioInfo;
251
252 //-----------------------------------------------------------------------------
253 // Equalizer Info
254 //-----------------------------------------------------------------------------
255 typedef struct // for coming QCD version
256 {
257 long struct_size; // sizeof(EQInfo)
258 char enabled;
259 char preamp; // -128 to 127, 0 is even
260 char bands[10]; // -128 to 127, 0 is even
261 } EQInfo;
262
263 //-----------------------------------------------------------------------------
264 typedef struct
265 {
266 long struct_size; // sizeof(ProxyInfo)
267 char hostname[200];
268 long port;
269 char username[100];
270 char password[100];
271 } ProxyInfo;
272
273 //-----------------------------------------------------------------------------
274 typedef enum // for MediaInfo.mediaType
275 {
276 UNKNOWN_MEDIA = 0,
277 CD_AUDIO_MEDIA = 1,
278 DIGITAL_FILE_MEDIA = 2,
279 DIGITAL_STREAM_MEDIA = 3
280 } MediaTypes;
281
282 //-----------------------------------------------------------------------------
283 #define MAX_TOC_LEN 2048
284 typedef struct
285 {
286 // media descriptors
287 CHAR mediaFile[MAX_PATH];
288 MediaTypes mediaType;
289
290 // cd audio media info
291 CHAR cd_mediaTOC[MAX_TOC_LEN];
292 int cd_numTracks;
293 int cd_hasAudio;
294
295 // operation info
296 int op_canSeek;
297
298 // not used
299 int reserved[4];
300
301 } MediaInfo;
302
303
304 //-----------------------------------------------------------------------------
305 // When subclassing the parent window, a plugin can watch for these messages
306 // to react to events going on between plugins and player
307 // DO NOT SEND THESE MESSAGES - can only watch for them
308
309 // Plugin to Player Notifiers
310 #define WM_PN_POSITIONUPDATE (WM_USER + 100) // playback progress updated
311 #define WM_PN_PLAYSTARTED (WM_USER + 101) // playback has started
312 #define WM_PN_PLAYSTOPPED (WM_USER + 102) // playback has stopped by user
313 #define WM_PN_PLAYPAUSED (WM_USER + 103) // playback has been paused
314 #define WM_PN_PLAYDONE (WM_USER + 104) // playback has finished (track completed)
315 #define WM_PN_MEDIAEJECTED (WM_USER + 105) // a CD was ejected (lParam = (LPCSTR)medianame)
316 #define WM_PN_MEDIAINSERTED (WM_USER + 106) // a CD was inserted (lParam = (LPCSTR)medianame)
317 #define WM_PN_INFOCHANGED (WM_USER + 107) // track information was updated (lParam = (LPCSTR)medianame)
318 #define WM_PN_TRACKCHANGED (WM_USER + 109) // current track playing has changed (relevant from CD plugin) (lParam = (LPCSTR)medianame)
319
320 // Player to Plugin Notifiers
321 #define WM_PN_PLAYLISTCHANGED (WM_USER + 200) // playlist has changed in some way (add, delete, sort, shuffle, drag-n-drop, etc...)
322
323 // For intercepting main menu display
324 // (so you can get handle, modify, and display your own)
325 #define WM_SHOWMAINMENU (WM_USER + 20)
326
327 //-----------------------------------------------------------------------------
328 // To shutdown player, send this command
329 #define WM_SHUTDOWN (WM_USER + 5)
330
331 //-----------------------------------------------------------------------------
332 // opSetStatusMessage textflags
333 #define TEXT_DEFAULT 0x0 // message scrolls by in status window
334 #define TEXT_TOOLTIP 0x1 // message acts as tooltip in status window
335 #define TEXT_URGENT 0x2 // forces message to appear even if no status window (using msg box)
336 #define TEXT_HOLD 0x4 // tooltip message stays up (no fade out)
337
338
339 #endif //QCDMODDEFS_H
+0
-117
plugins/QCD/QCDModInput.h less more
0 //-----------------------------------------------------------------------------
1 //
2 // File: QCDModInput.h
3 //
4 // About: Input plugin module interface. This file is published with the
5 // Input plugin SDK.
6 //
7 // Authors: Written by Paul Quinn and Richard Carlson.
8 //
9 // Copyright:
10 //
11 // QCD multimedia player application Software Development Kit Release 1.0.
12 //
13 // Copyright (C) 1997-2002 Quinnware
14 //
15 // This code is free. If you redistribute it in any form, leave this notice
16 // here.
17 //
18 // This program is distributed in the hope that it will be useful,
19 // but WITHOUT ANY WARRANTY; without even the implied warranty of
20 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
21 //
22 //-----------------------------------------------------------------------------
23
24 #ifndef QCDMODINPUT_H
25 #define QCDMODINPUT_H
26
27 #include "QCDModDefs.h"
28
29 // name of the DLL export for input plugins
30 #define INPUTDLL_ENTRY_POINT QInputModule2 // (updated plugin api version 240+)
31
32 // media insert flags
33 #define MEDIAINSERT_PLAY 0x1
34 #define MEDIAINSERT_ADDTRACKS 0x2
35 #define MEDIAINSERT_ADDSEGMENTS 0x4
36 #define MEDIAINSERT_CLEARPLAYLIST 0x8
37
38 // Stop will receive one of these flags (pass to output plugin's stop())
39 #define STOPFLAG_FORCESTOP 0 // stop occuring due to user action or other event
40 #define STOPFLAG_PLAYDONE 1 // stop occuring due to playlist completion
41
42 // play flags
43 #define PLAYFLAG_PLAYBACK 0x0
44 #define PLAYFLAG_ENCODING 0x1
45 #define PLAYFLAG_SEEKING 0x2
46
47 // Wave Marker flags
48 #define WAVE_VIS_DATA_ONLY -1 // set to WaveDataStruct.markerstart in OutputWrite() call have data only go to vis
49 // and not to output plugin
50 // pause flags
51 #define PAUSE_DISABLED 0 // Pause() call is to unpause playback
52 #define PAUSE_ENABLED 1 // Pause() call is to pause playback
53
54 //-----------------------------------------------------------------------------
55 // Input Module
56 //-----------------------------------------------------------------------------
57 typedef struct
58 {
59 unsigned int size; // size of init structure
60 unsigned int version; // plugin structure version (set to PLUGIN_API_VERSION)
61 PluginServiceFunc Service; // player supplied services callback
62
63 struct
64 {
65 void (*PositionUpdate)(unsigned int position);
66 void (*PlayStopped)(const char* medianame); // notify player of play stop
67 void (*PlayStarted)(const char* medianame); // notify player of play start
68 void (*PlayPaused)(const char* medianame, int flags); // notify player of play pause
69 void (*PlayDone)(const char* medianame); // notify player when play done
70 void (*PlayTrackChanged)(const char* medianame); // notify player when playing track changes (cd audio relevant only)
71 void (*MediaEjected)(const char* medianame); // notify player of media eject (cd audio relevant)
72 void (*MediaInserted)(const char* medianame, int flags); // notify player of media insert (cd audio relevant)
73
74 // output plugin calls
75 int (*OutputOpen)(const char* medianame, WAVEFORMATEX*); // open output for wave data
76 int (*OutputWrite)(WriteDataStruct*); // send PCM audio data to output
77 // (blocks until write completes, thus if output is paused can
78 // block until unpaused)
79 int (*OutputDrain)(int flags); // wait for all output to complete (blocking)
80 int (*OutputDrainCancel)(int flags); // break a drain in progress
81 int (*OutputFlush)(unsigned int marker); // flush output upto marker
82 int (*OutputStop)(int flags); // stop output
83 int (*OutputPause)(int flags); // pause output
84
85 int (*OutputSetVol)(int levelleft, int levelright, int flags);
86 int (*OutputGetCurrentPosition)(unsigned int *position, int flags);
87
88 void *Reserved[10];
89 } toPlayer;
90
91 struct
92 {
93 int (*Initialize)(QCDModInfo *modInfo, int flags); // initialize plugin
94 void (*ShutDown)(int flags); // shutdown plugin
95
96 int (*Play)(const char* medianame, int playfrom, int playto, int flags); // start playing playfrom->playto
97 int (*Stop)(const char* medianame, int flags); // stop playing
98 int (*Pause)(const char* medianame, int flags); // pause playback
99 int (*Eject)(const char* medianame, int flags); // eject media
100 void (*SetEQ)(EQInfo*); // update EQ settings
101
102 int (*GetMediaSupported)(const char* medianame, MediaInfo *mediaInfo); // does plugin support medianame (and provides info for media)
103 int (*GetTrackExtents)(const char* medianame, TrackExtents *ext, int flags); // get media start, end & units
104 int (*GetCurrentPosition)(const char* medianame, long *track, long *offset); // get playing media's position
105
106 void (*Configure)(int flags); // launch configuration
107 void (*About)(int flags); // launch about info
108
109 void (*SetVolume)(int levelleft, int levelright, int flags); // level 0 - 100
110
111 void *Reserved[10];
112 } toModule;
113
114 } QCDModInitIn;
115
116 #endif //QCDMODINPUT_H
+0
-11
plugins/QCD/ReadMe.txt less more
0 QCDFAAD.dll input Plugin for Quintessential Player (QCD)
1 Please goto http://www.quinnware.com to download the latest version of QCD.
2
3 About Tagging music file:
4
5 Because QCD support ID3v1 & ID3v2 functions. So you can add a string -- ":AAC"
6 in the configuration dialog box of QCDcddb.dll Libarary Plugin.
7 (I think you will find it and will know how to do it,
8 otherwise you can visite the message forum on the web site.)
9
10 Have a good time:)
plugins/QCD/logo.bmp less more
Binary diff not shown
+0
-141
plugins/QCD/plugin_dlg.rc less more
0 //Microsoft Developer Studio generated resource script.
1 //
2 #include "resource.h"
3
4 #define APSTUDIO_READONLY_SYMBOLS
5 /////////////////////////////////////////////////////////////////////////////
6 //
7 // Generated from the TEXTINCLUDE 2 resource.
8 //
9 #include "afxres.h"
10
11 /////////////////////////////////////////////////////////////////////////////
12 #undef APSTUDIO_READONLY_SYMBOLS
13
14 /////////////////////////////////////////////////////////////////////////////
15 // English (U.S.) resources
16
17 #if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU)
18 #ifdef _WIN32
19 LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US
20 #pragma code_page(1252)
21 #endif //_WIN32
22
23 #ifdef APSTUDIO_INVOKED
24 /////////////////////////////////////////////////////////////////////////////
25 //
26 // TEXTINCLUDE
27 //
28
29 1 TEXTINCLUDE DISCARDABLE
30 BEGIN
31 "resource.h\0"
32 END
33
34 2 TEXTINCLUDE DISCARDABLE
35 BEGIN
36 "#include ""afxres.h""\r\n"
37 "\0"
38 END
39
40 3 TEXTINCLUDE DISCARDABLE
41 BEGIN
42 "\r\n"
43 "\0"
44 END
45
46 #endif // APSTUDIO_INVOKED
47
48
49 /////////////////////////////////////////////////////////////////////////////
50 //
51 // Dialog
52 //
53
54 IDD_CONFIG DIALOGEX 0, 0, 179, 133
55 STYLE WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
56 CAPTION "FAAC Decoder Configuration"
57 FONT 8, "MS Sans Serif", 0, 0, 0x1
58 BEGIN
59 CONTROL "Enable variable bitrate display",VARBITRATE_CHK,"Button",
60 BS_AUTOCHECKBOX | WS_TABSTOP,7,7,140,10
61 EDITTEXT STREAM_BUFFER_TXT,87,21,21,12,ES_AUTOHSCROLL | ES_NUMBER
62 EDITTEXT LOCAL_BUFFER_TXT,87,38,21,12,ES_AUTOHSCROLL | ES_NUMBER
63 CONTROL "Buffer entire files into memory",IDC_MEMMAP,"Button",
64 BS_AUTOCHECKBOX | WS_TABSTOP,7,60,140,10
65 CONTROL "Slider1",THREAD_PRIORITY_SLIDER,"msctls_trackbar32",
66 TBS_AUTOTICKS | WS_TABSTOP,7,89,165,11,WS_EX_TRANSPARENT
67 PUSHBUTTON "OK",OK_BTN,64,112,50,14
68 PUSHBUTTON "Cancel",CANCEL_BTN,121,112,50,14
69 LTEXT "HTTP stream buffer:",IDC_STATIC,7,22,77,8
70 LTEXT "Decode Thread Priority: Highest (default)",IDC_STATIC2,
71 7,78,165,8
72 LTEXT "Local file buffer: ",IDC_STATIC,7,40,77,8
73 PUSHBUTTON "Reset",RESET_BTN,7,112,50,14
74 END
75
76 IDD_ABOUT DIALOG DISCARDABLE 0, 0, 191, 168
77 STYLE DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU
78 CAPTION "About FAAD Plug-in"
79 FONT 8, "MS Sans Serif"
80 BEGIN
81 DEFPUSHBUTTON "OK",IDOK,70,147,50,14
82 CTEXT "",IDC_PLUGINVER,29,73,133,16
83 CTEXT "",IDC_FAADVER,40,123,111,8
84 LTEXT "QCD Input Plug-in by",IDC_STATIC,62,97,67,8
85 CONTROL 107,IDC_LOGO,"Static",SS_BITMAP | SS_CENTERIMAGE |
86 SS_REALSIZEIMAGE,7,0,177,68
87 LTEXT "Shao Hao",IDC_MAIL1,79,111,33,8
88 LTEXT "M. Bakker",IDC_MAIL3,59,134,34,8
89 LTEXT "menno",IDC_MAIL2,109,134,22,8
90 LTEXT "&&",IDC_STATIC,97,134,8,8
91 END
92
93
94 /////////////////////////////////////////////////////////////////////////////
95 //
96 // DESIGNINFO
97 //
98
99 #ifdef APSTUDIO_INVOKED
100 GUIDELINES DESIGNINFO DISCARDABLE
101 BEGIN
102 IDD_CONFIG, DIALOG
103 BEGIN
104 LEFTMARGIN, 7
105 RIGHTMARGIN, 172
106 TOPMARGIN, 7
107 BOTTOMMARGIN, 126
108 END
109
110 IDD_ABOUT, DIALOG
111 BEGIN
112 LEFTMARGIN, 7
113 RIGHTMARGIN, 184
114 BOTTOMMARGIN, 161
115 END
116 END
117 #endif // APSTUDIO_INVOKED
118
119
120 /////////////////////////////////////////////////////////////////////////////
121 //
122 // Bitmap
123 //
124
125 IDB_LOGO BITMAP DISCARDABLE "logo.bmp"
126 #endif // English (U.S.) resources
127 /////////////////////////////////////////////////////////////////////////////
128
129
130
131 #ifndef APSTUDIO_INVOKED
132 /////////////////////////////////////////////////////////////////////////////
133 //
134 // Generated from the TEXTINCLUDE 3 resource.
135 //
136
137
138 /////////////////////////////////////////////////////////////////////////////
139 #endif // not APSTUDIO_INVOKED
140
+0
-33
plugins/QCD/resource.h less more
0 //{{NO_DEPENDENCIES}}
1 // Microsoft Developer Studio generated include file.
2 // Used by plugin_dlg.rc
3 //
4 #define IDD_CONFIG 101
5 #define IDD_ABOUT 106
6 #define IDB_LOGO 107
7 #define VARBITRATE_CHK 1004
8 #define THREAD_PRIORITY_SLIDER 1007
9 #define IDC_STATIC2 1034
10 #define LOCAL_BUFFER_TXT 1035
11 #define STREAM_BUFFER_TXT 1036
12 #define IDC_MEMMAP 1037
13 #define OK_BTN 1038
14 #define CANCEL_BTN 1039
15 #define RESET_BTN 1047
16 #define IDC_LOGO 1048
17 #define IDC_PLUGINVER 1050
18 #define IDC_FAADVER 1051
19 #define IDC_MAIL1 1052
20 #define IDC_MAIL2 1053
21 #define IDC_MAIL3 1054
22
23 // Next default values for new objects
24 //
25 #ifdef APSTUDIO_INVOKED
26 #ifndef APSTUDIO_READONLY_SYMBOLS
27 #define _APS_NEXT_RESOURCE_VALUE 109
28 #define _APS_NEXT_COMMAND_VALUE 40001
29 #define _APS_NEXT_CONTROL_VALUE 1055
30 #define _APS_NEXT_SYMED_VALUE 101
31 #endif
32 #endif
+0
-46
plugins/QCDMp4/QCDInputDLL.h less more
0 //-----------------------------------------------------------------------------
1 //
2 // File: QCDInputDLL.h
3 //
4 // About: QCD Player Input module DLL interface. For more documentation, see
5 // QCDModInput.h.
6 //
7 // Authors: Written by Paul Quinn and Richard Carlson.
8 //
9 // QCD multimedia player application Software Development Kit Release 1.0.
10 //
11 // Copyright (C) 1997-2002 Quinnware
12 //
13 // This code is free. If you redistribute it in any form, leave this notice
14 // here.
15 //
16 // This program is distributed in the hope that it will be useful,
17 // but WITHOUT ANY WARRANTY; without even the implied warranty of
18 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
19 //
20 //-----------------------------------------------------------------------------
21
22 #ifndef QCDInputDLL_H
23 #define QCDInputDLL_H
24
25 #include "QCDModInput.h"
26
27 // Calls from the Player
28 int GetMediaSupported(const char* medianame, MediaInfo *mediaInfo);
29 int GetTrackExtents(const char* medianame, TrackExtents *ext, int flags);
30 int GetCurrentPosition(const char* medianame, long *track, long *offset);
31
32 void SetEQ(EQInfo*);
33 void SetVolume(int levelleft, int levelright, int flags);
34
35 int Play(const char* medianame, int framefrom, int frameto, int flags);
36 int Pause(const char* medianame, int flags);
37 int Stop(const char* medianame, int flags);
38 int Eject(const char* medianame, int flags);
39
40 int Initialize(QCDModInfo *ModInfo, int flags);
41 void ShutDown(int flags);
42 void Configure(int flags);
43 void About(int flags);
44
45 #endif //QCDInputDLL_H
+0
-413
plugins/QCDMp4/QCDModDefs.h less more
0 //-----------------------------------------------------------------------------
1 //
2 // File: QCDModDefs.h
3 //
4 // About: Module definitions file. Miscellanious definitions used by different
5 // module types. This file is published with the plugin SDKs.
6 //
7 // Authors: Written by Paul Quinn and Richard Carlson.
8 //
9 // Copyright:
10 //
11 // QCD multimedia player application Software Development Kit Release 1.0.
12 //
13 // Copyright (C) 1997-2002 Quinnware
14 //
15 // This code is free. If you redistribute it in any form, leave this notice
16 // here.
17 //
18 // This program is distributed in the hope that it will be useful,
19 // but WITHOUT ANY WARRANTY; without even the implied warranty of
20 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
21 //
22 //-----------------------------------------------------------------------------
23
24 #ifndef QCDMODDEFS_H
25 #define QCDMODDEFS_H
26
27 #include <mmreg.h>
28 #include <windows.h>
29
30 #ifdef __cplusplus
31 #define PLUGIN_API extern "C" __declspec(dllexport)
32 #else
33 #define PLUGIN_API __declspec(dllexport)
34 #endif
35
36 // Current plugin version
37
38 // use this version for old style API calls (all returned text in native encoding)
39 #define PLUGIN_API_VERSION 250
40
41 // use this version for new style API calls (all returned text in UTF8 encoding on WinNT/2K/XP (native encoding on Win9x))
42 #define PLUGIN_API_VERSION_WANTUTF8 ((PLUGIN_API_WANTUTF8<<16)|PLUGIN_API_VERSION)
43 #define PLUGIN_API_WANTUTF8 100
44
45 //-----------------------------------------------------------------------------
46
47 typedef struct
48 {
49 char *moduleString;
50 char *moduleExtensions;
51 } QCDModInfo;
52
53 //-----------------------------------------------------------------------------
54 // Services (ops) provided by the Player
55 //-----------------------------------------------------------------------------
56 typedef enum
57 { //*** below returns numeric info (*buffer not used)
58
59 opGetPlayerVersion = 0, // high-order word = major version (eg 3.01 is 3), low-order word = minor (eg 3.01 = 1)
60 opGetParentWnd = 1, // handle to player window
61 opGetPlayerInstance = 2, // HINSTANCE to player executable
62
63 opGetPlayerState = 9, // get current state of the player (returns: 1 = stopped, 2 = playing, 3 = paused, 0 = failed)
64 opGetNumTracks = 10, // number of tracks in playlist
65 opGetCurrentIndex = 11, // index of current track in playlist (0 based)
66 opGetNextIndex = 12, // get index of next track to play (0 based), param1 = index start index. -1 for after current
67 opGetTrackNum = 13, // get track number of index, param1 = index of track in playlist, -1 for current
68 // - 'track number' is the number of the track in it's respective album, as opposed to playlist number
69 // - the 'track number' for digital files will be 1 if the tag is not set or the file is not identified
70
71 opGetTrackLength = 14, // get track length, param1 = index of track in playlist, -1 for current
72 // param2 = 0 for seconds, 1 for milliseconds
73 opGetTime = 15, // get time on player, param1 = 0 for time displayed, 1 for track time, 2 for playlist time
74 // param2 = 0 for elapsed, 1 for remaining
75 opGetTrackState = 16, // get whether track is marked, param1 = index of track, -1 for current
76 opGetPlaylistNum = 17, // get playlist number of index, param1 = index of track in playlist, -1 for current
77 opGetMediaType = 18, // get media type of track, param1 = index if track in playlist, -1 for current
78 // - see MediaTypes below for return values
79
80 opGetAudioInfo = 19, // get format info about currently playing track
81 // - param1 = 0 for samplerate, 1 for bitrate, 2 for num channels
82
83 opGetOffline = 20, // true if client is in Offline Mode
84 opGetVisTarget = 21, // where is vis being drawn > 0 - internal to skin, 1 - external window, 2 - full screen
85 opGetAlwaysOnTop = 22, // true if player is set to 'Always on Top'
86 opGetRepeatState = 23, // returns: 0 - repeat off, 1 - repeat track, 2 - repeat all
87 opGetShuffleState = 27, // returns: 0 - shuffle off, 1 - shuffle enabled
88
89 opGetTimerState = 24, // low-order word: 0 - track ascend, 1 - playlist ascend, 2 - track descend, 3 - playlist descend
90 // hi-order word: 1 if 'show hours' is set, else 0
91
92 opGetVolume = 25, // get master volume level (0 - 100), param1: 0 = combined, 1 = left, 2 = right
93 opSetVolume = 26, // set master volume level, param1: vol level 0 - 100, param2: balance (-100 left, 0 center, 100 right)
94
95 opGetIndexFromPLNum = 28, // get index from playlist number, param1 = playlist number
96
97 opGetExtensionWnd = 30, // handle to the draggable window extension (only available on some skins), param1 = extension number (0 - 9)
98 opGetExtVisWnd = 31, // handle to the external visual window
99 opGetMusicBrowserWnd = 32, // handle to the music browser window
100 opGetSkinPreviewWnd = 33, // handle to the skin preview window
101 opGetPropertiesWnd = 34, // handle to the player properties window
102 opGetExtInfoWnd = 35, // handle to the extended information window
103 opGetAboutWnd = 36, // handle to the about window
104 opGetSegmentsWnd = 37, // handle to the segments window
105 opGetEQPresetsWnd = 38, // handle to the EQ presets window
106 opGetVideoWnd = 39, // handle to the video window
107
108 opGetVisDimensions = 50, // gets the width and height of visual window (param1 = -1 current vis window, 0 internal vis, 1 external vis, 2 full screen)
109 // returns: HEIGHT in high word, WIDTH in low word
110
111 opShowVideoWindow = 55, // Show or Close video window (param1 = 1 for create, 2 for create and show, 0 for close)
112
113 opGetQueriesComplete = 60, // get status on whether all tracks in playlist have been queryied for their info
114
115 // playlist manipulation
116 opDeleteIndex = 90, // delete index from playlist (param1 = index)
117 opSelectIndex = 91, // mark index as selected (param1 = index, param2 = 1 - set, 0 - unset)
118 opBlockIndex = 92, // mark index as blocked (param1 = index, param2 = 1 - set, 0 - unset)
119
120 opGetMediaInfo = 99, // get the ICddbDisc object for the index specified, param1 = index of track, -1 for current
121 // param2 = pointer to integer that receives track value
122 // returns: pointer to ICddbDisc object. Do not release or deallocate this pointer
123
124
125 //*** below returns string info in buffer, param1 = size of buffer
126 //*** returns 1 on success, 0 on failure
127
128 opGetTrackName = 100, // get track name, param2 = index of track in playlist, -1 for current
129 opGetArtistName = 101, // get artist name, param2 = index of track in playlist, -1 for current
130 opGetDiscName = 102, // get disc name, param2 = index of track in playlist, -1 for current
131
132 opGetTrackFile = 103, // file name of track in playlist, param2 = index of track in playlist, -1 for current
133 opGetSkinName = 104, // get current skin name
134
135 opGetPluginFolder = 105, // get current plugin folder
136 opGetPluginSettingsFile = 106, // get settings file (plugins.ini) that plugin should save settings to
137 opGetPluginCacheFile = 107, // get file that describes plugin validity, functions and names
138 opGetPlayerSettingsFile = 108, // get settings file (qcd.ini) that player saves it settings to (should use for read-only)
139
140 opGetMusicFolder = 110, // get current music folder
141 opGetPlaylistFolder = 111, // get current playlist folder
142 opGetSkinFolder = 112, // get current skin folder
143 opGetCDDBCacheFolder = 113, // get current folder for CDDB cached info
144
145 opGetCurrentPlaylist = 114, // get full pathname of playlist currently loaded
146
147 opGetMediaID = 115, // get media identifier, param2 = index of track in playlist, -1 for current
148 // - for CD's it's the TOC - for anything else, right now it's 0
149
150 opGetSupportedExtensions = 116, // get file extensions supported by the player, param2 = 0 - get all extensions, 1 - get registered extensions
151 // - returned extensions will be colon delimited
152
153 opGetPlaylistString = 117, // get string for index as it appears in playlist, param2 = index
154
155 //*** below buffer points to struct or other object
156 //*** returns 1 on success, 0 on failure
157
158 opShowMainMenu = 120, // Display Main QCD Menu (buffer = POINT* - location to display menu)
159 opGetMainMenu = 121, // Returns copy of HMENU handle to QCD Menu (must use DestroyMenu on handle when complete)
160
161 opShowQuickTrack = 125, // Display QuickTrack Menu (buffer = POINT* - location to display menu)
162 opGetQuickTrack = 126, // Returns copy of HMENU handle to QuickTrack menu (must use DestroyMenu on handle when complete)
163 // To use if QuickTrack item selected: PostMessage(hwndPlayer, WM_COMMAND, menu_id, 0);
164
165 opGetEQVals = 200, // get current EQ levels/on/off (buffer = EQInfo*)
166 opSetEQVals = 201, // set EQ levels/on/off (buffer = EQInfo*)
167
168 opGetProxyInfo = 202, // get proxy info (buffer = ProxyInfo*), returns 0 if proxy not in use
169
170
171 //*** below returns numeric info, buffer used
172
173 opGetIndexFromFilename = 210, // get the index of a file that exists in current playlist (buffer = full path of file),
174 // param1 = startindex (index to start searching on)
175 // returns -1 if file not in playlist
176
177
178 //*** below send information to player
179 //*** returns 1 on success, 0 on failure
180
181 opSetStatusMessage = 1000, // display message in status area (buffer = msg buffer (null term), param1 = text flags (see below))
182
183 opSetBrowserUrl = 1001, // set music browser URL (buffer = url (null term))
184 // null url buffer - closes browser
185 // param1 = 0 - normal, 1 - force open
186
187 opSetAudioInfo = 1002, // set the current music bitrate/khz (buffer = AudioInfo*, param1 = size of AudioInfo)
188
189 opSetTrackAlbum = 1003, // update track ablum name (buffer = album (null term), param1 = (string ptr)file name), param2 = MediaTypes
190 opSetTrackTitle = 1004, // update track title (buffer = title (null term), param1 = (string ptr)file name), param2 = MediaTypes
191 opSetTrackArtist = 1005, // update track artist name (buffer = artist (null term), param1 = (string ptr)file name), param2 = MediaTypes
192
193 opSetTrackExtents = 1007, // update track TrackExtents info (buffer = &TrackExtents), param1 = (string ptr)file name)
194 opSetTrackSeekable = 1008, // update track seekable flag (buffer = (string ptr)file name), param1 = TRUE/FALSE
195 opSetPlayNext = 1009, // set the next index to be played (buffer = NULL, param1 = index, index = -1 unsets playnext)
196 opSetIndexFilename = 1010, // updates the filename (or stream) that an index in the current playlist refers to, buffer = new filename, param1 = index
197
198 opSetPlaylist = 1006, // clear playlist, add files to playlist or reset playlist with new files
199 // buffer = file list (each file in quotes, string null terminated) Eg; buffer="\"file1.mp3\" \"file2.mp3\"\0" - NULL to clear playlist
200 // param1 = (string ptr)originating path (can be NULL if paths included with files)
201 // param2 = 1 - clear playlist flag, 2 - enqueue to top
202
203 opInsertPlaylist = 1011, // insert tracks into playlist
204 // buffer = file list (each file in quotes, string null terminated) Eg; buffer="\"file1.mp3\" \"file2.mp3\"\0"
205 // param1 = (string ptr)originating path (can be NULL if paths included with files)
206 // param2 = index location to insert tracks (-1 to insert at end)
207
208 opMovePlaylistTrack = 1012, // param1 = index of track to move, param2 = destination index (move shifts tracks between param1 and param2)
209 opSwapPlaylistTracks = 1013, // param1 = index of first track, param2 = index of second track (swap only switches indecies param1 and param2)
210
211 opCreateDiscInfo = 1020, // returns: pointer to ICddbDisc object. Do not release or deallocate this pointer
212 opSetDiscInfo = 1021, // buffer = ICddbDisc*, param1 = MediaInfo*, param2 = track number
213
214 opSetSeekPosition = 1100, // seek to position during playback
215 // buffer = NULL, param1 = position
216 // param2 = 0 - position is in seconds, 1 - position is in milliseconds, 2 - position is in percent (use (float)param1))
217
218
219 opSetRepeatState = 1110, // set playlist repeat state, buffer = NULL, param1 = 0 - off, 1 - repeat track, 2 - repeat playlist
220 opSetShuffleState = 1111, // set playlist shuffle state, buffer = NULL, param1 = 0 - off, 1 - on
221
222 //*** below configures custom plugin menu items for the 'plugin menu'
223 //*** Player will call plugin's configure routine with menu value when menu item selected
224 //*** returns 1 on success, 0 on failure
225
226 opSetPluginMenuItem = 2000, // buffer = HINSTANCE of plugin, param1 = item id, param2 = (string ptr)string to display
227 // - set param2 = 0 to remove item id from menu
228 // - set param1 = 0 and param2 = 0 to remove whole menu
229 opSetPluginMenuState = 2001, // buffer = HINSTANCE of plugin, param1 = item id, param2 = menu flags (same as windows menu flags - eg: MF_CHECKED)
230
231
232 //*** below are services for using the player's filename template editor
233 //*** returns 1 on success, 0 on failure
234
235 opShowTemplateEditor = 2100, // displays template editor dialog, param1 = (HWND)parent window, param2 = modal flag
236 opLoadTemplate = 2101, // loads saved templates, buffer = (char*)string buf, param1 = bufsize, param2 = index of template (index < 0 for default formats, index >= 0 for user made formats)
237 opRenderTemplate = 2102, // create string based on template, buffer = (char*)template, param1 = FormatMetaInfo*, param2 = (char*)string buffer (min 260 bytes)
238
239 //*** other services
240
241 opUTF8toUCS2 = 9000, // convert UTF8 string to UCS2 (Unicode) string, buffer = null terminated utf8 string, param1 = (WCHAR*)result string buffer, param2 = size of result buffer
242 opUCS2toUTF8 = 9001, // convert UCS2 (Unicode) string to UTF8 string, buffer = null terminated ucs2 string, param1 = (char*)result string buffer, param2 = size of result buffer
243
244 opSafeWait = 10000 // plugin's can use this to wait on an object without worrying about deadlocking the player.
245 // this should only be called by the thread that enters the plugin, not by any plugin-created threads
246
247 } PluginServiceOp;
248
249 //-----------------------------------------------------------------------------
250 // Info services api provided by the Player, called by Plugin.
251 //-----------------------------------------------------------------------------
252 typedef long (*PluginServiceFunc)(PluginServiceOp op, void *buffer, long param1, long param2);
253
254 // Use to retrieve service func for DSP plugins (or other inproc process that doesn't have access to PluginServiceFunc)
255 // Eg: PluginServiceFunc Service = (PluginServiceFunc)SendMessage(hwndPlayer, WM_GETSERVICEFUNC, 0, 0);
256 // Set WPARAM = PLUGIN_API_WANTUTF8 for UTF8 string parameters
257 #define WM_GETSERVICEFUNC (WM_USER + 1)
258
259 //-----------------------------------------------------------------------------
260 typedef struct // for Output Plugin Write callback
261 {
262 void *data; // pointer to valid data
263 int bytelen; // length of data pointed to by 'data' in bytes
264 UINT numsamples; // number of samples represented by 'data'
265 UINT bps; // bits per sample
266 UINT nch; // number of channels
267 UINT srate; // sample rate
268
269 UINT markerstart; // Marker position at start of data (marker is time value of data)
270 // (set to WAVE_VIS_DATA_ONLY to not have data sent to output plugins)
271 UINT markerend; // Marker position at end of data (not currently used, set to 0)
272 } WriteDataStruct;
273
274 //-----------------------------------------------------------------------------
275 typedef struct // for GetTrackExtents Input Plugin callback
276 {
277 UINT track; // for CD's, set the track number. Otherwise set to 1.
278 UINT start; // for CD's or media that doesn't start at the beginning
279 // of the file, set to start position. Otherwise set to 0.
280 UINT end; // set to end position of media.
281 UINT unitpersec; // whatever units are being used for this media, how many
282 // of them per second.
283 // (Note: ((end - start) / unitpersecond) = file length
284 UINT bytesize; // size of file in bytes (if applicable, otherwise 0).
285 } TrackExtents;
286
287 //-----------------------------------------------------------------------------
288 typedef struct // for opSetAudioInfo service
289 {
290 long struct_size; // sizeof(AudioInfo)
291 long level; // MPEG level (1 for MPEG1, 2 for MPEG2, 3 for MPEG2.5, 7 for MPEGpro)
292 long layer; // and layer (1, 2 or 3)
293 long bitrate; // audio bitrate in bits per second
294 long frequency; // audio freq in Hz
295 long mode; // 0 for stereo, 1 for joint-stereo, 2 for dual-channel, 3 for mono, 4 for multi-channel
296 char text[8]; // up to eight characters to identify format (will override level and layer settings)
297 } AudioInfo;
298
299 //-----------------------------------------------------------------------------
300 // Equalizer Info
301 //-----------------------------------------------------------------------------
302 typedef struct // for coming QCD version
303 {
304 long struct_size; // sizeof(EQInfo)
305 char enabled;
306 char preamp; // -128 to 127, 0 is even
307 char bands[10]; // -128 to 127, 0 is even
308 } EQInfo;
309
310 //-----------------------------------------------------------------------------
311 typedef struct
312 {
313 long struct_size; // sizeof(ProxyInfo)
314 char hostname[200];
315 long port;
316 char username[100];
317 char password[100];
318 } ProxyInfo;
319
320 //-----------------------------------------------------------------------------
321 typedef enum // for MediaInfo.mediaType
322 {
323 UNKNOWN_MEDIA = 0,
324 CD_AUDIO_MEDIA = 1,
325 DIGITAL_FILE_MEDIA = 2,
326 DIGITAL_STREAM_MEDIA = 3
327 } MediaTypes;
328
329 //-----------------------------------------------------------------------------
330 #define MAX_TOC_LEN 2048
331 typedef struct
332 {
333 // media descriptors
334 CHAR mediaFile[MAX_PATH];
335 MediaTypes mediaType;
336
337 // cd audio media info
338 CHAR cd_mediaTOC[MAX_TOC_LEN];
339 int cd_numTracks;
340 int cd_hasAudio;
341
342 // operation info
343 int op_canSeek;
344
345 // not used
346 int reserved[4];
347
348 } MediaInfo;
349
350 //-----------------------------------------------------------------------------
351 typedef struct
352 {
353 long struct_size;
354 LPCWSTR title;
355 LPCWSTR artalb;
356 LPCWSTR album;
357 LPCWSTR genre;
358 LPCWSTR year;
359 LPCWSTR tracknum;
360 LPCWSTR filename;
361 LPCWSTR arttrk;
362 long reserved;
363
364 } FormatMetaInfo;
365
366 //-----------------------------------------------------------------------------
367 // When subclassing the parent window, a plugin can watch for these messages
368 // to react to events going on between plugins and player
369 // DO NOT SEND THESE MESSAGES - can only watch for them
370
371 // Plugin to Player Notifiers
372 #define WM_PN_POSITIONUPDATE (WM_USER + 100) // playback progress updated
373 #define WM_PN_PLAYSTARTED (WM_USER + 101) // playback has started
374 #define WM_PN_PLAYSTOPPED (WM_USER + 102) // playback has stopped by user
375 #define WM_PN_PLAYPAUSED (WM_USER + 103) // playback has been paused
376 #define WM_PN_PLAYDONE (WM_USER + 104) // playback has finished (track completed)
377 #define WM_PN_MEDIAEJECTED (WM_USER + 105) // a CD was ejected (CDRom drive letter= 'A' + lParam)
378 #define WM_PN_MEDIAINSERTED (WM_USER + 106) // a CD was inserted (CDRom drive letter= 'A' + lParam)
379 #define WM_PN_INFOCHANGED (WM_USER + 107) // track information was updated (lParam = (LPCSTR)medianame)
380 #define WM_PN_TRACKCHANGED (WM_USER + 109) // current track playing has changed (relevant from CD plugin) (lParam = (LPCSTR)medianame)
381
382 // Player to Plugin Notifiers
383 #define WM_PN_PLAYLISTCHANGED (WM_USER + 200) // playlist has changed in some way (add, delete, sort, shuffle, drag-n-drop, etc...)
384
385 // For intercepting main menu display
386 // (so you can get handle, modify, and display your own)
387 #define WM_SHOWMAINMENU (WM_USER + 20)
388
389 // For intercepting skinned border window commands
390 #define WM_BORDERWINDOW (WM_USER + 26)
391 // WM_BORDERWINDOW wParam's
392 #define BORDERWINDOW_NORMALSIZE 0x100000
393 #define BORDERWINDOW_DOUBLESIZE 0x200000
394 #define BORDERWINDOW_FULLSCREEN 0x400000
395
396 // send to border window to cause resize
397 // wParam = LPPOINT lpp; // point x-y is CLIENT area size of window
398 #define WM_SIZEBORDERWINDOW (WM_USER + 1)
399
400 //-----------------------------------------------------------------------------
401 // To shutdown player, send this command
402 #define WM_SHUTDOWN (WM_USER + 5)
403
404 //-----------------------------------------------------------------------------
405 // opSetStatusMessage textflags
406 #define TEXT_DEFAULT 0x0 // message scrolls by in status window
407 #define TEXT_TOOLTIP 0x1 // message acts as tooltip in status window
408 #define TEXT_URGENT 0x2 // forces message to appear even if no status window (using msg box)
409 #define TEXT_HOLD 0x4 // tooltip message stays up (no fade out)
410 #define TEXT_UNICODE 0x10 // buffer contains a unicode string (multibyte string otherwise)
411
412 #endif //QCDMODDEFS_H
+0
-117
plugins/QCDMp4/QCDModInput.h less more
0 //-----------------------------------------------------------------------------
1 //
2 // File: QCDModInput.h
3 //
4 // About: Input plugin module interface. This file is published with the
5 // Input plugin SDK.
6 //
7 // Authors: Written by Paul Quinn and Richard Carlson.
8 //
9 // Copyright:
10 //
11 // QCD multimedia player application Software Development Kit Release 1.0.
12 //
13 // Copyright (C) 1997-2002 Quinnware
14 //
15 // This code is free. If you redistribute it in any form, leave this notice
16 // here.
17 //
18 // This program is distributed in the hope that it will be useful,
19 // but WITHOUT ANY WARRANTY; without even the implied warranty of
20 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
21 //
22 //-----------------------------------------------------------------------------
23
24 #ifndef QCDMODINPUT_H
25 #define QCDMODINPUT_H
26
27 #include "QCDModDefs.h"
28
29 // name of the DLL export for input plugins
30 #define INPUTDLL_ENTRY_POINT QInputModule2 // (updated plugin api version 240+)
31
32 // media insert flags
33 #define MEDIAINSERT_PLAY 0x1
34 #define MEDIAINSERT_ADDTRACKS 0x2
35 #define MEDIAINSERT_ADDSEGMENTS 0x4
36 #define MEDIAINSERT_CLEARPLAYLIST 0x8
37
38 // Stop will receive one of these flags (pass to output plugin's stop())
39 #define STOPFLAG_FORCESTOP 0 // stop occuring due to user action or other event
40 #define STOPFLAG_PLAYDONE 1 // stop occuring due to playlist completion
41
42 // play flags
43 #define PLAYFLAG_PLAYBACK 0x0
44 #define PLAYFLAG_ENCODING 0x1
45 #define PLAYFLAG_SEEKING 0x2
46
47 // Wave Marker flags
48 #define WAVE_VIS_DATA_ONLY -1 // set to WaveDataStruct.markerstart in OutputWrite() call have data only go to vis
49 // and not to output plugin
50 // pause flags
51 #define PAUSE_DISABLED 0 // Pause() call is to unpause playback
52 #define PAUSE_ENABLED 1 // Pause() call is to pause playback
53
54 //-----------------------------------------------------------------------------
55 // Input Module
56 //-----------------------------------------------------------------------------
57 typedef struct
58 {
59 unsigned int size; // size of init structure
60 unsigned int version; // plugin structure version (set to PLUGIN_API_VERSION)
61 PluginServiceFunc Service; // player supplied services callback
62
63 struct
64 {
65 void (*PositionUpdate)(unsigned int position);
66 void (*PlayStopped)(const char* medianame); // notify player of play stop
67 void (*PlayStarted)(const char* medianame); // notify player of play start
68 void (*PlayPaused)(const char* medianame, int flags); // notify player of play pause
69 void (*PlayDone)(const char* medianame); // notify player when play done
70 void (*PlayTrackChanged)(const char* medianame); // notify player when playing track changes (cd audio relevant only)
71 void (*MediaEjected)(const char* medianame); // notify player of media eject (cd audio relevant)
72 void (*MediaInserted)(const char* medianame, int flags); // notify player of media insert (cd audio relevant)
73
74 // output plugin calls
75 int (*OutputOpen)(const char* medianame, WAVEFORMATEX*); // open output for wave data
76 int (*OutputWrite)(WriteDataStruct*); // send PCM audio data to output
77 // (blocks until write completes, thus if output is paused can
78 // block until unpaused)
79 int (*OutputDrain)(int flags); // wait for all output to complete (blocking)
80 int (*OutputDrainCancel)(int flags); // break a drain in progress
81 int (*OutputFlush)(unsigned int marker); // flush output upto marker
82 int (*OutputStop)(int flags); // stop output
83 int (*OutputPause)(int flags); // pause output
84
85 int (*OutputSetVol)(int levelleft, int levelright, int flags);
86 int (*OutputGetCurrentPosition)(unsigned int *position, int flags);
87
88 void *Reserved[10];
89 } toPlayer;
90
91 struct
92 {
93 int (*Initialize)(QCDModInfo *modInfo, int flags); // initialize plugin
94 void (*ShutDown)(int flags); // shutdown plugin
95
96 int (*Play)(const char* medianame, int playfrom, int playto, int flags); // start playing playfrom->playto
97 int (*Stop)(const char* medianame, int flags); // stop playing
98 int (*Pause)(const char* medianame, int flags); // pause playback
99 int (*Eject)(const char* medianame, int flags); // eject media
100 void (*SetEQ)(EQInfo*); // update EQ settings
101
102 int (*GetMediaSupported)(const char* medianame, MediaInfo *mediaInfo); // does plugin support medianame (and provides info for media)
103 int (*GetTrackExtents)(const char* medianame, TrackExtents *ext, int flags); // get media start, end & units
104 int (*GetCurrentPosition)(const char* medianame, long *track, long *offset); // get playing media's position
105
106 void (*Configure)(int flags); // launch configuration
107 void (*About)(int flags); // launch about info
108
109 void (*SetVolume)(int levelleft, int levelright, int flags); // level 0 - 100
110
111 void *Reserved[10];
112 } toModule;
113
114 } QCDModInitIn;
115
116 #endif //QCDMODINPUT_H
+0
-84
plugins/QCDMp4/QCDModTagEditor.h less more
0 //-----------------------------------------------------------------------------
1 //
2 // File: QCDModTagEditor
3 //
4 // About: Tag Editing plugin module interface. This file is published with the
5 // QCD plugin SDK.
6 //
7 // Authors: Written by Paul Quinn
8 //
9 // Copyright:
10 //
11 // QCD multimedia player application Software Development Kit Release 1.0.
12 //
13 // Copyright (C) 2002 Quinnware
14 //
15 // This code is free. If you redistribute it in any form, leave this notice
16 // here.
17 //
18 // This program is distributed in the hope that it will be useful,
19 // but WITHOUT ANY WARRANTY; without even the implied warranty of
20 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
21 //
22 //-----------------------------------------------------------------------------
23
24 #ifndef QCDMODTAGEDITOR_H
25 #define QCDMODTAGEDITOR_H
26
27 #include "QCDModDefs.h"
28
29 // name of the DLL export for output plugins
30 #define TAGEDITORDLL_ENTRY_POINT QTagEditorModule
31
32 // Tag field ids
33 typedef enum
34 {
35 TAGFIELD_FIRSTFIELD = 0,
36
37 TAGFIELD_TITLE = 0,
38 TAGFIELD_ARTIST,
39 TAGFIELD_ALBUM,
40 TAGFIELD_GENRE,
41 TAGFIELD_YEAR,
42 TAGFIELD_TRACK,
43 TAGFIELD_COMMENT,
44
45 TAGFIELD_COMPOSER,
46 TAGFIELD_CONDUCTOR,
47 TAGFIELD_ORCHESTRA,
48 TAGFIELD_YEARCOMPOSED,
49
50 TAGFIELD_ORIGARTIST,
51 TAGFIELD_LABEL,
52 TAGFIELD_COPYRIGHT,
53 TAGFIELD_ENCODER,
54 TAGFIELD_CDDBTAGID,
55
56 TAGFIELD_FIELDCOUNT
57 };
58
59 //-----------------------------------------------------------------------------
60
61 typedef struct
62 {
63 UINT size; // size of init structure
64 UINT version; // plugin structure version (set to PLUGIN_API_VERSION)
65
66 LPCSTR description;
67 LPCSTR defaultexts;
68
69 bool (*Read)(LPCSTR filename, void* tagHandle);
70 bool (*Write)(LPCSTR filename, void* tagHandle);
71 bool (*Strip)(LPCSTR filename);
72
73 void (*ShutDown)(int flags);
74
75 void (*SetFieldA)(void* tagHandle, int fieldId, LPCSTR szNewText);
76 void (*SetFieldW)(void* tagHandle, int fieldId, LPCWSTR szNewText);
77
78 LPCSTR (*GetFieldA)(void* tagHandle, int fieldId);
79 LPCWSTR (*GetFieldW)(void* tagHandle, int fieldId);
80
81 } QCDModInitTag;
82
83 #endif //QCDMODTAGEDITOR_H
+0
-2992
plugins/QCDMp4/QCDMp4.c less more
0 /*
1 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
2 ** Copyright (C) 2003 M. Bakker, Ahead Software AG, http://www.nero.com
3 **
4 ** This program is free software; you can redistribute it and/or modify
5 ** it under the terms of the GNU General Public License as published by
6 ** the Free Software Foundation; either version 2 of the License, or
7 ** (at your option) any later version.
8 **
9 ** This program is distributed in the hope that it will be useful,
10 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
11 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 ** GNU General Public License for more details.
13 **
14 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
16 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
17 **
18 ** Any non-GPL usage of this software or parts of this software is strictly
19 ** forbidden.
20 **
21 ** Commercial non-GPL licensing of this software is possible.
22 ** For more info contact Ahead Software through Mpeg4AAClicense@nero.com.
23 **
24 ** $Id: QCDMp4.c,v 1.4 2003/12/06 04:24:17 rjamorim Exp $
25 **/
26
27 //#define DEBUG_OUTPUT
28
29 #define WIN32_LEAN_AND_MEAN
30 #include <windows.h>
31 #include <commctrl.h>
32 #include <commdlg.h>
33 #include <stdlib.h>
34 #include <math.h>
35 #include <faad.h>
36 #include <mp4.h>
37
38 #include "resource.h"
39 #include "QCDInputDLL.h"
40 #include "utils.h"
41 #include "config.h"
42 //#include "aacinfo.h"
43 //#include "aac2mp4.h"
44 //
45 //const char *long_ext_list = "MP4\0MPEG-4 Files (*.MP4)\0M4A\0MPEG-4 Files (*.M4A)\0AAC\0AAC Files (*.AAC)\0";
46 //const char *short_ext_list = "MP4\0MPEG-4 Files (*.MP4)\0M4A\0MPEG-4 Files (*.M4A)\0";
47
48 static long priority_table[] = {
49 0,
50 THREAD_PRIORITY_HIGHEST,
51 THREAD_PRIORITY_ABOVE_NORMAL,
52 THREAD_PRIORITY_NORMAL,
53 THREAD_PRIORITY_BELOW_NORMAL,
54 THREAD_PRIORITY_LOWEST
55 };
56 static int res_id_table[] = {
57 IDC_16BITS,
58 IDC_24BITS,
59 IDC_32BITS,
60 0,
61 0,
62 /*IDC_16BITS_DITHERED*/ IDC_16BITS /* temp hack */
63 };
64 static int res_table[] = {
65 16,
66 24,
67 32,
68 0,
69 0,
70 16
71 };
72 //static char info_fn[_MAX_PATH];
73 //
74 //// post this to the main window at end of file (after playback has stopped)
75 //#define WM_WA_AAC_EOF WM_USER+2
76
77 struct seek_list
78 {
79 struct seek_list *next;
80 __int64 offset;
81 };
82
83 typedef struct state
84 {
85 /* general stuff */
86 faacDecHandle hDecoder;
87 int samplerate;
88 unsigned char channels;
89 double decode_pos_ms; // current decoding position, in milliseconds
90 int paused; // are we paused?
91 int seek_needed; // if != -1, it is the point that the decode thread should seek to, in ms.
92 char filename[_MAX_PATH];
93 int filetype; /* 0: MP4; 1: AAC */
94 int last_frame;
95 __int64 last_offset;
96
97 /* MP4 stuff */
98 MP4FileHandle mp4file;
99 int mp4track;
100 MP4SampleId numSamples;
101 MP4SampleId sampleId;
102
103 /* AAC stuff */
104 FILE *aacfile;
105 long m_aac_bytes_into_buffer;
106 long m_aac_bytes_consumed;
107 __int64 m_file_offset;
108 unsigned char *m_aac_buffer;
109 int m_at_eof;
110 double cur_pos_sec;
111 int m_header_type;
112 struct seek_list *m_head;
113 struct seek_list *m_tail;
114 unsigned long m_length;
115
116 /* for gapless decoding */
117 unsigned int useAacLength;
118 unsigned int framesize;
119 unsigned int initial;
120 unsigned long timescale;
121 } state;
122
123 static state mp4state;
124
125 //static In_Module module; // the output module (declared near the bottom of this file)
126 struct {
127 HINSTANCE hDllInstance;
128 HWND hMainWindow;
129 QCDModInitIn QCDCallbacks;
130 } module;
131 AudioInfo ai;
132
133 static int killPlayThread;
134 static int PlayThreadAlive = 0; // 1=play thread still running
135 HANDLE play_thread_handle = INVALID_HANDLE_VALUE; // the handle to the decode thread
136
137 /* Function definitions */
138 void *decode_aac_frame(state *st, faacDecFrameInfo *frameInfo);
139 DWORD WINAPI MP4PlayThread(void *b); // the decode thread procedure
140 DWORD WINAPI AACPlayThread(void *b); // the decode thread procedure
141
142
143 //typedef struct tag
144 //{
145 // char *item;
146 // char *value;
147 //} tag;
148 //
149 //typedef struct medialib_tags
150 //{
151 // struct tag *tags;
152 // unsigned int count;
153 //} medialib_tags;
154 //
155 //int tag_add_field(medialib_tags *tags, const char *item, const char *value)
156 //{
157 // void *backup = (void *)tags->tags;
158 //
159 // if (!item || (item && !*item) || !value) return 0;
160 //
161 // tags->tags = (struct tag *)realloc(tags->tags, (tags->count+1) * sizeof(tag));
162 // if (!tags->tags) {
163 // if (backup) free(backup);
164 // return 0;
165 // }
166 // else
167 // {
168 // int i_len = strlen(item);
169 // int v_len = strlen(value);
170 //
171 // tags->tags[tags->count].item = (char *)malloc(i_len+1);
172 // tags->tags[tags->count].value = (char *)malloc(v_len+1);
173 //
174 // if (!tags->tags[tags->count].item || !tags->tags[tags->count].value)
175 // {
176 // if (!tags->tags[tags->count].item) free (tags->tags[tags->count].item);
177 // if (!tags->tags[tags->count].value) free (tags->tags[tags->count].value);
178 // tags->tags[tags->count].item = NULL;
179 // tags->tags[tags->count].value = NULL;
180 // return 0;
181 // }
182 //
183 // memcpy(tags->tags[tags->count].item, item, i_len);
184 // memcpy(tags->tags[tags->count].value, value, v_len);
185 // tags->tags[tags->count].item[i_len] = '\0';
186 // tags->tags[tags->count].value[v_len] = '\0';
187 //
188 // tags->count++;
189 // return 1;
190 // }
191 //}
192 //
193 //int tag_set_field(medialib_tags *tags, const char *item, const char *value)
194 //{
195 // unsigned int i;
196 //
197 // if (!item || (item && !*item) || !value) return 0;
198 //
199 // for (i = 0; i < tags->count; i++)
200 // {
201 // if (!stricmp(tags->tags[i].item, item))
202 // {
203 // void *backup = (void *)tags->tags[i].value;
204 // int v_len = strlen(value);
205 //
206 // tags->tags[i].value = (char *)realloc(tags->tags[i].value, v_len+1);
207 // if (!tags->tags[i].value)
208 // {
209 // if (backup) free(backup);
210 // return 0;
211 // }
212 //
213 // memcpy(tags->tags[i].value, value, v_len);
214 // tags->tags[i].value[v_len] = '\0';
215 //
216 // return 1;
217 // }
218 // }
219 //
220 // return tag_add_field(tags, item, value);
221 //}
222 //
223 //int tag_delete(medialib_tags *tags)
224 //{
225 // unsigned int i;
226 //
227 // for (i = 0; i < tags->count; i++)
228 // {
229 // if (tags->tags[i].item) free(tags->tags[i].item);
230 // if (tags->tags[i].value) free(tags->tags[i].value);
231 // }
232 //
233 // if (tags->tags) free(tags->tags);
234 //
235 // tags->tags = NULL;
236 // tags->count = 0;
237 //}
238 //
239 //int ReadMP4Tag(MP4FileHandle file, medialib_tags *tags)
240 //{
241 // unsigned __int32 valueSize;
242 // unsigned __int8 *pValue;
243 // char *pName;
244 // unsigned int i = 0;
245 //
246 // do {
247 // pName = 0;
248 // pValue = 0;
249 // valueSize = 0;
250 //
251 // MP4GetMetadataByIndex(file, i, (const char **)&pName, &pValue, &valueSize);
252 //
253 // if (valueSize > 0)
254 // {
255 // char *val = (char *)malloc(valueSize+1);
256 // if (!val) return 0;
257 // memcpy(val, pValue, valueSize);
258 // val[valueSize] = '\0';
259 //
260 // if (pName[0] == '\xa9')
261 // {
262 // if (memcmp(pName, "©nam", 4) == 0)
263 // {
264 // tag_add_field(tags, "title", val);
265 // } else if (memcmp(pName, "©ART", 4) == 0) {
266 // tag_add_field(tags, "artist", val);
267 // } else if (memcmp(pName, "©wrt", 4) == 0) {
268 // tag_add_field(tags, "writer", val);
269 // } else if (memcmp(pName, "©alb", 4) == 0) {
270 // tag_add_field(tags, "album", val);
271 // } else if (memcmp(pName, "©day", 4) == 0) {
272 // tag_add_field(tags, "date", val);
273 // } else if (memcmp(pName, "©too", 4) == 0) {
274 // tag_add_field(tags, "tool", val);
275 // } else if (memcmp(pName, "©cmt", 4) == 0) {
276 // tag_add_field(tags, "comment", val);
277 // } else if (memcmp(pName, "©gen", 4) == 0) {
278 // tag_add_field(tags, "genre", val);
279 // } else {
280 // tag_add_field(tags, pName, val);
281 // }
282 // } else if (memcmp(pName, "gnre", 4) == 0) {
283 // char *t=0;
284 // if (MP4GetMetadataGenre(file, &t))
285 // {
286 // tag_add_field(tags, "genre", t);
287 // }
288 // } else if (memcmp(pName, "trkn", 4) == 0) {
289 // unsigned __int16 trkn = 0, tot = 0;
290 // char t[200];
291 // if (MP4GetMetadataTrack(file, &trkn, &tot))
292 // {
293 // if (tot > 0)
294 // wsprintf(t, "%d/%d", trkn, tot);
295 // else
296 // wsprintf(t, "%d", trkn);
297 // tag_add_field(tags, "tracknumber", t);
298 // }
299 // } else if (memcmp(pName, "disk", 4) == 0) {
300 // unsigned __int16 disk = 0, tot = 0;
301 // char t[200];
302 // if (MP4GetMetadataDisk(file, &disk, &tot))
303 // {
304 // if (tot > 0)
305 // wsprintf(t, "%d/%d", disk, tot);
306 // else
307 // wsprintf(t, "%d", disk);
308 // tag_add_field(tags, "disc", t);
309 // }
310 // } else if (memcmp(pName, "cpil", 4) == 0) {
311 // unsigned __int8 cpil = 0;
312 // char t[200];
313 // if (MP4GetMetadataCompilation(file, &cpil))
314 // {
315 // wsprintf(t, "%d", cpil);
316 // tag_add_field(tags, "compilation", t);
317 // }
318 // } else if (memcmp(pName, "tmpo", 4) == 0) {
319 // unsigned __int16 tempo = 0;
320 // char t[200];
321 // if (MP4GetMetadataTempo(file, &tempo))
322 // {
323 // wsprintf(t, "%d BPM", tempo);
324 // tag_add_field(tags, "tempo", t);
325 // }
326 // } else if (memcmp(pName, "NDFL", 4) == 0) {
327 // /* Removed */
328 // } else {
329 // tag_add_field(tags, pName, val);
330 // }
331 //
332 // free(val);
333 // }
334 //
335 // i++;
336 // } while (valueSize > 0);
337 //
338 // return 1;
339 //}
340 //
341 //int mp4_set_metadata(MP4FileHandle file, const char *item, const char *val)
342 //{
343 // if (!item || (item && !*item) || !val || (val && !*val)) return 0;
344 //
345 // if (!stricmp(item, "track") || !stricmp(item, "tracknumber"))
346 // {
347 // unsigned __int16 trkn, tot;
348 // int t1 = 0, t2 = 0;
349 // sscanf(val, "%d/%d", &t1, &t2);
350 // trkn = t1, tot = t2;
351 // if (!trkn) return 1;
352 // if (MP4SetMetadataTrack(file, trkn, tot)) return 1;
353 // }
354 // else if (!stricmp(item, "disc") || !stricmp(item, "disknumber"))
355 // {
356 // unsigned __int16 disk, tot;
357 // int t1 = 0, t2 = 0;
358 // sscanf(val, "%d/%d", &t1, &t2);
359 // disk = t1, tot = t2;
360 // if (!disk) return 1;
361 // if (MP4SetMetadataDisk(file, disk, tot)) return 1;
362 // }
363 // else if (!stricmp(item, "compilation"))
364 // {
365 // unsigned __int8 cpil = atoi(val);
366 // if (!cpil) return 1;
367 // if (MP4SetMetadataCompilation(file, cpil)) return 1;
368 // }
369 // else if (!stricmp(item, "tempo"))
370 // {
371 // unsigned __int16 tempo = atoi(val);
372 // if (!tempo) return 1;
373 // if (MP4SetMetadataTempo(file, tempo)) return 1;
374 // }
375 // else if (!stricmp(item, "artist"))
376 // {
377 // if (MP4SetMetadataArtist(file, val)) return 1;
378 // }
379 // else if (!stricmp(item, "writer"))
380 // {
381 // if (MP4SetMetadataWriter(file, val)) return 1;
382 // }
383 // else if (!stricmp(item, "title"))
384 // {
385 // if (MP4SetMetadataName(file, val)) return 1;
386 // }
387 // else if (!stricmp(item, "album"))
388 // {
389 // if (MP4SetMetadataAlbum(file, val)) return 1;
390 // }
391 // else if (!stricmp(item, "date") || !stricmp(item, "year"))
392 // {
393 // if (MP4SetMetadataYear(file, val)) return 1;
394 // }
395 // else if (!stricmp(item, "comment"))
396 // {
397 // if (MP4SetMetadataComment(file, val)) return 1;
398 // }
399 // else if (!stricmp(item, "genre"))
400 // {
401 // if (MP4SetMetadataGenre(file, val)) return 1;
402 // }
403 // else if (!stricmp(item, "tool"))
404 // {
405 // if (MP4SetMetadataTool(file, val)) return 1;
406 // }
407 // else
408 // {
409 // if (MP4SetMetadataFreeForm(file, (char *)item, (u_int8_t *)val, (u_int32_t)strlen(val))) return 1;
410 // }
411 //
412 // return 0;
413 //}
414 //
415 //int WriteMP4Tag(MP4FileHandle file, const medialib_tags *tags)
416 //{
417 // unsigned int i;
418 //
419 // for (i = 0; i < tags->count; i++)
420 // {
421 // const char *item = tags->tags[i].item;
422 // const char *value = tags->tags[i].value;
423 //
424 // if (value && *value)
425 // {
426 // mp4_set_metadata(file, item, value);
427 // }
428 // }
429 //}
430
431
432 #ifdef DEBUG_OUTPUT
433 void in_mp4_DebugOutput(char *message)
434 {
435 char s[1024];
436
437 sprintf(s, "in_mp4: %s: %s", mp4state.filename, message);
438 OutputDebugString(s);
439 }
440 #endif
441
442 int file_length(FILE *f)
443 {
444 long end = 0;
445 long cur = ftell(f);
446 fseek(f, 0, SEEK_END);
447 end = ftell(f);
448 fseek(f, cur, SEEK_SET);
449
450 return end;
451 }
452
453 static void show_error(HWND hwnd, char *message, ...)
454 {
455 if (m_show_errors)
456 MessageBox(hwnd, message, "Error", MB_OK);
457 }
458
459 static void config_init()
460 {
461 //char *p=INI_FILE;
462 //GetModuleFileName(NULL,INI_FILE,_MAX_PATH);
463 //while (*p) p++;
464 //while (p >= INI_FILE && *p != '.') p--;
465 //strcpy(p+1,"ini");
466 module.QCDCallbacks.Service(opGetPluginSettingsFile, INI_FILE, MAX_PATH, 0);
467 }
468
469 void config_read()
470 {
471 char priority[10];
472 char resolution[10];
473 char show_errors[10];
474 char use_for_aac[10];
475 char downmix[10];
476 char vbr_display[10];
477
478 config_init();
479
480 strcpy(show_errors, "1");
481 strcpy(priority, "3");
482 strcpy(resolution, "0");
483 strcpy(use_for_aac, "1");
484 strcpy(downmix, "0");
485 strcpy(vbr_display, "1");
486 //strcpy(titleformat, "%7");
487
488 RS(priority);
489 RS(resolution);
490 RS(show_errors);
491 RS(use_for_aac);
492 RS(downmix);
493 RS(vbr_display);
494 //RS(titleformat);
495
496 m_priority = atoi(priority);
497 m_resolution = atoi(resolution);
498 m_show_errors = atoi(show_errors);
499 m_use_for_aac = atoi(use_for_aac);
500 m_downmix = atoi(downmix);
501 m_vbr_display = atoi(vbr_display);
502 }
503
504 void config_write()
505 {
506 char priority[10];
507 char resolution[10];
508 char show_errors[10];
509 char use_for_aac[10];
510 char downmix[10];
511 char vbr_display[10];
512
513 itoa(m_priority, priority, 10);
514 itoa(m_resolution, resolution, 10);
515 itoa(m_show_errors, show_errors, 10);
516 itoa(m_use_for_aac, use_for_aac, 10);
517 itoa(m_downmix, downmix, 10);
518 itoa(m_vbr_display, vbr_display, 10);
519
520 WS(priority);
521 WS(resolution);
522 WS(show_errors);
523 WS(use_for_aac);
524 WS(downmix);
525 WS(vbr_display);
526 //WS(titleformat);
527 }
528
529 int Initialize(QCDModInfo *ModInfo, int flags)
530 {
531 ModInfo->moduleString = "MP4 Plug-in v" FAAD2_VERSION;
532
533 module.hMainWindow = (HWND)module.QCDCallbacks.Service(opGetParentWnd, 0, 0, 0);
534
535 // read config from config file
536 config_read();
537
538 ModInfo->moduleExtensions = !m_use_for_aac ? "MP4:M4A" : "MP4:M4A:AAC";
539
540 // return TRUE for successful initialization
541 return 1;
542 }
543
544 //----------------------------------------------------------------------------
545
546 void ShutDown(int flags)
547 {
548 Stop(mp4state.filename, STOPFLAG_FORCESTOP);
549 }
550
551 ///* Convert UNICODE to UTF-8
552 // Return number of bytes written */
553 //int unicodeToUtf8 ( const WCHAR* lpWideCharStr, char* lpMultiByteStr, int cwcChars )
554 //{
555 // const unsigned short* pwc = (unsigned short *)lpWideCharStr;
556 // unsigned char* pmb = (unsigned char *)lpMultiByteStr;
557 // const unsigned short* pwce;
558 // size_t cBytes = 0;
559 //
560 // if ( cwcChars >= 0 ) {
561 // pwce = pwc + cwcChars;
562 // } else {
563 // pwce = (unsigned short *)((size_t)-1);
564 // }
565 //
566 // while ( pwc < pwce ) {
567 // unsigned short wc = *pwc++;
568 //
569 // if ( wc < 0x00000080 ) {
570 // *pmb++ = (char)wc;
571 // cBytes++;
572 // } else
573 // if ( wc < 0x00000800 ) {
574 // *pmb++ = (char)(0xC0 | ((wc >> 6) & 0x1F));
575 // cBytes++;
576 // *pmb++ = (char)(0x80 | (wc & 0x3F));
577 // cBytes++;
578 // } else
579 // if ( wc < 0x00010000 ) {
580 // *pmb++ = (char)(0xE0 | ((wc >> 12) & 0x0F));
581 // cBytes++;
582 // *pmb++ = (char)(0x80 | ((wc >> 6) & 0x3F));
583 // cBytes++;
584 // *pmb++ = (char)(0x80 | (wc & 0x3F));
585 // cBytes++;
586 // }
587 // if ( wc == L'\0' )
588 // return cBytes;
589 // }
590 //
591 // return cBytes;
592 //}
593 //
594 ///* Convert UTF-8 coded string to UNICODE
595 // Return number of characters converted */
596 //int utf8ToUnicode ( const char* lpMultiByteStr, WCHAR* lpWideCharStr, int cmbChars )
597 //{
598 // const unsigned char* pmb = (unsigned char *)lpMultiByteStr;
599 // unsigned short* pwc = (unsigned short *)lpWideCharStr;
600 // const unsigned char* pmbe;
601 // size_t cwChars = 0;
602 //
603 // if ( cmbChars >= 0 ) {
604 // pmbe = pmb + cmbChars;
605 // } else {
606 // pmbe = (unsigned char *)((size_t)-1);
607 // }
608 //
609 // while ( pmb < pmbe ) {
610 // char mb = *pmb++;
611 // unsigned int cc = 0;
612 // unsigned int wc;
613 //
614 // while ( (cc < 7) && (mb & (1 << (7 - cc)))) {
615 // cc++;
616 // }
617 //
618 // if ( cc == 1 || cc > 6 ) // illegal character combination for UTF-8
619 // continue;
620 //
621 // if ( cc == 0 ) {
622 // wc = mb;
623 // } else {
624 // wc = (mb & ((1 << (7 - cc)) - 1)) << ((cc - 1) * 6);
625 // while ( --cc > 0 ) {
626 // if ( pmb == pmbe ) // reached end of the buffer
627 // return cwChars;
628 // mb = *pmb++;
629 // if ( ((mb >> 6) & 0x03) != 2 ) // not part of multibyte character
630 // return cwChars;
631 // wc |= (mb & 0x3F) << ((cc - 1) * 6);
632 // }
633 // }
634 //
635 // if ( wc & 0xFFFF0000 )
636 // wc = L'?';
637 // *pwc++ = wc;
638 // cwChars++;
639 // if ( wc == L'\0' )
640 // return cwChars;
641 // }
642 //
643 // return cwChars;
644 //}
645 //
646 ///* convert Windows ANSI to UTF-8 */
647 //int ConvertANSIToUTF8 ( const char* ansi, char* utf8 )
648 //{
649 // WCHAR* wszValue; // Unicode value
650 // size_t ansi_len;
651 // size_t len;
652 //
653 // *utf8 = '\0';
654 // if ( ansi == NULL )
655 // return 0;
656 //
657 // ansi_len = strlen ( ansi );
658 //
659 // if ( (wszValue = (WCHAR *)malloc ( (ansi_len + 1) * 2 )) == NULL )
660 // return 0;
661 //
662 // /* Convert ANSI value to Unicode */
663 // if ( (len = MultiByteToWideChar ( CP_ACP, 0, ansi, ansi_len + 1, wszValue, (ansi_len + 1) * 2 )) == 0 ) {
664 // free ( wszValue );
665 // return 0;
666 // }
667 //
668 // /* Convert Unicode value to UTF-8 */
669 // if ( (len = unicodeToUtf8 ( wszValue, utf8, -1 )) == 0 ) {
670 // free ( wszValue );
671 // return 0;
672 // }
673 //
674 // free ( wszValue );
675 //
676 // return len-1;
677 //}
678 //
679 ///* convert UTF-8 to Windows ANSI */
680 //int ConvertUTF8ToANSI ( const char* utf8, char* ansi )
681 //{
682 // WCHAR* wszValue; // Unicode value
683 // size_t utf8_len;
684 // size_t len;
685 //
686 // *ansi = '\0';
687 // if ( utf8 == NULL )
688 // return 0;
689 //
690 // utf8_len = strlen ( utf8 );
691 //
692 // if ( (wszValue = (WCHAR *)malloc ( (utf8_len + 1) * 2 )) == NULL )
693 // return 0;
694 //
695 // /* Convert UTF-8 value to Unicode */
696 // if ( (len = utf8ToUnicode ( utf8, wszValue, utf8_len + 1 )) == 0 ) {
697 // free ( wszValue );
698 // return 0;
699 // }
700 //
701 // /* Convert Unicode value to ANSI */
702 // if ( (len = WideCharToMultiByte ( CP_ACP, 0, wszValue, -1, ansi, (utf8_len + 1) * 2, NULL, NULL )) == 0 ) {
703 // free ( wszValue );
704 // return 0;
705 // }
706 //
707 // free ( wszValue );
708 //
709 // return len-1;
710 //}
711 //
712 //BOOL uSetDlgItemText(HWND hwnd, int id, const char *str)
713 //{
714 // char *temp;
715 // size_t len;
716 // int r;
717 //
718 // if (!str) return FALSE;
719 // if (!*str) return TRUE;
720 // len = strlen(str);
721 // temp = malloc(len+1);
722 // if (!temp) return FALSE;
723 // r = ConvertUTF8ToANSI(str, temp);
724 // if (r > 0)
725 // SetDlgItemText(hwnd, id, temp);
726 // free(temp);
727 //
728 // return r>0 ? TRUE : FALSE;
729 //}
730 //
731 //UINT uGetDlgItemText(HWND hwnd, int id, char *str, int max)
732 //{
733 // char *temp, *utf8;
734 // int len;
735 // HWND w;
736 //
737 // if (!str || !max) return 0;
738 // *str = '\0';
739 // w = GetDlgItem(hwnd, id);
740 // len = GetWindowTextLength(w);
741 // temp = malloc(len+1);
742 // if (!temp) return 0;
743 // utf8 = malloc((len+1)*4);
744 // if (!utf8)
745 // {
746 // free(temp);
747 // return 0;
748 // }
749 //
750 // len = GetWindowText(w, temp, len+1);
751 // if (len > 0)
752 // {
753 // len = ConvertANSIToUTF8(temp, utf8);
754 // if (len > max-1)
755 // {
756 // len = max-1;
757 // utf8[max] = '\0';
758 // }
759 // memcpy(str, utf8, len+1);
760 // }
761 //
762 // free(temp);
763 // free(utf8);
764 //
765 // return len;
766 //}
767 //
768 //BOOL CALLBACK mp4_info_dialog_proc(HWND hwndDlg, UINT message,
769 // WPARAM wParam, LPARAM lParam)
770 //{
771 // char *file_info;
772 // MP4FileHandle file;
773 // char *pVal, dummy1[1024], dummy3;
774 // short dummy, dummy2;
775 // char temp[1024];
776 // struct medialib_tags tags;
777 // tags.count = 0;
778 // tags.tags = NULL;
779 //
780 //#ifdef DEBUG_OUTPUT
781 // in_mp4_DebugOutput("mp4_info_dialog_proc");
782 //#endif
783 //
784 // switch (message) {
785 // case WM_INITDIALOG:
786 // EnableWindow(GetDlgItem(hwndDlg,IDC_CONVERT), FALSE);
787 // ShowWindow(GetDlgItem(hwndDlg,IDC_CONVERT), SW_HIDE);
788 // EnableWindow(GetDlgItem(hwndDlg,IDC_CONVERT1), FALSE);
789 // ShowWindow(GetDlgItem(hwndDlg,IDC_CONVERT1), SW_HIDE);
790 // EnableWindow(GetDlgItem(hwndDlg,IDC_CONVERT2), FALSE);
791 // ShowWindow(GetDlgItem(hwndDlg,IDC_CONVERT2), SW_HIDE);
792 //
793 // file = MP4Read(info_fn, 0);
794 //
795 // if (file == MP4_INVALID_FILE_HANDLE)
796 // return FALSE;
797 //
798 // file_info = MP4Info(file, MP4_INVALID_TRACK_ID);
799 // SetDlgItemText(hwndDlg, IDC_INFOTEXT, file_info);
800 // free(file_info);
801 //
802 // /* get Metadata */
803 //
804 // pVal = NULL;
805 // if (MP4GetMetadataName(file, &pVal))
806 // uSetDlgItemText(hwndDlg,IDC_METANAME, pVal);
807 //
808 // pVal = NULL;
809 // if (MP4GetMetadataArtist(file, &pVal))
810 // uSetDlgItemText(hwndDlg,IDC_METAARTIST, pVal);
811 //
812 // pVal = NULL;
813 // if (MP4GetMetadataWriter(file, &pVal))
814 // uSetDlgItemText(hwndDlg,IDC_METAWRITER, pVal);
815 //
816 // pVal = NULL;
817 // if (MP4GetMetadataComment(file, &pVal))
818 // uSetDlgItemText(hwndDlg,IDC_METACOMMENTS, pVal);
819 //
820 // pVal = NULL;
821 // if (MP4GetMetadataAlbum(file, &pVal))
822 // uSetDlgItemText(hwndDlg,IDC_METAALBUM, pVal);
823 //
824 // pVal = NULL;
825 // if (MP4GetMetadataGenre(file, &pVal))
826 // uSetDlgItemText(hwndDlg,IDC_METAGENRE, pVal);
827 //
828 // dummy = 0;
829 // MP4GetMetadataTempo(file, &dummy);
830 // if (dummy)
831 // {
832 // wsprintf(dummy1, "%d", dummy);
833 // SetDlgItemText(hwndDlg,IDC_METATEMPO, dummy1);
834 // }
835 //
836 // dummy = 0; dummy2 = 0;
837 // MP4GetMetadataTrack(file, &dummy, &dummy2);
838 // if (dummy)
839 // {
840 // wsprintf(dummy1, "%d", dummy);
841 // SetDlgItemText(hwndDlg,IDC_METATRACK1, dummy1);
842 // }
843 // if (dummy2)
844 // {
845 // wsprintf(dummy1, "%d", dummy2);
846 // SetDlgItemText(hwndDlg,IDC_METATRACK2, dummy1);
847 // }
848 //
849 // dummy = 0; dummy2 = 0;
850 // MP4GetMetadataDisk(file, &dummy, &dummy2);
851 // if (dummy)
852 // {
853 // wsprintf(dummy1, "%d", dummy);
854 // SetDlgItemText(hwndDlg,IDC_METADISK1, dummy1);
855 // }
856 // if (dummy2)
857 // {
858 // wsprintf(dummy1, "%d", dummy2);
859 // SetDlgItemText(hwndDlg,IDC_METADISK2, dummy1);
860 // }
861 //
862 // pVal = NULL;
863 // if (MP4GetMetadataYear(file, &pVal))
864 // uSetDlgItemText(hwndDlg,IDC_METAYEAR, pVal);
865 //
866 // dummy3 = 0;
867 // MP4GetMetadataCompilation(file, &dummy3);
868 // if (dummy3)
869 // SendMessage(GetDlgItem(hwndDlg, IDC_METACOMPILATION), BM_SETCHECK, BST_CHECKED, 0);
870 //
871 // /* ! Metadata */
872 //
873 // MP4Close(file);
874 //
875 // return TRUE;
876 //
877 // case WM_COMMAND:
878 // switch (LOWORD(wParam)) {
879 // case IDCANCEL:
880 // EndDialog(hwndDlg, wParam);
881 // return TRUE;
882 // case IDOK:
883 //
884 // /* save Metadata changes */
885 //
886 // tag_delete(&tags);
887 // file = MP4Read(info_fn, 0);
888 // if (file != MP4_INVALID_FILE_HANDLE)
889 // {
890 // ReadMP4Tag(file, &tags);
891 // MP4Close(file);
892 //
893 // file = MP4Modify(info_fn, 0, 0);
894 // if (file != MP4_INVALID_FILE_HANDLE)
895 // {
896 // MP4MetadataDelete(file);
897 // MP4Close(file);
898 // }
899 // }
900 //
901 // file = MP4Modify(info_fn, 0, 0);
902 // if (file == MP4_INVALID_FILE_HANDLE)
903 // {
904 // tag_delete(&tags);
905 // EndDialog(hwndDlg, wParam);
906 // return FALSE;
907 // }
908 //
909 // uGetDlgItemText(hwndDlg, IDC_METANAME, dummy1, 1024);
910 // tag_set_field(&tags, "title", dummy1);
911 //
912 // uGetDlgItemText(hwndDlg, IDC_METAWRITER, dummy1, 1024);
913 // tag_set_field(&tags, "writer", dummy1);
914 //
915 // uGetDlgItemText(hwndDlg, IDC_METAARTIST, dummy1, 1024);
916 // tag_set_field(&tags, "artist", dummy1);
917 //
918 // uGetDlgItemText(hwndDlg, IDC_METAALBUM, dummy1, 1024);
919 // tag_set_field(&tags, "album", dummy1);
920 //
921 // uGetDlgItemText(hwndDlg, IDC_METACOMMENTS, dummy1, 1024);
922 // tag_set_field(&tags, "comment", dummy1);
923 //
924 // uGetDlgItemText(hwndDlg, IDC_METAGENRE, dummy1, 1024);
925 // tag_set_field(&tags, "genre", dummy1);
926 //
927 // uGetDlgItemText(hwndDlg, IDC_METAYEAR, dummy1, 1024);
928 // tag_set_field(&tags, "year", dummy1);
929 //
930 // GetDlgItemText(hwndDlg, IDC_METATRACK1, dummy1, 1024);
931 // dummy = atoi(dummy1);
932 // GetDlgItemText(hwndDlg, IDC_METATRACK2, dummy1, 1024);
933 // dummy2 = atoi(dummy1);
934 // wsprintf(temp, "%d/%d", dummy, dummy2);
935 // tag_set_field(&tags, "track", temp);
936 //
937 // GetDlgItemText(hwndDlg, IDC_METADISK1, dummy1, 1024);
938 // dummy = atoi(dummy1);
939 // GetDlgItemText(hwndDlg, IDC_METADISK2, dummy1, 1024);
940 // dummy2 = atoi(dummy1);
941 // wsprintf(temp, "%d/%d", dummy, dummy2);
942 // tag_set_field(&tags, "disc", temp);
943 //
944 // GetDlgItemText(hwndDlg, IDC_METATEMPO, dummy1, 1024);
945 // tag_set_field(&tags, "tempo", dummy1);
946 //
947 // dummy3 = SendMessage(GetDlgItem(hwndDlg, IDC_METACOMPILATION), BM_GETCHECK, 0, 0);
948 // tag_set_field(&tags, "compilation", (dummy3 ? "1" : "0"));
949 //
950 // WriteMP4Tag(file, &tags);
951 //
952 // MP4Close(file);
953 //
954 // MP4Optimize(info_fn, NULL, 0);
955 // /* ! */
956 //
957 // EndDialog(hwndDlg, wParam);
958 // return TRUE;
959 // }
960 // }
961 // return FALSE;
962 //}
963 //
964 ///* returns the name of the object type */
965 //char *get_ot_string(int ot)
966 //{
967 // switch (ot)
968 // {
969 // case 0:
970 // return "Main";
971 // case 1:
972 // return "LC";
973 // case 2:
974 // return "SSR";
975 // case 3:
976 // return "LTP";
977 // }
978 // return NULL;
979 //}
980 //
981 //BOOL CALLBACK aac_info_dialog_proc(HWND hwndDlg, UINT message,
982 // WPARAM wParam, LPARAM lParam)
983 //{
984 // faadAACInfo aacInfo;
985 // char *info_text, *header_string;
986 //
987 //#ifdef DEBUG_OUTPUT
988 // in_mp4_DebugOutput("aac_info_dialog_proc");
989 //#endif
990 //
991 // switch (message) {
992 // case WM_INITDIALOG:
993 // EnableWindow(GetDlgItem(hwndDlg,IDC_USERDATA), FALSE) ;
994 // ShowWindow(GetDlgItem(hwndDlg,IDC_USERDATA), SW_HIDE);
995 //
996 // ShowWindow(GetDlgItem(hwndDlg,IDC_STATIC1), SW_HIDE);
997 // ShowWindow(GetDlgItem(hwndDlg,IDC_STATIC2), SW_HIDE);
998 // ShowWindow(GetDlgItem(hwndDlg,IDC_STATIC3), SW_HIDE);
999 // ShowWindow(GetDlgItem(hwndDlg,IDC_STATIC4), SW_HIDE);
1000 // ShowWindow(GetDlgItem(hwndDlg,IDC_STATIC5), SW_HIDE);
1001 // ShowWindow(GetDlgItem(hwndDlg,IDC_STATIC6), SW_HIDE);
1002 // ShowWindow(GetDlgItem(hwndDlg,IDC_STATIC7), SW_HIDE);
1003 // ShowWindow(GetDlgItem(hwndDlg,IDC_STATIC8), SW_HIDE);
1004 // ShowWindow(GetDlgItem(hwndDlg,IDC_STATIC9), SW_HIDE);
1005 // ShowWindow(GetDlgItem(hwndDlg,IDC_STATIC10), SW_HIDE);
1006 // ShowWindow(GetDlgItem(hwndDlg,IDC_STATIC11), SW_HIDE);
1007 // ShowWindow(GetDlgItem(hwndDlg,IDC_STATIC12), SW_HIDE);
1008 //
1009 // ShowWindow(GetDlgItem(hwndDlg,IDC_METANAME), SW_HIDE);
1010 // ShowWindow(GetDlgItem(hwndDlg,IDC_METAARTIST), SW_HIDE);
1011 // ShowWindow(GetDlgItem(hwndDlg,IDC_METAWRITER), SW_HIDE);
1012 // ShowWindow(GetDlgItem(hwndDlg,IDC_METACOMMENTS), SW_HIDE);
1013 // ShowWindow(GetDlgItem(hwndDlg,IDC_METAALBUM), SW_HIDE);
1014 // ShowWindow(GetDlgItem(hwndDlg,IDC_METAGENRE), SW_HIDE);
1015 // ShowWindow(GetDlgItem(hwndDlg,IDC_METATEMPO), SW_HIDE);
1016 // ShowWindow(GetDlgItem(hwndDlg,IDC_METATRACK1), SW_HIDE);
1017 // ShowWindow(GetDlgItem(hwndDlg,IDC_METATRACK2), SW_HIDE);
1018 // ShowWindow(GetDlgItem(hwndDlg,IDC_METADISK1), SW_HIDE);
1019 // ShowWindow(GetDlgItem(hwndDlg,IDC_METADISK2), SW_HIDE);
1020 // ShowWindow(GetDlgItem(hwndDlg,IDC_METAYEAR), SW_HIDE);
1021 // ShowWindow(GetDlgItem(hwndDlg,IDC_METACOMPILATION), SW_HIDE);
1022 //
1023 // info_text = malloc(1024*sizeof(char));
1024 //
1025 // get_AAC_format(info_fn, &aacInfo);
1026 //
1027 // switch (aacInfo.headertype)
1028 // {
1029 // case 0: /* RAW */
1030 // header_string = " RAW";
1031 // break;
1032 // case 1: /* ADIF */
1033 // header_string = " ADIF";
1034 // break;
1035 // case 2: /* ADTS */
1036 // header_string = " ADTS";
1037 // break;
1038 // }
1039 //
1040 // sprintf(info_text, "%s AAC %s%s, %d sec, %d kbps, %d Hz",
1041 // (aacInfo.version==2)?"MPEG-2":"MPEG-4", get_ot_string(aacInfo.object_type),
1042 // header_string,
1043 // (int)((float)aacInfo.length/1000.0), (int)((float)aacInfo.bitrate/1000.0+0.5),
1044 // aacInfo.sampling_rate);
1045 //
1046 // SetDlgItemText(hwndDlg, IDC_INFOTEXT, info_text);
1047 //
1048 // free(info_text);
1049 //
1050 // return TRUE;
1051 //
1052 // case WM_COMMAND:
1053 // switch (LOWORD(wParam))
1054 // {
1055 // case IDC_CONVERT:
1056 // {
1057 // char mp4FileName[256];
1058 // char *extension;
1059 // OPENFILENAME ofn;
1060 //
1061 // lstrcpy(mp4FileName, info_fn);
1062 // extension = strrchr(mp4FileName, '.');
1063 // lstrcpy(extension, ".mp4");
1064 //
1065 // memset(&ofn, 0, sizeof(OPENFILENAME));
1066 // ofn.lStructSize = sizeof(OPENFILENAME);
1067 // ofn.hwndOwner = hwndDlg;
1068 // ofn.hInstance = module.hDllInstance;
1069 // ofn.nMaxFileTitle = 31;
1070 // ofn.lpstrFile = (LPSTR)mp4FileName;
1071 // ofn.nMaxFile = _MAX_PATH;
1072 // ofn.lpstrFilter = "MP4 Files (*.mp4)\0*.mp4\0";
1073 // ofn.lpstrDefExt = "mp4";
1074 // ofn.Flags = OFN_EXPLORER | OFN_PATHMUSTEXIST | OFN_OVERWRITEPROMPT | OFN_HIDEREADONLY;
1075 // ofn.lpstrTitle = "Select Output File";
1076 //
1077 // if (GetSaveFileName(&ofn))
1078 // {
1079 // if (covert_aac_to_mp4(info_fn, mp4FileName))
1080 // {
1081 // MessageBox(hwndDlg, "An error occured while converting AAC to MP4!", "An error occured!", MB_OK);
1082 // return FALSE;
1083 // }
1084 // }
1085 // return TRUE;
1086 // }
1087 // case IDCANCEL:
1088 // case IDOK:
1089 // EndDialog(hwndDlg, wParam);
1090 // return TRUE;
1091 // }
1092 // }
1093 // return FALSE;
1094 //}
1095 //
1096 //int infoDlg(char *fn, HWND hwndParent)
1097 //{
1098 // if(!stricmp(fn + strlen(fn) - 3,"AAC"))
1099 // {
1100 // lstrcpy(info_fn, fn);
1101 //
1102 // DialogBox(module.hDllInstance, MAKEINTRESOURCE(IDD_INFO),
1103 // hwndParent, aac_info_dialog_proc);
1104 // } else {
1105 // lstrcpy(info_fn, fn);
1106 //
1107 // DialogBox(module.hDllInstance, MAKEINTRESOURCE(IDD_INFO),
1108 // hwndParent, mp4_info_dialog_proc);
1109 // }
1110 //
1111 // return 0;
1112 //}
1113 //
1114 ///* Get the title from the file */
1115 //void ConstructTitle(MP4FileHandle file, char *filename, char *title, char *format)
1116 //{
1117 // char temp[4096];
1118 // int some_info = 0;
1119 // char *in = format;
1120 // char *out = temp;//title;
1121 // char *bound = out + sizeof(temp) - 256; //out + (MAX_PATH - 10 - 1);
1122 // char *pVal, dummy1[1024];
1123 // short dummy, dummy2;
1124 //
1125 // while (*in && out < bound)
1126 // {
1127 // switch (*in)
1128 // {
1129 // case '%':
1130 // ++in;
1131 // break;
1132 //
1133 // default:
1134 // *out++ = *in++;
1135 // continue;
1136 // }
1137 //
1138 // /* handle % escape sequence */
1139 // switch (*in++)
1140 // {
1141 // case '0':
1142 // dummy = 0; dummy2 = 0;
1143 // if (MP4GetMetadataTrack(file, &dummy, &dummy2))
1144 // {
1145 // out += wsprintf(out, "%d", (int)dummy);
1146 // some_info = 1;
1147 // }
1148 // break;
1149 //
1150 // case '1':
1151 // pVal = NULL;
1152 // if (MP4GetMetadataArtist(file, &pVal))
1153 // {
1154 // out += wsprintf(out, "%s", pVal);
1155 // some_info = 1;
1156 // }
1157 // break;
1158 //
1159 // case '2':
1160 // pVal = NULL;
1161 // if (MP4GetMetadataName(file, &pVal))
1162 // {
1163 // out += wsprintf(out, "%s", pVal);
1164 // some_info = 1;
1165 // }
1166 // break;
1167 //
1168 // case '3':
1169 // pVal = NULL;
1170 // if (MP4GetMetadataAlbum(file, &pVal))
1171 // {
1172 // out += wsprintf(out, "%s", pVal);
1173 // some_info = 1;
1174 // }
1175 // break;
1176 //
1177 // case '4':
1178 // pVal = NULL;
1179 // if (MP4GetMetadataYear(file, &pVal))
1180 // {
1181 // out += wsprintf(out, "%s", pVal);
1182 // some_info = 1;
1183 // }
1184 // break;
1185 //
1186 // case '5':
1187 // pVal = NULL;
1188 // if (MP4GetMetadataComment(file, &pVal))
1189 // {
1190 // out += wsprintf(out, "%s", pVal);
1191 // some_info = 1;
1192 // }
1193 // break;
1194 //
1195 // case '6':
1196 // pVal = NULL;
1197 // if (MP4GetMetadataGenre(file, &pVal))
1198 // {
1199 // out += wsprintf(out, "%s", pVal);
1200 // some_info = 1;
1201 // }
1202 // break;
1203 //
1204 // case '7':
1205 // {
1206 // const char *p=strrchr(filename,'\\');
1207 // if (!p) p=filename; else p++;
1208 // out += ConvertANSIToUTF8(p, out);
1209 // some_info = 1;
1210 // break;
1211 // }
1212 //
1213 // default:
1214 // break;
1215 // }
1216 // }
1217 //
1218 // *out = '\0';
1219 //
1220 // if (!some_info)
1221 // {
1222 // char *p=filename+lstrlen(filename);
1223 // while (*p != '\\' && p >= filename) p--;
1224 // lstrcpy(title,++p);
1225 // }
1226 // else
1227 // {
1228 // int len = ConvertUTF8ToANSI(temp, dummy1);
1229 // if (len > (MAX_PATH - 10 - 1)) len = (MAX_PATH - 10 - 1);
1230 // memcpy(title, dummy1, len);
1231 // title[len] = '\0';
1232 // }
1233 //}
1234
1235 BOOL CALLBACK config_dialog_proc(HWND hwndDlg, UINT message,
1236 WPARAM wParam, LPARAM lParam)
1237 {
1238 int i;
1239
1240 switch (message) {
1241 case WM_INITDIALOG:
1242 SendMessage(GetDlgItem(hwndDlg, IDC_PRIORITY), TBM_SETRANGE, TRUE, MAKELONG(1,5));
1243 SendMessage(GetDlgItem(hwndDlg, IDC_PRIORITY), TBM_SETPOS, TRUE, m_priority);
1244 SendMessage(GetDlgItem(hwndDlg, res_id_table[m_resolution]), BM_SETCHECK, BST_CHECKED, 0);
1245 if (m_show_errors)
1246 SendMessage(GetDlgItem(hwndDlg, IDC_ERROR), BM_SETCHECK, BST_CHECKED, 0);
1247 if (m_use_for_aac)
1248 SendMessage(GetDlgItem(hwndDlg, IDC_USEFORAAC), BM_SETCHECK, BST_CHECKED, 0);
1249 if (m_downmix)
1250 SendMessage(GetDlgItem(hwndDlg, IDC_DOWNMIX), BM_SETCHECK, BST_CHECKED, 0);
1251 if (m_vbr_display)
1252 SendMessage(GetDlgItem(hwndDlg, IDC_VBR), BM_SETCHECK, BST_CHECKED, 0);
1253 SetDlgItemText(hwndDlg, IDC_TITLEFORMAT, titleformat);
1254 return TRUE;
1255
1256 case WM_COMMAND:
1257 switch (LOWORD(wParam)) {
1258 case IDCANCEL:
1259 EndDialog(hwndDlg, wParam);
1260 return TRUE;
1261 case IDOK:
1262 m_show_errors = SendMessage(GetDlgItem(hwndDlg, IDC_ERROR), BM_GETCHECK, 0, 0);
1263 m_use_for_aac = SendMessage(GetDlgItem(hwndDlg, IDC_USEFORAAC), BM_GETCHECK, 0, 0);
1264 m_downmix = SendMessage(GetDlgItem(hwndDlg, IDC_DOWNMIX), BM_GETCHECK, 0, 0);
1265 m_vbr_display = SendMessage(GetDlgItem(hwndDlg, IDC_VBR), BM_GETCHECK, 0, 0);
1266 GetDlgItemText(hwndDlg, IDC_TITLEFORMAT, titleformat, MAX_PATH);
1267
1268 m_priority = SendMessage(GetDlgItem(hwndDlg, IDC_PRIORITY), TBM_GETPOS, 0, 0);
1269 for (i = 0; i < 6; i++)
1270 {
1271 if (SendMessage(GetDlgItem(hwndDlg, res_id_table[i]), BM_GETCHECK, 0, 0))
1272 {
1273 m_resolution = i;
1274 break;
1275 }
1276 }
1277
1278 /* save config */
1279 config_write();
1280
1281 //if (!m_use_for_aac)
1282 //{
1283 // module.FileExtensions = short_ext_list;
1284 //} else {
1285 // module.FileExtensions = long_ext_list;
1286 //}
1287
1288 EndDialog(hwndDlg, wParam);
1289 return TRUE;
1290 }
1291 }
1292 return FALSE;
1293 }
1294
1295 void Configure(int flags)
1296 {
1297 DialogBox(module.hDllInstance, MAKEINTRESOURCE(IDD_CONFIG),
1298 module.hMainWindow, config_dialog_proc);
1299 }
1300
1301 //-----------------------------------------------------------------------------
1302
1303 void About(int flags)
1304 {
1305 MessageBox(module.hMainWindow,
1306 "AudioCoding.com MPEG-4 General Audio player " FAAD2_VERSION " compiled on " __DATE__ ".\n"
1307 "Visit the website for more info.\n"
1308 "Ported to QCD by Shao Hao.\n"
1309 "Copyright 2002-2003 AudioCoding.com",
1310 "About",
1311 MB_OK);
1312 }
1313
1314 //-----------------------------------------------------------------------------
1315
1316 int fill_buffer(state *st)
1317 {
1318 int bread;
1319
1320 if (st->m_aac_bytes_consumed > 0)
1321 {
1322 if (st->m_aac_bytes_into_buffer)
1323 {
1324 memmove((void*)st->m_aac_buffer, (void*)(st->m_aac_buffer + st->m_aac_bytes_consumed),
1325 st->m_aac_bytes_into_buffer*sizeof(unsigned char));
1326 }
1327
1328 if (!st->m_at_eof)
1329 {
1330 bread = fread((void*)(st->m_aac_buffer + st->m_aac_bytes_into_buffer),
1331 1, st->m_aac_bytes_consumed, st->aacfile);
1332
1333 if (bread != st->m_aac_bytes_consumed)
1334 st->m_at_eof = 1;
1335
1336 st->m_aac_bytes_into_buffer += bread;
1337 }
1338
1339 st->m_aac_bytes_consumed = 0;
1340
1341 if (st->m_aac_bytes_into_buffer > 3)
1342 {
1343 if (memcmp(st->m_aac_buffer, "TAG", 3) == 0)
1344 st->m_aac_bytes_into_buffer = 0;
1345 }
1346 if (st->m_aac_bytes_into_buffer > 11)
1347 {
1348 if (memcmp(st->m_aac_buffer, "LYRICSBEGIN", 11) == 0)
1349 st->m_aac_bytes_into_buffer = 0;
1350 }
1351 if (st->m_aac_bytes_into_buffer > 8)
1352 {
1353 if (memcmp(st->m_aac_buffer, "APETAGEX", 8) == 0)
1354 st->m_aac_bytes_into_buffer = 0;
1355 }
1356 }
1357
1358 return 1;
1359 }
1360
1361 void advance_buffer(state *st, int bytes)
1362 {
1363 st->m_file_offset += bytes;
1364 st->m_aac_bytes_consumed = bytes;
1365 st->m_aac_bytes_into_buffer -= bytes;
1366 }
1367
1368 int adts_parse(state *st, __int64 *bitrate, double *length)
1369 {
1370 static int sample_rates[] = {96000,88200,64000,48000,44100,32000,24000,22050,16000,12000,11025,8000};
1371 int frames, frame_length;
1372 int t_framelength = 0;
1373 int samplerate;
1374 double frames_per_sec, bytes_per_frame;
1375
1376 /* Read all frames to ensure correct time and bitrate */
1377 for (frames = 0; /* */; frames++)
1378 {
1379 fill_buffer(st);
1380
1381 if (st->m_aac_bytes_into_buffer > 7)
1382 {
1383 /* check syncword */
1384 if (!((st->m_aac_buffer[0] == 0xFF)&&((st->m_aac_buffer[1] & 0xF6) == 0xF0)))
1385 break;
1386
1387 st->m_tail->offset = st->m_file_offset;
1388 st->m_tail->next = (struct seek_list*)malloc(sizeof(struct seek_list));
1389 st->m_tail = st->m_tail->next;
1390 st->m_tail->next = NULL;
1391
1392 if (frames == 0)
1393 samplerate = sample_rates[(st->m_aac_buffer[2]&0x3c)>>2];
1394
1395 frame_length = ((((unsigned int)st->m_aac_buffer[3] & 0x3)) << 11)
1396 | (((unsigned int)st->m_aac_buffer[4]) << 3) | (st->m_aac_buffer[5] >> 5);
1397
1398 t_framelength += frame_length;
1399
1400 if (frame_length > st->m_aac_bytes_into_buffer)
1401 break;
1402
1403 advance_buffer(st, frame_length);
1404 } else {
1405 break;
1406 }
1407 }
1408
1409 frames_per_sec = (double)samplerate/1024.0;
1410 if (frames != 0)
1411 bytes_per_frame = (double)t_framelength/(double)(frames*1000);
1412 else
1413 bytes_per_frame = 0;
1414 *bitrate = (__int64)(8. * bytes_per_frame * frames_per_sec + 0.5);
1415 if (frames_per_sec != 0)
1416 *length = (double)frames/frames_per_sec;
1417 else
1418 *length = 1;
1419
1420 return 1;
1421 }
1422
1423 int skip_id3v2_tag()
1424 {
1425 unsigned char buf[10];
1426 int bread, tagsize = 0;
1427
1428 bread = fread(buf, 1, 10, mp4state.aacfile);
1429 if (bread != 10) return -1;
1430
1431 if (!memcmp(buf, "ID3", 3))
1432 {
1433 /* high bit is not used */
1434 tagsize = (buf[6] << 21) | (buf[7] << 14) | (buf[8] << 7) | (buf[9] << 0);
1435
1436 tagsize += 10;
1437 fseek(mp4state.aacfile, tagsize, SEEK_SET);
1438 } else {
1439 fseek(mp4state.aacfile, 0, SEEK_SET);
1440 }
1441
1442 return tagsize;
1443 }
1444
1445 int GetMediaSupported(const char* medianame, MediaInfo *mediaInfo)
1446 {
1447 int tagsize = 0, init;
1448
1449 if (!medianame || !*medianame)
1450 return 0;
1451
1452 if (!stricmp(medianame + strlen(medianame) - 3,"MP4") || !stricmp(medianame + strlen(medianame) - 3,"M4A"))
1453 {
1454 if (mediaInfo)
1455 {
1456 mediaInfo->mediaType = DIGITAL_FILE_MEDIA;
1457 mediaInfo->op_canSeek = 1;
1458 }
1459 return 1;
1460 }
1461 else if (m_use_for_aac && !stricmp(medianame + strlen(medianame) - 3,"AAC"))
1462 {
1463 if (mediaInfo)
1464 {
1465 mediaInfo->mediaType = DIGITAL_FILE_MEDIA;
1466 mediaInfo->op_canSeek = 1;
1467
1468 memset(&mp4state, 0, sizeof(state));
1469 lstrcpy(mp4state.filename, medianame);
1470
1471 if (!(mp4state.aacfile = fopen(mp4state.filename, "rb")))
1472 {
1473 // error
1474 return 0;
1475 }
1476
1477 tagsize = skip_id3v2_tag();
1478 if (tagsize<0) return 0;
1479
1480 if (!(mp4state.m_aac_buffer = (unsigned char*)malloc(768*6)))
1481 {
1482 show_error(module.hMainWindow, "Memory allocation error.");
1483 return 0;
1484 }
1485
1486 for (init=0; init<2; init++)
1487 {
1488 memset(mp4state.m_aac_buffer, 0, 768*6);
1489 fread(mp4state.m_aac_buffer, 1, 768*6, mp4state.aacfile);
1490
1491 if (init==0)
1492 fseek(mp4state.aacfile, tagsize, SEEK_SET);
1493 }
1494
1495 if (memcmp(mp4state.m_aac_buffer, "ADIF", 4) == 0)
1496 mediaInfo->op_canSeek = (double)file_length(mp4state.aacfile) == -1 ? 0 : 1;
1497
1498 free(mp4state.m_aac_buffer);
1499
1500 fclose(mp4state.aacfile);
1501 }
1502 return 1;
1503 }
1504
1505 return 0;
1506 }
1507
1508 //-----------------------------------------------------------------------------
1509
1510 int Play(const char* medianame, int playfrom, int playto, int flags)
1511 {
1512 WAVEFORMATEX wf;
1513 //int maxlatency;
1514 int thread_id;
1515 int avg_bitrate, br, sr;
1516 unsigned char *buffer;
1517 int buffer_size;
1518 faacDecConfigurationPtr config;
1519
1520 #ifdef DEBUG_OUTPUT
1521 in_mp4_DebugOutput("play");
1522 #endif
1523
1524 if (stricmp(mp4state.filename, medianame) != 0)
1525 Stop(mp4state.filename, STOPFLAG_PLAYDONE);
1526
1527 if (mp4state.paused)
1528 {
1529 // Update the player controls to reflect the new unpaused state
1530 module.QCDCallbacks.toPlayer.OutputPause(0);
1531
1532 Pause(medianame, 0);
1533
1534 if (playfrom >= 0)
1535 mp4state.seek_needed = playfrom;
1536 }
1537 else if (PlayThreadAlive) // is playing
1538 {
1539 mp4state.seek_needed = playfrom;
1540 return 1;
1541 }
1542 else
1543 {
1544 memset(&mp4state, 0, sizeof(state));
1545
1546 lstrcpy(mp4state.filename, medianame);
1547
1548 if (!(mp4state.mp4file = MP4Read(mp4state.filename, 0)))
1549 {
1550 mp4state.filetype = 1;
1551 } else {
1552 MP4Close(mp4state.mp4file);
1553 mp4state.filetype = 0;
1554 }
1555
1556 if (mp4state.filetype)
1557 {
1558 int tagsize = 0, tmp = 0, init;
1559 int bread = 0;
1560 double length = 0.;
1561 __int64 bitrate = 128;
1562
1563 //module.is_seekable = 1;
1564
1565 if (!(mp4state.aacfile = fopen(mp4state.filename, "rb")))
1566 {
1567 // error
1568 return -1;
1569 }
1570
1571 tagsize = skip_id3v2_tag();
1572 if (tagsize<0) return 0;
1573
1574 if (!(mp4state.m_aac_buffer = (unsigned char*)malloc(768*6)))
1575 {
1576 show_error(module.hMainWindow, "Memory allocation error.");
1577 return -1;
1578 }
1579
1580 for (init=0; init<2; init++)
1581 {
1582 mp4state.hDecoder = faacDecOpen();
1583 if (!mp4state.hDecoder)
1584 {
1585 show_error(module.hMainWindow, "Unable to open decoder library.");
1586 return -1;
1587 }
1588
1589 config = faacDecGetCurrentConfiguration(mp4state.hDecoder);
1590 config->outputFormat = m_resolution + 1;
1591 config->downMatrix = m_downmix;
1592 faacDecSetConfiguration(mp4state.hDecoder, config);
1593
1594 memset(mp4state.m_aac_buffer, 0, 768*6);
1595 bread = fread(mp4state.m_aac_buffer, 1, 768*6, mp4state.aacfile);
1596 mp4state.m_aac_bytes_into_buffer = bread;
1597 mp4state.m_aac_bytes_consumed = 0;
1598 mp4state.m_file_offset = 0;
1599 mp4state.m_at_eof = (bread != 768*6) ? 1 : 0;
1600
1601 if (init==0)
1602 {
1603 faacDecFrameInfo frameInfo;
1604
1605 fill_buffer(&mp4state);
1606
1607 if ((mp4state.m_aac_bytes_consumed = faacDecInit(mp4state.hDecoder,
1608 mp4state.m_aac_buffer, mp4state.m_aac_bytes_into_buffer,
1609 &mp4state.samplerate, &mp4state.channels)) < 0)
1610 {
1611 show_error(module.hMainWindow, "Can't initialize decoder library.");
1612 return -1;
1613 }
1614 advance_buffer(&mp4state, mp4state.m_aac_bytes_consumed);
1615
1616 do {
1617 memset(&frameInfo, 0, sizeof(faacDecFrameInfo));
1618 fill_buffer(&mp4state);
1619 faacDecDecode(mp4state.hDecoder, &frameInfo, mp4state.m_aac_buffer, mp4state.m_aac_bytes_into_buffer);
1620 } while (!frameInfo.samples && !frameInfo.error);
1621
1622 if (frameInfo.error)
1623 {
1624 show_error(module.hMainWindow, faacDecGetErrorMessage(frameInfo.error));
1625 return -1;
1626 }
1627
1628 mp4state.channels = frameInfo.channels;
1629 mp4state.samplerate = frameInfo.samplerate;
1630 mp4state.framesize = (frameInfo.channels != 0) ? frameInfo.samples/frameInfo.channels : 0;
1631 /*
1632 sbr = frameInfo.sbr;
1633 profile = frameInfo.object_type;
1634 header_type = frameInfo.header_type;
1635 */
1636
1637 faacDecClose(mp4state.hDecoder);
1638 fseek(mp4state.aacfile, tagsize, SEEK_SET);
1639 }
1640 }
1641
1642 mp4state.m_head = (struct seek_list*)malloc(sizeof(struct seek_list));
1643 mp4state.m_tail = mp4state.m_head;
1644 mp4state.m_tail->next = NULL;
1645
1646 mp4state.m_header_type = 0;
1647 if ((mp4state.m_aac_buffer[0] == 0xFF) && ((mp4state.m_aac_buffer[1] & 0xF6) == 0xF0))
1648 {
1649 if (1) //(can_seek)
1650 {
1651 adts_parse(&mp4state, &bitrate, &length);
1652 fseek(mp4state.aacfile, tagsize, SEEK_SET);
1653
1654 bread = fread(mp4state.m_aac_buffer, 1, 768*6, mp4state.aacfile);
1655 if (bread != 768*6)
1656 mp4state.m_at_eof = 1;
1657 else
1658 mp4state.m_at_eof = 0;
1659 mp4state.m_aac_bytes_into_buffer = bread;
1660 mp4state.m_aac_bytes_consumed = 0;
1661
1662 mp4state.m_header_type = 1;
1663 }
1664 } else if (memcmp(mp4state.m_aac_buffer, "ADIF", 4) == 0) {
1665 int skip_size = (mp4state.m_aac_buffer[4] & 0x80) ? 9 : 0;
1666 bitrate = ((unsigned int)(mp4state.m_aac_buffer[4 + skip_size] & 0x0F)<<19) |
1667 ((unsigned int)mp4state.m_aac_buffer[5 + skip_size]<<11) |
1668 ((unsigned int)mp4state.m_aac_buffer[6 + skip_size]<<3) |
1669 ((unsigned int)mp4state.m_aac_buffer[7 + skip_size] & 0xE0);
1670
1671 length = (double)file_length(mp4state.aacfile);
1672 if (length == -1)
1673 {
1674 //module.is_seekable = 0;
1675 length = 0;
1676 } else {
1677 length = ((double)length*8.)/((double)bitrate) + 0.5;
1678 }
1679
1680 mp4state.m_header_type = 2;
1681 } else {
1682 length = (double)file_length(mp4state.aacfile);
1683 length = ((double)length*8.)/((double)bitrate*1000.) + 0.5;
1684
1685 //module.is_seekable = 1;
1686 }
1687
1688 mp4state.m_length = (int)(length*1000.);
1689
1690 fill_buffer(&mp4state);
1691 if ((mp4state.m_aac_bytes_consumed = faacDecInit(mp4state.hDecoder,
1692 mp4state.m_aac_buffer, mp4state.m_aac_bytes_into_buffer,
1693 &mp4state.samplerate, &mp4state.channels)) < 0)
1694 {
1695 show_error(module.hMainWindow, "Can't initialize decoder library.");
1696 return -1;
1697 }
1698 advance_buffer(&mp4state, mp4state.m_aac_bytes_consumed);
1699
1700 if (mp4state.m_header_type == 2)
1701 avg_bitrate = bitrate;
1702 else
1703 avg_bitrate = bitrate*1000;
1704 } else {
1705 mp4state.hDecoder = faacDecOpen();
1706 if (!mp4state.hDecoder)
1707 {
1708 show_error(module.hMainWindow, "Unable to open decoder library.");
1709 return -1;
1710 }
1711
1712 config = faacDecGetCurrentConfiguration(mp4state.hDecoder);
1713 config->outputFormat = m_resolution + 1;
1714 config->downMatrix = m_downmix;
1715 faacDecSetConfiguration(mp4state.hDecoder, config);
1716
1717 mp4state.mp4file = MP4Read(mp4state.filename, 0);
1718 if (!mp4state.mp4file)
1719 {
1720 show_error(module.hMainWindow, "Unable to open file.");
1721 faacDecClose(mp4state.hDecoder);
1722 return -1;
1723 }
1724
1725 if ((mp4state.mp4track = GetAACTrack(mp4state.mp4file)) < 0)
1726 {
1727 show_error(module.hMainWindow, "Unsupported Audio track type.");
1728 faacDecClose(mp4state.hDecoder);
1729 MP4Close(mp4state.mp4file);
1730 return -1;
1731 }
1732
1733 buffer = NULL;
1734 buffer_size = 0;
1735 MP4GetTrackESConfiguration(mp4state.mp4file, mp4state.mp4track,
1736 &buffer, &buffer_size);
1737 if (!buffer)
1738 {
1739 faacDecClose(mp4state.hDecoder);
1740 MP4Close(mp4state.mp4file);
1741 return -1;
1742 }
1743
1744 if(faacDecInit2(mp4state.hDecoder, buffer, buffer_size,
1745 &mp4state.samplerate, &mp4state.channels) < 0)
1746 {
1747 /* If some error initializing occured, skip the file */
1748 faacDecClose(mp4state.hDecoder);
1749 MP4Close(mp4state.mp4file);
1750 if (buffer) free (buffer);
1751 return -1;
1752 }
1753
1754 /* for gapless decoding */
1755 {
1756 mp4AudioSpecificConfig mp4ASC;
1757
1758 mp4state.timescale = MP4GetTrackTimeScale(mp4state.mp4file, mp4state.mp4track);
1759 mp4state.framesize = 1024;
1760 mp4state.useAacLength = 0;
1761
1762 if (buffer)
1763 {
1764 if (AudioSpecificConfig(buffer, buffer_size, &mp4ASC) >= 0)
1765 {
1766 if (mp4ASC.frameLengthFlag == 1) mp4state.framesize = 960;
1767 if (mp4ASC.sbr_present_flag == 1) mp4state.framesize *= 2;
1768 }
1769 }
1770 }
1771
1772 free(buffer);
1773
1774 avg_bitrate = MP4GetTrackIntegerProperty(mp4state.mp4file, mp4state.mp4track,
1775 "mdia.minf.stbl.stsd.mp4a.esds.decConfigDescr.avgBitrate");
1776
1777 mp4state.numSamples = MP4GetTrackNumberOfSamples(mp4state.mp4file, mp4state.mp4track);
1778 mp4state.sampleId = 1;
1779
1780 //module.is_seekable = 1;
1781 }
1782
1783 if (mp4state.channels == 0)
1784 {
1785 show_error(module.hMainWindow, "Number of channels not supported for playback.");
1786 faacDecClose(mp4state.hDecoder);
1787 if (mp4state.filetype)
1788 fclose(mp4state.aacfile);
1789 else
1790 MP4Close(mp4state.mp4file);
1791 return -1;
1792 }
1793
1794 if (m_downmix && (mp4state.channels == 5 || mp4state.channels == 6))
1795 mp4state.channels = 2;
1796
1797 wf.wFormatTag = WAVE_FORMAT_PCM;
1798 wf.cbSize = 0;
1799 wf.nChannels = mp4state.channels;
1800 wf.wBitsPerSample = res_table[m_resolution];
1801 wf.nSamplesPerSec = mp4state.samplerate;
1802 wf.nBlockAlign = wf.nChannels * wf.wBitsPerSample / 8;
1803 wf.nAvgBytesPerSec = wf.nSamplesPerSec * wf.nBlockAlign;
1804 if (!module.QCDCallbacks.toPlayer.OutputOpen(mp4state.filename, &wf)) // error opening device
1805 {
1806 faacDecClose(mp4state.hDecoder);
1807 if (mp4state.filetype)
1808 fclose(mp4state.aacfile);
1809 else
1810 MP4Close(mp4state.mp4file);
1811 return -1;
1812 }
1813
1814 mp4state.paused = 0;
1815 mp4state.decode_pos_ms = 0;
1816 mp4state.seek_needed = -1;
1817
1818 //// initialize vis stuff
1819 //module.SAVSAInit(maxlatency, mp4state.samplerate);
1820 //module.VSASetInfo((int)mp4state.channels, mp4state.samplerate);
1821
1822 br = (int)floor(((float)avg_bitrate + 500.0)/1000.0 + 0.5);
1823 sr = (int)floor((float)mp4state.samplerate/1000.0 + 0.5);
1824 ai.struct_size = sizeof(AudioInfo);
1825 ai.frequency = sr*1000;
1826 ai.bitrate = br*1000;
1827 ai.mode = (mp4state.channels == 2) ? 0 : 3;
1828 ai.layer = 0;
1829 ai.level = 0;
1830 strcpy(ai.text, mp4state.filetype ? "AAC" : "MP4");
1831 module.QCDCallbacks.Service(opSetAudioInfo, &ai, sizeof(AudioInfo), 0);
1832
1833 //module.outMod->SetVolume(-666); // set the output plug-ins default volume
1834
1835 killPlayThread = 0;
1836
1837 if (mp4state.filetype)
1838 {
1839 if ((play_thread_handle = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)AACPlayThread,
1840 (void *)&killPlayThread, 0, &thread_id)) == NULL)
1841 {
1842 show_error(module.hMainWindow, "Cannot create playback thread");
1843 faacDecClose(mp4state.hDecoder);
1844 fclose(mp4state.aacfile);
1845 return -1;
1846 }
1847 } else {
1848 if ((play_thread_handle = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)MP4PlayThread,
1849 (void *)&killPlayThread, 0, &thread_id)) == NULL)
1850 {
1851 show_error(module.hMainWindow, "Cannot create playback thread");
1852 faacDecClose(mp4state.hDecoder);
1853 MP4Close(mp4state.mp4file);
1854 return -1;
1855 }
1856 }
1857
1858 SetThreadAffinityMask(play_thread_handle, 1);
1859
1860 SetThreadPriority(play_thread_handle, priority_table[m_priority]);
1861 }
1862
1863 return 1;
1864 }
1865
1866 //-----------------------------------------------------------------------------
1867
1868 int Pause(const char* medianame, int flags)
1869 {
1870 #ifdef DEBUG_OUTPUT
1871 in_mp4_DebugOutput("pause");
1872 #endif
1873
1874 mp4state.paused = flags;
1875
1876 if (module.QCDCallbacks.toPlayer.OutputPause(flags))
1877 return 1;
1878
1879 mp4state.paused = !flags;
1880 return 0;
1881 }
1882
1883 //void unpause()
1884 //{
1885 //#ifdef DEBUG_OUTPUT
1886 // in_mp4_DebugOutput("unpause");
1887 //#endif
1888 //
1889 // mp4state.paused = 0;
1890 // module.outMod->Pause(0);
1891 //}
1892 //
1893 //int ispaused()
1894 //{
1895 //#ifdef DEBUG_OUTPUT
1896 // in_mp4_DebugOutput("ispaused");
1897 //#endif
1898 //
1899 // return mp4state.paused;
1900 //}
1901
1902 //-----------------------------------------------------------------------------
1903
1904 void SetVolume(int levelleft, int levelright, int flags)
1905 {
1906 #ifdef DEBUG_OUTPUT
1907 in_mp4_DebugOutput("setvolume");
1908 #endif
1909
1910 module.QCDCallbacks.toPlayer.OutputSetVol(levelleft, levelright, flags);
1911 }
1912
1913 //void setpan(int pan)
1914 //{
1915 //#ifdef DEBUG_OUTPUT
1916 // in_mp4_DebugOutput("setpan");
1917 //#endif
1918 //
1919 // module.outMod->SetPan(pan);
1920 //}
1921
1922 //-----------------------------------------------------------------------------
1923
1924 int Stop(const char* medianame, int flags)
1925 {
1926 struct seek_list *target = mp4state.m_head;
1927
1928 #ifdef DEBUG_OUTPUT
1929 in_mp4_DebugOutput("stop");
1930 #endif
1931
1932 if (medianame && *medianame && stricmp(mp4state.filename, medianame) == 0)
1933 {
1934 module.QCDCallbacks.toPlayer.OutputStop(flags);
1935 killPlayThread = 1;
1936
1937 if (play_thread_handle != INVALID_HANDLE_VALUE)
1938 {
1939 if (WaitForSingleObject(play_thread_handle, INFINITE) == WAIT_TIMEOUT)
1940 TerminateThread(play_thread_handle,0);
1941 CloseHandle(play_thread_handle);
1942 play_thread_handle = INVALID_HANDLE_VALUE;
1943 }
1944
1945
1946 if (mp4state.m_aac_buffer)
1947 free(mp4state.m_aac_buffer);
1948
1949 while (target)
1950 {
1951 struct seek_list *tmp = target;
1952 target = target->next;
1953 if (tmp) free(tmp);
1954 }
1955 faacDecClose(mp4state.hDecoder);
1956 if (mp4state.filetype)
1957 fclose(mp4state.aacfile);
1958 else
1959 MP4Close(mp4state.mp4file);
1960
1961 //module.outMod->Close();
1962 //module.SAVSADeInit();
1963 mp4state.filename[0] = '\0';
1964 mp4state.paused = 0;
1965 }
1966
1967 return 1;
1968 }
1969
1970 int getsonglength(const char *fn)
1971 {
1972 long msDuration = 0;
1973
1974 if(!stricmp(fn + strlen(fn) - 3,"MP4") || !stricmp(fn + strlen(fn) - 3,"M4A"))
1975 {
1976 int track;
1977 MP4Duration length;
1978 MP4FileHandle file;
1979
1980 file = MP4Read(fn, 0);
1981 if (!file)
1982 return 0;
1983
1984 if ((track = GetAACTrack(file)) < 0)
1985 {
1986 MP4Close(file);
1987 return -1;
1988 }
1989
1990 length = MP4GetTrackDuration(file, track);
1991
1992 msDuration = MP4ConvertFromTrackDuration(file, track,
1993 length, MP4_MSECS_TIME_SCALE);
1994
1995 MP4Close(file);
1996
1997 return msDuration;
1998 } else {
1999 int tagsize = 0;
2000 int bread = 0;
2001 double length = 0.;
2002 __int64 bitrate = 128;
2003 struct seek_list *target;
2004 state len_state;
2005
2006 memset(&len_state, 0, sizeof(state));
2007
2008 if (!(len_state.aacfile = fopen(fn, "rb")))
2009 {
2010 // error
2011 return 0;
2012 }
2013
2014 len_state.m_at_eof = 0;
2015
2016 if (!(len_state.m_aac_buffer = (unsigned char*)malloc(768*6)))
2017 {
2018 //console::error("Memory allocation error.", "foo_mp4");
2019 return 0;
2020 }
2021 memset(len_state.m_aac_buffer, 0, 768*6);
2022
2023 bread = fread(len_state.m_aac_buffer, 1, 768*6, len_state.aacfile);
2024 len_state.m_aac_bytes_into_buffer = bread;
2025 len_state.m_aac_bytes_consumed = 0;
2026 len_state.m_file_offset = 0;
2027
2028 if (bread != 768*6)
2029 len_state.m_at_eof = 1;
2030
2031 if (!memcmp(len_state.m_aac_buffer, "ID3", 3))
2032 {
2033 /* high bit is not used */
2034 tagsize = (len_state.m_aac_buffer[6] << 21) | (len_state.m_aac_buffer[7] << 14) |
2035 (len_state.m_aac_buffer[8] << 7) | (len_state.m_aac_buffer[9] << 0);
2036
2037 tagsize += 10;
2038 advance_buffer(&len_state, tagsize);
2039 }
2040
2041 len_state.m_head = (struct seek_list*)malloc(sizeof(struct seek_list));
2042 len_state.m_tail = len_state.m_head;
2043 len_state.m_tail->next = NULL;
2044
2045 len_state.m_header_type = 0;
2046 if ((len_state.m_aac_buffer[0] == 0xFF) && ((len_state.m_aac_buffer[1] & 0xF6) == 0xF0))
2047 {
2048 if (1) //(m_reader->can_seek())
2049 {
2050 adts_parse(&len_state, &bitrate, &length);
2051 fseek(len_state.aacfile, tagsize, SEEK_SET);
2052
2053 bread = fread(len_state.m_aac_buffer, 1, 768*6, len_state.aacfile);
2054 if (bread != 768*6)
2055 len_state.m_at_eof = 1;
2056 else
2057 len_state.m_at_eof = 0;
2058 len_state.m_aac_bytes_into_buffer = bread;
2059 len_state.m_aac_bytes_consumed = 0;
2060
2061 len_state.m_header_type = 1;
2062 }
2063 } else if (memcmp(len_state.m_aac_buffer, "ADIF", 4) == 0) {
2064 int skip_size = (len_state.m_aac_buffer[4] & 0x80) ? 9 : 0;
2065 bitrate = ((unsigned int)(len_state.m_aac_buffer[4 + skip_size] & 0x0F)<<19) |
2066 ((unsigned int)len_state.m_aac_buffer[5 + skip_size]<<11) |
2067 ((unsigned int)len_state.m_aac_buffer[6 + skip_size]<<3) |
2068 ((unsigned int)len_state.m_aac_buffer[7 + skip_size] & 0xE0);
2069
2070 length = (double)file_length(len_state.aacfile);
2071 if (length == -1)
2072 length = 0;
2073 else
2074 length = ((double)length*8.)/((double)bitrate) + 0.5;
2075
2076 len_state.m_header_type = 2;
2077 } else {
2078 length = (double)file_length(len_state.aacfile);
2079 length = ((double)length*8.)/((double)bitrate*1000.) + 0.5;
2080
2081 len_state.m_header_type = 0;
2082 }
2083
2084 if (len_state.m_aac_buffer)
2085 free(len_state.m_aac_buffer);
2086
2087 target = len_state.m_head;
2088 while (target)
2089 {
2090 struct seek_list *tmp = target;
2091 target = target->next;
2092 if (tmp) free(tmp);
2093 }
2094
2095 fclose(len_state.aacfile);
2096
2097 return (int)(length*1000.);
2098 }
2099 }
2100
2101 //int getlength()
2102 //{
2103 // if (!mp4state.filetype)
2104 // {
2105 // int track;
2106 // long msDuration;
2107 // MP4Duration length;
2108 //
2109 // if ((track = GetAACTrack(mp4state.mp4file)) < 0)
2110 // {
2111 // return -1;
2112 // }
2113 //
2114 // length = MP4GetTrackDuration(mp4state.mp4file, track);
2115 //
2116 // msDuration = MP4ConvertFromTrackDuration(mp4state.mp4file, track,
2117 // length, MP4_MSECS_TIME_SCALE);
2118 //
2119 // return msDuration;
2120 // } else {
2121 // return mp4state.m_length;
2122 // }
2123 // return 0;
2124 //}
2125
2126 //-----------------------------------------------------------------------------
2127
2128 int GetCurrentPosition(const char* medianame, long *track, long *offset)
2129 {
2130 return module.QCDCallbacks.toPlayer.OutputGetCurrentPosition((UINT*)offset, 0);
2131 }
2132
2133 //void setoutputtime(int time_in_ms)
2134 //{
2135 //#ifdef DEBUG_OUTPUT
2136 // in_mp4_DebugOutput("setoutputtime");
2137 //#endif
2138 //
2139 // mp4state.seek_needed = time_in_ms;
2140 //}
2141
2142 //-----------------------------------------------------------------------------
2143
2144 int GetTrackExtents(const char* medianame, TrackExtents *ext, int flags)
2145 {
2146 int len;
2147 FILE *fh;
2148
2149 len = getsonglength((char *)medianame);
2150 fh = fopen(medianame, "rb");
2151 if (len <= 0 || !fh)
2152 return 0;
2153
2154 ext->track = 1;
2155 ext->start = 0;
2156 ext->end = len;
2157 ext->bytesize = file_length(fh);
2158 fclose(fh);
2159 ext->unitpersec = 1000;
2160
2161 return 1;
2162 }
2163
2164 //void eq_set(int on, char data[10], int preamp)
2165 //{
2166 //}
2167
2168 static void remap_channels(unsigned char *data, unsigned int samples, unsigned int bps)
2169 {
2170 unsigned int i;
2171
2172 switch (bps)
2173 {
2174 case 8:
2175 {
2176 unsigned char r1, r2, r3, r4, r5, r6;
2177 for (i = 0; i < samples; i += 6)
2178 {
2179 r1 = data[i];
2180 r2 = data[i+1];
2181 r3 = data[i+2];
2182 r4 = data[i+3];
2183 r5 = data[i+4];
2184 r6 = data[i+5];
2185 data[i] = r2;
2186 data[i+1] = r3;
2187 data[i+2] = r1;
2188 data[i+3] = r6;
2189 data[i+4] = r4;
2190 data[i+5] = r5;
2191 }
2192 }
2193 break;
2194
2195 case 16:
2196 default:
2197 {
2198 unsigned short r1, r2, r3, r4, r5, r6;
2199 unsigned short *sample_buffer = (unsigned short *)data;
2200 for (i = 0; i < samples; i += 6)
2201 {
2202 r1 = sample_buffer[i];
2203 r2 = sample_buffer[i+1];
2204 r3 = sample_buffer[i+2];
2205 r4 = sample_buffer[i+3];
2206 r5 = sample_buffer[i+4];
2207 r6 = sample_buffer[i+5];
2208 sample_buffer[i] = r2;
2209 sample_buffer[i+1] = r3;
2210 sample_buffer[i+2] = r1;
2211 sample_buffer[i+3] = r6;
2212 sample_buffer[i+4] = r4;
2213 sample_buffer[i+5] = r5;
2214 }
2215 }
2216 break;
2217
2218 case 24:
2219 case 32:
2220 {
2221 unsigned int r1, r2, r3, r4, r5, r6;
2222 unsigned int *sample_buffer = (unsigned int *)data;
2223 for (i = 0; i < samples; i += 6)
2224 {
2225 r1 = sample_buffer[i];
2226 r2 = sample_buffer[i+1];
2227 r3 = sample_buffer[i+2];
2228 r4 = sample_buffer[i+3];
2229 r5 = sample_buffer[i+4];
2230 r6 = sample_buffer[i+5];
2231 sample_buffer[i] = r2;
2232 sample_buffer[i+1] = r3;
2233 sample_buffer[i+2] = r1;
2234 sample_buffer[i+3] = r6;
2235 sample_buffer[i+4] = r4;
2236 sample_buffer[i+5] = r5;
2237 }
2238 }
2239 break;
2240 }
2241 }
2242
2243 DWORD WINAPI MP4PlayThread(void *b)
2244 {
2245 int done = 0, updatepos = 0;
2246 int l;
2247 int seq_frames = 0;
2248 int seq_bytes = 0;
2249
2250 void *sample_buffer;
2251 unsigned char *buffer;
2252 int buffer_size;
2253 faacDecFrameInfo frameInfo;
2254
2255 WriteDataStruct wd;
2256
2257 #ifdef DEBUG_OUTPUT
2258 in_mp4_DebugOutput("MP4PlayThread");
2259 #endif
2260
2261 PlayThreadAlive = 1;
2262 mp4state.last_frame = 0;
2263 mp4state.initial = 1;
2264
2265 while (!*((int *)b))
2266 {
2267 /* seeking */
2268 if (mp4state.seek_needed != -1)
2269 {
2270 MP4Duration duration;
2271
2272 module.QCDCallbacks.toPlayer.OutputFlush((unsigned int)mp4state.decode_pos_ms);
2273 duration = MP4ConvertToTrackDuration(mp4state.mp4file,
2274 mp4state.mp4track, mp4state.seek_needed, MP4_MSECS_TIME_SCALE);
2275 mp4state.sampleId = MP4GetSampleIdFromTime(mp4state.mp4file,
2276 mp4state.mp4track, duration, 0);
2277
2278 mp4state.decode_pos_ms = mp4state.seek_needed;
2279 mp4state.seek_needed = -1;
2280 updatepos = 1;
2281 }
2282
2283 if (done)
2284 {
2285 if (module.QCDCallbacks.toPlayer.OutputDrain(0) && !(mp4state.seek_needed >= 0))
2286 {
2287 module.QCDCallbacks.toPlayer.OutputStop(STOPFLAG_PLAYDONE);
2288 module.QCDCallbacks.toPlayer.PlayDone(mp4state.filename);
2289 PlayThreadAlive = 0;
2290 }
2291 else if (mp4state.seek_needed >= 0)
2292 {
2293 done = 0;
2294 continue;
2295 }
2296 break;
2297 } else/* if (module.outMod->CanWrite() >= (2048*mp4state.channels*sizeof(short)))*/ {
2298
2299 if (mp4state.last_frame)
2300 {
2301 done = 1;
2302 } else {
2303 int rc;
2304
2305 /* for gapless decoding */
2306 char *buf;
2307 MP4Duration dur;
2308 unsigned int sample_count;
2309 unsigned int delay = 0;
2310
2311 /* get acces unit from MP4 file */
2312 buffer = NULL;
2313 buffer_size = 0;
2314
2315 rc = MP4ReadSample(mp4state.mp4file, mp4state.mp4track,
2316 mp4state.sampleId++, &buffer, &buffer_size,
2317 NULL, &dur, NULL, NULL);
2318 if (mp4state.sampleId-1 == 1) dur = 0;
2319 if (rc == 0 || buffer == NULL)
2320 {
2321 mp4state.last_frame = 1;
2322 sample_buffer = NULL;
2323 frameInfo.samples = 0;
2324 } else {
2325 sample_buffer = faacDecDecode(mp4state.hDecoder, &frameInfo,
2326 buffer, buffer_size);
2327 }
2328 if (frameInfo.error > 0)
2329 {
2330 show_error(module.hMainWindow, faacDecGetErrorMessage(frameInfo.error));
2331 mp4state.last_frame = 1;
2332 }
2333 if (mp4state.sampleId > mp4state.numSamples)
2334 mp4state.last_frame = 1;
2335
2336 if (buffer) free(buffer);
2337
2338 if (mp4state.useAacLength || (mp4state.timescale != mp4state.samplerate)) {
2339 sample_count = frameInfo.samples;
2340 } else {
2341 sample_count = (unsigned int)(dur * frameInfo.channels);
2342
2343 if (!mp4state.useAacLength && !mp4state.initial && (mp4state.sampleId < mp4state.numSamples/2) && (dur*frameInfo.channels != frameInfo.samples))
2344 {
2345 //fprintf(stderr, "MP4 seems to have incorrect frame duration, using values from AAC data.\n");
2346 mp4state.useAacLength = 1;
2347 sample_count = frameInfo.samples;
2348 }
2349 }
2350
2351 if (mp4state.initial && (sample_count < mp4state.framesize*mp4state.channels) && (frameInfo.samples > sample_count))
2352 {
2353 delay = frameInfo.samples - sample_count;
2354 }
2355
2356 if (!killPlayThread && (sample_count > 0))
2357 {
2358 buf = (char *)sample_buffer;
2359 mp4state.initial = 0;
2360
2361 switch (res_table[m_resolution])
2362 {
2363 case 8:
2364 buf += delay;
2365 break;
2366 case 16:
2367 default:
2368 buf += delay * 2;
2369 break;
2370 case 24:
2371 case 32:
2372 buf += delay * 4;
2373 break;
2374 case 64:
2375 buf += delay * 8;
2376 }
2377
2378 if (frameInfo.channels == 6 && frameInfo.num_lfe_channels)
2379 remap_channels(buf, sample_count, res_table[m_resolution]);
2380
2381 if (res_table[m_resolution] == 24)
2382 {
2383 /* convert libfaad output (3 bytes packed in 4) */
2384 char *temp_buffer = convert3in4to3in3(buf, sample_count);
2385 memcpy((void*)buf, (void*)temp_buffer, sample_count*3);
2386 free(temp_buffer);
2387 }
2388
2389 //module.SAAddPCMData(buf, (int)mp4state.channels, res_table[m_resolution],
2390 // mp4state.decode_pos_ms);
2391 //module.VSAAddPCMData(buf, (int)mp4state.channels, res_table[m_resolution],
2392 // mp4state.decode_pos_ms);
2393 mp4state.decode_pos_ms += (double)sample_count * 1000.0 /
2394 ((double)frameInfo.samplerate * (double)frameInfo.channels);
2395
2396 l = sample_count * res_table[m_resolution] / 8;
2397
2398 if (updatepos)
2399 {
2400 module.QCDCallbacks.toPlayer.PositionUpdate((unsigned int)mp4state.decode_pos_ms);
2401 updatepos = 0;
2402 }
2403
2404 wd.bytelen = l;
2405 wd.data = (short*)buf;
2406 wd.markerend = 0;
2407 wd.markerstart = (UINT)mp4state.decode_pos_ms;
2408 wd.bps = res_table[m_resolution];
2409 wd.nch = frameInfo.channels;
2410 wd.numsamples = sample_count/frameInfo.channels;
2411 wd.srate = frameInfo.samplerate;
2412
2413 if (!module.QCDCallbacks.toPlayer.OutputWrite(&wd))
2414 done = 1;
2415
2416 //if (module.dsp_isactive())
2417 //{
2418 // void *dsp_buffer = malloc(l*2);
2419 // memcpy(dsp_buffer, buf, l);
2420
2421 // l = module.dsp_dosamples((short*)dsp_buffer,
2422 // sample_count/frameInfo.channels,
2423 // res_table[m_resolution],
2424 // frameInfo.channels,
2425 // frameInfo.samplerate) *
2426 // (frameInfo.channels*(res_table[m_resolution]/8));
2427
2428 // module.outMod->Write(dsp_buffer, l);
2429 // if (dsp_buffer) free(dsp_buffer);
2430 //} else {
2431 // module.outMod->Write(buf, l);
2432 //}
2433
2434 /* VBR bitrate display */
2435 if (m_vbr_display)
2436 {
2437 seq_frames++;
2438 seq_bytes += frameInfo.bytesconsumed;
2439 if (seq_frames == (int)(floor((float)frameInfo.samplerate/(float)(sample_count/frameInfo.channels) + 0.5)))
2440 {
2441 ai.bitrate = (int)floor(((float)seq_bytes*8.)/1000. + 0.5) * 1000;
2442 ai.frequency = (int)floor(frameInfo.samplerate/1000. + 0.5) * 1000;
2443 ai.mode = (mp4state.channels == 2) ? 0 : 3;
2444 module.QCDCallbacks.Service(opSetAudioInfo, &ai, sizeof(AudioInfo), 0);
2445
2446 seq_frames = 0;
2447 seq_bytes = 0;
2448 }
2449 }
2450 }
2451 }
2452 }
2453
2454 Sleep(10);
2455
2456 // catch pause
2457 while (mp4state.paused && !killPlayThread)
2458 Sleep(50);
2459 }
2460
2461 PlayThreadAlive = 0;
2462
2463 return 0;
2464 }
2465
2466 void *decode_aac_frame(state *st, faacDecFrameInfo *frameInfo)
2467 {
2468 void *sample_buffer = NULL;
2469
2470 do
2471 {
2472 fill_buffer(st);
2473
2474 if (st->m_aac_bytes_into_buffer != 0)
2475 {
2476 sample_buffer = faacDecDecode(st->hDecoder, frameInfo,
2477 st->m_aac_buffer, st->m_aac_bytes_into_buffer);
2478
2479 if (st->m_header_type != 1)
2480 {
2481 if (st->last_offset < st->m_file_offset)
2482 {
2483 st->m_tail->offset = st->m_file_offset;
2484 st->m_tail->next = (struct seek_list*)malloc(sizeof(struct seek_list));
2485 st->m_tail = st->m_tail->next;
2486 st->m_tail->next = NULL;
2487 st->last_offset = st->m_file_offset;
2488 }
2489 }
2490
2491 advance_buffer(st, frameInfo->bytesconsumed);
2492 } else {
2493 break;
2494 }
2495
2496 } while (!frameInfo->samples && !frameInfo->error);
2497
2498 return sample_buffer;
2499 }
2500
2501 int aac_seek(state *st, double seconds)
2502 {
2503 int i, frames;
2504 int bread;
2505 struct seek_list *target = st->m_head;
2506
2507 if (1 /*can_seek*/ && ((st->m_header_type == 1) || (seconds < st->cur_pos_sec)))
2508 {
2509 frames = (int)(seconds*((double)st->samplerate/(double)st->framesize) + 0.5);
2510
2511 for (i = 0; i < frames; i++)
2512 {
2513 if (target->next)
2514 target = target->next;
2515 else
2516 return 0;
2517 }
2518 if (target->offset == 0 && frames > 0)
2519 return 0;
2520 fseek(st->aacfile, target->offset, SEEK_SET);
2521 st->m_file_offset = target->offset;
2522
2523 bread = fread(st->m_aac_buffer, 1, 768*6, st->aacfile);
2524 if (bread != 768*6)
2525 st->m_at_eof = 1;
2526 else
2527 st->m_at_eof = 0;
2528 st->m_aac_bytes_into_buffer = bread;
2529 st->m_aac_bytes_consumed = 0;
2530 st->m_file_offset += bread;
2531
2532 faacDecPostSeekReset(st->hDecoder, -1);
2533
2534 return 1;
2535 } else {
2536 if (seconds > st->cur_pos_sec)
2537 {
2538 faacDecFrameInfo frameInfo;
2539
2540 frames = (int)((seconds - st->cur_pos_sec)*((double)st->samplerate/(double)st->framesize));
2541
2542 if (frames > 0)
2543 {
2544 for (i = 0; i < frames; i++)
2545 {
2546 memset(&frameInfo, 0, sizeof(faacDecFrameInfo));
2547 decode_aac_frame(st, &frameInfo);
2548
2549 if (frameInfo.error || (st->m_aac_bytes_into_buffer == 0))
2550 {
2551 if (frameInfo.error)
2552 {
2553 if (faacDecGetErrorMessage(frameInfo.error) != NULL)
2554 show_error(module.hMainWindow, faacDecGetErrorMessage(frameInfo.error));
2555 }
2556 return 0;
2557 }
2558 }
2559 }
2560
2561 faacDecPostSeekReset(st->hDecoder, -1);
2562 }
2563 return 1;
2564 }
2565 }
2566
2567 DWORD WINAPI AACPlayThread(void *b)
2568 {
2569 int done = 0, updatepos = 0;
2570 int l;
2571 int seq_frames = 0;
2572 int seq_bytes = 0;
2573
2574 WriteDataStruct wd;
2575
2576 #ifdef DEBUG_OUTPUT
2577 in_mp4_DebugOutput("AACPlayThread");
2578 #endif
2579
2580 PlayThreadAlive = 1;
2581 mp4state.last_frame = 0;
2582
2583 while (!*((int *)b))
2584 {
2585 /* seeking */
2586 if (mp4state.seek_needed != -1)
2587 {
2588 double ms;
2589
2590 ms = mp4state.seek_needed/1000;
2591 if (aac_seek(&mp4state, ms)!=0)
2592 {
2593 module.QCDCallbacks.toPlayer.OutputFlush((unsigned int)mp4state.decode_pos_ms);
2594 mp4state.cur_pos_sec = ms;
2595 mp4state.decode_pos_ms = mp4state.seek_needed;
2596 }
2597 mp4state.seek_needed = -1;
2598 updatepos = 1;
2599 }
2600
2601 if (done)
2602 {
2603 if (module.QCDCallbacks.toPlayer.OutputDrain(0) && !(mp4state.seek_needed >= 0))
2604 {
2605 module.QCDCallbacks.toPlayer.OutputStop(STOPFLAG_PLAYDONE);
2606 module.QCDCallbacks.toPlayer.PlayDone(mp4state.filename);
2607 PlayThreadAlive = 0;
2608 }
2609 else if (mp4state.seek_needed >= 0)
2610 {
2611 done = 0;
2612 continue;
2613 }
2614 break;
2615 } else/* if (module.outMod->CanWrite() >= (2048*mp4state.channels*sizeof(short)))*/ {
2616 faacDecFrameInfo frameInfo;
2617 void *sample_buffer;
2618
2619 memset(&frameInfo, 0, sizeof(faacDecFrameInfo));
2620
2621 sample_buffer = decode_aac_frame(&mp4state, &frameInfo);
2622
2623 if (frameInfo.error || (mp4state.m_aac_bytes_into_buffer == 0))
2624 {
2625 if (frameInfo.error)
2626 {
2627 if (faacDecGetErrorMessage(frameInfo.error) != NULL)
2628 show_error(module.hMainWindow, faacDecGetErrorMessage(frameInfo.error));
2629 }
2630 done = 1;
2631 }
2632
2633 if (!killPlayThread && (frameInfo.samples > 0))
2634 {
2635 if (frameInfo.channels == 6 && frameInfo.num_lfe_channels)
2636 remap_channels(sample_buffer, frameInfo.samples, res_table[m_resolution]);
2637
2638 if (res_table[m_resolution] == 24)
2639 {
2640 /* convert libfaad output (3 bytes packed in 4 bytes) */
2641 char *temp_buffer = convert3in4to3in3(sample_buffer, frameInfo.samples);
2642 memcpy((void*)sample_buffer, (void*)temp_buffer, frameInfo.samples*3);
2643 free(temp_buffer);
2644 }
2645
2646 //module.SAAddPCMData(sample_buffer, (int)mp4state.channels, res_table[m_resolution],
2647 // mp4state.decode_pos_ms);
2648 //module.VSAAddPCMData(sample_buffer, (int)mp4state.channels, res_table[m_resolution],
2649 // mp4state.decode_pos_ms);
2650 mp4state.decode_pos_ms += (double)frameInfo.samples * 1000.0 /
2651 ((double)frameInfo.samplerate* (double)frameInfo.channels);
2652
2653 l = frameInfo.samples * res_table[m_resolution] / 8;
2654
2655 if (updatepos)
2656 {
2657 module.QCDCallbacks.toPlayer.PositionUpdate((unsigned int)mp4state.decode_pos_ms);
2658 updatepos = 0;
2659 }
2660
2661 wd.bytelen = l;
2662 wd.data = (short*)sample_buffer;
2663 wd.markerend = 0;
2664 wd.markerstart = (UINT)mp4state.decode_pos_ms;
2665 wd.bps = res_table[m_resolution];
2666 wd.nch = frameInfo.channels;
2667 wd.numsamples = frameInfo.samples/frameInfo.channels;
2668 wd.srate = frameInfo.samplerate;
2669
2670 if (!module.QCDCallbacks.toPlayer.OutputWrite(&wd))
2671 done = 1;
2672
2673 //if (module.dsp_isactive())
2674 //{
2675 // void *dsp_buffer = malloc(l*2);
2676 // memcpy(dsp_buffer, sample_buffer, l);
2677
2678 // l = module.dsp_dosamples((short*)dsp_buffer,
2679 // frameInfo.samples/frameInfo.channels,
2680 // res_table[m_resolution],
2681 // frameInfo.channels,
2682 // frameInfo.samplerate) *
2683 // (frameInfo.channels*(res_table[m_resolution]/8));
2684
2685 // module.outMod->Write(dsp_buffer, l);
2686 // if (dsp_buffer) free(dsp_buffer);
2687 //} else {
2688 // module.outMod->Write(sample_buffer, l);
2689 //}
2690
2691 /* VBR bitrate display */
2692 if (m_vbr_display)
2693 {
2694 seq_frames++;
2695 seq_bytes += frameInfo.bytesconsumed;
2696 if (seq_frames == (int)(floor((float)frameInfo.samplerate/(float)(frameInfo.samples/frameInfo.channels) + 0.5)))
2697 {
2698 ai.bitrate = (int)floor(((float)seq_bytes*8.)/1000. + 0.5) * 1000;
2699 ai.frequency = (int)floor(frameInfo.samplerate/1000. + 0.5) * 1000;
2700 ai.mode = (mp4state.channels == 2) ? 0 : 3;
2701 module.QCDCallbacks.Service(opSetAudioInfo, &ai, sizeof(AudioInfo), 0);
2702
2703 seq_frames = 0;
2704 seq_bytes = 0;
2705 }
2706 }
2707 }
2708
2709 if (frameInfo.channels > 0 && mp4state.samplerate > 0)
2710 mp4state.cur_pos_sec += ((double)(frameInfo.samples/frameInfo.channels))/(double)mp4state.samplerate;
2711 }
2712
2713 Sleep(10);
2714
2715 // catch pause
2716 while (mp4state.paused && !killPlayThread)
2717 Sleep(50);
2718 }
2719
2720 PlayThreadAlive = 0;
2721
2722 return 0;
2723 }
2724
2725 //-----------------------------------------------------------------------------
2726
2727 int WINAPI DllMain(HINSTANCE hInst, DWORD fdwReason, LPVOID pRes)
2728 {
2729 if (fdwReason == DLL_PROCESS_ATTACH)
2730 {
2731 module.hDllInstance = hInst;
2732 }
2733 return 1;
2734 }
2735
2736 //-----------------------------------------------------------------------------
2737
2738 PLUGIN_API QCDModInitIn* INPUTDLL_ENTRY_POINT(QCDModInitIn *ModInit, QCDModInfo *ModInfo)
2739 {
2740 module.QCDCallbacks.size = sizeof(QCDModInitIn);
2741 module.QCDCallbacks.version = PLUGIN_API_VERSION;
2742 module.QCDCallbacks.toModule.Initialize = Initialize;
2743 module.QCDCallbacks.toModule.ShutDown = ShutDown;
2744 module.QCDCallbacks.toModule.GetTrackExtents = GetTrackExtents;
2745 module.QCDCallbacks.toModule.GetMediaSupported = GetMediaSupported;
2746 module.QCDCallbacks.toModule.Play = Play;
2747 module.QCDCallbacks.toModule.Pause = Pause;
2748 module.QCDCallbacks.toModule.Stop = Stop;
2749 module.QCDCallbacks.toModule.About = About;
2750 module.QCDCallbacks.toModule.Configure = Configure;
2751 module.QCDCallbacks.toModule.SetEQ = NULL;
2752 module.QCDCallbacks.toModule.SetVolume = SetVolume;
2753
2754 return &module.QCDCallbacks;
2755 }
2756
2757 ///* new Media Library interface */
2758 //
2759 //int mp4_get_metadata(MP4FileHandle file, const char *item, char *dest, int dlen)
2760 //{
2761 // char *pVal = NULL, dummy1[4096];
2762 // short dummy = 0, dummy2 = 0;
2763 //
2764 // if (dlen < 1) return 0;
2765 //
2766 // if (!stricmp(item, "track") || !stricmp(item, "tracknumber"))
2767 // {
2768 // if (MP4GetMetadataTrack(file, &dummy, &dummy2))
2769 // {
2770 // wsprintf(dummy1, "%d", (int)dummy);
2771 // strncpy(dest, dummy1, dlen-1);
2772 // dest[dlen-1] = '\0';
2773 // return 1;
2774 // }
2775 // }
2776 // else if (!stricmp(item, "disc") || !stricmp(item, "disknumber"))
2777 // {
2778 // if (MP4GetMetadataDisk(file, &dummy, &dummy2))
2779 // {
2780 // wsprintf(dummy1, "%d", (int)dummy);
2781 // strncpy(dest, dummy1, dlen-1);
2782 // dest[dlen-1] = '\0';
2783 // return 1;
2784 // }
2785 // }
2786 // else if (!stricmp(item, "compilation"))
2787 // {
2788 // u_int8_t cpil = 0;
2789 // if (MP4GetMetadataCompilation(file, &cpil))
2790 // {
2791 // wsprintf(dummy1, "%d", (int)cpil);
2792 // strncpy(dest, dummy1, dlen-1);
2793 // dest[dlen-1] = '\0';
2794 // return 1;
2795 // }
2796 // }
2797 // else if (!stricmp(item, "tempo"))
2798 // {
2799 // u_int16_t tempo = 0;
2800 // if (MP4GetMetadataTempo(file, &tempo))
2801 // {
2802 // wsprintf(dummy1, "%d", (int)tempo);
2803 // strncpy(dest, dummy1, dlen-1);
2804 // dest[dlen-1] = '\0';
2805 // return 1;
2806 // }
2807 // }
2808 // else if (!stricmp(item, "artist"))
2809 // {
2810 // if (MP4GetMetadataArtist(file, &pVal))
2811 // {
2812 // strncpy(dest, pVal, dlen-1);
2813 // dest[dlen-1] = '\0';
2814 // return 1;
2815 // }
2816 // }
2817 // else if (!stricmp(item, "writer"))
2818 // {
2819 // if (MP4GetMetadataWriter(file, &pVal))
2820 // {
2821 // strncpy(dest, pVal, dlen-1);
2822 // dest[dlen-1] = '\0';
2823 // return 1;
2824 // }
2825 // }
2826 // else if (!stricmp(item, "title"))
2827 // {
2828 // if (MP4GetMetadataName(file, &pVal))
2829 // {
2830 // strncpy(dest, pVal, dlen-1);
2831 // dest[dlen-1] = '\0';
2832 // return 1;
2833 // }
2834 // }
2835 // else if (!stricmp(item, "album"))
2836 // {
2837 // if (MP4GetMetadataAlbum(file, &pVal))
2838 // {
2839 // strncpy(dest, pVal, dlen-1);
2840 // dest[dlen-1] = '\0';
2841 // return 1;
2842 // }
2843 // }
2844 // else if (!stricmp(item, "date") || !stricmp(item, "year"))
2845 // {
2846 // if (MP4GetMetadataYear(file, &pVal))
2847 // {
2848 // strncpy(dest, pVal, dlen-1);
2849 // dest[dlen-1] = '\0';
2850 // return 1;
2851 // }
2852 // }
2853 // else if (!stricmp(item, "comment"))
2854 // {
2855 // if (MP4GetMetadataComment(file, &pVal))
2856 // {
2857 // strncpy(dest, pVal, dlen-1);
2858 // dest[dlen-1] = '\0';
2859 // return 1;
2860 // }
2861 // }
2862 // else if (!stricmp(item, "genre"))
2863 // {
2864 // if (MP4GetMetadataGenre(file, &pVal))
2865 // {
2866 // strncpy(dest, pVal, dlen-1);
2867 // dest[dlen-1] = '\0';
2868 // return 1;
2869 // }
2870 // }
2871 // else if (!stricmp(item, "tool"))
2872 // {
2873 // if (MP4GetMetadataTool(file, &pVal))
2874 // {
2875 // strncpy(dest, pVal, dlen-1);
2876 // dest[dlen-1] = '\0';
2877 // return 1;
2878 // }
2879 // }
2880 // else
2881 // {
2882 // u_int32_t valueSize = 0;
2883 // u_int8_t *pValue = NULL;
2884 //
2885 // if (MP4GetMetadataFreeForm(file, (char *)item, &pValue, &valueSize))
2886 // {
2887 // unsigned int len = (valueSize < (unsigned int)(dlen-1)) ? valueSize : (unsigned int)(dlen-1);
2888 // memcpy(dest, pValue, len);
2889 // dest[len] = '\0';
2890 // return 1;
2891 // }
2892 // }
2893 //
2894 // return 0;
2895 //}
2896 //
2897 //__declspec(dllexport) int winampGetExtendedFileInfo(const char *fn, const char *data, char *dest, int destlen)
2898 //{
2899 // if (!fn || (fn && !*fn) || !destlen) return 0;
2900 //
2901 // dest[0] = '\0';
2902 //
2903 // if (!stricmp(data, "length"))
2904 // {
2905 // char temp[32];
2906 // int len = getsonglength(fn);
2907 // itoa(len, temp, 10);
2908 // strncpy(dest, temp, destlen-1);
2909 // dest[destlen-1] = '\0';
2910 // }
2911 // else
2912 // {
2913 // char temp[2048], temp2[2048];
2914 // MP4FileHandle file = MP4Read(fn, 0);
2915 // if (file == MP4_INVALID_FILE_HANDLE) return 0;
2916 //
2917 // if (mp4_get_metadata(file, data, temp, sizeof(temp)))
2918 // {
2919 // int len = ConvertUTF8ToANSI(temp, temp2);
2920 // if (len > destlen-1) len = destlen-1;
2921 // memcpy(dest, temp2, len);
2922 // dest[len] = '\0';
2923 // }
2924 //
2925 // MP4Close(file);
2926 // }
2927 //
2928 // return 1;
2929 //}
2930 //
2931 //static struct medialib_tags mltags = {0, 0};
2932 //static BOOL medialib_init = FALSE;
2933 //static char medialib_lastfn[2048] = "";
2934 //
2935 //__declspec(dllexport) int winampSetExtendedFileInfo(const char *fn, const char *data, char *val)
2936 //{
2937 // int len, ret = 0;
2938 // char *temp;
2939 //
2940 // if (!medialib_init || (medialib_init && stricmp(fn, medialib_lastfn))) {
2941 // MP4FileHandle file;
2942 // strcpy(medialib_lastfn, fn);
2943 //
2944 // if (medialib_init) tag_delete(&mltags);
2945 //
2946 // file = MP4Read(fn, 0);
2947 // if (file == MP4_INVALID_FILE_HANDLE) return 0;
2948 // ReadMP4Tag(file, &mltags);
2949 // MP4Close(file);
2950 // medialib_init = TRUE;
2951 // }
2952 //
2953 // len = strlen(val);
2954 // temp = (char *)malloc((len+1)*4);
2955 // if (!temp) return 0;
2956 //
2957 // if (ConvertANSIToUTF8(val, temp))
2958 // {
2959 // ret = 1;
2960 // tag_set_field(&mltags, data, temp);
2961 // }
2962 //
2963 // free(temp);
2964 //
2965 // return ret;
2966 //}
2967 //
2968 //__declspec(dllexport) int winampWriteExtendedFileInfo()
2969 //{
2970 // if (medialib_init)
2971 // {
2972 // MP4FileHandle file = MP4Modify(medialib_lastfn, 0, 0);
2973 // if (file == MP4_INVALID_FILE_HANDLE) return 0;
2974 //
2975 // MP4MetadataDelete(file);
2976 // MP4Close(file);
2977 //
2978 // file = MP4Modify(medialib_lastfn, 0, 0);
2979 // if (file == MP4_INVALID_FILE_HANDLE) return 0;
2980 //
2981 // WriteMP4Tag(file, &mltags);
2982 //
2983 // MP4Close(file);
2984 //
2985 // return 1;
2986 // }
2987 // else
2988 // {
2989 // return 0;
2990 // }
2991 //}
+0
-191
plugins/QCDMp4/QCDMp4.rc less more
0 // Microsoft Visual C++ generated resource script.
1 //
2 #include "resource.h"
3
4 #define APSTUDIO_READONLY_SYMBOLS
5 /////////////////////////////////////////////////////////////////////////////
6 //
7 // Generated from the TEXTINCLUDE 2 resource.
8 //
9 #include "afxres.h"
10
11 /////////////////////////////////////////////////////////////////////////////
12 #undef APSTUDIO_READONLY_SYMBOLS
13
14 /////////////////////////////////////////////////////////////////////////////
15 // 中文(中华人民共和国) resources
16
17 #if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_CHS)
18 #ifdef _WIN32
19 LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_SIMPLIFIED
20 #pragma code_page(936)
21 #endif //_WIN32
22
23 /////////////////////////////////////////////////////////////////////////////
24 //
25 // Dialog
26 //
27
28 IDD_CONFIG DIALOGEX 0, 0, 242, 93
29 STYLE DS_SETFONT | DS_MODALFRAME | WS_MINIMIZEBOX | WS_POPUP | WS_CAPTION |
30 WS_SYSMENU
31 CAPTION "Configuration"
32 FONT 9, "���ו", 400, 0, 0x86
33 BEGIN
34 CONTROL "Slider1",IDC_PRIORITY,"msctls_trackbar32",TBS_VERT |
35 TBS_NOTICKS | WS_TABSTOP,13,15,18,46
36 CONTROL "16 λ",IDC_16BITS,"Button",BS_AUTORADIOBUTTON,77,18,37,
37 10
38 CONTROL "16 λ¸ßƵ¶¶¶¯",IDC_16BITS_DITHERED,"Button",
39 BS_AUTORADIOBUTTON | WS_DISABLED,77,29,64,10
40 CONTROL "24 λ",IDC_24BITS,"Button",BS_AUTORADIOBUTTON,77,40,37,
41 10
42 CONTROL "32 λ",IDC_32BITS,"Button",BS_AUTORADIOBUTTON,77,51,37,
43 10
44 CONTROL "向下混频到立体声",IDC_DOWNMIX,"Button",BS_AUTOCHECKBOX |
45 WS_TABSTOP,152,13,80,10
46 CONTROL "支持 AAC 格式",IDC_USEFORAAC,"Button",BS_AUTOCHECKBOX |
47 WS_TABSTOP,152,26,68,10
48 CONTROL "显示可变比特率",IDC_VBR,"Button",BS_AUTOCHECKBOX |
49 WS_TABSTOP,152,39,72,10
50 CONTROL "¤н╩Й┤ь╬зл┼¤б",IDC_ERROR,"Button",BS_AUTOCHECKBOX |
51 WS_TABSTOP,152,52,64,10
52 DEFPUSHBUTTON "È·¶¨",IDOK,185,72,50,14
53 PUSHBUTTON "È¡Ïû",IDCANCEL,127,72,50,14
54 GROUPBOX "сеох╪╤",IDC_STATIC,7,7,57,58
55 LTEXT "¸ß",IDC_STATIC,34,18,25,8
56 LTEXT "±ê×¼",IDC_STATIC,34,35,23,8
57 LTEXT "ตอ",IDC_STATIC,34,52,24,8
58 GROUPBOX "½âÎö¶È",IDC_STATIC,71,7,73,58
59 END
60
61
62 /////////////////////////////////////////////////////////////////////////////
63 //
64 // DESIGNINFO
65 //
66
67 #ifdef APSTUDIO_INVOKED
68 GUIDELINES DESIGNINFO
69 BEGIN
70 IDD_CONFIG, DIALOG
71 BEGIN
72 LEFTMARGIN, 7
73 RIGHTMARGIN, 235
74 TOPMARGIN, 7
75 BOTTOMMARGIN, 86
76 END
77 END
78 #endif // APSTUDIO_INVOKED
79
80 #endif // 中文(中华人民共和国) resources
81 /////////////////////////////////////////////////////////////////////////////
82
83
84 /////////////////////////////////////////////////////////////////////////////
85 // ∫…¿º”Ô(∫…¿º) resources
86
87 #if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_NLD)
88 #ifdef _WIN32
89 LANGUAGE LANG_DUTCH, SUBLANG_DUTCH
90 #pragma code_page(1252)
91 #endif //_WIN32
92
93 #ifdef APSTUDIO_INVOKED
94 /////////////////////////////////////////////////////////////////////////////
95 //
96 // TEXTINCLUDE
97 //
98
99 1 TEXTINCLUDE
100 BEGIN
101 "resource.h\0"
102 END
103
104 2 TEXTINCLUDE
105 BEGIN
106 "#include ""afxres.h""\r\n"
107 "\0"
108 END
109
110 3 TEXTINCLUDE
111 BEGIN
112 "\r\n"
113 "\0"
114 END
115
116 #endif // APSTUDIO_INVOKED
117
118
119 /////////////////////////////////////////////////////////////////////////////
120 //
121 // Dialog
122 //
123
124 IDD_CONFIG DIALOGEX 0, 0, 233, 93
125 STYLE DS_SETFONT | DS_MODALFRAME | WS_MINIMIZEBOX | WS_POPUP | WS_CAPTION |
126 WS_SYSMENU
127 CAPTION "Configuration"
128 FONT 8, "MS Sans Serif", 0, 0, 0x0
129 BEGIN
130 CONTROL "Slider1",IDC_PRIORITY,"msctls_trackbar32",TBS_VERT |
131 TBS_NOTICKS | WS_TABSTOP,13,15,18,46
132 CONTROL "16 bits",IDC_16BITS,"Button",BS_AUTORADIOBUTTON,77,18,
133 37,10
134 CONTROL "16 bits dithered",IDC_16BITS_DITHERED,"Button",
135 BS_AUTORADIOBUTTON | WS_DISABLED,77,29,64,10
136 CONTROL "24 bits",IDC_24BITS,"Button",BS_AUTORADIOBUTTON,77,40,
137 37,10
138 CONTROL "32 bits",IDC_32BITS,"Button",BS_AUTORADIOBUTTON,77,51,
139 37,10
140 CONTROL "Downmix to stereo",IDC_DOWNMIX,"Button",BS_AUTOCHECKBOX |
141 WS_TABSTOP,152,13,74,10
142 CONTROL "Use for AAC",IDC_USEFORAAC,"Button",BS_AUTOCHECKBOX |
143 WS_TABSTOP,152,26,55,10
144 CONTROL "VBR Display",IDC_VBR,"Button",BS_AUTOCHECKBOX |
145 WS_TABSTOP,152,39,55,10
146 CONTROL "Show errors",IDC_ERROR,"Button",BS_AUTOCHECKBOX |
147 WS_TABSTOP,152,52,53,10
148 DEFPUSHBUTTON "OK",IDOK,176,72,50,14
149 PUSHBUTTON "Cancel",IDCANCEL,115,72,50,14
150 GROUPBOX "Priority",IDC_STATIC,7,7,57,58
151 LTEXT "Highest",IDC_STATIC,34,18,25,8
152 LTEXT "Normal",IDC_STATIC,34,35,23,8
153 LTEXT "Lowest",IDC_STATIC,34,52,24,8
154 GROUPBOX "Resolution",IDC_STATIC,71,7,73,58
155 END
156
157
158 /////////////////////////////////////////////////////////////////////////////
159 //
160 // DESIGNINFO
161 //
162
163 #ifdef APSTUDIO_INVOKED
164 GUIDELINES DESIGNINFO
165 BEGIN
166 IDD_CONFIG, DIALOG
167 BEGIN
168 LEFTMARGIN, 7
169 RIGHTMARGIN, 226
170 TOPMARGIN, 7
171 BOTTOMMARGIN, 86
172 END
173 END
174 #endif // APSTUDIO_INVOKED
175
176 #endif // ∫…¿º”Ô(∫…¿º) resources
177 /////////////////////////////////////////////////////////////////////////////
178
179
180
181 #ifndef APSTUDIO_INVOKED
182 /////////////////////////////////////////////////////////////////////////////
183 //
184 // Generated from the TEXTINCLUDE 3 resource.
185 //
186
187
188 /////////////////////////////////////////////////////////////////////////////
189 #endif // not APSTUDIO_INVOKED
190
+0
-35
plugins/QCDMp4/QCDMp4.sln less more
0 Microsoft Visual Studio Solution File, Format Version 9.00
1 # Visual Studio 2005
2 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "QCDMp4", "QCDMp4.vcproj", "{2D8F479D-A591-4502-9456-398425D5F834}"
3 ProjectSection(ProjectDependencies) = postProject
4 {2398BB2F-FFF9-490B-B4CC-863F2D21AE46} = {2398BB2F-FFF9-490B-B4CC-863F2D21AE46}
5 {8CAC9E26-BAA5-45A4-8721-E3170B3F8F49} = {8CAC9E26-BAA5-45A4-8721-E3170B3F8F49}
6 EndProjectSection
7 EndProject
8 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libfaad", "..\..\libfaad\libfaad.vcproj", "{BC3EFE27-9015-4C9C-AD3C-72B3B7ED2114}"
9 EndProject
10 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libmp4v2_st", "..\..\common\mp4v2\libmp4v2_st60.vcproj", "{2398BB2F-FFF9-490B-B4CC-863F2D21AE46}"
11 EndProject
12 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libmp4av_st", "..\..\common\mp4av\libmp4av_st.vcproj", "{8CAC9E26-BAA5-45A4-8721-E3170B3F8F49}"
13 EndProject
14 Global
15 GlobalSection(SolutionConfigurationPlatforms) = preSolution
16 Debug|Win32 = Debug|Win32
17 Release|Win32 = Release|Win32
18 EndGlobalSection
19 GlobalSection(ProjectConfigurationPlatforms) = postSolution
20 {2D8F479D-A591-4502-9456-398425D5F834}.Debug|Win32.ActiveCfg = Debug|Win32
21 {2D8F479D-A591-4502-9456-398425D5F834}.Debug|Win32.Build.0 = Debug|Win32
22 {2D8F479D-A591-4502-9456-398425D5F834}.Release|Win32.ActiveCfg = Release|Win32
23 {2D8F479D-A591-4502-9456-398425D5F834}.Release|Win32.Build.0 = Release|Win32
24 {BC3EFE27-9015-4C9C-AD3C-72B3B7ED2114}.Debug|Win32.ActiveCfg = Debug|Win32
25 {BC3EFE27-9015-4C9C-AD3C-72B3B7ED2114}.Release|Win32.ActiveCfg = Release|Win32
26 {2398BB2F-FFF9-490B-B4CC-863F2D21AE46}.Debug|Win32.ActiveCfg = Debug|Win32
27 {2398BB2F-FFF9-490B-B4CC-863F2D21AE46}.Release|Win32.ActiveCfg = Release|Win32
28 {8CAC9E26-BAA5-45A4-8721-E3170B3F8F49}.Debug|Win32.ActiveCfg = Debug|Win32
29 {8CAC9E26-BAA5-45A4-8721-E3170B3F8F49}.Release|Win32.ActiveCfg = Release|Win32
30 EndGlobalSection
31 GlobalSection(SolutionProperties) = preSolution
32 HideSolutionNode = FALSE
33 EndGlobalSection
34 EndGlobal
+0
-285
plugins/QCDMp4/QCDMp4.vcproj less more
0 <?xml version="1.0" encoding="Windows-1252"?>
1 <VisualStudioProject
2 ProjectType="Visual C++"
3 Version="8.00"
4 Name="QCDMp4"
5 ProjectGUID="{2D8F479D-A591-4502-9456-398425D5F834}"
6 >
7 <Platforms>
8 <Platform
9 Name="Win32"
10 />
11 </Platforms>
12 <ToolFiles>
13 </ToolFiles>
14 <Configurations>
15 <Configuration
16 Name="Debug|Win32"
17 OutputDirectory=".\Debug"
18 IntermediateDirectory=".\Debug"
19 ConfigurationType="2"
20 InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
21 UseOfMFC="0"
22 ATLMinimizesCRunTimeLibraryUsage="false"
23 >
24 <Tool
25 Name="VCPreBuildEventTool"
26 />
27 <Tool
28 Name="VCCustomBuildTool"
29 />
30 <Tool
31 Name="VCXMLDataGeneratorTool"
32 />
33 <Tool
34 Name="VCWebServiceProxyGeneratorTool"
35 />
36 <Tool
37 Name="VCMIDLTool"
38 PreprocessorDefinitions="_DEBUG"
39 MkTypLibCompatible="true"
40 SuppressStartupBanner="true"
41 TargetEnvironment="1"
42 TypeLibraryName=".\Debug/QCDMp4.tlb"
43 />
44 <Tool
45 Name="VCCLCompilerTool"
46 Optimization="0"
47 AdditionalIncludeDirectories="..\..\include,..\..\common\mp4v2,..\..\common\mp4av"
48 PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS"
49 BasicRuntimeChecks="0"
50 RuntimeLibrary="1"
51 UsePrecompiledHeader="0"
52 PrecompiledHeaderFile=".\Debug/QCDMp4.pch"
53 AssemblerListingLocation=".\Debug/"
54 ObjectFile=".\Debug/"
55 ProgramDataBaseFileName=".\Debug/"
56 WarningLevel="3"
57 SuppressStartupBanner="true"
58 DebugInformationFormat="4"
59 CompileAs="0"
60 />
61 <Tool
62 Name="VCManagedResourceCompilerTool"
63 />
64 <Tool
65 Name="VCResourceCompilerTool"
66 PreprocessorDefinitions="_DEBUG"
67 Culture="1043"
68 />
69 <Tool
70 Name="VCPreLinkEventTool"
71 />
72 <Tool
73 Name="VCLinkerTool"
74 AdditionalOptions="/MACHINE:I386"
75 AdditionalDependencies="ws2_32.lib odbc32.lib odbccp32.lib"
76 OutputFile=".\Debug/QCDMp4.dll"
77 LinkIncremental="2"
78 SuppressStartupBanner="true"
79 GenerateDebugInformation="true"
80 ProgramDatabaseFile=".\Debug/QCDMp4.pdb"
81 SubSystem="2"
82 ImportLibrary=".\Debug/QCDMp4.lib"
83 />
84 <Tool
85 Name="VCALinkTool"
86 />
87 <Tool
88 Name="VCManifestTool"
89 />
90 <Tool
91 Name="VCXDCMakeTool"
92 />
93 <Tool
94 Name="VCBscMakeTool"
95 />
96 <Tool
97 Name="VCFxCopTool"
98 />
99 <Tool
100 Name="VCAppVerifierTool"
101 />
102 <Tool
103 Name="VCWebDeploymentTool"
104 />
105 <Tool
106 Name="VCPostBuildEventTool"
107 />
108 </Configuration>
109 <Configuration
110 Name="Release|Win32"
111 OutputDirectory=".\Release"
112 IntermediateDirectory=".\Release"
113 ConfigurationType="2"
114 InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
115 UseOfMFC="0"
116 ATLMinimizesCRunTimeLibraryUsage="false"
117 >
118 <Tool
119 Name="VCPreBuildEventTool"
120 />
121 <Tool
122 Name="VCCustomBuildTool"
123 />
124 <Tool
125 Name="VCXMLDataGeneratorTool"
126 />
127 <Tool
128 Name="VCWebServiceProxyGeneratorTool"
129 />
130 <Tool
131 Name="VCMIDLTool"
132 PreprocessorDefinitions="NDEBUG"
133 MkTypLibCompatible="true"
134 SuppressStartupBanner="true"
135 TargetEnvironment="1"
136 TypeLibraryName=".\Release/QCDMp4.tlb"
137 />
138 <Tool
139 Name="VCCLCompilerTool"
140 Optimization="1"
141 InlineFunctionExpansion="1"
142 EnableIntrinsicFunctions="true"
143 FavorSizeOrSpeed="1"
144 AdditionalIncludeDirectories="..\..\include,..\..\common\mp4v2,..\..\common\mp4av"
145 PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS"
146 StringPooling="true"
147 RuntimeLibrary="2"
148 EnableFunctionLevelLinking="true"
149 UsePrecompiledHeader="0"
150 PrecompiledHeaderFile=".\Release/QCDMp4.pch"
151 AssemblerListingLocation=".\Release/"
152 ObjectFile=".\Release/"
153 ProgramDataBaseFileName=".\Release/"
154 WarningLevel="3"
155 SuppressStartupBanner="true"
156 CompileAs="0"
157 />
158 <Tool
159 Name="VCManagedResourceCompilerTool"
160 />
161 <Tool
162 Name="VCResourceCompilerTool"
163 PreprocessorDefinitions="NDEBUG"
164 Culture="1043"
165 />
166 <Tool
167 Name="VCPreLinkEventTool"
168 />
169 <Tool
170 Name="VCLinkerTool"
171 AdditionalOptions="/MACHINE:I386"
172 AdditionalDependencies="ws2_32.lib"
173 OutputFile=".\Release/QCDMp4.dll"
174 LinkIncremental="1"
175 SuppressStartupBanner="true"
176 IgnoreDefaultLibraryNames=""
177 ProgramDatabaseFile=".\Release/QCDMp4.pdb"
178 SubSystem="2"
179 ImportLibrary=".\Release/QCDMp4.lib"
180 />
181 <Tool
182 Name="VCALinkTool"
183 />
184 <Tool
185 Name="VCManifestTool"
186 />
187 <Tool
188 Name="VCXDCMakeTool"
189 />
190 <Tool
191 Name="VCBscMakeTool"
192 />
193 <Tool
194 Name="VCFxCopTool"
195 />
196 <Tool
197 Name="VCAppVerifierTool"
198 />
199 <Tool
200 Name="VCWebDeploymentTool"
201 />
202 <Tool
203 Name="VCPostBuildEventTool"
204 />
205 </Configuration>
206 </Configurations>
207 <References>
208 </References>
209 <Files>
210 <Filter
211 Name="Source Files"
212 Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
213 >
214 <File
215 RelativePath=".\config.c"
216 >
217 </File>
218 <File
219 RelativePath=".\QCDMp4.c"
220 >
221 </File>
222 <File
223 RelativePath=".\QCDMp4Tag.cpp"
224 >
225 </File>
226 <File
227 RelativePath=".\utils.c"
228 >
229 </File>
230 </Filter>
231 <Filter
232 Name="Header Files"
233 Filter="h;hpp;hxx;hm;inl"
234 >
235 <File
236 RelativePath=".\config.h"
237 >
238 </File>
239 <File
240 RelativePath="..\..\include\faad.h"
241 >
242 </File>
243 <File
244 RelativePath=".\QCDInputDLL.h"
245 >
246 </File>
247 <File
248 RelativePath=".\QCDModDefs.h"
249 >
250 </File>
251 <File
252 RelativePath=".\QCDModInput.h"
253 >
254 </File>
255 <File
256 RelativePath=".\QCDModTagEditor.h"
257 >
258 </File>
259 <File
260 RelativePath=".\QCDTagsDLL.h"
261 >
262 </File>
263 <File
264 RelativePath="resource.h"
265 >
266 </File>
267 <File
268 RelativePath=".\utils.h"
269 >
270 </File>
271 </Filter>
272 <Filter
273 Name="Resource Files"
274 Filter="ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
275 >
276 <File
277 RelativePath=".\QCDMp4.rc"
278 >
279 </File>
280 </Filter>
281 </Files>
282 <Globals>
283 </Globals>
284 </VisualStudioProject>
+0
-839
plugins/QCDMp4/QCDMp4Tag.cpp less more
0 #include <mp4.h>
1 #include <faad.h>
2 #include "QCDTagsDLL.h"
3
4
5 //..............................................................................
6 // Global Variables
7
8 typedef struct tag
9 {
10 char *item;
11 char *value;
12 } tag;
13
14 typedef struct medialib_tags
15 {
16 struct tag *tags;
17 unsigned int count;
18 } medialib_tags;
19
20 int tag_add_field(medialib_tags *tags, const char *item, const char *value)
21 {
22 void *backup = (void *)tags->tags;
23
24 if (!item || (item && !*item) || !value) return 0;
25
26 tags->tags = (struct tag *)realloc(tags->tags, (tags->count+1) * sizeof(tag));
27 if (!tags->tags) {
28 if (backup) free(backup);
29 return 0;
30 }
31 else
32 {
33 int i_len = strlen(item);
34 int v_len = strlen(value);
35
36 tags->tags[tags->count].item = (char *)malloc(i_len+1);
37 tags->tags[tags->count].value = (char *)malloc(v_len+1);
38
39 if (!tags->tags[tags->count].item || !tags->tags[tags->count].value)
40 {
41 if (!tags->tags[tags->count].item) free (tags->tags[tags->count].item);
42 if (!tags->tags[tags->count].value) free (tags->tags[tags->count].value);
43 tags->tags[tags->count].item = NULL;
44 tags->tags[tags->count].value = NULL;
45 return 0;
46 }
47
48 memcpy(tags->tags[tags->count].item, item, i_len);
49 memcpy(tags->tags[tags->count].value, value, v_len);
50 tags->tags[tags->count].item[i_len] = '\0';
51 tags->tags[tags->count].value[v_len] = '\0';
52
53 tags->count++;
54 return 1;
55 }
56 }
57
58 int tag_set_field(medialib_tags *tags, const char *item, const char *value)
59 {
60 unsigned int i;
61
62 if (!item || (item && !*item) || !value) return 0;
63
64 for (i = 0; i < tags->count; i++)
65 {
66 if (!stricmp(tags->tags[i].item, item))
67 {
68 void *backup = (void *)tags->tags[i].value;
69 int v_len = strlen(value);
70
71 tags->tags[i].value = (char *)realloc(tags->tags[i].value, v_len+1);
72 if (!tags->tags[i].value)
73 {
74 if (backup) free(backup);
75 return 0;
76 }
77
78 memcpy(tags->tags[i].value, value, v_len);
79 tags->tags[i].value[v_len] = '\0';
80
81 return 1;
82 }
83 }
84
85 return tag_add_field(tags, item, value);
86 }
87
88 void tag_delete(medialib_tags *tags)
89 {
90 unsigned int i;
91
92 for (i = 0; i < tags->count; i++)
93 {
94 if (tags->tags[i].item) free(tags->tags[i].item);
95 if (tags->tags[i].value) free(tags->tags[i].value);
96 }
97
98 if (tags->tags) free(tags->tags);
99
100 tags->tags = NULL;
101 tags->count = 0;
102 }
103
104 int ReadMP4Tag(MP4FileHandle file, medialib_tags *tags)
105 {
106 unsigned __int32 valueSize;
107 unsigned __int8 *pValue;
108 char *pName;
109 unsigned int i = 0;
110
111 do {
112 pName = 0;
113 pValue = 0;
114 valueSize = 0;
115
116 MP4GetMetadataByIndex(file, i, (const char **)&pName, &pValue, &valueSize);
117
118 if (valueSize > 0)
119 {
120 char *val = (char *)malloc(valueSize+1);
121 if (!val) return 0;
122 memcpy(val, pValue, valueSize);
123 val[valueSize] = '\0';
124
125 if (pName[0] == '\xa9')
126 {
127 if (memcmp(pName, "©nam", 4) == 0)
128 {
129 tag_add_field(tags, "title", val);
130 } else if (memcmp(pName, "©ART", 4) == 0) {
131 tag_add_field(tags, "artist", val);
132 } else if (memcmp(pName, "©wrt", 4) == 0) {
133 tag_add_field(tags, "writer", val);
134 } else if (memcmp(pName, "©alb", 4) == 0) {
135 tag_add_field(tags, "album", val);
136 } else if (memcmp(pName, "©day", 4) == 0) {
137 tag_add_field(tags, "date", val);
138 } else if (memcmp(pName, "©too", 4) == 0) {
139 tag_add_field(tags, "tool", val);
140 } else if (memcmp(pName, "©cmt", 4) == 0) {
141 tag_add_field(tags, "comment", val);
142 } else if (memcmp(pName, "©gen", 4) == 0) {
143 tag_add_field(tags, "genre", val);
144 } else {
145 tag_add_field(tags, pName, val);
146 }
147 } else if (memcmp(pName, "gnre", 4) == 0) {
148 char *t=0;
149 if (MP4GetMetadataGenre(file, &t))
150 {
151 tag_add_field(tags, "genre", t);
152 }
153 } else if (memcmp(pName, "trkn", 4) == 0) {
154 unsigned __int16 trkn = 0, tot = 0;
155 char t[200];
156 if (MP4GetMetadataTrack(file, &trkn, &tot))
157 {
158 if (tot > 0)
159 wsprintf(t, "%d/%d", trkn, tot);
160 else
161 wsprintf(t, "%d", trkn);
162 tag_add_field(tags, "tracknumber", t);
163 }
164 } else if (memcmp(pName, "disk", 4) == 0) {
165 unsigned __int16 disk = 0, tot = 0;
166 char t[200];
167 if (MP4GetMetadataDisk(file, &disk, &tot))
168 {
169 if (tot > 0)
170 wsprintf(t, "%d/%d", disk, tot);
171 else
172 wsprintf(t, "%d", disk);
173 tag_add_field(tags, "disc", t);
174 }
175 } else if (memcmp(pName, "cpil", 4) == 0) {
176 unsigned __int8 cpil = 0;
177 char t[200];
178 if (MP4GetMetadataCompilation(file, &cpil))
179 {
180 wsprintf(t, "%d", cpil);
181 tag_add_field(tags, "compilation", t);
182 }
183 } else if (memcmp(pName, "tmpo", 4) == 0) {
184 unsigned __int16 tempo = 0;
185 char t[200];
186 if (MP4GetMetadataTempo(file, &tempo))
187 {
188 wsprintf(t, "%d BPM", tempo);
189 tag_add_field(tags, "tempo", t);
190 }
191 } else if (memcmp(pName, "NDFL", 4) == 0) {
192 /* Removed */
193 } else {
194 tag_add_field(tags, pName, val);
195 }
196
197 free(val);
198 }
199
200 i++;
201 } while (valueSize > 0);
202
203 return 1;
204 }
205
206 int mp4_set_metadata(MP4FileHandle file, const char *item, const char *val)
207 {
208 if (!item || (item && !*item) || !val || (val && !*val)) return 0;
209
210 if (!stricmp(item, "track") || !stricmp(item, "tracknumber"))
211 {
212 unsigned __int16 trkn, tot;
213 int t1 = 0, t2 = 0;
214 sscanf(val, "%d/%d", &t1, &t2);
215 trkn = t1, tot = t2;
216 if (!trkn) return 1;
217 if (MP4SetMetadataTrack(file, trkn, tot)) return 1;
218 }
219 else if (!stricmp(item, "disc") || !stricmp(item, "disknumber"))
220 {
221 unsigned __int16 disk, tot;
222 int t1 = 0, t2 = 0;
223 sscanf(val, "%d/%d", &t1, &t2);
224 disk = t1, tot = t2;
225 if (!disk) return 1;
226 if (MP4SetMetadataDisk(file, disk, tot)) return 1;
227 }
228 else if (!stricmp(item, "compilation"))
229 {
230 unsigned __int8 cpil = atoi(val);
231 if (!cpil) return 1;
232 if (MP4SetMetadataCompilation(file, cpil)) return 1;
233 }
234 else if (!stricmp(item, "tempo"))
235 {
236 unsigned __int16 tempo = atoi(val);
237 if (!tempo) return 1;
238 if (MP4SetMetadataTempo(file, tempo)) return 1;
239 }
240 else if (!stricmp(item, "artist"))
241 {
242 if (MP4SetMetadataArtist(file, val)) return 1;
243 }
244 else if (!stricmp(item, "writer"))
245 {
246 if (MP4SetMetadataWriter(file, val)) return 1;
247 }
248 else if (!stricmp(item, "title"))
249 {
250 if (MP4SetMetadataName(file, val)) return 1;
251 }
252 else if (!stricmp(item, "album"))
253 {
254 if (MP4SetMetadataAlbum(file, val)) return 1;
255 }
256 else if (!stricmp(item, "date") || !stricmp(item, "year"))
257 {
258 if (MP4SetMetadataYear(file, val)) return 1;
259 }
260 else if (!stricmp(item, "comment"))
261 {
262 if (MP4SetMetadataComment(file, val)) return 1;
263 }
264 else if (!stricmp(item, "genre"))
265 {
266 if (MP4SetMetadataGenre(file, val)) return 1;
267 }
268 else if (!stricmp(item, "tool"))
269 {
270 if (MP4SetMetadataTool(file, val)) return 1;
271 }
272 else
273 {
274 if (MP4SetMetadataFreeForm(file, (char *)item, (u_int8_t *)val, (u_int32_t)strlen(val) + 1)) return 1;
275 }
276
277 return 0;
278 }
279
280 void WriteMP4Tag(MP4FileHandle file, const medialib_tags *tags)
281 {
282 unsigned int i;
283
284 for (i = 0; i < tags->count; i++)
285 {
286 const char *item = tags->tags[i].item;
287 const char *value = tags->tags[i].value;
288
289 if (value && *value)
290 {
291 mp4_set_metadata(file, item, value);
292 }
293 }
294 }
295
296 QCDModInitTag ModInitTag;
297
298 medialib_tags tags;
299
300 BOOL uSetDlgItemText(void *tagHandle, int fieldId, const char *str);
301 UINT uGetDlgItemText(void *tagHandle, int fieldId, char *str, int max);
302
303 //------------------------------------------------------------------------------
304
305 PLUGIN_API QCDModInitTag* TAGEDITORDLL_ENTRY_POINT()
306 {
307 ModInitTag.size = sizeof(QCDModInitTag);
308 ModInitTag.version = PLUGIN_API_VERSION;
309 ModInitTag.ShutDown = ShutDown_Tag;
310
311 ModInitTag.Read = Read_Tag;
312 ModInitTag.Write = Write_Tag; // Leave null for operations that plugin does not support
313 ModInitTag.Strip = Strip_Tag; // ie: if plugin only reads tags, leave Write and Strip null
314
315 ModInitTag.description = "MP4 Tags";
316 ModInitTag.defaultexts = "MP4:M4A";
317
318 return &ModInitTag;
319 }
320
321 //-----------------------------------------------------------------------------
322
323 void ShutDown_Tag(int flags)
324 {
325 // TODO:
326 // prepare plugin to be unloaded. All allocations should be freed.
327 // flags param is unused
328 tag_delete(&tags);
329 }
330
331 //-----------------------------------------------------------------------------
332
333 bool Read_Tag(LPCSTR filename, void* tagHandle)
334 {
335 // TODO:
336 // read metadata from tag and set each field to tagHandle
337 // only TAGFIELD_* are supported (see QCDModTagEditor.h)
338
339 // example of how to set value to tagHandle
340 // use SetFieldA for ASCII or MultiBytes strings.
341 // use SetFieldW for UNICODE strings
342 //
343 // ModInitTag.SetFieldW(tagHandle, TAGFIELD_COMPOSER, szwValue);
344
345 // return true for successfull read, false for failure
346
347 MP4FileHandle file = MP4_INVALID_FILE_HANDLE;
348 char *pVal, dummy1[1024];
349 short dummy, dummy2;
350 u_int32_t valueSize = 0;
351
352 #ifdef DEBUG_OUTPUT
353 in_mp4_DebugOutput("mp4_tag_read");
354 #endif
355
356 file = MP4Read(filename, 0);
357
358 if (file == MP4_INVALID_FILE_HANDLE)
359 return false;
360
361 /* get Metadata */
362
363 pVal = NULL;
364 MP4GetMetadataName(file, &pVal);
365 uSetDlgItemText(tagHandle, TAGFIELD_TITLE, pVal);
366
367 pVal = NULL;
368 MP4GetMetadataArtist(file, &pVal);
369 uSetDlgItemText(tagHandle, TAGFIELD_ARTIST, pVal);
370
371 pVal = NULL;
372 MP4GetMetadataWriter(file, &pVal);
373 uSetDlgItemText(tagHandle, TAGFIELD_COMPOSER, pVal);
374
375 pVal = NULL;
376 MP4GetMetadataComment(file, &pVal);
377 uSetDlgItemText(tagHandle, TAGFIELD_COMMENT, pVal);
378
379 pVal = NULL;
380 MP4GetMetadataAlbum(file, &pVal);
381 uSetDlgItemText(tagHandle, TAGFIELD_ALBUM, pVal);
382
383 pVal = NULL;
384 MP4GetMetadataGenre(file, &pVal);
385 uSetDlgItemText(tagHandle, TAGFIELD_GENRE, pVal);
386
387 //dummy = 0;
388 //MP4GetMetadataTempo(file, &dummy);
389 //if (dummy)
390 //{
391 // wsprintf(dummy1, "%d", dummy);
392 // SetDlgItemText(hwndDlg,IDC_METATEMPO, dummy1);
393 //}
394
395 dummy = 0; dummy2 = 0;
396 MP4GetMetadataTrack(file, (unsigned __int16*)&dummy, (unsigned __int16*)&dummy2);
397 if (dummy)
398 {
399 wsprintf(dummy1, "%d", dummy);
400 ModInitTag.SetFieldA(tagHandle, TAGFIELD_TRACK, dummy1);
401 }
402 //if (dumm2)
403 //{
404 // wsprintf(dummy1, "%d", dummy2);
405 // SetDlgItemText(hwndDlg,IDC_METATRACK2, dummy1);
406 //}
407
408 //dummy = 0; dummy2 = 0;
409 //MP4GetMetadataDisk(file, &dummy, &dummy2);
410 //if (dummy)
411 //{
412 // wsprintf(dummy1, "%d", dummy);
413 // SetDlgItemText(hwndDlg,IDC_METADISK1, dummy1);
414 //}
415 //if (dummy)
416 //{
417 // wsprintf(dummy1, "%d", dummy2);
418 // SetDlgItemText(hwndDlg,IDC_METADISK2, dummy1);
419 //}
420
421 pVal = NULL;
422 if (MP4GetMetadataYear(file, &pVal))
423 uSetDlgItemText(tagHandle, TAGFIELD_YEAR, pVal);
424
425 //dummy3 = 0;
426 //MP4GetMetadataCompilation(file, &dummy3);
427 //if (dummy3)
428 // SendMessage(GetDlgItem(hwndDlg, IDC_METACOMPILATION), BM_SETCHECK, BST_CHECKED, 0);
429
430 pVal = NULL;
431 MP4GetMetadataTool(file, &pVal);
432 uSetDlgItemText(tagHandle, TAGFIELD_ENCODER, pVal);
433
434 pVal = NULL;
435 MP4GetMetadataFreeForm(file, "CONDUCTOR", (unsigned __int8**)&pVal, &valueSize);
436 uSetDlgItemText(tagHandle, TAGFIELD_CONDUCTOR, pVal);
437
438 pVal = NULL;
439 MP4GetMetadataFreeForm(file, "ORCHESTRA", (unsigned __int8**)&pVal, &valueSize);
440 uSetDlgItemText(tagHandle, TAGFIELD_ORCHESTRA, pVal);
441
442 pVal = NULL;
443 MP4GetMetadataFreeForm(file, "YEARCOMPOSED", (unsigned __int8**)&pVal, &valueSize);
444 uSetDlgItemText(tagHandle, TAGFIELD_YEARCOMPOSED, pVal);
445
446 pVal = NULL;
447 MP4GetMetadataFreeForm(file, "ORIGARTIST", (unsigned __int8**)&pVal, &valueSize);
448 uSetDlgItemText(tagHandle, TAGFIELD_ORIGARTIST, pVal);
449
450 pVal = NULL;
451 MP4GetMetadataFreeForm(file, "LABEL", (unsigned __int8**)&pVal, &valueSize);
452 uSetDlgItemText(tagHandle, TAGFIELD_LABEL, pVal);
453
454 pVal = NULL;
455 MP4GetMetadataFreeForm(file, "COPYRIGHT", (unsigned __int8**)&pVal, &valueSize);
456 uSetDlgItemText(tagHandle, TAGFIELD_COPYRIGHT, pVal);
457
458 pVal = NULL;
459 MP4GetMetadataFreeForm(file, "CDDBTAGID", (unsigned __int8**)&pVal, &valueSize);
460 uSetDlgItemText(tagHandle, TAGFIELD_CDDBTAGID, pVal);
461
462 /* ! Metadata */
463
464 MP4Close(file);
465
466 return true;
467 }
468
469 //-----------------------------------------------------------------------------
470
471 bool Write_Tag(LPCSTR filename, void* tagHandle)
472 {
473 // TODO:
474 // read metadata from tagHandle and set each field to supported tag
475 // only TAGFIELD_* are supported (see QCDModTagEditor.h)
476
477 // example of how to get value from tagHandle
478 // use SetFieldA for ASCII or MultiBytes strings.
479 // use SetFieldW for UNICODE strings
480 //
481 // szwValue = ModInitTag.GetFieldW(tagHandle, TAGFIELD_ORCHESTRA);
482
483 // write tag to file
484
485 MP4FileHandle file = MP4_INVALID_FILE_HANDLE;
486 char dummy1[1024];
487 char temp[1024];
488 short dummy, dummy2;
489
490 #ifdef DEBUG_OUTPUT
491 in_mp4_DebugOutput("mp4_tag_write");
492 #endif
493
494 /* save Metadata changes */
495
496 tag_delete(&tags);
497 file = MP4Read(filename, 0);
498 if (file != MP4_INVALID_FILE_HANDLE)
499 {
500 ReadMP4Tag(file, &tags);
501 MP4Close(file);
502
503 file = MP4Modify(filename, 0, 0);
504 if (file != MP4_INVALID_FILE_HANDLE)
505 {
506 MP4MetadataDelete(file);
507 MP4Close(file);
508 }
509 }
510
511 file = MP4Modify(filename, 0, 0);
512 if (file == MP4_INVALID_FILE_HANDLE)
513 {
514 tag_delete(&tags);
515 //EndDialog(hwndDlg, wParam);
516 return false;
517 }
518
519 uGetDlgItemText(tagHandle, TAGFIELD_TITLE, dummy1, 1024);
520 tag_set_field(&tags, "title", dummy1);
521
522 uGetDlgItemText(tagHandle, TAGFIELD_COMPOSER, dummy1, 1024);
523 tag_set_field(&tags, "writer", dummy1);
524
525 uGetDlgItemText(tagHandle, TAGFIELD_ARTIST, dummy1, 1024);
526 tag_set_field(&tags, "artist", dummy1);
527
528 uGetDlgItemText(tagHandle, TAGFIELD_ALBUM, dummy1, 1024);
529 tag_set_field(&tags, "album", dummy1);
530
531 uGetDlgItemText(tagHandle, TAGFIELD_COMMENT, dummy1, 1024);
532 tag_set_field(&tags, "comment", dummy1);
533
534 uGetDlgItemText(tagHandle, TAGFIELD_GENRE, dummy1, 1024);
535 tag_set_field(&tags, "genre", dummy1);
536
537 uGetDlgItemText(tagHandle, TAGFIELD_YEAR, dummy1, 1024);
538 tag_set_field(&tags, "year", dummy1);
539
540 dummy = 0;
541 MP4GetMetadataTrack(file, (unsigned __int16*)&dummy, (unsigned __int16*)&dummy2);
542 memcpy(dummy1, ModInitTag.GetFieldA(tagHandle, TAGFIELD_TRACK), sizeof(dummy1));
543 dummy = atoi(dummy1);
544 wsprintf(temp, "%d/%d", dummy, dummy2);
545 tag_set_field(&tags, "track", temp);
546
547 //GetDlgItemText(hwndDlg, IDC_METADISK1, dummy1, 1024);
548 //dummy = atoi(dummy1);
549 //GetDlgItemText(hwndDlg, IDC_METADISK2, dummy1, 1024);
550 //dummy2 = atoi(dummy1);
551 //wsprintf(temp, "%d/%d", dummy, dummy2);
552 //tag_set_field(&tags, "disc", temp);
553
554 //GetDlgItemText(hwndDlg, IDC_METATEMPO, dummy1, 1024);
555 //tag_set_field(&tags, "tempo", dummy1);
556
557 //dummy3 = SendMessage(GetDlgItem(hwndDlg, IDC_METACOMPILATION), BM_GETCHECK, 0, 0);
558 //tag_set_field(&tags, "compilation", (dummy3 ? "1" : "0"));
559
560 uGetDlgItemText(tagHandle, TAGFIELD_ENCODER, dummy1, 1024);
561 tag_set_field(&tags, "tool", dummy1);
562
563 uGetDlgItemText(tagHandle, TAGFIELD_CONDUCTOR, dummy1, 1024);
564 tag_set_field(&tags, "CONDUCTOR", dummy1);
565
566 uGetDlgItemText(tagHandle, TAGFIELD_ORCHESTRA, dummy1, 1024);
567 tag_set_field(&tags, "ORCHESTRA", dummy1);
568
569 uGetDlgItemText(tagHandle, TAGFIELD_YEARCOMPOSED, dummy1, 1024);
570 tag_set_field(&tags, "YEARCOMPOSED", dummy1);
571
572 uGetDlgItemText(tagHandle, TAGFIELD_ORIGARTIST, dummy1, 1024);
573 tag_set_field(&tags, "ORIGARTIST", dummy1);
574
575 uGetDlgItemText(tagHandle, TAGFIELD_LABEL, dummy1, 1024);
576 tag_set_field(&tags, "LABEL", dummy1);
577
578 uGetDlgItemText(tagHandle, TAGFIELD_COPYRIGHT, dummy1, 1024);
579 tag_set_field(&tags, "COPYRIGHT", dummy1);
580
581 uGetDlgItemText(tagHandle, TAGFIELD_CDDBTAGID, dummy1, 1024);
582 tag_set_field(&tags, "CDDBTAGID", dummy1);
583
584 WriteMP4Tag(file, &tags);
585
586 MP4Close(file);
587
588 MP4Optimize(filename, NULL, 0);
589 /* ! */
590
591 return true;
592 }
593
594 //-----------------------------------------------------------------------------
595
596 bool Strip_Tag(LPCSTR filename)
597 {
598 // TODO:
599 // remove tag from file.
600 // do whatever is need to remove the supported tag from filename
601
602 // return true for successfull strip, false for failure
603
604 MP4FileHandle file;
605
606 file = MP4Modify(filename, 0, 0);
607 if (file == MP4_INVALID_FILE_HANDLE)
608 return false;
609
610 MP4MetadataDelete(file);
611
612 MP4Close(file);
613
614 return true;
615 }
616
617 //-----------------------------------------------------------------------------
618
619 /* Convert UNICODE to UTF-8
620 Return number of bytes written */
621 int unicodeToUtf8 ( const WCHAR* lpWideCharStr, char* lpMultiByteStr, int cwcChars )
622 {
623 const unsigned short* pwc = (unsigned short *)lpWideCharStr;
624 unsigned char* pmb = (unsigned char *)lpMultiByteStr;
625 const unsigned short* pwce;
626 size_t cBytes = 0;
627
628 if ( cwcChars >= 0 ) {
629 pwce = pwc + cwcChars;
630 } else {
631 pwce = (unsigned short *)((size_t)-1);
632 }
633
634 while ( pwc < pwce ) {
635 unsigned short wc = *pwc++;
636
637 if ( wc < 0x00000080 ) {
638 *pmb++ = (char)wc;
639 cBytes++;
640 } else
641 if ( wc < 0x00000800 ) {
642 *pmb++ = (char)(0xC0 | ((wc >> 6) & 0x1F));
643 cBytes++;
644 *pmb++ = (char)(0x80 | (wc & 0x3F));
645 cBytes++;
646 } else
647 if ( wc < 0x00010000 ) {
648 *pmb++ = (char)(0xE0 | ((wc >> 12) & 0x0F));
649 cBytes++;
650 *pmb++ = (char)(0x80 | ((wc >> 6) & 0x3F));
651 cBytes++;
652 *pmb++ = (char)(0x80 | (wc & 0x3F));
653 cBytes++;
654 }
655 if ( wc == L'\0' )
656 return cBytes;
657 }
658
659 return cBytes;
660 }
661
662 /* Convert UTF-8 coded string to UNICODE
663 Return number of characters converted */
664 int utf8ToUnicode ( const char* lpMultiByteStr, WCHAR* lpWideCharStr, int cmbChars )
665 {
666 const unsigned char* pmb = (unsigned char *)lpMultiByteStr;
667 unsigned short* pwc = (unsigned short *)lpWideCharStr;
668 const unsigned char* pmbe;
669 size_t cwChars = 0;
670
671 if ( cmbChars >= 0 ) {
672 pmbe = pmb + cmbChars;
673 } else {
674 pmbe = (unsigned char *)((size_t)-1);
675 }
676
677 while ( pmb < pmbe ) {
678 char mb = *pmb++;
679 unsigned int cc = 0;
680 unsigned int wc;
681
682 while ( (cc < 7) && (mb & (1 << (7 - cc)))) {
683 cc++;
684 }
685
686 if ( cc == 1 || cc > 6 ) // illegal character combination for UTF-8
687 continue;
688
689 if ( cc == 0 ) {
690 wc = mb;
691 } else {
692 wc = (mb & ((1 << (7 - cc)) - 1)) << ((cc - 1) * 6);
693 while ( --cc > 0 ) {
694 if ( pmb == pmbe ) // reached end of the buffer
695 return cwChars;
696 mb = *pmb++;
697 if ( ((mb >> 6) & 0x03) != 2 ) // not part of multibyte character
698 return cwChars;
699 wc |= (mb & 0x3F) << ((cc - 1) * 6);
700 }
701 }
702
703 if ( wc & 0xFFFF0000 )
704 wc = L'?';
705 *pwc++ = wc;
706 cwChars++;
707 if ( wc == L'\0' )
708 return cwChars;
709 }
710
711 return cwChars;
712 }
713
714 /* convert Windows ANSI to UTF-8 */
715 int ConvertANSIToUTF8 ( const char* ansi, char* utf8 )
716 {
717 WCHAR* wszValue; // Unicode value
718 size_t ansi_len;
719 size_t len;
720
721 *utf8 = '\0';
722 if ( ansi == NULL )
723 return 0;
724
725 ansi_len = strlen ( ansi );
726
727 if ( (wszValue = (WCHAR *)malloc ( (ansi_len + 1) * 2 )) == NULL )
728 return 0;
729
730 /* Convert ANSI value to Unicode */
731 if ( (len = MultiByteToWideChar ( CP_ACP, 0, ansi, ansi_len + 1, wszValue, (ansi_len + 1) * 2 )) == 0 ) {
732 free ( wszValue );
733 return 0;
734 }
735
736 /* Convert Unicode value to UTF-8 */
737 if ( (len = unicodeToUtf8 ( wszValue, utf8, -1 )) == 0 ) {
738 free ( wszValue );
739 return 0;
740 }
741
742 free ( wszValue );
743
744 return len-1;
745 }
746
747 /* convert UTF-8 to Windows ANSI */
748 int ConvertUTF8ToANSI ( const char* utf8, char* ansi )
749 {
750 WCHAR* wszValue; // Unicode value
751 size_t utf8_len;
752 size_t len;
753
754 *ansi = '\0';
755 if ( utf8 == NULL )
756 return 0;
757
758 utf8_len = strlen ( utf8 );
759
760 if ( (wszValue = (WCHAR *)malloc ( (utf8_len + 1) * 2 )) == NULL )
761 return 0;
762
763 /* Convert UTF-8 value to Unicode */
764 if ( (len = utf8ToUnicode ( utf8, wszValue, utf8_len + 1 )) == 0 ) {
765 free ( wszValue );
766 return 0;
767 }
768
769 /* Convert Unicode value to ANSI */
770 if ( (len = WideCharToMultiByte ( CP_ACP, 0, wszValue, -1, ansi, (utf8_len + 1) * 2, NULL, NULL )) == 0 ) {
771 free ( wszValue );
772 return 0;
773 }
774
775 free ( wszValue );
776
777 return len-1;
778 }
779
780 BOOL uSetDlgItemText(void *tagHandle, int fieldId, const char *str)
781 {
782 char *temp;
783 size_t len;
784 int r;
785
786 if (!str) return FALSE;
787 if (!*str) return FALSE;
788 len = strlen(str);
789 temp = (char *)malloc(len+1);
790 if (!temp) return FALSE;
791 memset(temp, '\0', len+1);
792 r = ConvertUTF8ToANSI(str, temp);
793 if (r > 0)
794 ModInitTag.SetFieldA(tagHandle, fieldId, temp);
795 free(temp);
796
797 return r>0 ? TRUE : FALSE;
798 }
799
800 UINT uGetDlgItemText(void *tagHandle, int fieldId, char *str, int max)
801 {
802 char *temp, *utf8;;
803 int len;
804
805 const char *p;
806
807 if (!str || !max) return 0;
808 len = strlen( ModInitTag.GetFieldA(tagHandle, fieldId) );
809 temp = (char *)malloc(len+1);
810 if (!temp) return 0;
811 utf8 = (char *)malloc((len+1)*4);
812 if (!utf8)
813 {
814 free(temp);
815 return 0;
816 }
817
818 memset(temp, '\0', len+1);
819 memset(utf8, '\0', (len+1)*4);
820 memset(str, '\0', max);
821 p = ModInitTag.GetFieldA(tagHandle, fieldId);
822 memcpy(temp, p, len+1);
823 if (len > 0)
824 {
825 len = ConvertANSIToUTF8(temp, utf8);
826 if (len > max-1)
827 {
828 len = max-1;
829 utf8[max] = '\0';
830 }
831 memcpy(str, utf8, len+1);
832 }
833
834 free(temp);
835 free(utf8);
836
837 return len;
838 }
+0
-14
plugins/QCDMp4/QCDTagsDLL.h less more
0 #ifndef QCDTAGS_H
1 #define QCDTAGS_H
2
3 #include "QCDModTagEditor.h"
4
5 extern HINSTANCE hInstance;
6
7 void ShutDown_Tag(int flags);
8 bool Read_Tag(LPCSTR filename, void* tagData);
9 bool Write_Tag(LPCSTR filename, void* tagData);
10 bool Strip_Tag(LPCSTR filename);
11
12
13 #endif
+0
-319
plugins/QCDMp4/aac2mp4.cpp less more
0 /*
1 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
2 ** Copyright (C) 2003 M. Bakker, Ahead Software AG, http://www.nero.com
3 **
4 ** This program is free software; you can redistribute it and/or modify
5 ** it under the terms of the GNU General Public License as published by
6 ** the Free Software Foundation; either version 2 of the License, or
7 ** (at your option) any later version.
8 **
9 ** This program is distributed in the hope that it will be useful,
10 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
11 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 ** GNU General Public License for more details.
13 **
14 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
16 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
17 **
18 ** Any non-GPL usage of this software or parts of this software is strictly
19 ** forbidden.
20 **
21 ** Commercial non-GPL licensing of this software is possible.
22 ** For more info contact Ahead Software through Mpeg4AAClicense@nero.com.
23 **
24 ** $Id: aac2mp4.cpp,v 1.3 2003/12/06 04:24:17 rjamorim Exp $
25 **/
26
27 #include <mpeg4ip.h>
28 #include <mp4.h>
29 #include <mp4av.h>
30
31 #include "aac2mp4.h"
32
33 int covert_aac_to_mp4(char *inputFileName, char *mp4FileName)
34 {
35 int Mp4TimeScale = 90000;
36 int allMpeg4Streams = 0;
37 MP4FileHandle mp4File;
38 FILE* inFile;
39 const char *type;
40 MP4TrackId createdTrackId = MP4_INVALID_TRACK_ID;
41
42 mp4File = MP4Create(mp4FileName, 0, 0, 0);
43 if (mp4File)
44 {
45 MP4SetTimeScale(mp4File, Mp4TimeScale);
46 } else {
47 return 1;
48 }
49
50 inFile = fopen(inputFileName, "rb");
51
52 if (inFile == NULL)
53 {
54 MP4Close(mp4File);
55 return 2;
56 }
57
58 createdTrackId = AacCreator(mp4File, inFile);
59
60 if (createdTrackId == MP4_INVALID_TRACK_ID)
61 {
62 fclose(inFile);
63 MP4Close(mp4File);
64 return 3;
65 }
66
67 type = MP4GetTrackType(mp4File, createdTrackId);
68
69 if (!strcmp(type, MP4_AUDIO_TRACK_TYPE))
70 {
71 allMpeg4Streams &=
72 (MP4GetTrackAudioType(mp4File, createdTrackId)
73 == MP4_MPEG4_AUDIO_TYPE);
74 }
75
76 if (inFile)
77 {
78 fclose(inFile);
79 }
80
81 MP4Close(mp4File);
82 MP4MakeIsmaCompliant(mp4FileName, 0, allMpeg4Streams);
83
84 return 0;
85 }
86
87 #define ADTS_HEADER_MAX_SIZE 10 /* bytes */
88
89 static u_int8_t firstHeader[ADTS_HEADER_MAX_SIZE];
90
91 /*
92 * hdr must point to at least ADTS_HEADER_MAX_SIZE bytes of memory
93 */
94 static bool LoadNextAdtsHeader(FILE* inFile, u_int8_t* hdr)
95 {
96 u_int state = 0;
97 u_int dropped = 0;
98 u_int hdrByteSize = ADTS_HEADER_MAX_SIZE;
99
100 while (1) {
101 /* read a byte */
102 u_int8_t b;
103
104 if (fread(&b, 1, 1, inFile) == 0) {
105 return false;
106 }
107
108 /* header is complete, return it */
109 if (state == hdrByteSize - 1) {
110 hdr[state] = b;
111 if (dropped > 0) {
112 fprintf(stderr, "Warning: dropped %u input bytes\n", dropped);
113 }
114 return true;
115 }
116
117 /* collect requisite number of bytes, no constraints on data */
118 if (state >= 2) {
119 hdr[state++] = b;
120 } else {
121 /* have first byte, check if we have 1111X00X */
122 if (state == 1) {
123 if ((b & 0xF6) == 0xF0) {
124 hdr[state] = b;
125 state = 2;
126 /* compute desired header size */
127 hdrByteSize = MP4AV_AdtsGetHeaderByteSize(hdr);
128 } else {
129 state = 0;
130 }
131 }
132 /* initial state, looking for 11111111 */
133 if (state == 0) {
134 if (b == 0xFF) {
135 hdr[state] = b;
136 state = 1;
137 } else {
138 /* else drop it */
139 dropped++;
140 }
141 }
142 }
143 }
144 }
145
146 /*
147 * Load the next frame from the file
148 * into the supplied buffer, which better be large enough!
149 *
150 * Note: Frames are padded to byte boundaries
151 */
152 static bool LoadNextAacFrame(FILE* inFile, u_int8_t* pBuf, u_int32_t* pBufSize, bool stripAdts)
153 {
154 u_int16_t frameSize;
155 u_int16_t hdrBitSize, hdrByteSize;
156 u_int8_t hdrBuf[ADTS_HEADER_MAX_SIZE];
157
158 /* get the next AAC frame header, more or less */
159 if (!LoadNextAdtsHeader(inFile, hdrBuf)) {
160 return false;
161 }
162
163 /* get frame size from header */
164 frameSize = MP4AV_AdtsGetFrameSize(hdrBuf);
165
166 /* get header size in bits and bytes from header */
167 hdrBitSize = MP4AV_AdtsGetHeaderBitSize(hdrBuf);
168 hdrByteSize = MP4AV_AdtsGetHeaderByteSize(hdrBuf);
169
170 /* adjust the frame size to what remains to be read */
171 frameSize -= hdrByteSize;
172
173 if (stripAdts) {
174 if ((hdrBitSize % 8) == 0) {
175 /* header is byte aligned, i.e. MPEG-2 ADTS */
176 /* read the frame data into the buffer */
177 if (fread(pBuf, 1, frameSize, inFile) != frameSize) {
178 return false;
179 }
180 (*pBufSize) = frameSize;
181 } else {
182 /* header is not byte aligned, i.e. MPEG-4 ADTS */
183 int i;
184 u_int8_t newByte;
185 int upShift = hdrBitSize % 8;
186 int downShift = 8 - upShift;
187
188 pBuf[0] = hdrBuf[hdrBitSize / 8] << upShift;
189
190 for (i = 0; i < frameSize; i++) {
191 if (fread(&newByte, 1, 1, inFile) != 1) {
192 return false;
193 }
194 pBuf[i] |= (newByte >> downShift);
195 pBuf[i+1] = (newByte << upShift);
196 }
197 (*pBufSize) = frameSize + 1;
198 }
199 } else { /* don't strip ADTS headers */
200 memcpy(pBuf, hdrBuf, hdrByteSize);
201 if (fread(&pBuf[hdrByteSize], 1, frameSize, inFile) != frameSize) {
202 return false;
203 }
204 }
205
206 return true;
207 }
208
209 static bool GetFirstHeader(FILE* inFile)
210 {
211 /* read file until we find an audio frame */
212 fpos_t curPos;
213
214 /* already read first header */
215 if (firstHeader[0] == 0xff) {
216 return true;
217 }
218
219 /* remember where we are */
220 fgetpos(inFile, &curPos);
221
222 /* go back to start of file */
223 rewind(inFile);
224
225 if (!LoadNextAdtsHeader(inFile, firstHeader)) {
226 return false;
227 }
228
229 /* reposition the file to where we were */
230 fsetpos(inFile, &curPos);
231
232 return true;
233 }
234
235 MP4TrackId AacCreator(MP4FileHandle mp4File, FILE* inFile)
236 {
237 // collect all the necessary meta information
238 u_int32_t samplesPerSecond;
239 u_int8_t mpegVersion;
240 u_int8_t profile;
241 u_int8_t channelConfig;
242
243 if (!GetFirstHeader(inFile)) {
244 return MP4_INVALID_TRACK_ID;
245 }
246
247 samplesPerSecond = MP4AV_AdtsGetSamplingRate(firstHeader);
248 mpegVersion = MP4AV_AdtsGetVersion(firstHeader);
249 profile = MP4AV_AdtsGetProfile(firstHeader);
250 channelConfig = MP4AV_AdtsGetChannels(firstHeader);
251
252 u_int8_t audioType = MP4_INVALID_AUDIO_TYPE;
253 switch (mpegVersion) {
254 case 0:
255 audioType = MP4_MPEG4_AUDIO_TYPE;
256 break;
257 case 1:
258 switch (profile) {
259 case 0:
260 audioType = MP4_MPEG2_AAC_MAIN_AUDIO_TYPE;
261 break;
262 case 1:
263 audioType = MP4_MPEG2_AAC_LC_AUDIO_TYPE;
264 break;
265 case 2:
266 audioType = MP4_MPEG2_AAC_SSR_AUDIO_TYPE;
267 break;
268 case 3:
269 return MP4_INVALID_TRACK_ID;
270 }
271 break;
272 }
273
274 // add the new audio track
275 MP4TrackId trackId =
276 MP4AddAudioTrack(mp4File,
277 samplesPerSecond, 1024, audioType);
278
279 if (trackId == MP4_INVALID_TRACK_ID) {
280 return MP4_INVALID_TRACK_ID;
281 }
282
283 if (MP4GetNumberOfTracks(mp4File, MP4_AUDIO_TRACK_TYPE) == 1) {
284 MP4SetAudioProfileLevel(mp4File, 0x0F);
285 }
286
287 u_int8_t* pConfig = NULL;
288 u_int32_t configLength = 0;
289
290 MP4AV_AacGetConfiguration(
291 &pConfig,
292 &configLength,
293 profile,
294 samplesPerSecond,
295 channelConfig);
296
297 if (!MP4SetTrackESConfiguration(mp4File, trackId,
298 pConfig, configLength)) {
299 MP4DeleteTrack(mp4File, trackId);
300 return MP4_INVALID_TRACK_ID;
301 }
302
303 // parse the ADTS frames, and write the MP4 samples
304 u_int8_t sampleBuffer[8 * 1024];
305 u_int32_t sampleSize = sizeof(sampleBuffer);
306 MP4SampleId sampleId = 1;
307
308 while (LoadNextAacFrame(inFile, sampleBuffer, &sampleSize, true)) {
309 if (!MP4WriteSample(mp4File, trackId, sampleBuffer, sampleSize)) {
310 MP4DeleteTrack(mp4File, trackId);
311 return MP4_INVALID_TRACK_ID;
312 }
313 sampleId++;
314 sampleSize = sizeof(sampleBuffer);
315 }
316
317 return trackId;
318 }
+0
-42
plugins/QCDMp4/aac2mp4.h less more
0 /*
1 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
2 ** Copyright (C) 2003 M. Bakker, Ahead Software AG, http://www.nero.com
3 **
4 ** This program is free software; you can redistribute it and/or modify
5 ** it under the terms of the GNU General Public License as published by
6 ** the Free Software Foundation; either version 2 of the License, or
7 ** (at your option) any later version.
8 **
9 ** This program is distributed in the hope that it will be useful,
10 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
11 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 ** GNU General Public License for more details.
13 **
14 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
16 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
17 **
18 ** Any non-GPL usage of this software or parts of this software is strictly
19 ** forbidden.
20 **
21 ** Commercial non-GPL licensing of this software is possible.
22 ** For more info contact Ahead Software through Mpeg4AAClicense@nero.com.
23 **
24 ** $Id: aac2mp4.h,v 1.3 2003/12/06 04:24:17 rjamorim Exp $
25 **/
26
27 #ifndef AAC2MP4_H__
28 #define AAC2MP4_H__
29
30 #ifdef __cplusplus
31 extern "C" {
32 #endif /* __cplusplus */
33
34 int covert_aac_to_mp4(char *inputFileName, char *mp4FileName);
35 MP4TrackId AacCreator(MP4FileHandle mp4File, FILE* inFile);
36
37 #ifdef __cplusplus
38 }
39 #endif /* __cplusplus */
40
41 #endif
+0
-224
plugins/QCDMp4/aacinfo.c less more
0 /*
1 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
2 ** Copyright (C) 2003 M. Bakker, Ahead Software AG, http://www.nero.com
3 **
4 ** This program is free software; you can redistribute it and/or modify
5 ** it under the terms of the GNU General Public License as published by
6 ** the Free Software Foundation; either version 2 of the License, or
7 ** (at your option) any later version.
8 **
9 ** This program is distributed in the hope that it will be useful,
10 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
11 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 ** GNU General Public License for more details.
13 **
14 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
16 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
17 **
18 ** Any non-GPL usage of this software or parts of this software is strictly
19 ** forbidden.
20 **
21 ** Commercial non-GPL licensing of this software is possible.
22 ** For more info contact Ahead Software through Mpeg4AAClicense@nero.com.
23 **
24 ** $Id: aacinfo.c,v 1.3 2003/12/06 04:24:17 rjamorim Exp $
25 **/
26
27 #define WIN32_LEAN_AND_MEAN
28 #include <windows.h>
29 #include <malloc.h>
30 #include <stdlib.h>
31 #include <stdio.h>
32 #include "aacinfo.h"
33 #include "utils.h"
34
35 #define ADIF_MAX_SIZE 30 /* Should be enough */
36 #define ADTS_MAX_SIZE 10 /* Should be enough */
37
38 static int sample_rates[] = {96000,88200,64000,48000,44100,32000,24000,22050,16000,12000,11025,8000};
39
40 static int read_ADIF_header(FILE *file, faadAACInfo *info)
41 {
42 int bitstream;
43 unsigned char buffer[ADIF_MAX_SIZE];
44 int skip_size = 0;
45 int sf_idx;
46
47 /* Get ADIF header data */
48 info->headertype = 1;
49
50 if (fread(buffer, 1, ADIF_MAX_SIZE, file) != ADIF_MAX_SIZE)
51 return -1;
52
53 /* copyright string */
54 if(buffer[0] & 0x80)
55 skip_size += 9; /* skip 9 bytes */
56
57 bitstream = buffer[0 + skip_size] & 0x10;
58 info->bitrate = ((unsigned int)(buffer[0 + skip_size] & 0x0F)<<19)|
59 ((unsigned int)buffer[1 + skip_size]<<11)|
60 ((unsigned int)buffer[2 + skip_size]<<3)|
61 ((unsigned int)buffer[3 + skip_size] & 0xE0);
62
63 if (bitstream == 0)
64 {
65 info->object_type = ((buffer[6 + skip_size]&0x01)<<1)|((buffer[7 + skip_size]&0x80)>>7);
66 sf_idx = (buffer[7 + skip_size]&0x78)>>3;
67 } else {
68 info->object_type = (buffer[4 + skip_size] & 0x18)>>3;
69 sf_idx = ((buffer[4 + skip_size] & 0x07)<<1)|((buffer[5 + skip_size] & 0x80)>>7);
70 }
71 info->sampling_rate = sample_rates[sf_idx];
72
73 return 0;
74 }
75
76 static int read_ADTS_header(FILE *file, faadAACInfo *info)
77 {
78 /* Get ADTS header data */
79 unsigned char buffer[ADTS_MAX_SIZE];
80 int frames, t_framelength = 0, frame_length, sr_idx = 0, ID;
81 int second = 0, pos;
82 float frames_per_sec = 0;
83 unsigned long bytes;
84 unsigned long *tmp_seek_table = NULL;
85
86 info->headertype = 2;
87
88 /* Read all frames to ensure correct time and bitrate */
89 for (frames = 0; /* */; frames++)
90 {
91 bytes = fread(buffer, 1, ADTS_MAX_SIZE, file);
92
93 if (bytes != ADTS_MAX_SIZE)
94 break;
95
96 /* check syncword */
97 if (!((buffer[0] == 0xFF)&&((buffer[1] & 0xF6) == 0xF0)))
98 break;
99
100 if (!frames)
101 {
102 /* fixed ADTS header is the same for every frame, so we read it only once */
103 /* Syncword found, proceed to read in the fixed ADTS header */
104 ID = buffer[1] & 0x08;
105 info->object_type = (buffer[2]&0xC0)>>6;
106 sr_idx = (buffer[2]&0x3C)>>2;
107 info->channels = ((buffer[2]&0x01)<<2)|((buffer[3]&0xC0)>>6);
108
109 frames_per_sec = sample_rates[sr_idx] / 1024.f;
110 }
111
112 /* ...and the variable ADTS header */
113 if (ID == 0)
114 {
115 info->version = 4;
116 } else { /* MPEG-2 */
117 info->version = 2;
118 }
119 frame_length = ((((unsigned int)buffer[3] & 0x3)) << 11)
120 | (((unsigned int)buffer[4]) << 3) | (buffer[5] >> 5);
121
122 t_framelength += frame_length;
123
124 pos = ftell(file) - ADTS_MAX_SIZE;
125
126 fseek(file, frame_length - ADTS_MAX_SIZE, SEEK_CUR);
127 }
128
129 if (frames > 0)
130 {
131 float sec_per_frame, bytes_per_frame;
132 info->sampling_rate = sample_rates[sr_idx];
133 sec_per_frame = (float)info->sampling_rate/1024.0;
134 bytes_per_frame = (float)t_framelength / (float)frames;
135 info->bitrate = 8 * (int)floor(bytes_per_frame * sec_per_frame);
136 info->length = (int)floor((float)frames/frames_per_sec)*1000;
137 } else {
138 info->sampling_rate = 4;
139 info->bitrate = 128000;
140 info->length = 0;
141 info->channels = 0;
142 }
143
144 return 0;
145 }
146
147 int get_AAC_format(char *filename, faadAACInfo *info)
148 {
149 unsigned long tagsize;
150 FILE *file;
151 char buffer[10];
152 unsigned long file_len;
153 unsigned char adxx_id[5];
154 unsigned long tmp;
155
156 memset(info, 0, sizeof(faadAACInfo));
157
158 file = fopen(filename, "rb");
159
160 if(file == NULL)
161 return -1;
162
163 fseek(file, 0, SEEK_END);
164 file_len = ftell(file);
165 fseek(file, 0, SEEK_SET);
166
167 /* Skip the tag, if it's there */
168 tmp = fread(buffer, 10, 1, file);
169
170 if (StringComp(buffer, "ID3", 3) == 0)
171 {
172 /* high bit is not used */
173 tagsize = (buffer[6] << 21) | (buffer[7] << 14) |
174 (buffer[8] << 7) | (buffer[9] << 0);
175
176 fseek(file, tagsize, SEEK_CUR);
177 tagsize += 10;
178 } else {
179 tagsize = 0;
180 fseek(file, 0, SEEK_SET);
181 }
182
183 if (file_len)
184 file_len -= tagsize;
185
186 tmp = fread(adxx_id, 2, 1, file);
187 adxx_id[5-1] = 0;
188 info->length = 0;
189
190 /* Determine the header type of the file, check the first two bytes */
191 if (StringComp(adxx_id, "AD", 2) == 0)
192 {
193 /* We think its an ADIF header, but check the rest just to make sure */
194 tmp = fread(adxx_id + 2, 2, 1, file);
195
196 if (StringComp(adxx_id, "ADIF", 4) == 0)
197 {
198 read_ADIF_header(file, info);
199
200 info->length = (int)((float)file_len*8000.0/((float)info->bitrate));
201 }
202 } else {
203 /* No ADIF, check for ADTS header */
204 if ((adxx_id[0] == 0xFF)&&((adxx_id[1] & 0xF6) == 0xF0))
205 {
206 /* ADTS header located */
207 fseek(file, tagsize, SEEK_SET);
208 read_ADTS_header(file, info);
209 } else {
210 /* Unknown/headerless AAC file, assume format: */
211 info->version = 2;
212 info->bitrate = 128000;
213 info->sampling_rate = 44100;
214 info->channels = 2;
215 info->headertype = 0;
216 info->object_type = 1;
217 }
218 }
219
220 fclose(file);
221
222 return 0;
223 }
+0
-46
plugins/QCDMp4/aacinfo.h less more
0 /*
1 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
2 ** Copyright (C) 2003 M. Bakker, Ahead Software AG, http://www.nero.com
3 **
4 ** This program is free software; you can redistribute it and/or modify
5 ** it under the terms of the GNU General Public License as published by
6 ** the Free Software Foundation; either version 2 of the License, or
7 ** (at your option) any later version.
8 **
9 ** This program is distributed in the hope that it will be useful,
10 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
11 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 ** GNU General Public License for more details.
13 **
14 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
16 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
17 **
18 ** Any non-GPL usage of this software or parts of this software is strictly
19 ** forbidden.
20 **
21 ** Commercial non-GPL licensing of this software is possible.
22 ** For more info contact Ahead Software through Mpeg4AAClicense@nero.com.
23 **
24 ** $Id: aacinfo.h,v 1.3 2003/12/06 04:24:17 rjamorim Exp $
25 **/
26
27 #ifndef AACINFO_INCLUDED
28 #define AACINFO_INCLUDED
29
30 typedef struct {
31 int version;
32 int channels;
33 int sampling_rate;
34 int bitrate;
35 int length;
36 int object_type;
37 int headertype;
38 } faadAACInfo;
39
40 int get_AAC_format(char *filename, faadAACInfo *info);
41
42 static int read_ADIF_header(FILE *file, faadAACInfo *info);
43 static int read_ADTS_header(FILE *file, faadAACInfo *info);
44
45 #endif
+0
-48
plugins/QCDMp4/config.c less more
0 /*
1 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
2 ** Copyright (C) 2003 M. Bakker, Ahead Software AG, http://www.nero.com
3 **
4 ** This program is free software; you can redistribute it and/or modify
5 ** it under the terms of the GNU General Public License as published by
6 ** the Free Software Foundation; either version 2 of the License, or
7 ** (at your option) any later version.
8 **
9 ** This program is distributed in the hope that it will be useful,
10 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
11 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 ** GNU General Public License for more details.
13 **
14 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
16 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
17 **
18 ** Any non-GPL usage of this software or parts of this software is strictly
19 ** forbidden.
20 **
21 ** Commercial non-GPL licensing of this software is possible.
22 ** For more info contact Ahead Software through Mpeg4AAClicense@nero.com.
23 **
24 ** $Id: config.c,v 1.3 2003/12/06 04:24:17 rjamorim Exp $
25 **/
26
27 #define WIN32_LEAN_AND_MEAN
28 #include <windows.h>
29 #include "config.h"
30
31 char app_name[] = "AudioCoding.com MPEG-4 General Audio player";
32 char INI_FILE[MAX_PATH];
33 int m_priority = 3;
34 int m_resolution = 0;
35 int m_show_errors = 1;
36 int m_use_for_aac = 1;
37 int m_downmix = 0;
38 int m_vbr_display = 0;
39 char titleformat[MAX_PATH];
40
41 void _r_s(char *name,char *data, int mlen)
42 {
43 char buf[10];
44 strcpy(buf,data);
45 GetPrivateProfileString(app_name,name,buf,data,mlen,INI_FILE);
46 }
47
+0
-42
plugins/QCDMp4/config.h less more
0 /*
1 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
2 ** Copyright (C) 2003 M. Bakker, Ahead Software AG, http://www.nero.com
3 **
4 ** This program is free software; you can redistribute it and/or modify
5 ** it under the terms of the GNU General Public License as published by
6 ** the Free Software Foundation; either version 2 of the License, or
7 ** (at your option) any later version.
8 **
9 ** This program is distributed in the hope that it will be useful,
10 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
11 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 ** GNU General Public License for more details.
13 **
14 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
16 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
17 **
18 ** Any non-GPL usage of this software or parts of this software is strictly
19 ** forbidden.
20 **
21 ** Commercial non-GPL licensing of this software is possible.
22 ** For more info contact Ahead Software through Mpeg4AAClicense@nero.com.
23 **
24 ** $Id: config.h,v 1.3 2003/12/06 04:24:17 rjamorim Exp $
25 **/
26
27 char app_name[];
28 char INI_FILE[];
29 int m_priority;
30 int m_resolution;
31 int m_show_errors;
32 int m_use_for_aac;
33 int m_downmix;
34 int m_vbr_display;
35 char titleformat[MAX_PATH];
36
37 #define RS(x) (_r_s(#x,x,sizeof(x)))
38 #define WS(x) (WritePrivateProfileString(app_name,#x,x,INI_FILE))
39
40 void _r_s(char *name,char *data, int mlen);
41
+0
-81
plugins/QCDMp4/mbs.h less more
0 /*
1 * The contents of this file are subject to the Mozilla Public
2 * License Version 1.1 (the "License"); you may not use this file
3 * except in compliance with the License. You may obtain a copy of
4 * the License at http://www.mozilla.org/MPL/
5 *
6 * Software distributed under the License is distributed on an "AS
7 * IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
8 * implied. See the License for the specific language governing
9 * rights and limitations under the License.
10 *
11 * The Original Code is MPEG4IP.
12 *
13 * The Initial Developer of the Original Code is Cisco Systems Inc.
14 * Portions created by Cisco Systems Inc. are
15 * Copyright (C) Cisco Systems Inc. 2001-2002. All Rights Reserved.
16 *
17 * Contributor(s):
18 * Dave Mackie dmackie@cisco.com
19 */
20
21 #ifndef __MBS_INCLUDED__
22 #define __MBS_INCLUDED__
23
24 class CMemoryBitstream {
25 public:
26 CMemoryBitstream() {
27 m_pBuf = NULL;
28 m_bitPos = 0;
29 m_numBits = 0;
30 }
31
32 void AllocBytes(u_int32_t numBytes);
33
34 void SetBytes(u_int8_t* pBytes, u_int32_t numBytes);
35
36 void PutBytes(u_int8_t* pBytes, u_int32_t numBytes);
37
38 void PutBits(u_int32_t bits, u_int32_t numBits);
39
40 u_int32_t GetBits(u_int32_t numBits);
41
42 void SkipBytes(u_int32_t numBytes) {
43 SkipBits(numBytes << 3);
44 }
45
46 void SkipBits(u_int32_t numBits) {
47 SetBitPosition(GetBitPosition() + numBits);
48 }
49
50 u_int32_t GetBitPosition() {
51 return m_bitPos;
52 }
53
54 void SetBitPosition(u_int32_t bitPos) {
55 if (bitPos > m_numBits) {
56 throw;
57 }
58 m_bitPos = bitPos;
59 }
60
61 u_int8_t* GetBuffer() {
62 return m_pBuf;
63 }
64
65 u_int32_t GetNumberOfBytes() {
66 return (GetNumberOfBits() + 7) / 8;
67 }
68
69 u_int32_t GetNumberOfBits() {
70 return m_numBits;
71 }
72
73 protected:
74 u_int8_t* m_pBuf;
75 u_int32_t m_bitPos;
76 u_int32_t m_numBits;
77 };
78
79 #endif /* __MBS_INCLUDED__ */
80
+0
-67
plugins/QCDMp4/resource.h less more
0 //{{NO_DEPENDENCIES}}
1 // Microsoft Visual C++ generated include file.
2 // Used by QCDMp4.rc
3 //
4 #define IDD_CONFIG 102
5 #define IDC_TYPE 1000
6 #define IDC_INFOTEXT 1000
7 #define IDC_DURATION 1001
8 #define IDC_BITRATE 1002
9 #define IDC_SAMPLERATE 1003
10 #define IDC_VTYPE 1004
11 #define IDC_PRIORITY 1004
12 #define IDC_VBITRATE 1005
13 #define IDC_ERROR 1005
14 #define IDC_VDURATION 1006
15 #define IDC_16BITS 1006
16 #define IDC_VSIZE 1007
17 #define IDC_24BITS 1007
18 #define IDC_CONVERT 1007
19 #define IDC_VFPS 1008
20 #define IDC_32BITS 1008
21 #define IDC_CONVERT2 1008
22 #define IDC_CHANNELS 1009
23 #define IDC_24BITS2 1009
24 #define IDC_16BITS_DITHERED 1009
25 #define IDC_CONVERT1 1009
26 #define IDC_USERDATA 1010
27 #define IDC_USEFORAAC 1011
28 #define IDC_METACOMPILATION 1012
29 #define IDC_METANAME 1013
30 #define IDC_METAARTIST 1014
31 #define IDC_METAWRITER 1015
32 #define IDC_METAALBUM 1016
33 #define IDC_METACOMMENTS 1017
34 #define IDC_METAGENRE 1018
35 #define IDC_METAYEAR 1019
36 #define IDC_METATRACK1 1020
37 #define IDC_METADISK1 1021
38 #define IDC_METATEMPO 1022
39 #define IDC_METATRACK2 1023
40 #define IDC_METADISK2 1024
41 #define IDC_STATIC1 1025
42 #define IDC_STATIC2 1026
43 #define IDC_STATIC3 1027
44 #define IDC_STATIC4 1028
45 #define IDC_STATIC5 1029
46 #define IDC_STATIC6 1030
47 #define IDC_STATIC7 1031
48 #define IDC_STATIC8 1032
49 #define IDC_STATIC9 1033
50 #define IDC_STATIC10 1034
51 #define IDC_STATIC11 1035
52 #define IDC_STATIC12 1036
53 #define IDC_DOWNMIX 1038
54 #define IDC_VBR 1039
55 #define IDC_TITLEFORMAT 1040
56
57 // Next default values for new objects
58 //
59 #ifdef APSTUDIO_INVOKED
60 #ifndef APSTUDIO_READONLY_SYMBOLS
61 #define _APS_NEXT_RESOURCE_VALUE 103
62 #define _APS_NEXT_COMMAND_VALUE 40001
63 #define _APS_NEXT_CONTROL_VALUE 1041
64 #define _APS_NEXT_SYMED_VALUE 101
65 #endif
66 #endif
+0
-153
plugins/QCDMp4/utils.c less more
0 /*
1 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
2 ** Copyright (C) 2003 M. Bakker, Ahead Software AG, http://www.nero.com
3 **
4 ** This program is free software; you can redistribute it and/or modify
5 ** it under the terms of the GNU General Public License as published by
6 ** the Free Software Foundation; either version 2 of the License, or
7 ** (at your option) any later version.
8 **
9 ** This program is distributed in the hope that it will be useful,
10 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
11 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 ** GNU General Public License for more details.
13 **
14 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
16 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
17 **
18 ** Any non-GPL usage of this software or parts of this software is strictly
19 ** forbidden.
20 **
21 ** Commercial non-GPL licensing of this software is possible.
22 ** For more info contact Ahead Software through Mpeg4AAClicense@nero.com.
23 **
24 ** $Id: utils.c,v 1.3 2003/12/06 04:24:17 rjamorim Exp $
25 **/
26
27 #define WIN32_LEAN_AND_MEAN
28 #include <windows.h>
29 #include <mp4.h>
30 #include <faad.h>
31 #include "utils.h"
32
33 int StringComp(char const *str1, char const *str2, unsigned long len)
34 {
35 signed int c1 = 0, c2 = 0;
36
37 while (len--)
38 {
39 c1 = tolower(*str1++);
40 c2 = tolower(*str2++);
41
42 if (c1 == 0 || c1 != c2)
43 break;
44 }
45
46 return c1 - c2;
47 }
48
49 int GetAACTrack(MP4FileHandle infile)
50 {
51 /* find AAC track */
52 int i, rc;
53 int numTracks = MP4GetNumberOfTracks(infile, NULL, 0);
54
55 for (i = 0; i < numTracks; i++)
56 {
57 MP4TrackId trackId = MP4FindTrackId(infile, i, NULL, 0);
58 const char* trackType = MP4GetTrackType(infile, trackId);
59
60 if (!strcmp(trackType, MP4_AUDIO_TRACK_TYPE))
61 {
62 unsigned char *buff = NULL;
63 int buff_size = 0;
64 mp4AudioSpecificConfig mp4ASC;
65
66 MP4GetTrackESConfiguration(infile, trackId, &buff, &buff_size);
67
68 if (buff)
69 {
70 rc = AudioSpecificConfig(buff, buff_size, &mp4ASC);
71 free(buff);
72
73 if (rc < 0)
74 return -1;
75 return trackId;
76 }
77 }
78 }
79
80 /* can't decode this */
81 return -1;
82 }
83
84 int GetAudioTrack(MP4FileHandle infile)
85 {
86 /* find AAC track */
87 int i;
88 int numTracks = MP4GetNumberOfTracks(infile, NULL, 0);
89
90 for (i = 0; i < numTracks; i++)
91 {
92 MP4TrackId trackId = MP4FindTrackId(infile, i, NULL, 0);
93 const char* trackType = MP4GetTrackType(infile, trackId);
94
95 if (!strcmp(trackType, MP4_AUDIO_TRACK_TYPE))
96 {
97 return trackId;
98 }
99 }
100
101 /* can't decode this */
102 return -1;
103 }
104
105 int GetVideoTrack(MP4FileHandle infile)
106 {
107 /* find AAC track */
108 int i;
109 int numTracks = MP4GetNumberOfTracks(infile, NULL, 0);
110
111 for (i = 0; i < numTracks; i++)
112 {
113 MP4TrackId trackId = MP4FindTrackId(infile, i, NULL, 0);
114 const char* trackType = MP4GetTrackType(infile, trackId);
115
116 if (!strcmp(trackType, MP4_VIDEO_TRACK_TYPE))
117 {
118 return trackId;
119 }
120 }
121
122 /* can't decode this */
123 return -1;
124 }
125
126 LPTSTR PathFindFileName(LPCTSTR pPath)
127 {
128 LPCTSTR pT;
129
130 for (pT = pPath; *pPath; pPath = CharNext(pPath)) {
131 if ((pPath[0] == TEXT('\\') || pPath[0] == TEXT(':')) && pPath[1] && (pPath[1] != TEXT('\\')))
132 pT = pPath + 1;
133 }
134
135 return (LPTSTR)pT; // const -> non const
136 }
137
138 char *convert3in4to3in3(void *sample_buffer, int samples)
139 {
140 int i;
141 long *sample_buffer24 = (long*)sample_buffer;
142 char *data = malloc(samples*3*sizeof(char));
143
144 for (i = 0; i < samples; i++)
145 {
146 data[i*3] = sample_buffer24[i] & 0xFF;
147 data[i*3+1] = (sample_buffer24[i] >> 8) & 0xFF;
148 data[i*3+2] = (sample_buffer24[i] >> 16) & 0xFF;
149 }
150
151 return data;
152 }
+0
-40
plugins/QCDMp4/utils.h less more
0 /*
1 ** FAAD2 - Freeware Advanced Audio (AAC) Decoder including SBR decoding
2 ** Copyright (C) 2003 M. Bakker, Ahead Software AG, http://www.nero.com
3 **
4 ** This program is free software; you can redistribute it and/or modify
5 ** it under the terms of the GNU General Public License as published by
6 ** the Free Software Foundation; either version 2 of the License, or
7 ** (at your option) any later version.
8 **
9 ** This program is distributed in the hope that it will be useful,
10 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
11 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 ** GNU General Public License for more details.
13 **
14 ** You should have received a copy of the GNU General Public License
15 ** along with this program; if not, write to the Free Software
16 ** Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
17 **
18 ** Any non-GPL usage of this software or parts of this software is strictly
19 ** forbidden.
20 **
21 ** Commercial non-GPL licensing of this software is possible.
22 ** For more info contact Ahead Software through Mpeg4AAClicense@nero.com.
23 **
24 ** $Id: utils.h,v 1.3 2003/12/06 04:24:17 rjamorim Exp $
25 **/
26
27 #ifndef UTILS_INCLUDED
28 #define UTILS_INCLUDED
29
30 #include <mp4.h>
31
32 LPTSTR PathFindFileName(LPCTSTR pPath);
33 int GetVideoTrack(MP4FileHandle infile);
34 int GetAudioTrack(MP4FileHandle infile);
35 int GetAACTrack(MP4FileHandle infile);
36 int StringComp(char const *str1, char const *str2, unsigned long len);
37 char *convert3in4to3in3(void *sample_buffer, int samples);
38
39 #endif
0 # Makefile.in generated by automake 1.16.2 from Makefile.am.
1 # @configure_input@
2
3 # Copyright (C) 1994-2020 Free Software Foundation, Inc.
4
5 # This Makefile.in is free software; the Free Software Foundation
6 # gives unlimited permission to copy and/or distribute it,
7 # with or without modifications, as long as this notice is preserved.
8
9 # This program is distributed in the hope that it will be useful,
10 # but WITHOUT ANY WARRANTY, to the extent permitted by law; without
11 # even the implied warranty of MERCHANTABILITY or FITNESS FOR A
12 # PARTICULAR PURPOSE.
13
14 @SET_MAKE@
15
16 VPATH = @srcdir@
17 am__is_gnu_make = { \
18 if test -z '$(MAKELEVEL)'; then \
19 false; \
20 elif test -n '$(MAKE_HOST)'; then \
21 true; \
22 elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
23 true; \
24 else \
25 false; \
26 fi; \
27 }
28 am__make_running_with_option = \
29 case $${target_option-} in \
30 ?) ;; \
31 *) echo "am__make_running_with_option: internal error: invalid" \
32 "target option '$${target_option-}' specified" >&2; \
33 exit 1;; \
34 esac; \
35 has_opt=no; \
36 sane_makeflags=$$MAKEFLAGS; \
37 if $(am__is_gnu_make); then \
38 sane_makeflags=$$MFLAGS; \
39 else \
40 case $$MAKEFLAGS in \
41 *\\[\ \ ]*) \
42 bs=\\; \
43 sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
44 | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
45 esac; \
46 fi; \
47 skip_next=no; \
48 strip_trailopt () \
49 { \
50 flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
51 }; \
52 for flg in $$sane_makeflags; do \
53 test $$skip_next = yes && { skip_next=no; continue; }; \
54 case $$flg in \
55 *=*|--*) continue;; \
56 -*I) strip_trailopt 'I'; skip_next=yes;; \
57 -*I?*) strip_trailopt 'I';; \
58 -*O) strip_trailopt 'O'; skip_next=yes;; \
59 -*O?*) strip_trailopt 'O';; \
60 -*l) strip_trailopt 'l'; skip_next=yes;; \
61 -*l?*) strip_trailopt 'l';; \
62 -[dEDm]) skip_next=yes;; \
63 -[JT]) skip_next=yes;; \
64 esac; \
65 case $$flg in \
66 *$$target_option*) has_opt=yes; break;; \
67 esac; \
68 done; \
69 test $$has_opt = yes
70 am__make_dryrun = (target_option=n; $(am__make_running_with_option))
71 am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
72 pkgdatadir = $(datadir)/@PACKAGE@
73 pkgincludedir = $(includedir)/@PACKAGE@
74 pkglibdir = $(libdir)/@PACKAGE@
75 pkglibexecdir = $(libexecdir)/@PACKAGE@
76 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
77 install_sh_DATA = $(install_sh) -c -m 644
78 install_sh_PROGRAM = $(install_sh) -c
79 install_sh_SCRIPT = $(install_sh) -c
80 INSTALL_HEADER = $(INSTALL_DATA)
81 transform = $(program_transform_name)
82 NORMAL_INSTALL = :
83 PRE_INSTALL = :
84 POST_INSTALL = :
85 NORMAL_UNINSTALL = :
86 PRE_UNINSTALL = :
87 POST_UNINSTALL = :
88 build_triplet = @build@
89 host_triplet = @host@
90 subdir = plugins/mpeg4ip
91 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
92 am__aclocal_m4_deps = $(top_srcdir)/configure.ac
93 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
94 $(ACLOCAL_M4)
95 DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
96 mkinstalldirs = $(install_sh) -d
97 CONFIG_HEADER = $(top_builddir)/config.h
98 CONFIG_CLEAN_FILES =
99 CONFIG_CLEAN_VPATH_FILES =
100 am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
101 am__vpath_adj = case $$p in \
102 $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
103 *) f=$$p;; \
104 esac;
105 am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
106 am__install_max = 40
107 am__nobase_strip_setup = \
108 srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
109 am__nobase_strip = \
110 for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
111 am__nobase_list = $(am__nobase_strip_setup); \
112 for p in $$list; do echo "$$p $$p"; done | \
113 sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
114 $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
115 if (++n[$$2] == $(am__install_max)) \
116 { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
117 END { for (dir in files) print dir, files[dir] }'
118 am__base_list = \
119 sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
120 sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
121 am__uninstall_files_from_dir = { \
122 test -z "$$files" \
123 || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
124 || { echo " ( cd '$$dir' && rm -f" $$files ")"; \
125 $(am__cd) "$$dir" && rm -f $$files; }; \
126 }
127 am__installdirs = "$(DESTDIR)$(libdir)"
128 LTLIBRARIES = $(lib_LTLIBRARIES)
129 faad2_plugin_la_DEPENDENCIES = $(top_builddir)/libfaad/libfaad.la
130 am_faad2_plugin_la_OBJECTS = faad2.lo aa_file.lo
131 faad2_plugin_la_OBJECTS = $(am_faad2_plugin_la_OBJECTS)
132 AM_V_lt = $(am__v_lt_@AM_V@)
133 am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
134 am__v_lt_0 = --silent
135 am__v_lt_1 =
136 faad2_plugin_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX \
137 $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CXXLD) \
138 $(AM_CXXFLAGS) $(CXXFLAGS) $(faad2_plugin_la_LDFLAGS) \
139 $(LDFLAGS) -o $@
140 AM_V_P = $(am__v_P_@AM_V@)
141 am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
142 am__v_P_0 = false
143 am__v_P_1 = :
144 AM_V_GEN = $(am__v_GEN_@AM_V@)
145 am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
146 am__v_GEN_0 = @echo " GEN " $@;
147 am__v_GEN_1 =
148 AM_V_at = $(am__v_at_@AM_V@)
149 am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
150 am__v_at_0 = @
151 am__v_at_1 =
152 DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
153 depcomp = $(SHELL) $(top_srcdir)/depcomp
154 am__maybe_remake_depfiles = depfiles
155 am__depfiles_remade = ./$(DEPDIR)/aa_file.Plo ./$(DEPDIR)/faad2.Plo
156 am__mv = mv -f
157 CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
158 $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
159 LTCXXCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \
160 $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) \
161 $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
162 $(AM_CXXFLAGS) $(CXXFLAGS)
163 AM_V_CXX = $(am__v_CXX_@AM_V@)
164 am__v_CXX_ = $(am__v_CXX_@AM_DEFAULT_V@)
165 am__v_CXX_0 = @echo " CXX " $@;
166 am__v_CXX_1 =
167 CXXLD = $(CXX)
168 CXXLINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \
169 $(LIBTOOLFLAGS) --mode=link $(CXXLD) $(AM_CXXFLAGS) \
170 $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
171 AM_V_CXXLD = $(am__v_CXXLD_@AM_V@)
172 am__v_CXXLD_ = $(am__v_CXXLD_@AM_DEFAULT_V@)
173 am__v_CXXLD_0 = @echo " CXXLD " $@;
174 am__v_CXXLD_1 =
175 COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
176 $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
177 LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
178 $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \
179 $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
180 $(AM_CFLAGS) $(CFLAGS)
181 AM_V_CC = $(am__v_CC_@AM_V@)
182 am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@)
183 am__v_CC_0 = @echo " CC " $@;
184 am__v_CC_1 =
185 CCLD = $(CC)
186 LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
187 $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
188 $(AM_LDFLAGS) $(LDFLAGS) -o $@
189 AM_V_CCLD = $(am__v_CCLD_@AM_V@)
190 am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@)
191 am__v_CCLD_0 = @echo " CCLD " $@;
192 am__v_CCLD_1 =
193 SOURCES = $(faad2_plugin_la_SOURCES)
194 DIST_SOURCES = $(faad2_plugin_la_SOURCES)
195 am__can_run_installinfo = \
196 case $$AM_UPDATE_INFO_DIR in \
197 n|no|NO) false;; \
198 *) (install-info --version) >/dev/null 2>&1;; \
199 esac
200 am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
201 # Read a list of newline-separated strings from the standard input,
202 # and print each of them once, without duplicates. Input order is
203 # *not* preserved.
204 am__uniquify_input = $(AWK) '\
205 BEGIN { nonempty = 0; } \
206 { items[$$0] = 1; nonempty = 1; } \
207 END { if (nonempty) { for (i in items) print i; }; } \
208 '
209 # Make sure the list of sources is unique. This is necessary because,
210 # e.g., the same source file might be shared among _SOURCES variables
211 # for different programs/libraries.
212 am__define_uniq_tagged_files = \
213 list='$(am__tagged_files)'; \
214 unique=`for i in $$list; do \
215 if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
216 done | $(am__uniquify_input)`
217 ETAGS = etags
218 CTAGS = ctags
219 am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/depcomp
220 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
221 ACLOCAL = @ACLOCAL@
222 AMTAR = @AMTAR@
223 AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
224 AR = @AR@
225 AUTOCONF = @AUTOCONF@
226 AUTOHEADER = @AUTOHEADER@
227 AUTOMAKE = @AUTOMAKE@
228 AWK = @AWK@
229 CC = @CC@
230 CCDEPMODE = @CCDEPMODE@
231 CFLAGS = @CFLAGS@
232 CPP = @CPP@
233 CPPFLAGS = @CPPFLAGS@
234 CXX = @CXX@
235 CXXCPP = @CXXCPP@
236 CXXDEPMODE = @CXXDEPMODE@
237 CXXFLAGS = @CXXFLAGS@
238 CYGPATH_W = @CYGPATH_W@
239 DEFS = @DEFS@
240 DEPDIR = @DEPDIR@
241 DLLTOOL = @DLLTOOL@
242 DSYMUTIL = @DSYMUTIL@
243 DUMPBIN = @DUMPBIN@
244 ECHO_C = @ECHO_C@
245 ECHO_N = @ECHO_N@
246 ECHO_T = @ECHO_T@
247 EGREP = @EGREP@
248 EXEEXT = @EXEEXT@
249 FGREP = @FGREP@
250 GREP = @GREP@
251 GTK_CONFIG = @GTK_CONFIG@
252 INSTALL = @INSTALL@
253 INSTALL_DATA = @INSTALL_DATA@
254 INSTALL_PROGRAM = @INSTALL_PROGRAM@
255 INSTALL_SCRIPT = @INSTALL_SCRIPT@
256 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
257 LD = @LD@
258 LDFLAGS = @LDFLAGS@
259 LIBOBJS = @LIBOBJS@
260 LIBS = @LIBS@
261 LIBTOOL = @LIBTOOL@
262 LIBTOOL_DEPS = @LIBTOOL_DEPS@
263 LIPO = @LIPO@
264 LN_S = @LN_S@
265 LTLIBOBJS = @LTLIBOBJS@
266 LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
267 MAKEINFO = @MAKEINFO@
268 MANIFEST_TOOL = @MANIFEST_TOOL@
269 MKDIR_P = @MKDIR_P@
270 MP4FF_LIBS = @MP4FF_LIBS@
271 NM = @NM@
272 NMEDIT = @NMEDIT@
273 OBJDUMP = @OBJDUMP@
274 OBJEXT = @OBJEXT@
275 OTOOL = @OTOOL@
276 OTOOL64 = @OTOOL64@
277 PACKAGE = @PACKAGE@
278 PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
279 PACKAGE_NAME = @PACKAGE_NAME@
280 PACKAGE_STRING = @PACKAGE_STRING@
281 PACKAGE_TARNAME = @PACKAGE_TARNAME@
282 PACKAGE_URL = @PACKAGE_URL@
283 PACKAGE_VERSION = @PACKAGE_VERSION@
284 PATH_SEPARATOR = @PATH_SEPARATOR@
285 RANLIB = @RANLIB@
286 RPMBUILD = @RPMBUILD@
287 SED = @SED@
288 SET_MAKE = @SET_MAKE@
289 SHELL = @SHELL@
290 STRIP = @STRIP@
291 VERSION = @VERSION@
292 XMMS_CONFIG = @XMMS_CONFIG@
293 abs_builddir = @abs_builddir@
294 abs_srcdir = @abs_srcdir@
295 abs_top_builddir = @abs_top_builddir@
296 abs_top_srcdir = @abs_top_srcdir@
297 ac_ct_AR = @ac_ct_AR@
298 ac_ct_CC = @ac_ct_CC@
299 ac_ct_CXX = @ac_ct_CXX@
300 ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
301 am__include = @am__include@
302 am__leading_dot = @am__leading_dot@
303 am__quote = @am__quote@
304 am__tar = @am__tar@
305 am__untar = @am__untar@
306 bindir = @bindir@
307 build = @build@
308 build_alias = @build_alias@
309 build_cpu = @build_cpu@
310 build_os = @build_os@
311 build_vendor = @build_vendor@
312 builddir = @builddir@
313 datadir = @datadir@
314 datarootdir = @datarootdir@
315 docdir = @docdir@
316 dvidir = @dvidir@
317 exec_prefix = @exec_prefix@
318 external_mp4v2 = @external_mp4v2@
319 host = @host@
320 host_alias = @host_alias@
321 host_cpu = @host_cpu@
322 host_os = @host_os@
323 host_vendor = @host_vendor@
324 htmldir = @htmldir@
325 includedir = @includedir@
326 infodir = @infodir@
327 install_sh = @install_sh@
328 libdir = @MPEG4IP_PLAYER_PLUGIN_DIR@
329 libexecdir = @libexecdir@
330 localedir = @localedir@
331 localstatedir = @localstatedir@
332 mandir = @mandir@
333 mkdir_p = @mkdir_p@
334 oldincludedir = @oldincludedir@
335 pdfdir = @pdfdir@
336 prefix = @prefix@
337 program_transform_name = @program_transform_name@
338 psdir = @psdir@
339 runstatedir = @runstatedir@
340 sbindir = @sbindir@
341 sharedstatedir = @sharedstatedir@
342 srcdir = @srcdir@
343 sysconfdir = @sysconfdir@
344 target_alias = @target_alias@
345 top_build_prefix = @top_build_prefix@
346 top_builddir = @top_builddir@
347 top_srcdir = @top_srcdir@
348 lib_LTLIBRARIES = faad2_plugin.la
349 faad2_plugin_la_LDFLAGS = -module
350 faad2_plugin_la_SOURCES = \
351 faad2.cpp \
352 faad2.h \
353 aa_file.cpp \
354 aa_file.h
355
356 faad2_plugin_la_LIBADD = \
357 $(top_builddir)/libfaad/libfaad.la \
358 -lm
359
360 AM_CPPFLAGS = -I$(top_srcdir)/include
361 AM_CFLAGS = -D_REENTRANT -fexceptions
362 AM_CXXFLAGS = -D_REENTRANT -DNOCONTROLS -fexceptions
363 all: all-am
364
365 .SUFFIXES:
366 .SUFFIXES: .cpp .lo .o .obj
367 $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
368 @for dep in $?; do \
369 case '$(am__configure_deps)' in \
370 *$$dep*) \
371 ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
372 && { if test -f $@; then exit 0; else break; fi; }; \
373 exit 1;; \
374 esac; \
375 done; \
376 echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu plugins/mpeg4ip/Makefile'; \
377 $(am__cd) $(top_srcdir) && \
378 $(AUTOMAKE) --gnu plugins/mpeg4ip/Makefile
379 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
380 @case '$?' in \
381 *config.status*) \
382 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
383 *) \
384 echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \
385 cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \
386 esac;
387
388 $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
389 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
390
391 $(top_srcdir)/configure: $(am__configure_deps)
392 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
393 $(ACLOCAL_M4): $(am__aclocal_m4_deps)
394 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
395 $(am__aclocal_m4_deps):
396
397 install-libLTLIBRARIES: $(lib_LTLIBRARIES)
398 @$(NORMAL_INSTALL)
399 @list='$(lib_LTLIBRARIES)'; test -n "$(libdir)" || list=; \
400 list2=; for p in $$list; do \
401 if test -f $$p; then \
402 list2="$$list2 $$p"; \
403 else :; fi; \
404 done; \
405 test -z "$$list2" || { \
406 echo " $(MKDIR_P) '$(DESTDIR)$(libdir)'"; \
407 $(MKDIR_P) "$(DESTDIR)$(libdir)" || exit 1; \
408 echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 '$(DESTDIR)$(libdir)'"; \
409 $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 "$(DESTDIR)$(libdir)"; \
410 }
411
412 uninstall-libLTLIBRARIES:
413 @$(NORMAL_UNINSTALL)
414 @list='$(lib_LTLIBRARIES)'; test -n "$(libdir)" || list=; \
415 for p in $$list; do \
416 $(am__strip_dir) \
417 echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f '$(DESTDIR)$(libdir)/$$f'"; \
418 $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f "$(DESTDIR)$(libdir)/$$f"; \
419 done
420
421 clean-libLTLIBRARIES:
422 -test -z "$(lib_LTLIBRARIES)" || rm -f $(lib_LTLIBRARIES)
423 @list='$(lib_LTLIBRARIES)'; \
424 locs=`for p in $$list; do echo $$p; done | \
425 sed 's|^[^/]*$$|.|; s|/[^/]*$$||; s|$$|/so_locations|' | \
426 sort -u`; \
427 test -z "$$locs" || { \
428 echo rm -f $${locs}; \
429 rm -f $${locs}; \
430 }
431
432 faad2_plugin.la: $(faad2_plugin_la_OBJECTS) $(faad2_plugin_la_DEPENDENCIES) $(EXTRA_faad2_plugin_la_DEPENDENCIES)
433 $(AM_V_CXXLD)$(faad2_plugin_la_LINK) -rpath $(libdir) $(faad2_plugin_la_OBJECTS) $(faad2_plugin_la_LIBADD) $(LIBS)
434
435 mostlyclean-compile:
436 -rm -f *.$(OBJEXT)
437
438 distclean-compile:
439 -rm -f *.tab.c
440
441 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/aa_file.Plo@am__quote@ # am--include-marker
442 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/faad2.Plo@am__quote@ # am--include-marker
443
444 $(am__depfiles_remade):
445 @$(MKDIR_P) $(@D)
446 @echo '# dummy' >$@-t && $(am__mv) $@-t $@
447
448 am--depfiles: $(am__depfiles_remade)
449
450 .cpp.o:
451 @am__fastdepCXX_TRUE@ $(AM_V_CXX)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\
452 @am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\
453 @am__fastdepCXX_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po
454 @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
455 @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
456 @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXXCOMPILE) -c -o $@ $<
457
458 .cpp.obj:
459 @am__fastdepCXX_TRUE@ $(AM_V_CXX)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.obj$$||'`;\
460 @am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ `$(CYGPATH_W) '$<'` &&\
461 @am__fastdepCXX_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po
462 @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
463 @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
464 @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
465
466 .cpp.lo:
467 @am__fastdepCXX_TRUE@ $(AM_V_CXX)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.lo$$||'`;\
468 @am__fastdepCXX_TRUE@ $(LTCXXCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\
469 @am__fastdepCXX_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Plo
470 @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
471 @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
472 @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(LTCXXCOMPILE) -c -o $@ $<
473
474 mostlyclean-libtool:
475 -rm -f *.lo
476
477 clean-libtool:
478 -rm -rf .libs _libs
479
480 ID: $(am__tagged_files)
481 $(am__define_uniq_tagged_files); mkid -fID $$unique
482 tags: tags-am
483 TAGS: tags
484
485 tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
486 set x; \
487 here=`pwd`; \
488 $(am__define_uniq_tagged_files); \
489 shift; \
490 if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
491 test -n "$$unique" || unique=$$empty_fix; \
492 if test $$# -gt 0; then \
493 $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
494 "$$@" $$unique; \
495 else \
496 $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
497 $$unique; \
498 fi; \
499 fi
500 ctags: ctags-am
501
502 CTAGS: ctags
503 ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
504 $(am__define_uniq_tagged_files); \
505 test -z "$(CTAGS_ARGS)$$unique" \
506 || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
507 $$unique
508
509 GTAGS:
510 here=`$(am__cd) $(top_builddir) && pwd` \
511 && $(am__cd) $(top_srcdir) \
512 && gtags -i $(GTAGS_ARGS) "$$here"
513 cscopelist: cscopelist-am
514
515 cscopelist-am: $(am__tagged_files)
516 list='$(am__tagged_files)'; \
517 case "$(srcdir)" in \
518 [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
519 *) sdir=$(subdir)/$(srcdir) ;; \
520 esac; \
521 for i in $$list; do \
522 if test -f "$$i"; then \
523 echo "$(subdir)/$$i"; \
524 else \
525 echo "$$sdir/$$i"; \
526 fi; \
527 done >> $(top_builddir)/cscope.files
528
529 distclean-tags:
530 -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
531
532 distdir: $(BUILT_SOURCES)
533 $(MAKE) $(AM_MAKEFLAGS) distdir-am
534
535 distdir-am: $(DISTFILES)
536 @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
537 topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
538 list='$(DISTFILES)'; \
539 dist_files=`for file in $$list; do echo $$file; done | \
540 sed -e "s|^$$srcdirstrip/||;t" \
541 -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
542 case $$dist_files in \
543 */*) $(MKDIR_P) `echo "$$dist_files" | \
544 sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
545 sort -u` ;; \
546 esac; \
547 for file in $$dist_files; do \
548 if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
549 if test -d $$d/$$file; then \
550 dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
551 if test -d "$(distdir)/$$file"; then \
552 find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
553 fi; \
554 if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
555 cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
556 find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
557 fi; \
558 cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
559 else \
560 test -f "$(distdir)/$$file" \
561 || cp -p $$d/$$file "$(distdir)/$$file" \
562 || exit 1; \
563 fi; \
564 done
565 check-am: all-am
566 check: check-am
567 all-am: Makefile $(LTLIBRARIES)
568 installdirs:
569 for dir in "$(DESTDIR)$(libdir)"; do \
570 test -z "$$dir" || $(MKDIR_P) "$$dir"; \
571 done
572 install: install-am
573 install-exec: install-exec-am
574 install-data: install-data-am
575 uninstall: uninstall-am
576
577 install-am: all-am
578 @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
579
580 installcheck: installcheck-am
581 install-strip:
582 if test -z '$(STRIP)'; then \
583 $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
584 install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
585 install; \
586 else \
587 $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
588 install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
589 "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
590 fi
591 mostlyclean-generic:
592
593 clean-generic:
594
595 distclean-generic:
596 -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
597 -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
598
599 maintainer-clean-generic:
600 @echo "This command is intended for maintainers to use"
601 @echo "it deletes files that may require special tools to rebuild."
602 clean: clean-am
603
604 clean-am: clean-generic clean-libLTLIBRARIES clean-libtool \
605 mostlyclean-am
606
607 distclean: distclean-am
608 -rm -f ./$(DEPDIR)/aa_file.Plo
609 -rm -f ./$(DEPDIR)/faad2.Plo
610 -rm -f Makefile
611 distclean-am: clean-am distclean-compile distclean-generic \
612 distclean-tags
613
614 dvi: dvi-am
615
616 dvi-am:
617
618 html: html-am
619
620 html-am:
621
622 info: info-am
623
624 info-am:
625
626 install-data-am:
627
628 install-dvi: install-dvi-am
629
630 install-dvi-am:
631
632 install-exec-am: install-libLTLIBRARIES
633
634 install-html: install-html-am
635
636 install-html-am:
637
638 install-info: install-info-am
639
640 install-info-am:
641
642 install-man:
643
644 install-pdf: install-pdf-am
645
646 install-pdf-am:
647
648 install-ps: install-ps-am
649
650 install-ps-am:
651
652 installcheck-am:
653
654 maintainer-clean: maintainer-clean-am
655 -rm -f ./$(DEPDIR)/aa_file.Plo
656 -rm -f ./$(DEPDIR)/faad2.Plo
657 -rm -f Makefile
658 maintainer-clean-am: distclean-am maintainer-clean-generic
659
660 mostlyclean: mostlyclean-am
661
662 mostlyclean-am: mostlyclean-compile mostlyclean-generic \
663 mostlyclean-libtool
664
665 pdf: pdf-am
666
667 pdf-am:
668
669 ps: ps-am
670
671 ps-am:
672
673 uninstall-am: uninstall-libLTLIBRARIES
674
675 .MAKE: install-am install-strip
676
677 .PHONY: CTAGS GTAGS TAGS all all-am am--depfiles check check-am clean \
678 clean-generic clean-libLTLIBRARIES clean-libtool cscopelist-am \
679 ctags ctags-am distclean distclean-compile distclean-generic \
680 distclean-libtool distclean-tags distdir dvi dvi-am html \
681 html-am info info-am install install-am install-data \
682 install-data-am install-dvi install-dvi-am install-exec \
683 install-exec-am install-html install-html-am install-info \
684 install-info-am install-libLTLIBRARIES install-man install-pdf \
685 install-pdf-am install-ps install-ps-am install-strip \
686 installcheck installcheck-am installdirs maintainer-clean \
687 maintainer-clean-generic mostlyclean mostlyclean-compile \
688 mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
689 tags tags-am uninstall uninstall-am uninstall-libLTLIBRARIES
690
691 .PRECIOUS: Makefile
692
693
694 # Tell versions [3.59,3.63) of GNU make to not export all variables.
695 # Otherwise a system limit (for SysV at least) may be exceeded.
696 .NOEXPORT:
+0
-11
plugins/mpeg4ip/README_WIN32.txt less more
0 Creating mpeg4ip plugin for Windows.
1
2 You will need to have mpeg4ip installed. If you install it on the same drive, with the top level directory
3 name of /mpeg4ip, you will have to do nothing other than move the faad2_plugin.dll from the Release or
4 Debug directory to the same directory as the other mpeg4ip plugins.
5
6 If you install it somewhere else, you will have to change the include paths and link paths in the project
7 settings for faad2_plugin to the proper directory. Look for /mpeg4ip (or \mpeg4ip) and change all occurances
8 of these in the file.
9
10 It might be best to hand-edit the faad_plugin.sdp file with wordpad and use the search and replace function.
0 # Makefile.in generated by automake 1.16.2 from Makefile.am.
1 # @configure_input@
2
3 # Copyright (C) 1994-2020 Free Software Foundation, Inc.
4
5 # This Makefile.in is free software; the Free Software Foundation
6 # gives unlimited permission to copy and/or distribute it,
7 # with or without modifications, as long as this notice is preserved.
8
9 # This program is distributed in the hope that it will be useful,
10 # but WITHOUT ANY WARRANTY, to the extent permitted by law; without
11 # even the implied warranty of MERCHANTABILITY or FITNESS FOR A
12 # PARTICULAR PURPOSE.
13
14 @SET_MAKE@
15 VPATH = @srcdir@
16 am__is_gnu_make = { \
17 if test -z '$(MAKELEVEL)'; then \
18 false; \
19 elif test -n '$(MAKE_HOST)'; then \
20 true; \
21 elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
22 true; \
23 else \
24 false; \
25 fi; \
26 }
27 am__make_running_with_option = \
28 case $${target_option-} in \
29 ?) ;; \
30 *) echo "am__make_running_with_option: internal error: invalid" \
31 "target option '$${target_option-}' specified" >&2; \
32 exit 1;; \
33 esac; \
34 has_opt=no; \
35 sane_makeflags=$$MAKEFLAGS; \
36 if $(am__is_gnu_make); then \
37 sane_makeflags=$$MFLAGS; \
38 else \
39 case $$MAKEFLAGS in \
40 *\\[\ \ ]*) \
41 bs=\\; \
42 sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
43 | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
44 esac; \
45 fi; \
46 skip_next=no; \
47 strip_trailopt () \
48 { \
49 flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
50 }; \
51 for flg in $$sane_makeflags; do \
52 test $$skip_next = yes && { skip_next=no; continue; }; \
53 case $$flg in \
54 *=*|--*) continue;; \
55 -*I) strip_trailopt 'I'; skip_next=yes;; \
56 -*I?*) strip_trailopt 'I';; \
57 -*O) strip_trailopt 'O'; skip_next=yes;; \
58 -*O?*) strip_trailopt 'O';; \
59 -*l) strip_trailopt 'l'; skip_next=yes;; \
60 -*l?*) strip_trailopt 'l';; \
61 -[dEDm]) skip_next=yes;; \
62 -[JT]) skip_next=yes;; \
63 esac; \
64 case $$flg in \
65 *$$target_option*) has_opt=yes; break;; \
66 esac; \
67 done; \
68 test $$has_opt = yes
69 am__make_dryrun = (target_option=n; $(am__make_running_with_option))
70 am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
71 pkgdatadir = $(datadir)/@PACKAGE@
72 pkgincludedir = $(includedir)/@PACKAGE@
73 pkglibdir = $(libdir)/@PACKAGE@
74 pkglibexecdir = $(libexecdir)/@PACKAGE@
75 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
76 install_sh_DATA = $(install_sh) -c -m 644
77 install_sh_PROGRAM = $(install_sh) -c
78 install_sh_SCRIPT = $(install_sh) -c
79 INSTALL_HEADER = $(INSTALL_DATA)
80 transform = $(program_transform_name)
81 NORMAL_INSTALL = :
82 PRE_INSTALL = :
83 POST_INSTALL = :
84 NORMAL_UNINSTALL = :
85 PRE_UNINSTALL = :
86 POST_UNINSTALL = :
87 build_triplet = @build@
88 host_triplet = @host@
89 subdir = plugins/xmms
90 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
91 am__aclocal_m4_deps = $(top_srcdir)/configure.ac
92 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
93 $(ACLOCAL_M4)
94 DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
95 mkinstalldirs = $(install_sh) -d
96 CONFIG_HEADER = $(top_builddir)/config.h
97 CONFIG_CLEAN_FILES =
98 CONFIG_CLEAN_VPATH_FILES =
99 AM_V_P = $(am__v_P_@AM_V@)
100 am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
101 am__v_P_0 = false
102 am__v_P_1 = :
103 AM_V_GEN = $(am__v_GEN_@AM_V@)
104 am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
105 am__v_GEN_0 = @echo " GEN " $@;
106 am__v_GEN_1 =
107 AM_V_at = $(am__v_at_@AM_V@)
108 am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
109 am__v_at_0 = @
110 am__v_at_1 =
111 SOURCES =
112 DIST_SOURCES =
113 RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \
114 ctags-recursive dvi-recursive html-recursive info-recursive \
115 install-data-recursive install-dvi-recursive \
116 install-exec-recursive install-html-recursive \
117 install-info-recursive install-pdf-recursive \
118 install-ps-recursive install-recursive installcheck-recursive \
119 installdirs-recursive pdf-recursive ps-recursive \
120 tags-recursive uninstall-recursive
121 am__can_run_installinfo = \
122 case $$AM_UPDATE_INFO_DIR in \
123 n|no|NO) false;; \
124 *) (install-info --version) >/dev/null 2>&1;; \
125 esac
126 RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \
127 distclean-recursive maintainer-clean-recursive
128 am__recursive_targets = \
129 $(RECURSIVE_TARGETS) \
130 $(RECURSIVE_CLEAN_TARGETS) \
131 $(am__extra_recursive_targets)
132 AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \
133 distdir distdir-am
134 am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
135 # Read a list of newline-separated strings from the standard input,
136 # and print each of them once, without duplicates. Input order is
137 # *not* preserved.
138 am__uniquify_input = $(AWK) '\
139 BEGIN { nonempty = 0; } \
140 { items[$$0] = 1; nonempty = 1; } \
141 END { if (nonempty) { for (i in items) print i; }; } \
142 '
143 # Make sure the list of sources is unique. This is necessary because,
144 # e.g., the same source file might be shared among _SOURCES variables
145 # for different programs/libraries.
146 am__define_uniq_tagged_files = \
147 list='$(am__tagged_files)'; \
148 unique=`for i in $$list; do \
149 if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
150 done | $(am__uniquify_input)`
151 ETAGS = etags
152 CTAGS = ctags
153 DIST_SUBDIRS = $(SUBDIRS)
154 am__DIST_COMMON = $(srcdir)/Makefile.in AUTHORS ChangeLog INSTALL NEWS \
155 README TODO
156 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
157 am__relativize = \
158 dir0=`pwd`; \
159 sed_first='s,^\([^/]*\)/.*$$,\1,'; \
160 sed_rest='s,^[^/]*/*,,'; \
161 sed_last='s,^.*/\([^/]*\)$$,\1,'; \
162 sed_butlast='s,/*[^/]*$$,,'; \
163 while test -n "$$dir1"; do \
164 first=`echo "$$dir1" | sed -e "$$sed_first"`; \
165 if test "$$first" != "."; then \
166 if test "$$first" = ".."; then \
167 dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \
168 dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \
169 else \
170 first2=`echo "$$dir2" | sed -e "$$sed_first"`; \
171 if test "$$first2" = "$$first"; then \
172 dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \
173 else \
174 dir2="../$$dir2"; \
175 fi; \
176 dir0="$$dir0"/"$$first"; \
177 fi; \
178 fi; \
179 dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \
180 done; \
181 reldir="$$dir2"
182 ACLOCAL = @ACLOCAL@
183 AMTAR = @AMTAR@
184 AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
185 AR = @AR@
186 AUTOCONF = @AUTOCONF@
187 AUTOHEADER = @AUTOHEADER@
188 AUTOMAKE = @AUTOMAKE@
189 AWK = @AWK@
190 CC = @CC@
191 CCDEPMODE = @CCDEPMODE@
192 CFLAGS = @CFLAGS@
193 CPP = @CPP@
194 CPPFLAGS = @CPPFLAGS@
195 CXX = @CXX@
196 CXXCPP = @CXXCPP@
197 CXXDEPMODE = @CXXDEPMODE@
198 CXXFLAGS = @CXXFLAGS@
199 CYGPATH_W = @CYGPATH_W@
200 DEFS = @DEFS@
201 DEPDIR = @DEPDIR@
202 DLLTOOL = @DLLTOOL@
203 DSYMUTIL = @DSYMUTIL@
204 DUMPBIN = @DUMPBIN@
205 ECHO_C = @ECHO_C@
206 ECHO_N = @ECHO_N@
207 ECHO_T = @ECHO_T@
208 EGREP = @EGREP@
209 EXEEXT = @EXEEXT@
210 FGREP = @FGREP@
211 GREP = @GREP@
212 GTK_CONFIG = @GTK_CONFIG@
213 INSTALL = @INSTALL@
214 INSTALL_DATA = @INSTALL_DATA@
215 INSTALL_PROGRAM = @INSTALL_PROGRAM@
216 INSTALL_SCRIPT = @INSTALL_SCRIPT@
217 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
218 LD = @LD@
219 LDFLAGS = @LDFLAGS@
220 LIBOBJS = @LIBOBJS@
221 LIBS = @LIBS@
222 LIBTOOL = @LIBTOOL@
223 LIBTOOL_DEPS = @LIBTOOL_DEPS@
224 LIPO = @LIPO@
225 LN_S = @LN_S@
226 LTLIBOBJS = @LTLIBOBJS@
227 LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
228 MAKEINFO = @MAKEINFO@
229 MANIFEST_TOOL = @MANIFEST_TOOL@
230 MKDIR_P = @MKDIR_P@
231 MP4FF_LIBS = @MP4FF_LIBS@
232 NM = @NM@
233 NMEDIT = @NMEDIT@
234 OBJDUMP = @OBJDUMP@
235 OBJEXT = @OBJEXT@
236 OTOOL = @OTOOL@
237 OTOOL64 = @OTOOL64@
238 PACKAGE = @PACKAGE@
239 PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
240 PACKAGE_NAME = @PACKAGE_NAME@
241 PACKAGE_STRING = @PACKAGE_STRING@
242 PACKAGE_TARNAME = @PACKAGE_TARNAME@
243 PACKAGE_URL = @PACKAGE_URL@
244 PACKAGE_VERSION = @PACKAGE_VERSION@
245 PATH_SEPARATOR = @PATH_SEPARATOR@
246 RANLIB = @RANLIB@
247 RPMBUILD = @RPMBUILD@
248 SED = @SED@
249 SET_MAKE = @SET_MAKE@
250 SHELL = @SHELL@
251 STRIP = @STRIP@
252 VERSION = @VERSION@
253 XMMS_CONFIG = @XMMS_CONFIG@
254 abs_builddir = @abs_builddir@
255 abs_srcdir = @abs_srcdir@
256 abs_top_builddir = @abs_top_builddir@
257 abs_top_srcdir = @abs_top_srcdir@
258 ac_ct_AR = @ac_ct_AR@
259 ac_ct_CC = @ac_ct_CC@
260 ac_ct_CXX = @ac_ct_CXX@
261 ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
262 am__include = @am__include@
263 am__leading_dot = @am__leading_dot@
264 am__quote = @am__quote@
265 am__tar = @am__tar@
266 am__untar = @am__untar@
267 bindir = @bindir@
268 build = @build@
269 build_alias = @build_alias@
270 build_cpu = @build_cpu@
271 build_os = @build_os@
272 build_vendor = @build_vendor@
273 builddir = @builddir@
274 datadir = @datadir@
275 datarootdir = @datarootdir@
276 docdir = @docdir@
277 dvidir = @dvidir@
278 exec_prefix = @exec_prefix@
279 external_mp4v2 = @external_mp4v2@
280 host = @host@
281 host_alias = @host_alias@
282 host_cpu = @host_cpu@
283 host_os = @host_os@
284 host_vendor = @host_vendor@
285 htmldir = @htmldir@
286 includedir = @includedir@
287 infodir = @infodir@
288 install_sh = @install_sh@
289 libdir = @libdir@
290 libexecdir = @libexecdir@
291 localedir = @localedir@
292 localstatedir = @localstatedir@
293 mandir = @mandir@
294 mkdir_p = @mkdir_p@
295 oldincludedir = @oldincludedir@
296 pdfdir = @pdfdir@
297 prefix = @prefix@
298 program_transform_name = @program_transform_name@
299 psdir = @psdir@
300 runstatedir = @runstatedir@
301 sbindir = @sbindir@
302 sharedstatedir = @sharedstatedir@
303 srcdir = @srcdir@
304 sysconfdir = @sysconfdir@
305 target_alias = @target_alias@
306 top_build_prefix = @top_build_prefix@
307 top_builddir = @top_builddir@
308 top_srcdir = @top_srcdir@
309 SUBDIRS = src
310 all: all-recursive
311
312 .SUFFIXES:
313 $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
314 @for dep in $?; do \
315 case '$(am__configure_deps)' in \
316 *$$dep*) \
317 ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
318 && { if test -f $@; then exit 0; else break; fi; }; \
319 exit 1;; \
320 esac; \
321 done; \
322 echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu plugins/xmms/Makefile'; \
323 $(am__cd) $(top_srcdir) && \
324 $(AUTOMAKE) --gnu plugins/xmms/Makefile
325 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
326 @case '$?' in \
327 *config.status*) \
328 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
329 *) \
330 echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \
331 cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \
332 esac;
333
334 $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
335 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
336
337 $(top_srcdir)/configure: $(am__configure_deps)
338 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
339 $(ACLOCAL_M4): $(am__aclocal_m4_deps)
340 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
341 $(am__aclocal_m4_deps):
342
343 mostlyclean-libtool:
344 -rm -f *.lo
345
346 clean-libtool:
347 -rm -rf .libs _libs
348
349 # This directory's subdirectories are mostly independent; you can cd
350 # into them and run 'make' without going through this Makefile.
351 # To change the values of 'make' variables: instead of editing Makefiles,
352 # (1) if the variable is set in 'config.status', edit 'config.status'
353 # (which will cause the Makefiles to be regenerated when you run 'make');
354 # (2) otherwise, pass the desired values on the 'make' command line.
355 $(am__recursive_targets):
356 @fail=; \
357 if $(am__make_keepgoing); then \
358 failcom='fail=yes'; \
359 else \
360 failcom='exit 1'; \
361 fi; \
362 dot_seen=no; \
363 target=`echo $@ | sed s/-recursive//`; \
364 case "$@" in \
365 distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
366 *) list='$(SUBDIRS)' ;; \
367 esac; \
368 for subdir in $$list; do \
369 echo "Making $$target in $$subdir"; \
370 if test "$$subdir" = "."; then \
371 dot_seen=yes; \
372 local_target="$$target-am"; \
373 else \
374 local_target="$$target"; \
375 fi; \
376 ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
377 || eval $$failcom; \
378 done; \
379 if test "$$dot_seen" = "no"; then \
380 $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
381 fi; test -z "$$fail"
382
383 ID: $(am__tagged_files)
384 $(am__define_uniq_tagged_files); mkid -fID $$unique
385 tags: tags-recursive
386 TAGS: tags
387
388 tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
389 set x; \
390 here=`pwd`; \
391 if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
392 include_option=--etags-include; \
393 empty_fix=.; \
394 else \
395 include_option=--include; \
396 empty_fix=; \
397 fi; \
398 list='$(SUBDIRS)'; for subdir in $$list; do \
399 if test "$$subdir" = .; then :; else \
400 test ! -f $$subdir/TAGS || \
401 set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
402 fi; \
403 done; \
404 $(am__define_uniq_tagged_files); \
405 shift; \
406 if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
407 test -n "$$unique" || unique=$$empty_fix; \
408 if test $$# -gt 0; then \
409 $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
410 "$$@" $$unique; \
411 else \
412 $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
413 $$unique; \
414 fi; \
415 fi
416 ctags: ctags-recursive
417
418 CTAGS: ctags
419 ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
420 $(am__define_uniq_tagged_files); \
421 test -z "$(CTAGS_ARGS)$$unique" \
422 || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
423 $$unique
424
425 GTAGS:
426 here=`$(am__cd) $(top_builddir) && pwd` \
427 && $(am__cd) $(top_srcdir) \
428 && gtags -i $(GTAGS_ARGS) "$$here"
429 cscopelist: cscopelist-recursive
430
431 cscopelist-am: $(am__tagged_files)
432 list='$(am__tagged_files)'; \
433 case "$(srcdir)" in \
434 [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
435 *) sdir=$(subdir)/$(srcdir) ;; \
436 esac; \
437 for i in $$list; do \
438 if test -f "$$i"; then \
439 echo "$(subdir)/$$i"; \
440 else \
441 echo "$$sdir/$$i"; \
442 fi; \
443 done >> $(top_builddir)/cscope.files
444
445 distclean-tags:
446 -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
447
448 distdir: $(BUILT_SOURCES)
449 $(MAKE) $(AM_MAKEFLAGS) distdir-am
450
451 distdir-am: $(DISTFILES)
452 @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
453 topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
454 list='$(DISTFILES)'; \
455 dist_files=`for file in $$list; do echo $$file; done | \
456 sed -e "s|^$$srcdirstrip/||;t" \
457 -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
458 case $$dist_files in \
459 */*) $(MKDIR_P) `echo "$$dist_files" | \
460 sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
461 sort -u` ;; \
462 esac; \
463 for file in $$dist_files; do \
464 if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
465 if test -d $$d/$$file; then \
466 dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
467 if test -d "$(distdir)/$$file"; then \
468 find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
469 fi; \
470 if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
471 cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
472 find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
473 fi; \
474 cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
475 else \
476 test -f "$(distdir)/$$file" \
477 || cp -p $$d/$$file "$(distdir)/$$file" \
478 || exit 1; \
479 fi; \
480 done
481 @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
482 if test "$$subdir" = .; then :; else \
483 $(am__make_dryrun) \
484 || test -d "$(distdir)/$$subdir" \
485 || $(MKDIR_P) "$(distdir)/$$subdir" \
486 || exit 1; \
487 dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
488 $(am__relativize); \
489 new_distdir=$$reldir; \
490 dir1=$$subdir; dir2="$(top_distdir)"; \
491 $(am__relativize); \
492 new_top_distdir=$$reldir; \
493 echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
494 echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
495 ($(am__cd) $$subdir && \
496 $(MAKE) $(AM_MAKEFLAGS) \
497 top_distdir="$$new_top_distdir" \
498 distdir="$$new_distdir" \
499 am__remove_distdir=: \
500 am__skip_length_check=: \
501 am__skip_mode_fix=: \
502 distdir) \
503 || exit 1; \
504 fi; \
505 done
506 check-am: all-am
507 check: check-recursive
508 all-am: Makefile
509 installdirs: installdirs-recursive
510 installdirs-am:
511 install: install-recursive
512 install-exec: install-exec-recursive
513 install-data: install-data-recursive
514 uninstall: uninstall-recursive
515
516 install-am: all-am
517 @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
518
519 installcheck: installcheck-recursive
520 install-strip:
521 if test -z '$(STRIP)'; then \
522 $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
523 install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
524 install; \
525 else \
526 $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
527 install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
528 "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
529 fi
530 mostlyclean-generic:
531
532 clean-generic:
533
534 distclean-generic:
535 -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
536 -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
537
538 maintainer-clean-generic:
539 @echo "This command is intended for maintainers to use"
540 @echo "it deletes files that may require special tools to rebuild."
541 clean: clean-recursive
542
543 clean-am: clean-generic clean-libtool mostlyclean-am
544
545 distclean: distclean-recursive
546 -rm -f Makefile
547 distclean-am: clean-am distclean-generic distclean-tags
548
549 dvi: dvi-recursive
550
551 dvi-am:
552
553 html: html-recursive
554
555 html-am:
556
557 info: info-recursive
558
559 info-am:
560
561 install-data-am:
562
563 install-dvi: install-dvi-recursive
564
565 install-dvi-am:
566
567 install-exec-am:
568
569 install-html: install-html-recursive
570
571 install-html-am:
572
573 install-info: install-info-recursive
574
575 install-info-am:
576
577 install-man:
578
579 install-pdf: install-pdf-recursive
580
581 install-pdf-am:
582
583 install-ps: install-ps-recursive
584
585 install-ps-am:
586
587 installcheck-am:
588
589 maintainer-clean: maintainer-clean-recursive
590 -rm -f Makefile
591 maintainer-clean-am: distclean-am maintainer-clean-generic
592
593 mostlyclean: mostlyclean-recursive
594
595 mostlyclean-am: mostlyclean-generic mostlyclean-libtool
596
597 pdf: pdf-recursive
598
599 pdf-am:
600
601 ps: ps-recursive
602
603 ps-am:
604
605 uninstall-am:
606
607 .MAKE: $(am__recursive_targets) install-am install-strip
608
609 .PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am check \
610 check-am clean clean-generic clean-libtool cscopelist-am ctags \
611 ctags-am distclean distclean-generic distclean-libtool \
612 distclean-tags distdir dvi dvi-am html html-am info info-am \
613 install install-am install-data install-data-am install-dvi \
614 install-dvi-am install-exec install-exec-am install-html \
615 install-html-am install-info install-info-am install-man \
616 install-pdf install-pdf-am install-ps install-ps-am \
617 install-strip installcheck installcheck-am installdirs \
618 installdirs-am maintainer-clean maintainer-clean-generic \
619 mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \
620 ps ps-am tags tags-am uninstall uninstall-am
621
622 .PRECIOUS: Makefile
623
624
625 # Tell versions [3.59,3.63) of GNU make to not export all variables.
626 # Otherwise a system limit (for SysV at least) may be exceeded.
627 .NOEXPORT:
0 # Makefile.in generated by automake 1.16.2 from Makefile.am.
1 # @configure_input@
2
3 # Copyright (C) 1994-2020 Free Software Foundation, Inc.
4
5 # This Makefile.in is free software; the Free Software Foundation
6 # gives unlimited permission to copy and/or distribute it,
7 # with or without modifications, as long as this notice is preserved.
8
9 # This program is distributed in the hope that it will be useful,
10 # but WITHOUT ANY WARRANTY, to the extent permitted by law; without
11 # even the implied warranty of MERCHANTABILITY or FITNESS FOR A
12 # PARTICULAR PURPOSE.
13
14 @SET_MAKE@
15
16 VPATH = @srcdir@
17 am__is_gnu_make = { \
18 if test -z '$(MAKELEVEL)'; then \
19 false; \
20 elif test -n '$(MAKE_HOST)'; then \
21 true; \
22 elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
23 true; \
24 else \
25 false; \
26 fi; \
27 }
28 am__make_running_with_option = \
29 case $${target_option-} in \
30 ?) ;; \
31 *) echo "am__make_running_with_option: internal error: invalid" \
32 "target option '$${target_option-}' specified" >&2; \
33 exit 1;; \
34 esac; \
35 has_opt=no; \
36 sane_makeflags=$$MAKEFLAGS; \
37 if $(am__is_gnu_make); then \
38 sane_makeflags=$$MFLAGS; \
39 else \
40 case $$MAKEFLAGS in \
41 *\\[\ \ ]*) \
42 bs=\\; \
43 sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
44 | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
45 esac; \
46 fi; \
47 skip_next=no; \
48 strip_trailopt () \
49 { \
50 flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
51 }; \
52 for flg in $$sane_makeflags; do \
53 test $$skip_next = yes && { skip_next=no; continue; }; \
54 case $$flg in \
55 *=*|--*) continue;; \
56 -*I) strip_trailopt 'I'; skip_next=yes;; \
57 -*I?*) strip_trailopt 'I';; \
58 -*O) strip_trailopt 'O'; skip_next=yes;; \
59 -*O?*) strip_trailopt 'O';; \
60 -*l) strip_trailopt 'l'; skip_next=yes;; \
61 -*l?*) strip_trailopt 'l';; \
62 -[dEDm]) skip_next=yes;; \
63 -[JT]) skip_next=yes;; \
64 esac; \
65 case $$flg in \
66 *$$target_option*) has_opt=yes; break;; \
67 esac; \
68 done; \
69 test $$has_opt = yes
70 am__make_dryrun = (target_option=n; $(am__make_running_with_option))
71 am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
72 pkgdatadir = $(datadir)/@PACKAGE@
73 pkgincludedir = $(includedir)/@PACKAGE@
74 pkglibdir = $(libdir)/@PACKAGE@
75 pkglibexecdir = $(libexecdir)/@PACKAGE@
76 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
77 install_sh_DATA = $(install_sh) -c -m 644
78 install_sh_PROGRAM = $(install_sh) -c
79 install_sh_SCRIPT = $(install_sh) -c
80 INSTALL_HEADER = $(INSTALL_DATA)
81 transform = $(program_transform_name)
82 NORMAL_INSTALL = :
83 PRE_INSTALL = :
84 POST_INSTALL = :
85 NORMAL_UNINSTALL = :
86 PRE_UNINSTALL = :
87 POST_UNINSTALL = :
88 build_triplet = @build@
89 host_triplet = @host@
90 subdir = plugins/xmms/src
91 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
92 am__aclocal_m4_deps = $(top_srcdir)/configure.ac
93 am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
94 $(ACLOCAL_M4)
95 DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
96 mkinstalldirs = $(install_sh) -d
97 CONFIG_HEADER = $(top_builddir)/config.h
98 CONFIG_CLEAN_FILES =
99 CONFIG_CLEAN_VPATH_FILES =
100 am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
101 am__vpath_adj = case $$p in \
102 $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
103 *) f=$$p;; \
104 esac;
105 am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
106 am__install_max = 40
107 am__nobase_strip_setup = \
108 srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
109 am__nobase_strip = \
110 for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
111 am__nobase_list = $(am__nobase_strip_setup); \
112 for p in $$list; do echo "$$p $$p"; done | \
113 sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
114 $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
115 if (++n[$$2] == $(am__install_max)) \
116 { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
117 END { for (dir in files) print dir, files[dir] }'
118 am__base_list = \
119 sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
120 sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
121 am__uninstall_files_from_dir = { \
122 test -z "$$files" \
123 || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
124 || { echo " ( cd '$$dir' && rm -f" $$files ")"; \
125 $(am__cd) "$$dir" && rm -f $$files; }; \
126 }
127 am__installdirs = "$(DESTDIR)$(libdir)"
128 LTLIBRARIES = $(lib_LTLIBRARIES)
129 libmp4_la_DEPENDENCIES = $(top_builddir)/libfaad/libfaad.la \
130 $(top_builddir)/common/mp4ff/libmp4ff.a
131 am_libmp4_la_OBJECTS = libmp4_la-libmp4.lo libmp4_la-mp4_utils.lo \
132 libmp4_la-aac_utils.lo
133 libmp4_la_OBJECTS = $(am_libmp4_la_OBJECTS)
134 AM_V_lt = $(am__v_lt_@AM_V@)
135 am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
136 am__v_lt_0 = --silent
137 am__v_lt_1 =
138 libmp4_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
139 $(LIBTOOLFLAGS) --mode=link $(CCLD) $(libmp4_la_CFLAGS) \
140 $(CFLAGS) $(libmp4_la_LDFLAGS) $(LDFLAGS) -o $@
141 AM_V_P = $(am__v_P_@AM_V@)
142 am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
143 am__v_P_0 = false
144 am__v_P_1 = :
145 AM_V_GEN = $(am__v_GEN_@AM_V@)
146 am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
147 am__v_GEN_0 = @echo " GEN " $@;
148 am__v_GEN_1 =
149 AM_V_at = $(am__v_at_@AM_V@)
150 am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
151 am__v_at_0 = @
152 am__v_at_1 =
153 DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
154 depcomp = $(SHELL) $(top_srcdir)/depcomp
155 am__maybe_remake_depfiles = depfiles
156 am__depfiles_remade = ./$(DEPDIR)/libmp4_la-aac_utils.Plo \
157 ./$(DEPDIR)/libmp4_la-libmp4.Plo \
158 ./$(DEPDIR)/libmp4_la-mp4_utils.Plo
159 am__mv = mv -f
160 COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
161 $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
162 LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
163 $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \
164 $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
165 $(AM_CFLAGS) $(CFLAGS)
166 AM_V_CC = $(am__v_CC_@AM_V@)
167 am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@)
168 am__v_CC_0 = @echo " CC " $@;
169 am__v_CC_1 =
170 CCLD = $(CC)
171 LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
172 $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
173 $(AM_LDFLAGS) $(LDFLAGS) -o $@
174 AM_V_CCLD = $(am__v_CCLD_@AM_V@)
175 am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@)
176 am__v_CCLD_0 = @echo " CCLD " $@;
177 am__v_CCLD_1 =
178 SOURCES = $(libmp4_la_SOURCES)
179 DIST_SOURCES = $(libmp4_la_SOURCES)
180 am__can_run_installinfo = \
181 case $$AM_UPDATE_INFO_DIR in \
182 n|no|NO) false;; \
183 *) (install-info --version) >/dev/null 2>&1;; \
184 esac
185 am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
186 # Read a list of newline-separated strings from the standard input,
187 # and print each of them once, without duplicates. Input order is
188 # *not* preserved.
189 am__uniquify_input = $(AWK) '\
190 BEGIN { nonempty = 0; } \
191 { items[$$0] = 1; nonempty = 1; } \
192 END { if (nonempty) { for (i in items) print i; }; } \
193 '
194 # Make sure the list of sources is unique. This is necessary because,
195 # e.g., the same source file might be shared among _SOURCES variables
196 # for different programs/libraries.
197 am__define_uniq_tagged_files = \
198 list='$(am__tagged_files)'; \
199 unique=`for i in $$list; do \
200 if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
201 done | $(am__uniquify_input)`
202 ETAGS = etags
203 CTAGS = ctags
204 am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/depcomp
205 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
206 ACLOCAL = @ACLOCAL@
207 AMTAR = @AMTAR@
208 AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
209 AR = @AR@
210 AUTOCONF = @AUTOCONF@
211 AUTOHEADER = @AUTOHEADER@
212 AUTOMAKE = @AUTOMAKE@
213 AWK = @AWK@
214 CC = @CC@
215 CCDEPMODE = @CCDEPMODE@
216 CFLAGS = @CFLAGS@
217 CPP = @CPP@
218 CPPFLAGS = @CPPFLAGS@
219 CXX = @CXX@
220 CXXCPP = @CXXCPP@
221 CXXDEPMODE = @CXXDEPMODE@
222 CXXFLAGS = @CXXFLAGS@
223 CYGPATH_W = @CYGPATH_W@
224 DEFS = @DEFS@
225 DEPDIR = @DEPDIR@
226 DLLTOOL = @DLLTOOL@
227 DSYMUTIL = @DSYMUTIL@
228 DUMPBIN = @DUMPBIN@
229 ECHO_C = @ECHO_C@
230 ECHO_N = @ECHO_N@
231 ECHO_T = @ECHO_T@
232 EGREP = @EGREP@
233 EXEEXT = @EXEEXT@
234 FGREP = @FGREP@
235 GREP = @GREP@
236 GTK_CONFIG = @GTK_CONFIG@
237 INSTALL = @INSTALL@
238 INSTALL_DATA = @INSTALL_DATA@
239 INSTALL_PROGRAM = @INSTALL_PROGRAM@
240 INSTALL_SCRIPT = @INSTALL_SCRIPT@
241 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
242 LD = @LD@
243 LDFLAGS = @LDFLAGS@
244 LIBOBJS = @LIBOBJS@
245 LIBS = @LIBS@
246 LIBTOOL = @LIBTOOL@
247 LIBTOOL_DEPS = @LIBTOOL_DEPS@
248 LIPO = @LIPO@
249 LN_S = @LN_S@
250 LTLIBOBJS = @LTLIBOBJS@
251 LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
252 MAKEINFO = @MAKEINFO@
253 MANIFEST_TOOL = @MANIFEST_TOOL@
254 MKDIR_P = @MKDIR_P@
255 MP4FF_LIBS = @MP4FF_LIBS@
256 NM = @NM@
257 NMEDIT = @NMEDIT@
258 OBJDUMP = @OBJDUMP@
259 OBJEXT = @OBJEXT@
260 OTOOL = @OTOOL@
261 OTOOL64 = @OTOOL64@
262 PACKAGE = @PACKAGE@
263 PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
264 PACKAGE_NAME = @PACKAGE_NAME@
265 PACKAGE_STRING = @PACKAGE_STRING@
266 PACKAGE_TARNAME = @PACKAGE_TARNAME@
267 PACKAGE_URL = @PACKAGE_URL@
268 PACKAGE_VERSION = @PACKAGE_VERSION@
269 PATH_SEPARATOR = @PATH_SEPARATOR@
270 RANLIB = @RANLIB@
271 RPMBUILD = @RPMBUILD@
272 SED = @SED@
273 SET_MAKE = @SET_MAKE@
274 SHELL = @SHELL@
275 STRIP = @STRIP@
276 VERSION = @VERSION@
277 XMMS_CONFIG = @XMMS_CONFIG@
278 abs_builddir = @abs_builddir@
279 abs_srcdir = @abs_srcdir@
280 abs_top_builddir = @abs_top_builddir@
281 abs_top_srcdir = @abs_top_srcdir@
282 ac_ct_AR = @ac_ct_AR@
283 ac_ct_CC = @ac_ct_CC@
284 ac_ct_CXX = @ac_ct_CXX@
285 ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
286 am__include = @am__include@
287 am__leading_dot = @am__leading_dot@
288 am__quote = @am__quote@
289 am__tar = @am__tar@
290 am__untar = @am__untar@
291 bindir = @bindir@
292 build = @build@
293 build_alias = @build_alias@
294 build_cpu = @build_cpu@
295 build_os = @build_os@
296 build_vendor = @build_vendor@
297 builddir = @builddir@
298 datadir = @datadir@
299 datarootdir = @datarootdir@
300 docdir = @docdir@
301 dvidir = @dvidir@
302 exec_prefix = @exec_prefix@
303 external_mp4v2 = @external_mp4v2@
304 host = @host@
305 host_alias = @host_alias@
306 host_cpu = @host_cpu@
307 host_os = @host_os@
308 host_vendor = @host_vendor@
309 htmldir = @htmldir@
310 includedir = @includedir@
311 infodir = @infodir@
312 install_sh = @install_sh@
313 libdir = `$(XMMS_CONFIG) --input-plugin-dir`
314 libexecdir = @libexecdir@
315 localedir = @localedir@
316 localstatedir = @localstatedir@
317 mandir = @mandir@
318 mkdir_p = @mkdir_p@
319 oldincludedir = @oldincludedir@
320 pdfdir = @pdfdir@
321 prefix = @prefix@
322 program_transform_name = @program_transform_name@
323 psdir = @psdir@
324 runstatedir = @runstatedir@
325 sbindir = @sbindir@
326 sharedstatedir = @sharedstatedir@
327 srcdir = @srcdir@
328 sysconfdir = @sysconfdir@
329 target_alias = @target_alias@
330 top_build_prefix = @top_build_prefix@
331 top_builddir = @top_builddir@
332 top_srcdir = @top_srcdir@
333 local_CFLAGS = `$(XMMS_CONFIG) --cflags` -Wall
334 local_LDFLAGS = `$(XMMS_CONFIG) --libs`
335 lib_LTLIBRARIES = libmp4.la
336 libmp4_la_CFLAGS = $(local_CFLAGS) -Wall \
337 -I$(top_srcdir)/include -I$(top_srcdir)/common/mp4ff
338
339 libmp4_la_LIBADD = $(top_builddir)/libfaad/libfaad.la \
340 $(top_builddir)/common/mp4ff/libmp4ff.a
341
342 libmp4_la_LDFLAGS = -module -avoid-version $(local_LDFLAGS) -lpthread
343 libmp4_la_SOURCES = libmp4.c mp4_utils.c aac_utils.c
344 all: all-am
345
346 .SUFFIXES:
347 .SUFFIXES: .c .lo .o .obj
348 $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
349 @for dep in $?; do \
350 case '$(am__configure_deps)' in \
351 *$$dep*) \
352 ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
353 && { if test -f $@; then exit 0; else break; fi; }; \
354 exit 1;; \
355 esac; \
356 done; \
357 echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu plugins/xmms/src/Makefile'; \
358 $(am__cd) $(top_srcdir) && \
359 $(AUTOMAKE) --gnu plugins/xmms/src/Makefile
360 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
361 @case '$?' in \
362 *config.status*) \
363 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
364 *) \
365 echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \
366 cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \
367 esac;
368
369 $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
370 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
371
372 $(top_srcdir)/configure: $(am__configure_deps)
373 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
374 $(ACLOCAL_M4): $(am__aclocal_m4_deps)
375 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
376 $(am__aclocal_m4_deps):
377
378 install-libLTLIBRARIES: $(lib_LTLIBRARIES)
379 @$(NORMAL_INSTALL)
380 @list='$(lib_LTLIBRARIES)'; test -n "$(libdir)" || list=; \
381 list2=; for p in $$list; do \
382 if test -f $$p; then \
383 list2="$$list2 $$p"; \
384 else :; fi; \
385 done; \
386 test -z "$$list2" || { \
387 echo " $(MKDIR_P) '$(DESTDIR)$(libdir)'"; \
388 $(MKDIR_P) "$(DESTDIR)$(libdir)" || exit 1; \
389 echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 '$(DESTDIR)$(libdir)'"; \
390 $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 "$(DESTDIR)$(libdir)"; \
391 }
392
393 uninstall-libLTLIBRARIES:
394 @$(NORMAL_UNINSTALL)
395 @list='$(lib_LTLIBRARIES)'; test -n "$(libdir)" || list=; \
396 for p in $$list; do \
397 $(am__strip_dir) \
398 echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f '$(DESTDIR)$(libdir)/$$f'"; \
399 $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f "$(DESTDIR)$(libdir)/$$f"; \
400 done
401
402 clean-libLTLIBRARIES:
403 -test -z "$(lib_LTLIBRARIES)" || rm -f $(lib_LTLIBRARIES)
404 @list='$(lib_LTLIBRARIES)'; \
405 locs=`for p in $$list; do echo $$p; done | \
406 sed 's|^[^/]*$$|.|; s|/[^/]*$$||; s|$$|/so_locations|' | \
407 sort -u`; \
408 test -z "$$locs" || { \
409 echo rm -f $${locs}; \
410 rm -f $${locs}; \
411 }
412
413 libmp4.la: $(libmp4_la_OBJECTS) $(libmp4_la_DEPENDENCIES) $(EXTRA_libmp4_la_DEPENDENCIES)
414 $(AM_V_CCLD)$(libmp4_la_LINK) -rpath $(libdir) $(libmp4_la_OBJECTS) $(libmp4_la_LIBADD) $(LIBS)
415
416 mostlyclean-compile:
417 -rm -f *.$(OBJEXT)
418
419 distclean-compile:
420 -rm -f *.tab.c
421
422 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmp4_la-aac_utils.Plo@am__quote@ # am--include-marker
423 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmp4_la-libmp4.Plo@am__quote@ # am--include-marker
424 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmp4_la-mp4_utils.Plo@am__quote@ # am--include-marker
425
426 $(am__depfiles_remade):
427 @$(MKDIR_P) $(@D)
428 @echo '# dummy' >$@-t && $(am__mv) $@-t $@
429
430 am--depfiles: $(am__depfiles_remade)
431
432 .c.o:
433 @am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\
434 @am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\
435 @am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po
436 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
437 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
438 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $<
439
440 .c.obj:
441 @am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.obj$$||'`;\
442 @am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ `$(CYGPATH_W) '$<'` &&\
443 @am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po
444 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
445 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
446 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
447
448 .c.lo:
449 @am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.lo$$||'`;\
450 @am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\
451 @am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Plo
452 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
453 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
454 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $<
455
456 libmp4_la-libmp4.lo: libmp4.c
457 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmp4_la_CFLAGS) $(CFLAGS) -MT libmp4_la-libmp4.lo -MD -MP -MF $(DEPDIR)/libmp4_la-libmp4.Tpo -c -o libmp4_la-libmp4.lo `test -f 'libmp4.c' || echo '$(srcdir)/'`libmp4.c
458 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmp4_la-libmp4.Tpo $(DEPDIR)/libmp4_la-libmp4.Plo
459 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='libmp4.c' object='libmp4_la-libmp4.lo' libtool=yes @AMDEPBACKSLASH@
460 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
461 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmp4_la_CFLAGS) $(CFLAGS) -c -o libmp4_la-libmp4.lo `test -f 'libmp4.c' || echo '$(srcdir)/'`libmp4.c
462
463 libmp4_la-mp4_utils.lo: mp4_utils.c
464 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmp4_la_CFLAGS) $(CFLAGS) -MT libmp4_la-mp4_utils.lo -MD -MP -MF $(DEPDIR)/libmp4_la-mp4_utils.Tpo -c -o libmp4_la-mp4_utils.lo `test -f 'mp4_utils.c' || echo '$(srcdir)/'`mp4_utils.c
465 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmp4_la-mp4_utils.Tpo $(DEPDIR)/libmp4_la-mp4_utils.Plo
466 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mp4_utils.c' object='libmp4_la-mp4_utils.lo' libtool=yes @AMDEPBACKSLASH@
467 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
468 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmp4_la_CFLAGS) $(CFLAGS) -c -o libmp4_la-mp4_utils.lo `test -f 'mp4_utils.c' || echo '$(srcdir)/'`mp4_utils.c
469
470 libmp4_la-aac_utils.lo: aac_utils.c
471 @am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmp4_la_CFLAGS) $(CFLAGS) -MT libmp4_la-aac_utils.lo -MD -MP -MF $(DEPDIR)/libmp4_la-aac_utils.Tpo -c -o libmp4_la-aac_utils.lo `test -f 'aac_utils.c' || echo '$(srcdir)/'`aac_utils.c
472 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmp4_la-aac_utils.Tpo $(DEPDIR)/libmp4_la-aac_utils.Plo
473 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='aac_utils.c' object='libmp4_la-aac_utils.lo' libtool=yes @AMDEPBACKSLASH@
474 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
475 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmp4_la_CFLAGS) $(CFLAGS) -c -o libmp4_la-aac_utils.lo `test -f 'aac_utils.c' || echo '$(srcdir)/'`aac_utils.c
476
477 mostlyclean-libtool:
478 -rm -f *.lo
479
480 clean-libtool:
481 -rm -rf .libs _libs
482
483 ID: $(am__tagged_files)
484 $(am__define_uniq_tagged_files); mkid -fID $$unique
485 tags: tags-am
486 TAGS: tags
487
488 tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
489 set x; \
490 here=`pwd`; \
491 $(am__define_uniq_tagged_files); \
492 shift; \
493 if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
494 test -n "$$unique" || unique=$$empty_fix; \
495 if test $$# -gt 0; then \
496 $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
497 "$$@" $$unique; \
498 else \
499 $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
500 $$unique; \
501 fi; \
502 fi
503 ctags: ctags-am
504
505 CTAGS: ctags
506 ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
507 $(am__define_uniq_tagged_files); \
508 test -z "$(CTAGS_ARGS)$$unique" \
509 || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
510 $$unique
511
512 GTAGS:
513 here=`$(am__cd) $(top_builddir) && pwd` \
514 && $(am__cd) $(top_srcdir) \
515 && gtags -i $(GTAGS_ARGS) "$$here"
516 cscopelist: cscopelist-am
517
518 cscopelist-am: $(am__tagged_files)
519 list='$(am__tagged_files)'; \
520 case "$(srcdir)" in \
521 [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
522 *) sdir=$(subdir)/$(srcdir) ;; \
523 esac; \
524 for i in $$list; do \
525 if test -f "$$i"; then \
526 echo "$(subdir)/$$i"; \
527 else \
528 echo "$$sdir/$$i"; \
529 fi; \
530 done >> $(top_builddir)/cscope.files
531
532 distclean-tags:
533 -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
534
535 distdir: $(BUILT_SOURCES)
536 $(MAKE) $(AM_MAKEFLAGS) distdir-am
537
538 distdir-am: $(DISTFILES)
539 @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
540 topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
541 list='$(DISTFILES)'; \
542 dist_files=`for file in $$list; do echo $$file; done | \
543 sed -e "s|^$$srcdirstrip/||;t" \
544 -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
545 case $$dist_files in \
546 */*) $(MKDIR_P) `echo "$$dist_files" | \
547 sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
548 sort -u` ;; \
549 esac; \
550 for file in $$dist_files; do \
551 if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
552 if test -d $$d/$$file; then \
553 dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
554 if test -d "$(distdir)/$$file"; then \
555 find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
556 fi; \
557 if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
558 cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
559 find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
560 fi; \
561 cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
562 else \
563 test -f "$(distdir)/$$file" \
564 || cp -p $$d/$$file "$(distdir)/$$file" \
565 || exit 1; \
566 fi; \
567 done
568 check-am: all-am
569 check: check-am
570 all-am: Makefile $(LTLIBRARIES)
571 installdirs:
572 for dir in "$(DESTDIR)$(libdir)"; do \
573 test -z "$$dir" || $(MKDIR_P) "$$dir"; \
574 done
575 install: install-am
576 install-exec: install-exec-am
577 install-data: install-data-am
578 uninstall: uninstall-am
579
580 install-am: all-am
581 @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
582
583 installcheck: installcheck-am
584 install-strip:
585 if test -z '$(STRIP)'; then \
586 $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
587 install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
588 install; \
589 else \
590 $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
591 install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
592 "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
593 fi
594 mostlyclean-generic:
595
596 clean-generic:
597
598 distclean-generic:
599 -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
600 -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
601
602 maintainer-clean-generic:
603 @echo "This command is intended for maintainers to use"
604 @echo "it deletes files that may require special tools to rebuild."
605 clean: clean-am
606
607 clean-am: clean-generic clean-libLTLIBRARIES clean-libtool \
608 mostlyclean-am
609
610 distclean: distclean-am
611 -rm -f ./$(DEPDIR)/libmp4_la-aac_utils.Plo
612 -rm -f ./$(DEPDIR)/libmp4_la-libmp4.Plo
613 -rm -f ./$(DEPDIR)/libmp4_la-mp4_utils.Plo
614 -rm -f Makefile
615 distclean-am: clean-am distclean-compile distclean-generic \
616 distclean-tags
617
618 dvi: dvi-am
619
620 dvi-am:
621
622 html: html-am
623
624 html-am:
625
626 info: info-am
627
628 info-am:
629
630 install-data-am:
631
632 install-dvi: install-dvi-am
633
634 install-dvi-am:
635
636 install-exec-am: install-libLTLIBRARIES
637
638 install-html: install-html-am
639
640 install-html-am:
641
642 install-info: install-info-am
643
644 install-info-am:
645
646 install-man:
647
648 install-pdf: install-pdf-am
649
650 install-pdf-am:
651
652 install-ps: install-ps-am
653
654 install-ps-am:
655
656 installcheck-am:
657
658 maintainer-clean: maintainer-clean-am
659 -rm -f ./$(DEPDIR)/libmp4_la-aac_utils.Plo
660 -rm -f ./$(DEPDIR)/libmp4_la-libmp4.Plo
661 -rm -f ./$(DEPDIR)/libmp4_la-mp4_utils.Plo
662 -rm -f Makefile
663 maintainer-clean-am: distclean-am maintainer-clean-generic
664
665 mostlyclean: mostlyclean-am
666
667 mostlyclean-am: mostlyclean-compile mostlyclean-generic \
668 mostlyclean-libtool
669
670 pdf: pdf-am
671
672 pdf-am:
673
674 ps: ps-am
675
676 ps-am:
677
678 uninstall-am: uninstall-libLTLIBRARIES
679
680 .MAKE: install-am install-strip
681
682 .PHONY: CTAGS GTAGS TAGS all all-am am--depfiles check check-am clean \
683 clean-generic clean-libLTLIBRARIES clean-libtool cscopelist-am \
684 ctags ctags-am distclean distclean-compile distclean-generic \
685 distclean-libtool distclean-tags distdir dvi dvi-am html \
686 html-am info info-am install install-am install-data \
687 install-data-am install-dvi install-dvi-am install-exec \
688 install-exec-am install-html install-html-am install-info \
689 install-info-am install-libLTLIBRARIES install-man install-pdf \
690 install-pdf-am install-ps install-ps-am install-strip \
691 installcheck installcheck-am installdirs maintainer-clean \
692 maintainer-clean-generic mostlyclean mostlyclean-compile \
693 mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
694 tags tags-am uninstall uninstall-am uninstall-libLTLIBRARIES
695
696 .PRECIOUS: Makefile
697
698
699 # Tell versions [3.59,3.63) of GNU make to not export all variables.
700 # Otherwise a system limit (for SysV at least) may be exceeded.
701 .NOEXPORT:
44 <Configuration>Debug</Configuration>
55 <Platform>Win32</Platform>
66 </ProjectConfiguration>
7 <ProjectConfiguration Include="Debug|x64">
8 <Configuration>Debug</Configuration>
9 <Platform>x64</Platform>
10 </ProjectConfiguration>
711 <ProjectConfiguration Include="Release|Win32">
812 <Configuration>Release</Configuration>
913 <Platform>Win32</Platform>
1014 </ProjectConfiguration>
15 <ProjectConfiguration Include="Release|x64">
16 <Configuration>Release</Configuration>
17 <Platform>x64</Platform>
18 </ProjectConfiguration>
1119 </ItemGroup>
1220 <PropertyGroup Label="Globals">
1321 <ProjectGuid>{2BD8CBB3-DFC9-4A6A-9B7A-07ED749BED58}</ProjectGuid>
14 <WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion>
22 <WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
1523 </PropertyGroup>
1624 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
1725 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
1826 <ConfigurationType>Application</ConfigurationType>
19 <PlatformToolset>v141</PlatformToolset>
27 <PlatformToolset>v142</PlatformToolset>
28 </PropertyGroup>
29 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
30 <ConfigurationType>Application</ConfigurationType>
31 <PlatformToolset>v142</PlatformToolset>
2032 </PropertyGroup>
2133 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
2234 <ConfigurationType>Application</ConfigurationType>
23 <PlatformToolset>v141</PlatformToolset>
35 <PlatformToolset>v142</PlatformToolset>
36 </PropertyGroup>
37 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
38 <ConfigurationType>Application</ConfigurationType>
39 <PlatformToolset>v142</PlatformToolset>
2440 </PropertyGroup>
2541 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
2642 <ImportGroup Label="ExtensionSettings">
2844 <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
2945 <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
3046 </ImportGroup>
47 <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
48 <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
49 </ImportGroup>
3150 <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
51 <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
52 </ImportGroup>
53 <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
3254 <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
3355 </ImportGroup>
3456 <PropertyGroup Label="UserMacros" />
4365 <CodeAnalysisRules />
4466 <CodeAnalysisRuleAssemblies />
4567 </PropertyGroup>
68 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
69 <OutDir>.\bin\$(Configuration)\</OutDir>
70 <IntDir>.\intermediate\$(Configuration)\$(ProjectName)\</IntDir>
71 <LinkIncremental>true</LinkIncremental>
72 <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
73 <CodeAnalysisRules />
74 <CodeAnalysisRuleAssemblies />
75 </PropertyGroup>
4676 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
4777 <OutDir>.\bin\$(Configuration)\</OutDir>
4878 <IntDir>.\intermediate\$(Configuration)\$(ProjectName)\</IntDir>
5181 <CodeAnalysisRules />
5282 <CodeAnalysisRuleAssemblies />
5383 </PropertyGroup>
84 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
85 <OutDir>.\bin\$(Configuration)\</OutDir>
86 <IntDir>.\intermediate\$(Configuration)\$(ProjectName)\</IntDir>
87 <LinkIncremental>false</LinkIncremental>
88 <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
89 <CodeAnalysisRules />
90 <CodeAnalysisRuleAssemblies />
91 </PropertyGroup>
5492 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
5593 <Midl>
5694 <TypeLibraryName>.\Debug/faad.tlb</TypeLibraryName>
5795 </Midl>
5896 <ClCompile>
5997 <Optimization>Disabled</Optimization>
60 <AdditionalIncludeDirectories>../../include;../../common/mp4ff;../../frontend;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
98 <AdditionalIncludeDirectories>../../include;../../frontend;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
6199 <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
62100 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
63101 <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
74112 <SubSystem>Console</SubSystem>
75113 </Link>
76114 </ItemDefinitionGroup>
115 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
116 <Midl>
117 <TypeLibraryName>.\Debug/faad.tlb</TypeLibraryName>
118 </Midl>
119 <ClCompile>
120 <Optimization>Disabled</Optimization>
121 <AdditionalIncludeDirectories>../../include;../../frontend;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
122 <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
123 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
124 <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
125 <PrecompiledHeader>
126 </PrecompiledHeader>
127 <WarningLevel>Level3</WarningLevel>
128 <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
129 </ClCompile>
130 <ResourceCompile>
131 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
132 <Culture>0x0413</Culture>
133 </ResourceCompile>
134 <Link>
135 <GenerateDebugInformation>true</GenerateDebugInformation>
136 <SubSystem>Console</SubSystem>
137 </Link>
138 </ItemDefinitionGroup>
77139 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
78140 <Midl>
79141 <TypeLibraryName>.\Release/faad.tlb</TypeLibraryName>
83145 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
84146 <IntrinsicFunctions>true</IntrinsicFunctions>
85147 <FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
86 <AdditionalIncludeDirectories>../../include;../../common/mp4ff;../../frontend;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
148 <AdditionalIncludeDirectories>../../include;../../frontend;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
87149 <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
88150 <StringPooling>true</StringPooling>
89151 <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
99161 <SubSystem>Console</SubSystem>
100162 </Link>
101163 </ItemDefinitionGroup>
164 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
165 <Midl>
166 <TypeLibraryName>.\Release/faad.tlb</TypeLibraryName>
167 </Midl>
168 <ClCompile>
169 <Optimization>MinSpace</Optimization>
170 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
171 <IntrinsicFunctions>true</IntrinsicFunctions>
172 <FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
173 <AdditionalIncludeDirectories>../../include;../../frontend;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
174 <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
175 <StringPooling>true</StringPooling>
176 <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
177 <FunctionLevelLinking>true</FunctionLevelLinking>
178 <PrecompiledHeader>
179 </PrecompiledHeader>
180 <WarningLevel>Level3</WarningLevel>
181 </ClCompile>
182 <ResourceCompile>
183 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
184 <Culture>0x0413</Culture>
185 </ResourceCompile>
186 <Link>
187 <SubSystem>Console</SubSystem>
188 </Link>
189 </ItemDefinitionGroup>
102190 <ItemGroup>
103191 <ClCompile Include="..\..\frontend\audio.c" />
104192 <ClCompile Include="..\..\frontend\main.c" />
107195 </ItemGroup>
108196 <ItemGroup>
109197 <ClInclude Include="..\..\frontend\getopt.h" />
110 <ClInclude Include="..\..\common\mp4v2\win32_ver.h" />
111198 <ClInclude Include="..\..\frontend\mp4read.h" />
112199 <ClInclude Include="..\..\frontend\unicode_support.h" />
113200 <ClInclude Include="..\..\include\neaacdec.h" />
3333 <ClInclude Include="..\..\include\neaacdec.h">
3434 <Filter>Header Files</Filter>
3535 </ClInclude>
36 <ClInclude Include="..\..\common\mp4v2\win32_ver.h">
37 <Filter>Header Files</Filter>
38 </ClInclude>
3936 <ClInclude Include="..\..\frontend\mp4read.h">
4037 <Filter>Header Files</Filter>
4138 </ClInclude>
00 Microsoft Visual Studio Solution File, Format Version 12.00
1 # Visual Studio 15
2 VisualStudioVersion = 15.0.27130.2010
1 # Visual Studio Version 16
2 VisualStudioVersion = 16.0.30114.105
33 MinimumVisualStudioVersion = 10.0.40219.1
44 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libfaad", "libfaad.vcxproj", "{BC3EFE27-9015-4C9C-AD3C-72B3B7ED2114}"
55 EndProject
1010 Global
1111 GlobalSection(SolutionConfigurationPlatforms) = preSolution
1212 Debug|Win32 = Debug|Win32
13 Debug|x64 = Debug|x64
1314 Release|Win32 = Release|Win32
15 Release|x64 = Release|x64
1416 EndGlobalSection
1517 GlobalSection(ProjectConfigurationPlatforms) = postSolution
1618 {BC3EFE27-9015-4C9C-AD3C-72B3B7ED2114}.Debug|Win32.ActiveCfg = Debug|Win32
1719 {BC3EFE27-9015-4C9C-AD3C-72B3B7ED2114}.Debug|Win32.Build.0 = Debug|Win32
20 {BC3EFE27-9015-4C9C-AD3C-72B3B7ED2114}.Debug|x64.ActiveCfg = Debug|x64
21 {BC3EFE27-9015-4C9C-AD3C-72B3B7ED2114}.Debug|x64.Build.0 = Debug|x64
1822 {BC3EFE27-9015-4C9C-AD3C-72B3B7ED2114}.Release|Win32.ActiveCfg = Release|Win32
1923 {BC3EFE27-9015-4C9C-AD3C-72B3B7ED2114}.Release|Win32.Build.0 = Release|Win32
24 {BC3EFE27-9015-4C9C-AD3C-72B3B7ED2114}.Release|x64.ActiveCfg = Release|x64
25 {BC3EFE27-9015-4C9C-AD3C-72B3B7ED2114}.Release|x64.Build.0 = Release|x64
2026 {482DA264-EE88-4575-B208-87C4CB80CD08}.Debug|Win32.ActiveCfg = Debug|Win32
2127 {482DA264-EE88-4575-B208-87C4CB80CD08}.Debug|Win32.Build.0 = Debug|Win32
28 {482DA264-EE88-4575-B208-87C4CB80CD08}.Debug|x64.ActiveCfg = Debug|x64
29 {482DA264-EE88-4575-B208-87C4CB80CD08}.Debug|x64.Build.0 = Debug|x64
2230 {482DA264-EE88-4575-B208-87C4CB80CD08}.Release|Win32.ActiveCfg = Release|Win32
2331 {482DA264-EE88-4575-B208-87C4CB80CD08}.Release|Win32.Build.0 = Release|Win32
32 {482DA264-EE88-4575-B208-87C4CB80CD08}.Release|x64.ActiveCfg = Release|x64
33 {482DA264-EE88-4575-B208-87C4CB80CD08}.Release|x64.Build.0 = Release|x64
2434 {2BD8CBB3-DFC9-4A6A-9B7A-07ED749BED58}.Debug|Win32.ActiveCfg = Debug|Win32
2535 {2BD8CBB3-DFC9-4A6A-9B7A-07ED749BED58}.Debug|Win32.Build.0 = Debug|Win32
36 {2BD8CBB3-DFC9-4A6A-9B7A-07ED749BED58}.Debug|x64.ActiveCfg = Debug|x64
37 {2BD8CBB3-DFC9-4A6A-9B7A-07ED749BED58}.Debug|x64.Build.0 = Debug|x64
2638 {2BD8CBB3-DFC9-4A6A-9B7A-07ED749BED58}.Release|Win32.ActiveCfg = Release|Win32
2739 {2BD8CBB3-DFC9-4A6A-9B7A-07ED749BED58}.Release|Win32.Build.0 = Release|Win32
40 {2BD8CBB3-DFC9-4A6A-9B7A-07ED749BED58}.Release|x64.ActiveCfg = Release|x64
41 {2BD8CBB3-DFC9-4A6A-9B7A-07ED749BED58}.Release|x64.Build.0 = Release|x64
2842 EndGlobalSection
2943 GlobalSection(SolutionProperties) = preSolution
3044 HideSolutionNode = FALSE
44 <Configuration>Debug</Configuration>
55 <Platform>Win32</Platform>
66 </ProjectConfiguration>
7 <ProjectConfiguration Include="Debug|x64">
8 <Configuration>Debug</Configuration>
9 <Platform>x64</Platform>
10 </ProjectConfiguration>
711 <ProjectConfiguration Include="Release|Win32">
812 <Configuration>Release</Configuration>
913 <Platform>Win32</Platform>
1014 </ProjectConfiguration>
15 <ProjectConfiguration Include="Release|x64">
16 <Configuration>Release</Configuration>
17 <Platform>x64</Platform>
18 </ProjectConfiguration>
1119 </ItemGroup>
1220 <PropertyGroup Label="Globals">
1321 <ProjectGuid>{BC3EFE27-9015-4C9C-AD3C-72B3B7ED2114}</ProjectGuid>
14 <WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion>
22 <WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
1523 </PropertyGroup>
1624 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
1725 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
1826 <ConfigurationType>StaticLibrary</ConfigurationType>
19 <PlatformToolset>v141</PlatformToolset>
27 <PlatformToolset>v142</PlatformToolset>
28 </PropertyGroup>
29 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
30 <ConfigurationType>StaticLibrary</ConfigurationType>
31 <PlatformToolset>v142</PlatformToolset>
2032 </PropertyGroup>
2133 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
2234 <ConfigurationType>StaticLibrary</ConfigurationType>
23 <PlatformToolset>v141</PlatformToolset>
35 <PlatformToolset>v142</PlatformToolset>
36 </PropertyGroup>
37 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
38 <ConfigurationType>StaticLibrary</ConfigurationType>
39 <PlatformToolset>v142</PlatformToolset>
2440 </PropertyGroup>
2541 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
2642 <ImportGroup Label="ExtensionSettings">
2844 <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
2945 <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
3046 </ImportGroup>
47 <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
48 <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
49 </ImportGroup>
3150 <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
51 <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
52 </ImportGroup>
53 <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
3254 <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
3355 </ImportGroup>
3456 <PropertyGroup Label="UserMacros" />
4264 <CodeAnalysisRules />
4365 <CodeAnalysisRuleAssemblies />
4466 </PropertyGroup>
67 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
68 <OutDir>.\bin\$(Configuration)\</OutDir>
69 <IntDir>.\intermediate\$(Configuration)\$(ProjectName)\</IntDir>
70 <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
71 <CodeAnalysisRules />
72 <CodeAnalysisRuleAssemblies />
73 </PropertyGroup>
4574 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
75 <OutDir>.\bin\$(Configuration)\</OutDir>
76 <IntDir>.\intermediate\$(Configuration)\$(ProjectName)\</IntDir>
77 <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
78 <CodeAnalysisRules />
79 <CodeAnalysisRuleAssemblies />
80 </PropertyGroup>
81 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
4682 <OutDir>.\bin\$(Configuration)\</OutDir>
4783 <IntDir>.\intermediate\$(Configuration)\$(ProjectName)\</IntDir>
4884 <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
73109 <Message>Retrieving package version...</Message>
74110 </PreBuildEvent>
75111 </ItemDefinitionGroup>
112 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
113 <ClCompile>
114 <Optimization>MaxSpeed</Optimization>
115 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
116 <AdditionalIncludeDirectories>../../include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
117 <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;NDEBUG;WIN32;_LIB;HAVE_LRINTF;%(PreprocessorDefinitions)</PreprocessorDefinitions>
118 <StringPooling>true</StringPooling>
119 <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
120 <FunctionLevelLinking>true</FunctionLevelLinking>
121 <PrecompiledHeader>
122 </PrecompiledHeader>
123 <WarningLevel>Level3</WarningLevel>
124 </ClCompile>
125 <ResourceCompile>
126 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
127 <Culture>0x0413</Culture>
128 </ResourceCompile>
129 <Lib />
130 <PreBuildEvent>
131 <Command>"$(SolutionDir)..\..\utils\win32\ac2ver.exe" "faad2" "$(SolutionDir)..\..\configure.ac" &gt; "$(SolutionDir)..\..\libfaad\win32_ver.h"</Command>
132 </PreBuildEvent>
133 <PreBuildEvent>
134 <Message>Retrieving package version...</Message>
135 </PreBuildEvent>
136 </ItemDefinitionGroup>
76137 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
77138 <ClCompile>
78139 <Optimization>Disabled</Optimization>
83144 <PrecompiledHeader />
84145 <WarningLevel>Level3</WarningLevel>
85146 <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
147 </ClCompile>
148 <ResourceCompile>
149 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
150 <Culture>0x0413</Culture>
151 </ResourceCompile>
152 <Lib />
153 <PreBuildEvent>
154 <Command>"$(SolutionDir)..\..\utils\win32\ac2ver.exe" "faad2" "$(SolutionDir)..\..\configure.ac" &gt; "$(SolutionDir)..\..\libfaad\win32_ver.h"</Command>
155 </PreBuildEvent>
156 <PreBuildEvent>
157 <Message>Retrieving package version...</Message>
158 </PreBuildEvent>
159 </ItemDefinitionGroup>
160 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
161 <ClCompile>
162 <Optimization>Disabled</Optimization>
163 <AdditionalIncludeDirectories>../../include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
164 <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;_DEBUG;WIN32;_LIB;HAVE_LRINTF;%(PreprocessorDefinitions)</PreprocessorDefinitions>
165 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
166 <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
167 <PrecompiledHeader>
168 </PrecompiledHeader>
169 <WarningLevel>Level3</WarningLevel>
170 <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
86171 </ClCompile>
87172 <ResourceCompile>
88173 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
44 <Configuration>Debug</Configuration>
55 <Platform>Win32</Platform>
66 </ProjectConfiguration>
7 <ProjectConfiguration Include="Debug|x64">
8 <Configuration>Debug</Configuration>
9 <Platform>x64</Platform>
10 </ProjectConfiguration>
711 <ProjectConfiguration Include="Release|Win32">
812 <Configuration>Release</Configuration>
913 <Platform>Win32</Platform>
1014 </ProjectConfiguration>
15 <ProjectConfiguration Include="Release|x64">
16 <Configuration>Release</Configuration>
17 <Platform>x64</Platform>
18 </ProjectConfiguration>
1119 </ItemGroup>
1220 <PropertyGroup Label="Globals">
1321 <ProjectGuid>{482DA264-EE88-4575-B208-87C4CB80CD08}</ProjectGuid>
14 <WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion>
22 <WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
1523 </PropertyGroup>
1624 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
1725 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
1826 <ConfigurationType>DynamicLibrary</ConfigurationType>
19 <PlatformToolset>v141</PlatformToolset>
27 <PlatformToolset>v142</PlatformToolset>
28 </PropertyGroup>
29 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
30 <ConfigurationType>DynamicLibrary</ConfigurationType>
31 <PlatformToolset>v142</PlatformToolset>
2032 </PropertyGroup>
2133 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
2234 <ConfigurationType>DynamicLibrary</ConfigurationType>
23 <PlatformToolset>v141</PlatformToolset>
35 <PlatformToolset>v142</PlatformToolset>
36 </PropertyGroup>
37 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
38 <ConfigurationType>DynamicLibrary</ConfigurationType>
39 <PlatformToolset>v142</PlatformToolset>
2440 </PropertyGroup>
2541 <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
2642 <ImportGroup Label="ExtensionSettings">
2844 <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
2945 <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
3046 </ImportGroup>
47 <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
48 <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
49 </ImportGroup>
3150 <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
51 <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
52 </ImportGroup>
53 <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
3254 <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
3355 </ImportGroup>
3456 <PropertyGroup Label="UserMacros" />
4365 <CodeAnalysisRules />
4466 <CodeAnalysisRuleAssemblies />
4567 </PropertyGroup>
68 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
69 <OutDir>.\bin\$(Configuration)\</OutDir>
70 <IntDir>.\intermediate\$(Configuration)\$(ProjectName)\</IntDir>
71 <LinkIncremental>true</LinkIncremental>
72 <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
73 <CodeAnalysisRules />
74 <CodeAnalysisRuleAssemblies />
75 </PropertyGroup>
4676 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
77 <OutDir>.\bin\$(Configuration)\</OutDir>
78 <IntDir>.\intermediate\$(Configuration)\$(ProjectName)\</IntDir>
79 <LinkIncremental>false</LinkIncremental>
80 <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
81 <CodeAnalysisRules />
82 <CodeAnalysisRuleAssemblies />
83 </PropertyGroup>
84 <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
4785 <OutDir>.\bin\$(Configuration)\</OutDir>
4886 <IntDir>.\intermediate\$(Configuration)\$(ProjectName)\</IntDir>
4987 <LinkIncremental>false</LinkIncremental>
69107 <WarningLevel>Level3</WarningLevel>
70108 <SuppressStartupBanner>true</SuppressStartupBanner>
71109 <DebugInformationFormat>EditAndContinue</DebugInformationFormat>
110 </ClCompile>
111 <ResourceCompile>
112 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
113 <Culture>0x0407</Culture>
114 </ResourceCompile>
115 <Link>
116 <ModuleDefinitionFile>.\libfaad2.def</ModuleDefinitionFile>
117 <GenerateDebugInformation>true</GenerateDebugInformation>
118 </Link>
119 <PreBuildEvent>
120 <Message>Retrieving package version...</Message>
121 <Command>"$(SolutionDir)..\..\utils\win32\ac2ver.exe" "faad2" "$(SolutionDir)..\..\configure.ac" &gt; "$(SolutionDir)..\..\libfaad\win32_ver.h"</Command>
122 </PreBuildEvent>
123 </ItemDefinitionGroup>
124 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
125 <Midl>
126 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
127 <MkTypLibCompatible>true</MkTypLibCompatible>
128 <SuppressStartupBanner>true</SuppressStartupBanner>
129 <TypeLibraryName>.\DebugDLL/libfaad2_dll.tlb</TypeLibraryName>
130 </Midl>
131 <ClCompile>
132 <Optimization>Disabled</Optimization>
133 <AdditionalIncludeDirectories>../../include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
134 <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_WINDOWS;_USRDLL;HAVE_LRINTF;%(PreprocessorDefinitions)</PreprocessorDefinitions>
135 <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
136 <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
137 <PrecompiledHeader>
138 </PrecompiledHeader>
139 <WarningLevel>Level3</WarningLevel>
140 <SuppressStartupBanner>true</SuppressStartupBanner>
141 <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
72142 </ClCompile>
73143 <ResourceCompile>
74144 <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
100170 <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
101171 <FunctionLevelLinking>true</FunctionLevelLinking>
102172 <PrecompiledHeader />
173 <WarningLevel>Level3</WarningLevel>
174 <SuppressStartupBanner>true</SuppressStartupBanner>
175 <AdditionalIncludeDirectories>../../include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
176 </ClCompile>
177 <ResourceCompile>
178 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
179 <Culture>0x0407</Culture>
180 </ResourceCompile>
181 <Link>
182 <ModuleDefinitionFile>.\libfaad2.def</ModuleDefinitionFile>
183 </Link>
184 <PreBuildEvent>
185 <Message>Retrieving package version...</Message>
186 <Command>"$(SolutionDir)..\..\utils\win32\ac2ver.exe" "faad2" "$(SolutionDir)..\..\configure.ac" &gt; "$(SolutionDir)..\..\libfaad\win32_ver.h"</Command>
187 </PreBuildEvent>
188 </ItemDefinitionGroup>
189 <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
190 <Midl>
191 <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
192 <MkTypLibCompatible>true</MkTypLibCompatible>
193 <SuppressStartupBanner>true</SuppressStartupBanner>
194 <TypeLibraryName>.\ReleaseDLL/libfaad2_dll.tlb</TypeLibraryName>
195 </Midl>
196 <ClCompile>
197 <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
198 <IntrinsicFunctions>true</IntrinsicFunctions>
199 <FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
200 <PreprocessorDefinitions>_CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_WINDOWS;_USRDLL;HAVE_LRINTF;%(PreprocessorDefinitions)</PreprocessorDefinitions>
201 <StringPooling>true</StringPooling>
202 <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
203 <FunctionLevelLinking>true</FunctionLevelLinking>
204 <PrecompiledHeader>
205 </PrecompiledHeader>
103206 <WarningLevel>Level3</WarningLevel>
104207 <SuppressStartupBanner>true</SuppressStartupBanner>
105208 <AdditionalIncludeDirectories>../../include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
00 /*
11 ** AC2VER - extract version number from AC_INIT macro (configure.ac)
22 ** Copyright (C) 2017 LoRd_MuldeR <mulder2@GMX.de>
3 **
3 **
44 ** This software is released under the CC0 1.0 Universal [CC0 1.0] licence!
55 ** https://creativecommons.org/publicdomain/zero/1.0/legalcode
66 **/