Codebase list faad2 / 43ce646
New upstream version 2.8.3 Fabian Greffrath 6 years ago
110 changed file(s) with 55538 addition(s) and 17019 deletion(s). Raw diff Collapse all Expand all
0 2.8.3
1 - better autotools support
2 2.8.2
3 - PNS bug fixed
4 - New MP4 input module
5 - NeAACDecGetVersion:
6 new api function to get version and copyright strings
7
8 2.8.1:
9 - seeking support for MP4 files
10 2.8.0:
11 - patches and fixed bugs
12
013 2009-02-02 - Version 2.7
114 * DAB+ support
215 * Use public headers internally to prevent duplicate declarations
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.15.1 from Makefile.am.
1 # @configure_input@
2
3 # Copyright (C) 1994-2017 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 dist dist-all distcheck
137 am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) \
138 $(LISP)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 depcomp 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 common frontend plugins
333 EXTRA_DIST = faad2.spec
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__depfiles_maybe)'; \
360 cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe);; \
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: $(DISTFILES)
505 $(am__remove_distdir)
506 test -d "$(distdir)" || mkdir "$(distdir)"
507 @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
508 topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
509 list='$(DISTFILES)'; \
510 dist_files=`for file in $$list; do echo $$file; done | \
511 sed -e "s|^$$srcdirstrip/||;t" \
512 -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
513 case $$dist_files in \
514 */*) $(MKDIR_P) `echo "$$dist_files" | \
515 sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
516 sort -u` ;; \
517 esac; \
518 for file in $$dist_files; do \
519 if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
520 if test -d $$d/$$file; then \
521 dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
522 if test -d "$(distdir)/$$file"; then \
523 find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
524 fi; \
525 if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
526 cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
527 find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
528 fi; \
529 cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
530 else \
531 test -f "$(distdir)/$$file" \
532 || cp -p $$d/$$file "$(distdir)/$$file" \
533 || exit 1; \
534 fi; \
535 done
536 @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
537 if test "$$subdir" = .; then :; else \
538 $(am__make_dryrun) \
539 || test -d "$(distdir)/$$subdir" \
540 || $(MKDIR_P) "$(distdir)/$$subdir" \
541 || exit 1; \
542 dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
543 $(am__relativize); \
544 new_distdir=$$reldir; \
545 dir1=$$subdir; dir2="$(top_distdir)"; \
546 $(am__relativize); \
547 new_top_distdir=$$reldir; \
548 echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
549 echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
550 ($(am__cd) $$subdir && \
551 $(MAKE) $(AM_MAKEFLAGS) \
552 top_distdir="$$new_top_distdir" \
553 distdir="$$new_distdir" \
554 am__remove_distdir=: \
555 am__skip_length_check=: \
556 am__skip_mode_fix=: \
557 distdir) \
558 || exit 1; \
559 fi; \
560 done
561 -test -n "$(am__skip_mode_fix)" \
562 || find "$(distdir)" -type d ! -perm -755 \
563 -exec chmod u+rwx,go+rx {} \; -o \
564 ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \
565 ! -type d ! -perm -400 -exec chmod a+r {} \; -o \
566 ! -type d ! -perm -444 -exec $(install_sh) -c -m a+r {} {} \; \
567 || chmod -R a+r "$(distdir)"
568 dist-gzip: distdir
569 tardir=$(distdir) && $(am__tar) | eval GZIP= gzip $(GZIP_ENV) -c >$(distdir).tar.gz
570 $(am__post_remove_distdir)
571
572 dist-bzip2: distdir
573 tardir=$(distdir) && $(am__tar) | BZIP2=$${BZIP2--9} bzip2 -c >$(distdir).tar.bz2
574 $(am__post_remove_distdir)
575
576 dist-lzip: distdir
577 tardir=$(distdir) && $(am__tar) | lzip -c $${LZIP_OPT--9} >$(distdir).tar.lz
578 $(am__post_remove_distdir)
579
580 dist-xz: distdir
581 tardir=$(distdir) && $(am__tar) | XZ_OPT=$${XZ_OPT--e} xz -c >$(distdir).tar.xz
582 $(am__post_remove_distdir)
583
584 dist-tarZ: distdir
585 @echo WARNING: "Support for distribution archives compressed with" \
586 "legacy program 'compress' is deprecated." >&2
587 @echo WARNING: "It will be removed altogether in Automake 2.0" >&2
588 tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
589 $(am__post_remove_distdir)
590
591 dist-shar: distdir
592 @echo WARNING: "Support for shar distribution archives is" \
593 "deprecated." >&2
594 @echo WARNING: "It will be removed altogether in Automake 2.0" >&2
595 shar $(distdir) | eval GZIP= gzip $(GZIP_ENV) -c >$(distdir).shar.gz
596 $(am__post_remove_distdir)
597
598 dist-zip: distdir
599 -rm -f $(distdir).zip
600 zip -rq $(distdir).zip $(distdir)
601 $(am__post_remove_distdir)
602
603 dist dist-all:
604 $(MAKE) $(AM_MAKEFLAGS) $(DIST_TARGETS) am__post_remove_distdir='@:'
605 $(am__post_remove_distdir)
606
607 # This target untars the dist file and tries a VPATH configuration. Then
608 # it guarantees that the distribution is self-contained by making another
609 # tarfile.
610 distcheck: dist
611 case '$(DIST_ARCHIVES)' in \
612 *.tar.gz*) \
613 eval GZIP= gzip $(GZIP_ENV) -dc $(distdir).tar.gz | $(am__untar) ;;\
614 *.tar.bz2*) \
615 bzip2 -dc $(distdir).tar.bz2 | $(am__untar) ;;\
616 *.tar.lz*) \
617 lzip -dc $(distdir).tar.lz | $(am__untar) ;;\
618 *.tar.xz*) \
619 xz -dc $(distdir).tar.xz | $(am__untar) ;;\
620 *.tar.Z*) \
621 uncompress -c $(distdir).tar.Z | $(am__untar) ;;\
622 *.shar.gz*) \
623 eval GZIP= gzip $(GZIP_ENV) -dc $(distdir).shar.gz | unshar ;;\
624 *.zip*) \
625 unzip $(distdir).zip ;;\
626 esac
627 chmod -R a-w $(distdir)
628 chmod u+w $(distdir)
629 mkdir $(distdir)/_build $(distdir)/_build/sub $(distdir)/_inst
630 chmod a-w $(distdir)
631 test -d $(distdir)/_build || exit 0; \
632 dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \
633 && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \
634 && am__cwd=`pwd` \
635 && $(am__cd) $(distdir)/_build/sub \
636 && ../../configure \
637 $(AM_DISTCHECK_CONFIGURE_FLAGS) \
638 $(DISTCHECK_CONFIGURE_FLAGS) \
639 --srcdir=../.. --prefix="$$dc_install_base" \
640 && $(MAKE) $(AM_MAKEFLAGS) \
641 && $(MAKE) $(AM_MAKEFLAGS) dvi \
642 && $(MAKE) $(AM_MAKEFLAGS) check \
643 && $(MAKE) $(AM_MAKEFLAGS) install \
644 && $(MAKE) $(AM_MAKEFLAGS) installcheck \
645 && $(MAKE) $(AM_MAKEFLAGS) uninstall \
646 && $(MAKE) $(AM_MAKEFLAGS) distuninstallcheck_dir="$$dc_install_base" \
647 distuninstallcheck \
648 && chmod -R a-w "$$dc_install_base" \
649 && ({ \
650 (cd ../.. && umask 077 && mkdir "$$dc_destdir") \
651 && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \
652 && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \
653 && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \
654 distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \
655 } || { rm -rf "$$dc_destdir"; exit 1; }) \
656 && rm -rf "$$dc_destdir" \
657 && $(MAKE) $(AM_MAKEFLAGS) dist \
658 && rm -rf $(DIST_ARCHIVES) \
659 && $(MAKE) $(AM_MAKEFLAGS) distcleancheck \
660 && cd "$$am__cwd" \
661 || exit 1
662 $(am__post_remove_distdir)
663 @(echo "$(distdir) archives ready for distribution: "; \
664 list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \
665 sed -e 1h -e 1s/./=/g -e 1p -e 1x -e '$$p' -e '$$x'
666 distuninstallcheck:
667 @test -n '$(distuninstallcheck_dir)' || { \
668 echo 'ERROR: trying to run $@ with an empty' \
669 '$$(distuninstallcheck_dir)' >&2; \
670 exit 1; \
671 }; \
672 $(am__cd) '$(distuninstallcheck_dir)' || { \
673 echo 'ERROR: cannot chdir into $(distuninstallcheck_dir)' >&2; \
674 exit 1; \
675 }; \
676 test `$(am__distuninstallcheck_listfiles) | wc -l` -eq 0 \
677 || { echo "ERROR: files left after uninstall:" ; \
678 if test -n "$(DESTDIR)"; then \
679 echo " (check DESTDIR support)"; \
680 fi ; \
681 $(distuninstallcheck_listfiles) ; \
682 exit 1; } >&2
683 distcleancheck: distclean
684 @if test '$(srcdir)' = . ; then \
685 echo "ERROR: distcleancheck can only run from a VPATH build" ; \
686 exit 1 ; \
687 fi
688 @test `$(distcleancheck_listfiles) | wc -l` -eq 0 \
689 || { echo "ERROR: files left in build directory after distclean:" ; \
690 $(distcleancheck_listfiles) ; \
691 exit 1; } >&2
692 check-am: all-am
693 check: check-recursive
694 all-am: Makefile config.h
695 installdirs: installdirs-recursive
696 installdirs-am:
697 install: install-recursive
698 install-exec: install-exec-recursive
699 install-data: install-data-recursive
700 uninstall: uninstall-recursive
701
702 install-am: all-am
703 @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
704
705 installcheck: installcheck-recursive
706 install-strip:
707 if test -z '$(STRIP)'; then \
708 $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
709 install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
710 install; \
711 else \
712 $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
713 install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
714 "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
715 fi
716 mostlyclean-generic:
717
718 clean-generic:
719
720 distclean-generic:
721 -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
722 -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
723
724 maintainer-clean-generic:
725 @echo "This command is intended for maintainers to use"
726 @echo "it deletes files that may require special tools to rebuild."
727 clean: clean-recursive
728
729 clean-am: clean-generic clean-libtool mostlyclean-am
730
731 distclean: distclean-recursive
732 -rm -f $(am__CONFIG_DISTCLEAN_FILES)
733 -rm -f Makefile
734 distclean-am: clean-am distclean-generic distclean-hdr \
735 distclean-libtool distclean-tags
736
737 dvi: dvi-recursive
738
739 dvi-am:
740
741 html: html-recursive
742
743 html-am:
744
745 info: info-recursive
746
747 info-am:
748
749 install-data-am:
750
751 install-dvi: install-dvi-recursive
752
753 install-dvi-am:
754
755 install-exec-am:
756
757 install-html: install-html-recursive
758
759 install-html-am:
760
761 install-info: install-info-recursive
762
763 install-info-am:
764
765 install-man:
766
767 install-pdf: install-pdf-recursive
768
769 install-pdf-am:
770
771 install-ps: install-ps-recursive
772
773 install-ps-am:
774
775 installcheck-am:
776
777 maintainer-clean: maintainer-clean-recursive
778 -rm -f $(am__CONFIG_DISTCLEAN_FILES)
779 -rm -rf $(top_srcdir)/autom4te.cache
780 -rm -f Makefile
781 maintainer-clean-am: distclean-am maintainer-clean-generic
782
783 mostlyclean: mostlyclean-recursive
784
785 mostlyclean-am: mostlyclean-generic mostlyclean-libtool
786
787 pdf: pdf-recursive
788
789 pdf-am:
790
791 ps: ps-recursive
792
793 ps-am:
794
795 uninstall-am:
796
797 .MAKE: $(am__recursive_targets) all install-am install-strip
798
799 .PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \
800 am--refresh check check-am clean clean-cscope clean-generic \
801 clean-libtool cscope cscopelist-am ctags ctags-am dist \
802 dist-all dist-bzip2 dist-gzip dist-lzip dist-shar dist-tarZ \
803 dist-xz dist-zip distcheck distclean distclean-generic \
804 distclean-hdr distclean-libtool distclean-tags distcleancheck \
805 distdir distuninstallcheck dvi dvi-am html html-am info \
806 info-am install install-am install-data install-data-am \
807 install-dvi install-dvi-am install-exec install-exec-am \
808 install-html install-html-am install-info install-info-am \
809 install-man install-pdf install-pdf-am install-ps \
810 install-ps-am install-strip installcheck installcheck-am \
811 installdirs installdirs-am maintainer-clean \
812 maintainer-clean-generic mostlyclean mostlyclean-generic \
813 mostlyclean-libtool pdf pdf-am ps ps-am tags tags-am uninstall \
814 uninstall-am
815
816 .PRECIOUS: Makefile
817
818
819 rpm: Makefile
820 make dist
821 $(RPMBUILD) -ta $(PACKAGE)-$(VERSION).tar.gz
822 rm $(PACKAGE)-$(VERSION).tar.gz
823
824 # Tell versions [3.59,3.63) of GNU make to not export all variables.
825 # Otherwise a system limit (for SysV at least) may be exceeded.
826 .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.15.1 -*- Autoconf -*-
1
2 # Copyright (C) 1996-2017 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 cru libconftest.a conftest.o" >&AS_MESSAGE_LOG_FD
1058 $AR cru 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=cru}
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 if AC_TRY_EVAL(NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist) && test -s "$nlist"; then
4080 # Try sorting and uniquifying the output.
4081 if sort "$nlist" | uniq > "$nlist"T; then
4082 mv -f "$nlist"T "$nlist"
4083 else
4084 rm -f "$nlist"T
4085 fi
4086
4087 # Make sure that we snagged all the symbols we need.
4088 if $GREP ' nm_test_var$' "$nlist" >/dev/null; then
4089 if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
4090 cat <<_LT_EOF > conftest.$ac_ext
4091 /* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests. */
4092 #if defined _WIN32 || defined __CYGWIN__ || defined _WIN32_WCE
4093 /* DATA imports from DLLs on WIN32 can't be const, because runtime
4094 relocations are performed -- see ld's documentation on pseudo-relocs. */
4095 # define LT@&t@_DLSYM_CONST
4096 #elif defined __osf__
4097 /* This system does not cope well with relocations in const data. */
4098 # define LT@&t@_DLSYM_CONST
4099 #else
4100 # define LT@&t@_DLSYM_CONST const
4101 #endif
4102
4103 #ifdef __cplusplus
4104 extern "C" {
4105 #endif
4106
4107 _LT_EOF
4108 # Now generate the symbol file.
4109 eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext'
4110
4111 cat <<_LT_EOF >> conftest.$ac_ext
4112
4113 /* The mapping between symbol names and symbols. */
4114 LT@&t@_DLSYM_CONST struct {
4115 const char *name;
4116 void *address;
4117 }
4118 lt__PROGRAM__LTX_preloaded_symbols[[]] =
4119 {
4120 { "@PROGRAM@", (void *) 0 },
4121 _LT_EOF
4122 $SED "s/^$symcode$symcode* .* \(.*\)$/ {\"\1\", (void *) \&\1},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext
4123 cat <<\_LT_EOF >> conftest.$ac_ext
4124 {0, (void *) 0}
4125 };
4126
4127 /* This works around a problem in FreeBSD linker */
4128 #ifdef FREEBSD_WORKAROUND
4129 static const void *lt_preloaded_setup() {
4130 return lt__PROGRAM__LTX_preloaded_symbols;
4131 }
4132 #endif
4133
4134 #ifdef __cplusplus
4135 }
4136 #endif
4137 _LT_EOF
4138 # Now try linking the two files.
4139 mv conftest.$ac_objext conftstm.$ac_objext
4140 lt_globsym_save_LIBS=$LIBS
4141 lt_globsym_save_CFLAGS=$CFLAGS
4142 LIBS=conftstm.$ac_objext
4143 CFLAGS="$CFLAGS$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)"
4144 if AC_TRY_EVAL(ac_link) && test -s conftest$ac_exeext; then
4145 pipe_works=yes
4146 fi
4147 LIBS=$lt_globsym_save_LIBS
4148 CFLAGS=$lt_globsym_save_CFLAGS
4149 else
4150 echo "cannot find nm_test_func in $nlist" >&AS_MESSAGE_LOG_FD
4151 fi
4152 else
4153 echo "cannot find nm_test_var in $nlist" >&AS_MESSAGE_LOG_FD
4154 fi
4155 else
4156 echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AS_MESSAGE_LOG_FD
4157 fi
4158 else
4159 echo "$progname: failed program was:" >&AS_MESSAGE_LOG_FD
4160 cat conftest.$ac_ext >&5
4161 fi
4162 rm -rf conftest* conftst*
4163
4164 # Do not use the global_symbol_pipe unless it works.
4165 if test yes = "$pipe_works"; then
4166 break
4167 else
4168 lt_cv_sys_global_symbol_pipe=
4169 fi
4170 done
4171 ])
4172 if test -z "$lt_cv_sys_global_symbol_pipe"; then
4173 lt_cv_sys_global_symbol_to_cdecl=
4174 fi
4175 if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then
4176 AC_MSG_RESULT(failed)
4177 else
4178 AC_MSG_RESULT(ok)
4179 fi
4180
4181 # Response file support.
4182 if test "$lt_cv_nm_interface" = "MS dumpbin"; then
4183 nm_file_list_spec='@'
4184 elif $NM --help 2>/dev/null | grep '[[@]]FILE' >/dev/null; then
4185 nm_file_list_spec='@'
4186 fi
4187
4188 _LT_DECL([global_symbol_pipe], [lt_cv_sys_global_symbol_pipe], [1],
4189 [Take the output of nm and produce a listing of raw symbols and C names])
4190 _LT_DECL([global_symbol_to_cdecl], [lt_cv_sys_global_symbol_to_cdecl], [1],
4191 [Transform the output of nm in a proper C declaration])
4192 _LT_DECL([global_symbol_to_import], [lt_cv_sys_global_symbol_to_import], [1],
4193 [Transform the output of nm into a list of symbols to manually relocate])
4194 _LT_DECL([global_symbol_to_c_name_address],
4195 [lt_cv_sys_global_symbol_to_c_name_address], [1],
4196 [Transform the output of nm in a C name address pair])
4197 _LT_DECL([global_symbol_to_c_name_address_lib_prefix],
4198 [lt_cv_sys_global_symbol_to_c_name_address_lib_prefix], [1],
4199 [Transform the output of nm in a C name address pair when lib prefix is needed])
4200 _LT_DECL([nm_interface], [lt_cv_nm_interface], [1],
4201 [The name lister interface])
4202 _LT_DECL([], [nm_file_list_spec], [1],
4203 [Specify filename containing input files for $NM])
4204 ]) # _LT_CMD_GLOBAL_SYMBOLS
4205
4206
4207 # _LT_COMPILER_PIC([TAGNAME])
4208 # ---------------------------
4209 m4_defun([_LT_COMPILER_PIC],
4210 [m4_require([_LT_TAG_COMPILER])dnl
4211 _LT_TAGVAR(lt_prog_compiler_wl, $1)=
4212 _LT_TAGVAR(lt_prog_compiler_pic, $1)=
4213 _LT_TAGVAR(lt_prog_compiler_static, $1)=
4214
4215 m4_if([$1], [CXX], [
4216 # C++ specific cases for pic, static, wl, etc.
4217 if test yes = "$GXX"; then
4218 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4219 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4220
4221 case $host_os in
4222 aix*)
4223 # All AIX code is PIC.
4224 if test ia64 = "$host_cpu"; then
4225 # AIX 5 now supports IA64 processor
4226 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4227 fi
4228 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4229 ;;
4230
4231 amigaos*)
4232 case $host_cpu in
4233 powerpc)
4234 # see comment about AmigaOS4 .so support
4235 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4236 ;;
4237 m68k)
4238 # FIXME: we need at least 68020 code to build shared libraries, but
4239 # adding the '-m68020' flag to GCC prevents building anything better,
4240 # like '-m68040'.
4241 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
4242 ;;
4243 esac
4244 ;;
4245
4246 beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
4247 # PIC is the default for these OSes.
4248 ;;
4249 mingw* | cygwin* | os2* | pw32* | cegcc*)
4250 # This hack is so that the source file can tell whether it is being
4251 # built for inclusion in a dll (and should export symbols for example).
4252 # Although the cygwin gcc ignores -fPIC, still need this for old-style
4253 # (--disable-auto-import) libraries
4254 m4_if([$1], [GCJ], [],
4255 [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
4256 case $host_os in
4257 os2*)
4258 _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static'
4259 ;;
4260 esac
4261 ;;
4262 darwin* | rhapsody*)
4263 # PIC is the default on this platform
4264 # Common symbols not allowed in MH_DYLIB files
4265 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
4266 ;;
4267 *djgpp*)
4268 # DJGPP does not support shared libraries at all
4269 _LT_TAGVAR(lt_prog_compiler_pic, $1)=
4270 ;;
4271 haiku*)
4272 # PIC is the default for Haiku.
4273 # The "-static" flag exists, but is broken.
4274 _LT_TAGVAR(lt_prog_compiler_static, $1)=
4275 ;;
4276 interix[[3-9]]*)
4277 # Interix 3.x gcc -fpic/-fPIC options generate broken code.
4278 # Instead, we relocate shared libraries at runtime.
4279 ;;
4280 sysv4*MP*)
4281 if test -d /usr/nec; then
4282 _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
4283 fi
4284 ;;
4285 hpux*)
4286 # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
4287 # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag
4288 # sets the default TLS model and affects inlining.
4289 case $host_cpu in
4290 hppa*64*)
4291 ;;
4292 *)
4293 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4294 ;;
4295 esac
4296 ;;
4297 *qnx* | *nto*)
4298 # QNX uses GNU C++, but need to define -shared option too, otherwise
4299 # it will coredump.
4300 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
4301 ;;
4302 *)
4303 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4304 ;;
4305 esac
4306 else
4307 case $host_os in
4308 aix[[4-9]]*)
4309 # All AIX code is PIC.
4310 if test ia64 = "$host_cpu"; then
4311 # AIX 5 now supports IA64 processor
4312 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4313 else
4314 _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
4315 fi
4316 ;;
4317 chorus*)
4318 case $cc_basename in
4319 cxch68*)
4320 # Green Hills C++ Compiler
4321 # _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"
4322 ;;
4323 esac
4324 ;;
4325 mingw* | cygwin* | os2* | pw32* | cegcc*)
4326 # This hack is so that the source file can tell whether it is being
4327 # built for inclusion in a dll (and should export symbols for example).
4328 m4_if([$1], [GCJ], [],
4329 [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
4330 ;;
4331 dgux*)
4332 case $cc_basename in
4333 ec++*)
4334 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4335 ;;
4336 ghcx*)
4337 # Green Hills C++ Compiler
4338 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4339 ;;
4340 *)
4341 ;;
4342 esac
4343 ;;
4344 freebsd* | dragonfly*)
4345 # FreeBSD uses GNU C++
4346 ;;
4347 hpux9* | hpux10* | hpux11*)
4348 case $cc_basename in
4349 CC*)
4350 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4351 _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-a ${wl}archive'
4352 if test ia64 != "$host_cpu"; then
4353 _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
4354 fi
4355 ;;
4356 aCC*)
4357 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4358 _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-a ${wl}archive'
4359 case $host_cpu in
4360 hppa*64*|ia64*)
4361 # +Z the default
4362 ;;
4363 *)
4364 _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
4365 ;;
4366 esac
4367 ;;
4368 *)
4369 ;;
4370 esac
4371 ;;
4372 interix*)
4373 # This is c89, which is MS Visual C++ (no shared libs)
4374 # Anyone wants to do a port?
4375 ;;
4376 irix5* | irix6* | nonstopux*)
4377 case $cc_basename in
4378 CC*)
4379 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4380 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4381 # CC pic flag -KPIC is the default.
4382 ;;
4383 *)
4384 ;;
4385 esac
4386 ;;
4387 linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
4388 case $cc_basename in
4389 KCC*)
4390 # KAI C++ Compiler
4391 _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
4392 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4393 ;;
4394 ecpc* )
4395 # old Intel C++ for x86_64, which still supported -KPIC.
4396 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4397 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4398 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4399 ;;
4400 icpc* )
4401 # Intel C++, used to be incompatible with GCC.
4402 # ICC 10 doesn't accept -KPIC any more.
4403 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4404 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4405 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4406 ;;
4407 pgCC* | pgcpp*)
4408 # Portland Group C++ compiler
4409 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4410 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
4411 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4412 ;;
4413 cxx*)
4414 # Compaq C++
4415 # Make sure the PIC flag is empty. It appears that all Alpha
4416 # Linux and Compaq Tru64 Unix objects are PIC.
4417 _LT_TAGVAR(lt_prog_compiler_pic, $1)=
4418 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4419 ;;
4420 xlc* | xlC* | bgxl[[cC]]* | mpixl[[cC]]*)
4421 # IBM XL 8.0, 9.0 on PPC and BlueGene
4422 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4423 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
4424 _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
4425 ;;
4426 *)
4427 case `$CC -V 2>&1 | sed 5q` in
4428 *Sun\ C*)
4429 # Sun C++ 5.9
4430 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4431 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4432 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
4433 ;;
4434 esac
4435 ;;
4436 esac
4437 ;;
4438 lynxos*)
4439 ;;
4440 m88k*)
4441 ;;
4442 mvs*)
4443 case $cc_basename in
4444 cxx*)
4445 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-W c,exportall'
4446 ;;
4447 *)
4448 ;;
4449 esac
4450 ;;
4451 netbsd* | netbsdelf*-gnu)
4452 ;;
4453 *qnx* | *nto*)
4454 # QNX uses GNU C++, but need to define -shared option too, otherwise
4455 # it will coredump.
4456 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
4457 ;;
4458 osf3* | osf4* | osf5*)
4459 case $cc_basename in
4460 KCC*)
4461 _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,'
4462 ;;
4463 RCC*)
4464 # Rational C++ 2.4.1
4465 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4466 ;;
4467 cxx*)
4468 # Digital/Compaq C++
4469 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4470 # Make sure the PIC flag is empty. It appears that all Alpha
4471 # Linux and Compaq Tru64 Unix objects are PIC.
4472 _LT_TAGVAR(lt_prog_compiler_pic, $1)=
4473 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4474 ;;
4475 *)
4476 ;;
4477 esac
4478 ;;
4479 psos*)
4480 ;;
4481 solaris*)
4482 case $cc_basename in
4483 CC* | sunCC*)
4484 # Sun C++ 4.2, 5.x and Centerline C++
4485 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4486 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4487 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
4488 ;;
4489 gcx*)
4490 # Green Hills C++ Compiler
4491 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
4492 ;;
4493 *)
4494 ;;
4495 esac
4496 ;;
4497 sunos4*)
4498 case $cc_basename in
4499 CC*)
4500 # Sun C++ 4.x
4501 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4502 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4503 ;;
4504 lcc*)
4505 # Lucid
4506 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4507 ;;
4508 *)
4509 ;;
4510 esac
4511 ;;
4512 sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
4513 case $cc_basename in
4514 CC*)
4515 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4516 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4517 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4518 ;;
4519 esac
4520 ;;
4521 tandem*)
4522 case $cc_basename in
4523 NCC*)
4524 # NonStop-UX NCC 3.20
4525 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4526 ;;
4527 *)
4528 ;;
4529 esac
4530 ;;
4531 vxworks*)
4532 ;;
4533 *)
4534 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
4535 ;;
4536 esac
4537 fi
4538 ],
4539 [
4540 if test yes = "$GCC"; then
4541 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4542 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4543
4544 case $host_os in
4545 aix*)
4546 # All AIX code is PIC.
4547 if test ia64 = "$host_cpu"; then
4548 # AIX 5 now supports IA64 processor
4549 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4550 fi
4551 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4552 ;;
4553
4554 amigaos*)
4555 case $host_cpu in
4556 powerpc)
4557 # see comment about AmigaOS4 .so support
4558 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4559 ;;
4560 m68k)
4561 # FIXME: we need at least 68020 code to build shared libraries, but
4562 # adding the '-m68020' flag to GCC prevents building anything better,
4563 # like '-m68040'.
4564 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4'
4565 ;;
4566 esac
4567 ;;
4568
4569 beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
4570 # PIC is the default for these OSes.
4571 ;;
4572
4573 mingw* | cygwin* | pw32* | os2* | cegcc*)
4574 # This hack is so that the source file can tell whether it is being
4575 # built for inclusion in a dll (and should export symbols for example).
4576 # Although the cygwin gcc ignores -fPIC, still need this for old-style
4577 # (--disable-auto-import) libraries
4578 m4_if([$1], [GCJ], [],
4579 [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
4580 case $host_os in
4581 os2*)
4582 _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static'
4583 ;;
4584 esac
4585 ;;
4586
4587 darwin* | rhapsody*)
4588 # PIC is the default on this platform
4589 # Common symbols not allowed in MH_DYLIB files
4590 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
4591 ;;
4592
4593 haiku*)
4594 # PIC is the default for Haiku.
4595 # The "-static" flag exists, but is broken.
4596 _LT_TAGVAR(lt_prog_compiler_static, $1)=
4597 ;;
4598
4599 hpux*)
4600 # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
4601 # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag
4602 # sets the default TLS model and affects inlining.
4603 case $host_cpu in
4604 hppa*64*)
4605 # +Z the default
4606 ;;
4607 *)
4608 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4609 ;;
4610 esac
4611 ;;
4612
4613 interix[[3-9]]*)
4614 # Interix 3.x gcc -fpic/-fPIC options generate broken code.
4615 # Instead, we relocate shared libraries at runtime.
4616 ;;
4617
4618 msdosdjgpp*)
4619 # Just because we use GCC doesn't mean we suddenly get shared libraries
4620 # on systems that don't support them.
4621 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
4622 enable_shared=no
4623 ;;
4624
4625 *nto* | *qnx*)
4626 # QNX uses GNU C++, but need to define -shared option too, otherwise
4627 # it will coredump.
4628 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
4629 ;;
4630
4631 sysv4*MP*)
4632 if test -d /usr/nec; then
4633 _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic
4634 fi
4635 ;;
4636
4637 *)
4638 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4639 ;;
4640 esac
4641
4642 case $cc_basename in
4643 nvcc*) # Cuda Compiler Driver 2.2
4644 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Xlinker '
4645 if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then
4646 _LT_TAGVAR(lt_prog_compiler_pic, $1)="-Xcompiler $_LT_TAGVAR(lt_prog_compiler_pic, $1)"
4647 fi
4648 ;;
4649 esac
4650 else
4651 # PORTME Check for flag to pass linker flags through the system compiler.
4652 case $host_os in
4653 aix*)
4654 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4655 if test ia64 = "$host_cpu"; then
4656 # AIX 5 now supports IA64 processor
4657 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4658 else
4659 _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp'
4660 fi
4661 ;;
4662
4663 darwin* | rhapsody*)
4664 # PIC is the default on this platform
4665 # Common symbols not allowed in MH_DYLIB files
4666 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common'
4667 case $cc_basename in
4668 nagfor*)
4669 # NAG Fortran compiler
4670 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,-Wl,,'
4671 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
4672 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4673 ;;
4674 esac
4675 ;;
4676
4677 mingw* | cygwin* | pw32* | os2* | cegcc*)
4678 # This hack is so that the source file can tell whether it is being
4679 # built for inclusion in a dll (and should export symbols for example).
4680 m4_if([$1], [GCJ], [],
4681 [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT'])
4682 case $host_os in
4683 os2*)
4684 _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static'
4685 ;;
4686 esac
4687 ;;
4688
4689 hpux9* | hpux10* | hpux11*)
4690 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4691 # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
4692 # not for PA HP-UX.
4693 case $host_cpu in
4694 hppa*64*|ia64*)
4695 # +Z the default
4696 ;;
4697 *)
4698 _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z'
4699 ;;
4700 esac
4701 # Is there a better lt_prog_compiler_static that works with the bundled CC?
4702 _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-a ${wl}archive'
4703 ;;
4704
4705 irix5* | irix6* | nonstopux*)
4706 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4707 # PIC (with -KPIC) is the default.
4708 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4709 ;;
4710
4711 linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
4712 case $cc_basename in
4713 # old Intel for x86_64, which still supported -KPIC.
4714 ecc*)
4715 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4716 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4717 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4718 ;;
4719 # icc used to be incompatible with GCC.
4720 # ICC 10 doesn't accept -KPIC any more.
4721 icc* | ifort*)
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 # Lahey Fortran 8.1.
4727 lf95*)
4728 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4729 _LT_TAGVAR(lt_prog_compiler_pic, $1)='--shared'
4730 _LT_TAGVAR(lt_prog_compiler_static, $1)='--static'
4731 ;;
4732 nagfor*)
4733 # NAG Fortran compiler
4734 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,-Wl,,'
4735 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
4736 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4737 ;;
4738 tcc*)
4739 # Fabrice Bellard et al's Tiny C Compiler
4740 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4741 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4742 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4743 ;;
4744 pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*)
4745 # Portland Group compilers (*not* the Pentium gcc compiler,
4746 # which looks to be a dead project)
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)='-Bstatic'
4750 ;;
4751 ccc*)
4752 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4753 # All Alpha code is PIC.
4754 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4755 ;;
4756 xl* | bgxl* | bgf* | mpixl*)
4757 # IBM XL C 8.0/Fortran 10.1, 11.1 on PPC and BlueGene
4758 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4759 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic'
4760 _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink'
4761 ;;
4762 *)
4763 case `$CC -V 2>&1 | sed 5q` in
4764 *Sun\ Ceres\ Fortran* | *Sun*Fortran*\ [[1-7]].* | *Sun*Fortran*\ 8.[[0-3]]*)
4765 # Sun Fortran 8.3 passes all unrecognized flags to the linker
4766 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4767 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4768 _LT_TAGVAR(lt_prog_compiler_wl, $1)=''
4769 ;;
4770 *Sun\ F* | *Sun*Fortran*)
4771 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4772 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4773 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
4774 ;;
4775 *Sun\ C*)
4776 # Sun C 5.9
4777 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4778 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4779 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4780 ;;
4781 *Intel*\ [[CF]]*Compiler*)
4782 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4783 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
4784 _LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
4785 ;;
4786 *Portland\ Group*)
4787 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4788 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic'
4789 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4790 ;;
4791 esac
4792 ;;
4793 esac
4794 ;;
4795
4796 newsos6)
4797 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4798 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4799 ;;
4800
4801 *nto* | *qnx*)
4802 # QNX uses GNU C++, but need to define -shared option too, otherwise
4803 # it will coredump.
4804 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared'
4805 ;;
4806
4807 osf3* | osf4* | osf5*)
4808 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4809 # All OSF/1 code is PIC.
4810 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4811 ;;
4812
4813 rdos*)
4814 _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
4815 ;;
4816
4817 solaris*)
4818 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4819 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4820 case $cc_basename in
4821 f77* | f90* | f95* | sunf77* | sunf90* | sunf95*)
4822 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ';;
4823 *)
4824 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,';;
4825 esac
4826 ;;
4827
4828 sunos4*)
4829 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld '
4830 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC'
4831 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4832 ;;
4833
4834 sysv4 | sysv4.2uw2* | sysv4.3*)
4835 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4836 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4837 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4838 ;;
4839
4840 sysv4*MP*)
4841 if test -d /usr/nec; then
4842 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-Kconform_pic'
4843 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4844 fi
4845 ;;
4846
4847 sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
4848 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4849 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
4850 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4851 ;;
4852
4853 unicos*)
4854 _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
4855 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
4856 ;;
4857
4858 uts4*)
4859 _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic'
4860 _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic'
4861 ;;
4862
4863 *)
4864 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
4865 ;;
4866 esac
4867 fi
4868 ])
4869 case $host_os in
4870 # For platforms that do not support PIC, -DPIC is meaningless:
4871 *djgpp*)
4872 _LT_TAGVAR(lt_prog_compiler_pic, $1)=
4873 ;;
4874 *)
4875 _LT_TAGVAR(lt_prog_compiler_pic, $1)="$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])"
4876 ;;
4877 esac
4878
4879 AC_CACHE_CHECK([for $compiler option to produce PIC],
4880 [_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)],
4881 [_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_prog_compiler_pic, $1)])
4882 _LT_TAGVAR(lt_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)
4883
4884 #
4885 # Check to make sure the PIC flag actually works.
4886 #
4887 if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then
4888 _LT_COMPILER_OPTION([if $compiler PIC flag $_LT_TAGVAR(lt_prog_compiler_pic, $1) works],
4889 [_LT_TAGVAR(lt_cv_prog_compiler_pic_works, $1)],
4890 [$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])], [],
4891 [case $_LT_TAGVAR(lt_prog_compiler_pic, $1) in
4892 "" | " "*) ;;
4893 *) _LT_TAGVAR(lt_prog_compiler_pic, $1)=" $_LT_TAGVAR(lt_prog_compiler_pic, $1)" ;;
4894 esac],
4895 [_LT_TAGVAR(lt_prog_compiler_pic, $1)=
4896 _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no])
4897 fi
4898 _LT_TAGDECL([pic_flag], [lt_prog_compiler_pic], [1],
4899 [Additional compiler flags for building library objects])
4900
4901 _LT_TAGDECL([wl], [lt_prog_compiler_wl], [1],
4902 [How to pass a linker flag through the compiler])
4903 #
4904 # Check to make sure the static flag actually works.
4905 #
4906 wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1) eval lt_tmp_static_flag=\"$_LT_TAGVAR(lt_prog_compiler_static, $1)\"
4907 _LT_LINKER_OPTION([if $compiler static flag $lt_tmp_static_flag works],
4908 _LT_TAGVAR(lt_cv_prog_compiler_static_works, $1),
4909 $lt_tmp_static_flag,
4910 [],
4911 [_LT_TAGVAR(lt_prog_compiler_static, $1)=])
4912 _LT_TAGDECL([link_static_flag], [lt_prog_compiler_static], [1],
4913 [Compiler flag to prevent dynamic linking])
4914 ])# _LT_COMPILER_PIC
4915
4916
4917 # _LT_LINKER_SHLIBS([TAGNAME])
4918 # ----------------------------
4919 # See if the linker supports building shared libraries.
4920 m4_defun([_LT_LINKER_SHLIBS],
4921 [AC_REQUIRE([LT_PATH_LD])dnl
4922 AC_REQUIRE([LT_PATH_NM])dnl
4923 m4_require([_LT_PATH_MANIFEST_TOOL])dnl
4924 m4_require([_LT_FILEUTILS_DEFAULTS])dnl
4925 m4_require([_LT_DECL_EGREP])dnl
4926 m4_require([_LT_DECL_SED])dnl
4927 m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl
4928 m4_require([_LT_TAG_COMPILER])dnl
4929 AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
4930 m4_if([$1], [CXX], [
4931 _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
4932 _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
4933 case $host_os in
4934 aix[[4-9]]*)
4935 # If we're using GNU nm, then we don't want the "-C" option.
4936 # -C means demangle to GNU nm, but means don't demangle to AIX nm.
4937 # Without the "-l" option, or with the "-B" option, AIX nm treats
4938 # weak defined symbols like other global defined symbols, whereas
4939 # GNU nm marks them as "W".
4940 # While the 'weak' keyword is ignored in the Export File, we need
4941 # it in the Import File for the 'aix-soname' feature, so we have
4942 # to replace the "-B" option with "-P" for AIX nm.
4943 if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
4944 _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'
4945 else
4946 _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'
4947 fi
4948 ;;
4949 pw32*)
4950 _LT_TAGVAR(export_symbols_cmds, $1)=$ltdll_cmds
4951 ;;
4952 cygwin* | mingw* | cegcc*)
4953 case $cc_basename in
4954 cl*)
4955 _LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*'
4956 ;;
4957 *)
4958 _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'
4959 _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname']
4960 ;;
4961 esac
4962 ;;
4963 linux* | k*bsd*-gnu | gnu*)
4964 _LT_TAGVAR(link_all_deplibs, $1)=no
4965 ;;
4966 *)
4967 _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
4968 ;;
4969 esac
4970 ], [
4971 runpath_var=
4972 _LT_TAGVAR(allow_undefined_flag, $1)=
4973 _LT_TAGVAR(always_export_symbols, $1)=no
4974 _LT_TAGVAR(archive_cmds, $1)=
4975 _LT_TAGVAR(archive_expsym_cmds, $1)=
4976 _LT_TAGVAR(compiler_needs_object, $1)=no
4977 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
4978 _LT_TAGVAR(export_dynamic_flag_spec, $1)=
4979 _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
4980 _LT_TAGVAR(hardcode_automatic, $1)=no
4981 _LT_TAGVAR(hardcode_direct, $1)=no
4982 _LT_TAGVAR(hardcode_direct_absolute, $1)=no
4983 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
4984 _LT_TAGVAR(hardcode_libdir_separator, $1)=
4985 _LT_TAGVAR(hardcode_minus_L, $1)=no
4986 _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
4987 _LT_TAGVAR(inherit_rpath, $1)=no
4988 _LT_TAGVAR(link_all_deplibs, $1)=unknown
4989 _LT_TAGVAR(module_cmds, $1)=
4990 _LT_TAGVAR(module_expsym_cmds, $1)=
4991 _LT_TAGVAR(old_archive_from_new_cmds, $1)=
4992 _LT_TAGVAR(old_archive_from_expsyms_cmds, $1)=
4993 _LT_TAGVAR(thread_safe_flag_spec, $1)=
4994 _LT_TAGVAR(whole_archive_flag_spec, $1)=
4995 # include_expsyms should be a list of space-separated symbols to be *always*
4996 # included in the symbol list
4997 _LT_TAGVAR(include_expsyms, $1)=
4998 # exclude_expsyms can be an extended regexp of symbols to exclude
4999 # it will be wrapped by ' (' and ')$', so one must not match beginning or
5000 # end of line. Example: 'a|bc|.*d.*' will exclude the symbols 'a' and 'bc',
5001 # as well as any symbol that contains 'd'.
5002 _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*']
5003 # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
5004 # platforms (ab)use it in PIC code, but their linkers get confused if
5005 # the symbol is explicitly referenced. Since portable code cannot
5006 # rely on this symbol name, it's probably fine to never include it in
5007 # preloaded symbol tables.
5008 # Exclude shared library initialization/finalization symbols.
5009 dnl Note also adjust exclude_expsyms for C++ above.
5010 extract_expsyms_cmds=
5011
5012 case $host_os in
5013 cygwin* | mingw* | pw32* | cegcc*)
5014 # FIXME: the MSVC++ port hasn't been tested in a loooong time
5015 # When not using gcc, we currently assume that we are using
5016 # Microsoft Visual C++.
5017 if test yes != "$GCC"; then
5018 with_gnu_ld=no
5019 fi
5020 ;;
5021 interix*)
5022 # we just hope/assume this is gcc and not c89 (= MSVC++)
5023 with_gnu_ld=yes
5024 ;;
5025 openbsd* | bitrig*)
5026 with_gnu_ld=no
5027 ;;
5028 linux* | k*bsd*-gnu | gnu*)
5029 _LT_TAGVAR(link_all_deplibs, $1)=no
5030 ;;
5031 esac
5032
5033 _LT_TAGVAR(ld_shlibs, $1)=yes
5034
5035 # On some targets, GNU ld is compatible enough with the native linker
5036 # that we're better off using the native interface for both.
5037 lt_use_gnu_ld_interface=no
5038 if test yes = "$with_gnu_ld"; then
5039 case $host_os in
5040 aix*)
5041 # The AIX port of GNU ld has always aspired to compatibility
5042 # with the native linker. However, as the warning in the GNU ld
5043 # block says, versions before 2.19.5* couldn't really create working
5044 # shared libraries, regardless of the interface used.
5045 case `$LD -v 2>&1` in
5046 *\ \(GNU\ Binutils\)\ 2.19.5*) ;;
5047 *\ \(GNU\ Binutils\)\ 2.[[2-9]]*) ;;
5048 *\ \(GNU\ Binutils\)\ [[3-9]]*) ;;
5049 *)
5050 lt_use_gnu_ld_interface=yes
5051 ;;
5052 esac
5053 ;;
5054 *)
5055 lt_use_gnu_ld_interface=yes
5056 ;;
5057 esac
5058 fi
5059
5060 if test yes = "$lt_use_gnu_ld_interface"; then
5061 # If archive_cmds runs LD, not CC, wlarc should be empty
5062 wlarc='$wl'
5063
5064 # Set some defaults for GNU ld with shared library support. These
5065 # are reset later if shared libraries are not supported. Putting them
5066 # here allows them to be overridden if necessary.
5067 runpath_var=LD_RUN_PATH
5068 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
5069 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
5070 # ancient GNU ld didn't support --whole-archive et. al.
5071 if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then
5072 _LT_TAGVAR(whole_archive_flag_spec, $1)=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive'
5073 else
5074 _LT_TAGVAR(whole_archive_flag_spec, $1)=
5075 fi
5076 supports_anon_versioning=no
5077 case `$LD -v | $SED -e 's/([^)]\+)\s\+//' 2>&1` in
5078 *GNU\ gold*) supports_anon_versioning=yes ;;
5079 *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.10.*) ;; # catch versions < 2.11
5080 *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ...
5081 *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ...
5082 *\ 2.11.*) ;; # other 2.11 versions
5083 *) supports_anon_versioning=yes ;;
5084 esac
5085
5086 # See if GNU ld supports shared libraries.
5087 case $host_os in
5088 aix[[3-9]]*)
5089 # On AIX/PPC, the GNU linker is very broken
5090 if test ia64 != "$host_cpu"; then
5091 _LT_TAGVAR(ld_shlibs, $1)=no
5092 cat <<_LT_EOF 1>&2
5093
5094 *** Warning: the GNU linker, at least up to release 2.19, is reported
5095 *** to be unable to reliably create shared libraries on AIX.
5096 *** Therefore, libtool is disabling shared libraries support. If you
5097 *** really care for shared libraries, you may want to install binutils
5098 *** 2.20 or above, or modify your PATH so that a non-GNU linker is found.
5099 *** You will then need to restart the configuration process.
5100
5101 _LT_EOF
5102 fi
5103 ;;
5104
5105 amigaos*)
5106 case $host_cpu in
5107 powerpc)
5108 # see comment about AmigaOS4 .so support
5109 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5110 _LT_TAGVAR(archive_expsym_cmds, $1)=''
5111 ;;
5112 m68k)
5113 _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)'
5114 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5115 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5116 ;;
5117 esac
5118 ;;
5119
5120 beos*)
5121 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
5122 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5123 # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
5124 # support --undefined. This deserves some investigation. FIXME
5125 _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5126 else
5127 _LT_TAGVAR(ld_shlibs, $1)=no
5128 fi
5129 ;;
5130
5131 cygwin* | mingw* | pw32* | cegcc*)
5132 # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
5133 # as there is no search path for DLLs.
5134 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5135 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-all-symbols'
5136 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5137 _LT_TAGVAR(always_export_symbols, $1)=no
5138 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
5139 _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'
5140 _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname']
5141
5142 if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
5143 _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'
5144 # If the export-symbols file already is a .def file, use it as
5145 # is; otherwise, prepend EXPORTS...
5146 _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then
5147 cp $export_symbols $output_objdir/$soname.def;
5148 else
5149 echo EXPORTS > $output_objdir/$soname.def;
5150 cat $export_symbols >> $output_objdir/$soname.def;
5151 fi~
5152 $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
5153 else
5154 _LT_TAGVAR(ld_shlibs, $1)=no
5155 fi
5156 ;;
5157
5158 haiku*)
5159 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5160 _LT_TAGVAR(link_all_deplibs, $1)=yes
5161 ;;
5162
5163 os2*)
5164 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5165 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5166 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5167 shrext_cmds=.dll
5168 _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
5169 $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
5170 $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
5171 $ECHO EXPORTS >> $output_objdir/$libname.def~
5172 emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~
5173 $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
5174 emximp -o $lib $output_objdir/$libname.def'
5175 _LT_TAGVAR(archive_expsym_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 prefix_cmds="$SED"~
5180 if test EXPORTS = "`$SED 1q $export_symbols`"; then
5181 prefix_cmds="$prefix_cmds -e 1d";
5182 fi~
5183 prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~
5184 cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~
5185 $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
5186 emximp -o $lib $output_objdir/$libname.def'
5187 _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'
5188 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
5189 ;;
5190
5191 interix[[3-9]]*)
5192 _LT_TAGVAR(hardcode_direct, $1)=no
5193 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5194 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
5195 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
5196 # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
5197 # Instead, shared libraries are loaded at an image base (0x10000000 by
5198 # default) and relocated if they conflict, which is a slow very memory
5199 # consuming and fragmenting process. To avoid this, we pick a random,
5200 # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
5201 # time. Moving up from 0x10000000 also allows more sbrk(2) space.
5202 _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'
5203 _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'
5204 ;;
5205
5206 gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)
5207 tmp_diet=no
5208 if test linux-dietlibc = "$host_os"; then
5209 case $cc_basename in
5210 diet\ *) tmp_diet=yes;; # linux-dietlibc with static linking (!diet-dyn)
5211 esac
5212 fi
5213 if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \
5214 && test no = "$tmp_diet"
5215 then
5216 tmp_addflag=' $pic_flag'
5217 tmp_sharedflag='-shared'
5218 case $cc_basename,$host_cpu in
5219 pgcc*) # Portland Group C compiler
5220 _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'
5221 tmp_addflag=' $pic_flag'
5222 ;;
5223 pgf77* | pgf90* | pgf95* | pgfortran*)
5224 # Portland Group f77 and f90 compilers
5225 _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'
5226 tmp_addflag=' $pic_flag -Mnomain' ;;
5227 ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64
5228 tmp_addflag=' -i_dynamic' ;;
5229 efc*,ia64* | ifort*,ia64*) # Intel Fortran compiler on ia64
5230 tmp_addflag=' -i_dynamic -nofor_main' ;;
5231 ifc* | ifort*) # Intel Fortran compiler
5232 tmp_addflag=' -nofor_main' ;;
5233 lf95*) # Lahey Fortran 8.1
5234 _LT_TAGVAR(whole_archive_flag_spec, $1)=
5235 tmp_sharedflag='--shared' ;;
5236 nagfor*) # NAGFOR 5.3
5237 tmp_sharedflag='-Wl,-shared' ;;
5238 xl[[cC]]* | bgxl[[cC]]* | mpixl[[cC]]*) # IBM XL C 8.0 on PPC (deal with xlf below)
5239 tmp_sharedflag='-qmkshrobj'
5240 tmp_addflag= ;;
5241 nvcc*) # Cuda Compiler Driver 2.2
5242 _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'
5243 _LT_TAGVAR(compiler_needs_object, $1)=yes
5244 ;;
5245 esac
5246 case `$CC -V 2>&1 | sed 5q` in
5247 *Sun\ C*) # Sun C 5.9
5248 _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'
5249 _LT_TAGVAR(compiler_needs_object, $1)=yes
5250 tmp_sharedflag='-G' ;;
5251 *Sun\ F*) # Sun Fortran 8.3
5252 tmp_sharedflag='-G' ;;
5253 esac
5254 _LT_TAGVAR(archive_cmds, $1)='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5255
5256 if test yes = "$supports_anon_versioning"; then
5257 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
5258 cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
5259 echo "local: *; };" >> $output_objdir/$libname.ver~
5260 $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib'
5261 fi
5262
5263 case $cc_basename in
5264 tcc*)
5265 _LT_TAGVAR(export_dynamic_flag_spec, $1)='-rdynamic'
5266 ;;
5267 xlf* | bgf* | bgxlf* | mpixlf*)
5268 # IBM XL Fortran 10.1 on PPC cannot create shared libs itself
5269 _LT_TAGVAR(whole_archive_flag_spec, $1)='--whole-archive$convenience --no-whole-archive'
5270 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
5271 _LT_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib'
5272 if test yes = "$supports_anon_versioning"; then
5273 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
5274 cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
5275 echo "local: *; };" >> $output_objdir/$libname.ver~
5276 $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
5277 fi
5278 ;;
5279 esac
5280 else
5281 _LT_TAGVAR(ld_shlibs, $1)=no
5282 fi
5283 ;;
5284
5285 netbsd* | netbsdelf*-gnu)
5286 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
5287 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
5288 wlarc=
5289 else
5290 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5291 _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'
5292 fi
5293 ;;
5294
5295 solaris*)
5296 if $LD -v 2>&1 | $GREP 'BFD 2\.8' > /dev/null; then
5297 _LT_TAGVAR(ld_shlibs, $1)=no
5298 cat <<_LT_EOF 1>&2
5299
5300 *** Warning: The releases 2.8.* of the GNU linker cannot reliably
5301 *** create shared libraries on Solaris systems. Therefore, libtool
5302 *** is disabling shared libraries support. We urge you to upgrade GNU
5303 *** binutils to release 2.9.1 or newer. Another option is to modify
5304 *** your PATH or compiler configuration so that the native linker is
5305 *** used, and then restart.
5306
5307 _LT_EOF
5308 elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
5309 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5310 _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'
5311 else
5312 _LT_TAGVAR(ld_shlibs, $1)=no
5313 fi
5314 ;;
5315
5316 sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*)
5317 case `$LD -v 2>&1` in
5318 *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.1[[0-5]].*)
5319 _LT_TAGVAR(ld_shlibs, $1)=no
5320 cat <<_LT_EOF 1>&2
5321
5322 *** Warning: Releases of the GNU linker prior to 2.16.91.0.3 cannot
5323 *** reliably create shared libraries on SCO systems. Therefore, libtool
5324 *** is disabling shared libraries support. We urge you to upgrade GNU
5325 *** binutils to release 2.16.91.0.3 or newer. Another option is to modify
5326 *** your PATH or compiler configuration so that the native linker is
5327 *** used, and then restart.
5328
5329 _LT_EOF
5330 ;;
5331 *)
5332 # For security reasons, it is highly recommended that you always
5333 # use absolute paths for naming shared libraries, and exclude the
5334 # DT_RUNPATH tag from executables and libraries. But doing so
5335 # requires that you compile everything twice, which is a pain.
5336 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
5337 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
5338 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5339 _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'
5340 else
5341 _LT_TAGVAR(ld_shlibs, $1)=no
5342 fi
5343 ;;
5344 esac
5345 ;;
5346
5347 sunos4*)
5348 _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags'
5349 wlarc=
5350 _LT_TAGVAR(hardcode_direct, $1)=yes
5351 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5352 ;;
5353
5354 *)
5355 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
5356 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5357 _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'
5358 else
5359 _LT_TAGVAR(ld_shlibs, $1)=no
5360 fi
5361 ;;
5362 esac
5363
5364 if test no = "$_LT_TAGVAR(ld_shlibs, $1)"; then
5365 runpath_var=
5366 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
5367 _LT_TAGVAR(export_dynamic_flag_spec, $1)=
5368 _LT_TAGVAR(whole_archive_flag_spec, $1)=
5369 fi
5370 else
5371 # PORTME fill in a description of your system's linker (not GNU ld)
5372 case $host_os in
5373 aix3*)
5374 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5375 _LT_TAGVAR(always_export_symbols, $1)=yes
5376 _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'
5377 # Note: this linker hardcodes the directories in LIBPATH if there
5378 # are no directories specified by -L.
5379 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5380 if test yes = "$GCC" && test -z "$lt_prog_compiler_static"; then
5381 # Neither direct hardcoding nor static linking is supported with a
5382 # broken collect2.
5383 _LT_TAGVAR(hardcode_direct, $1)=unsupported
5384 fi
5385 ;;
5386
5387 aix[[4-9]]*)
5388 if test ia64 = "$host_cpu"; then
5389 # On IA64, the linker does run time linking by default, so we don't
5390 # have to do anything special.
5391 aix_use_runtimelinking=no
5392 exp_sym_flag='-Bexport'
5393 no_entry_flag=
5394 else
5395 # If we're using GNU nm, then we don't want the "-C" option.
5396 # -C means demangle to GNU nm, but means don't demangle to AIX nm.
5397 # Without the "-l" option, or with the "-B" option, AIX nm treats
5398 # weak defined symbols like other global defined symbols, whereas
5399 # GNU nm marks them as "W".
5400 # While the 'weak' keyword is ignored in the Export File, we need
5401 # it in the Import File for the 'aix-soname' feature, so we have
5402 # to replace the "-B" option with "-P" for AIX nm.
5403 if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
5404 _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'
5405 else
5406 _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'
5407 fi
5408 aix_use_runtimelinking=no
5409
5410 # Test if we are trying to use run time linking or normal
5411 # AIX style linking. If -brtl is somewhere in LDFLAGS, we
5412 # have runtime linking enabled, and use it for executables.
5413 # For shared libraries, we enable/disable runtime linking
5414 # depending on the kind of the shared library created -
5415 # when "with_aix_soname,aix_use_runtimelinking" is:
5416 # "aix,no" lib.a(lib.so.V) shared, rtl:no, for executables
5417 # "aix,yes" lib.so shared, rtl:yes, for executables
5418 # lib.a static archive
5419 # "both,no" lib.so.V(shr.o) shared, rtl:yes
5420 # lib.a(lib.so.V) shared, rtl:no, for executables
5421 # "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables
5422 # lib.a(lib.so.V) shared, rtl:no
5423 # "svr4,*" lib.so.V(shr.o) shared, rtl:yes, for executables
5424 # lib.a static archive
5425 case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
5426 for ld_flag in $LDFLAGS; do
5427 if (test x-brtl = "x$ld_flag" || test x-Wl,-brtl = "x$ld_flag"); then
5428 aix_use_runtimelinking=yes
5429 break
5430 fi
5431 done
5432 if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then
5433 # With aix-soname=svr4, we create the lib.so.V shared archives only,
5434 # so we don't have lib.a shared libs to link our executables.
5435 # We have to force runtime linking in this case.
5436 aix_use_runtimelinking=yes
5437 LDFLAGS="$LDFLAGS -Wl,-brtl"
5438 fi
5439 ;;
5440 esac
5441
5442 exp_sym_flag='-bexport'
5443 no_entry_flag='-bnoentry'
5444 fi
5445
5446 # When large executables or shared objects are built, AIX ld can
5447 # have problems creating the table of contents. If linking a library
5448 # or program results in "error TOC overflow" add -mminimal-toc to
5449 # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
5450 # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
5451
5452 _LT_TAGVAR(archive_cmds, $1)=''
5453 _LT_TAGVAR(hardcode_direct, $1)=yes
5454 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
5455 _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
5456 _LT_TAGVAR(link_all_deplibs, $1)=yes
5457 _LT_TAGVAR(file_list_spec, $1)='$wl-f,'
5458 case $with_aix_soname,$aix_use_runtimelinking in
5459 aix,*) ;; # traditional, no import file
5460 svr4,* | *,yes) # use import file
5461 # The Import File defines what to hardcode.
5462 _LT_TAGVAR(hardcode_direct, $1)=no
5463 _LT_TAGVAR(hardcode_direct_absolute, $1)=no
5464 ;;
5465 esac
5466
5467 if test yes = "$GCC"; then
5468 case $host_os in aix4.[[012]]|aix4.[[012]].*)
5469 # We only want to do this on AIX 4.2 and lower, the check
5470 # below for broken collect2 doesn't work under 4.3+
5471 collect2name=`$CC -print-prog-name=collect2`
5472 if test -f "$collect2name" &&
5473 strings "$collect2name" | $GREP resolve_lib_name >/dev/null
5474 then
5475 # We have reworked collect2
5476 :
5477 else
5478 # We have old collect2
5479 _LT_TAGVAR(hardcode_direct, $1)=unsupported
5480 # It fails to find uninstalled libraries when the uninstalled
5481 # path is not listed in the libpath. Setting hardcode_minus_L
5482 # to unsupported forces relinking
5483 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5484 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5485 _LT_TAGVAR(hardcode_libdir_separator, $1)=
5486 fi
5487 ;;
5488 esac
5489 shared_flag='-shared'
5490 if test yes = "$aix_use_runtimelinking"; then
5491 shared_flag="$shared_flag "'$wl-G'
5492 fi
5493 # Need to ensure runtime linking is disabled for the traditional
5494 # shared library, or the linker may eventually find shared libraries
5495 # /with/ Import File - we do not want to mix them.
5496 shared_flag_aix='-shared'
5497 shared_flag_svr4='-shared $wl-G'
5498 else
5499 # not using gcc
5500 if test ia64 = "$host_cpu"; then
5501 # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
5502 # chokes on -Wl,-G. The following line is correct:
5503 shared_flag='-G'
5504 else
5505 if test yes = "$aix_use_runtimelinking"; then
5506 shared_flag='$wl-G'
5507 else
5508 shared_flag='$wl-bM:SRE'
5509 fi
5510 shared_flag_aix='$wl-bM:SRE'
5511 shared_flag_svr4='$wl-G'
5512 fi
5513 fi
5514
5515 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-bexpall'
5516 # It seems that -bexpall does not export symbols beginning with
5517 # underscore (_), so it is better to generate a list of symbols to export.
5518 _LT_TAGVAR(always_export_symbols, $1)=yes
5519 if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then
5520 # Warning - without using the other runtime loading flags (-brtl),
5521 # -berok will link without error, but may produce a broken library.
5522 _LT_TAGVAR(allow_undefined_flag, $1)='-berok'
5523 # Determine the default libpath from the value encoded in an
5524 # empty executable.
5525 _LT_SYS_MODULE_PATH_AIX([$1])
5526 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath"
5527 _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
5528 else
5529 if test ia64 = "$host_cpu"; then
5530 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $libdir:/usr/lib:/lib'
5531 _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
5532 _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"
5533 else
5534 # Determine the default libpath from the value encoded in an
5535 # empty executable.
5536 _LT_SYS_MODULE_PATH_AIX([$1])
5537 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath"
5538 # Warning - without using the other run time loading flags,
5539 # -berok will link without error, but may produce a broken library.
5540 _LT_TAGVAR(no_undefined_flag, $1)=' $wl-bernotok'
5541 _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-berok'
5542 if test yes = "$with_gnu_ld"; then
5543 # We only use this code for GNU lds that support --whole-archive.
5544 _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive'
5545 else
5546 # Exported symbols can be pulled into shared objects from archives
5547 _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
5548 fi
5549 _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
5550 _LT_TAGVAR(archive_expsym_cmds, $1)='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d'
5551 # -brtl affects multiple linker settings, -berok does not and is overridden later
5552 compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([[, ]]\\)%-berok\\1%g"`'
5553 if test svr4 != "$with_aix_soname"; then
5554 # This is similar to how AIX traditionally builds its shared libraries.
5555 _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'
5556 fi
5557 if test aix != "$with_aix_soname"; then
5558 _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'
5559 else
5560 # used by -dlpreopen to get the symbols
5561 _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$MV $output_objdir/$realname.d/$soname $output_objdir'
5562 fi
5563 _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$RM -r $output_objdir/$realname.d'
5564 fi
5565 fi
5566 ;;
5567
5568 amigaos*)
5569 case $host_cpu in
5570 powerpc)
5571 # see comment about AmigaOS4 .so support
5572 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
5573 _LT_TAGVAR(archive_expsym_cmds, $1)=''
5574 ;;
5575 m68k)
5576 _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)'
5577 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5578 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5579 ;;
5580 esac
5581 ;;
5582
5583 bsdi[[45]]*)
5584 _LT_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic
5585 ;;
5586
5587 cygwin* | mingw* | pw32* | cegcc*)
5588 # When not using gcc, we currently assume that we are using
5589 # Microsoft Visual C++.
5590 # hardcode_libdir_flag_spec is actually meaningless, as there is
5591 # no search path for DLLs.
5592 case $cc_basename in
5593 cl*)
5594 # Native MSVC
5595 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
5596 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5597 _LT_TAGVAR(always_export_symbols, $1)=yes
5598 _LT_TAGVAR(file_list_spec, $1)='@'
5599 # Tell ltmain to make .lib files, not .a files.
5600 libext=lib
5601 # Tell ltmain to make .dll files, not .so files.
5602 shrext_cmds=.dll
5603 # FIXME: Setting linknames here is a bad hack.
5604 _LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames='
5605 _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then
5606 cp "$export_symbols" "$output_objdir/$soname.def";
5607 echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp";
5608 else
5609 $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp;
5610 fi~
5611 $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
5612 linknames='
5613 # The linker will not automatically build a static lib if we build a DLL.
5614 # _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
5615 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
5616 _LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*'
5617 _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'
5618 # Don't use ranlib
5619 _LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib'
5620 _LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~
5621 lt_tool_outputfile="@TOOL_OUTPUT@"~
5622 case $lt_outputfile in
5623 *.exe|*.EXE) ;;
5624 *)
5625 lt_outputfile=$lt_outputfile.exe
5626 lt_tool_outputfile=$lt_tool_outputfile.exe
5627 ;;
5628 esac~
5629 if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then
5630 $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
5631 $RM "$lt_outputfile.manifest";
5632 fi'
5633 ;;
5634 *)
5635 # Assume MSVC wrapper
5636 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
5637 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5638 # Tell ltmain to make .lib files, not .a files.
5639 libext=lib
5640 # Tell ltmain to make .dll files, not .so files.
5641 shrext_cmds=.dll
5642 # FIXME: Setting linknames here is a bad hack.
5643 _LT_TAGVAR(archive_cmds, $1)='$CC -o $lib $libobjs $compiler_flags `func_echo_all "$deplibs" | $SED '\''s/ -lc$//'\''` -link -dll~linknames='
5644 # The linker will automatically build a .lib file if we build a DLL.
5645 _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
5646 # FIXME: Should let the user specify the lib program.
5647 _LT_TAGVAR(old_archive_cmds, $1)='lib -OUT:$oldlib$oldobjs$old_deplibs'
5648 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
5649 ;;
5650 esac
5651 ;;
5652
5653 darwin* | rhapsody*)
5654 _LT_DARWIN_LINKER_FEATURES($1)
5655 ;;
5656
5657 dgux*)
5658 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5659 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5660 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5661 ;;
5662
5663 # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
5664 # support. Future versions do this automatically, but an explicit c++rt0.o
5665 # does not break anything, and helps significantly (at the cost of a little
5666 # extra space).
5667 freebsd2.2*)
5668 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o'
5669 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5670 _LT_TAGVAR(hardcode_direct, $1)=yes
5671 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5672 ;;
5673
5674 # Unfortunately, older versions of FreeBSD 2 do not have this feature.
5675 freebsd2.*)
5676 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
5677 _LT_TAGVAR(hardcode_direct, $1)=yes
5678 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5679 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5680 ;;
5681
5682 # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
5683 freebsd* | dragonfly*)
5684 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
5685 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5686 _LT_TAGVAR(hardcode_direct, $1)=yes
5687 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5688 ;;
5689
5690 hpux9*)
5691 if test yes = "$GCC"; then
5692 _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'
5693 else
5694 _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'
5695 fi
5696 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
5697 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5698 _LT_TAGVAR(hardcode_direct, $1)=yes
5699
5700 # hardcode_minus_L: Not really in the search PATH,
5701 # but as the default location of the library.
5702 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5703 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
5704 ;;
5705
5706 hpux10*)
5707 if test yes,no = "$GCC,$with_gnu_ld"; then
5708 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
5709 else
5710 _LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
5711 fi
5712 if test no = "$with_gnu_ld"; then
5713 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
5714 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5715 _LT_TAGVAR(hardcode_direct, $1)=yes
5716 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
5717 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
5718 # hardcode_minus_L: Not really in the search PATH,
5719 # but as the default location of the library.
5720 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5721 fi
5722 ;;
5723
5724 hpux11*)
5725 if test yes,no = "$GCC,$with_gnu_ld"; then
5726 case $host_cpu in
5727 hppa*64*)
5728 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'
5729 ;;
5730 ia64*)
5731 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
5732 ;;
5733 *)
5734 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
5735 ;;
5736 esac
5737 else
5738 case $host_cpu in
5739 hppa*64*)
5740 _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'
5741 ;;
5742 ia64*)
5743 _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
5744 ;;
5745 *)
5746 m4_if($1, [], [
5747 # Older versions of the 11.00 compiler do not understand -b yet
5748 # (HP92453-01 A.11.01.20 doesn't, HP92453-01 B.11.X.35175-35176.GP does)
5749 _LT_LINKER_OPTION([if $CC understands -b],
5750 _LT_TAGVAR(lt_cv_prog_compiler__b, $1), [-b],
5751 [_LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'],
5752 [_LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'])],
5753 [_LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'])
5754 ;;
5755 esac
5756 fi
5757 if test no = "$with_gnu_ld"; then
5758 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
5759 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5760
5761 case $host_cpu in
5762 hppa*64*|ia64*)
5763 _LT_TAGVAR(hardcode_direct, $1)=no
5764 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5765 ;;
5766 *)
5767 _LT_TAGVAR(hardcode_direct, $1)=yes
5768 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
5769 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
5770
5771 # hardcode_minus_L: Not really in the search PATH,
5772 # but as the default location of the library.
5773 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5774 ;;
5775 esac
5776 fi
5777 ;;
5778
5779 irix5* | irix6* | nonstopux*)
5780 if test yes = "$GCC"; then
5781 _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'
5782 # Try to use the -exported_symbol ld option, if it does not
5783 # work, assume that -exports_file does not work either and
5784 # implicitly export all symbols.
5785 # This should be the same for all languages, so no per-tag cache variable.
5786 AC_CACHE_CHECK([whether the $host_os linker accepts -exported_symbol],
5787 [lt_cv_irix_exported_symbol],
5788 [save_LDFLAGS=$LDFLAGS
5789 LDFLAGS="$LDFLAGS -shared $wl-exported_symbol ${wl}foo $wl-update_registry $wl/dev/null"
5790 AC_LINK_IFELSE(
5791 [AC_LANG_SOURCE(
5792 [AC_LANG_CASE([C], [[int foo (void) { return 0; }]],
5793 [C++], [[int foo (void) { return 0; }]],
5794 [Fortran 77], [[
5795 subroutine foo
5796 end]],
5797 [Fortran], [[
5798 subroutine foo
5799 end]])])],
5800 [lt_cv_irix_exported_symbol=yes],
5801 [lt_cv_irix_exported_symbol=no])
5802 LDFLAGS=$save_LDFLAGS])
5803 if test yes = "$lt_cv_irix_exported_symbol"; then
5804 _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'
5805 fi
5806 _LT_TAGVAR(link_all_deplibs, $1)=no
5807 else
5808 _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'
5809 _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'
5810 fi
5811 _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
5812 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
5813 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5814 _LT_TAGVAR(inherit_rpath, $1)=yes
5815 _LT_TAGVAR(link_all_deplibs, $1)=yes
5816 ;;
5817
5818 linux*)
5819 case $cc_basename in
5820 tcc*)
5821 # Fabrice Bellard et al's Tiny C Compiler
5822 _LT_TAGVAR(ld_shlibs, $1)=yes
5823 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
5824 ;;
5825 esac
5826 ;;
5827
5828 netbsd* | netbsdelf*-gnu)
5829 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
5830 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out
5831 else
5832 _LT_TAGVAR(archive_cmds, $1)='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF
5833 fi
5834 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5835 _LT_TAGVAR(hardcode_direct, $1)=yes
5836 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5837 ;;
5838
5839 newsos6)
5840 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5841 _LT_TAGVAR(hardcode_direct, $1)=yes
5842 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
5843 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5844 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5845 ;;
5846
5847 *nto* | *qnx*)
5848 ;;
5849
5850 openbsd* | bitrig*)
5851 if test -f /usr/libexec/ld.so; then
5852 _LT_TAGVAR(hardcode_direct, $1)=yes
5853 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5854 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
5855 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then
5856 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
5857 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags $wl-retain-symbols-file,$export_symbols'
5858 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
5859 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
5860 else
5861 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
5862 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
5863 fi
5864 else
5865 _LT_TAGVAR(ld_shlibs, $1)=no
5866 fi
5867 ;;
5868
5869 os2*)
5870 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5871 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5872 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
5873 shrext_cmds=.dll
5874 _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
5875 $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
5876 $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
5877 $ECHO EXPORTS >> $output_objdir/$libname.def~
5878 emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~
5879 $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
5880 emximp -o $lib $output_objdir/$libname.def'
5881 _LT_TAGVAR(archive_expsym_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 prefix_cmds="$SED"~
5886 if test EXPORTS = "`$SED 1q $export_symbols`"; then
5887 prefix_cmds="$prefix_cmds -e 1d";
5888 fi~
5889 prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~
5890 cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~
5891 $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
5892 emximp -o $lib $output_objdir/$libname.def'
5893 _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'
5894 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
5895 ;;
5896
5897 osf3*)
5898 if test yes = "$GCC"; then
5899 _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*'
5900 _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'
5901 else
5902 _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
5903 _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'
5904 fi
5905 _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
5906 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
5907 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5908 ;;
5909
5910 osf4* | osf5*) # as osf3* with the addition of -msym flag
5911 if test yes = "$GCC"; then
5912 _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*'
5913 _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'
5914 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
5915 else
5916 _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
5917 _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'
5918 _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~
5919 $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'
5920
5921 # Both c and cxx compiler support -rpath directly
5922 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
5923 fi
5924 _LT_TAGVAR(archive_cmds_need_lc, $1)='no'
5925 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
5926 ;;
5927
5928 solaris*)
5929 _LT_TAGVAR(no_undefined_flag, $1)=' -z defs'
5930 if test yes = "$GCC"; then
5931 wlarc='$wl'
5932 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl-z ${wl}text $wl-h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'
5933 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
5934 $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'
5935 else
5936 case `$CC -V 2>&1` in
5937 *"Compilers 5.0"*)
5938 wlarc=''
5939 _LT_TAGVAR(archive_cmds, $1)='$LD -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $linker_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 $LD -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp'
5942 ;;
5943 *)
5944 wlarc='$wl'
5945 _LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $compiler_flags'
5946 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
5947 $CC -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
5948 ;;
5949 esac
5950 fi
5951 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
5952 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5953 case $host_os in
5954 solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
5955 *)
5956 # The compiler driver will combine and reorder linker options,
5957 # but understands '-z linker_flag'. GCC discards it without '$wl',
5958 # but is careful enough not to reorder.
5959 # Supported since Solaris 2.6 (maybe 2.5.1?)
5960 if test yes = "$GCC"; then
5961 _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract'
5962 else
5963 _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
5964 fi
5965 ;;
5966 esac
5967 _LT_TAGVAR(link_all_deplibs, $1)=yes
5968 ;;
5969
5970 sunos4*)
5971 if test sequent = "$host_vendor"; then
5972 # Use $CC to link under sequent, because it throws in some extra .o
5973 # files that make .init and .fini sections work.
5974 _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h $soname -o $lib $libobjs $deplibs $compiler_flags'
5975 else
5976 _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags'
5977 fi
5978 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
5979 _LT_TAGVAR(hardcode_direct, $1)=yes
5980 _LT_TAGVAR(hardcode_minus_L, $1)=yes
5981 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
5982 ;;
5983
5984 sysv4)
5985 case $host_vendor in
5986 sni)
5987 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5988 _LT_TAGVAR(hardcode_direct, $1)=yes # is this really true???
5989 ;;
5990 siemens)
5991 ## LD is ld it makes a PLAMLIB
5992 ## CC just makes a GrossModule.
5993 _LT_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags'
5994 _LT_TAGVAR(reload_cmds, $1)='$CC -r -o $output$reload_objs'
5995 _LT_TAGVAR(hardcode_direct, $1)=no
5996 ;;
5997 motorola)
5998 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
5999 _LT_TAGVAR(hardcode_direct, $1)=no #Motorola manual says yes, but my tests say they lie
6000 ;;
6001 esac
6002 runpath_var='LD_RUN_PATH'
6003 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6004 ;;
6005
6006 sysv4.3*)
6007 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
6008 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6009 _LT_TAGVAR(export_dynamic_flag_spec, $1)='-Bexport'
6010 ;;
6011
6012 sysv4*MP*)
6013 if test -d /usr/nec; then
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 runpath_var=LD_RUN_PATH
6017 hardcode_runpath_var=yes
6018 _LT_TAGVAR(ld_shlibs, $1)=yes
6019 fi
6020 ;;
6021
6022 sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
6023 _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text'
6024 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
6025 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6026 runpath_var='LD_RUN_PATH'
6027
6028 if test yes = "$GCC"; then
6029 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6030 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6031 else
6032 _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6033 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6034 fi
6035 ;;
6036
6037 sysv5* | sco3.2v5* | sco5v6*)
6038 # Note: We CANNOT use -z defs as we might desire, because we do not
6039 # link with -lc, and that would cause any symbols used from libc to
6040 # always be unresolved, which means just about no library would
6041 # ever link correctly. If we're not using GNU ld we use -z text
6042 # though, which does catch some bad symbols but isn't as heavy-handed
6043 # as -z defs.
6044 _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text'
6045 _LT_TAGVAR(allow_undefined_flag, $1)='$wl-z,nodefs'
6046 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
6047 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6048 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R,$libdir'
6049 _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
6050 _LT_TAGVAR(link_all_deplibs, $1)=yes
6051 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-Bexport'
6052 runpath_var='LD_RUN_PATH'
6053
6054 if test yes = "$GCC"; then
6055 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6056 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6057 else
6058 _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6059 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
6060 fi
6061 ;;
6062
6063 uts4*)
6064 _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
6065 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
6066 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6067 ;;
6068
6069 *)
6070 _LT_TAGVAR(ld_shlibs, $1)=no
6071 ;;
6072 esac
6073
6074 if test sni = "$host_vendor"; then
6075 case $host in
6076 sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
6077 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-Blargedynsym'
6078 ;;
6079 esac
6080 fi
6081 fi
6082 ])
6083 AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
6084 test no = "$_LT_TAGVAR(ld_shlibs, $1)" && can_build_shared=no
6085
6086 _LT_TAGVAR(with_gnu_ld, $1)=$with_gnu_ld
6087
6088 _LT_DECL([], [libext], [0], [Old archive suffix (normally "a")])dnl
6089 _LT_DECL([], [shrext_cmds], [1], [Shared library suffix (normally ".so")])dnl
6090 _LT_DECL([], [extract_expsyms_cmds], [2],
6091 [The commands to extract the exported symbol list from a shared archive])
6092
6093 #
6094 # Do we need to explicitly link libc?
6095 #
6096 case "x$_LT_TAGVAR(archive_cmds_need_lc, $1)" in
6097 x|xyes)
6098 # Assume -lc should be added
6099 _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
6100
6101 if test yes,yes = "$GCC,$enable_shared"; then
6102 case $_LT_TAGVAR(archive_cmds, $1) in
6103 *'~'*)
6104 # FIXME: we may have to deal with multi-command sequences.
6105 ;;
6106 '$CC '*)
6107 # Test whether the compiler implicitly links with -lc since on some
6108 # systems, -lgcc has to come before -lc. If gcc already passes -lc
6109 # to ld, don't add -lc before -lgcc.
6110 AC_CACHE_CHECK([whether -lc should be explicitly linked in],
6111 [lt_cv_]_LT_TAGVAR(archive_cmds_need_lc, $1),
6112 [$RM conftest*
6113 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
6114
6115 if AC_TRY_EVAL(ac_compile) 2>conftest.err; then
6116 soname=conftest
6117 lib=conftest
6118 libobjs=conftest.$ac_objext
6119 deplibs=
6120 wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1)
6121 pic_flag=$_LT_TAGVAR(lt_prog_compiler_pic, $1)
6122 compiler_flags=-v
6123 linker_flags=-v
6124 verstring=
6125 output_objdir=.
6126 libname=conftest
6127 lt_save_allow_undefined_flag=$_LT_TAGVAR(allow_undefined_flag, $1)
6128 _LT_TAGVAR(allow_undefined_flag, $1)=
6129 if AC_TRY_EVAL(_LT_TAGVAR(archive_cmds, $1) 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1)
6130 then
6131 lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=no
6132 else
6133 lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=yes
6134 fi
6135 _LT_TAGVAR(allow_undefined_flag, $1)=$lt_save_allow_undefined_flag
6136 else
6137 cat conftest.err 1>&5
6138 fi
6139 $RM conftest*
6140 ])
6141 _LT_TAGVAR(archive_cmds_need_lc, $1)=$lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)
6142 ;;
6143 esac
6144 fi
6145 ;;
6146 esac
6147
6148 _LT_TAGDECL([build_libtool_need_lc], [archive_cmds_need_lc], [0],
6149 [Whether or not to add -lc for building shared libraries])
6150 _LT_TAGDECL([allow_libtool_libs_with_static_runtimes],
6151 [enable_shared_with_static_runtimes], [0],
6152 [Whether or not to disallow shared libs when runtime libs are static])
6153 _LT_TAGDECL([], [export_dynamic_flag_spec], [1],
6154 [Compiler flag to allow reflexive dlopens])
6155 _LT_TAGDECL([], [whole_archive_flag_spec], [1],
6156 [Compiler flag to generate shared objects directly from archives])
6157 _LT_TAGDECL([], [compiler_needs_object], [1],
6158 [Whether the compiler copes with passing no objects directly])
6159 _LT_TAGDECL([], [old_archive_from_new_cmds], [2],
6160 [Create an old-style archive from a shared archive])
6161 _LT_TAGDECL([], [old_archive_from_expsyms_cmds], [2],
6162 [Create a temporary old-style archive to link instead of a shared archive])
6163 _LT_TAGDECL([], [archive_cmds], [2], [Commands used to build a shared archive])
6164 _LT_TAGDECL([], [archive_expsym_cmds], [2])
6165 _LT_TAGDECL([], [module_cmds], [2],
6166 [Commands used to build a loadable module if different from building
6167 a shared archive.])
6168 _LT_TAGDECL([], [module_expsym_cmds], [2])
6169 _LT_TAGDECL([], [with_gnu_ld], [1],
6170 [Whether we are building with GNU ld or not])
6171 _LT_TAGDECL([], [allow_undefined_flag], [1],
6172 [Flag that allows shared libraries with undefined symbols to be built])
6173 _LT_TAGDECL([], [no_undefined_flag], [1],
6174 [Flag that enforces no undefined symbols])
6175 _LT_TAGDECL([], [hardcode_libdir_flag_spec], [1],
6176 [Flag to hardcode $libdir into a binary during linking.
6177 This must work even if $libdir does not exist])
6178 _LT_TAGDECL([], [hardcode_libdir_separator], [1],
6179 [Whether we need a single "-rpath" flag with a separated argument])
6180 _LT_TAGDECL([], [hardcode_direct], [0],
6181 [Set to "yes" if using DIR/libNAME$shared_ext during linking hardcodes
6182 DIR into the resulting binary])
6183 _LT_TAGDECL([], [hardcode_direct_absolute], [0],
6184 [Set to "yes" if using DIR/libNAME$shared_ext during linking hardcodes
6185 DIR into the resulting binary and the resulting library dependency is
6186 "absolute", i.e impossible to change by setting $shlibpath_var if the
6187 library is relocated])
6188 _LT_TAGDECL([], [hardcode_minus_L], [0],
6189 [Set to "yes" if using the -LDIR flag during linking hardcodes DIR
6190 into the resulting binary])
6191 _LT_TAGDECL([], [hardcode_shlibpath_var], [0],
6192 [Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR
6193 into the resulting binary])
6194 _LT_TAGDECL([], [hardcode_automatic], [0],
6195 [Set to "yes" if building a shared library automatically hardcodes DIR
6196 into the library and all subsequent libraries and executables linked
6197 against it])
6198 _LT_TAGDECL([], [inherit_rpath], [0],
6199 [Set to yes if linker adds runtime paths of dependent libraries
6200 to runtime path list])
6201 _LT_TAGDECL([], [link_all_deplibs], [0],
6202 [Whether libtool must link a program against all its dependency libraries])
6203 _LT_TAGDECL([], [always_export_symbols], [0],
6204 [Set to "yes" if exported symbols are required])
6205 _LT_TAGDECL([], [export_symbols_cmds], [2],
6206 [The commands to list exported symbols])
6207 _LT_TAGDECL([], [exclude_expsyms], [1],
6208 [Symbols that should not be listed in the preloaded symbols])
6209 _LT_TAGDECL([], [include_expsyms], [1],
6210 [Symbols that must always be exported])
6211 _LT_TAGDECL([], [prelink_cmds], [2],
6212 [Commands necessary for linking programs (against libraries) with templates])
6213 _LT_TAGDECL([], [postlink_cmds], [2],
6214 [Commands necessary for finishing linking programs])
6215 _LT_TAGDECL([], [file_list_spec], [1],
6216 [Specify filename containing input files])
6217 dnl FIXME: Not yet implemented
6218 dnl _LT_TAGDECL([], [thread_safe_flag_spec], [1],
6219 dnl [Compiler flag to generate thread safe objects])
6220 ])# _LT_LINKER_SHLIBS
6221
6222
6223 # _LT_LANG_C_CONFIG([TAG])
6224 # ------------------------
6225 # Ensure that the configuration variables for a C compiler are suitably
6226 # defined. These variables are subsequently used by _LT_CONFIG to write
6227 # the compiler configuration to 'libtool'.
6228 m4_defun([_LT_LANG_C_CONFIG],
6229 [m4_require([_LT_DECL_EGREP])dnl
6230 lt_save_CC=$CC
6231 AC_LANG_PUSH(C)
6232
6233 # Source file extension for C test sources.
6234 ac_ext=c
6235
6236 # Object file extension for compiled C test sources.
6237 objext=o
6238 _LT_TAGVAR(objext, $1)=$objext
6239
6240 # Code to be used in simple compile tests
6241 lt_simple_compile_test_code="int some_variable = 0;"
6242
6243 # Code to be used in simple link tests
6244 lt_simple_link_test_code='int main(){return(0);}'
6245
6246 _LT_TAG_COMPILER
6247 # Save the default compiler, since it gets overwritten when the other
6248 # tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP.
6249 compiler_DEFAULT=$CC
6250
6251 # save warnings/boilerplate of simple test code
6252 _LT_COMPILER_BOILERPLATE
6253 _LT_LINKER_BOILERPLATE
6254
6255 if test -n "$compiler"; then
6256 _LT_COMPILER_NO_RTTI($1)
6257 _LT_COMPILER_PIC($1)
6258 _LT_COMPILER_C_O($1)
6259 _LT_COMPILER_FILE_LOCKS($1)
6260 _LT_LINKER_SHLIBS($1)
6261 _LT_SYS_DYNAMIC_LINKER($1)
6262 _LT_LINKER_HARDCODE_LIBPATH($1)
6263 LT_SYS_DLOPEN_SELF
6264 _LT_CMD_STRIPLIB
6265
6266 # Report what library types will actually be built
6267 AC_MSG_CHECKING([if libtool supports shared libraries])
6268 AC_MSG_RESULT([$can_build_shared])
6269
6270 AC_MSG_CHECKING([whether to build shared libraries])
6271 test no = "$can_build_shared" && enable_shared=no
6272
6273 # On AIX, shared libraries and static libraries use the same namespace, and
6274 # are all built from PIC.
6275 case $host_os in
6276 aix3*)
6277 test yes = "$enable_shared" && enable_static=no
6278 if test -n "$RANLIB"; then
6279 archive_cmds="$archive_cmds~\$RANLIB \$lib"
6280 postinstall_cmds='$RANLIB $lib'
6281 fi
6282 ;;
6283
6284 aix[[4-9]]*)
6285 if test ia64 != "$host_cpu"; then
6286 case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in
6287 yes,aix,yes) ;; # shared object as lib.so file only
6288 yes,svr4,*) ;; # shared object as lib.so archive member only
6289 yes,*) enable_static=no ;; # shared object in lib.a archive as well
6290 esac
6291 fi
6292 ;;
6293 esac
6294 AC_MSG_RESULT([$enable_shared])
6295
6296 AC_MSG_CHECKING([whether to build static libraries])
6297 # Make sure either enable_shared or enable_static is yes.
6298 test yes = "$enable_shared" || enable_static=yes
6299 AC_MSG_RESULT([$enable_static])
6300
6301 _LT_CONFIG($1)
6302 fi
6303 AC_LANG_POP
6304 CC=$lt_save_CC
6305 ])# _LT_LANG_C_CONFIG
6306
6307
6308 # _LT_LANG_CXX_CONFIG([TAG])
6309 # --------------------------
6310 # Ensure that the configuration variables for a C++ compiler are suitably
6311 # defined. These variables are subsequently used by _LT_CONFIG to write
6312 # the compiler configuration to 'libtool'.
6313 m4_defun([_LT_LANG_CXX_CONFIG],
6314 [m4_require([_LT_FILEUTILS_DEFAULTS])dnl
6315 m4_require([_LT_DECL_EGREP])dnl
6316 m4_require([_LT_PATH_MANIFEST_TOOL])dnl
6317 if test -n "$CXX" && ( test no != "$CXX" &&
6318 ( (test g++ = "$CXX" && `g++ -v >/dev/null 2>&1` ) ||
6319 (test g++ != "$CXX"))); then
6320 AC_PROG_CXXCPP
6321 else
6322 _lt_caught_CXX_error=yes
6323 fi
6324
6325 AC_LANG_PUSH(C++)
6326 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
6327 _LT_TAGVAR(allow_undefined_flag, $1)=
6328 _LT_TAGVAR(always_export_symbols, $1)=no
6329 _LT_TAGVAR(archive_expsym_cmds, $1)=
6330 _LT_TAGVAR(compiler_needs_object, $1)=no
6331 _LT_TAGVAR(export_dynamic_flag_spec, $1)=
6332 _LT_TAGVAR(hardcode_direct, $1)=no
6333 _LT_TAGVAR(hardcode_direct_absolute, $1)=no
6334 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
6335 _LT_TAGVAR(hardcode_libdir_separator, $1)=
6336 _LT_TAGVAR(hardcode_minus_L, $1)=no
6337 _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
6338 _LT_TAGVAR(hardcode_automatic, $1)=no
6339 _LT_TAGVAR(inherit_rpath, $1)=no
6340 _LT_TAGVAR(module_cmds, $1)=
6341 _LT_TAGVAR(module_expsym_cmds, $1)=
6342 _LT_TAGVAR(link_all_deplibs, $1)=unknown
6343 _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
6344 _LT_TAGVAR(reload_flag, $1)=$reload_flag
6345 _LT_TAGVAR(reload_cmds, $1)=$reload_cmds
6346 _LT_TAGVAR(no_undefined_flag, $1)=
6347 _LT_TAGVAR(whole_archive_flag_spec, $1)=
6348 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
6349
6350 # Source file extension for C++ test sources.
6351 ac_ext=cpp
6352
6353 # Object file extension for compiled C++ test sources.
6354 objext=o
6355 _LT_TAGVAR(objext, $1)=$objext
6356
6357 # No sense in running all these tests if we already determined that
6358 # the CXX compiler isn't working. Some variables (like enable_shared)
6359 # are currently assumed to apply to all compilers on this platform,
6360 # and will be corrupted by setting them based on a non-working compiler.
6361 if test yes != "$_lt_caught_CXX_error"; then
6362 # Code to be used in simple compile tests
6363 lt_simple_compile_test_code="int some_variable = 0;"
6364
6365 # Code to be used in simple link tests
6366 lt_simple_link_test_code='int main(int, char *[[]]) { return(0); }'
6367
6368 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
6369 _LT_TAG_COMPILER
6370
6371 # save warnings/boilerplate of simple test code
6372 _LT_COMPILER_BOILERPLATE
6373 _LT_LINKER_BOILERPLATE
6374
6375 # Allow CC to be a program name with arguments.
6376 lt_save_CC=$CC
6377 lt_save_CFLAGS=$CFLAGS
6378 lt_save_LD=$LD
6379 lt_save_GCC=$GCC
6380 GCC=$GXX
6381 lt_save_with_gnu_ld=$with_gnu_ld
6382 lt_save_path_LD=$lt_cv_path_LD
6383 if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then
6384 lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx
6385 else
6386 $as_unset lt_cv_prog_gnu_ld
6387 fi
6388 if test -n "${lt_cv_path_LDCXX+set}"; then
6389 lt_cv_path_LD=$lt_cv_path_LDCXX
6390 else
6391 $as_unset lt_cv_path_LD
6392 fi
6393 test -z "${LDCXX+set}" || LD=$LDCXX
6394 CC=${CXX-"c++"}
6395 CFLAGS=$CXXFLAGS
6396 compiler=$CC
6397 _LT_TAGVAR(compiler, $1)=$CC
6398 _LT_CC_BASENAME([$compiler])
6399
6400 if test -n "$compiler"; then
6401 # We don't want -fno-exception when compiling C++ code, so set the
6402 # no_builtin_flag separately
6403 if test yes = "$GXX"; then
6404 _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin'
6405 else
6406 _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=
6407 fi
6408
6409 if test yes = "$GXX"; then
6410 # Set up default GNU C++ configuration
6411
6412 LT_PATH_LD
6413
6414 # Check if GNU C++ uses GNU ld as the underlying linker, since the
6415 # archiving commands below assume that GNU ld is being used.
6416 if test yes = "$with_gnu_ld"; then
6417 _LT_TAGVAR(archive_cmds, $1)='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
6418 _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'
6419
6420 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
6421 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
6422
6423 # If archive_cmds runs LD, not CC, wlarc should be empty
6424 # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to
6425 # investigate it a little bit more. (MM)
6426 wlarc='$wl'
6427
6428 # ancient GNU ld didn't support --whole-archive et. al.
6429 if eval "`$CC -print-prog-name=ld` --help 2>&1" |
6430 $GREP 'no-whole-archive' > /dev/null; then
6431 _LT_TAGVAR(whole_archive_flag_spec, $1)=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive'
6432 else
6433 _LT_TAGVAR(whole_archive_flag_spec, $1)=
6434 fi
6435 else
6436 with_gnu_ld=no
6437 wlarc=
6438
6439 # A generic and very simple default shared library creation
6440 # command for GNU C++ for the case where it uses the native
6441 # linker, instead of GNU ld. If possible, this setting should
6442 # overridden to take advantage of the native linker features on
6443 # the platform it is being used on.
6444 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
6445 fi
6446
6447 # Commands to make compiler produce verbose output that lists
6448 # what "hidden" libraries, object files and flags are used when
6449 # linking a shared library.
6450 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
6451
6452 else
6453 GXX=no
6454 with_gnu_ld=no
6455 wlarc=
6456 fi
6457
6458 # PORTME: fill in a description of your system's C++ link characteristics
6459 AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries])
6460 _LT_TAGVAR(ld_shlibs, $1)=yes
6461 case $host_os in
6462 aix3*)
6463 # FIXME: insert proper C++ library support
6464 _LT_TAGVAR(ld_shlibs, $1)=no
6465 ;;
6466 aix[[4-9]]*)
6467 if test ia64 = "$host_cpu"; then
6468 # On IA64, the linker does run time linking by default, so we don't
6469 # have to do anything special.
6470 aix_use_runtimelinking=no
6471 exp_sym_flag='-Bexport'
6472 no_entry_flag=
6473 else
6474 aix_use_runtimelinking=no
6475
6476 # Test if we are trying to use run time linking or normal
6477 # AIX style linking. If -brtl is somewhere in LDFLAGS, we
6478 # have runtime linking enabled, and use it for executables.
6479 # For shared libraries, we enable/disable runtime linking
6480 # depending on the kind of the shared library created -
6481 # when "with_aix_soname,aix_use_runtimelinking" is:
6482 # "aix,no" lib.a(lib.so.V) shared, rtl:no, for executables
6483 # "aix,yes" lib.so shared, rtl:yes, for executables
6484 # lib.a static archive
6485 # "both,no" lib.so.V(shr.o) shared, rtl:yes
6486 # lib.a(lib.so.V) shared, rtl:no, for executables
6487 # "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables
6488 # lib.a(lib.so.V) shared, rtl:no
6489 # "svr4,*" lib.so.V(shr.o) shared, rtl:yes, for executables
6490 # lib.a static archive
6491 case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*)
6492 for ld_flag in $LDFLAGS; do
6493 case $ld_flag in
6494 *-brtl*)
6495 aix_use_runtimelinking=yes
6496 break
6497 ;;
6498 esac
6499 done
6500 if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then
6501 # With aix-soname=svr4, we create the lib.so.V shared archives only,
6502 # so we don't have lib.a shared libs to link our executables.
6503 # We have to force runtime linking in this case.
6504 aix_use_runtimelinking=yes
6505 LDFLAGS="$LDFLAGS -Wl,-brtl"
6506 fi
6507 ;;
6508 esac
6509
6510 exp_sym_flag='-bexport'
6511 no_entry_flag='-bnoentry'
6512 fi
6513
6514 # When large executables or shared objects are built, AIX ld can
6515 # have problems creating the table of contents. If linking a library
6516 # or program results in "error TOC overflow" add -mminimal-toc to
6517 # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
6518 # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
6519
6520 _LT_TAGVAR(archive_cmds, $1)=''
6521 _LT_TAGVAR(hardcode_direct, $1)=yes
6522 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
6523 _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
6524 _LT_TAGVAR(link_all_deplibs, $1)=yes
6525 _LT_TAGVAR(file_list_spec, $1)='$wl-f,'
6526 case $with_aix_soname,$aix_use_runtimelinking in
6527 aix,*) ;; # no import file
6528 svr4,* | *,yes) # use import file
6529 # The Import File defines what to hardcode.
6530 _LT_TAGVAR(hardcode_direct, $1)=no
6531 _LT_TAGVAR(hardcode_direct_absolute, $1)=no
6532 ;;
6533 esac
6534
6535 if test yes = "$GXX"; then
6536 case $host_os in aix4.[[012]]|aix4.[[012]].*)
6537 # We only want to do this on AIX 4.2 and lower, the check
6538 # below for broken collect2 doesn't work under 4.3+
6539 collect2name=`$CC -print-prog-name=collect2`
6540 if test -f "$collect2name" &&
6541 strings "$collect2name" | $GREP resolve_lib_name >/dev/null
6542 then
6543 # We have reworked collect2
6544 :
6545 else
6546 # We have old collect2
6547 _LT_TAGVAR(hardcode_direct, $1)=unsupported
6548 # It fails to find uninstalled libraries when the uninstalled
6549 # path is not listed in the libpath. Setting hardcode_minus_L
6550 # to unsupported forces relinking
6551 _LT_TAGVAR(hardcode_minus_L, $1)=yes
6552 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
6553 _LT_TAGVAR(hardcode_libdir_separator, $1)=
6554 fi
6555 esac
6556 shared_flag='-shared'
6557 if test yes = "$aix_use_runtimelinking"; then
6558 shared_flag=$shared_flag' $wl-G'
6559 fi
6560 # Need to ensure runtime linking is disabled for the traditional
6561 # shared library, or the linker may eventually find shared libraries
6562 # /with/ Import File - we do not want to mix them.
6563 shared_flag_aix='-shared'
6564 shared_flag_svr4='-shared $wl-G'
6565 else
6566 # not using gcc
6567 if test ia64 = "$host_cpu"; then
6568 # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
6569 # chokes on -Wl,-G. The following line is correct:
6570 shared_flag='-G'
6571 else
6572 if test yes = "$aix_use_runtimelinking"; then
6573 shared_flag='$wl-G'
6574 else
6575 shared_flag='$wl-bM:SRE'
6576 fi
6577 shared_flag_aix='$wl-bM:SRE'
6578 shared_flag_svr4='$wl-G'
6579 fi
6580 fi
6581
6582 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-bexpall'
6583 # It seems that -bexpall does not export symbols beginning with
6584 # underscore (_), so it is better to generate a list of symbols to
6585 # export.
6586 _LT_TAGVAR(always_export_symbols, $1)=yes
6587 if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then
6588 # Warning - without using the other runtime loading flags (-brtl),
6589 # -berok will link without error, but may produce a broken library.
6590 # The "-G" linker flag allows undefined symbols.
6591 _LT_TAGVAR(no_undefined_flag, $1)='-bernotok'
6592 # Determine the default libpath from the value encoded in an empty
6593 # executable.
6594 _LT_SYS_MODULE_PATH_AIX([$1])
6595 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath"
6596
6597 _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
6598 else
6599 if test ia64 = "$host_cpu"; then
6600 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $libdir:/usr/lib:/lib'
6601 _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs"
6602 _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"
6603 else
6604 # Determine the default libpath from the value encoded in an
6605 # empty executable.
6606 _LT_SYS_MODULE_PATH_AIX([$1])
6607 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath"
6608 # Warning - without using the other run time loading flags,
6609 # -berok will link without error, but may produce a broken library.
6610 _LT_TAGVAR(no_undefined_flag, $1)=' $wl-bernotok'
6611 _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-berok'
6612 if test yes = "$with_gnu_ld"; then
6613 # We only use this code for GNU lds that support --whole-archive.
6614 _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive'
6615 else
6616 # Exported symbols can be pulled into shared objects from archives
6617 _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience'
6618 fi
6619 _LT_TAGVAR(archive_cmds_need_lc, $1)=yes
6620 _LT_TAGVAR(archive_expsym_cmds, $1)='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d'
6621 # -brtl affects multiple linker settings, -berok does not and is overridden later
6622 compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([[, ]]\\)%-berok\\1%g"`'
6623 if test svr4 != "$with_aix_soname"; then
6624 # This is similar to how AIX traditionally builds its shared
6625 # libraries. Need -bnortl late, we may have -brtl in LDFLAGS.
6626 _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'
6627 fi
6628 if test aix != "$with_aix_soname"; then
6629 _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'
6630 else
6631 # used by -dlpreopen to get the symbols
6632 _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$MV $output_objdir/$realname.d/$soname $output_objdir'
6633 fi
6634 _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$RM -r $output_objdir/$realname.d'
6635 fi
6636 fi
6637 ;;
6638
6639 beos*)
6640 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
6641 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
6642 # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
6643 # support --undefined. This deserves some investigation. FIXME
6644 _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
6645 else
6646 _LT_TAGVAR(ld_shlibs, $1)=no
6647 fi
6648 ;;
6649
6650 chorus*)
6651 case $cc_basename in
6652 *)
6653 # FIXME: insert proper C++ library support
6654 _LT_TAGVAR(ld_shlibs, $1)=no
6655 ;;
6656 esac
6657 ;;
6658
6659 cygwin* | mingw* | pw32* | cegcc*)
6660 case $GXX,$cc_basename in
6661 ,cl* | no,cl*)
6662 # Native MSVC
6663 # hardcode_libdir_flag_spec is actually meaningless, as there is
6664 # no search path for DLLs.
6665 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' '
6666 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
6667 _LT_TAGVAR(always_export_symbols, $1)=yes
6668 _LT_TAGVAR(file_list_spec, $1)='@'
6669 # Tell ltmain to make .lib files, not .a files.
6670 libext=lib
6671 # Tell ltmain to make .dll files, not .so files.
6672 shrext_cmds=.dll
6673 # FIXME: Setting linknames here is a bad hack.
6674 _LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames='
6675 _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then
6676 cp "$export_symbols" "$output_objdir/$soname.def";
6677 echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp";
6678 else
6679 $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp;
6680 fi~
6681 $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
6682 linknames='
6683 # The linker will not automatically build a static lib if we build a DLL.
6684 # _LT_TAGVAR(old_archive_from_new_cmds, $1)='true'
6685 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
6686 # Don't use ranlib
6687 _LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib'
6688 _LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~
6689 lt_tool_outputfile="@TOOL_OUTPUT@"~
6690 case $lt_outputfile in
6691 *.exe|*.EXE) ;;
6692 *)
6693 lt_outputfile=$lt_outputfile.exe
6694 lt_tool_outputfile=$lt_tool_outputfile.exe
6695 ;;
6696 esac~
6697 func_to_tool_file "$lt_outputfile"~
6698 if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then
6699 $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
6700 $RM "$lt_outputfile.manifest";
6701 fi'
6702 ;;
6703 *)
6704 # g++
6705 # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless,
6706 # as there is no search path for DLLs.
6707 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
6708 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-all-symbols'
6709 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
6710 _LT_TAGVAR(always_export_symbols, $1)=no
6711 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
6712
6713 if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
6714 _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'
6715 # If the export-symbols file already is a .def file, use it as
6716 # is; otherwise, prepend EXPORTS...
6717 _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then
6718 cp $export_symbols $output_objdir/$soname.def;
6719 else
6720 echo EXPORTS > $output_objdir/$soname.def;
6721 cat $export_symbols >> $output_objdir/$soname.def;
6722 fi~
6723 $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'
6724 else
6725 _LT_TAGVAR(ld_shlibs, $1)=no
6726 fi
6727 ;;
6728 esac
6729 ;;
6730 darwin* | rhapsody*)
6731 _LT_DARWIN_LINKER_FEATURES($1)
6732 ;;
6733
6734 os2*)
6735 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
6736 _LT_TAGVAR(hardcode_minus_L, $1)=yes
6737 _LT_TAGVAR(allow_undefined_flag, $1)=unsupported
6738 shrext_cmds=.dll
6739 _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
6740 $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
6741 $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
6742 $ECHO EXPORTS >> $output_objdir/$libname.def~
6743 emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~
6744 $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
6745 emximp -o $lib $output_objdir/$libname.def'
6746 _LT_TAGVAR(archive_expsym_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 prefix_cmds="$SED"~
6751 if test EXPORTS = "`$SED 1q $export_symbols`"; then
6752 prefix_cmds="$prefix_cmds -e 1d";
6753 fi~
6754 prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~
6755 cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~
6756 $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
6757 emximp -o $lib $output_objdir/$libname.def'
6758 _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'
6759 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes
6760 ;;
6761
6762 dgux*)
6763 case $cc_basename in
6764 ec++*)
6765 # FIXME: insert proper C++ library support
6766 _LT_TAGVAR(ld_shlibs, $1)=no
6767 ;;
6768 ghcx*)
6769 # Green Hills C++ Compiler
6770 # FIXME: insert proper C++ library support
6771 _LT_TAGVAR(ld_shlibs, $1)=no
6772 ;;
6773 *)
6774 # FIXME: insert proper C++ library support
6775 _LT_TAGVAR(ld_shlibs, $1)=no
6776 ;;
6777 esac
6778 ;;
6779
6780 freebsd2.*)
6781 # C++ shared libraries reported to be fairly broken before
6782 # switch to ELF
6783 _LT_TAGVAR(ld_shlibs, $1)=no
6784 ;;
6785
6786 freebsd-elf*)
6787 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
6788 ;;
6789
6790 freebsd* | dragonfly*)
6791 # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF
6792 # conventions
6793 _LT_TAGVAR(ld_shlibs, $1)=yes
6794 ;;
6795
6796 haiku*)
6797 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
6798 _LT_TAGVAR(link_all_deplibs, $1)=yes
6799 ;;
6800
6801 hpux9*)
6802 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
6803 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6804 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
6805 _LT_TAGVAR(hardcode_direct, $1)=yes
6806 _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
6807 # but as the default
6808 # location of the library.
6809
6810 case $cc_basename in
6811 CC*)
6812 # FIXME: insert proper C++ library support
6813 _LT_TAGVAR(ld_shlibs, $1)=no
6814 ;;
6815 aCC*)
6816 _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'
6817 # Commands to make compiler produce verbose output that lists
6818 # what "hidden" libraries, object files and flags are used when
6819 # linking a shared library.
6820 #
6821 # There doesn't appear to be a way to prevent this compiler from
6822 # explicitly linking system object files so we need to strip them
6823 # from the output so that they don't get included in the library
6824 # dependencies.
6825 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"'
6826 ;;
6827 *)
6828 if test yes = "$GXX"; then
6829 _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'
6830 else
6831 # FIXME: insert proper C++ library support
6832 _LT_TAGVAR(ld_shlibs, $1)=no
6833 fi
6834 ;;
6835 esac
6836 ;;
6837
6838 hpux10*|hpux11*)
6839 if test no = "$with_gnu_ld"; then
6840 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir'
6841 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6842
6843 case $host_cpu in
6844 hppa*64*|ia64*)
6845 ;;
6846 *)
6847 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
6848 ;;
6849 esac
6850 fi
6851 case $host_cpu in
6852 hppa*64*|ia64*)
6853 _LT_TAGVAR(hardcode_direct, $1)=no
6854 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6855 ;;
6856 *)
6857 _LT_TAGVAR(hardcode_direct, $1)=yes
6858 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
6859 _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH,
6860 # but as the default
6861 # location of the library.
6862 ;;
6863 esac
6864
6865 case $cc_basename in
6866 CC*)
6867 # FIXME: insert proper C++ library support
6868 _LT_TAGVAR(ld_shlibs, $1)=no
6869 ;;
6870 aCC*)
6871 case $host_cpu in
6872 hppa*64*)
6873 _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6874 ;;
6875 ia64*)
6876 _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6877 ;;
6878 *)
6879 _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'
6880 ;;
6881 esac
6882 # Commands to make compiler produce verbose output that lists
6883 # what "hidden" libraries, object files and flags are used when
6884 # linking a shared library.
6885 #
6886 # There doesn't appear to be a way to prevent this compiler from
6887 # explicitly linking system object files so we need to strip them
6888 # from the output so that they don't get included in the library
6889 # dependencies.
6890 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"'
6891 ;;
6892 *)
6893 if test yes = "$GXX"; then
6894 if test no = "$with_gnu_ld"; then
6895 case $host_cpu in
6896 hppa*64*)
6897 _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC $wl+h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
6898 ;;
6899 ia64*)
6900 _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'
6901 ;;
6902 *)
6903 _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'
6904 ;;
6905 esac
6906 fi
6907 else
6908 # FIXME: insert proper C++ library support
6909 _LT_TAGVAR(ld_shlibs, $1)=no
6910 fi
6911 ;;
6912 esac
6913 ;;
6914
6915 interix[[3-9]]*)
6916 _LT_TAGVAR(hardcode_direct, $1)=no
6917 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
6918 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
6919 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
6920 # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
6921 # Instead, shared libraries are loaded at an image base (0x10000000 by
6922 # default) and relocated if they conflict, which is a slow very memory
6923 # consuming and fragmenting process. To avoid this, we pick a random,
6924 # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
6925 # time. Moving up from 0x10000000 also allows more sbrk(2) space.
6926 _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'
6927 _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'
6928 ;;
6929 irix5* | irix6*)
6930 case $cc_basename in
6931 CC*)
6932 # SGI C++
6933 _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'
6934
6935 # Archives containing C++ object files must be created using
6936 # "CC -ar", where "CC" is the IRIX C++ compiler. This is
6937 # necessary to make sure instantiated templates are included
6938 # in the archive.
6939 _LT_TAGVAR(old_archive_cmds, $1)='$CC -ar -WR,-u -o $oldlib $oldobjs'
6940 ;;
6941 *)
6942 if test yes = "$GXX"; then
6943 if test no = "$with_gnu_ld"; then
6944 _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'
6945 else
6946 _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'
6947 fi
6948 fi
6949 _LT_TAGVAR(link_all_deplibs, $1)=yes
6950 ;;
6951 esac
6952 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
6953 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
6954 _LT_TAGVAR(inherit_rpath, $1)=yes
6955 ;;
6956
6957 linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
6958 case $cc_basename in
6959 KCC*)
6960 # Kuck and Associates, Inc. (KAI) C++ Compiler
6961
6962 # KCC will only create a shared library if the output file
6963 # ends with ".so" (or ".sl" for HP-UX), so rename the library
6964 # to its proper name (with version) after linking.
6965 _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'
6966 _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'
6967 # Commands to make compiler produce verbose output that lists
6968 # what "hidden" libraries, object files and flags are used when
6969 # linking a shared library.
6970 #
6971 # There doesn't appear to be a way to prevent this compiler from
6972 # explicitly linking system object files so we need to strip them
6973 # from the output so that they don't get included in the library
6974 # dependencies.
6975 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"'
6976
6977 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
6978 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
6979
6980 # Archives containing C++ object files must be created using
6981 # "CC -Bstatic", where "CC" is the KAI C++ compiler.
6982 _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs'
6983 ;;
6984 icpc* | ecpc* )
6985 # Intel C++
6986 with_gnu_ld=yes
6987 # version 8.0 and above of icpc choke on multiply defined symbols
6988 # if we add $predep_objects and $postdep_objects, however 7.1 and
6989 # earlier do not add the objects themselves.
6990 case `$CC -V 2>&1` in
6991 *"Version 7."*)
6992 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
6993 _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'
6994 ;;
6995 *) # Version 8.0 or newer
6996 tmp_idyn=
6997 case $host_cpu in
6998 ia64*) tmp_idyn=' -i_dynamic';;
6999 esac
7000 _LT_TAGVAR(archive_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
7001 _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'
7002 ;;
7003 esac
7004 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
7005 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
7006 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
7007 _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive'
7008 ;;
7009 pgCC* | pgcpp*)
7010 # Portland Group C++ compiler
7011 case `$CC -V` in
7012 *pgCC\ [[1-5]].* | *pgcpp\ [[1-5]].*)
7013 _LT_TAGVAR(prelink_cmds, $1)='tpldir=Template.dir~
7014 rm -rf $tpldir~
7015 $CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~
7016 compile_command="$compile_command `find $tpldir -name \*.o | sort | $NL2SP`"'
7017 _LT_TAGVAR(old_archive_cmds, $1)='tpldir=Template.dir~
7018 rm -rf $tpldir~
7019 $CC --prelink_objects --instantiation_dir $tpldir $oldobjs$old_deplibs~
7020 $AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | sort | $NL2SP`~
7021 $RANLIB $oldlib'
7022 _LT_TAGVAR(archive_cmds, $1)='tpldir=Template.dir~
7023 rm -rf $tpldir~
7024 $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
7025 $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
7026 _LT_TAGVAR(archive_expsym_cmds, $1)='tpldir=Template.dir~
7027 rm -rf $tpldir~
7028 $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
7029 $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'
7030 ;;
7031 *) # Version 6 and above use weak symbols
7032 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
7033 _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'
7034 ;;
7035 esac
7036
7037 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl--rpath $wl$libdir'
7038 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
7039 _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'
7040 ;;
7041 cxx*)
7042 # Compaq C++
7043 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
7044 _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'
7045
7046 runpath_var=LD_RUN_PATH
7047 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
7048 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
7049
7050 # Commands to make compiler produce verbose output that lists
7051 # what "hidden" libraries, object files and flags are used when
7052 # linking a shared library.
7053 #
7054 # There doesn't appear to be a way to prevent this compiler from
7055 # explicitly linking system object files so we need to strip them
7056 # from the output so that they don't get included in the library
7057 # dependencies.
7058 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'
7059 ;;
7060 xl* | mpixl* | bgxl*)
7061 # IBM XL 8.0 on PPC, with GNU ld
7062 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
7063 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic'
7064 _LT_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
7065 if test yes = "$supports_anon_versioning"; then
7066 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~
7067 cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
7068 echo "local: *; };" >> $output_objdir/$libname.ver~
7069 $CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib'
7070 fi
7071 ;;
7072 *)
7073 case `$CC -V 2>&1 | sed 5q` in
7074 *Sun\ C*)
7075 # Sun C++ 5.9
7076 _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
7077 _LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
7078 _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'
7079 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
7080 _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'
7081 _LT_TAGVAR(compiler_needs_object, $1)=yes
7082
7083 # Not sure whether something based on
7084 # $CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1
7085 # would be better.
7086 output_verbose_link_cmd='func_echo_all'
7087
7088 # Archives containing C++ object files must be created using
7089 # "CC -xar", where "CC" is the Sun C++ compiler. This is
7090 # necessary to make sure instantiated templates are included
7091 # in the archive.
7092 _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
7093 ;;
7094 esac
7095 ;;
7096 esac
7097 ;;
7098
7099 lynxos*)
7100 # FIXME: insert proper C++ library support
7101 _LT_TAGVAR(ld_shlibs, $1)=no
7102 ;;
7103
7104 m88k*)
7105 # FIXME: insert proper C++ library support
7106 _LT_TAGVAR(ld_shlibs, $1)=no
7107 ;;
7108
7109 mvs*)
7110 case $cc_basename in
7111 cxx*)
7112 # FIXME: insert proper C++ library support
7113 _LT_TAGVAR(ld_shlibs, $1)=no
7114 ;;
7115 *)
7116 # FIXME: insert proper C++ library support
7117 _LT_TAGVAR(ld_shlibs, $1)=no
7118 ;;
7119 esac
7120 ;;
7121
7122 netbsd*)
7123 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
7124 _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags'
7125 wlarc=
7126 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
7127 _LT_TAGVAR(hardcode_direct, $1)=yes
7128 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
7129 fi
7130 # Workaround some broken pre-1.5 toolchains
7131 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"'
7132 ;;
7133
7134 *nto* | *qnx*)
7135 _LT_TAGVAR(ld_shlibs, $1)=yes
7136 ;;
7137
7138 openbsd* | bitrig*)
7139 if test -f /usr/libexec/ld.so; then
7140 _LT_TAGVAR(hardcode_direct, $1)=yes
7141 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
7142 _LT_TAGVAR(hardcode_direct_absolute, $1)=yes
7143 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
7144 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
7145 if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`"; then
7146 _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'
7147 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E'
7148 _LT_TAGVAR(whole_archive_flag_spec, $1)=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive'
7149 fi
7150 output_verbose_link_cmd=func_echo_all
7151 else
7152 _LT_TAGVAR(ld_shlibs, $1)=no
7153 fi
7154 ;;
7155
7156 osf3* | osf4* | osf5*)
7157 case $cc_basename in
7158 KCC*)
7159 # Kuck and Associates, Inc. (KAI) C++ Compiler
7160
7161 # KCC will only create a shared library if the output file
7162 # ends with ".so" (or ".sl" for HP-UX), so rename the library
7163 # to its proper name (with version) after linking.
7164 _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'
7165
7166 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir'
7167 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
7168
7169 # Archives containing C++ object files must be created using
7170 # the KAI C++ compiler.
7171 case $host in
7172 osf3*) _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' ;;
7173 *) _LT_TAGVAR(old_archive_cmds, $1)='$CC -o $oldlib $oldobjs' ;;
7174 esac
7175 ;;
7176 RCC*)
7177 # Rational C++ 2.4.1
7178 # FIXME: insert proper C++ library support
7179 _LT_TAGVAR(ld_shlibs, $1)=no
7180 ;;
7181 cxx*)
7182 case $host in
7183 osf3*)
7184 _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*'
7185 _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'
7186 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
7187 ;;
7188 *)
7189 _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
7190 _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'
7191 _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~
7192 echo "-hidden">> $lib.exp~
7193 $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~
7194 $RM $lib.exp'
7195 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
7196 ;;
7197 esac
7198
7199 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
7200
7201 # Commands to make compiler produce verbose output that lists
7202 # what "hidden" libraries, object files and flags are used when
7203 # linking a shared library.
7204 #
7205 # There doesn't appear to be a way to prevent this compiler from
7206 # explicitly linking system object files so we need to strip them
7207 # from the output so that they don't get included in the library
7208 # dependencies.
7209 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"'
7210 ;;
7211 *)
7212 if test yes,no = "$GXX,$with_gnu_ld"; then
7213 _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*'
7214 case $host in
7215 osf3*)
7216 _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'
7217 ;;
7218 *)
7219 _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'
7220 ;;
7221 esac
7222
7223 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir'
7224 _LT_TAGVAR(hardcode_libdir_separator, $1)=:
7225
7226 # Commands to make compiler produce verbose output that lists
7227 # what "hidden" libraries, object files and flags are used when
7228 # linking a shared library.
7229 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
7230
7231 else
7232 # FIXME: insert proper C++ library support
7233 _LT_TAGVAR(ld_shlibs, $1)=no
7234 fi
7235 ;;
7236 esac
7237 ;;
7238
7239 psos*)
7240 # FIXME: insert proper C++ library support
7241 _LT_TAGVAR(ld_shlibs, $1)=no
7242 ;;
7243
7244 sunos4*)
7245 case $cc_basename in
7246 CC*)
7247 # Sun C++ 4.x
7248 # FIXME: insert proper C++ library support
7249 _LT_TAGVAR(ld_shlibs, $1)=no
7250 ;;
7251 lcc*)
7252 # Lucid
7253 # FIXME: insert proper C++ library support
7254 _LT_TAGVAR(ld_shlibs, $1)=no
7255 ;;
7256 *)
7257 # FIXME: insert proper C++ library support
7258 _LT_TAGVAR(ld_shlibs, $1)=no
7259 ;;
7260 esac
7261 ;;
7262
7263 solaris*)
7264 case $cc_basename in
7265 CC* | sunCC*)
7266 # Sun C++ 4.2, 5.x and Centerline C++
7267 _LT_TAGVAR(archive_cmds_need_lc,$1)=yes
7268 _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs'
7269 _LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
7270 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
7271 $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'
7272
7273 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
7274 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
7275 case $host_os in
7276 solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
7277 *)
7278 # The compiler driver will combine and reorder linker options,
7279 # but understands '-z linker_flag'.
7280 # Supported since Solaris 2.6 (maybe 2.5.1?)
7281 _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract'
7282 ;;
7283 esac
7284 _LT_TAGVAR(link_all_deplibs, $1)=yes
7285
7286 output_verbose_link_cmd='func_echo_all'
7287
7288 # Archives containing C++ object files must be created using
7289 # "CC -xar", where "CC" is the Sun C++ compiler. This is
7290 # necessary to make sure instantiated templates are included
7291 # in the archive.
7292 _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs'
7293 ;;
7294 gcx*)
7295 # Green Hills C++ Compiler
7296 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'
7297
7298 # The C++ compiler must be used to create the archive.
7299 _LT_TAGVAR(old_archive_cmds, $1)='$CC $LDFLAGS -archive -o $oldlib $oldobjs'
7300 ;;
7301 *)
7302 # GNU C++ compiler with Solaris linker
7303 if test yes,no = "$GXX,$with_gnu_ld"; then
7304 _LT_TAGVAR(no_undefined_flag, $1)=' $wl-z ${wl}defs'
7305 if $CC --version | $GREP -v '^2\.7' > /dev/null; then
7306 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'
7307 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
7308 $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'
7309
7310 # Commands to make compiler produce verbose output that lists
7311 # what "hidden" libraries, object files and flags are used when
7312 # linking a shared library.
7313 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
7314 else
7315 # g++ 2.7 appears to require '-G' NOT '-shared' on this
7316 # platform.
7317 _LT_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'
7318 _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
7319 $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'
7320
7321 # Commands to make compiler produce verbose output that lists
7322 # what "hidden" libraries, object files and flags are used when
7323 # linking a shared library.
7324 output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
7325 fi
7326
7327 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $wl$libdir'
7328 case $host_os in
7329 solaris2.[[0-5]] | solaris2.[[0-5]].*) ;;
7330 *)
7331 _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract'
7332 ;;
7333 esac
7334 fi
7335 ;;
7336 esac
7337 ;;
7338
7339 sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*)
7340 _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text'
7341 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
7342 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
7343 runpath_var='LD_RUN_PATH'
7344
7345 case $cc_basename in
7346 CC*)
7347 _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7348 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7349 ;;
7350 *)
7351 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7352 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7353 ;;
7354 esac
7355 ;;
7356
7357 sysv5* | sco3.2v5* | sco5v6*)
7358 # Note: We CANNOT use -z defs as we might desire, because we do not
7359 # link with -lc, and that would cause any symbols used from libc to
7360 # always be unresolved, which means just about no library would
7361 # ever link correctly. If we're not using GNU ld we use -z text
7362 # though, which does catch some bad symbols but isn't as heavy-handed
7363 # as -z defs.
7364 _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text'
7365 _LT_TAGVAR(allow_undefined_flag, $1)='$wl-z,nodefs'
7366 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
7367 _LT_TAGVAR(hardcode_shlibpath_var, $1)=no
7368 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R,$libdir'
7369 _LT_TAGVAR(hardcode_libdir_separator, $1)=':'
7370 _LT_TAGVAR(link_all_deplibs, $1)=yes
7371 _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-Bexport'
7372 runpath_var='LD_RUN_PATH'
7373
7374 case $cc_basename in
7375 CC*)
7376 _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7377 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7378 _LT_TAGVAR(old_archive_cmds, $1)='$CC -Tprelink_objects $oldobjs~
7379 '"$_LT_TAGVAR(old_archive_cmds, $1)"
7380 _LT_TAGVAR(reload_cmds, $1)='$CC -Tprelink_objects $reload_objs~
7381 '"$_LT_TAGVAR(reload_cmds, $1)"
7382 ;;
7383 *)
7384 _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7385 _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
7386 ;;
7387 esac
7388 ;;
7389
7390 tandem*)
7391 case $cc_basename in
7392 NCC*)
7393 # NonStop-UX NCC 3.20
7394 # FIXME: insert proper C++ library support
7395 _LT_TAGVAR(ld_shlibs, $1)=no
7396 ;;
7397 *)
7398 # FIXME: insert proper C++ library support
7399 _LT_TAGVAR(ld_shlibs, $1)=no
7400 ;;
7401 esac
7402 ;;
7403
7404 vxworks*)
7405 # FIXME: insert proper C++ library support
7406 _LT_TAGVAR(ld_shlibs, $1)=no
7407 ;;
7408
7409 *)
7410 # FIXME: insert proper C++ library support
7411 _LT_TAGVAR(ld_shlibs, $1)=no
7412 ;;
7413 esac
7414
7415 AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)])
7416 test no = "$_LT_TAGVAR(ld_shlibs, $1)" && can_build_shared=no
7417
7418 _LT_TAGVAR(GCC, $1)=$GXX
7419 _LT_TAGVAR(LD, $1)=$LD
7420
7421 ## CAVEAT EMPTOR:
7422 ## There is no encapsulation within the following macros, do not change
7423 ## the running order or otherwise move them around unless you know exactly
7424 ## what you are doing...
7425 _LT_SYS_HIDDEN_LIBDEPS($1)
7426 _LT_COMPILER_PIC($1)
7427 _LT_COMPILER_C_O($1)
7428 _LT_COMPILER_FILE_LOCKS($1)
7429 _LT_LINKER_SHLIBS($1)
7430 _LT_SYS_DYNAMIC_LINKER($1)
7431 _LT_LINKER_HARDCODE_LIBPATH($1)
7432
7433 _LT_CONFIG($1)
7434 fi # test -n "$compiler"
7435
7436 CC=$lt_save_CC
7437 CFLAGS=$lt_save_CFLAGS
7438 LDCXX=$LD
7439 LD=$lt_save_LD
7440 GCC=$lt_save_GCC
7441 with_gnu_ld=$lt_save_with_gnu_ld
7442 lt_cv_path_LDCXX=$lt_cv_path_LD
7443 lt_cv_path_LD=$lt_save_path_LD
7444 lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld
7445 lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld
7446 fi # test yes != "$_lt_caught_CXX_error"
7447
7448 AC_LANG_POP
7449 ])# _LT_LANG_CXX_CONFIG
7450
7451
7452 # _LT_FUNC_STRIPNAME_CNF
7453 # ----------------------
7454 # func_stripname_cnf prefix suffix name
7455 # strip PREFIX and SUFFIX off of NAME.
7456 # PREFIX and SUFFIX must not contain globbing or regex special
7457 # characters, hashes, percent signs, but SUFFIX may contain a leading
7458 # dot (in which case that matches only a dot).
7459 #
7460 # This function is identical to the (non-XSI) version of func_stripname,
7461 # except this one can be used by m4 code that may be executed by configure,
7462 # rather than the libtool script.
7463 m4_defun([_LT_FUNC_STRIPNAME_CNF],[dnl
7464 AC_REQUIRE([_LT_DECL_SED])
7465 AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])
7466 func_stripname_cnf ()
7467 {
7468 case @S|@2 in
7469 .*) func_stripname_result=`$ECHO "@S|@3" | $SED "s%^@S|@1%%; s%\\\\@S|@2\$%%"`;;
7470 *) func_stripname_result=`$ECHO "@S|@3" | $SED "s%^@S|@1%%; s%@S|@2\$%%"`;;
7471 esac
7472 } # func_stripname_cnf
7473 ])# _LT_FUNC_STRIPNAME_CNF
7474
7475
7476 # _LT_SYS_HIDDEN_LIBDEPS([TAGNAME])
7477 # ---------------------------------
7478 # Figure out "hidden" library dependencies from verbose
7479 # compiler output when linking a shared library.
7480 # Parse the compiler output and extract the necessary
7481 # objects, libraries and library flags.
7482 m4_defun([_LT_SYS_HIDDEN_LIBDEPS],
7483 [m4_require([_LT_FILEUTILS_DEFAULTS])dnl
7484 AC_REQUIRE([_LT_FUNC_STRIPNAME_CNF])dnl
7485 # Dependencies to place before and after the object being linked:
7486 _LT_TAGVAR(predep_objects, $1)=
7487 _LT_TAGVAR(postdep_objects, $1)=
7488 _LT_TAGVAR(predeps, $1)=
7489 _LT_TAGVAR(postdeps, $1)=
7490 _LT_TAGVAR(compiler_lib_search_path, $1)=
7491
7492 dnl we can't use the lt_simple_compile_test_code here,
7493 dnl because it contains code intended for an executable,
7494 dnl not a library. It's possible we should let each
7495 dnl tag define a new lt_????_link_test_code variable,
7496 dnl but it's only used here...
7497 m4_if([$1], [], [cat > conftest.$ac_ext <<_LT_EOF
7498 int a;
7499 void foo (void) { a = 0; }
7500 _LT_EOF
7501 ], [$1], [CXX], [cat > conftest.$ac_ext <<_LT_EOF
7502 class Foo
7503 {
7504 public:
7505 Foo (void) { a = 0; }
7506 private:
7507 int a;
7508 };
7509 _LT_EOF
7510 ], [$1], [F77], [cat > conftest.$ac_ext <<_LT_EOF
7511 subroutine foo
7512 implicit none
7513 integer*4 a
7514 a=0
7515 return
7516 end
7517 _LT_EOF
7518 ], [$1], [FC], [cat > conftest.$ac_ext <<_LT_EOF
7519 subroutine foo
7520 implicit none
7521 integer a
7522 a=0
7523 return
7524 end
7525 _LT_EOF
7526 ], [$1], [GCJ], [cat > conftest.$ac_ext <<_LT_EOF
7527 public class foo {
7528 private int a;
7529 public void bar (void) {
7530 a = 0;
7531 }
7532 };
7533 _LT_EOF
7534 ], [$1], [GO], [cat > conftest.$ac_ext <<_LT_EOF
7535 package foo
7536 func foo() {
7537 }
7538 _LT_EOF
7539 ])
7540
7541 _lt_libdeps_save_CFLAGS=$CFLAGS
7542 case "$CC $CFLAGS " in #(
7543 *\ -flto*\ *) CFLAGS="$CFLAGS -fno-lto" ;;
7544 *\ -fwhopr*\ *) CFLAGS="$CFLAGS -fno-whopr" ;;
7545 *\ -fuse-linker-plugin*\ *) CFLAGS="$CFLAGS -fno-use-linker-plugin" ;;
7546 esac
7547
7548 dnl Parse the compiler output and extract the necessary
7549 dnl objects, libraries and library flags.
7550 if AC_TRY_EVAL(ac_compile); then
7551 # Parse the compiler output and extract the necessary
7552 # objects, libraries and library flags.
7553
7554 # Sentinel used to keep track of whether or not we are before
7555 # the conftest object file.
7556 pre_test_object_deps_done=no
7557
7558 for p in `eval "$output_verbose_link_cmd"`; do
7559 case $prev$p in
7560
7561 -L* | -R* | -l*)
7562 # Some compilers place space between "-{L,R}" and the path.
7563 # Remove the space.
7564 if test x-L = "$p" ||
7565 test x-R = "$p"; then
7566 prev=$p
7567 continue
7568 fi
7569
7570 # Expand the sysroot to ease extracting the directories later.
7571 if test -z "$prev"; then
7572 case $p in
7573 -L*) func_stripname_cnf '-L' '' "$p"; prev=-L; p=$func_stripname_result ;;
7574 -R*) func_stripname_cnf '-R' '' "$p"; prev=-R; p=$func_stripname_result ;;
7575 -l*) func_stripname_cnf '-l' '' "$p"; prev=-l; p=$func_stripname_result ;;
7576 esac
7577 fi
7578 case $p in
7579 =*) func_stripname_cnf '=' '' "$p"; p=$lt_sysroot$func_stripname_result ;;
7580 esac
7581 if test no = "$pre_test_object_deps_done"; then
7582 case $prev in
7583 -L | -R)
7584 # Internal compiler library paths should come after those
7585 # provided the user. The postdeps already come after the
7586 # user supplied libs so there is no need to process them.
7587 if test -z "$_LT_TAGVAR(compiler_lib_search_path, $1)"; then
7588 _LT_TAGVAR(compiler_lib_search_path, $1)=$prev$p
7589 else
7590 _LT_TAGVAR(compiler_lib_search_path, $1)="${_LT_TAGVAR(compiler_lib_search_path, $1)} $prev$p"
7591 fi
7592 ;;
7593 # The "-l" case would never come before the object being
7594 # linked, so don't bother handling this case.
7595 esac
7596 else
7597 if test -z "$_LT_TAGVAR(postdeps, $1)"; then
7598 _LT_TAGVAR(postdeps, $1)=$prev$p
7599 else
7600 _LT_TAGVAR(postdeps, $1)="${_LT_TAGVAR(postdeps, $1)} $prev$p"
7601 fi
7602 fi
7603 prev=
7604 ;;
7605
7606 *.lto.$objext) ;; # Ignore GCC LTO objects
7607 *.$objext)
7608 # This assumes that the test object file only shows up
7609 # once in the compiler output.
7610 if test "$p" = "conftest.$objext"; then
7611 pre_test_object_deps_done=yes
7612 continue
7613 fi
7614
7615 if test no = "$pre_test_object_deps_done"; then
7616 if test -z "$_LT_TAGVAR(predep_objects, $1)"; then
7617 _LT_TAGVAR(predep_objects, $1)=$p
7618 else
7619 _LT_TAGVAR(predep_objects, $1)="$_LT_TAGVAR(predep_objects, $1) $p"
7620 fi
7621 else
7622 if test -z "$_LT_TAGVAR(postdep_objects, $1)"; then
7623 _LT_TAGVAR(postdep_objects, $1)=$p
7624 else
7625 _LT_TAGVAR(postdep_objects, $1)="$_LT_TAGVAR(postdep_objects, $1) $p"
7626 fi
7627 fi
7628 ;;
7629
7630 *) ;; # Ignore the rest.
7631
7632 esac
7633 done
7634
7635 # Clean up.
7636 rm -f a.out a.exe
7637 else
7638 echo "libtool.m4: error: problem compiling $1 test program"
7639 fi
7640
7641 $RM -f confest.$objext
7642 CFLAGS=$_lt_libdeps_save_CFLAGS
7643
7644 # PORTME: override above test on systems where it is broken
7645 m4_if([$1], [CXX],
7646 [case $host_os in
7647 interix[[3-9]]*)
7648 # Interix 3.5 installs completely hosed .la files for C++, so rather than
7649 # hack all around it, let's just trust "g++" to DTRT.
7650 _LT_TAGVAR(predep_objects,$1)=
7651 _LT_TAGVAR(postdep_objects,$1)=
7652 _LT_TAGVAR(postdeps,$1)=
7653 ;;
7654 esac
7655 ])
7656
7657 case " $_LT_TAGVAR(postdeps, $1) " in
7658 *" -lc "*) _LT_TAGVAR(archive_cmds_need_lc, $1)=no ;;
7659 esac
7660 _LT_TAGVAR(compiler_lib_search_dirs, $1)=
7661 if test -n "${_LT_TAGVAR(compiler_lib_search_path, $1)}"; then
7662 _LT_TAGVAR(compiler_lib_search_dirs, $1)=`echo " ${_LT_TAGVAR(compiler_lib_search_path, $1)}" | $SED -e 's! -L! !g' -e 's!^ !!'`
7663 fi
7664 _LT_TAGDECL([], [compiler_lib_search_dirs], [1],
7665 [The directories searched by this compiler when creating a shared library])
7666 _LT_TAGDECL([], [predep_objects], [1],
7667 [Dependencies to place before and after the objects being linked to
7668 create a shared library])
7669 _LT_TAGDECL([], [postdep_objects], [1])
7670 _LT_TAGDECL([], [predeps], [1])
7671 _LT_TAGDECL([], [postdeps], [1])
7672 _LT_TAGDECL([], [compiler_lib_search_path], [1],
7673 [The library search path used internally by the compiler when linking
7674 a shared library])
7675 ])# _LT_SYS_HIDDEN_LIBDEPS
7676
7677
7678 # _LT_LANG_F77_CONFIG([TAG])
7679 # --------------------------
7680 # Ensure that the configuration variables for a Fortran 77 compiler are
7681 # suitably defined. These variables are subsequently used by _LT_CONFIG
7682 # to write the compiler configuration to 'libtool'.
7683 m4_defun([_LT_LANG_F77_CONFIG],
7684 [AC_LANG_PUSH(Fortran 77)
7685 if test -z "$F77" || test no = "$F77"; then
7686 _lt_disable_F77=yes
7687 fi
7688
7689 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
7690 _LT_TAGVAR(allow_undefined_flag, $1)=
7691 _LT_TAGVAR(always_export_symbols, $1)=no
7692 _LT_TAGVAR(archive_expsym_cmds, $1)=
7693 _LT_TAGVAR(export_dynamic_flag_spec, $1)=
7694 _LT_TAGVAR(hardcode_direct, $1)=no
7695 _LT_TAGVAR(hardcode_direct_absolute, $1)=no
7696 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
7697 _LT_TAGVAR(hardcode_libdir_separator, $1)=
7698 _LT_TAGVAR(hardcode_minus_L, $1)=no
7699 _LT_TAGVAR(hardcode_automatic, $1)=no
7700 _LT_TAGVAR(inherit_rpath, $1)=no
7701 _LT_TAGVAR(module_cmds, $1)=
7702 _LT_TAGVAR(module_expsym_cmds, $1)=
7703 _LT_TAGVAR(link_all_deplibs, $1)=unknown
7704 _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
7705 _LT_TAGVAR(reload_flag, $1)=$reload_flag
7706 _LT_TAGVAR(reload_cmds, $1)=$reload_cmds
7707 _LT_TAGVAR(no_undefined_flag, $1)=
7708 _LT_TAGVAR(whole_archive_flag_spec, $1)=
7709 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
7710
7711 # Source file extension for f77 test sources.
7712 ac_ext=f
7713
7714 # Object file extension for compiled f77 test sources.
7715 objext=o
7716 _LT_TAGVAR(objext, $1)=$objext
7717
7718 # No sense in running all these tests if we already determined that
7719 # the F77 compiler isn't working. Some variables (like enable_shared)
7720 # are currently assumed to apply to all compilers on this platform,
7721 # and will be corrupted by setting them based on a non-working compiler.
7722 if test yes != "$_lt_disable_F77"; then
7723 # Code to be used in simple compile tests
7724 lt_simple_compile_test_code="\
7725 subroutine t
7726 return
7727 end
7728 "
7729
7730 # Code to be used in simple link tests
7731 lt_simple_link_test_code="\
7732 program t
7733 end
7734 "
7735
7736 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
7737 _LT_TAG_COMPILER
7738
7739 # save warnings/boilerplate of simple test code
7740 _LT_COMPILER_BOILERPLATE
7741 _LT_LINKER_BOILERPLATE
7742
7743 # Allow CC to be a program name with arguments.
7744 lt_save_CC=$CC
7745 lt_save_GCC=$GCC
7746 lt_save_CFLAGS=$CFLAGS
7747 CC=${F77-"f77"}
7748 CFLAGS=$FFLAGS
7749 compiler=$CC
7750 _LT_TAGVAR(compiler, $1)=$CC
7751 _LT_CC_BASENAME([$compiler])
7752 GCC=$G77
7753 if test -n "$compiler"; then
7754 AC_MSG_CHECKING([if libtool supports shared libraries])
7755 AC_MSG_RESULT([$can_build_shared])
7756
7757 AC_MSG_CHECKING([whether to build shared libraries])
7758 test no = "$can_build_shared" && enable_shared=no
7759
7760 # On AIX, shared libraries and static libraries use the same namespace, and
7761 # are all built from PIC.
7762 case $host_os in
7763 aix3*)
7764 test yes = "$enable_shared" && enable_static=no
7765 if test -n "$RANLIB"; then
7766 archive_cmds="$archive_cmds~\$RANLIB \$lib"
7767 postinstall_cmds='$RANLIB $lib'
7768 fi
7769 ;;
7770 aix[[4-9]]*)
7771 if test ia64 != "$host_cpu"; then
7772 case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in
7773 yes,aix,yes) ;; # shared object as lib.so file only
7774 yes,svr4,*) ;; # shared object as lib.so archive member only
7775 yes,*) enable_static=no ;; # shared object in lib.a archive as well
7776 esac
7777 fi
7778 ;;
7779 esac
7780 AC_MSG_RESULT([$enable_shared])
7781
7782 AC_MSG_CHECKING([whether to build static libraries])
7783 # Make sure either enable_shared or enable_static is yes.
7784 test yes = "$enable_shared" || enable_static=yes
7785 AC_MSG_RESULT([$enable_static])
7786
7787 _LT_TAGVAR(GCC, $1)=$G77
7788 _LT_TAGVAR(LD, $1)=$LD
7789
7790 ## CAVEAT EMPTOR:
7791 ## There is no encapsulation within the following macros, do not change
7792 ## the running order or otherwise move them around unless you know exactly
7793 ## what you are doing...
7794 _LT_COMPILER_PIC($1)
7795 _LT_COMPILER_C_O($1)
7796 _LT_COMPILER_FILE_LOCKS($1)
7797 _LT_LINKER_SHLIBS($1)
7798 _LT_SYS_DYNAMIC_LINKER($1)
7799 _LT_LINKER_HARDCODE_LIBPATH($1)
7800
7801 _LT_CONFIG($1)
7802 fi # test -n "$compiler"
7803
7804 GCC=$lt_save_GCC
7805 CC=$lt_save_CC
7806 CFLAGS=$lt_save_CFLAGS
7807 fi # test yes != "$_lt_disable_F77"
7808
7809 AC_LANG_POP
7810 ])# _LT_LANG_F77_CONFIG
7811
7812
7813 # _LT_LANG_FC_CONFIG([TAG])
7814 # -------------------------
7815 # Ensure that the configuration variables for a Fortran compiler are
7816 # suitably defined. These variables are subsequently used by _LT_CONFIG
7817 # to write the compiler configuration to 'libtool'.
7818 m4_defun([_LT_LANG_FC_CONFIG],
7819 [AC_LANG_PUSH(Fortran)
7820
7821 if test -z "$FC" || test no = "$FC"; then
7822 _lt_disable_FC=yes
7823 fi
7824
7825 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
7826 _LT_TAGVAR(allow_undefined_flag, $1)=
7827 _LT_TAGVAR(always_export_symbols, $1)=no
7828 _LT_TAGVAR(archive_expsym_cmds, $1)=
7829 _LT_TAGVAR(export_dynamic_flag_spec, $1)=
7830 _LT_TAGVAR(hardcode_direct, $1)=no
7831 _LT_TAGVAR(hardcode_direct_absolute, $1)=no
7832 _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=
7833 _LT_TAGVAR(hardcode_libdir_separator, $1)=
7834 _LT_TAGVAR(hardcode_minus_L, $1)=no
7835 _LT_TAGVAR(hardcode_automatic, $1)=no
7836 _LT_TAGVAR(inherit_rpath, $1)=no
7837 _LT_TAGVAR(module_cmds, $1)=
7838 _LT_TAGVAR(module_expsym_cmds, $1)=
7839 _LT_TAGVAR(link_all_deplibs, $1)=unknown
7840 _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
7841 _LT_TAGVAR(reload_flag, $1)=$reload_flag
7842 _LT_TAGVAR(reload_cmds, $1)=$reload_cmds
7843 _LT_TAGVAR(no_undefined_flag, $1)=
7844 _LT_TAGVAR(whole_archive_flag_spec, $1)=
7845 _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no
7846
7847 # Source file extension for fc test sources.
7848 ac_ext=${ac_fc_srcext-f}
7849
7850 # Object file extension for compiled fc test sources.
7851 objext=o
7852 _LT_TAGVAR(objext, $1)=$objext
7853
7854 # No sense in running all these tests if we already determined that
7855 # the FC compiler isn't working. Some variables (like enable_shared)
7856 # are currently assumed to apply to all compilers on this platform,
7857 # and will be corrupted by setting them based on a non-working compiler.
7858 if test yes != "$_lt_disable_FC"; then
7859 # Code to be used in simple compile tests
7860 lt_simple_compile_test_code="\
7861 subroutine t
7862 return
7863 end
7864 "
7865
7866 # Code to be used in simple link tests
7867 lt_simple_link_test_code="\
7868 program t
7869 end
7870 "
7871
7872 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
7873 _LT_TAG_COMPILER
7874
7875 # save warnings/boilerplate of simple test code
7876 _LT_COMPILER_BOILERPLATE
7877 _LT_LINKER_BOILERPLATE
7878
7879 # Allow CC to be a program name with arguments.
7880 lt_save_CC=$CC
7881 lt_save_GCC=$GCC
7882 lt_save_CFLAGS=$CFLAGS
7883 CC=${FC-"f95"}
7884 CFLAGS=$FCFLAGS
7885 compiler=$CC
7886 GCC=$ac_cv_fc_compiler_gnu
7887
7888 _LT_TAGVAR(compiler, $1)=$CC
7889 _LT_CC_BASENAME([$compiler])
7890
7891 if test -n "$compiler"; then
7892 AC_MSG_CHECKING([if libtool supports shared libraries])
7893 AC_MSG_RESULT([$can_build_shared])
7894
7895 AC_MSG_CHECKING([whether to build shared libraries])
7896 test no = "$can_build_shared" && enable_shared=no
7897
7898 # On AIX, shared libraries and static libraries use the same namespace, and
7899 # are all built from PIC.
7900 case $host_os in
7901 aix3*)
7902 test yes = "$enable_shared" && enable_static=no
7903 if test -n "$RANLIB"; then
7904 archive_cmds="$archive_cmds~\$RANLIB \$lib"
7905 postinstall_cmds='$RANLIB $lib'
7906 fi
7907 ;;
7908 aix[[4-9]]*)
7909 if test ia64 != "$host_cpu"; then
7910 case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in
7911 yes,aix,yes) ;; # shared object as lib.so file only
7912 yes,svr4,*) ;; # shared object as lib.so archive member only
7913 yes,*) enable_static=no ;; # shared object in lib.a archive as well
7914 esac
7915 fi
7916 ;;
7917 esac
7918 AC_MSG_RESULT([$enable_shared])
7919
7920 AC_MSG_CHECKING([whether to build static libraries])
7921 # Make sure either enable_shared or enable_static is yes.
7922 test yes = "$enable_shared" || enable_static=yes
7923 AC_MSG_RESULT([$enable_static])
7924
7925 _LT_TAGVAR(GCC, $1)=$ac_cv_fc_compiler_gnu
7926 _LT_TAGVAR(LD, $1)=$LD
7927
7928 ## CAVEAT EMPTOR:
7929 ## There is no encapsulation within the following macros, do not change
7930 ## the running order or otherwise move them around unless you know exactly
7931 ## what you are doing...
7932 _LT_SYS_HIDDEN_LIBDEPS($1)
7933 _LT_COMPILER_PIC($1)
7934 _LT_COMPILER_C_O($1)
7935 _LT_COMPILER_FILE_LOCKS($1)
7936 _LT_LINKER_SHLIBS($1)
7937 _LT_SYS_DYNAMIC_LINKER($1)
7938 _LT_LINKER_HARDCODE_LIBPATH($1)
7939
7940 _LT_CONFIG($1)
7941 fi # test -n "$compiler"
7942
7943 GCC=$lt_save_GCC
7944 CC=$lt_save_CC
7945 CFLAGS=$lt_save_CFLAGS
7946 fi # test yes != "$_lt_disable_FC"
7947
7948 AC_LANG_POP
7949 ])# _LT_LANG_FC_CONFIG
7950
7951
7952 # _LT_LANG_GCJ_CONFIG([TAG])
7953 # --------------------------
7954 # Ensure that the configuration variables for the GNU Java Compiler compiler
7955 # are suitably defined. These variables are subsequently used by _LT_CONFIG
7956 # to write the compiler configuration to 'libtool'.
7957 m4_defun([_LT_LANG_GCJ_CONFIG],
7958 [AC_REQUIRE([LT_PROG_GCJ])dnl
7959 AC_LANG_SAVE
7960
7961 # Source file extension for Java test sources.
7962 ac_ext=java
7963
7964 # Object file extension for compiled Java test sources.
7965 objext=o
7966 _LT_TAGVAR(objext, $1)=$objext
7967
7968 # Code to be used in simple compile tests
7969 lt_simple_compile_test_code="class foo {}"
7970
7971 # Code to be used in simple link tests
7972 lt_simple_link_test_code='public class conftest { public static void main(String[[]] argv) {}; }'
7973
7974 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
7975 _LT_TAG_COMPILER
7976
7977 # save warnings/boilerplate of simple test code
7978 _LT_COMPILER_BOILERPLATE
7979 _LT_LINKER_BOILERPLATE
7980
7981 # Allow CC to be a program name with arguments.
7982 lt_save_CC=$CC
7983 lt_save_CFLAGS=$CFLAGS
7984 lt_save_GCC=$GCC
7985 GCC=yes
7986 CC=${GCJ-"gcj"}
7987 CFLAGS=$GCJFLAGS
7988 compiler=$CC
7989 _LT_TAGVAR(compiler, $1)=$CC
7990 _LT_TAGVAR(LD, $1)=$LD
7991 _LT_CC_BASENAME([$compiler])
7992
7993 # GCJ did not exist at the time GCC didn't implicitly link libc in.
7994 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
7995
7996 _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
7997 _LT_TAGVAR(reload_flag, $1)=$reload_flag
7998 _LT_TAGVAR(reload_cmds, $1)=$reload_cmds
7999
8000 if test -n "$compiler"; then
8001 _LT_COMPILER_NO_RTTI($1)
8002 _LT_COMPILER_PIC($1)
8003 _LT_COMPILER_C_O($1)
8004 _LT_COMPILER_FILE_LOCKS($1)
8005 _LT_LINKER_SHLIBS($1)
8006 _LT_LINKER_HARDCODE_LIBPATH($1)
8007
8008 _LT_CONFIG($1)
8009 fi
8010
8011 AC_LANG_RESTORE
8012
8013 GCC=$lt_save_GCC
8014 CC=$lt_save_CC
8015 CFLAGS=$lt_save_CFLAGS
8016 ])# _LT_LANG_GCJ_CONFIG
8017
8018
8019 # _LT_LANG_GO_CONFIG([TAG])
8020 # --------------------------
8021 # Ensure that the configuration variables for the GNU Go compiler
8022 # are suitably defined. These variables are subsequently used by _LT_CONFIG
8023 # to write the compiler configuration to 'libtool'.
8024 m4_defun([_LT_LANG_GO_CONFIG],
8025 [AC_REQUIRE([LT_PROG_GO])dnl
8026 AC_LANG_SAVE
8027
8028 # Source file extension for Go test sources.
8029 ac_ext=go
8030
8031 # Object file extension for compiled Go test sources.
8032 objext=o
8033 _LT_TAGVAR(objext, $1)=$objext
8034
8035 # Code to be used in simple compile tests
8036 lt_simple_compile_test_code="package main; func main() { }"
8037
8038 # Code to be used in simple link tests
8039 lt_simple_link_test_code='package main; func main() { }'
8040
8041 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
8042 _LT_TAG_COMPILER
8043
8044 # save warnings/boilerplate of simple test code
8045 _LT_COMPILER_BOILERPLATE
8046 _LT_LINKER_BOILERPLATE
8047
8048 # Allow CC to be a program name with arguments.
8049 lt_save_CC=$CC
8050 lt_save_CFLAGS=$CFLAGS
8051 lt_save_GCC=$GCC
8052 GCC=yes
8053 CC=${GOC-"gccgo"}
8054 CFLAGS=$GOFLAGS
8055 compiler=$CC
8056 _LT_TAGVAR(compiler, $1)=$CC
8057 _LT_TAGVAR(LD, $1)=$LD
8058 _LT_CC_BASENAME([$compiler])
8059
8060 # Go did not exist at the time GCC didn't implicitly link libc in.
8061 _LT_TAGVAR(archive_cmds_need_lc, $1)=no
8062
8063 _LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds
8064 _LT_TAGVAR(reload_flag, $1)=$reload_flag
8065 _LT_TAGVAR(reload_cmds, $1)=$reload_cmds
8066
8067 if test -n "$compiler"; then
8068 _LT_COMPILER_NO_RTTI($1)
8069 _LT_COMPILER_PIC($1)
8070 _LT_COMPILER_C_O($1)
8071 _LT_COMPILER_FILE_LOCKS($1)
8072 _LT_LINKER_SHLIBS($1)
8073 _LT_LINKER_HARDCODE_LIBPATH($1)
8074
8075 _LT_CONFIG($1)
8076 fi
8077
8078 AC_LANG_RESTORE
8079
8080 GCC=$lt_save_GCC
8081 CC=$lt_save_CC
8082 CFLAGS=$lt_save_CFLAGS
8083 ])# _LT_LANG_GO_CONFIG
8084
8085
8086 # _LT_LANG_RC_CONFIG([TAG])
8087 # -------------------------
8088 # Ensure that the configuration variables for the Windows resource compiler
8089 # are suitably defined. These variables are subsequently used by _LT_CONFIG
8090 # to write the compiler configuration to 'libtool'.
8091 m4_defun([_LT_LANG_RC_CONFIG],
8092 [AC_REQUIRE([LT_PROG_RC])dnl
8093 AC_LANG_SAVE
8094
8095 # Source file extension for RC test sources.
8096 ac_ext=rc
8097
8098 # Object file extension for compiled RC test sources.
8099 objext=o
8100 _LT_TAGVAR(objext, $1)=$objext
8101
8102 # Code to be used in simple compile tests
8103 lt_simple_compile_test_code='sample MENU { MENUITEM "&Soup", 100, CHECKED }'
8104
8105 # Code to be used in simple link tests
8106 lt_simple_link_test_code=$lt_simple_compile_test_code
8107
8108 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
8109 _LT_TAG_COMPILER
8110
8111 # save warnings/boilerplate of simple test code
8112 _LT_COMPILER_BOILERPLATE
8113 _LT_LINKER_BOILERPLATE
8114
8115 # Allow CC to be a program name with arguments.
8116 lt_save_CC=$CC
8117 lt_save_CFLAGS=$CFLAGS
8118 lt_save_GCC=$GCC
8119 GCC=
8120 CC=${RC-"windres"}
8121 CFLAGS=
8122 compiler=$CC
8123 _LT_TAGVAR(compiler, $1)=$CC
8124 _LT_CC_BASENAME([$compiler])
8125 _LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes
8126
8127 if test -n "$compiler"; then
8128 :
8129 _LT_CONFIG($1)
8130 fi
8131
8132 GCC=$lt_save_GCC
8133 AC_LANG_RESTORE
8134 CC=$lt_save_CC
8135 CFLAGS=$lt_save_CFLAGS
8136 ])# _LT_LANG_RC_CONFIG
8137
8138
8139 # LT_PROG_GCJ
8140 # -----------
8141 AC_DEFUN([LT_PROG_GCJ],
8142 [m4_ifdef([AC_PROG_GCJ], [AC_PROG_GCJ],
8143 [m4_ifdef([A][M_PROG_GCJ], [A][M_PROG_GCJ],
8144 [AC_CHECK_TOOL(GCJ, gcj,)
8145 test set = "${GCJFLAGS+set}" || GCJFLAGS="-g -O2"
8146 AC_SUBST(GCJFLAGS)])])[]dnl
8147 ])
8148
8149 # Old name:
8150 AU_ALIAS([LT_AC_PROG_GCJ], [LT_PROG_GCJ])
8151 dnl aclocal-1.4 backwards compatibility:
8152 dnl AC_DEFUN([LT_AC_PROG_GCJ], [])
8153
8154
8155 # LT_PROG_GO
8156 # ----------
8157 AC_DEFUN([LT_PROG_GO],
8158 [AC_CHECK_TOOL(GOC, gccgo,)
8159 ])
8160
8161
8162 # LT_PROG_RC
8163 # ----------
8164 AC_DEFUN([LT_PROG_RC],
8165 [AC_CHECK_TOOL(RC, windres,)
8166 ])
8167
8168 # Old name:
8169 AU_ALIAS([LT_AC_PROG_RC], [LT_PROG_RC])
8170 dnl aclocal-1.4 backwards compatibility:
8171 dnl AC_DEFUN([LT_AC_PROG_RC], [])
8172
8173
8174 # _LT_DECL_EGREP
8175 # --------------
8176 # If we don't have a new enough Autoconf to choose the best grep
8177 # available, choose the one first in the user's PATH.
8178 m4_defun([_LT_DECL_EGREP],
8179 [AC_REQUIRE([AC_PROG_EGREP])dnl
8180 AC_REQUIRE([AC_PROG_FGREP])dnl
8181 test -z "$GREP" && GREP=grep
8182 _LT_DECL([], [GREP], [1], [A grep program that handles long lines])
8183 _LT_DECL([], [EGREP], [1], [An ERE matcher])
8184 _LT_DECL([], [FGREP], [1], [A literal string matcher])
8185 dnl Non-bleeding-edge autoconf doesn't subst GREP, so do it here too
8186 AC_SUBST([GREP])
8187 ])
8188
8189
8190 # _LT_DECL_OBJDUMP
8191 # --------------
8192 # If we don't have a new enough Autoconf to choose the best objdump
8193 # available, choose the one first in the user's PATH.
8194 m4_defun([_LT_DECL_OBJDUMP],
8195 [AC_CHECK_TOOL(OBJDUMP, objdump, false)
8196 test -z "$OBJDUMP" && OBJDUMP=objdump
8197 _LT_DECL([], [OBJDUMP], [1], [An object symbol dumper])
8198 AC_SUBST([OBJDUMP])
8199 ])
8200
8201 # _LT_DECL_DLLTOOL
8202 # ----------------
8203 # Ensure DLLTOOL variable is set.
8204 m4_defun([_LT_DECL_DLLTOOL],
8205 [AC_CHECK_TOOL(DLLTOOL, dlltool, false)
8206 test -z "$DLLTOOL" && DLLTOOL=dlltool
8207 _LT_DECL([], [DLLTOOL], [1], [DLL creation program])
8208 AC_SUBST([DLLTOOL])
8209 ])
8210
8211 # _LT_DECL_SED
8212 # ------------
8213 # Check for a fully-functional sed program, that truncates
8214 # as few characters as possible. Prefer GNU sed if found.
8215 m4_defun([_LT_DECL_SED],
8216 [AC_PROG_SED
8217 test -z "$SED" && SED=sed
8218 Xsed="$SED -e 1s/^X//"
8219 _LT_DECL([], [SED], [1], [A sed program that does not truncate output])
8220 _LT_DECL([], [Xsed], ["\$SED -e 1s/^X//"],
8221 [Sed that helps us avoid accidentally triggering echo(1) options like -n])
8222 ])# _LT_DECL_SED
8223
8224 m4_ifndef([AC_PROG_SED], [
8225 # NOTE: This macro has been submitted for inclusion into #
8226 # GNU Autoconf as AC_PROG_SED. When it is available in #
8227 # a released version of Autoconf we should remove this #
8228 # macro and use it instead. #
8229
8230 m4_defun([AC_PROG_SED],
8231 [AC_MSG_CHECKING([for a sed that does not truncate output])
8232 AC_CACHE_VAL(lt_cv_path_SED,
8233 [# Loop through the user's path and test for sed and gsed.
8234 # Then use that list of sed's as ones to test for truncation.
8235 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
8236 for as_dir in $PATH
8237 do
8238 IFS=$as_save_IFS
8239 test -z "$as_dir" && as_dir=.
8240 for lt_ac_prog in sed gsed; do
8241 for ac_exec_ext in '' $ac_executable_extensions; do
8242 if $as_executable_p "$as_dir/$lt_ac_prog$ac_exec_ext"; then
8243 lt_ac_sed_list="$lt_ac_sed_list $as_dir/$lt_ac_prog$ac_exec_ext"
8244 fi
8245 done
8246 done
8247 done
8248 IFS=$as_save_IFS
8249 lt_ac_max=0
8250 lt_ac_count=0
8251 # Add /usr/xpg4/bin/sed as it is typically found on Solaris
8252 # along with /bin/sed that truncates output.
8253 for lt_ac_sed in $lt_ac_sed_list /usr/xpg4/bin/sed; do
8254 test ! -f "$lt_ac_sed" && continue
8255 cat /dev/null > conftest.in
8256 lt_ac_count=0
8257 echo $ECHO_N "0123456789$ECHO_C" >conftest.in
8258 # Check for GNU sed and select it if it is found.
8259 if "$lt_ac_sed" --version 2>&1 < /dev/null | grep 'GNU' > /dev/null; then
8260 lt_cv_path_SED=$lt_ac_sed
8261 break
8262 fi
8263 while true; do
8264 cat conftest.in conftest.in >conftest.tmp
8265 mv conftest.tmp conftest.in
8266 cp conftest.in conftest.nl
8267 echo >>conftest.nl
8268 $lt_ac_sed -e 's/a$//' < conftest.nl >conftest.out || break
8269 cmp -s conftest.out conftest.nl || break
8270 # 10000 chars as input seems more than enough
8271 test 10 -lt "$lt_ac_count" && break
8272 lt_ac_count=`expr $lt_ac_count + 1`
8273 if test "$lt_ac_count" -gt "$lt_ac_max"; then
8274 lt_ac_max=$lt_ac_count
8275 lt_cv_path_SED=$lt_ac_sed
8276 fi
8277 done
8278 done
8279 ])
8280 SED=$lt_cv_path_SED
8281 AC_SUBST([SED])
8282 AC_MSG_RESULT([$SED])
8283 ])#AC_PROG_SED
8284 ])#m4_ifndef
8285
8286 # Old name:
8287 AU_ALIAS([LT_AC_PROG_SED], [AC_PROG_SED])
8288 dnl aclocal-1.4 backwards compatibility:
8289 dnl AC_DEFUN([LT_AC_PROG_SED], [])
8290
8291
8292 # _LT_CHECK_SHELL_FEATURES
8293 # ------------------------
8294 # Find out whether the shell is Bourne or XSI compatible,
8295 # or has some other useful features.
8296 m4_defun([_LT_CHECK_SHELL_FEATURES],
8297 [if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
8298 lt_unset=unset
8299 else
8300 lt_unset=false
8301 fi
8302 _LT_DECL([], [lt_unset], [0], [whether the shell understands "unset"])dnl
8303
8304 # test EBCDIC or ASCII
8305 case `echo X|tr X '\101'` in
8306 A) # ASCII based system
8307 # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr
8308 lt_SP2NL='tr \040 \012'
8309 lt_NL2SP='tr \015\012 \040\040'
8310 ;;
8311 *) # EBCDIC based system
8312 lt_SP2NL='tr \100 \n'
8313 lt_NL2SP='tr \r\n \100\100'
8314 ;;
8315 esac
8316 _LT_DECL([SP2NL], [lt_SP2NL], [1], [turn spaces into newlines])dnl
8317 _LT_DECL([NL2SP], [lt_NL2SP], [1], [turn newlines into spaces])dnl
8318 ])# _LT_CHECK_SHELL_FEATURES
8319
8320
8321 # _LT_PATH_CONVERSION_FUNCTIONS
8322 # -----------------------------
8323 # Determine what file name conversion functions should be used by
8324 # func_to_host_file (and, implicitly, by func_to_host_path). These are needed
8325 # for certain cross-compile configurations and native mingw.
8326 m4_defun([_LT_PATH_CONVERSION_FUNCTIONS],
8327 [AC_REQUIRE([AC_CANONICAL_HOST])dnl
8328 AC_REQUIRE([AC_CANONICAL_BUILD])dnl
8329 AC_MSG_CHECKING([how to convert $build file names to $host format])
8330 AC_CACHE_VAL(lt_cv_to_host_file_cmd,
8331 [case $host in
8332 *-*-mingw* )
8333 case $build in
8334 *-*-mingw* ) # actually msys
8335 lt_cv_to_host_file_cmd=func_convert_file_msys_to_w32
8336 ;;
8337 *-*-cygwin* )
8338 lt_cv_to_host_file_cmd=func_convert_file_cygwin_to_w32
8339 ;;
8340 * ) # otherwise, assume *nix
8341 lt_cv_to_host_file_cmd=func_convert_file_nix_to_w32
8342 ;;
8343 esac
8344 ;;
8345 *-*-cygwin* )
8346 case $build in
8347 *-*-mingw* ) # actually msys
8348 lt_cv_to_host_file_cmd=func_convert_file_msys_to_cygwin
8349 ;;
8350 *-*-cygwin* )
8351 lt_cv_to_host_file_cmd=func_convert_file_noop
8352 ;;
8353 * ) # otherwise, assume *nix
8354 lt_cv_to_host_file_cmd=func_convert_file_nix_to_cygwin
8355 ;;
8356 esac
8357 ;;
8358 * ) # unhandled hosts (and "normal" native builds)
8359 lt_cv_to_host_file_cmd=func_convert_file_noop
8360 ;;
8361 esac
8362 ])
8363 to_host_file_cmd=$lt_cv_to_host_file_cmd
8364 AC_MSG_RESULT([$lt_cv_to_host_file_cmd])
8365 _LT_DECL([to_host_file_cmd], [lt_cv_to_host_file_cmd],
8366 [0], [convert $build file names to $host format])dnl
8367
8368 AC_MSG_CHECKING([how to convert $build file names to toolchain format])
8369 AC_CACHE_VAL(lt_cv_to_tool_file_cmd,
8370 [#assume ordinary cross tools, or native build.
8371 lt_cv_to_tool_file_cmd=func_convert_file_noop
8372 case $host in
8373 *-*-mingw* )
8374 case $build in
8375 *-*-mingw* ) # actually msys
8376 lt_cv_to_tool_file_cmd=func_convert_file_msys_to_w32
8377 ;;
8378 esac
8379 ;;
8380 esac
8381 ])
8382 to_tool_file_cmd=$lt_cv_to_tool_file_cmd
8383 AC_MSG_RESULT([$lt_cv_to_tool_file_cmd])
8384 _LT_DECL([to_tool_file_cmd], [lt_cv_to_tool_file_cmd],
8385 [0], [convert $build files to toolchain format])dnl
8386 ])# _LT_PATH_CONVERSION_FUNCTIONS
8387
8388 # Helper functions for option handling. -*- Autoconf -*-
8389 #
8390 # Copyright (C) 2004-2005, 2007-2009, 2011-2015 Free Software
8391 # Foundation, Inc.
8392 # Written by Gary V. Vaughan, 2004
8393 #
8394 # This file is free software; the Free Software Foundation gives
8395 # unlimited permission to copy and/or distribute it, with or without
8396 # modifications, as long as this notice is preserved.
8397
8398 # serial 8 ltoptions.m4
8399
8400 # This is to help aclocal find these macros, as it can't see m4_define.
8401 AC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])])
8402
8403
8404 # _LT_MANGLE_OPTION(MACRO-NAME, OPTION-NAME)
8405 # ------------------------------------------
8406 m4_define([_LT_MANGLE_OPTION],
8407 [[_LT_OPTION_]m4_bpatsubst($1__$2, [[^a-zA-Z0-9_]], [_])])
8408
8409
8410 # _LT_SET_OPTION(MACRO-NAME, OPTION-NAME)
8411 # ---------------------------------------
8412 # Set option OPTION-NAME for macro MACRO-NAME, and if there is a
8413 # matching handler defined, dispatch to it. Other OPTION-NAMEs are
8414 # saved as a flag.
8415 m4_define([_LT_SET_OPTION],
8416 [m4_define(_LT_MANGLE_OPTION([$1], [$2]))dnl
8417 m4_ifdef(_LT_MANGLE_DEFUN([$1], [$2]),
8418 _LT_MANGLE_DEFUN([$1], [$2]),
8419 [m4_warning([Unknown $1 option '$2'])])[]dnl
8420 ])
8421
8422
8423 # _LT_IF_OPTION(MACRO-NAME, OPTION-NAME, IF-SET, [IF-NOT-SET])
8424 # ------------------------------------------------------------
8425 # Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
8426 m4_define([_LT_IF_OPTION],
8427 [m4_ifdef(_LT_MANGLE_OPTION([$1], [$2]), [$3], [$4])])
8428
8429
8430 # _LT_UNLESS_OPTIONS(MACRO-NAME, OPTION-LIST, IF-NOT-SET)
8431 # -------------------------------------------------------
8432 # Execute IF-NOT-SET unless all options in OPTION-LIST for MACRO-NAME
8433 # are set.
8434 m4_define([_LT_UNLESS_OPTIONS],
8435 [m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
8436 [m4_ifdef(_LT_MANGLE_OPTION([$1], _LT_Option),
8437 [m4_define([$0_found])])])[]dnl
8438 m4_ifdef([$0_found], [m4_undefine([$0_found])], [$3
8439 ])[]dnl
8440 ])
8441
8442
8443 # _LT_SET_OPTIONS(MACRO-NAME, OPTION-LIST)
8444 # ----------------------------------------
8445 # OPTION-LIST is a space-separated list of Libtool options associated
8446 # with MACRO-NAME. If any OPTION has a matching handler declared with
8447 # LT_OPTION_DEFINE, dispatch to that macro; otherwise complain about
8448 # the unknown option and exit.
8449 m4_defun([_LT_SET_OPTIONS],
8450 [# Set options
8451 m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
8452 [_LT_SET_OPTION([$1], _LT_Option)])
8453
8454 m4_if([$1],[LT_INIT],[
8455 dnl
8456 dnl Simply set some default values (i.e off) if boolean options were not
8457 dnl specified:
8458 _LT_UNLESS_OPTIONS([LT_INIT], [dlopen], [enable_dlopen=no
8459 ])
8460 _LT_UNLESS_OPTIONS([LT_INIT], [win32-dll], [enable_win32_dll=no
8461 ])
8462 dnl
8463 dnl If no reference was made to various pairs of opposing options, then
8464 dnl we run the default mode handler for the pair. For example, if neither
8465 dnl 'shared' nor 'disable-shared' was passed, we enable building of shared
8466 dnl archives by default:
8467 _LT_UNLESS_OPTIONS([LT_INIT], [shared disable-shared], [_LT_ENABLE_SHARED])
8468 _LT_UNLESS_OPTIONS([LT_INIT], [static disable-static], [_LT_ENABLE_STATIC])
8469 _LT_UNLESS_OPTIONS([LT_INIT], [pic-only no-pic], [_LT_WITH_PIC])
8470 _LT_UNLESS_OPTIONS([LT_INIT], [fast-install disable-fast-install],
8471 [_LT_ENABLE_FAST_INSTALL])
8472 _LT_UNLESS_OPTIONS([LT_INIT], [aix-soname=aix aix-soname=both aix-soname=svr4],
8473 [_LT_WITH_AIX_SONAME([aix])])
8474 ])
8475 ])# _LT_SET_OPTIONS
8476
8477
8478
8479 # _LT_MANGLE_DEFUN(MACRO-NAME, OPTION-NAME)
8480 # -----------------------------------------
8481 m4_define([_LT_MANGLE_DEFUN],
8482 [[_LT_OPTION_DEFUN_]m4_bpatsubst(m4_toupper([$1__$2]), [[^A-Z0-9_]], [_])])
8483
8484
8485 # LT_OPTION_DEFINE(MACRO-NAME, OPTION-NAME, CODE)
8486 # -----------------------------------------------
8487 m4_define([LT_OPTION_DEFINE],
8488 [m4_define(_LT_MANGLE_DEFUN([$1], [$2]), [$3])[]dnl
8489 ])# LT_OPTION_DEFINE
8490
8491
8492 # dlopen
8493 # ------
8494 LT_OPTION_DEFINE([LT_INIT], [dlopen], [enable_dlopen=yes
8495 ])
8496
8497 AU_DEFUN([AC_LIBTOOL_DLOPEN],
8498 [_LT_SET_OPTION([LT_INIT], [dlopen])
8499 AC_DIAGNOSE([obsolete],
8500 [$0: Remove this warning and the call to _LT_SET_OPTION when you
8501 put the 'dlopen' option into LT_INIT's first parameter.])
8502 ])
8503
8504 dnl aclocal-1.4 backwards compatibility:
8505 dnl AC_DEFUN([AC_LIBTOOL_DLOPEN], [])
8506
8507
8508 # win32-dll
8509 # ---------
8510 # Declare package support for building win32 dll's.
8511 LT_OPTION_DEFINE([LT_INIT], [win32-dll],
8512 [enable_win32_dll=yes
8513
8514 case $host in
8515 *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-cegcc*)
8516 AC_CHECK_TOOL(AS, as, false)
8517 AC_CHECK_TOOL(DLLTOOL, dlltool, false)
8518 AC_CHECK_TOOL(OBJDUMP, objdump, false)
8519 ;;
8520 esac
8521
8522 test -z "$AS" && AS=as
8523 _LT_DECL([], [AS], [1], [Assembler program])dnl
8524
8525 test -z "$DLLTOOL" && DLLTOOL=dlltool
8526 _LT_DECL([], [DLLTOOL], [1], [DLL creation program])dnl
8527
8528 test -z "$OBJDUMP" && OBJDUMP=objdump
8529 _LT_DECL([], [OBJDUMP], [1], [Object dumper program])dnl
8530 ])# win32-dll
8531
8532 AU_DEFUN([AC_LIBTOOL_WIN32_DLL],
8533 [AC_REQUIRE([AC_CANONICAL_HOST])dnl
8534 _LT_SET_OPTION([LT_INIT], [win32-dll])
8535 AC_DIAGNOSE([obsolete],
8536 [$0: Remove this warning and the call to _LT_SET_OPTION when you
8537 put the 'win32-dll' option into LT_INIT's first parameter.])
8538 ])
8539
8540 dnl aclocal-1.4 backwards compatibility:
8541 dnl AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [])
8542
8543
8544 # _LT_ENABLE_SHARED([DEFAULT])
8545 # ----------------------------
8546 # implement the --enable-shared flag, and supports the 'shared' and
8547 # 'disable-shared' LT_INIT options.
8548 # DEFAULT is either 'yes' or 'no'. If omitted, it defaults to 'yes'.
8549 m4_define([_LT_ENABLE_SHARED],
8550 [m4_define([_LT_ENABLE_SHARED_DEFAULT], [m4_if($1, no, no, yes)])dnl
8551 AC_ARG_ENABLE([shared],
8552 [AS_HELP_STRING([--enable-shared@<:@=PKGS@:>@],
8553 [build shared libraries @<:@default=]_LT_ENABLE_SHARED_DEFAULT[@:>@])],
8554 [p=${PACKAGE-default}
8555 case $enableval in
8556 yes) enable_shared=yes ;;
8557 no) enable_shared=no ;;
8558 *)
8559 enable_shared=no
8560 # Look at the argument we got. We use all the common list separators.
8561 lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
8562 for pkg in $enableval; do
8563 IFS=$lt_save_ifs
8564 if test "X$pkg" = "X$p"; then
8565 enable_shared=yes
8566 fi
8567 done
8568 IFS=$lt_save_ifs
8569 ;;
8570 esac],
8571 [enable_shared=]_LT_ENABLE_SHARED_DEFAULT)
8572
8573 _LT_DECL([build_libtool_libs], [enable_shared], [0],
8574 [Whether or not to build shared libraries])
8575 ])# _LT_ENABLE_SHARED
8576
8577 LT_OPTION_DEFINE([LT_INIT], [shared], [_LT_ENABLE_SHARED([yes])])
8578 LT_OPTION_DEFINE([LT_INIT], [disable-shared], [_LT_ENABLE_SHARED([no])])
8579
8580 # Old names:
8581 AC_DEFUN([AC_ENABLE_SHARED],
8582 [_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[shared])
8583 ])
8584
8585 AC_DEFUN([AC_DISABLE_SHARED],
8586 [_LT_SET_OPTION([LT_INIT], [disable-shared])
8587 ])
8588
8589 AU_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)])
8590 AU_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)])
8591
8592 dnl aclocal-1.4 backwards compatibility:
8593 dnl AC_DEFUN([AM_ENABLE_SHARED], [])
8594 dnl AC_DEFUN([AM_DISABLE_SHARED], [])
8595
8596
8597
8598 # _LT_ENABLE_STATIC([DEFAULT])
8599 # ----------------------------
8600 # implement the --enable-static flag, and support the 'static' and
8601 # 'disable-static' LT_INIT options.
8602 # DEFAULT is either 'yes' or 'no'. If omitted, it defaults to 'yes'.
8603 m4_define([_LT_ENABLE_STATIC],
8604 [m4_define([_LT_ENABLE_STATIC_DEFAULT], [m4_if($1, no, no, yes)])dnl
8605 AC_ARG_ENABLE([static],
8606 [AS_HELP_STRING([--enable-static@<:@=PKGS@:>@],
8607 [build static libraries @<:@default=]_LT_ENABLE_STATIC_DEFAULT[@:>@])],
8608 [p=${PACKAGE-default}
8609 case $enableval in
8610 yes) enable_static=yes ;;
8611 no) enable_static=no ;;
8612 *)
8613 enable_static=no
8614 # Look at the argument we got. We use all the common list separators.
8615 lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
8616 for pkg in $enableval; do
8617 IFS=$lt_save_ifs
8618 if test "X$pkg" = "X$p"; then
8619 enable_static=yes
8620 fi
8621 done
8622 IFS=$lt_save_ifs
8623 ;;
8624 esac],
8625 [enable_static=]_LT_ENABLE_STATIC_DEFAULT)
8626
8627 _LT_DECL([build_old_libs], [enable_static], [0],
8628 [Whether or not to build static libraries])
8629 ])# _LT_ENABLE_STATIC
8630
8631 LT_OPTION_DEFINE([LT_INIT], [static], [_LT_ENABLE_STATIC([yes])])
8632 LT_OPTION_DEFINE([LT_INIT], [disable-static], [_LT_ENABLE_STATIC([no])])
8633
8634 # Old names:
8635 AC_DEFUN([AC_ENABLE_STATIC],
8636 [_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[static])
8637 ])
8638
8639 AC_DEFUN([AC_DISABLE_STATIC],
8640 [_LT_SET_OPTION([LT_INIT], [disable-static])
8641 ])
8642
8643 AU_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)])
8644 AU_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)])
8645
8646 dnl aclocal-1.4 backwards compatibility:
8647 dnl AC_DEFUN([AM_ENABLE_STATIC], [])
8648 dnl AC_DEFUN([AM_DISABLE_STATIC], [])
8649
8650
8651
8652 # _LT_ENABLE_FAST_INSTALL([DEFAULT])
8653 # ----------------------------------
8654 # implement the --enable-fast-install flag, and support the 'fast-install'
8655 # and 'disable-fast-install' LT_INIT options.
8656 # DEFAULT is either 'yes' or 'no'. If omitted, it defaults to 'yes'.
8657 m4_define([_LT_ENABLE_FAST_INSTALL],
8658 [m4_define([_LT_ENABLE_FAST_INSTALL_DEFAULT], [m4_if($1, no, no, yes)])dnl
8659 AC_ARG_ENABLE([fast-install],
8660 [AS_HELP_STRING([--enable-fast-install@<:@=PKGS@:>@],
8661 [optimize for fast installation @<:@default=]_LT_ENABLE_FAST_INSTALL_DEFAULT[@:>@])],
8662 [p=${PACKAGE-default}
8663 case $enableval in
8664 yes) enable_fast_install=yes ;;
8665 no) enable_fast_install=no ;;
8666 *)
8667 enable_fast_install=no
8668 # Look at the argument we got. We use all the common list separators.
8669 lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
8670 for pkg in $enableval; do
8671 IFS=$lt_save_ifs
8672 if test "X$pkg" = "X$p"; then
8673 enable_fast_install=yes
8674 fi
8675 done
8676 IFS=$lt_save_ifs
8677 ;;
8678 esac],
8679 [enable_fast_install=]_LT_ENABLE_FAST_INSTALL_DEFAULT)
8680
8681 _LT_DECL([fast_install], [enable_fast_install], [0],
8682 [Whether or not to optimize for fast installation])dnl
8683 ])# _LT_ENABLE_FAST_INSTALL
8684
8685 LT_OPTION_DEFINE([LT_INIT], [fast-install], [_LT_ENABLE_FAST_INSTALL([yes])])
8686 LT_OPTION_DEFINE([LT_INIT], [disable-fast-install], [_LT_ENABLE_FAST_INSTALL([no])])
8687
8688 # Old names:
8689 AU_DEFUN([AC_ENABLE_FAST_INSTALL],
8690 [_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[fast-install])
8691 AC_DIAGNOSE([obsolete],
8692 [$0: Remove this warning and the call to _LT_SET_OPTION when you put
8693 the 'fast-install' option into LT_INIT's first parameter.])
8694 ])
8695
8696 AU_DEFUN([AC_DISABLE_FAST_INSTALL],
8697 [_LT_SET_OPTION([LT_INIT], [disable-fast-install])
8698 AC_DIAGNOSE([obsolete],
8699 [$0: Remove this warning and the call to _LT_SET_OPTION when you put
8700 the 'disable-fast-install' option into LT_INIT's first parameter.])
8701 ])
8702
8703 dnl aclocal-1.4 backwards compatibility:
8704 dnl AC_DEFUN([AC_ENABLE_FAST_INSTALL], [])
8705 dnl AC_DEFUN([AM_DISABLE_FAST_INSTALL], [])
8706
8707
8708 # _LT_WITH_AIX_SONAME([DEFAULT])
8709 # ----------------------------------
8710 # implement the --with-aix-soname flag, and support the `aix-soname=aix'
8711 # and `aix-soname=both' and `aix-soname=svr4' LT_INIT options. DEFAULT
8712 # is either `aix', `both' or `svr4'. If omitted, it defaults to `aix'.
8713 m4_define([_LT_WITH_AIX_SONAME],
8714 [m4_define([_LT_WITH_AIX_SONAME_DEFAULT], [m4_if($1, svr4, svr4, m4_if($1, both, both, aix))])dnl
8715 shared_archive_member_spec=
8716 case $host,$enable_shared in
8717 power*-*-aix[[5-9]]*,yes)
8718 AC_MSG_CHECKING([which variant of shared library versioning to provide])
8719 AC_ARG_WITH([aix-soname],
8720 [AS_HELP_STRING([--with-aix-soname=aix|svr4|both],
8721 [shared library versioning (aka "SONAME") variant to provide on AIX, @<:@default=]_LT_WITH_AIX_SONAME_DEFAULT[@:>@.])],
8722 [case $withval in
8723 aix|svr4|both)
8724 ;;
8725 *)
8726 AC_MSG_ERROR([Unknown argument to --with-aix-soname])
8727 ;;
8728 esac
8729 lt_cv_with_aix_soname=$with_aix_soname],
8730 [AC_CACHE_VAL([lt_cv_with_aix_soname],
8731 [lt_cv_with_aix_soname=]_LT_WITH_AIX_SONAME_DEFAULT)
8732 with_aix_soname=$lt_cv_with_aix_soname])
8733 AC_MSG_RESULT([$with_aix_soname])
8734 if test aix != "$with_aix_soname"; then
8735 # For the AIX way of multilib, we name the shared archive member
8736 # based on the bitwidth used, traditionally 'shr.o' or 'shr_64.o',
8737 # and 'shr.imp' or 'shr_64.imp', respectively, for the Import File.
8738 # Even when GNU compilers ignore OBJECT_MODE but need '-maix64' flag,
8739 # the AIX toolchain works better with OBJECT_MODE set (default 32).
8740 if test 64 = "${OBJECT_MODE-32}"; then
8741 shared_archive_member_spec=shr_64
8742 else
8743 shared_archive_member_spec=shr
8744 fi
8745 fi
8746 ;;
8747 *)
8748 with_aix_soname=aix
8749 ;;
8750 esac
8751
8752 _LT_DECL([], [shared_archive_member_spec], [0],
8753 [Shared archive member basename, for filename based shared library versioning on AIX])dnl
8754 ])# _LT_WITH_AIX_SONAME
8755
8756 LT_OPTION_DEFINE([LT_INIT], [aix-soname=aix], [_LT_WITH_AIX_SONAME([aix])])
8757 LT_OPTION_DEFINE([LT_INIT], [aix-soname=both], [_LT_WITH_AIX_SONAME([both])])
8758 LT_OPTION_DEFINE([LT_INIT], [aix-soname=svr4], [_LT_WITH_AIX_SONAME([svr4])])
8759
8760
8761 # _LT_WITH_PIC([MODE])
8762 # --------------------
8763 # implement the --with-pic flag, and support the 'pic-only' and 'no-pic'
8764 # LT_INIT options.
8765 # MODE is either 'yes' or 'no'. If omitted, it defaults to 'both'.
8766 m4_define([_LT_WITH_PIC],
8767 [AC_ARG_WITH([pic],
8768 [AS_HELP_STRING([--with-pic@<:@=PKGS@:>@],
8769 [try to use only PIC/non-PIC objects @<:@default=use both@:>@])],
8770 [lt_p=${PACKAGE-default}
8771 case $withval in
8772 yes|no) pic_mode=$withval ;;
8773 *)
8774 pic_mode=default
8775 # Look at the argument we got. We use all the common list separators.
8776 lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
8777 for lt_pkg in $withval; do
8778 IFS=$lt_save_ifs
8779 if test "X$lt_pkg" = "X$lt_p"; then
8780 pic_mode=yes
8781 fi
8782 done
8783 IFS=$lt_save_ifs
8784 ;;
8785 esac],
8786 [pic_mode=m4_default([$1], [default])])
8787
8788 _LT_DECL([], [pic_mode], [0], [What type of objects to build])dnl
8789 ])# _LT_WITH_PIC
8790
8791 LT_OPTION_DEFINE([LT_INIT], [pic-only], [_LT_WITH_PIC([yes])])
8792 LT_OPTION_DEFINE([LT_INIT], [no-pic], [_LT_WITH_PIC([no])])
8793
8794 # Old name:
8795 AU_DEFUN([AC_LIBTOOL_PICMODE],
8796 [_LT_SET_OPTION([LT_INIT], [pic-only])
8797 AC_DIAGNOSE([obsolete],
8798 [$0: Remove this warning and the call to _LT_SET_OPTION when you
8799 put the 'pic-only' option into LT_INIT's first parameter.])
8800 ])
8801
8802 dnl aclocal-1.4 backwards compatibility:
8803 dnl AC_DEFUN([AC_LIBTOOL_PICMODE], [])
8804
8805
8806 m4_define([_LTDL_MODE], [])
8807 LT_OPTION_DEFINE([LTDL_INIT], [nonrecursive],
8808 [m4_define([_LTDL_MODE], [nonrecursive])])
8809 LT_OPTION_DEFINE([LTDL_INIT], [recursive],
8810 [m4_define([_LTDL_MODE], [recursive])])
8811 LT_OPTION_DEFINE([LTDL_INIT], [subproject],
8812 [m4_define([_LTDL_MODE], [subproject])])
8813
8814 m4_define([_LTDL_TYPE], [])
8815 LT_OPTION_DEFINE([LTDL_INIT], [installable],
8816 [m4_define([_LTDL_TYPE], [installable])])
8817 LT_OPTION_DEFINE([LTDL_INIT], [convenience],
8818 [m4_define([_LTDL_TYPE], [convenience])])
8819
8820 # ltsugar.m4 -- libtool m4 base layer. -*-Autoconf-*-
8821 #
8822 # Copyright (C) 2004-2005, 2007-2008, 2011-2015 Free Software
8823 # Foundation, Inc.
8824 # Written by Gary V. Vaughan, 2004
8825 #
8826 # This file is free software; the Free Software Foundation gives
8827 # unlimited permission to copy and/or distribute it, with or without
8828 # modifications, as long as this notice is preserved.
8829
8830 # serial 6 ltsugar.m4
8831
8832 # This is to help aclocal find these macros, as it can't see m4_define.
8833 AC_DEFUN([LTSUGAR_VERSION], [m4_if([0.1])])
8834
8835
8836 # lt_join(SEP, ARG1, [ARG2...])
8837 # -----------------------------
8838 # Produce ARG1SEPARG2...SEPARGn, omitting [] arguments and their
8839 # associated separator.
8840 # Needed until we can rely on m4_join from Autoconf 2.62, since all earlier
8841 # versions in m4sugar had bugs.
8842 m4_define([lt_join],
8843 [m4_if([$#], [1], [],
8844 [$#], [2], [[$2]],
8845 [m4_if([$2], [], [], [[$2]_])$0([$1], m4_shift(m4_shift($@)))])])
8846 m4_define([_lt_join],
8847 [m4_if([$#$2], [2], [],
8848 [m4_if([$2], [], [], [[$1$2]])$0([$1], m4_shift(m4_shift($@)))])])
8849
8850
8851 # lt_car(LIST)
8852 # lt_cdr(LIST)
8853 # ------------
8854 # Manipulate m4 lists.
8855 # These macros are necessary as long as will still need to support
8856 # Autoconf-2.59, which quotes differently.
8857 m4_define([lt_car], [[$1]])
8858 m4_define([lt_cdr],
8859 [m4_if([$#], 0, [m4_fatal([$0: cannot be called without arguments])],
8860 [$#], 1, [],
8861 [m4_dquote(m4_shift($@))])])
8862 m4_define([lt_unquote], $1)
8863
8864
8865 # lt_append(MACRO-NAME, STRING, [SEPARATOR])
8866 # ------------------------------------------
8867 # Redefine MACRO-NAME to hold its former content plus 'SEPARATOR''STRING'.
8868 # Note that neither SEPARATOR nor STRING are expanded; they are appended
8869 # to MACRO-NAME as is (leaving the expansion for when MACRO-NAME is invoked).
8870 # No SEPARATOR is output if MACRO-NAME was previously undefined (different
8871 # than defined and empty).
8872 #
8873 # This macro is needed until we can rely on Autoconf 2.62, since earlier
8874 # versions of m4sugar mistakenly expanded SEPARATOR but not STRING.
8875 m4_define([lt_append],
8876 [m4_define([$1],
8877 m4_ifdef([$1], [m4_defn([$1])[$3]])[$2])])
8878
8879
8880
8881 # lt_combine(SEP, PREFIX-LIST, INFIX, SUFFIX1, [SUFFIX2...])
8882 # ----------------------------------------------------------
8883 # Produce a SEP delimited list of all paired combinations of elements of
8884 # PREFIX-LIST with SUFFIX1 through SUFFIXn. Each element of the list
8885 # has the form PREFIXmINFIXSUFFIXn.
8886 # Needed until we can rely on m4_combine added in Autoconf 2.62.
8887 m4_define([lt_combine],
8888 [m4_if(m4_eval([$# > 3]), [1],
8889 [m4_pushdef([_Lt_sep], [m4_define([_Lt_sep], m4_defn([lt_car]))])]]dnl
8890 [[m4_foreach([_Lt_prefix], [$2],
8891 [m4_foreach([_Lt_suffix],
8892 ]m4_dquote(m4_dquote(m4_shift(m4_shift(m4_shift($@)))))[,
8893 [_Lt_sep([$1])[]m4_defn([_Lt_prefix])[$3]m4_defn([_Lt_suffix])])])])])
8894
8895
8896 # lt_if_append_uniq(MACRO-NAME, VARNAME, [SEPARATOR], [UNIQ], [NOT-UNIQ])
8897 # -----------------------------------------------------------------------
8898 # Iff MACRO-NAME does not yet contain VARNAME, then append it (delimited
8899 # by SEPARATOR if supplied) and expand UNIQ, else NOT-UNIQ.
8900 m4_define([lt_if_append_uniq],
8901 [m4_ifdef([$1],
8902 [m4_if(m4_index([$3]m4_defn([$1])[$3], [$3$2$3]), [-1],
8903 [lt_append([$1], [$2], [$3])$4],
8904 [$5])],
8905 [lt_append([$1], [$2], [$3])$4])])
8906
8907
8908 # lt_dict_add(DICT, KEY, VALUE)
8909 # -----------------------------
8910 m4_define([lt_dict_add],
8911 [m4_define([$1($2)], [$3])])
8912
8913
8914 # lt_dict_add_subkey(DICT, KEY, SUBKEY, VALUE)
8915 # --------------------------------------------
8916 m4_define([lt_dict_add_subkey],
8917 [m4_define([$1($2:$3)], [$4])])
8918
8919
8920 # lt_dict_fetch(DICT, KEY, [SUBKEY])
8921 # ----------------------------------
8922 m4_define([lt_dict_fetch],
8923 [m4_ifval([$3],
8924 m4_ifdef([$1($2:$3)], [m4_defn([$1($2:$3)])]),
8925 m4_ifdef([$1($2)], [m4_defn([$1($2)])]))])
8926
8927
8928 # lt_if_dict_fetch(DICT, KEY, [SUBKEY], VALUE, IF-TRUE, [IF-FALSE])
8929 # -----------------------------------------------------------------
8930 m4_define([lt_if_dict_fetch],
8931 [m4_if(lt_dict_fetch([$1], [$2], [$3]), [$4],
8932 [$5],
8933 [$6])])
8934
8935
8936 # lt_dict_filter(DICT, [SUBKEY], VALUE, [SEPARATOR], KEY, [...])
8937 # --------------------------------------------------------------
8938 m4_define([lt_dict_filter],
8939 [m4_if([$5], [], [],
8940 [lt_join(m4_quote(m4_default([$4], [[, ]])),
8941 lt_unquote(m4_split(m4_normalize(m4_foreach(_Lt_key, lt_car([m4_shiftn(4, $@)]),
8942 [lt_if_dict_fetch([$1], _Lt_key, [$2], [$3], [_Lt_key ])])))))])[]dnl
8943 ])
8944
8945 # ltversion.m4 -- version numbers -*- Autoconf -*-
8946 #
8947 # Copyright (C) 2004, 2011-2015 Free Software Foundation, Inc.
8948 # Written by Scott James Remnant, 2004
8949 #
8950 # This file is free software; the Free Software Foundation gives
8951 # unlimited permission to copy and/or distribute it, with or without
8952 # modifications, as long as this notice is preserved.
8953
8954 # @configure_input@
8955
8956 # serial 4179 ltversion.m4
8957 # This file is part of GNU Libtool
8958
8959 m4_define([LT_PACKAGE_VERSION], [2.4.6])
8960 m4_define([LT_PACKAGE_REVISION], [2.4.6])
8961
8962 AC_DEFUN([LTVERSION_VERSION],
8963 [macro_version='2.4.6'
8964 macro_revision='2.4.6'
8965 _LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?])
8966 _LT_DECL(, macro_revision, 0)
8967 ])
8968
8969 # lt~obsolete.m4 -- aclocal satisfying obsolete definitions. -*-Autoconf-*-
8970 #
8971 # Copyright (C) 2004-2005, 2007, 2009, 2011-2015 Free Software
8972 # Foundation, Inc.
8973 # Written by Scott James Remnant, 2004.
8974 #
8975 # This file is free software; the Free Software Foundation gives
8976 # unlimited permission to copy and/or distribute it, with or without
8977 # modifications, as long as this notice is preserved.
8978
8979 # serial 5 lt~obsolete.m4
8980
8981 # These exist entirely to fool aclocal when bootstrapping libtool.
8982 #
8983 # In the past libtool.m4 has provided macros via AC_DEFUN (or AU_DEFUN),
8984 # which have later been changed to m4_define as they aren't part of the
8985 # exported API, or moved to Autoconf or Automake where they belong.
8986 #
8987 # The trouble is, aclocal is a bit thick. It'll see the old AC_DEFUN
8988 # in /usr/share/aclocal/libtool.m4 and remember it, then when it sees us
8989 # using a macro with the same name in our local m4/libtool.m4 it'll
8990 # pull the old libtool.m4 in (it doesn't see our shiny new m4_define
8991 # and doesn't know about Autoconf macros at all.)
8992 #
8993 # So we provide this file, which has a silly filename so it's always
8994 # included after everything else. This provides aclocal with the
8995 # AC_DEFUNs it wants, but when m4 processes it, it doesn't do anything
8996 # because those macros already exist, or will be overwritten later.
8997 # We use AC_DEFUN over AU_DEFUN for compatibility with aclocal-1.6.
8998 #
8999 # Anytime we withdraw an AC_DEFUN or AU_DEFUN, remember to add it here.
9000 # Yes, that means every name once taken will need to remain here until
9001 # we give up compatibility with versions before 1.7, at which point
9002 # we need to keep only those names which we still refer to.
9003
9004 # This is to help aclocal find these macros, as it can't see m4_define.
9005 AC_DEFUN([LTOBSOLETE_VERSION], [m4_if([1])])
9006
9007 m4_ifndef([AC_LIBTOOL_LINKER_OPTION], [AC_DEFUN([AC_LIBTOOL_LINKER_OPTION])])
9008 m4_ifndef([AC_PROG_EGREP], [AC_DEFUN([AC_PROG_EGREP])])
9009 m4_ifndef([_LT_AC_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH])])
9010 m4_ifndef([_LT_AC_SHELL_INIT], [AC_DEFUN([_LT_AC_SHELL_INIT])])
9011 m4_ifndef([_LT_AC_SYS_LIBPATH_AIX], [AC_DEFUN([_LT_AC_SYS_LIBPATH_AIX])])
9012 m4_ifndef([_LT_PROG_LTMAIN], [AC_DEFUN([_LT_PROG_LTMAIN])])
9013 m4_ifndef([_LT_AC_TAGVAR], [AC_DEFUN([_LT_AC_TAGVAR])])
9014 m4_ifndef([AC_LTDL_ENABLE_INSTALL], [AC_DEFUN([AC_LTDL_ENABLE_INSTALL])])
9015 m4_ifndef([AC_LTDL_PREOPEN], [AC_DEFUN([AC_LTDL_PREOPEN])])
9016 m4_ifndef([_LT_AC_SYS_COMPILER], [AC_DEFUN([_LT_AC_SYS_COMPILER])])
9017 m4_ifndef([_LT_AC_LOCK], [AC_DEFUN([_LT_AC_LOCK])])
9018 m4_ifndef([AC_LIBTOOL_SYS_OLD_ARCHIVE], [AC_DEFUN([AC_LIBTOOL_SYS_OLD_ARCHIVE])])
9019 m4_ifndef([_LT_AC_TRY_DLOPEN_SELF], [AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF])])
9020 m4_ifndef([AC_LIBTOOL_PROG_CC_C_O], [AC_DEFUN([AC_LIBTOOL_PROG_CC_C_O])])
9021 m4_ifndef([AC_LIBTOOL_SYS_HARD_LINK_LOCKS], [AC_DEFUN([AC_LIBTOOL_SYS_HARD_LINK_LOCKS])])
9022 m4_ifndef([AC_LIBTOOL_OBJDIR], [AC_DEFUN([AC_LIBTOOL_OBJDIR])])
9023 m4_ifndef([AC_LTDL_OBJDIR], [AC_DEFUN([AC_LTDL_OBJDIR])])
9024 m4_ifndef([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH], [AC_DEFUN([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH])])
9025 m4_ifndef([AC_LIBTOOL_SYS_LIB_STRIP], [AC_DEFUN([AC_LIBTOOL_SYS_LIB_STRIP])])
9026 m4_ifndef([AC_PATH_MAGIC], [AC_DEFUN([AC_PATH_MAGIC])])
9027 m4_ifndef([AC_PROG_LD_GNU], [AC_DEFUN([AC_PROG_LD_GNU])])
9028 m4_ifndef([AC_PROG_LD_RELOAD_FLAG], [AC_DEFUN([AC_PROG_LD_RELOAD_FLAG])])
9029 m4_ifndef([AC_DEPLIBS_CHECK_METHOD], [AC_DEFUN([AC_DEPLIBS_CHECK_METHOD])])
9030 m4_ifndef([AC_LIBTOOL_PROG_COMPILER_NO_RTTI], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_NO_RTTI])])
9031 m4_ifndef([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE], [AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE])])
9032 m4_ifndef([AC_LIBTOOL_PROG_COMPILER_PIC], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_PIC])])
9033 m4_ifndef([AC_LIBTOOL_PROG_LD_SHLIBS], [AC_DEFUN([AC_LIBTOOL_PROG_LD_SHLIBS])])
9034 m4_ifndef([AC_LIBTOOL_POSTDEP_PREDEP], [AC_DEFUN([AC_LIBTOOL_POSTDEP_PREDEP])])
9035 m4_ifndef([LT_AC_PROG_EGREP], [AC_DEFUN([LT_AC_PROG_EGREP])])
9036 m4_ifndef([LT_AC_PROG_SED], [AC_DEFUN([LT_AC_PROG_SED])])
9037 m4_ifndef([_LT_CC_BASENAME], [AC_DEFUN([_LT_CC_BASENAME])])
9038 m4_ifndef([_LT_COMPILER_BOILERPLATE], [AC_DEFUN([_LT_COMPILER_BOILERPLATE])])
9039 m4_ifndef([_LT_LINKER_BOILERPLATE], [AC_DEFUN([_LT_LINKER_BOILERPLATE])])
9040 m4_ifndef([_AC_PROG_LIBTOOL], [AC_DEFUN([_AC_PROG_LIBTOOL])])
9041 m4_ifndef([AC_LIBTOOL_SETUP], [AC_DEFUN([AC_LIBTOOL_SETUP])])
9042 m4_ifndef([_LT_AC_CHECK_DLFCN], [AC_DEFUN([_LT_AC_CHECK_DLFCN])])
9043 m4_ifndef([AC_LIBTOOL_SYS_DYNAMIC_LINKER], [AC_DEFUN([AC_LIBTOOL_SYS_DYNAMIC_LINKER])])
9044 m4_ifndef([_LT_AC_TAGCONFIG], [AC_DEFUN([_LT_AC_TAGCONFIG])])
9045 m4_ifndef([AC_DISABLE_FAST_INSTALL], [AC_DEFUN([AC_DISABLE_FAST_INSTALL])])
9046 m4_ifndef([_LT_AC_LANG_CXX], [AC_DEFUN([_LT_AC_LANG_CXX])])
9047 m4_ifndef([_LT_AC_LANG_F77], [AC_DEFUN([_LT_AC_LANG_F77])])
9048 m4_ifndef([_LT_AC_LANG_GCJ], [AC_DEFUN([_LT_AC_LANG_GCJ])])
9049 m4_ifndef([AC_LIBTOOL_LANG_C_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_C_CONFIG])])
9050 m4_ifndef([_LT_AC_LANG_C_CONFIG], [AC_DEFUN([_LT_AC_LANG_C_CONFIG])])
9051 m4_ifndef([AC_LIBTOOL_LANG_CXX_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_CXX_CONFIG])])
9052 m4_ifndef([_LT_AC_LANG_CXX_CONFIG], [AC_DEFUN([_LT_AC_LANG_CXX_CONFIG])])
9053 m4_ifndef([AC_LIBTOOL_LANG_F77_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_F77_CONFIG])])
9054 m4_ifndef([_LT_AC_LANG_F77_CONFIG], [AC_DEFUN([_LT_AC_LANG_F77_CONFIG])])
9055 m4_ifndef([AC_LIBTOOL_LANG_GCJ_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_GCJ_CONFIG])])
9056 m4_ifndef([_LT_AC_LANG_GCJ_CONFIG], [AC_DEFUN([_LT_AC_LANG_GCJ_CONFIG])])
9057 m4_ifndef([AC_LIBTOOL_LANG_RC_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_RC_CONFIG])])
9058 m4_ifndef([_LT_AC_LANG_RC_CONFIG], [AC_DEFUN([_LT_AC_LANG_RC_CONFIG])])
9059 m4_ifndef([AC_LIBTOOL_CONFIG], [AC_DEFUN([AC_LIBTOOL_CONFIG])])
9060 m4_ifndef([_LT_AC_FILE_LTDLL_C], [AC_DEFUN([_LT_AC_FILE_LTDLL_C])])
9061 m4_ifndef([_LT_REQUIRED_DARWIN_CHECKS], [AC_DEFUN([_LT_REQUIRED_DARWIN_CHECKS])])
9062 m4_ifndef([_LT_AC_PROG_CXXCPP], [AC_DEFUN([_LT_AC_PROG_CXXCPP])])
9063 m4_ifndef([_LT_PREPARE_SED_QUOTE_VARS], [AC_DEFUN([_LT_PREPARE_SED_QUOTE_VARS])])
9064 m4_ifndef([_LT_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_PROG_ECHO_BACKSLASH])])
9065 m4_ifndef([_LT_PROG_F77], [AC_DEFUN([_LT_PROG_F77])])
9066 m4_ifndef([_LT_PROG_FC], [AC_DEFUN([_LT_PROG_FC])])
9067 m4_ifndef([_LT_PROG_CXX], [AC_DEFUN([_LT_PROG_CXX])])
9068
9069 # Copyright (C) 2002-2017 Free Software Foundation, Inc.
9070 #
9071 # This file is free software; the Free Software Foundation
9072 # gives unlimited permission to copy and/or distribute it,
9073 # with or without modifications, as long as this notice is preserved.
9074
9075 # AM_AUTOMAKE_VERSION(VERSION)
9076 # ----------------------------
9077 # Automake X.Y traces this macro to ensure aclocal.m4 has been
9078 # generated from the m4 files accompanying Automake X.Y.
9079 # (This private macro should not be called outside this file.)
9080 AC_DEFUN([AM_AUTOMAKE_VERSION],
9081 [am__api_version='1.15'
9082 dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
9083 dnl require some minimum version. Point them to the right macro.
9084 m4_if([$1], [1.15.1], [],
9085 [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
9086 ])
9087
9088 # _AM_AUTOCONF_VERSION(VERSION)
9089 # -----------------------------
9090 # aclocal traces this macro to find the Autoconf version.
9091 # This is a private macro too. Using m4_define simplifies
9092 # the logic in aclocal, which can simply ignore this definition.
9093 m4_define([_AM_AUTOCONF_VERSION], [])
9094
9095 # AM_SET_CURRENT_AUTOMAKE_VERSION
9096 # -------------------------------
9097 # Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
9098 # This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
9099 AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
9100 [AM_AUTOMAKE_VERSION([1.15.1])dnl
9101 m4_ifndef([AC_AUTOCONF_VERSION],
9102 [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
9103 _AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
9104
9105 # AM_AUX_DIR_EXPAND -*- Autoconf -*-
9106
9107 # Copyright (C) 2001-2017 Free Software Foundation, Inc.
9108 #
9109 # This file is free software; the Free Software Foundation
9110 # gives unlimited permission to copy and/or distribute it,
9111 # with or without modifications, as long as this notice is preserved.
9112
9113 # For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets
9114 # $ac_aux_dir to '$srcdir/foo'. In other projects, it is set to
9115 # '$srcdir', '$srcdir/..', or '$srcdir/../..'.
9116 #
9117 # Of course, Automake must honor this variable whenever it calls a
9118 # tool from the auxiliary directory. The problem is that $srcdir (and
9119 # therefore $ac_aux_dir as well) can be either absolute or relative,
9120 # depending on how configure is run. This is pretty annoying, since
9121 # it makes $ac_aux_dir quite unusable in subdirectories: in the top
9122 # source directory, any form will work fine, but in subdirectories a
9123 # relative path needs to be adjusted first.
9124 #
9125 # $ac_aux_dir/missing
9126 # fails when called from a subdirectory if $ac_aux_dir is relative
9127 # $top_srcdir/$ac_aux_dir/missing
9128 # fails if $ac_aux_dir is absolute,
9129 # fails when called from a subdirectory in a VPATH build with
9130 # a relative $ac_aux_dir
9131 #
9132 # The reason of the latter failure is that $top_srcdir and $ac_aux_dir
9133 # are both prefixed by $srcdir. In an in-source build this is usually
9134 # harmless because $srcdir is '.', but things will broke when you
9135 # start a VPATH build or use an absolute $srcdir.
9136 #
9137 # So we could use something similar to $top_srcdir/$ac_aux_dir/missing,
9138 # iff we strip the leading $srcdir from $ac_aux_dir. That would be:
9139 # am_aux_dir='\$(top_srcdir)/'`expr "$ac_aux_dir" : "$srcdir//*\(.*\)"`
9140 # and then we would define $MISSING as
9141 # MISSING="\${SHELL} $am_aux_dir/missing"
9142 # This will work as long as MISSING is not called from configure, because
9143 # unfortunately $(top_srcdir) has no meaning in configure.
9144 # However there are other variables, like CC, which are often used in
9145 # configure, and could therefore not use this "fixed" $ac_aux_dir.
9146 #
9147 # Another solution, used here, is to always expand $ac_aux_dir to an
9148 # absolute PATH. The drawback is that using absolute paths prevent a
9149 # configured tree to be moved without reconfiguration.
9150
9151 AC_DEFUN([AM_AUX_DIR_EXPAND],
9152 [AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl
9153 # Expand $ac_aux_dir to an absolute path.
9154 am_aux_dir=`cd "$ac_aux_dir" && pwd`
9155 ])
9156
9157 # AM_CONDITIONAL -*- Autoconf -*-
9158
9159 # Copyright (C) 1997-2017 Free Software Foundation, Inc.
9160 #
9161 # This file is free software; the Free Software Foundation
9162 # gives unlimited permission to copy and/or distribute it,
9163 # with or without modifications, as long as this notice is preserved.
9164
9165 # AM_CONDITIONAL(NAME, SHELL-CONDITION)
9166 # -------------------------------------
9167 # Define a conditional.
9168 AC_DEFUN([AM_CONDITIONAL],
9169 [AC_PREREQ([2.52])dnl
9170 m4_if([$1], [TRUE], [AC_FATAL([$0: invalid condition: $1])],
9171 [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl
9172 AC_SUBST([$1_TRUE])dnl
9173 AC_SUBST([$1_FALSE])dnl
9174 _AM_SUBST_NOTMAKE([$1_TRUE])dnl
9175 _AM_SUBST_NOTMAKE([$1_FALSE])dnl
9176 m4_define([_AM_COND_VALUE_$1], [$2])dnl
9177 if $2; then
9178 $1_TRUE=
9179 $1_FALSE='#'
9180 else
9181 $1_TRUE='#'
9182 $1_FALSE=
9183 fi
9184 AC_CONFIG_COMMANDS_PRE(
9185 [if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then
9186 AC_MSG_ERROR([[conditional "$1" was never defined.
9187 Usually this means the macro was only invoked conditionally.]])
9188 fi])])
9189
9190 # Copyright (C) 1999-2017 Free Software Foundation, Inc.
9191 #
9192 # This file is free software; the Free Software Foundation
9193 # gives unlimited permission to copy and/or distribute it,
9194 # with or without modifications, as long as this notice is preserved.
9195
9196
9197 # There are a few dirty hacks below to avoid letting 'AC_PROG_CC' be
9198 # written in clear, in which case automake, when reading aclocal.m4,
9199 # will think it sees a *use*, and therefore will trigger all it's
9200 # C support machinery. Also note that it means that autoscan, seeing
9201 # CC etc. in the Makefile, will ask for an AC_PROG_CC use...
9202
9203
9204 # _AM_DEPENDENCIES(NAME)
9205 # ----------------------
9206 # See how the compiler implements dependency checking.
9207 # NAME is "CC", "CXX", "OBJC", "OBJCXX", "UPC", or "GJC".
9208 # We try a few techniques and use that to set a single cache variable.
9209 #
9210 # We don't AC_REQUIRE the corresponding AC_PROG_CC since the latter was
9211 # modified to invoke _AM_DEPENDENCIES(CC); we would have a circular
9212 # dependency, and given that the user is not expected to run this macro,
9213 # just rely on AC_PROG_CC.
9214 AC_DEFUN([_AM_DEPENDENCIES],
9215 [AC_REQUIRE([AM_SET_DEPDIR])dnl
9216 AC_REQUIRE([AM_OUTPUT_DEPENDENCY_COMMANDS])dnl
9217 AC_REQUIRE([AM_MAKE_INCLUDE])dnl
9218 AC_REQUIRE([AM_DEP_TRACK])dnl
9219
9220 m4_if([$1], [CC], [depcc="$CC" am_compiler_list=],
9221 [$1], [CXX], [depcc="$CXX" am_compiler_list=],
9222 [$1], [OBJC], [depcc="$OBJC" am_compiler_list='gcc3 gcc'],
9223 [$1], [OBJCXX], [depcc="$OBJCXX" am_compiler_list='gcc3 gcc'],
9224 [$1], [UPC], [depcc="$UPC" am_compiler_list=],
9225 [$1], [GCJ], [depcc="$GCJ" am_compiler_list='gcc3 gcc'],
9226 [depcc="$$1" am_compiler_list=])
9227
9228 AC_CACHE_CHECK([dependency style of $depcc],
9229 [am_cv_$1_dependencies_compiler_type],
9230 [if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
9231 # We make a subdir and do the tests there. Otherwise we can end up
9232 # making bogus files that we don't know about and never remove. For
9233 # instance it was reported that on HP-UX the gcc test will end up
9234 # making a dummy file named 'D' -- because '-MD' means "put the output
9235 # in D".
9236 rm -rf conftest.dir
9237 mkdir conftest.dir
9238 # Copy depcomp to subdir because otherwise we won't find it if we're
9239 # using a relative directory.
9240 cp "$am_depcomp" conftest.dir
9241 cd conftest.dir
9242 # We will build objects and dependencies in a subdirectory because
9243 # it helps to detect inapplicable dependency modes. For instance
9244 # both Tru64's cc and ICC support -MD to output dependencies as a
9245 # side effect of compilation, but ICC will put the dependencies in
9246 # the current directory while Tru64 will put them in the object
9247 # directory.
9248 mkdir sub
9249
9250 am_cv_$1_dependencies_compiler_type=none
9251 if test "$am_compiler_list" = ""; then
9252 am_compiler_list=`sed -n ['s/^#*\([a-zA-Z0-9]*\))$/\1/p'] < ./depcomp`
9253 fi
9254 am__universal=false
9255 m4_case([$1], [CC],
9256 [case " $depcc " in #(
9257 *\ -arch\ *\ -arch\ *) am__universal=true ;;
9258 esac],
9259 [CXX],
9260 [case " $depcc " in #(
9261 *\ -arch\ *\ -arch\ *) am__universal=true ;;
9262 esac])
9263
9264 for depmode in $am_compiler_list; do
9265 # Setup a source with many dependencies, because some compilers
9266 # like to wrap large dependency lists on column 80 (with \), and
9267 # we should not choose a depcomp mode which is confused by this.
9268 #
9269 # We need to recreate these files for each test, as the compiler may
9270 # overwrite some of them when testing with obscure command lines.
9271 # This happens at least with the AIX C compiler.
9272 : > sub/conftest.c
9273 for i in 1 2 3 4 5 6; do
9274 echo '#include "conftst'$i'.h"' >> sub/conftest.c
9275 # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with
9276 # Solaris 10 /bin/sh.
9277 echo '/* dummy */' > sub/conftst$i.h
9278 done
9279 echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
9280
9281 # We check with '-c' and '-o' for the sake of the "dashmstdout"
9282 # mode. It turns out that the SunPro C++ compiler does not properly
9283 # handle '-M -o', and we need to detect this. Also, some Intel
9284 # versions had trouble with output in subdirs.
9285 am__obj=sub/conftest.${OBJEXT-o}
9286 am__minus_obj="-o $am__obj"
9287 case $depmode in
9288 gcc)
9289 # This depmode causes a compiler race in universal mode.
9290 test "$am__universal" = false || continue
9291 ;;
9292 nosideeffect)
9293 # After this tag, mechanisms are not by side-effect, so they'll
9294 # only be used when explicitly requested.
9295 if test "x$enable_dependency_tracking" = xyes; then
9296 continue
9297 else
9298 break
9299 fi
9300 ;;
9301 msvc7 | msvc7msys | msvisualcpp | msvcmsys)
9302 # This compiler won't grok '-c -o', but also, the minuso test has
9303 # not run yet. These depmodes are late enough in the game, and
9304 # so weak that their functioning should not be impacted.
9305 am__obj=conftest.${OBJEXT-o}
9306 am__minus_obj=
9307 ;;
9308 none) break ;;
9309 esac
9310 if depmode=$depmode \
9311 source=sub/conftest.c object=$am__obj \
9312 depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
9313 $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \
9314 >/dev/null 2>conftest.err &&
9315 grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 &&
9316 grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
9317 grep $am__obj sub/conftest.Po > /dev/null 2>&1 &&
9318 ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
9319 # icc doesn't choke on unknown options, it will just issue warnings
9320 # or remarks (even with -Werror). So we grep stderr for any message
9321 # that says an option was ignored or not supported.
9322 # When given -MP, icc 7.0 and 7.1 complain thusly:
9323 # icc: Command line warning: ignoring option '-M'; no argument required
9324 # The diagnosis changed in icc 8.0:
9325 # icc: Command line remark: option '-MP' not supported
9326 if (grep 'ignoring option' conftest.err ||
9327 grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
9328 am_cv_$1_dependencies_compiler_type=$depmode
9329 break
9330 fi
9331 fi
9332 done
9333
9334 cd ..
9335 rm -rf conftest.dir
9336 else
9337 am_cv_$1_dependencies_compiler_type=none
9338 fi
9339 ])
9340 AC_SUBST([$1DEPMODE], [depmode=$am_cv_$1_dependencies_compiler_type])
9341 AM_CONDITIONAL([am__fastdep$1], [
9342 test "x$enable_dependency_tracking" != xno \
9343 && test "$am_cv_$1_dependencies_compiler_type" = gcc3])
9344 ])
9345
9346
9347 # AM_SET_DEPDIR
9348 # -------------
9349 # Choose a directory name for dependency files.
9350 # This macro is AC_REQUIREd in _AM_DEPENDENCIES.
9351 AC_DEFUN([AM_SET_DEPDIR],
9352 [AC_REQUIRE([AM_SET_LEADING_DOT])dnl
9353 AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl
9354 ])
9355
9356
9357 # AM_DEP_TRACK
9358 # ------------
9359 AC_DEFUN([AM_DEP_TRACK],
9360 [AC_ARG_ENABLE([dependency-tracking], [dnl
9361 AS_HELP_STRING(
9362 [--enable-dependency-tracking],
9363 [do not reject slow dependency extractors])
9364 AS_HELP_STRING(
9365 [--disable-dependency-tracking],
9366 [speeds up one-time build])])
9367 if test "x$enable_dependency_tracking" != xno; then
9368 am_depcomp="$ac_aux_dir/depcomp"
9369 AMDEPBACKSLASH='\'
9370 am__nodep='_no'
9371 fi
9372 AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno])
9373 AC_SUBST([AMDEPBACKSLASH])dnl
9374 _AM_SUBST_NOTMAKE([AMDEPBACKSLASH])dnl
9375 AC_SUBST([am__nodep])dnl
9376 _AM_SUBST_NOTMAKE([am__nodep])dnl
9377 ])
9378
9379 # Generate code to set up dependency tracking. -*- Autoconf -*-
9380
9381 # Copyright (C) 1999-2017 Free Software Foundation, Inc.
9382 #
9383 # This file is free software; the Free Software Foundation
9384 # gives unlimited permission to copy and/or distribute it,
9385 # with or without modifications, as long as this notice is preserved.
9386
9387
9388 # _AM_OUTPUT_DEPENDENCY_COMMANDS
9389 # ------------------------------
9390 AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS],
9391 [{
9392 # Older Autoconf quotes --file arguments for eval, but not when files
9393 # are listed without --file. Let's play safe and only enable the eval
9394 # if we detect the quoting.
9395 case $CONFIG_FILES in
9396 *\'*) eval set x "$CONFIG_FILES" ;;
9397 *) set x $CONFIG_FILES ;;
9398 esac
9399 shift
9400 for mf
9401 do
9402 # Strip MF so we end up with the name of the file.
9403 mf=`echo "$mf" | sed -e 's/:.*$//'`
9404 # Check whether this is an Automake generated Makefile or not.
9405 # We used to match only the files named 'Makefile.in', but
9406 # some people rename them; so instead we look at the file content.
9407 # Grep'ing the first line is not enough: some people post-process
9408 # each Makefile.in and add a new line on top of each file to say so.
9409 # Grep'ing the whole file is not good either: AIX grep has a line
9410 # limit of 2048, but all sed's we know have understand at least 4000.
9411 if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then
9412 dirpart=`AS_DIRNAME("$mf")`
9413 else
9414 continue
9415 fi
9416 # Extract the definition of DEPDIR, am__include, and am__quote
9417 # from the Makefile without running 'make'.
9418 DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
9419 test -z "$DEPDIR" && continue
9420 am__include=`sed -n 's/^am__include = //p' < "$mf"`
9421 test -z "$am__include" && continue
9422 am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
9423 # Find all dependency output files, they are included files with
9424 # $(DEPDIR) in their names. We invoke sed twice because it is the
9425 # simplest approach to changing $(DEPDIR) to its actual value in the
9426 # expansion.
9427 for file in `sed -n "
9428 s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
9429 sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g'`; do
9430 # Make sure the directory exists.
9431 test -f "$dirpart/$file" && continue
9432 fdir=`AS_DIRNAME(["$file"])`
9433 AS_MKDIR_P([$dirpart/$fdir])
9434 # echo "creating $dirpart/$file"
9435 echo '# dummy' > "$dirpart/$file"
9436 done
9437 done
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
9447 # is enabled. FIXME. This creates each '.P' file that we will
9448 # need in 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" ac_aux_dir="$ac_aux_dir"])
9453 ])
9454
9455 # Do all the work for Automake. -*- Autoconf -*-
9456
9457 # Copyright (C) 1996-2017 Free Software Foundation, Inc.
9458 #
9459 # This file is free software; the Free Software Foundation
9460 # gives unlimited permission to copy and/or distribute it,
9461 # with or without modifications, as long as this notice is preserved.
9462
9463 # This macro actually does too much. Some checks are only needed if
9464 # your package does certain things. But this isn't really a big deal.
9465
9466 dnl Redefine AC_PROG_CC to automatically invoke _AM_PROG_CC_C_O.
9467 m4_define([AC_PROG_CC],
9468 m4_defn([AC_PROG_CC])
9469 [_AM_PROG_CC_C_O
9470 ])
9471
9472 # AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE])
9473 # AM_INIT_AUTOMAKE([OPTIONS])
9474 # -----------------------------------------------
9475 # The call with PACKAGE and VERSION arguments is the old style
9476 # call (pre autoconf-2.50), which is being phased out. PACKAGE
9477 # and VERSION should now be passed to AC_INIT and removed from
9478 # the call to AM_INIT_AUTOMAKE.
9479 # We support both call styles for the transition. After
9480 # the next Automake release, Autoconf can make the AC_INIT
9481 # arguments mandatory, and then we can depend on a new Autoconf
9482 # release and drop the old call support.
9483 AC_DEFUN([AM_INIT_AUTOMAKE],
9484 [AC_PREREQ([2.65])dnl
9485 dnl Autoconf wants to disallow AM_ names. We explicitly allow
9486 dnl the ones we care about.
9487 m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl
9488 AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl
9489 AC_REQUIRE([AC_PROG_INSTALL])dnl
9490 if test "`cd $srcdir && pwd`" != "`pwd`"; then
9491 # Use -I$(srcdir) only when $(srcdir) != ., so that make's output
9492 # is not polluted with repeated "-I."
9493 AC_SUBST([am__isrc], [' -I$(srcdir)'])_AM_SUBST_NOTMAKE([am__isrc])dnl
9494 # test to see if srcdir already configured
9495 if test -f $srcdir/config.status; then
9496 AC_MSG_ERROR([source directory already configured; run "make distclean" there first])
9497 fi
9498 fi
9499
9500 # test whether we have cygpath
9501 if test -z "$CYGPATH_W"; then
9502 if (cygpath --version) >/dev/null 2>/dev/null; then
9503 CYGPATH_W='cygpath -w'
9504 else
9505 CYGPATH_W=echo
9506 fi
9507 fi
9508 AC_SUBST([CYGPATH_W])
9509
9510 # Define the identity of the package.
9511 dnl Distinguish between old-style and new-style calls.
9512 m4_ifval([$2],
9513 [AC_DIAGNOSE([obsolete],
9514 [$0: two- and three-arguments forms are deprecated.])
9515 m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl
9516 AC_SUBST([PACKAGE], [$1])dnl
9517 AC_SUBST([VERSION], [$2])],
9518 [_AM_SET_OPTIONS([$1])dnl
9519 dnl Diagnose old-style AC_INIT with new-style AM_AUTOMAKE_INIT.
9520 m4_if(
9521 m4_ifdef([AC_PACKAGE_NAME], [ok]):m4_ifdef([AC_PACKAGE_VERSION], [ok]),
9522 [ok:ok],,
9523 [m4_fatal([AC_INIT should be called with package and version arguments])])dnl
9524 AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl
9525 AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl
9526
9527 _AM_IF_OPTION([no-define],,
9528 [AC_DEFINE_UNQUOTED([PACKAGE], ["$PACKAGE"], [Name of package])
9529 AC_DEFINE_UNQUOTED([VERSION], ["$VERSION"], [Version number of package])])dnl
9530
9531 # Some tools Automake needs.
9532 AC_REQUIRE([AM_SANITY_CHECK])dnl
9533 AC_REQUIRE([AC_ARG_PROGRAM])dnl
9534 AM_MISSING_PROG([ACLOCAL], [aclocal-${am__api_version}])
9535 AM_MISSING_PROG([AUTOCONF], [autoconf])
9536 AM_MISSING_PROG([AUTOMAKE], [automake-${am__api_version}])
9537 AM_MISSING_PROG([AUTOHEADER], [autoheader])
9538 AM_MISSING_PROG([MAKEINFO], [makeinfo])
9539 AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
9540 AC_REQUIRE([AM_PROG_INSTALL_STRIP])dnl
9541 AC_REQUIRE([AC_PROG_MKDIR_P])dnl
9542 # For better backward compatibility. To be removed once Automake 1.9.x
9543 # dies out for good. For more background, see:
9544 # <http://lists.gnu.org/archive/html/automake/2012-07/msg00001.html>
9545 # <http://lists.gnu.org/archive/html/automake/2012-07/msg00014.html>
9546 AC_SUBST([mkdir_p], ['$(MKDIR_P)'])
9547 # We need awk for the "check" target (and possibly the TAP driver). The
9548 # system "awk" is bad on some platforms.
9549 AC_REQUIRE([AC_PROG_AWK])dnl
9550 AC_REQUIRE([AC_PROG_MAKE_SET])dnl
9551 AC_REQUIRE([AM_SET_LEADING_DOT])dnl
9552 _AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])],
9553 [_AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])],
9554 [_AM_PROG_TAR([v7])])])
9555 _AM_IF_OPTION([no-dependencies],,
9556 [AC_PROVIDE_IFELSE([AC_PROG_CC],
9557 [_AM_DEPENDENCIES([CC])],
9558 [m4_define([AC_PROG_CC],
9559 m4_defn([AC_PROG_CC])[_AM_DEPENDENCIES([CC])])])dnl
9560 AC_PROVIDE_IFELSE([AC_PROG_CXX],
9561 [_AM_DEPENDENCIES([CXX])],
9562 [m4_define([AC_PROG_CXX],
9563 m4_defn([AC_PROG_CXX])[_AM_DEPENDENCIES([CXX])])])dnl
9564 AC_PROVIDE_IFELSE([AC_PROG_OBJC],
9565 [_AM_DEPENDENCIES([OBJC])],
9566 [m4_define([AC_PROG_OBJC],
9567 m4_defn([AC_PROG_OBJC])[_AM_DEPENDENCIES([OBJC])])])dnl
9568 AC_PROVIDE_IFELSE([AC_PROG_OBJCXX],
9569 [_AM_DEPENDENCIES([OBJCXX])],
9570 [m4_define([AC_PROG_OBJCXX],
9571 m4_defn([AC_PROG_OBJCXX])[_AM_DEPENDENCIES([OBJCXX])])])dnl
9572 ])
9573 AC_REQUIRE([AM_SILENT_RULES])dnl
9574 dnl The testsuite driver may need to know about EXEEXT, so add the
9575 dnl 'am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen. This
9576 dnl macro is hooked onto _AC_COMPILER_EXEEXT early, see below.
9577 AC_CONFIG_COMMANDS_PRE(dnl
9578 [m4_provide_if([_AM_COMPILER_EXEEXT],
9579 [AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])])])dnl
9580
9581 # POSIX will say in a future version that running "rm -f" with no argument
9582 # is OK; and we want to be able to make that assumption in our Makefile
9583 # recipes. So use an aggressive probe to check that the usage we want is
9584 # actually supported "in the wild" to an acceptable degree.
9585 # See automake bug#10828.
9586 # To make any issue more visible, cause the running configure to be aborted
9587 # by default if the 'rm' program in use doesn't match our expectations; the
9588 # user can still override this though.
9589 if rm -f && rm -fr && rm -rf; then : OK; else
9590 cat >&2 <<'END'
9591 Oops!
9592
9593 Your 'rm' program seems unable to run without file operands specified
9594 on the command line, even when the '-f' option is present. This is contrary
9595 to the behaviour of most rm programs out there, and not conforming with
9596 the upcoming POSIX standard: <http://austingroupbugs.net/view.php?id=542>
9597
9598 Please tell bug-automake@gnu.org about your system, including the value
9599 of your $PATH and any error possibly output before this message. This
9600 can help us improve future automake versions.
9601
9602 END
9603 if test x"$ACCEPT_INFERIOR_RM_PROGRAM" = x"yes"; then
9604 echo 'Configuration will proceed anyway, since you have set the' >&2
9605 echo 'ACCEPT_INFERIOR_RM_PROGRAM variable to "yes"' >&2
9606 echo >&2
9607 else
9608 cat >&2 <<'END'
9609 Aborting the configuration process, to ensure you take notice of the issue.
9610
9611 You can download and install GNU coreutils to get an 'rm' implementation
9612 that behaves properly: <http://www.gnu.org/software/coreutils/>.
9613
9614 If you want to complete the configuration process using your problematic
9615 'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM
9616 to "yes", and re-run configure.
9617
9618 END
9619 AC_MSG_ERROR([Your 'rm' program is bad, sorry.])
9620 fi
9621 fi
9622 dnl The trailing newline in this macro's definition is deliberate, for
9623 dnl backward compatibility and to allow trailing 'dnl'-style comments
9624 dnl after the AM_INIT_AUTOMAKE invocation. See automake bug#16841.
9625 ])
9626
9627 dnl Hook into '_AC_COMPILER_EXEEXT' early to learn its expansion. Do not
9628 dnl add the conditional right here, as _AC_COMPILER_EXEEXT may be further
9629 dnl mangled by Autoconf and run in a shell conditional statement.
9630 m4_define([_AC_COMPILER_EXEEXT],
9631 m4_defn([_AC_COMPILER_EXEEXT])[m4_provide([_AM_COMPILER_EXEEXT])])
9632
9633 # When config.status generates a header, we must update the stamp-h file.
9634 # This file resides in the same directory as the config header
9635 # that is generated. The stamp files are numbered to have different names.
9636
9637 # Autoconf calls _AC_AM_CONFIG_HEADER_HOOK (when defined) in the
9638 # loop where config.status creates the headers, so we can generate
9639 # our stamp files there.
9640 AC_DEFUN([_AC_AM_CONFIG_HEADER_HOOK],
9641 [# Compute $1's index in $config_headers.
9642 _am_arg=$1
9643 _am_stamp_count=1
9644 for _am_header in $config_headers :; do
9645 case $_am_header in
9646 $_am_arg | $_am_arg:* )
9647 break ;;
9648 * )
9649 _am_stamp_count=`expr $_am_stamp_count + 1` ;;
9650 esac
9651 done
9652 echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
9653
9654 # Copyright (C) 2001-2017 Free Software Foundation, Inc.
9655 #
9656 # This file is free software; the Free Software Foundation
9657 # gives unlimited permission to copy and/or distribute it,
9658 # with or without modifications, as long as this notice is preserved.
9659
9660 # AM_PROG_INSTALL_SH
9661 # ------------------
9662 # Define $install_sh.
9663 AC_DEFUN([AM_PROG_INSTALL_SH],
9664 [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
9665 if test x"${install_sh+set}" != xset; then
9666 case $am_aux_dir in
9667 *\ * | *\ *)
9668 install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;;
9669 *)
9670 install_sh="\${SHELL} $am_aux_dir/install-sh"
9671 esac
9672 fi
9673 AC_SUBST([install_sh])])
9674
9675 # Copyright (C) 2003-2017 Free Software Foundation, Inc.
9676 #
9677 # This file is free software; the Free Software Foundation
9678 # gives unlimited permission to copy and/or distribute it,
9679 # with or without modifications, as long as this notice is preserved.
9680
9681 # Check whether the underlying file-system supports filenames
9682 # with a leading dot. For instance MS-DOS doesn't.
9683 AC_DEFUN([AM_SET_LEADING_DOT],
9684 [rm -rf .tst 2>/dev/null
9685 mkdir .tst 2>/dev/null
9686 if test -d .tst; then
9687 am__leading_dot=.
9688 else
9689 am__leading_dot=_
9690 fi
9691 rmdir .tst 2>/dev/null
9692 AC_SUBST([am__leading_dot])])
9693
9694 # Check to see how 'make' treats includes. -*- Autoconf -*-
9695
9696 # Copyright (C) 2001-2017 Free Software Foundation, Inc.
9697 #
9698 # This file is free software; the Free Software Foundation
9699 # gives unlimited permission to copy and/or distribute it,
9700 # with or without modifications, as long as this notice is preserved.
9701
9702 # AM_MAKE_INCLUDE()
9703 # -----------------
9704 # Check to see how make treats includes.
9705 AC_DEFUN([AM_MAKE_INCLUDE],
9706 [am_make=${MAKE-make}
9707 cat > confinc << 'END'
9708 am__doit:
9709 @echo this is the am__doit target
9710 .PHONY: am__doit
9711 END
9712 # If we don't find an include directive, just comment out the code.
9713 AC_MSG_CHECKING([for style of include used by $am_make])
9714 am__include="#"
9715 am__quote=
9716 _am_result=none
9717 # First try GNU make style include.
9718 echo "include confinc" > confmf
9719 # Ignore all kinds of additional output from 'make'.
9720 case `$am_make -s -f confmf 2> /dev/null` in #(
9721 *the\ am__doit\ target*)
9722 am__include=include
9723 am__quote=
9724 _am_result=GNU
9725 ;;
9726 esac
9727 # Now try BSD make style include.
9728 if test "$am__include" = "#"; then
9729 echo '.include "confinc"' > confmf
9730 case `$am_make -s -f confmf 2> /dev/null` in #(
9731 *the\ am__doit\ target*)
9732 am__include=.include
9733 am__quote="\""
9734 _am_result=BSD
9735 ;;
9736 esac
9737 fi
9738 AC_SUBST([am__include])
9739 AC_SUBST([am__quote])
9740 AC_MSG_RESULT([$_am_result])
9741 rm -f confinc confmf
9742 ])
9743
9744 # Fake the existence of programs that GNU maintainers use. -*- Autoconf -*-
9745
9746 # Copyright (C) 1997-2017 Free Software Foundation, Inc.
9747 #
9748 # This file is free software; the Free Software Foundation
9749 # gives unlimited permission to copy and/or distribute it,
9750 # with or without modifications, as long as this notice is preserved.
9751
9752 # AM_MISSING_PROG(NAME, PROGRAM)
9753 # ------------------------------
9754 AC_DEFUN([AM_MISSING_PROG],
9755 [AC_REQUIRE([AM_MISSING_HAS_RUN])
9756 $1=${$1-"${am_missing_run}$2"}
9757 AC_SUBST($1)])
9758
9759 # AM_MISSING_HAS_RUN
9760 # ------------------
9761 # Define MISSING if not defined so far and test if it is modern enough.
9762 # If it is, set am_missing_run to use it, otherwise, to nothing.
9763 AC_DEFUN([AM_MISSING_HAS_RUN],
9764 [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
9765 AC_REQUIRE_AUX_FILE([missing])dnl
9766 if test x"${MISSING+set}" != xset; then
9767 case $am_aux_dir in
9768 *\ * | *\ *)
9769 MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;;
9770 *)
9771 MISSING="\${SHELL} $am_aux_dir/missing" ;;
9772 esac
9773 fi
9774 # Use eval to expand $SHELL
9775 if eval "$MISSING --is-lightweight"; then
9776 am_missing_run="$MISSING "
9777 else
9778 am_missing_run=
9779 AC_MSG_WARN(['missing' script is too old or missing])
9780 fi
9781 ])
9782
9783 # Helper functions for option handling. -*- Autoconf -*-
9784
9785 # Copyright (C) 2001-2017 Free Software Foundation, Inc.
9786 #
9787 # This file is free software; the Free Software Foundation
9788 # gives unlimited permission to copy and/or distribute it,
9789 # with or without modifications, as long as this notice is preserved.
9790
9791 # _AM_MANGLE_OPTION(NAME)
9792 # -----------------------
9793 AC_DEFUN([_AM_MANGLE_OPTION],
9794 [[_AM_OPTION_]m4_bpatsubst($1, [[^a-zA-Z0-9_]], [_])])
9795
9796 # _AM_SET_OPTION(NAME)
9797 # --------------------
9798 # Set option NAME. Presently that only means defining a flag for this option.
9799 AC_DEFUN([_AM_SET_OPTION],
9800 [m4_define(_AM_MANGLE_OPTION([$1]), [1])])
9801
9802 # _AM_SET_OPTIONS(OPTIONS)
9803 # ------------------------
9804 # OPTIONS is a space-separated list of Automake options.
9805 AC_DEFUN([_AM_SET_OPTIONS],
9806 [m4_foreach_w([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])])
9807
9808 # _AM_IF_OPTION(OPTION, IF-SET, [IF-NOT-SET])
9809 # -------------------------------------------
9810 # Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
9811 AC_DEFUN([_AM_IF_OPTION],
9812 [m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
9813
9814 # Copyright (C) 1999-2017 Free Software Foundation, Inc.
9815 #
9816 # This file is free software; the Free Software Foundation
9817 # gives unlimited permission to copy and/or distribute it,
9818 # with or without modifications, as long as this notice is preserved.
9819
9820 # _AM_PROG_CC_C_O
9821 # ---------------
9822 # Like AC_PROG_CC_C_O, but changed for automake. We rewrite AC_PROG_CC
9823 # to automatically call this.
9824 AC_DEFUN([_AM_PROG_CC_C_O],
9825 [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
9826 AC_REQUIRE_AUX_FILE([compile])dnl
9827 AC_LANG_PUSH([C])dnl
9828 AC_CACHE_CHECK(
9829 [whether $CC understands -c and -o together],
9830 [am_cv_prog_cc_c_o],
9831 [AC_LANG_CONFTEST([AC_LANG_PROGRAM([])])
9832 # Make sure it works both with $CC and with simple cc.
9833 # Following AC_PROG_CC_C_O, we do the test twice because some
9834 # compilers refuse to overwrite an existing .o file with -o,
9835 # though they will create one.
9836 am_cv_prog_cc_c_o=yes
9837 for am_i in 1 2; do
9838 if AM_RUN_LOG([$CC -c conftest.$ac_ext -o conftest2.$ac_objext]) \
9839 && test -f conftest2.$ac_objext; then
9840 : OK
9841 else
9842 am_cv_prog_cc_c_o=no
9843 break
9844 fi
9845 done
9846 rm -f core conftest*
9847 unset am_i])
9848 if test "$am_cv_prog_cc_c_o" != yes; then
9849 # Losing compiler, so override with the script.
9850 # FIXME: It is wrong to rewrite CC.
9851 # But if we don't then we get into trouble of one sort or another.
9852 # A longer-term fix would be to have automake use am__CC in this case,
9853 # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)"
9854 CC="$am_aux_dir/compile $CC"
9855 fi
9856 AC_LANG_POP([C])])
9857
9858 # For backward compatibility.
9859 AC_DEFUN_ONCE([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC])])
9860
9861 # Copyright (C) 2001-2017 Free Software Foundation, Inc.
9862 #
9863 # This file is free software; the Free Software Foundation
9864 # gives unlimited permission to copy and/or distribute it,
9865 # with or without modifications, as long as this notice is preserved.
9866
9867 # AM_RUN_LOG(COMMAND)
9868 # -------------------
9869 # Run COMMAND, save the exit status in ac_status, and log it.
9870 # (This has been adapted from Autoconf's _AC_RUN_LOG macro.)
9871 AC_DEFUN([AM_RUN_LOG],
9872 [{ echo "$as_me:$LINENO: $1" >&AS_MESSAGE_LOG_FD
9873 ($1) >&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD
9874 ac_status=$?
9875 echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD
9876 (exit $ac_status); }])
9877
9878 # Check to make sure that the build environment is sane. -*- Autoconf -*-
9879
9880 # Copyright (C) 1996-2017 Free Software Foundation, Inc.
9881 #
9882 # This file is free software; the Free Software Foundation
9883 # gives unlimited permission to copy and/or distribute it,
9884 # with or without modifications, as long as this notice is preserved.
9885
9886 # AM_SANITY_CHECK
9887 # ---------------
9888 AC_DEFUN([AM_SANITY_CHECK],
9889 [AC_MSG_CHECKING([whether build environment is sane])
9890 # Reject unsafe characters in $srcdir or the absolute working directory
9891 # name. Accept space and tab only in the latter.
9892 am_lf='
9893 '
9894 case `pwd` in
9895 *[[\\\"\#\$\&\'\`$am_lf]]*)
9896 AC_MSG_ERROR([unsafe absolute working directory name]);;
9897 esac
9898 case $srcdir in
9899 *[[\\\"\#\$\&\'\`$am_lf\ \ ]]*)
9900 AC_MSG_ERROR([unsafe srcdir value: '$srcdir']);;
9901 esac
9902
9903 # Do 'set' in a subshell so we don't clobber the current shell's
9904 # arguments. Must try -L first in case configure is actually a
9905 # symlink; some systems play weird games with the mod time of symlinks
9906 # (eg FreeBSD returns the mod time of the symlink's containing
9907 # directory).
9908 if (
9909 am_has_slept=no
9910 for am_try in 1 2; do
9911 echo "timestamp, slept: $am_has_slept" > conftest.file
9912 set X `ls -Lt "$srcdir/configure" conftest.file 2> /dev/null`
9913 if test "$[*]" = "X"; then
9914 # -L didn't work.
9915 set X `ls -t "$srcdir/configure" conftest.file`
9916 fi
9917 if test "$[*]" != "X $srcdir/configure conftest.file" \
9918 && test "$[*]" != "X conftest.file $srcdir/configure"; then
9919
9920 # If neither matched, then we have a broken ls. This can happen
9921 # if, for instance, CONFIG_SHELL is bash and it inherits a
9922 # broken ls alias from the environment. This has actually
9923 # happened. Such a system could not be considered "sane".
9924 AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken
9925 alias in your environment])
9926 fi
9927 if test "$[2]" = conftest.file || test $am_try -eq 2; then
9928 break
9929 fi
9930 # Just in case.
9931 sleep 1
9932 am_has_slept=yes
9933 done
9934 test "$[2]" = conftest.file
9935 )
9936 then
9937 # Ok.
9938 :
9939 else
9940 AC_MSG_ERROR([newly created file is older than distributed files!
9941 Check your system clock])
9942 fi
9943 AC_MSG_RESULT([yes])
9944 # If we didn't sleep, we still need to ensure time stamps of config.status and
9945 # generated files are strictly newer.
9946 am_sleep_pid=
9947 if grep 'slept: no' conftest.file >/dev/null 2>&1; then
9948 ( sleep 1 ) &
9949 am_sleep_pid=$!
9950 fi
9951 AC_CONFIG_COMMANDS_PRE(
9952 [AC_MSG_CHECKING([that generated files are newer than configure])
9953 if test -n "$am_sleep_pid"; then
9954 # Hide warnings about reused PIDs.
9955 wait $am_sleep_pid 2>/dev/null
9956 fi
9957 AC_MSG_RESULT([done])])
9958 rm -f conftest.file
9959 ])
9960
9961 # Copyright (C) 2009-2017 Free Software Foundation, Inc.
9962 #
9963 # This file is free software; the Free Software Foundation
9964 # gives unlimited permission to copy and/or distribute it,
9965 # with or without modifications, as long as this notice is preserved.
9966
9967 # AM_SILENT_RULES([DEFAULT])
9968 # --------------------------
9969 # Enable less verbose build rules; with the default set to DEFAULT
9970 # ("yes" being less verbose, "no" or empty being verbose).
9971 AC_DEFUN([AM_SILENT_RULES],
9972 [AC_ARG_ENABLE([silent-rules], [dnl
9973 AS_HELP_STRING(
9974 [--enable-silent-rules],
9975 [less verbose build output (undo: "make V=1")])
9976 AS_HELP_STRING(
9977 [--disable-silent-rules],
9978 [verbose build output (undo: "make V=0")])dnl
9979 ])
9980 case $enable_silent_rules in @%:@ (((
9981 yes) AM_DEFAULT_VERBOSITY=0;;
9982 no) AM_DEFAULT_VERBOSITY=1;;
9983 *) AM_DEFAULT_VERBOSITY=m4_if([$1], [yes], [0], [1]);;
9984 esac
9985 dnl
9986 dnl A few 'make' implementations (e.g., NonStop OS and NextStep)
9987 dnl do not support nested variable expansions.
9988 dnl See automake bug#9928 and bug#10237.
9989 am_make=${MAKE-make}
9990 AC_CACHE_CHECK([whether $am_make supports nested variables],
9991 [am_cv_make_support_nested_variables],
9992 [if AS_ECHO([['TRUE=$(BAR$(V))
9993 BAR0=false
9994 BAR1=true
9995 V=1
9996 am__doit:
9997 @$(TRUE)
9998 .PHONY: am__doit']]) | $am_make -f - >/dev/null 2>&1; then
9999 am_cv_make_support_nested_variables=yes
10000 else
10001 am_cv_make_support_nested_variables=no
10002 fi])
10003 if test $am_cv_make_support_nested_variables = yes; then
10004 dnl Using '$V' instead of '$(V)' breaks IRIX make.
10005 AM_V='$(V)'
10006 AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)'
10007 else
10008 AM_V=$AM_DEFAULT_VERBOSITY
10009 AM_DEFAULT_V=$AM_DEFAULT_VERBOSITY
10010 fi
10011 AC_SUBST([AM_V])dnl
10012 AM_SUBST_NOTMAKE([AM_V])dnl
10013 AC_SUBST([AM_DEFAULT_V])dnl
10014 AM_SUBST_NOTMAKE([AM_DEFAULT_V])dnl
10015 AC_SUBST([AM_DEFAULT_VERBOSITY])dnl
10016 AM_BACKSLASH='\'
10017 AC_SUBST([AM_BACKSLASH])dnl
10018 _AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl
10019 ])
10020
10021 # Copyright (C) 2001-2017 Free Software Foundation, Inc.
10022 #
10023 # This file is free software; the Free Software Foundation
10024 # gives unlimited permission to copy and/or distribute it,
10025 # with or without modifications, as long as this notice is preserved.
10026
10027 # AM_PROG_INSTALL_STRIP
10028 # ---------------------
10029 # One issue with vendor 'install' (even GNU) is that you can't
10030 # specify the program used to strip binaries. This is especially
10031 # annoying in cross-compiling environments, where the build's strip
10032 # is unlikely to handle the host's binaries.
10033 # Fortunately install-sh will honor a STRIPPROG variable, so we
10034 # always use install-sh in "make install-strip", and initialize
10035 # STRIPPROG with the value of the STRIP variable (set by the user).
10036 AC_DEFUN([AM_PROG_INSTALL_STRIP],
10037 [AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
10038 # Installed binaries are usually stripped using 'strip' when the user
10039 # run "make install-strip". However 'strip' might not be the right
10040 # tool to use in cross-compilation environments, therefore Automake
10041 # will honor the 'STRIP' environment variable to overrule this program.
10042 dnl Don't test for $cross_compiling = yes, because it might be 'maybe'.
10043 if test "$cross_compiling" != no; then
10044 AC_CHECK_TOOL([STRIP], [strip], :)
10045 fi
10046 INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
10047 AC_SUBST([INSTALL_STRIP_PROGRAM])])
10048
10049 # Copyright (C) 2006-2017 Free Software Foundation, Inc.
10050 #
10051 # This file is free software; the Free Software Foundation
10052 # gives unlimited permission to copy and/or distribute it,
10053 # with or without modifications, as long as this notice is preserved.
10054
10055 # _AM_SUBST_NOTMAKE(VARIABLE)
10056 # ---------------------------
10057 # Prevent Automake from outputting VARIABLE = @VARIABLE@ in Makefile.in.
10058 # This macro is traced by Automake.
10059 AC_DEFUN([_AM_SUBST_NOTMAKE])
10060
10061 # AM_SUBST_NOTMAKE(VARIABLE)
10062 # --------------------------
10063 # Public sister of _AM_SUBST_NOTMAKE.
10064 AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)])
10065
10066 # Check how to create a tarball. -*- Autoconf -*-
10067
10068 # Copyright (C) 2004-2017 Free Software Foundation, Inc.
10069 #
10070 # This file is free software; the Free Software Foundation
10071 # gives unlimited permission to copy and/or distribute it,
10072 # with or without modifications, as long as this notice is preserved.
10073
10074 # _AM_PROG_TAR(FORMAT)
10075 # --------------------
10076 # Check how to create a tarball in format FORMAT.
10077 # FORMAT should be one of 'v7', 'ustar', or 'pax'.
10078 #
10079 # Substitute a variable $(am__tar) that is a command
10080 # writing to stdout a FORMAT-tarball containing the directory
10081 # $tardir.
10082 # tardir=directory && $(am__tar) > result.tar
10083 #
10084 # Substitute a variable $(am__untar) that extract such
10085 # a tarball read from stdin.
10086 # $(am__untar) < result.tar
10087 #
10088 AC_DEFUN([_AM_PROG_TAR],
10089 [# Always define AMTAR for backward compatibility. Yes, it's still used
10090 # in the wild :-( We should find a proper way to deprecate it ...
10091 AC_SUBST([AMTAR], ['$${TAR-tar}'])
10092
10093 # We'll loop over all known methods to create a tar archive until one works.
10094 _am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none'
10095
10096 m4_if([$1], [v7],
10097 [am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'],
10098
10099 [m4_case([$1],
10100 [ustar],
10101 [# The POSIX 1988 'ustar' format is defined with fixed-size fields.
10102 # There is notably a 21 bits limit for the UID and the GID. In fact,
10103 # the 'pax' utility can hang on bigger UID/GID (see automake bug#8343
10104 # and bug#13588).
10105 am_max_uid=2097151 # 2^21 - 1
10106 am_max_gid=$am_max_uid
10107 # The $UID and $GID variables are not portable, so we need to resort
10108 # to the POSIX-mandated id(1) utility. Errors in the 'id' calls
10109 # below are definitely unexpected, so allow the users to see them
10110 # (that is, avoid stderr redirection).
10111 am_uid=`id -u || echo unknown`
10112 am_gid=`id -g || echo unknown`
10113 AC_MSG_CHECKING([whether UID '$am_uid' is supported by ustar format])
10114 if test $am_uid -le $am_max_uid; then
10115 AC_MSG_RESULT([yes])
10116 else
10117 AC_MSG_RESULT([no])
10118 _am_tools=none
10119 fi
10120 AC_MSG_CHECKING([whether GID '$am_gid' is supported by ustar format])
10121 if test $am_gid -le $am_max_gid; then
10122 AC_MSG_RESULT([yes])
10123 else
10124 AC_MSG_RESULT([no])
10125 _am_tools=none
10126 fi],
10127
10128 [pax],
10129 [],
10130
10131 [m4_fatal([Unknown tar format])])
10132
10133 AC_MSG_CHECKING([how to create a $1 tar archive])
10134
10135 # Go ahead even if we have the value already cached. We do so because we
10136 # need to set the values for the 'am__tar' and 'am__untar' variables.
10137 _am_tools=${am_cv_prog_tar_$1-$_am_tools}
10138
10139 for _am_tool in $_am_tools; do
10140 case $_am_tool in
10141 gnutar)
10142 for _am_tar in tar gnutar gtar; do
10143 AM_RUN_LOG([$_am_tar --version]) && break
10144 done
10145 am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$$tardir"'
10146 am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$tardir"'
10147 am__untar="$_am_tar -xf -"
10148 ;;
10149 plaintar)
10150 # Must skip GNU tar: if it does not support --format= it doesn't create
10151 # ustar tarball either.
10152 (tar --version) >/dev/null 2>&1 && continue
10153 am__tar='tar chf - "$$tardir"'
10154 am__tar_='tar chf - "$tardir"'
10155 am__untar='tar xf -'
10156 ;;
10157 pax)
10158 am__tar='pax -L -x $1 -w "$$tardir"'
10159 am__tar_='pax -L -x $1 -w "$tardir"'
10160 am__untar='pax -r'
10161 ;;
10162 cpio)
10163 am__tar='find "$$tardir" -print | cpio -o -H $1 -L'
10164 am__tar_='find "$tardir" -print | cpio -o -H $1 -L'
10165 am__untar='cpio -i -H $1 -d'
10166 ;;
10167 none)
10168 am__tar=false
10169 am__tar_=false
10170 am__untar=false
10171 ;;
10172 esac
10173
10174 # If the value was cached, stop now. We just wanted to have am__tar
10175 # and am__untar set.
10176 test -n "${am_cv_prog_tar_$1}" && break
10177
10178 # tar/untar a dummy directory, and stop if the command works.
10179 rm -rf conftest.dir
10180 mkdir conftest.dir
10181 echo GrepMe > conftest.dir/file
10182 AM_RUN_LOG([tardir=conftest.dir && eval $am__tar_ >conftest.tar])
10183 rm -rf conftest.dir
10184 if test -s conftest.tar; then
10185 AM_RUN_LOG([$am__untar <conftest.tar])
10186 AM_RUN_LOG([cat conftest.dir/file])
10187 grep GrepMe conftest.dir/file >/dev/null 2>&1 && break
10188 fi
10189 done
10190 rm -rf conftest.dir
10191
10192 AC_CACHE_VAL([am_cv_prog_tar_$1], [am_cv_prog_tar_$1=$_am_tool])
10193 AC_MSG_RESULT([$am_cv_prog_tar_$1])])
10194
10195 AC_SUBST([am__tar])
10196 AC_SUBST([am__untar])
10197 ]) # _AM_PROG_TAR
10198
+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 --copy && \
14 automake --add-missing --copy && \
15 autoconf && \
16 echo "Ready to run ./configure"
0 # Makefile.in generated by automake 1.15.1 from Makefile.am.
1 # @configure_input@
2
3 # Copyright (C) 1994-2017 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 = common
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
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
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 SUBDIRS = mp4ff
309 all: all-recursive
310
311 .SUFFIXES:
312 $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
313 @for dep in $?; do \
314 case '$(am__configure_deps)' in \
315 *$$dep*) \
316 ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
317 && { if test -f $@; then exit 0; else break; fi; }; \
318 exit 1;; \
319 esac; \
320 done; \
321 echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu common/Makefile'; \
322 $(am__cd) $(top_srcdir) && \
323 $(AUTOMAKE) --gnu common/Makefile
324 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
325 @case '$?' in \
326 *config.status*) \
327 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
328 *) \
329 echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
330 cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
331 esac;
332
333 $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
334 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
335
336 $(top_srcdir)/configure: $(am__configure_deps)
337 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
338 $(ACLOCAL_M4): $(am__aclocal_m4_deps)
339 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
340 $(am__aclocal_m4_deps):
341
342 mostlyclean-libtool:
343 -rm -f *.lo
344
345 clean-libtool:
346 -rm -rf .libs _libs
347
348 # This directory's subdirectories are mostly independent; you can cd
349 # into them and run 'make' without going through this Makefile.
350 # To change the values of 'make' variables: instead of editing Makefiles,
351 # (1) if the variable is set in 'config.status', edit 'config.status'
352 # (which will cause the Makefiles to be regenerated when you run 'make');
353 # (2) otherwise, pass the desired values on the 'make' command line.
354 $(am__recursive_targets):
355 @fail=; \
356 if $(am__make_keepgoing); then \
357 failcom='fail=yes'; \
358 else \
359 failcom='exit 1'; \
360 fi; \
361 dot_seen=no; \
362 target=`echo $@ | sed s/-recursive//`; \
363 case "$@" in \
364 distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
365 *) list='$(SUBDIRS)' ;; \
366 esac; \
367 for subdir in $$list; do \
368 echo "Making $$target in $$subdir"; \
369 if test "$$subdir" = "."; then \
370 dot_seen=yes; \
371 local_target="$$target-am"; \
372 else \
373 local_target="$$target"; \
374 fi; \
375 ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
376 || eval $$failcom; \
377 done; \
378 if test "$$dot_seen" = "no"; then \
379 $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
380 fi; test -z "$$fail"
381
382 ID: $(am__tagged_files)
383 $(am__define_uniq_tagged_files); mkid -fID $$unique
384 tags: tags-recursive
385 TAGS: tags
386
387 tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
388 set x; \
389 here=`pwd`; \
390 if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
391 include_option=--etags-include; \
392 empty_fix=.; \
393 else \
394 include_option=--include; \
395 empty_fix=; \
396 fi; \
397 list='$(SUBDIRS)'; for subdir in $$list; do \
398 if test "$$subdir" = .; then :; else \
399 test ! -f $$subdir/TAGS || \
400 set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \
401 fi; \
402 done; \
403 $(am__define_uniq_tagged_files); \
404 shift; \
405 if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
406 test -n "$$unique" || unique=$$empty_fix; \
407 if test $$# -gt 0; then \
408 $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
409 "$$@" $$unique; \
410 else \
411 $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
412 $$unique; \
413 fi; \
414 fi
415 ctags: ctags-recursive
416
417 CTAGS: ctags
418 ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
419 $(am__define_uniq_tagged_files); \
420 test -z "$(CTAGS_ARGS)$$unique" \
421 || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
422 $$unique
423
424 GTAGS:
425 here=`$(am__cd) $(top_builddir) && pwd` \
426 && $(am__cd) $(top_srcdir) \
427 && gtags -i $(GTAGS_ARGS) "$$here"
428 cscopelist: cscopelist-recursive
429
430 cscopelist-am: $(am__tagged_files)
431 list='$(am__tagged_files)'; \
432 case "$(srcdir)" in \
433 [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
434 *) sdir=$(subdir)/$(srcdir) ;; \
435 esac; \
436 for i in $$list; do \
437 if test -f "$$i"; then \
438 echo "$(subdir)/$$i"; \
439 else \
440 echo "$$sdir/$$i"; \
441 fi; \
442 done >> $(top_builddir)/cscope.files
443
444 distclean-tags:
445 -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
446
447 distdir: $(DISTFILES)
448 @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
449 topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
450 list='$(DISTFILES)'; \
451 dist_files=`for file in $$list; do echo $$file; done | \
452 sed -e "s|^$$srcdirstrip/||;t" \
453 -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
454 case $$dist_files in \
455 */*) $(MKDIR_P) `echo "$$dist_files" | \
456 sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
457 sort -u` ;; \
458 esac; \
459 for file in $$dist_files; do \
460 if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
461 if test -d $$d/$$file; then \
462 dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
463 if test -d "$(distdir)/$$file"; then \
464 find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
465 fi; \
466 if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
467 cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
468 find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
469 fi; \
470 cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
471 else \
472 test -f "$(distdir)/$$file" \
473 || cp -p $$d/$$file "$(distdir)/$$file" \
474 || exit 1; \
475 fi; \
476 done
477 @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
478 if test "$$subdir" = .; then :; else \
479 $(am__make_dryrun) \
480 || test -d "$(distdir)/$$subdir" \
481 || $(MKDIR_P) "$(distdir)/$$subdir" \
482 || exit 1; \
483 dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
484 $(am__relativize); \
485 new_distdir=$$reldir; \
486 dir1=$$subdir; dir2="$(top_distdir)"; \
487 $(am__relativize); \
488 new_top_distdir=$$reldir; \
489 echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
490 echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
491 ($(am__cd) $$subdir && \
492 $(MAKE) $(AM_MAKEFLAGS) \
493 top_distdir="$$new_top_distdir" \
494 distdir="$$new_distdir" \
495 am__remove_distdir=: \
496 am__skip_length_check=: \
497 am__skip_mode_fix=: \
498 distdir) \
499 || exit 1; \
500 fi; \
501 done
502 check-am: all-am
503 check: check-recursive
504 all-am: Makefile
505 installdirs: installdirs-recursive
506 installdirs-am:
507 install: install-recursive
508 install-exec: install-exec-recursive
509 install-data: install-data-recursive
510 uninstall: uninstall-recursive
511
512 install-am: all-am
513 @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
514
515 installcheck: installcheck-recursive
516 install-strip:
517 if test -z '$(STRIP)'; then \
518 $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
519 install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
520 install; \
521 else \
522 $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
523 install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
524 "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
525 fi
526 mostlyclean-generic:
527
528 clean-generic:
529
530 distclean-generic:
531 -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
532 -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
533
534 maintainer-clean-generic:
535 @echo "This command is intended for maintainers to use"
536 @echo "it deletes files that may require special tools to rebuild."
537 clean: clean-recursive
538
539 clean-am: clean-generic clean-libtool mostlyclean-am
540
541 distclean: distclean-recursive
542 -rm -f Makefile
543 distclean-am: clean-am distclean-generic distclean-tags
544
545 dvi: dvi-recursive
546
547 dvi-am:
548
549 html: html-recursive
550
551 html-am:
552
553 info: info-recursive
554
555 info-am:
556
557 install-data-am:
558
559 install-dvi: install-dvi-recursive
560
561 install-dvi-am:
562
563 install-exec-am:
564
565 install-html: install-html-recursive
566
567 install-html-am:
568
569 install-info: install-info-recursive
570
571 install-info-am:
572
573 install-man:
574
575 install-pdf: install-pdf-recursive
576
577 install-pdf-am:
578
579 install-ps: install-ps-recursive
580
581 install-ps-am:
582
583 installcheck-am:
584
585 maintainer-clean: maintainer-clean-recursive
586 -rm -f Makefile
587 maintainer-clean-am: distclean-am maintainer-clean-generic
588
589 mostlyclean: mostlyclean-recursive
590
591 mostlyclean-am: mostlyclean-generic mostlyclean-libtool
592
593 pdf: pdf-recursive
594
595 pdf-am:
596
597 ps: ps-recursive
598
599 ps-am:
600
601 uninstall-am:
602
603 .MAKE: $(am__recursive_targets) install-am install-strip
604
605 .PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am check \
606 check-am clean clean-generic clean-libtool cscopelist-am ctags \
607 ctags-am distclean distclean-generic distclean-libtool \
608 distclean-tags distdir dvi dvi-am html html-am info info-am \
609 install install-am install-data install-data-am install-dvi \
610 install-dvi-am install-exec install-exec-am install-html \
611 install-html-am install-info install-info-am install-man \
612 install-pdf install-pdf-am install-ps install-ps-am \
613 install-strip installcheck installcheck-am installdirs \
614 installdirs-am maintainer-clean maintainer-clean-generic \
615 mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \
616 ps ps-am tags tags-am uninstall uninstall-am
617
618 .PRECIOUS: Makefile
619
620
621 # Tell versions [3.59,3.63) of GNU make to not export all variables.
622 # Otherwise a system limit (for SysV at least) may be exceeded.
623 .NOEXPORT:
+0
-372
common/faad/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.4 2003/07/29 08:20:11 menno Exp $
25 **/
26
27 #ifdef _WIN32
28 #define WIN32_LEAN_AND_MEAN
29 #include <windows.h>
30 #endif
31 #include <malloc.h>
32 #include "filestream.h"
33 #include "aacinfo.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_STREAM *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(read_buffer_filestream(file, buffer, ADIF_MAX_SIZE) < 0)
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_STREAM *file, faadAACInfo *info,
77 unsigned long **seek_table, int *seek_table_len,
78 int tagsize, int no_seek_table)
79 {
80 /* Get ADTS header data */
81 unsigned char buffer[ADTS_MAX_SIZE];
82 int frames, framesinsec=0, t_framelength = 0, frame_length, sr_idx, ID;
83 int second = 0, pos;
84 int i;
85 float frames_per_sec = 0;
86 unsigned long bytes;
87 unsigned long *tmp_seek_table = NULL;
88
89 info->headertype = 2;
90
91 /* Read all frames to ensure correct time and bitrate */
92 for(frames=0; /* */; frames++, framesinsec++)
93 {
94 /* If streaming, only go until we hit 5 seconds worth */
95 if(file->http)
96 {
97 if(frames >= 43 * 5)
98 {
99 break;
100 }
101 }
102
103 pos = tell_filestream(file);
104
105 /* 12 bit SYNCWORD */
106 bytes = read_buffer_filestream(file, buffer, ADTS_MAX_SIZE);
107
108 if(bytes != ADTS_MAX_SIZE)
109 {
110 /* Bail out if no syncword found */
111 break;
112 }
113
114 /* check syncword */
115 if (!((buffer[0] == 0xFF)&&((buffer[1] & 0xF6) == 0xF0)))
116 break;
117
118 if(!frames)
119 {
120 /* fixed ADTS header is the same for every frame, so we read it only once */
121 /* Syncword found, proceed to read in the fixed ADTS header */
122 ID = buffer[1] & 0x08;
123 info->object_type = (buffer[2]&0xC0)>>6;
124 sr_idx = (buffer[2]&0x3C)>>2;
125 info->channels = ((buffer[2]&0x01)<<2)|((buffer[3]&0xC0)>>6);
126
127 frames_per_sec = sample_rates[sr_idx] / 1024.f;
128 }
129
130 /* ...and the variable ADTS header */
131 if (ID == 0) {
132 info->version = 4;
133 } else { /* MPEG-2 */
134 info->version = 2;
135 }
136 frame_length = ((((unsigned int)buffer[3] & 0x3)) << 11)
137 | (((unsigned int)buffer[4]) << 3) | (buffer[5] >> 5);
138
139 t_framelength += frame_length;
140
141 if(!file->http)
142 {
143 if(framesinsec == 43)
144 framesinsec = 0;
145
146 if(framesinsec == 0 && seek_table_len)
147 {
148 tmp_seek_table = (unsigned long *) realloc(tmp_seek_table, (second + 1) * sizeof(unsigned long));
149 tmp_seek_table[second] = pos;
150 }
151 if(framesinsec == 0)
152 second++;
153 }
154
155 /* NOTE: While simply skipping ahead by reading may seem to be more work than seeking,
156 it is actually much faster, and keeps compatibility with streaming */
157 for(i=0; i < frame_length - ADTS_MAX_SIZE; i++)
158 {
159 if(read_byte_filestream(file) < 0)
160 break;
161 }
162 }
163
164 if(seek_table_len)
165 {
166 *seek_table_len = second;
167 *seek_table = tmp_seek_table;
168 }
169
170 info->sampling_rate = sample_rates[sr_idx];
171 info->bitrate = (int)(((t_framelength / frames) * (info->sampling_rate/1024.0)) +0.5)*8;
172
173 if(file->http)
174 {
175 /* Since we only use 5 seconds of aac data to get a rough bitrate, we must use a different
176 method of calculating the overall length */
177 if(filelength_filestream(file))
178 {
179 info->length = (int)((filelength_filestream(file)/(((info->bitrate*8)/1024)*16))*1000);
180 }
181 else
182 {
183 /* Since the server didnt tell us how long the file is,
184 we have no way of determining length */
185 info->length = 0;
186 }
187 }
188 else
189 {
190 info->length = (int)((float)(frames/frames_per_sec))*1000;
191 }
192
193 return 0;
194 }
195
196 int get_AAC_format(char *filename, faadAACInfo *info,
197 unsigned long **seek_table, int *seek_table_len,
198 int no_seek_table)
199 {
200 unsigned long tagsize;
201 FILE_STREAM *file;
202 char buffer[10];
203 unsigned long file_len;
204 unsigned char adxx_id[5];
205 unsigned long tmp;
206
207 memset(info, 0, sizeof(faadAACInfo));
208
209 file = open_filestream(filename);
210
211 if(file == NULL)
212 return -1;
213
214 file_len = filelength_filestream(file);
215
216 /* Skip the tag, if it's there */
217 tmp = read_buffer_filestream(file, buffer, 10);
218
219 if (StringComp(buffer, "ID3", 3) == 0)
220 {
221 unsigned int i;
222
223 /* high bit is not used */
224 tagsize = (buffer[6] << 21) | (buffer[7] << 14) |
225 (buffer[8] << 7) | (buffer[9] << 0);
226
227 for(i=0; i < tagsize; i++)
228 if(read_byte_filestream(file) < 0)
229 return -1;
230
231 tagsize += 10;
232 }
233 else
234 {
235 tagsize = 0;
236
237 /* Simple hack to reset to the beginning */
238 file->buffer_offset = 0;
239 file->file_offset = 0;
240 }
241
242 if(file_len)
243 file_len -= tagsize;
244
245 tmp = read_buffer_filestream(file, adxx_id, 2);
246 //seek_filestream(file, tagsize, FILE_BEGIN);
247
248 adxx_id[5-1] = 0;
249 info->length = 0;
250
251 /* Determine the header type of the file, check the first two bytes */
252 if(StringComp(adxx_id, "AD", 2) == 0)
253 {
254 /* We think its an ADIF header, but check the rest just to make sure */
255 tmp = read_buffer_filestream(file, adxx_id + 2, 2);
256
257 if(StringComp(adxx_id, "ADIF", 4) == 0)
258 {
259 read_ADIF_header(file, info);
260 }
261 }
262 else
263 {
264 /* No ADIF, check for ADTS header */
265 if ((adxx_id[0] == 0xFF)&&((adxx_id[1] & 0xF6) == 0xF0))
266 {
267 /* ADTS header located */
268 /* Since this routine must work for streams, we can't use the seek function to go backwards, thus
269 we have to use a quick hack as seen below to go back where we need to. */
270
271 if(file->buffer_offset >= 2)
272 {
273 // simple seeking hack, though not really safe, the probability of it causing a problem is low.
274 file->buffer_offset -= 2;
275 file->file_offset -= 2;
276 }
277
278 read_ADTS_header(file, info, seek_table, seek_table_len, tagsize,
279 no_seek_table);
280 }
281 else
282 {
283 /* Unknown/headerless AAC file, assume format: */
284 info->version = 2;
285 info->bitrate = 128000;
286 info->sampling_rate = 44100;
287 info->channels = 2;
288 info->headertype = 0;
289 info->object_type = 1;
290 }
291 }
292
293 close_filestream(file);
294
295 return 0;
296 }
297
298 int StringComp(char const *str1, char const *str2, unsigned long len)
299 {
300 signed int c1 = 0, c2 = 0;
301
302 while (len--) {
303 c1 = *str1++;
304 c2 = *str2++;
305
306 if (c1 == 0 || c1 != c2)
307 break;
308 }
309
310 return c1 - c2;
311 }
312
313 #ifdef TEST
314 /* Program to test aacinfo functionality */
315
316 #include <stdio.h>
317
318 void main(int argc, char *argv[])
319 {
320 faadAACInfo info;
321 unsigned long *seek_table = NULL;
322 int seek_table_len = 0;
323 char *header, *object;
324
325 if (argc < 2)
326 {
327 fprintf(stderr, "USAGE: aacinfo aacfile.aac\n");
328 return;
329 }
330
331 get_AAC_format(argv[1], &info, &seek_table, &seek_table_len, 0);
332
333 fprintf(stdout, "MPEG version: %d\n", info.version);
334 fprintf(stdout, "channels: %d\n", info.channels);
335 fprintf(stdout, "sampling_rate: %d\n", info.sampling_rate);
336 fprintf(stdout, "bitrate: %d\n", info.bitrate);
337 fprintf(stdout, "length: %.3f\n", (float)info.length/1000.0);
338
339 switch (info.object_type)
340 {
341 case 0:
342 object = "MAIN";
343 break;
344 case 1:
345 object = "LC";
346 break;
347 case 2:
348 object = "SSR";
349 break;
350 case 3:
351 object = "LTP";
352 break;
353 }
354 fprintf(stdout, "object_type: %s\n", object);
355
356 switch (info.headertype)
357 {
358 case 0:
359 header = "RAW";
360 break;
361 case 1:
362 header = "ADIF";
363 break;
364 case 2:
365 header = "ADTS";
366 break;
367 }
368 fprintf(stdout, "headertype: %s\n", header);
369 }
370
371 #endif
+0
-53
common/faad/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/07/29 08:20:11 menno Exp $
25 **/
26
27 #ifndef AACINFO_H__
28 #define AACINFO_H__
29
30 #include "filestream.h"
31
32 typedef struct {
33 int version;
34 int channels;
35 int sampling_rate;
36 int bitrate;
37 int length;
38 int object_type;
39 int headertype;
40 } faadAACInfo;
41
42 int get_AAC_format(char *filename, faadAACInfo *info,
43 unsigned long **seek_table, int *seek_table_len,
44 int no_seek_table);
45
46 static int read_ADIF_header(FILE_STREAM *file, faadAACInfo *info);
47 static int read_ADTS_header(FILE_STREAM *file, faadAACInfo *info,
48 unsigned long **seek_table, int *seek_table_len,
49 int tagsize, int no_seek_table);
50 int StringComp(char const *str1, char const *str2, unsigned long len);
51
52 #endif
+0
-19
common/faad/aacinfo.sln less more
0 Microsoft Visual Studio Solution File, Format Version 9.00
1 # Visual Studio 2005
2 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "aacinfo", "aacinfo.vcproj", "{FE985E4D-79DB-4DD3-BFED-824B4677A161}"
3 EndProject
4 Global
5 GlobalSection(SolutionConfigurationPlatforms) = preSolution
6 Debug|Win32 = Debug|Win32
7 Release|Win32 = Release|Win32
8 EndGlobalSection
9 GlobalSection(ProjectConfigurationPlatforms) = postSolution
10 {FE985E4D-79DB-4DD3-BFED-824B4677A161}.Debug|Win32.ActiveCfg = Debug|Win32
11 {FE985E4D-79DB-4DD3-BFED-824B4677A161}.Debug|Win32.Build.0 = Debug|Win32
12 {FE985E4D-79DB-4DD3-BFED-824B4677A161}.Release|Win32.ActiveCfg = Release|Win32
13 {FE985E4D-79DB-4DD3-BFED-824B4677A161}.Release|Win32.Build.0 = Release|Win32
14 EndGlobalSection
15 GlobalSection(SolutionProperties) = preSolution
16 HideSolutionNode = FALSE
17 EndGlobalSection
18 EndGlobal
+0
-224
common/faad/aacinfo.vcproj less more
0 <?xml version="1.0" encoding="Windows-1252"?>
1 <VisualStudioProject
2 ProjectType="Visual C++"
3 Version="8.00"
4 Name="aacinfo"
5 ProjectGUID="{FE985E4D-79DB-4DD3-BFED-824B4677A161}"
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="1"
20 InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC70.vsprops"
21 UseOfMFC="0"
22 ATLMinimizesCRunTimeLibraryUsage="false"
23 CharacterSet="2"
24 >
25 <Tool
26 Name="VCPreBuildEventTool"
27 />
28 <Tool
29 Name="VCCustomBuildTool"
30 />
31 <Tool
32 Name="VCXMLDataGeneratorTool"
33 />
34 <Tool
35 Name="VCWebServiceProxyGeneratorTool"
36 />
37 <Tool
38 Name="VCMIDLTool"
39 TypeLibraryName=".\Debug/aacinfo.tlb"
40 />
41 <Tool
42 Name="VCCLCompilerTool"
43 Optimization="0"
44 PreprocessorDefinitions="_DEBUG,WIN32,_CONSOLE,TEST"
45 BasicRuntimeChecks="3"
46 RuntimeLibrary="1"
47 UsePrecompiledHeader="0"
48 PrecompiledHeaderFile=".\Debug/aacinfo.pch"
49 AssemblerListingLocation=".\Debug/"
50 ObjectFile=".\Debug/"
51 ProgramDataBaseFileName=".\Debug/"
52 WarningLevel="3"
53 SuppressStartupBanner="true"
54 DebugInformationFormat="4"
55 />
56 <Tool
57 Name="VCManagedResourceCompilerTool"
58 />
59 <Tool
60 Name="VCResourceCompilerTool"
61 PreprocessorDefinitions="_DEBUG"
62 Culture="1043"
63 />
64 <Tool
65 Name="VCPreLinkEventTool"
66 />
67 <Tool
68 Name="VCLinkerTool"
69 AdditionalOptions="/MACHINE:I386"
70 AdditionalDependencies="ws2_32.lib odbc32.lib odbccp32.lib"
71 OutputFile=".\Debug/aacinfo.exe"
72 LinkIncremental="2"
73 SuppressStartupBanner="true"
74 GenerateDebugInformation="true"
75 ProgramDatabaseFile=".\Debug/aacinfo.pdb"
76 SubSystem="1"
77 />
78 <Tool
79 Name="VCALinkTool"
80 />
81 <Tool
82 Name="VCManifestTool"
83 />
84 <Tool
85 Name="VCXDCMakeTool"
86 />
87 <Tool
88 Name="VCBscMakeTool"
89 />
90 <Tool
91 Name="VCFxCopTool"
92 />
93 <Tool
94 Name="VCAppVerifierTool"
95 />
96 <Tool
97 Name="VCWebDeploymentTool"
98 />
99 <Tool
100 Name="VCPostBuildEventTool"
101 />
102 </Configuration>
103 <Configuration
104 Name="Release|Win32"
105 OutputDirectory=".\Release"
106 IntermediateDirectory=".\Release"
107 ConfigurationType="1"
108 InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC70.vsprops"
109 UseOfMFC="0"
110 ATLMinimizesCRunTimeLibraryUsage="false"
111 CharacterSet="2"
112 >
113 <Tool
114 Name="VCPreBuildEventTool"
115 />
116 <Tool
117 Name="VCCustomBuildTool"
118 />
119 <Tool
120 Name="VCXMLDataGeneratorTool"
121 />
122 <Tool
123 Name="VCWebServiceProxyGeneratorTool"
124 />
125 <Tool
126 Name="VCMIDLTool"
127 TypeLibraryName=".\Release/aacinfo.tlb"
128 />
129 <Tool
130 Name="VCCLCompilerTool"
131 InlineFunctionExpansion="1"
132 PreprocessorDefinitions="NDEBUG,WIN32,_CONSOLE,TEST"
133 StringPooling="true"
134 RuntimeLibrary="0"
135 EnableFunctionLevelLinking="true"
136 UsePrecompiledHeader="0"
137 PrecompiledHeaderFile=".\Release/aacinfo.pch"
138 AssemblerListingLocation=".\Release/"
139 ObjectFile=".\Release/"
140 ProgramDataBaseFileName=".\Release/"
141 WarningLevel="3"
142 SuppressStartupBanner="true"
143 />
144 <Tool
145 Name="VCManagedResourceCompilerTool"
146 />
147 <Tool
148 Name="VCResourceCompilerTool"
149 PreprocessorDefinitions="NDEBUG"
150 Culture="1043"
151 />
152 <Tool
153 Name="VCPreLinkEventTool"
154 />
155 <Tool
156 Name="VCLinkerTool"
157 AdditionalOptions="/MACHINE:I386"
158 AdditionalDependencies="ws2_32.lib odbc32.lib odbccp32.lib"
159 OutputFile=".\Release/aacinfo.exe"
160 LinkIncremental="1"
161 SuppressStartupBanner="true"
162 ProgramDatabaseFile=".\Release/aacinfo.pdb"
163 SubSystem="1"
164 />
165 <Tool
166 Name="VCALinkTool"
167 />
168 <Tool
169 Name="VCManifestTool"
170 />
171 <Tool
172 Name="VCXDCMakeTool"
173 />
174 <Tool
175 Name="VCBscMakeTool"
176 />
177 <Tool
178 Name="VCFxCopTool"
179 />
180 <Tool
181 Name="VCAppVerifierTool"
182 />
183 <Tool
184 Name="VCWebDeploymentTool"
185 />
186 <Tool
187 Name="VCPostBuildEventTool"
188 />
189 </Configuration>
190 </Configurations>
191 <References>
192 </References>
193 <Files>
194 <Filter
195 Name="Source Files"
196 Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
197 >
198 <File
199 RelativePath=".\aacinfo.c"
200 >
201 </File>
202 <File
203 RelativePath=".\filestream.c"
204 >
205 </File>
206 </Filter>
207 <Filter
208 Name="Header Files"
209 Filter="h;hpp;hxx;hm;inl"
210 >
211 <File
212 RelativePath=".\aacinfo.h"
213 >
214 </File>
215 <File
216 RelativePath=".\filestream.h"
217 >
218 </File>
219 </Filter>
220 </Files>
221 <Globals>
222 </Globals>
223 </VisualStudioProject>
+0
-470
common/faad/filestream.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: filestream.c,v 1.3 2003/07/29 08:20:11 menno Exp $
25 **/
26
27 /* Not very portable yet */
28
29 #include <winsock2.h> // Note: Must be *before* windows.h
30 #ifdef _WIN32
31 #define WIN32_LEAN_AND_MEAN
32 #include <windows.h>
33 #endif
34 #include "filestream.h"
35 #include "aacinfo.h"
36
37 /* TEMPROARY HACK */
38 #define CommonExit(A) MessageBox(NULL, A, "FAAD Plugin", MB_OK)
39
40 int winsock_init=0; // 0=winsock not initialized, 1=success
41 long m_local_buffer_size = 64;
42 long m_stream_buffer_size = 128;
43
44 FILE_STREAM *open_filestream(char *filename)
45 {
46 FILE_STREAM *fs;
47
48 if(StringComp(filename,"http://", 7) == 0)
49 {
50 fs = (FILE_STREAM *)LocalAlloc(LPTR, sizeof(FILE_STREAM) + m_stream_buffer_size * 1024);
51
52 if(fs == NULL)
53 return NULL;
54
55 fs->data = (unsigned char *)&fs[1];
56
57 if(http_file_open(filename, fs) < 0)
58 {
59 LocalFree(fs);
60 return NULL;
61 }
62
63 fs->http = 1;
64 }
65 else
66 {
67 fs = (FILE_STREAM*)LocalAlloc(LPTR, sizeof(FILE_STREAM) + m_local_buffer_size * 1024);
68
69 if(fs == NULL)
70 return NULL;
71
72 fs->data = (unsigned char *)&fs[1];
73
74 fs->stream = CreateFile(filename, GENERIC_READ,
75 FILE_SHARE_READ | FILE_SHARE_WRITE, 0,
76 OPEN_EXISTING, FILE_FLAG_SEQUENTIAL_SCAN, 0);
77 if (fs->stream == INVALID_HANDLE_VALUE)
78 {
79 LocalFree(fs);
80 return NULL;
81 }
82
83 fs->http = 0;
84 }
85
86 fs->buffer_length = 0;
87 fs->buffer_offset = 0;
88 fs->file_offset = 0;
89
90 return fs;
91 }
92
93 int read_byte_filestream(FILE_STREAM *fs)
94 {
95 if(fs->buffer_offset == fs->buffer_length)
96 {
97 fs->buffer_offset = 0;
98
99 if(fs->http)
100 fs->buffer_length = recv(fs->inetStream, fs->data, m_stream_buffer_size * 1024, 0);
101 else
102 ReadFile(fs->stream, fs->data, m_local_buffer_size * 1024, &fs->buffer_length, 0);
103
104 if(fs->buffer_length <= 0)
105 {
106 if(fs->http)
107 {
108 int x;
109 x = WSAGetLastError();
110
111 if(x == 0)
112 {
113 /* Equivalent of a successful EOF for HTTP */
114 }
115 }
116
117 fs->buffer_length = 0;
118 return -1;
119 }
120 }
121
122 fs->file_offset++;
123
124 return fs->data[fs->buffer_offset++];
125 }
126
127 int read_buffer_filestream(FILE_STREAM *fs, void *data, int length)
128 {
129 int i, tmp;
130 unsigned char *data2 = (unsigned char *)data;
131
132 for(i=0; i < length; i++)
133 {
134 if((tmp = read_byte_filestream(fs)) < 0)
135 {
136 if(i)
137 {
138 break;
139 }
140 else
141 {
142 return -1;
143 }
144 }
145 data2[i] = tmp;
146 }
147
148 return i;
149 }
150
151 unsigned long filelength_filestream(FILE_STREAM *fs)
152 {
153 unsigned long fsize;
154
155 if (fs->http)
156 {
157 fsize = fs->http_file_length;
158 }
159 else
160 {
161 fsize = GetFileSize(fs->stream, NULL);
162 }
163
164 return fsize;
165 }
166
167 void seek_filestream(FILE_STREAM *fs, unsigned long offset, int mode)
168 {
169 if(fs->http)
170 {
171 return;
172 }
173
174 SetFilePointer(fs->stream, offset, NULL, mode);
175
176 if(mode == FILE_CURRENT)
177 fs->file_offset += offset;
178 else if(mode == FILE_END)
179 fs->file_offset = filelength_filestream(fs) + offset;
180 else
181 fs->file_offset = offset;
182
183 fs->buffer_length = 0;
184 fs->buffer_offset = 0;
185 }
186
187 unsigned long tell_filestream(FILE_STREAM *fs)
188 {
189 return fs->file_offset;
190 }
191
192 void close_filestream(FILE_STREAM *fs)
193 {
194 if(fs)
195 {
196 if (fs->http)
197 {
198 if (fs->inetStream)
199 {
200 /* The 'proper' way to close a TCP connection */
201 if(fs->inetStream)
202 {
203 CloseTCP(fs->inetStream);
204 }
205 }
206 }
207 else
208 {
209 if(fs->stream)
210 CloseHandle(fs->stream);
211 }
212
213 LocalFree(fs);
214 fs = NULL;
215 }
216 }
217
218 int WinsockInit()
219 {
220 /* Before using winsock, you must load the DLL... */
221 WSADATA wsaData;
222
223 /* Load version 2.0 */
224 if (WSAStartup( MAKEWORD( 2, 0 ), &wsaData ))
225 {
226 /* Disable streaming */
227 return -1;
228 }
229
230 winsock_init = 1;
231
232 return 0;
233 }
234
235 void WinsockDeInit()
236 {
237 /* Unload the DLL */
238
239 if(winsock_init)
240 WSACleanup();
241 }
242
243 int FindCRLF(char *str)
244 {
245 int i;
246
247 for(i=0; i != lstrlen(str) && str[i] != '\r'; i++);
248
249 return i;
250 }
251
252 void CloseTCP(int s)
253 {
254 char tempbuf[1024];
255
256 /* Set the socket to ignore any new incoming data */
257 shutdown(s, 1);
258
259 /* Get any old remaining data */
260 while(recv(s, tempbuf, 1024, 0) > 0);
261
262 /* Deallocate the socket */
263 closesocket(s);
264 }
265
266 int resolve_host(char *host, SOCKADDR_IN *sck_addr, unsigned short remote_port)
267 {
268 HOSTENT *hp;
269
270 if (isalpha(host[0]))
271 {
272 /* server address is a name */
273 hp = gethostbyname(host);
274 }
275 else
276 {
277 unsigned long addr;
278 /* Convert nnn.nnn address to a usable one */
279 addr = inet_addr(host);
280 hp = gethostbyaddr((char *)&addr, 4, AF_INET);
281 }
282
283 if (hp == NULL)
284 {
285 char tmp[128];
286 wsprintf(tmp, "Error resolving host address [%s]!\n", host);
287 CommonExit(tmp);
288 return -1;
289 }
290
291 ZeroMemory(sck_addr, sizeof(SOCKADDR_IN));
292 sck_addr->sin_family = AF_INET;
293 sck_addr->sin_port = htons(remote_port);
294 CopyMemory(&sck_addr->sin_addr, hp->h_addr, hp->h_length);
295
296 return 0;
297 }
298
299 int http_file_open(char *url, FILE_STREAM *fs)
300 {
301 SOCKET sck;
302 SOCKADDR_IN host;
303 char server[1024], file[1024], request[1024], *temp = NULL, *tmpfile = NULL;
304 int i, j, port = 80, bytes_recv, http_code;
305
306 /* No winsock, no streaming */
307 if(!winsock_init)
308 {
309 return -1;
310 }
311
312 url += 7; // Skip over http://
313
314 /* Extract data from the URL */
315 for(i=0; url[i] != '/' && url[i] != ':' && url[i] != 0; i++);
316
317 ZeroMemory(server, 1024);
318 CopyMemory(server, url, i);
319
320 if(url[i] == ':')
321 {
322 /* A certain port was specified */
323 port = atol(url + (i + 1));
324 }
325
326 for(; url[i] != '/' && url[i] != 0; i++);
327
328 ZeroMemory(file, 1024);
329
330 CopyMemory(file, url + i, lstrlen(url));
331
332 /* END OF URL PARSING */
333
334 /* Create a TCP/IP socket */
335 sck = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
336
337 if(sck == INVALID_SOCKET)
338 {
339 CommonExit("Error creating TCP/IP new socket");
340 return -1;
341 }
342
343 /* Resolve the host address (turn www.blah.com into an IP) */
344 if(resolve_host(server, &host, (unsigned short)port))
345 {
346 CommonExit("Error resolving host address");
347 CloseTCP(sck);
348 return -1;
349 }
350
351 /* Connect to the server */
352 if(connect(sck, (SOCKADDR *)&host, sizeof(SOCKADDR)) == SOCKET_ERROR)
353 {
354 CommonExit("Error connecting to remote server");
355 CloseTCP(sck);
356 return -1;
357 }
358
359 tmpfile = calloc(1, (strlen(file) * 3) + 1);
360
361 /* Encode URL */
362 for(i=0, j=0; i < (int)strlen(file); i++)
363 {
364 if((unsigned char)file[i] <= 31 || (unsigned char)file[i] >= 127)
365 {
366 /* encode ASCII-control characters */
367 wsprintf(tmpfile + j, "%%%X", (unsigned char)file[i]);
368 j += 3;
369 continue;
370 }
371 else
372 {
373 switch(file[i])
374 {
375 /* encode characters that could confuse some servers */
376 case ' ':
377 case '"':
378 case '>':
379 case '<':
380 case '#':
381 case '%':
382 case '{':
383 case '}':
384 case '|':
385 case '\\':
386 case '^':
387 case '~':
388 case '[':
389 case ']':
390 case '`':
391
392 wsprintf(tmpfile + j, "%%%X", (unsigned char)file[i]);
393 j += 3;
394 continue;
395 }
396 }
397
398 tmpfile[j] = file[i];
399 j++;
400 }
401
402 wsprintf(request, "GET %s\r\n\r\n", tmpfile);
403
404 free(tmpfile);
405
406 /* Send the request */
407 if(send(sck, request, lstrlen(request), 0) <= 0)
408 {
409 /* Error sending data */
410 CloseTCP(sck);
411 return -1;
412 }
413
414 ZeroMemory(request, 1024);
415
416 /* Send the request */
417 if((bytes_recv = recv(sck, request, 1024, 0)) <= 0)
418 {
419 /* Error sending data */
420 CloseTCP(sck);
421 return -1;
422 }
423
424 if(StringComp(request,"HTTP/1.", 7) != 0)
425 {
426 /* Invalid header */
427 CloseTCP(sck);
428 return -1;
429 }
430
431 http_code = atol(request + 9);
432
433 if(http_code < 200 || http_code > 299)
434 {
435 /* HTTP error */
436 CloseTCP(sck);
437 return -1;
438 }
439
440 // Search for a length field
441 fs->http_file_length = 0;
442
443 /* Limit search to only 20 loops */
444 if((temp = strstr(request, "Content-Length: ")) != NULL)
445 {
446 /* Has a content-length field, copy into structure */
447 fs->http_file_length = atol(temp + 16);
448 }
449
450 /* Copy the handle data into the structure */
451 fs->inetStream = sck;
452
453 /* Copy any excess data beyond the header into the filestream buffers */
454 temp = strstr(request, "\r\n\r\n");
455
456 if(temp)
457 {
458 temp += 4;
459 }
460
461 if(temp - request < bytes_recv)
462 {
463 memcpy(fs->data, temp, (temp - request) - bytes_recv);
464 fs->buffer_length = (temp - request) - bytes_recv;
465 fs->buffer_offset = 0;
466 }
467
468 return 0;
469 }
+0
-57
common/faad/filestream.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: filestream.h,v 1.3 2003/07/29 08:20:11 menno Exp $
25 **/
26
27 #ifndef FILESTREAM_H
28 #define FILESTREAM_H
29
30 typedef struct {
31 HANDLE stream;
32 unsigned short inetStream;
33 unsigned char *data;
34 int http;
35 int buffer_offset;
36 int buffer_length;
37 int file_offset;
38 int http_file_length;
39 } FILE_STREAM;
40
41 extern long m_local_buffer_size;
42 extern long m_stream_buffer_size;
43
44 FILE_STREAM *open_filestream(char *filename);
45 int read_byte_filestream(FILE_STREAM *fs);
46 int read_buffer_filestream(FILE_STREAM *fs, void *data, int length);
47 unsigned long filelength_filestream(FILE_STREAM *fs);
48 void close_filestream(FILE_STREAM *fs);
49 void seek_filestream(FILE_STREAM *fs, unsigned long offset, int mode);
50 unsigned long tell_filestream(FILE_STREAM *fs);
51 int http_file_open(char *url, FILE_STREAM *fs);
52
53 int WinsockInit();
54 void WinsockDeInit();
55 void CloseTCP(int s);
56 #endif
+0
-1124
common/faad/id3v2tag.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: id3v2tag.c,v 1.4 2003/07/29 08:20:11 menno Exp $
25 **/
26
27 #define WIN32_LEAN_AND_MEAN
28 #include <windows.h>
29 #include <commctrl.h>
30 #include <resource.h>
31
32 #include <id3.h>
33
34 #include <id3v2tag.h>
35
36 HWND m_hwndList;
37
38 LPSTR ID3Frames[] =
39 {
40 "No known frame",
41 "Audio encryption",
42 "Attached picture",
43 "Comments",
44 "Commercial frame",
45 "Encryption method registration",
46 "Equalization",
47 "Event timing codes",
48 "General encapsulated object",
49 "Group identification registration",
50 "Involved people list",
51 "Linked information",
52 "Music CD identifier",
53 "MPEG location lookup table",
54 "Ownership frame",
55 "Private frame",
56 "Play counter",
57 "Popularimeter",
58 "Position synchronisation frame",
59 "Recommended buffer size",
60 "Relative volume adjustment",
61 "Reverb",
62 "Synchronized lyric",
63 "Synchronized tempo codes",
64 "Album title",
65 "BPM (beats per minute)",
66 "Composer",
67 "Genre", //"Content type",
68 "Copyright message",
69 "Date",
70 "Playlist delay",
71 "Encoded by",
72 "Lyricist",
73 "File type",
74 "Time",
75 "Content group description",
76 "Title",
77 "Subtitle",
78 "Initial key",
79 "Language(s)",
80 "Length",
81 "Media type",
82 "Original album title",
83 "Original filename",
84 "Original lyricist(s)",
85 "Original artist(s)",
86 "Original release year",
87 "File owner",
88 "Lead performer(s)",
89 "Band/orchestra/accompaniment",
90 "Conductor/performer refinement",
91 "Interpreted, remixed, or otherwise modified by",
92 "Part of a set",
93 "Publisher",
94 "Track number",
95 "Recording dates",
96 "Internet radio station name",
97 "Internet radio station owner",
98 "Size",
99 "ISRC (international standard recording code)",
100 "Software/Hardware and settings used for encoding",
101 "User defined text information",
102 "Year",
103 "Unique file identifier",
104 "Terms of use",
105 "Unsynchronized lyric",
106 "Commercial information",
107 "Copyright/Legal information",
108 "Official audio file webpage",
109 "Official artist webpage",
110 "Official audio source webpage",
111 "Official internet radio station homepage",
112 "Payment",
113 "Official publisher webpage",
114 "User defined URL link",
115 "Encrypted meta frame (id3v2.2.x)",
116 "Compressed meta frame (id3v2.2.1)"
117 };
118
119 ID3GENRES ID3Genres[]=
120 {
121 123, "Acapella",
122 34, "Acid",
123 74, "Acid Jazz",
124 73, "Acid Punk",
125 99, "Acoustic",
126 20, "Alternative",
127 40, "AlternRock",
128 26, "Ambient",
129 90, "Avantgarde",
130 116, "Ballad",
131 41, "Bass",
132 85, "Bebob",
133 96, "Big Band",
134 89, "Bluegrass",
135 0, "Blues",
136 107, "Booty Bass",
137 65, "Cabaret",
138 88, "Celtic",
139 104, "Chamber Music",
140 102, "Chanson",
141 97, "Chorus",
142 61, "Christian Rap",
143 1, "Classic Rock",
144 32, "Classical",
145 112, "Club",
146 57, "Comedy",
147 2, "Country",
148 58, "Cult",
149 3, "Dance",
150 125, "Dance Hall",
151 50, "Darkwave",
152 254, "Data",
153 22, "Death Metal",
154 4, "Disco",
155 55, "Dream",
156 122, "Drum Solo",
157 120, "Duet",
158 98, "Easy Listening",
159 52, "Electronic",
160 48, "Ethnic",
161 124, "Euro-House",
162 25, "Euro-Techno",
163 54, "Eurodance",
164 84, "Fast Fusion",
165 80, "Folk",
166 81, "Folk-Rock",
167 115, "Folklore",
168 119, "Freestyle",
169 5, "Funk",
170 30, "Fusion",
171 36, "Game",
172 59, "Gangsta",
173 38, "Gospel",
174 49, "Gothic",
175 91, "Gothic Rock",
176 6, "Grunge",
177 79, "Hard Rock",
178 7, "Hip-Hop",
179 35, "House",
180 100, "Humour",
181 19, "Industrial",
182 33, "Instrumental",
183 46, "Instrumental Pop",
184 47, "Instrumental Rock",
185 8, "Jazz",
186 29, "Jazz+Funk",
187 63, "Jungle",
188 86, "Latin",
189 71, "Lo-Fi",
190 45, "Meditative",
191 9, "Metal",
192 77, "Musical",
193 82, "National Folk",
194 64, "Native American",
195 10, "New Age",
196 66, "New Wave",
197 39, "Noise",
198 255, "Not Set",
199 11, "Oldies",
200 103, "Opera",
201 12, "Other",
202 75, "Polka",
203 13, "Pop",
204 62, "Pop/Funk",
205 53, "Pop-Folk",
206 109, "Porn Groove",
207 117, "Power Ballad",
208 23, "Pranks",
209 108, "Primus",
210 92, "Progressive Rock",
211 67, "Psychadelic",
212 93, "Psychedelic Rock",
213 43, "Punk",
214 121, "Punk Rock",
215 14, "R&B",
216 15, "Rap",
217 68, "Rave",
218 16, "Reggae",
219 76, "Retro",
220 87, "Revival",
221 118, "Rhythmic Soul",
222 17, "Rock",
223 78, "Rock & Roll",
224 114, "Samba",
225 110, "Satire",
226 69, "Showtunes",
227 21, "Ska",
228 111, "Slow Jam",
229 95, "Slow Rock",
230 105, "Sonata",
231 42, "Soul",
232 37, "Sound Clip",
233 24, "Soundtrack",
234 56, "Southern Rock",
235 44, "Space",
236 101, "Speech",
237 83, "Swing",
238 94, "Symphonic Rock",
239 106, "Symphony",
240 113, "Tango",
241 18, "Techno",
242 51, "Techno-Industrial",
243 60, "Top 40",
244 70, "Trailer",
245 31, "Trance",
246 72, "Tribal",
247 27, "Trip-Hop",
248 28, "Vocal"
249 };
250
251 const int NUMFRAMES = sizeof(ID3Frames)/sizeof(ID3Frames[0]);
252 const int NUMGENRES = sizeof(ID3Genres)/sizeof(ID3Genres[0]);
253
254
255 LPSTR DupString(LPSTR lpsz)
256 {
257 int cb = lstrlen(lpsz) + 1;
258 LPSTR lpszNew = LocalAlloc(LMEM_FIXED, cb);
259 if (lpszNew != NULL)
260 CopyMemory(lpszNew, lpsz, cb);
261 return lpszNew;
262 }
263
264 LPSTR GetFrameDesc(ID3_FrameID id)
265 {
266 return DupString(ID3Frames[id]);
267 }
268
269 LPSTR GetGenre(LPSTR lpsz)
270 {
271 int id = atoi(lpsz + 1);
272 int i;
273
274 if ((*(lpsz + 1) > '0') && (*(lpsz + 1) < '9'))
275 {
276 for (i = 0; i < NUMGENRES; i++)
277 {
278 if (id == ID3Genres[i].id)
279 return DupString(ID3Genres[i].name);
280 }
281 }
282 return DupString(lpsz);
283 }
284
285 void FillID3List(HWND hwndDlg, HWND hwndList, char *filename)
286 {
287 ID3Tag *tag;
288 ID3Frame *frame;
289 ID3Field *field;
290 ID3_FrameID eFrameID;
291 char info[1024];
292 int numFrames;
293 int i;
294 int iItem = 0;
295
296
297 if ((tag = ID3Tag_New()) != NULL)
298 {
299 ID3Tag_Link(tag, filename);
300
301 numFrames = ID3Tag_NumFrames(tag);
302
303 for (i = 0; i < numFrames; i++)
304 {
305 iItem++;
306
307 frame = ID3Tag_GetFrameNum(tag, i);
308 eFrameID = ID3Frame_GetID(frame);
309
310 switch (eFrameID)
311 {
312 case ID3FID_ALBUM: case ID3FID_BPM:
313 case ID3FID_COMPOSER: case ID3FID_CONTENTTYPE:
314 case ID3FID_COPYRIGHT: case ID3FID_DATE:
315 case ID3FID_PLAYLISTDELAY: case ID3FID_ENCODEDBY:
316 case ID3FID_LYRICIST: case ID3FID_FILETYPE:
317 case ID3FID_TIME: case ID3FID_CONTENTGROUP:
318 case ID3FID_TITLE: case ID3FID_SUBTITLE:
319 case ID3FID_INITIALKEY: case ID3FID_LANGUAGE:
320 case ID3FID_SONGLEN: case ID3FID_MEDIATYPE:
321 case ID3FID_ORIGALBUM: case ID3FID_ORIGFILENAME:
322 case ID3FID_ORIGLYRICIST: case ID3FID_ORIGARTIST:
323 case ID3FID_ORIGYEAR: case ID3FID_FILEOWNER:
324 case ID3FID_LEADARTIST: case ID3FID_BAND:
325 case ID3FID_CONDUCTOR: case ID3FID_MIXARTIST:
326 case ID3FID_PARTINSET: case ID3FID_PUBLISHER:
327 case ID3FID_TRACKNUM: case ID3FID_RECORDINGDATES:
328 case ID3FID_NETRADIOSTATION: case ID3FID_NETRADIOOWNER:
329 case ID3FID_SIZE: case ID3FID_ISRC:
330 case ID3FID_ENCODERSETTINGS: case ID3FID_YEAR:
331 {
332 LV_ITEM lvi;
333 ID3ITEM *pItem = LocalAlloc(LPTR, sizeof(ID3ITEM));
334
335 /* Initialize LV_ITEM members that are common to all items. */
336 lvi.mask = LVIF_TEXT | LVIF_IMAGE | LVIF_PARAM | LVIF_STATE;
337 lvi.state = 0;
338 lvi.stateMask = 0;
339 lvi.pszText = LPSTR_TEXTCALLBACK; /* app. maintains text */
340 lvi.iImage = 0;
341 lvi.iItem = iItem;
342 lvi.iSubItem = 0;
343
344 pItem->frameId = eFrameID;
345 pItem->aCols[0] = GetFrameDesc(eFrameID);
346
347 field = ID3Frame_GetField(frame, ID3FN_TEXT);
348 ID3Field_GetASCII(field, info, 1024, 1);
349 if (eFrameID == ID3FID_CONTENTTYPE)
350 pItem->aCols[1] = GetGenre(info);
351 else
352 pItem->aCols[1] = DupString(info);
353
354 lvi.lParam = (LPARAM)pItem; /* item data */
355
356 /* Add the item. */
357 ListView_InsertItem(hwndList, &lvi);
358
359 break;
360 }
361 case ID3FID_USERTEXT:
362 case ID3FID_COMMENT: /* Can also contain an extra language field (but not used now) */
363 case ID3FID_UNSYNCEDLYRICS: /* Can also contain an extra language field (but not used now) */
364 {
365 LV_ITEM lvi;
366 ID3ITEM *pItem = LocalAlloc(LPTR, sizeof(ID3ITEM));
367
368 /* Initialize LV_ITEM members that are common to all items. */
369 lvi.mask = LVIF_TEXT | LVIF_IMAGE | LVIF_PARAM | LVIF_STATE;
370 lvi.state = 0;
371 lvi.stateMask = 0;
372 lvi.pszText = LPSTR_TEXTCALLBACK; /* app. maintains text */
373 lvi.iImage = 0;
374 lvi.iItem = iItem;
375 lvi.iSubItem = 0;
376
377 pItem->frameId = eFrameID;
378
379 field = ID3Frame_GetField(frame, ID3FN_DESCRIPTION);
380 ID3Field_GetASCII(field, info, 1024, 1);
381 pItem->aCols[0] = DupString(info);
382
383 field = ID3Frame_GetField(frame, ID3FN_TEXT);
384 ID3Field_GetASCII(field, info, 1024, 1);
385 pItem->aCols[1] = DupString(info);
386
387 lvi.lParam = (LPARAM)pItem; /* item data */
388
389 /* Add the item. */
390 ListView_InsertItem(hwndList, &lvi);
391
392 break;
393 }
394 case ID3FID_WWWAUDIOFILE: case ID3FID_WWWARTIST:
395 case ID3FID_WWWAUDIOSOURCE: case ID3FID_WWWCOMMERCIALINFO:
396 case ID3FID_WWWCOPYRIGHT: case ID3FID_WWWPUBLISHER:
397 case ID3FID_WWWPAYMENT: case ID3FID_WWWRADIOPAGE:
398 {
399 LV_ITEM lvi;
400 ID3ITEM *pItem = LocalAlloc(LPTR, sizeof(ID3ITEM));
401
402 /* Initialize LV_ITEM members that are common to all items. */
403 lvi.mask = LVIF_TEXT | LVIF_IMAGE | LVIF_PARAM | LVIF_STATE;
404 lvi.state = 0;
405 lvi.stateMask = 0;
406 lvi.pszText = LPSTR_TEXTCALLBACK; /* app. maintains text */
407 lvi.iImage = 0;
408 lvi.iItem = iItem;
409 lvi.iSubItem = 0;
410
411 pItem->frameId = eFrameID;
412
413 pItem->aCols[0] = GetFrameDesc(eFrameID);
414
415 field = ID3Frame_GetField(frame, ID3FN_URL);
416 ID3Field_GetASCII(field, info, 1024, 1);
417 pItem->aCols[1] = DupString(info);
418
419 lvi.lParam = (LPARAM)pItem; /* item data */
420
421 /* Add the item. */
422 ListView_InsertItem(hwndList, &lvi);
423
424 break;
425 }
426 case ID3FID_WWWUSER:
427 {
428 LV_ITEM lvi;
429 ID3ITEM *pItem = LocalAlloc(LPTR, sizeof(ID3ITEM));
430
431 /* Initialize LV_ITEM members that are common to all items. */
432 lvi.mask = LVIF_TEXT | LVIF_IMAGE | LVIF_PARAM | LVIF_STATE;
433 lvi.state = 0;
434 lvi.stateMask = 0;
435 lvi.pszText = LPSTR_TEXTCALLBACK; /* app. maintains text */
436 lvi.iImage = 0;
437 lvi.iItem = iItem;
438 lvi.iSubItem = 0;
439
440 pItem->frameId = eFrameID;
441
442 field = ID3Frame_GetField(frame, ID3FN_DESCRIPTION);
443 ID3Field_GetASCII(field, info, 1024, 1);
444 pItem->aCols[0] = DupString(info);
445
446 field = ID3Frame_GetField(frame, ID3FN_URL);
447 ID3Field_GetASCII(field, info, 1024, 1);
448 pItem->aCols[1] = DupString(info);
449
450 lvi.lParam = (LPARAM)pItem; /* item data */
451
452 /* Add the item. */
453 ListView_InsertItem(hwndList, &lvi);
454
455 break;
456 }
457 default:
458 break;
459 }
460 }
461 ID3Tag_Delete(tag);
462 }
463 }
464
465 BOOL CALLBACK AddFrameProc(HWND hwndDlg, UINT message, WPARAM wParam, LPARAM lParam)
466 {
467 int i, cursel;
468
469 switch (message) {
470 case WM_INITDIALOG:
471 EnableWindow(GetDlgItem(hwndDlg, IDC_COL0), FALSE);
472 EnableWindow(GetDlgItem(hwndDlg, IDOK), FALSE);
473
474 /* Note: FRAMEID is the index in the combo box + 1 */
475 for (i = 1; i < NUMFRAMES; i++)
476 {
477 SendMessage(GetDlgItem(hwndDlg, IDC_FRAMETYPE), CB_ADDSTRING, 0, (LPARAM)(LPCTSTR)ID3Frames[i]);
478 }
479 return TRUE;
480
481 case WM_COMMAND:
482 switch (LOWORD(wParam)) {
483 case IDC_FRAMETYPE:
484 if (HIWORD(wParam) == CBN_SELCHANGE)
485 {
486 cursel = SendMessage(GetDlgItem(hwndDlg, IDC_FRAMETYPE), CB_GETCURSEL, 0, 0);
487
488 switch (cursel + 1)
489 {
490 case ID3FID_ALBUM: case ID3FID_BPM:
491 case ID3FID_COMPOSER: case ID3FID_COPYRIGHT:
492 case ID3FID_DATE: case ID3FID_PLAYLISTDELAY:
493 case ID3FID_ENCODEDBY: case ID3FID_LYRICIST:
494 case ID3FID_FILETYPE: case ID3FID_TIME:
495 case ID3FID_CONTENTGROUP: case ID3FID_TITLE:
496 case ID3FID_SUBTITLE: case ID3FID_INITIALKEY:
497 case ID3FID_LANGUAGE: case ID3FID_SONGLEN:
498 case ID3FID_MEDIATYPE: case ID3FID_ORIGALBUM:
499 case ID3FID_ORIGFILENAME: case ID3FID_ORIGLYRICIST:
500 case ID3FID_ORIGARTIST: case ID3FID_ORIGYEAR:
501 case ID3FID_FILEOWNER: case ID3FID_LEADARTIST:
502 case ID3FID_BAND: case ID3FID_CONDUCTOR:
503 case ID3FID_MIXARTIST: case ID3FID_PARTINSET:
504 case ID3FID_PUBLISHER: case ID3FID_TRACKNUM:
505 case ID3FID_RECORDINGDATES: case ID3FID_NETRADIOSTATION:
506 case ID3FID_NETRADIOOWNER: case ID3FID_SIZE:
507 case ID3FID_ISRC: case ID3FID_ENCODERSETTINGS:
508 case ID3FID_YEAR: case ID3FID_WWWAUDIOFILE:
509 case ID3FID_WWWARTIST: case ID3FID_WWWAUDIOSOURCE:
510 case ID3FID_WWWCOMMERCIALINFO: case ID3FID_WWWCOPYRIGHT:
511 case ID3FID_WWWPUBLISHER: case ID3FID_WWWPAYMENT:
512 case ID3FID_WWWRADIOPAGE: case ID3FID_CONTENTTYPE:
513 {
514 SetDlgItemText(hwndDlg, IDC_COL0, ID3Frames[cursel+1]);
515 EnableWindow(GetDlgItem(hwndDlg, IDC_COL0), FALSE);
516 EnableWindow(GetDlgItem(hwndDlg, IDOK), TRUE);
517 break;
518 }
519 case ID3FID_USERTEXT: case ID3FID_COMMENT:
520 case ID3FID_UNSYNCEDLYRICS: case ID3FID_WWWUSER:
521 {
522 SetDlgItemText(hwndDlg, IDC_COL0, ID3Frames[cursel+1]);
523 EnableWindow(GetDlgItem(hwndDlg, IDC_COL0), TRUE);
524 EnableWindow(GetDlgItem(hwndDlg, IDOK), TRUE);
525 break;
526 }
527 default:
528 MessageBox(hwndDlg, "Sorry, this frame type cannot be added (yet).", "Sorry", MB_OK);
529 EnableWindow(GetDlgItem(hwndDlg, IDC_COL0), FALSE);
530 EnableWindow(GetDlgItem(hwndDlg, IDOK), FALSE);
531 break;
532 }
533 }
534 return TRUE;
535 case IDOK:
536 {
537 LV_ITEM lvi;
538 ID3ITEM *pItem = LocalAlloc(LPTR, sizeof(ID3ITEM));
539 char *col0 = LocalAlloc(LPTR, 1024);
540 char *col1 = LocalAlloc(LPTR, 1024);
541
542 /* Initialize LV_ITEM members that are common to all items. */
543 lvi.mask = LVIF_TEXT | LVIF_IMAGE | LVIF_PARAM | LVIF_STATE;
544 lvi.state = 0;
545 lvi.stateMask = 0;
546 lvi.pszText = LPSTR_TEXTCALLBACK; /* app. maintains text */
547 lvi.iImage = 0;
548 lvi.iItem = ListView_GetItemCount(m_hwndList) + 1;
549 lvi.iSubItem = 0;
550
551 cursel = SendMessage(GetDlgItem(hwndDlg, IDC_FRAMETYPE), CB_GETCURSEL, 0, 0);
552 pItem->frameId = cursel + 1;
553 GetDlgItemText(hwndDlg, IDC_COL0, col0, 1024);
554 GetDlgItemText(hwndDlg, IDC_COL1, col1, 1024);
555 pItem->aCols[0] = col0;
556 pItem->aCols[1] = col1;
557
558 lvi.lParam = (LPARAM)pItem; /* item data */
559
560 /* Add the item. */
561 ListView_InsertItem(m_hwndList, &lvi);
562 ListView_Update(m_hwndList, lvi.iItem);
563 }
564 case IDCANCEL:
565 EndDialog(hwndDlg, wParam);
566 return TRUE;
567 }
568 }
569 return FALSE;
570 }
571
572 BOOL List_AddFrame(HWND hwndApp, HWND hwndList)
573 {
574 int result;
575
576 m_hwndList = hwndList;
577
578 result = DialogBox(hInstance_for_id3editor, MAKEINTRESOURCE(IDD_ADDFRAME),
579 hwndApp, AddFrameProc);
580
581 if (LOWORD(result) == IDOK)
582 return TRUE;
583 return FALSE;
584 }
585
586
587 void InsertTextFrame(HWND dlg, HWND list, int control, int item, int frame_id)
588 {
589 LV_ITEM lvi;
590 ID3ITEM *pItem = LocalAlloc(LPTR, sizeof(ID3ITEM));
591
592 /* Initialize LV_ITEM members that are common to all items. */
593 lvi.mask = LVIF_TEXT | LVIF_IMAGE | LVIF_PARAM | LVIF_STATE;
594 lvi.state = 0;
595 lvi.stateMask = 0;
596 lvi.pszText = LPSTR_TEXTCALLBACK; /* app. maintains text */
597 lvi.iImage = 0;
598 lvi.iItem = item;
599 lvi.iSubItem = 0;
600
601 pItem->frameId = frame_id;
602 pItem->aCols[0] = GetFrameDesc(frame_id);
603
604 pItem->aCols[1] = LocalAlloc(LPTR, 1024);
605 GetDlgItemText(dlg, control, pItem->aCols[1], 1024);
606
607 lvi.lParam = (LPARAM)pItem; /* item data */
608
609 /* Add the item. */
610 ListView_InsertItem(list, &lvi);
611 }
612
613 void AddFrameFromRAWData(HWND hwndList, int frameId, LPSTR data1, LPSTR data2)
614 {
615 LV_ITEM lvi;
616 ID3ITEM *pItem = LocalAlloc(LPTR, sizeof(ID3ITEM));
617 int nextItem;
618
619 nextItem = ListView_GetItemCount(hwndList);
620
621 /* Initialize LV_ITEM members that are common to all items. */
622 lvi.mask = LVIF_TEXT | LVIF_IMAGE | LVIF_PARAM | LVIF_STATE;
623 lvi.state = 0;
624 lvi.stateMask = 0;
625 lvi.pszText = LPSTR_TEXTCALLBACK; /* app. maintains text */
626 lvi.iImage = 0;
627 lvi.iItem = nextItem;
628 lvi.iSubItem = 0;
629
630 pItem->frameId = frameId;
631
632 pItem->aCols[0] = LocalAlloc(LPTR, 1024);
633 pItem->aCols[1] = LocalAlloc(LPTR, 1024);
634
635 lstrcpy(pItem->aCols[0], data1);
636 lstrcpy(pItem->aCols[1], data2);
637
638 lvi.lParam = (LPARAM)pItem; /* item data */
639
640 /* Add the item. */
641 ListView_InsertItem(hwndList, &lvi);
642 }
643
644 HWND m_hwndDlg;
645 int changed;
646
647 BOOL CALLBACK AddStandardProc(HWND hwndDlg, UINT message, WPARAM wParam, LPARAM lParam)
648 {
649 int added = 0;
650
651 switch (message) {
652 case WM_INITDIALOG:
653 changed = 0;
654 return TRUE;
655
656 case WM_COMMAND:
657 switch (LOWORD(wParam)) {
658 case IDOK:
659 {
660 if (GetWindowTextLength(GetDlgItem(hwndDlg, IDC_TRACK)) > 0) {
661 InsertTextFrame(hwndDlg, m_hwndList, IDC_TRACK, ListView_GetItemCount(m_hwndList)+1, ID3FID_TRACKNUM);
662 added++;
663 }
664
665 if (GetWindowTextLength(GetDlgItem(hwndDlg, IDC_TITLE)) > 0) {
666 InsertTextFrame(hwndDlg, m_hwndList, IDC_TITLE, ListView_GetItemCount(m_hwndList)+1, ID3FID_TITLE);
667 added++;
668 }
669
670 if (GetWindowTextLength(GetDlgItem(hwndDlg, IDC_ARTIST)) > 0) {
671 InsertTextFrame(hwndDlg, m_hwndList, IDC_ARTIST, ListView_GetItemCount(m_hwndList)+1, ID3FID_LEADARTIST);
672 added++;
673 }
674
675 if (GetWindowTextLength(GetDlgItem(hwndDlg, IDC_ALBUM)) > 0) {
676 InsertTextFrame(hwndDlg, m_hwndList, IDC_ALBUM, ListView_GetItemCount(m_hwndList)+1, ID3FID_ALBUM);
677 added++;
678 }
679
680 if (GetWindowTextLength(GetDlgItem(hwndDlg, IDC_YEAR)) > 0) {
681 InsertTextFrame(hwndDlg, m_hwndList, IDC_YEAR, ListView_GetItemCount(m_hwndList)+1, ID3FID_YEAR);
682 added++;
683 }
684
685 if (GetWindowTextLength(GetDlgItem(hwndDlg, IDC_GENRE)) > 0) {
686 InsertTextFrame(hwndDlg, m_hwndList, IDC_GENRE, ListView_GetItemCount(m_hwndList)+1, ID3FID_CONTENTTYPE);
687 added++;
688 }
689
690 if (GetWindowTextLength(GetDlgItem(hwndDlg, IDC_COMMENT)) > 0) {
691 InsertTextFrame(hwndDlg, m_hwndList, IDC_COMMENT, ListView_GetItemCount(m_hwndList)+1, ID3FID_COMMENT);
692 added++;
693 }
694
695 if (GetWindowTextLength(GetDlgItem(hwndDlg, IDC_COMPOSER)) > 0) {
696 InsertTextFrame(hwndDlg, m_hwndList, IDC_COMPOSER, ListView_GetItemCount(m_hwndList)+1, ID3FID_COMPOSER);
697 added++;
698 }
699
700 if (GetWindowTextLength(GetDlgItem(hwndDlg, IDC_ORIGARTIST)) > 0) {
701 InsertTextFrame(hwndDlg, m_hwndList, IDC_ORIGARTIST, ListView_GetItemCount(m_hwndList)+1, ID3FID_ORIGARTIST);
702 added++;
703 }
704
705 if (GetWindowTextLength(GetDlgItem(hwndDlg, IDC_COPYRIGHT)) > 0) {
706 InsertTextFrame(hwndDlg, m_hwndList, IDC_COPYRIGHT, ListView_GetItemCount(m_hwndList)+1, ID3FID_COPYRIGHT);
707 added++;
708 }
709
710 if (GetWindowTextLength(GetDlgItem(hwndDlg, IDC_URL)) > 0) {
711 InsertTextFrame(hwndDlg, m_hwndList, IDC_URL, ListView_GetItemCount(m_hwndList)+1, ID3FID_WWWARTIST);
712 added++;
713 }
714
715 if (GetWindowTextLength(GetDlgItem(hwndDlg, IDC_ENCBY)) > 0) {
716 InsertTextFrame(hwndDlg, m_hwndList, IDC_ENCBY, ListView_GetItemCount(m_hwndList)+1, ID3FID_ENCODEDBY);
717 added++;
718 }
719
720 if (added > 0)
721 changed = 1;
722 }
723 case IDCANCEL:
724 EndDialog(hwndDlg, changed);
725 return TRUE;
726 }
727 }
728 return FALSE;
729 }
730
731
732 BOOL List_AddStandardFrames(HWND hwndApp, HWND hwndList)
733 {
734 int result;
735
736 m_hwndList = hwndList;
737 m_hwndDlg = hwndApp;
738
739 result = DialogBox(hInstance_for_id3editor, MAKEINTRESOURCE(IDD_ADDSTANDARD),
740 hwndApp, AddStandardProc);
741
742 return result?TRUE:FALSE;
743 }
744
745
746 /* List_OnGetDispInfo - processes the LVN_GETDISPINFO */
747 /* notification message. */
748 /* pnmv - value of lParam (points to an LV_DISPINFO structure) */
749 void List_OnGetDispInfo(LV_DISPINFO *pnmv)
750 {
751 /* Provide the item or subitem's text, if requested. */
752 if (pnmv->item.mask & LVIF_TEXT) {
753 ID3ITEM *pItem = (ID3ITEM *) (pnmv->item.lParam);
754 lstrcpy(pnmv->item.pszText,
755 pItem->aCols[pnmv->item.iSubItem]);
756 }
757 }
758
759 ID3ITEM *pItem;
760 int editItemIndex;
761
762 BOOL CALLBACK EditTextFrameProc(HWND hwndDlg, UINT message, WPARAM wParam, LPARAM lParam)
763 {
764 LV_ITEM lvi;
765
766 switch (message) {
767 case WM_INITDIALOG:
768 SetDlgItemText(hwndDlg, IDC_TEXTFRAMENAME, pItem->aCols[0]);
769 SetDlgItemText(hwndDlg, IDC_EDITTEXTFRAME, pItem->aCols[1]);
770
771 switch (pItem->frameId)
772 {
773 case ID3FID_ALBUM: case ID3FID_BPM:
774 case ID3FID_COMPOSER: case ID3FID_COPYRIGHT:
775 case ID3FID_DATE: case ID3FID_PLAYLISTDELAY:
776 case ID3FID_ENCODEDBY: case ID3FID_LYRICIST:
777 case ID3FID_FILETYPE: case ID3FID_TIME:
778 case ID3FID_CONTENTGROUP: case ID3FID_TITLE:
779 case ID3FID_SUBTITLE: case ID3FID_INITIALKEY:
780 case ID3FID_LANGUAGE: case ID3FID_SONGLEN:
781 case ID3FID_MEDIATYPE: case ID3FID_ORIGALBUM:
782 case ID3FID_ORIGFILENAME: case ID3FID_ORIGLYRICIST:
783 case ID3FID_ORIGARTIST: case ID3FID_ORIGYEAR:
784 case ID3FID_FILEOWNER: case ID3FID_LEADARTIST:
785 case ID3FID_BAND: case ID3FID_CONDUCTOR:
786 case ID3FID_MIXARTIST: case ID3FID_PARTINSET:
787 case ID3FID_PUBLISHER: case ID3FID_TRACKNUM:
788 case ID3FID_RECORDINGDATES: case ID3FID_NETRADIOSTATION:
789 case ID3FID_NETRADIOOWNER: case ID3FID_SIZE:
790 case ID3FID_ISRC: case ID3FID_ENCODERSETTINGS:
791 case ID3FID_YEAR: case ID3FID_WWWAUDIOFILE:
792 case ID3FID_WWWARTIST: case ID3FID_WWWAUDIOSOURCE:
793 case ID3FID_WWWCOMMERCIALINFO: case ID3FID_WWWCOPYRIGHT:
794 case ID3FID_WWWPUBLISHER: case ID3FID_WWWPAYMENT:
795 case ID3FID_WWWRADIOPAGE: case ID3FID_CONTENTTYPE:
796 {
797 EnableWindow(GetDlgItem(hwndDlg, IDC_TEXTFRAMENAME), FALSE);
798 EnableWindow(GetDlgItem(hwndDlg, IDC_EDITTEXTFRAME), TRUE);
799 break;
800 }
801 case ID3FID_USERTEXT: case ID3FID_COMMENT:
802 case ID3FID_UNSYNCEDLYRICS: case ID3FID_WWWUSER:
803 {
804 EnableWindow(GetDlgItem(hwndDlg, IDC_TEXTFRAMENAME), TRUE);
805 EnableWindow(GetDlgItem(hwndDlg, IDC_EDITTEXTFRAME), TRUE);
806 break;
807 }
808 default:
809 EnableWindow(GetDlgItem(hwndDlg, IDOK), FALSE);
810 EnableWindow(GetDlgItem(hwndDlg, IDC_TEXTFRAMENAME), FALSE);
811 EnableWindow(GetDlgItem(hwndDlg, IDC_EDITTEXTFRAME), FALSE);
812 break;
813 }
814 return TRUE;
815
816 case WM_COMMAND:
817 switch (LOWORD(wParam)) {
818 case IDOK:
819 {
820 GetDlgItemText(hwndDlg, IDC_TEXTFRAMENAME, pItem->aCols[0], 1024);
821 GetDlgItemText(hwndDlg, IDC_EDITTEXTFRAME, pItem->aCols[1], 1024);
822 lvi.mask = LVIF_TEXT | LVIF_IMAGE | LVIF_PARAM | LVIF_STATE;
823 lvi.state = 0;
824 lvi.stateMask = 0;
825 lvi.pszText = LPSTR_TEXTCALLBACK; /* app. maintains text */
826 lvi.iImage = 0;
827 lvi.iItem = editItemIndex;
828 lvi.iSubItem = 0;
829 lvi.lParam = (LPARAM)pItem; /* item data */
830
831 /* Add the item. */
832 ListView_SetItem(m_hwndList, &lvi);
833 ListView_Update(m_hwndList, editItemIndex);
834 } /* Fall through */
835 case IDCANCEL:
836 EndDialog(hwndDlg, wParam);
837 return TRUE;
838 }
839 }
840 return FALSE;
841 }
842
843
844 /* Double clicking means editing a frame */
845 BOOL List_EditData(HWND hwndApp, HWND hwndList)
846 {
847 LV_ITEM lvi;
848 BOOL result;
849
850 /* First get the selected item */
851 int index = ListView_GetNextItem(hwndList, -1, LVNI_SELECTED);
852
853 m_hwndList = hwndList;
854
855 if (index != -1)
856 {
857 lvi.mask = LVIF_PARAM;
858 lvi.iItem = index;
859 lvi.iSubItem = 0;
860
861 if (ListView_GetItem(hwndList, &lvi) == TRUE)
862 {
863 pItem = (ID3ITEM*)lvi.lParam;
864 editItemIndex = lvi.iItem;
865
866 result = DialogBox(hInstance_for_id3editor, MAKEINTRESOURCE(IDD_EDITTEXTFRAME),
867 hwndApp, EditTextFrameProc);
868 if (LOWORD(result) == IDOK)
869 return TRUE;
870 }
871 }
872 return FALSE;
873 }
874
875
876 /* Delete the selected frame */
877 BOOL List_DeleteSelected(HWND hwndApp, HWND hwndList)
878 {
879 int items;
880
881 /* First get the selected item */
882 int index = ListView_GetNextItem(hwndList, -1, LVNI_SELECTED);
883
884 if (index != -1)
885 ListView_DeleteItem(hwndList, index);
886
887 items = ListView_GetItemCount(hwndList);
888 if (index != -1) return TRUE;
889 else return FALSE;
890 }
891
892
893 /* Save the ID3 to the file */
894 void List_SaveID3(HWND hwndApp, HWND hwndList, char *filename)
895 {
896 LV_ITEM lvi;
897 ID3ITEM *pItem1;
898 int i, items;
899 ID3Tag *tag;
900 ID3Frame *frame;
901 ID3Field *field;
902
903 /* Strip the tag first, before completely rewriting it */
904 if ((tag = ID3Tag_New()) != NULL)
905 {
906 ID3Tag_Link(tag, filename);
907 ID3Tag_Strip(tag, ID3TT_ALL);
908 ID3Tag_Clear(tag);
909
910 if (SendMessage(GetDlgItem(hwndApp, IDC_ID3V2TAG), BM_GETCHECK, 0, 0) == BST_UNCHECKED)
911 {
912 /* No frames saved */
913 ID3Tag_Delete(tag);
914 EnableWindow(GetDlgItem(hwndApp, IDC_ID3V2TAG), FALSE);
915 ListView_DeleteAllItems(hwndList);
916 return;
917 }
918
919 /* First get the number of items */
920 items = ListView_GetItemCount(hwndList);
921
922 if (items > 0)
923 {
924 for (i = 0; i < items; i++)
925 {
926 lvi.mask = LVIF_PARAM;
927 lvi.iItem = i;
928 lvi.iSubItem = 0;
929
930 if (ListView_GetItem(hwndList, &lvi) == TRUE)
931 {
932 pItem1 = (ID3ITEM*)lvi.lParam;
933
934 frame = ID3Frame_NewID(pItem1->frameId);
935
936 switch (pItem1->frameId)
937 {
938 case ID3FID_ALBUM: case ID3FID_BPM:
939 case ID3FID_COMPOSER: case ID3FID_CONTENTTYPE:
940 case ID3FID_COPYRIGHT: case ID3FID_DATE:
941 case ID3FID_PLAYLISTDELAY: case ID3FID_ENCODEDBY:
942 case ID3FID_LYRICIST: case ID3FID_FILETYPE:
943 case ID3FID_TIME: case ID3FID_CONTENTGROUP:
944 case ID3FID_TITLE: case ID3FID_SUBTITLE:
945 case ID3FID_INITIALKEY: case ID3FID_LANGUAGE:
946 case ID3FID_SONGLEN: case ID3FID_MEDIATYPE:
947 case ID3FID_ORIGALBUM: case ID3FID_ORIGFILENAME:
948 case ID3FID_ORIGLYRICIST: case ID3FID_ORIGARTIST:
949 case ID3FID_ORIGYEAR: case ID3FID_FILEOWNER:
950 case ID3FID_LEADARTIST: case ID3FID_BAND:
951 case ID3FID_CONDUCTOR: case ID3FID_MIXARTIST:
952 case ID3FID_PARTINSET: case ID3FID_PUBLISHER:
953 case ID3FID_TRACKNUM: case ID3FID_RECORDINGDATES:
954 case ID3FID_NETRADIOSTATION: case ID3FID_NETRADIOOWNER:
955 case ID3FID_SIZE: case ID3FID_ISRC:
956 case ID3FID_ENCODERSETTINGS: case ID3FID_YEAR:
957 {
958 field = ID3Frame_GetField(frame, ID3FN_TEXT);
959 ID3Field_SetASCII(field, pItem1->aCols[1]);
960 ID3Tag_AddFrame(tag, frame);
961 break;
962 }
963 case ID3FID_USERTEXT:
964 case ID3FID_COMMENT: /* Can also contain an extra language field (but not used now) */
965 case ID3FID_UNSYNCEDLYRICS: /* Can also contain an extra language field (but not used now) */
966 {
967 field = ID3Frame_GetField(frame, ID3FN_DESCRIPTION);
968 ID3Field_SetASCII(field, pItem1->aCols[0]);
969 field = ID3Frame_GetField(frame, ID3FN_TEXT);
970 ID3Field_SetASCII(field, pItem1->aCols[1]);
971 ID3Tag_AddFrame(tag, frame);
972 break;
973 }
974 case ID3FID_WWWAUDIOFILE: case ID3FID_WWWARTIST:
975 case ID3FID_WWWAUDIOSOURCE: case ID3FID_WWWCOMMERCIALINFO:
976 case ID3FID_WWWCOPYRIGHT: case ID3FID_WWWPUBLISHER:
977 case ID3FID_WWWPAYMENT: case ID3FID_WWWRADIOPAGE:
978 {
979 field = ID3Frame_GetField(frame, ID3FN_URL);
980 ID3Field_SetASCII(field, pItem1->aCols[1]);
981 ID3Tag_AddFrame(tag, frame);
982 break;
983 }
984 case ID3FID_WWWUSER:
985 {
986 field = ID3Frame_GetField(frame, ID3FN_DESCRIPTION);
987 ID3Field_SetASCII(field, pItem1->aCols[0]);
988 field = ID3Frame_GetField(frame, ID3FN_URL);
989 ID3Field_SetASCII(field, pItem1->aCols[1]);
990 ID3Tag_AddFrame(tag, frame);
991 break;
992 }
993 default:
994 break;
995 }
996 }
997 }
998 ID3Tag_UpdateByTagType(tag, ID3TT_ID3V2);
999 }
1000
1001 ID3Tag_Delete(tag);
1002 }
1003 }
1004
1005 /* Get the title from the file */
1006 void GetID3FileTitle(char *filename, char *title, char *format)
1007 {
1008 ID3Tag *tag;
1009 ID3Frame *frame;
1010 ID3Field *field;
1011 char buffer[255];
1012 int some_info = 0;
1013 char *in = format;
1014 char *out = title;
1015 char *bound = out + (MAX_PATH - 10 - 1);
1016
1017
1018 if ((tag = ID3Tag_New()) != NULL)
1019 {
1020 ID3Tag_Link(tag, filename);
1021
1022 while (*in && out < bound)
1023 {
1024 switch (*in) {
1025 case '%':
1026 ++in;
1027 break;
1028
1029 default:
1030 *out++ = *in++;
1031 continue;
1032 }
1033
1034 /* handle % escape sequence */
1035 switch (*in++) {
1036 case '0':
1037 if ((frame = ID3Tag_FindFrameWithID(tag, ID3FID_TRACKNUM)) != NULL) {
1038 int size;
1039 field = ID3Frame_GetField(frame, ID3FN_TEXT);
1040 size = ID3Field_GetASCII(field, buffer, 255, 1);
1041 lstrcpy(out, buffer); out += size;
1042 some_info = 1;
1043 }
1044 break;
1045 case '1':
1046 if ((frame = ID3Tag_FindFrameWithID(tag, ID3FID_LEADARTIST)) != NULL) {
1047 int size;
1048 field = ID3Frame_GetField(frame, ID3FN_TEXT);
1049 size = ID3Field_GetASCII(field, buffer, 255, 1);
1050 lstrcpy(out, buffer); out += size;
1051 some_info = 1;
1052 }
1053 break;
1054 case '2':
1055 if ((frame = ID3Tag_FindFrameWithID(tag, ID3FID_TITLE)) != NULL) {
1056 int size;
1057 field = ID3Frame_GetField(frame, ID3FN_TEXT);
1058 size = ID3Field_GetASCII(field, buffer, 255, 1);
1059 lstrcpy(out, buffer); out += size;
1060 some_info = 1;
1061 }
1062 break;
1063 case '3':
1064 if ((frame = ID3Tag_FindFrameWithID(tag, ID3FID_ALBUM)) != NULL) {
1065 int size;
1066 field = ID3Frame_GetField(frame, ID3FN_TEXT);
1067 size = ID3Field_GetASCII(field, buffer, 255, 1);
1068 lstrcpy(out, buffer); out += size;
1069 some_info = 1;
1070 }
1071 break;
1072 case '4':
1073 if ((frame = ID3Tag_FindFrameWithID(tag, ID3FID_YEAR)) != NULL) {
1074 int size;
1075 field = ID3Frame_GetField(frame, ID3FN_TEXT);
1076 size = ID3Field_GetASCII(field, buffer, 255, 1);
1077 lstrcpy(out, buffer); out += size;
1078 some_info = 1;
1079 }
1080 break;
1081 case '5':
1082 if ((frame = ID3Tag_FindFrameWithID(tag, ID3FID_COMMENT)) != NULL) {
1083 int size;
1084 field = ID3Frame_GetField(frame, ID3FN_TEXT);
1085 size = ID3Field_GetASCII(field, buffer, 255, 1);
1086 lstrcpy(out, buffer); out += size;
1087 some_info = 1;
1088 }
1089 break;
1090 case '6':
1091 if ((frame = ID3Tag_FindFrameWithID(tag, ID3FID_CONTENTTYPE)) != NULL) {
1092 int size; char *tmp;
1093 field = ID3Frame_GetField(frame, ID3FN_TEXT);
1094 size = ID3Field_GetASCII(field, buffer, 255, 1);
1095 tmp = GetGenre(buffer);
1096 lstrcpy(out, tmp); out += size;
1097 some_info = 1;
1098 }
1099 break;
1100 case '7':
1101 {
1102 char *p=filename+lstrlen(filename);
1103 int len = 0;
1104 while (*p != '\\' && p >= filename) { p--; len++; }
1105 lstrcpy(out, ++p); out += len;
1106 some_info = 1;
1107 break;
1108 }
1109 }
1110 }
1111
1112 *out = '\0';
1113 ID3Tag_Delete(tag);
1114 }
1115
1116 if (!some_info)
1117 {
1118 char *p=filename+lstrlen(filename);
1119 while (*p != '\\' && p >= filename) p--;
1120 lstrcpy(title,++p);
1121 }
1122 }
1123
+0
-54
common/faad/id3v2tag.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: id3v2tag.h,v 1.3 2003/07/29 08:20:11 menno Exp $
25 **/
26
27 #ifndef __ID3V2TAG_H__
28 #define __ID3V2TAG_H__
29
30 void GetID3FileTitle(char *filename, char *title, char *format);
31 void FillID3List(HWND hwndDlg, HWND hwndList, char *filename);
32 void List_OnGetDispInfo(LV_DISPINFO *pnmv);
33 BOOL List_EditData(HWND hwndApp, HWND hwndList);
34 void List_SaveID3(HWND hwndApp, HWND hwndList, char *filename);
35 BOOL List_DeleteSelected(HWND hwndApp, HWND hwndList);
36 BOOL List_AddFrame(HWND hwndApp, HWND hwndList);
37 BOOL List_AddStandardFrames(HWND hwndApp, HWND hwndList);
38 void AddFrameFromRAWData(HWND hwndList, int frameId, LPSTR data1, LPSTR data2);
39
40 HINSTANCE hInstance_for_id3editor;
41
42 typedef struct ID3GENRES_TAG
43 {
44 BYTE id;
45 char name[30];
46 } ID3GENRES;
47
48 typedef struct id3item_tag {
49 int frameId;
50 LPSTR aCols[2];
51 } ID3ITEM;
52
53 #endif
0 # Makefile.in generated by automake 1.15.1 from Makefile.am.
1 # @configure_input@
2
3 # Copyright (C) 1994-2017 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 VPATH = @srcdir@
18 am__is_gnu_make = { \
19 if test -z '$(MAKELEVEL)'; then \
20 false; \
21 elif test -n '$(MAKE_HOST)'; then \
22 true; \
23 elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
24 true; \
25 else \
26 false; \
27 fi; \
28 }
29 am__make_running_with_option = \
30 case $${target_option-} in \
31 ?) ;; \
32 *) echo "am__make_running_with_option: internal error: invalid" \
33 "target option '$${target_option-}' specified" >&2; \
34 exit 1;; \
35 esac; \
36 has_opt=no; \
37 sane_makeflags=$$MAKEFLAGS; \
38 if $(am__is_gnu_make); then \
39 sane_makeflags=$$MFLAGS; \
40 else \
41 case $$MAKEFLAGS in \
42 *\\[\ \ ]*) \
43 bs=\\; \
44 sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
45 | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
46 esac; \
47 fi; \
48 skip_next=no; \
49 strip_trailopt () \
50 { \
51 flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
52 }; \
53 for flg in $$sane_makeflags; do \
54 test $$skip_next = yes && { skip_next=no; continue; }; \
55 case $$flg in \
56 *=*|--*) continue;; \
57 -*I) strip_trailopt 'I'; skip_next=yes;; \
58 -*I?*) strip_trailopt 'I';; \
59 -*O) strip_trailopt 'O'; skip_next=yes;; \
60 -*O?*) strip_trailopt 'O';; \
61 -*l) strip_trailopt 'l'; skip_next=yes;; \
62 -*l?*) strip_trailopt 'l';; \
63 -[dEDm]) skip_next=yes;; \
64 -[JT]) skip_next=yes;; \
65 esac; \
66 case $$flg in \
67 *$$target_option*) has_opt=yes; break;; \
68 esac; \
69 done; \
70 test $$has_opt = yes
71 am__make_dryrun = (target_option=n; $(am__make_running_with_option))
72 am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
73 pkgdatadir = $(datadir)/@PACKAGE@
74 pkgincludedir = $(includedir)/@PACKAGE@
75 pkglibdir = $(libdir)/@PACKAGE@
76 pkglibexecdir = $(libexecdir)/@PACKAGE@
77 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
78 install_sh_DATA = $(install_sh) -c -m 644
79 install_sh_PROGRAM = $(install_sh) -c
80 install_sh_SCRIPT = $(install_sh) -c
81 INSTALL_HEADER = $(INSTALL_DATA)
82 transform = $(program_transform_name)
83 NORMAL_INSTALL = :
84 PRE_INSTALL = :
85 POST_INSTALL = :
86 NORMAL_UNINSTALL = :
87 PRE_UNINSTALL = :
88 POST_UNINSTALL = :
89 build_triplet = @build@
90 host_triplet = @host@
91 subdir = common/mp4ff
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 $(noinst_HEADERS) \
97 $(am__DIST_COMMON)
98 mkinstalldirs = $(install_sh) -d
99 CONFIG_HEADER = $(top_builddir)/config.h
100 CONFIG_CLEAN_FILES =
101 CONFIG_CLEAN_VPATH_FILES =
102 LIBRARIES = $(noinst_LIBRARIES)
103 ARFLAGS = cru
104 AM_V_AR = $(am__v_AR_@AM_V@)
105 am__v_AR_ = $(am__v_AR_@AM_DEFAULT_V@)
106 am__v_AR_0 = @echo " AR " $@;
107 am__v_AR_1 =
108 libmp4ff_a_AR = $(AR) $(ARFLAGS)
109 libmp4ff_a_LIBADD =
110 am_libmp4ff_a_OBJECTS = libmp4ff_a-mp4ff.$(OBJEXT) \
111 libmp4ff_a-mp4atom.$(OBJEXT) libmp4ff_a-mp4meta.$(OBJEXT) \
112 libmp4ff_a-mp4sample.$(OBJEXT) libmp4ff_a-mp4util.$(OBJEXT) \
113 libmp4ff_a-mp4tagupdate.$(OBJEXT)
114 libmp4ff_a_OBJECTS = $(am_libmp4ff_a_OBJECTS)
115 AM_V_P = $(am__v_P_@AM_V@)
116 am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
117 am__v_P_0 = false
118 am__v_P_1 = :
119 AM_V_GEN = $(am__v_GEN_@AM_V@)
120 am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
121 am__v_GEN_0 = @echo " GEN " $@;
122 am__v_GEN_1 =
123 AM_V_at = $(am__v_at_@AM_V@)
124 am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
125 am__v_at_0 = @
126 am__v_at_1 =
127 DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
128 depcomp = $(SHELL) $(top_srcdir)/depcomp
129 am__depfiles_maybe = depfiles
130 am__mv = mv -f
131 AM_V_lt = $(am__v_lt_@AM_V@)
132 am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
133 am__v_lt_0 = --silent
134 am__v_lt_1 =
135 COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
136 $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
137 LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
138 $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \
139 $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
140 $(AM_CFLAGS) $(CFLAGS)
141 AM_V_CC = $(am__v_CC_@AM_V@)
142 am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@)
143 am__v_CC_0 = @echo " CC " $@;
144 am__v_CC_1 =
145 CCLD = $(CC)
146 LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
147 $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
148 $(AM_LDFLAGS) $(LDFLAGS) -o $@
149 AM_V_CCLD = $(am__v_CCLD_@AM_V@)
150 am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@)
151 am__v_CCLD_0 = @echo " CCLD " $@;
152 am__v_CCLD_1 =
153 SOURCES = $(libmp4ff_a_SOURCES)
154 DIST_SOURCES = $(libmp4ff_a_SOURCES)
155 am__can_run_installinfo = \
156 case $$AM_UPDATE_INFO_DIR in \
157 n|no|NO) false;; \
158 *) (install-info --version) >/dev/null 2>&1;; \
159 esac
160 HEADERS = $(noinst_HEADERS)
161 am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
162 # Read a list of newline-separated strings from the standard input,
163 # and print each of them once, without duplicates. Input order is
164 # *not* preserved.
165 am__uniquify_input = $(AWK) '\
166 BEGIN { nonempty = 0; } \
167 { items[$$0] = 1; nonempty = 1; } \
168 END { if (nonempty) { for (i in items) print i; }; } \
169 '
170 # Make sure the list of sources is unique. This is necessary because,
171 # e.g., the same source file might be shared among _SOURCES variables
172 # for different programs/libraries.
173 am__define_uniq_tagged_files = \
174 list='$(am__tagged_files)'; \
175 unique=`for i in $$list; do \
176 if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
177 done | $(am__uniquify_input)`
178 ETAGS = etags
179 CTAGS = ctags
180 am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/depcomp
181 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
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 noinst_LIBRARIES = libmp4ff.a
310 noinst_HEADERS = mp4ff.h mp4ffint.h
311 libmp4ff_a_CFLAGS = -DUSE_TAGGING=1
312 libmp4ff_a_SOURCES = mp4ff.c mp4atom.c mp4meta.c mp4sample.c mp4util.c \
313 mp4tagupdate.c mp4ff.h mp4ffint.h
314
315 all: all-am
316
317 .SUFFIXES:
318 .SUFFIXES: .c .lo .o .obj
319 $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
320 @for dep in $?; do \
321 case '$(am__configure_deps)' in \
322 *$$dep*) \
323 ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
324 && { if test -f $@; then exit 0; else break; fi; }; \
325 exit 1;; \
326 esac; \
327 done; \
328 echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu common/mp4ff/Makefile'; \
329 $(am__cd) $(top_srcdir) && \
330 $(AUTOMAKE) --gnu common/mp4ff/Makefile
331 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
332 @case '$?' in \
333 *config.status*) \
334 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
335 *) \
336 echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
337 cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
338 esac;
339
340 $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
341 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
342
343 $(top_srcdir)/configure: $(am__configure_deps)
344 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
345 $(ACLOCAL_M4): $(am__aclocal_m4_deps)
346 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
347 $(am__aclocal_m4_deps):
348
349 clean-noinstLIBRARIES:
350 -test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES)
351
352 libmp4ff.a: $(libmp4ff_a_OBJECTS) $(libmp4ff_a_DEPENDENCIES) $(EXTRA_libmp4ff_a_DEPENDENCIES)
353 $(AM_V_at)-rm -f libmp4ff.a
354 $(AM_V_AR)$(libmp4ff_a_AR) libmp4ff.a $(libmp4ff_a_OBJECTS) $(libmp4ff_a_LIBADD)
355 $(AM_V_at)$(RANLIB) libmp4ff.a
356
357 mostlyclean-compile:
358 -rm -f *.$(OBJEXT)
359
360 distclean-compile:
361 -rm -f *.tab.c
362
363 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmp4ff_a-mp4atom.Po@am__quote@
364 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmp4ff_a-mp4ff.Po@am__quote@
365 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmp4ff_a-mp4meta.Po@am__quote@
366 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmp4ff_a-mp4sample.Po@am__quote@
367 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmp4ff_a-mp4tagupdate.Po@am__quote@
368 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmp4ff_a-mp4util.Po@am__quote@
369
370 .c.o:
371 @am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\
372 @am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\
373 @am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po
374 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
375 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
376 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $<
377
378 .c.obj:
379 @am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.obj$$||'`;\
380 @am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ `$(CYGPATH_W) '$<'` &&\
381 @am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po
382 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
383 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
384 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
385
386 .c.lo:
387 @am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.lo$$||'`;\
388 @am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\
389 @am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Plo
390 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
391 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
392 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $<
393
394 libmp4ff_a-mp4ff.o: mp4ff.c
395 @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmp4ff_a_CFLAGS) $(CFLAGS) -MT libmp4ff_a-mp4ff.o -MD -MP -MF $(DEPDIR)/libmp4ff_a-mp4ff.Tpo -c -o libmp4ff_a-mp4ff.o `test -f 'mp4ff.c' || echo '$(srcdir)/'`mp4ff.c
396 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmp4ff_a-mp4ff.Tpo $(DEPDIR)/libmp4ff_a-mp4ff.Po
397 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mp4ff.c' object='libmp4ff_a-mp4ff.o' libtool=no @AMDEPBACKSLASH@
398 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
399 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmp4ff_a_CFLAGS) $(CFLAGS) -c -o libmp4ff_a-mp4ff.o `test -f 'mp4ff.c' || echo '$(srcdir)/'`mp4ff.c
400
401 libmp4ff_a-mp4ff.obj: mp4ff.c
402 @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmp4ff_a_CFLAGS) $(CFLAGS) -MT libmp4ff_a-mp4ff.obj -MD -MP -MF $(DEPDIR)/libmp4ff_a-mp4ff.Tpo -c -o libmp4ff_a-mp4ff.obj `if test -f 'mp4ff.c'; then $(CYGPATH_W) 'mp4ff.c'; else $(CYGPATH_W) '$(srcdir)/mp4ff.c'; fi`
403 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmp4ff_a-mp4ff.Tpo $(DEPDIR)/libmp4ff_a-mp4ff.Po
404 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mp4ff.c' object='libmp4ff_a-mp4ff.obj' libtool=no @AMDEPBACKSLASH@
405 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
406 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmp4ff_a_CFLAGS) $(CFLAGS) -c -o libmp4ff_a-mp4ff.obj `if test -f 'mp4ff.c'; then $(CYGPATH_W) 'mp4ff.c'; else $(CYGPATH_W) '$(srcdir)/mp4ff.c'; fi`
407
408 libmp4ff_a-mp4atom.o: mp4atom.c
409 @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmp4ff_a_CFLAGS) $(CFLAGS) -MT libmp4ff_a-mp4atom.o -MD -MP -MF $(DEPDIR)/libmp4ff_a-mp4atom.Tpo -c -o libmp4ff_a-mp4atom.o `test -f 'mp4atom.c' || echo '$(srcdir)/'`mp4atom.c
410 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmp4ff_a-mp4atom.Tpo $(DEPDIR)/libmp4ff_a-mp4atom.Po
411 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mp4atom.c' object='libmp4ff_a-mp4atom.o' libtool=no @AMDEPBACKSLASH@
412 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
413 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmp4ff_a_CFLAGS) $(CFLAGS) -c -o libmp4ff_a-mp4atom.o `test -f 'mp4atom.c' || echo '$(srcdir)/'`mp4atom.c
414
415 libmp4ff_a-mp4atom.obj: mp4atom.c
416 @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmp4ff_a_CFLAGS) $(CFLAGS) -MT libmp4ff_a-mp4atom.obj -MD -MP -MF $(DEPDIR)/libmp4ff_a-mp4atom.Tpo -c -o libmp4ff_a-mp4atom.obj `if test -f 'mp4atom.c'; then $(CYGPATH_W) 'mp4atom.c'; else $(CYGPATH_W) '$(srcdir)/mp4atom.c'; fi`
417 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmp4ff_a-mp4atom.Tpo $(DEPDIR)/libmp4ff_a-mp4atom.Po
418 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mp4atom.c' object='libmp4ff_a-mp4atom.obj' libtool=no @AMDEPBACKSLASH@
419 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
420 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmp4ff_a_CFLAGS) $(CFLAGS) -c -o libmp4ff_a-mp4atom.obj `if test -f 'mp4atom.c'; then $(CYGPATH_W) 'mp4atom.c'; else $(CYGPATH_W) '$(srcdir)/mp4atom.c'; fi`
421
422 libmp4ff_a-mp4meta.o: mp4meta.c
423 @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmp4ff_a_CFLAGS) $(CFLAGS) -MT libmp4ff_a-mp4meta.o -MD -MP -MF $(DEPDIR)/libmp4ff_a-mp4meta.Tpo -c -o libmp4ff_a-mp4meta.o `test -f 'mp4meta.c' || echo '$(srcdir)/'`mp4meta.c
424 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmp4ff_a-mp4meta.Tpo $(DEPDIR)/libmp4ff_a-mp4meta.Po
425 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mp4meta.c' object='libmp4ff_a-mp4meta.o' libtool=no @AMDEPBACKSLASH@
426 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
427 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmp4ff_a_CFLAGS) $(CFLAGS) -c -o libmp4ff_a-mp4meta.o `test -f 'mp4meta.c' || echo '$(srcdir)/'`mp4meta.c
428
429 libmp4ff_a-mp4meta.obj: mp4meta.c
430 @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmp4ff_a_CFLAGS) $(CFLAGS) -MT libmp4ff_a-mp4meta.obj -MD -MP -MF $(DEPDIR)/libmp4ff_a-mp4meta.Tpo -c -o libmp4ff_a-mp4meta.obj `if test -f 'mp4meta.c'; then $(CYGPATH_W) 'mp4meta.c'; else $(CYGPATH_W) '$(srcdir)/mp4meta.c'; fi`
431 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmp4ff_a-mp4meta.Tpo $(DEPDIR)/libmp4ff_a-mp4meta.Po
432 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mp4meta.c' object='libmp4ff_a-mp4meta.obj' libtool=no @AMDEPBACKSLASH@
433 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
434 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmp4ff_a_CFLAGS) $(CFLAGS) -c -o libmp4ff_a-mp4meta.obj `if test -f 'mp4meta.c'; then $(CYGPATH_W) 'mp4meta.c'; else $(CYGPATH_W) '$(srcdir)/mp4meta.c'; fi`
435
436 libmp4ff_a-mp4sample.o: mp4sample.c
437 @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmp4ff_a_CFLAGS) $(CFLAGS) -MT libmp4ff_a-mp4sample.o -MD -MP -MF $(DEPDIR)/libmp4ff_a-mp4sample.Tpo -c -o libmp4ff_a-mp4sample.o `test -f 'mp4sample.c' || echo '$(srcdir)/'`mp4sample.c
438 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmp4ff_a-mp4sample.Tpo $(DEPDIR)/libmp4ff_a-mp4sample.Po
439 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mp4sample.c' object='libmp4ff_a-mp4sample.o' libtool=no @AMDEPBACKSLASH@
440 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
441 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmp4ff_a_CFLAGS) $(CFLAGS) -c -o libmp4ff_a-mp4sample.o `test -f 'mp4sample.c' || echo '$(srcdir)/'`mp4sample.c
442
443 libmp4ff_a-mp4sample.obj: mp4sample.c
444 @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmp4ff_a_CFLAGS) $(CFLAGS) -MT libmp4ff_a-mp4sample.obj -MD -MP -MF $(DEPDIR)/libmp4ff_a-mp4sample.Tpo -c -o libmp4ff_a-mp4sample.obj `if test -f 'mp4sample.c'; then $(CYGPATH_W) 'mp4sample.c'; else $(CYGPATH_W) '$(srcdir)/mp4sample.c'; fi`
445 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmp4ff_a-mp4sample.Tpo $(DEPDIR)/libmp4ff_a-mp4sample.Po
446 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mp4sample.c' object='libmp4ff_a-mp4sample.obj' libtool=no @AMDEPBACKSLASH@
447 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
448 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmp4ff_a_CFLAGS) $(CFLAGS) -c -o libmp4ff_a-mp4sample.obj `if test -f 'mp4sample.c'; then $(CYGPATH_W) 'mp4sample.c'; else $(CYGPATH_W) '$(srcdir)/mp4sample.c'; fi`
449
450 libmp4ff_a-mp4util.o: mp4util.c
451 @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmp4ff_a_CFLAGS) $(CFLAGS) -MT libmp4ff_a-mp4util.o -MD -MP -MF $(DEPDIR)/libmp4ff_a-mp4util.Tpo -c -o libmp4ff_a-mp4util.o `test -f 'mp4util.c' || echo '$(srcdir)/'`mp4util.c
452 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmp4ff_a-mp4util.Tpo $(DEPDIR)/libmp4ff_a-mp4util.Po
453 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mp4util.c' object='libmp4ff_a-mp4util.o' libtool=no @AMDEPBACKSLASH@
454 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
455 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmp4ff_a_CFLAGS) $(CFLAGS) -c -o libmp4ff_a-mp4util.o `test -f 'mp4util.c' || echo '$(srcdir)/'`mp4util.c
456
457 libmp4ff_a-mp4util.obj: mp4util.c
458 @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmp4ff_a_CFLAGS) $(CFLAGS) -MT libmp4ff_a-mp4util.obj -MD -MP -MF $(DEPDIR)/libmp4ff_a-mp4util.Tpo -c -o libmp4ff_a-mp4util.obj `if test -f 'mp4util.c'; then $(CYGPATH_W) 'mp4util.c'; else $(CYGPATH_W) '$(srcdir)/mp4util.c'; fi`
459 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmp4ff_a-mp4util.Tpo $(DEPDIR)/libmp4ff_a-mp4util.Po
460 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mp4util.c' object='libmp4ff_a-mp4util.obj' libtool=no @AMDEPBACKSLASH@
461 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
462 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmp4ff_a_CFLAGS) $(CFLAGS) -c -o libmp4ff_a-mp4util.obj `if test -f 'mp4util.c'; then $(CYGPATH_W) 'mp4util.c'; else $(CYGPATH_W) '$(srcdir)/mp4util.c'; fi`
463
464 libmp4ff_a-mp4tagupdate.o: mp4tagupdate.c
465 @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmp4ff_a_CFLAGS) $(CFLAGS) -MT libmp4ff_a-mp4tagupdate.o -MD -MP -MF $(DEPDIR)/libmp4ff_a-mp4tagupdate.Tpo -c -o libmp4ff_a-mp4tagupdate.o `test -f 'mp4tagupdate.c' || echo '$(srcdir)/'`mp4tagupdate.c
466 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmp4ff_a-mp4tagupdate.Tpo $(DEPDIR)/libmp4ff_a-mp4tagupdate.Po
467 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mp4tagupdate.c' object='libmp4ff_a-mp4tagupdate.o' libtool=no @AMDEPBACKSLASH@
468 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
469 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmp4ff_a_CFLAGS) $(CFLAGS) -c -o libmp4ff_a-mp4tagupdate.o `test -f 'mp4tagupdate.c' || echo '$(srcdir)/'`mp4tagupdate.c
470
471 libmp4ff_a-mp4tagupdate.obj: mp4tagupdate.c
472 @am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmp4ff_a_CFLAGS) $(CFLAGS) -MT libmp4ff_a-mp4tagupdate.obj -MD -MP -MF $(DEPDIR)/libmp4ff_a-mp4tagupdate.Tpo -c -o libmp4ff_a-mp4tagupdate.obj `if test -f 'mp4tagupdate.c'; then $(CYGPATH_W) 'mp4tagupdate.c'; else $(CYGPATH_W) '$(srcdir)/mp4tagupdate.c'; fi`
473 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmp4ff_a-mp4tagupdate.Tpo $(DEPDIR)/libmp4ff_a-mp4tagupdate.Po
474 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mp4tagupdate.c' object='libmp4ff_a-mp4tagupdate.obj' libtool=no @AMDEPBACKSLASH@
475 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
476 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libmp4ff_a_CFLAGS) $(CFLAGS) -c -o libmp4ff_a-mp4tagupdate.obj `if test -f 'mp4tagupdate.c'; then $(CYGPATH_W) 'mp4tagupdate.c'; else $(CYGPATH_W) '$(srcdir)/mp4tagupdate.c'; fi`
477
478 mostlyclean-libtool:
479 -rm -f *.lo
480
481 clean-libtool:
482 -rm -rf .libs _libs
483
484 ID: $(am__tagged_files)
485 $(am__define_uniq_tagged_files); mkid -fID $$unique
486 tags: tags-am
487 TAGS: tags
488
489 tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
490 set x; \
491 here=`pwd`; \
492 $(am__define_uniq_tagged_files); \
493 shift; \
494 if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
495 test -n "$$unique" || unique=$$empty_fix; \
496 if test $$# -gt 0; then \
497 $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
498 "$$@" $$unique; \
499 else \
500 $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
501 $$unique; \
502 fi; \
503 fi
504 ctags: ctags-am
505
506 CTAGS: ctags
507 ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
508 $(am__define_uniq_tagged_files); \
509 test -z "$(CTAGS_ARGS)$$unique" \
510 || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
511 $$unique
512
513 GTAGS:
514 here=`$(am__cd) $(top_builddir) && pwd` \
515 && $(am__cd) $(top_srcdir) \
516 && gtags -i $(GTAGS_ARGS) "$$here"
517 cscopelist: cscopelist-am
518
519 cscopelist-am: $(am__tagged_files)
520 list='$(am__tagged_files)'; \
521 case "$(srcdir)" in \
522 [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
523 *) sdir=$(subdir)/$(srcdir) ;; \
524 esac; \
525 for i in $$list; do \
526 if test -f "$$i"; then \
527 echo "$(subdir)/$$i"; \
528 else \
529 echo "$$sdir/$$i"; \
530 fi; \
531 done >> $(top_builddir)/cscope.files
532
533 distclean-tags:
534 -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
535
536 distdir: $(DISTFILES)
537 @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
538 topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
539 list='$(DISTFILES)'; \
540 dist_files=`for file in $$list; do echo $$file; done | \
541 sed -e "s|^$$srcdirstrip/||;t" \
542 -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
543 case $$dist_files in \
544 */*) $(MKDIR_P) `echo "$$dist_files" | \
545 sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
546 sort -u` ;; \
547 esac; \
548 for file in $$dist_files; do \
549 if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
550 if test -d $$d/$$file; then \
551 dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
552 if test -d "$(distdir)/$$file"; then \
553 find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
554 fi; \
555 if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
556 cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
557 find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
558 fi; \
559 cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
560 else \
561 test -f "$(distdir)/$$file" \
562 || cp -p $$d/$$file "$(distdir)/$$file" \
563 || exit 1; \
564 fi; \
565 done
566 check-am: all-am
567 check: check-am
568 all-am: Makefile $(LIBRARIES) $(HEADERS)
569 installdirs:
570 install: install-am
571 install-exec: install-exec-am
572 install-data: install-data-am
573 uninstall: uninstall-am
574
575 install-am: all-am
576 @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
577
578 installcheck: installcheck-am
579 install-strip:
580 if test -z '$(STRIP)'; then \
581 $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
582 install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
583 install; \
584 else \
585 $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
586 install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
587 "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
588 fi
589 mostlyclean-generic:
590
591 clean-generic:
592
593 distclean-generic:
594 -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
595 -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
596
597 maintainer-clean-generic:
598 @echo "This command is intended for maintainers to use"
599 @echo "it deletes files that may require special tools to rebuild."
600 clean: clean-am
601
602 clean-am: clean-generic clean-libtool clean-noinstLIBRARIES \
603 mostlyclean-am
604
605 distclean: distclean-am
606 -rm -rf ./$(DEPDIR)
607 -rm -f Makefile
608 distclean-am: clean-am distclean-compile distclean-generic \
609 distclean-tags
610
611 dvi: dvi-am
612
613 dvi-am:
614
615 html: html-am
616
617 html-am:
618
619 info: info-am
620
621 info-am:
622
623 install-data-am:
624
625 install-dvi: install-dvi-am
626
627 install-dvi-am:
628
629 install-exec-am:
630
631 install-html: install-html-am
632
633 install-html-am:
634
635 install-info: install-info-am
636
637 install-info-am:
638
639 install-man:
640
641 install-pdf: install-pdf-am
642
643 install-pdf-am:
644
645 install-ps: install-ps-am
646
647 install-ps-am:
648
649 installcheck-am:
650
651 maintainer-clean: maintainer-clean-am
652 -rm -rf ./$(DEPDIR)
653 -rm -f Makefile
654 maintainer-clean-am: distclean-am maintainer-clean-generic
655
656 mostlyclean: mostlyclean-am
657
658 mostlyclean-am: mostlyclean-compile mostlyclean-generic \
659 mostlyclean-libtool
660
661 pdf: pdf-am
662
663 pdf-am:
664
665 ps: ps-am
666
667 ps-am:
668
669 uninstall-am:
670
671 .MAKE: install-am install-strip
672
673 .PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \
674 clean-libtool clean-noinstLIBRARIES cscopelist-am ctags \
675 ctags-am distclean distclean-compile distclean-generic \
676 distclean-libtool distclean-tags distdir dvi dvi-am html \
677 html-am info info-am install install-am install-data \
678 install-data-am install-dvi install-dvi-am install-exec \
679 install-exec-am install-html install-html-am install-info \
680 install-info-am install-man install-pdf install-pdf-am \
681 install-ps install-ps-am install-strip installcheck \
682 installcheck-am installdirs maintainer-clean \
683 maintainer-clean-generic mostlyclean mostlyclean-compile \
684 mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
685 tags tags-am uninstall uninstall-am
686
687 .PRECIOUS: Makefile
688
689
690 # Tell versions [3.59,3.63) of GNU make to not export all variables.
691 # Otherwise a system limit (for SysV at least) may be exceeded.
692 .NOEXPORT:
+0
-326
common/mp4ff/mp4ff.vcproj less more
0 <?xml version="1.0" encoding="Windows-1252"?>
1 <VisualStudioProject
2 ProjectType="Visual C++"
3 Version="8,00"
4 Name="mp4ff"
5 ProjectGUID="{F470BB4A-7675-4D6A-B310-41F33AC6F987}"
6 >
7 <Platforms>
8 <Platform
9 Name="Win32"
10 />
11 </Platforms>
12 <ToolFiles>
13 </ToolFiles>
14 <Configurations>
15 <Configuration
16 Name="Release|Win32"
17 OutputDirectory=".\Release"
18 IntermediateDirectory=".\Release"
19 ConfigurationType="4"
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 />
39 <Tool
40 Name="VCCLCompilerTool"
41 AdditionalOptions=""
42 Optimization="1"
43 InlineFunctionExpansion="1"
44 PreprocessorDefinitions="USE_TAGGING"
45 StringPooling="true"
46 RuntimeLibrary="2"
47 EnableFunctionLevelLinking="true"
48 UsePrecompiledHeader="0"
49 PrecompiledHeaderFile=".\Release/mp4ff.pch"
50 AssemblerListingLocation=".\Release/"
51 ObjectFile=".\Release/"
52 ProgramDataBaseFileName=".\Release/"
53 WarningLevel="3"
54 SuppressStartupBanner="true"
55 Detect64BitPortabilityProblems="true"
56 />
57 <Tool
58 Name="VCManagedResourceCompilerTool"
59 />
60 <Tool
61 Name="VCResourceCompilerTool"
62 PreprocessorDefinitions="NDEBUG"
63 Culture="1043"
64 />
65 <Tool
66 Name="VCPreLinkEventTool"
67 />
68 <Tool
69 Name="VCLibrarianTool"
70 AdditionalOptions=""
71 OutputFile=".\Release\mp4ff.lib"
72 SuppressStartupBanner="true"
73 />
74 <Tool
75 Name="VCALinkTool"
76 />
77 <Tool
78 Name="VCXDCMakeTool"
79 />
80 <Tool
81 Name="VCBscMakeTool"
82 />
83 <Tool
84 Name="VCFxCopTool"
85 />
86 <Tool
87 Name="VCPostBuildEventTool"
88 />
89 </Configuration>
90 <Configuration
91 Name="Debug|Win32"
92 OutputDirectory=".\Debug"
93 IntermediateDirectory=".\Debug"
94 ConfigurationType="4"
95 InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
96 UseOfMFC="0"
97 ATLMinimizesCRunTimeLibraryUsage="false"
98 >
99 <Tool
100 Name="VCPreBuildEventTool"
101 />
102 <Tool
103 Name="VCCustomBuildTool"
104 />
105 <Tool
106 Name="VCXMLDataGeneratorTool"
107 />
108 <Tool
109 Name="VCWebServiceProxyGeneratorTool"
110 />
111 <Tool
112 Name="VCMIDLTool"
113 />
114 <Tool
115 Name="VCCLCompilerTool"
116 AdditionalOptions=""
117 Optimization="0"
118 PreprocessorDefinitions="USE_TAGGING"
119 BasicRuntimeChecks="3"
120 RuntimeLibrary="3"
121 UsePrecompiledHeader="0"
122 PrecompiledHeaderFile=".\Debug/mp4ff.pch"
123 AssemblerListingLocation=".\Debug/"
124 ObjectFile=".\Debug/"
125 ProgramDataBaseFileName=".\Debug/"
126 WarningLevel="3"
127 SuppressStartupBanner="true"
128 DebugInformationFormat="4"
129 />
130 <Tool
131 Name="VCManagedResourceCompilerTool"
132 />
133 <Tool
134 Name="VCResourceCompilerTool"
135 PreprocessorDefinitions="_DEBUG"
136 Culture="1043"
137 />
138 <Tool
139 Name="VCPreLinkEventTool"
140 />
141 <Tool
142 Name="VCLibrarianTool"
143 AdditionalOptions=""
144 OutputFile=".\Debug\mp4ff.lib"
145 SuppressStartupBanner="true"
146 />
147 <Tool
148 Name="VCALinkTool"
149 />
150 <Tool
151 Name="VCXDCMakeTool"
152 />
153 <Tool
154 Name="VCBscMakeTool"
155 />
156 <Tool
157 Name="VCFxCopTool"
158 />
159 <Tool
160 Name="VCPostBuildEventTool"
161 />
162 </Configuration>
163 </Configurations>
164 <References>
165 </References>
166 <Files>
167 <Filter
168 Name="Source Files"
169 Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
170 >
171 <File
172 RelativePath="mp4atom.c"
173 >
174 <FileConfiguration
175 Name="Release|Win32"
176 >
177 <Tool
178 Name="VCCLCompilerTool"
179 AdditionalOptions=""
180 Optimization="1"
181 PreprocessorDefinitions=""
182 />
183 </FileConfiguration>
184 <FileConfiguration
185 Name="Debug|Win32"
186 >
187 <Tool
188 Name="VCCLCompilerTool"
189 AdditionalOptions=""
190 Optimization="0"
191 PreprocessorDefinitions=""
192 BasicRuntimeChecks="3"
193 />
194 </FileConfiguration>
195 </File>
196 <File
197 RelativePath="mp4ff.c"
198 >
199 <FileConfiguration
200 Name="Release|Win32"
201 >
202 <Tool
203 Name="VCCLCompilerTool"
204 AdditionalOptions=""
205 Optimization="1"
206 PreprocessorDefinitions=""
207 />
208 </FileConfiguration>
209 <FileConfiguration
210 Name="Debug|Win32"
211 >
212 <Tool
213 Name="VCCLCompilerTool"
214 AdditionalOptions=""
215 Optimization="0"
216 PreprocessorDefinitions=""
217 BasicRuntimeChecks="3"
218 />
219 </FileConfiguration>
220 </File>
221 <File
222 RelativePath="mp4meta.c"
223 >
224 <FileConfiguration
225 Name="Release|Win32"
226 >
227 <Tool
228 Name="VCCLCompilerTool"
229 AdditionalOptions=""
230 Optimization="1"
231 PreprocessorDefinitions=""
232 />
233 </FileConfiguration>
234 <FileConfiguration
235 Name="Debug|Win32"
236 >
237 <Tool
238 Name="VCCLCompilerTool"
239 AdditionalOptions=""
240 Optimization="0"
241 PreprocessorDefinitions=""
242 BasicRuntimeChecks="3"
243 />
244 </FileConfiguration>
245 </File>
246 <File
247 RelativePath="mp4sample.c"
248 >
249 <FileConfiguration
250 Name="Release|Win32"
251 >
252 <Tool
253 Name="VCCLCompilerTool"
254 AdditionalOptions=""
255 Optimization="1"
256 PreprocessorDefinitions=""
257 />
258 </FileConfiguration>
259 <FileConfiguration
260 Name="Debug|Win32"
261 >
262 <Tool
263 Name="VCCLCompilerTool"
264 AdditionalOptions=""
265 Optimization="0"
266 PreprocessorDefinitions=""
267 BasicRuntimeChecks="3"
268 />
269 </FileConfiguration>
270 </File>
271 <File
272 RelativePath=".\mp4tagupdate.c"
273 >
274 </File>
275 <File
276 RelativePath="mp4util.c"
277 >
278 <FileConfiguration
279 Name="Release|Win32"
280 >
281 <Tool
282 Name="VCCLCompilerTool"
283 AdditionalOptions=""
284 Optimization="1"
285 PreprocessorDefinitions=""
286 />
287 </FileConfiguration>
288 <FileConfiguration
289 Name="Debug|Win32"
290 >
291 <Tool
292 Name="VCCLCompilerTool"
293 AdditionalOptions=""
294 Optimization="0"
295 PreprocessorDefinitions=""
296 BasicRuntimeChecks="3"
297 />
298 </FileConfiguration>
299 </File>
300 </Filter>
301 <Filter
302 Name="Header Files"
303 Filter="h;hpp;hxx;hm;inl"
304 >
305 <File
306 RelativePath=".\drmstables.h"
307 >
308 </File>
309 <File
310 RelativePath=".\mp4ff.h"
311 >
312 </File>
313 <File
314 RelativePath=".\mp4ff_int_types.h"
315 >
316 </File>
317 <File
318 RelativePath="mp4ffint.h"
319 >
320 </File>
321 </Filter>
322 </Files>
323 <Globals>
324 </Globals>
325 </VisualStudioProject>
0 #! /bin/sh
1 # Wrapper for compilers which do not understand '-c -o'.
2
3 scriptversion=2012-10-14.11; # UTC
4
5 # Copyright (C) 1999-2014 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 <http://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*)
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/*)
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 func_cl_wrapper "$@" # Doesn't return...
259 ;;
260 esac
261
262 ofile=
263 cfile=
264
265 for arg
266 do
267 if test -n "$eat"; then
268 eat=
269 else
270 case $1 in
271 -o)
272 # configure might choose to run compile as 'compile cc -o foo foo.c'.
273 # So we strip '-o arg' only if arg is an object.
274 eat=1
275 case $2 in
276 *.o | *.obj)
277 ofile=$2
278 ;;
279 *)
280 set x "$@" -o "$2"
281 shift
282 ;;
283 esac
284 ;;
285 *.c)
286 cfile=$1
287 set x "$@" "$1"
288 shift
289 ;;
290 *)
291 set x "$@" "$1"
292 shift
293 ;;
294 esac
295 fi
296 shift
297 done
298
299 if test -z "$ofile" || test -z "$cfile"; then
300 # If no '-o' option was seen then we might have been invoked from a
301 # pattern rule where we don't need one. That is ok -- this is a
302 # normal compilation that the losing compiler can handle. If no
303 # '.c' file was seen then we are probably linking. That is also
304 # ok.
305 exec "$@"
306 fi
307
308 # Name of file we expect compiler to create.
309 cofile=`echo "$cfile" | sed 's|^.*[\\/]||; s|^[a-zA-Z]:||; s/\.c$/.o/'`
310
311 # Create the lock directory.
312 # Note: use '[/\\:.-]' here to ensure that we don't use the same name
313 # that we are using for the .o file. Also, base the name on the expected
314 # object file name, since that is what matters with a parallel build.
315 lockdir=`echo "$cofile" | sed -e 's|[/\\:.-]|_|g'`.d
316 while true; do
317 if mkdir "$lockdir" >/dev/null 2>&1; then
318 break
319 fi
320 sleep 1
321 done
322 # FIXME: race condition here if user kills between mkdir and trap.
323 trap "rmdir '$lockdir'; exit 1" 1 2 15
324
325 # Run the compile.
326 "$@"
327 ret=$?
328
329 if test -f "$cofile"; then
330 test "$cofile" = "$ofile" || mv "$cofile" "$ofile"
331 elif test -f "${cofile}bj"; then
332 test "${cofile}bj" = "$ofile" || mv "${cofile}bj" "$ofile"
333 fi
334
335 rmdir "$lockdir"
336 exit $ret
337
338 # Local Variables:
339 # mode: shell-script
340 # sh-indentation: 2
341 # eval: (add-hook 'write-file-hooks 'time-stamp)
342 # time-stamp-start: "scriptversion="
343 # time-stamp-format: "%:y-%02m-%02d.%02H"
344 # time-stamp-time-zone: "UTC"
345 # time-stamp-end: "; # UTC"
346 # End:
0 #! /bin/sh
1 # Attempt to guess a canonical system name.
2 # Copyright 1992-2016 Free Software Foundation, Inc.
3
4 timestamp='2016-10-02'
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 <http://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 # http://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 Operation modes:
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-2016 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 esac
154
155 # Note: order is significant - the case branches are not exclusive.
156
157 case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
158 *:NetBSD:*:*)
159 # NetBSD (nbsd) targets should (where applicable) match one or
160 # more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*,
161 # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently
162 # switched to ELF, *-*-netbsd* would select the old
163 # object file format. This provides both forward
164 # compatibility and a consistent mechanism for selecting the
165 # object file format.
166 #
167 # Note: NetBSD doesn't particularly care about the vendor
168 # portion of the name. We always set it to "unknown".
169 sysctl="sysctl -n hw.machine_arch"
170 UNAME_MACHINE_ARCH=`(uname -p 2>/dev/null || \
171 /sbin/$sysctl 2>/dev/null || \
172 /usr/sbin/$sysctl 2>/dev/null || \
173 echo unknown)`
174 case "${UNAME_MACHINE_ARCH}" in
175 armeb) machine=armeb-unknown ;;
176 arm*) machine=arm-unknown ;;
177 sh3el) machine=shl-unknown ;;
178 sh3eb) machine=sh-unknown ;;
179 sh5el) machine=sh5le-unknown ;;
180 earmv*)
181 arch=`echo ${UNAME_MACHINE_ARCH} | sed -e 's,^e\(armv[0-9]\).*$,\1,'`
182 endian=`echo ${UNAME_MACHINE_ARCH} | sed -ne 's,^.*\(eb\)$,\1,p'`
183 machine=${arch}${endian}-unknown
184 ;;
185 *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
186 esac
187 # The Operating System including object format, if it has switched
188 # to ELF recently (or will in the future) and ABI.
189 case "${UNAME_MACHINE_ARCH}" in
190 earm*)
191 os=netbsdelf
192 ;;
193 arm*|i386|m68k|ns32k|sh3*|sparc|vax)
194 eval $set_cc_for_build
195 if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
196 | grep -q __ELF__
197 then
198 # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
199 # Return netbsd for either. FIX?
200 os=netbsd
201 else
202 os=netbsdelf
203 fi
204 ;;
205 *)
206 os=netbsd
207 ;;
208 esac
209 # Determine ABI tags.
210 case "${UNAME_MACHINE_ARCH}" in
211 earm*)
212 expr='s/^earmv[0-9]/-eabi/;s/eb$//'
213 abi=`echo ${UNAME_MACHINE_ARCH} | sed -e "$expr"`
214 ;;
215 esac
216 # The OS release
217 # Debian GNU/NetBSD machines have a different userland, and
218 # thus, need a distinct triplet. However, they do not need
219 # kernel version information, so it can be replaced with a
220 # suitable tag, in the style of linux-gnu.
221 case "${UNAME_VERSION}" in
222 Debian*)
223 release='-gnu'
224 ;;
225 *)
226 release=`echo ${UNAME_RELEASE} | sed -e 's/[-_].*//' | cut -d. -f1,2`
227 ;;
228 esac
229 # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
230 # contains redundant information, the shorter form:
231 # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
232 echo "${machine}-${os}${release}${abi}"
233 exit ;;
234 *:Bitrig:*:*)
235 UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'`
236 echo ${UNAME_MACHINE_ARCH}-unknown-bitrig${UNAME_RELEASE}
237 exit ;;
238 *:OpenBSD:*:*)
239 UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
240 echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
241 exit ;;
242 *:LibertyBSD:*:*)
243 UNAME_MACHINE_ARCH=`arch | sed 's/^.*BSD\.//'`
244 echo ${UNAME_MACHINE_ARCH}-unknown-libertybsd${UNAME_RELEASE}
245 exit ;;
246 *:ekkoBSD:*:*)
247 echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
248 exit ;;
249 *:SolidBSD:*:*)
250 echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE}
251 exit ;;
252 macppc:MirBSD:*:*)
253 echo powerpc-unknown-mirbsd${UNAME_RELEASE}
254 exit ;;
255 *:MirBSD:*:*)
256 echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
257 exit ;;
258 *:Sortix:*:*)
259 echo ${UNAME_MACHINE}-unknown-sortix
260 exit ;;
261 alpha:OSF1:*:*)
262 case $UNAME_RELEASE in
263 *4.0)
264 UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
265 ;;
266 *5.*)
267 UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
268 ;;
269 esac
270 # According to Compaq, /usr/sbin/psrinfo has been available on
271 # OSF/1 and Tru64 systems produced since 1995. I hope that
272 # covers most systems running today. This code pipes the CPU
273 # types through head -n 1, so we only detect the type of CPU 0.
274 ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1`
275 case "$ALPHA_CPU_TYPE" in
276 "EV4 (21064)")
277 UNAME_MACHINE=alpha ;;
278 "EV4.5 (21064)")
279 UNAME_MACHINE=alpha ;;
280 "LCA4 (21066/21068)")
281 UNAME_MACHINE=alpha ;;
282 "EV5 (21164)")
283 UNAME_MACHINE=alphaev5 ;;
284 "EV5.6 (21164A)")
285 UNAME_MACHINE=alphaev56 ;;
286 "EV5.6 (21164PC)")
287 UNAME_MACHINE=alphapca56 ;;
288 "EV5.7 (21164PC)")
289 UNAME_MACHINE=alphapca57 ;;
290 "EV6 (21264)")
291 UNAME_MACHINE=alphaev6 ;;
292 "EV6.7 (21264A)")
293 UNAME_MACHINE=alphaev67 ;;
294 "EV6.8CB (21264C)")
295 UNAME_MACHINE=alphaev68 ;;
296 "EV6.8AL (21264B)")
297 UNAME_MACHINE=alphaev68 ;;
298 "EV6.8CX (21264D)")
299 UNAME_MACHINE=alphaev68 ;;
300 "EV6.9A (21264/EV69A)")
301 UNAME_MACHINE=alphaev69 ;;
302 "EV7 (21364)")
303 UNAME_MACHINE=alphaev7 ;;
304 "EV7.9 (21364A)")
305 UNAME_MACHINE=alphaev79 ;;
306 esac
307 # A Pn.n version is a patched version.
308 # A Vn.n version is a released version.
309 # A Tn.n version is a released field test version.
310 # A Xn.n version is an unreleased experimental baselevel.
311 # 1.2 uses "1.2" for uname -r.
312 echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz`
313 # Reset EXIT trap before exiting to avoid spurious non-zero exit code.
314 exitcode=$?
315 trap '' 0
316 exit $exitcode ;;
317 Alpha\ *:Windows_NT*:*)
318 # How do we know it's Interix rather than the generic POSIX subsystem?
319 # Should we change UNAME_MACHINE based on the output of uname instead
320 # of the specific Alpha model?
321 echo alpha-pc-interix
322 exit ;;
323 21064:Windows_NT:50:3)
324 echo alpha-dec-winnt3.5
325 exit ;;
326 Amiga*:UNIX_System_V:4.0:*)
327 echo m68k-unknown-sysv4
328 exit ;;
329 *:[Aa]miga[Oo][Ss]:*:*)
330 echo ${UNAME_MACHINE}-unknown-amigaos
331 exit ;;
332 *:[Mm]orph[Oo][Ss]:*:*)
333 echo ${UNAME_MACHINE}-unknown-morphos
334 exit ;;
335 *:OS/390:*:*)
336 echo i370-ibm-openedition
337 exit ;;
338 *:z/VM:*:*)
339 echo s390-ibm-zvmoe
340 exit ;;
341 *:OS400:*:*)
342 echo powerpc-ibm-os400
343 exit ;;
344 arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
345 echo arm-acorn-riscix${UNAME_RELEASE}
346 exit ;;
347 arm*:riscos:*:*|arm*:RISCOS:*:*)
348 echo arm-unknown-riscos
349 exit ;;
350 SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
351 echo hppa1.1-hitachi-hiuxmpp
352 exit ;;
353 Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
354 # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
355 if test "`(/bin/universe) 2>/dev/null`" = att ; then
356 echo pyramid-pyramid-sysv3
357 else
358 echo pyramid-pyramid-bsd
359 fi
360 exit ;;
361 NILE*:*:*:dcosx)
362 echo pyramid-pyramid-svr4
363 exit ;;
364 DRS?6000:unix:4.0:6*)
365 echo sparc-icl-nx6
366 exit ;;
367 DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*)
368 case `/usr/bin/uname -p` in
369 sparc) echo sparc-icl-nx7; exit ;;
370 esac ;;
371 s390x:SunOS:*:*)
372 echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
373 exit ;;
374 sun4H:SunOS:5.*:*)
375 echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
376 exit ;;
377 sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
378 echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
379 exit ;;
380 i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*)
381 echo i386-pc-auroraux${UNAME_RELEASE}
382 exit ;;
383 i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
384 eval $set_cc_for_build
385 SUN_ARCH=i386
386 # If there is a compiler, see if it is configured for 64-bit objects.
387 # Note that the Sun cc does not turn __LP64__ into 1 like gcc does.
388 # This test works for both compilers.
389 if [ "$CC_FOR_BUILD" != no_compiler_found ]; then
390 if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \
391 (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
392 grep IS_64BIT_ARCH >/dev/null
393 then
394 SUN_ARCH=x86_64
395 fi
396 fi
397 echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
398 exit ;;
399 sun4*:SunOS:6*:*)
400 # According to config.sub, this is the proper way to canonicalize
401 # SunOS6. Hard to guess exactly what SunOS6 will be like, but
402 # it's likely to be more like Solaris than SunOS4.
403 echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
404 exit ;;
405 sun4*:SunOS:*:*)
406 case "`/usr/bin/arch -k`" in
407 Series*|S4*)
408 UNAME_RELEASE=`uname -v`
409 ;;
410 esac
411 # Japanese Language versions have a version number like `4.1.3-JL'.
412 echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
413 exit ;;
414 sun3*:SunOS:*:*)
415 echo m68k-sun-sunos${UNAME_RELEASE}
416 exit ;;
417 sun*:*:4.2BSD:*)
418 UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
419 test "x${UNAME_RELEASE}" = x && UNAME_RELEASE=3
420 case "`/bin/arch`" in
421 sun3)
422 echo m68k-sun-sunos${UNAME_RELEASE}
423 ;;
424 sun4)
425 echo sparc-sun-sunos${UNAME_RELEASE}
426 ;;
427 esac
428 exit ;;
429 aushp:SunOS:*:*)
430 echo sparc-auspex-sunos${UNAME_RELEASE}
431 exit ;;
432 # The situation for MiNT is a little confusing. The machine name
433 # can be virtually everything (everything which is not
434 # "atarist" or "atariste" at least should have a processor
435 # > m68000). The system name ranges from "MiNT" over "FreeMiNT"
436 # to the lowercase version "mint" (or "freemint"). Finally
437 # the system name "TOS" denotes a system which is actually not
438 # MiNT. But MiNT is downward compatible to TOS, so this should
439 # be no problem.
440 atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
441 echo m68k-atari-mint${UNAME_RELEASE}
442 exit ;;
443 atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
444 echo m68k-atari-mint${UNAME_RELEASE}
445 exit ;;
446 *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
447 echo m68k-atari-mint${UNAME_RELEASE}
448 exit ;;
449 milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
450 echo m68k-milan-mint${UNAME_RELEASE}
451 exit ;;
452 hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
453 echo m68k-hades-mint${UNAME_RELEASE}
454 exit ;;
455 *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
456 echo m68k-unknown-mint${UNAME_RELEASE}
457 exit ;;
458 m68k:machten:*:*)
459 echo m68k-apple-machten${UNAME_RELEASE}
460 exit ;;
461 powerpc:machten:*:*)
462 echo powerpc-apple-machten${UNAME_RELEASE}
463 exit ;;
464 RISC*:Mach:*:*)
465 echo mips-dec-mach_bsd4.3
466 exit ;;
467 RISC*:ULTRIX:*:*)
468 echo mips-dec-ultrix${UNAME_RELEASE}
469 exit ;;
470 VAX*:ULTRIX*:*:*)
471 echo vax-dec-ultrix${UNAME_RELEASE}
472 exit ;;
473 2020:CLIX:*:* | 2430:CLIX:*:*)
474 echo clipper-intergraph-clix${UNAME_RELEASE}
475 exit ;;
476 mips:*:*:UMIPS | mips:*:*:RISCos)
477 eval $set_cc_for_build
478 sed 's/^ //' << EOF >$dummy.c
479 #ifdef __cplusplus
480 #include <stdio.h> /* for printf() prototype */
481 int main (int argc, char *argv[]) {
482 #else
483 int main (argc, argv) int argc; char *argv[]; {
484 #endif
485 #if defined (host_mips) && defined (MIPSEB)
486 #if defined (SYSTYPE_SYSV)
487 printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
488 #endif
489 #if defined (SYSTYPE_SVR4)
490 printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0);
491 #endif
492 #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
493 printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0);
494 #endif
495 #endif
496 exit (-1);
497 }
498 EOF
499 $CC_FOR_BUILD -o $dummy $dummy.c &&
500 dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` &&
501 SYSTEM_NAME=`$dummy $dummyarg` &&
502 { echo "$SYSTEM_NAME"; exit; }
503 echo mips-mips-riscos${UNAME_RELEASE}
504 exit ;;
505 Motorola:PowerMAX_OS:*:*)
506 echo powerpc-motorola-powermax
507 exit ;;
508 Motorola:*:4.3:PL8-*)
509 echo powerpc-harris-powermax
510 exit ;;
511 Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
512 echo powerpc-harris-powermax
513 exit ;;
514 Night_Hawk:Power_UNIX:*:*)
515 echo powerpc-harris-powerunix
516 exit ;;
517 m88k:CX/UX:7*:*)
518 echo m88k-harris-cxux7
519 exit ;;
520 m88k:*:4*:R4*)
521 echo m88k-motorola-sysv4
522 exit ;;
523 m88k:*:3*:R3*)
524 echo m88k-motorola-sysv3
525 exit ;;
526 AViiON:dgux:*:*)
527 # DG/UX returns AViiON for all architectures
528 UNAME_PROCESSOR=`/usr/bin/uname -p`
529 if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
530 then
531 if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
532 [ ${TARGET_BINARY_INTERFACE}x = x ]
533 then
534 echo m88k-dg-dgux${UNAME_RELEASE}
535 else
536 echo m88k-dg-dguxbcs${UNAME_RELEASE}
537 fi
538 else
539 echo i586-dg-dgux${UNAME_RELEASE}
540 fi
541 exit ;;
542 M88*:DolphinOS:*:*) # DolphinOS (SVR3)
543 echo m88k-dolphin-sysv3
544 exit ;;
545 M88*:*:R3*:*)
546 # Delta 88k system running SVR3
547 echo m88k-motorola-sysv3
548 exit ;;
549 XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
550 echo m88k-tektronix-sysv3
551 exit ;;
552 Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
553 echo m68k-tektronix-bsd
554 exit ;;
555 *:IRIX*:*:*)
556 echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
557 exit ;;
558 ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
559 echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id
560 exit ;; # Note that: echo "'`uname -s`'" gives 'AIX '
561 i*86:AIX:*:*)
562 echo i386-ibm-aix
563 exit ;;
564 ia64:AIX:*:*)
565 if [ -x /usr/bin/oslevel ] ; then
566 IBM_REV=`/usr/bin/oslevel`
567 else
568 IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
569 fi
570 echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
571 exit ;;
572 *:AIX:2:3)
573 if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
574 eval $set_cc_for_build
575 sed 's/^ //' << EOF >$dummy.c
576 #include <sys/systemcfg.h>
577
578 main()
579 {
580 if (!__power_pc())
581 exit(1);
582 puts("powerpc-ibm-aix3.2.5");
583 exit(0);
584 }
585 EOF
586 if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy`
587 then
588 echo "$SYSTEM_NAME"
589 else
590 echo rs6000-ibm-aix3.2.5
591 fi
592 elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
593 echo rs6000-ibm-aix3.2.4
594 else
595 echo rs6000-ibm-aix3.2
596 fi
597 exit ;;
598 *:AIX:*:[4567])
599 IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
600 if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
601 IBM_ARCH=rs6000
602 else
603 IBM_ARCH=powerpc
604 fi
605 if [ -x /usr/bin/lslpp ] ; then
606 IBM_REV=`/usr/bin/lslpp -Lqc bos.rte.libc |
607 awk -F: '{ print $3 }' | sed s/[0-9]*$/0/`
608 else
609 IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
610 fi
611 echo ${IBM_ARCH}-ibm-aix${IBM_REV}
612 exit ;;
613 *:AIX:*:*)
614 echo rs6000-ibm-aix
615 exit ;;
616 ibmrt:4.4BSD:*|romp-ibm:BSD:*)
617 echo romp-ibm-bsd4.4
618 exit ;;
619 ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and
620 echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to
621 exit ;; # report: romp-ibm BSD 4.3
622 *:BOSX:*:*)
623 echo rs6000-bull-bosx
624 exit ;;
625 DPX/2?00:B.O.S.:*:*)
626 echo m68k-bull-sysv3
627 exit ;;
628 9000/[34]??:4.3bsd:1.*:*)
629 echo m68k-hp-bsd
630 exit ;;
631 hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
632 echo m68k-hp-bsd4.4
633 exit ;;
634 9000/[34678]??:HP-UX:*:*)
635 HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
636 case "${UNAME_MACHINE}" in
637 9000/31? ) HP_ARCH=m68000 ;;
638 9000/[34]?? ) HP_ARCH=m68k ;;
639 9000/[678][0-9][0-9])
640 if [ -x /usr/bin/getconf ]; then
641 sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
642 sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
643 case "${sc_cpu_version}" in
644 523) HP_ARCH=hppa1.0 ;; # CPU_PA_RISC1_0
645 528) HP_ARCH=hppa1.1 ;; # CPU_PA_RISC1_1
646 532) # CPU_PA_RISC2_0
647 case "${sc_kernel_bits}" in
648 32) HP_ARCH=hppa2.0n ;;
649 64) HP_ARCH=hppa2.0w ;;
650 '') HP_ARCH=hppa2.0 ;; # HP-UX 10.20
651 esac ;;
652 esac
653 fi
654 if [ "${HP_ARCH}" = "" ]; then
655 eval $set_cc_for_build
656 sed 's/^ //' << EOF >$dummy.c
657
658 #define _HPUX_SOURCE
659 #include <stdlib.h>
660 #include <unistd.h>
661
662 int main ()
663 {
664 #if defined(_SC_KERNEL_BITS)
665 long bits = sysconf(_SC_KERNEL_BITS);
666 #endif
667 long cpu = sysconf (_SC_CPU_VERSION);
668
669 switch (cpu)
670 {
671 case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
672 case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
673 case CPU_PA_RISC2_0:
674 #if defined(_SC_KERNEL_BITS)
675 switch (bits)
676 {
677 case 64: puts ("hppa2.0w"); break;
678 case 32: puts ("hppa2.0n"); break;
679 default: puts ("hppa2.0"); break;
680 } break;
681 #else /* !defined(_SC_KERNEL_BITS) */
682 puts ("hppa2.0"); break;
683 #endif
684 default: puts ("hppa1.0"); break;
685 }
686 exit (0);
687 }
688 EOF
689 (CCOPTS="" $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
690 test -z "$HP_ARCH" && HP_ARCH=hppa
691 fi ;;
692 esac
693 if [ ${HP_ARCH} = hppa2.0w ]
694 then
695 eval $set_cc_for_build
696
697 # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
698 # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler
699 # generating 64-bit code. GNU and HP use different nomenclature:
700 #
701 # $ CC_FOR_BUILD=cc ./config.guess
702 # => hppa2.0w-hp-hpux11.23
703 # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess
704 # => hppa64-hp-hpux11.23
705
706 if echo __LP64__ | (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) |
707 grep -q __LP64__
708 then
709 HP_ARCH=hppa2.0w
710 else
711 HP_ARCH=hppa64
712 fi
713 fi
714 echo ${HP_ARCH}-hp-hpux${HPUX_REV}
715 exit ;;
716 ia64:HP-UX:*:*)
717 HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
718 echo ia64-hp-hpux${HPUX_REV}
719 exit ;;
720 3050*:HI-UX:*:*)
721 eval $set_cc_for_build
722 sed 's/^ //' << EOF >$dummy.c
723 #include <unistd.h>
724 int
725 main ()
726 {
727 long cpu = sysconf (_SC_CPU_VERSION);
728 /* The order matters, because CPU_IS_HP_MC68K erroneously returns
729 true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct
730 results, however. */
731 if (CPU_IS_PA_RISC (cpu))
732 {
733 switch (cpu)
734 {
735 case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break;
736 case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break;
737 case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break;
738 default: puts ("hppa-hitachi-hiuxwe2"); break;
739 }
740 }
741 else if (CPU_IS_HP_MC68K (cpu))
742 puts ("m68k-hitachi-hiuxwe2");
743 else puts ("unknown-hitachi-hiuxwe2");
744 exit (0);
745 }
746 EOF
747 $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` &&
748 { echo "$SYSTEM_NAME"; exit; }
749 echo unknown-hitachi-hiuxwe2
750 exit ;;
751 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
752 echo hppa1.1-hp-bsd
753 exit ;;
754 9000/8??:4.3bsd:*:*)
755 echo hppa1.0-hp-bsd
756 exit ;;
757 *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
758 echo hppa1.0-hp-mpeix
759 exit ;;
760 hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
761 echo hppa1.1-hp-osf
762 exit ;;
763 hp8??:OSF1:*:*)
764 echo hppa1.0-hp-osf
765 exit ;;
766 i*86:OSF1:*:*)
767 if [ -x /usr/sbin/sysversion ] ; then
768 echo ${UNAME_MACHINE}-unknown-osf1mk
769 else
770 echo ${UNAME_MACHINE}-unknown-osf1
771 fi
772 exit ;;
773 parisc*:Lites*:*:*)
774 echo hppa1.1-hp-lites
775 exit ;;
776 C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
777 echo c1-convex-bsd
778 exit ;;
779 C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
780 if getsysinfo -f scalar_acc
781 then echo c32-convex-bsd
782 else echo c2-convex-bsd
783 fi
784 exit ;;
785 C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
786 echo c34-convex-bsd
787 exit ;;
788 C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
789 echo c38-convex-bsd
790 exit ;;
791 C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
792 echo c4-convex-bsd
793 exit ;;
794 CRAY*Y-MP:*:*:*)
795 echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
796 exit ;;
797 CRAY*[A-Z]90:*:*:*)
798 echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
799 | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
800 -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
801 -e 's/\.[^.]*$/.X/'
802 exit ;;
803 CRAY*TS:*:*:*)
804 echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
805 exit ;;
806 CRAY*T3E:*:*:*)
807 echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
808 exit ;;
809 CRAY*SV1:*:*:*)
810 echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
811 exit ;;
812 *:UNICOS/mp:*:*)
813 echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
814 exit ;;
815 F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
816 FUJITSU_PROC=`uname -m | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz`
817 FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'`
818 FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
819 echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
820 exit ;;
821 5000:UNIX_System_V:4.*:*)
822 FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'`
823 FUJITSU_REL=`echo ${UNAME_RELEASE} | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/ /_/'`
824 echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
825 exit ;;
826 i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
827 echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
828 exit ;;
829 sparc*:BSD/OS:*:*)
830 echo sparc-unknown-bsdi${UNAME_RELEASE}
831 exit ;;
832 *:BSD/OS:*:*)
833 echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
834 exit ;;
835 *:FreeBSD:*:*)
836 UNAME_PROCESSOR=`/usr/bin/uname -p`
837 case ${UNAME_PROCESSOR} in
838 amd64)
839 echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
840 *)
841 echo ${UNAME_PROCESSOR}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
842 esac
843 exit ;;
844 i*:CYGWIN*:*)
845 echo ${UNAME_MACHINE}-pc-cygwin
846 exit ;;
847 *:MINGW64*:*)
848 echo ${UNAME_MACHINE}-pc-mingw64
849 exit ;;
850 *:MINGW*:*)
851 echo ${UNAME_MACHINE}-pc-mingw32
852 exit ;;
853 *:MSYS*:*)
854 echo ${UNAME_MACHINE}-pc-msys
855 exit ;;
856 i*:windows32*:*)
857 # uname -m includes "-pc" on this system.
858 echo ${UNAME_MACHINE}-mingw32
859 exit ;;
860 i*:PW*:*)
861 echo ${UNAME_MACHINE}-pc-pw32
862 exit ;;
863 *:Interix*:*)
864 case ${UNAME_MACHINE} in
865 x86)
866 echo i586-pc-interix${UNAME_RELEASE}
867 exit ;;
868 authenticamd | genuineintel | EM64T)
869 echo x86_64-unknown-interix${UNAME_RELEASE}
870 exit ;;
871 IA64)
872 echo ia64-unknown-interix${UNAME_RELEASE}
873 exit ;;
874 esac ;;
875 [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
876 echo i${UNAME_MACHINE}-pc-mks
877 exit ;;
878 8664:Windows_NT:*)
879 echo x86_64-pc-mks
880 exit ;;
881 i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
882 # How do we know it's Interix rather than the generic POSIX subsystem?
883 # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
884 # UNAME_MACHINE based on the output of uname instead of i386?
885 echo i586-pc-interix
886 exit ;;
887 i*:UWIN*:*)
888 echo ${UNAME_MACHINE}-pc-uwin
889 exit ;;
890 amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
891 echo x86_64-unknown-cygwin
892 exit ;;
893 p*:CYGWIN*:*)
894 echo powerpcle-unknown-cygwin
895 exit ;;
896 prep*:SunOS:5.*:*)
897 echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
898 exit ;;
899 *:GNU:*:*)
900 # the GNU system
901 echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-${LIBC}`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
902 exit ;;
903 *:GNU/*:*:*)
904 # other systems with GNU libc and userland
905 echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr "[:upper:]" "[:lower:]"``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-${LIBC}
906 exit ;;
907 i*86:Minix:*:*)
908 echo ${UNAME_MACHINE}-pc-minix
909 exit ;;
910 aarch64:Linux:*:*)
911 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
912 exit ;;
913 aarch64_be:Linux:*:*)
914 UNAME_MACHINE=aarch64_be
915 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
916 exit ;;
917 alpha:Linux:*:*)
918 case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
919 EV5) UNAME_MACHINE=alphaev5 ;;
920 EV56) UNAME_MACHINE=alphaev56 ;;
921 PCA56) UNAME_MACHINE=alphapca56 ;;
922 PCA57) UNAME_MACHINE=alphapca56 ;;
923 EV6) UNAME_MACHINE=alphaev6 ;;
924 EV67) UNAME_MACHINE=alphaev67 ;;
925 EV68*) UNAME_MACHINE=alphaev68 ;;
926 esac
927 objdump --private-headers /bin/sh | grep -q ld.so.1
928 if test "$?" = 0 ; then LIBC=gnulibc1 ; fi
929 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
930 exit ;;
931 arc:Linux:*:* | arceb:Linux:*:*)
932 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
933 exit ;;
934 arm*:Linux:*:*)
935 eval $set_cc_for_build
936 if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
937 | grep -q __ARM_EABI__
938 then
939 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
940 else
941 if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \
942 | grep -q __ARM_PCS_VFP
943 then
944 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabi
945 else
946 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabihf
947 fi
948 fi
949 exit ;;
950 avr32*:Linux:*:*)
951 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
952 exit ;;
953 cris:Linux:*:*)
954 echo ${UNAME_MACHINE}-axis-linux-${LIBC}
955 exit ;;
956 crisv32:Linux:*:*)
957 echo ${UNAME_MACHINE}-axis-linux-${LIBC}
958 exit ;;
959 e2k:Linux:*:*)
960 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
961 exit ;;
962 frv:Linux:*:*)
963 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
964 exit ;;
965 hexagon:Linux:*:*)
966 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
967 exit ;;
968 i*86:Linux:*:*)
969 echo ${UNAME_MACHINE}-pc-linux-${LIBC}
970 exit ;;
971 ia64:Linux:*:*)
972 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
973 exit ;;
974 k1om:Linux:*:*)
975 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
976 exit ;;
977 m32r*:Linux:*:*)
978 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
979 exit ;;
980 m68*:Linux:*:*)
981 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
982 exit ;;
983 mips:Linux:*:* | mips64:Linux:*:*)
984 eval $set_cc_for_build
985 sed 's/^ //' << EOF >$dummy.c
986 #undef CPU
987 #undef ${UNAME_MACHINE}
988 #undef ${UNAME_MACHINE}el
989 #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
990 CPU=${UNAME_MACHINE}el
991 #else
992 #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
993 CPU=${UNAME_MACHINE}
994 #else
995 CPU=
996 #endif
997 #endif
998 EOF
999 eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'`
1000 test x"${CPU}" != x && { echo "${CPU}-unknown-linux-${LIBC}"; exit; }
1001 ;;
1002 mips64el:Linux:*:*)
1003 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
1004 exit ;;
1005 openrisc*:Linux:*:*)
1006 echo or1k-unknown-linux-${LIBC}
1007 exit ;;
1008 or32:Linux:*:* | or1k*:Linux:*:*)
1009 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
1010 exit ;;
1011 padre:Linux:*:*)
1012 echo sparc-unknown-linux-${LIBC}
1013 exit ;;
1014 parisc64:Linux:*:* | hppa64:Linux:*:*)
1015 echo hppa64-unknown-linux-${LIBC}
1016 exit ;;
1017 parisc:Linux:*:* | hppa:Linux:*:*)
1018 # Look for CPU level
1019 case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
1020 PA7*) echo hppa1.1-unknown-linux-${LIBC} ;;
1021 PA8*) echo hppa2.0-unknown-linux-${LIBC} ;;
1022 *) echo hppa-unknown-linux-${LIBC} ;;
1023 esac
1024 exit ;;
1025 ppc64:Linux:*:*)
1026 echo powerpc64-unknown-linux-${LIBC}
1027 exit ;;
1028 ppc:Linux:*:*)
1029 echo powerpc-unknown-linux-${LIBC}
1030 exit ;;
1031 ppc64le:Linux:*:*)
1032 echo powerpc64le-unknown-linux-${LIBC}
1033 exit ;;
1034 ppcle:Linux:*:*)
1035 echo powerpcle-unknown-linux-${LIBC}
1036 exit ;;
1037 riscv32:Linux:*:* | riscv64:Linux:*:*)
1038 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
1039 exit ;;
1040 s390:Linux:*:* | s390x:Linux:*:*)
1041 echo ${UNAME_MACHINE}-ibm-linux-${LIBC}
1042 exit ;;
1043 sh64*:Linux:*:*)
1044 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
1045 exit ;;
1046 sh*:Linux:*:*)
1047 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
1048 exit ;;
1049 sparc:Linux:*:* | sparc64:Linux:*:*)
1050 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
1051 exit ;;
1052 tile*:Linux:*:*)
1053 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
1054 exit ;;
1055 vax:Linux:*:*)
1056 echo ${UNAME_MACHINE}-dec-linux-${LIBC}
1057 exit ;;
1058 x86_64:Linux:*:*)
1059 echo ${UNAME_MACHINE}-pc-linux-${LIBC}
1060 exit ;;
1061 xtensa*:Linux:*:*)
1062 echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
1063 exit ;;
1064 i*86:DYNIX/ptx:4*:*)
1065 # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
1066 # earlier versions are messed up and put the nodename in both
1067 # sysname and nodename.
1068 echo i386-sequent-sysv4
1069 exit ;;
1070 i*86:UNIX_SV:4.2MP:2.*)
1071 # Unixware is an offshoot of SVR4, but it has its own version
1072 # number series starting with 2...
1073 # I am not positive that other SVR4 systems won't match this,
1074 # I just have to hope. -- rms.
1075 # Use sysv4.2uw... so that sysv4* matches it.
1076 echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
1077 exit ;;
1078 i*86:OS/2:*:*)
1079 # If we were able to find `uname', then EMX Unix compatibility
1080 # is probably installed.
1081 echo ${UNAME_MACHINE}-pc-os2-emx
1082 exit ;;
1083 i*86:XTS-300:*:STOP)
1084 echo ${UNAME_MACHINE}-unknown-stop
1085 exit ;;
1086 i*86:atheos:*:*)
1087 echo ${UNAME_MACHINE}-unknown-atheos
1088 exit ;;
1089 i*86:syllable:*:*)
1090 echo ${UNAME_MACHINE}-pc-syllable
1091 exit ;;
1092 i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*)
1093 echo i386-unknown-lynxos${UNAME_RELEASE}
1094 exit ;;
1095 i*86:*DOS:*:*)
1096 echo ${UNAME_MACHINE}-pc-msdosdjgpp
1097 exit ;;
1098 i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
1099 UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
1100 if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
1101 echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
1102 else
1103 echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
1104 fi
1105 exit ;;
1106 i*86:*:5:[678]*)
1107 # UnixWare 7.x, OpenUNIX and OpenServer 6.
1108 case `/bin/uname -X | grep "^Machine"` in
1109 *486*) UNAME_MACHINE=i486 ;;
1110 *Pentium) UNAME_MACHINE=i586 ;;
1111 *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
1112 esac
1113 echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
1114 exit ;;
1115 i*86:*:3.2:*)
1116 if test -f /usr/options/cb.name; then
1117 UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
1118 echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
1119 elif /bin/uname -X 2>/dev/null >/dev/null ; then
1120 UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
1121 (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
1122 (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \
1123 && UNAME_MACHINE=i586
1124 (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \
1125 && UNAME_MACHINE=i686
1126 (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
1127 && UNAME_MACHINE=i686
1128 echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
1129 else
1130 echo ${UNAME_MACHINE}-pc-sysv32
1131 fi
1132 exit ;;
1133 pc:*:*:*)
1134 # Left here for compatibility:
1135 # uname -m prints for DJGPP always 'pc', but it prints nothing about
1136 # the processor, so we play safe by assuming i586.
1137 # Note: whatever this is, it MUST be the same as what config.sub
1138 # prints for the "djgpp" host, or else GDB configure will decide that
1139 # this is a cross-build.
1140 echo i586-pc-msdosdjgpp
1141 exit ;;
1142 Intel:Mach:3*:*)
1143 echo i386-pc-mach3
1144 exit ;;
1145 paragon:*:*:*)
1146 echo i860-intel-osf1
1147 exit ;;
1148 i860:*:4.*:*) # i860-SVR4
1149 if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
1150 echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
1151 else # Add other i860-SVR4 vendors below as they are discovered.
1152 echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4
1153 fi
1154 exit ;;
1155 mini*:CTIX:SYS*5:*)
1156 # "miniframe"
1157 echo m68010-convergent-sysv
1158 exit ;;
1159 mc68k:UNIX:SYSTEM5:3.51m)
1160 echo m68k-convergent-sysv
1161 exit ;;
1162 M680?0:D-NIX:5.3:*)
1163 echo m68k-diab-dnix
1164 exit ;;
1165 M68*:*:R3V[5678]*:*)
1166 test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;;
1167 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)
1168 OS_REL=''
1169 test -r /etc/.relid \
1170 && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
1171 /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
1172 && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
1173 /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
1174 && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
1175 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
1176 /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
1177 && { echo i486-ncr-sysv4; exit; } ;;
1178 NCR*:*:4.2:* | MPRAS*:*:4.2:*)
1179 OS_REL='.3'
1180 test -r /etc/.relid \
1181 && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
1182 /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
1183 && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
1184 /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
1185 && { echo i586-ncr-sysv4.3${OS_REL}; exit; }
1186 /bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \
1187 && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
1188 m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
1189 echo m68k-unknown-lynxos${UNAME_RELEASE}
1190 exit ;;
1191 mc68030:UNIX_System_V:4.*:*)
1192 echo m68k-atari-sysv4
1193 exit ;;
1194 TSUNAMI:LynxOS:2.*:*)
1195 echo sparc-unknown-lynxos${UNAME_RELEASE}
1196 exit ;;
1197 rs6000:LynxOS:2.*:*)
1198 echo rs6000-unknown-lynxos${UNAME_RELEASE}
1199 exit ;;
1200 PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*)
1201 echo powerpc-unknown-lynxos${UNAME_RELEASE}
1202 exit ;;
1203 SM[BE]S:UNIX_SV:*:*)
1204 echo mips-dde-sysv${UNAME_RELEASE}
1205 exit ;;
1206 RM*:ReliantUNIX-*:*:*)
1207 echo mips-sni-sysv4
1208 exit ;;
1209 RM*:SINIX-*:*:*)
1210 echo mips-sni-sysv4
1211 exit ;;
1212 *:SINIX-*:*:*)
1213 if uname -p 2>/dev/null >/dev/null ; then
1214 UNAME_MACHINE=`(uname -p) 2>/dev/null`
1215 echo ${UNAME_MACHINE}-sni-sysv4
1216 else
1217 echo ns32k-sni-sysv
1218 fi
1219 exit ;;
1220 PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
1221 # says <Richard.M.Bartel@ccMail.Census.GOV>
1222 echo i586-unisys-sysv4
1223 exit ;;
1224 *:UNIX_System_V:4*:FTX*)
1225 # From Gerald Hewes <hewes@openmarket.com>.
1226 # How about differentiating between stratus architectures? -djm
1227 echo hppa1.1-stratus-sysv4
1228 exit ;;
1229 *:*:*:FTX*)
1230 # From seanf@swdc.stratus.com.
1231 echo i860-stratus-sysv4
1232 exit ;;
1233 i*86:VOS:*:*)
1234 # From Paul.Green@stratus.com.
1235 echo ${UNAME_MACHINE}-stratus-vos
1236 exit ;;
1237 *:VOS:*:*)
1238 # From Paul.Green@stratus.com.
1239 echo hppa1.1-stratus-vos
1240 exit ;;
1241 mc68*:A/UX:*:*)
1242 echo m68k-apple-aux${UNAME_RELEASE}
1243 exit ;;
1244 news*:NEWS-OS:6*:*)
1245 echo mips-sony-newsos6
1246 exit ;;
1247 R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
1248 if [ -d /usr/nec ]; then
1249 echo mips-nec-sysv${UNAME_RELEASE}
1250 else
1251 echo mips-unknown-sysv${UNAME_RELEASE}
1252 fi
1253 exit ;;
1254 BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only.
1255 echo powerpc-be-beos
1256 exit ;;
1257 BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only.
1258 echo powerpc-apple-beos
1259 exit ;;
1260 BePC:BeOS:*:*) # BeOS running on Intel PC compatible.
1261 echo i586-pc-beos
1262 exit ;;
1263 BePC:Haiku:*:*) # Haiku running on Intel PC compatible.
1264 echo i586-pc-haiku
1265 exit ;;
1266 x86_64:Haiku:*:*)
1267 echo x86_64-unknown-haiku
1268 exit ;;
1269 SX-4:SUPER-UX:*:*)
1270 echo sx4-nec-superux${UNAME_RELEASE}
1271 exit ;;
1272 SX-5:SUPER-UX:*:*)
1273 echo sx5-nec-superux${UNAME_RELEASE}
1274 exit ;;
1275 SX-6:SUPER-UX:*:*)
1276 echo sx6-nec-superux${UNAME_RELEASE}
1277 exit ;;
1278 SX-7:SUPER-UX:*:*)
1279 echo sx7-nec-superux${UNAME_RELEASE}
1280 exit ;;
1281 SX-8:SUPER-UX:*:*)
1282 echo sx8-nec-superux${UNAME_RELEASE}
1283 exit ;;
1284 SX-8R:SUPER-UX:*:*)
1285 echo sx8r-nec-superux${UNAME_RELEASE}
1286 exit ;;
1287 SX-ACE:SUPER-UX:*:*)
1288 echo sxace-nec-superux${UNAME_RELEASE}
1289 exit ;;
1290 Power*:Rhapsody:*:*)
1291 echo powerpc-apple-rhapsody${UNAME_RELEASE}
1292 exit ;;
1293 *:Rhapsody:*:*)
1294 echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
1295 exit ;;
1296 *:Darwin:*:*)
1297 UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
1298 eval $set_cc_for_build
1299 if test "$UNAME_PROCESSOR" = unknown ; then
1300 UNAME_PROCESSOR=powerpc
1301 fi
1302 if test `echo "$UNAME_RELEASE" | sed -e 's/\..*//'` -le 10 ; then
1303 if [ "$CC_FOR_BUILD" != no_compiler_found ]; then
1304 if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
1305 (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
1306 grep IS_64BIT_ARCH >/dev/null
1307 then
1308 case $UNAME_PROCESSOR in
1309 i386) UNAME_PROCESSOR=x86_64 ;;
1310 powerpc) UNAME_PROCESSOR=powerpc64 ;;
1311 esac
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 *:NonStop-UX:*:*)
1346 echo mips-compaq-nonstopux
1347 exit ;;
1348 BS2000:POSIX*:*:*)
1349 echo bs2000-siemens-sysv
1350 exit ;;
1351 DS/*:UNIX_System_V:*:*)
1352 echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
1353 exit ;;
1354 *:Plan9:*:*)
1355 # "uname -m" is not consistent, so use $cputype instead. 386
1356 # is converted to i386 for consistency with other x86
1357 # operating systems.
1358 if test "$cputype" = 386; then
1359 UNAME_MACHINE=i386
1360 else
1361 UNAME_MACHINE="$cputype"
1362 fi
1363 echo ${UNAME_MACHINE}-unknown-plan9
1364 exit ;;
1365 *:TOPS-10:*:*)
1366 echo pdp10-unknown-tops10
1367 exit ;;
1368 *:TENEX:*:*)
1369 echo pdp10-unknown-tenex
1370 exit ;;
1371 KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
1372 echo pdp10-dec-tops20
1373 exit ;;
1374 XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
1375 echo pdp10-xkl-tops20
1376 exit ;;
1377 *:TOPS-20:*:*)
1378 echo pdp10-unknown-tops20
1379 exit ;;
1380 *:ITS:*:*)
1381 echo pdp10-unknown-its
1382 exit ;;
1383 SEI:*:*:SEIUX)
1384 echo mips-sei-seiux${UNAME_RELEASE}
1385 exit ;;
1386 *:DragonFly:*:*)
1387 echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
1388 exit ;;
1389 *:*VMS:*:*)
1390 UNAME_MACHINE=`(uname -p) 2>/dev/null`
1391 case "${UNAME_MACHINE}" in
1392 A*) echo alpha-dec-vms ; exit ;;
1393 I*) echo ia64-dec-vms ; exit ;;
1394 V*) echo vax-dec-vms ; exit ;;
1395 esac ;;
1396 *:XENIX:*:SysV)
1397 echo i386-pc-xenix
1398 exit ;;
1399 i*86:skyos:*:*)
1400 echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE} | sed -e 's/ .*$//'`
1401 exit ;;
1402 i*86:rdos:*:*)
1403 echo ${UNAME_MACHINE}-pc-rdos
1404 exit ;;
1405 i*86:AROS:*:*)
1406 echo ${UNAME_MACHINE}-pc-aros
1407 exit ;;
1408 x86_64:VMkernel:*:*)
1409 echo ${UNAME_MACHINE}-unknown-esx
1410 exit ;;
1411 amd64:Isilon\ OneFS:*:*)
1412 echo x86_64-unknown-onefs
1413 exit ;;
1414 esac
1415
1416 cat >&2 <<EOF
1417 $0: unable to guess system type
1418
1419 This script (version $timestamp), has failed to recognize the
1420 operating system you are using. If your script is old, overwrite
1421 config.guess and config.sub with the latest versions from:
1422
1423 http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess
1424 and
1425 http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub
1426
1427 If $0 has already been updated, send the following data and any
1428 information you think might be pertinent to config-patches@gnu.org to
1429 provide the necessary information to handle your system.
1430
1431 config.guess timestamp = $timestamp
1432
1433 uname -m = `(uname -m) 2>/dev/null || echo unknown`
1434 uname -r = `(uname -r) 2>/dev/null || echo unknown`
1435 uname -s = `(uname -s) 2>/dev/null || echo unknown`
1436 uname -v = `(uname -v) 2>/dev/null || echo unknown`
1437
1438 /usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null`
1439 /bin/uname -X = `(/bin/uname -X) 2>/dev/null`
1440
1441 hostinfo = `(hostinfo) 2>/dev/null`
1442 /bin/universe = `(/bin/universe) 2>/dev/null`
1443 /usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null`
1444 /bin/arch = `(/bin/arch) 2>/dev/null`
1445 /usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null`
1446 /usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
1447
1448 UNAME_MACHINE = ${UNAME_MACHINE}
1449 UNAME_RELEASE = ${UNAME_RELEASE}
1450 UNAME_SYSTEM = ${UNAME_SYSTEM}
1451 UNAME_VERSION = ${UNAME_VERSION}
1452 EOF
1453
1454 exit 1
1455
1456 # Local variables:
1457 # eval: (add-hook 'write-file-hooks 'time-stamp)
1458 # time-stamp-start: "timestamp='"
1459 # time-stamp-format: "%:y-%02m-%02d"
1460 # time-stamp-end: "'"
1461 # 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-2016 Free Software Foundation, Inc.
3
4 timestamp='2016-11-04'
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 <http://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 # http://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 Operation modes:
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-2016 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 -windowsnt*)
232 os=`echo $os | sed -e 's/windowsnt/winnt/'`
233 ;;
234 -psos*)
235 os=-psos
236 ;;
237 -mint | -mint[0-9]*)
238 basic_machine=m68k-atari
239 os=-mint
240 ;;
241 esac
242
243 # Decode aliases for certain CPU-COMPANY combinations.
244 case $basic_machine in
245 # Recognize the basic CPU types without company name.
246 # Some are omitted here because they have special meanings below.
247 1750a | 580 \
248 | a29k \
249 | aarch64 | aarch64_be \
250 | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
251 | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
252 | am33_2.0 \
253 | arc | arceb \
254 | arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \
255 | avr | avr32 \
256 | ba \
257 | be32 | be64 \
258 | bfin \
259 | c4x | c8051 | clipper \
260 | d10v | d30v | dlx | dsp16xx \
261 | e2k | epiphany \
262 | fido | fr30 | frv | ft32 \
263 | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
264 | hexagon \
265 | i370 | i860 | i960 | ia64 \
266 | ip2k | iq2000 \
267 | k1om \
268 | le32 | le64 \
269 | lm32 \
270 | m32c | m32r | m32rle | m68000 | m68k | m88k \
271 | maxq | mb | microblaze | microblazeel | mcore | mep | metag \
272 | mips | mipsbe | mipseb | mipsel | mipsle \
273 | mips16 \
274 | mips64 | mips64el \
275 | mips64octeon | mips64octeonel \
276 | mips64orion | mips64orionel \
277 | mips64r5900 | mips64r5900el \
278 | mips64vr | mips64vrel \
279 | mips64vr4100 | mips64vr4100el \
280 | mips64vr4300 | mips64vr4300el \
281 | mips64vr5000 | mips64vr5000el \
282 | mips64vr5900 | mips64vr5900el \
283 | mipsisa32 | mipsisa32el \
284 | mipsisa32r2 | mipsisa32r2el \
285 | mipsisa32r6 | mipsisa32r6el \
286 | mipsisa64 | mipsisa64el \
287 | mipsisa64r2 | mipsisa64r2el \
288 | mipsisa64r6 | mipsisa64r6el \
289 | mipsisa64sb1 | mipsisa64sb1el \
290 | mipsisa64sr71k | mipsisa64sr71kel \
291 | mipsr5900 | mipsr5900el \
292 | mipstx39 | mipstx39el \
293 | mn10200 | mn10300 \
294 | moxie \
295 | mt \
296 | msp430 \
297 | nds32 | nds32le | nds32be \
298 | nios | nios2 | nios2eb | nios2el \
299 | ns16k | ns32k \
300 | open8 | or1k | or1knd | or32 \
301 | pdp10 | pdp11 | pj | pjl \
302 | powerpc | powerpc64 | powerpc64le | powerpcle \
303 | pru \
304 | pyramid \
305 | riscv32 | riscv64 \
306 | rl78 | rx \
307 | score \
308 | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[234]eb | sheb | shbe | shle | sh[1234]le | sh3ele \
309 | sh64 | sh64le \
310 | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \
311 | sparcv8 | sparcv9 | sparcv9b | sparcv9v \
312 | spu \
313 | tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \
314 | ubicom32 \
315 | v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \
316 | visium \
317 | we32k \
318 | x86 | xc16x | xstormy16 | xtensa \
319 | z8k | z80)
320 basic_machine=$basic_machine-unknown
321 ;;
322 c54x)
323 basic_machine=tic54x-unknown
324 ;;
325 c55x)
326 basic_machine=tic55x-unknown
327 ;;
328 c6x)
329 basic_machine=tic6x-unknown
330 ;;
331 leon|leon[3-9])
332 basic_machine=sparc-$basic_machine
333 ;;
334 m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | nvptx | picochip)
335 basic_machine=$basic_machine-unknown
336 os=-none
337 ;;
338 m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
339 ;;
340 ms1)
341 basic_machine=mt-unknown
342 ;;
343
344 strongarm | thumb | xscale)
345 basic_machine=arm-unknown
346 ;;
347 xgate)
348 basic_machine=$basic_machine-unknown
349 os=-none
350 ;;
351 xscaleeb)
352 basic_machine=armeb-unknown
353 ;;
354
355 xscaleel)
356 basic_machine=armel-unknown
357 ;;
358
359 # We use `pc' rather than `unknown'
360 # because (1) that's what they normally are, and
361 # (2) the word "unknown" tends to confuse beginning users.
362 i*86 | x86_64)
363 basic_machine=$basic_machine-pc
364 ;;
365 # Object if more than one company name word.
366 *-*-*)
367 echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
368 exit 1
369 ;;
370 # Recognize the basic CPU types with company name.
371 580-* \
372 | a29k-* \
373 | aarch64-* | aarch64_be-* \
374 | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
375 | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
376 | alphapca5[67]-* | alpha64pca5[67]-* | arc-* | arceb-* \
377 | arm-* | armbe-* | armle-* | armeb-* | armv*-* \
378 | avr-* | avr32-* \
379 | ba-* \
380 | be32-* | be64-* \
381 | bfin-* | bs2000-* \
382 | c[123]* | c30-* | [cjt]90-* | c4x-* \
383 | c8051-* | clipper-* | craynv-* | cydra-* \
384 | d10v-* | d30v-* | dlx-* \
385 | e2k-* | elxsi-* \
386 | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \
387 | h8300-* | h8500-* \
388 | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
389 | hexagon-* \
390 | i*86-* | i860-* | i960-* | ia64-* \
391 | ip2k-* | iq2000-* \
392 | k1om-* \
393 | le32-* | le64-* \
394 | lm32-* \
395 | m32c-* | m32r-* | m32rle-* \
396 | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
397 | m88110-* | m88k-* | maxq-* | mcore-* | metag-* \
398 | microblaze-* | microblazeel-* \
399 | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
400 | mips16-* \
401 | mips64-* | mips64el-* \
402 | mips64octeon-* | mips64octeonel-* \
403 | mips64orion-* | mips64orionel-* \
404 | mips64r5900-* | mips64r5900el-* \
405 | mips64vr-* | mips64vrel-* \
406 | mips64vr4100-* | mips64vr4100el-* \
407 | mips64vr4300-* | mips64vr4300el-* \
408 | mips64vr5000-* | mips64vr5000el-* \
409 | mips64vr5900-* | mips64vr5900el-* \
410 | mipsisa32-* | mipsisa32el-* \
411 | mipsisa32r2-* | mipsisa32r2el-* \
412 | mipsisa32r6-* | mipsisa32r6el-* \
413 | mipsisa64-* | mipsisa64el-* \
414 | mipsisa64r2-* | mipsisa64r2el-* \
415 | mipsisa64r6-* | mipsisa64r6el-* \
416 | mipsisa64sb1-* | mipsisa64sb1el-* \
417 | mipsisa64sr71k-* | mipsisa64sr71kel-* \
418 | mipsr5900-* | mipsr5900el-* \
419 | mipstx39-* | mipstx39el-* \
420 | mmix-* \
421 | mt-* \
422 | msp430-* \
423 | nds32-* | nds32le-* | nds32be-* \
424 | nios-* | nios2-* | nios2eb-* | nios2el-* \
425 | none-* | np1-* | ns16k-* | ns32k-* \
426 | open8-* \
427 | or1k*-* \
428 | orion-* \
429 | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
430 | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \
431 | pru-* \
432 | pyramid-* \
433 | riscv32-* | riscv64-* \
434 | rl78-* | romp-* | rs6000-* | rx-* \
435 | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \
436 | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
437 | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \
438 | sparclite-* \
439 | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx*-* \
440 | tahoe-* \
441 | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
442 | tile*-* \
443 | tron-* \
444 | ubicom32-* \
445 | v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \
446 | vax-* \
447 | visium-* \
448 | we32k-* \
449 | x86-* | x86_64-* | xc16x-* | xps100-* \
450 | xstormy16-* | xtensa*-* \
451 | ymp-* \
452 | z8k-* | z80-*)
453 ;;
454 # Recognize the basic CPU types without company name, with glob match.
455 xtensa*)
456 basic_machine=$basic_machine-unknown
457 ;;
458 # Recognize the various machine names and aliases which stand
459 # for a CPU type and a company and sometimes even an OS.
460 386bsd)
461 basic_machine=i386-unknown
462 os=-bsd
463 ;;
464 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
465 basic_machine=m68000-att
466 ;;
467 3b*)
468 basic_machine=we32k-att
469 ;;
470 a29khif)
471 basic_machine=a29k-amd
472 os=-udi
473 ;;
474 abacus)
475 basic_machine=abacus-unknown
476 ;;
477 adobe68k)
478 basic_machine=m68010-adobe
479 os=-scout
480 ;;
481 alliant | fx80)
482 basic_machine=fx80-alliant
483 ;;
484 altos | altos3068)
485 basic_machine=m68k-altos
486 ;;
487 am29k)
488 basic_machine=a29k-none
489 os=-bsd
490 ;;
491 amd64)
492 basic_machine=x86_64-pc
493 ;;
494 amd64-*)
495 basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'`
496 ;;
497 amdahl)
498 basic_machine=580-amdahl
499 os=-sysv
500 ;;
501 amiga | amiga-*)
502 basic_machine=m68k-unknown
503 ;;
504 amigaos | amigados)
505 basic_machine=m68k-unknown
506 os=-amigaos
507 ;;
508 amigaunix | amix)
509 basic_machine=m68k-unknown
510 os=-sysv4
511 ;;
512 apollo68)
513 basic_machine=m68k-apollo
514 os=-sysv
515 ;;
516 apollo68bsd)
517 basic_machine=m68k-apollo
518 os=-bsd
519 ;;
520 aros)
521 basic_machine=i386-pc
522 os=-aros
523 ;;
524 asmjs)
525 basic_machine=asmjs-unknown
526 ;;
527 aux)
528 basic_machine=m68k-apple
529 os=-aux
530 ;;
531 balance)
532 basic_machine=ns32k-sequent
533 os=-dynix
534 ;;
535 blackfin)
536 basic_machine=bfin-unknown
537 os=-linux
538 ;;
539 blackfin-*)
540 basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'`
541 os=-linux
542 ;;
543 bluegene*)
544 basic_machine=powerpc-ibm
545 os=-cnk
546 ;;
547 c54x-*)
548 basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'`
549 ;;
550 c55x-*)
551 basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'`
552 ;;
553 c6x-*)
554 basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'`
555 ;;
556 c90)
557 basic_machine=c90-cray
558 os=-unicos
559 ;;
560 cegcc)
561 basic_machine=arm-unknown
562 os=-cegcc
563 ;;
564 convex-c1)
565 basic_machine=c1-convex
566 os=-bsd
567 ;;
568 convex-c2)
569 basic_machine=c2-convex
570 os=-bsd
571 ;;
572 convex-c32)
573 basic_machine=c32-convex
574 os=-bsd
575 ;;
576 convex-c34)
577 basic_machine=c34-convex
578 os=-bsd
579 ;;
580 convex-c38)
581 basic_machine=c38-convex
582 os=-bsd
583 ;;
584 cray | j90)
585 basic_machine=j90-cray
586 os=-unicos
587 ;;
588 craynv)
589 basic_machine=craynv-cray
590 os=-unicosmp
591 ;;
592 cr16 | cr16-*)
593 basic_machine=cr16-unknown
594 os=-elf
595 ;;
596 crds | unos)
597 basic_machine=m68k-crds
598 ;;
599 crisv32 | crisv32-* | etraxfs*)
600 basic_machine=crisv32-axis
601 ;;
602 cris | cris-* | etrax*)
603 basic_machine=cris-axis
604 ;;
605 crx)
606 basic_machine=crx-unknown
607 os=-elf
608 ;;
609 da30 | da30-*)
610 basic_machine=m68k-da30
611 ;;
612 decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
613 basic_machine=mips-dec
614 ;;
615 decsystem10* | dec10*)
616 basic_machine=pdp10-dec
617 os=-tops10
618 ;;
619 decsystem20* | dec20*)
620 basic_machine=pdp10-dec
621 os=-tops20
622 ;;
623 delta | 3300 | motorola-3300 | motorola-delta \
624 | 3300-motorola | delta-motorola)
625 basic_machine=m68k-motorola
626 ;;
627 delta88)
628 basic_machine=m88k-motorola
629 os=-sysv3
630 ;;
631 dicos)
632 basic_machine=i686-pc
633 os=-dicos
634 ;;
635 djgpp)
636 basic_machine=i586-pc
637 os=-msdosdjgpp
638 ;;
639 dpx20 | dpx20-*)
640 basic_machine=rs6000-bull
641 os=-bosx
642 ;;
643 dpx2* | dpx2*-bull)
644 basic_machine=m68k-bull
645 os=-sysv3
646 ;;
647 e500v[12])
648 basic_machine=powerpc-unknown
649 os=$os"spe"
650 ;;
651 e500v[12]-*)
652 basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
653 os=$os"spe"
654 ;;
655 ebmon29k)
656 basic_machine=a29k-amd
657 os=-ebmon
658 ;;
659 elxsi)
660 basic_machine=elxsi-elxsi
661 os=-bsd
662 ;;
663 encore | umax | mmax)
664 basic_machine=ns32k-encore
665 ;;
666 es1800 | OSE68k | ose68k | ose | OSE)
667 basic_machine=m68k-ericsson
668 os=-ose
669 ;;
670 fx2800)
671 basic_machine=i860-alliant
672 ;;
673 genix)
674 basic_machine=ns32k-ns
675 ;;
676 gmicro)
677 basic_machine=tron-gmicro
678 os=-sysv
679 ;;
680 go32)
681 basic_machine=i386-pc
682 os=-go32
683 ;;
684 h3050r* | hiux*)
685 basic_machine=hppa1.1-hitachi
686 os=-hiuxwe2
687 ;;
688 h8300hms)
689 basic_machine=h8300-hitachi
690 os=-hms
691 ;;
692 h8300xray)
693 basic_machine=h8300-hitachi
694 os=-xray
695 ;;
696 h8500hms)
697 basic_machine=h8500-hitachi
698 os=-hms
699 ;;
700 harris)
701 basic_machine=m88k-harris
702 os=-sysv3
703 ;;
704 hp300-*)
705 basic_machine=m68k-hp
706 ;;
707 hp300bsd)
708 basic_machine=m68k-hp
709 os=-bsd
710 ;;
711 hp300hpux)
712 basic_machine=m68k-hp
713 os=-hpux
714 ;;
715 hp3k9[0-9][0-9] | hp9[0-9][0-9])
716 basic_machine=hppa1.0-hp
717 ;;
718 hp9k2[0-9][0-9] | hp9k31[0-9])
719 basic_machine=m68000-hp
720 ;;
721 hp9k3[2-9][0-9])
722 basic_machine=m68k-hp
723 ;;
724 hp9k6[0-9][0-9] | hp6[0-9][0-9])
725 basic_machine=hppa1.0-hp
726 ;;
727 hp9k7[0-79][0-9] | hp7[0-79][0-9])
728 basic_machine=hppa1.1-hp
729 ;;
730 hp9k78[0-9] | hp78[0-9])
731 # FIXME: really hppa2.0-hp
732 basic_machine=hppa1.1-hp
733 ;;
734 hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893)
735 # FIXME: really hppa2.0-hp
736 basic_machine=hppa1.1-hp
737 ;;
738 hp9k8[0-9][13679] | hp8[0-9][13679])
739 basic_machine=hppa1.1-hp
740 ;;
741 hp9k8[0-9][0-9] | hp8[0-9][0-9])
742 basic_machine=hppa1.0-hp
743 ;;
744 hppa-next)
745 os=-nextstep3
746 ;;
747 hppaosf)
748 basic_machine=hppa1.1-hp
749 os=-osf
750 ;;
751 hppro)
752 basic_machine=hppa1.1-hp
753 os=-proelf
754 ;;
755 i370-ibm* | ibm*)
756 basic_machine=i370-ibm
757 ;;
758 i*86v32)
759 basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
760 os=-sysv32
761 ;;
762 i*86v4*)
763 basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
764 os=-sysv4
765 ;;
766 i*86v)
767 basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
768 os=-sysv
769 ;;
770 i*86sol2)
771 basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
772 os=-solaris2
773 ;;
774 i386mach)
775 basic_machine=i386-mach
776 os=-mach
777 ;;
778 i386-vsta | vsta)
779 basic_machine=i386-unknown
780 os=-vsta
781 ;;
782 iris | iris4d)
783 basic_machine=mips-sgi
784 case $os in
785 -irix*)
786 ;;
787 *)
788 os=-irix4
789 ;;
790 esac
791 ;;
792 isi68 | isi)
793 basic_machine=m68k-isi
794 os=-sysv
795 ;;
796 leon-*|leon[3-9]-*)
797 basic_machine=sparc-`echo $basic_machine | sed 's/-.*//'`
798 ;;
799 m68knommu)
800 basic_machine=m68k-unknown
801 os=-linux
802 ;;
803 m68knommu-*)
804 basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'`
805 os=-linux
806 ;;
807 m88k-omron*)
808 basic_machine=m88k-omron
809 ;;
810 magnum | m3230)
811 basic_machine=mips-mips
812 os=-sysv
813 ;;
814 merlin)
815 basic_machine=ns32k-utek
816 os=-sysv
817 ;;
818 microblaze*)
819 basic_machine=microblaze-xilinx
820 ;;
821 mingw64)
822 basic_machine=x86_64-pc
823 os=-mingw64
824 ;;
825 mingw32)
826 basic_machine=i686-pc
827 os=-mingw32
828 ;;
829 mingw32ce)
830 basic_machine=arm-unknown
831 os=-mingw32ce
832 ;;
833 miniframe)
834 basic_machine=m68000-convergent
835 ;;
836 *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*)
837 basic_machine=m68k-atari
838 os=-mint
839 ;;
840 mips3*-*)
841 basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
842 ;;
843 mips3*)
844 basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
845 ;;
846 monitor)
847 basic_machine=m68k-rom68k
848 os=-coff
849 ;;
850 morphos)
851 basic_machine=powerpc-unknown
852 os=-morphos
853 ;;
854 moxiebox)
855 basic_machine=moxie-unknown
856 os=-moxiebox
857 ;;
858 msdos)
859 basic_machine=i386-pc
860 os=-msdos
861 ;;
862 ms1-*)
863 basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'`
864 ;;
865 msys)
866 basic_machine=i686-pc
867 os=-msys
868 ;;
869 mvs)
870 basic_machine=i370-ibm
871 os=-mvs
872 ;;
873 nacl)
874 basic_machine=le32-unknown
875 os=-nacl
876 ;;
877 ncr3000)
878 basic_machine=i486-ncr
879 os=-sysv4
880 ;;
881 netbsd386)
882 basic_machine=i386-unknown
883 os=-netbsd
884 ;;
885 netwinder)
886 basic_machine=armv4l-rebel
887 os=-linux
888 ;;
889 news | news700 | news800 | news900)
890 basic_machine=m68k-sony
891 os=-newsos
892 ;;
893 news1000)
894 basic_machine=m68030-sony
895 os=-newsos
896 ;;
897 news-3600 | risc-news)
898 basic_machine=mips-sony
899 os=-newsos
900 ;;
901 necv70)
902 basic_machine=v70-nec
903 os=-sysv
904 ;;
905 next | m*-next )
906 basic_machine=m68k-next
907 case $os in
908 -nextstep* )
909 ;;
910 -ns2*)
911 os=-nextstep2
912 ;;
913 *)
914 os=-nextstep3
915 ;;
916 esac
917 ;;
918 nh3000)
919 basic_machine=m68k-harris
920 os=-cxux
921 ;;
922 nh[45]000)
923 basic_machine=m88k-harris
924 os=-cxux
925 ;;
926 nindy960)
927 basic_machine=i960-intel
928 os=-nindy
929 ;;
930 mon960)
931 basic_machine=i960-intel
932 os=-mon960
933 ;;
934 nonstopux)
935 basic_machine=mips-compaq
936 os=-nonstopux
937 ;;
938 np1)
939 basic_machine=np1-gould
940 ;;
941 neo-tandem)
942 basic_machine=neo-tandem
943 ;;
944 nse-tandem)
945 basic_machine=nse-tandem
946 ;;
947 nsr-tandem)
948 basic_machine=nsr-tandem
949 ;;
950 op50n-* | op60c-*)
951 basic_machine=hppa1.1-oki
952 os=-proelf
953 ;;
954 openrisc | openrisc-*)
955 basic_machine=or32-unknown
956 ;;
957 os400)
958 basic_machine=powerpc-ibm
959 os=-os400
960 ;;
961 OSE68000 | ose68000)
962 basic_machine=m68000-ericsson
963 os=-ose
964 ;;
965 os68k)
966 basic_machine=m68k-none
967 os=-os68k
968 ;;
969 pa-hitachi)
970 basic_machine=hppa1.1-hitachi
971 os=-hiuxwe2
972 ;;
973 paragon)
974 basic_machine=i860-intel
975 os=-osf
976 ;;
977 parisc)
978 basic_machine=hppa-unknown
979 os=-linux
980 ;;
981 parisc-*)
982 basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'`
983 os=-linux
984 ;;
985 pbd)
986 basic_machine=sparc-tti
987 ;;
988 pbb)
989 basic_machine=m68k-tti
990 ;;
991 pc532 | pc532-*)
992 basic_machine=ns32k-pc532
993 ;;
994 pc98)
995 basic_machine=i386-pc
996 ;;
997 pc98-*)
998 basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'`
999 ;;
1000 pentium | p5 | k5 | k6 | nexgen | viac3)
1001 basic_machine=i586-pc
1002 ;;
1003 pentiumpro | p6 | 6x86 | athlon | athlon_*)
1004 basic_machine=i686-pc
1005 ;;
1006 pentiumii | pentium2 | pentiumiii | pentium3)
1007 basic_machine=i686-pc
1008 ;;
1009 pentium4)
1010 basic_machine=i786-pc
1011 ;;
1012 pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
1013 basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
1014 ;;
1015 pentiumpro-* | p6-* | 6x86-* | athlon-*)
1016 basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
1017 ;;
1018 pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
1019 basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
1020 ;;
1021 pentium4-*)
1022 basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'`
1023 ;;
1024 pn)
1025 basic_machine=pn-gould
1026 ;;
1027 power) basic_machine=power-ibm
1028 ;;
1029 ppc | ppcbe) basic_machine=powerpc-unknown
1030 ;;
1031 ppc-* | ppcbe-*)
1032 basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
1033 ;;
1034 ppcle | powerpclittle)
1035 basic_machine=powerpcle-unknown
1036 ;;
1037 ppcle-* | powerpclittle-*)
1038 basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
1039 ;;
1040 ppc64) basic_machine=powerpc64-unknown
1041 ;;
1042 ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
1043 ;;
1044 ppc64le | powerpc64little)
1045 basic_machine=powerpc64le-unknown
1046 ;;
1047 ppc64le-* | powerpc64little-*)
1048 basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'`
1049 ;;
1050 ps2)
1051 basic_machine=i386-ibm
1052 ;;
1053 pw32)
1054 basic_machine=i586-unknown
1055 os=-pw32
1056 ;;
1057 rdos | rdos64)
1058 basic_machine=x86_64-pc
1059 os=-rdos
1060 ;;
1061 rdos32)
1062 basic_machine=i386-pc
1063 os=-rdos
1064 ;;
1065 rom68k)
1066 basic_machine=m68k-rom68k
1067 os=-coff
1068 ;;
1069 rm[46]00)
1070 basic_machine=mips-siemens
1071 ;;
1072 rtpc | rtpc-*)
1073 basic_machine=romp-ibm
1074 ;;
1075 s390 | s390-*)
1076 basic_machine=s390-ibm
1077 ;;
1078 s390x | s390x-*)
1079 basic_machine=s390x-ibm
1080 ;;
1081 sa29200)
1082 basic_machine=a29k-amd
1083 os=-udi
1084 ;;
1085 sb1)
1086 basic_machine=mipsisa64sb1-unknown
1087 ;;
1088 sb1el)
1089 basic_machine=mipsisa64sb1el-unknown
1090 ;;
1091 sde)
1092 basic_machine=mipsisa32-sde
1093 os=-elf
1094 ;;
1095 sei)
1096 basic_machine=mips-sei
1097 os=-seiux
1098 ;;
1099 sequent)
1100 basic_machine=i386-sequent
1101 ;;
1102 sh)
1103 basic_machine=sh-hitachi
1104 os=-hms
1105 ;;
1106 sh5el)
1107 basic_machine=sh5le-unknown
1108 ;;
1109 sh64)
1110 basic_machine=sh64-unknown
1111 ;;
1112 sparclite-wrs | simso-wrs)
1113 basic_machine=sparclite-wrs
1114 os=-vxworks
1115 ;;
1116 sps7)
1117 basic_machine=m68k-bull
1118 os=-sysv2
1119 ;;
1120 spur)
1121 basic_machine=spur-unknown
1122 ;;
1123 st2000)
1124 basic_machine=m68k-tandem
1125 ;;
1126 stratus)
1127 basic_machine=i860-stratus
1128 os=-sysv4
1129 ;;
1130 strongarm-* | thumb-*)
1131 basic_machine=arm-`echo $basic_machine | sed 's/^[^-]*-//'`
1132 ;;
1133 sun2)
1134 basic_machine=m68000-sun
1135 ;;
1136 sun2os3)
1137 basic_machine=m68000-sun
1138 os=-sunos3
1139 ;;
1140 sun2os4)
1141 basic_machine=m68000-sun
1142 os=-sunos4
1143 ;;
1144 sun3os3)
1145 basic_machine=m68k-sun
1146 os=-sunos3
1147 ;;
1148 sun3os4)
1149 basic_machine=m68k-sun
1150 os=-sunos4
1151 ;;
1152 sun4os3)
1153 basic_machine=sparc-sun
1154 os=-sunos3
1155 ;;
1156 sun4os4)
1157 basic_machine=sparc-sun
1158 os=-sunos4
1159 ;;
1160 sun4sol2)
1161 basic_machine=sparc-sun
1162 os=-solaris2
1163 ;;
1164 sun3 | sun3-*)
1165 basic_machine=m68k-sun
1166 ;;
1167 sun4)
1168 basic_machine=sparc-sun
1169 ;;
1170 sun386 | sun386i | roadrunner)
1171 basic_machine=i386-sun
1172 ;;
1173 sv1)
1174 basic_machine=sv1-cray
1175 os=-unicos
1176 ;;
1177 symmetry)
1178 basic_machine=i386-sequent
1179 os=-dynix
1180 ;;
1181 t3e)
1182 basic_machine=alphaev5-cray
1183 os=-unicos
1184 ;;
1185 t90)
1186 basic_machine=t90-cray
1187 os=-unicos
1188 ;;
1189 tile*)
1190 basic_machine=$basic_machine-unknown
1191 os=-linux-gnu
1192 ;;
1193 tx39)
1194 basic_machine=mipstx39-unknown
1195 ;;
1196 tx39el)
1197 basic_machine=mipstx39el-unknown
1198 ;;
1199 toad1)
1200 basic_machine=pdp10-xkl
1201 os=-tops20
1202 ;;
1203 tower | tower-32)
1204 basic_machine=m68k-ncr
1205 ;;
1206 tpf)
1207 basic_machine=s390x-ibm
1208 os=-tpf
1209 ;;
1210 udi29k)
1211 basic_machine=a29k-amd
1212 os=-udi
1213 ;;
1214 ultra3)
1215 basic_machine=a29k-nyu
1216 os=-sym1
1217 ;;
1218 v810 | necv810)
1219 basic_machine=v810-nec
1220 os=-none
1221 ;;
1222 vaxv)
1223 basic_machine=vax-dec
1224 os=-sysv
1225 ;;
1226 vms)
1227 basic_machine=vax-dec
1228 os=-vms
1229 ;;
1230 vpp*|vx|vx-*)
1231 basic_machine=f301-fujitsu
1232 ;;
1233 vxworks960)
1234 basic_machine=i960-wrs
1235 os=-vxworks
1236 ;;
1237 vxworks68)
1238 basic_machine=m68k-wrs
1239 os=-vxworks
1240 ;;
1241 vxworks29k)
1242 basic_machine=a29k-wrs
1243 os=-vxworks
1244 ;;
1245 w65*)
1246 basic_machine=w65-wdc
1247 os=-none
1248 ;;
1249 w89k-*)
1250 basic_machine=hppa1.1-winbond
1251 os=-proelf
1252 ;;
1253 xbox)
1254 basic_machine=i686-pc
1255 os=-mingw32
1256 ;;
1257 xps | xps100)
1258 basic_machine=xps100-honeywell
1259 ;;
1260 xscale-* | xscalee[bl]-*)
1261 basic_machine=`echo $basic_machine | sed 's/^xscale/arm/'`
1262 ;;
1263 ymp)
1264 basic_machine=ymp-cray
1265 os=-unicos
1266 ;;
1267 z8k-*-coff)
1268 basic_machine=z8k-unknown
1269 os=-sim
1270 ;;
1271 z80-*-coff)
1272 basic_machine=z80-unknown
1273 os=-sim
1274 ;;
1275 none)
1276 basic_machine=none-none
1277 os=-none
1278 ;;
1279
1280 # Here we handle the default manufacturer of certain CPU types. It is in
1281 # some cases the only manufacturer, in others, it is the most popular.
1282 w89k)
1283 basic_machine=hppa1.1-winbond
1284 ;;
1285 op50n)
1286 basic_machine=hppa1.1-oki
1287 ;;
1288 op60c)
1289 basic_machine=hppa1.1-oki
1290 ;;
1291 romp)
1292 basic_machine=romp-ibm
1293 ;;
1294 mmix)
1295 basic_machine=mmix-knuth
1296 ;;
1297 rs6000)
1298 basic_machine=rs6000-ibm
1299 ;;
1300 vax)
1301 basic_machine=vax-dec
1302 ;;
1303 pdp10)
1304 # there are many clones, so DEC is not a safe bet
1305 basic_machine=pdp10-unknown
1306 ;;
1307 pdp11)
1308 basic_machine=pdp11-dec
1309 ;;
1310 we32k)
1311 basic_machine=we32k-att
1312 ;;
1313 sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele)
1314 basic_machine=sh-unknown
1315 ;;
1316 sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v)
1317 basic_machine=sparc-sun
1318 ;;
1319 cydra)
1320 basic_machine=cydra-cydrome
1321 ;;
1322 orion)
1323 basic_machine=orion-highlevel
1324 ;;
1325 orion105)
1326 basic_machine=clipper-highlevel
1327 ;;
1328 mac | mpw | mac-mpw)
1329 basic_machine=m68k-apple
1330 ;;
1331 pmac | pmac-mpw)
1332 basic_machine=powerpc-apple
1333 ;;
1334 *-unknown)
1335 # Make sure to match an already-canonicalized machine name.
1336 ;;
1337 *)
1338 echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
1339 exit 1
1340 ;;
1341 esac
1342
1343 # Here we canonicalize certain aliases for manufacturers.
1344 case $basic_machine in
1345 *-digital*)
1346 basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'`
1347 ;;
1348 *-commodore*)
1349 basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'`
1350 ;;
1351 *)
1352 ;;
1353 esac
1354
1355 # Decode manufacturer-specific aliases for certain operating systems.
1356
1357 if [ x"$os" != x"" ]
1358 then
1359 case $os in
1360 # First match some system type aliases
1361 # that might get confused with valid system types.
1362 # -solaris* is a basic system type, with this one exception.
1363 -auroraux)
1364 os=-auroraux
1365 ;;
1366 -solaris1 | -solaris1.*)
1367 os=`echo $os | sed -e 's|solaris1|sunos4|'`
1368 ;;
1369 -solaris)
1370 os=-solaris2
1371 ;;
1372 -svr4*)
1373 os=-sysv4
1374 ;;
1375 -unixware*)
1376 os=-sysv4.2uw
1377 ;;
1378 -gnu/linux*)
1379 os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'`
1380 ;;
1381 # First accept the basic system types.
1382 # The portable systems comes first.
1383 # Each alternative MUST END IN A *, to match a version number.
1384 # -sysv* is not here because it comes later, after sysvr4.
1385 -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
1386 | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\
1387 | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \
1388 | -sym* | -kopensolaris* | -plan9* \
1389 | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
1390 | -aos* | -aros* | -cloudabi* | -sortix* \
1391 | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
1392 | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
1393 | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \
1394 | -bitrig* | -openbsd* | -solidbsd* | -libertybsd* \
1395 | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
1396 | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
1397 | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
1398 | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
1399 | -chorusos* | -chorusrdb* | -cegcc* \
1400 | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
1401 | -midipix* | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \
1402 | -linux-newlib* | -linux-musl* | -linux-uclibc* \
1403 | -uxpv* | -beos* | -mpeix* | -udk* | -moxiebox* \
1404 | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
1405 | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
1406 | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
1407 | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
1408 | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
1409 | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
1410 | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es* \
1411 | -onefs* | -tirtos* | -phoenix* | -fuchsia*)
1412 # Remember, each alternative MUST END IN *, to match a version number.
1413 ;;
1414 -qnx*)
1415 case $basic_machine in
1416 x86-* | i*86-*)
1417 ;;
1418 *)
1419 os=-nto$os
1420 ;;
1421 esac
1422 ;;
1423 -nto-qnx*)
1424 ;;
1425 -nto*)
1426 os=`echo $os | sed -e 's|nto|nto-qnx|'`
1427 ;;
1428 -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
1429 | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \
1430 | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
1431 ;;
1432 -mac*)
1433 os=`echo $os | sed -e 's|mac|macos|'`
1434 ;;
1435 -linux-dietlibc)
1436 os=-linux-dietlibc
1437 ;;
1438 -linux*)
1439 os=`echo $os | sed -e 's|linux|linux-gnu|'`
1440 ;;
1441 -sunos5*)
1442 os=`echo $os | sed -e 's|sunos5|solaris2|'`
1443 ;;
1444 -sunos6*)
1445 os=`echo $os | sed -e 's|sunos6|solaris3|'`
1446 ;;
1447 -opened*)
1448 os=-openedition
1449 ;;
1450 -os400*)
1451 os=-os400
1452 ;;
1453 -wince*)
1454 os=-wince
1455 ;;
1456 -osfrose*)
1457 os=-osfrose
1458 ;;
1459 -osf*)
1460 os=-osf
1461 ;;
1462 -utek*)
1463 os=-bsd
1464 ;;
1465 -dynix*)
1466 os=-bsd
1467 ;;
1468 -acis*)
1469 os=-aos
1470 ;;
1471 -atheos*)
1472 os=-atheos
1473 ;;
1474 -syllable*)
1475 os=-syllable
1476 ;;
1477 -386bsd)
1478 os=-bsd
1479 ;;
1480 -ctix* | -uts*)
1481 os=-sysv
1482 ;;
1483 -nova*)
1484 os=-rtmk-nova
1485 ;;
1486 -ns2 )
1487 os=-nextstep2
1488 ;;
1489 -nsk*)
1490 os=-nsk
1491 ;;
1492 # Preserve the version number of sinix5.
1493 -sinix5.*)
1494 os=`echo $os | sed -e 's|sinix|sysv|'`
1495 ;;
1496 -sinix*)
1497 os=-sysv4
1498 ;;
1499 -tpf*)
1500 os=-tpf
1501 ;;
1502 -triton*)
1503 os=-sysv3
1504 ;;
1505 -oss*)
1506 os=-sysv3
1507 ;;
1508 -svr4)
1509 os=-sysv4
1510 ;;
1511 -svr3)
1512 os=-sysv3
1513 ;;
1514 -sysvr4)
1515 os=-sysv4
1516 ;;
1517 # This must come after -sysvr4.
1518 -sysv*)
1519 ;;
1520 -ose*)
1521 os=-ose
1522 ;;
1523 -es1800*)
1524 os=-ose
1525 ;;
1526 -xenix)
1527 os=-xenix
1528 ;;
1529 -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
1530 os=-mint
1531 ;;
1532 -aros*)
1533 os=-aros
1534 ;;
1535 -zvmoe)
1536 os=-zvmoe
1537 ;;
1538 -dicos*)
1539 os=-dicos
1540 ;;
1541 -nacl*)
1542 ;;
1543 -ios)
1544 ;;
1545 -none)
1546 ;;
1547 *)
1548 # Get rid of the `-' at the beginning of $os.
1549 os=`echo $os | sed 's/[^-]*-//'`
1550 echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2
1551 exit 1
1552 ;;
1553 esac
1554 else
1555
1556 # Here we handle the default operating systems that come with various machines.
1557 # The value should be what the vendor currently ships out the door with their
1558 # machine or put another way, the most popular os provided with the machine.
1559
1560 # Note that if you're going to try to match "-MANUFACTURER" here (say,
1561 # "-sun"), then you have to tell the case statement up towards the top
1562 # that MANUFACTURER isn't an operating system. Otherwise, code above
1563 # will signal an error saying that MANUFACTURER isn't an operating
1564 # system, and we'll never get to this point.
1565
1566 case $basic_machine in
1567 score-*)
1568 os=-elf
1569 ;;
1570 spu-*)
1571 os=-elf
1572 ;;
1573 *-acorn)
1574 os=-riscix1.2
1575 ;;
1576 arm*-rebel)
1577 os=-linux
1578 ;;
1579 arm*-semi)
1580 os=-aout
1581 ;;
1582 c4x-* | tic4x-*)
1583 os=-coff
1584 ;;
1585 c8051-*)
1586 os=-elf
1587 ;;
1588 hexagon-*)
1589 os=-elf
1590 ;;
1591 tic54x-*)
1592 os=-coff
1593 ;;
1594 tic55x-*)
1595 os=-coff
1596 ;;
1597 tic6x-*)
1598 os=-coff
1599 ;;
1600 # This must come before the *-dec entry.
1601 pdp10-*)
1602 os=-tops20
1603 ;;
1604 pdp11-*)
1605 os=-none
1606 ;;
1607 *-dec | vax-*)
1608 os=-ultrix4.2
1609 ;;
1610 m68*-apollo)
1611 os=-domain
1612 ;;
1613 i386-sun)
1614 os=-sunos4.0.2
1615 ;;
1616 m68000-sun)
1617 os=-sunos3
1618 ;;
1619 m68*-cisco)
1620 os=-aout
1621 ;;
1622 mep-*)
1623 os=-elf
1624 ;;
1625 mips*-cisco)
1626 os=-elf
1627 ;;
1628 mips*-*)
1629 os=-elf
1630 ;;
1631 or32-*)
1632 os=-coff
1633 ;;
1634 *-tti) # must be before sparc entry or we get the wrong os.
1635 os=-sysv3
1636 ;;
1637 sparc-* | *-sun)
1638 os=-sunos4.1.1
1639 ;;
1640 *-be)
1641 os=-beos
1642 ;;
1643 *-haiku)
1644 os=-haiku
1645 ;;
1646 *-ibm)
1647 os=-aix
1648 ;;
1649 *-knuth)
1650 os=-mmixware
1651 ;;
1652 *-wec)
1653 os=-proelf
1654 ;;
1655 *-winbond)
1656 os=-proelf
1657 ;;
1658 *-oki)
1659 os=-proelf
1660 ;;
1661 *-hp)
1662 os=-hpux
1663 ;;
1664 *-hitachi)
1665 os=-hiux
1666 ;;
1667 i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent)
1668 os=-sysv
1669 ;;
1670 *-cbm)
1671 os=-amigaos
1672 ;;
1673 *-dg)
1674 os=-dgux
1675 ;;
1676 *-dolphin)
1677 os=-sysv3
1678 ;;
1679 m68k-ccur)
1680 os=-rtu
1681 ;;
1682 m88k-omron*)
1683 os=-luna
1684 ;;
1685 *-next )
1686 os=-nextstep
1687 ;;
1688 *-sequent)
1689 os=-ptx
1690 ;;
1691 *-crds)
1692 os=-unos
1693 ;;
1694 *-ns)
1695 os=-genix
1696 ;;
1697 i370-*)
1698 os=-mvs
1699 ;;
1700 *-next)
1701 os=-nextstep3
1702 ;;
1703 *-gould)
1704 os=-sysv
1705 ;;
1706 *-highlevel)
1707 os=-bsd
1708 ;;
1709 *-encore)
1710 os=-bsd
1711 ;;
1712 *-sgi)
1713 os=-irix
1714 ;;
1715 *-siemens)
1716 os=-sysv4
1717 ;;
1718 *-masscomp)
1719 os=-rtu
1720 ;;
1721 f30[01]-fujitsu | f700-fujitsu)
1722 os=-uxpv
1723 ;;
1724 *-rom68k)
1725 os=-coff
1726 ;;
1727 *-*bug)
1728 os=-coff
1729 ;;
1730 *-apple)
1731 os=-macos
1732 ;;
1733 *-atari*)
1734 os=-mint
1735 ;;
1736 *)
1737 os=-none
1738 ;;
1739 esac
1740 fi
1741
1742 # Here we handle the case where we know the os, and the CPU type, but not the
1743 # manufacturer. We pick the logical manufacturer.
1744 vendor=unknown
1745 case $basic_machine in
1746 *-unknown)
1747 case $os in
1748 -riscix*)
1749 vendor=acorn
1750 ;;
1751 -sunos*)
1752 vendor=sun
1753 ;;
1754 -cnk*|-aix*)
1755 vendor=ibm
1756 ;;
1757 -beos*)
1758 vendor=be
1759 ;;
1760 -hpux*)
1761 vendor=hp
1762 ;;
1763 -mpeix*)
1764 vendor=hp
1765 ;;
1766 -hiux*)
1767 vendor=hitachi
1768 ;;
1769 -unos*)
1770 vendor=crds
1771 ;;
1772 -dgux*)
1773 vendor=dg
1774 ;;
1775 -luna*)
1776 vendor=omron
1777 ;;
1778 -genix*)
1779 vendor=ns
1780 ;;
1781 -mvs* | -opened*)
1782 vendor=ibm
1783 ;;
1784 -os400*)
1785 vendor=ibm
1786 ;;
1787 -ptx*)
1788 vendor=sequent
1789 ;;
1790 -tpf*)
1791 vendor=ibm
1792 ;;
1793 -vxsim* | -vxworks* | -windiss*)
1794 vendor=wrs
1795 ;;
1796 -aux*)
1797 vendor=apple
1798 ;;
1799 -hms*)
1800 vendor=hitachi
1801 ;;
1802 -mpw* | -macos*)
1803 vendor=apple
1804 ;;
1805 -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
1806 vendor=atari
1807 ;;
1808 -vos*)
1809 vendor=stratus
1810 ;;
1811 esac
1812 basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
1813 ;;
1814 esac
1815
1816 echo $basic_machine$os
1817 exit
1818
1819 # Local variables:
1820 # eval: (add-hook 'write-file-hooks 'time-stamp)
1821 # time-stamp-start: "timestamp='"
1822 # time-stamp-format: "%:y-%02m-%02d"
1823 # time-stamp-end: "'"
1824 # End:
0 #! /bin/sh
1 # Guess values for system-dependent variables and create Makefiles.
2 # Generated by GNU Autoconf 2.69 for faad2 2.8.3.
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.8.3'
590 PACKAGE_STRING='faad2 2.8.3'
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__quote
681 am__include
682 DEPDIR
683 OBJEXT
684 EXEEXT
685 ac_ct_CC
686 CPPFLAGS
687 LDFLAGS
688 CFLAGS
689 CC
690 host_os
691 host_vendor
692 host_cpu
693 host
694 build_os
695 build_vendor
696 build_cpu
697 build
698 LIBTOOL
699 AM_BACKSLASH
700 AM_DEFAULT_VERBOSITY
701 AM_DEFAULT_V
702 AM_V
703 am__untar
704 am__tar
705 AMTAR
706 am__leading_dot
707 SET_MAKE
708 AWK
709 mkdir_p
710 MKDIR_P
711 INSTALL_STRIP_PROGRAM
712 STRIP
713 install_sh
714 MAKEINFO
715 AUTOHEADER
716 AUTOMAKE
717 AUTOCONF
718 ACLOCAL
719 VERSION
720 PACKAGE
721 CYGPATH_W
722 am__isrc
723 INSTALL_DATA
724 INSTALL_SCRIPT
725 INSTALL_PROGRAM
726 target_alias
727 host_alias
728 build_alias
729 LIBS
730 ECHO_T
731 ECHO_N
732 ECHO_C
733 DEFS
734 mandir
735 localedir
736 libdir
737 psdir
738 pdfdir
739 dvidir
740 htmldir
741 infodir
742 docdir
743 oldincludedir
744 includedir
745 runstatedir
746 localstatedir
747 sharedstatedir
748 sysconfdir
749 datadir
750 datarootdir
751 libexecdir
752 sbindir
753 bindir
754 program_transform_name
755 prefix
756 exec_prefix
757 PACKAGE_URL
758 PACKAGE_BUGREPORT
759 PACKAGE_STRING
760 PACKAGE_VERSION
761 PACKAGE_TARNAME
762 PACKAGE_NAME
763 PATH_SEPARATOR
764 SHELL'
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.8.3 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.8.3:";;
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.8.3
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.8.3, 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.15'
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.8.3'
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 # <http://lists.gnu.org/archive/html/automake/2012-07/msg00001.html>
2967 # <http://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: <http://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
3200 am_make=${MAKE-make}
3201 cat > confinc << 'END'
3202 am__doit:
3203 @echo this is the am__doit target
3204 .PHONY: am__doit
3205 END
3206 # If we don't find an include directive, just comment out the code.
3207 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for style of include used by $am_make" >&5
3208 $as_echo_n "checking for style of include used by $am_make... " >&6; }
3209 am__include="#"
3210 am__quote=
3211 _am_result=none
3212 # First try GNU make style include.
3213 echo "include confinc" > confmf
3214 # Ignore all kinds of additional output from 'make'.
3215 case `$am_make -s -f confmf 2> /dev/null` in #(
3216 *the\ am__doit\ target*)
3217 am__include=include
3218 am__quote=
3219 _am_result=GNU
3220 ;;
3221 esac
3222 # Now try BSD make style include.
3223 if test "$am__include" = "#"; then
3224 echo '.include "confinc"' > confmf
3225 case `$am_make -s -f confmf 2> /dev/null` in #(
3226 *the\ am__doit\ target*)
3227 am__include=.include
3228 am__quote="\""
3229 _am_result=BSD
3230 ;;
3231 esac
3232 fi
3233
3234
3235 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $_am_result" >&5
3236 $as_echo "$_am_result" >&6; }
3237 rm -f confinc confmf
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=cru}
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 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist\""; } >&5
6243 (eval $NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist) 2>&5
6244 ac_status=$?
6245 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
6246 test $ac_status = 0; } && test -s "$nlist"; then
6247 # Try sorting and uniquifying the output.
6248 if sort "$nlist" | uniq > "$nlist"T; then
6249 mv -f "$nlist"T "$nlist"
6250 else
6251 rm -f "$nlist"T
6252 fi
6253
6254 # Make sure that we snagged all the symbols we need.
6255 if $GREP ' nm_test_var$' "$nlist" >/dev/null; then
6256 if $GREP ' nm_test_func$' "$nlist" >/dev/null; then
6257 cat <<_LT_EOF > conftest.$ac_ext
6258 /* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests. */
6259 #if defined _WIN32 || defined __CYGWIN__ || defined _WIN32_WCE
6260 /* DATA imports from DLLs on WIN32 can't be const, because runtime
6261 relocations are performed -- see ld's documentation on pseudo-relocs. */
6262 # define LT_DLSYM_CONST
6263 #elif defined __osf__
6264 /* This system does not cope well with relocations in const data. */
6265 # define LT_DLSYM_CONST
6266 #else
6267 # define LT_DLSYM_CONST const
6268 #endif
6269
6270 #ifdef __cplusplus
6271 extern "C" {
6272 #endif
6273
6274 _LT_EOF
6275 # Now generate the symbol file.
6276 eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext'
6277
6278 cat <<_LT_EOF >> conftest.$ac_ext
6279
6280 /* The mapping between symbol names and symbols. */
6281 LT_DLSYM_CONST struct {
6282 const char *name;
6283 void *address;
6284 }
6285 lt__PROGRAM__LTX_preloaded_symbols[] =
6286 {
6287 { "@PROGRAM@", (void *) 0 },
6288 _LT_EOF
6289 $SED "s/^$symcode$symcode* .* \(.*\)$/ {\"\1\", (void *) \&\1},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext
6290 cat <<\_LT_EOF >> conftest.$ac_ext
6291 {0, (void *) 0}
6292 };
6293
6294 /* This works around a problem in FreeBSD linker */
6295 #ifdef FREEBSD_WORKAROUND
6296 static const void *lt_preloaded_setup() {
6297 return lt__PROGRAM__LTX_preloaded_symbols;
6298 }
6299 #endif
6300
6301 #ifdef __cplusplus
6302 }
6303 #endif
6304 _LT_EOF
6305 # Now try linking the two files.
6306 mv conftest.$ac_objext conftstm.$ac_objext
6307 lt_globsym_save_LIBS=$LIBS
6308 lt_globsym_save_CFLAGS=$CFLAGS
6309 LIBS=conftstm.$ac_objext
6310 CFLAGS="$CFLAGS$lt_prog_compiler_no_builtin_flag"
6311 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5
6312 (eval $ac_link) 2>&5
6313 ac_status=$?
6314 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
6315 test $ac_status = 0; } && test -s conftest$ac_exeext; then
6316 pipe_works=yes
6317 fi
6318 LIBS=$lt_globsym_save_LIBS
6319 CFLAGS=$lt_globsym_save_CFLAGS
6320 else
6321 echo "cannot find nm_test_func in $nlist" >&5
6322 fi
6323 else
6324 echo "cannot find nm_test_var in $nlist" >&5
6325 fi
6326 else
6327 echo "cannot run $lt_cv_sys_global_symbol_pipe" >&5
6328 fi
6329 else
6330 echo "$progname: failed program was:" >&5
6331 cat conftest.$ac_ext >&5
6332 fi
6333 rm -rf conftest* conftst*
6334
6335 # Do not use the global_symbol_pipe unless it works.
6336 if test yes = "$pipe_works"; then
6337 break
6338 else
6339 lt_cv_sys_global_symbol_pipe=
6340 fi
6341 done
6342
6343 fi
6344
6345 if test -z "$lt_cv_sys_global_symbol_pipe"; then
6346 lt_cv_sys_global_symbol_to_cdecl=
6347 fi
6348 if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then
6349 { $as_echo "$as_me:${as_lineno-$LINENO}: result: failed" >&5
6350 $as_echo "failed" >&6; }
6351 else
6352 { $as_echo "$as_me:${as_lineno-$LINENO}: result: ok" >&5
6353 $as_echo "ok" >&6; }
6354 fi
6355
6356 # Response file support.
6357 if test "$lt_cv_nm_interface" = "MS dumpbin"; then
6358 nm_file_list_spec='@'
6359 elif $NM --help 2>/dev/null | grep '[@]FILE' >/dev/null; then
6360 nm_file_list_spec='@'
6361 fi
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
6397
6398
6399 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for sysroot" >&5
6400 $as_echo_n "checking for sysroot... " >&6; }
6401
6402 # Check whether --with-sysroot was given.
6403 if test "${with_sysroot+set}" = set; then :
6404 withval=$with_sysroot;
6405 else
6406 with_sysroot=no
6407 fi
6408
6409
6410 lt_sysroot=
6411 case $with_sysroot in #(
6412 yes)
6413 if test yes = "$GCC"; then
6414 lt_sysroot=`$CC --print-sysroot 2>/dev/null`
6415 fi
6416 ;; #(
6417 /*)
6418 lt_sysroot=`echo "$with_sysroot" | sed -e "$sed_quote_subst"`
6419 ;; #(
6420 no|'')
6421 ;; #(
6422 *)
6423 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_sysroot" >&5
6424 $as_echo "$with_sysroot" >&6; }
6425 as_fn_error $? "The sysroot must be an absolute path." "$LINENO" 5
6426 ;;
6427 esac
6428
6429 { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${lt_sysroot:-no}" >&5
6430 $as_echo "${lt_sysroot:-no}" >&6; }
6431
6432
6433
6434
6435
6436 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for a working dd" >&5
6437 $as_echo_n "checking for a working dd... " >&6; }
6438 if ${ac_cv_path_lt_DD+:} false; then :
6439 $as_echo_n "(cached) " >&6
6440 else
6441 printf 0123456789abcdef0123456789abcdef >conftest.i
6442 cat conftest.i conftest.i >conftest2.i
6443 : ${lt_DD:=$DD}
6444 if test -z "$lt_DD"; then
6445 ac_path_lt_DD_found=false
6446 # Loop through the user's path and test for each of PROGNAME-LIST
6447 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
6448 for as_dir in $PATH
6449 do
6450 IFS=$as_save_IFS
6451 test -z "$as_dir" && as_dir=.
6452 for ac_prog in dd; do
6453 for ac_exec_ext in '' $ac_executable_extensions; do
6454 ac_path_lt_DD="$as_dir/$ac_prog$ac_exec_ext"
6455 as_fn_executable_p "$ac_path_lt_DD" || continue
6456 if "$ac_path_lt_DD" bs=32 count=1 <conftest2.i >conftest.out 2>/dev/null; then
6457 cmp -s conftest.i conftest.out \
6458 && ac_cv_path_lt_DD="$ac_path_lt_DD" ac_path_lt_DD_found=:
6459 fi
6460 $ac_path_lt_DD_found && break 3
6461 done
6462 done
6463 done
6464 IFS=$as_save_IFS
6465 if test -z "$ac_cv_path_lt_DD"; then
6466 :
6467 fi
6468 else
6469 ac_cv_path_lt_DD=$lt_DD
6470 fi
6471
6472 rm -f conftest.i conftest2.i conftest.out
6473 fi
6474 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_lt_DD" >&5
6475 $as_echo "$ac_cv_path_lt_DD" >&6; }
6476
6477
6478 { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to truncate binary pipes" >&5
6479 $as_echo_n "checking how to truncate binary pipes... " >&6; }
6480 if ${lt_cv_truncate_bin+:} false; then :
6481 $as_echo_n "(cached) " >&6
6482 else
6483 printf 0123456789abcdef0123456789abcdef >conftest.i
6484 cat conftest.i conftest.i >conftest2.i
6485 lt_cv_truncate_bin=
6486 if "$ac_cv_path_lt_DD" bs=32 count=1 <conftest2.i >conftest.out 2>/dev/null; then
6487 cmp -s conftest.i conftest.out \
6488 && lt_cv_truncate_bin="$ac_cv_path_lt_DD bs=4096 count=1"
6489 fi
6490 rm -f conftest.i conftest2.i conftest.out
6491 test -z "$lt_cv_truncate_bin" && lt_cv_truncate_bin="$SED -e 4q"
6492 fi
6493 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_truncate_bin" >&5
6494 $as_echo "$lt_cv_truncate_bin" >&6; }
6495
6496
6497
6498
6499
6500
6501
6502 # Calculate cc_basename. Skip known compiler wrappers and cross-prefix.
6503 func_cc_basename ()
6504 {
6505 for cc_temp in $*""; do
6506 case $cc_temp in
6507 compile | *[\\/]compile | ccache | *[\\/]ccache ) ;;
6508 distcc | *[\\/]distcc | purify | *[\\/]purify ) ;;
6509 \-*) ;;
6510 *) break;;
6511 esac
6512 done
6513 func_cc_basename_result=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"`
6514 }
6515
6516 # Check whether --enable-libtool-lock was given.
6517 if test "${enable_libtool_lock+set}" = set; then :
6518 enableval=$enable_libtool_lock;
6519 fi
6520
6521 test no = "$enable_libtool_lock" || enable_libtool_lock=yes
6522
6523 # Some flags need to be propagated to the compiler or linker for good
6524 # libtool support.
6525 case $host in
6526 ia64-*-hpux*)
6527 # Find out what ABI is being produced by ac_compile, and set mode
6528 # options accordingly.
6529 echo 'int i;' > conftest.$ac_ext
6530 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
6531 (eval $ac_compile) 2>&5
6532 ac_status=$?
6533 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
6534 test $ac_status = 0; }; then
6535 case `/usr/bin/file conftest.$ac_objext` in
6536 *ELF-32*)
6537 HPUX_IA64_MODE=32
6538 ;;
6539 *ELF-64*)
6540 HPUX_IA64_MODE=64
6541 ;;
6542 esac
6543 fi
6544 rm -rf conftest*
6545 ;;
6546 *-*-irix6*)
6547 # Find out what ABI is being produced by ac_compile, and set linker
6548 # options accordingly.
6549 echo '#line '$LINENO' "configure"' > conftest.$ac_ext
6550 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
6551 (eval $ac_compile) 2>&5
6552 ac_status=$?
6553 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
6554 test $ac_status = 0; }; then
6555 if test yes = "$lt_cv_prog_gnu_ld"; then
6556 case `/usr/bin/file conftest.$ac_objext` in
6557 *32-bit*)
6558 LD="${LD-ld} -melf32bsmip"
6559 ;;
6560 *N32*)
6561 LD="${LD-ld} -melf32bmipn32"
6562 ;;
6563 *64-bit*)
6564 LD="${LD-ld} -melf64bmip"
6565 ;;
6566 esac
6567 else
6568 case `/usr/bin/file conftest.$ac_objext` in
6569 *32-bit*)
6570 LD="${LD-ld} -32"
6571 ;;
6572 *N32*)
6573 LD="${LD-ld} -n32"
6574 ;;
6575 *64-bit*)
6576 LD="${LD-ld} -64"
6577 ;;
6578 esac
6579 fi
6580 fi
6581 rm -rf conftest*
6582 ;;
6583
6584 mips64*-*linux*)
6585 # Find out what ABI is being produced by ac_compile, and set linker
6586 # options accordingly.
6587 echo '#line '$LINENO' "configure"' > conftest.$ac_ext
6588 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
6589 (eval $ac_compile) 2>&5
6590 ac_status=$?
6591 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
6592 test $ac_status = 0; }; then
6593 emul=elf
6594 case `/usr/bin/file conftest.$ac_objext` in
6595 *32-bit*)
6596 emul="${emul}32"
6597 ;;
6598 *64-bit*)
6599 emul="${emul}64"
6600 ;;
6601 esac
6602 case `/usr/bin/file conftest.$ac_objext` in
6603 *MSB*)
6604 emul="${emul}btsmip"
6605 ;;
6606 *LSB*)
6607 emul="${emul}ltsmip"
6608 ;;
6609 esac
6610 case `/usr/bin/file conftest.$ac_objext` in
6611 *N32*)
6612 emul="${emul}n32"
6613 ;;
6614 esac
6615 LD="${LD-ld} -m $emul"
6616 fi
6617 rm -rf conftest*
6618 ;;
6619
6620 x86_64-*kfreebsd*-gnu|x86_64-*linux*|powerpc*-*linux*| \
6621 s390*-*linux*|s390*-*tpf*|sparc*-*linux*)
6622 # Find out what ABI is being produced by ac_compile, and set linker
6623 # options accordingly. Note that the listed cases only cover the
6624 # situations where additional linker options are needed (such as when
6625 # doing 32-bit compilation for a host where ld defaults to 64-bit, or
6626 # vice versa); the common cases where no linker options are needed do
6627 # not appear in the list.
6628 echo 'int i;' > conftest.$ac_ext
6629 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
6630 (eval $ac_compile) 2>&5
6631 ac_status=$?
6632 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
6633 test $ac_status = 0; }; then
6634 case `/usr/bin/file conftest.o` in
6635 *32-bit*)
6636 case $host in
6637 x86_64-*kfreebsd*-gnu)
6638 LD="${LD-ld} -m elf_i386_fbsd"
6639 ;;
6640 x86_64-*linux*)
6641 case `/usr/bin/file conftest.o` in
6642 *x86-64*)
6643 LD="${LD-ld} -m elf32_x86_64"
6644 ;;
6645 *)
6646 LD="${LD-ld} -m elf_i386"
6647 ;;
6648 esac
6649 ;;
6650 powerpc64le-*linux*)
6651 LD="${LD-ld} -m elf32lppclinux"
6652 ;;
6653 powerpc64-*linux*)
6654 LD="${LD-ld} -m elf32ppclinux"
6655 ;;
6656 s390x-*linux*)
6657 LD="${LD-ld} -m elf_s390"
6658 ;;
6659 sparc64-*linux*)
6660 LD="${LD-ld} -m elf32_sparc"
6661 ;;
6662 esac
6663 ;;
6664 *64-bit*)
6665 case $host in
6666 x86_64-*kfreebsd*-gnu)
6667 LD="${LD-ld} -m elf_x86_64_fbsd"
6668 ;;
6669 x86_64-*linux*)
6670 LD="${LD-ld} -m elf_x86_64"
6671 ;;
6672 powerpcle-*linux*)
6673 LD="${LD-ld} -m elf64lppc"
6674 ;;
6675 powerpc-*linux*)
6676 LD="${LD-ld} -m elf64ppc"
6677 ;;
6678 s390*-*linux*|s390*-*tpf*)
6679 LD="${LD-ld} -m elf64_s390"
6680 ;;
6681 sparc*-*linux*)
6682 LD="${LD-ld} -m elf64_sparc"
6683 ;;
6684 esac
6685 ;;
6686 esac
6687 fi
6688 rm -rf conftest*
6689 ;;
6690
6691 *-*-sco3.2v5*)
6692 # On SCO OpenServer 5, we need -belf to get full-featured binaries.
6693 SAVE_CFLAGS=$CFLAGS
6694 CFLAGS="$CFLAGS -belf"
6695 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler needs -belf" >&5
6696 $as_echo_n "checking whether the C compiler needs -belf... " >&6; }
6697 if ${lt_cv_cc_needs_belf+:} false; then :
6698 $as_echo_n "(cached) " >&6
6699 else
6700 ac_ext=c
6701 ac_cpp='$CPP $CPPFLAGS'
6702 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
6703 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
6704 ac_compiler_gnu=$ac_cv_c_compiler_gnu
6705
6706 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
6707 /* end confdefs.h. */
6708
6709 int
6710 main ()
6711 {
6712
6713 ;
6714 return 0;
6715 }
6716 _ACEOF
6717 if ac_fn_c_try_link "$LINENO"; then :
6718 lt_cv_cc_needs_belf=yes
6719 else
6720 lt_cv_cc_needs_belf=no
6721 fi
6722 rm -f core conftest.err conftest.$ac_objext \
6723 conftest$ac_exeext conftest.$ac_ext
6724 ac_ext=c
6725 ac_cpp='$CPP $CPPFLAGS'
6726 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
6727 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
6728 ac_compiler_gnu=$ac_cv_c_compiler_gnu
6729
6730 fi
6731 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_cc_needs_belf" >&5
6732 $as_echo "$lt_cv_cc_needs_belf" >&6; }
6733 if test yes != "$lt_cv_cc_needs_belf"; then
6734 # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
6735 CFLAGS=$SAVE_CFLAGS
6736 fi
6737 ;;
6738 *-*solaris*)
6739 # Find out what ABI is being produced by ac_compile, and set linker
6740 # options accordingly.
6741 echo 'int i;' > conftest.$ac_ext
6742 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
6743 (eval $ac_compile) 2>&5
6744 ac_status=$?
6745 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
6746 test $ac_status = 0; }; then
6747 case `/usr/bin/file conftest.o` in
6748 *64-bit*)
6749 case $lt_cv_prog_gnu_ld in
6750 yes*)
6751 case $host in
6752 i?86-*-solaris*|x86_64-*-solaris*)
6753 LD="${LD-ld} -m elf_x86_64"
6754 ;;
6755 sparc*-*-solaris*)
6756 LD="${LD-ld} -m elf64_sparc"
6757 ;;
6758 esac
6759 # GNU ld 2.21 introduced _sol2 emulations. Use them if available.
6760 if ${LD-ld} -V | grep _sol2 >/dev/null 2>&1; then
6761 LD=${LD-ld}_sol2
6762 fi
6763 ;;
6764 *)
6765 if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then
6766 LD="${LD-ld} -64"
6767 fi
6768 ;;
6769 esac
6770 ;;
6771 esac
6772 fi
6773 rm -rf conftest*
6774 ;;
6775 esac
6776
6777 need_locks=$enable_libtool_lock
6778
6779 if test -n "$ac_tool_prefix"; then
6780 # Extract the first word of "${ac_tool_prefix}mt", so it can be a program name with args.
6781 set dummy ${ac_tool_prefix}mt; ac_word=$2
6782 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
6783 $as_echo_n "checking for $ac_word... " >&6; }
6784 if ${ac_cv_prog_MANIFEST_TOOL+:} false; then :
6785 $as_echo_n "(cached) " >&6
6786 else
6787 if test -n "$MANIFEST_TOOL"; then
6788 ac_cv_prog_MANIFEST_TOOL="$MANIFEST_TOOL" # Let the user override the test.
6789 else
6790 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
6791 for as_dir in $PATH
6792 do
6793 IFS=$as_save_IFS
6794 test -z "$as_dir" && as_dir=.
6795 for ac_exec_ext in '' $ac_executable_extensions; do
6796 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
6797 ac_cv_prog_MANIFEST_TOOL="${ac_tool_prefix}mt"
6798 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
6799 break 2
6800 fi
6801 done
6802 done
6803 IFS=$as_save_IFS
6804
6805 fi
6806 fi
6807 MANIFEST_TOOL=$ac_cv_prog_MANIFEST_TOOL
6808 if test -n "$MANIFEST_TOOL"; then
6809 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MANIFEST_TOOL" >&5
6810 $as_echo "$MANIFEST_TOOL" >&6; }
6811 else
6812 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
6813 $as_echo "no" >&6; }
6814 fi
6815
6816
6817 fi
6818 if test -z "$ac_cv_prog_MANIFEST_TOOL"; then
6819 ac_ct_MANIFEST_TOOL=$MANIFEST_TOOL
6820 # Extract the first word of "mt", so it can be a program name with args.
6821 set dummy mt; ac_word=$2
6822 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
6823 $as_echo_n "checking for $ac_word... " >&6; }
6824 if ${ac_cv_prog_ac_ct_MANIFEST_TOOL+:} false; then :
6825 $as_echo_n "(cached) " >&6
6826 else
6827 if test -n "$ac_ct_MANIFEST_TOOL"; then
6828 ac_cv_prog_ac_ct_MANIFEST_TOOL="$ac_ct_MANIFEST_TOOL" # Let the user override the test.
6829 else
6830 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
6831 for as_dir in $PATH
6832 do
6833 IFS=$as_save_IFS
6834 test -z "$as_dir" && as_dir=.
6835 for ac_exec_ext in '' $ac_executable_extensions; do
6836 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
6837 ac_cv_prog_ac_ct_MANIFEST_TOOL="mt"
6838 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
6839 break 2
6840 fi
6841 done
6842 done
6843 IFS=$as_save_IFS
6844
6845 fi
6846 fi
6847 ac_ct_MANIFEST_TOOL=$ac_cv_prog_ac_ct_MANIFEST_TOOL
6848 if test -n "$ac_ct_MANIFEST_TOOL"; then
6849 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_MANIFEST_TOOL" >&5
6850 $as_echo "$ac_ct_MANIFEST_TOOL" >&6; }
6851 else
6852 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
6853 $as_echo "no" >&6; }
6854 fi
6855
6856 if test "x$ac_ct_MANIFEST_TOOL" = x; then
6857 MANIFEST_TOOL=":"
6858 else
6859 case $cross_compiling:$ac_tool_warned in
6860 yes:)
6861 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
6862 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
6863 ac_tool_warned=yes ;;
6864 esac
6865 MANIFEST_TOOL=$ac_ct_MANIFEST_TOOL
6866 fi
6867 else
6868 MANIFEST_TOOL="$ac_cv_prog_MANIFEST_TOOL"
6869 fi
6870
6871 test -z "$MANIFEST_TOOL" && MANIFEST_TOOL=mt
6872 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $MANIFEST_TOOL is a manifest tool" >&5
6873 $as_echo_n "checking if $MANIFEST_TOOL is a manifest tool... " >&6; }
6874 if ${lt_cv_path_mainfest_tool+:} false; then :
6875 $as_echo_n "(cached) " >&6
6876 else
6877 lt_cv_path_mainfest_tool=no
6878 echo "$as_me:$LINENO: $MANIFEST_TOOL '-?'" >&5
6879 $MANIFEST_TOOL '-?' 2>conftest.err > conftest.out
6880 cat conftest.err >&5
6881 if $GREP 'Manifest Tool' conftest.out > /dev/null; then
6882 lt_cv_path_mainfest_tool=yes
6883 fi
6884 rm -f conftest*
6885 fi
6886 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_mainfest_tool" >&5
6887 $as_echo "$lt_cv_path_mainfest_tool" >&6; }
6888 if test yes != "$lt_cv_path_mainfest_tool"; then
6889 MANIFEST_TOOL=:
6890 fi
6891
6892
6893
6894
6895
6896
6897 case $host_os in
6898 rhapsody* | darwin*)
6899 if test -n "$ac_tool_prefix"; then
6900 # Extract the first word of "${ac_tool_prefix}dsymutil", so it can be a program name with args.
6901 set dummy ${ac_tool_prefix}dsymutil; ac_word=$2
6902 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
6903 $as_echo_n "checking for $ac_word... " >&6; }
6904 if ${ac_cv_prog_DSYMUTIL+:} false; then :
6905 $as_echo_n "(cached) " >&6
6906 else
6907 if test -n "$DSYMUTIL"; then
6908 ac_cv_prog_DSYMUTIL="$DSYMUTIL" # Let the user override the test.
6909 else
6910 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
6911 for as_dir in $PATH
6912 do
6913 IFS=$as_save_IFS
6914 test -z "$as_dir" && as_dir=.
6915 for ac_exec_ext in '' $ac_executable_extensions; do
6916 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
6917 ac_cv_prog_DSYMUTIL="${ac_tool_prefix}dsymutil"
6918 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
6919 break 2
6920 fi
6921 done
6922 done
6923 IFS=$as_save_IFS
6924
6925 fi
6926 fi
6927 DSYMUTIL=$ac_cv_prog_DSYMUTIL
6928 if test -n "$DSYMUTIL"; then
6929 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DSYMUTIL" >&5
6930 $as_echo "$DSYMUTIL" >&6; }
6931 else
6932 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
6933 $as_echo "no" >&6; }
6934 fi
6935
6936
6937 fi
6938 if test -z "$ac_cv_prog_DSYMUTIL"; then
6939 ac_ct_DSYMUTIL=$DSYMUTIL
6940 # Extract the first word of "dsymutil", so it can be a program name with args.
6941 set dummy dsymutil; ac_word=$2
6942 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
6943 $as_echo_n "checking for $ac_word... " >&6; }
6944 if ${ac_cv_prog_ac_ct_DSYMUTIL+:} false; then :
6945 $as_echo_n "(cached) " >&6
6946 else
6947 if test -n "$ac_ct_DSYMUTIL"; then
6948 ac_cv_prog_ac_ct_DSYMUTIL="$ac_ct_DSYMUTIL" # Let the user override the test.
6949 else
6950 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
6951 for as_dir in $PATH
6952 do
6953 IFS=$as_save_IFS
6954 test -z "$as_dir" && as_dir=.
6955 for ac_exec_ext in '' $ac_executable_extensions; do
6956 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
6957 ac_cv_prog_ac_ct_DSYMUTIL="dsymutil"
6958 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
6959 break 2
6960 fi
6961 done
6962 done
6963 IFS=$as_save_IFS
6964
6965 fi
6966 fi
6967 ac_ct_DSYMUTIL=$ac_cv_prog_ac_ct_DSYMUTIL
6968 if test -n "$ac_ct_DSYMUTIL"; then
6969 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DSYMUTIL" >&5
6970 $as_echo "$ac_ct_DSYMUTIL" >&6; }
6971 else
6972 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
6973 $as_echo "no" >&6; }
6974 fi
6975
6976 if test "x$ac_ct_DSYMUTIL" = x; then
6977 DSYMUTIL=":"
6978 else
6979 case $cross_compiling:$ac_tool_warned in
6980 yes:)
6981 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
6982 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
6983 ac_tool_warned=yes ;;
6984 esac
6985 DSYMUTIL=$ac_ct_DSYMUTIL
6986 fi
6987 else
6988 DSYMUTIL="$ac_cv_prog_DSYMUTIL"
6989 fi
6990
6991 if test -n "$ac_tool_prefix"; then
6992 # Extract the first word of "${ac_tool_prefix}nmedit", so it can be a program name with args.
6993 set dummy ${ac_tool_prefix}nmedit; ac_word=$2
6994 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
6995 $as_echo_n "checking for $ac_word... " >&6; }
6996 if ${ac_cv_prog_NMEDIT+:} false; then :
6997 $as_echo_n "(cached) " >&6
6998 else
6999 if test -n "$NMEDIT"; then
7000 ac_cv_prog_NMEDIT="$NMEDIT" # Let the user override the test.
7001 else
7002 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
7003 for as_dir in $PATH
7004 do
7005 IFS=$as_save_IFS
7006 test -z "$as_dir" && as_dir=.
7007 for ac_exec_ext in '' $ac_executable_extensions; do
7008 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
7009 ac_cv_prog_NMEDIT="${ac_tool_prefix}nmedit"
7010 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
7011 break 2
7012 fi
7013 done
7014 done
7015 IFS=$as_save_IFS
7016
7017 fi
7018 fi
7019 NMEDIT=$ac_cv_prog_NMEDIT
7020 if test -n "$NMEDIT"; then
7021 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $NMEDIT" >&5
7022 $as_echo "$NMEDIT" >&6; }
7023 else
7024 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
7025 $as_echo "no" >&6; }
7026 fi
7027
7028
7029 fi
7030 if test -z "$ac_cv_prog_NMEDIT"; then
7031 ac_ct_NMEDIT=$NMEDIT
7032 # Extract the first word of "nmedit", so it can be a program name with args.
7033 set dummy nmedit; ac_word=$2
7034 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
7035 $as_echo_n "checking for $ac_word... " >&6; }
7036 if ${ac_cv_prog_ac_ct_NMEDIT+:} false; then :
7037 $as_echo_n "(cached) " >&6
7038 else
7039 if test -n "$ac_ct_NMEDIT"; then
7040 ac_cv_prog_ac_ct_NMEDIT="$ac_ct_NMEDIT" # Let the user override the test.
7041 else
7042 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
7043 for as_dir in $PATH
7044 do
7045 IFS=$as_save_IFS
7046 test -z "$as_dir" && as_dir=.
7047 for ac_exec_ext in '' $ac_executable_extensions; do
7048 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
7049 ac_cv_prog_ac_ct_NMEDIT="nmedit"
7050 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
7051 break 2
7052 fi
7053 done
7054 done
7055 IFS=$as_save_IFS
7056
7057 fi
7058 fi
7059 ac_ct_NMEDIT=$ac_cv_prog_ac_ct_NMEDIT
7060 if test -n "$ac_ct_NMEDIT"; then
7061 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_NMEDIT" >&5
7062 $as_echo "$ac_ct_NMEDIT" >&6; }
7063 else
7064 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
7065 $as_echo "no" >&6; }
7066 fi
7067
7068 if test "x$ac_ct_NMEDIT" = x; then
7069 NMEDIT=":"
7070 else
7071 case $cross_compiling:$ac_tool_warned in
7072 yes:)
7073 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
7074 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
7075 ac_tool_warned=yes ;;
7076 esac
7077 NMEDIT=$ac_ct_NMEDIT
7078 fi
7079 else
7080 NMEDIT="$ac_cv_prog_NMEDIT"
7081 fi
7082
7083 if test -n "$ac_tool_prefix"; then
7084 # Extract the first word of "${ac_tool_prefix}lipo", so it can be a program name with args.
7085 set dummy ${ac_tool_prefix}lipo; ac_word=$2
7086 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
7087 $as_echo_n "checking for $ac_word... " >&6; }
7088 if ${ac_cv_prog_LIPO+:} false; then :
7089 $as_echo_n "(cached) " >&6
7090 else
7091 if test -n "$LIPO"; then
7092 ac_cv_prog_LIPO="$LIPO" # Let the user override the test.
7093 else
7094 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
7095 for as_dir in $PATH
7096 do
7097 IFS=$as_save_IFS
7098 test -z "$as_dir" && as_dir=.
7099 for ac_exec_ext in '' $ac_executable_extensions; do
7100 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
7101 ac_cv_prog_LIPO="${ac_tool_prefix}lipo"
7102 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
7103 break 2
7104 fi
7105 done
7106 done
7107 IFS=$as_save_IFS
7108
7109 fi
7110 fi
7111 LIPO=$ac_cv_prog_LIPO
7112 if test -n "$LIPO"; then
7113 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIPO" >&5
7114 $as_echo "$LIPO" >&6; }
7115 else
7116 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
7117 $as_echo "no" >&6; }
7118 fi
7119
7120
7121 fi
7122 if test -z "$ac_cv_prog_LIPO"; then
7123 ac_ct_LIPO=$LIPO
7124 # Extract the first word of "lipo", so it can be a program name with args.
7125 set dummy lipo; ac_word=$2
7126 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
7127 $as_echo_n "checking for $ac_word... " >&6; }
7128 if ${ac_cv_prog_ac_ct_LIPO+:} false; then :
7129 $as_echo_n "(cached) " >&6
7130 else
7131 if test -n "$ac_ct_LIPO"; then
7132 ac_cv_prog_ac_ct_LIPO="$ac_ct_LIPO" # Let the user override the test.
7133 else
7134 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
7135 for as_dir in $PATH
7136 do
7137 IFS=$as_save_IFS
7138 test -z "$as_dir" && as_dir=.
7139 for ac_exec_ext in '' $ac_executable_extensions; do
7140 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
7141 ac_cv_prog_ac_ct_LIPO="lipo"
7142 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
7143 break 2
7144 fi
7145 done
7146 done
7147 IFS=$as_save_IFS
7148
7149 fi
7150 fi
7151 ac_ct_LIPO=$ac_cv_prog_ac_ct_LIPO
7152 if test -n "$ac_ct_LIPO"; then
7153 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_LIPO" >&5
7154 $as_echo "$ac_ct_LIPO" >&6; }
7155 else
7156 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
7157 $as_echo "no" >&6; }
7158 fi
7159
7160 if test "x$ac_ct_LIPO" = x; then
7161 LIPO=":"
7162 else
7163 case $cross_compiling:$ac_tool_warned in
7164 yes:)
7165 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
7166 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
7167 ac_tool_warned=yes ;;
7168 esac
7169 LIPO=$ac_ct_LIPO
7170 fi
7171 else
7172 LIPO="$ac_cv_prog_LIPO"
7173 fi
7174
7175 if test -n "$ac_tool_prefix"; then
7176 # Extract the first word of "${ac_tool_prefix}otool", so it can be a program name with args.
7177 set dummy ${ac_tool_prefix}otool; ac_word=$2
7178 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
7179 $as_echo_n "checking for $ac_word... " >&6; }
7180 if ${ac_cv_prog_OTOOL+:} false; then :
7181 $as_echo_n "(cached) " >&6
7182 else
7183 if test -n "$OTOOL"; then
7184 ac_cv_prog_OTOOL="$OTOOL" # Let the user override the test.
7185 else
7186 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
7187 for as_dir in $PATH
7188 do
7189 IFS=$as_save_IFS
7190 test -z "$as_dir" && as_dir=.
7191 for ac_exec_ext in '' $ac_executable_extensions; do
7192 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
7193 ac_cv_prog_OTOOL="${ac_tool_prefix}otool"
7194 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
7195 break 2
7196 fi
7197 done
7198 done
7199 IFS=$as_save_IFS
7200
7201 fi
7202 fi
7203 OTOOL=$ac_cv_prog_OTOOL
7204 if test -n "$OTOOL"; then
7205 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OTOOL" >&5
7206 $as_echo "$OTOOL" >&6; }
7207 else
7208 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
7209 $as_echo "no" >&6; }
7210 fi
7211
7212
7213 fi
7214 if test -z "$ac_cv_prog_OTOOL"; then
7215 ac_ct_OTOOL=$OTOOL
7216 # Extract the first word of "otool", so it can be a program name with args.
7217 set dummy otool; ac_word=$2
7218 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
7219 $as_echo_n "checking for $ac_word... " >&6; }
7220 if ${ac_cv_prog_ac_ct_OTOOL+:} false; then :
7221 $as_echo_n "(cached) " >&6
7222 else
7223 if test -n "$ac_ct_OTOOL"; then
7224 ac_cv_prog_ac_ct_OTOOL="$ac_ct_OTOOL" # Let the user override the test.
7225 else
7226 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
7227 for as_dir in $PATH
7228 do
7229 IFS=$as_save_IFS
7230 test -z "$as_dir" && as_dir=.
7231 for ac_exec_ext in '' $ac_executable_extensions; do
7232 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
7233 ac_cv_prog_ac_ct_OTOOL="otool"
7234 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
7235 break 2
7236 fi
7237 done
7238 done
7239 IFS=$as_save_IFS
7240
7241 fi
7242 fi
7243 ac_ct_OTOOL=$ac_cv_prog_ac_ct_OTOOL
7244 if test -n "$ac_ct_OTOOL"; then
7245 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OTOOL" >&5
7246 $as_echo "$ac_ct_OTOOL" >&6; }
7247 else
7248 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
7249 $as_echo "no" >&6; }
7250 fi
7251
7252 if test "x$ac_ct_OTOOL" = x; then
7253 OTOOL=":"
7254 else
7255 case $cross_compiling:$ac_tool_warned in
7256 yes:)
7257 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
7258 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
7259 ac_tool_warned=yes ;;
7260 esac
7261 OTOOL=$ac_ct_OTOOL
7262 fi
7263 else
7264 OTOOL="$ac_cv_prog_OTOOL"
7265 fi
7266
7267 if test -n "$ac_tool_prefix"; then
7268 # Extract the first word of "${ac_tool_prefix}otool64", so it can be a program name with args.
7269 set dummy ${ac_tool_prefix}otool64; ac_word=$2
7270 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
7271 $as_echo_n "checking for $ac_word... " >&6; }
7272 if ${ac_cv_prog_OTOOL64+:} false; then :
7273 $as_echo_n "(cached) " >&6
7274 else
7275 if test -n "$OTOOL64"; then
7276 ac_cv_prog_OTOOL64="$OTOOL64" # Let the user override the test.
7277 else
7278 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
7279 for as_dir in $PATH
7280 do
7281 IFS=$as_save_IFS
7282 test -z "$as_dir" && as_dir=.
7283 for ac_exec_ext in '' $ac_executable_extensions; do
7284 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
7285 ac_cv_prog_OTOOL64="${ac_tool_prefix}otool64"
7286 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
7287 break 2
7288 fi
7289 done
7290 done
7291 IFS=$as_save_IFS
7292
7293 fi
7294 fi
7295 OTOOL64=$ac_cv_prog_OTOOL64
7296 if test -n "$OTOOL64"; then
7297 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OTOOL64" >&5
7298 $as_echo "$OTOOL64" >&6; }
7299 else
7300 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
7301 $as_echo "no" >&6; }
7302 fi
7303
7304
7305 fi
7306 if test -z "$ac_cv_prog_OTOOL64"; then
7307 ac_ct_OTOOL64=$OTOOL64
7308 # Extract the first word of "otool64", so it can be a program name with args.
7309 set dummy otool64; ac_word=$2
7310 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
7311 $as_echo_n "checking for $ac_word... " >&6; }
7312 if ${ac_cv_prog_ac_ct_OTOOL64+:} false; then :
7313 $as_echo_n "(cached) " >&6
7314 else
7315 if test -n "$ac_ct_OTOOL64"; then
7316 ac_cv_prog_ac_ct_OTOOL64="$ac_ct_OTOOL64" # Let the user override the test.
7317 else
7318 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
7319 for as_dir in $PATH
7320 do
7321 IFS=$as_save_IFS
7322 test -z "$as_dir" && as_dir=.
7323 for ac_exec_ext in '' $ac_executable_extensions; do
7324 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
7325 ac_cv_prog_ac_ct_OTOOL64="otool64"
7326 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
7327 break 2
7328 fi
7329 done
7330 done
7331 IFS=$as_save_IFS
7332
7333 fi
7334 fi
7335 ac_ct_OTOOL64=$ac_cv_prog_ac_ct_OTOOL64
7336 if test -n "$ac_ct_OTOOL64"; then
7337 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OTOOL64" >&5
7338 $as_echo "$ac_ct_OTOOL64" >&6; }
7339 else
7340 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
7341 $as_echo "no" >&6; }
7342 fi
7343
7344 if test "x$ac_ct_OTOOL64" = x; then
7345 OTOOL64=":"
7346 else
7347 case $cross_compiling:$ac_tool_warned in
7348 yes:)
7349 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
7350 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
7351 ac_tool_warned=yes ;;
7352 esac
7353 OTOOL64=$ac_ct_OTOOL64
7354 fi
7355 else
7356 OTOOL64="$ac_cv_prog_OTOOL64"
7357 fi
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
7383
7384
7385 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -single_module linker flag" >&5
7386 $as_echo_n "checking for -single_module linker flag... " >&6; }
7387 if ${lt_cv_apple_cc_single_mod+:} false; then :
7388 $as_echo_n "(cached) " >&6
7389 else
7390 lt_cv_apple_cc_single_mod=no
7391 if test -z "$LT_MULTI_MODULE"; then
7392 # By default we will add the -single_module flag. You can override
7393 # by either setting the environment variable LT_MULTI_MODULE
7394 # non-empty at configure time, or by adding -multi_module to the
7395 # link flags.
7396 rm -rf libconftest.dylib*
7397 echo "int foo(void){return 1;}" > conftest.c
7398 echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
7399 -dynamiclib -Wl,-single_module conftest.c" >&5
7400 $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \
7401 -dynamiclib -Wl,-single_module conftest.c 2>conftest.err
7402 _lt_result=$?
7403 # If there is a non-empty error log, and "single_module"
7404 # appears in it, assume the flag caused a linker warning
7405 if test -s conftest.err && $GREP single_module conftest.err; then
7406 cat conftest.err >&5
7407 # Otherwise, if the output was created with a 0 exit code from
7408 # the compiler, it worked.
7409 elif test -f libconftest.dylib && test 0 = "$_lt_result"; then
7410 lt_cv_apple_cc_single_mod=yes
7411 else
7412 cat conftest.err >&5
7413 fi
7414 rm -rf libconftest.dylib*
7415 rm -f conftest.*
7416 fi
7417 fi
7418 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_apple_cc_single_mod" >&5
7419 $as_echo "$lt_cv_apple_cc_single_mod" >&6; }
7420
7421 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -exported_symbols_list linker flag" >&5
7422 $as_echo_n "checking for -exported_symbols_list linker flag... " >&6; }
7423 if ${lt_cv_ld_exported_symbols_list+:} false; then :
7424 $as_echo_n "(cached) " >&6
7425 else
7426 lt_cv_ld_exported_symbols_list=no
7427 save_LDFLAGS=$LDFLAGS
7428 echo "_main" > conftest.sym
7429 LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym"
7430 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
7431 /* end confdefs.h. */
7432
7433 int
7434 main ()
7435 {
7436
7437 ;
7438 return 0;
7439 }
7440 _ACEOF
7441 if ac_fn_c_try_link "$LINENO"; then :
7442 lt_cv_ld_exported_symbols_list=yes
7443 else
7444 lt_cv_ld_exported_symbols_list=no
7445 fi
7446 rm -f core conftest.err conftest.$ac_objext \
7447 conftest$ac_exeext conftest.$ac_ext
7448 LDFLAGS=$save_LDFLAGS
7449
7450 fi
7451 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_exported_symbols_list" >&5
7452 $as_echo "$lt_cv_ld_exported_symbols_list" >&6; }
7453
7454 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -force_load linker flag" >&5
7455 $as_echo_n "checking for -force_load linker flag... " >&6; }
7456 if ${lt_cv_ld_force_load+:} false; then :
7457 $as_echo_n "(cached) " >&6
7458 else
7459 lt_cv_ld_force_load=no
7460 cat > conftest.c << _LT_EOF
7461 int forced_loaded() { return 2;}
7462 _LT_EOF
7463 echo "$LTCC $LTCFLAGS -c -o conftest.o conftest.c" >&5
7464 $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&5
7465 echo "$AR cru libconftest.a conftest.o" >&5
7466 $AR cru libconftest.a conftest.o 2>&5
7467 echo "$RANLIB libconftest.a" >&5
7468 $RANLIB libconftest.a 2>&5
7469 cat > conftest.c << _LT_EOF
7470 int main() { return 0;}
7471 _LT_EOF
7472 echo "$LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a" >&5
7473 $LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a 2>conftest.err
7474 _lt_result=$?
7475 if test -s conftest.err && $GREP force_load conftest.err; then
7476 cat conftest.err >&5
7477 elif test -f conftest && test 0 = "$_lt_result" && $GREP forced_load conftest >/dev/null 2>&1; then
7478 lt_cv_ld_force_load=yes
7479 else
7480 cat conftest.err >&5
7481 fi
7482 rm -f conftest.err libconftest.a conftest conftest.c
7483 rm -rf conftest.dSYM
7484
7485 fi
7486 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_force_load" >&5
7487 $as_echo "$lt_cv_ld_force_load" >&6; }
7488 case $host_os in
7489 rhapsody* | darwin1.[012])
7490 _lt_dar_allow_undefined='$wl-undefined ${wl}suppress' ;;
7491 darwin1.*)
7492 _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;;
7493 darwin*) # darwin 5.x on
7494 # if running on 10.5 or later, the deployment target defaults
7495 # to the OS version, if on x86, and 10.4, the deployment
7496 # target defaults to 10.4. Don't you love it?
7497 case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in
7498 10.0,*86*-darwin8*|10.0,*-darwin[91]*)
7499 _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;;
7500 10.[012][,.]*)
7501 _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;;
7502 10.*)
7503 _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;;
7504 esac
7505 ;;
7506 esac
7507 if test yes = "$lt_cv_apple_cc_single_mod"; then
7508 _lt_dar_single_mod='$single_module'
7509 fi
7510 if test yes = "$lt_cv_ld_exported_symbols_list"; then
7511 _lt_dar_export_syms=' $wl-exported_symbols_list,$output_objdir/$libname-symbols.expsym'
7512 else
7513 _lt_dar_export_syms='~$NMEDIT -s $output_objdir/$libname-symbols.expsym $lib'
7514 fi
7515 if test : != "$DSYMUTIL" && test no = "$lt_cv_ld_force_load"; then
7516 _lt_dsymutil='~$DSYMUTIL $lib || :'
7517 else
7518 _lt_dsymutil=
7519 fi
7520 ;;
7521 esac
7522
7523 # func_munge_path_list VARIABLE PATH
7524 # -----------------------------------
7525 # VARIABLE is name of variable containing _space_ separated list of
7526 # directories to be munged by the contents of PATH, which is string
7527 # having a format:
7528 # "DIR[:DIR]:"
7529 # string "DIR[ DIR]" will be prepended to VARIABLE
7530 # ":DIR[:DIR]"
7531 # string "DIR[ DIR]" will be appended to VARIABLE
7532 # "DIRP[:DIRP]::[DIRA:]DIRA"
7533 # string "DIRP[ DIRP]" will be prepended to VARIABLE and string
7534 # "DIRA[ DIRA]" will be appended to VARIABLE
7535 # "DIR[:DIR]"
7536 # VARIABLE will be replaced by "DIR[ DIR]"
7537 func_munge_path_list ()
7538 {
7539 case x$2 in
7540 x)
7541 ;;
7542 *:)
7543 eval $1=\"`$ECHO $2 | $SED 's/:/ /g'` \$$1\"
7544 ;;
7545 x:*)
7546 eval $1=\"\$$1 `$ECHO $2 | $SED 's/:/ /g'`\"
7547 ;;
7548 *::*)
7549 eval $1=\"\$$1\ `$ECHO $2 | $SED -e 's/.*:://' -e 's/:/ /g'`\"
7550 eval $1=\"`$ECHO $2 | $SED -e 's/::.*//' -e 's/:/ /g'`\ \$$1\"
7551 ;;
7552 *)
7553 eval $1=\"`$ECHO $2 | $SED 's/:/ /g'`\"
7554 ;;
7555 esac
7556 }
7557
7558 ac_ext=c
7559 ac_cpp='$CPP $CPPFLAGS'
7560 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
7561 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
7562 ac_compiler_gnu=$ac_cv_c_compiler_gnu
7563 { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&5
7564 $as_echo_n "checking how to run the C preprocessor... " >&6; }
7565 # On Suns, sometimes $CPP names a directory.
7566 if test -n "$CPP" && test -d "$CPP"; then
7567 CPP=
7568 fi
7569 if test -z "$CPP"; then
7570 if ${ac_cv_prog_CPP+:} false; then :
7571 $as_echo_n "(cached) " >&6
7572 else
7573 # Double quotes because CPP needs to be expanded
7574 for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp"
7575 do
7576 ac_preproc_ok=false
7577 for ac_c_preproc_warn_flag in '' yes
7578 do
7579 # Use a header file that comes with gcc, so configuring glibc
7580 # with a fresh cross-compiler works.
7581 # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
7582 # <limits.h> exists even on freestanding compilers.
7583 # On the NeXT, cc -E runs the code through the compiler's parser,
7584 # not just through cpp. "Syntax error" is here to catch this case.
7585 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
7586 /* end confdefs.h. */
7587 #ifdef __STDC__
7588 # include <limits.h>
7589 #else
7590 # include <assert.h>
7591 #endif
7592 Syntax error
7593 _ACEOF
7594 if ac_fn_c_try_cpp "$LINENO"; then :
7595
7596 else
7597 # Broken: fails on valid input.
7598 continue
7599 fi
7600 rm -f conftest.err conftest.i conftest.$ac_ext
7601
7602 # OK, works on sane cases. Now check whether nonexistent headers
7603 # can be detected and how.
7604 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
7605 /* end confdefs.h. */
7606 #include <ac_nonexistent.h>
7607 _ACEOF
7608 if ac_fn_c_try_cpp "$LINENO"; then :
7609 # Broken: success on invalid input.
7610 continue
7611 else
7612 # Passes both tests.
7613 ac_preproc_ok=:
7614 break
7615 fi
7616 rm -f conftest.err conftest.i conftest.$ac_ext
7617
7618 done
7619 # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
7620 rm -f conftest.i conftest.err conftest.$ac_ext
7621 if $ac_preproc_ok; then :
7622 break
7623 fi
7624
7625 done
7626 ac_cv_prog_CPP=$CPP
7627
7628 fi
7629 CPP=$ac_cv_prog_CPP
7630 else
7631 ac_cv_prog_CPP=$CPP
7632 fi
7633 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CPP" >&5
7634 $as_echo "$CPP" >&6; }
7635 ac_preproc_ok=false
7636 for ac_c_preproc_warn_flag in '' yes
7637 do
7638 # Use a header file that comes with gcc, so configuring glibc
7639 # with a fresh cross-compiler works.
7640 # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
7641 # <limits.h> exists even on freestanding compilers.
7642 # On the NeXT, cc -E runs the code through the compiler's parser,
7643 # not just through cpp. "Syntax error" is here to catch this case.
7644 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
7645 /* end confdefs.h. */
7646 #ifdef __STDC__
7647 # include <limits.h>
7648 #else
7649 # include <assert.h>
7650 #endif
7651 Syntax error
7652 _ACEOF
7653 if ac_fn_c_try_cpp "$LINENO"; then :
7654
7655 else
7656 # Broken: fails on valid input.
7657 continue
7658 fi
7659 rm -f conftest.err conftest.i conftest.$ac_ext
7660
7661 # OK, works on sane cases. Now check whether nonexistent headers
7662 # can be detected and how.
7663 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
7664 /* end confdefs.h. */
7665 #include <ac_nonexistent.h>
7666 _ACEOF
7667 if ac_fn_c_try_cpp "$LINENO"; then :
7668 # Broken: success on invalid input.
7669 continue
7670 else
7671 # Passes both tests.
7672 ac_preproc_ok=:
7673 break
7674 fi
7675 rm -f conftest.err conftest.i conftest.$ac_ext
7676
7677 done
7678 # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
7679 rm -f conftest.i conftest.err conftest.$ac_ext
7680 if $ac_preproc_ok; then :
7681
7682 else
7683 { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
7684 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
7685 as_fn_error $? "C preprocessor \"$CPP\" fails sanity check
7686 See \`config.log' for more details" "$LINENO" 5; }
7687 fi
7688
7689 ac_ext=c
7690 ac_cpp='$CPP $CPPFLAGS'
7691 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
7692 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
7693 ac_compiler_gnu=$ac_cv_c_compiler_gnu
7694
7695
7696 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5
7697 $as_echo_n "checking for ANSI C header files... " >&6; }
7698 if ${ac_cv_header_stdc+:} false; then :
7699 $as_echo_n "(cached) " >&6
7700 else
7701 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
7702 /* end confdefs.h. */
7703 #include <stdlib.h>
7704 #include <stdarg.h>
7705 #include <string.h>
7706 #include <float.h>
7707
7708 int
7709 main ()
7710 {
7711
7712 ;
7713 return 0;
7714 }
7715 _ACEOF
7716 if ac_fn_c_try_compile "$LINENO"; then :
7717 ac_cv_header_stdc=yes
7718 else
7719 ac_cv_header_stdc=no
7720 fi
7721 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
7722
7723 if test $ac_cv_header_stdc = yes; then
7724 # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
7725 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
7726 /* end confdefs.h. */
7727 #include <string.h>
7728
7729 _ACEOF
7730 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
7731 $EGREP "memchr" >/dev/null 2>&1; then :
7732
7733 else
7734 ac_cv_header_stdc=no
7735 fi
7736 rm -f conftest*
7737
7738 fi
7739
7740 if test $ac_cv_header_stdc = yes; then
7741 # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
7742 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
7743 /* end confdefs.h. */
7744 #include <stdlib.h>
7745
7746 _ACEOF
7747 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
7748 $EGREP "free" >/dev/null 2>&1; then :
7749
7750 else
7751 ac_cv_header_stdc=no
7752 fi
7753 rm -f conftest*
7754
7755 fi
7756
7757 if test $ac_cv_header_stdc = yes; then
7758 # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi.
7759 if test "$cross_compiling" = yes; then :
7760 :
7761 else
7762 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
7763 /* end confdefs.h. */
7764 #include <ctype.h>
7765 #include <stdlib.h>
7766 #if ((' ' & 0x0FF) == 0x020)
7767 # define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
7768 # define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c))
7769 #else
7770 # define ISLOWER(c) \
7771 (('a' <= (c) && (c) <= 'i') \
7772 || ('j' <= (c) && (c) <= 'r') \
7773 || ('s' <= (c) && (c) <= 'z'))
7774 # define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c))
7775 #endif
7776
7777 #define XOR(e, f) (((e) && !(f)) || (!(e) && (f)))
7778 int
7779 main ()
7780 {
7781 int i;
7782 for (i = 0; i < 256; i++)
7783 if (XOR (islower (i), ISLOWER (i))
7784 || toupper (i) != TOUPPER (i))
7785 return 2;
7786 return 0;
7787 }
7788 _ACEOF
7789 if ac_fn_c_try_run "$LINENO"; then :
7790
7791 else
7792 ac_cv_header_stdc=no
7793 fi
7794 rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
7795 conftest.$ac_objext conftest.beam conftest.$ac_ext
7796 fi
7797
7798 fi
7799 fi
7800 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5
7801 $as_echo "$ac_cv_header_stdc" >&6; }
7802 if test $ac_cv_header_stdc = yes; then
7803
7804 $as_echo "#define STDC_HEADERS 1" >>confdefs.h
7805
7806 fi
7807
7808 # On IRIX 5.3, sys/types and inttypes.h are conflicting.
7809 for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \
7810 inttypes.h stdint.h unistd.h
7811 do :
7812 as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
7813 ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default
7814 "
7815 if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
7816 cat >>confdefs.h <<_ACEOF
7817 #define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
7818 _ACEOF
7819
7820 fi
7821
7822 done
7823
7824
7825 for ac_header in dlfcn.h
7826 do :
7827 ac_fn_c_check_header_compile "$LINENO" "dlfcn.h" "ac_cv_header_dlfcn_h" "$ac_includes_default
7828 "
7829 if test "x$ac_cv_header_dlfcn_h" = xyes; then :
7830 cat >>confdefs.h <<_ACEOF
7831 #define HAVE_DLFCN_H 1
7832 _ACEOF
7833
7834 fi
7835
7836 done
7837
7838
7839
7840
7841
7842 # Set options
7843
7844
7845
7846 enable_dlopen=no
7847
7848
7849 enable_win32_dll=no
7850
7851
7852 # Check whether --enable-shared was given.
7853 if test "${enable_shared+set}" = set; then :
7854 enableval=$enable_shared; p=${PACKAGE-default}
7855 case $enableval in
7856 yes) enable_shared=yes ;;
7857 no) enable_shared=no ;;
7858 *)
7859 enable_shared=no
7860 # Look at the argument we got. We use all the common list separators.
7861 lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
7862 for pkg in $enableval; do
7863 IFS=$lt_save_ifs
7864 if test "X$pkg" = "X$p"; then
7865 enable_shared=yes
7866 fi
7867 done
7868 IFS=$lt_save_ifs
7869 ;;
7870 esac
7871 else
7872 enable_shared=yes
7873 fi
7874
7875
7876
7877
7878
7879
7880
7881
7882
7883 # Check whether --enable-static was given.
7884 if test "${enable_static+set}" = set; then :
7885 enableval=$enable_static; p=${PACKAGE-default}
7886 case $enableval in
7887 yes) enable_static=yes ;;
7888 no) enable_static=no ;;
7889 *)
7890 enable_static=no
7891 # Look at the argument we got. We use all the common list separators.
7892 lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
7893 for pkg in $enableval; do
7894 IFS=$lt_save_ifs
7895 if test "X$pkg" = "X$p"; then
7896 enable_static=yes
7897 fi
7898 done
7899 IFS=$lt_save_ifs
7900 ;;
7901 esac
7902 else
7903 enable_static=yes
7904 fi
7905
7906
7907
7908
7909
7910
7911
7912
7913
7914
7915 # Check whether --with-pic was given.
7916 if test "${with_pic+set}" = set; then :
7917 withval=$with_pic; lt_p=${PACKAGE-default}
7918 case $withval in
7919 yes|no) pic_mode=$withval ;;
7920 *)
7921 pic_mode=default
7922 # Look at the argument we got. We use all the common list separators.
7923 lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
7924 for lt_pkg in $withval; do
7925 IFS=$lt_save_ifs
7926 if test "X$lt_pkg" = "X$lt_p"; then
7927 pic_mode=yes
7928 fi
7929 done
7930 IFS=$lt_save_ifs
7931 ;;
7932 esac
7933 else
7934 pic_mode=default
7935 fi
7936
7937
7938
7939
7940
7941
7942
7943
7944 # Check whether --enable-fast-install was given.
7945 if test "${enable_fast_install+set}" = set; then :
7946 enableval=$enable_fast_install; p=${PACKAGE-default}
7947 case $enableval in
7948 yes) enable_fast_install=yes ;;
7949 no) enable_fast_install=no ;;
7950 *)
7951 enable_fast_install=no
7952 # Look at the argument we got. We use all the common list separators.
7953 lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
7954 for pkg in $enableval; do
7955 IFS=$lt_save_ifs
7956 if test "X$pkg" = "X$p"; then
7957 enable_fast_install=yes
7958 fi
7959 done
7960 IFS=$lt_save_ifs
7961 ;;
7962 esac
7963 else
7964 enable_fast_install=yes
7965 fi
7966
7967
7968
7969
7970
7971
7972
7973
7974 shared_archive_member_spec=
7975 case $host,$enable_shared in
7976 power*-*-aix[5-9]*,yes)
7977 { $as_echo "$as_me:${as_lineno-$LINENO}: checking which variant of shared library versioning to provide" >&5
7978 $as_echo_n "checking which variant of shared library versioning to provide... " >&6; }
7979
7980 # Check whether --with-aix-soname was given.
7981 if test "${with_aix_soname+set}" = set; then :
7982 withval=$with_aix_soname; case $withval in
7983 aix|svr4|both)
7984 ;;
7985 *)
7986 as_fn_error $? "Unknown argument to --with-aix-soname" "$LINENO" 5
7987 ;;
7988 esac
7989 lt_cv_with_aix_soname=$with_aix_soname
7990 else
7991 if ${lt_cv_with_aix_soname+:} false; then :
7992 $as_echo_n "(cached) " >&6
7993 else
7994 lt_cv_with_aix_soname=aix
7995 fi
7996
7997 with_aix_soname=$lt_cv_with_aix_soname
7998 fi
7999
8000 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_aix_soname" >&5
8001 $as_echo "$with_aix_soname" >&6; }
8002 if test aix != "$with_aix_soname"; then
8003 # For the AIX way of multilib, we name the shared archive member
8004 # based on the bitwidth used, traditionally 'shr.o' or 'shr_64.o',
8005 # and 'shr.imp' or 'shr_64.imp', respectively, for the Import File.
8006 # Even when GNU compilers ignore OBJECT_MODE but need '-maix64' flag,
8007 # the AIX toolchain works better with OBJECT_MODE set (default 32).
8008 if test 64 = "${OBJECT_MODE-32}"; then
8009 shared_archive_member_spec=shr_64
8010 else
8011 shared_archive_member_spec=shr
8012 fi
8013 fi
8014 ;;
8015 *)
8016 with_aix_soname=aix
8017 ;;
8018 esac
8019
8020
8021
8022
8023
8024
8025
8026
8027
8028
8029 # This can be used to rebuild libtool when needed
8030 LIBTOOL_DEPS=$ltmain
8031
8032 # Always use our own libtool.
8033 LIBTOOL='$(SHELL) $(top_builddir)/libtool'
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
8062
8063
8064 test -z "$LN_S" && LN_S="ln -s"
8065
8066
8067
8068
8069
8070
8071
8072
8073
8074
8075
8076
8077
8078
8079 if test -n "${ZSH_VERSION+set}"; then
8080 setopt NO_GLOB_SUBST
8081 fi
8082
8083 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for objdir" >&5
8084 $as_echo_n "checking for objdir... " >&6; }
8085 if ${lt_cv_objdir+:} false; then :
8086 $as_echo_n "(cached) " >&6
8087 else
8088 rm -f .libs 2>/dev/null
8089 mkdir .libs 2>/dev/null
8090 if test -d .libs; then
8091 lt_cv_objdir=.libs
8092 else
8093 # MS-DOS does not allow filenames that begin with a dot.
8094 lt_cv_objdir=_libs
8095 fi
8096 rmdir .libs 2>/dev/null
8097 fi
8098 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_objdir" >&5
8099 $as_echo "$lt_cv_objdir" >&6; }
8100 objdir=$lt_cv_objdir
8101
8102
8103
8104
8105
8106 cat >>confdefs.h <<_ACEOF
8107 #define LT_OBJDIR "$lt_cv_objdir/"
8108 _ACEOF
8109
8110
8111
8112
8113 case $host_os in
8114 aix3*)
8115 # AIX sometimes has problems with the GCC collect2 program. For some
8116 # reason, if we set the COLLECT_NAMES environment variable, the problems
8117 # vanish in a puff of smoke.
8118 if test set != "${COLLECT_NAMES+set}"; then
8119 COLLECT_NAMES=
8120 export COLLECT_NAMES
8121 fi
8122 ;;
8123 esac
8124
8125 # Global variables:
8126 ofile=libtool
8127 can_build_shared=yes
8128
8129 # All known linkers require a '.a' archive for static linking (except MSVC,
8130 # which needs '.lib').
8131 libext=a
8132
8133 with_gnu_ld=$lt_cv_prog_gnu_ld
8134
8135 old_CC=$CC
8136 old_CFLAGS=$CFLAGS
8137
8138 # Set sane defaults for various variables
8139 test -z "$CC" && CC=cc
8140 test -z "$LTCC" && LTCC=$CC
8141 test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS
8142 test -z "$LD" && LD=ld
8143 test -z "$ac_objext" && ac_objext=o
8144
8145 func_cc_basename $compiler
8146 cc_basename=$func_cc_basename_result
8147
8148
8149 # Only perform the check for file, if the check method requires it
8150 test -z "$MAGIC_CMD" && MAGIC_CMD=file
8151 case $deplibs_check_method in
8152 file_magic*)
8153 if test "$file_magic_cmd" = '$MAGIC_CMD'; then
8154 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ${ac_tool_prefix}file" >&5
8155 $as_echo_n "checking for ${ac_tool_prefix}file... " >&6; }
8156 if ${lt_cv_path_MAGIC_CMD+:} false; then :
8157 $as_echo_n "(cached) " >&6
8158 else
8159 case $MAGIC_CMD in
8160 [\\/*] | ?:[\\/]*)
8161 lt_cv_path_MAGIC_CMD=$MAGIC_CMD # Let the user override the test with a path.
8162 ;;
8163 *)
8164 lt_save_MAGIC_CMD=$MAGIC_CMD
8165 lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR
8166 ac_dummy="/usr/bin$PATH_SEPARATOR$PATH"
8167 for ac_dir in $ac_dummy; do
8168 IFS=$lt_save_ifs
8169 test -z "$ac_dir" && ac_dir=.
8170 if test -f "$ac_dir/${ac_tool_prefix}file"; then
8171 lt_cv_path_MAGIC_CMD=$ac_dir/"${ac_tool_prefix}file"
8172 if test -n "$file_magic_test_file"; then
8173 case $deplibs_check_method in
8174 "file_magic "*)
8175 file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
8176 MAGIC_CMD=$lt_cv_path_MAGIC_CMD
8177 if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
8178 $EGREP "$file_magic_regex" > /dev/null; then
8179 :
8180 else
8181 cat <<_LT_EOF 1>&2
8182
8183 *** Warning: the command libtool uses to detect shared libraries,
8184 *** $file_magic_cmd, produces output that libtool cannot recognize.
8185 *** The result is that libtool may fail to recognize shared libraries
8186 *** as such. This will affect the creation of libtool libraries that
8187 *** depend on shared libraries, but programs linked with such libtool
8188 *** libraries will work regardless of this problem. Nevertheless, you
8189 *** may want to report the problem to your system manager and/or to
8190 *** bug-libtool@gnu.org
8191
8192 _LT_EOF
8193 fi ;;
8194 esac
8195 fi
8196 break
8197 fi
8198 done
8199 IFS=$lt_save_ifs
8200 MAGIC_CMD=$lt_save_MAGIC_CMD
8201 ;;
8202 esac
8203 fi
8204
8205 MAGIC_CMD=$lt_cv_path_MAGIC_CMD
8206 if test -n "$MAGIC_CMD"; then
8207 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5
8208 $as_echo "$MAGIC_CMD" >&6; }
8209 else
8210 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
8211 $as_echo "no" >&6; }
8212 fi
8213
8214
8215
8216
8217
8218 if test -z "$lt_cv_path_MAGIC_CMD"; then
8219 if test -n "$ac_tool_prefix"; then
8220 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for file" >&5
8221 $as_echo_n "checking for file... " >&6; }
8222 if ${lt_cv_path_MAGIC_CMD+:} false; then :
8223 $as_echo_n "(cached) " >&6
8224 else
8225 case $MAGIC_CMD in
8226 [\\/*] | ?:[\\/]*)
8227 lt_cv_path_MAGIC_CMD=$MAGIC_CMD # Let the user override the test with a path.
8228 ;;
8229 *)
8230 lt_save_MAGIC_CMD=$MAGIC_CMD
8231 lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR
8232 ac_dummy="/usr/bin$PATH_SEPARATOR$PATH"
8233 for ac_dir in $ac_dummy; do
8234 IFS=$lt_save_ifs
8235 test -z "$ac_dir" && ac_dir=.
8236 if test -f "$ac_dir/file"; then
8237 lt_cv_path_MAGIC_CMD=$ac_dir/"file"
8238 if test -n "$file_magic_test_file"; then
8239 case $deplibs_check_method in
8240 "file_magic "*)
8241 file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"`
8242 MAGIC_CMD=$lt_cv_path_MAGIC_CMD
8243 if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null |
8244 $EGREP "$file_magic_regex" > /dev/null; then
8245 :
8246 else
8247 cat <<_LT_EOF 1>&2
8248
8249 *** Warning: the command libtool uses to detect shared libraries,
8250 *** $file_magic_cmd, produces output that libtool cannot recognize.
8251 *** The result is that libtool may fail to recognize shared libraries
8252 *** as such. This will affect the creation of libtool libraries that
8253 *** depend on shared libraries, but programs linked with such libtool
8254 *** libraries will work regardless of this problem. Nevertheless, you
8255 *** may want to report the problem to your system manager and/or to
8256 *** bug-libtool@gnu.org
8257
8258 _LT_EOF
8259 fi ;;
8260 esac
8261 fi
8262 break
8263 fi
8264 done
8265 IFS=$lt_save_ifs
8266 MAGIC_CMD=$lt_save_MAGIC_CMD
8267 ;;
8268 esac
8269 fi
8270
8271 MAGIC_CMD=$lt_cv_path_MAGIC_CMD
8272 if test -n "$MAGIC_CMD"; then
8273 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5
8274 $as_echo "$MAGIC_CMD" >&6; }
8275 else
8276 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
8277 $as_echo "no" >&6; }
8278 fi
8279
8280
8281 else
8282 MAGIC_CMD=:
8283 fi
8284 fi
8285
8286 fi
8287 ;;
8288 esac
8289
8290 # Use C for the default configuration in the libtool script
8291
8292 lt_save_CC=$CC
8293 ac_ext=c
8294 ac_cpp='$CPP $CPPFLAGS'
8295 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
8296 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
8297 ac_compiler_gnu=$ac_cv_c_compiler_gnu
8298
8299
8300 # Source file extension for C test sources.
8301 ac_ext=c
8302
8303 # Object file extension for compiled C test sources.
8304 objext=o
8305 objext=$objext
8306
8307 # Code to be used in simple compile tests
8308 lt_simple_compile_test_code="int some_variable = 0;"
8309
8310 # Code to be used in simple link tests
8311 lt_simple_link_test_code='int main(){return(0);}'
8312
8313
8314
8315
8316
8317
8318
8319 # If no C compiler was specified, use CC.
8320 LTCC=${LTCC-"$CC"}
8321
8322 # If no C compiler flags were specified, use CFLAGS.
8323 LTCFLAGS=${LTCFLAGS-"$CFLAGS"}
8324
8325 # Allow CC to be a program name with arguments.
8326 compiler=$CC
8327
8328 # Save the default compiler, since it gets overwritten when the other
8329 # tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP.
8330 compiler_DEFAULT=$CC
8331
8332 # save warnings/boilerplate of simple test code
8333 ac_outfile=conftest.$ac_objext
8334 echo "$lt_simple_compile_test_code" >conftest.$ac_ext
8335 eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
8336 _lt_compiler_boilerplate=`cat conftest.err`
8337 $RM conftest*
8338
8339 ac_outfile=conftest.$ac_objext
8340 echo "$lt_simple_link_test_code" >conftest.$ac_ext
8341 eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
8342 _lt_linker_boilerplate=`cat conftest.err`
8343 $RM -r conftest*
8344
8345
8346 if test -n "$compiler"; then
8347
8348 lt_prog_compiler_no_builtin_flag=
8349
8350 if test yes = "$GCC"; then
8351 case $cc_basename in
8352 nvcc*)
8353 lt_prog_compiler_no_builtin_flag=' -Xcompiler -fno-builtin' ;;
8354 *)
8355 lt_prog_compiler_no_builtin_flag=' -fno-builtin' ;;
8356 esac
8357
8358 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -fno-rtti -fno-exceptions" >&5
8359 $as_echo_n "checking if $compiler supports -fno-rtti -fno-exceptions... " >&6; }
8360 if ${lt_cv_prog_compiler_rtti_exceptions+:} false; then :
8361 $as_echo_n "(cached) " >&6
8362 else
8363 lt_cv_prog_compiler_rtti_exceptions=no
8364 ac_outfile=conftest.$ac_objext
8365 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
8366 lt_compiler_flag="-fno-rtti -fno-exceptions" ## exclude from sc_useless_quotes_in_assignment
8367 # Insert the option either (1) after the last *FLAGS variable, or
8368 # (2) before a word containing "conftest.", or (3) at the end.
8369 # Note that $ac_compile itself does not contain backslashes and begins
8370 # with a dollar sign (not a hyphen), so the echo should work correctly.
8371 # The option is referenced via a variable to avoid confusing sed.
8372 lt_compile=`echo "$ac_compile" | $SED \
8373 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
8374 -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
8375 -e 's:$: $lt_compiler_flag:'`
8376 (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5)
8377 (eval "$lt_compile" 2>conftest.err)
8378 ac_status=$?
8379 cat conftest.err >&5
8380 echo "$as_me:$LINENO: \$? = $ac_status" >&5
8381 if (exit $ac_status) && test -s "$ac_outfile"; then
8382 # The compiler can only warn and ignore the option if not recognized
8383 # So say no if there are warnings other than the usual output.
8384 $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp
8385 $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
8386 if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
8387 lt_cv_prog_compiler_rtti_exceptions=yes
8388 fi
8389 fi
8390 $RM conftest*
8391
8392 fi
8393 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_rtti_exceptions" >&5
8394 $as_echo "$lt_cv_prog_compiler_rtti_exceptions" >&6; }
8395
8396 if test yes = "$lt_cv_prog_compiler_rtti_exceptions"; then
8397 lt_prog_compiler_no_builtin_flag="$lt_prog_compiler_no_builtin_flag -fno-rtti -fno-exceptions"
8398 else
8399 :
8400 fi
8401
8402 fi
8403
8404
8405
8406
8407
8408
8409 lt_prog_compiler_wl=
8410 lt_prog_compiler_pic=
8411 lt_prog_compiler_static=
8412
8413
8414 if test yes = "$GCC"; then
8415 lt_prog_compiler_wl='-Wl,'
8416 lt_prog_compiler_static='-static'
8417
8418 case $host_os in
8419 aix*)
8420 # All AIX code is PIC.
8421 if test ia64 = "$host_cpu"; then
8422 # AIX 5 now supports IA64 processor
8423 lt_prog_compiler_static='-Bstatic'
8424 fi
8425 lt_prog_compiler_pic='-fPIC'
8426 ;;
8427
8428 amigaos*)
8429 case $host_cpu in
8430 powerpc)
8431 # see comment about AmigaOS4 .so support
8432 lt_prog_compiler_pic='-fPIC'
8433 ;;
8434 m68k)
8435 # FIXME: we need at least 68020 code to build shared libraries, but
8436 # adding the '-m68020' flag to GCC prevents building anything better,
8437 # like '-m68040'.
8438 lt_prog_compiler_pic='-m68020 -resident32 -malways-restore-a4'
8439 ;;
8440 esac
8441 ;;
8442
8443 beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
8444 # PIC is the default for these OSes.
8445 ;;
8446
8447 mingw* | cygwin* | pw32* | os2* | cegcc*)
8448 # This hack is so that the source file can tell whether it is being
8449 # built for inclusion in a dll (and should export symbols for example).
8450 # Although the cygwin gcc ignores -fPIC, still need this for old-style
8451 # (--disable-auto-import) libraries
8452 lt_prog_compiler_pic='-DDLL_EXPORT'
8453 case $host_os in
8454 os2*)
8455 lt_prog_compiler_static='$wl-static'
8456 ;;
8457 esac
8458 ;;
8459
8460 darwin* | rhapsody*)
8461 # PIC is the default on this platform
8462 # Common symbols not allowed in MH_DYLIB files
8463 lt_prog_compiler_pic='-fno-common'
8464 ;;
8465
8466 haiku*)
8467 # PIC is the default for Haiku.
8468 # The "-static" flag exists, but is broken.
8469 lt_prog_compiler_static=
8470 ;;
8471
8472 hpux*)
8473 # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
8474 # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag
8475 # sets the default TLS model and affects inlining.
8476 case $host_cpu in
8477 hppa*64*)
8478 # +Z the default
8479 ;;
8480 *)
8481 lt_prog_compiler_pic='-fPIC'
8482 ;;
8483 esac
8484 ;;
8485
8486 interix[3-9]*)
8487 # Interix 3.x gcc -fpic/-fPIC options generate broken code.
8488 # Instead, we relocate shared libraries at runtime.
8489 ;;
8490
8491 msdosdjgpp*)
8492 # Just because we use GCC doesn't mean we suddenly get shared libraries
8493 # on systems that don't support them.
8494 lt_prog_compiler_can_build_shared=no
8495 enable_shared=no
8496 ;;
8497
8498 *nto* | *qnx*)
8499 # QNX uses GNU C++, but need to define -shared option too, otherwise
8500 # it will coredump.
8501 lt_prog_compiler_pic='-fPIC -shared'
8502 ;;
8503
8504 sysv4*MP*)
8505 if test -d /usr/nec; then
8506 lt_prog_compiler_pic=-Kconform_pic
8507 fi
8508 ;;
8509
8510 *)
8511 lt_prog_compiler_pic='-fPIC'
8512 ;;
8513 esac
8514
8515 case $cc_basename in
8516 nvcc*) # Cuda Compiler Driver 2.2
8517 lt_prog_compiler_wl='-Xlinker '
8518 if test -n "$lt_prog_compiler_pic"; then
8519 lt_prog_compiler_pic="-Xcompiler $lt_prog_compiler_pic"
8520 fi
8521 ;;
8522 esac
8523 else
8524 # PORTME Check for flag to pass linker flags through the system compiler.
8525 case $host_os in
8526 aix*)
8527 lt_prog_compiler_wl='-Wl,'
8528 if test ia64 = "$host_cpu"; then
8529 # AIX 5 now supports IA64 processor
8530 lt_prog_compiler_static='-Bstatic'
8531 else
8532 lt_prog_compiler_static='-bnso -bI:/lib/syscalls.exp'
8533 fi
8534 ;;
8535
8536 darwin* | rhapsody*)
8537 # PIC is the default on this platform
8538 # Common symbols not allowed in MH_DYLIB files
8539 lt_prog_compiler_pic='-fno-common'
8540 case $cc_basename in
8541 nagfor*)
8542 # NAG Fortran compiler
8543 lt_prog_compiler_wl='-Wl,-Wl,,'
8544 lt_prog_compiler_pic='-PIC'
8545 lt_prog_compiler_static='-Bstatic'
8546 ;;
8547 esac
8548 ;;
8549
8550 mingw* | cygwin* | pw32* | os2* | cegcc*)
8551 # This hack is so that the source file can tell whether it is being
8552 # built for inclusion in a dll (and should export symbols for example).
8553 lt_prog_compiler_pic='-DDLL_EXPORT'
8554 case $host_os in
8555 os2*)
8556 lt_prog_compiler_static='$wl-static'
8557 ;;
8558 esac
8559 ;;
8560
8561 hpux9* | hpux10* | hpux11*)
8562 lt_prog_compiler_wl='-Wl,'
8563 # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but
8564 # not for PA HP-UX.
8565 case $host_cpu in
8566 hppa*64*|ia64*)
8567 # +Z the default
8568 ;;
8569 *)
8570 lt_prog_compiler_pic='+Z'
8571 ;;
8572 esac
8573 # Is there a better lt_prog_compiler_static that works with the bundled CC?
8574 lt_prog_compiler_static='$wl-a ${wl}archive'
8575 ;;
8576
8577 irix5* | irix6* | nonstopux*)
8578 lt_prog_compiler_wl='-Wl,'
8579 # PIC (with -KPIC) is the default.
8580 lt_prog_compiler_static='-non_shared'
8581 ;;
8582
8583 linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
8584 case $cc_basename in
8585 # old Intel for x86_64, which still supported -KPIC.
8586 ecc*)
8587 lt_prog_compiler_wl='-Wl,'
8588 lt_prog_compiler_pic='-KPIC'
8589 lt_prog_compiler_static='-static'
8590 ;;
8591 # icc used to be incompatible with GCC.
8592 # ICC 10 doesn't accept -KPIC any more.
8593 icc* | ifort*)
8594 lt_prog_compiler_wl='-Wl,'
8595 lt_prog_compiler_pic='-fPIC'
8596 lt_prog_compiler_static='-static'
8597 ;;
8598 # Lahey Fortran 8.1.
8599 lf95*)
8600 lt_prog_compiler_wl='-Wl,'
8601 lt_prog_compiler_pic='--shared'
8602 lt_prog_compiler_static='--static'
8603 ;;
8604 nagfor*)
8605 # NAG Fortran compiler
8606 lt_prog_compiler_wl='-Wl,-Wl,,'
8607 lt_prog_compiler_pic='-PIC'
8608 lt_prog_compiler_static='-Bstatic'
8609 ;;
8610 tcc*)
8611 # Fabrice Bellard et al's Tiny C Compiler
8612 lt_prog_compiler_wl='-Wl,'
8613 lt_prog_compiler_pic='-fPIC'
8614 lt_prog_compiler_static='-static'
8615 ;;
8616 pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*)
8617 # Portland Group compilers (*not* the Pentium gcc compiler,
8618 # which looks to be a dead project)
8619 lt_prog_compiler_wl='-Wl,'
8620 lt_prog_compiler_pic='-fpic'
8621 lt_prog_compiler_static='-Bstatic'
8622 ;;
8623 ccc*)
8624 lt_prog_compiler_wl='-Wl,'
8625 # All Alpha code is PIC.
8626 lt_prog_compiler_static='-non_shared'
8627 ;;
8628 xl* | bgxl* | bgf* | mpixl*)
8629 # IBM XL C 8.0/Fortran 10.1, 11.1 on PPC and BlueGene
8630 lt_prog_compiler_wl='-Wl,'
8631 lt_prog_compiler_pic='-qpic'
8632 lt_prog_compiler_static='-qstaticlink'
8633 ;;
8634 *)
8635 case `$CC -V 2>&1 | sed 5q` in
8636 *Sun\ Ceres\ Fortran* | *Sun*Fortran*\ [1-7].* | *Sun*Fortran*\ 8.[0-3]*)
8637 # Sun Fortran 8.3 passes all unrecognized flags to the linker
8638 lt_prog_compiler_pic='-KPIC'
8639 lt_prog_compiler_static='-Bstatic'
8640 lt_prog_compiler_wl=''
8641 ;;
8642 *Sun\ F* | *Sun*Fortran*)
8643 lt_prog_compiler_pic='-KPIC'
8644 lt_prog_compiler_static='-Bstatic'
8645 lt_prog_compiler_wl='-Qoption ld '
8646 ;;
8647 *Sun\ C*)
8648 # Sun C 5.9
8649 lt_prog_compiler_pic='-KPIC'
8650 lt_prog_compiler_static='-Bstatic'
8651 lt_prog_compiler_wl='-Wl,'
8652 ;;
8653 *Intel*\ [CF]*Compiler*)
8654 lt_prog_compiler_wl='-Wl,'
8655 lt_prog_compiler_pic='-fPIC'
8656 lt_prog_compiler_static='-static'
8657 ;;
8658 *Portland\ Group*)
8659 lt_prog_compiler_wl='-Wl,'
8660 lt_prog_compiler_pic='-fpic'
8661 lt_prog_compiler_static='-Bstatic'
8662 ;;
8663 esac
8664 ;;
8665 esac
8666 ;;
8667
8668 newsos6)
8669 lt_prog_compiler_pic='-KPIC'
8670 lt_prog_compiler_static='-Bstatic'
8671 ;;
8672
8673 *nto* | *qnx*)
8674 # QNX uses GNU C++, but need to define -shared option too, otherwise
8675 # it will coredump.
8676 lt_prog_compiler_pic='-fPIC -shared'
8677 ;;
8678
8679 osf3* | osf4* | osf5*)
8680 lt_prog_compiler_wl='-Wl,'
8681 # All OSF/1 code is PIC.
8682 lt_prog_compiler_static='-non_shared'
8683 ;;
8684
8685 rdos*)
8686 lt_prog_compiler_static='-non_shared'
8687 ;;
8688
8689 solaris*)
8690 lt_prog_compiler_pic='-KPIC'
8691 lt_prog_compiler_static='-Bstatic'
8692 case $cc_basename in
8693 f77* | f90* | f95* | sunf77* | sunf90* | sunf95*)
8694 lt_prog_compiler_wl='-Qoption ld ';;
8695 *)
8696 lt_prog_compiler_wl='-Wl,';;
8697 esac
8698 ;;
8699
8700 sunos4*)
8701 lt_prog_compiler_wl='-Qoption ld '
8702 lt_prog_compiler_pic='-PIC'
8703 lt_prog_compiler_static='-Bstatic'
8704 ;;
8705
8706 sysv4 | sysv4.2uw2* | sysv4.3*)
8707 lt_prog_compiler_wl='-Wl,'
8708 lt_prog_compiler_pic='-KPIC'
8709 lt_prog_compiler_static='-Bstatic'
8710 ;;
8711
8712 sysv4*MP*)
8713 if test -d /usr/nec; then
8714 lt_prog_compiler_pic='-Kconform_pic'
8715 lt_prog_compiler_static='-Bstatic'
8716 fi
8717 ;;
8718
8719 sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
8720 lt_prog_compiler_wl='-Wl,'
8721 lt_prog_compiler_pic='-KPIC'
8722 lt_prog_compiler_static='-Bstatic'
8723 ;;
8724
8725 unicos*)
8726 lt_prog_compiler_wl='-Wl,'
8727 lt_prog_compiler_can_build_shared=no
8728 ;;
8729
8730 uts4*)
8731 lt_prog_compiler_pic='-pic'
8732 lt_prog_compiler_static='-Bstatic'
8733 ;;
8734
8735 *)
8736 lt_prog_compiler_can_build_shared=no
8737 ;;
8738 esac
8739 fi
8740
8741 case $host_os in
8742 # For platforms that do not support PIC, -DPIC is meaningless:
8743 *djgpp*)
8744 lt_prog_compiler_pic=
8745 ;;
8746 *)
8747 lt_prog_compiler_pic="$lt_prog_compiler_pic -DPIC"
8748 ;;
8749 esac
8750
8751 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&5
8752 $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
8753 if ${lt_cv_prog_compiler_pic+:} false; then :
8754 $as_echo_n "(cached) " >&6
8755 else
8756 lt_cv_prog_compiler_pic=$lt_prog_compiler_pic
8757 fi
8758 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic" >&5
8759 $as_echo "$lt_cv_prog_compiler_pic" >&6; }
8760 lt_prog_compiler_pic=$lt_cv_prog_compiler_pic
8761
8762 #
8763 # Check to make sure the PIC flag actually works.
8764 #
8765 if test -n "$lt_prog_compiler_pic"; then
8766 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler PIC flag $lt_prog_compiler_pic works" >&5
8767 $as_echo_n "checking if $compiler PIC flag $lt_prog_compiler_pic works... " >&6; }
8768 if ${lt_cv_prog_compiler_pic_works+:} false; then :
8769 $as_echo_n "(cached) " >&6
8770 else
8771 lt_cv_prog_compiler_pic_works=no
8772 ac_outfile=conftest.$ac_objext
8773 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
8774 lt_compiler_flag="$lt_prog_compiler_pic -DPIC" ## exclude from sc_useless_quotes_in_assignment
8775 # Insert the option either (1) after the last *FLAGS variable, or
8776 # (2) before a word containing "conftest.", or (3) at the end.
8777 # Note that $ac_compile itself does not contain backslashes and begins
8778 # with a dollar sign (not a hyphen), so the echo should work correctly.
8779 # The option is referenced via a variable to avoid confusing sed.
8780 lt_compile=`echo "$ac_compile" | $SED \
8781 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
8782 -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
8783 -e 's:$: $lt_compiler_flag:'`
8784 (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5)
8785 (eval "$lt_compile" 2>conftest.err)
8786 ac_status=$?
8787 cat conftest.err >&5
8788 echo "$as_me:$LINENO: \$? = $ac_status" >&5
8789 if (exit $ac_status) && test -s "$ac_outfile"; then
8790 # The compiler can only warn and ignore the option if not recognized
8791 # So say no if there are warnings other than the usual output.
8792 $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp
8793 $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
8794 if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
8795 lt_cv_prog_compiler_pic_works=yes
8796 fi
8797 fi
8798 $RM conftest*
8799
8800 fi
8801 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic_works" >&5
8802 $as_echo "$lt_cv_prog_compiler_pic_works" >&6; }
8803
8804 if test yes = "$lt_cv_prog_compiler_pic_works"; then
8805 case $lt_prog_compiler_pic in
8806 "" | " "*) ;;
8807 *) lt_prog_compiler_pic=" $lt_prog_compiler_pic" ;;
8808 esac
8809 else
8810 lt_prog_compiler_pic=
8811 lt_prog_compiler_can_build_shared=no
8812 fi
8813
8814 fi
8815
8816
8817
8818
8819
8820
8821
8822
8823
8824
8825
8826 #
8827 # Check to make sure the static flag actually works.
8828 #
8829 wl=$lt_prog_compiler_wl eval lt_tmp_static_flag=\"$lt_prog_compiler_static\"
8830 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler static flag $lt_tmp_static_flag works" >&5
8831 $as_echo_n "checking if $compiler static flag $lt_tmp_static_flag works... " >&6; }
8832 if ${lt_cv_prog_compiler_static_works+:} false; then :
8833 $as_echo_n "(cached) " >&6
8834 else
8835 lt_cv_prog_compiler_static_works=no
8836 save_LDFLAGS=$LDFLAGS
8837 LDFLAGS="$LDFLAGS $lt_tmp_static_flag"
8838 echo "$lt_simple_link_test_code" > conftest.$ac_ext
8839 if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
8840 # The linker can only warn and ignore the option if not recognized
8841 # So say no if there are warnings
8842 if test -s conftest.err; then
8843 # Append any errors to the config.log.
8844 cat conftest.err 1>&5
8845 $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp
8846 $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
8847 if diff conftest.exp conftest.er2 >/dev/null; then
8848 lt_cv_prog_compiler_static_works=yes
8849 fi
8850 else
8851 lt_cv_prog_compiler_static_works=yes
8852 fi
8853 fi
8854 $RM -r conftest*
8855 LDFLAGS=$save_LDFLAGS
8856
8857 fi
8858 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_static_works" >&5
8859 $as_echo "$lt_cv_prog_compiler_static_works" >&6; }
8860
8861 if test yes = "$lt_cv_prog_compiler_static_works"; then
8862 :
8863 else
8864 lt_prog_compiler_static=
8865 fi
8866
8867
8868
8869
8870
8871
8872
8873 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5
8874 $as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; }
8875 if ${lt_cv_prog_compiler_c_o+:} false; then :
8876 $as_echo_n "(cached) " >&6
8877 else
8878 lt_cv_prog_compiler_c_o=no
8879 $RM -r conftest 2>/dev/null
8880 mkdir conftest
8881 cd conftest
8882 mkdir out
8883 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
8884
8885 lt_compiler_flag="-o out/conftest2.$ac_objext"
8886 # Insert the option either (1) after the last *FLAGS variable, or
8887 # (2) before a word containing "conftest.", or (3) at the end.
8888 # Note that $ac_compile itself does not contain backslashes and begins
8889 # with a dollar sign (not a hyphen), so the echo should work correctly.
8890 lt_compile=`echo "$ac_compile" | $SED \
8891 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
8892 -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
8893 -e 's:$: $lt_compiler_flag:'`
8894 (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5)
8895 (eval "$lt_compile" 2>out/conftest.err)
8896 ac_status=$?
8897 cat out/conftest.err >&5
8898 echo "$as_me:$LINENO: \$? = $ac_status" >&5
8899 if (exit $ac_status) && test -s out/conftest2.$ac_objext
8900 then
8901 # The compiler can only warn and ignore the option if not recognized
8902 # So say no if there are warnings
8903 $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp
8904 $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
8905 if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
8906 lt_cv_prog_compiler_c_o=yes
8907 fi
8908 fi
8909 chmod u+w . 2>&5
8910 $RM conftest*
8911 # SGI C++ compiler will create directory out/ii_files/ for
8912 # template instantiation
8913 test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files
8914 $RM out/* && rmdir out
8915 cd ..
8916 $RM -r conftest
8917 $RM conftest*
8918
8919 fi
8920 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o" >&5
8921 $as_echo "$lt_cv_prog_compiler_c_o" >&6; }
8922
8923
8924
8925
8926
8927
8928 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5
8929 $as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; }
8930 if ${lt_cv_prog_compiler_c_o+:} false; then :
8931 $as_echo_n "(cached) " >&6
8932 else
8933 lt_cv_prog_compiler_c_o=no
8934 $RM -r conftest 2>/dev/null
8935 mkdir conftest
8936 cd conftest
8937 mkdir out
8938 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
8939
8940 lt_compiler_flag="-o out/conftest2.$ac_objext"
8941 # Insert the option either (1) after the last *FLAGS variable, or
8942 # (2) before a word containing "conftest.", or (3) at the end.
8943 # Note that $ac_compile itself does not contain backslashes and begins
8944 # with a dollar sign (not a hyphen), so the echo should work correctly.
8945 lt_compile=`echo "$ac_compile" | $SED \
8946 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
8947 -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
8948 -e 's:$: $lt_compiler_flag:'`
8949 (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5)
8950 (eval "$lt_compile" 2>out/conftest.err)
8951 ac_status=$?
8952 cat out/conftest.err >&5
8953 echo "$as_me:$LINENO: \$? = $ac_status" >&5
8954 if (exit $ac_status) && test -s out/conftest2.$ac_objext
8955 then
8956 # The compiler can only warn and ignore the option if not recognized
8957 # So say no if there are warnings
8958 $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp
8959 $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
8960 if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
8961 lt_cv_prog_compiler_c_o=yes
8962 fi
8963 fi
8964 chmod u+w . 2>&5
8965 $RM conftest*
8966 # SGI C++ compiler will create directory out/ii_files/ for
8967 # template instantiation
8968 test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files
8969 $RM out/* && rmdir out
8970 cd ..
8971 $RM -r conftest
8972 $RM conftest*
8973
8974 fi
8975 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o" >&5
8976 $as_echo "$lt_cv_prog_compiler_c_o" >&6; }
8977
8978
8979
8980
8981 hard_links=nottested
8982 if test no = "$lt_cv_prog_compiler_c_o" && test no != "$need_locks"; then
8983 # do not overwrite the value of need_locks provided by the user
8984 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if we can lock with hard links" >&5
8985 $as_echo_n "checking if we can lock with hard links... " >&6; }
8986 hard_links=yes
8987 $RM conftest*
8988 ln conftest.a conftest.b 2>/dev/null && hard_links=no
8989 touch conftest.a
8990 ln conftest.a conftest.b 2>&5 || hard_links=no
8991 ln conftest.a conftest.b 2>/dev/null && hard_links=no
8992 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $hard_links" >&5
8993 $as_echo "$hard_links" >&6; }
8994 if test no = "$hard_links"; then
8995 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&5
8996 $as_echo "$as_me: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&2;}
8997 need_locks=warn
8998 fi
8999 else
9000 need_locks=no
9001 fi
9002
9003
9004
9005
9006
9007
9008 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&5
9009 $as_echo_n "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; }
9010
9011 runpath_var=
9012 allow_undefined_flag=
9013 always_export_symbols=no
9014 archive_cmds=
9015 archive_expsym_cmds=
9016 compiler_needs_object=no
9017 enable_shared_with_static_runtimes=no
9018 export_dynamic_flag_spec=
9019 export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
9020 hardcode_automatic=no
9021 hardcode_direct=no
9022 hardcode_direct_absolute=no
9023 hardcode_libdir_flag_spec=
9024 hardcode_libdir_separator=
9025 hardcode_minus_L=no
9026 hardcode_shlibpath_var=unsupported
9027 inherit_rpath=no
9028 link_all_deplibs=unknown
9029 module_cmds=
9030 module_expsym_cmds=
9031 old_archive_from_new_cmds=
9032 old_archive_from_expsyms_cmds=
9033 thread_safe_flag_spec=
9034 whole_archive_flag_spec=
9035 # include_expsyms should be a list of space-separated symbols to be *always*
9036 # included in the symbol list
9037 include_expsyms=
9038 # exclude_expsyms can be an extended regexp of symbols to exclude
9039 # it will be wrapped by ' (' and ')$', so one must not match beginning or
9040 # end of line. Example: 'a|bc|.*d.*' will exclude the symbols 'a' and 'bc',
9041 # as well as any symbol that contains 'd'.
9042 exclude_expsyms='_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'
9043 # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out
9044 # platforms (ab)use it in PIC code, but their linkers get confused if
9045 # the symbol is explicitly referenced. Since portable code cannot
9046 # rely on this symbol name, it's probably fine to never include it in
9047 # preloaded symbol tables.
9048 # Exclude shared library initialization/finalization symbols.
9049 extract_expsyms_cmds=
9050
9051 case $host_os in
9052 cygwin* | mingw* | pw32* | cegcc*)
9053 # FIXME: the MSVC++ port hasn't been tested in a loooong time
9054 # When not using gcc, we currently assume that we are using
9055 # Microsoft Visual C++.
9056 if test yes != "$GCC"; then
9057 with_gnu_ld=no
9058 fi
9059 ;;
9060 interix*)
9061 # we just hope/assume this is gcc and not c89 (= MSVC++)
9062 with_gnu_ld=yes
9063 ;;
9064 openbsd* | bitrig*)
9065 with_gnu_ld=no
9066 ;;
9067 linux* | k*bsd*-gnu | gnu*)
9068 link_all_deplibs=no
9069 ;;
9070 esac
9071
9072 ld_shlibs=yes
9073
9074 # On some targets, GNU ld is compatible enough with the native linker
9075 # that we're better off using the native interface for both.
9076 lt_use_gnu_ld_interface=no
9077 if test yes = "$with_gnu_ld"; then
9078 case $host_os in
9079 aix*)
9080 # The AIX port of GNU ld has always aspired to compatibility
9081 # with the native linker. However, as the warning in the GNU ld
9082 # block says, versions before 2.19.5* couldn't really create working
9083 # shared libraries, regardless of the interface used.
9084 case `$LD -v 2>&1` in
9085 *\ \(GNU\ Binutils\)\ 2.19.5*) ;;
9086 *\ \(GNU\ Binutils\)\ 2.[2-9]*) ;;
9087 *\ \(GNU\ Binutils\)\ [3-9]*) ;;
9088 *)
9089 lt_use_gnu_ld_interface=yes
9090 ;;
9091 esac
9092 ;;
9093 *)
9094 lt_use_gnu_ld_interface=yes
9095 ;;
9096 esac
9097 fi
9098
9099 if test yes = "$lt_use_gnu_ld_interface"; then
9100 # If archive_cmds runs LD, not CC, wlarc should be empty
9101 wlarc='$wl'
9102
9103 # Set some defaults for GNU ld with shared library support. These
9104 # are reset later if shared libraries are not supported. Putting them
9105 # here allows them to be overridden if necessary.
9106 runpath_var=LD_RUN_PATH
9107 hardcode_libdir_flag_spec='$wl-rpath $wl$libdir'
9108 export_dynamic_flag_spec='$wl--export-dynamic'
9109 # ancient GNU ld didn't support --whole-archive et. al.
9110 if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then
9111 whole_archive_flag_spec=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive'
9112 else
9113 whole_archive_flag_spec=
9114 fi
9115 supports_anon_versioning=no
9116 case `$LD -v | $SED -e 's/(^)\+)\s\+//' 2>&1` in
9117 *GNU\ gold*) supports_anon_versioning=yes ;;
9118 *\ [01].* | *\ 2.[0-9].* | *\ 2.10.*) ;; # catch versions < 2.11
9119 *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ...
9120 *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ...
9121 *\ 2.11.*) ;; # other 2.11 versions
9122 *) supports_anon_versioning=yes ;;
9123 esac
9124
9125 # See if GNU ld supports shared libraries.
9126 case $host_os in
9127 aix[3-9]*)
9128 # On AIX/PPC, the GNU linker is very broken
9129 if test ia64 != "$host_cpu"; then
9130 ld_shlibs=no
9131 cat <<_LT_EOF 1>&2
9132
9133 *** Warning: the GNU linker, at least up to release 2.19, is reported
9134 *** to be unable to reliably create shared libraries on AIX.
9135 *** Therefore, libtool is disabling shared libraries support. If you
9136 *** really care for shared libraries, you may want to install binutils
9137 *** 2.20 or above, or modify your PATH so that a non-GNU linker is found.
9138 *** You will then need to restart the configuration process.
9139
9140 _LT_EOF
9141 fi
9142 ;;
9143
9144 amigaos*)
9145 case $host_cpu in
9146 powerpc)
9147 # see comment about AmigaOS4 .so support
9148 archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
9149 archive_expsym_cmds=''
9150 ;;
9151 m68k)
9152 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)'
9153 hardcode_libdir_flag_spec='-L$libdir'
9154 hardcode_minus_L=yes
9155 ;;
9156 esac
9157 ;;
9158
9159 beos*)
9160 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
9161 allow_undefined_flag=unsupported
9162 # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
9163 # support --undefined. This deserves some investigation. FIXME
9164 archive_cmds='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
9165 else
9166 ld_shlibs=no
9167 fi
9168 ;;
9169
9170 cygwin* | mingw* | pw32* | cegcc*)
9171 # _LT_TAGVAR(hardcode_libdir_flag_spec, ) is actually meaningless,
9172 # as there is no search path for DLLs.
9173 hardcode_libdir_flag_spec='-L$libdir'
9174 export_dynamic_flag_spec='$wl--export-all-symbols'
9175 allow_undefined_flag=unsupported
9176 always_export_symbols=no
9177 enable_shared_with_static_runtimes=yes
9178 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'
9179 exclude_expsyms='[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname'
9180
9181 if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
9182 archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
9183 # If the export-symbols file already is a .def file, use it as
9184 # is; otherwise, prepend EXPORTS...
9185 archive_expsym_cmds='if test DEF = "`$SED -n -e '\''s/^[ ]*//'\'' -e '\''/^\(;.*\)*$/d'\'' -e '\''s/^\(EXPORTS\|LIBRARY\)\([ ].*\)*$/DEF/p'\'' -e q $export_symbols`" ; then
9186 cp $export_symbols $output_objdir/$soname.def;
9187 else
9188 echo EXPORTS > $output_objdir/$soname.def;
9189 cat $export_symbols >> $output_objdir/$soname.def;
9190 fi~
9191 $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib'
9192 else
9193 ld_shlibs=no
9194 fi
9195 ;;
9196
9197 haiku*)
9198 archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
9199 link_all_deplibs=yes
9200 ;;
9201
9202 os2*)
9203 hardcode_libdir_flag_spec='-L$libdir'
9204 hardcode_minus_L=yes
9205 allow_undefined_flag=unsupported
9206 shrext_cmds=.dll
9207 archive_cmds='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
9208 $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
9209 $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
9210 $ECHO EXPORTS >> $output_objdir/$libname.def~
9211 emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~
9212 $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
9213 emximp -o $lib $output_objdir/$libname.def'
9214 archive_expsym_cmds='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
9215 $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
9216 $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
9217 $ECHO EXPORTS >> $output_objdir/$libname.def~
9218 prefix_cmds="$SED"~
9219 if test EXPORTS = "`$SED 1q $export_symbols`"; then
9220 prefix_cmds="$prefix_cmds -e 1d";
9221 fi~
9222 prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~
9223 cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~
9224 $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
9225 emximp -o $lib $output_objdir/$libname.def'
9226 old_archive_From_new_cmds='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'
9227 enable_shared_with_static_runtimes=yes
9228 ;;
9229
9230 interix[3-9]*)
9231 hardcode_direct=no
9232 hardcode_shlibpath_var=no
9233 hardcode_libdir_flag_spec='$wl-rpath,$libdir'
9234 export_dynamic_flag_spec='$wl-E'
9235 # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
9236 # Instead, shared libraries are loaded at an image base (0x10000000 by
9237 # default) and relocated if they conflict, which is a slow very memory
9238 # consuming and fragmenting process. To avoid this, we pick a random,
9239 # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
9240 # time. Moving up from 0x10000000 also allows more sbrk(2) space.
9241 archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib'
9242 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'
9243 ;;
9244
9245 gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu)
9246 tmp_diet=no
9247 if test linux-dietlibc = "$host_os"; then
9248 case $cc_basename in
9249 diet\ *) tmp_diet=yes;; # linux-dietlibc with static linking (!diet-dyn)
9250 esac
9251 fi
9252 if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \
9253 && test no = "$tmp_diet"
9254 then
9255 tmp_addflag=' $pic_flag'
9256 tmp_sharedflag='-shared'
9257 case $cc_basename,$host_cpu in
9258 pgcc*) # Portland Group C compiler
9259 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'
9260 tmp_addflag=' $pic_flag'
9261 ;;
9262 pgf77* | pgf90* | pgf95* | pgfortran*)
9263 # Portland Group f77 and f90 compilers
9264 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'
9265 tmp_addflag=' $pic_flag -Mnomain' ;;
9266 ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64
9267 tmp_addflag=' -i_dynamic' ;;
9268 efc*,ia64* | ifort*,ia64*) # Intel Fortran compiler on ia64
9269 tmp_addflag=' -i_dynamic -nofor_main' ;;
9270 ifc* | ifort*) # Intel Fortran compiler
9271 tmp_addflag=' -nofor_main' ;;
9272 lf95*) # Lahey Fortran 8.1
9273 whole_archive_flag_spec=
9274 tmp_sharedflag='--shared' ;;
9275 nagfor*) # NAGFOR 5.3
9276 tmp_sharedflag='-Wl,-shared' ;;
9277 xl[cC]* | bgxl[cC]* | mpixl[cC]*) # IBM XL C 8.0 on PPC (deal with xlf below)
9278 tmp_sharedflag='-qmkshrobj'
9279 tmp_addflag= ;;
9280 nvcc*) # Cuda Compiler Driver 2.2
9281 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'
9282 compiler_needs_object=yes
9283 ;;
9284 esac
9285 case `$CC -V 2>&1 | sed 5q` in
9286 *Sun\ C*) # Sun C 5.9
9287 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'
9288 compiler_needs_object=yes
9289 tmp_sharedflag='-G' ;;
9290 *Sun\ F*) # Sun Fortran 8.3
9291 tmp_sharedflag='-G' ;;
9292 esac
9293 archive_cmds='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
9294
9295 if test yes = "$supports_anon_versioning"; then
9296 archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~
9297 cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
9298 echo "local: *; };" >> $output_objdir/$libname.ver~
9299 $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib'
9300 fi
9301
9302 case $cc_basename in
9303 tcc*)
9304 export_dynamic_flag_spec='-rdynamic'
9305 ;;
9306 xlf* | bgf* | bgxlf* | mpixlf*)
9307 # IBM XL Fortran 10.1 on PPC cannot create shared libs itself
9308 whole_archive_flag_spec='--whole-archive$convenience --no-whole-archive'
9309 hardcode_libdir_flag_spec='$wl-rpath $wl$libdir'
9310 archive_cmds='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib'
9311 if test yes = "$supports_anon_versioning"; then
9312 archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~
9313 cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
9314 echo "local: *; };" >> $output_objdir/$libname.ver~
9315 $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib'
9316 fi
9317 ;;
9318 esac
9319 else
9320 ld_shlibs=no
9321 fi
9322 ;;
9323
9324 netbsd* | netbsdelf*-gnu)
9325 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
9326 archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib'
9327 wlarc=
9328 else
9329 archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
9330 archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
9331 fi
9332 ;;
9333
9334 solaris*)
9335 if $LD -v 2>&1 | $GREP 'BFD 2\.8' > /dev/null; then
9336 ld_shlibs=no
9337 cat <<_LT_EOF 1>&2
9338
9339 *** Warning: The releases 2.8.* of the GNU linker cannot reliably
9340 *** create shared libraries on Solaris systems. Therefore, libtool
9341 *** is disabling shared libraries support. We urge you to upgrade GNU
9342 *** binutils to release 2.9.1 or newer. Another option is to modify
9343 *** your PATH or compiler configuration so that the native linker is
9344 *** used, and then restart.
9345
9346 _LT_EOF
9347 elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
9348 archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
9349 archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
9350 else
9351 ld_shlibs=no
9352 fi
9353 ;;
9354
9355 sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*)
9356 case `$LD -v 2>&1` in
9357 *\ [01].* | *\ 2.[0-9].* | *\ 2.1[0-5].*)
9358 ld_shlibs=no
9359 cat <<_LT_EOF 1>&2
9360
9361 *** Warning: Releases of the GNU linker prior to 2.16.91.0.3 cannot
9362 *** reliably create shared libraries on SCO systems. Therefore, libtool
9363 *** is disabling shared libraries support. We urge you to upgrade GNU
9364 *** binutils to release 2.16.91.0.3 or newer. Another option is to modify
9365 *** your PATH or compiler configuration so that the native linker is
9366 *** used, and then restart.
9367
9368 _LT_EOF
9369 ;;
9370 *)
9371 # For security reasons, it is highly recommended that you always
9372 # use absolute paths for naming shared libraries, and exclude the
9373 # DT_RUNPATH tag from executables and libraries. But doing so
9374 # requires that you compile everything twice, which is a pain.
9375 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
9376 hardcode_libdir_flag_spec='$wl-rpath $wl$libdir'
9377 archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
9378 archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
9379 else
9380 ld_shlibs=no
9381 fi
9382 ;;
9383 esac
9384 ;;
9385
9386 sunos4*)
9387 archive_cmds='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags'
9388 wlarc=
9389 hardcode_direct=yes
9390 hardcode_shlibpath_var=no
9391 ;;
9392
9393 *)
9394 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
9395 archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
9396 archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib'
9397 else
9398 ld_shlibs=no
9399 fi
9400 ;;
9401 esac
9402
9403 if test no = "$ld_shlibs"; then
9404 runpath_var=
9405 hardcode_libdir_flag_spec=
9406 export_dynamic_flag_spec=
9407 whole_archive_flag_spec=
9408 fi
9409 else
9410 # PORTME fill in a description of your system's linker (not GNU ld)
9411 case $host_os in
9412 aix3*)
9413 allow_undefined_flag=unsupported
9414 always_export_symbols=yes
9415 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'
9416 # Note: this linker hardcodes the directories in LIBPATH if there
9417 # are no directories specified by -L.
9418 hardcode_minus_L=yes
9419 if test yes = "$GCC" && test -z "$lt_prog_compiler_static"; then
9420 # Neither direct hardcoding nor static linking is supported with a
9421 # broken collect2.
9422 hardcode_direct=unsupported
9423 fi
9424 ;;
9425
9426 aix[4-9]*)
9427 if test ia64 = "$host_cpu"; then
9428 # On IA64, the linker does run time linking by default, so we don't
9429 # have to do anything special.
9430 aix_use_runtimelinking=no
9431 exp_sym_flag='-Bexport'
9432 no_entry_flag=
9433 else
9434 # If we're using GNU nm, then we don't want the "-C" option.
9435 # -C means demangle to GNU nm, but means don't demangle to AIX nm.
9436 # Without the "-l" option, or with the "-B" option, AIX nm treats
9437 # weak defined symbols like other global defined symbols, whereas
9438 # GNU nm marks them as "W".
9439 # While the 'weak' keyword is ignored in the Export File, we need
9440 # it in the Import File for the 'aix-soname' feature, so we have
9441 # to replace the "-B" option with "-P" for AIX nm.
9442 if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
9443 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'
9444 else
9445 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'
9446 fi
9447 aix_use_runtimelinking=no
9448
9449 # Test if we are trying to use run time linking or normal
9450 # AIX style linking. If -brtl is somewhere in LDFLAGS, we
9451 # have runtime linking enabled, and use it for executables.
9452 # For shared libraries, we enable/disable runtime linking
9453 # depending on the kind of the shared library created -
9454 # when "with_aix_soname,aix_use_runtimelinking" is:
9455 # "aix,no" lib.a(lib.so.V) shared, rtl:no, for executables
9456 # "aix,yes" lib.so shared, rtl:yes, for executables
9457 # lib.a static archive
9458 # "both,no" lib.so.V(shr.o) shared, rtl:yes
9459 # lib.a(lib.so.V) shared, rtl:no, for executables
9460 # "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables
9461 # lib.a(lib.so.V) shared, rtl:no
9462 # "svr4,*" lib.so.V(shr.o) shared, rtl:yes, for executables
9463 # lib.a static archive
9464 case $host_os in aix4.[23]|aix4.[23].*|aix[5-9]*)
9465 for ld_flag in $LDFLAGS; do
9466 if (test x-brtl = "x$ld_flag" || test x-Wl,-brtl = "x$ld_flag"); then
9467 aix_use_runtimelinking=yes
9468 break
9469 fi
9470 done
9471 if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then
9472 # With aix-soname=svr4, we create the lib.so.V shared archives only,
9473 # so we don't have lib.a shared libs to link our executables.
9474 # We have to force runtime linking in this case.
9475 aix_use_runtimelinking=yes
9476 LDFLAGS="$LDFLAGS -Wl,-brtl"
9477 fi
9478 ;;
9479 esac
9480
9481 exp_sym_flag='-bexport'
9482 no_entry_flag='-bnoentry'
9483 fi
9484
9485 # When large executables or shared objects are built, AIX ld can
9486 # have problems creating the table of contents. If linking a library
9487 # or program results in "error TOC overflow" add -mminimal-toc to
9488 # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
9489 # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
9490
9491 archive_cmds=''
9492 hardcode_direct=yes
9493 hardcode_direct_absolute=yes
9494 hardcode_libdir_separator=':'
9495 link_all_deplibs=yes
9496 file_list_spec='$wl-f,'
9497 case $with_aix_soname,$aix_use_runtimelinking in
9498 aix,*) ;; # traditional, no import file
9499 svr4,* | *,yes) # use import file
9500 # The Import File defines what to hardcode.
9501 hardcode_direct=no
9502 hardcode_direct_absolute=no
9503 ;;
9504 esac
9505
9506 if test yes = "$GCC"; then
9507 case $host_os in aix4.[012]|aix4.[012].*)
9508 # We only want to do this on AIX 4.2 and lower, the check
9509 # below for broken collect2 doesn't work under 4.3+
9510 collect2name=`$CC -print-prog-name=collect2`
9511 if test -f "$collect2name" &&
9512 strings "$collect2name" | $GREP resolve_lib_name >/dev/null
9513 then
9514 # We have reworked collect2
9515 :
9516 else
9517 # We have old collect2
9518 hardcode_direct=unsupported
9519 # It fails to find uninstalled libraries when the uninstalled
9520 # path is not listed in the libpath. Setting hardcode_minus_L
9521 # to unsupported forces relinking
9522 hardcode_minus_L=yes
9523 hardcode_libdir_flag_spec='-L$libdir'
9524 hardcode_libdir_separator=
9525 fi
9526 ;;
9527 esac
9528 shared_flag='-shared'
9529 if test yes = "$aix_use_runtimelinking"; then
9530 shared_flag="$shared_flag "'$wl-G'
9531 fi
9532 # Need to ensure runtime linking is disabled for the traditional
9533 # shared library, or the linker may eventually find shared libraries
9534 # /with/ Import File - we do not want to mix them.
9535 shared_flag_aix='-shared'
9536 shared_flag_svr4='-shared $wl-G'
9537 else
9538 # not using gcc
9539 if test ia64 = "$host_cpu"; then
9540 # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
9541 # chokes on -Wl,-G. The following line is correct:
9542 shared_flag='-G'
9543 else
9544 if test yes = "$aix_use_runtimelinking"; then
9545 shared_flag='$wl-G'
9546 else
9547 shared_flag='$wl-bM:SRE'
9548 fi
9549 shared_flag_aix='$wl-bM:SRE'
9550 shared_flag_svr4='$wl-G'
9551 fi
9552 fi
9553
9554 export_dynamic_flag_spec='$wl-bexpall'
9555 # It seems that -bexpall does not export symbols beginning with
9556 # underscore (_), so it is better to generate a list of symbols to export.
9557 always_export_symbols=yes
9558 if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then
9559 # Warning - without using the other runtime loading flags (-brtl),
9560 # -berok will link without error, but may produce a broken library.
9561 allow_undefined_flag='-berok'
9562 # Determine the default libpath from the value encoded in an
9563 # empty executable.
9564 if test set = "${lt_cv_aix_libpath+set}"; then
9565 aix_libpath=$lt_cv_aix_libpath
9566 else
9567 if ${lt_cv_aix_libpath_+:} false; then :
9568 $as_echo_n "(cached) " >&6
9569 else
9570 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
9571 /* end confdefs.h. */
9572
9573 int
9574 main ()
9575 {
9576
9577 ;
9578 return 0;
9579 }
9580 _ACEOF
9581 if ac_fn_c_try_link "$LINENO"; then :
9582
9583 lt_aix_libpath_sed='
9584 /Import File Strings/,/^$/ {
9585 /^0/ {
9586 s/^0 *\([^ ]*\) *$/\1/
9587 p
9588 }
9589 }'
9590 lt_cv_aix_libpath_=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
9591 # Check for a 64-bit object if we didn't find anything.
9592 if test -z "$lt_cv_aix_libpath_"; then
9593 lt_cv_aix_libpath_=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
9594 fi
9595 fi
9596 rm -f core conftest.err conftest.$ac_objext \
9597 conftest$ac_exeext conftest.$ac_ext
9598 if test -z "$lt_cv_aix_libpath_"; then
9599 lt_cv_aix_libpath_=/usr/lib:/lib
9600 fi
9601
9602 fi
9603
9604 aix_libpath=$lt_cv_aix_libpath_
9605 fi
9606
9607 hardcode_libdir_flag_spec='$wl-blibpath:$libdir:'"$aix_libpath"
9608 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
9609 else
9610 if test ia64 = "$host_cpu"; then
9611 hardcode_libdir_flag_spec='$wl-R $libdir:/usr/lib:/lib'
9612 allow_undefined_flag="-z nodefs"
9613 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"
9614 else
9615 # Determine the default libpath from the value encoded in an
9616 # empty executable.
9617 if test set = "${lt_cv_aix_libpath+set}"; then
9618 aix_libpath=$lt_cv_aix_libpath
9619 else
9620 if ${lt_cv_aix_libpath_+:} false; then :
9621 $as_echo_n "(cached) " >&6
9622 else
9623 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
9624 /* end confdefs.h. */
9625
9626 int
9627 main ()
9628 {
9629
9630 ;
9631 return 0;
9632 }
9633 _ACEOF
9634 if ac_fn_c_try_link "$LINENO"; then :
9635
9636 lt_aix_libpath_sed='
9637 /Import File Strings/,/^$/ {
9638 /^0/ {
9639 s/^0 *\([^ ]*\) *$/\1/
9640 p
9641 }
9642 }'
9643 lt_cv_aix_libpath_=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
9644 # Check for a 64-bit object if we didn't find anything.
9645 if test -z "$lt_cv_aix_libpath_"; then
9646 lt_cv_aix_libpath_=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
9647 fi
9648 fi
9649 rm -f core conftest.err conftest.$ac_objext \
9650 conftest$ac_exeext conftest.$ac_ext
9651 if test -z "$lt_cv_aix_libpath_"; then
9652 lt_cv_aix_libpath_=/usr/lib:/lib
9653 fi
9654
9655 fi
9656
9657 aix_libpath=$lt_cv_aix_libpath_
9658 fi
9659
9660 hardcode_libdir_flag_spec='$wl-blibpath:$libdir:'"$aix_libpath"
9661 # Warning - without using the other run time loading flags,
9662 # -berok will link without error, but may produce a broken library.
9663 no_undefined_flag=' $wl-bernotok'
9664 allow_undefined_flag=' $wl-berok'
9665 if test yes = "$with_gnu_ld"; then
9666 # We only use this code for GNU lds that support --whole-archive.
9667 whole_archive_flag_spec='$wl--whole-archive$convenience $wl--no-whole-archive'
9668 else
9669 # Exported symbols can be pulled into shared objects from archives
9670 whole_archive_flag_spec='$convenience'
9671 fi
9672 archive_cmds_need_lc=yes
9673 archive_expsym_cmds='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d'
9674 # -brtl affects multiple linker settings, -berok does not and is overridden later
9675 compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([, ]\\)%-berok\\1%g"`'
9676 if test svr4 != "$with_aix_soname"; then
9677 # This is similar to how AIX traditionally builds its shared libraries.
9678 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'
9679 fi
9680 if test aix != "$with_aix_soname"; then
9681 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'
9682 else
9683 # used by -dlpreopen to get the symbols
9684 archive_expsym_cmds="$archive_expsym_cmds"'~$MV $output_objdir/$realname.d/$soname $output_objdir'
9685 fi
9686 archive_expsym_cmds="$archive_expsym_cmds"'~$RM -r $output_objdir/$realname.d'
9687 fi
9688 fi
9689 ;;
9690
9691 amigaos*)
9692 case $host_cpu in
9693 powerpc)
9694 # see comment about AmigaOS4 .so support
9695 archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
9696 archive_expsym_cmds=''
9697 ;;
9698 m68k)
9699 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)'
9700 hardcode_libdir_flag_spec='-L$libdir'
9701 hardcode_minus_L=yes
9702 ;;
9703 esac
9704 ;;
9705
9706 bsdi[45]*)
9707 export_dynamic_flag_spec=-rdynamic
9708 ;;
9709
9710 cygwin* | mingw* | pw32* | cegcc*)
9711 # When not using gcc, we currently assume that we are using
9712 # Microsoft Visual C++.
9713 # hardcode_libdir_flag_spec is actually meaningless, as there is
9714 # no search path for DLLs.
9715 case $cc_basename in
9716 cl*)
9717 # Native MSVC
9718 hardcode_libdir_flag_spec=' '
9719 allow_undefined_flag=unsupported
9720 always_export_symbols=yes
9721 file_list_spec='@'
9722 # Tell ltmain to make .lib files, not .a files.
9723 libext=lib
9724 # Tell ltmain to make .dll files, not .so files.
9725 shrext_cmds=.dll
9726 # FIXME: Setting linknames here is a bad hack.
9727 archive_cmds='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames='
9728 archive_expsym_cmds='if test DEF = "`$SED -n -e '\''s/^[ ]*//'\'' -e '\''/^\(;.*\)*$/d'\'' -e '\''s/^\(EXPORTS\|LIBRARY\)\([ ].*\)*$/DEF/p'\'' -e q $export_symbols`" ; then
9729 cp "$export_symbols" "$output_objdir/$soname.def";
9730 echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp";
9731 else
9732 $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp;
9733 fi~
9734 $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
9735 linknames='
9736 # The linker will not automatically build a static lib if we build a DLL.
9737 # _LT_TAGVAR(old_archive_from_new_cmds, )='true'
9738 enable_shared_with_static_runtimes=yes
9739 exclude_expsyms='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*'
9740 export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[BCDGRS][ ]/s/.*[ ]\([^ ]*\)/\1,DATA/'\'' | $SED -e '\''/^[AITW][ ]/s/.*[ ]//'\'' | sort | uniq > $export_symbols'
9741 # Don't use ranlib
9742 old_postinstall_cmds='chmod 644 $oldlib'
9743 postlink_cmds='lt_outputfile="@OUTPUT@"~
9744 lt_tool_outputfile="@TOOL_OUTPUT@"~
9745 case $lt_outputfile in
9746 *.exe|*.EXE) ;;
9747 *)
9748 lt_outputfile=$lt_outputfile.exe
9749 lt_tool_outputfile=$lt_tool_outputfile.exe
9750 ;;
9751 esac~
9752 if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then
9753 $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
9754 $RM "$lt_outputfile.manifest";
9755 fi'
9756 ;;
9757 *)
9758 # Assume MSVC wrapper
9759 hardcode_libdir_flag_spec=' '
9760 allow_undefined_flag=unsupported
9761 # Tell ltmain to make .lib files, not .a files.
9762 libext=lib
9763 # Tell ltmain to make .dll files, not .so files.
9764 shrext_cmds=.dll
9765 # FIXME: Setting linknames here is a bad hack.
9766 archive_cmds='$CC -o $lib $libobjs $compiler_flags `func_echo_all "$deplibs" | $SED '\''s/ -lc$//'\''` -link -dll~linknames='
9767 # The linker will automatically build a .lib file if we build a DLL.
9768 old_archive_from_new_cmds='true'
9769 # FIXME: Should let the user specify the lib program.
9770 old_archive_cmds='lib -OUT:$oldlib$oldobjs$old_deplibs'
9771 enable_shared_with_static_runtimes=yes
9772 ;;
9773 esac
9774 ;;
9775
9776 darwin* | rhapsody*)
9777
9778
9779 archive_cmds_need_lc=no
9780 hardcode_direct=no
9781 hardcode_automatic=yes
9782 hardcode_shlibpath_var=unsupported
9783 if test yes = "$lt_cv_ld_force_load"; then
9784 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\"`'
9785
9786 else
9787 whole_archive_flag_spec=''
9788 fi
9789 link_all_deplibs=yes
9790 allow_undefined_flag=$_lt_dar_allow_undefined
9791 case $cc_basename in
9792 ifort*|nagfor*) _lt_dar_can_shared=yes ;;
9793 *) _lt_dar_can_shared=$GCC ;;
9794 esac
9795 if test yes = "$_lt_dar_can_shared"; then
9796 output_verbose_link_cmd=func_echo_all
9797 archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dsymutil"
9798 module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dsymutil"
9799 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"
9800 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"
9801
9802 else
9803 ld_shlibs=no
9804 fi
9805
9806 ;;
9807
9808 dgux*)
9809 archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
9810 hardcode_libdir_flag_spec='-L$libdir'
9811 hardcode_shlibpath_var=no
9812 ;;
9813
9814 # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor
9815 # support. Future versions do this automatically, but an explicit c++rt0.o
9816 # does not break anything, and helps significantly (at the cost of a little
9817 # extra space).
9818 freebsd2.2*)
9819 archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o'
9820 hardcode_libdir_flag_spec='-R$libdir'
9821 hardcode_direct=yes
9822 hardcode_shlibpath_var=no
9823 ;;
9824
9825 # Unfortunately, older versions of FreeBSD 2 do not have this feature.
9826 freebsd2.*)
9827 archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags'
9828 hardcode_direct=yes
9829 hardcode_minus_L=yes
9830 hardcode_shlibpath_var=no
9831 ;;
9832
9833 # FreeBSD 3 and greater uses gcc -shared to do shared libraries.
9834 freebsd* | dragonfly*)
9835 archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
9836 hardcode_libdir_flag_spec='-R$libdir'
9837 hardcode_direct=yes
9838 hardcode_shlibpath_var=no
9839 ;;
9840
9841 hpux9*)
9842 if test yes = "$GCC"; then
9843 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'
9844 else
9845 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'
9846 fi
9847 hardcode_libdir_flag_spec='$wl+b $wl$libdir'
9848 hardcode_libdir_separator=:
9849 hardcode_direct=yes
9850
9851 # hardcode_minus_L: Not really in the search PATH,
9852 # but as the default location of the library.
9853 hardcode_minus_L=yes
9854 export_dynamic_flag_spec='$wl-E'
9855 ;;
9856
9857 hpux10*)
9858 if test yes,no = "$GCC,$with_gnu_ld"; then
9859 archive_cmds='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
9860 else
9861 archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
9862 fi
9863 if test no = "$with_gnu_ld"; then
9864 hardcode_libdir_flag_spec='$wl+b $wl$libdir'
9865 hardcode_libdir_separator=:
9866 hardcode_direct=yes
9867 hardcode_direct_absolute=yes
9868 export_dynamic_flag_spec='$wl-E'
9869 # hardcode_minus_L: Not really in the search PATH,
9870 # but as the default location of the library.
9871 hardcode_minus_L=yes
9872 fi
9873 ;;
9874
9875 hpux11*)
9876 if test yes,no = "$GCC,$with_gnu_ld"; then
9877 case $host_cpu in
9878 hppa*64*)
9879 archive_cmds='$CC -shared $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'
9880 ;;
9881 ia64*)
9882 archive_cmds='$CC -shared $pic_flag $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
9883 ;;
9884 *)
9885 archive_cmds='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
9886 ;;
9887 esac
9888 else
9889 case $host_cpu in
9890 hppa*64*)
9891 archive_cmds='$CC -b $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'
9892 ;;
9893 ia64*)
9894 archive_cmds='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags'
9895 ;;
9896 *)
9897
9898 # Older versions of the 11.00 compiler do not understand -b yet
9899 # (HP92453-01 A.11.01.20 doesn't, HP92453-01 B.11.X.35175-35176.GP does)
9900 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC understands -b" >&5
9901 $as_echo_n "checking if $CC understands -b... " >&6; }
9902 if ${lt_cv_prog_compiler__b+:} false; then :
9903 $as_echo_n "(cached) " >&6
9904 else
9905 lt_cv_prog_compiler__b=no
9906 save_LDFLAGS=$LDFLAGS
9907 LDFLAGS="$LDFLAGS -b"
9908 echo "$lt_simple_link_test_code" > conftest.$ac_ext
9909 if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
9910 # The linker can only warn and ignore the option if not recognized
9911 # So say no if there are warnings
9912 if test -s conftest.err; then
9913 # Append any errors to the config.log.
9914 cat conftest.err 1>&5
9915 $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp
9916 $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
9917 if diff conftest.exp conftest.er2 >/dev/null; then
9918 lt_cv_prog_compiler__b=yes
9919 fi
9920 else
9921 lt_cv_prog_compiler__b=yes
9922 fi
9923 fi
9924 $RM -r conftest*
9925 LDFLAGS=$save_LDFLAGS
9926
9927 fi
9928 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler__b" >&5
9929 $as_echo "$lt_cv_prog_compiler__b" >&6; }
9930
9931 if test yes = "$lt_cv_prog_compiler__b"; then
9932 archive_cmds='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
9933 else
9934 archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'
9935 fi
9936
9937 ;;
9938 esac
9939 fi
9940 if test no = "$with_gnu_ld"; then
9941 hardcode_libdir_flag_spec='$wl+b $wl$libdir'
9942 hardcode_libdir_separator=:
9943
9944 case $host_cpu in
9945 hppa*64*|ia64*)
9946 hardcode_direct=no
9947 hardcode_shlibpath_var=no
9948 ;;
9949 *)
9950 hardcode_direct=yes
9951 hardcode_direct_absolute=yes
9952 export_dynamic_flag_spec='$wl-E'
9953
9954 # hardcode_minus_L: Not really in the search PATH,
9955 # but as the default location of the library.
9956 hardcode_minus_L=yes
9957 ;;
9958 esac
9959 fi
9960 ;;
9961
9962 irix5* | irix6* | nonstopux*)
9963 if test yes = "$GCC"; then
9964 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'
9965 # Try to use the -exported_symbol ld option, if it does not
9966 # work, assume that -exports_file does not work either and
9967 # implicitly export all symbols.
9968 # This should be the same for all languages, so no per-tag cache variable.
9969 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $host_os linker accepts -exported_symbol" >&5
9970 $as_echo_n "checking whether the $host_os linker accepts -exported_symbol... " >&6; }
9971 if ${lt_cv_irix_exported_symbol+:} false; then :
9972 $as_echo_n "(cached) " >&6
9973 else
9974 save_LDFLAGS=$LDFLAGS
9975 LDFLAGS="$LDFLAGS -shared $wl-exported_symbol ${wl}foo $wl-update_registry $wl/dev/null"
9976 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
9977 /* end confdefs.h. */
9978 int foo (void) { return 0; }
9979 _ACEOF
9980 if ac_fn_c_try_link "$LINENO"; then :
9981 lt_cv_irix_exported_symbol=yes
9982 else
9983 lt_cv_irix_exported_symbol=no
9984 fi
9985 rm -f core conftest.err conftest.$ac_objext \
9986 conftest$ac_exeext conftest.$ac_ext
9987 LDFLAGS=$save_LDFLAGS
9988 fi
9989 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_irix_exported_symbol" >&5
9990 $as_echo "$lt_cv_irix_exported_symbol" >&6; }
9991 if test yes = "$lt_cv_irix_exported_symbol"; then
9992 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'
9993 fi
9994 link_all_deplibs=no
9995 else
9996 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'
9997 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'
9998 fi
9999 archive_cmds_need_lc='no'
10000 hardcode_libdir_flag_spec='$wl-rpath $wl$libdir'
10001 hardcode_libdir_separator=:
10002 inherit_rpath=yes
10003 link_all_deplibs=yes
10004 ;;
10005
10006 linux*)
10007 case $cc_basename in
10008 tcc*)
10009 # Fabrice Bellard et al's Tiny C Compiler
10010 ld_shlibs=yes
10011 archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
10012 ;;
10013 esac
10014 ;;
10015
10016 netbsd* | netbsdelf*-gnu)
10017 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
10018 archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out
10019 else
10020 archive_cmds='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF
10021 fi
10022 hardcode_libdir_flag_spec='-R$libdir'
10023 hardcode_direct=yes
10024 hardcode_shlibpath_var=no
10025 ;;
10026
10027 newsos6)
10028 archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
10029 hardcode_direct=yes
10030 hardcode_libdir_flag_spec='$wl-rpath $wl$libdir'
10031 hardcode_libdir_separator=:
10032 hardcode_shlibpath_var=no
10033 ;;
10034
10035 *nto* | *qnx*)
10036 ;;
10037
10038 openbsd* | bitrig*)
10039 if test -f /usr/libexec/ld.so; then
10040 hardcode_direct=yes
10041 hardcode_shlibpath_var=no
10042 hardcode_direct_absolute=yes
10043 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then
10044 archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
10045 archive_expsym_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags $wl-retain-symbols-file,$export_symbols'
10046 hardcode_libdir_flag_spec='$wl-rpath,$libdir'
10047 export_dynamic_flag_spec='$wl-E'
10048 else
10049 archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags'
10050 hardcode_libdir_flag_spec='$wl-rpath,$libdir'
10051 fi
10052 else
10053 ld_shlibs=no
10054 fi
10055 ;;
10056
10057 os2*)
10058 hardcode_libdir_flag_spec='-L$libdir'
10059 hardcode_minus_L=yes
10060 allow_undefined_flag=unsupported
10061 shrext_cmds=.dll
10062 archive_cmds='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
10063 $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
10064 $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
10065 $ECHO EXPORTS >> $output_objdir/$libname.def~
10066 emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~
10067 $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
10068 emximp -o $lib $output_objdir/$libname.def'
10069 archive_expsym_cmds='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
10070 $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
10071 $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
10072 $ECHO EXPORTS >> $output_objdir/$libname.def~
10073 prefix_cmds="$SED"~
10074 if test EXPORTS = "`$SED 1q $export_symbols`"; then
10075 prefix_cmds="$prefix_cmds -e 1d";
10076 fi~
10077 prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~
10078 cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~
10079 $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
10080 emximp -o $lib $output_objdir/$libname.def'
10081 old_archive_From_new_cmds='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'
10082 enable_shared_with_static_runtimes=yes
10083 ;;
10084
10085 osf3*)
10086 if test yes = "$GCC"; then
10087 allow_undefined_flag=' $wl-expect_unresolved $wl\*'
10088 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'
10089 else
10090 allow_undefined_flag=' -expect_unresolved \*'
10091 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'
10092 fi
10093 archive_cmds_need_lc='no'
10094 hardcode_libdir_flag_spec='$wl-rpath $wl$libdir'
10095 hardcode_libdir_separator=:
10096 ;;
10097
10098 osf4* | osf5*) # as osf3* with the addition of -msym flag
10099 if test yes = "$GCC"; then
10100 allow_undefined_flag=' $wl-expect_unresolved $wl\*'
10101 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'
10102 hardcode_libdir_flag_spec='$wl-rpath $wl$libdir'
10103 else
10104 allow_undefined_flag=' -expect_unresolved \*'
10105 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'
10106 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~
10107 $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'
10108
10109 # Both c and cxx compiler support -rpath directly
10110 hardcode_libdir_flag_spec='-rpath $libdir'
10111 fi
10112 archive_cmds_need_lc='no'
10113 hardcode_libdir_separator=:
10114 ;;
10115
10116 solaris*)
10117 no_undefined_flag=' -z defs'
10118 if test yes = "$GCC"; then
10119 wlarc='$wl'
10120 archive_cmds='$CC -shared $pic_flag $wl-z ${wl}text $wl-h $wl$soname -o $lib $libobjs $deplibs $compiler_flags'
10121 archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
10122 $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'
10123 else
10124 case `$CC -V 2>&1` in
10125 *"Compilers 5.0"*)
10126 wlarc=''
10127 archive_cmds='$LD -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $linker_flags'
10128 archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
10129 $LD -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp'
10130 ;;
10131 *)
10132 wlarc='$wl'
10133 archive_cmds='$CC -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $compiler_flags'
10134 archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
10135 $CC -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp'
10136 ;;
10137 esac
10138 fi
10139 hardcode_libdir_flag_spec='-R$libdir'
10140 hardcode_shlibpath_var=no
10141 case $host_os in
10142 solaris2.[0-5] | solaris2.[0-5].*) ;;
10143 *)
10144 # The compiler driver will combine and reorder linker options,
10145 # but understands '-z linker_flag'. GCC discards it without '$wl',
10146 # but is careful enough not to reorder.
10147 # Supported since Solaris 2.6 (maybe 2.5.1?)
10148 if test yes = "$GCC"; then
10149 whole_archive_flag_spec='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract'
10150 else
10151 whole_archive_flag_spec='-z allextract$convenience -z defaultextract'
10152 fi
10153 ;;
10154 esac
10155 link_all_deplibs=yes
10156 ;;
10157
10158 sunos4*)
10159 if test sequent = "$host_vendor"; then
10160 # Use $CC to link under sequent, because it throws in some extra .o
10161 # files that make .init and .fini sections work.
10162 archive_cmds='$CC -G $wl-h $soname -o $lib $libobjs $deplibs $compiler_flags'
10163 else
10164 archive_cmds='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags'
10165 fi
10166 hardcode_libdir_flag_spec='-L$libdir'
10167 hardcode_direct=yes
10168 hardcode_minus_L=yes
10169 hardcode_shlibpath_var=no
10170 ;;
10171
10172 sysv4)
10173 case $host_vendor in
10174 sni)
10175 archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
10176 hardcode_direct=yes # is this really true???
10177 ;;
10178 siemens)
10179 ## LD is ld it makes a PLAMLIB
10180 ## CC just makes a GrossModule.
10181 archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags'
10182 reload_cmds='$CC -r -o $output$reload_objs'
10183 hardcode_direct=no
10184 ;;
10185 motorola)
10186 archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
10187 hardcode_direct=no #Motorola manual says yes, but my tests say they lie
10188 ;;
10189 esac
10190 runpath_var='LD_RUN_PATH'
10191 hardcode_shlibpath_var=no
10192 ;;
10193
10194 sysv4.3*)
10195 archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
10196 hardcode_shlibpath_var=no
10197 export_dynamic_flag_spec='-Bexport'
10198 ;;
10199
10200 sysv4*MP*)
10201 if test -d /usr/nec; then
10202 archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
10203 hardcode_shlibpath_var=no
10204 runpath_var=LD_RUN_PATH
10205 hardcode_runpath_var=yes
10206 ld_shlibs=yes
10207 fi
10208 ;;
10209
10210 sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[01].[10]* | unixware7* | sco3.2v5.0.[024]*)
10211 no_undefined_flag='$wl-z,text'
10212 archive_cmds_need_lc=no
10213 hardcode_shlibpath_var=no
10214 runpath_var='LD_RUN_PATH'
10215
10216 if test yes = "$GCC"; then
10217 archive_cmds='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
10218 archive_expsym_cmds='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
10219 else
10220 archive_cmds='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
10221 archive_expsym_cmds='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
10222 fi
10223 ;;
10224
10225 sysv5* | sco3.2v5* | sco5v6*)
10226 # Note: We CANNOT use -z defs as we might desire, because we do not
10227 # link with -lc, and that would cause any symbols used from libc to
10228 # always be unresolved, which means just about no library would
10229 # ever link correctly. If we're not using GNU ld we use -z text
10230 # though, which does catch some bad symbols but isn't as heavy-handed
10231 # as -z defs.
10232 no_undefined_flag='$wl-z,text'
10233 allow_undefined_flag='$wl-z,nodefs'
10234 archive_cmds_need_lc=no
10235 hardcode_shlibpath_var=no
10236 hardcode_libdir_flag_spec='$wl-R,$libdir'
10237 hardcode_libdir_separator=':'
10238 link_all_deplibs=yes
10239 export_dynamic_flag_spec='$wl-Bexport'
10240 runpath_var='LD_RUN_PATH'
10241
10242 if test yes = "$GCC"; then
10243 archive_cmds='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
10244 archive_expsym_cmds='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
10245 else
10246 archive_cmds='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
10247 archive_expsym_cmds='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
10248 fi
10249 ;;
10250
10251 uts4*)
10252 archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags'
10253 hardcode_libdir_flag_spec='-L$libdir'
10254 hardcode_shlibpath_var=no
10255 ;;
10256
10257 *)
10258 ld_shlibs=no
10259 ;;
10260 esac
10261
10262 if test sni = "$host_vendor"; then
10263 case $host in
10264 sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*)
10265 export_dynamic_flag_spec='$wl-Blargedynsym'
10266 ;;
10267 esac
10268 fi
10269 fi
10270
10271 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs" >&5
10272 $as_echo "$ld_shlibs" >&6; }
10273 test no = "$ld_shlibs" && can_build_shared=no
10274
10275 with_gnu_ld=$with_gnu_ld
10276
10277
10278
10279
10280
10281
10282
10283
10284
10285
10286
10287
10288
10289
10290
10291 #
10292 # Do we need to explicitly link libc?
10293 #
10294 case "x$archive_cmds_need_lc" in
10295 x|xyes)
10296 # Assume -lc should be added
10297 archive_cmds_need_lc=yes
10298
10299 if test yes,yes = "$GCC,$enable_shared"; then
10300 case $archive_cmds in
10301 *'~'*)
10302 # FIXME: we may have to deal with multi-command sequences.
10303 ;;
10304 '$CC '*)
10305 # Test whether the compiler implicitly links with -lc since on some
10306 # systems, -lgcc has to come before -lc. If gcc already passes -lc
10307 # to ld, don't add -lc before -lgcc.
10308 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -lc should be explicitly linked in" >&5
10309 $as_echo_n "checking whether -lc should be explicitly linked in... " >&6; }
10310 if ${lt_cv_archive_cmds_need_lc+:} false; then :
10311 $as_echo_n "(cached) " >&6
10312 else
10313 $RM conftest*
10314 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
10315
10316 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
10317 (eval $ac_compile) 2>&5
10318 ac_status=$?
10319 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
10320 test $ac_status = 0; } 2>conftest.err; then
10321 soname=conftest
10322 lib=conftest
10323 libobjs=conftest.$ac_objext
10324 deplibs=
10325 wl=$lt_prog_compiler_wl
10326 pic_flag=$lt_prog_compiler_pic
10327 compiler_flags=-v
10328 linker_flags=-v
10329 verstring=
10330 output_objdir=.
10331 libname=conftest
10332 lt_save_allow_undefined_flag=$allow_undefined_flag
10333 allow_undefined_flag=
10334 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$archive_cmds 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1\""; } >&5
10335 (eval $archive_cmds 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1) 2>&5
10336 ac_status=$?
10337 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
10338 test $ac_status = 0; }
10339 then
10340 lt_cv_archive_cmds_need_lc=no
10341 else
10342 lt_cv_archive_cmds_need_lc=yes
10343 fi
10344 allow_undefined_flag=$lt_save_allow_undefined_flag
10345 else
10346 cat conftest.err 1>&5
10347 fi
10348 $RM conftest*
10349
10350 fi
10351 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_archive_cmds_need_lc" >&5
10352 $as_echo "$lt_cv_archive_cmds_need_lc" >&6; }
10353 archive_cmds_need_lc=$lt_cv_archive_cmds_need_lc
10354 ;;
10355 esac
10356 fi
10357 ;;
10358 esac
10359
10360
10361
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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking dynamic linker characteristics" >&5
10512 $as_echo_n "checking dynamic linker characteristics... " >&6; }
10513
10514 if test yes = "$GCC"; then
10515 case $host_os in
10516 darwin*) lt_awk_arg='/^libraries:/,/LR/' ;;
10517 *) lt_awk_arg='/^libraries:/' ;;
10518 esac
10519 case $host_os in
10520 mingw* | cegcc*) lt_sed_strip_eq='s|=\([A-Za-z]:\)|\1|g' ;;
10521 *) lt_sed_strip_eq='s|=/|/|g' ;;
10522 esac
10523 lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e $lt_sed_strip_eq`
10524 case $lt_search_path_spec in
10525 *\;*)
10526 # if the path contains ";" then we assume it to be the separator
10527 # otherwise default to the standard path separator (i.e. ":") - it is
10528 # assumed that no part of a normal pathname contains ";" but that should
10529 # okay in the real world where ";" in dirpaths is itself problematic.
10530 lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED 's/;/ /g'`
10531 ;;
10532 *)
10533 lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED "s/$PATH_SEPARATOR/ /g"`
10534 ;;
10535 esac
10536 # Ok, now we have the path, separated by spaces, we can step through it
10537 # and add multilib dir if necessary...
10538 lt_tmp_lt_search_path_spec=
10539 lt_multi_os_dir=/`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null`
10540 # ...but if some path component already ends with the multilib dir we assume
10541 # that all is fine and trust -print-search-dirs as is (GCC 4.2? or newer).
10542 case "$lt_multi_os_dir; $lt_search_path_spec " in
10543 "/; "* | "/.; "* | "/./; "* | *"$lt_multi_os_dir "* | *"$lt_multi_os_dir/ "*)
10544 lt_multi_os_dir=
10545 ;;
10546 esac
10547 for lt_sys_path in $lt_search_path_spec; do
10548 if test -d "$lt_sys_path$lt_multi_os_dir"; then
10549 lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path$lt_multi_os_dir"
10550 elif test -n "$lt_multi_os_dir"; then
10551 test -d "$lt_sys_path" && \
10552 lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path"
10553 fi
10554 done
10555 lt_search_path_spec=`$ECHO "$lt_tmp_lt_search_path_spec" | awk '
10556 BEGIN {RS = " "; FS = "/|\n";} {
10557 lt_foo = "";
10558 lt_count = 0;
10559 for (lt_i = NF; lt_i > 0; lt_i--) {
10560 if ($lt_i != "" && $lt_i != ".") {
10561 if ($lt_i == "..") {
10562 lt_count++;
10563 } else {
10564 if (lt_count == 0) {
10565 lt_foo = "/" $lt_i lt_foo;
10566 } else {
10567 lt_count--;
10568 }
10569 }
10570 }
10571 }
10572 if (lt_foo != "") { lt_freq[lt_foo]++; }
10573 if (lt_freq[lt_foo] == 1) { print lt_foo; }
10574 }'`
10575 # AWK program above erroneously prepends '/' to C:/dos/paths
10576 # for these hosts.
10577 case $host_os in
10578 mingw* | cegcc*) lt_search_path_spec=`$ECHO "$lt_search_path_spec" |\
10579 $SED 's|/\([A-Za-z]:\)|\1|g'` ;;
10580 esac
10581 sys_lib_search_path_spec=`$ECHO "$lt_search_path_spec" | $lt_NL2SP`
10582 else
10583 sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
10584 fi
10585 library_names_spec=
10586 libname_spec='lib$name'
10587 soname_spec=
10588 shrext_cmds=.so
10589 postinstall_cmds=
10590 postuninstall_cmds=
10591 finish_cmds=
10592 finish_eval=
10593 shlibpath_var=
10594 shlibpath_overrides_runpath=unknown
10595 version_type=none
10596 dynamic_linker="$host_os ld.so"
10597 sys_lib_dlsearch_path_spec="/lib /usr/lib"
10598 need_lib_prefix=unknown
10599 hardcode_into_libs=no
10600
10601 # when you set need_version to no, make sure it does not cause -set_version
10602 # flags to be left without arguments
10603 need_version=unknown
10604
10605
10606
10607 case $host_os in
10608 aix3*)
10609 version_type=linux # correct to gnu/linux during the next big refactor
10610 library_names_spec='$libname$release$shared_ext$versuffix $libname.a'
10611 shlibpath_var=LIBPATH
10612
10613 # AIX 3 has no versioning support, so we append a major version to the name.
10614 soname_spec='$libname$release$shared_ext$major'
10615 ;;
10616
10617 aix[4-9]*)
10618 version_type=linux # correct to gnu/linux during the next big refactor
10619 need_lib_prefix=no
10620 need_version=no
10621 hardcode_into_libs=yes
10622 if test ia64 = "$host_cpu"; then
10623 # AIX 5 supports IA64
10624 library_names_spec='$libname$release$shared_ext$major $libname$release$shared_ext$versuffix $libname$shared_ext'
10625 shlibpath_var=LD_LIBRARY_PATH
10626 else
10627 # With GCC up to 2.95.x, collect2 would create an import file
10628 # for dependence libraries. The import file would start with
10629 # the line '#! .'. This would cause the generated library to
10630 # depend on '.', always an invalid library. This was fixed in
10631 # development snapshots of GCC prior to 3.0.
10632 case $host_os in
10633 aix4 | aix4.[01] | aix4.[01].*)
10634 if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
10635 echo ' yes '
10636 echo '#endif'; } | $CC -E - | $GREP yes > /dev/null; then
10637 :
10638 else
10639 can_build_shared=no
10640 fi
10641 ;;
10642 esac
10643 # Using Import Files as archive members, it is possible to support
10644 # filename-based versioning of shared library archives on AIX. While
10645 # this would work for both with and without runtime linking, it will
10646 # prevent static linking of such archives. So we do filename-based
10647 # shared library versioning with .so extension only, which is used
10648 # when both runtime linking and shared linking is enabled.
10649 # Unfortunately, runtime linking may impact performance, so we do
10650 # not want this to be the default eventually. Also, we use the
10651 # versioned .so libs for executables only if there is the -brtl
10652 # linker flag in LDFLAGS as well, or --with-aix-soname=svr4 only.
10653 # To allow for filename-based versioning support, we need to create
10654 # libNAME.so.V as an archive file, containing:
10655 # *) an Import File, referring to the versioned filename of the
10656 # archive as well as the shared archive member, telling the
10657 # bitwidth (32 or 64) of that shared object, and providing the
10658 # list of exported symbols of that shared object, eventually
10659 # decorated with the 'weak' keyword
10660 # *) the shared object with the F_LOADONLY flag set, to really avoid
10661 # it being seen by the linker.
10662 # At run time we better use the real file rather than another symlink,
10663 # but for link time we create the symlink libNAME.so -> libNAME.so.V
10664
10665 case $with_aix_soname,$aix_use_runtimelinking in
10666 # AIX (on Power*) has no versioning support, so currently we cannot hardcode correct
10667 # soname into executable. Probably we can add versioning support to
10668 # collect2, so additional links can be useful in future.
10669 aix,yes) # traditional libtool
10670 dynamic_linker='AIX unversionable lib.so'
10671 # If using run time linking (on AIX 4.2 or later) use lib<name>.so
10672 # instead of lib<name>.a to let people know that these are not
10673 # typical AIX shared libraries.
10674 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
10675 ;;
10676 aix,no) # traditional AIX only
10677 dynamic_linker='AIX lib.a(lib.so.V)'
10678 # We preserve .a as extension for shared libraries through AIX4.2
10679 # and later when we are not doing run time linking.
10680 library_names_spec='$libname$release.a $libname.a'
10681 soname_spec='$libname$release$shared_ext$major'
10682 ;;
10683 svr4,*) # full svr4 only
10684 dynamic_linker="AIX lib.so.V($shared_archive_member_spec.o)"
10685 library_names_spec='$libname$release$shared_ext$major $libname$shared_ext'
10686 # We do not specify a path in Import Files, so LIBPATH fires.
10687 shlibpath_overrides_runpath=yes
10688 ;;
10689 *,yes) # both, prefer svr4
10690 dynamic_linker="AIX lib.so.V($shared_archive_member_spec.o), lib.a(lib.so.V)"
10691 library_names_spec='$libname$release$shared_ext$major $libname$shared_ext'
10692 # unpreferred sharedlib libNAME.a needs extra handling
10693 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"'
10694 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"'
10695 # We do not specify a path in Import Files, so LIBPATH fires.
10696 shlibpath_overrides_runpath=yes
10697 ;;
10698 *,no) # both, prefer aix
10699 dynamic_linker="AIX lib.a(lib.so.V), lib.so.V($shared_archive_member_spec.o)"
10700 library_names_spec='$libname$release.a $libname.a'
10701 soname_spec='$libname$release$shared_ext$major'
10702 # unpreferred sharedlib libNAME.so.V and symlink libNAME.so need extra handling
10703 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)'
10704 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"'
10705 ;;
10706 esac
10707 shlibpath_var=LIBPATH
10708 fi
10709 ;;
10710
10711 amigaos*)
10712 case $host_cpu in
10713 powerpc)
10714 # Since July 2007 AmigaOS4 officially supports .so libraries.
10715 # When compiling the executable, add -use-dynld -Lsobjs: to the compileline.
10716 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
10717 ;;
10718 m68k)
10719 library_names_spec='$libname.ixlibrary $libname.a'
10720 # Create ${libname}_ixlibrary.a entries in /sys/libs.
10721 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'
10722 ;;
10723 esac
10724 ;;
10725
10726 beos*)
10727 library_names_spec='$libname$shared_ext'
10728 dynamic_linker="$host_os ld.so"
10729 shlibpath_var=LIBRARY_PATH
10730 ;;
10731
10732 bsdi[45]*)
10733 version_type=linux # correct to gnu/linux during the next big refactor
10734 need_version=no
10735 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
10736 soname_spec='$libname$release$shared_ext$major'
10737 finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
10738 shlibpath_var=LD_LIBRARY_PATH
10739 sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
10740 sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
10741 # the default ld.so.conf also contains /usr/contrib/lib and
10742 # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
10743 # libtool to hard-code these into programs
10744 ;;
10745
10746 cygwin* | mingw* | pw32* | cegcc*)
10747 version_type=windows
10748 shrext_cmds=.dll
10749 need_version=no
10750 need_lib_prefix=no
10751
10752 case $GCC,$cc_basename in
10753 yes,*)
10754 # gcc
10755 library_names_spec='$libname.dll.a'
10756 # DLL is installed to $(libdir)/../bin by postinstall_cmds
10757 postinstall_cmds='base_file=`basename \$file`~
10758 dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~
10759 dldir=$destdir/`dirname \$dlpath`~
10760 test -d \$dldir || mkdir -p \$dldir~
10761 $install_prog $dir/$dlname \$dldir/$dlname~
10762 chmod a+x \$dldir/$dlname~
10763 if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
10764 eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
10765 fi'
10766 postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
10767 dlpath=$dir/\$dldll~
10768 $RM \$dlpath'
10769 shlibpath_overrides_runpath=yes
10770
10771 case $host_os in
10772 cygwin*)
10773 # Cygwin DLLs use 'cyg' prefix rather than 'lib'
10774 soname_spec='`echo $libname | sed -e 's/^lib/cyg/'``echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'
10775
10776 sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api"
10777 ;;
10778 mingw* | cegcc*)
10779 # MinGW DLLs use traditional 'lib' prefix
10780 soname_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'
10781 ;;
10782 pw32*)
10783 # pw32 DLLs use 'pw' prefix rather than 'lib'
10784 library_names_spec='`echo $libname | sed -e 's/^lib/pw/'``echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'
10785 ;;
10786 esac
10787 dynamic_linker='Win32 ld.exe'
10788 ;;
10789
10790 *,cl*)
10791 # Native MSVC
10792 libname_spec='$name'
10793 soname_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'
10794 library_names_spec='$libname.dll.lib'
10795
10796 case $build_os in
10797 mingw*)
10798 sys_lib_search_path_spec=
10799 lt_save_ifs=$IFS
10800 IFS=';'
10801 for lt_path in $LIB
10802 do
10803 IFS=$lt_save_ifs
10804 # Let DOS variable expansion print the short 8.3 style file name.
10805 lt_path=`cd "$lt_path" 2>/dev/null && cmd //C "for %i in (".") do @echo %~si"`
10806 sys_lib_search_path_spec="$sys_lib_search_path_spec $lt_path"
10807 done
10808 IFS=$lt_save_ifs
10809 # Convert to MSYS style.
10810 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | sed -e 's|\\\\|/|g' -e 's| \\([a-zA-Z]\\):| /\\1|g' -e 's|^ ||'`
10811 ;;
10812 cygwin*)
10813 # Convert to unix form, then to dos form, then back to unix form
10814 # but this time dos style (no spaces!) so that the unix form looks
10815 # like /cygdrive/c/PROGRA~1:/cygdr...
10816 sys_lib_search_path_spec=`cygpath --path --unix "$LIB"`
10817 sys_lib_search_path_spec=`cygpath --path --dos "$sys_lib_search_path_spec" 2>/dev/null`
10818 sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
10819 ;;
10820 *)
10821 sys_lib_search_path_spec=$LIB
10822 if $ECHO "$sys_lib_search_path_spec" | $GREP ';[c-zC-Z]:/' >/dev/null; then
10823 # It is most probably a Windows format PATH.
10824 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
10825 else
10826 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
10827 fi
10828 # FIXME: find the short name or the path components, as spaces are
10829 # common. (e.g. "Program Files" -> "PROGRA~1")
10830 ;;
10831 esac
10832
10833 # DLL is installed to $(libdir)/../bin by postinstall_cmds
10834 postinstall_cmds='base_file=`basename \$file`~
10835 dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~
10836 dldir=$destdir/`dirname \$dlpath`~
10837 test -d \$dldir || mkdir -p \$dldir~
10838 $install_prog $dir/$dlname \$dldir/$dlname'
10839 postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
10840 dlpath=$dir/\$dldll~
10841 $RM \$dlpath'
10842 shlibpath_overrides_runpath=yes
10843 dynamic_linker='Win32 link.exe'
10844 ;;
10845
10846 *)
10847 # Assume MSVC wrapper
10848 library_names_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext $libname.lib'
10849 dynamic_linker='Win32 ld.exe'
10850 ;;
10851 esac
10852 # FIXME: first we should search . and the directory the executable is in
10853 shlibpath_var=PATH
10854 ;;
10855
10856 darwin* | rhapsody*)
10857 dynamic_linker="$host_os dyld"
10858 version_type=darwin
10859 need_lib_prefix=no
10860 need_version=no
10861 library_names_spec='$libname$release$major$shared_ext $libname$shared_ext'
10862 soname_spec='$libname$release$major$shared_ext'
10863 shlibpath_overrides_runpath=yes
10864 shlibpath_var=DYLD_LIBRARY_PATH
10865 shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
10866
10867 sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"
10868 sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'
10869 ;;
10870
10871 dgux*)
10872 version_type=linux # correct to gnu/linux during the next big refactor
10873 need_lib_prefix=no
10874 need_version=no
10875 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
10876 soname_spec='$libname$release$shared_ext$major'
10877 shlibpath_var=LD_LIBRARY_PATH
10878 ;;
10879
10880 freebsd* | dragonfly*)
10881 # DragonFly does not have aout. When/if they implement a new
10882 # versioning mechanism, adjust this.
10883 if test -x /usr/bin/objformat; then
10884 objformat=`/usr/bin/objformat`
10885 else
10886 case $host_os in
10887 freebsd[23].*) objformat=aout ;;
10888 *) objformat=elf ;;
10889 esac
10890 fi
10891 version_type=freebsd-$objformat
10892 case $version_type in
10893 freebsd-elf*)
10894 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
10895 soname_spec='$libname$release$shared_ext$major'
10896 need_version=no
10897 need_lib_prefix=no
10898 ;;
10899 freebsd-*)
10900 library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
10901 need_version=yes
10902 ;;
10903 esac
10904 shlibpath_var=LD_LIBRARY_PATH
10905 case $host_os in
10906 freebsd2.*)
10907 shlibpath_overrides_runpath=yes
10908 ;;
10909 freebsd3.[01]* | freebsdelf3.[01]*)
10910 shlibpath_overrides_runpath=yes
10911 hardcode_into_libs=yes
10912 ;;
10913 freebsd3.[2-9]* | freebsdelf3.[2-9]* | \
10914 freebsd4.[0-5] | freebsdelf4.[0-5] | freebsd4.1.1 | freebsdelf4.1.1)
10915 shlibpath_overrides_runpath=no
10916 hardcode_into_libs=yes
10917 ;;
10918 *) # from 4.6 on, and DragonFly
10919 shlibpath_overrides_runpath=yes
10920 hardcode_into_libs=yes
10921 ;;
10922 esac
10923 ;;
10924
10925 haiku*)
10926 version_type=linux # correct to gnu/linux during the next big refactor
10927 need_lib_prefix=no
10928 need_version=no
10929 dynamic_linker="$host_os runtime_loader"
10930 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
10931 soname_spec='$libname$release$shared_ext$major'
10932 shlibpath_var=LIBRARY_PATH
10933 shlibpath_overrides_runpath=no
10934 sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib'
10935 hardcode_into_libs=yes
10936 ;;
10937
10938 hpux9* | hpux10* | hpux11*)
10939 # Give a soname corresponding to the major version so that dld.sl refuses to
10940 # link against other versions.
10941 version_type=sunos
10942 need_lib_prefix=no
10943 need_version=no
10944 case $host_cpu in
10945 ia64*)
10946 shrext_cmds='.so'
10947 hardcode_into_libs=yes
10948 dynamic_linker="$host_os dld.so"
10949 shlibpath_var=LD_LIBRARY_PATH
10950 shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
10951 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
10952 soname_spec='$libname$release$shared_ext$major'
10953 if test 32 = "$HPUX_IA64_MODE"; then
10954 sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"
10955 sys_lib_dlsearch_path_spec=/usr/lib/hpux32
10956 else
10957 sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"
10958 sys_lib_dlsearch_path_spec=/usr/lib/hpux64
10959 fi
10960 ;;
10961 hppa*64*)
10962 shrext_cmds='.sl'
10963 hardcode_into_libs=yes
10964 dynamic_linker="$host_os dld.sl"
10965 shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH
10966 shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
10967 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
10968 soname_spec='$libname$release$shared_ext$major'
10969 sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64"
10970 sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
10971 ;;
10972 *)
10973 shrext_cmds='.sl'
10974 dynamic_linker="$host_os dld.sl"
10975 shlibpath_var=SHLIB_PATH
10976 shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
10977 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
10978 soname_spec='$libname$release$shared_ext$major'
10979 ;;
10980 esac
10981 # HP-UX runs *really* slowly unless shared libraries are mode 555, ...
10982 postinstall_cmds='chmod 555 $lib'
10983 # or fails outright, so override atomically:
10984 install_override_mode=555
10985 ;;
10986
10987 interix[3-9]*)
10988 version_type=linux # correct to gnu/linux during the next big refactor
10989 need_lib_prefix=no
10990 need_version=no
10991 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
10992 soname_spec='$libname$release$shared_ext$major'
10993 dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)'
10994 shlibpath_var=LD_LIBRARY_PATH
10995 shlibpath_overrides_runpath=no
10996 hardcode_into_libs=yes
10997 ;;
10998
10999 irix5* | irix6* | nonstopux*)
11000 case $host_os in
11001 nonstopux*) version_type=nonstopux ;;
11002 *)
11003 if test yes = "$lt_cv_prog_gnu_ld"; then
11004 version_type=linux # correct to gnu/linux during the next big refactor
11005 else
11006 version_type=irix
11007 fi ;;
11008 esac
11009 need_lib_prefix=no
11010 need_version=no
11011 soname_spec='$libname$release$shared_ext$major'
11012 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$release$shared_ext $libname$shared_ext'
11013 case $host_os in
11014 irix5* | nonstopux*)
11015 libsuff= shlibsuff=
11016 ;;
11017 *)
11018 case $LD in # libtool.m4 will add one of these switches to LD
11019 *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ")
11020 libsuff= shlibsuff= libmagic=32-bit;;
11021 *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ")
11022 libsuff=32 shlibsuff=N32 libmagic=N32;;
11023 *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ")
11024 libsuff=64 shlibsuff=64 libmagic=64-bit;;
11025 *) libsuff= shlibsuff= libmagic=never-match;;
11026 esac
11027 ;;
11028 esac
11029 shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
11030 shlibpath_overrides_runpath=no
11031 sys_lib_search_path_spec="/usr/lib$libsuff /lib$libsuff /usr/local/lib$libsuff"
11032 sys_lib_dlsearch_path_spec="/usr/lib$libsuff /lib$libsuff"
11033 hardcode_into_libs=yes
11034 ;;
11035
11036 # No shared lib support for Linux oldld, aout, or coff.
11037 linux*oldld* | linux*aout* | linux*coff*)
11038 dynamic_linker=no
11039 ;;
11040
11041 linux*android*)
11042 version_type=none # Android doesn't support versioned libraries.
11043 need_lib_prefix=no
11044 need_version=no
11045 library_names_spec='$libname$release$shared_ext'
11046 soname_spec='$libname$release$shared_ext'
11047 finish_cmds=
11048 shlibpath_var=LD_LIBRARY_PATH
11049 shlibpath_overrides_runpath=yes
11050
11051 # This implies no fast_install, which is unacceptable.
11052 # Some rework will be needed to allow for fast_install
11053 # before this can be enabled.
11054 hardcode_into_libs=yes
11055
11056 dynamic_linker='Android linker'
11057 # Don't embed -rpath directories since the linker doesn't support them.
11058 hardcode_libdir_flag_spec='-L$libdir'
11059 ;;
11060
11061 # This must be glibc/ELF.
11062 linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
11063 version_type=linux # correct to gnu/linux during the next big refactor
11064 need_lib_prefix=no
11065 need_version=no
11066 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
11067 soname_spec='$libname$release$shared_ext$major'
11068 finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
11069 shlibpath_var=LD_LIBRARY_PATH
11070 shlibpath_overrides_runpath=no
11071
11072 # Some binutils ld are patched to set DT_RUNPATH
11073 if ${lt_cv_shlibpath_overrides_runpath+:} false; then :
11074 $as_echo_n "(cached) " >&6
11075 else
11076 lt_cv_shlibpath_overrides_runpath=no
11077 save_LDFLAGS=$LDFLAGS
11078 save_libdir=$libdir
11079 eval "libdir=/foo; wl=\"$lt_prog_compiler_wl\"; \
11080 LDFLAGS=\"\$LDFLAGS $hardcode_libdir_flag_spec\""
11081 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
11082 /* end confdefs.h. */
11083
11084 int
11085 main ()
11086 {
11087
11088 ;
11089 return 0;
11090 }
11091 _ACEOF
11092 if ac_fn_c_try_link "$LINENO"; then :
11093 if ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null; then :
11094 lt_cv_shlibpath_overrides_runpath=yes
11095 fi
11096 fi
11097 rm -f core conftest.err conftest.$ac_objext \
11098 conftest$ac_exeext conftest.$ac_ext
11099 LDFLAGS=$save_LDFLAGS
11100 libdir=$save_libdir
11101
11102 fi
11103
11104 shlibpath_overrides_runpath=$lt_cv_shlibpath_overrides_runpath
11105
11106 # This implies no fast_install, which is unacceptable.
11107 # Some rework will be needed to allow for fast_install
11108 # before this can be enabled.
11109 hardcode_into_libs=yes
11110
11111 # Ideally, we could use ldconfig to report *all* directores which are
11112 # searched for libraries, however this is still not possible. Aside from not
11113 # being certain /sbin/ldconfig is available, command
11114 # 'ldconfig -N -X -v | grep ^/' on 64bit Fedora does not report /usr/lib64,
11115 # even though it is searched at run-time. Try to do the best guess by
11116 # appending ld.so.conf contents (and includes) to the search path.
11117 if test -f /etc/ld.so.conf; then
11118 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' ' '`
11119 sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
11120 fi
11121
11122 # We used to test for /lib/ld.so.1 and disable shared libraries on
11123 # powerpc, because MkLinux only supported shared libraries with the
11124 # GNU dynamic linker. Since this was broken with cross compilers,
11125 # most powerpc-linux boxes support dynamic linking these days and
11126 # people can always --disable-shared, the test was removed, and we
11127 # assume the GNU/Linux dynamic linker is in use.
11128 dynamic_linker='GNU/Linux ld.so'
11129 ;;
11130
11131 netbsdelf*-gnu)
11132 version_type=linux
11133 need_lib_prefix=no
11134 need_version=no
11135 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
11136 soname_spec='${libname}${release}${shared_ext}$major'
11137 shlibpath_var=LD_LIBRARY_PATH
11138 shlibpath_overrides_runpath=no
11139 hardcode_into_libs=yes
11140 dynamic_linker='NetBSD ld.elf_so'
11141 ;;
11142
11143 netbsd*)
11144 version_type=sunos
11145 need_lib_prefix=no
11146 need_version=no
11147 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
11148 library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
11149 finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
11150 dynamic_linker='NetBSD (a.out) ld.so'
11151 else
11152 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
11153 soname_spec='$libname$release$shared_ext$major'
11154 dynamic_linker='NetBSD ld.elf_so'
11155 fi
11156 shlibpath_var=LD_LIBRARY_PATH
11157 shlibpath_overrides_runpath=yes
11158 hardcode_into_libs=yes
11159 ;;
11160
11161 newsos6)
11162 version_type=linux # correct to gnu/linux during the next big refactor
11163 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
11164 shlibpath_var=LD_LIBRARY_PATH
11165 shlibpath_overrides_runpath=yes
11166 ;;
11167
11168 *nto* | *qnx*)
11169 version_type=qnx
11170 need_lib_prefix=no
11171 need_version=no
11172 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
11173 soname_spec='$libname$release$shared_ext$major'
11174 shlibpath_var=LD_LIBRARY_PATH
11175 shlibpath_overrides_runpath=no
11176 hardcode_into_libs=yes
11177 dynamic_linker='ldqnx.so'
11178 ;;
11179
11180 openbsd* | bitrig*)
11181 version_type=sunos
11182 sys_lib_dlsearch_path_spec=/usr/lib
11183 need_lib_prefix=no
11184 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then
11185 need_version=no
11186 else
11187 need_version=yes
11188 fi
11189 library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
11190 finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
11191 shlibpath_var=LD_LIBRARY_PATH
11192 shlibpath_overrides_runpath=yes
11193 ;;
11194
11195 os2*)
11196 libname_spec='$name'
11197 version_type=windows
11198 shrext_cmds=.dll
11199 need_version=no
11200 need_lib_prefix=no
11201 # OS/2 can only load a DLL with a base name of 8 characters or less.
11202 soname_spec='`test -n "$os2dllname" && libname="$os2dllname";
11203 v=$($ECHO $release$versuffix | tr -d .-);
11204 n=$($ECHO $libname | cut -b -$((8 - ${#v})) | tr . _);
11205 $ECHO $n$v`$shared_ext'
11206 library_names_spec='${libname}_dll.$libext'
11207 dynamic_linker='OS/2 ld.exe'
11208 shlibpath_var=BEGINLIBPATH
11209 sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
11210 sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
11211 postinstall_cmds='base_file=`basename \$file`~
11212 dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; $ECHO \$dlname'\''`~
11213 dldir=$destdir/`dirname \$dlpath`~
11214 test -d \$dldir || mkdir -p \$dldir~
11215 $install_prog $dir/$dlname \$dldir/$dlname~
11216 chmod a+x \$dldir/$dlname~
11217 if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
11218 eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
11219 fi'
11220 postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; $ECHO \$dlname'\''`~
11221 dlpath=$dir/\$dldll~
11222 $RM \$dlpath'
11223 ;;
11224
11225 osf3* | osf4* | osf5*)
11226 version_type=osf
11227 need_lib_prefix=no
11228 need_version=no
11229 soname_spec='$libname$release$shared_ext$major'
11230 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
11231 shlibpath_var=LD_LIBRARY_PATH
11232 sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
11233 sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
11234 ;;
11235
11236 rdos*)
11237 dynamic_linker=no
11238 ;;
11239
11240 solaris*)
11241 version_type=linux # correct to gnu/linux during the next big refactor
11242 need_lib_prefix=no
11243 need_version=no
11244 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
11245 soname_spec='$libname$release$shared_ext$major'
11246 shlibpath_var=LD_LIBRARY_PATH
11247 shlibpath_overrides_runpath=yes
11248 hardcode_into_libs=yes
11249 # ldd complains unless libraries are executable
11250 postinstall_cmds='chmod +x $lib'
11251 ;;
11252
11253 sunos4*)
11254 version_type=sunos
11255 library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
11256 finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
11257 shlibpath_var=LD_LIBRARY_PATH
11258 shlibpath_overrides_runpath=yes
11259 if test yes = "$with_gnu_ld"; then
11260 need_lib_prefix=no
11261 fi
11262 need_version=yes
11263 ;;
11264
11265 sysv4 | sysv4.3*)
11266 version_type=linux # correct to gnu/linux during the next big refactor
11267 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
11268 soname_spec='$libname$release$shared_ext$major'
11269 shlibpath_var=LD_LIBRARY_PATH
11270 case $host_vendor in
11271 sni)
11272 shlibpath_overrides_runpath=no
11273 need_lib_prefix=no
11274 runpath_var=LD_RUN_PATH
11275 ;;
11276 siemens)
11277 need_lib_prefix=no
11278 ;;
11279 motorola)
11280 need_lib_prefix=no
11281 need_version=no
11282 shlibpath_overrides_runpath=no
11283 sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
11284 ;;
11285 esac
11286 ;;
11287
11288 sysv4*MP*)
11289 if test -d /usr/nec; then
11290 version_type=linux # correct to gnu/linux during the next big refactor
11291 library_names_spec='$libname$shared_ext.$versuffix $libname$shared_ext.$major $libname$shared_ext'
11292 soname_spec='$libname$shared_ext.$major'
11293 shlibpath_var=LD_LIBRARY_PATH
11294 fi
11295 ;;
11296
11297 sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
11298 version_type=sco
11299 need_lib_prefix=no
11300 need_version=no
11301 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext $libname$shared_ext'
11302 soname_spec='$libname$release$shared_ext$major'
11303 shlibpath_var=LD_LIBRARY_PATH
11304 shlibpath_overrides_runpath=yes
11305 hardcode_into_libs=yes
11306 if test yes = "$with_gnu_ld"; then
11307 sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib'
11308 else
11309 sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'
11310 case $host_os in
11311 sco3.2v5*)
11312 sys_lib_search_path_spec="$sys_lib_search_path_spec /lib"
11313 ;;
11314 esac
11315 fi
11316 sys_lib_dlsearch_path_spec='/usr/lib'
11317 ;;
11318
11319 tpf*)
11320 # TPF is a cross-target only. Preferred cross-host = GNU/Linux.
11321 version_type=linux # correct to gnu/linux during the next big refactor
11322 need_lib_prefix=no
11323 need_version=no
11324 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
11325 shlibpath_var=LD_LIBRARY_PATH
11326 shlibpath_overrides_runpath=no
11327 hardcode_into_libs=yes
11328 ;;
11329
11330 uts4*)
11331 version_type=linux # correct to gnu/linux during the next big refactor
11332 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
11333 soname_spec='$libname$release$shared_ext$major'
11334 shlibpath_var=LD_LIBRARY_PATH
11335 ;;
11336
11337 *)
11338 dynamic_linker=no
11339 ;;
11340 esac
11341 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $dynamic_linker" >&5
11342 $as_echo "$dynamic_linker" >&6; }
11343 test no = "$dynamic_linker" && can_build_shared=no
11344
11345 variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
11346 if test yes = "$GCC"; then
11347 variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
11348 fi
11349
11350 if test set = "${lt_cv_sys_lib_search_path_spec+set}"; then
11351 sys_lib_search_path_spec=$lt_cv_sys_lib_search_path_spec
11352 fi
11353
11354 if test set = "${lt_cv_sys_lib_dlsearch_path_spec+set}"; then
11355 sys_lib_dlsearch_path_spec=$lt_cv_sys_lib_dlsearch_path_spec
11356 fi
11357
11358 # remember unaugmented sys_lib_dlsearch_path content for libtool script decls...
11359 configure_time_dlsearch_path=$sys_lib_dlsearch_path_spec
11360
11361 # ... but it needs LT_SYS_LIBRARY_PATH munging for other configure-time code
11362 func_munge_path_list sys_lib_dlsearch_path_spec "$LT_SYS_LIBRARY_PATH"
11363
11364 # to be used as default LT_SYS_LIBRARY_PATH value in generated libtool
11365 configure_time_lt_sys_library_path=$LT_SYS_LIBRARY_PATH
11366
11367
11368
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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to hardcode library paths into programs" >&5
11464 $as_echo_n "checking how to hardcode library paths into programs... " >&6; }
11465 hardcode_action=
11466 if test -n "$hardcode_libdir_flag_spec" ||
11467 test -n "$runpath_var" ||
11468 test yes = "$hardcode_automatic"; then
11469
11470 # We can hardcode non-existent directories.
11471 if test no != "$hardcode_direct" &&
11472 # If the only mechanism to avoid hardcoding is shlibpath_var, we
11473 # have to relink, otherwise we might link with an installed library
11474 # when we should be linking with a yet-to-be-installed one
11475 ## test no != "$_LT_TAGVAR(hardcode_shlibpath_var, )" &&
11476 test no != "$hardcode_minus_L"; then
11477 # Linking always hardcodes the temporary library directory.
11478 hardcode_action=relink
11479 else
11480 # We can link without hardcoding, and we can hardcode nonexisting dirs.
11481 hardcode_action=immediate
11482 fi
11483 else
11484 # We cannot hardcode anything, or else we can only hardcode existing
11485 # directories.
11486 hardcode_action=unsupported
11487 fi
11488 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $hardcode_action" >&5
11489 $as_echo "$hardcode_action" >&6; }
11490
11491 if test relink = "$hardcode_action" ||
11492 test yes = "$inherit_rpath"; then
11493 # Fast installation is not supported
11494 enable_fast_install=no
11495 elif test yes = "$shlibpath_overrides_runpath" ||
11496 test no = "$enable_shared"; then
11497 # Fast installation is not necessary
11498 enable_fast_install=needless
11499 fi
11500
11501
11502
11503
11504
11505
11506 if test yes != "$enable_dlopen"; then
11507 enable_dlopen=unknown
11508 enable_dlopen_self=unknown
11509 enable_dlopen_self_static=unknown
11510 else
11511 lt_cv_dlopen=no
11512 lt_cv_dlopen_libs=
11513
11514 case $host_os in
11515 beos*)
11516 lt_cv_dlopen=load_add_on
11517 lt_cv_dlopen_libs=
11518 lt_cv_dlopen_self=yes
11519 ;;
11520
11521 mingw* | pw32* | cegcc*)
11522 lt_cv_dlopen=LoadLibrary
11523 lt_cv_dlopen_libs=
11524 ;;
11525
11526 cygwin*)
11527 lt_cv_dlopen=dlopen
11528 lt_cv_dlopen_libs=
11529 ;;
11530
11531 darwin*)
11532 # if libdl is installed we need to link against it
11533 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5
11534 $as_echo_n "checking for dlopen in -ldl... " >&6; }
11535 if ${ac_cv_lib_dl_dlopen+:} false; then :
11536 $as_echo_n "(cached) " >&6
11537 else
11538 ac_check_lib_save_LIBS=$LIBS
11539 LIBS="-ldl $LIBS"
11540 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
11541 /* end confdefs.h. */
11542
11543 /* Override any GCC internal prototype to avoid an error.
11544 Use char because int might match the return type of a GCC
11545 builtin and then its argument prototype would still apply. */
11546 #ifdef __cplusplus
11547 extern "C"
11548 #endif
11549 char dlopen ();
11550 int
11551 main ()
11552 {
11553 return dlopen ();
11554 ;
11555 return 0;
11556 }
11557 _ACEOF
11558 if ac_fn_c_try_link "$LINENO"; then :
11559 ac_cv_lib_dl_dlopen=yes
11560 else
11561 ac_cv_lib_dl_dlopen=no
11562 fi
11563 rm -f core conftest.err conftest.$ac_objext \
11564 conftest$ac_exeext conftest.$ac_ext
11565 LIBS=$ac_check_lib_save_LIBS
11566 fi
11567 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5
11568 $as_echo "$ac_cv_lib_dl_dlopen" >&6; }
11569 if test "x$ac_cv_lib_dl_dlopen" = xyes; then :
11570 lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl
11571 else
11572
11573 lt_cv_dlopen=dyld
11574 lt_cv_dlopen_libs=
11575 lt_cv_dlopen_self=yes
11576
11577 fi
11578
11579 ;;
11580
11581 tpf*)
11582 # Don't try to run any link tests for TPF. We know it's impossible
11583 # because TPF is a cross-compiler, and we know how we open DSOs.
11584 lt_cv_dlopen=dlopen
11585 lt_cv_dlopen_libs=
11586 lt_cv_dlopen_self=no
11587 ;;
11588
11589 *)
11590 ac_fn_c_check_func "$LINENO" "shl_load" "ac_cv_func_shl_load"
11591 if test "x$ac_cv_func_shl_load" = xyes; then :
11592 lt_cv_dlopen=shl_load
11593 else
11594 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for shl_load in -ldld" >&5
11595 $as_echo_n "checking for shl_load in -ldld... " >&6; }
11596 if ${ac_cv_lib_dld_shl_load+:} false; then :
11597 $as_echo_n "(cached) " >&6
11598 else
11599 ac_check_lib_save_LIBS=$LIBS
11600 LIBS="-ldld $LIBS"
11601 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
11602 /* end confdefs.h. */
11603
11604 /* Override any GCC internal prototype to avoid an error.
11605 Use char because int might match the return type of a GCC
11606 builtin and then its argument prototype would still apply. */
11607 #ifdef __cplusplus
11608 extern "C"
11609 #endif
11610 char shl_load ();
11611 int
11612 main ()
11613 {
11614 return shl_load ();
11615 ;
11616 return 0;
11617 }
11618 _ACEOF
11619 if ac_fn_c_try_link "$LINENO"; then :
11620 ac_cv_lib_dld_shl_load=yes
11621 else
11622 ac_cv_lib_dld_shl_load=no
11623 fi
11624 rm -f core conftest.err conftest.$ac_objext \
11625 conftest$ac_exeext conftest.$ac_ext
11626 LIBS=$ac_check_lib_save_LIBS
11627 fi
11628 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_shl_load" >&5
11629 $as_echo "$ac_cv_lib_dld_shl_load" >&6; }
11630 if test "x$ac_cv_lib_dld_shl_load" = xyes; then :
11631 lt_cv_dlopen=shl_load lt_cv_dlopen_libs=-ldld
11632 else
11633 ac_fn_c_check_func "$LINENO" "dlopen" "ac_cv_func_dlopen"
11634 if test "x$ac_cv_func_dlopen" = xyes; then :
11635 lt_cv_dlopen=dlopen
11636 else
11637 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5
11638 $as_echo_n "checking for dlopen in -ldl... " >&6; }
11639 if ${ac_cv_lib_dl_dlopen+:} false; then :
11640 $as_echo_n "(cached) " >&6
11641 else
11642 ac_check_lib_save_LIBS=$LIBS
11643 LIBS="-ldl $LIBS"
11644 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
11645 /* end confdefs.h. */
11646
11647 /* Override any GCC internal prototype to avoid an error.
11648 Use char because int might match the return type of a GCC
11649 builtin and then its argument prototype would still apply. */
11650 #ifdef __cplusplus
11651 extern "C"
11652 #endif
11653 char dlopen ();
11654 int
11655 main ()
11656 {
11657 return dlopen ();
11658 ;
11659 return 0;
11660 }
11661 _ACEOF
11662 if ac_fn_c_try_link "$LINENO"; then :
11663 ac_cv_lib_dl_dlopen=yes
11664 else
11665 ac_cv_lib_dl_dlopen=no
11666 fi
11667 rm -f core conftest.err conftest.$ac_objext \
11668 conftest$ac_exeext conftest.$ac_ext
11669 LIBS=$ac_check_lib_save_LIBS
11670 fi
11671 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5
11672 $as_echo "$ac_cv_lib_dl_dlopen" >&6; }
11673 if test "x$ac_cv_lib_dl_dlopen" = xyes; then :
11674 lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl
11675 else
11676 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -lsvld" >&5
11677 $as_echo_n "checking for dlopen in -lsvld... " >&6; }
11678 if ${ac_cv_lib_svld_dlopen+:} false; then :
11679 $as_echo_n "(cached) " >&6
11680 else
11681 ac_check_lib_save_LIBS=$LIBS
11682 LIBS="-lsvld $LIBS"
11683 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
11684 /* end confdefs.h. */
11685
11686 /* Override any GCC internal prototype to avoid an error.
11687 Use char because int might match the return type of a GCC
11688 builtin and then its argument prototype would still apply. */
11689 #ifdef __cplusplus
11690 extern "C"
11691 #endif
11692 char dlopen ();
11693 int
11694 main ()
11695 {
11696 return dlopen ();
11697 ;
11698 return 0;
11699 }
11700 _ACEOF
11701 if ac_fn_c_try_link "$LINENO"; then :
11702 ac_cv_lib_svld_dlopen=yes
11703 else
11704 ac_cv_lib_svld_dlopen=no
11705 fi
11706 rm -f core conftest.err conftest.$ac_objext \
11707 conftest$ac_exeext conftest.$ac_ext
11708 LIBS=$ac_check_lib_save_LIBS
11709 fi
11710 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_svld_dlopen" >&5
11711 $as_echo "$ac_cv_lib_svld_dlopen" >&6; }
11712 if test "x$ac_cv_lib_svld_dlopen" = xyes; then :
11713 lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-lsvld
11714 else
11715 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dld_link in -ldld" >&5
11716 $as_echo_n "checking for dld_link in -ldld... " >&6; }
11717 if ${ac_cv_lib_dld_dld_link+:} false; then :
11718 $as_echo_n "(cached) " >&6
11719 else
11720 ac_check_lib_save_LIBS=$LIBS
11721 LIBS="-ldld $LIBS"
11722 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
11723 /* end confdefs.h. */
11724
11725 /* Override any GCC internal prototype to avoid an error.
11726 Use char because int might match the return type of a GCC
11727 builtin and then its argument prototype would still apply. */
11728 #ifdef __cplusplus
11729 extern "C"
11730 #endif
11731 char dld_link ();
11732 int
11733 main ()
11734 {
11735 return dld_link ();
11736 ;
11737 return 0;
11738 }
11739 _ACEOF
11740 if ac_fn_c_try_link "$LINENO"; then :
11741 ac_cv_lib_dld_dld_link=yes
11742 else
11743 ac_cv_lib_dld_dld_link=no
11744 fi
11745 rm -f core conftest.err conftest.$ac_objext \
11746 conftest$ac_exeext conftest.$ac_ext
11747 LIBS=$ac_check_lib_save_LIBS
11748 fi
11749 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_dld_link" >&5
11750 $as_echo "$ac_cv_lib_dld_dld_link" >&6; }
11751 if test "x$ac_cv_lib_dld_dld_link" = xyes; then :
11752 lt_cv_dlopen=dld_link lt_cv_dlopen_libs=-ldld
11753 fi
11754
11755
11756 fi
11757
11758
11759 fi
11760
11761
11762 fi
11763
11764
11765 fi
11766
11767
11768 fi
11769
11770 ;;
11771 esac
11772
11773 if test no = "$lt_cv_dlopen"; then
11774 enable_dlopen=no
11775 else
11776 enable_dlopen=yes
11777 fi
11778
11779 case $lt_cv_dlopen in
11780 dlopen)
11781 save_CPPFLAGS=$CPPFLAGS
11782 test yes = "$ac_cv_header_dlfcn_h" && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H"
11783
11784 save_LDFLAGS=$LDFLAGS
11785 wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\"
11786
11787 save_LIBS=$LIBS
11788 LIBS="$lt_cv_dlopen_libs $LIBS"
11789
11790 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a program can dlopen itself" >&5
11791 $as_echo_n "checking whether a program can dlopen itself... " >&6; }
11792 if ${lt_cv_dlopen_self+:} false; then :
11793 $as_echo_n "(cached) " >&6
11794 else
11795 if test yes = "$cross_compiling"; then :
11796 lt_cv_dlopen_self=cross
11797 else
11798 lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
11799 lt_status=$lt_dlunknown
11800 cat > conftest.$ac_ext <<_LT_EOF
11801 #line $LINENO "configure"
11802 #include "confdefs.h"
11803
11804 #if HAVE_DLFCN_H
11805 #include <dlfcn.h>
11806 #endif
11807
11808 #include <stdio.h>
11809
11810 #ifdef RTLD_GLOBAL
11811 # define LT_DLGLOBAL RTLD_GLOBAL
11812 #else
11813 # ifdef DL_GLOBAL
11814 # define LT_DLGLOBAL DL_GLOBAL
11815 # else
11816 # define LT_DLGLOBAL 0
11817 # endif
11818 #endif
11819
11820 /* We may have to define LT_DLLAZY_OR_NOW in the command line if we
11821 find out it does not work in some platform. */
11822 #ifndef LT_DLLAZY_OR_NOW
11823 # ifdef RTLD_LAZY
11824 # define LT_DLLAZY_OR_NOW RTLD_LAZY
11825 # else
11826 # ifdef DL_LAZY
11827 # define LT_DLLAZY_OR_NOW DL_LAZY
11828 # else
11829 # ifdef RTLD_NOW
11830 # define LT_DLLAZY_OR_NOW RTLD_NOW
11831 # else
11832 # ifdef DL_NOW
11833 # define LT_DLLAZY_OR_NOW DL_NOW
11834 # else
11835 # define LT_DLLAZY_OR_NOW 0
11836 # endif
11837 # endif
11838 # endif
11839 # endif
11840 #endif
11841
11842 /* When -fvisibility=hidden is used, assume the code has been annotated
11843 correspondingly for the symbols needed. */
11844 #if defined __GNUC__ && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
11845 int fnord () __attribute__((visibility("default")));
11846 #endif
11847
11848 int fnord () { return 42; }
11849 int main ()
11850 {
11851 void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
11852 int status = $lt_dlunknown;
11853
11854 if (self)
11855 {
11856 if (dlsym (self,"fnord")) status = $lt_dlno_uscore;
11857 else
11858 {
11859 if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;
11860 else puts (dlerror ());
11861 }
11862 /* dlclose (self); */
11863 }
11864 else
11865 puts (dlerror ());
11866
11867 return status;
11868 }
11869 _LT_EOF
11870 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5
11871 (eval $ac_link) 2>&5
11872 ac_status=$?
11873 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
11874 test $ac_status = 0; } && test -s "conftest$ac_exeext" 2>/dev/null; then
11875 (./conftest; exit; ) >&5 2>/dev/null
11876 lt_status=$?
11877 case x$lt_status in
11878 x$lt_dlno_uscore) lt_cv_dlopen_self=yes ;;
11879 x$lt_dlneed_uscore) lt_cv_dlopen_self=yes ;;
11880 x$lt_dlunknown|x*) lt_cv_dlopen_self=no ;;
11881 esac
11882 else :
11883 # compilation failed
11884 lt_cv_dlopen_self=no
11885 fi
11886 fi
11887 rm -fr conftest*
11888
11889
11890 fi
11891 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self" >&5
11892 $as_echo "$lt_cv_dlopen_self" >&6; }
11893
11894 if test yes = "$lt_cv_dlopen_self"; then
11895 wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\"
11896 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a statically linked program can dlopen itself" >&5
11897 $as_echo_n "checking whether a statically linked program can dlopen itself... " >&6; }
11898 if ${lt_cv_dlopen_self_static+:} false; then :
11899 $as_echo_n "(cached) " >&6
11900 else
11901 if test yes = "$cross_compiling"; then :
11902 lt_cv_dlopen_self_static=cross
11903 else
11904 lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
11905 lt_status=$lt_dlunknown
11906 cat > conftest.$ac_ext <<_LT_EOF
11907 #line $LINENO "configure"
11908 #include "confdefs.h"
11909
11910 #if HAVE_DLFCN_H
11911 #include <dlfcn.h>
11912 #endif
11913
11914 #include <stdio.h>
11915
11916 #ifdef RTLD_GLOBAL
11917 # define LT_DLGLOBAL RTLD_GLOBAL
11918 #else
11919 # ifdef DL_GLOBAL
11920 # define LT_DLGLOBAL DL_GLOBAL
11921 # else
11922 # define LT_DLGLOBAL 0
11923 # endif
11924 #endif
11925
11926 /* We may have to define LT_DLLAZY_OR_NOW in the command line if we
11927 find out it does not work in some platform. */
11928 #ifndef LT_DLLAZY_OR_NOW
11929 # ifdef RTLD_LAZY
11930 # define LT_DLLAZY_OR_NOW RTLD_LAZY
11931 # else
11932 # ifdef DL_LAZY
11933 # define LT_DLLAZY_OR_NOW DL_LAZY
11934 # else
11935 # ifdef RTLD_NOW
11936 # define LT_DLLAZY_OR_NOW RTLD_NOW
11937 # else
11938 # ifdef DL_NOW
11939 # define LT_DLLAZY_OR_NOW DL_NOW
11940 # else
11941 # define LT_DLLAZY_OR_NOW 0
11942 # endif
11943 # endif
11944 # endif
11945 # endif
11946 #endif
11947
11948 /* When -fvisibility=hidden is used, assume the code has been annotated
11949 correspondingly for the symbols needed. */
11950 #if defined __GNUC__ && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3))
11951 int fnord () __attribute__((visibility("default")));
11952 #endif
11953
11954 int fnord () { return 42; }
11955 int main ()
11956 {
11957 void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW);
11958 int status = $lt_dlunknown;
11959
11960 if (self)
11961 {
11962 if (dlsym (self,"fnord")) status = $lt_dlno_uscore;
11963 else
11964 {
11965 if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore;
11966 else puts (dlerror ());
11967 }
11968 /* dlclose (self); */
11969 }
11970 else
11971 puts (dlerror ());
11972
11973 return status;
11974 }
11975 _LT_EOF
11976 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5
11977 (eval $ac_link) 2>&5
11978 ac_status=$?
11979 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
11980 test $ac_status = 0; } && test -s "conftest$ac_exeext" 2>/dev/null; then
11981 (./conftest; exit; ) >&5 2>/dev/null
11982 lt_status=$?
11983 case x$lt_status in
11984 x$lt_dlno_uscore) lt_cv_dlopen_self_static=yes ;;
11985 x$lt_dlneed_uscore) lt_cv_dlopen_self_static=yes ;;
11986 x$lt_dlunknown|x*) lt_cv_dlopen_self_static=no ;;
11987 esac
11988 else :
11989 # compilation failed
11990 lt_cv_dlopen_self_static=no
11991 fi
11992 fi
11993 rm -fr conftest*
11994
11995
11996 fi
11997 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self_static" >&5
11998 $as_echo "$lt_cv_dlopen_self_static" >&6; }
11999 fi
12000
12001 CPPFLAGS=$save_CPPFLAGS
12002 LDFLAGS=$save_LDFLAGS
12003 LIBS=$save_LIBS
12004 ;;
12005 esac
12006
12007 case $lt_cv_dlopen_self in
12008 yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;;
12009 *) enable_dlopen_self=unknown ;;
12010 esac
12011
12012 case $lt_cv_dlopen_self_static in
12013 yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;;
12014 *) enable_dlopen_self_static=unknown ;;
12015 esac
12016 fi
12017
12018
12019
12020
12021
12022
12023
12024
12025
12026
12027
12028
12029
12030
12031
12032
12033
12034 striplib=
12035 old_striplib=
12036 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether stripping libraries is possible" >&5
12037 $as_echo_n "checking whether stripping libraries is possible... " >&6; }
12038 if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then
12039 test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"
12040 test -z "$striplib" && striplib="$STRIP --strip-unneeded"
12041 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
12042 $as_echo "yes" >&6; }
12043 else
12044 # FIXME - insert some real tests, host_os isn't really good enough
12045 case $host_os in
12046 darwin*)
12047 if test -n "$STRIP"; then
12048 striplib="$STRIP -x"
12049 old_striplib="$STRIP -S"
12050 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
12051 $as_echo "yes" >&6; }
12052 else
12053 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
12054 $as_echo "no" >&6; }
12055 fi
12056 ;;
12057 *)
12058 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
12059 $as_echo "no" >&6; }
12060 ;;
12061 esac
12062 fi
12063
12064
12065
12066
12067
12068
12069
12070
12071
12072
12073
12074
12075 # Report what library types will actually be built
12076 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libtool supports shared libraries" >&5
12077 $as_echo_n "checking if libtool supports shared libraries... " >&6; }
12078 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $can_build_shared" >&5
12079 $as_echo "$can_build_shared" >&6; }
12080
12081 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build shared libraries" >&5
12082 $as_echo_n "checking whether to build shared libraries... " >&6; }
12083 test no = "$can_build_shared" && enable_shared=no
12084
12085 # On AIX, shared libraries and static libraries use the same namespace, and
12086 # are all built from PIC.
12087 case $host_os in
12088 aix3*)
12089 test yes = "$enable_shared" && enable_static=no
12090 if test -n "$RANLIB"; then
12091 archive_cmds="$archive_cmds~\$RANLIB \$lib"
12092 postinstall_cmds='$RANLIB $lib'
12093 fi
12094 ;;
12095
12096 aix[4-9]*)
12097 if test ia64 != "$host_cpu"; then
12098 case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in
12099 yes,aix,yes) ;; # shared object as lib.so file only
12100 yes,svr4,*) ;; # shared object as lib.so archive member only
12101 yes,*) enable_static=no ;; # shared object in lib.a archive as well
12102 esac
12103 fi
12104 ;;
12105 esac
12106 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_shared" >&5
12107 $as_echo "$enable_shared" >&6; }
12108
12109 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build static libraries" >&5
12110 $as_echo_n "checking whether to build static libraries... " >&6; }
12111 # Make sure either enable_shared or enable_static is yes.
12112 test yes = "$enable_shared" || enable_static=yes
12113 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_static" >&5
12114 $as_echo "$enable_static" >&6; }
12115
12116
12117
12118
12119 fi
12120 ac_ext=c
12121 ac_cpp='$CPP $CPPFLAGS'
12122 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
12123 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
12124 ac_compiler_gnu=$ac_cv_c_compiler_gnu
12125
12126 CC=$lt_save_CC
12127
12128
12129
12130
12131
12132
12133
12134
12135
12136
12137
12138
12139
12140
12141
12142 ac_config_commands="$ac_config_commands libtool"
12143
12144
12145
12146
12147 # Only expand once:
12148
12149
12150
12151
12152 ac_ext=c
12153 ac_cpp='$CPP $CPPFLAGS'
12154 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
12155 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
12156 ac_compiler_gnu=$ac_cv_c_compiler_gnu
12157 if test -n "$ac_tool_prefix"; then
12158 # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args.
12159 set dummy ${ac_tool_prefix}gcc; ac_word=$2
12160 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
12161 $as_echo_n "checking for $ac_word... " >&6; }
12162 if ${ac_cv_prog_CC+:} false; then :
12163 $as_echo_n "(cached) " >&6
12164 else
12165 if test -n "$CC"; then
12166 ac_cv_prog_CC="$CC" # Let the user override the test.
12167 else
12168 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
12169 for as_dir in $PATH
12170 do
12171 IFS=$as_save_IFS
12172 test -z "$as_dir" && as_dir=.
12173 for ac_exec_ext in '' $ac_executable_extensions; do
12174 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
12175 ac_cv_prog_CC="${ac_tool_prefix}gcc"
12176 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
12177 break 2
12178 fi
12179 done
12180 done
12181 IFS=$as_save_IFS
12182
12183 fi
12184 fi
12185 CC=$ac_cv_prog_CC
12186 if test -n "$CC"; then
12187 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
12188 $as_echo "$CC" >&6; }
12189 else
12190 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
12191 $as_echo "no" >&6; }
12192 fi
12193
12194
12195 fi
12196 if test -z "$ac_cv_prog_CC"; then
12197 ac_ct_CC=$CC
12198 # Extract the first word of "gcc", so it can be a program name with args.
12199 set dummy gcc; ac_word=$2
12200 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
12201 $as_echo_n "checking for $ac_word... " >&6; }
12202 if ${ac_cv_prog_ac_ct_CC+:} false; then :
12203 $as_echo_n "(cached) " >&6
12204 else
12205 if test -n "$ac_ct_CC"; then
12206 ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
12207 else
12208 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
12209 for as_dir in $PATH
12210 do
12211 IFS=$as_save_IFS
12212 test -z "$as_dir" && as_dir=.
12213 for ac_exec_ext in '' $ac_executable_extensions; do
12214 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
12215 ac_cv_prog_ac_ct_CC="gcc"
12216 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
12217 break 2
12218 fi
12219 done
12220 done
12221 IFS=$as_save_IFS
12222
12223 fi
12224 fi
12225 ac_ct_CC=$ac_cv_prog_ac_ct_CC
12226 if test -n "$ac_ct_CC"; then
12227 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
12228 $as_echo "$ac_ct_CC" >&6; }
12229 else
12230 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
12231 $as_echo "no" >&6; }
12232 fi
12233
12234 if test "x$ac_ct_CC" = x; then
12235 CC=""
12236 else
12237 case $cross_compiling:$ac_tool_warned in
12238 yes:)
12239 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
12240 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
12241 ac_tool_warned=yes ;;
12242 esac
12243 CC=$ac_ct_CC
12244 fi
12245 else
12246 CC="$ac_cv_prog_CC"
12247 fi
12248
12249 if test -z "$CC"; then
12250 if test -n "$ac_tool_prefix"; then
12251 # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args.
12252 set dummy ${ac_tool_prefix}cc; ac_word=$2
12253 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
12254 $as_echo_n "checking for $ac_word... " >&6; }
12255 if ${ac_cv_prog_CC+:} false; then :
12256 $as_echo_n "(cached) " >&6
12257 else
12258 if test -n "$CC"; then
12259 ac_cv_prog_CC="$CC" # Let the user override the test.
12260 else
12261 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
12262 for as_dir in $PATH
12263 do
12264 IFS=$as_save_IFS
12265 test -z "$as_dir" && as_dir=.
12266 for ac_exec_ext in '' $ac_executable_extensions; do
12267 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
12268 ac_cv_prog_CC="${ac_tool_prefix}cc"
12269 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
12270 break 2
12271 fi
12272 done
12273 done
12274 IFS=$as_save_IFS
12275
12276 fi
12277 fi
12278 CC=$ac_cv_prog_CC
12279 if test -n "$CC"; then
12280 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
12281 $as_echo "$CC" >&6; }
12282 else
12283 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
12284 $as_echo "no" >&6; }
12285 fi
12286
12287
12288 fi
12289 fi
12290 if test -z "$CC"; then
12291 # Extract the first word of "cc", so it can be a program name with args.
12292 set dummy cc; ac_word=$2
12293 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
12294 $as_echo_n "checking for $ac_word... " >&6; }
12295 if ${ac_cv_prog_CC+:} false; then :
12296 $as_echo_n "(cached) " >&6
12297 else
12298 if test -n "$CC"; then
12299 ac_cv_prog_CC="$CC" # Let the user override the test.
12300 else
12301 ac_prog_rejected=no
12302 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
12303 for as_dir in $PATH
12304 do
12305 IFS=$as_save_IFS
12306 test -z "$as_dir" && as_dir=.
12307 for ac_exec_ext in '' $ac_executable_extensions; do
12308 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
12309 if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then
12310 ac_prog_rejected=yes
12311 continue
12312 fi
12313 ac_cv_prog_CC="cc"
12314 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
12315 break 2
12316 fi
12317 done
12318 done
12319 IFS=$as_save_IFS
12320
12321 if test $ac_prog_rejected = yes; then
12322 # We found a bogon in the path, so make sure we never use it.
12323 set dummy $ac_cv_prog_CC
12324 shift
12325 if test $# != 0; then
12326 # We chose a different compiler from the bogus one.
12327 # However, it has the same basename, so the bogon will be chosen
12328 # first if we set CC to just the basename; use the full file name.
12329 shift
12330 ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@"
12331 fi
12332 fi
12333 fi
12334 fi
12335 CC=$ac_cv_prog_CC
12336 if test -n "$CC"; then
12337 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
12338 $as_echo "$CC" >&6; }
12339 else
12340 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
12341 $as_echo "no" >&6; }
12342 fi
12343
12344
12345 fi
12346 if test -z "$CC"; then
12347 if test -n "$ac_tool_prefix"; then
12348 for ac_prog in cl.exe
12349 do
12350 # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
12351 set dummy $ac_tool_prefix$ac_prog; ac_word=$2
12352 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
12353 $as_echo_n "checking for $ac_word... " >&6; }
12354 if ${ac_cv_prog_CC+:} false; then :
12355 $as_echo_n "(cached) " >&6
12356 else
12357 if test -n "$CC"; then
12358 ac_cv_prog_CC="$CC" # Let the user override the test.
12359 else
12360 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
12361 for as_dir in $PATH
12362 do
12363 IFS=$as_save_IFS
12364 test -z "$as_dir" && as_dir=.
12365 for ac_exec_ext in '' $ac_executable_extensions; do
12366 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
12367 ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
12368 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
12369 break 2
12370 fi
12371 done
12372 done
12373 IFS=$as_save_IFS
12374
12375 fi
12376 fi
12377 CC=$ac_cv_prog_CC
12378 if test -n "$CC"; then
12379 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
12380 $as_echo "$CC" >&6; }
12381 else
12382 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
12383 $as_echo "no" >&6; }
12384 fi
12385
12386
12387 test -n "$CC" && break
12388 done
12389 fi
12390 if test -z "$CC"; then
12391 ac_ct_CC=$CC
12392 for ac_prog in cl.exe
12393 do
12394 # Extract the first word of "$ac_prog", so it can be a program name with args.
12395 set dummy $ac_prog; ac_word=$2
12396 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
12397 $as_echo_n "checking for $ac_word... " >&6; }
12398 if ${ac_cv_prog_ac_ct_CC+:} false; then :
12399 $as_echo_n "(cached) " >&6
12400 else
12401 if test -n "$ac_ct_CC"; then
12402 ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
12403 else
12404 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
12405 for as_dir in $PATH
12406 do
12407 IFS=$as_save_IFS
12408 test -z "$as_dir" && as_dir=.
12409 for ac_exec_ext in '' $ac_executable_extensions; do
12410 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
12411 ac_cv_prog_ac_ct_CC="$ac_prog"
12412 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
12413 break 2
12414 fi
12415 done
12416 done
12417 IFS=$as_save_IFS
12418
12419 fi
12420 fi
12421 ac_ct_CC=$ac_cv_prog_ac_ct_CC
12422 if test -n "$ac_ct_CC"; then
12423 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
12424 $as_echo "$ac_ct_CC" >&6; }
12425 else
12426 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
12427 $as_echo "no" >&6; }
12428 fi
12429
12430
12431 test -n "$ac_ct_CC" && break
12432 done
12433
12434 if test "x$ac_ct_CC" = x; then
12435 CC=""
12436 else
12437 case $cross_compiling:$ac_tool_warned in
12438 yes:)
12439 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
12440 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
12441 ac_tool_warned=yes ;;
12442 esac
12443 CC=$ac_ct_CC
12444 fi
12445 fi
12446
12447 fi
12448
12449
12450 test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
12451 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
12452 as_fn_error $? "no acceptable C compiler found in \$PATH
12453 See \`config.log' for more details" "$LINENO" 5; }
12454
12455 # Provide some information about the compiler.
12456 $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5
12457 set X $ac_compile
12458 ac_compiler=$2
12459 for ac_option in --version -v -V -qversion; do
12460 { { ac_try="$ac_compiler $ac_option >&5"
12461 case "(($ac_try" in
12462 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
12463 *) ac_try_echo=$ac_try;;
12464 esac
12465 eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
12466 $as_echo "$ac_try_echo"; } >&5
12467 (eval "$ac_compiler $ac_option >&5") 2>conftest.err
12468 ac_status=$?
12469 if test -s conftest.err; then
12470 sed '10a\
12471 ... rest of stderr output deleted ...
12472 10q' conftest.err >conftest.er1
12473 cat conftest.er1 >&5
12474 fi
12475 rm -f conftest.er1 conftest.err
12476 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
12477 test $ac_status = 0; }
12478 done
12479
12480 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5
12481 $as_echo_n "checking whether we are using the GNU C compiler... " >&6; }
12482 if ${ac_cv_c_compiler_gnu+:} false; then :
12483 $as_echo_n "(cached) " >&6
12484 else
12485 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
12486 /* end confdefs.h. */
12487
12488 int
12489 main ()
12490 {
12491 #ifndef __GNUC__
12492 choke me
12493 #endif
12494
12495 ;
12496 return 0;
12497 }
12498 _ACEOF
12499 if ac_fn_c_try_compile "$LINENO"; then :
12500 ac_compiler_gnu=yes
12501 else
12502 ac_compiler_gnu=no
12503 fi
12504 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
12505 ac_cv_c_compiler_gnu=$ac_compiler_gnu
12506
12507 fi
12508 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5
12509 $as_echo "$ac_cv_c_compiler_gnu" >&6; }
12510 if test $ac_compiler_gnu = yes; then
12511 GCC=yes
12512 else
12513 GCC=
12514 fi
12515 ac_test_CFLAGS=${CFLAGS+set}
12516 ac_save_CFLAGS=$CFLAGS
12517 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5
12518 $as_echo_n "checking whether $CC accepts -g... " >&6; }
12519 if ${ac_cv_prog_cc_g+:} false; then :
12520 $as_echo_n "(cached) " >&6
12521 else
12522 ac_save_c_werror_flag=$ac_c_werror_flag
12523 ac_c_werror_flag=yes
12524 ac_cv_prog_cc_g=no
12525 CFLAGS="-g"
12526 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
12527 /* end confdefs.h. */
12528
12529 int
12530 main ()
12531 {
12532
12533 ;
12534 return 0;
12535 }
12536 _ACEOF
12537 if ac_fn_c_try_compile "$LINENO"; then :
12538 ac_cv_prog_cc_g=yes
12539 else
12540 CFLAGS=""
12541 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
12542 /* end confdefs.h. */
12543
12544 int
12545 main ()
12546 {
12547
12548 ;
12549 return 0;
12550 }
12551 _ACEOF
12552 if ac_fn_c_try_compile "$LINENO"; then :
12553
12554 else
12555 ac_c_werror_flag=$ac_save_c_werror_flag
12556 CFLAGS="-g"
12557 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
12558 /* end confdefs.h. */
12559
12560 int
12561 main ()
12562 {
12563
12564 ;
12565 return 0;
12566 }
12567 _ACEOF
12568 if ac_fn_c_try_compile "$LINENO"; then :
12569 ac_cv_prog_cc_g=yes
12570 fi
12571 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
12572 fi
12573 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
12574 fi
12575 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
12576 ac_c_werror_flag=$ac_save_c_werror_flag
12577 fi
12578 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5
12579 $as_echo "$ac_cv_prog_cc_g" >&6; }
12580 if test "$ac_test_CFLAGS" = set; then
12581 CFLAGS=$ac_save_CFLAGS
12582 elif test $ac_cv_prog_cc_g = yes; then
12583 if test "$GCC" = yes; then
12584 CFLAGS="-g -O2"
12585 else
12586 CFLAGS="-g"
12587 fi
12588 else
12589 if test "$GCC" = yes; then
12590 CFLAGS="-O2"
12591 else
12592 CFLAGS=
12593 fi
12594 fi
12595 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5
12596 $as_echo_n "checking for $CC option to accept ISO C89... " >&6; }
12597 if ${ac_cv_prog_cc_c89+:} false; then :
12598 $as_echo_n "(cached) " >&6
12599 else
12600 ac_cv_prog_cc_c89=no
12601 ac_save_CC=$CC
12602 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
12603 /* end confdefs.h. */
12604 #include <stdarg.h>
12605 #include <stdio.h>
12606 struct stat;
12607 /* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */
12608 struct buf { int x; };
12609 FILE * (*rcsopen) (struct buf *, struct stat *, int);
12610 static char *e (p, i)
12611 char **p;
12612 int i;
12613 {
12614 return p[i];
12615 }
12616 static char *f (char * (*g) (char **, int), char **p, ...)
12617 {
12618 char *s;
12619 va_list v;
12620 va_start (v,p);
12621 s = g (p, va_arg (v,int));
12622 va_end (v);
12623 return s;
12624 }
12625
12626 /* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has
12627 function prototypes and stuff, but not '\xHH' hex character constants.
12628 These don't provoke an error unfortunately, instead are silently treated
12629 as 'x'. The following induces an error, until -std is added to get
12630 proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an
12631 array size at least. It's necessary to write '\x00'==0 to get something
12632 that's true only with -std. */
12633 int osf4_cc_array ['\x00' == 0 ? 1 : -1];
12634
12635 /* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters
12636 inside strings and character constants. */
12637 #define FOO(x) 'x'
12638 int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1];
12639
12640 int test (int i, double x);
12641 struct s1 {int (*f) (int a);};
12642 struct s2 {int (*f) (double a);};
12643 int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int);
12644 int argc;
12645 char **argv;
12646 int
12647 main ()
12648 {
12649 return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1];
12650 ;
12651 return 0;
12652 }
12653 _ACEOF
12654 for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \
12655 -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
12656 do
12657 CC="$ac_save_CC $ac_arg"
12658 if ac_fn_c_try_compile "$LINENO"; then :
12659 ac_cv_prog_cc_c89=$ac_arg
12660 fi
12661 rm -f core conftest.err conftest.$ac_objext
12662 test "x$ac_cv_prog_cc_c89" != "xno" && break
12663 done
12664 rm -f conftest.$ac_ext
12665 CC=$ac_save_CC
12666
12667 fi
12668 # AC_CACHE_VAL
12669 case "x$ac_cv_prog_cc_c89" in
12670 x)
12671 { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5
12672 $as_echo "none needed" >&6; } ;;
12673 xno)
12674 { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5
12675 $as_echo "unsupported" >&6; } ;;
12676 *)
12677 CC="$CC $ac_cv_prog_cc_c89"
12678 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5
12679 $as_echo "$ac_cv_prog_cc_c89" >&6; } ;;
12680 esac
12681 if test "x$ac_cv_prog_cc_c89" != xno; then :
12682
12683 fi
12684
12685 ac_ext=c
12686 ac_cpp='$CPP $CPPFLAGS'
12687 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
12688 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
12689 ac_compiler_gnu=$ac_cv_c_compiler_gnu
12690
12691 ac_ext=c
12692 ac_cpp='$CPP $CPPFLAGS'
12693 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
12694 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
12695 ac_compiler_gnu=$ac_cv_c_compiler_gnu
12696 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC understands -c and -o together" >&5
12697 $as_echo_n "checking whether $CC understands -c and -o together... " >&6; }
12698 if ${am_cv_prog_cc_c_o+:} false; then :
12699 $as_echo_n "(cached) " >&6
12700 else
12701 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
12702 /* end confdefs.h. */
12703
12704 int
12705 main ()
12706 {
12707
12708 ;
12709 return 0;
12710 }
12711 _ACEOF
12712 # Make sure it works both with $CC and with simple cc.
12713 # Following AC_PROG_CC_C_O, we do the test twice because some
12714 # compilers refuse to overwrite an existing .o file with -o,
12715 # though they will create one.
12716 am_cv_prog_cc_c_o=yes
12717 for am_i in 1 2; do
12718 if { echo "$as_me:$LINENO: $CC -c conftest.$ac_ext -o conftest2.$ac_objext" >&5
12719 ($CC -c conftest.$ac_ext -o conftest2.$ac_objext) >&5 2>&5
12720 ac_status=$?
12721 echo "$as_me:$LINENO: \$? = $ac_status" >&5
12722 (exit $ac_status); } \
12723 && test -f conftest2.$ac_objext; then
12724 : OK
12725 else
12726 am_cv_prog_cc_c_o=no
12727 break
12728 fi
12729 done
12730 rm -f core conftest*
12731 unset am_i
12732 fi
12733 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_prog_cc_c_o" >&5
12734 $as_echo "$am_cv_prog_cc_c_o" >&6; }
12735 if test "$am_cv_prog_cc_c_o" != yes; then
12736 # Losing compiler, so override with the script.
12737 # FIXME: It is wrong to rewrite CC.
12738 # But if we don't then we get into trouble of one sort or another.
12739 # A longer-term fix would be to have automake use am__CC in this case,
12740 # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)"
12741 CC="$am_aux_dir/compile $CC"
12742 fi
12743 ac_ext=c
12744 ac_cpp='$CPP $CPPFLAGS'
12745 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
12746 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
12747 ac_compiler_gnu=$ac_cv_c_compiler_gnu
12748
12749
12750 depcc="$CC" am_compiler_list=
12751
12752 { $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5
12753 $as_echo_n "checking dependency style of $depcc... " >&6; }
12754 if ${am_cv_CC_dependencies_compiler_type+:} false; then :
12755 $as_echo_n "(cached) " >&6
12756 else
12757 if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
12758 # We make a subdir and do the tests there. Otherwise we can end up
12759 # making bogus files that we don't know about and never remove. For
12760 # instance it was reported that on HP-UX the gcc test will end up
12761 # making a dummy file named 'D' -- because '-MD' means "put the output
12762 # in D".
12763 rm -rf conftest.dir
12764 mkdir conftest.dir
12765 # Copy depcomp to subdir because otherwise we won't find it if we're
12766 # using a relative directory.
12767 cp "$am_depcomp" conftest.dir
12768 cd conftest.dir
12769 # We will build objects and dependencies in a subdirectory because
12770 # it helps to detect inapplicable dependency modes. For instance
12771 # both Tru64's cc and ICC support -MD to output dependencies as a
12772 # side effect of compilation, but ICC will put the dependencies in
12773 # the current directory while Tru64 will put them in the object
12774 # directory.
12775 mkdir sub
12776
12777 am_cv_CC_dependencies_compiler_type=none
12778 if test "$am_compiler_list" = ""; then
12779 am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp`
12780 fi
12781 am__universal=false
12782 case " $depcc " in #(
12783 *\ -arch\ *\ -arch\ *) am__universal=true ;;
12784 esac
12785
12786 for depmode in $am_compiler_list; do
12787 # Setup a source with many dependencies, because some compilers
12788 # like to wrap large dependency lists on column 80 (with \), and
12789 # we should not choose a depcomp mode which is confused by this.
12790 #
12791 # We need to recreate these files for each test, as the compiler may
12792 # overwrite some of them when testing with obscure command lines.
12793 # This happens at least with the AIX C compiler.
12794 : > sub/conftest.c
12795 for i in 1 2 3 4 5 6; do
12796 echo '#include "conftst'$i'.h"' >> sub/conftest.c
12797 # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with
12798 # Solaris 10 /bin/sh.
12799 echo '/* dummy */' > sub/conftst$i.h
12800 done
12801 echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
12802
12803 # We check with '-c' and '-o' for the sake of the "dashmstdout"
12804 # mode. It turns out that the SunPro C++ compiler does not properly
12805 # handle '-M -o', and we need to detect this. Also, some Intel
12806 # versions had trouble with output in subdirs.
12807 am__obj=sub/conftest.${OBJEXT-o}
12808 am__minus_obj="-o $am__obj"
12809 case $depmode in
12810 gcc)
12811 # This depmode causes a compiler race in universal mode.
12812 test "$am__universal" = false || continue
12813 ;;
12814 nosideeffect)
12815 # After this tag, mechanisms are not by side-effect, so they'll
12816 # only be used when explicitly requested.
12817 if test "x$enable_dependency_tracking" = xyes; then
12818 continue
12819 else
12820 break
12821 fi
12822 ;;
12823 msvc7 | msvc7msys | msvisualcpp | msvcmsys)
12824 # This compiler won't grok '-c -o', but also, the minuso test has
12825 # not run yet. These depmodes are late enough in the game, and
12826 # so weak that their functioning should not be impacted.
12827 am__obj=conftest.${OBJEXT-o}
12828 am__minus_obj=
12829 ;;
12830 none) break ;;
12831 esac
12832 if depmode=$depmode \
12833 source=sub/conftest.c object=$am__obj \
12834 depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
12835 $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \
12836 >/dev/null 2>conftest.err &&
12837 grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 &&
12838 grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
12839 grep $am__obj sub/conftest.Po > /dev/null 2>&1 &&
12840 ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
12841 # icc doesn't choke on unknown options, it will just issue warnings
12842 # or remarks (even with -Werror). So we grep stderr for any message
12843 # that says an option was ignored or not supported.
12844 # When given -MP, icc 7.0 and 7.1 complain thusly:
12845 # icc: Command line warning: ignoring option '-M'; no argument required
12846 # The diagnosis changed in icc 8.0:
12847 # icc: Command line remark: option '-MP' not supported
12848 if (grep 'ignoring option' conftest.err ||
12849 grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
12850 am_cv_CC_dependencies_compiler_type=$depmode
12851 break
12852 fi
12853 fi
12854 done
12855
12856 cd ..
12857 rm -rf conftest.dir
12858 else
12859 am_cv_CC_dependencies_compiler_type=none
12860 fi
12861
12862 fi
12863 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CC_dependencies_compiler_type" >&5
12864 $as_echo "$am_cv_CC_dependencies_compiler_type" >&6; }
12865 CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type
12866
12867 if
12868 test "x$enable_dependency_tracking" != xno \
12869 && test "$am_cv_CC_dependencies_compiler_type" = gcc3; then
12870 am__fastdepCC_TRUE=
12871 am__fastdepCC_FALSE='#'
12872 else
12873 am__fastdepCC_TRUE='#'
12874 am__fastdepCC_FALSE=
12875 fi
12876
12877
12878
12879 ac_ext=c
12880 ac_cpp='$CPP $CPPFLAGS'
12881 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
12882 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
12883 ac_compiler_gnu=$ac_cv_c_compiler_gnu
12884 { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&5
12885 $as_echo_n "checking how to run the C preprocessor... " >&6; }
12886 # On Suns, sometimes $CPP names a directory.
12887 if test -n "$CPP" && test -d "$CPP"; then
12888 CPP=
12889 fi
12890 if test -z "$CPP"; then
12891 if ${ac_cv_prog_CPP+:} false; then :
12892 $as_echo_n "(cached) " >&6
12893 else
12894 # Double quotes because CPP needs to be expanded
12895 for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp"
12896 do
12897 ac_preproc_ok=false
12898 for ac_c_preproc_warn_flag in '' yes
12899 do
12900 # Use a header file that comes with gcc, so configuring glibc
12901 # with a fresh cross-compiler works.
12902 # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
12903 # <limits.h> exists even on freestanding compilers.
12904 # On the NeXT, cc -E runs the code through the compiler's parser,
12905 # not just through cpp. "Syntax error" is here to catch this case.
12906 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
12907 /* end confdefs.h. */
12908 #ifdef __STDC__
12909 # include <limits.h>
12910 #else
12911 # include <assert.h>
12912 #endif
12913 Syntax error
12914 _ACEOF
12915 if ac_fn_c_try_cpp "$LINENO"; then :
12916
12917 else
12918 # Broken: fails on valid input.
12919 continue
12920 fi
12921 rm -f conftest.err conftest.i conftest.$ac_ext
12922
12923 # OK, works on sane cases. Now check whether nonexistent headers
12924 # can be detected and how.
12925 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
12926 /* end confdefs.h. */
12927 #include <ac_nonexistent.h>
12928 _ACEOF
12929 if ac_fn_c_try_cpp "$LINENO"; then :
12930 # Broken: success on invalid input.
12931 continue
12932 else
12933 # Passes both tests.
12934 ac_preproc_ok=:
12935 break
12936 fi
12937 rm -f conftest.err conftest.i conftest.$ac_ext
12938
12939 done
12940 # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
12941 rm -f conftest.i conftest.err conftest.$ac_ext
12942 if $ac_preproc_ok; then :
12943 break
12944 fi
12945
12946 done
12947 ac_cv_prog_CPP=$CPP
12948
12949 fi
12950 CPP=$ac_cv_prog_CPP
12951 else
12952 ac_cv_prog_CPP=$CPP
12953 fi
12954 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CPP" >&5
12955 $as_echo "$CPP" >&6; }
12956 ac_preproc_ok=false
12957 for ac_c_preproc_warn_flag in '' yes
12958 do
12959 # Use a header file that comes with gcc, so configuring glibc
12960 # with a fresh cross-compiler works.
12961 # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
12962 # <limits.h> exists even on freestanding compilers.
12963 # On the NeXT, cc -E runs the code through the compiler's parser,
12964 # not just through cpp. "Syntax error" is here to catch this case.
12965 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
12966 /* end confdefs.h. */
12967 #ifdef __STDC__
12968 # include <limits.h>
12969 #else
12970 # include <assert.h>
12971 #endif
12972 Syntax error
12973 _ACEOF
12974 if ac_fn_c_try_cpp "$LINENO"; then :
12975
12976 else
12977 # Broken: fails on valid input.
12978 continue
12979 fi
12980 rm -f conftest.err conftest.i conftest.$ac_ext
12981
12982 # OK, works on sane cases. Now check whether nonexistent headers
12983 # can be detected and how.
12984 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
12985 /* end confdefs.h. */
12986 #include <ac_nonexistent.h>
12987 _ACEOF
12988 if ac_fn_c_try_cpp "$LINENO"; then :
12989 # Broken: success on invalid input.
12990 continue
12991 else
12992 # Passes both tests.
12993 ac_preproc_ok=:
12994 break
12995 fi
12996 rm -f conftest.err conftest.i conftest.$ac_ext
12997
12998 done
12999 # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
13000 rm -f conftest.i conftest.err conftest.$ac_ext
13001 if $ac_preproc_ok; then :
13002
13003 else
13004 { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
13005 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
13006 as_fn_error $? "C preprocessor \"$CPP\" fails sanity check
13007 See \`config.log' for more details" "$LINENO" 5; }
13008 fi
13009
13010 ac_ext=c
13011 ac_cpp='$CPP $CPPFLAGS'
13012 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
13013 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
13014 ac_compiler_gnu=$ac_cv_c_compiler_gnu
13015
13016 ac_ext=cpp
13017 ac_cpp='$CXXCPP $CPPFLAGS'
13018 ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
13019 ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
13020 ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
13021 if test -z "$CXX"; then
13022 if test -n "$CCC"; then
13023 CXX=$CCC
13024 else
13025 if test -n "$ac_tool_prefix"; then
13026 for ac_prog in g++ c++ gpp aCC CC cxx cc++ cl.exe FCC KCC RCC xlC_r xlC
13027 do
13028 # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
13029 set dummy $ac_tool_prefix$ac_prog; ac_word=$2
13030 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
13031 $as_echo_n "checking for $ac_word... " >&6; }
13032 if ${ac_cv_prog_CXX+:} false; then :
13033 $as_echo_n "(cached) " >&6
13034 else
13035 if test -n "$CXX"; then
13036 ac_cv_prog_CXX="$CXX" # Let the user override the test.
13037 else
13038 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
13039 for as_dir in $PATH
13040 do
13041 IFS=$as_save_IFS
13042 test -z "$as_dir" && as_dir=.
13043 for ac_exec_ext in '' $ac_executable_extensions; do
13044 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
13045 ac_cv_prog_CXX="$ac_tool_prefix$ac_prog"
13046 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
13047 break 2
13048 fi
13049 done
13050 done
13051 IFS=$as_save_IFS
13052
13053 fi
13054 fi
13055 CXX=$ac_cv_prog_CXX
13056 if test -n "$CXX"; then
13057 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CXX" >&5
13058 $as_echo "$CXX" >&6; }
13059 else
13060 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
13061 $as_echo "no" >&6; }
13062 fi
13063
13064
13065 test -n "$CXX" && break
13066 done
13067 fi
13068 if test -z "$CXX"; then
13069 ac_ct_CXX=$CXX
13070 for ac_prog in g++ c++ gpp aCC CC cxx cc++ cl.exe FCC KCC RCC xlC_r xlC
13071 do
13072 # Extract the first word of "$ac_prog", so it can be a program name with args.
13073 set dummy $ac_prog; ac_word=$2
13074 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
13075 $as_echo_n "checking for $ac_word... " >&6; }
13076 if ${ac_cv_prog_ac_ct_CXX+:} false; then :
13077 $as_echo_n "(cached) " >&6
13078 else
13079 if test -n "$ac_ct_CXX"; then
13080 ac_cv_prog_ac_ct_CXX="$ac_ct_CXX" # Let the user override the test.
13081 else
13082 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
13083 for as_dir in $PATH
13084 do
13085 IFS=$as_save_IFS
13086 test -z "$as_dir" && as_dir=.
13087 for ac_exec_ext in '' $ac_executable_extensions; do
13088 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
13089 ac_cv_prog_ac_ct_CXX="$ac_prog"
13090 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
13091 break 2
13092 fi
13093 done
13094 done
13095 IFS=$as_save_IFS
13096
13097 fi
13098 fi
13099 ac_ct_CXX=$ac_cv_prog_ac_ct_CXX
13100 if test -n "$ac_ct_CXX"; then
13101 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CXX" >&5
13102 $as_echo "$ac_ct_CXX" >&6; }
13103 else
13104 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
13105 $as_echo "no" >&6; }
13106 fi
13107
13108
13109 test -n "$ac_ct_CXX" && break
13110 done
13111
13112 if test "x$ac_ct_CXX" = x; then
13113 CXX="g++"
13114 else
13115 case $cross_compiling:$ac_tool_warned in
13116 yes:)
13117 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
13118 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
13119 ac_tool_warned=yes ;;
13120 esac
13121 CXX=$ac_ct_CXX
13122 fi
13123 fi
13124
13125 fi
13126 fi
13127 # Provide some information about the compiler.
13128 $as_echo "$as_me:${as_lineno-$LINENO}: checking for C++ compiler version" >&5
13129 set X $ac_compile
13130 ac_compiler=$2
13131 for ac_option in --version -v -V -qversion; do
13132 { { ac_try="$ac_compiler $ac_option >&5"
13133 case "(($ac_try" in
13134 *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
13135 *) ac_try_echo=$ac_try;;
13136 esac
13137 eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
13138 $as_echo "$ac_try_echo"; } >&5
13139 (eval "$ac_compiler $ac_option >&5") 2>conftest.err
13140 ac_status=$?
13141 if test -s conftest.err; then
13142 sed '10a\
13143 ... rest of stderr output deleted ...
13144 10q' conftest.err >conftest.er1
13145 cat conftest.er1 >&5
13146 fi
13147 rm -f conftest.er1 conftest.err
13148 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
13149 test $ac_status = 0; }
13150 done
13151
13152 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C++ compiler" >&5
13153 $as_echo_n "checking whether we are using the GNU C++ compiler... " >&6; }
13154 if ${ac_cv_cxx_compiler_gnu+:} false; then :
13155 $as_echo_n "(cached) " >&6
13156 else
13157 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
13158 /* end confdefs.h. */
13159
13160 int
13161 main ()
13162 {
13163 #ifndef __GNUC__
13164 choke me
13165 #endif
13166
13167 ;
13168 return 0;
13169 }
13170 _ACEOF
13171 if ac_fn_cxx_try_compile "$LINENO"; then :
13172 ac_compiler_gnu=yes
13173 else
13174 ac_compiler_gnu=no
13175 fi
13176 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
13177 ac_cv_cxx_compiler_gnu=$ac_compiler_gnu
13178
13179 fi
13180 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_cxx_compiler_gnu" >&5
13181 $as_echo "$ac_cv_cxx_compiler_gnu" >&6; }
13182 if test $ac_compiler_gnu = yes; then
13183 GXX=yes
13184 else
13185 GXX=
13186 fi
13187 ac_test_CXXFLAGS=${CXXFLAGS+set}
13188 ac_save_CXXFLAGS=$CXXFLAGS
13189 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CXX accepts -g" >&5
13190 $as_echo_n "checking whether $CXX accepts -g... " >&6; }
13191 if ${ac_cv_prog_cxx_g+:} false; then :
13192 $as_echo_n "(cached) " >&6
13193 else
13194 ac_save_cxx_werror_flag=$ac_cxx_werror_flag
13195 ac_cxx_werror_flag=yes
13196 ac_cv_prog_cxx_g=no
13197 CXXFLAGS="-g"
13198 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
13199 /* end confdefs.h. */
13200
13201 int
13202 main ()
13203 {
13204
13205 ;
13206 return 0;
13207 }
13208 _ACEOF
13209 if ac_fn_cxx_try_compile "$LINENO"; then :
13210 ac_cv_prog_cxx_g=yes
13211 else
13212 CXXFLAGS=""
13213 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
13214 /* end confdefs.h. */
13215
13216 int
13217 main ()
13218 {
13219
13220 ;
13221 return 0;
13222 }
13223 _ACEOF
13224 if ac_fn_cxx_try_compile "$LINENO"; then :
13225
13226 else
13227 ac_cxx_werror_flag=$ac_save_cxx_werror_flag
13228 CXXFLAGS="-g"
13229 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
13230 /* end confdefs.h. */
13231
13232 int
13233 main ()
13234 {
13235
13236 ;
13237 return 0;
13238 }
13239 _ACEOF
13240 if ac_fn_cxx_try_compile "$LINENO"; then :
13241 ac_cv_prog_cxx_g=yes
13242 fi
13243 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
13244 fi
13245 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
13246 fi
13247 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
13248 ac_cxx_werror_flag=$ac_save_cxx_werror_flag
13249 fi
13250 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cxx_g" >&5
13251 $as_echo "$ac_cv_prog_cxx_g" >&6; }
13252 if test "$ac_test_CXXFLAGS" = set; then
13253 CXXFLAGS=$ac_save_CXXFLAGS
13254 elif test $ac_cv_prog_cxx_g = yes; then
13255 if test "$GXX" = yes; then
13256 CXXFLAGS="-g -O2"
13257 else
13258 CXXFLAGS="-g"
13259 fi
13260 else
13261 if test "$GXX" = yes; then
13262 CXXFLAGS="-O2"
13263 else
13264 CXXFLAGS=
13265 fi
13266 fi
13267 ac_ext=c
13268 ac_cpp='$CPP $CPPFLAGS'
13269 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
13270 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
13271 ac_compiler_gnu=$ac_cv_c_compiler_gnu
13272
13273 depcc="$CXX" am_compiler_list=
13274
13275 { $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5
13276 $as_echo_n "checking dependency style of $depcc... " >&6; }
13277 if ${am_cv_CXX_dependencies_compiler_type+:} false; then :
13278 $as_echo_n "(cached) " >&6
13279 else
13280 if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
13281 # We make a subdir and do the tests there. Otherwise we can end up
13282 # making bogus files that we don't know about and never remove. For
13283 # instance it was reported that on HP-UX the gcc test will end up
13284 # making a dummy file named 'D' -- because '-MD' means "put the output
13285 # in D".
13286 rm -rf conftest.dir
13287 mkdir conftest.dir
13288 # Copy depcomp to subdir because otherwise we won't find it if we're
13289 # using a relative directory.
13290 cp "$am_depcomp" conftest.dir
13291 cd conftest.dir
13292 # We will build objects and dependencies in a subdirectory because
13293 # it helps to detect inapplicable dependency modes. For instance
13294 # both Tru64's cc and ICC support -MD to output dependencies as a
13295 # side effect of compilation, but ICC will put the dependencies in
13296 # the current directory while Tru64 will put them in the object
13297 # directory.
13298 mkdir sub
13299
13300 am_cv_CXX_dependencies_compiler_type=none
13301 if test "$am_compiler_list" = ""; then
13302 am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp`
13303 fi
13304 am__universal=false
13305 case " $depcc " in #(
13306 *\ -arch\ *\ -arch\ *) am__universal=true ;;
13307 esac
13308
13309 for depmode in $am_compiler_list; do
13310 # Setup a source with many dependencies, because some compilers
13311 # like to wrap large dependency lists on column 80 (with \), and
13312 # we should not choose a depcomp mode which is confused by this.
13313 #
13314 # We need to recreate these files for each test, as the compiler may
13315 # overwrite some of them when testing with obscure command lines.
13316 # This happens at least with the AIX C compiler.
13317 : > sub/conftest.c
13318 for i in 1 2 3 4 5 6; do
13319 echo '#include "conftst'$i'.h"' >> sub/conftest.c
13320 # Using ": > sub/conftst$i.h" creates only sub/conftst1.h with
13321 # Solaris 10 /bin/sh.
13322 echo '/* dummy */' > sub/conftst$i.h
13323 done
13324 echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
13325
13326 # We check with '-c' and '-o' for the sake of the "dashmstdout"
13327 # mode. It turns out that the SunPro C++ compiler does not properly
13328 # handle '-M -o', and we need to detect this. Also, some Intel
13329 # versions had trouble with output in subdirs.
13330 am__obj=sub/conftest.${OBJEXT-o}
13331 am__minus_obj="-o $am__obj"
13332 case $depmode in
13333 gcc)
13334 # This depmode causes a compiler race in universal mode.
13335 test "$am__universal" = false || continue
13336 ;;
13337 nosideeffect)
13338 # After this tag, mechanisms are not by side-effect, so they'll
13339 # only be used when explicitly requested.
13340 if test "x$enable_dependency_tracking" = xyes; then
13341 continue
13342 else
13343 break
13344 fi
13345 ;;
13346 msvc7 | msvc7msys | msvisualcpp | msvcmsys)
13347 # This compiler won't grok '-c -o', but also, the minuso test has
13348 # not run yet. These depmodes are late enough in the game, and
13349 # so weak that their functioning should not be impacted.
13350 am__obj=conftest.${OBJEXT-o}
13351 am__minus_obj=
13352 ;;
13353 none) break ;;
13354 esac
13355 if depmode=$depmode \
13356 source=sub/conftest.c object=$am__obj \
13357 depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
13358 $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \
13359 >/dev/null 2>conftest.err &&
13360 grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 &&
13361 grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
13362 grep $am__obj sub/conftest.Po > /dev/null 2>&1 &&
13363 ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
13364 # icc doesn't choke on unknown options, it will just issue warnings
13365 # or remarks (even with -Werror). So we grep stderr for any message
13366 # that says an option was ignored or not supported.
13367 # When given -MP, icc 7.0 and 7.1 complain thusly:
13368 # icc: Command line warning: ignoring option '-M'; no argument required
13369 # The diagnosis changed in icc 8.0:
13370 # icc: Command line remark: option '-MP' not supported
13371 if (grep 'ignoring option' conftest.err ||
13372 grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
13373 am_cv_CXX_dependencies_compiler_type=$depmode
13374 break
13375 fi
13376 fi
13377 done
13378
13379 cd ..
13380 rm -rf conftest.dir
13381 else
13382 am_cv_CXX_dependencies_compiler_type=none
13383 fi
13384
13385 fi
13386 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CXX_dependencies_compiler_type" >&5
13387 $as_echo "$am_cv_CXX_dependencies_compiler_type" >&6; }
13388 CXXDEPMODE=depmode=$am_cv_CXX_dependencies_compiler_type
13389
13390 if
13391 test "x$enable_dependency_tracking" != xno \
13392 && test "$am_cv_CXX_dependencies_compiler_type" = gcc3; then
13393 am__fastdepCXX_TRUE=
13394 am__fastdepCXX_FALSE='#'
13395 else
13396 am__fastdepCXX_TRUE='#'
13397 am__fastdepCXX_FALSE=
13398 fi
13399
13400
13401
13402
13403 func_stripname_cnf ()
13404 {
13405 case $2 in
13406 .*) func_stripname_result=`$ECHO "$3" | $SED "s%^$1%%; s%\\\\$2\$%%"`;;
13407 *) func_stripname_result=`$ECHO "$3" | $SED "s%^$1%%; s%$2\$%%"`;;
13408 esac
13409 } # func_stripname_cnf
13410
13411 if test -n "$CXX" && ( test no != "$CXX" &&
13412 ( (test g++ = "$CXX" && `g++ -v >/dev/null 2>&1` ) ||
13413 (test g++ != "$CXX"))); then
13414 ac_ext=cpp
13415 ac_cpp='$CXXCPP $CPPFLAGS'
13416 ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
13417 ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
13418 ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
13419 { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C++ preprocessor" >&5
13420 $as_echo_n "checking how to run the C++ preprocessor... " >&6; }
13421 if test -z "$CXXCPP"; then
13422 if ${ac_cv_prog_CXXCPP+:} false; then :
13423 $as_echo_n "(cached) " >&6
13424 else
13425 # Double quotes because CXXCPP needs to be expanded
13426 for CXXCPP in "$CXX -E" "/lib/cpp"
13427 do
13428 ac_preproc_ok=false
13429 for ac_cxx_preproc_warn_flag in '' yes
13430 do
13431 # Use a header file that comes with gcc, so configuring glibc
13432 # with a fresh cross-compiler works.
13433 # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
13434 # <limits.h> exists even on freestanding compilers.
13435 # On the NeXT, cc -E runs the code through the compiler's parser,
13436 # not just through cpp. "Syntax error" is here to catch this case.
13437 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
13438 /* end confdefs.h. */
13439 #ifdef __STDC__
13440 # include <limits.h>
13441 #else
13442 # include <assert.h>
13443 #endif
13444 Syntax error
13445 _ACEOF
13446 if ac_fn_cxx_try_cpp "$LINENO"; then :
13447
13448 else
13449 # Broken: fails on valid input.
13450 continue
13451 fi
13452 rm -f conftest.err conftest.i conftest.$ac_ext
13453
13454 # OK, works on sane cases. Now check whether nonexistent headers
13455 # can be detected and how.
13456 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
13457 /* end confdefs.h. */
13458 #include <ac_nonexistent.h>
13459 _ACEOF
13460 if ac_fn_cxx_try_cpp "$LINENO"; then :
13461 # Broken: success on invalid input.
13462 continue
13463 else
13464 # Passes both tests.
13465 ac_preproc_ok=:
13466 break
13467 fi
13468 rm -f conftest.err conftest.i conftest.$ac_ext
13469
13470 done
13471 # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
13472 rm -f conftest.i conftest.err conftest.$ac_ext
13473 if $ac_preproc_ok; then :
13474 break
13475 fi
13476
13477 done
13478 ac_cv_prog_CXXCPP=$CXXCPP
13479
13480 fi
13481 CXXCPP=$ac_cv_prog_CXXCPP
13482 else
13483 ac_cv_prog_CXXCPP=$CXXCPP
13484 fi
13485 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CXXCPP" >&5
13486 $as_echo "$CXXCPP" >&6; }
13487 ac_preproc_ok=false
13488 for ac_cxx_preproc_warn_flag in '' yes
13489 do
13490 # Use a header file that comes with gcc, so configuring glibc
13491 # with a fresh cross-compiler works.
13492 # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
13493 # <limits.h> exists even on freestanding compilers.
13494 # On the NeXT, cc -E runs the code through the compiler's parser,
13495 # not just through cpp. "Syntax error" is here to catch this case.
13496 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
13497 /* end confdefs.h. */
13498 #ifdef __STDC__
13499 # include <limits.h>
13500 #else
13501 # include <assert.h>
13502 #endif
13503 Syntax error
13504 _ACEOF
13505 if ac_fn_cxx_try_cpp "$LINENO"; then :
13506
13507 else
13508 # Broken: fails on valid input.
13509 continue
13510 fi
13511 rm -f conftest.err conftest.i conftest.$ac_ext
13512
13513 # OK, works on sane cases. Now check whether nonexistent headers
13514 # can be detected and how.
13515 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
13516 /* end confdefs.h. */
13517 #include <ac_nonexistent.h>
13518 _ACEOF
13519 if ac_fn_cxx_try_cpp "$LINENO"; then :
13520 # Broken: success on invalid input.
13521 continue
13522 else
13523 # Passes both tests.
13524 ac_preproc_ok=:
13525 break
13526 fi
13527 rm -f conftest.err conftest.i conftest.$ac_ext
13528
13529 done
13530 # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
13531 rm -f conftest.i conftest.err conftest.$ac_ext
13532 if $ac_preproc_ok; then :
13533
13534 else
13535 { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
13536 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
13537 as_fn_error $? "C++ preprocessor \"$CXXCPP\" fails sanity check
13538 See \`config.log' for more details" "$LINENO" 5; }
13539 fi
13540
13541 ac_ext=c
13542 ac_cpp='$CPP $CPPFLAGS'
13543 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
13544 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
13545 ac_compiler_gnu=$ac_cv_c_compiler_gnu
13546
13547 else
13548 _lt_caught_CXX_error=yes
13549 fi
13550
13551 ac_ext=cpp
13552 ac_cpp='$CXXCPP $CPPFLAGS'
13553 ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
13554 ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
13555 ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
13556
13557 archive_cmds_need_lc_CXX=no
13558 allow_undefined_flag_CXX=
13559 always_export_symbols_CXX=no
13560 archive_expsym_cmds_CXX=
13561 compiler_needs_object_CXX=no
13562 export_dynamic_flag_spec_CXX=
13563 hardcode_direct_CXX=no
13564 hardcode_direct_absolute_CXX=no
13565 hardcode_libdir_flag_spec_CXX=
13566 hardcode_libdir_separator_CXX=
13567 hardcode_minus_L_CXX=no
13568 hardcode_shlibpath_var_CXX=unsupported
13569 hardcode_automatic_CXX=no
13570 inherit_rpath_CXX=no
13571 module_cmds_CXX=
13572 module_expsym_cmds_CXX=
13573 link_all_deplibs_CXX=unknown
13574 old_archive_cmds_CXX=$old_archive_cmds
13575 reload_flag_CXX=$reload_flag
13576 reload_cmds_CXX=$reload_cmds
13577 no_undefined_flag_CXX=
13578 whole_archive_flag_spec_CXX=
13579 enable_shared_with_static_runtimes_CXX=no
13580
13581 # Source file extension for C++ test sources.
13582 ac_ext=cpp
13583
13584 # Object file extension for compiled C++ test sources.
13585 objext=o
13586 objext_CXX=$objext
13587
13588 # No sense in running all these tests if we already determined that
13589 # the CXX compiler isn't working. Some variables (like enable_shared)
13590 # are currently assumed to apply to all compilers on this platform,
13591 # and will be corrupted by setting them based on a non-working compiler.
13592 if test yes != "$_lt_caught_CXX_error"; then
13593 # Code to be used in simple compile tests
13594 lt_simple_compile_test_code="int some_variable = 0;"
13595
13596 # Code to be used in simple link tests
13597 lt_simple_link_test_code='int main(int, char *[]) { return(0); }'
13598
13599 # ltmain only uses $CC for tagged configurations so make sure $CC is set.
13600
13601
13602
13603
13604
13605
13606 # If no C compiler was specified, use CC.
13607 LTCC=${LTCC-"$CC"}
13608
13609 # If no C compiler flags were specified, use CFLAGS.
13610 LTCFLAGS=${LTCFLAGS-"$CFLAGS"}
13611
13612 # Allow CC to be a program name with arguments.
13613 compiler=$CC
13614
13615
13616 # save warnings/boilerplate of simple test code
13617 ac_outfile=conftest.$ac_objext
13618 echo "$lt_simple_compile_test_code" >conftest.$ac_ext
13619 eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
13620 _lt_compiler_boilerplate=`cat conftest.err`
13621 $RM conftest*
13622
13623 ac_outfile=conftest.$ac_objext
13624 echo "$lt_simple_link_test_code" >conftest.$ac_ext
13625 eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err
13626 _lt_linker_boilerplate=`cat conftest.err`
13627 $RM -r conftest*
13628
13629
13630 # Allow CC to be a program name with arguments.
13631 lt_save_CC=$CC
13632 lt_save_CFLAGS=$CFLAGS
13633 lt_save_LD=$LD
13634 lt_save_GCC=$GCC
13635 GCC=$GXX
13636 lt_save_with_gnu_ld=$with_gnu_ld
13637 lt_save_path_LD=$lt_cv_path_LD
13638 if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then
13639 lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx
13640 else
13641 $as_unset lt_cv_prog_gnu_ld
13642 fi
13643 if test -n "${lt_cv_path_LDCXX+set}"; then
13644 lt_cv_path_LD=$lt_cv_path_LDCXX
13645 else
13646 $as_unset lt_cv_path_LD
13647 fi
13648 test -z "${LDCXX+set}" || LD=$LDCXX
13649 CC=${CXX-"c++"}
13650 CFLAGS=$CXXFLAGS
13651 compiler=$CC
13652 compiler_CXX=$CC
13653 func_cc_basename $compiler
13654 cc_basename=$func_cc_basename_result
13655
13656
13657 if test -n "$compiler"; then
13658 # We don't want -fno-exception when compiling C++ code, so set the
13659 # no_builtin_flag separately
13660 if test yes = "$GXX"; then
13661 lt_prog_compiler_no_builtin_flag_CXX=' -fno-builtin'
13662 else
13663 lt_prog_compiler_no_builtin_flag_CXX=
13664 fi
13665
13666 if test yes = "$GXX"; then
13667 # Set up default GNU C++ configuration
13668
13669
13670
13671 # Check whether --with-gnu-ld was given.
13672 if test "${with_gnu_ld+set}" = set; then :
13673 withval=$with_gnu_ld; test no = "$withval" || with_gnu_ld=yes
13674 else
13675 with_gnu_ld=no
13676 fi
13677
13678 ac_prog=ld
13679 if test yes = "$GCC"; then
13680 # Check if gcc -print-prog-name=ld gives a path.
13681 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld used by $CC" >&5
13682 $as_echo_n "checking for ld used by $CC... " >&6; }
13683 case $host in
13684 *-*-mingw*)
13685 # gcc leaves a trailing carriage return, which upsets mingw
13686 ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;;
13687 *)
13688 ac_prog=`($CC -print-prog-name=ld) 2>&5` ;;
13689 esac
13690 case $ac_prog in
13691 # Accept absolute paths.
13692 [\\/]* | ?:[\\/]*)
13693 re_direlt='/[^/][^/]*/\.\./'
13694 # Canonicalize the pathname of ld
13695 ac_prog=`$ECHO "$ac_prog"| $SED 's%\\\\%/%g'`
13696 while $ECHO "$ac_prog" | $GREP "$re_direlt" > /dev/null 2>&1; do
13697 ac_prog=`$ECHO $ac_prog| $SED "s%$re_direlt%/%"`
13698 done
13699 test -z "$LD" && LD=$ac_prog
13700 ;;
13701 "")
13702 # If it fails, then pretend we aren't using GCC.
13703 ac_prog=ld
13704 ;;
13705 *)
13706 # If it is relative, then search for the first ld in PATH.
13707 with_gnu_ld=unknown
13708 ;;
13709 esac
13710 elif test yes = "$with_gnu_ld"; then
13711 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5
13712 $as_echo_n "checking for GNU ld... " >&6; }
13713 else
13714 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5
13715 $as_echo_n "checking for non-GNU ld... " >&6; }
13716 fi
13717 if ${lt_cv_path_LD+:} false; then :
13718 $as_echo_n "(cached) " >&6
13719 else
13720 if test -z "$LD"; then
13721 lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR
13722 for ac_dir in $PATH; do
13723 IFS=$lt_save_ifs
13724 test -z "$ac_dir" && ac_dir=.
13725 if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then
13726 lt_cv_path_LD=$ac_dir/$ac_prog
13727 # Check to see if the program is GNU ld. I'd rather use --version,
13728 # but apparently some variants of GNU ld only accept -v.
13729 # Break only if it was the GNU/non-GNU ld that we prefer.
13730 case `"$lt_cv_path_LD" -v 2>&1 </dev/null` in
13731 *GNU* | *'with BFD'*)
13732 test no != "$with_gnu_ld" && break
13733 ;;
13734 *)
13735 test yes != "$with_gnu_ld" && break
13736 ;;
13737 esac
13738 fi
13739 done
13740 IFS=$lt_save_ifs
13741 else
13742 lt_cv_path_LD=$LD # Let the user override the test with a path.
13743 fi
13744 fi
13745
13746 LD=$lt_cv_path_LD
13747 if test -n "$LD"; then
13748 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LD" >&5
13749 $as_echo "$LD" >&6; }
13750 else
13751 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
13752 $as_echo "no" >&6; }
13753 fi
13754 test -z "$LD" && as_fn_error $? "no acceptable ld found in \$PATH" "$LINENO" 5
13755 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5
13756 $as_echo_n "checking if the linker ($LD) is GNU ld... " >&6; }
13757 if ${lt_cv_prog_gnu_ld+:} false; then :
13758 $as_echo_n "(cached) " >&6
13759 else
13760 # I'd rather use --version here, but apparently some GNU lds only accept -v.
13761 case `$LD -v 2>&1 </dev/null` in
13762 *GNU* | *'with BFD'*)
13763 lt_cv_prog_gnu_ld=yes
13764 ;;
13765 *)
13766 lt_cv_prog_gnu_ld=no
13767 ;;
13768 esac
13769 fi
13770 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_gnu_ld" >&5
13771 $as_echo "$lt_cv_prog_gnu_ld" >&6; }
13772 with_gnu_ld=$lt_cv_prog_gnu_ld
13773
13774
13775
13776
13777
13778
13779
13780 # Check if GNU C++ uses GNU ld as the underlying linker, since the
13781 # archiving commands below assume that GNU ld is being used.
13782 if test yes = "$with_gnu_ld"; then
13783 archive_cmds_CXX='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
13784 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'
13785
13786 hardcode_libdir_flag_spec_CXX='$wl-rpath $wl$libdir'
13787 export_dynamic_flag_spec_CXX='$wl--export-dynamic'
13788
13789 # If archive_cmds runs LD, not CC, wlarc should be empty
13790 # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to
13791 # investigate it a little bit more. (MM)
13792 wlarc='$wl'
13793
13794 # ancient GNU ld didn't support --whole-archive et. al.
13795 if eval "`$CC -print-prog-name=ld` --help 2>&1" |
13796 $GREP 'no-whole-archive' > /dev/null; then
13797 whole_archive_flag_spec_CXX=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive'
13798 else
13799 whole_archive_flag_spec_CXX=
13800 fi
13801 else
13802 with_gnu_ld=no
13803 wlarc=
13804
13805 # A generic and very simple default shared library creation
13806 # command for GNU C++ for the case where it uses the native
13807 # linker, instead of GNU ld. If possible, this setting should
13808 # overridden to take advantage of the native linker features on
13809 # the platform it is being used on.
13810 archive_cmds_CXX='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
13811 fi
13812
13813 # Commands to make compiler produce verbose output that lists
13814 # what "hidden" libraries, object files and flags are used when
13815 # linking a shared library.
13816 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
13817
13818 else
13819 GXX=no
13820 with_gnu_ld=no
13821 wlarc=
13822 fi
13823
13824 # PORTME: fill in a description of your system's C++ link characteristics
13825 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&5
13826 $as_echo_n "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; }
13827 ld_shlibs_CXX=yes
13828 case $host_os in
13829 aix3*)
13830 # FIXME: insert proper C++ library support
13831 ld_shlibs_CXX=no
13832 ;;
13833 aix[4-9]*)
13834 if test ia64 = "$host_cpu"; then
13835 # On IA64, the linker does run time linking by default, so we don't
13836 # have to do anything special.
13837 aix_use_runtimelinking=no
13838 exp_sym_flag='-Bexport'
13839 no_entry_flag=
13840 else
13841 aix_use_runtimelinking=no
13842
13843 # Test if we are trying to use run time linking or normal
13844 # AIX style linking. If -brtl is somewhere in LDFLAGS, we
13845 # have runtime linking enabled, and use it for executables.
13846 # For shared libraries, we enable/disable runtime linking
13847 # depending on the kind of the shared library created -
13848 # when "with_aix_soname,aix_use_runtimelinking" is:
13849 # "aix,no" lib.a(lib.so.V) shared, rtl:no, for executables
13850 # "aix,yes" lib.so shared, rtl:yes, for executables
13851 # lib.a static archive
13852 # "both,no" lib.so.V(shr.o) shared, rtl:yes
13853 # lib.a(lib.so.V) shared, rtl:no, for executables
13854 # "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables
13855 # lib.a(lib.so.V) shared, rtl:no
13856 # "svr4,*" lib.so.V(shr.o) shared, rtl:yes, for executables
13857 # lib.a static archive
13858 case $host_os in aix4.[23]|aix4.[23].*|aix[5-9]*)
13859 for ld_flag in $LDFLAGS; do
13860 case $ld_flag in
13861 *-brtl*)
13862 aix_use_runtimelinking=yes
13863 break
13864 ;;
13865 esac
13866 done
13867 if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then
13868 # With aix-soname=svr4, we create the lib.so.V shared archives only,
13869 # so we don't have lib.a shared libs to link our executables.
13870 # We have to force runtime linking in this case.
13871 aix_use_runtimelinking=yes
13872 LDFLAGS="$LDFLAGS -Wl,-brtl"
13873 fi
13874 ;;
13875 esac
13876
13877 exp_sym_flag='-bexport'
13878 no_entry_flag='-bnoentry'
13879 fi
13880
13881 # When large executables or shared objects are built, AIX ld can
13882 # have problems creating the table of contents. If linking a library
13883 # or program results in "error TOC overflow" add -mminimal-toc to
13884 # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not
13885 # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS.
13886
13887 archive_cmds_CXX=''
13888 hardcode_direct_CXX=yes
13889 hardcode_direct_absolute_CXX=yes
13890 hardcode_libdir_separator_CXX=':'
13891 link_all_deplibs_CXX=yes
13892 file_list_spec_CXX='$wl-f,'
13893 case $with_aix_soname,$aix_use_runtimelinking in
13894 aix,*) ;; # no import file
13895 svr4,* | *,yes) # use import file
13896 # The Import File defines what to hardcode.
13897 hardcode_direct_CXX=no
13898 hardcode_direct_absolute_CXX=no
13899 ;;
13900 esac
13901
13902 if test yes = "$GXX"; then
13903 case $host_os in aix4.[012]|aix4.[012].*)
13904 # We only want to do this on AIX 4.2 and lower, the check
13905 # below for broken collect2 doesn't work under 4.3+
13906 collect2name=`$CC -print-prog-name=collect2`
13907 if test -f "$collect2name" &&
13908 strings "$collect2name" | $GREP resolve_lib_name >/dev/null
13909 then
13910 # We have reworked collect2
13911 :
13912 else
13913 # We have old collect2
13914 hardcode_direct_CXX=unsupported
13915 # It fails to find uninstalled libraries when the uninstalled
13916 # path is not listed in the libpath. Setting hardcode_minus_L
13917 # to unsupported forces relinking
13918 hardcode_minus_L_CXX=yes
13919 hardcode_libdir_flag_spec_CXX='-L$libdir'
13920 hardcode_libdir_separator_CXX=
13921 fi
13922 esac
13923 shared_flag='-shared'
13924 if test yes = "$aix_use_runtimelinking"; then
13925 shared_flag=$shared_flag' $wl-G'
13926 fi
13927 # Need to ensure runtime linking is disabled for the traditional
13928 # shared library, or the linker may eventually find shared libraries
13929 # /with/ Import File - we do not want to mix them.
13930 shared_flag_aix='-shared'
13931 shared_flag_svr4='-shared $wl-G'
13932 else
13933 # not using gcc
13934 if test ia64 = "$host_cpu"; then
13935 # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release
13936 # chokes on -Wl,-G. The following line is correct:
13937 shared_flag='-G'
13938 else
13939 if test yes = "$aix_use_runtimelinking"; then
13940 shared_flag='$wl-G'
13941 else
13942 shared_flag='$wl-bM:SRE'
13943 fi
13944 shared_flag_aix='$wl-bM:SRE'
13945 shared_flag_svr4='$wl-G'
13946 fi
13947 fi
13948
13949 export_dynamic_flag_spec_CXX='$wl-bexpall'
13950 # It seems that -bexpall does not export symbols beginning with
13951 # underscore (_), so it is better to generate a list of symbols to
13952 # export.
13953 always_export_symbols_CXX=yes
13954 if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then
13955 # Warning - without using the other runtime loading flags (-brtl),
13956 # -berok will link without error, but may produce a broken library.
13957 # The "-G" linker flag allows undefined symbols.
13958 no_undefined_flag_CXX='-bernotok'
13959 # Determine the default libpath from the value encoded in an empty
13960 # executable.
13961 if test set = "${lt_cv_aix_libpath+set}"; then
13962 aix_libpath=$lt_cv_aix_libpath
13963 else
13964 if ${lt_cv_aix_libpath__CXX+:} false; then :
13965 $as_echo_n "(cached) " >&6
13966 else
13967 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
13968 /* end confdefs.h. */
13969
13970 int
13971 main ()
13972 {
13973
13974 ;
13975 return 0;
13976 }
13977 _ACEOF
13978 if ac_fn_cxx_try_link "$LINENO"; then :
13979
13980 lt_aix_libpath_sed='
13981 /Import File Strings/,/^$/ {
13982 /^0/ {
13983 s/^0 *\([^ ]*\) *$/\1/
13984 p
13985 }
13986 }'
13987 lt_cv_aix_libpath__CXX=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
13988 # Check for a 64-bit object if we didn't find anything.
13989 if test -z "$lt_cv_aix_libpath__CXX"; then
13990 lt_cv_aix_libpath__CXX=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
13991 fi
13992 fi
13993 rm -f core conftest.err conftest.$ac_objext \
13994 conftest$ac_exeext conftest.$ac_ext
13995 if test -z "$lt_cv_aix_libpath__CXX"; then
13996 lt_cv_aix_libpath__CXX=/usr/lib:/lib
13997 fi
13998
13999 fi
14000
14001 aix_libpath=$lt_cv_aix_libpath__CXX
14002 fi
14003
14004 hardcode_libdir_flag_spec_CXX='$wl-blibpath:$libdir:'"$aix_libpath"
14005
14006 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
14007 else
14008 if test ia64 = "$host_cpu"; then
14009 hardcode_libdir_flag_spec_CXX='$wl-R $libdir:/usr/lib:/lib'
14010 allow_undefined_flag_CXX="-z nodefs"
14011 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"
14012 else
14013 # Determine the default libpath from the value encoded in an
14014 # empty executable.
14015 if test set = "${lt_cv_aix_libpath+set}"; then
14016 aix_libpath=$lt_cv_aix_libpath
14017 else
14018 if ${lt_cv_aix_libpath__CXX+:} false; then :
14019 $as_echo_n "(cached) " >&6
14020 else
14021 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
14022 /* end confdefs.h. */
14023
14024 int
14025 main ()
14026 {
14027
14028 ;
14029 return 0;
14030 }
14031 _ACEOF
14032 if ac_fn_cxx_try_link "$LINENO"; then :
14033
14034 lt_aix_libpath_sed='
14035 /Import File Strings/,/^$/ {
14036 /^0/ {
14037 s/^0 *\([^ ]*\) *$/\1/
14038 p
14039 }
14040 }'
14041 lt_cv_aix_libpath__CXX=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
14042 # Check for a 64-bit object if we didn't find anything.
14043 if test -z "$lt_cv_aix_libpath__CXX"; then
14044 lt_cv_aix_libpath__CXX=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
14045 fi
14046 fi
14047 rm -f core conftest.err conftest.$ac_objext \
14048 conftest$ac_exeext conftest.$ac_ext
14049 if test -z "$lt_cv_aix_libpath__CXX"; then
14050 lt_cv_aix_libpath__CXX=/usr/lib:/lib
14051 fi
14052
14053 fi
14054
14055 aix_libpath=$lt_cv_aix_libpath__CXX
14056 fi
14057
14058 hardcode_libdir_flag_spec_CXX='$wl-blibpath:$libdir:'"$aix_libpath"
14059 # Warning - without using the other run time loading flags,
14060 # -berok will link without error, but may produce a broken library.
14061 no_undefined_flag_CXX=' $wl-bernotok'
14062 allow_undefined_flag_CXX=' $wl-berok'
14063 if test yes = "$with_gnu_ld"; then
14064 # We only use this code for GNU lds that support --whole-archive.
14065 whole_archive_flag_spec_CXX='$wl--whole-archive$convenience $wl--no-whole-archive'
14066 else
14067 # Exported symbols can be pulled into shared objects from archives
14068 whole_archive_flag_spec_CXX='$convenience'
14069 fi
14070 archive_cmds_need_lc_CXX=yes
14071 archive_expsym_cmds_CXX='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d'
14072 # -brtl affects multiple linker settings, -berok does not and is overridden later
14073 compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([, ]\\)%-berok\\1%g"`'
14074 if test svr4 != "$with_aix_soname"; then
14075 # This is similar to how AIX traditionally builds its shared
14076 # libraries. Need -bnortl late, we may have -brtl in LDFLAGS.
14077 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'
14078 fi
14079 if test aix != "$with_aix_soname"; then
14080 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'
14081 else
14082 # used by -dlpreopen to get the symbols
14083 archive_expsym_cmds_CXX="$archive_expsym_cmds_CXX"'~$MV $output_objdir/$realname.d/$soname $output_objdir'
14084 fi
14085 archive_expsym_cmds_CXX="$archive_expsym_cmds_CXX"'~$RM -r $output_objdir/$realname.d'
14086 fi
14087 fi
14088 ;;
14089
14090 beos*)
14091 if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then
14092 allow_undefined_flag_CXX=unsupported
14093 # Joseph Beckenbach <jrb3@best.com> says some releases of gcc
14094 # support --undefined. This deserves some investigation. FIXME
14095 archive_cmds_CXX='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
14096 else
14097 ld_shlibs_CXX=no
14098 fi
14099 ;;
14100
14101 chorus*)
14102 case $cc_basename in
14103 *)
14104 # FIXME: insert proper C++ library support
14105 ld_shlibs_CXX=no
14106 ;;
14107 esac
14108 ;;
14109
14110 cygwin* | mingw* | pw32* | cegcc*)
14111 case $GXX,$cc_basename in
14112 ,cl* | no,cl*)
14113 # Native MSVC
14114 # hardcode_libdir_flag_spec is actually meaningless, as there is
14115 # no search path for DLLs.
14116 hardcode_libdir_flag_spec_CXX=' '
14117 allow_undefined_flag_CXX=unsupported
14118 always_export_symbols_CXX=yes
14119 file_list_spec_CXX='@'
14120 # Tell ltmain to make .lib files, not .a files.
14121 libext=lib
14122 # Tell ltmain to make .dll files, not .so files.
14123 shrext_cmds=.dll
14124 # FIXME: Setting linknames here is a bad hack.
14125 archive_cmds_CXX='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames='
14126 archive_expsym_cmds_CXX='if test DEF = "`$SED -n -e '\''s/^[ ]*//'\'' -e '\''/^\(;.*\)*$/d'\'' -e '\''s/^\(EXPORTS\|LIBRARY\)\([ ].*\)*$/DEF/p'\'' -e q $export_symbols`" ; then
14127 cp "$export_symbols" "$output_objdir/$soname.def";
14128 echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp";
14129 else
14130 $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp;
14131 fi~
14132 $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~
14133 linknames='
14134 # The linker will not automatically build a static lib if we build a DLL.
14135 # _LT_TAGVAR(old_archive_from_new_cmds, CXX)='true'
14136 enable_shared_with_static_runtimes_CXX=yes
14137 # Don't use ranlib
14138 old_postinstall_cmds_CXX='chmod 644 $oldlib'
14139 postlink_cmds_CXX='lt_outputfile="@OUTPUT@"~
14140 lt_tool_outputfile="@TOOL_OUTPUT@"~
14141 case $lt_outputfile in
14142 *.exe|*.EXE) ;;
14143 *)
14144 lt_outputfile=$lt_outputfile.exe
14145 lt_tool_outputfile=$lt_tool_outputfile.exe
14146 ;;
14147 esac~
14148 func_to_tool_file "$lt_outputfile"~
14149 if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then
14150 $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1;
14151 $RM "$lt_outputfile.manifest";
14152 fi'
14153 ;;
14154 *)
14155 # g++
14156 # _LT_TAGVAR(hardcode_libdir_flag_spec, CXX) is actually meaningless,
14157 # as there is no search path for DLLs.
14158 hardcode_libdir_flag_spec_CXX='-L$libdir'
14159 export_dynamic_flag_spec_CXX='$wl--export-all-symbols'
14160 allow_undefined_flag_CXX=unsupported
14161 always_export_symbols_CXX=no
14162 enable_shared_with_static_runtimes_CXX=yes
14163
14164 if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then
14165 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'
14166 # If the export-symbols file already is a .def file, use it as
14167 # is; otherwise, prepend EXPORTS...
14168 archive_expsym_cmds_CXX='if test DEF = "`$SED -n -e '\''s/^[ ]*//'\'' -e '\''/^\(;.*\)*$/d'\'' -e '\''s/^\(EXPORTS\|LIBRARY\)\([ ].*\)*$/DEF/p'\'' -e q $export_symbols`" ; then
14169 cp $export_symbols $output_objdir/$soname.def;
14170 else
14171 echo EXPORTS > $output_objdir/$soname.def;
14172 cat $export_symbols >> $output_objdir/$soname.def;
14173 fi~
14174 $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'
14175 else
14176 ld_shlibs_CXX=no
14177 fi
14178 ;;
14179 esac
14180 ;;
14181 darwin* | rhapsody*)
14182
14183
14184 archive_cmds_need_lc_CXX=no
14185 hardcode_direct_CXX=no
14186 hardcode_automatic_CXX=yes
14187 hardcode_shlibpath_var_CXX=unsupported
14188 if test yes = "$lt_cv_ld_force_load"; then
14189 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\"`'
14190
14191 else
14192 whole_archive_flag_spec_CXX=''
14193 fi
14194 link_all_deplibs_CXX=yes
14195 allow_undefined_flag_CXX=$_lt_dar_allow_undefined
14196 case $cc_basename in
14197 ifort*|nagfor*) _lt_dar_can_shared=yes ;;
14198 *) _lt_dar_can_shared=$GCC ;;
14199 esac
14200 if test yes = "$_lt_dar_can_shared"; then
14201 output_verbose_link_cmd=func_echo_all
14202 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"
14203 module_cmds_CXX="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dsymutil"
14204 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"
14205 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"
14206 if test yes != "$lt_cv_apple_cc_single_mod"; then
14207 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"
14208 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"
14209 fi
14210
14211 else
14212 ld_shlibs_CXX=no
14213 fi
14214
14215 ;;
14216
14217 os2*)
14218 hardcode_libdir_flag_spec_CXX='-L$libdir'
14219 hardcode_minus_L_CXX=yes
14220 allow_undefined_flag_CXX=unsupported
14221 shrext_cmds=.dll
14222 archive_cmds_CXX='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
14223 $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
14224 $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
14225 $ECHO EXPORTS >> $output_objdir/$libname.def~
14226 emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~
14227 $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
14228 emximp -o $lib $output_objdir/$libname.def'
14229 archive_expsym_cmds_CXX='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~
14230 $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~
14231 $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~
14232 $ECHO EXPORTS >> $output_objdir/$libname.def~
14233 prefix_cmds="$SED"~
14234 if test EXPORTS = "`$SED 1q $export_symbols`"; then
14235 prefix_cmds="$prefix_cmds -e 1d";
14236 fi~
14237 prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~
14238 cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~
14239 $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~
14240 emximp -o $lib $output_objdir/$libname.def'
14241 old_archive_From_new_cmds_CXX='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def'
14242 enable_shared_with_static_runtimes_CXX=yes
14243 ;;
14244
14245 dgux*)
14246 case $cc_basename in
14247 ec++*)
14248 # FIXME: insert proper C++ library support
14249 ld_shlibs_CXX=no
14250 ;;
14251 ghcx*)
14252 # Green Hills C++ Compiler
14253 # FIXME: insert proper C++ library support
14254 ld_shlibs_CXX=no
14255 ;;
14256 *)
14257 # FIXME: insert proper C++ library support
14258 ld_shlibs_CXX=no
14259 ;;
14260 esac
14261 ;;
14262
14263 freebsd2.*)
14264 # C++ shared libraries reported to be fairly broken before
14265 # switch to ELF
14266 ld_shlibs_CXX=no
14267 ;;
14268
14269 freebsd-elf*)
14270 archive_cmds_need_lc_CXX=no
14271 ;;
14272
14273 freebsd* | dragonfly*)
14274 # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF
14275 # conventions
14276 ld_shlibs_CXX=yes
14277 ;;
14278
14279 haiku*)
14280 archive_cmds_CXX='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
14281 link_all_deplibs_CXX=yes
14282 ;;
14283
14284 hpux9*)
14285 hardcode_libdir_flag_spec_CXX='$wl+b $wl$libdir'
14286 hardcode_libdir_separator_CXX=:
14287 export_dynamic_flag_spec_CXX='$wl-E'
14288 hardcode_direct_CXX=yes
14289 hardcode_minus_L_CXX=yes # Not in the search PATH,
14290 # but as the default
14291 # location of the library.
14292
14293 case $cc_basename in
14294 CC*)
14295 # FIXME: insert proper C++ library support
14296 ld_shlibs_CXX=no
14297 ;;
14298 aCC*)
14299 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'
14300 # Commands to make compiler produce verbose output that lists
14301 # what "hidden" libraries, object files and flags are used when
14302 # linking a shared library.
14303 #
14304 # There doesn't appear to be a way to prevent this compiler from
14305 # explicitly linking system object files so we need to strip them
14306 # from the output so that they don't get included in the library
14307 # dependencies.
14308 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"'
14309 ;;
14310 *)
14311 if test yes = "$GXX"; then
14312 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'
14313 else
14314 # FIXME: insert proper C++ library support
14315 ld_shlibs_CXX=no
14316 fi
14317 ;;
14318 esac
14319 ;;
14320
14321 hpux10*|hpux11*)
14322 if test no = "$with_gnu_ld"; then
14323 hardcode_libdir_flag_spec_CXX='$wl+b $wl$libdir'
14324 hardcode_libdir_separator_CXX=:
14325
14326 case $host_cpu in
14327 hppa*64*|ia64*)
14328 ;;
14329 *)
14330 export_dynamic_flag_spec_CXX='$wl-E'
14331 ;;
14332 esac
14333 fi
14334 case $host_cpu in
14335 hppa*64*|ia64*)
14336 hardcode_direct_CXX=no
14337 hardcode_shlibpath_var_CXX=no
14338 ;;
14339 *)
14340 hardcode_direct_CXX=yes
14341 hardcode_direct_absolute_CXX=yes
14342 hardcode_minus_L_CXX=yes # Not in the search PATH,
14343 # but as the default
14344 # location of the library.
14345 ;;
14346 esac
14347
14348 case $cc_basename in
14349 CC*)
14350 # FIXME: insert proper C++ library support
14351 ld_shlibs_CXX=no
14352 ;;
14353 aCC*)
14354 case $host_cpu in
14355 hppa*64*)
14356 archive_cmds_CXX='$CC -b $wl+h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
14357 ;;
14358 ia64*)
14359 archive_cmds_CXX='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
14360 ;;
14361 *)
14362 archive_cmds_CXX='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
14363 ;;
14364 esac
14365 # Commands to make compiler produce verbose output that lists
14366 # what "hidden" libraries, object files and flags are used when
14367 # linking a shared library.
14368 #
14369 # There doesn't appear to be a way to prevent this compiler from
14370 # explicitly linking system object files so we need to strip them
14371 # from the output so that they don't get included in the library
14372 # dependencies.
14373 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"'
14374 ;;
14375 *)
14376 if test yes = "$GXX"; then
14377 if test no = "$with_gnu_ld"; then
14378 case $host_cpu in
14379 hppa*64*)
14380 archive_cmds_CXX='$CC -shared -nostdlib -fPIC $wl+h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
14381 ;;
14382 ia64*)
14383 archive_cmds_CXX='$CC -shared -nostdlib $pic_flag $wl+h $wl$soname $wl+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
14384 ;;
14385 *)
14386 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'
14387 ;;
14388 esac
14389 fi
14390 else
14391 # FIXME: insert proper C++ library support
14392 ld_shlibs_CXX=no
14393 fi
14394 ;;
14395 esac
14396 ;;
14397
14398 interix[3-9]*)
14399 hardcode_direct_CXX=no
14400 hardcode_shlibpath_var_CXX=no
14401 hardcode_libdir_flag_spec_CXX='$wl-rpath,$libdir'
14402 export_dynamic_flag_spec_CXX='$wl-E'
14403 # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc.
14404 # Instead, shared libraries are loaded at an image base (0x10000000 by
14405 # default) and relocated if they conflict, which is a slow very memory
14406 # consuming and fragmenting process. To avoid this, we pick a random,
14407 # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link
14408 # time. Moving up from 0x10000000 also allows more sbrk(2) space.
14409 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'
14410 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'
14411 ;;
14412 irix5* | irix6*)
14413 case $cc_basename in
14414 CC*)
14415 # SGI C++
14416 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'
14417
14418 # Archives containing C++ object files must be created using
14419 # "CC -ar", where "CC" is the IRIX C++ compiler. This is
14420 # necessary to make sure instantiated templates are included
14421 # in the archive.
14422 old_archive_cmds_CXX='$CC -ar -WR,-u -o $oldlib $oldobjs'
14423 ;;
14424 *)
14425 if test yes = "$GXX"; then
14426 if test no = "$with_gnu_ld"; then
14427 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'
14428 else
14429 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'
14430 fi
14431 fi
14432 link_all_deplibs_CXX=yes
14433 ;;
14434 esac
14435 hardcode_libdir_flag_spec_CXX='$wl-rpath $wl$libdir'
14436 hardcode_libdir_separator_CXX=:
14437 inherit_rpath_CXX=yes
14438 ;;
14439
14440 linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
14441 case $cc_basename in
14442 KCC*)
14443 # Kuck and Associates, Inc. (KAI) C++ Compiler
14444
14445 # KCC will only create a shared library if the output file
14446 # ends with ".so" (or ".sl" for HP-UX), so rename the library
14447 # to its proper name (with version) after linking.
14448 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'
14449 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'
14450 # Commands to make compiler produce verbose output that lists
14451 # what "hidden" libraries, object files and flags are used when
14452 # linking a shared library.
14453 #
14454 # There doesn't appear to be a way to prevent this compiler from
14455 # explicitly linking system object files so we need to strip them
14456 # from the output so that they don't get included in the library
14457 # dependencies.
14458 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"'
14459
14460 hardcode_libdir_flag_spec_CXX='$wl-rpath,$libdir'
14461 export_dynamic_flag_spec_CXX='$wl--export-dynamic'
14462
14463 # Archives containing C++ object files must be created using
14464 # "CC -Bstatic", where "CC" is the KAI C++ compiler.
14465 old_archive_cmds_CXX='$CC -Bstatic -o $oldlib $oldobjs'
14466 ;;
14467 icpc* | ecpc* )
14468 # Intel C++
14469 with_gnu_ld=yes
14470 # version 8.0 and above of icpc choke on multiply defined symbols
14471 # if we add $predep_objects and $postdep_objects, however 7.1 and
14472 # earlier do not add the objects themselves.
14473 case `$CC -V 2>&1` in
14474 *"Version 7."*)
14475 archive_cmds_CXX='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
14476 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'
14477 ;;
14478 *) # Version 8.0 or newer
14479 tmp_idyn=
14480 case $host_cpu in
14481 ia64*) tmp_idyn=' -i_dynamic';;
14482 esac
14483 archive_cmds_CXX='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
14484 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'
14485 ;;
14486 esac
14487 archive_cmds_need_lc_CXX=no
14488 hardcode_libdir_flag_spec_CXX='$wl-rpath,$libdir'
14489 export_dynamic_flag_spec_CXX='$wl--export-dynamic'
14490 whole_archive_flag_spec_CXX='$wl--whole-archive$convenience $wl--no-whole-archive'
14491 ;;
14492 pgCC* | pgcpp*)
14493 # Portland Group C++ compiler
14494 case `$CC -V` in
14495 *pgCC\ [1-5].* | *pgcpp\ [1-5].*)
14496 prelink_cmds_CXX='tpldir=Template.dir~
14497 rm -rf $tpldir~
14498 $CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~
14499 compile_command="$compile_command `find $tpldir -name \*.o | sort | $NL2SP`"'
14500 old_archive_cmds_CXX='tpldir=Template.dir~
14501 rm -rf $tpldir~
14502 $CC --prelink_objects --instantiation_dir $tpldir $oldobjs$old_deplibs~
14503 $AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | sort | $NL2SP`~
14504 $RANLIB $oldlib'
14505 archive_cmds_CXX='tpldir=Template.dir~
14506 rm -rf $tpldir~
14507 $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
14508 $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
14509 archive_expsym_cmds_CXX='tpldir=Template.dir~
14510 rm -rf $tpldir~
14511 $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~
14512 $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'
14513 ;;
14514 *) # Version 6 and above use weak symbols
14515 archive_cmds_CXX='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
14516 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'
14517 ;;
14518 esac
14519
14520 hardcode_libdir_flag_spec_CXX='$wl--rpath $wl$libdir'
14521 export_dynamic_flag_spec_CXX='$wl--export-dynamic'
14522 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'
14523 ;;
14524 cxx*)
14525 # Compaq C++
14526 archive_cmds_CXX='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib'
14527 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'
14528
14529 runpath_var=LD_RUN_PATH
14530 hardcode_libdir_flag_spec_CXX='-rpath $libdir'
14531 hardcode_libdir_separator_CXX=:
14532
14533 # Commands to make compiler produce verbose output that lists
14534 # what "hidden" libraries, object files and flags are used when
14535 # linking a shared library.
14536 #
14537 # There doesn't appear to be a way to prevent this compiler from
14538 # explicitly linking system object files so we need to strip them
14539 # from the output so that they don't get included in the library
14540 # dependencies.
14541 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'
14542 ;;
14543 xl* | mpixl* | bgxl*)
14544 # IBM XL 8.0 on PPC, with GNU ld
14545 hardcode_libdir_flag_spec_CXX='$wl-rpath $wl$libdir'
14546 export_dynamic_flag_spec_CXX='$wl--export-dynamic'
14547 archive_cmds_CXX='$CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib'
14548 if test yes = "$supports_anon_versioning"; then
14549 archive_expsym_cmds_CXX='echo "{ global:" > $output_objdir/$libname.ver~
14550 cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~
14551 echo "local: *; };" >> $output_objdir/$libname.ver~
14552 $CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib'
14553 fi
14554 ;;
14555 *)
14556 case `$CC -V 2>&1 | sed 5q` in
14557 *Sun\ C*)
14558 # Sun C++ 5.9
14559 no_undefined_flag_CXX=' -zdefs'
14560 archive_cmds_CXX='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
14561 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'
14562 hardcode_libdir_flag_spec_CXX='-R$libdir'
14563 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'
14564 compiler_needs_object_CXX=yes
14565
14566 # Not sure whether something based on
14567 # $CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1
14568 # would be better.
14569 output_verbose_link_cmd='func_echo_all'
14570
14571 # Archives containing C++ object files must be created using
14572 # "CC -xar", where "CC" is the Sun C++ compiler. This is
14573 # necessary to make sure instantiated templates are included
14574 # in the archive.
14575 old_archive_cmds_CXX='$CC -xar -o $oldlib $oldobjs'
14576 ;;
14577 esac
14578 ;;
14579 esac
14580 ;;
14581
14582 lynxos*)
14583 # FIXME: insert proper C++ library support
14584 ld_shlibs_CXX=no
14585 ;;
14586
14587 m88k*)
14588 # FIXME: insert proper C++ library support
14589 ld_shlibs_CXX=no
14590 ;;
14591
14592 mvs*)
14593 case $cc_basename in
14594 cxx*)
14595 # FIXME: insert proper C++ library support
14596 ld_shlibs_CXX=no
14597 ;;
14598 *)
14599 # FIXME: insert proper C++ library support
14600 ld_shlibs_CXX=no
14601 ;;
14602 esac
14603 ;;
14604
14605 netbsd*)
14606 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
14607 archive_cmds_CXX='$LD -Bshareable -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags'
14608 wlarc=
14609 hardcode_libdir_flag_spec_CXX='-R$libdir'
14610 hardcode_direct_CXX=yes
14611 hardcode_shlibpath_var_CXX=no
14612 fi
14613 # Workaround some broken pre-1.5 toolchains
14614 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"'
14615 ;;
14616
14617 *nto* | *qnx*)
14618 ld_shlibs_CXX=yes
14619 ;;
14620
14621 openbsd* | bitrig*)
14622 if test -f /usr/libexec/ld.so; then
14623 hardcode_direct_CXX=yes
14624 hardcode_shlibpath_var_CXX=no
14625 hardcode_direct_absolute_CXX=yes
14626 archive_cmds_CXX='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib'
14627 hardcode_libdir_flag_spec_CXX='$wl-rpath,$libdir'
14628 if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`"; then
14629 archive_expsym_cmds_CXX='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-retain-symbols-file,$export_symbols -o $lib'
14630 export_dynamic_flag_spec_CXX='$wl-E'
14631 whole_archive_flag_spec_CXX=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive'
14632 fi
14633 output_verbose_link_cmd=func_echo_all
14634 else
14635 ld_shlibs_CXX=no
14636 fi
14637 ;;
14638
14639 osf3* | osf4* | osf5*)
14640 case $cc_basename in
14641 KCC*)
14642 # Kuck and Associates, Inc. (KAI) C++ Compiler
14643
14644 # KCC will only create a shared library if the output file
14645 # ends with ".so" (or ".sl" for HP-UX), so rename the library
14646 # to its proper name (with version) after linking.
14647 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'
14648
14649 hardcode_libdir_flag_spec_CXX='$wl-rpath,$libdir'
14650 hardcode_libdir_separator_CXX=:
14651
14652 # Archives containing C++ object files must be created using
14653 # the KAI C++ compiler.
14654 case $host in
14655 osf3*) old_archive_cmds_CXX='$CC -Bstatic -o $oldlib $oldobjs' ;;
14656 *) old_archive_cmds_CXX='$CC -o $oldlib $oldobjs' ;;
14657 esac
14658 ;;
14659 RCC*)
14660 # Rational C++ 2.4.1
14661 # FIXME: insert proper C++ library support
14662 ld_shlibs_CXX=no
14663 ;;
14664 cxx*)
14665 case $host in
14666 osf3*)
14667 allow_undefined_flag_CXX=' $wl-expect_unresolved $wl\*'
14668 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'
14669 hardcode_libdir_flag_spec_CXX='$wl-rpath $wl$libdir'
14670 ;;
14671 *)
14672 allow_undefined_flag_CXX=' -expect_unresolved \*'
14673 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'
14674 archive_expsym_cmds_CXX='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~
14675 echo "-hidden">> $lib.exp~
14676 $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~
14677 $RM $lib.exp'
14678 hardcode_libdir_flag_spec_CXX='-rpath $libdir'
14679 ;;
14680 esac
14681
14682 hardcode_libdir_separator_CXX=:
14683
14684 # Commands to make compiler produce verbose output that lists
14685 # what "hidden" libraries, object files and flags are used when
14686 # linking a shared library.
14687 #
14688 # There doesn't appear to be a way to prevent this compiler from
14689 # explicitly linking system object files so we need to strip them
14690 # from the output so that they don't get included in the library
14691 # dependencies.
14692 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"'
14693 ;;
14694 *)
14695 if test yes,no = "$GXX,$with_gnu_ld"; then
14696 allow_undefined_flag_CXX=' $wl-expect_unresolved $wl\*'
14697 case $host in
14698 osf3*)
14699 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'
14700 ;;
14701 *)
14702 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'
14703 ;;
14704 esac
14705
14706 hardcode_libdir_flag_spec_CXX='$wl-rpath $wl$libdir'
14707 hardcode_libdir_separator_CXX=:
14708
14709 # Commands to make compiler produce verbose output that lists
14710 # what "hidden" libraries, object files and flags are used when
14711 # linking a shared library.
14712 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
14713
14714 else
14715 # FIXME: insert proper C++ library support
14716 ld_shlibs_CXX=no
14717 fi
14718 ;;
14719 esac
14720 ;;
14721
14722 psos*)
14723 # FIXME: insert proper C++ library support
14724 ld_shlibs_CXX=no
14725 ;;
14726
14727 sunos4*)
14728 case $cc_basename in
14729 CC*)
14730 # Sun C++ 4.x
14731 # FIXME: insert proper C++ library support
14732 ld_shlibs_CXX=no
14733 ;;
14734 lcc*)
14735 # Lucid
14736 # FIXME: insert proper C++ library support
14737 ld_shlibs_CXX=no
14738 ;;
14739 *)
14740 # FIXME: insert proper C++ library support
14741 ld_shlibs_CXX=no
14742 ;;
14743 esac
14744 ;;
14745
14746 solaris*)
14747 case $cc_basename in
14748 CC* | sunCC*)
14749 # Sun C++ 4.2, 5.x and Centerline C++
14750 archive_cmds_need_lc_CXX=yes
14751 no_undefined_flag_CXX=' -zdefs'
14752 archive_cmds_CXX='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags'
14753 archive_expsym_cmds_CXX='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
14754 $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'
14755
14756 hardcode_libdir_flag_spec_CXX='-R$libdir'
14757 hardcode_shlibpath_var_CXX=no
14758 case $host_os in
14759 solaris2.[0-5] | solaris2.[0-5].*) ;;
14760 *)
14761 # The compiler driver will combine and reorder linker options,
14762 # but understands '-z linker_flag'.
14763 # Supported since Solaris 2.6 (maybe 2.5.1?)
14764 whole_archive_flag_spec_CXX='-z allextract$convenience -z defaultextract'
14765 ;;
14766 esac
14767 link_all_deplibs_CXX=yes
14768
14769 output_verbose_link_cmd='func_echo_all'
14770
14771 # Archives containing C++ object files must be created using
14772 # "CC -xar", where "CC" is the Sun C++ compiler. This is
14773 # necessary to make sure instantiated templates are included
14774 # in the archive.
14775 old_archive_cmds_CXX='$CC -xar -o $oldlib $oldobjs'
14776 ;;
14777 gcx*)
14778 # Green Hills C++ Compiler
14779 archive_cmds_CXX='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'
14780
14781 # The C++ compiler must be used to create the archive.
14782 old_archive_cmds_CXX='$CC $LDFLAGS -archive -o $oldlib $oldobjs'
14783 ;;
14784 *)
14785 # GNU C++ compiler with Solaris linker
14786 if test yes,no = "$GXX,$with_gnu_ld"; then
14787 no_undefined_flag_CXX=' $wl-z ${wl}defs'
14788 if $CC --version | $GREP -v '^2\.7' > /dev/null; then
14789 archive_cmds_CXX='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'
14790 archive_expsym_cmds_CXX='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
14791 $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'
14792
14793 # Commands to make compiler produce verbose output that lists
14794 # what "hidden" libraries, object files and flags are used when
14795 # linking a shared library.
14796 output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
14797 else
14798 # g++ 2.7 appears to require '-G' NOT '-shared' on this
14799 # platform.
14800 archive_cmds_CXX='$CC -G -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib'
14801 archive_expsym_cmds_CXX='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~
14802 $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'
14803
14804 # Commands to make compiler produce verbose output that lists
14805 # what "hidden" libraries, object files and flags are used when
14806 # linking a shared library.
14807 output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
14808 fi
14809
14810 hardcode_libdir_flag_spec_CXX='$wl-R $wl$libdir'
14811 case $host_os in
14812 solaris2.[0-5] | solaris2.[0-5].*) ;;
14813 *)
14814 whole_archive_flag_spec_CXX='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract'
14815 ;;
14816 esac
14817 fi
14818 ;;
14819 esac
14820 ;;
14821
14822 sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[01].[10]* | unixware7* | sco3.2v5.0.[024]*)
14823 no_undefined_flag_CXX='$wl-z,text'
14824 archive_cmds_need_lc_CXX=no
14825 hardcode_shlibpath_var_CXX=no
14826 runpath_var='LD_RUN_PATH'
14827
14828 case $cc_basename in
14829 CC*)
14830 archive_cmds_CXX='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
14831 archive_expsym_cmds_CXX='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
14832 ;;
14833 *)
14834 archive_cmds_CXX='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
14835 archive_expsym_cmds_CXX='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
14836 ;;
14837 esac
14838 ;;
14839
14840 sysv5* | sco3.2v5* | sco5v6*)
14841 # Note: We CANNOT use -z defs as we might desire, because we do not
14842 # link with -lc, and that would cause any symbols used from libc to
14843 # always be unresolved, which means just about no library would
14844 # ever link correctly. If we're not using GNU ld we use -z text
14845 # though, which does catch some bad symbols but isn't as heavy-handed
14846 # as -z defs.
14847 no_undefined_flag_CXX='$wl-z,text'
14848 allow_undefined_flag_CXX='$wl-z,nodefs'
14849 archive_cmds_need_lc_CXX=no
14850 hardcode_shlibpath_var_CXX=no
14851 hardcode_libdir_flag_spec_CXX='$wl-R,$libdir'
14852 hardcode_libdir_separator_CXX=':'
14853 link_all_deplibs_CXX=yes
14854 export_dynamic_flag_spec_CXX='$wl-Bexport'
14855 runpath_var='LD_RUN_PATH'
14856
14857 case $cc_basename in
14858 CC*)
14859 archive_cmds_CXX='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
14860 archive_expsym_cmds_CXX='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
14861 old_archive_cmds_CXX='$CC -Tprelink_objects $oldobjs~
14862 '"$old_archive_cmds_CXX"
14863 reload_cmds_CXX='$CC -Tprelink_objects $reload_objs~
14864 '"$reload_cmds_CXX"
14865 ;;
14866 *)
14867 archive_cmds_CXX='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
14868 archive_expsym_cmds_CXX='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags'
14869 ;;
14870 esac
14871 ;;
14872
14873 tandem*)
14874 case $cc_basename in
14875 NCC*)
14876 # NonStop-UX NCC 3.20
14877 # FIXME: insert proper C++ library support
14878 ld_shlibs_CXX=no
14879 ;;
14880 *)
14881 # FIXME: insert proper C++ library support
14882 ld_shlibs_CXX=no
14883 ;;
14884 esac
14885 ;;
14886
14887 vxworks*)
14888 # FIXME: insert proper C++ library support
14889 ld_shlibs_CXX=no
14890 ;;
14891
14892 *)
14893 # FIXME: insert proper C++ library support
14894 ld_shlibs_CXX=no
14895 ;;
14896 esac
14897
14898 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs_CXX" >&5
14899 $as_echo "$ld_shlibs_CXX" >&6; }
14900 test no = "$ld_shlibs_CXX" && can_build_shared=no
14901
14902 GCC_CXX=$GXX
14903 LD_CXX=$LD
14904
14905 ## CAVEAT EMPTOR:
14906 ## There is no encapsulation within the following macros, do not change
14907 ## the running order or otherwise move them around unless you know exactly
14908 ## what you are doing...
14909 # Dependencies to place before and after the object being linked:
14910 predep_objects_CXX=
14911 postdep_objects_CXX=
14912 predeps_CXX=
14913 postdeps_CXX=
14914 compiler_lib_search_path_CXX=
14915
14916 cat > conftest.$ac_ext <<_LT_EOF
14917 class Foo
14918 {
14919 public:
14920 Foo (void) { a = 0; }
14921 private:
14922 int a;
14923 };
14924 _LT_EOF
14925
14926
14927 _lt_libdeps_save_CFLAGS=$CFLAGS
14928 case "$CC $CFLAGS " in #(
14929 *\ -flto*\ *) CFLAGS="$CFLAGS -fno-lto" ;;
14930 *\ -fwhopr*\ *) CFLAGS="$CFLAGS -fno-whopr" ;;
14931 *\ -fuse-linker-plugin*\ *) CFLAGS="$CFLAGS -fno-use-linker-plugin" ;;
14932 esac
14933
14934 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
14935 (eval $ac_compile) 2>&5
14936 ac_status=$?
14937 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
14938 test $ac_status = 0; }; then
14939 # Parse the compiler output and extract the necessary
14940 # objects, libraries and library flags.
14941
14942 # Sentinel used to keep track of whether or not we are before
14943 # the conftest object file.
14944 pre_test_object_deps_done=no
14945
14946 for p in `eval "$output_verbose_link_cmd"`; do
14947 case $prev$p in
14948
14949 -L* | -R* | -l*)
14950 # Some compilers place space between "-{L,R}" and the path.
14951 # Remove the space.
14952 if test x-L = "$p" ||
14953 test x-R = "$p"; then
14954 prev=$p
14955 continue
14956 fi
14957
14958 # Expand the sysroot to ease extracting the directories later.
14959 if test -z "$prev"; then
14960 case $p in
14961 -L*) func_stripname_cnf '-L' '' "$p"; prev=-L; p=$func_stripname_result ;;
14962 -R*) func_stripname_cnf '-R' '' "$p"; prev=-R; p=$func_stripname_result ;;
14963 -l*) func_stripname_cnf '-l' '' "$p"; prev=-l; p=$func_stripname_result ;;
14964 esac
14965 fi
14966 case $p in
14967 =*) func_stripname_cnf '=' '' "$p"; p=$lt_sysroot$func_stripname_result ;;
14968 esac
14969 if test no = "$pre_test_object_deps_done"; then
14970 case $prev in
14971 -L | -R)
14972 # Internal compiler library paths should come after those
14973 # provided the user. The postdeps already come after the
14974 # user supplied libs so there is no need to process them.
14975 if test -z "$compiler_lib_search_path_CXX"; then
14976 compiler_lib_search_path_CXX=$prev$p
14977 else
14978 compiler_lib_search_path_CXX="${compiler_lib_search_path_CXX} $prev$p"
14979 fi
14980 ;;
14981 # The "-l" case would never come before the object being
14982 # linked, so don't bother handling this case.
14983 esac
14984 else
14985 if test -z "$postdeps_CXX"; then
14986 postdeps_CXX=$prev$p
14987 else
14988 postdeps_CXX="${postdeps_CXX} $prev$p"
14989 fi
14990 fi
14991 prev=
14992 ;;
14993
14994 *.lto.$objext) ;; # Ignore GCC LTO objects
14995 *.$objext)
14996 # This assumes that the test object file only shows up
14997 # once in the compiler output.
14998 if test "$p" = "conftest.$objext"; then
14999 pre_test_object_deps_done=yes
15000 continue
15001 fi
15002
15003 if test no = "$pre_test_object_deps_done"; then
15004 if test -z "$predep_objects_CXX"; then
15005 predep_objects_CXX=$p
15006 else
15007 predep_objects_CXX="$predep_objects_CXX $p"
15008 fi
15009 else
15010 if test -z "$postdep_objects_CXX"; then
15011 postdep_objects_CXX=$p
15012 else
15013 postdep_objects_CXX="$postdep_objects_CXX $p"
15014 fi
15015 fi
15016 ;;
15017
15018 *) ;; # Ignore the rest.
15019
15020 esac
15021 done
15022
15023 # Clean up.
15024 rm -f a.out a.exe
15025 else
15026 echo "libtool.m4: error: problem compiling CXX test program"
15027 fi
15028
15029 $RM -f confest.$objext
15030 CFLAGS=$_lt_libdeps_save_CFLAGS
15031
15032 # PORTME: override above test on systems where it is broken
15033 case $host_os in
15034 interix[3-9]*)
15035 # Interix 3.5 installs completely hosed .la files for C++, so rather than
15036 # hack all around it, let's just trust "g++" to DTRT.
15037 predep_objects_CXX=
15038 postdep_objects_CXX=
15039 postdeps_CXX=
15040 ;;
15041 esac
15042
15043
15044 case " $postdeps_CXX " in
15045 *" -lc "*) archive_cmds_need_lc_CXX=no ;;
15046 esac
15047 compiler_lib_search_dirs_CXX=
15048 if test -n "${compiler_lib_search_path_CXX}"; then
15049 compiler_lib_search_dirs_CXX=`echo " ${compiler_lib_search_path_CXX}" | $SED -e 's! -L! !g' -e 's!^ !!'`
15050 fi
15051
15052
15053
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 lt_prog_compiler_wl_CXX=
15083 lt_prog_compiler_pic_CXX=
15084 lt_prog_compiler_static_CXX=
15085
15086
15087 # C++ specific cases for pic, static, wl, etc.
15088 if test yes = "$GXX"; then
15089 lt_prog_compiler_wl_CXX='-Wl,'
15090 lt_prog_compiler_static_CXX='-static'
15091
15092 case $host_os in
15093 aix*)
15094 # All AIX code is PIC.
15095 if test ia64 = "$host_cpu"; then
15096 # AIX 5 now supports IA64 processor
15097 lt_prog_compiler_static_CXX='-Bstatic'
15098 fi
15099 lt_prog_compiler_pic_CXX='-fPIC'
15100 ;;
15101
15102 amigaos*)
15103 case $host_cpu in
15104 powerpc)
15105 # see comment about AmigaOS4 .so support
15106 lt_prog_compiler_pic_CXX='-fPIC'
15107 ;;
15108 m68k)
15109 # FIXME: we need at least 68020 code to build shared libraries, but
15110 # adding the '-m68020' flag to GCC prevents building anything better,
15111 # like '-m68040'.
15112 lt_prog_compiler_pic_CXX='-m68020 -resident32 -malways-restore-a4'
15113 ;;
15114 esac
15115 ;;
15116
15117 beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
15118 # PIC is the default for these OSes.
15119 ;;
15120 mingw* | cygwin* | os2* | pw32* | cegcc*)
15121 # This hack is so that the source file can tell whether it is being
15122 # built for inclusion in a dll (and should export symbols for example).
15123 # Although the cygwin gcc ignores -fPIC, still need this for old-style
15124 # (--disable-auto-import) libraries
15125 lt_prog_compiler_pic_CXX='-DDLL_EXPORT'
15126 case $host_os in
15127 os2*)
15128 lt_prog_compiler_static_CXX='$wl-static'
15129 ;;
15130 esac
15131 ;;
15132 darwin* | rhapsody*)
15133 # PIC is the default on this platform
15134 # Common symbols not allowed in MH_DYLIB files
15135 lt_prog_compiler_pic_CXX='-fno-common'
15136 ;;
15137 *djgpp*)
15138 # DJGPP does not support shared libraries at all
15139 lt_prog_compiler_pic_CXX=
15140 ;;
15141 haiku*)
15142 # PIC is the default for Haiku.
15143 # The "-static" flag exists, but is broken.
15144 lt_prog_compiler_static_CXX=
15145 ;;
15146 interix[3-9]*)
15147 # Interix 3.x gcc -fpic/-fPIC options generate broken code.
15148 # Instead, we relocate shared libraries at runtime.
15149 ;;
15150 sysv4*MP*)
15151 if test -d /usr/nec; then
15152 lt_prog_compiler_pic_CXX=-Kconform_pic
15153 fi
15154 ;;
15155 hpux*)
15156 # PIC is the default for 64-bit PA HP-UX, but not for 32-bit
15157 # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag
15158 # sets the default TLS model and affects inlining.
15159 case $host_cpu in
15160 hppa*64*)
15161 ;;
15162 *)
15163 lt_prog_compiler_pic_CXX='-fPIC'
15164 ;;
15165 esac
15166 ;;
15167 *qnx* | *nto*)
15168 # QNX uses GNU C++, but need to define -shared option too, otherwise
15169 # it will coredump.
15170 lt_prog_compiler_pic_CXX='-fPIC -shared'
15171 ;;
15172 *)
15173 lt_prog_compiler_pic_CXX='-fPIC'
15174 ;;
15175 esac
15176 else
15177 case $host_os in
15178 aix[4-9]*)
15179 # All AIX code is PIC.
15180 if test ia64 = "$host_cpu"; then
15181 # AIX 5 now supports IA64 processor
15182 lt_prog_compiler_static_CXX='-Bstatic'
15183 else
15184 lt_prog_compiler_static_CXX='-bnso -bI:/lib/syscalls.exp'
15185 fi
15186 ;;
15187 chorus*)
15188 case $cc_basename in
15189 cxch68*)
15190 # Green Hills C++ Compiler
15191 # _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"
15192 ;;
15193 esac
15194 ;;
15195 mingw* | cygwin* | os2* | pw32* | cegcc*)
15196 # This hack is so that the source file can tell whether it is being
15197 # built for inclusion in a dll (and should export symbols for example).
15198 lt_prog_compiler_pic_CXX='-DDLL_EXPORT'
15199 ;;
15200 dgux*)
15201 case $cc_basename in
15202 ec++*)
15203 lt_prog_compiler_pic_CXX='-KPIC'
15204 ;;
15205 ghcx*)
15206 # Green Hills C++ Compiler
15207 lt_prog_compiler_pic_CXX='-pic'
15208 ;;
15209 *)
15210 ;;
15211 esac
15212 ;;
15213 freebsd* | dragonfly*)
15214 # FreeBSD uses GNU C++
15215 ;;
15216 hpux9* | hpux10* | hpux11*)
15217 case $cc_basename in
15218 CC*)
15219 lt_prog_compiler_wl_CXX='-Wl,'
15220 lt_prog_compiler_static_CXX='$wl-a ${wl}archive'
15221 if test ia64 != "$host_cpu"; then
15222 lt_prog_compiler_pic_CXX='+Z'
15223 fi
15224 ;;
15225 aCC*)
15226 lt_prog_compiler_wl_CXX='-Wl,'
15227 lt_prog_compiler_static_CXX='$wl-a ${wl}archive'
15228 case $host_cpu in
15229 hppa*64*|ia64*)
15230 # +Z the default
15231 ;;
15232 *)
15233 lt_prog_compiler_pic_CXX='+Z'
15234 ;;
15235 esac
15236 ;;
15237 *)
15238 ;;
15239 esac
15240 ;;
15241 interix*)
15242 # This is c89, which is MS Visual C++ (no shared libs)
15243 # Anyone wants to do a port?
15244 ;;
15245 irix5* | irix6* | nonstopux*)
15246 case $cc_basename in
15247 CC*)
15248 lt_prog_compiler_wl_CXX='-Wl,'
15249 lt_prog_compiler_static_CXX='-non_shared'
15250 # CC pic flag -KPIC is the default.
15251 ;;
15252 *)
15253 ;;
15254 esac
15255 ;;
15256 linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
15257 case $cc_basename in
15258 KCC*)
15259 # KAI C++ Compiler
15260 lt_prog_compiler_wl_CXX='--backend -Wl,'
15261 lt_prog_compiler_pic_CXX='-fPIC'
15262 ;;
15263 ecpc* )
15264 # old Intel C++ for x86_64, which still supported -KPIC.
15265 lt_prog_compiler_wl_CXX='-Wl,'
15266 lt_prog_compiler_pic_CXX='-KPIC'
15267 lt_prog_compiler_static_CXX='-static'
15268 ;;
15269 icpc* )
15270 # Intel C++, used to be incompatible with GCC.
15271 # ICC 10 doesn't accept -KPIC any more.
15272 lt_prog_compiler_wl_CXX='-Wl,'
15273 lt_prog_compiler_pic_CXX='-fPIC'
15274 lt_prog_compiler_static_CXX='-static'
15275 ;;
15276 pgCC* | pgcpp*)
15277 # Portland Group C++ compiler
15278 lt_prog_compiler_wl_CXX='-Wl,'
15279 lt_prog_compiler_pic_CXX='-fpic'
15280 lt_prog_compiler_static_CXX='-Bstatic'
15281 ;;
15282 cxx*)
15283 # Compaq C++
15284 # Make sure the PIC flag is empty. It appears that all Alpha
15285 # Linux and Compaq Tru64 Unix objects are PIC.
15286 lt_prog_compiler_pic_CXX=
15287 lt_prog_compiler_static_CXX='-non_shared'
15288 ;;
15289 xlc* | xlC* | bgxl[cC]* | mpixl[cC]*)
15290 # IBM XL 8.0, 9.0 on PPC and BlueGene
15291 lt_prog_compiler_wl_CXX='-Wl,'
15292 lt_prog_compiler_pic_CXX='-qpic'
15293 lt_prog_compiler_static_CXX='-qstaticlink'
15294 ;;
15295 *)
15296 case `$CC -V 2>&1 | sed 5q` in
15297 *Sun\ C*)
15298 # Sun C++ 5.9
15299 lt_prog_compiler_pic_CXX='-KPIC'
15300 lt_prog_compiler_static_CXX='-Bstatic'
15301 lt_prog_compiler_wl_CXX='-Qoption ld '
15302 ;;
15303 esac
15304 ;;
15305 esac
15306 ;;
15307 lynxos*)
15308 ;;
15309 m88k*)
15310 ;;
15311 mvs*)
15312 case $cc_basename in
15313 cxx*)
15314 lt_prog_compiler_pic_CXX='-W c,exportall'
15315 ;;
15316 *)
15317 ;;
15318 esac
15319 ;;
15320 netbsd* | netbsdelf*-gnu)
15321 ;;
15322 *qnx* | *nto*)
15323 # QNX uses GNU C++, but need to define -shared option too, otherwise
15324 # it will coredump.
15325 lt_prog_compiler_pic_CXX='-fPIC -shared'
15326 ;;
15327 osf3* | osf4* | osf5*)
15328 case $cc_basename in
15329 KCC*)
15330 lt_prog_compiler_wl_CXX='--backend -Wl,'
15331 ;;
15332 RCC*)
15333 # Rational C++ 2.4.1
15334 lt_prog_compiler_pic_CXX='-pic'
15335 ;;
15336 cxx*)
15337 # Digital/Compaq C++
15338 lt_prog_compiler_wl_CXX='-Wl,'
15339 # Make sure the PIC flag is empty. It appears that all Alpha
15340 # Linux and Compaq Tru64 Unix objects are PIC.
15341 lt_prog_compiler_pic_CXX=
15342 lt_prog_compiler_static_CXX='-non_shared'
15343 ;;
15344 *)
15345 ;;
15346 esac
15347 ;;
15348 psos*)
15349 ;;
15350 solaris*)
15351 case $cc_basename in
15352 CC* | sunCC*)
15353 # Sun C++ 4.2, 5.x and Centerline C++
15354 lt_prog_compiler_pic_CXX='-KPIC'
15355 lt_prog_compiler_static_CXX='-Bstatic'
15356 lt_prog_compiler_wl_CXX='-Qoption ld '
15357 ;;
15358 gcx*)
15359 # Green Hills C++ Compiler
15360 lt_prog_compiler_pic_CXX='-PIC'
15361 ;;
15362 *)
15363 ;;
15364 esac
15365 ;;
15366 sunos4*)
15367 case $cc_basename in
15368 CC*)
15369 # Sun C++ 4.x
15370 lt_prog_compiler_pic_CXX='-pic'
15371 lt_prog_compiler_static_CXX='-Bstatic'
15372 ;;
15373 lcc*)
15374 # Lucid
15375 lt_prog_compiler_pic_CXX='-pic'
15376 ;;
15377 *)
15378 ;;
15379 esac
15380 ;;
15381 sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*)
15382 case $cc_basename in
15383 CC*)
15384 lt_prog_compiler_wl_CXX='-Wl,'
15385 lt_prog_compiler_pic_CXX='-KPIC'
15386 lt_prog_compiler_static_CXX='-Bstatic'
15387 ;;
15388 esac
15389 ;;
15390 tandem*)
15391 case $cc_basename in
15392 NCC*)
15393 # NonStop-UX NCC 3.20
15394 lt_prog_compiler_pic_CXX='-KPIC'
15395 ;;
15396 *)
15397 ;;
15398 esac
15399 ;;
15400 vxworks*)
15401 ;;
15402 *)
15403 lt_prog_compiler_can_build_shared_CXX=no
15404 ;;
15405 esac
15406 fi
15407
15408 case $host_os in
15409 # For platforms that do not support PIC, -DPIC is meaningless:
15410 *djgpp*)
15411 lt_prog_compiler_pic_CXX=
15412 ;;
15413 *)
15414 lt_prog_compiler_pic_CXX="$lt_prog_compiler_pic_CXX -DPIC"
15415 ;;
15416 esac
15417
15418 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&5
15419 $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
15420 if ${lt_cv_prog_compiler_pic_CXX+:} false; then :
15421 $as_echo_n "(cached) " >&6
15422 else
15423 lt_cv_prog_compiler_pic_CXX=$lt_prog_compiler_pic_CXX
15424 fi
15425 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic_CXX" >&5
15426 $as_echo "$lt_cv_prog_compiler_pic_CXX" >&6; }
15427 lt_prog_compiler_pic_CXX=$lt_cv_prog_compiler_pic_CXX
15428
15429 #
15430 # Check to make sure the PIC flag actually works.
15431 #
15432 if test -n "$lt_prog_compiler_pic_CXX"; then
15433 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler PIC flag $lt_prog_compiler_pic_CXX works" >&5
15434 $as_echo_n "checking if $compiler PIC flag $lt_prog_compiler_pic_CXX works... " >&6; }
15435 if ${lt_cv_prog_compiler_pic_works_CXX+:} false; then :
15436 $as_echo_n "(cached) " >&6
15437 else
15438 lt_cv_prog_compiler_pic_works_CXX=no
15439 ac_outfile=conftest.$ac_objext
15440 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
15441 lt_compiler_flag="$lt_prog_compiler_pic_CXX -DPIC" ## exclude from sc_useless_quotes_in_assignment
15442 # Insert the option either (1) after the last *FLAGS variable, or
15443 # (2) before a word containing "conftest.", or (3) at the end.
15444 # Note that $ac_compile itself does not contain backslashes and begins
15445 # with a dollar sign (not a hyphen), so the echo should work correctly.
15446 # The option is referenced via a variable to avoid confusing sed.
15447 lt_compile=`echo "$ac_compile" | $SED \
15448 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
15449 -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
15450 -e 's:$: $lt_compiler_flag:'`
15451 (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5)
15452 (eval "$lt_compile" 2>conftest.err)
15453 ac_status=$?
15454 cat conftest.err >&5
15455 echo "$as_me:$LINENO: \$? = $ac_status" >&5
15456 if (exit $ac_status) && test -s "$ac_outfile"; then
15457 # The compiler can only warn and ignore the option if not recognized
15458 # So say no if there are warnings other than the usual output.
15459 $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp
15460 $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
15461 if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then
15462 lt_cv_prog_compiler_pic_works_CXX=yes
15463 fi
15464 fi
15465 $RM conftest*
15466
15467 fi
15468 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic_works_CXX" >&5
15469 $as_echo "$lt_cv_prog_compiler_pic_works_CXX" >&6; }
15470
15471 if test yes = "$lt_cv_prog_compiler_pic_works_CXX"; then
15472 case $lt_prog_compiler_pic_CXX in
15473 "" | " "*) ;;
15474 *) lt_prog_compiler_pic_CXX=" $lt_prog_compiler_pic_CXX" ;;
15475 esac
15476 else
15477 lt_prog_compiler_pic_CXX=
15478 lt_prog_compiler_can_build_shared_CXX=no
15479 fi
15480
15481 fi
15482
15483
15484
15485
15486
15487 #
15488 # Check to make sure the static flag actually works.
15489 #
15490 wl=$lt_prog_compiler_wl_CXX eval lt_tmp_static_flag=\"$lt_prog_compiler_static_CXX\"
15491 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler static flag $lt_tmp_static_flag works" >&5
15492 $as_echo_n "checking if $compiler static flag $lt_tmp_static_flag works... " >&6; }
15493 if ${lt_cv_prog_compiler_static_works_CXX+:} false; then :
15494 $as_echo_n "(cached) " >&6
15495 else
15496 lt_cv_prog_compiler_static_works_CXX=no
15497 save_LDFLAGS=$LDFLAGS
15498 LDFLAGS="$LDFLAGS $lt_tmp_static_flag"
15499 echo "$lt_simple_link_test_code" > conftest.$ac_ext
15500 if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then
15501 # The linker can only warn and ignore the option if not recognized
15502 # So say no if there are warnings
15503 if test -s conftest.err; then
15504 # Append any errors to the config.log.
15505 cat conftest.err 1>&5
15506 $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp
15507 $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2
15508 if diff conftest.exp conftest.er2 >/dev/null; then
15509 lt_cv_prog_compiler_static_works_CXX=yes
15510 fi
15511 else
15512 lt_cv_prog_compiler_static_works_CXX=yes
15513 fi
15514 fi
15515 $RM -r conftest*
15516 LDFLAGS=$save_LDFLAGS
15517
15518 fi
15519 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_static_works_CXX" >&5
15520 $as_echo "$lt_cv_prog_compiler_static_works_CXX" >&6; }
15521
15522 if test yes = "$lt_cv_prog_compiler_static_works_CXX"; then
15523 :
15524 else
15525 lt_prog_compiler_static_CXX=
15526 fi
15527
15528
15529
15530
15531 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5
15532 $as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; }
15533 if ${lt_cv_prog_compiler_c_o_CXX+:} false; then :
15534 $as_echo_n "(cached) " >&6
15535 else
15536 lt_cv_prog_compiler_c_o_CXX=no
15537 $RM -r conftest 2>/dev/null
15538 mkdir conftest
15539 cd conftest
15540 mkdir out
15541 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
15542
15543 lt_compiler_flag="-o out/conftest2.$ac_objext"
15544 # Insert the option either (1) after the last *FLAGS variable, or
15545 # (2) before a word containing "conftest.", or (3) at the end.
15546 # Note that $ac_compile itself does not contain backslashes and begins
15547 # with a dollar sign (not a hyphen), so the echo should work correctly.
15548 lt_compile=`echo "$ac_compile" | $SED \
15549 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
15550 -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
15551 -e 's:$: $lt_compiler_flag:'`
15552 (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5)
15553 (eval "$lt_compile" 2>out/conftest.err)
15554 ac_status=$?
15555 cat out/conftest.err >&5
15556 echo "$as_me:$LINENO: \$? = $ac_status" >&5
15557 if (exit $ac_status) && test -s out/conftest2.$ac_objext
15558 then
15559 # The compiler can only warn and ignore the option if not recognized
15560 # So say no if there are warnings
15561 $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp
15562 $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
15563 if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
15564 lt_cv_prog_compiler_c_o_CXX=yes
15565 fi
15566 fi
15567 chmod u+w . 2>&5
15568 $RM conftest*
15569 # SGI C++ compiler will create directory out/ii_files/ for
15570 # template instantiation
15571 test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files
15572 $RM out/* && rmdir out
15573 cd ..
15574 $RM -r conftest
15575 $RM conftest*
15576
15577 fi
15578 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o_CXX" >&5
15579 $as_echo "$lt_cv_prog_compiler_c_o_CXX" >&6; }
15580
15581
15582
15583 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5
15584 $as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; }
15585 if ${lt_cv_prog_compiler_c_o_CXX+:} false; then :
15586 $as_echo_n "(cached) " >&6
15587 else
15588 lt_cv_prog_compiler_c_o_CXX=no
15589 $RM -r conftest 2>/dev/null
15590 mkdir conftest
15591 cd conftest
15592 mkdir out
15593 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
15594
15595 lt_compiler_flag="-o out/conftest2.$ac_objext"
15596 # Insert the option either (1) after the last *FLAGS variable, or
15597 # (2) before a word containing "conftest.", or (3) at the end.
15598 # Note that $ac_compile itself does not contain backslashes and begins
15599 # with a dollar sign (not a hyphen), so the echo should work correctly.
15600 lt_compile=`echo "$ac_compile" | $SED \
15601 -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
15602 -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
15603 -e 's:$: $lt_compiler_flag:'`
15604 (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5)
15605 (eval "$lt_compile" 2>out/conftest.err)
15606 ac_status=$?
15607 cat out/conftest.err >&5
15608 echo "$as_me:$LINENO: \$? = $ac_status" >&5
15609 if (exit $ac_status) && test -s out/conftest2.$ac_objext
15610 then
15611 # The compiler can only warn and ignore the option if not recognized
15612 # So say no if there are warnings
15613 $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp
15614 $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2
15615 if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then
15616 lt_cv_prog_compiler_c_o_CXX=yes
15617 fi
15618 fi
15619 chmod u+w . 2>&5
15620 $RM conftest*
15621 # SGI C++ compiler will create directory out/ii_files/ for
15622 # template instantiation
15623 test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files
15624 $RM out/* && rmdir out
15625 cd ..
15626 $RM -r conftest
15627 $RM conftest*
15628
15629 fi
15630 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o_CXX" >&5
15631 $as_echo "$lt_cv_prog_compiler_c_o_CXX" >&6; }
15632
15633
15634
15635
15636 hard_links=nottested
15637 if test no = "$lt_cv_prog_compiler_c_o_CXX" && test no != "$need_locks"; then
15638 # do not overwrite the value of need_locks provided by the user
15639 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if we can lock with hard links" >&5
15640 $as_echo_n "checking if we can lock with hard links... " >&6; }
15641 hard_links=yes
15642 $RM conftest*
15643 ln conftest.a conftest.b 2>/dev/null && hard_links=no
15644 touch conftest.a
15645 ln conftest.a conftest.b 2>&5 || hard_links=no
15646 ln conftest.a conftest.b 2>/dev/null && hard_links=no
15647 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $hard_links" >&5
15648 $as_echo "$hard_links" >&6; }
15649 if test no = "$hard_links"; then
15650 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&5
15651 $as_echo "$as_me: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&2;}
15652 need_locks=warn
15653 fi
15654 else
15655 need_locks=no
15656 fi
15657
15658
15659
15660 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&5
15661 $as_echo_n "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; }
15662
15663 export_symbols_cmds_CXX='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
15664 exclude_expsyms_CXX='_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'
15665 case $host_os in
15666 aix[4-9]*)
15667 # If we're using GNU nm, then we don't want the "-C" option.
15668 # -C means demangle to GNU nm, but means don't demangle to AIX nm.
15669 # Without the "-l" option, or with the "-B" option, AIX nm treats
15670 # weak defined symbols like other global defined symbols, whereas
15671 # GNU nm marks them as "W".
15672 # While the 'weak' keyword is ignored in the Export File, we need
15673 # it in the Import File for the 'aix-soname' feature, so we have
15674 # to replace the "-B" option with "-P" for AIX nm.
15675 if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then
15676 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'
15677 else
15678 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'
15679 fi
15680 ;;
15681 pw32*)
15682 export_symbols_cmds_CXX=$ltdll_cmds
15683 ;;
15684 cygwin* | mingw* | cegcc*)
15685 case $cc_basename in
15686 cl*)
15687 exclude_expsyms_CXX='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*'
15688 ;;
15689 *)
15690 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'
15691 exclude_expsyms_CXX='[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname'
15692 ;;
15693 esac
15694 ;;
15695 linux* | k*bsd*-gnu | gnu*)
15696 link_all_deplibs_CXX=no
15697 ;;
15698 *)
15699 export_symbols_cmds_CXX='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols'
15700 ;;
15701 esac
15702
15703 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs_CXX" >&5
15704 $as_echo "$ld_shlibs_CXX" >&6; }
15705 test no = "$ld_shlibs_CXX" && can_build_shared=no
15706
15707 with_gnu_ld_CXX=$with_gnu_ld
15708
15709
15710
15711
15712
15713
15714 #
15715 # Do we need to explicitly link libc?
15716 #
15717 case "x$archive_cmds_need_lc_CXX" in
15718 x|xyes)
15719 # Assume -lc should be added
15720 archive_cmds_need_lc_CXX=yes
15721
15722 if test yes,yes = "$GCC,$enable_shared"; then
15723 case $archive_cmds_CXX in
15724 *'~'*)
15725 # FIXME: we may have to deal with multi-command sequences.
15726 ;;
15727 '$CC '*)
15728 # Test whether the compiler implicitly links with -lc since on some
15729 # systems, -lgcc has to come before -lc. If gcc already passes -lc
15730 # to ld, don't add -lc before -lgcc.
15731 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -lc should be explicitly linked in" >&5
15732 $as_echo_n "checking whether -lc should be explicitly linked in... " >&6; }
15733 if ${lt_cv_archive_cmds_need_lc_CXX+:} false; then :
15734 $as_echo_n "(cached) " >&6
15735 else
15736 $RM conftest*
15737 echo "$lt_simple_compile_test_code" > conftest.$ac_ext
15738
15739 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
15740 (eval $ac_compile) 2>&5
15741 ac_status=$?
15742 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
15743 test $ac_status = 0; } 2>conftest.err; then
15744 soname=conftest
15745 lib=conftest
15746 libobjs=conftest.$ac_objext
15747 deplibs=
15748 wl=$lt_prog_compiler_wl_CXX
15749 pic_flag=$lt_prog_compiler_pic_CXX
15750 compiler_flags=-v
15751 linker_flags=-v
15752 verstring=
15753 output_objdir=.
15754 libname=conftest
15755 lt_save_allow_undefined_flag=$allow_undefined_flag_CXX
15756 allow_undefined_flag_CXX=
15757 if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$archive_cmds_CXX 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1\""; } >&5
15758 (eval $archive_cmds_CXX 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1) 2>&5
15759 ac_status=$?
15760 $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
15761 test $ac_status = 0; }
15762 then
15763 lt_cv_archive_cmds_need_lc_CXX=no
15764 else
15765 lt_cv_archive_cmds_need_lc_CXX=yes
15766 fi
15767 allow_undefined_flag_CXX=$lt_save_allow_undefined_flag
15768 else
15769 cat conftest.err 1>&5
15770 fi
15771 $RM conftest*
15772
15773 fi
15774 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_archive_cmds_need_lc_CXX" >&5
15775 $as_echo "$lt_cv_archive_cmds_need_lc_CXX" >&6; }
15776 archive_cmds_need_lc_CXX=$lt_cv_archive_cmds_need_lc_CXX
15777 ;;
15778 esac
15779 fi
15780 ;;
15781 esac
15782
15783
15784
15785
15786
15787
15788
15789
15790
15791
15792
15793
15794
15795
15796
15797
15798
15799
15800
15801
15802
15803
15804
15805
15806
15807
15808
15809
15810
15811
15812
15813
15814
15815
15816
15817
15818
15819
15820
15821
15822
15823
15824
15825
15826
15827
15828
15829
15830
15831
15832
15833
15834
15835
15836
15837
15838
15839
15840
15841
15842
15843
15844 { $as_echo "$as_me:${as_lineno-$LINENO}: checking dynamic linker characteristics" >&5
15845 $as_echo_n "checking dynamic linker characteristics... " >&6; }
15846
15847 library_names_spec=
15848 libname_spec='lib$name'
15849 soname_spec=
15850 shrext_cmds=.so
15851 postinstall_cmds=
15852 postuninstall_cmds=
15853 finish_cmds=
15854 finish_eval=
15855 shlibpath_var=
15856 shlibpath_overrides_runpath=unknown
15857 version_type=none
15858 dynamic_linker="$host_os ld.so"
15859 sys_lib_dlsearch_path_spec="/lib /usr/lib"
15860 need_lib_prefix=unknown
15861 hardcode_into_libs=no
15862
15863 # when you set need_version to no, make sure it does not cause -set_version
15864 # flags to be left without arguments
15865 need_version=unknown
15866
15867
15868
15869 case $host_os in
15870 aix3*)
15871 version_type=linux # correct to gnu/linux during the next big refactor
15872 library_names_spec='$libname$release$shared_ext$versuffix $libname.a'
15873 shlibpath_var=LIBPATH
15874
15875 # AIX 3 has no versioning support, so we append a major version to the name.
15876 soname_spec='$libname$release$shared_ext$major'
15877 ;;
15878
15879 aix[4-9]*)
15880 version_type=linux # correct to gnu/linux during the next big refactor
15881 need_lib_prefix=no
15882 need_version=no
15883 hardcode_into_libs=yes
15884 if test ia64 = "$host_cpu"; then
15885 # AIX 5 supports IA64
15886 library_names_spec='$libname$release$shared_ext$major $libname$release$shared_ext$versuffix $libname$shared_ext'
15887 shlibpath_var=LD_LIBRARY_PATH
15888 else
15889 # With GCC up to 2.95.x, collect2 would create an import file
15890 # for dependence libraries. The import file would start with
15891 # the line '#! .'. This would cause the generated library to
15892 # depend on '.', always an invalid library. This was fixed in
15893 # development snapshots of GCC prior to 3.0.
15894 case $host_os in
15895 aix4 | aix4.[01] | aix4.[01].*)
15896 if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)'
15897 echo ' yes '
15898 echo '#endif'; } | $CC -E - | $GREP yes > /dev/null; then
15899 :
15900 else
15901 can_build_shared=no
15902 fi
15903 ;;
15904 esac
15905 # Using Import Files as archive members, it is possible to support
15906 # filename-based versioning of shared library archives on AIX. While
15907 # this would work for both with and without runtime linking, it will
15908 # prevent static linking of such archives. So we do filename-based
15909 # shared library versioning with .so extension only, which is used
15910 # when both runtime linking and shared linking is enabled.
15911 # Unfortunately, runtime linking may impact performance, so we do
15912 # not want this to be the default eventually. Also, we use the
15913 # versioned .so libs for executables only if there is the -brtl
15914 # linker flag in LDFLAGS as well, or --with-aix-soname=svr4 only.
15915 # To allow for filename-based versioning support, we need to create
15916 # libNAME.so.V as an archive file, containing:
15917 # *) an Import File, referring to the versioned filename of the
15918 # archive as well as the shared archive member, telling the
15919 # bitwidth (32 or 64) of that shared object, and providing the
15920 # list of exported symbols of that shared object, eventually
15921 # decorated with the 'weak' keyword
15922 # *) the shared object with the F_LOADONLY flag set, to really avoid
15923 # it being seen by the linker.
15924 # At run time we better use the real file rather than another symlink,
15925 # but for link time we create the symlink libNAME.so -> libNAME.so.V
15926
15927 case $with_aix_soname,$aix_use_runtimelinking in
15928 # AIX (on Power*) has no versioning support, so currently we cannot hardcode correct
15929 # soname into executable. Probably we can add versioning support to
15930 # collect2, so additional links can be useful in future.
15931 aix,yes) # traditional libtool
15932 dynamic_linker='AIX unversionable lib.so'
15933 # If using run time linking (on AIX 4.2 or later) use lib<name>.so
15934 # instead of lib<name>.a to let people know that these are not
15935 # typical AIX shared libraries.
15936 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
15937 ;;
15938 aix,no) # traditional AIX only
15939 dynamic_linker='AIX lib.a(lib.so.V)'
15940 # We preserve .a as extension for shared libraries through AIX4.2
15941 # and later when we are not doing run time linking.
15942 library_names_spec='$libname$release.a $libname.a'
15943 soname_spec='$libname$release$shared_ext$major'
15944 ;;
15945 svr4,*) # full svr4 only
15946 dynamic_linker="AIX lib.so.V($shared_archive_member_spec.o)"
15947 library_names_spec='$libname$release$shared_ext$major $libname$shared_ext'
15948 # We do not specify a path in Import Files, so LIBPATH fires.
15949 shlibpath_overrides_runpath=yes
15950 ;;
15951 *,yes) # both, prefer svr4
15952 dynamic_linker="AIX lib.so.V($shared_archive_member_spec.o), lib.a(lib.so.V)"
15953 library_names_spec='$libname$release$shared_ext$major $libname$shared_ext'
15954 # unpreferred sharedlib libNAME.a needs extra handling
15955 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"'
15956 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"'
15957 # We do not specify a path in Import Files, so LIBPATH fires.
15958 shlibpath_overrides_runpath=yes
15959 ;;
15960 *,no) # both, prefer aix
15961 dynamic_linker="AIX lib.a(lib.so.V), lib.so.V($shared_archive_member_spec.o)"
15962 library_names_spec='$libname$release.a $libname.a'
15963 soname_spec='$libname$release$shared_ext$major'
15964 # unpreferred sharedlib libNAME.so.V and symlink libNAME.so need extra handling
15965 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)'
15966 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"'
15967 ;;
15968 esac
15969 shlibpath_var=LIBPATH
15970 fi
15971 ;;
15972
15973 amigaos*)
15974 case $host_cpu in
15975 powerpc)
15976 # Since July 2007 AmigaOS4 officially supports .so libraries.
15977 # When compiling the executable, add -use-dynld -Lsobjs: to the compileline.
15978 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
15979 ;;
15980 m68k)
15981 library_names_spec='$libname.ixlibrary $libname.a'
15982 # Create ${libname}_ixlibrary.a entries in /sys/libs.
15983 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'
15984 ;;
15985 esac
15986 ;;
15987
15988 beos*)
15989 library_names_spec='$libname$shared_ext'
15990 dynamic_linker="$host_os ld.so"
15991 shlibpath_var=LIBRARY_PATH
15992 ;;
15993
15994 bsdi[45]*)
15995 version_type=linux # correct to gnu/linux during the next big refactor
15996 need_version=no
15997 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
15998 soname_spec='$libname$release$shared_ext$major'
15999 finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
16000 shlibpath_var=LD_LIBRARY_PATH
16001 sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
16002 sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
16003 # the default ld.so.conf also contains /usr/contrib/lib and
16004 # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
16005 # libtool to hard-code these into programs
16006 ;;
16007
16008 cygwin* | mingw* | pw32* | cegcc*)
16009 version_type=windows
16010 shrext_cmds=.dll
16011 need_version=no
16012 need_lib_prefix=no
16013
16014 case $GCC,$cc_basename in
16015 yes,*)
16016 # gcc
16017 library_names_spec='$libname.dll.a'
16018 # DLL is installed to $(libdir)/../bin by postinstall_cmds
16019 postinstall_cmds='base_file=`basename \$file`~
16020 dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~
16021 dldir=$destdir/`dirname \$dlpath`~
16022 test -d \$dldir || mkdir -p \$dldir~
16023 $install_prog $dir/$dlname \$dldir/$dlname~
16024 chmod a+x \$dldir/$dlname~
16025 if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
16026 eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
16027 fi'
16028 postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
16029 dlpath=$dir/\$dldll~
16030 $RM \$dlpath'
16031 shlibpath_overrides_runpath=yes
16032
16033 case $host_os in
16034 cygwin*)
16035 # Cygwin DLLs use 'cyg' prefix rather than 'lib'
16036 soname_spec='`echo $libname | sed -e 's/^lib/cyg/'``echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'
16037
16038 ;;
16039 mingw* | cegcc*)
16040 # MinGW DLLs use traditional 'lib' prefix
16041 soname_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'
16042 ;;
16043 pw32*)
16044 # pw32 DLLs use 'pw' prefix rather than 'lib'
16045 library_names_spec='`echo $libname | sed -e 's/^lib/pw/'``echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'
16046 ;;
16047 esac
16048 dynamic_linker='Win32 ld.exe'
16049 ;;
16050
16051 *,cl*)
16052 # Native MSVC
16053 libname_spec='$name'
16054 soname_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext'
16055 library_names_spec='$libname.dll.lib'
16056
16057 case $build_os in
16058 mingw*)
16059 sys_lib_search_path_spec=
16060 lt_save_ifs=$IFS
16061 IFS=';'
16062 for lt_path in $LIB
16063 do
16064 IFS=$lt_save_ifs
16065 # Let DOS variable expansion print the short 8.3 style file name.
16066 lt_path=`cd "$lt_path" 2>/dev/null && cmd //C "for %i in (".") do @echo %~si"`
16067 sys_lib_search_path_spec="$sys_lib_search_path_spec $lt_path"
16068 done
16069 IFS=$lt_save_ifs
16070 # Convert to MSYS style.
16071 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | sed -e 's|\\\\|/|g' -e 's| \\([a-zA-Z]\\):| /\\1|g' -e 's|^ ||'`
16072 ;;
16073 cygwin*)
16074 # Convert to unix form, then to dos form, then back to unix form
16075 # but this time dos style (no spaces!) so that the unix form looks
16076 # like /cygdrive/c/PROGRA~1:/cygdr...
16077 sys_lib_search_path_spec=`cygpath --path --unix "$LIB"`
16078 sys_lib_search_path_spec=`cygpath --path --dos "$sys_lib_search_path_spec" 2>/dev/null`
16079 sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
16080 ;;
16081 *)
16082 sys_lib_search_path_spec=$LIB
16083 if $ECHO "$sys_lib_search_path_spec" | $GREP ';[c-zC-Z]:/' >/dev/null; then
16084 # It is most probably a Windows format PATH.
16085 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'`
16086 else
16087 sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"`
16088 fi
16089 # FIXME: find the short name or the path components, as spaces are
16090 # common. (e.g. "Program Files" -> "PROGRA~1")
16091 ;;
16092 esac
16093
16094 # DLL is installed to $(libdir)/../bin by postinstall_cmds
16095 postinstall_cmds='base_file=`basename \$file`~
16096 dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~
16097 dldir=$destdir/`dirname \$dlpath`~
16098 test -d \$dldir || mkdir -p \$dldir~
16099 $install_prog $dir/$dlname \$dldir/$dlname'
16100 postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
16101 dlpath=$dir/\$dldll~
16102 $RM \$dlpath'
16103 shlibpath_overrides_runpath=yes
16104 dynamic_linker='Win32 link.exe'
16105 ;;
16106
16107 *)
16108 # Assume MSVC wrapper
16109 library_names_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext $libname.lib'
16110 dynamic_linker='Win32 ld.exe'
16111 ;;
16112 esac
16113 # FIXME: first we should search . and the directory the executable is in
16114 shlibpath_var=PATH
16115 ;;
16116
16117 darwin* | rhapsody*)
16118 dynamic_linker="$host_os dyld"
16119 version_type=darwin
16120 need_lib_prefix=no
16121 need_version=no
16122 library_names_spec='$libname$release$major$shared_ext $libname$shared_ext'
16123 soname_spec='$libname$release$major$shared_ext'
16124 shlibpath_overrides_runpath=yes
16125 shlibpath_var=DYLD_LIBRARY_PATH
16126 shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`'
16127
16128 sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib'
16129 ;;
16130
16131 dgux*)
16132 version_type=linux # correct to gnu/linux during the next big refactor
16133 need_lib_prefix=no
16134 need_version=no
16135 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
16136 soname_spec='$libname$release$shared_ext$major'
16137 shlibpath_var=LD_LIBRARY_PATH
16138 ;;
16139
16140 freebsd* | dragonfly*)
16141 # DragonFly does not have aout. When/if they implement a new
16142 # versioning mechanism, adjust this.
16143 if test -x /usr/bin/objformat; then
16144 objformat=`/usr/bin/objformat`
16145 else
16146 case $host_os in
16147 freebsd[23].*) objformat=aout ;;
16148 *) objformat=elf ;;
16149 esac
16150 fi
16151 version_type=freebsd-$objformat
16152 case $version_type in
16153 freebsd-elf*)
16154 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
16155 soname_spec='$libname$release$shared_ext$major'
16156 need_version=no
16157 need_lib_prefix=no
16158 ;;
16159 freebsd-*)
16160 library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
16161 need_version=yes
16162 ;;
16163 esac
16164 shlibpath_var=LD_LIBRARY_PATH
16165 case $host_os in
16166 freebsd2.*)
16167 shlibpath_overrides_runpath=yes
16168 ;;
16169 freebsd3.[01]* | freebsdelf3.[01]*)
16170 shlibpath_overrides_runpath=yes
16171 hardcode_into_libs=yes
16172 ;;
16173 freebsd3.[2-9]* | freebsdelf3.[2-9]* | \
16174 freebsd4.[0-5] | freebsdelf4.[0-5] | freebsd4.1.1 | freebsdelf4.1.1)
16175 shlibpath_overrides_runpath=no
16176 hardcode_into_libs=yes
16177 ;;
16178 *) # from 4.6 on, and DragonFly
16179 shlibpath_overrides_runpath=yes
16180 hardcode_into_libs=yes
16181 ;;
16182 esac
16183 ;;
16184
16185 haiku*)
16186 version_type=linux # correct to gnu/linux during the next big refactor
16187 need_lib_prefix=no
16188 need_version=no
16189 dynamic_linker="$host_os runtime_loader"
16190 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
16191 soname_spec='$libname$release$shared_ext$major'
16192 shlibpath_var=LIBRARY_PATH
16193 shlibpath_overrides_runpath=no
16194 sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib'
16195 hardcode_into_libs=yes
16196 ;;
16197
16198 hpux9* | hpux10* | hpux11*)
16199 # Give a soname corresponding to the major version so that dld.sl refuses to
16200 # link against other versions.
16201 version_type=sunos
16202 need_lib_prefix=no
16203 need_version=no
16204 case $host_cpu in
16205 ia64*)
16206 shrext_cmds='.so'
16207 hardcode_into_libs=yes
16208 dynamic_linker="$host_os dld.so"
16209 shlibpath_var=LD_LIBRARY_PATH
16210 shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
16211 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
16212 soname_spec='$libname$release$shared_ext$major'
16213 if test 32 = "$HPUX_IA64_MODE"; then
16214 sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib"
16215 sys_lib_dlsearch_path_spec=/usr/lib/hpux32
16216 else
16217 sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64"
16218 sys_lib_dlsearch_path_spec=/usr/lib/hpux64
16219 fi
16220 ;;
16221 hppa*64*)
16222 shrext_cmds='.sl'
16223 hardcode_into_libs=yes
16224 dynamic_linker="$host_os dld.sl"
16225 shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH
16226 shlibpath_overrides_runpath=yes # Unless +noenvvar is specified.
16227 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
16228 soname_spec='$libname$release$shared_ext$major'
16229 sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64"
16230 sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
16231 ;;
16232 *)
16233 shrext_cmds='.sl'
16234 dynamic_linker="$host_os dld.sl"
16235 shlibpath_var=SHLIB_PATH
16236 shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH
16237 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
16238 soname_spec='$libname$release$shared_ext$major'
16239 ;;
16240 esac
16241 # HP-UX runs *really* slowly unless shared libraries are mode 555, ...
16242 postinstall_cmds='chmod 555 $lib'
16243 # or fails outright, so override atomically:
16244 install_override_mode=555
16245 ;;
16246
16247 interix[3-9]*)
16248 version_type=linux # correct to gnu/linux during the next big refactor
16249 need_lib_prefix=no
16250 need_version=no
16251 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
16252 soname_spec='$libname$release$shared_ext$major'
16253 dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)'
16254 shlibpath_var=LD_LIBRARY_PATH
16255 shlibpath_overrides_runpath=no
16256 hardcode_into_libs=yes
16257 ;;
16258
16259 irix5* | irix6* | nonstopux*)
16260 case $host_os in
16261 nonstopux*) version_type=nonstopux ;;
16262 *)
16263 if test yes = "$lt_cv_prog_gnu_ld"; then
16264 version_type=linux # correct to gnu/linux during the next big refactor
16265 else
16266 version_type=irix
16267 fi ;;
16268 esac
16269 need_lib_prefix=no
16270 need_version=no
16271 soname_spec='$libname$release$shared_ext$major'
16272 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$release$shared_ext $libname$shared_ext'
16273 case $host_os in
16274 irix5* | nonstopux*)
16275 libsuff= shlibsuff=
16276 ;;
16277 *)
16278 case $LD in # libtool.m4 will add one of these switches to LD
16279 *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ")
16280 libsuff= shlibsuff= libmagic=32-bit;;
16281 *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ")
16282 libsuff=32 shlibsuff=N32 libmagic=N32;;
16283 *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ")
16284 libsuff=64 shlibsuff=64 libmagic=64-bit;;
16285 *) libsuff= shlibsuff= libmagic=never-match;;
16286 esac
16287 ;;
16288 esac
16289 shlibpath_var=LD_LIBRARY${shlibsuff}_PATH
16290 shlibpath_overrides_runpath=no
16291 sys_lib_search_path_spec="/usr/lib$libsuff /lib$libsuff /usr/local/lib$libsuff"
16292 sys_lib_dlsearch_path_spec="/usr/lib$libsuff /lib$libsuff"
16293 hardcode_into_libs=yes
16294 ;;
16295
16296 # No shared lib support for Linux oldld, aout, or coff.
16297 linux*oldld* | linux*aout* | linux*coff*)
16298 dynamic_linker=no
16299 ;;
16300
16301 linux*android*)
16302 version_type=none # Android doesn't support versioned libraries.
16303 need_lib_prefix=no
16304 need_version=no
16305 library_names_spec='$libname$release$shared_ext'
16306 soname_spec='$libname$release$shared_ext'
16307 finish_cmds=
16308 shlibpath_var=LD_LIBRARY_PATH
16309 shlibpath_overrides_runpath=yes
16310
16311 # This implies no fast_install, which is unacceptable.
16312 # Some rework will be needed to allow for fast_install
16313 # before this can be enabled.
16314 hardcode_into_libs=yes
16315
16316 dynamic_linker='Android linker'
16317 # Don't embed -rpath directories since the linker doesn't support them.
16318 hardcode_libdir_flag_spec_CXX='-L$libdir'
16319 ;;
16320
16321 # This must be glibc/ELF.
16322 linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*)
16323 version_type=linux # correct to gnu/linux during the next big refactor
16324 need_lib_prefix=no
16325 need_version=no
16326 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
16327 soname_spec='$libname$release$shared_ext$major'
16328 finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir'
16329 shlibpath_var=LD_LIBRARY_PATH
16330 shlibpath_overrides_runpath=no
16331
16332 # Some binutils ld are patched to set DT_RUNPATH
16333 if ${lt_cv_shlibpath_overrides_runpath+:} false; then :
16334 $as_echo_n "(cached) " >&6
16335 else
16336 lt_cv_shlibpath_overrides_runpath=no
16337 save_LDFLAGS=$LDFLAGS
16338 save_libdir=$libdir
16339 eval "libdir=/foo; wl=\"$lt_prog_compiler_wl_CXX\"; \
16340 LDFLAGS=\"\$LDFLAGS $hardcode_libdir_flag_spec_CXX\""
16341 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
16342 /* end confdefs.h. */
16343
16344 int
16345 main ()
16346 {
16347
16348 ;
16349 return 0;
16350 }
16351 _ACEOF
16352 if ac_fn_cxx_try_link "$LINENO"; then :
16353 if ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null; then :
16354 lt_cv_shlibpath_overrides_runpath=yes
16355 fi
16356 fi
16357 rm -f core conftest.err conftest.$ac_objext \
16358 conftest$ac_exeext conftest.$ac_ext
16359 LDFLAGS=$save_LDFLAGS
16360 libdir=$save_libdir
16361
16362 fi
16363
16364 shlibpath_overrides_runpath=$lt_cv_shlibpath_overrides_runpath
16365
16366 # This implies no fast_install, which is unacceptable.
16367 # Some rework will be needed to allow for fast_install
16368 # before this can be enabled.
16369 hardcode_into_libs=yes
16370
16371 # Ideally, we could use ldconfig to report *all* directores which are
16372 # searched for libraries, however this is still not possible. Aside from not
16373 # being certain /sbin/ldconfig is available, command
16374 # 'ldconfig -N -X -v | grep ^/' on 64bit Fedora does not report /usr/lib64,
16375 # even though it is searched at run-time. Try to do the best guess by
16376 # appending ld.so.conf contents (and includes) to the search path.
16377 if test -f /etc/ld.so.conf; then
16378 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' ' '`
16379 sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra"
16380 fi
16381
16382 # We used to test for /lib/ld.so.1 and disable shared libraries on
16383 # powerpc, because MkLinux only supported shared libraries with the
16384 # GNU dynamic linker. Since this was broken with cross compilers,
16385 # most powerpc-linux boxes support dynamic linking these days and
16386 # people can always --disable-shared, the test was removed, and we
16387 # assume the GNU/Linux dynamic linker is in use.
16388 dynamic_linker='GNU/Linux ld.so'
16389 ;;
16390
16391 netbsdelf*-gnu)
16392 version_type=linux
16393 need_lib_prefix=no
16394 need_version=no
16395 library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}'
16396 soname_spec='${libname}${release}${shared_ext}$major'
16397 shlibpath_var=LD_LIBRARY_PATH
16398 shlibpath_overrides_runpath=no
16399 hardcode_into_libs=yes
16400 dynamic_linker='NetBSD ld.elf_so'
16401 ;;
16402
16403 netbsd*)
16404 version_type=sunos
16405 need_lib_prefix=no
16406 need_version=no
16407 if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then
16408 library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
16409 finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
16410 dynamic_linker='NetBSD (a.out) ld.so'
16411 else
16412 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
16413 soname_spec='$libname$release$shared_ext$major'
16414 dynamic_linker='NetBSD ld.elf_so'
16415 fi
16416 shlibpath_var=LD_LIBRARY_PATH
16417 shlibpath_overrides_runpath=yes
16418 hardcode_into_libs=yes
16419 ;;
16420
16421 newsos6)
16422 version_type=linux # correct to gnu/linux during the next big refactor
16423 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
16424 shlibpath_var=LD_LIBRARY_PATH
16425 shlibpath_overrides_runpath=yes
16426 ;;
16427
16428 *nto* | *qnx*)
16429 version_type=qnx
16430 need_lib_prefix=no
16431 need_version=no
16432 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
16433 soname_spec='$libname$release$shared_ext$major'
16434 shlibpath_var=LD_LIBRARY_PATH
16435 shlibpath_overrides_runpath=no
16436 hardcode_into_libs=yes
16437 dynamic_linker='ldqnx.so'
16438 ;;
16439
16440 openbsd* | bitrig*)
16441 version_type=sunos
16442 sys_lib_dlsearch_path_spec=/usr/lib
16443 need_lib_prefix=no
16444 if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then
16445 need_version=no
16446 else
16447 need_version=yes
16448 fi
16449 library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
16450 finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir'
16451 shlibpath_var=LD_LIBRARY_PATH
16452 shlibpath_overrides_runpath=yes
16453 ;;
16454
16455 os2*)
16456 libname_spec='$name'
16457 version_type=windows
16458 shrext_cmds=.dll
16459 need_version=no
16460 need_lib_prefix=no
16461 # OS/2 can only load a DLL with a base name of 8 characters or less.
16462 soname_spec='`test -n "$os2dllname" && libname="$os2dllname";
16463 v=$($ECHO $release$versuffix | tr -d .-);
16464 n=$($ECHO $libname | cut -b -$((8 - ${#v})) | tr . _);
16465 $ECHO $n$v`$shared_ext'
16466 library_names_spec='${libname}_dll.$libext'
16467 dynamic_linker='OS/2 ld.exe'
16468 shlibpath_var=BEGINLIBPATH
16469 sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib"
16470 sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
16471 postinstall_cmds='base_file=`basename \$file`~
16472 dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; $ECHO \$dlname'\''`~
16473 dldir=$destdir/`dirname \$dlpath`~
16474 test -d \$dldir || mkdir -p \$dldir~
16475 $install_prog $dir/$dlname \$dldir/$dlname~
16476 chmod a+x \$dldir/$dlname~
16477 if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then
16478 eval '\''$striplib \$dldir/$dlname'\'' || exit \$?;
16479 fi'
16480 postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; $ECHO \$dlname'\''`~
16481 dlpath=$dir/\$dldll~
16482 $RM \$dlpath'
16483 ;;
16484
16485 osf3* | osf4* | osf5*)
16486 version_type=osf
16487 need_lib_prefix=no
16488 need_version=no
16489 soname_spec='$libname$release$shared_ext$major'
16490 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
16491 shlibpath_var=LD_LIBRARY_PATH
16492 sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib"
16493 sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec
16494 ;;
16495
16496 rdos*)
16497 dynamic_linker=no
16498 ;;
16499
16500 solaris*)
16501 version_type=linux # correct to gnu/linux during the next big refactor
16502 need_lib_prefix=no
16503 need_version=no
16504 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
16505 soname_spec='$libname$release$shared_ext$major'
16506 shlibpath_var=LD_LIBRARY_PATH
16507 shlibpath_overrides_runpath=yes
16508 hardcode_into_libs=yes
16509 # ldd complains unless libraries are executable
16510 postinstall_cmds='chmod +x $lib'
16511 ;;
16512
16513 sunos4*)
16514 version_type=sunos
16515 library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix'
16516 finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir'
16517 shlibpath_var=LD_LIBRARY_PATH
16518 shlibpath_overrides_runpath=yes
16519 if test yes = "$with_gnu_ld"; then
16520 need_lib_prefix=no
16521 fi
16522 need_version=yes
16523 ;;
16524
16525 sysv4 | sysv4.3*)
16526 version_type=linux # correct to gnu/linux during the next big refactor
16527 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
16528 soname_spec='$libname$release$shared_ext$major'
16529 shlibpath_var=LD_LIBRARY_PATH
16530 case $host_vendor in
16531 sni)
16532 shlibpath_overrides_runpath=no
16533 need_lib_prefix=no
16534 runpath_var=LD_RUN_PATH
16535 ;;
16536 siemens)
16537 need_lib_prefix=no
16538 ;;
16539 motorola)
16540 need_lib_prefix=no
16541 need_version=no
16542 shlibpath_overrides_runpath=no
16543 sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib'
16544 ;;
16545 esac
16546 ;;
16547
16548 sysv4*MP*)
16549 if test -d /usr/nec; then
16550 version_type=linux # correct to gnu/linux during the next big refactor
16551 library_names_spec='$libname$shared_ext.$versuffix $libname$shared_ext.$major $libname$shared_ext'
16552 soname_spec='$libname$shared_ext.$major'
16553 shlibpath_var=LD_LIBRARY_PATH
16554 fi
16555 ;;
16556
16557 sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*)
16558 version_type=sco
16559 need_lib_prefix=no
16560 need_version=no
16561 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext $libname$shared_ext'
16562 soname_spec='$libname$release$shared_ext$major'
16563 shlibpath_var=LD_LIBRARY_PATH
16564 shlibpath_overrides_runpath=yes
16565 hardcode_into_libs=yes
16566 if test yes = "$with_gnu_ld"; then
16567 sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib'
16568 else
16569 sys_lib_search_path_spec='/usr/ccs/lib /usr/lib'
16570 case $host_os in
16571 sco3.2v5*)
16572 sys_lib_search_path_spec="$sys_lib_search_path_spec /lib"
16573 ;;
16574 esac
16575 fi
16576 sys_lib_dlsearch_path_spec='/usr/lib'
16577 ;;
16578
16579 tpf*)
16580 # TPF is a cross-target only. Preferred cross-host = GNU/Linux.
16581 version_type=linux # correct to gnu/linux during the next big refactor
16582 need_lib_prefix=no
16583 need_version=no
16584 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
16585 shlibpath_var=LD_LIBRARY_PATH
16586 shlibpath_overrides_runpath=no
16587 hardcode_into_libs=yes
16588 ;;
16589
16590 uts4*)
16591 version_type=linux # correct to gnu/linux during the next big refactor
16592 library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext'
16593 soname_spec='$libname$release$shared_ext$major'
16594 shlibpath_var=LD_LIBRARY_PATH
16595 ;;
16596
16597 *)
16598 dynamic_linker=no
16599 ;;
16600 esac
16601 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $dynamic_linker" >&5
16602 $as_echo "$dynamic_linker" >&6; }
16603 test no = "$dynamic_linker" && can_build_shared=no
16604
16605 variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
16606 if test yes = "$GCC"; then
16607 variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH"
16608 fi
16609
16610 if test set = "${lt_cv_sys_lib_search_path_spec+set}"; then
16611 sys_lib_search_path_spec=$lt_cv_sys_lib_search_path_spec
16612 fi
16613
16614 if test set = "${lt_cv_sys_lib_dlsearch_path_spec+set}"; then
16615 sys_lib_dlsearch_path_spec=$lt_cv_sys_lib_dlsearch_path_spec
16616 fi
16617
16618 # remember unaugmented sys_lib_dlsearch_path content for libtool script decls...
16619 configure_time_dlsearch_path=$sys_lib_dlsearch_path_spec
16620
16621 # ... but it needs LT_SYS_LIBRARY_PATH munging for other configure-time code
16622 func_munge_path_list sys_lib_dlsearch_path_spec "$LT_SYS_LIBRARY_PATH"
16623
16624 # to be used as default LT_SYS_LIBRARY_PATH value in generated libtool
16625 configure_time_lt_sys_library_path=$LT_SYS_LIBRARY_PATH
16626
16627
16628
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 { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to hardcode library paths into programs" >&5
16667 $as_echo_n "checking how to hardcode library paths into programs... " >&6; }
16668 hardcode_action_CXX=
16669 if test -n "$hardcode_libdir_flag_spec_CXX" ||
16670 test -n "$runpath_var_CXX" ||
16671 test yes = "$hardcode_automatic_CXX"; then
16672
16673 # We can hardcode non-existent directories.
16674 if test no != "$hardcode_direct_CXX" &&
16675 # If the only mechanism to avoid hardcoding is shlibpath_var, we
16676 # have to relink, otherwise we might link with an installed library
16677 # when we should be linking with a yet-to-be-installed one
16678 ## test no != "$_LT_TAGVAR(hardcode_shlibpath_var, CXX)" &&
16679 test no != "$hardcode_minus_L_CXX"; then
16680 # Linking always hardcodes the temporary library directory.
16681 hardcode_action_CXX=relink
16682 else
16683 # We can link without hardcoding, and we can hardcode nonexisting dirs.
16684 hardcode_action_CXX=immediate
16685 fi
16686 else
16687 # We cannot hardcode anything, or else we can only hardcode existing
16688 # directories.
16689 hardcode_action_CXX=unsupported
16690 fi
16691 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $hardcode_action_CXX" >&5
16692 $as_echo "$hardcode_action_CXX" >&6; }
16693
16694 if test relink = "$hardcode_action_CXX" ||
16695 test yes = "$inherit_rpath_CXX"; then
16696 # Fast installation is not supported
16697 enable_fast_install=no
16698 elif test yes = "$shlibpath_overrides_runpath" ||
16699 test no = "$enable_shared"; then
16700 # Fast installation is not necessary
16701 enable_fast_install=needless
16702 fi
16703
16704
16705
16706
16707
16708
16709
16710 fi # test -n "$compiler"
16711
16712 CC=$lt_save_CC
16713 CFLAGS=$lt_save_CFLAGS
16714 LDCXX=$LD
16715 LD=$lt_save_LD
16716 GCC=$lt_save_GCC
16717 with_gnu_ld=$lt_save_with_gnu_ld
16718 lt_cv_path_LDCXX=$lt_cv_path_LD
16719 lt_cv_path_LD=$lt_save_path_LD
16720 lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld
16721 lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld
16722 fi # test yes != "$_lt_caught_CXX_error"
16723
16724 ac_ext=c
16725 ac_cpp='$CPP $CPPFLAGS'
16726 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
16727 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
16728 ac_compiler_gnu=$ac_cv_c_compiler_gnu
16729
16730
16731
16732 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ln -s works" >&5
16733 $as_echo_n "checking whether ln -s works... " >&6; }
16734 LN_S=$as_ln_s
16735 if test "$LN_S" = "ln -s"; then
16736 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
16737 $as_echo "yes" >&6; }
16738 else
16739 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no, using $LN_S" >&5
16740 $as_echo "no, using $LN_S" >&6; }
16741 fi
16742
16743 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5
16744 $as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; }
16745 set x ${MAKE-make}
16746 ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'`
16747 if eval \${ac_cv_prog_make_${ac_make}_set+:} false; then :
16748 $as_echo_n "(cached) " >&6
16749 else
16750 cat >conftest.make <<\_ACEOF
16751 SHELL = /bin/sh
16752 all:
16753 @echo '@@@%%%=$(MAKE)=@@@%%%'
16754 _ACEOF
16755 # GNU make sometimes prints "make[1]: Entering ...", which would confuse us.
16756 case `${MAKE-make} -f conftest.make 2>/dev/null` in
16757 *@@@%%%=?*=@@@%%%*)
16758 eval ac_cv_prog_make_${ac_make}_set=yes;;
16759 *)
16760 eval ac_cv_prog_make_${ac_make}_set=no;;
16761 esac
16762 rm -f conftest.make
16763 fi
16764 if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then
16765 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
16766 $as_echo "yes" >&6; }
16767 SET_MAKE=
16768 else
16769 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
16770 $as_echo "no" >&6; }
16771 SET_MAKE="MAKE=${MAKE-make}"
16772 fi
16773
16774 for ac_prog in rpmbuild
16775 do
16776 # Extract the first word of "$ac_prog", so it can be a program name with args.
16777 set dummy $ac_prog; ac_word=$2
16778 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
16779 $as_echo_n "checking for $ac_word... " >&6; }
16780 if ${ac_cv_prog_RPMBUILD+:} false; then :
16781 $as_echo_n "(cached) " >&6
16782 else
16783 if test -n "$RPMBUILD"; then
16784 ac_cv_prog_RPMBUILD="$RPMBUILD" # Let the user override the test.
16785 else
16786 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
16787 for as_dir in $PATH
16788 do
16789 IFS=$as_save_IFS
16790 test -z "$as_dir" && as_dir=.
16791 for ac_exec_ext in '' $ac_executable_extensions; do
16792 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
16793 ac_cv_prog_RPMBUILD="$ac_prog"
16794 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
16795 break 2
16796 fi
16797 done
16798 done
16799 IFS=$as_save_IFS
16800
16801 fi
16802 fi
16803 RPMBUILD=$ac_cv_prog_RPMBUILD
16804 if test -n "$RPMBUILD"; then
16805 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $RPMBUILD" >&5
16806 $as_echo "$RPMBUILD" >&6; }
16807 else
16808 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
16809 $as_echo "no" >&6; }
16810 fi
16811
16812
16813 test -n "$RPMBUILD" && break
16814 done
16815 test -n "$RPMBUILD" || RPMBUILD="rpm"
16816
16817
16818 ac_config_headers="$ac_config_headers config.h"
16819
16820
16821
16822 # Check whether --with-xmms was given.
16823 if test "${with_xmms+set}" = set; then :
16824 withval=$with_xmms; WITHXMMS=$withval
16825 else
16826 WITHXMMS=no
16827 fi
16828
16829
16830
16831 # Check whether --with-drm was given.
16832 if test "${with_drm+set}" = set; then :
16833 withval=$with_drm; WITHDRM=$withval
16834 else
16835 WITHDRM=no
16836 fi
16837
16838
16839
16840 # Check whether --with-mpeg4ip was given.
16841 if test "${with_mpeg4ip+set}" = set; then :
16842 withval=$with_mpeg4ip; WITHMPEG4IP=$withval
16843 else
16844 WITHMPEG4IP=no
16845 fi
16846
16847
16848 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5
16849 $as_echo_n "checking for ANSI C header files... " >&6; }
16850 if ${ac_cv_header_stdc+:} false; then :
16851 $as_echo_n "(cached) " >&6
16852 else
16853 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
16854 /* end confdefs.h. */
16855 #include <stdlib.h>
16856 #include <stdarg.h>
16857 #include <string.h>
16858 #include <float.h>
16859
16860 int
16861 main ()
16862 {
16863
16864 ;
16865 return 0;
16866 }
16867 _ACEOF
16868 if ac_fn_c_try_compile "$LINENO"; then :
16869 ac_cv_header_stdc=yes
16870 else
16871 ac_cv_header_stdc=no
16872 fi
16873 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
16874
16875 if test $ac_cv_header_stdc = yes; then
16876 # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
16877 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
16878 /* end confdefs.h. */
16879 #include <string.h>
16880
16881 _ACEOF
16882 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
16883 $EGREP "memchr" >/dev/null 2>&1; then :
16884
16885 else
16886 ac_cv_header_stdc=no
16887 fi
16888 rm -f conftest*
16889
16890 fi
16891
16892 if test $ac_cv_header_stdc = yes; then
16893 # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
16894 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
16895 /* end confdefs.h. */
16896 #include <stdlib.h>
16897
16898 _ACEOF
16899 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
16900 $EGREP "free" >/dev/null 2>&1; then :
16901
16902 else
16903 ac_cv_header_stdc=no
16904 fi
16905 rm -f conftest*
16906
16907 fi
16908
16909 if test $ac_cv_header_stdc = yes; then
16910 # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi.
16911 if test "$cross_compiling" = yes; then :
16912 :
16913 else
16914 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
16915 /* end confdefs.h. */
16916 #include <ctype.h>
16917 #include <stdlib.h>
16918 #if ((' ' & 0x0FF) == 0x020)
16919 # define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
16920 # define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c))
16921 #else
16922 # define ISLOWER(c) \
16923 (('a' <= (c) && (c) <= 'i') \
16924 || ('j' <= (c) && (c) <= 'r') \
16925 || ('s' <= (c) && (c) <= 'z'))
16926 # define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c))
16927 #endif
16928
16929 #define XOR(e, f) (((e) && !(f)) || (!(e) && (f)))
16930 int
16931 main ()
16932 {
16933 int i;
16934 for (i = 0; i < 256; i++)
16935 if (XOR (islower (i), ISLOWER (i))
16936 || toupper (i) != TOUPPER (i))
16937 return 2;
16938 return 0;
16939 }
16940 _ACEOF
16941 if ac_fn_c_try_run "$LINENO"; then :
16942
16943 else
16944 ac_cv_header_stdc=no
16945 fi
16946 rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
16947 conftest.$ac_objext conftest.beam conftest.$ac_ext
16948 fi
16949
16950 fi
16951 fi
16952 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5
16953 $as_echo "$ac_cv_header_stdc" >&6; }
16954 if test $ac_cv_header_stdc = yes; then
16955
16956 $as_echo "#define STDC_HEADERS 1" >>confdefs.h
16957
16958 fi
16959
16960 for ac_header in stdint.h inttypes.h
16961 do :
16962 as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
16963 ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
16964 if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
16965 cat >>confdefs.h <<_ACEOF
16966 #define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
16967 _ACEOF
16968
16969 fi
16970
16971 done
16972
16973 for ac_header in mathf.h
16974 do :
16975 ac_fn_c_check_header_mongrel "$LINENO" "mathf.h" "ac_cv_header_mathf_h" "$ac_includes_default"
16976 if test "x$ac_cv_header_mathf_h" = xyes; then :
16977 cat >>confdefs.h <<_ACEOF
16978 #define HAVE_MATHF_H 1
16979 _ACEOF
16980
16981 fi
16982
16983 done
16984
16985 for ac_header in float.h
16986 do :
16987 ac_fn_c_check_header_mongrel "$LINENO" "float.h" "ac_cv_header_float_h" "$ac_includes_default"
16988 if test "x$ac_cv_header_float_h" = xyes; then :
16989 cat >>confdefs.h <<_ACEOF
16990 #define HAVE_FLOAT_H 1
16991 _ACEOF
16992
16993 fi
16994
16995 done
16996
16997 for ac_func in strchr memcpy
16998 do :
16999 as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
17000 ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
17001 if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
17002 cat >>confdefs.h <<_ACEOF
17003 #define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
17004 _ACEOF
17005
17006 fi
17007 done
17008
17009 for ac_header in sys/time.h
17010 do :
17011 ac_fn_c_check_header_mongrel "$LINENO" "sys/time.h" "ac_cv_header_sys_time_h" "$ac_includes_default"
17012 if test "x$ac_cv_header_sys_time_h" = xyes; then :
17013 cat >>confdefs.h <<_ACEOF
17014 #define HAVE_SYS_TIME_H 1
17015 _ACEOF
17016
17017 fi
17018
17019 done
17020
17021 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether time.h and sys/time.h may both be included" >&5
17022 $as_echo_n "checking whether time.h and sys/time.h may both be included... " >&6; }
17023 if ${ac_cv_header_time+:} false; then :
17024 $as_echo_n "(cached) " >&6
17025 else
17026 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
17027 /* end confdefs.h. */
17028 #include <sys/types.h>
17029 #include <sys/time.h>
17030 #include <time.h>
17031
17032 int
17033 main ()
17034 {
17035 if ((struct tm *) 0)
17036 return 0;
17037 ;
17038 return 0;
17039 }
17040 _ACEOF
17041 if ac_fn_c_try_compile "$LINENO"; then :
17042 ac_cv_header_time=yes
17043 else
17044 ac_cv_header_time=no
17045 fi
17046 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
17047 fi
17048 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_time" >&5
17049 $as_echo "$ac_cv_header_time" >&6; }
17050 if test $ac_cv_header_time = yes; then
17051
17052 $as_echo "#define TIME_WITH_SYS_TIME 1" >>confdefs.h
17053
17054 fi
17055
17056
17057 for ac_header in errno.h sys/stat.h sys/types.h limits.h
17058 do :
17059 as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
17060 ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
17061 if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
17062 cat >>confdefs.h <<_ACEOF
17063 #define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
17064 _ACEOF
17065
17066 fi
17067
17068 done
17069
17070 for ac_header in sysfs/libsysfs.h
17071 do :
17072 ac_fn_c_check_header_mongrel "$LINENO" "sysfs/libsysfs.h" "ac_cv_header_sysfs_libsysfs_h" "$ac_includes_default"
17073 if test "x$ac_cv_header_sysfs_libsysfs_h" = xyes; then :
17074 cat >>confdefs.h <<_ACEOF
17075 #define HAVE_SYSFS_LIBSYSFS_H 1
17076 _ACEOF
17077
17078 fi
17079
17080 done
17081
17082 for ac_header in IOKit/IOKitLib.h
17083 do :
17084 ac_fn_c_check_header_mongrel "$LINENO" "IOKit/IOKitLib.h" "ac_cv_header_IOKit_IOKitLib_h" "$ac_includes_default"
17085 if test "x$ac_cv_header_IOKit_IOKitLib_h" = xyes; then :
17086 cat >>confdefs.h <<_ACEOF
17087 #define HAVE_IOKIT_IOKITLIB_H 1
17088 _ACEOF
17089 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for main in -lIOKit" >&5
17090 $as_echo_n "checking for main in -lIOKit... " >&6; }
17091 if ${ac_cv_lib_IOKit_main+:} false; then :
17092 $as_echo_n "(cached) " >&6
17093 else
17094 ac_check_lib_save_LIBS=$LIBS
17095 LIBS="-lIOKit $LIBS"
17096 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
17097 /* end confdefs.h. */
17098
17099
17100 int
17101 main ()
17102 {
17103 return main ();
17104 ;
17105 return 0;
17106 }
17107 _ACEOF
17108 if ac_fn_c_try_link "$LINENO"; then :
17109 ac_cv_lib_IOKit_main=yes
17110 else
17111 ac_cv_lib_IOKit_main=no
17112 fi
17113 rm -f core conftest.err conftest.$ac_objext \
17114 conftest$ac_exeext conftest.$ac_ext
17115 LIBS=$ac_check_lib_save_LIBS
17116 fi
17117 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_IOKit_main" >&5
17118 $as_echo "$ac_cv_lib_IOKit_main" >&6; }
17119 if test "x$ac_cv_lib_IOKit_main" = xyes; then :
17120
17121 $as_echo "#define HAVE_IOKIT_IOKITLIB_H 1" >>confdefs.h
17122
17123 MP4FF_LIBS="-lIOKit"
17124
17125 fi
17126
17127 fi
17128
17129 done
17130
17131 for ac_func in getpwuid
17132 do :
17133 ac_fn_c_check_func "$LINENO" "getpwuid" "ac_cv_func_getpwuid"
17134 if test "x$ac_cv_func_getpwuid" = xyes; then :
17135 cat >>confdefs.h <<_ACEOF
17136 #define HAVE_GETPWUID 1
17137 _ACEOF
17138
17139 fi
17140 done
17141
17142
17143 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for inline" >&5
17144 $as_echo_n "checking for inline... " >&6; }
17145 if ${ac_cv_c_inline+:} false; then :
17146 $as_echo_n "(cached) " >&6
17147 else
17148 ac_cv_c_inline=no
17149 for ac_kw in inline __inline__ __inline; do
17150 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
17151 /* end confdefs.h. */
17152 #ifndef __cplusplus
17153 typedef int foo_t;
17154 static $ac_kw foo_t static_foo () {return 0; }
17155 $ac_kw foo_t foo () {return 0; }
17156 #endif
17157
17158 _ACEOF
17159 if ac_fn_c_try_compile "$LINENO"; then :
17160 ac_cv_c_inline=$ac_kw
17161 fi
17162 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
17163 test "$ac_cv_c_inline" != no && break
17164 done
17165
17166 fi
17167 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_inline" >&5
17168 $as_echo "$ac_cv_c_inline" >&6; }
17169
17170 case $ac_cv_c_inline in
17171 inline | yes) ;;
17172 *)
17173 case $ac_cv_c_inline in
17174 no) ac_val=;;
17175 *) ac_val=$ac_cv_c_inline;;
17176 esac
17177 cat >>confdefs.h <<_ACEOF
17178 #ifndef __cplusplus
17179 #define inline $ac_val
17180 #endif
17181 _ACEOF
17182 ;;
17183 esac
17184
17185 { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether byte ordering is bigendian" >&5
17186 $as_echo_n "checking whether byte ordering is bigendian... " >&6; }
17187 if ${ac_cv_c_bigendian+:} false; then :
17188 $as_echo_n "(cached) " >&6
17189 else
17190 ac_cv_c_bigendian=unknown
17191 # See if we're dealing with a universal compiler.
17192 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
17193 /* end confdefs.h. */
17194 #ifndef __APPLE_CC__
17195 not a universal capable compiler
17196 #endif
17197 typedef int dummy;
17198
17199 _ACEOF
17200 if ac_fn_c_try_compile "$LINENO"; then :
17201
17202 # Check for potential -arch flags. It is not universal unless
17203 # there are at least two -arch flags with different values.
17204 ac_arch=
17205 ac_prev=
17206 for ac_word in $CC $CFLAGS $CPPFLAGS $LDFLAGS; do
17207 if test -n "$ac_prev"; then
17208 case $ac_word in
17209 i?86 | x86_64 | ppc | ppc64)
17210 if test -z "$ac_arch" || test "$ac_arch" = "$ac_word"; then
17211 ac_arch=$ac_word
17212 else
17213 ac_cv_c_bigendian=universal
17214 break
17215 fi
17216 ;;
17217 esac
17218 ac_prev=
17219 elif test "x$ac_word" = "x-arch"; then
17220 ac_prev=arch
17221 fi
17222 done
17223 fi
17224 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
17225 if test $ac_cv_c_bigendian = unknown; then
17226 # See if sys/param.h defines the BYTE_ORDER macro.
17227 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
17228 /* end confdefs.h. */
17229 #include <sys/types.h>
17230 #include <sys/param.h>
17231
17232 int
17233 main ()
17234 {
17235 #if ! (defined BYTE_ORDER && defined BIG_ENDIAN \
17236 && defined LITTLE_ENDIAN && BYTE_ORDER && BIG_ENDIAN \
17237 && LITTLE_ENDIAN)
17238 bogus endian macros
17239 #endif
17240
17241 ;
17242 return 0;
17243 }
17244 _ACEOF
17245 if ac_fn_c_try_compile "$LINENO"; then :
17246 # It does; now see whether it defined to BIG_ENDIAN or not.
17247 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
17248 /* end confdefs.h. */
17249 #include <sys/types.h>
17250 #include <sys/param.h>
17251
17252 int
17253 main ()
17254 {
17255 #if BYTE_ORDER != BIG_ENDIAN
17256 not big endian
17257 #endif
17258
17259 ;
17260 return 0;
17261 }
17262 _ACEOF
17263 if ac_fn_c_try_compile "$LINENO"; then :
17264 ac_cv_c_bigendian=yes
17265 else
17266 ac_cv_c_bigendian=no
17267 fi
17268 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
17269 fi
17270 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
17271 fi
17272 if test $ac_cv_c_bigendian = unknown; then
17273 # See if <limits.h> defines _LITTLE_ENDIAN or _BIG_ENDIAN (e.g., Solaris).
17274 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
17275 /* end confdefs.h. */
17276 #include <limits.h>
17277
17278 int
17279 main ()
17280 {
17281 #if ! (defined _LITTLE_ENDIAN || defined _BIG_ENDIAN)
17282 bogus endian macros
17283 #endif
17284
17285 ;
17286 return 0;
17287 }
17288 _ACEOF
17289 if ac_fn_c_try_compile "$LINENO"; then :
17290 # It does; now see whether it defined to _BIG_ENDIAN or not.
17291 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
17292 /* end confdefs.h. */
17293 #include <limits.h>
17294
17295 int
17296 main ()
17297 {
17298 #ifndef _BIG_ENDIAN
17299 not big endian
17300 #endif
17301
17302 ;
17303 return 0;
17304 }
17305 _ACEOF
17306 if ac_fn_c_try_compile "$LINENO"; then :
17307 ac_cv_c_bigendian=yes
17308 else
17309 ac_cv_c_bigendian=no
17310 fi
17311 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
17312 fi
17313 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
17314 fi
17315 if test $ac_cv_c_bigendian = unknown; then
17316 # Compile a test program.
17317 if test "$cross_compiling" = yes; then :
17318 # Try to guess by grepping values from an object file.
17319 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
17320 /* end confdefs.h. */
17321 short int ascii_mm[] =
17322 { 0x4249, 0x4765, 0x6E44, 0x6961, 0x6E53, 0x7953, 0 };
17323 short int ascii_ii[] =
17324 { 0x694C, 0x5454, 0x656C, 0x6E45, 0x6944, 0x6E61, 0 };
17325 int use_ascii (int i) {
17326 return ascii_mm[i] + ascii_ii[i];
17327 }
17328 short int ebcdic_ii[] =
17329 { 0x89D3, 0xE3E3, 0x8593, 0x95C5, 0x89C4, 0x9581, 0 };
17330 short int ebcdic_mm[] =
17331 { 0xC2C9, 0xC785, 0x95C4, 0x8981, 0x95E2, 0xA8E2, 0 };
17332 int use_ebcdic (int i) {
17333 return ebcdic_mm[i] + ebcdic_ii[i];
17334 }
17335 extern int foo;
17336
17337 int
17338 main ()
17339 {
17340 return use_ascii (foo) == use_ebcdic (foo);
17341 ;
17342 return 0;
17343 }
17344 _ACEOF
17345 if ac_fn_c_try_compile "$LINENO"; then :
17346 if grep BIGenDianSyS conftest.$ac_objext >/dev/null; then
17347 ac_cv_c_bigendian=yes
17348 fi
17349 if grep LiTTleEnDian conftest.$ac_objext >/dev/null ; then
17350 if test "$ac_cv_c_bigendian" = unknown; then
17351 ac_cv_c_bigendian=no
17352 else
17353 # finding both strings is unlikely to happen, but who knows?
17354 ac_cv_c_bigendian=unknown
17355 fi
17356 fi
17357 fi
17358 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
17359 else
17360 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
17361 /* end confdefs.h. */
17362 $ac_includes_default
17363 int
17364 main ()
17365 {
17366
17367 /* Are we little or big endian? From Harbison&Steele. */
17368 union
17369 {
17370 long int l;
17371 char c[sizeof (long int)];
17372 } u;
17373 u.l = 1;
17374 return u.c[sizeof (long int) - 1] == 1;
17375
17376 ;
17377 return 0;
17378 }
17379 _ACEOF
17380 if ac_fn_c_try_run "$LINENO"; then :
17381 ac_cv_c_bigendian=no
17382 else
17383 ac_cv_c_bigendian=yes
17384 fi
17385 rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
17386 conftest.$ac_objext conftest.beam conftest.$ac_ext
17387 fi
17388
17389 fi
17390 fi
17391 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_bigendian" >&5
17392 $as_echo "$ac_cv_c_bigendian" >&6; }
17393 case $ac_cv_c_bigendian in #(
17394 yes)
17395 $as_echo "#define WORDS_BIGENDIAN 1" >>confdefs.h
17396 ;; #(
17397 no)
17398 ;; #(
17399 universal)
17400
17401 $as_echo "#define AC_APPLE_UNIVERSAL_BUILD 1" >>confdefs.h
17402
17403 ;; #(
17404 *)
17405 as_fn_error $? "unknown endianness
17406 presetting ac_cv_c_bigendian=no (or yes) will help" "$LINENO" 5 ;;
17407 esac
17408
17409
17410 ac_fn_c_check_type "$LINENO" "off_t" "ac_cv_type_off_t" "$ac_includes_default"
17411 if test "x$ac_cv_type_off_t" = xyes; then :
17412
17413 else
17414
17415 cat >>confdefs.h <<_ACEOF
17416 #define off_t long int
17417 _ACEOF
17418
17419 fi
17420
17421
17422
17423
17424 # AC_C99_FUNC_LRINTF
17425 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for lrintf" >&5
17426 $as_echo_n "checking for lrintf... " >&6; }
17427 if ${ac_cv_c99_lrintf+:} false; then :
17428 $as_echo_n "(cached) " >&6
17429 else
17430
17431 lrintf_save_CFLAGS=$CFLAGS
17432 CFLAGS="-O -lm"
17433 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
17434 /* end confdefs.h. */
17435
17436 #define _ISOC9X_SOURCE 1
17437 #define _ISOC99_SOURCE 1
17438 #define __USE_ISOC99 1
17439 #define __USE_ISOC9X 1
17440
17441 #include <math.h>
17442
17443 int
17444 main ()
17445 {
17446 if (!lrintf(3.14159)) lrintf(2.7183);
17447 ;
17448 return 0;
17449 }
17450 _ACEOF
17451 if ac_fn_c_try_link "$LINENO"; then :
17452 ac_cv_c99_lrintf=yes
17453 else
17454 ac_cv_c99_lrintf=no
17455 fi
17456 rm -f core conftest.err conftest.$ac_objext \
17457 conftest$ac_exeext conftest.$ac_ext
17458
17459 CFLAGS=$lrintf_save_CFLAGS
17460
17461
17462 fi
17463 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c99_lrintf" >&5
17464 $as_echo "$ac_cv_c99_lrintf" >&6; }
17465
17466 if test "$ac_cv_c99_lrintf" = yes; then
17467
17468 $as_echo "#define HAVE_LRINTF 1" >>confdefs.h
17469
17470 fi
17471
17472
17473
17474 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for float32_t temp" >&5
17475 $as_echo_n "checking for float32_t temp... " >&6; }
17476 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
17477 /* end confdefs.h. */
17478 #include <sys/types.h>,
17479 #include <sys/float.h>
17480 int
17481 main ()
17482 {
17483 float32_t temp;
17484 ;
17485 return 0;
17486 }
17487 _ACEOF
17488 if ac_fn_c_try_compile "$LINENO"; then :
17489 libfaad_ok=yes
17490 else
17491 libfaad_ok=no
17492 fi
17493 rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
17494 if test $libfaad_ok = yes; then
17495
17496 $as_echo "#define HAVE_FLOAT32_T 1" >>confdefs.h
17497
17498 { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
17499 $as_echo "yes" >&6; }
17500 else
17501 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
17502 $as_echo "no" >&6; }
17503 fi
17504
17505
17506 for ac_func in strsep
17507 do :
17508 ac_fn_c_check_func "$LINENO" "strsep" "ac_cv_func_strsep"
17509 if test "x$ac_cv_func_strsep" = xyes; then :
17510 cat >>confdefs.h <<_ACEOF
17511 #define HAVE_STRSEP 1
17512 _ACEOF
17513
17514 fi
17515 done
17516
17517
17518 # Extract the first word of "mpeg4ip-config", so it can be a program name with args.
17519 set dummy mpeg4ip-config; ac_word=$2
17520 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
17521 $as_echo_n "checking for $ac_word... " >&6; }
17522 if ${ac_cv_prog_external_mp4v2+:} false; then :
17523 $as_echo_n "(cached) " >&6
17524 else
17525 if test -n "$external_mp4v2"; then
17526 ac_cv_prog_external_mp4v2="$external_mp4v2" # Let the user override the test.
17527 else
17528 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
17529 for as_dir in $PATH
17530 do
17531 IFS=$as_save_IFS
17532 test -z "$as_dir" && as_dir=.
17533 for ac_exec_ext in '' $ac_executable_extensions; do
17534 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
17535 ac_cv_prog_external_mp4v2="yes"
17536 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
17537 break 2
17538 fi
17539 done
17540 done
17541 IFS=$as_save_IFS
17542
17543 test -z "$ac_cv_prog_external_mp4v2" && ac_cv_prog_external_mp4v2="no"
17544 fi
17545 fi
17546 external_mp4v2=$ac_cv_prog_external_mp4v2
17547 if test -n "$external_mp4v2"; then
17548 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $external_mp4v2" >&5
17549 $as_echo "$external_mp4v2" >&6; }
17550 else
17551 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
17552 $as_echo "no" >&6; }
17553 fi
17554
17555
17556 if false; then
17557 HAVE_MPEG4IP_PLUG_TRUE=
17558 HAVE_MPEG4IP_PLUG_FALSE='#'
17559 else
17560 HAVE_MPEG4IP_PLUG_TRUE='#'
17561 HAVE_MPEG4IP_PLUG_FALSE=
17562 fi
17563
17564 if test x$WITHMPEG4IP = xyes; then
17565 if test x$external_mp4v2 = xyes; then
17566 if true; then
17567 HAVE_MPEG4IP_PLUG_TRUE=
17568 HAVE_MPEG4IP_PLUG_FALSE='#'
17569 else
17570 HAVE_MPEG4IP_PLUG_TRUE='#'
17571 HAVE_MPEG4IP_PLUG_FALSE=
17572 fi
17573
17574 { $as_echo "$as_me:${as_lineno-$LINENO}: \"Building MPEG4IP plugin\"" >&5
17575 $as_echo "$as_me: \"Building MPEG4IP plugin\"" >&6;}
17576 else
17577 { $as_echo "$as_me:${as_lineno-$LINENO}: \"MPEG4IP libmp4v2 is required for MPEG4IP plugin\"" >&5
17578 $as_echo "$as_me: \"MPEG4IP libmp4v2 is required for MPEG4IP plugin\"" >&6;}
17579 fi
17580 fi
17581
17582 if test x$WITHXMMS = xyes; then
17583 for ac_prog in xmms-config
17584 do
17585 # Extract the first word of "$ac_prog", so it can be a program name with args.
17586 set dummy $ac_prog; ac_word=$2
17587 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
17588 $as_echo_n "checking for $ac_word... " >&6; }
17589 if ${ac_cv_prog_XMMS_CONFIG+:} false; then :
17590 $as_echo_n "(cached) " >&6
17591 else
17592 if test -n "$XMMS_CONFIG"; then
17593 ac_cv_prog_XMMS_CONFIG="$XMMS_CONFIG" # Let the user override the test.
17594 else
17595 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
17596 for as_dir in $PATH
17597 do
17598 IFS=$as_save_IFS
17599 test -z "$as_dir" && as_dir=.
17600 for ac_exec_ext in '' $ac_executable_extensions; do
17601 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
17602 ac_cv_prog_XMMS_CONFIG="$ac_prog"
17603 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
17604 break 2
17605 fi
17606 done
17607 done
17608 IFS=$as_save_IFS
17609
17610 fi
17611 fi
17612 XMMS_CONFIG=$ac_cv_prog_XMMS_CONFIG
17613 if test -n "$XMMS_CONFIG"; then
17614 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $XMMS_CONFIG" >&5
17615 $as_echo "$XMMS_CONFIG" >&6; }
17616 else
17617 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
17618 $as_echo "no" >&6; }
17619 fi
17620
17621
17622 test -n "$XMMS_CONFIG" && break
17623 done
17624 test -n "$XMMS_CONFIG" || XMMS_CONFIG=""not_found""
17625
17626 if test "$XMMS_CONFIG" = "not_found"; then
17627 as_fn_error $? "\"*** xmms-config not found - xmms plugin can't be build\"" "$LINENO" 5
17628 fi
17629 ac_fn_c_check_header_mongrel "$LINENO" "pthread.h" "ac_cv_header_pthread_h" "$ac_includes_default"
17630 if test "x$ac_cv_header_pthread_h" = xyes; then :
17631
17632 else
17633 as_fn_error $? "*** pthread headers support not installed or not found" "$LINENO" 5
17634 fi
17635
17636
17637 ac_fn_c_check_header_mongrel "$LINENO" "id3.h" "ac_cv_header_id3_h" "$ac_includes_default"
17638 if test "x$ac_cv_header_id3_h" = xyes; then :
17639
17640 else
17641 as_fn_error $? "*** id3lib headers support not installed or not found" "$LINENO" 5
17642 fi
17643
17644
17645 for ac_prog in gtk-config
17646 do
17647 # Extract the first word of "$ac_prog", so it can be a program name with args.
17648 set dummy $ac_prog; ac_word=$2
17649 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
17650 $as_echo_n "checking for $ac_word... " >&6; }
17651 if ${ac_cv_prog_GTK_CONFIG+:} false; then :
17652 $as_echo_n "(cached) " >&6
17653 else
17654 if test -n "$GTK_CONFIG"; then
17655 ac_cv_prog_GTK_CONFIG="$GTK_CONFIG" # Let the user override the test.
17656 else
17657 as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
17658 for as_dir in $PATH
17659 do
17660 IFS=$as_save_IFS
17661 test -z "$as_dir" && as_dir=.
17662 for ac_exec_ext in '' $ac_executable_extensions; do
17663 if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
17664 ac_cv_prog_GTK_CONFIG="$ac_prog"
17665 $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
17666 break 2
17667 fi
17668 done
17669 done
17670 IFS=$as_save_IFS
17671
17672 fi
17673 fi
17674 GTK_CONFIG=$ac_cv_prog_GTK_CONFIG
17675 if test -n "$GTK_CONFIG"; then
17676 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GTK_CONFIG" >&5
17677 $as_echo "$GTK_CONFIG" >&6; }
17678 else
17679 { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
17680 $as_echo "no" >&6; }
17681 fi
17682
17683
17684 test -n "$GTK_CONFIG" && break
17685 done
17686 test -n "$GTK_CONFIG" || GTK_CONFIG=""not_found""
17687
17688 if test "$XGTK_CONFIG" = "not_found"; then
17689 as_fn_error $? "\"*** gtk-config not found - xmms plugin can't be build without\"" "$LINENO" 5
17690 fi
17691
17692 if true; then
17693 HAVE_XMMS_TRUE=
17694 HAVE_XMMS_FALSE='#'
17695 else
17696 HAVE_XMMS_TRUE='#'
17697 HAVE_XMMS_FALSE=
17698 fi
17699
17700 else
17701 { $as_echo "$as_me:${as_lineno-$LINENO}: no xmms build configured" >&5
17702 $as_echo "$as_me: no xmms build configured" >&6;}
17703 if false; then
17704 HAVE_XMMS_TRUE=
17705 HAVE_XMMS_FALSE='#'
17706 else
17707 HAVE_XMMS_TRUE='#'
17708 HAVE_XMMS_FALSE=
17709 fi
17710
17711 fi
17712
17713 if test x$WITHDRM = xyes; then
17714
17715 $as_echo "#define DRM 1" >>confdefs.h
17716
17717
17718 $as_echo "#define DRM_PS 1" >>confdefs.h
17719
17720 fi
17721
17722 ac_config_files="$ac_config_files libfaad/Makefile"
17723
17724 ac_config_files="$ac_config_files common/Makefile"
17725
17726 ac_config_files="$ac_config_files common/mp4ff/Makefile"
17727
17728 ac_config_files="$ac_config_files plugins/Makefile"
17729
17730 ac_config_files="$ac_config_files plugins/xmms/Makefile"
17731
17732 ac_config_files="$ac_config_files plugins/xmms/src/Makefile"
17733
17734 ac_config_files="$ac_config_files plugins/mpeg4ip/Makefile"
17735
17736 ac_config_files="$ac_config_files faad2.spec"
17737
17738 ac_config_files="$ac_config_files frontend/Makefile"
17739
17740 ac_config_files="$ac_config_files Makefile"
17741
17742
17743 cat >confcache <<\_ACEOF
17744 # This file is a shell script that caches the results of configure
17745 # tests run on this system so they can be shared between configure
17746 # scripts and configure runs, see configure's option --config-cache.
17747 # It is not useful on other systems. If it contains results you don't
17748 # want to keep, you may remove or edit it.
17749 #
17750 # config.status only pays attention to the cache file if you give it
17751 # the --recheck option to rerun configure.
17752 #
17753 # `ac_cv_env_foo' variables (set or unset) will be overridden when
17754 # loading this file, other *unset* `ac_cv_foo' will be assigned the
17755 # following values.
17756
17757 _ACEOF
17758
17759 # The following way of writing the cache mishandles newlines in values,
17760 # but we know of no workaround that is simple, portable, and efficient.
17761 # So, we kill variables containing newlines.
17762 # Ultrix sh set writes to stderr and can't be redirected directly,
17763 # and sets the high bit in the cache file unless we assign to the vars.
17764 (
17765 for ac_var in `(set) 2>&1 | sed -n 's/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'`; do
17766 eval ac_val=\$$ac_var
17767 case $ac_val in #(
17768 *${as_nl}*)
17769 case $ac_var in #(
17770 *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5
17771 $as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
17772 esac
17773 case $ac_var in #(
17774 _ | IFS | as_nl) ;; #(
17775 BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #(
17776 *) { eval $ac_var=; unset $ac_var;} ;;
17777 esac ;;
17778 esac
17779 done
17780
17781 (set) 2>&1 |
17782 case $as_nl`(ac_space=' '; set) 2>&1` in #(
17783 *${as_nl}ac_space=\ *)
17784 # `set' does not quote correctly, so add quotes: double-quote
17785 # substitution turns \\\\ into \\, and sed turns \\ into \.
17786 sed -n \
17787 "s/'/'\\\\''/g;
17788 s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p"
17789 ;; #(
17790 *)
17791 # `set' quotes correctly as required by POSIX, so do not add quotes.
17792 sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p"
17793 ;;
17794 esac |
17795 sort
17796 ) |
17797 sed '
17798 /^ac_cv_env_/b end
17799 t clear
17800 :clear
17801 s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/
17802 t end
17803 s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/
17804 :end' >>confcache
17805 if diff "$cache_file" confcache >/dev/null 2>&1; then :; else
17806 if test -w "$cache_file"; then
17807 if test "x$cache_file" != "x/dev/null"; then
17808 { $as_echo "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5
17809 $as_echo "$as_me: updating cache $cache_file" >&6;}
17810 if test ! -f "$cache_file" || test -h "$cache_file"; then
17811 cat confcache >"$cache_file"
17812 else
17813 case $cache_file in #(
17814 */* | ?:*)
17815 mv -f confcache "$cache_file"$$ &&
17816 mv -f "$cache_file"$$ "$cache_file" ;; #(
17817 *)
17818 mv -f confcache "$cache_file" ;;
17819 esac
17820 fi
17821 fi
17822 else
17823 { $as_echo "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5
17824 $as_echo "$as_me: not updating unwritable cache $cache_file" >&6;}
17825 fi
17826 fi
17827 rm -f confcache
17828
17829 test "x$prefix" = xNONE && prefix=$ac_default_prefix
17830 # Let make expand exec_prefix.
17831 test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
17832
17833 DEFS=-DHAVE_CONFIG_H
17834
17835 ac_libobjs=
17836 ac_ltlibobjs=
17837 U=
17838 for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue
17839 # 1. Remove the extension, and $U if already installed.
17840 ac_script='s/\$U\././;s/\.o$//;s/\.obj$//'
17841 ac_i=`$as_echo "$ac_i" | sed "$ac_script"`
17842 # 2. Prepend LIBOBJDIR. When used with automake>=1.10 LIBOBJDIR
17843 # will be set to the directory where LIBOBJS objects are built.
17844 as_fn_append ac_libobjs " \${LIBOBJDIR}$ac_i\$U.$ac_objext"
17845 as_fn_append ac_ltlibobjs " \${LIBOBJDIR}$ac_i"'$U.lo'
17846 done
17847 LIBOBJS=$ac_libobjs
17848
17849 LTLIBOBJS=$ac_ltlibobjs
17850
17851
17852 { $as_echo "$as_me:${as_lineno-$LINENO}: checking that generated files are newer than configure" >&5
17853 $as_echo_n "checking that generated files are newer than configure... " >&6; }
17854 if test -n "$am_sleep_pid"; then
17855 # Hide warnings about reused PIDs.
17856 wait $am_sleep_pid 2>/dev/null
17857 fi
17858 { $as_echo "$as_me:${as_lineno-$LINENO}: result: done" >&5
17859 $as_echo "done" >&6; }
17860 if test -n "$EXEEXT"; then
17861 am__EXEEXT_TRUE=
17862 am__EXEEXT_FALSE='#'
17863 else
17864 am__EXEEXT_TRUE='#'
17865 am__EXEEXT_FALSE=
17866 fi
17867
17868 if test -z "${AMDEP_TRUE}" && test -z "${AMDEP_FALSE}"; then
17869 as_fn_error $? "conditional \"AMDEP\" was never defined.
17870 Usually this means the macro was only invoked conditionally." "$LINENO" 5
17871 fi
17872 if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then
17873 as_fn_error $? "conditional \"am__fastdepCC\" 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__fastdepCXX_TRUE}" && test -z "${am__fastdepCXX_FALSE}"; then
17881 as_fn_error $? "conditional \"am__fastdepCXX\" was never defined.
17882 Usually this means the macro was only invoked conditionally." "$LINENO" 5
17883 fi
17884
17885 if test -z "${HAVE_MPEG4IP_PLUG_TRUE}" && test -z "${HAVE_MPEG4IP_PLUG_FALSE}"; then
17886 as_fn_error $? "conditional \"HAVE_MPEG4IP_PLUG\" was never defined.
17887 Usually this means the macro was only invoked conditionally." "$LINENO" 5
17888 fi
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_XMMS_TRUE}" && test -z "${HAVE_XMMS_FALSE}"; then
17894 as_fn_error $? "conditional \"HAVE_XMMS\" 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
17902 : "${CONFIG_STATUS=./config.status}"
17903 ac_write_fail=0
17904 ac_clean_files_save=$ac_clean_files
17905 ac_clean_files="$ac_clean_files $CONFIG_STATUS"
17906 { $as_echo "$as_me:${as_lineno-$LINENO}: creating $CONFIG_STATUS" >&5
17907 $as_echo "$as_me: creating $CONFIG_STATUS" >&6;}
17908 as_write_fail=0
17909 cat >$CONFIG_STATUS <<_ASEOF || as_write_fail=1
17910 #! $SHELL
17911 # Generated by $as_me.
17912 # Run this file to recreate the current configuration.
17913 # Compiler output produced by configure, useful for debugging
17914 # configure, is in config.log if it exists.
17915
17916 debug=false
17917 ac_cs_recheck=false
17918 ac_cs_silent=false
17919
17920 SHELL=\${CONFIG_SHELL-$SHELL}
17921 export SHELL
17922 _ASEOF
17923 cat >>$CONFIG_STATUS <<\_ASEOF || as_write_fail=1
17924 ## -------------------- ##
17925 ## M4sh Initialization. ##
17926 ## -------------------- ##
17927
17928 # Be more Bourne compatible
17929 DUALCASE=1; export DUALCASE # for MKS sh
17930 if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then :
17931 emulate sh
17932 NULLCMD=:
17933 # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
17934 # is contrary to our usage. Disable this feature.
17935 alias -g '${1+"$@"}'='"$@"'
17936 setopt NO_GLOB_SUBST
17937 else
17938 case `(set -o) 2>/dev/null` in #(
17939 *posix*) :
17940 set -o posix ;; #(
17941 *) :
17942 ;;
17943 esac
17944 fi
17945
17946
17947 as_nl='
17948 '
17949 export as_nl
17950 # Printing a long string crashes Solaris 7 /usr/bin/printf.
17951 as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
17952 as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
17953 as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
17954 # Prefer a ksh shell builtin over an external printf program on Solaris,
17955 # but without wasting forks for bash or zsh.
17956 if test -z "$BASH_VERSION$ZSH_VERSION" \
17957 && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then
17958 as_echo='print -r --'
17959 as_echo_n='print -rn --'
17960 elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
17961 as_echo='printf %s\n'
17962 as_echo_n='printf %s'
17963 else
17964 if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then
17965 as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"'
17966 as_echo_n='/usr/ucb/echo -n'
17967 else
17968 as_echo_body='eval expr "X$1" : "X\\(.*\\)"'
17969 as_echo_n_body='eval
17970 arg=$1;
17971 case $arg in #(
17972 *"$as_nl"*)
17973 expr "X$arg" : "X\\(.*\\)$as_nl";
17974 arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
17975 esac;
17976 expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl"
17977 '
17978 export as_echo_n_body
17979 as_echo_n='sh -c $as_echo_n_body as_echo'
17980 fi
17981 export as_echo_body
17982 as_echo='sh -c $as_echo_body as_echo'
17983 fi
17984
17985 # The user is always right.
17986 if test "${PATH_SEPARATOR+set}" != set; then
17987 PATH_SEPARATOR=:
17988 (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && {
17989 (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 ||
17990 PATH_SEPARATOR=';'
17991 }
17992 fi
17993
17994
17995 # IFS
17996 # We need space, tab and new line, in precisely that order. Quoting is
17997 # there to prevent editors from complaining about space-tab.
17998 # (If _AS_PATH_WALK were called with IFS unset, it would disable word
17999 # splitting by setting IFS to empty value.)
18000 IFS=" "" $as_nl"
18001
18002 # Find who we are. Look in the path if we contain no directory separator.
18003 as_myself=
18004 case $0 in #((
18005 *[\\/]* ) as_myself=$0 ;;
18006 *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
18007 for as_dir in $PATH
18008 do
18009 IFS=$as_save_IFS
18010 test -z "$as_dir" && as_dir=.
18011 test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
18012 done
18013 IFS=$as_save_IFS
18014
18015 ;;
18016 esac
18017 # We did not find ourselves, most probably we were run as `sh COMMAND'
18018 # in which case we are not to be found in the path.
18019 if test "x$as_myself" = x; then
18020 as_myself=$0
18021 fi
18022 if test ! -f "$as_myself"; then
18023 $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
18024 exit 1
18025 fi
18026
18027 # Unset variables that we do not need and which cause bugs (e.g. in
18028 # pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1"
18029 # suppresses any "Segmentation fault" message there. '((' could
18030 # trigger a bug in pdksh 5.2.14.
18031 for as_var in BASH_ENV ENV MAIL MAILPATH
18032 do eval test x\${$as_var+set} = xset \
18033 && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
18034 done
18035 PS1='$ '
18036 PS2='> '
18037 PS4='+ '
18038
18039 # NLS nuisances.
18040 LC_ALL=C
18041 export LC_ALL
18042 LANGUAGE=C
18043 export LANGUAGE
18044
18045 # CDPATH.
18046 (unset CDPATH) >/dev/null 2>&1 && unset CDPATH
18047
18048
18049 # as_fn_error STATUS ERROR [LINENO LOG_FD]
18050 # ----------------------------------------
18051 # Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are
18052 # provided, also output the error to LOG_FD, referencing LINENO. Then exit the
18053 # script with STATUS, using 1 if that was 0.
18054 as_fn_error ()
18055 {
18056 as_status=$1; test $as_status -eq 0 && as_status=1
18057 if test "$4"; then
18058 as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
18059 $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4
18060 fi
18061 $as_echo "$as_me: error: $2" >&2
18062 as_fn_exit $as_status
18063 } # as_fn_error
18064
18065
18066 # as_fn_set_status STATUS
18067 # -----------------------
18068 # Set $? to STATUS, without forking.
18069 as_fn_set_status ()
18070 {
18071 return $1
18072 } # as_fn_set_status
18073
18074 # as_fn_exit STATUS
18075 # -----------------
18076 # Exit the shell with STATUS, even in a "trap 0" or "set -e" context.
18077 as_fn_exit ()
18078 {
18079 set +e
18080 as_fn_set_status $1
18081 exit $1
18082 } # as_fn_exit
18083
18084 # as_fn_unset VAR
18085 # ---------------
18086 # Portably unset VAR.
18087 as_fn_unset ()
18088 {
18089 { eval $1=; unset $1;}
18090 }
18091 as_unset=as_fn_unset
18092 # as_fn_append VAR VALUE
18093 # ----------------------
18094 # Append the text in VALUE to the end of the definition contained in VAR. Take
18095 # advantage of any shell optimizations that allow amortized linear growth over
18096 # repeated appends, instead of the typical quadratic growth present in naive
18097 # implementations.
18098 if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then :
18099 eval 'as_fn_append ()
18100 {
18101 eval $1+=\$2
18102 }'
18103 else
18104 as_fn_append ()
18105 {
18106 eval $1=\$$1\$2
18107 }
18108 fi # as_fn_append
18109
18110 # as_fn_arith ARG...
18111 # ------------------
18112 # Perform arithmetic evaluation on the ARGs, and store the result in the
18113 # global $as_val. Take advantage of shells that can avoid forks. The arguments
18114 # must be portable across $(()) and expr.
18115 if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then :
18116 eval 'as_fn_arith ()
18117 {
18118 as_val=$(( $* ))
18119 }'
18120 else
18121 as_fn_arith ()
18122 {
18123 as_val=`expr "$@" || test $? -eq 1`
18124 }
18125 fi # as_fn_arith
18126
18127
18128 if expr a : '\(a\)' >/dev/null 2>&1 &&
18129 test "X`expr 00001 : '.*\(...\)'`" = X001; then
18130 as_expr=expr
18131 else
18132 as_expr=false
18133 fi
18134
18135 if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then
18136 as_basename=basename
18137 else
18138 as_basename=false
18139 fi
18140
18141 if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then
18142 as_dirname=dirname
18143 else
18144 as_dirname=false
18145 fi
18146
18147 as_me=`$as_basename -- "$0" ||
18148 $as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
18149 X"$0" : 'X\(//\)$' \| \
18150 X"$0" : 'X\(/\)' \| . 2>/dev/null ||
18151 $as_echo X/"$0" |
18152 sed '/^.*\/\([^/][^/]*\)\/*$/{
18153 s//\1/
18154 q
18155 }
18156 /^X\/\(\/\/\)$/{
18157 s//\1/
18158 q
18159 }
18160 /^X\/\(\/\).*/{
18161 s//\1/
18162 q
18163 }
18164 s/.*/./; q'`
18165
18166 # Avoid depending upon Character Ranges.
18167 as_cr_letters='abcdefghijklmnopqrstuvwxyz'
18168 as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
18169 as_cr_Letters=$as_cr_letters$as_cr_LETTERS
18170 as_cr_digits='0123456789'
18171 as_cr_alnum=$as_cr_Letters$as_cr_digits
18172
18173 ECHO_C= ECHO_N= ECHO_T=
18174 case `echo -n x` in #(((((
18175 -n*)
18176 case `echo 'xy\c'` in
18177 *c*) ECHO_T=' ';; # ECHO_T is single tab character.
18178 xy) ECHO_C='\c';;
18179 *) echo `echo ksh88 bug on AIX 6.1` > /dev/null
18180 ECHO_T=' ';;
18181 esac;;
18182 *)
18183 ECHO_N='-n';;
18184 esac
18185
18186 rm -f conf$$ conf$$.exe conf$$.file
18187 if test -d conf$$.dir; then
18188 rm -f conf$$.dir/conf$$.file
18189 else
18190 rm -f conf$$.dir
18191 mkdir conf$$.dir 2>/dev/null
18192 fi
18193 if (echo >conf$$.file) 2>/dev/null; then
18194 if ln -s conf$$.file conf$$ 2>/dev/null; then
18195 as_ln_s='ln -s'
18196 # ... but there are two gotchas:
18197 # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail.
18198 # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable.
18199 # In both cases, we have to default to `cp -pR'.
18200 ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe ||
18201 as_ln_s='cp -pR'
18202 elif ln conf$$.file conf$$ 2>/dev/null; then
18203 as_ln_s=ln
18204 else
18205 as_ln_s='cp -pR'
18206 fi
18207 else
18208 as_ln_s='cp -pR'
18209 fi
18210 rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file
18211 rmdir conf$$.dir 2>/dev/null
18212
18213
18214 # as_fn_mkdir_p
18215 # -------------
18216 # Create "$as_dir" as a directory, including parents if necessary.
18217 as_fn_mkdir_p ()
18218 {
18219
18220 case $as_dir in #(
18221 -*) as_dir=./$as_dir;;
18222 esac
18223 test -d "$as_dir" || eval $as_mkdir_p || {
18224 as_dirs=
18225 while :; do
18226 case $as_dir in #(
18227 *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
18228 *) as_qdir=$as_dir;;
18229 esac
18230 as_dirs="'$as_qdir' $as_dirs"
18231 as_dir=`$as_dirname -- "$as_dir" ||
18232 $as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
18233 X"$as_dir" : 'X\(//\)[^/]' \| \
18234 X"$as_dir" : 'X\(//\)$' \| \
18235 X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||
18236 $as_echo X"$as_dir" |
18237 sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
18238 s//\1/
18239 q
18240 }
18241 /^X\(\/\/\)[^/].*/{
18242 s//\1/
18243 q
18244 }
18245 /^X\(\/\/\)$/{
18246 s//\1/
18247 q
18248 }
18249 /^X\(\/\).*/{
18250 s//\1/
18251 q
18252 }
18253 s/.*/./; q'`
18254 test -d "$as_dir" && break
18255 done
18256 test -z "$as_dirs" || eval "mkdir $as_dirs"
18257 } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir"
18258
18259
18260 } # as_fn_mkdir_p
18261 if mkdir -p . 2>/dev/null; then
18262 as_mkdir_p='mkdir -p "$as_dir"'
18263 else
18264 test -d ./-p && rmdir ./-p
18265 as_mkdir_p=false
18266 fi
18267
18268
18269 # as_fn_executable_p FILE
18270 # -----------------------
18271 # Test if FILE is an executable regular file.
18272 as_fn_executable_p ()
18273 {
18274 test -f "$1" && test -x "$1"
18275 } # as_fn_executable_p
18276 as_test_x='test -x'
18277 as_executable_p=as_fn_executable_p
18278
18279 # Sed expression to map a string onto a valid CPP name.
18280 as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
18281
18282 # Sed expression to map a string onto a valid variable name.
18283 as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
18284
18285
18286 exec 6>&1
18287 ## ----------------------------------- ##
18288 ## Main body of $CONFIG_STATUS script. ##
18289 ## ----------------------------------- ##
18290 _ASEOF
18291 test $as_write_fail = 0 && chmod +x $CONFIG_STATUS || ac_write_fail=1
18292
18293 cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
18294 # Save the log message, to keep $0 and so on meaningful, and to
18295 # report actual input values of CONFIG_FILES etc. instead of their
18296 # values after options handling.
18297 ac_log="
18298 This file was extended by faad2 $as_me 2.8.3, which was
18299 generated by GNU Autoconf 2.69. Invocation command line was
18300
18301 CONFIG_FILES = $CONFIG_FILES
18302 CONFIG_HEADERS = $CONFIG_HEADERS
18303 CONFIG_LINKS = $CONFIG_LINKS
18304 CONFIG_COMMANDS = $CONFIG_COMMANDS
18305 $ $0 $@
18306
18307 on `(hostname || uname -n) 2>/dev/null | sed 1q`
18308 "
18309
18310 _ACEOF
18311
18312 case $ac_config_files in *"
18313 "*) set x $ac_config_files; shift; ac_config_files=$*;;
18314 esac
18315
18316 case $ac_config_headers in *"
18317 "*) set x $ac_config_headers; shift; ac_config_headers=$*;;
18318 esac
18319
18320
18321 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
18322 # Files that config.status was made for.
18323 config_files="$ac_config_files"
18324 config_headers="$ac_config_headers"
18325 config_commands="$ac_config_commands"
18326
18327 _ACEOF
18328
18329 cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
18330 ac_cs_usage="\
18331 \`$as_me' instantiates files and other configuration actions
18332 from templates according to the current configuration. Unless the files
18333 and actions are specified as TAGs, all are instantiated by default.
18334
18335 Usage: $0 [OPTION]... [TAG]...
18336
18337 -h, --help print this help, then exit
18338 -V, --version print version number and configuration settings, then exit
18339 --config print configuration, then exit
18340 -q, --quiet, --silent
18341 do not print progress messages
18342 -d, --debug don't remove temporary files
18343 --recheck update $as_me by reconfiguring in the same conditions
18344 --file=FILE[:TEMPLATE]
18345 instantiate the configuration file FILE
18346 --header=FILE[:TEMPLATE]
18347 instantiate the configuration header FILE
18348
18349 Configuration files:
18350 $config_files
18351
18352 Configuration headers:
18353 $config_headers
18354
18355 Configuration commands:
18356 $config_commands
18357
18358 Report bugs to the package provider."
18359
18360 _ACEOF
18361 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
18362 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
18363 ac_cs_version="\\
18364 faad2 config.status 2.8.3
18365 configured by $0, generated by GNU Autoconf 2.69,
18366 with options \\"\$ac_cs_config\\"
18367
18368 Copyright (C) 2012 Free Software Foundation, Inc.
18369 This config.status script is free software; the Free Software Foundation
18370 gives unlimited permission to copy, distribute and modify it."
18371
18372 ac_pwd='$ac_pwd'
18373 srcdir='$srcdir'
18374 INSTALL='$INSTALL'
18375 MKDIR_P='$MKDIR_P'
18376 AWK='$AWK'
18377 test -n "\$AWK" || AWK=awk
18378 _ACEOF
18379
18380 cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
18381 # The default lists apply if the user does not specify any file.
18382 ac_need_defaults=:
18383 while test $# != 0
18384 do
18385 case $1 in
18386 --*=?*)
18387 ac_option=`expr "X$1" : 'X\([^=]*\)='`
18388 ac_optarg=`expr "X$1" : 'X[^=]*=\(.*\)'`
18389 ac_shift=:
18390 ;;
18391 --*=)
18392 ac_option=`expr "X$1" : 'X\([^=]*\)='`
18393 ac_optarg=
18394 ac_shift=:
18395 ;;
18396 *)
18397 ac_option=$1
18398 ac_optarg=$2
18399 ac_shift=shift
18400 ;;
18401 esac
18402
18403 case $ac_option in
18404 # Handling of the options.
18405 -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
18406 ac_cs_recheck=: ;;
18407 --version | --versio | --versi | --vers | --ver | --ve | --v | -V )
18408 $as_echo "$ac_cs_version"; exit ;;
18409 --config | --confi | --conf | --con | --co | --c )
18410 $as_echo "$ac_cs_config"; exit ;;
18411 --debug | --debu | --deb | --de | --d | -d )
18412 debug=: ;;
18413 --file | --fil | --fi | --f )
18414 $ac_shift
18415 case $ac_optarg in
18416 *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;
18417 '') as_fn_error $? "missing file argument" ;;
18418 esac
18419 as_fn_append CONFIG_FILES " '$ac_optarg'"
18420 ac_need_defaults=false;;
18421 --header | --heade | --head | --hea )
18422 $ac_shift
18423 case $ac_optarg in
18424 *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;
18425 esac
18426 as_fn_append CONFIG_HEADERS " '$ac_optarg'"
18427 ac_need_defaults=false;;
18428 --he | --h)
18429 # Conflict between --help and --header
18430 as_fn_error $? "ambiguous option: \`$1'
18431 Try \`$0 --help' for more information.";;
18432 --help | --hel | -h )
18433 $as_echo "$ac_cs_usage"; exit ;;
18434 -q | -quiet | --quiet | --quie | --qui | --qu | --q \
18435 | -silent | --silent | --silen | --sile | --sil | --si | --s)
18436 ac_cs_silent=: ;;
18437
18438 # This is an error.
18439 -*) as_fn_error $? "unrecognized option: \`$1'
18440 Try \`$0 --help' for more information." ;;
18441
18442 *) as_fn_append ac_config_targets " $1"
18443 ac_need_defaults=false ;;
18444
18445 esac
18446 shift
18447 done
18448
18449 ac_configure_extra_args=
18450
18451 if $ac_cs_silent; then
18452 exec 6>/dev/null
18453 ac_configure_extra_args="$ac_configure_extra_args --silent"
18454 fi
18455
18456 _ACEOF
18457 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
18458 if \$ac_cs_recheck; then
18459 set X $SHELL '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion
18460 shift
18461 \$as_echo "running CONFIG_SHELL=$SHELL \$*" >&6
18462 CONFIG_SHELL='$SHELL'
18463 export CONFIG_SHELL
18464 exec "\$@"
18465 fi
18466
18467 _ACEOF
18468 cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
18469 exec 5>>config.log
18470 {
18471 echo
18472 sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX
18473 ## Running $as_me. ##
18474 _ASBOX
18475 $as_echo "$ac_log"
18476 } >&5
18477
18478 _ACEOF
18479 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
18480 #
18481 # INIT-COMMANDS
18482 #
18483 AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"
18484
18485
18486 # The HP-UX ksh and POSIX shell print the target directory to stdout
18487 # if CDPATH is set.
18488 (unset CDPATH) >/dev/null 2>&1 && unset CDPATH
18489
18490 sed_quote_subst='$sed_quote_subst'
18491 double_quote_subst='$double_quote_subst'
18492 delay_variable_subst='$delay_variable_subst'
18493 macro_version='`$ECHO "$macro_version" | $SED "$delay_single_quote_subst"`'
18494 macro_revision='`$ECHO "$macro_revision" | $SED "$delay_single_quote_subst"`'
18495 enable_shared='`$ECHO "$enable_shared" | $SED "$delay_single_quote_subst"`'
18496 enable_static='`$ECHO "$enable_static" | $SED "$delay_single_quote_subst"`'
18497 pic_mode='`$ECHO "$pic_mode" | $SED "$delay_single_quote_subst"`'
18498 enable_fast_install='`$ECHO "$enable_fast_install" | $SED "$delay_single_quote_subst"`'
18499 shared_archive_member_spec='`$ECHO "$shared_archive_member_spec" | $SED "$delay_single_quote_subst"`'
18500 SHELL='`$ECHO "$SHELL" | $SED "$delay_single_quote_subst"`'
18501 ECHO='`$ECHO "$ECHO" | $SED "$delay_single_quote_subst"`'
18502 PATH_SEPARATOR='`$ECHO "$PATH_SEPARATOR" | $SED "$delay_single_quote_subst"`'
18503 host_alias='`$ECHO "$host_alias" | $SED "$delay_single_quote_subst"`'
18504 host='`$ECHO "$host" | $SED "$delay_single_quote_subst"`'
18505 host_os='`$ECHO "$host_os" | $SED "$delay_single_quote_subst"`'
18506 build_alias='`$ECHO "$build_alias" | $SED "$delay_single_quote_subst"`'
18507 build='`$ECHO "$build" | $SED "$delay_single_quote_subst"`'
18508 build_os='`$ECHO "$build_os" | $SED "$delay_single_quote_subst"`'
18509 SED='`$ECHO "$SED" | $SED "$delay_single_quote_subst"`'
18510 Xsed='`$ECHO "$Xsed" | $SED "$delay_single_quote_subst"`'
18511 GREP='`$ECHO "$GREP" | $SED "$delay_single_quote_subst"`'
18512 EGREP='`$ECHO "$EGREP" | $SED "$delay_single_quote_subst"`'
18513 FGREP='`$ECHO "$FGREP" | $SED "$delay_single_quote_subst"`'
18514 LD='`$ECHO "$LD" | $SED "$delay_single_quote_subst"`'
18515 NM='`$ECHO "$NM" | $SED "$delay_single_quote_subst"`'
18516 LN_S='`$ECHO "$LN_S" | $SED "$delay_single_quote_subst"`'
18517 max_cmd_len='`$ECHO "$max_cmd_len" | $SED "$delay_single_quote_subst"`'
18518 ac_objext='`$ECHO "$ac_objext" | $SED "$delay_single_quote_subst"`'
18519 exeext='`$ECHO "$exeext" | $SED "$delay_single_quote_subst"`'
18520 lt_unset='`$ECHO "$lt_unset" | $SED "$delay_single_quote_subst"`'
18521 lt_SP2NL='`$ECHO "$lt_SP2NL" | $SED "$delay_single_quote_subst"`'
18522 lt_NL2SP='`$ECHO "$lt_NL2SP" | $SED "$delay_single_quote_subst"`'
18523 lt_cv_to_host_file_cmd='`$ECHO "$lt_cv_to_host_file_cmd" | $SED "$delay_single_quote_subst"`'
18524 lt_cv_to_tool_file_cmd='`$ECHO "$lt_cv_to_tool_file_cmd" | $SED "$delay_single_quote_subst"`'
18525 reload_flag='`$ECHO "$reload_flag" | $SED "$delay_single_quote_subst"`'
18526 reload_cmds='`$ECHO "$reload_cmds" | $SED "$delay_single_quote_subst"`'
18527 OBJDUMP='`$ECHO "$OBJDUMP" | $SED "$delay_single_quote_subst"`'
18528 deplibs_check_method='`$ECHO "$deplibs_check_method" | $SED "$delay_single_quote_subst"`'
18529 file_magic_cmd='`$ECHO "$file_magic_cmd" | $SED "$delay_single_quote_subst"`'
18530 file_magic_glob='`$ECHO "$file_magic_glob" | $SED "$delay_single_quote_subst"`'
18531 want_nocaseglob='`$ECHO "$want_nocaseglob" | $SED "$delay_single_quote_subst"`'
18532 DLLTOOL='`$ECHO "$DLLTOOL" | $SED "$delay_single_quote_subst"`'
18533 sharedlib_from_linklib_cmd='`$ECHO "$sharedlib_from_linklib_cmd" | $SED "$delay_single_quote_subst"`'
18534 AR='`$ECHO "$AR" | $SED "$delay_single_quote_subst"`'
18535 AR_FLAGS='`$ECHO "$AR_FLAGS" | $SED "$delay_single_quote_subst"`'
18536 archiver_list_spec='`$ECHO "$archiver_list_spec" | $SED "$delay_single_quote_subst"`'
18537 STRIP='`$ECHO "$STRIP" | $SED "$delay_single_quote_subst"`'
18538 RANLIB='`$ECHO "$RANLIB" | $SED "$delay_single_quote_subst"`'
18539 old_postinstall_cmds='`$ECHO "$old_postinstall_cmds" | $SED "$delay_single_quote_subst"`'
18540 old_postuninstall_cmds='`$ECHO "$old_postuninstall_cmds" | $SED "$delay_single_quote_subst"`'
18541 old_archive_cmds='`$ECHO "$old_archive_cmds" | $SED "$delay_single_quote_subst"`'
18542 lock_old_archive_extraction='`$ECHO "$lock_old_archive_extraction" | $SED "$delay_single_quote_subst"`'
18543 CC='`$ECHO "$CC" | $SED "$delay_single_quote_subst"`'
18544 CFLAGS='`$ECHO "$CFLAGS" | $SED "$delay_single_quote_subst"`'
18545 compiler='`$ECHO "$compiler" | $SED "$delay_single_quote_subst"`'
18546 GCC='`$ECHO "$GCC" | $SED "$delay_single_quote_subst"`'
18547 lt_cv_sys_global_symbol_pipe='`$ECHO "$lt_cv_sys_global_symbol_pipe" | $SED "$delay_single_quote_subst"`'
18548 lt_cv_sys_global_symbol_to_cdecl='`$ECHO "$lt_cv_sys_global_symbol_to_cdecl" | $SED "$delay_single_quote_subst"`'
18549 lt_cv_sys_global_symbol_to_import='`$ECHO "$lt_cv_sys_global_symbol_to_import" | $SED "$delay_single_quote_subst"`'
18550 lt_cv_sys_global_symbol_to_c_name_address='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address" | $SED "$delay_single_quote_subst"`'
18551 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"`'
18552 lt_cv_nm_interface='`$ECHO "$lt_cv_nm_interface" | $SED "$delay_single_quote_subst"`'
18553 nm_file_list_spec='`$ECHO "$nm_file_list_spec" | $SED "$delay_single_quote_subst"`'
18554 lt_sysroot='`$ECHO "$lt_sysroot" | $SED "$delay_single_quote_subst"`'
18555 lt_cv_truncate_bin='`$ECHO "$lt_cv_truncate_bin" | $SED "$delay_single_quote_subst"`'
18556 objdir='`$ECHO "$objdir" | $SED "$delay_single_quote_subst"`'
18557 MAGIC_CMD='`$ECHO "$MAGIC_CMD" | $SED "$delay_single_quote_subst"`'
18558 lt_prog_compiler_no_builtin_flag='`$ECHO "$lt_prog_compiler_no_builtin_flag" | $SED "$delay_single_quote_subst"`'
18559 lt_prog_compiler_pic='`$ECHO "$lt_prog_compiler_pic" | $SED "$delay_single_quote_subst"`'
18560 lt_prog_compiler_wl='`$ECHO "$lt_prog_compiler_wl" | $SED "$delay_single_quote_subst"`'
18561 lt_prog_compiler_static='`$ECHO "$lt_prog_compiler_static" | $SED "$delay_single_quote_subst"`'
18562 lt_cv_prog_compiler_c_o='`$ECHO "$lt_cv_prog_compiler_c_o" | $SED "$delay_single_quote_subst"`'
18563 need_locks='`$ECHO "$need_locks" | $SED "$delay_single_quote_subst"`'
18564 MANIFEST_TOOL='`$ECHO "$MANIFEST_TOOL" | $SED "$delay_single_quote_subst"`'
18565 DSYMUTIL='`$ECHO "$DSYMUTIL" | $SED "$delay_single_quote_subst"`'
18566 NMEDIT='`$ECHO "$NMEDIT" | $SED "$delay_single_quote_subst"`'
18567 LIPO='`$ECHO "$LIPO" | $SED "$delay_single_quote_subst"`'
18568 OTOOL='`$ECHO "$OTOOL" | $SED "$delay_single_quote_subst"`'
18569 OTOOL64='`$ECHO "$OTOOL64" | $SED "$delay_single_quote_subst"`'
18570 libext='`$ECHO "$libext" | $SED "$delay_single_quote_subst"`'
18571 shrext_cmds='`$ECHO "$shrext_cmds" | $SED "$delay_single_quote_subst"`'
18572 extract_expsyms_cmds='`$ECHO "$extract_expsyms_cmds" | $SED "$delay_single_quote_subst"`'
18573 archive_cmds_need_lc='`$ECHO "$archive_cmds_need_lc" | $SED "$delay_single_quote_subst"`'
18574 enable_shared_with_static_runtimes='`$ECHO "$enable_shared_with_static_runtimes" | $SED "$delay_single_quote_subst"`'
18575 export_dynamic_flag_spec='`$ECHO "$export_dynamic_flag_spec" | $SED "$delay_single_quote_subst"`'
18576 whole_archive_flag_spec='`$ECHO "$whole_archive_flag_spec" | $SED "$delay_single_quote_subst"`'
18577 compiler_needs_object='`$ECHO "$compiler_needs_object" | $SED "$delay_single_quote_subst"`'
18578 old_archive_from_new_cmds='`$ECHO "$old_archive_from_new_cmds" | $SED "$delay_single_quote_subst"`'
18579 old_archive_from_expsyms_cmds='`$ECHO "$old_archive_from_expsyms_cmds" | $SED "$delay_single_quote_subst"`'
18580 archive_cmds='`$ECHO "$archive_cmds" | $SED "$delay_single_quote_subst"`'
18581 archive_expsym_cmds='`$ECHO "$archive_expsym_cmds" | $SED "$delay_single_quote_subst"`'
18582 module_cmds='`$ECHO "$module_cmds" | $SED "$delay_single_quote_subst"`'
18583 module_expsym_cmds='`$ECHO "$module_expsym_cmds" | $SED "$delay_single_quote_subst"`'
18584 with_gnu_ld='`$ECHO "$with_gnu_ld" | $SED "$delay_single_quote_subst"`'
18585 allow_undefined_flag='`$ECHO "$allow_undefined_flag" | $SED "$delay_single_quote_subst"`'
18586 no_undefined_flag='`$ECHO "$no_undefined_flag" | $SED "$delay_single_quote_subst"`'
18587 hardcode_libdir_flag_spec='`$ECHO "$hardcode_libdir_flag_spec" | $SED "$delay_single_quote_subst"`'
18588 hardcode_libdir_separator='`$ECHO "$hardcode_libdir_separator" | $SED "$delay_single_quote_subst"`'
18589 hardcode_direct='`$ECHO "$hardcode_direct" | $SED "$delay_single_quote_subst"`'
18590 hardcode_direct_absolute='`$ECHO "$hardcode_direct_absolute" | $SED "$delay_single_quote_subst"`'
18591 hardcode_minus_L='`$ECHO "$hardcode_minus_L" | $SED "$delay_single_quote_subst"`'
18592 hardcode_shlibpath_var='`$ECHO "$hardcode_shlibpath_var" | $SED "$delay_single_quote_subst"`'
18593 hardcode_automatic='`$ECHO "$hardcode_automatic" | $SED "$delay_single_quote_subst"`'
18594 inherit_rpath='`$ECHO "$inherit_rpath" | $SED "$delay_single_quote_subst"`'
18595 link_all_deplibs='`$ECHO "$link_all_deplibs" | $SED "$delay_single_quote_subst"`'
18596 always_export_symbols='`$ECHO "$always_export_symbols" | $SED "$delay_single_quote_subst"`'
18597 export_symbols_cmds='`$ECHO "$export_symbols_cmds" | $SED "$delay_single_quote_subst"`'
18598 exclude_expsyms='`$ECHO "$exclude_expsyms" | $SED "$delay_single_quote_subst"`'
18599 include_expsyms='`$ECHO "$include_expsyms" | $SED "$delay_single_quote_subst"`'
18600 prelink_cmds='`$ECHO "$prelink_cmds" | $SED "$delay_single_quote_subst"`'
18601 postlink_cmds='`$ECHO "$postlink_cmds" | $SED "$delay_single_quote_subst"`'
18602 file_list_spec='`$ECHO "$file_list_spec" | $SED "$delay_single_quote_subst"`'
18603 variables_saved_for_relink='`$ECHO "$variables_saved_for_relink" | $SED "$delay_single_quote_subst"`'
18604 need_lib_prefix='`$ECHO "$need_lib_prefix" | $SED "$delay_single_quote_subst"`'
18605 need_version='`$ECHO "$need_version" | $SED "$delay_single_quote_subst"`'
18606 version_type='`$ECHO "$version_type" | $SED "$delay_single_quote_subst"`'
18607 runpath_var='`$ECHO "$runpath_var" | $SED "$delay_single_quote_subst"`'
18608 shlibpath_var='`$ECHO "$shlibpath_var" | $SED "$delay_single_quote_subst"`'
18609 shlibpath_overrides_runpath='`$ECHO "$shlibpath_overrides_runpath" | $SED "$delay_single_quote_subst"`'
18610 libname_spec='`$ECHO "$libname_spec" | $SED "$delay_single_quote_subst"`'
18611 library_names_spec='`$ECHO "$library_names_spec" | $SED "$delay_single_quote_subst"`'
18612 soname_spec='`$ECHO "$soname_spec" | $SED "$delay_single_quote_subst"`'
18613 install_override_mode='`$ECHO "$install_override_mode" | $SED "$delay_single_quote_subst"`'
18614 postinstall_cmds='`$ECHO "$postinstall_cmds" | $SED "$delay_single_quote_subst"`'
18615 postuninstall_cmds='`$ECHO "$postuninstall_cmds" | $SED "$delay_single_quote_subst"`'
18616 finish_cmds='`$ECHO "$finish_cmds" | $SED "$delay_single_quote_subst"`'
18617 finish_eval='`$ECHO "$finish_eval" | $SED "$delay_single_quote_subst"`'
18618 hardcode_into_libs='`$ECHO "$hardcode_into_libs" | $SED "$delay_single_quote_subst"`'
18619 sys_lib_search_path_spec='`$ECHO "$sys_lib_search_path_spec" | $SED "$delay_single_quote_subst"`'
18620 configure_time_dlsearch_path='`$ECHO "$configure_time_dlsearch_path" | $SED "$delay_single_quote_subst"`'
18621 configure_time_lt_sys_library_path='`$ECHO "$configure_time_lt_sys_library_path" | $SED "$delay_single_quote_subst"`'
18622 hardcode_action='`$ECHO "$hardcode_action" | $SED "$delay_single_quote_subst"`'
18623 enable_dlopen='`$ECHO "$enable_dlopen" | $SED "$delay_single_quote_subst"`'
18624 enable_dlopen_self='`$ECHO "$enable_dlopen_self" | $SED "$delay_single_quote_subst"`'
18625 enable_dlopen_self_static='`$ECHO "$enable_dlopen_self_static" | $SED "$delay_single_quote_subst"`'
18626 old_striplib='`$ECHO "$old_striplib" | $SED "$delay_single_quote_subst"`'
18627 striplib='`$ECHO "$striplib" | $SED "$delay_single_quote_subst"`'
18628 compiler_lib_search_dirs='`$ECHO "$compiler_lib_search_dirs" | $SED "$delay_single_quote_subst"`'
18629 predep_objects='`$ECHO "$predep_objects" | $SED "$delay_single_quote_subst"`'
18630 postdep_objects='`$ECHO "$postdep_objects" | $SED "$delay_single_quote_subst"`'
18631 predeps='`$ECHO "$predeps" | $SED "$delay_single_quote_subst"`'
18632 postdeps='`$ECHO "$postdeps" | $SED "$delay_single_quote_subst"`'
18633 compiler_lib_search_path='`$ECHO "$compiler_lib_search_path" | $SED "$delay_single_quote_subst"`'
18634 LD_CXX='`$ECHO "$LD_CXX" | $SED "$delay_single_quote_subst"`'
18635 reload_flag_CXX='`$ECHO "$reload_flag_CXX" | $SED "$delay_single_quote_subst"`'
18636 reload_cmds_CXX='`$ECHO "$reload_cmds_CXX" | $SED "$delay_single_quote_subst"`'
18637 old_archive_cmds_CXX='`$ECHO "$old_archive_cmds_CXX" | $SED "$delay_single_quote_subst"`'
18638 compiler_CXX='`$ECHO "$compiler_CXX" | $SED "$delay_single_quote_subst"`'
18639 GCC_CXX='`$ECHO "$GCC_CXX" | $SED "$delay_single_quote_subst"`'
18640 lt_prog_compiler_no_builtin_flag_CXX='`$ECHO "$lt_prog_compiler_no_builtin_flag_CXX" | $SED "$delay_single_quote_subst"`'
18641 lt_prog_compiler_pic_CXX='`$ECHO "$lt_prog_compiler_pic_CXX" | $SED "$delay_single_quote_subst"`'
18642 lt_prog_compiler_wl_CXX='`$ECHO "$lt_prog_compiler_wl_CXX" | $SED "$delay_single_quote_subst"`'
18643 lt_prog_compiler_static_CXX='`$ECHO "$lt_prog_compiler_static_CXX" | $SED "$delay_single_quote_subst"`'
18644 lt_cv_prog_compiler_c_o_CXX='`$ECHO "$lt_cv_prog_compiler_c_o_CXX" | $SED "$delay_single_quote_subst"`'
18645 archive_cmds_need_lc_CXX='`$ECHO "$archive_cmds_need_lc_CXX" | $SED "$delay_single_quote_subst"`'
18646 enable_shared_with_static_runtimes_CXX='`$ECHO "$enable_shared_with_static_runtimes_CXX" | $SED "$delay_single_quote_subst"`'
18647 export_dynamic_flag_spec_CXX='`$ECHO "$export_dynamic_flag_spec_CXX" | $SED "$delay_single_quote_subst"`'
18648 whole_archive_flag_spec_CXX='`$ECHO "$whole_archive_flag_spec_CXX" | $SED "$delay_single_quote_subst"`'
18649 compiler_needs_object_CXX='`$ECHO "$compiler_needs_object_CXX" | $SED "$delay_single_quote_subst"`'
18650 old_archive_from_new_cmds_CXX='`$ECHO "$old_archive_from_new_cmds_CXX" | $SED "$delay_single_quote_subst"`'
18651 old_archive_from_expsyms_cmds_CXX='`$ECHO "$old_archive_from_expsyms_cmds_CXX" | $SED "$delay_single_quote_subst"`'
18652 archive_cmds_CXX='`$ECHO "$archive_cmds_CXX" | $SED "$delay_single_quote_subst"`'
18653 archive_expsym_cmds_CXX='`$ECHO "$archive_expsym_cmds_CXX" | $SED "$delay_single_quote_subst"`'
18654 module_cmds_CXX='`$ECHO "$module_cmds_CXX" | $SED "$delay_single_quote_subst"`'
18655 module_expsym_cmds_CXX='`$ECHO "$module_expsym_cmds_CXX" | $SED "$delay_single_quote_subst"`'
18656 with_gnu_ld_CXX='`$ECHO "$with_gnu_ld_CXX" | $SED "$delay_single_quote_subst"`'
18657 allow_undefined_flag_CXX='`$ECHO "$allow_undefined_flag_CXX" | $SED "$delay_single_quote_subst"`'
18658 no_undefined_flag_CXX='`$ECHO "$no_undefined_flag_CXX" | $SED "$delay_single_quote_subst"`'
18659 hardcode_libdir_flag_spec_CXX='`$ECHO "$hardcode_libdir_flag_spec_CXX" | $SED "$delay_single_quote_subst"`'
18660 hardcode_libdir_separator_CXX='`$ECHO "$hardcode_libdir_separator_CXX" | $SED "$delay_single_quote_subst"`'
18661 hardcode_direct_CXX='`$ECHO "$hardcode_direct_CXX" | $SED "$delay_single_quote_subst"`'
18662 hardcode_direct_absolute_CXX='`$ECHO "$hardcode_direct_absolute_CXX" | $SED "$delay_single_quote_subst"`'
18663 hardcode_minus_L_CXX='`$ECHO "$hardcode_minus_L_CXX" | $SED "$delay_single_quote_subst"`'
18664 hardcode_shlibpath_var_CXX='`$ECHO "$hardcode_shlibpath_var_CXX" | $SED "$delay_single_quote_subst"`'
18665 hardcode_automatic_CXX='`$ECHO "$hardcode_automatic_CXX" | $SED "$delay_single_quote_subst"`'
18666 inherit_rpath_CXX='`$ECHO "$inherit_rpath_CXX" | $SED "$delay_single_quote_subst"`'
18667 link_all_deplibs_CXX='`$ECHO "$link_all_deplibs_CXX" | $SED "$delay_single_quote_subst"`'
18668 always_export_symbols_CXX='`$ECHO "$always_export_symbols_CXX" | $SED "$delay_single_quote_subst"`'
18669 export_symbols_cmds_CXX='`$ECHO "$export_symbols_cmds_CXX" | $SED "$delay_single_quote_subst"`'
18670 exclude_expsyms_CXX='`$ECHO "$exclude_expsyms_CXX" | $SED "$delay_single_quote_subst"`'
18671 include_expsyms_CXX='`$ECHO "$include_expsyms_CXX" | $SED "$delay_single_quote_subst"`'
18672 prelink_cmds_CXX='`$ECHO "$prelink_cmds_CXX" | $SED "$delay_single_quote_subst"`'
18673 postlink_cmds_CXX='`$ECHO "$postlink_cmds_CXX" | $SED "$delay_single_quote_subst"`'
18674 file_list_spec_CXX='`$ECHO "$file_list_spec_CXX" | $SED "$delay_single_quote_subst"`'
18675 hardcode_action_CXX='`$ECHO "$hardcode_action_CXX" | $SED "$delay_single_quote_subst"`'
18676 compiler_lib_search_dirs_CXX='`$ECHO "$compiler_lib_search_dirs_CXX" | $SED "$delay_single_quote_subst"`'
18677 predep_objects_CXX='`$ECHO "$predep_objects_CXX" | $SED "$delay_single_quote_subst"`'
18678 postdep_objects_CXX='`$ECHO "$postdep_objects_CXX" | $SED "$delay_single_quote_subst"`'
18679 predeps_CXX='`$ECHO "$predeps_CXX" | $SED "$delay_single_quote_subst"`'
18680 postdeps_CXX='`$ECHO "$postdeps_CXX" | $SED "$delay_single_quote_subst"`'
18681 compiler_lib_search_path_CXX='`$ECHO "$compiler_lib_search_path_CXX" | $SED "$delay_single_quote_subst"`'
18682
18683 LTCC='$LTCC'
18684 LTCFLAGS='$LTCFLAGS'
18685 compiler='$compiler_DEFAULT'
18686
18687 # A function that is used when there is no print builtin or printf.
18688 func_fallback_echo ()
18689 {
18690 eval 'cat <<_LTECHO_EOF
18691 \$1
18692 _LTECHO_EOF'
18693 }
18694
18695 # Quote evaled strings.
18696 for var in SHELL \
18697 ECHO \
18698 PATH_SEPARATOR \
18699 SED \
18700 GREP \
18701 EGREP \
18702 FGREP \
18703 LD \
18704 NM \
18705 LN_S \
18706 lt_SP2NL \
18707 lt_NL2SP \
18708 reload_flag \
18709 OBJDUMP \
18710 deplibs_check_method \
18711 file_magic_cmd \
18712 file_magic_glob \
18713 want_nocaseglob \
18714 DLLTOOL \
18715 sharedlib_from_linklib_cmd \
18716 AR \
18717 AR_FLAGS \
18718 archiver_list_spec \
18719 STRIP \
18720 RANLIB \
18721 CC \
18722 CFLAGS \
18723 compiler \
18724 lt_cv_sys_global_symbol_pipe \
18725 lt_cv_sys_global_symbol_to_cdecl \
18726 lt_cv_sys_global_symbol_to_import \
18727 lt_cv_sys_global_symbol_to_c_name_address \
18728 lt_cv_sys_global_symbol_to_c_name_address_lib_prefix \
18729 lt_cv_nm_interface \
18730 nm_file_list_spec \
18731 lt_cv_truncate_bin \
18732 lt_prog_compiler_no_builtin_flag \
18733 lt_prog_compiler_pic \
18734 lt_prog_compiler_wl \
18735 lt_prog_compiler_static \
18736 lt_cv_prog_compiler_c_o \
18737 need_locks \
18738 MANIFEST_TOOL \
18739 DSYMUTIL \
18740 NMEDIT \
18741 LIPO \
18742 OTOOL \
18743 OTOOL64 \
18744 shrext_cmds \
18745 export_dynamic_flag_spec \
18746 whole_archive_flag_spec \
18747 compiler_needs_object \
18748 with_gnu_ld \
18749 allow_undefined_flag \
18750 no_undefined_flag \
18751 hardcode_libdir_flag_spec \
18752 hardcode_libdir_separator \
18753 exclude_expsyms \
18754 include_expsyms \
18755 file_list_spec \
18756 variables_saved_for_relink \
18757 libname_spec \
18758 library_names_spec \
18759 soname_spec \
18760 install_override_mode \
18761 finish_eval \
18762 old_striplib \
18763 striplib \
18764 compiler_lib_search_dirs \
18765 predep_objects \
18766 postdep_objects \
18767 predeps \
18768 postdeps \
18769 compiler_lib_search_path \
18770 LD_CXX \
18771 reload_flag_CXX \
18772 compiler_CXX \
18773 lt_prog_compiler_no_builtin_flag_CXX \
18774 lt_prog_compiler_pic_CXX \
18775 lt_prog_compiler_wl_CXX \
18776 lt_prog_compiler_static_CXX \
18777 lt_cv_prog_compiler_c_o_CXX \
18778 export_dynamic_flag_spec_CXX \
18779 whole_archive_flag_spec_CXX \
18780 compiler_needs_object_CXX \
18781 with_gnu_ld_CXX \
18782 allow_undefined_flag_CXX \
18783 no_undefined_flag_CXX \
18784 hardcode_libdir_flag_spec_CXX \
18785 hardcode_libdir_separator_CXX \
18786 exclude_expsyms_CXX \
18787 include_expsyms_CXX \
18788 file_list_spec_CXX \
18789 compiler_lib_search_dirs_CXX \
18790 predep_objects_CXX \
18791 postdep_objects_CXX \
18792 predeps_CXX \
18793 postdeps_CXX \
18794 compiler_lib_search_path_CXX; do
18795 case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in
18796 *[\\\\\\\`\\"\\\$]*)
18797 eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED \\"\\\$sed_quote_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes
18798 ;;
18799 *)
18800 eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
18801 ;;
18802 esac
18803 done
18804
18805 # Double-quote double-evaled strings.
18806 for var in reload_cmds \
18807 old_postinstall_cmds \
18808 old_postuninstall_cmds \
18809 old_archive_cmds \
18810 extract_expsyms_cmds \
18811 old_archive_from_new_cmds \
18812 old_archive_from_expsyms_cmds \
18813 archive_cmds \
18814 archive_expsym_cmds \
18815 module_cmds \
18816 module_expsym_cmds \
18817 export_symbols_cmds \
18818 prelink_cmds \
18819 postlink_cmds \
18820 postinstall_cmds \
18821 postuninstall_cmds \
18822 finish_cmds \
18823 sys_lib_search_path_spec \
18824 configure_time_dlsearch_path \
18825 configure_time_lt_sys_library_path \
18826 reload_cmds_CXX \
18827 old_archive_cmds_CXX \
18828 old_archive_from_new_cmds_CXX \
18829 old_archive_from_expsyms_cmds_CXX \
18830 archive_cmds_CXX \
18831 archive_expsym_cmds_CXX \
18832 module_cmds_CXX \
18833 module_expsym_cmds_CXX \
18834 export_symbols_cmds_CXX \
18835 prelink_cmds_CXX \
18836 postlink_cmds_CXX; do
18837 case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in
18838 *[\\\\\\\`\\"\\\$]*)
18839 eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes
18840 ;;
18841 *)
18842 eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\""
18843 ;;
18844 esac
18845 done
18846
18847 ac_aux_dir='$ac_aux_dir'
18848
18849 # See if we are running on zsh, and set the options that allow our
18850 # commands through without removal of \ escapes INIT.
18851 if test -n "\${ZSH_VERSION+set}"; then
18852 setopt NO_GLOB_SUBST
18853 fi
18854
18855
18856 PACKAGE='$PACKAGE'
18857 VERSION='$VERSION'
18858 RM='$RM'
18859 ofile='$ofile'
18860
18861
18862
18863
18864
18865
18866 _ACEOF
18867
18868 cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
18869
18870 # Handling of arguments.
18871 for ac_config_target in $ac_config_targets
18872 do
18873 case $ac_config_target in
18874 "depfiles") CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;;
18875 "libtool") CONFIG_COMMANDS="$CONFIG_COMMANDS libtool" ;;
18876 "config.h") CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;;
18877 "libfaad/Makefile") CONFIG_FILES="$CONFIG_FILES libfaad/Makefile" ;;
18878 "common/Makefile") CONFIG_FILES="$CONFIG_FILES common/Makefile" ;;
18879 "common/mp4ff/Makefile") CONFIG_FILES="$CONFIG_FILES common/mp4ff/Makefile" ;;
18880 "plugins/Makefile") CONFIG_FILES="$CONFIG_FILES plugins/Makefile" ;;
18881 "plugins/xmms/Makefile") CONFIG_FILES="$CONFIG_FILES plugins/xmms/Makefile" ;;
18882 "plugins/xmms/src/Makefile") CONFIG_FILES="$CONFIG_FILES plugins/xmms/src/Makefile" ;;
18883 "plugins/mpeg4ip/Makefile") CONFIG_FILES="$CONFIG_FILES plugins/mpeg4ip/Makefile" ;;
18884 "faad2.spec") CONFIG_FILES="$CONFIG_FILES faad2.spec" ;;
18885 "frontend/Makefile") CONFIG_FILES="$CONFIG_FILES frontend/Makefile" ;;
18886 "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;;
18887
18888 *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;;
18889 esac
18890 done
18891
18892
18893 # If the user did not use the arguments to specify the items to instantiate,
18894 # then the envvar interface is used. Set only those that are not.
18895 # We use the long form for the default assignment because of an extremely
18896 # bizarre bug on SunOS 4.1.3.
18897 if $ac_need_defaults; then
18898 test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files
18899 test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers
18900 test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands
18901 fi
18902
18903 # Have a temporary directory for convenience. Make it in the build tree
18904 # simply because there is no reason against having it here, and in addition,
18905 # creating and moving files from /tmp can sometimes cause problems.
18906 # Hook for its removal unless debugging.
18907 # Note that there is a small window in which the directory will not be cleaned:
18908 # after its creation but before its name has been assigned to `$tmp'.
18909 $debug ||
18910 {
18911 tmp= ac_tmp=
18912 trap 'exit_status=$?
18913 : "${ac_tmp:=$tmp}"
18914 { test ! -d "$ac_tmp" || rm -fr "$ac_tmp"; } && exit $exit_status
18915 ' 0
18916 trap 'as_fn_exit 1' 1 2 13 15
18917 }
18918 # Create a (secure) tmp directory for tmp files.
18919
18920 {
18921 tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` &&
18922 test -d "$tmp"
18923 } ||
18924 {
18925 tmp=./conf$$-$RANDOM
18926 (umask 077 && mkdir "$tmp")
18927 } || as_fn_error $? "cannot create a temporary directory in ." "$LINENO" 5
18928 ac_tmp=$tmp
18929
18930 # Set up the scripts for CONFIG_FILES section.
18931 # No need to generate them if there are no CONFIG_FILES.
18932 # This happens for instance with `./config.status config.h'.
18933 if test -n "$CONFIG_FILES"; then
18934
18935
18936 ac_cr=`echo X | tr X '\015'`
18937 # On cygwin, bash can eat \r inside `` if the user requested igncr.
18938 # But we know of no other shell where ac_cr would be empty at this
18939 # point, so we can use a bashism as a fallback.
18940 if test "x$ac_cr" = x; then
18941 eval ac_cr=\$\'\\r\'
18942 fi
18943 ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' </dev/null 2>/dev/null`
18944 if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then
18945 ac_cs_awk_cr='\\r'
18946 else
18947 ac_cs_awk_cr=$ac_cr
18948 fi
18949
18950 echo 'BEGIN {' >"$ac_tmp/subs1.awk" &&
18951 _ACEOF
18952
18953
18954 {
18955 echo "cat >conf$$subs.awk <<_ACEOF" &&
18956 echo "$ac_subst_vars" | sed 's/.*/&!$&$ac_delim/' &&
18957 echo "_ACEOF"
18958 } >conf$$subs.sh ||
18959 as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
18960 ac_delim_num=`echo "$ac_subst_vars" | grep -c '^'`
18961 ac_delim='%!_!# '
18962 for ac_last_try in false false false false false :; do
18963 . ./conf$$subs.sh ||
18964 as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
18965
18966 ac_delim_n=`sed -n "s/.*$ac_delim\$/X/p" conf$$subs.awk | grep -c X`
18967 if test $ac_delim_n = $ac_delim_num; then
18968 break
18969 elif $ac_last_try; then
18970 as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5
18971 else
18972 ac_delim="$ac_delim!$ac_delim _$ac_delim!! "
18973 fi
18974 done
18975 rm -f conf$$subs.sh
18976
18977 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
18978 cat >>"\$ac_tmp/subs1.awk" <<\\_ACAWK &&
18979 _ACEOF
18980 sed -n '
18981 h
18982 s/^/S["/; s/!.*/"]=/
18983 p
18984 g
18985 s/^[^!]*!//
18986 :repl
18987 t repl
18988 s/'"$ac_delim"'$//
18989 t delim
18990 :nl
18991 h
18992 s/\(.\{148\}\)..*/\1/
18993 t more1
18994 s/["\\]/\\&/g; s/^/"/; s/$/\\n"\\/
18995 p
18996 n
18997 b repl
18998 :more1
18999 s/["\\]/\\&/g; s/^/"/; s/$/"\\/
19000 p
19001 g
19002 s/.\{148\}//
19003 t nl
19004 :delim
19005 h
19006 s/\(.\{148\}\)..*/\1/
19007 t more2
19008 s/["\\]/\\&/g; s/^/"/; s/$/"/
19009 p
19010 b
19011 :more2
19012 s/["\\]/\\&/g; s/^/"/; s/$/"\\/
19013 p
19014 g
19015 s/.\{148\}//
19016 t delim
19017 ' <conf$$subs.awk | sed '
19018 /^[^""]/{
19019 N
19020 s/\n//
19021 }
19022 ' >>$CONFIG_STATUS || ac_write_fail=1
19023 rm -f conf$$subs.awk
19024 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
19025 _ACAWK
19026 cat >>"\$ac_tmp/subs1.awk" <<_ACAWK &&
19027 for (key in S) S_is_set[key] = 1
19028 FS = ""
19029
19030 }
19031 {
19032 line = $ 0
19033 nfields = split(line, field, "@")
19034 substed = 0
19035 len = length(field[1])
19036 for (i = 2; i < nfields; i++) {
19037 key = field[i]
19038 keylen = length(key)
19039 if (S_is_set[key]) {
19040 value = S[key]
19041 line = substr(line, 1, len) "" value "" substr(line, len + keylen + 3)
19042 len += length(value) + length(field[++i])
19043 substed = 1
19044 } else
19045 len += 1 + keylen
19046 }
19047
19048 print line
19049 }
19050
19051 _ACAWK
19052 _ACEOF
19053 cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
19054 if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then
19055 sed "s/$ac_cr\$//; s/$ac_cr/$ac_cs_awk_cr/g"
19056 else
19057 cat
19058 fi < "$ac_tmp/subs1.awk" > "$ac_tmp/subs.awk" \
19059 || as_fn_error $? "could not setup config files machinery" "$LINENO" 5
19060 _ACEOF
19061
19062 # VPATH may cause trouble with some makes, so we remove sole $(srcdir),
19063 # ${srcdir} and @srcdir@ entries from VPATH if srcdir is ".", strip leading and
19064 # trailing colons and then remove the whole line if VPATH becomes empty
19065 # (actually we leave an empty line to preserve line numbers).
19066 if test "x$srcdir" = x.; then
19067 ac_vpsub='/^[ ]*VPATH[ ]*=[ ]*/{
19068 h
19069 s///
19070 s/^/:/
19071 s/[ ]*$/:/
19072 s/:\$(srcdir):/:/g
19073 s/:\${srcdir}:/:/g
19074 s/:@srcdir@:/:/g
19075 s/^:*//
19076 s/:*$//
19077 x
19078 s/\(=[ ]*\).*/\1/
19079 G
19080 s/\n//
19081 s/^[^=]*=[ ]*$//
19082 }'
19083 fi
19084
19085 cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
19086 fi # test -n "$CONFIG_FILES"
19087
19088 # Set up the scripts for CONFIG_HEADERS section.
19089 # No need to generate them if there are no CONFIG_HEADERS.
19090 # This happens for instance with `./config.status Makefile'.
19091 if test -n "$CONFIG_HEADERS"; then
19092 cat >"$ac_tmp/defines.awk" <<\_ACAWK ||
19093 BEGIN {
19094 _ACEOF
19095
19096 # Transform confdefs.h into an awk script `defines.awk', embedded as
19097 # here-document in config.status, that substitutes the proper values into
19098 # config.h.in to produce config.h.
19099
19100 # Create a delimiter string that does not exist in confdefs.h, to ease
19101 # handling of long lines.
19102 ac_delim='%!_!# '
19103 for ac_last_try in false false :; do
19104 ac_tt=`sed -n "/$ac_delim/p" confdefs.h`
19105 if test -z "$ac_tt"; then
19106 break
19107 elif $ac_last_try; then
19108 as_fn_error $? "could not make $CONFIG_HEADERS" "$LINENO" 5
19109 else
19110 ac_delim="$ac_delim!$ac_delim _$ac_delim!! "
19111 fi
19112 done
19113
19114 # For the awk script, D is an array of macro values keyed by name,
19115 # likewise P contains macro parameters if any. Preserve backslash
19116 # newline sequences.
19117
19118 ac_word_re=[_$as_cr_Letters][_$as_cr_alnum]*
19119 sed -n '
19120 s/.\{148\}/&'"$ac_delim"'/g
19121 t rset
19122 :rset
19123 s/^[ ]*#[ ]*define[ ][ ]*/ /
19124 t def
19125 d
19126 :def
19127 s/\\$//
19128 t bsnl
19129 s/["\\]/\\&/g
19130 s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\
19131 D["\1"]=" \3"/p
19132 s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2"/p
19133 d
19134 :bsnl
19135 s/["\\]/\\&/g
19136 s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\
19137 D["\1"]=" \3\\\\\\n"\\/p
19138 t cont
19139 s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2\\\\\\n"\\/p
19140 t cont
19141 d
19142 :cont
19143 n
19144 s/.\{148\}/&'"$ac_delim"'/g
19145 t clear
19146 :clear
19147 s/\\$//
19148 t bsnlc
19149 s/["\\]/\\&/g; s/^/"/; s/$/"/p
19150 d
19151 :bsnlc
19152 s/["\\]/\\&/g; s/^/"/; s/$/\\\\\\n"\\/p
19153 b cont
19154 ' <confdefs.h | sed '
19155 s/'"$ac_delim"'/"\\\
19156 "/g' >>$CONFIG_STATUS || ac_write_fail=1
19157
19158 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
19159 for (key in D) D_is_set[key] = 1
19160 FS = ""
19161 }
19162 /^[\t ]*#[\t ]*(define|undef)[\t ]+$ac_word_re([\t (]|\$)/ {
19163 line = \$ 0
19164 split(line, arg, " ")
19165 if (arg[1] == "#") {
19166 defundef = arg[2]
19167 mac1 = arg[3]
19168 } else {
19169 defundef = substr(arg[1], 2)
19170 mac1 = arg[2]
19171 }
19172 split(mac1, mac2, "(") #)
19173 macro = mac2[1]
19174 prefix = substr(line, 1, index(line, defundef) - 1)
19175 if (D_is_set[macro]) {
19176 # Preserve the white space surrounding the "#".
19177 print prefix "define", macro P[macro] D[macro]
19178 next
19179 } else {
19180 # Replace #undef with comments. This is necessary, for example,
19181 # in the case of _POSIX_SOURCE, which is predefined and required
19182 # on some systems where configure will not decide to define it.
19183 if (defundef == "undef") {
19184 print "/*", prefix defundef, macro, "*/"
19185 next
19186 }
19187 }
19188 }
19189 { print }
19190 _ACAWK
19191 _ACEOF
19192 cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
19193 as_fn_error $? "could not setup config headers machinery" "$LINENO" 5
19194 fi # test -n "$CONFIG_HEADERS"
19195
19196
19197 eval set X " :F $CONFIG_FILES :H $CONFIG_HEADERS :C $CONFIG_COMMANDS"
19198 shift
19199 for ac_tag
19200 do
19201 case $ac_tag in
19202 :[FHLC]) ac_mode=$ac_tag; continue;;
19203 esac
19204 case $ac_mode$ac_tag in
19205 :[FHL]*:*);;
19206 :L* | :C*:*) as_fn_error $? "invalid tag \`$ac_tag'" "$LINENO" 5;;
19207 :[FH]-) ac_tag=-:-;;
19208 :[FH]*) ac_tag=$ac_tag:$ac_tag.in;;
19209 esac
19210 ac_save_IFS=$IFS
19211 IFS=:
19212 set x $ac_tag
19213 IFS=$ac_save_IFS
19214 shift
19215 ac_file=$1
19216 shift
19217
19218 case $ac_mode in
19219 :L) ac_source=$1;;
19220 :[FH])
19221 ac_file_inputs=
19222 for ac_f
19223 do
19224 case $ac_f in
19225 -) ac_f="$ac_tmp/stdin";;
19226 *) # Look for the file first in the build tree, then in the source tree
19227 # (if the path is not absolute). The absolute path cannot be DOS-style,
19228 # because $ac_f cannot contain `:'.
19229 test -f "$ac_f" ||
19230 case $ac_f in
19231 [\\/$]*) false;;
19232 *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";;
19233 esac ||
19234 as_fn_error 1 "cannot find input file: \`$ac_f'" "$LINENO" 5;;
19235 esac
19236 case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac
19237 as_fn_append ac_file_inputs " '$ac_f'"
19238 done
19239
19240 # Let's still pretend it is `configure' which instantiates (i.e., don't
19241 # use $as_me), people would be surprised to read:
19242 # /* config.h. Generated by config.status. */
19243 configure_input='Generated from '`
19244 $as_echo "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g'
19245 `' by configure.'
19246 if test x"$ac_file" != x-; then
19247 configure_input="$ac_file. $configure_input"
19248 { $as_echo "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5
19249 $as_echo "$as_me: creating $ac_file" >&6;}
19250 fi
19251 # Neutralize special characters interpreted by sed in replacement strings.
19252 case $configure_input in #(
19253 *\&* | *\|* | *\\* )
19254 ac_sed_conf_input=`$as_echo "$configure_input" |
19255 sed 's/[\\\\&|]/\\\\&/g'`;; #(
19256 *) ac_sed_conf_input=$configure_input;;
19257 esac
19258
19259 case $ac_tag in
19260 *:-:* | *:-) cat >"$ac_tmp/stdin" \
19261 || as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;;
19262 esac
19263 ;;
19264 esac
19265
19266 ac_dir=`$as_dirname -- "$ac_file" ||
19267 $as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
19268 X"$ac_file" : 'X\(//\)[^/]' \| \
19269 X"$ac_file" : 'X\(//\)$' \| \
19270 X"$ac_file" : 'X\(/\)' \| . 2>/dev/null ||
19271 $as_echo X"$ac_file" |
19272 sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
19273 s//\1/
19274 q
19275 }
19276 /^X\(\/\/\)[^/].*/{
19277 s//\1/
19278 q
19279 }
19280 /^X\(\/\/\)$/{
19281 s//\1/
19282 q
19283 }
19284 /^X\(\/\).*/{
19285 s//\1/
19286 q
19287 }
19288 s/.*/./; q'`
19289 as_dir="$ac_dir"; as_fn_mkdir_p
19290 ac_builddir=.
19291
19292 case "$ac_dir" in
19293 .) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;
19294 *)
19295 ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'`
19296 # A ".." for each directory in $ac_dir_suffix.
19297 ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'`
19298 case $ac_top_builddir_sub in
19299 "") ac_top_builddir_sub=. ac_top_build_prefix= ;;
19300 *) ac_top_build_prefix=$ac_top_builddir_sub/ ;;
19301 esac ;;
19302 esac
19303 ac_abs_top_builddir=$ac_pwd
19304 ac_abs_builddir=$ac_pwd$ac_dir_suffix
19305 # for backward compatibility:
19306 ac_top_builddir=$ac_top_build_prefix
19307
19308 case $srcdir in
19309 .) # We are building in place.
19310 ac_srcdir=.
19311 ac_top_srcdir=$ac_top_builddir_sub
19312 ac_abs_top_srcdir=$ac_pwd ;;
19313 [\\/]* | ?:[\\/]* ) # Absolute name.
19314 ac_srcdir=$srcdir$ac_dir_suffix;
19315 ac_top_srcdir=$srcdir
19316 ac_abs_top_srcdir=$srcdir ;;
19317 *) # Relative name.
19318 ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix
19319 ac_top_srcdir=$ac_top_build_prefix$srcdir
19320 ac_abs_top_srcdir=$ac_pwd/$srcdir ;;
19321 esac
19322 ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix
19323
19324
19325 case $ac_mode in
19326 :F)
19327 #
19328 # CONFIG_FILE
19329 #
19330
19331 case $INSTALL in
19332 [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;;
19333 *) ac_INSTALL=$ac_top_build_prefix$INSTALL ;;
19334 esac
19335 ac_MKDIR_P=$MKDIR_P
19336 case $MKDIR_P in
19337 [\\/$]* | ?:[\\/]* ) ;;
19338 */*) ac_MKDIR_P=$ac_top_build_prefix$MKDIR_P ;;
19339 esac
19340 _ACEOF
19341
19342 cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
19343 # If the template does not know about datarootdir, expand it.
19344 # FIXME: This hack should be removed a few years after 2.60.
19345 ac_datarootdir_hack=; ac_datarootdir_seen=
19346 ac_sed_dataroot='
19347 /datarootdir/ {
19348 p
19349 q
19350 }
19351 /@datadir@/p
19352 /@docdir@/p
19353 /@infodir@/p
19354 /@localedir@/p
19355 /@mandir@/p'
19356 case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in
19357 *datarootdir*) ac_datarootdir_seen=yes;;
19358 *@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*)
19359 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5
19360 $as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;}
19361 _ACEOF
19362 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
19363 ac_datarootdir_hack='
19364 s&@datadir@&$datadir&g
19365 s&@docdir@&$docdir&g
19366 s&@infodir@&$infodir&g
19367 s&@localedir@&$localedir&g
19368 s&@mandir@&$mandir&g
19369 s&\\\${datarootdir}&$datarootdir&g' ;;
19370 esac
19371 _ACEOF
19372
19373 # Neutralize VPATH when `$srcdir' = `.'.
19374 # Shell code in configure.ac might set extrasub.
19375 # FIXME: do we really want to maintain this feature?
19376 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
19377 ac_sed_extra="$ac_vpsub
19378 $extrasub
19379 _ACEOF
19380 cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
19381 :t
19382 /@[a-zA-Z_][a-zA-Z_0-9]*@/!b
19383 s|@configure_input@|$ac_sed_conf_input|;t t
19384 s&@top_builddir@&$ac_top_builddir_sub&;t t
19385 s&@top_build_prefix@&$ac_top_build_prefix&;t t
19386 s&@srcdir@&$ac_srcdir&;t t
19387 s&@abs_srcdir@&$ac_abs_srcdir&;t t
19388 s&@top_srcdir@&$ac_top_srcdir&;t t
19389 s&@abs_top_srcdir@&$ac_abs_top_srcdir&;t t
19390 s&@builddir@&$ac_builddir&;t t
19391 s&@abs_builddir@&$ac_abs_builddir&;t t
19392 s&@abs_top_builddir@&$ac_abs_top_builddir&;t t
19393 s&@INSTALL@&$ac_INSTALL&;t t
19394 s&@MKDIR_P@&$ac_MKDIR_P&;t t
19395 $ac_datarootdir_hack
19396 "
19397 eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$ac_tmp/subs.awk" \
19398 >$ac_tmp/out || as_fn_error $? "could not create $ac_file" "$LINENO" 5
19399
19400 test -z "$ac_datarootdir_hack$ac_datarootdir_seen" &&
19401 { ac_out=`sed -n '/\${datarootdir}/p' "$ac_tmp/out"`; test -n "$ac_out"; } &&
19402 { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' \
19403 "$ac_tmp/out"`; test -z "$ac_out"; } &&
19404 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir'
19405 which seems to be undefined. Please make sure it is defined" >&5
19406 $as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir'
19407 which seems to be undefined. Please make sure it is defined" >&2;}
19408
19409 rm -f "$ac_tmp/stdin"
19410 case $ac_file in
19411 -) cat "$ac_tmp/out" && rm -f "$ac_tmp/out";;
19412 *) rm -f "$ac_file" && mv "$ac_tmp/out" "$ac_file";;
19413 esac \
19414 || as_fn_error $? "could not create $ac_file" "$LINENO" 5
19415 ;;
19416 :H)
19417 #
19418 # CONFIG_HEADER
19419 #
19420 if test x"$ac_file" != x-; then
19421 {
19422 $as_echo "/* $configure_input */" \
19423 && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs"
19424 } >"$ac_tmp/config.h" \
19425 || as_fn_error $? "could not create $ac_file" "$LINENO" 5
19426 if diff "$ac_file" "$ac_tmp/config.h" >/dev/null 2>&1; then
19427 { $as_echo "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5
19428 $as_echo "$as_me: $ac_file is unchanged" >&6;}
19429 else
19430 rm -f "$ac_file"
19431 mv "$ac_tmp/config.h" "$ac_file" \
19432 || as_fn_error $? "could not create $ac_file" "$LINENO" 5
19433 fi
19434 else
19435 $as_echo "/* $configure_input */" \
19436 && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" \
19437 || as_fn_error $? "could not create -" "$LINENO" 5
19438 fi
19439 # Compute "$ac_file"'s index in $config_headers.
19440 _am_arg="$ac_file"
19441 _am_stamp_count=1
19442 for _am_header in $config_headers :; do
19443 case $_am_header in
19444 $_am_arg | $_am_arg:* )
19445 break ;;
19446 * )
19447 _am_stamp_count=`expr $_am_stamp_count + 1` ;;
19448 esac
19449 done
19450 echo "timestamp for $_am_arg" >`$as_dirname -- "$_am_arg" ||
19451 $as_expr X"$_am_arg" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
19452 X"$_am_arg" : 'X\(//\)[^/]' \| \
19453 X"$_am_arg" : 'X\(//\)$' \| \
19454 X"$_am_arg" : 'X\(/\)' \| . 2>/dev/null ||
19455 $as_echo X"$_am_arg" |
19456 sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
19457 s//\1/
19458 q
19459 }
19460 /^X\(\/\/\)[^/].*/{
19461 s//\1/
19462 q
19463 }
19464 /^X\(\/\/\)$/{
19465 s//\1/
19466 q
19467 }
19468 /^X\(\/\).*/{
19469 s//\1/
19470 q
19471 }
19472 s/.*/./; q'`/stamp-h$_am_stamp_count
19473 ;;
19474
19475 :C) { $as_echo "$as_me:${as_lineno-$LINENO}: executing $ac_file commands" >&5
19476 $as_echo "$as_me: executing $ac_file commands" >&6;}
19477 ;;
19478 esac
19479
19480
19481 case $ac_file$ac_mode in
19482 "depfiles":C) test x"$AMDEP_TRUE" != x"" || {
19483 # Older Autoconf quotes --file arguments for eval, but not when files
19484 # are listed without --file. Let's play safe and only enable the eval
19485 # if we detect the quoting.
19486 case $CONFIG_FILES in
19487 *\'*) eval set x "$CONFIG_FILES" ;;
19488 *) set x $CONFIG_FILES ;;
19489 esac
19490 shift
19491 for mf
19492 do
19493 # Strip MF so we end up with the name of the file.
19494 mf=`echo "$mf" | sed -e 's/:.*$//'`
19495 # Check whether this is an Automake generated Makefile or not.
19496 # We used to match only the files named 'Makefile.in', but
19497 # some people rename them; so instead we look at the file content.
19498 # Grep'ing the first line is not enough: some people post-process
19499 # each Makefile.in and add a new line on top of each file to say so.
19500 # Grep'ing the whole file is not good either: AIX grep has a line
19501 # limit of 2048, but all sed's we know have understand at least 4000.
19502 if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then
19503 dirpart=`$as_dirname -- "$mf" ||
19504 $as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
19505 X"$mf" : 'X\(//\)[^/]' \| \
19506 X"$mf" : 'X\(//\)$' \| \
19507 X"$mf" : 'X\(/\)' \| . 2>/dev/null ||
19508 $as_echo X"$mf" |
19509 sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
19510 s//\1/
19511 q
19512 }
19513 /^X\(\/\/\)[^/].*/{
19514 s//\1/
19515 q
19516 }
19517 /^X\(\/\/\)$/{
19518 s//\1/
19519 q
19520 }
19521 /^X\(\/\).*/{
19522 s//\1/
19523 q
19524 }
19525 s/.*/./; q'`
19526 else
19527 continue
19528 fi
19529 # Extract the definition of DEPDIR, am__include, and am__quote
19530 # from the Makefile without running 'make'.
19531 DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
19532 test -z "$DEPDIR" && continue
19533 am__include=`sed -n 's/^am__include = //p' < "$mf"`
19534 test -z "$am__include" && continue
19535 am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
19536 # Find all dependency output files, they are included files with
19537 # $(DEPDIR) in their names. We invoke sed twice because it is the
19538 # simplest approach to changing $(DEPDIR) to its actual value in the
19539 # expansion.
19540 for file in `sed -n "
19541 s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
19542 sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g'`; do
19543 # Make sure the directory exists.
19544 test -f "$dirpart/$file" && continue
19545 fdir=`$as_dirname -- "$file" ||
19546 $as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
19547 X"$file" : 'X\(//\)[^/]' \| \
19548 X"$file" : 'X\(//\)$' \| \
19549 X"$file" : 'X\(/\)' \| . 2>/dev/null ||
19550 $as_echo X"$file" |
19551 sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
19552 s//\1/
19553 q
19554 }
19555 /^X\(\/\/\)[^/].*/{
19556 s//\1/
19557 q
19558 }
19559 /^X\(\/\/\)$/{
19560 s//\1/
19561 q
19562 }
19563 /^X\(\/\).*/{
19564 s//\1/
19565 q
19566 }
19567 s/.*/./; q'`
19568 as_dir=$dirpart/$fdir; as_fn_mkdir_p
19569 # echo "creating $dirpart/$file"
19570 echo '# dummy' > "$dirpart/$file"
19571 done
19572 done
19573 }
19574 ;;
19575 "libtool":C)
19576
19577 # See if we are running on zsh, and set the options that allow our
19578 # commands through without removal of \ escapes.
19579 if test -n "${ZSH_VERSION+set}"; then
19580 setopt NO_GLOB_SUBST
19581 fi
19582
19583 cfgfile=${ofile}T
19584 trap "$RM \"$cfgfile\"; exit 1" 1 2 15
19585 $RM "$cfgfile"
19586
19587 cat <<_LT_EOF >> "$cfgfile"
19588 #! $SHELL
19589 # Generated automatically by $as_me ($PACKAGE) $VERSION
19590 # NOTE: Changes made to this file will be lost: look at ltmain.sh.
19591
19592 # Provide generalized library-building support services.
19593 # Written by Gordon Matzigkeit, 1996
19594
19595 # Copyright (C) 2014 Free Software Foundation, Inc.
19596 # This is free software; see the source for copying conditions. There is NO
19597 # warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
19598
19599 # GNU Libtool is free software; you can redistribute it and/or modify
19600 # it under the terms of the GNU General Public License as published by
19601 # the Free Software Foundation; either version 2 of of the License, or
19602 # (at your option) any later version.
19603 #
19604 # As a special exception to the GNU General Public License, if you
19605 # distribute this file as part of a program or library that is built
19606 # using GNU Libtool, you may include this file under the same
19607 # distribution terms that you use for the rest of that program.
19608 #
19609 # GNU Libtool is distributed in the hope that it will be useful, but
19610 # WITHOUT ANY WARRANTY; without even the implied warranty of
19611 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19612 # GNU General Public License for more details.
19613 #
19614 # You should have received a copy of the GNU General Public License
19615 # along with this program. If not, see <http://www.gnu.org/licenses/>.
19616
19617
19618 # The names of the tagged configurations supported by this script.
19619 available_tags='CXX '
19620
19621 # Configured defaults for sys_lib_dlsearch_path munging.
19622 : \${LT_SYS_LIBRARY_PATH="$configure_time_lt_sys_library_path"}
19623
19624 # ### BEGIN LIBTOOL CONFIG
19625
19626 # Which release of libtool.m4 was used?
19627 macro_version=$macro_version
19628 macro_revision=$macro_revision
19629
19630 # Whether or not to build shared libraries.
19631 build_libtool_libs=$enable_shared
19632
19633 # Whether or not to build static libraries.
19634 build_old_libs=$enable_static
19635
19636 # What type of objects to build.
19637 pic_mode=$pic_mode
19638
19639 # Whether or not to optimize for fast installation.
19640 fast_install=$enable_fast_install
19641
19642 # Shared archive member basename,for filename based shared library versioning on AIX.
19643 shared_archive_member_spec=$shared_archive_member_spec
19644
19645 # Shell to use when invoking shell scripts.
19646 SHELL=$lt_SHELL
19647
19648 # An echo program that protects backslashes.
19649 ECHO=$lt_ECHO
19650
19651 # The PATH separator for the build system.
19652 PATH_SEPARATOR=$lt_PATH_SEPARATOR
19653
19654 # The host system.
19655 host_alias=$host_alias
19656 host=$host
19657 host_os=$host_os
19658
19659 # The build system.
19660 build_alias=$build_alias
19661 build=$build
19662 build_os=$build_os
19663
19664 # A sed program that does not truncate output.
19665 SED=$lt_SED
19666
19667 # Sed that helps us avoid accidentally triggering echo(1) options like -n.
19668 Xsed="\$SED -e 1s/^X//"
19669
19670 # A grep program that handles long lines.
19671 GREP=$lt_GREP
19672
19673 # An ERE matcher.
19674 EGREP=$lt_EGREP
19675
19676 # A literal string matcher.
19677 FGREP=$lt_FGREP
19678
19679 # A BSD- or MS-compatible name lister.
19680 NM=$lt_NM
19681
19682 # Whether we need soft or hard links.
19683 LN_S=$lt_LN_S
19684
19685 # What is the maximum length of a command?
19686 max_cmd_len=$max_cmd_len
19687
19688 # Object file suffix (normally "o").
19689 objext=$ac_objext
19690
19691 # Executable file suffix (normally "").
19692 exeext=$exeext
19693
19694 # whether the shell understands "unset".
19695 lt_unset=$lt_unset
19696
19697 # turn spaces into newlines.
19698 SP2NL=$lt_lt_SP2NL
19699
19700 # turn newlines into spaces.
19701 NL2SP=$lt_lt_NL2SP
19702
19703 # convert \$build file names to \$host format.
19704 to_host_file_cmd=$lt_cv_to_host_file_cmd
19705
19706 # convert \$build files to toolchain format.
19707 to_tool_file_cmd=$lt_cv_to_tool_file_cmd
19708
19709 # An object symbol dumper.
19710 OBJDUMP=$lt_OBJDUMP
19711
19712 # Method to check whether dependent libraries are shared objects.
19713 deplibs_check_method=$lt_deplibs_check_method
19714
19715 # Command to use when deplibs_check_method = "file_magic".
19716 file_magic_cmd=$lt_file_magic_cmd
19717
19718 # How to find potential files when deplibs_check_method = "file_magic".
19719 file_magic_glob=$lt_file_magic_glob
19720
19721 # Find potential files using nocaseglob when deplibs_check_method = "file_magic".
19722 want_nocaseglob=$lt_want_nocaseglob
19723
19724 # DLL creation program.
19725 DLLTOOL=$lt_DLLTOOL
19726
19727 # Command to associate shared and link libraries.
19728 sharedlib_from_linklib_cmd=$lt_sharedlib_from_linklib_cmd
19729
19730 # The archiver.
19731 AR=$lt_AR
19732
19733 # Flags to create an archive.
19734 AR_FLAGS=$lt_AR_FLAGS
19735
19736 # How to feed a file listing to the archiver.
19737 archiver_list_spec=$lt_archiver_list_spec
19738
19739 # A symbol stripping program.
19740 STRIP=$lt_STRIP
19741
19742 # Commands used to install an old-style archive.
19743 RANLIB=$lt_RANLIB
19744 old_postinstall_cmds=$lt_old_postinstall_cmds
19745 old_postuninstall_cmds=$lt_old_postuninstall_cmds
19746
19747 # Whether to use a lock for old archive extraction.
19748 lock_old_archive_extraction=$lock_old_archive_extraction
19749
19750 # A C compiler.
19751 LTCC=$lt_CC
19752
19753 # LTCC compiler flags.
19754 LTCFLAGS=$lt_CFLAGS
19755
19756 # Take the output of nm and produce a listing of raw symbols and C names.
19757 global_symbol_pipe=$lt_lt_cv_sys_global_symbol_pipe
19758
19759 # Transform the output of nm in a proper C declaration.
19760 global_symbol_to_cdecl=$lt_lt_cv_sys_global_symbol_to_cdecl
19761
19762 # Transform the output of nm into a list of symbols to manually relocate.
19763 global_symbol_to_import=$lt_lt_cv_sys_global_symbol_to_import
19764
19765 # Transform the output of nm in a C name address pair.
19766 global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address
19767
19768 # Transform the output of nm in a C name address pair when lib prefix is needed.
19769 global_symbol_to_c_name_address_lib_prefix=$lt_lt_cv_sys_global_symbol_to_c_name_address_lib_prefix
19770
19771 # The name lister interface.
19772 nm_interface=$lt_lt_cv_nm_interface
19773
19774 # Specify filename containing input files for \$NM.
19775 nm_file_list_spec=$lt_nm_file_list_spec
19776
19777 # The root where to search for dependent libraries,and where our libraries should be installed.
19778 lt_sysroot=$lt_sysroot
19779
19780 # Command to truncate a binary pipe.
19781 lt_truncate_bin=$lt_lt_cv_truncate_bin
19782
19783 # The name of the directory that contains temporary libtool files.
19784 objdir=$objdir
19785
19786 # Used to examine libraries when file_magic_cmd begins with "file".
19787 MAGIC_CMD=$MAGIC_CMD
19788
19789 # Must we lock files when doing compilation?
19790 need_locks=$lt_need_locks
19791
19792 # Manifest tool.
19793 MANIFEST_TOOL=$lt_MANIFEST_TOOL
19794
19795 # Tool to manipulate archived DWARF debug symbol files on Mac OS X.
19796 DSYMUTIL=$lt_DSYMUTIL
19797
19798 # Tool to change global to local symbols on Mac OS X.
19799 NMEDIT=$lt_NMEDIT
19800
19801 # Tool to manipulate fat objects and archives on Mac OS X.
19802 LIPO=$lt_LIPO
19803
19804 # ldd/readelf like tool for Mach-O binaries on Mac OS X.
19805 OTOOL=$lt_OTOOL
19806
19807 # ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4.
19808 OTOOL64=$lt_OTOOL64
19809
19810 # Old archive suffix (normally "a").
19811 libext=$libext
19812
19813 # Shared library suffix (normally ".so").
19814 shrext_cmds=$lt_shrext_cmds
19815
19816 # The commands to extract the exported symbol list from a shared archive.
19817 extract_expsyms_cmds=$lt_extract_expsyms_cmds
19818
19819 # Variables whose values should be saved in libtool wrapper scripts and
19820 # restored at link time.
19821 variables_saved_for_relink=$lt_variables_saved_for_relink
19822
19823 # Do we need the "lib" prefix for modules?
19824 need_lib_prefix=$need_lib_prefix
19825
19826 # Do we need a version for libraries?
19827 need_version=$need_version
19828
19829 # Library versioning type.
19830 version_type=$version_type
19831
19832 # Shared library runtime path variable.
19833 runpath_var=$runpath_var
19834
19835 # Shared library path variable.
19836 shlibpath_var=$shlibpath_var
19837
19838 # Is shlibpath searched before the hard-coded library search path?
19839 shlibpath_overrides_runpath=$shlibpath_overrides_runpath
19840
19841 # Format of library name prefix.
19842 libname_spec=$lt_libname_spec
19843
19844 # List of archive names. First name is the real one, the rest are links.
19845 # The last name is the one that the linker finds with -lNAME
19846 library_names_spec=$lt_library_names_spec
19847
19848 # The coded name of the library, if different from the real name.
19849 soname_spec=$lt_soname_spec
19850
19851 # Permission mode override for installation of shared libraries.
19852 install_override_mode=$lt_install_override_mode
19853
19854 # Command to use after installation of a shared archive.
19855 postinstall_cmds=$lt_postinstall_cmds
19856
19857 # Command to use after uninstallation of a shared archive.
19858 postuninstall_cmds=$lt_postuninstall_cmds
19859
19860 # Commands used to finish a libtool library installation in a directory.
19861 finish_cmds=$lt_finish_cmds
19862
19863 # As "finish_cmds", except a single script fragment to be evaled but
19864 # not shown.
19865 finish_eval=$lt_finish_eval
19866
19867 # Whether we should hardcode library paths into libraries.
19868 hardcode_into_libs=$hardcode_into_libs
19869
19870 # Compile-time system search path for libraries.
19871 sys_lib_search_path_spec=$lt_sys_lib_search_path_spec
19872
19873 # Detected run-time system search path for libraries.
19874 sys_lib_dlsearch_path_spec=$lt_configure_time_dlsearch_path
19875
19876 # Explicit LT_SYS_LIBRARY_PATH set during ./configure time.
19877 configure_time_lt_sys_library_path=$lt_configure_time_lt_sys_library_path
19878
19879 # Whether dlopen is supported.
19880 dlopen_support=$enable_dlopen
19881
19882 # Whether dlopen of programs is supported.
19883 dlopen_self=$enable_dlopen_self
19884
19885 # Whether dlopen of statically linked programs is supported.
19886 dlopen_self_static=$enable_dlopen_self_static
19887
19888 # Commands to strip libraries.
19889 old_striplib=$lt_old_striplib
19890 striplib=$lt_striplib
19891
19892
19893 # The linker used to build libraries.
19894 LD=$lt_LD
19895
19896 # How to create reloadable object files.
19897 reload_flag=$lt_reload_flag
19898 reload_cmds=$lt_reload_cmds
19899
19900 # Commands used to build an old-style archive.
19901 old_archive_cmds=$lt_old_archive_cmds
19902
19903 # A language specific compiler.
19904 CC=$lt_compiler
19905
19906 # Is the compiler the GNU compiler?
19907 with_gcc=$GCC
19908
19909 # Compiler flag to turn off builtin functions.
19910 no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag
19911
19912 # Additional compiler flags for building library objects.
19913 pic_flag=$lt_lt_prog_compiler_pic
19914
19915 # How to pass a linker flag through the compiler.
19916 wl=$lt_lt_prog_compiler_wl
19917
19918 # Compiler flag to prevent dynamic linking.
19919 link_static_flag=$lt_lt_prog_compiler_static
19920
19921 # Does compiler simultaneously support -c and -o options?
19922 compiler_c_o=$lt_lt_cv_prog_compiler_c_o
19923
19924 # Whether or not to add -lc for building shared libraries.
19925 build_libtool_need_lc=$archive_cmds_need_lc
19926
19927 # Whether or not to disallow shared libs when runtime libs are static.
19928 allow_libtool_libs_with_static_runtimes=$enable_shared_with_static_runtimes
19929
19930 # Compiler flag to allow reflexive dlopens.
19931 export_dynamic_flag_spec=$lt_export_dynamic_flag_spec
19932
19933 # Compiler flag to generate shared objects directly from archives.
19934 whole_archive_flag_spec=$lt_whole_archive_flag_spec
19935
19936 # Whether the compiler copes with passing no objects directly.
19937 compiler_needs_object=$lt_compiler_needs_object
19938
19939 # Create an old-style archive from a shared archive.
19940 old_archive_from_new_cmds=$lt_old_archive_from_new_cmds
19941
19942 # Create a temporary old-style archive to link instead of a shared archive.
19943 old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds
19944
19945 # Commands used to build a shared archive.
19946 archive_cmds=$lt_archive_cmds
19947 archive_expsym_cmds=$lt_archive_expsym_cmds
19948
19949 # Commands used to build a loadable module if different from building
19950 # a shared archive.
19951 module_cmds=$lt_module_cmds
19952 module_expsym_cmds=$lt_module_expsym_cmds
19953
19954 # Whether we are building with GNU ld or not.
19955 with_gnu_ld=$lt_with_gnu_ld
19956
19957 # Flag that allows shared libraries with undefined symbols to be built.
19958 allow_undefined_flag=$lt_allow_undefined_flag
19959
19960 # Flag that enforces no undefined symbols.
19961 no_undefined_flag=$lt_no_undefined_flag
19962
19963 # Flag to hardcode \$libdir into a binary during linking.
19964 # This must work even if \$libdir does not exist
19965 hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec
19966
19967 # Whether we need a single "-rpath" flag with a separated argument.
19968 hardcode_libdir_separator=$lt_hardcode_libdir_separator
19969
19970 # Set to "yes" if using DIR/libNAME\$shared_ext during linking hardcodes
19971 # DIR into the resulting binary.
19972 hardcode_direct=$hardcode_direct
19973
19974 # Set to "yes" if using DIR/libNAME\$shared_ext during linking hardcodes
19975 # DIR into the resulting binary and the resulting library dependency is
19976 # "absolute",i.e impossible to change by setting \$shlibpath_var if the
19977 # library is relocated.
19978 hardcode_direct_absolute=$hardcode_direct_absolute
19979
19980 # Set to "yes" if using the -LDIR flag during linking hardcodes DIR
19981 # into the resulting binary.
19982 hardcode_minus_L=$hardcode_minus_L
19983
19984 # Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR
19985 # into the resulting binary.
19986 hardcode_shlibpath_var=$hardcode_shlibpath_var
19987
19988 # Set to "yes" if building a shared library automatically hardcodes DIR
19989 # into the library and all subsequent libraries and executables linked
19990 # against it.
19991 hardcode_automatic=$hardcode_automatic
19992
19993 # Set to yes if linker adds runtime paths of dependent libraries
19994 # to runtime path list.
19995 inherit_rpath=$inherit_rpath
19996
19997 # Whether libtool must link a program against all its dependency libraries.
19998 link_all_deplibs=$link_all_deplibs
19999
20000 # Set to "yes" if exported symbols are required.
20001 always_export_symbols=$always_export_symbols
20002
20003 # The commands to list exported symbols.
20004 export_symbols_cmds=$lt_export_symbols_cmds
20005
20006 # Symbols that should not be listed in the preloaded symbols.
20007 exclude_expsyms=$lt_exclude_expsyms
20008
20009 # Symbols that must always be exported.
20010 include_expsyms=$lt_include_expsyms
20011
20012 # Commands necessary for linking programs (against libraries) with templates.
20013 prelink_cmds=$lt_prelink_cmds
20014
20015 # Commands necessary for finishing linking programs.
20016 postlink_cmds=$lt_postlink_cmds
20017
20018 # Specify filename containing input files.
20019 file_list_spec=$lt_file_list_spec
20020
20021 # How to hardcode a shared library path into an executable.
20022 hardcode_action=$hardcode_action
20023
20024 # The directories searched by this compiler when creating a shared library.
20025 compiler_lib_search_dirs=$lt_compiler_lib_search_dirs
20026
20027 # Dependencies to place before and after the objects being linked to
20028 # create a shared library.
20029 predep_objects=$lt_predep_objects
20030 postdep_objects=$lt_postdep_objects
20031 predeps=$lt_predeps
20032 postdeps=$lt_postdeps
20033
20034 # The library search path used internally by the compiler when linking
20035 # a shared library.
20036 compiler_lib_search_path=$lt_compiler_lib_search_path
20037
20038 # ### END LIBTOOL CONFIG
20039
20040 _LT_EOF
20041
20042 cat <<'_LT_EOF' >> "$cfgfile"
20043
20044 # ### BEGIN FUNCTIONS SHARED WITH CONFIGURE
20045
20046 # func_munge_path_list VARIABLE PATH
20047 # -----------------------------------
20048 # VARIABLE is name of variable containing _space_ separated list of
20049 # directories to be munged by the contents of PATH, which is string
20050 # having a format:
20051 # "DIR[:DIR]:"
20052 # string "DIR[ DIR]" will be prepended to VARIABLE
20053 # ":DIR[:DIR]"
20054 # string "DIR[ DIR]" will be appended to VARIABLE
20055 # "DIRP[:DIRP]::[DIRA:]DIRA"
20056 # string "DIRP[ DIRP]" will be prepended to VARIABLE and string
20057 # "DIRA[ DIRA]" will be appended to VARIABLE
20058 # "DIR[:DIR]"
20059 # VARIABLE will be replaced by "DIR[ DIR]"
20060 func_munge_path_list ()
20061 {
20062 case x$2 in
20063 x)
20064 ;;
20065 *:)
20066 eval $1=\"`$ECHO $2 | $SED 's/:/ /g'` \$$1\"
20067 ;;
20068 x:*)
20069 eval $1=\"\$$1 `$ECHO $2 | $SED 's/:/ /g'`\"
20070 ;;
20071 *::*)
20072 eval $1=\"\$$1\ `$ECHO $2 | $SED -e 's/.*:://' -e 's/:/ /g'`\"
20073 eval $1=\"`$ECHO $2 | $SED -e 's/::.*//' -e 's/:/ /g'`\ \$$1\"
20074 ;;
20075 *)
20076 eval $1=\"`$ECHO $2 | $SED 's/:/ /g'`\"
20077 ;;
20078 esac
20079 }
20080
20081
20082 # Calculate cc_basename. Skip known compiler wrappers and cross-prefix.
20083 func_cc_basename ()
20084 {
20085 for cc_temp in $*""; do
20086 case $cc_temp in
20087 compile | *[\\/]compile | ccache | *[\\/]ccache ) ;;
20088 distcc | *[\\/]distcc | purify | *[\\/]purify ) ;;
20089 \-*) ;;
20090 *) break;;
20091 esac
20092 done
20093 func_cc_basename_result=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"`
20094 }
20095
20096
20097 # ### END FUNCTIONS SHARED WITH CONFIGURE
20098
20099 _LT_EOF
20100
20101 case $host_os in
20102 aix3*)
20103 cat <<\_LT_EOF >> "$cfgfile"
20104 # AIX sometimes has problems with the GCC collect2 program. For some
20105 # reason, if we set the COLLECT_NAMES environment variable, the problems
20106 # vanish in a puff of smoke.
20107 if test set != "${COLLECT_NAMES+set}"; then
20108 COLLECT_NAMES=
20109 export COLLECT_NAMES
20110 fi
20111 _LT_EOF
20112 ;;
20113 esac
20114
20115
20116 ltmain=$ac_aux_dir/ltmain.sh
20117
20118
20119 # We use sed instead of cat because bash on DJGPP gets confused if
20120 # if finds mixed CR/LF and LF-only lines. Since sed operates in
20121 # text mode, it properly converts lines to CR/LF. This bash problem
20122 # is reportedly fixed, but why not run on old versions too?
20123 sed '$q' "$ltmain" >> "$cfgfile" \
20124 || (rm -f "$cfgfile"; exit 1)
20125
20126 mv -f "$cfgfile" "$ofile" ||
20127 (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile")
20128 chmod +x "$ofile"
20129
20130
20131 cat <<_LT_EOF >> "$ofile"
20132
20133 # ### BEGIN LIBTOOL TAG CONFIG: CXX
20134
20135 # The linker used to build libraries.
20136 LD=$lt_LD_CXX
20137
20138 # How to create reloadable object files.
20139 reload_flag=$lt_reload_flag_CXX
20140 reload_cmds=$lt_reload_cmds_CXX
20141
20142 # Commands used to build an old-style archive.
20143 old_archive_cmds=$lt_old_archive_cmds_CXX
20144
20145 # A language specific compiler.
20146 CC=$lt_compiler_CXX
20147
20148 # Is the compiler the GNU compiler?
20149 with_gcc=$GCC_CXX
20150
20151 # Compiler flag to turn off builtin functions.
20152 no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag_CXX
20153
20154 # Additional compiler flags for building library objects.
20155 pic_flag=$lt_lt_prog_compiler_pic_CXX
20156
20157 # How to pass a linker flag through the compiler.
20158 wl=$lt_lt_prog_compiler_wl_CXX
20159
20160 # Compiler flag to prevent dynamic linking.
20161 link_static_flag=$lt_lt_prog_compiler_static_CXX
20162
20163 # Does compiler simultaneously support -c and -o options?
20164 compiler_c_o=$lt_lt_cv_prog_compiler_c_o_CXX
20165
20166 # Whether or not to add -lc for building shared libraries.
20167 build_libtool_need_lc=$archive_cmds_need_lc_CXX
20168
20169 # Whether or not to disallow shared libs when runtime libs are static.
20170 allow_libtool_libs_with_static_runtimes=$enable_shared_with_static_runtimes_CXX
20171
20172 # Compiler flag to allow reflexive dlopens.
20173 export_dynamic_flag_spec=$lt_export_dynamic_flag_spec_CXX
20174
20175 # Compiler flag to generate shared objects directly from archives.
20176 whole_archive_flag_spec=$lt_whole_archive_flag_spec_CXX
20177
20178 # Whether the compiler copes with passing no objects directly.
20179 compiler_needs_object=$lt_compiler_needs_object_CXX
20180
20181 # Create an old-style archive from a shared archive.
20182 old_archive_from_new_cmds=$lt_old_archive_from_new_cmds_CXX
20183
20184 # Create a temporary old-style archive to link instead of a shared archive.
20185 old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds_CXX
20186
20187 # Commands used to build a shared archive.
20188 archive_cmds=$lt_archive_cmds_CXX
20189 archive_expsym_cmds=$lt_archive_expsym_cmds_CXX
20190
20191 # Commands used to build a loadable module if different from building
20192 # a shared archive.
20193 module_cmds=$lt_module_cmds_CXX
20194 module_expsym_cmds=$lt_module_expsym_cmds_CXX
20195
20196 # Whether we are building with GNU ld or not.
20197 with_gnu_ld=$lt_with_gnu_ld_CXX
20198
20199 # Flag that allows shared libraries with undefined symbols to be built.
20200 allow_undefined_flag=$lt_allow_undefined_flag_CXX
20201
20202 # Flag that enforces no undefined symbols.
20203 no_undefined_flag=$lt_no_undefined_flag_CXX
20204
20205 # Flag to hardcode \$libdir into a binary during linking.
20206 # This must work even if \$libdir does not exist
20207 hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec_CXX
20208
20209 # Whether we need a single "-rpath" flag with a separated argument.
20210 hardcode_libdir_separator=$lt_hardcode_libdir_separator_CXX
20211
20212 # Set to "yes" if using DIR/libNAME\$shared_ext during linking hardcodes
20213 # DIR into the resulting binary.
20214 hardcode_direct=$hardcode_direct_CXX
20215
20216 # Set to "yes" if using DIR/libNAME\$shared_ext during linking hardcodes
20217 # DIR into the resulting binary and the resulting library dependency is
20218 # "absolute",i.e impossible to change by setting \$shlibpath_var if the
20219 # library is relocated.
20220 hardcode_direct_absolute=$hardcode_direct_absolute_CXX
20221
20222 # Set to "yes" if using the -LDIR flag during linking hardcodes DIR
20223 # into the resulting binary.
20224 hardcode_minus_L=$hardcode_minus_L_CXX
20225
20226 # Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR
20227 # into the resulting binary.
20228 hardcode_shlibpath_var=$hardcode_shlibpath_var_CXX
20229
20230 # Set to "yes" if building a shared library automatically hardcodes DIR
20231 # into the library and all subsequent libraries and executables linked
20232 # against it.
20233 hardcode_automatic=$hardcode_automatic_CXX
20234
20235 # Set to yes if linker adds runtime paths of dependent libraries
20236 # to runtime path list.
20237 inherit_rpath=$inherit_rpath_CXX
20238
20239 # Whether libtool must link a program against all its dependency libraries.
20240 link_all_deplibs=$link_all_deplibs_CXX
20241
20242 # Set to "yes" if exported symbols are required.
20243 always_export_symbols=$always_export_symbols_CXX
20244
20245 # The commands to list exported symbols.
20246 export_symbols_cmds=$lt_export_symbols_cmds_CXX
20247
20248 # Symbols that should not be listed in the preloaded symbols.
20249 exclude_expsyms=$lt_exclude_expsyms_CXX
20250
20251 # Symbols that must always be exported.
20252 include_expsyms=$lt_include_expsyms_CXX
20253
20254 # Commands necessary for linking programs (against libraries) with templates.
20255 prelink_cmds=$lt_prelink_cmds_CXX
20256
20257 # Commands necessary for finishing linking programs.
20258 postlink_cmds=$lt_postlink_cmds_CXX
20259
20260 # Specify filename containing input files.
20261 file_list_spec=$lt_file_list_spec_CXX
20262
20263 # How to hardcode a shared library path into an executable.
20264 hardcode_action=$hardcode_action_CXX
20265
20266 # The directories searched by this compiler when creating a shared library.
20267 compiler_lib_search_dirs=$lt_compiler_lib_search_dirs_CXX
20268
20269 # Dependencies to place before and after the objects being linked to
20270 # create a shared library.
20271 predep_objects=$lt_predep_objects_CXX
20272 postdep_objects=$lt_postdep_objects_CXX
20273 predeps=$lt_predeps_CXX
20274 postdeps=$lt_postdeps_CXX
20275
20276 # The library search path used internally by the compiler when linking
20277 # a shared library.
20278 compiler_lib_search_path=$lt_compiler_lib_search_path_CXX
20279
20280 # ### END LIBTOOL TAG CONFIG: CXX
20281 _LT_EOF
20282
20283 ;;
20284
20285 esac
20286 done # for ac_tag
20287
20288
20289 as_fn_exit 0
20290 _ACEOF
20291 ac_clean_files=$ac_clean_files_save
20292
20293 test $ac_write_fail = 0 ||
20294 as_fn_error $? "write failure creating $CONFIG_STATUS" "$LINENO" 5
20295
20296
20297 # configure is writing to config.log, and then calls config.status.
20298 # config.status does its own redirection, appending to config.log.
20299 # Unfortunately, on DOS this fails, as config.log is still kept open
20300 # by configure, so config.status won't be able to write to it; its
20301 # output is simply discarded. So we exec the FD to /dev/null,
20302 # effectively closing config.log, so it can be properly (re)opened and
20303 # appended to by config.status. When coming back to configure, we
20304 # need to make the FD available again.
20305 if test "$no_create" != yes; then
20306 ac_cs_success=:
20307 ac_config_status_args=
20308 test "$silent" = yes &&
20309 ac_config_status_args="$ac_config_status_args --quiet"
20310 exec 5>/dev/null
20311 $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false
20312 exec 5>>config.log
20313 # Use ||, not &&, to avoid exiting from the if with $? = 1, which
20314 # would make configure fail if this is the last instruction.
20315 $ac_cs_success || as_fn_exit 1
20316 fi
20317 if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then
20318 { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5
20319 $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;}
20320 fi
20321
77 dnl - mpeg4ip plugin (requires mpeg4ip's libmp4v2 to be installed)
88
99 AC_PREREQ(2.50)
10 AC_INIT(faad2, 2.8.1)
10 AC_INIT(faad2, 2.8.3)
1111 AC_CONFIG_AUX_DIR(.)
1212 AM_INIT_AUTOMAKE([subdir-objects])
1313
0 #! /bin/sh
1 # depcomp - compile a program generating dependencies as side-effects
2
3 scriptversion=2016-01-11.22; # UTC
4
5 # Copyright (C) 1999-2017 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 <http://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 'write-file-hooks '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
-531
docs/libfaad.3 less more
0 .TH man 3 "15 Nov 2014" "The Debian Project" "libfaad Documentation"
1 .SH "NAME"
2 libfaad \- C library for AAC Decoding
3 .SH "SYNOPSIS"
4 .sp
5 .ft B
6 .nf
7
8 #include <neaacec\&.h>
9
10 .HP
11 .BI "char NEAACDECAPI *NeAACDecGetErrorMessage(" "" "unsigned char " errcode );
12
13 .HP
14 .B "unsigned long NEAACDECAPI NeAACDecGetCapabilities(void);"
15
16 .HP
17 .B "NeAACDecHandle NEAACDECAPI NeAACDecOpen(void);"
18
19 .HP
20 .B "NeAACDecConfigurationPtr NEAACDECAPI NeAACDecGetCurrentConfiguration("
21 .BI "NeAACDecHandle " hDecoder ");"
22
23 .HP
24 .B "unsigned char NEAACDECAPI NeAACDecSetConfiguration("
25 .BI "NeAACDecHandle " "hDecoder" ", NeAACDecConfigurationPtr " config ");"
26
27 .HP
28 /* Init the library based on info from the AAC file (ADTS/ADIF) */
29 .B "long NEAACDECAPI NeAACDecInit("
30 .BI "NeAACDecHandle " hDecoder ", unsigned char *" buffer ", unsigned long " "buffer_size" ","
31 .BI "unsigned long *" "samplerate" ", unsigned char *" "channels" ");"
32 .HP
33 /* Init the library using a DecoderSpecificInfo */
34 .B "char NEAACDECAPI NeAACDecInit2("
35 .BI "NeAACDecHandle " "hDecoder" ", unsigned char *" "pBuffer" ","
36 .BI "unsigned long " "SizeOfDecoderSpecificInfo" ","
37 .BI "unsigned long *" "samplerate" ", unsigned char *"channels" ");"
38 .HP
39 /* Init the library for DRM */
40 .B "char NEAACDECAPI NeAACDecInitDRM("
41 .BI "NeAACDecHandle *" "hDecoder" ", unsigned long " "samplerate" ", unsigned char " "channels" ");"
42 .HP
43 .B "void NEAACDECAPI NeAACDecPostSeekReset("
44 .BI "NeAACDecHandle " "hDecoder" ", long "frame" ");"
45 .HP
46 .BI "void NEAACDECAPI NeAACDecClose(NeAACDecHandle " "hDecoder" ");"
47 .HP
48 .B "void NEAACDECAPI *NeAACDecDecode("
49 .BI "NeAACDecHandle " "hDecoder" ", NeAACDecFrameInfo *" "hInfo" ","
50 .BI "unsigned char *" "buffer" ","
51 .BI "unsigned long " "buffer_size" ");"
52 .HP
53 .B "void NEAACDECAPI *NeAACDecDecode2("
54 .BI "NeAACDecHandle " "hDecoder" ", NeAACDecFrameInfo *" "hInfo" ","
55 .BI "unsigned char *" "buffer" ", unsigned long " "buffer_size" ","
56 .BI "void **" "sample_buffer" ", unsigned long " "sample_buffer_size" ");"
57 .HP
58 .B "char NEAACDECAPI NeAACDecAudioSpecificConfig("
59 .BI "unsigned char *" "pBuffer" ", unsigned long " "buffer_size" ","
60 .BI "mp4AudioSpecificConfig *" "mp4ASC" ");"
61 .PP
62 For normal use link it with the linker option \-lfaad\&.
63 .PP
64 For Digital Radio Mondiale link it with the linker option \-lfaad_drm\&.
65 .sp
66 .SH "DESCRIPTION"
67 .PP
68 .B NeAACDecGetErrorMessage
69 .PP
70 .B char NEAACDECAPI *NeAACDecGetErrorMessage(unsigned char errcode);
71 .PP
72 Convert an error code to text.
73 .PP
74 .B NeAACDecGetCapabilities
75 .PP
76 unsigned long NEAACAPI NeAACDecGetCapabilities(void);
77 .PP
78
79 .PP
80 This function returns the capabilities of the decoder in a 32 bit
81 unsigned integer.
82 The bits that are set in the 32 bit unsigned integer define with which
83 capabilities the library has been compiled.
84 .PP
85 The following capabilities are defined:
86 .PP
87 \
88 .PP
89 #define LC_DEC_CAP \ \ \ \ \ (1<<0) /* Can decode LC */
90 .PP
91 #define MAIN_DEC_CAP \ \ \ \ (1<<1) /* Can decode MAIN */
92 .PP
93 #define LTP_DEC_CAP \ \ \ \ \ (1<<2) /* Can decode LTP */
94 .PP
95 #define LD_DEC_CAP \ \ \ \ \ (1<<3) /* Can decode LD */
96 .PP
97 #define ERROR_RESILIENCE_CAP (1<<4) /* Can decode ER */
98 .PP
99 #define FIXED_POINT_CAP \ \ \ (1<<5) /* Fixed point */
100 .PP
101 .PP
102 This function can be called anytime.
103 .PP
104 .B NeAACDecOpen
105 .PP NeAACDecHandle NEAACAPI NeAACDecOpen(void);
106 .PP
107 Returns a handle to a decoder context.
108 .PP
109 .B NeAACDecClose
110 .PP void NEAACAPI NeAACDecClose(NeAACDecHandle hDecoder);
111 .PP
112 Closes a decoder context that has been opened by NeAACDecOpen.
113 .PP
114 .B NeAACDecGetCurrentConfiguration
115 .PP
116 NeAACDecConfigurationPtr NEAACAPI
117 NeAACDecGetCurrentConfiguration(NeAACDecHandle hDecoder);
118 .PP
119 Returns the current decoder library configuration.
120 .PP
121 .B NeAACDecSetConfiguration
122 .PP unsigned char NEAACAPI NeAACDecSetConfiguration(NeAACDecHandle hDecoder, NeAACDecConfigurationPtr config);
123 .PP
124 .PP
125 Sets a new configuration structure for the decoder library.
126 .PP
127 \
128 .PP
129 Return values:
130 .PP 0 \[en] Error, invalid configuration.
131 .PP 1 \[en] OK
132 .PP
133 .B NeAACDecInit
134 .PP
135 long NEAACAPI NeAACDecInit(NeAACDecHandle hDecoder, unsigned char
136 *buffer, unsigned long buffer_size, unsigned long *samplerate, unsigned
137 char *channels);
138 .PP
139 .PP
140 .PP
141 Initialises the decoder library using information from the AAC file.
142 The buffer parameter should hold a small part of the AAC file, so that
143 the initialization can be done based on the ADTS or ADIF header.
144 Buffer can also be NULL, but then default initialization parameters will
145 be used.
146 .PP
147 Return values:
148 .PP
149 < 0 \[en] Error
150 .PP
151 >= 0 \[en] Number of bytes read.
152 This amount of bytes should be skipped by the program using the decoder
153 library.
154 .PP
155 This function fills the samplerate and channels parameters with the
156 detected values.
157 .PP
158 .B NeAACDecInit2
159 .PP
160 char NEAACAPI NeAACDecInit2(NeAACDecHandle hDecoder, unsigned char
161 *pBuffer, unsigned long SizeOfDecoderSpecificInfo, unsigned long
162 *samplerate, unsigned char *channels);
163 .PP
164 Initialises the decoder library based on an AudioSpecificConfig as found
165 inside a MP4 file.
166 .PP
167 Return values:
168 .PP
169 < 0 \[en] Error
170 .PP
171 0 \- OK
172 .PP
173 This function fills the samplerate and channels parameters with the
174 detected values.
175 .PP
176 .B NeAACDecInitDRM
177 .PP
178 char NEAACDECAPI NeAACDecInitDRM(NeAACDecHandle *hDecoder, unsigned long samplerate, unsigned char channels);
179 .PP
180 Initialises the decoder library for Digital Radio Mondiale using the specified sample rate
181 and a DRM specific channel configuration.
182 .PP
183 Return values:
184 .PP
185 < 0 \[en] Error
186 .PP
187 0 \- OK
188 .PP
189 Values for the channel configuration:
190 .PP
191 #define DRMCH_MONO 1
192 .PP
193 #define DRMCH_STEREO 2
194 .PP
195 #define DRMCH_SBR_MONO 3
196 .PP
197 #define DRMCH_SBR_STEREO 4
198 .PP
199 #define DRMCH_SBR_PS_STEREO 5
200 .PP
201 .B NeAACDecDecode
202 .PP
203 void* NEAACAPI NeAACDecDecode(NeAACDecHandle hDecoder, NeAACDecFrameInfo
204 *hInfo, unsigned char *buffer, unsigned long buffer_size);
205 .PP
206 .PP
207 Decodes the AAC data passed in buffer.
208 .PP
209 Returns a pointer to a sample buffer or NULL.
210 Info about the decoded frame is filled in in the NeAACDecFrameInfo
211 structure.
212 This structure holds information about errors during decoding, number of
213 sample, number of channels and samplerate.
214 The returned buffer contains the channel interleaved samples of the
215 frame.
216 .PP
217 .B NeAACDecDecode2
218 .PP
219 void NEAACDECAPI *NeAACDecDecode2(NeAACDecHandle hDecoder,
220 NeAACDecFrameInfo *hInfo,
221 unsigned char *buffer,
222 unsigned long buffer_size,
223 void **sample_buffer,
224 unsigned long sample_buffer_size);
225
226
227
228 .PP
229 .B NeAACDecAudioSpecificConfig
230 .PP
231 char NEAACDECAPI NeAACDecAudioSpecificConfig(unsigned char *pBuffer,
232 unsigned long buffer_size,
233 mp4AudioSpecificConfig *mp4ASC);
234 .PP
235 .B Structures
236 .RS 4
237 .PP NeAACDecConfiguration
238 .RE
239 .PP
240 typedef struct NeAACDecConfiguration
241 .PP
242 {
243 .PP
244 \ \ unsigned char defObjectType;
245 .PP
246 \ \ unsigned long defSampleRate;
247 .PP
248 \ \ unsigned char outputFormat;
249 .PP
250 \ \ unsigned char downMatrix;
251 .PP
252 \ \ unsigned char useOldADTSFormat;
253 .PP
254 } NeAACDecConfiguration, *NeAACDecConfigurationPtr;
255 .PP
256
257 .PP
258 Members:
259 .PP
260 defObjectType: determines the default object type assumed when the
261 library is initialized without any data from the AAC file (eg: when NULL
262 is passed as buffer in NeAACDecInit()).
263 Can be any of the following values:
264 .PP
265 #define MAIN \ \ \ 1 /* MAIN */
266 .PP
267 #define LC \ \ \ \ 2 /* Low Complexity (default) */
268 .PP
269 #define SSR \ \ \ \ 3 /* Scalable SampleRate */
270 .PP
271 #define LTP \ \ \ \ 4 /* Long Term Predition */
272 .PP
273 #define HE_AAC \ \ 5 /* High Efficiency (SBR) */
274 .PP
275 #define ER_LC \ \ 17 /* Error Resilient Low Complexity */
276 .PP
277 #define ER_LTP \ \ 19 /* Error Resilient Long Term Prediction */
278 .PP
279 #define LD \ \ \ \ 23 /* Low Delay */
280 .PP
281 #define DRM_ER_LC 27 /* special object type for DRM only if linking with \-lfaad_drm */
282 .PP
283 defSampleRate: determines the default samplerate assumed when the
284 library is initialized.
285 Default value is 44100.
286 .PP
287 outputFormat: determines the output format returned by the decoder
288 library.
289 Can be any of the following values:
290 .PP
291 #define FAAD_FMT_16BIT \ 1 /* 16 bit integers */
292 .PP
293 #define FAAD_FMT_24BIT \ 2 /* 24 bit values packed in 32 bit integers */
294 .PP
295 #define FAAD_FMT_32BIT \ 3 /* 32 bit integers */
296 .PP
297 #define FAAD_FMT_FLOAT \ 4 /* single precision floating point */
298 .PP
299 #define FAAD_FMT_DOUBLE 5 /* double precision floating point */
300 .PP
301 downMatrix: determines whether a 5.1 channel AAC file should be
302 downmatrixed to 2 channel output (value: 1) or whether the output should
303 stay as 5.1 channels (value: 0).
304 .PP
305 useOldADTSFormat: determines whether the decoder should assume the
306 currently defined 56 bit ADTS header (value: 0) or the 58 bit ADTS
307 header (value: 1) defined in previous versions of the AAC standard.
308 This value should normally always stay at the value 0, it only exists to
309 provide playback capabilities for people that have AAC files with the
310 old header format.
311 All current encoders should output the new ADTS format.
312 NeAACDecFrameInfo\
313 .PP
314 This structure is returned after decoding a frame and provides info
315 about the decoded frame.
316 .PP
317 typedef struct NeAACDecFrameInfo
318 .PP
319 {
320 .PP
321 \ \ unsigned long bytesconsumed;
322 .PP
323 \ \ unsigned long samples;
324 .PP
325 \ \ unsigned char channels;
326 .PP
327 \ \ unsigned char error;
328 .PP
329 \ \ unsigned long samplerate;
330 .PP
331 \ \ unsigned char sbr;
332 .PP
333 \ \ unsigned char object_type;
334 .PP
335 \ \ unsigned char header_type;
336 .PP
337 \ \ unsigned char num_front_channels;
338 .PP
339 \ \ unsigned char num_side_channels;
340 .PP
341 \ \ unsigned char num_back_channels;
342 .PP
343 \ \ unsigned char num_lfe_channels;
344 .PP
345 \ \ unsigned char channel_position[64];
346 .PP
347 \ \ unsigned char ps;
348 .PP
349 } NeAACDecFrameInfo;
350 .PP
351 \
352 .PP
353 Members:
354 .PP
355 bytesconsumed: the number of bytes consumed for decoding this frame.
356 .PP
357 samples: the number of audio samples in this frame.
358 Each channel is counted separately.
359 So when a single channel has 1024 samples and the file has 2 channels,
360 this value will be 2*1024 = 2048.
361 .PP
362 channels: number of audio channels in this frame
363 .PP
364 error: contains an error value if an error occurred, 0 otherwise.
365 .PP
366 samplerate: the samplerate of the frame.
367 .PP
368 sbr: tells wether sbr is used in this file or not.
369 Can contain any of the following values:
370 .PP
371 #define NO_SBR \ \ \ \ \ 0 /* no SBR used in this file */
372 .PP
373 #define SBR_UPSAMPLED \ \ 1 /* upsampled SBR used */
374 .PP
375 #define SBR_DOWNSAMPLED \ 2 /* downsampled SBR used */
376 .PP
377 #define NO_SBR_UPSAMPLED 3 /* no SBR used, but file is upsampled by a
378 factor 2 anyway */
379 .PP
380 object_type: contains the object type of the AAC file.
381 Can be any of the values as defined in 1.9.1.
382 .PP
383 header_type: contains the header type of the file that is being decoded.
384 Can contain any of the following values:
385 .PP
386 #define RAW \ \ \ \ 0 /* No header */
387 .PP
388 #define ADIF \ \ \ 1 /* single ADIF header at the beginning of the
389 file */
390 .PP
391 #define ADTS \ \ \ 2 /* ADTS header at the beginning of each frame */
392 .PP
393 num_front_channels, num_side_channels, num_back_channels,
394 num_lfe_channels: each of these values contain the number of channels of
395 a certain type.
396 .PP
397 channel_position[64]: contains the position of each of the channels that
398 is returned by the frame decode function.
399 Can contain any of the following values:
400 .PP
401 #define FRONT_CHANNEL_CENTER (1)
402 .PP
403 #define FRONT_CHANNEL_LEFT \ (2)
404 .PP
405 #define FRONT_CHANNEL_RIGHT \ (3)
406 .PP
407 #define SIDE_CHANNEL_LEFT \ \ (4)
408 .PP
409 #define SIDE_CHANNEL_RIGHT \ (5)
410 .PP
411 #define BACK_CHANNEL_LEFT \ \ (6)
412 .PP
413 #define BACK_CHANNEL_RIGHT \ (7)
414 .PP
415 #define BACK_CHANNEL_CENTER \ (8)
416 .PP
417 #define LFE_CHANNEL \ \ \ \ \ (9)
418 .PP
419 #define UNKNOWN_CHANNEL \ \ \ (0)
420 .PP
421 ps: PS not used (0) or used (1).
422 API usage\
423 .PP
424 The following pseudo\-code describes how and in which order to use the
425 different library functions.
426 .PP
427 \
428 .PP
429 unsigned long cap = NeAACDecGetCapabilities();
430 .PP
431 // Check if decoder has the needed capabilities
432 .PP
433 \
434 .PP
435 // Open the library
436 .PP
437 NeAACDecHandle hAac = NeAACDecOpen();
438 .PP
439 \
440 .PP
441 // Get the current config
442 .PP
443 NeAACDecConfigurationPtr conf = NeAACDecGetCurrentConfiguration(hAac);
444 .PP
445 \
446 .PP
447 //
448 .PP
449 // If needed change some of the values in conf
450 .PP
451 //
452 .PP
453 \
454 .PP
455 // Set the new configuration
456 .PP
457 NeAACDecSetConfiguration(hAac, conf);
458 .PP
459 .PP
460 // Initialise the library using one of the initialization functions
461 .PP
462 char err = NeAACDecInit2(hAac, asc, asc_size, &samplerate, &channels);
463 .PP
464 if (err != 0)
465 .PP
466 {
467 .PP
468 \ //
469 .PP
470 \ // Handle error
471 .PP
472 \ //
473 .PP
474 }
475 .PP
476 \
477 .PP
478 // Loop until decoding finished
479 .PP
480 do {
481 .PP
482 \ //
483 .PP
484 \ // Put next frame in buffer
485 .PP
486 \ //
487 .PP
488 \
489 .PP
490 \ // Decode the frame in buffer
491 .PP
492 \ \ \ \ samplebuffer = NeAACDecDecode(hAac, &hInfo, buffer,
493 .PP
494 buffer_size);
495 .PP
496 \
497 .PP
498 if ((hInfo.error == 0) && (hInfo.samples > 0))
499 .PP
500 {
501 .PP
502 \ //
503 .PP
504 \ // do what you need to do with the decoded samples
505 .PP
506 \ //
507 .PP
508 } else if (hInfo.error != 0) {
509 .PP
510 \ //
511 .PP
512 \ // Some error occurred while decoding this frame
513 .PP
514 \ //
515 .PP
516 }
517 .PP
518 } while (more data available);
519 .PP
520 \
521 .PP
522 NeAACDecClose(hAac);
523 .SH "SEE ALSO"
524 .PP
525 \fBlibfaad_drm\fR(3),
526 \fBlibfaac\fR(3)\&.
527 .SH "AUTHOR"
528 .PP
529 Menno Bakker <mbakker@nero.com>
530 .PP Man Page by Julian Cable <jcable@users.sf.net>
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.8.3
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
00 bin_PROGRAMS = faad
1 man1_MANS = faad.man
1 dist_man1_MANS = faad.man
22
3 AM_CPPFLAGS = -I$(top_srcdir)/include -I$(top_srcdir)/common/mp4ff
3 AM_CPPFLAGS = -I$(top_srcdir)/include
44
5 faad_LDADD = $(top_builddir)/libfaad/libfaad.la \
6 $(top_builddir)/common/mp4ff/libmp4ff.a
5 faad_LDADD = $(top_builddir)/libfaad/libfaad.la
76
8 faad_SOURCES = main.c audio.c audio.h
7 faad_SOURCES = main.c audio.c audio.h mp4read.c mp4read.h
8
9 EXTRA_faad_SOURCES = getopt.c
0 # Makefile.in generated by automake 1.15.1 from Makefile.am.
1 # @configure_input@
2
3 # Copyright (C) 1994-2017 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 = main.$(OBJEXT) audio.$(OBJEXT) mp4read.$(OBJEXT)
104 faad_OBJECTS = $(am_faad_OBJECTS)
105 faad_DEPENDENCIES = $(top_builddir)/libfaad/libfaad.la
106 AM_V_lt = $(am__v_lt_@AM_V@)
107 am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
108 am__v_lt_0 = --silent
109 am__v_lt_1 =
110 AM_V_P = $(am__v_P_@AM_V@)
111 am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
112 am__v_P_0 = false
113 am__v_P_1 = :
114 AM_V_GEN = $(am__v_GEN_@AM_V@)
115 am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
116 am__v_GEN_0 = @echo " GEN " $@;
117 am__v_GEN_1 =
118 AM_V_at = $(am__v_at_@AM_V@)
119 am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
120 am__v_at_0 = @
121 am__v_at_1 =
122 DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
123 depcomp = $(SHELL) $(top_srcdir)/depcomp
124 am__depfiles_maybe = depfiles
125 am__mv = mv -f
126 COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
127 $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
128 LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
129 $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \
130 $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
131 $(AM_CFLAGS) $(CFLAGS)
132 AM_V_CC = $(am__v_CC_@AM_V@)
133 am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@)
134 am__v_CC_0 = @echo " CC " $@;
135 am__v_CC_1 =
136 CCLD = $(CC)
137 LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
138 $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
139 $(AM_LDFLAGS) $(LDFLAGS) -o $@
140 AM_V_CCLD = $(am__v_CCLD_@AM_V@)
141 am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@)
142 am__v_CCLD_0 = @echo " CCLD " $@;
143 am__v_CCLD_1 =
144 SOURCES = $(faad_SOURCES) $(EXTRA_faad_SOURCES)
145 DIST_SOURCES = $(faad_SOURCES) $(EXTRA_faad_SOURCES)
146 am__can_run_installinfo = \
147 case $$AM_UPDATE_INFO_DIR in \
148 n|no|NO) false;; \
149 *) (install-info --version) >/dev/null 2>&1;; \
150 esac
151 am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
152 am__vpath_adj = case $$p in \
153 $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
154 *) f=$$p;; \
155 esac;
156 am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
157 am__install_max = 40
158 am__nobase_strip_setup = \
159 srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
160 am__nobase_strip = \
161 for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
162 am__nobase_list = $(am__nobase_strip_setup); \
163 for p in $$list; do echo "$$p $$p"; done | \
164 sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
165 $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
166 if (++n[$$2] == $(am__install_max)) \
167 { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
168 END { for (dir in files) print dir, files[dir] }'
169 am__base_list = \
170 sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
171 sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
172 am__uninstall_files_from_dir = { \
173 test -z "$$files" \
174 || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
175 || { echo " ( cd '$$dir' && rm -f" $$files ")"; \
176 $(am__cd) "$$dir" && rm -f $$files; }; \
177 }
178 man1dir = $(mandir)/man1
179 NROFF = nroff
180 MANS = $(dist_man1_MANS)
181 am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
182 # Read a list of newline-separated strings from the standard input,
183 # and print each of them once, without duplicates. Input order is
184 # *not* preserved.
185 am__uniquify_input = $(AWK) '\
186 BEGIN { nonempty = 0; } \
187 { items[$$0] = 1; nonempty = 1; } \
188 END { if (nonempty) { for (i in items) print i; }; } \
189 '
190 # Make sure the list of sources is unique. This is necessary because,
191 # e.g., the same source file might be shared among _SOURCES variables
192 # for different programs/libraries.
193 am__define_uniq_tagged_files = \
194 list='$(am__tagged_files)'; \
195 unique=`for i in $$list; do \
196 if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
197 done | $(am__uniquify_input)`
198 ETAGS = etags
199 CTAGS = ctags
200 am__DIST_COMMON = $(dist_man1_MANS) $(srcdir)/Makefile.in \
201 $(top_srcdir)/depcomp
202 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
203 ACLOCAL = @ACLOCAL@
204 AMTAR = @AMTAR@
205 AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
206 AR = @AR@
207 AUTOCONF = @AUTOCONF@
208 AUTOHEADER = @AUTOHEADER@
209 AUTOMAKE = @AUTOMAKE@
210 AWK = @AWK@
211 CC = @CC@
212 CCDEPMODE = @CCDEPMODE@
213 CFLAGS = @CFLAGS@
214 CPP = @CPP@
215 CPPFLAGS = @CPPFLAGS@
216 CXX = @CXX@
217 CXXCPP = @CXXCPP@
218 CXXDEPMODE = @CXXDEPMODE@
219 CXXFLAGS = @CXXFLAGS@
220 CYGPATH_W = @CYGPATH_W@
221 DEFS = @DEFS@
222 DEPDIR = @DEPDIR@
223 DLLTOOL = @DLLTOOL@
224 DSYMUTIL = @DSYMUTIL@
225 DUMPBIN = @DUMPBIN@
226 ECHO_C = @ECHO_C@
227 ECHO_N = @ECHO_N@
228 ECHO_T = @ECHO_T@
229 EGREP = @EGREP@
230 EXEEXT = @EXEEXT@
231 FGREP = @FGREP@
232 GREP = @GREP@
233 GTK_CONFIG = @GTK_CONFIG@
234 INSTALL = @INSTALL@
235 INSTALL_DATA = @INSTALL_DATA@
236 INSTALL_PROGRAM = @INSTALL_PROGRAM@
237 INSTALL_SCRIPT = @INSTALL_SCRIPT@
238 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
239 LD = @LD@
240 LDFLAGS = @LDFLAGS@
241 LIBOBJS = @LIBOBJS@
242 LIBS = @LIBS@
243 LIBTOOL = @LIBTOOL@
244 LIBTOOL_DEPS = @LIBTOOL_DEPS@
245 LIPO = @LIPO@
246 LN_S = @LN_S@
247 LTLIBOBJS = @LTLIBOBJS@
248 LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
249 MAKEINFO = @MAKEINFO@
250 MANIFEST_TOOL = @MANIFEST_TOOL@
251 MKDIR_P = @MKDIR_P@
252 MP4FF_LIBS = @MP4FF_LIBS@
253 NM = @NM@
254 NMEDIT = @NMEDIT@
255 OBJDUMP = @OBJDUMP@
256 OBJEXT = @OBJEXT@
257 OTOOL = @OTOOL@
258 OTOOL64 = @OTOOL64@
259 PACKAGE = @PACKAGE@
260 PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
261 PACKAGE_NAME = @PACKAGE_NAME@
262 PACKAGE_STRING = @PACKAGE_STRING@
263 PACKAGE_TARNAME = @PACKAGE_TARNAME@
264 PACKAGE_URL = @PACKAGE_URL@
265 PACKAGE_VERSION = @PACKAGE_VERSION@
266 PATH_SEPARATOR = @PATH_SEPARATOR@
267 RANLIB = @RANLIB@
268 RPMBUILD = @RPMBUILD@
269 SED = @SED@
270 SET_MAKE = @SET_MAKE@
271 SHELL = @SHELL@
272 STRIP = @STRIP@
273 VERSION = @VERSION@
274 XMMS_CONFIG = @XMMS_CONFIG@
275 abs_builddir = @abs_builddir@
276 abs_srcdir = @abs_srcdir@
277 abs_top_builddir = @abs_top_builddir@
278 abs_top_srcdir = @abs_top_srcdir@
279 ac_ct_AR = @ac_ct_AR@
280 ac_ct_CC = @ac_ct_CC@
281 ac_ct_CXX = @ac_ct_CXX@
282 ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
283 am__include = @am__include@
284 am__leading_dot = @am__leading_dot@
285 am__quote = @am__quote@
286 am__tar = @am__tar@
287 am__untar = @am__untar@
288 bindir = @bindir@
289 build = @build@
290 build_alias = @build_alias@
291 build_cpu = @build_cpu@
292 build_os = @build_os@
293 build_vendor = @build_vendor@
294 builddir = @builddir@
295 datadir = @datadir@
296 datarootdir = @datarootdir@
297 docdir = @docdir@
298 dvidir = @dvidir@
299 exec_prefix = @exec_prefix@
300 external_mp4v2 = @external_mp4v2@
301 host = @host@
302 host_alias = @host_alias@
303 host_cpu = @host_cpu@
304 host_os = @host_os@
305 host_vendor = @host_vendor@
306 htmldir = @htmldir@
307 includedir = @includedir@
308 infodir = @infodir@
309 install_sh = @install_sh@
310 libdir = @libdir@
311 libexecdir = @libexecdir@
312 localedir = @localedir@
313 localstatedir = @localstatedir@
314 mandir = @mandir@
315 mkdir_p = @mkdir_p@
316 oldincludedir = @oldincludedir@
317 pdfdir = @pdfdir@
318 prefix = @prefix@
319 program_transform_name = @program_transform_name@
320 psdir = @psdir@
321 runstatedir = @runstatedir@
322 sbindir = @sbindir@
323 sharedstatedir = @sharedstatedir@
324 srcdir = @srcdir@
325 sysconfdir = @sysconfdir@
326 target_alias = @target_alias@
327 top_build_prefix = @top_build_prefix@
328 top_builddir = @top_builddir@
329 top_srcdir = @top_srcdir@
330 dist_man1_MANS = faad.man
331 AM_CPPFLAGS = -I$(top_srcdir)/include
332 faad_LDADD = $(top_builddir)/libfaad/libfaad.la
333 faad_SOURCES = main.c audio.c audio.h mp4read.c mp4read.h
334 EXTRA_faad_SOURCES = getopt.c
335 all: all-am
336
337 .SUFFIXES:
338 .SUFFIXES: .c .lo .o .obj
339 $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
340 @for dep in $?; do \
341 case '$(am__configure_deps)' in \
342 *$$dep*) \
343 ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
344 && { if test -f $@; then exit 0; else break; fi; }; \
345 exit 1;; \
346 esac; \
347 done; \
348 echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu frontend/Makefile'; \
349 $(am__cd) $(top_srcdir) && \
350 $(AUTOMAKE) --gnu frontend/Makefile
351 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
352 @case '$?' in \
353 *config.status*) \
354 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
355 *) \
356 echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
357 cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
358 esac;
359
360 $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
361 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
362
363 $(top_srcdir)/configure: $(am__configure_deps)
364 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
365 $(ACLOCAL_M4): $(am__aclocal_m4_deps)
366 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
367 $(am__aclocal_m4_deps):
368 install-binPROGRAMS: $(bin_PROGRAMS)
369 @$(NORMAL_INSTALL)
370 @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
371 if test -n "$$list"; then \
372 echo " $(MKDIR_P) '$(DESTDIR)$(bindir)'"; \
373 $(MKDIR_P) "$(DESTDIR)$(bindir)" || exit 1; \
374 fi; \
375 for p in $$list; do echo "$$p $$p"; done | \
376 sed 's/$(EXEEXT)$$//' | \
377 while read p p1; do if test -f $$p \
378 || test -f $$p1 \
379 ; then echo "$$p"; echo "$$p"; else :; fi; \
380 done | \
381 sed -e 'p;s,.*/,,;n;h' \
382 -e 's|.*|.|' \
383 -e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \
384 sed 'N;N;N;s,\n, ,g' | \
385 $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \
386 { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \
387 if ($$2 == $$4) files[d] = files[d] " " $$1; \
388 else { print "f", $$3 "/" $$4, $$1; } } \
389 END { for (d in files) print "f", d, files[d] }' | \
390 while read type dir files; do \
391 if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \
392 test -z "$$files" || { \
393 echo " $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files '$(DESTDIR)$(bindir)$$dir'"; \
394 $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(bindir)$$dir" || exit $$?; \
395 } \
396 ; done
397
398 uninstall-binPROGRAMS:
399 @$(NORMAL_UNINSTALL)
400 @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
401 files=`for p in $$list; do echo "$$p"; done | \
402 sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \
403 -e 's/$$/$(EXEEXT)/' \
404 `; \
405 test -n "$$list" || exit 0; \
406 echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \
407 cd "$(DESTDIR)$(bindir)" && rm -f $$files
408
409 clean-binPROGRAMS:
410 @list='$(bin_PROGRAMS)'; test -n "$$list" || exit 0; \
411 echo " rm -f" $$list; \
412 rm -f $$list || exit $$?; \
413 test -n "$(EXEEXT)" || exit 0; \
414 list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \
415 echo " rm -f" $$list; \
416 rm -f $$list
417
418 faad$(EXEEXT): $(faad_OBJECTS) $(faad_DEPENDENCIES) $(EXTRA_faad_DEPENDENCIES)
419 @rm -f faad$(EXEEXT)
420 $(AM_V_CCLD)$(LINK) $(faad_OBJECTS) $(faad_LDADD) $(LIBS)
421
422 mostlyclean-compile:
423 -rm -f *.$(OBJEXT)
424
425 distclean-compile:
426 -rm -f *.tab.c
427
428 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/audio.Po@am__quote@
429 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/getopt.Po@am__quote@
430 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/main.Po@am__quote@
431 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mp4read.Po@am__quote@
432
433 .c.o:
434 @am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\
435 @am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\
436 @am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po
437 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
438 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
439 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $<
440
441 .c.obj:
442 @am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.obj$$||'`;\
443 @am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ `$(CYGPATH_W) '$<'` &&\
444 @am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po
445 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
446 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
447 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
448
449 .c.lo:
450 @am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.lo$$||'`;\
451 @am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\
452 @am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Plo
453 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
454 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
455 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $<
456
457 mostlyclean-libtool:
458 -rm -f *.lo
459
460 clean-libtool:
461 -rm -rf .libs _libs
462 install-man1: $(dist_man1_MANS)
463 @$(NORMAL_INSTALL)
464 @list1='$(dist_man1_MANS)'; \
465 list2=''; \
466 test -n "$(man1dir)" \
467 && test -n "`echo $$list1$$list2`" \
468 || exit 0; \
469 echo " $(MKDIR_P) '$(DESTDIR)$(man1dir)'"; \
470 $(MKDIR_P) "$(DESTDIR)$(man1dir)" || exit 1; \
471 { for i in $$list1; do echo "$$i"; done; \
472 if test -n "$$list2"; then \
473 for i in $$list2; do echo "$$i"; done \
474 | sed -n '/\.1[a-z]*$$/p'; \
475 fi; \
476 } | while read p; do \
477 if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
478 echo "$$d$$p"; echo "$$p"; \
479 done | \
480 sed -e 'n;s,.*/,,;p;h;s,.*\.,,;s,^[^1][0-9a-z]*$$,1,;x' \
481 -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,' | \
482 sed 'N;N;s,\n, ,g' | { \
483 list=; while read file base inst; do \
484 if test "$$base" = "$$inst"; then list="$$list $$file"; else \
485 echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man1dir)/$$inst'"; \
486 $(INSTALL_DATA) "$$file" "$(DESTDIR)$(man1dir)/$$inst" || exit $$?; \
487 fi; \
488 done; \
489 for i in $$list; do echo "$$i"; done | $(am__base_list) | \
490 while read files; do \
491 test -z "$$files" || { \
492 echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(man1dir)'"; \
493 $(INSTALL_DATA) $$files "$(DESTDIR)$(man1dir)" || exit $$?; }; \
494 done; }
495
496 uninstall-man1:
497 @$(NORMAL_UNINSTALL)
498 @list='$(dist_man1_MANS)'; test -n "$(man1dir)" || exit 0; \
499 files=`{ for i in $$list; do echo "$$i"; done; \
500 } | sed -e 's,.*/,,;h;s,.*\.,,;s,^[^1][0-9a-z]*$$,1,;x' \
501 -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \
502 dir='$(DESTDIR)$(man1dir)'; $(am__uninstall_files_from_dir)
503
504 ID: $(am__tagged_files)
505 $(am__define_uniq_tagged_files); mkid -fID $$unique
506 tags: tags-am
507 TAGS: tags
508
509 tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
510 set x; \
511 here=`pwd`; \
512 $(am__define_uniq_tagged_files); \
513 shift; \
514 if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
515 test -n "$$unique" || unique=$$empty_fix; \
516 if test $$# -gt 0; then \
517 $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
518 "$$@" $$unique; \
519 else \
520 $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
521 $$unique; \
522 fi; \
523 fi
524 ctags: ctags-am
525
526 CTAGS: ctags
527 ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
528 $(am__define_uniq_tagged_files); \
529 test -z "$(CTAGS_ARGS)$$unique" \
530 || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
531 $$unique
532
533 GTAGS:
534 here=`$(am__cd) $(top_builddir) && pwd` \
535 && $(am__cd) $(top_srcdir) \
536 && gtags -i $(GTAGS_ARGS) "$$here"
537 cscopelist: cscopelist-am
538
539 cscopelist-am: $(am__tagged_files)
540 list='$(am__tagged_files)'; \
541 case "$(srcdir)" in \
542 [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
543 *) sdir=$(subdir)/$(srcdir) ;; \
544 esac; \
545 for i in $$list; do \
546 if test -f "$$i"; then \
547 echo "$(subdir)/$$i"; \
548 else \
549 echo "$$sdir/$$i"; \
550 fi; \
551 done >> $(top_builddir)/cscope.files
552
553 distclean-tags:
554 -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
555
556 distdir: $(DISTFILES)
557 @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
558 topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
559 list='$(DISTFILES)'; \
560 dist_files=`for file in $$list; do echo $$file; done | \
561 sed -e "s|^$$srcdirstrip/||;t" \
562 -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
563 case $$dist_files in \
564 */*) $(MKDIR_P) `echo "$$dist_files" | \
565 sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
566 sort -u` ;; \
567 esac; \
568 for file in $$dist_files; do \
569 if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
570 if test -d $$d/$$file; then \
571 dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
572 if test -d "$(distdir)/$$file"; then \
573 find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
574 fi; \
575 if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
576 cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
577 find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
578 fi; \
579 cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
580 else \
581 test -f "$(distdir)/$$file" \
582 || cp -p $$d/$$file "$(distdir)/$$file" \
583 || exit 1; \
584 fi; \
585 done
586 check-am: all-am
587 check: check-am
588 all-am: Makefile $(PROGRAMS) $(MANS)
589 installdirs:
590 for dir in "$(DESTDIR)$(bindir)" "$(DESTDIR)$(man1dir)"; do \
591 test -z "$$dir" || $(MKDIR_P) "$$dir"; \
592 done
593 install: install-am
594 install-exec: install-exec-am
595 install-data: install-data-am
596 uninstall: uninstall-am
597
598 install-am: all-am
599 @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
600
601 installcheck: installcheck-am
602 install-strip:
603 if test -z '$(STRIP)'; then \
604 $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
605 install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
606 install; \
607 else \
608 $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
609 install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
610 "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
611 fi
612 mostlyclean-generic:
613
614 clean-generic:
615
616 distclean-generic:
617 -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
618 -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
619
620 maintainer-clean-generic:
621 @echo "This command is intended for maintainers to use"
622 @echo "it deletes files that may require special tools to rebuild."
623 clean: clean-am
624
625 clean-am: clean-binPROGRAMS clean-generic clean-libtool mostlyclean-am
626
627 distclean: distclean-am
628 -rm -rf ./$(DEPDIR)
629 -rm -f Makefile
630 distclean-am: clean-am distclean-compile distclean-generic \
631 distclean-tags
632
633 dvi: dvi-am
634
635 dvi-am:
636
637 html: html-am
638
639 html-am:
640
641 info: info-am
642
643 info-am:
644
645 install-data-am: install-man
646
647 install-dvi: install-dvi-am
648
649 install-dvi-am:
650
651 install-exec-am: install-binPROGRAMS
652
653 install-html: install-html-am
654
655 install-html-am:
656
657 install-info: install-info-am
658
659 install-info-am:
660
661 install-man: install-man1
662
663 install-pdf: install-pdf-am
664
665 install-pdf-am:
666
667 install-ps: install-ps-am
668
669 install-ps-am:
670
671 installcheck-am:
672
673 maintainer-clean: maintainer-clean-am
674 -rm -rf ./$(DEPDIR)
675 -rm -f Makefile
676 maintainer-clean-am: distclean-am maintainer-clean-generic
677
678 mostlyclean: mostlyclean-am
679
680 mostlyclean-am: mostlyclean-compile mostlyclean-generic \
681 mostlyclean-libtool
682
683 pdf: pdf-am
684
685 pdf-am:
686
687 ps: ps-am
688
689 ps-am:
690
691 uninstall-am: uninstall-binPROGRAMS uninstall-man
692
693 uninstall-man: uninstall-man1
694
695 .MAKE: install-am install-strip
696
697 .PHONY: CTAGS GTAGS TAGS all all-am check check-am clean \
698 clean-binPROGRAMS clean-generic clean-libtool cscopelist-am \
699 ctags ctags-am distclean distclean-compile distclean-generic \
700 distclean-libtool distclean-tags distdir dvi dvi-am html \
701 html-am info info-am install install-am install-binPROGRAMS \
702 install-data install-data-am install-dvi install-dvi-am \
703 install-exec install-exec-am install-html install-html-am \
704 install-info install-info-am install-man install-man1 \
705 install-pdf install-pdf-am install-ps install-ps-am \
706 install-strip installcheck installcheck-am installdirs \
707 maintainer-clean maintainer-clean-generic mostlyclean \
708 mostlyclean-compile mostlyclean-generic mostlyclean-libtool \
709 pdf pdf-am ps ps-am tags tags-am uninstall uninstall-am \
710 uninstall-binPROGRAMS uninstall-man uninstall-man1
711
712 .PRECIOUS: Makefile
713
714
715 # Tell versions [3.59,3.63) of GNU make to not export all variables.
716 # Otherwise a system limit (for SysV at least) may be exceeded.
717 .NOEXPORT:
+0
-36
frontend/faad.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}") = "faad", "faad.vcproj", "{2BD8CBB3-DFC9-4A6A-9B7A-07ED749BED58}"
4 ProjectSection(ProjectDependencies) = postProject
5 {F470BB4A-7675-4D6A-B310-41F33AC6F987} = {F470BB4A-7675-4D6A-B310-41F33AC6F987}
6 {BC3EFE27-9015-4C9C-AD3C-72B3B7ED2114} = {BC3EFE27-9015-4C9C-AD3C-72B3B7ED2114}
7 EndProjectSection
8 EndProject
9 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libfaad", "..\libfaad\libfaad.vcproj", "{BC3EFE27-9015-4C9C-AD3C-72B3B7ED2114}"
10 EndProject
11 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mp4ff", "..\common\mp4ff\mp4ff.vcproj", "{F470BB4A-7675-4D6A-B310-41F33AC6F987}"
12 EndProject
13 Global
14 GlobalSection(SolutionConfigurationPlatforms) = preSolution
15 Debug|Win32 = Debug|Win32
16 Release|Win32 = Release|Win32
17 EndGlobalSection
18 GlobalSection(ProjectConfigurationPlatforms) = postSolution
19 {2BD8CBB3-DFC9-4A6A-9B7A-07ED749BED58}.Debug|Win32.ActiveCfg = Debug|Win32
20 {2BD8CBB3-DFC9-4A6A-9B7A-07ED749BED58}.Debug|Win32.Build.0 = Debug|Win32
21 {2BD8CBB3-DFC9-4A6A-9B7A-07ED749BED58}.Release|Win32.ActiveCfg = Release|Win32
22 {2BD8CBB3-DFC9-4A6A-9B7A-07ED749BED58}.Release|Win32.Build.0 = Release|Win32
23 {BC3EFE27-9015-4C9C-AD3C-72B3B7ED2114}.Debug|Win32.ActiveCfg = Debug|Win32
24 {BC3EFE27-9015-4C9C-AD3C-72B3B7ED2114}.Debug|Win32.Build.0 = Debug|Win32
25 {BC3EFE27-9015-4C9C-AD3C-72B3B7ED2114}.Release|Win32.ActiveCfg = Release|Win32
26 {BC3EFE27-9015-4C9C-AD3C-72B3B7ED2114}.Release|Win32.Build.0 = Release|Win32
27 {F470BB4A-7675-4D6A-B310-41F33AC6F987}.Debug|Win32.ActiveCfg = Debug|Win32
28 {F470BB4A-7675-4D6A-B310-41F33AC6F987}.Debug|Win32.Build.0 = Debug|Win32
29 {F470BB4A-7675-4D6A-B310-41F33AC6F987}.Release|Win32.ActiveCfg = Release|Win32
30 {F470BB4A-7675-4D6A-B310-41F33AC6F987}.Release|Win32.Build.0 = Release|Win32
31 EndGlobalSection
32 GlobalSection(SolutionProperties) = preSolution
33 HideSolutionNode = FALSE
34 EndGlobalSection
35 EndGlobal
+0
-256
frontend/faad.vcproj less more
0 <?xml version="1.0" encoding="Windows-1252"?>
1 <VisualStudioProject
2 ProjectType="Visual C++"
3 Version="8.00"
4 Name="faad"
5 ProjectGUID="{2BD8CBB3-DFC9-4A6A-9B7A-07ED749BED58}"
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="1"
20 InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
21 UseOfMFC="0"
22 ATLMinimizesCRunTimeLibraryUsage="false"
23 CharacterSet="2"
24 >
25 <Tool
26 Name="VCPreBuildEventTool"
27 />
28 <Tool
29 Name="VCCustomBuildTool"
30 />
31 <Tool
32 Name="VCXMLDataGeneratorTool"
33 />
34 <Tool
35 Name="VCWebServiceProxyGeneratorTool"
36 />
37 <Tool
38 Name="VCMIDLTool"
39 TypeLibraryName=".\Debug/faad.tlb"
40 />
41 <Tool
42 Name="VCCLCompilerTool"
43 AdditionalOptions=""
44 Optimization="0"
45 AdditionalIncludeDirectories="../include,../common/mp4ff,../common/faad"
46 PreprocessorDefinitions="WIN32,_DEBUG,_CONSOLE"
47 BasicRuntimeChecks="3"
48 RuntimeLibrary="3"
49 UsePrecompiledHeader="0"
50 PrecompiledHeaderFile=".\Debug/faad.pch"
51 AssemblerListingLocation=".\Debug/"
52 ObjectFile=".\Debug/"
53 ProgramDataBaseFileName=".\Debug/"
54 WarningLevel="3"
55 SuppressStartupBanner="true"
56 DebugInformationFormat="4"
57 CompileAs="0"
58 />
59 <Tool
60 Name="VCManagedResourceCompilerTool"
61 />
62 <Tool
63 Name="VCResourceCompilerTool"
64 PreprocessorDefinitions="_DEBUG"
65 Culture="1043"
66 />
67 <Tool
68 Name="VCPreLinkEventTool"
69 />
70 <Tool
71 Name="VCLinkerTool"
72 AdditionalOptions="/MACHINE:I386"
73 AdditionalDependencies="ws2_32.lib odbc32.lib odbccp32.lib Advapi32.lib"
74 OutputFile=".\Debug/faad.exe"
75 LinkIncremental="2"
76 SuppressStartupBanner="true"
77 GenerateDebugInformation="true"
78 ProgramDatabaseFile=".\Debug/faad.pdb"
79 SubSystem="1"
80 />
81 <Tool
82 Name="VCALinkTool"
83 />
84 <Tool
85 Name="VCManifestTool"
86 />
87 <Tool
88 Name="VCXDCMakeTool"
89 />
90 <Tool
91 Name="VCBscMakeTool"
92 />
93 <Tool
94 Name="VCFxCopTool"
95 />
96 <Tool
97 Name="VCAppVerifierTool"
98 />
99 <Tool
100 Name="VCWebDeploymentTool"
101 />
102 <Tool
103 Name="VCPostBuildEventTool"
104 />
105 </Configuration>
106 <Configuration
107 Name="Release|Win32"
108 OutputDirectory=".\Release"
109 IntermediateDirectory=".\Release"
110 ConfigurationType="1"
111 InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
112 UseOfMFC="0"
113 ATLMinimizesCRunTimeLibraryUsage="false"
114 CharacterSet="2"
115 >
116 <Tool
117 Name="VCPreBuildEventTool"
118 />
119 <Tool
120 Name="VCCustomBuildTool"
121 />
122 <Tool
123 Name="VCXMLDataGeneratorTool"
124 />
125 <Tool
126 Name="VCWebServiceProxyGeneratorTool"
127 />
128 <Tool
129 Name="VCMIDLTool"
130 TypeLibraryName=".\Release/faad.tlb"
131 />
132 <Tool
133 Name="VCCLCompilerTool"
134 AdditionalOptions=""
135 Optimization="1"
136 InlineFunctionExpansion="1"
137 EnableIntrinsicFunctions="true"
138 FavorSizeOrSpeed="1"
139 AdditionalIncludeDirectories="../include,../common/mp4ff,../common/faad"
140 PreprocessorDefinitions="WIN32,NDEBUG,_CONSOLE"
141 StringPooling="true"
142 RuntimeLibrary="2"
143 EnableFunctionLevelLinking="true"
144 UsePrecompiledHeader="0"
145 PrecompiledHeaderFile=".\Release/faad.pch"
146 AssemblerListingLocation=".\Release/"
147 ObjectFile=".\Release/"
148 ProgramDataBaseFileName=".\Release/"
149 WarningLevel="3"
150 SuppressStartupBanner="true"
151 CompileAs="0"
152 />
153 <Tool
154 Name="VCManagedResourceCompilerTool"
155 />
156 <Tool
157 Name="VCResourceCompilerTool"
158 PreprocessorDefinitions="NDEBUG"
159 Culture="1043"
160 />
161 <Tool
162 Name="VCPreLinkEventTool"
163 />
164 <Tool
165 Name="VCLinkerTool"
166 AdditionalOptions="/MACHINE:I386"
167 AdditionalDependencies="ws2_32.lib Advapi32.lib"
168 OutputFile=".\Release/faad.exe"
169 LinkIncremental="1"
170 SuppressStartupBanner="true"
171 SubSystem="1"
172 />
173 <Tool
174 Name="VCALinkTool"
175 />
176 <Tool
177 Name="VCManifestTool"
178 />
179 <Tool
180 Name="VCXDCMakeTool"
181 />
182 <Tool
183 Name="VCBscMakeTool"
184 />
185 <Tool
186 Name="VCFxCopTool"
187 />
188 <Tool
189 Name="VCAppVerifierTool"
190 />
191 <Tool
192 Name="VCWebDeploymentTool"
193 />
194 <Tool
195 Name="VCPostBuildEventTool"
196 />
197 </Configuration>
198 </Configurations>
199 <References>
200 </References>
201 <Files>
202 <Filter
203 Name="Source Files"
204 Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
205 >
206 <File
207 RelativePath=".\audio.c"
208 >
209 </File>
210 <File
211 RelativePath="..\common\faad\getopt.c"
212 >
213 </File>
214 <File
215 RelativePath=".\main.c"
216 >
217 </File>
218 </Filter>
219 <Filter
220 Name="Header Files"
221 Filter="h;hpp;hxx;hm;inl"
222 >
223 <File
224 RelativePath=".\audio.h"
225 >
226 </File>
227 <File
228 RelativePath="..\common\faad\getopt.h"
229 >
230 </File>
231 <File
232 RelativePath="..\common\mp4v2\mp4.h"
233 >
234 </File>
235 <File
236 RelativePath="..\common\mp4v2\mpeg4ip.h"
237 >
238 </File>
239 <File
240 RelativePath="..\include\neaacdec.h"
241 >
242 </File>
243 <File
244 RelativePath="..\common\mp4v2\systems.h"
245 >
246 </File>
247 <File
248 RelativePath="..\common\mp4v2\win32_ver.h"
249 >
250 </File>
251 </Filter>
252 </Files>
253 <Globals>
254 </Globals>
255 </VisualStudioProject>
171171 #if __STDC__ || defined(PROTO)
172172 extern char *getenv(const char *name);
173173 extern int strcmp (const char *s1, const char *s2);
174 extern int strncmp(const char *s1, const char *s2, unsigned int n);
175174
176175 static int my_strlen(const char *s);
177176 static char *my_index (const char *str, int chr);
+0
-130
frontend/getopt.h less more
0 /* Declarations for getopt.
1 Copyright (C) 1989, 1990, 1991, 1992, 1993 Free Software Foundation, Inc.
2
3 This program is free software; you can redistribute it and/or modify it
4 under the terms of the GNU General Public License as published by the
5 Free Software Foundation; either version 2, or (at your option) any
6 later version.
7
8 This program is distributed in the hope that it will be useful,
9 but WITHOUT ANY WARRANTY; without even the implied warranty of
10 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 GNU General Public License for more details.
12
13 You should have received a copy of the GNU General Public License
14 along with this program; if not, write to the Free Software
15 Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
16
17 #ifndef _GETOPT_H
18 #define _GETOPT_H 1
19
20 #ifdef __cplusplus
21 extern "C" {
22 #endif
23
24 #ifndef __MacOSX__
25
26 /* For communication from `getopt' to the caller.
27 When `getopt' finds an option that takes an argument,
28 the argument value is returned here.
29 Also, when `ordering' is RETURN_IN_ORDER,
30 each non-option ARGV-element is returned here. */
31
32 extern char *optarg;
33
34 /* Index in ARGV of the next element to be scanned.
35 This is used for communication to and from the caller
36 and for communication between successive calls to `getopt'.
37
38 On entry to `getopt', zero means this is the first call; initialize.
39
40 When `getopt' returns EOF, this is the index of the first of the
41 non-option elements that the caller should itself scan.
42
43 Otherwise, `optind' communicates from one call to the next
44 how much of ARGV has been scanned so far. */
45
46 extern int optind;
47
48 /* Callers store zero here to inhibit the error message `getopt' prints
49 for unrecognized options. */
50
51 extern int opterr;
52
53 /* Set to an option character which was unrecognized. */
54
55 extern int optopt;
56 #endif
57
58 /* Describe the long-named options requested by the application.
59 The LONG_OPTIONS argument to getopt_long or getopt_long_only is a vector
60 of `struct option' terminated by an element containing a name which is
61 zero.
62
63 The field `has_arg' is:
64 no_argument (or 0) if the option does not take an argument,
65 required_argument (or 1) if the option requires an argument,
66 optional_argument (or 2) if the option takes an optional argument.
67
68 If the field `flag' is not NULL, it points to a variable that is set
69 to the value given in the field `val' when the option is found, but
70 left unchanged if the option is not found.
71
72 To have a long-named option do something other than set an `int' to
73 a compiled-in constant, such as set a value from `optarg', set the
74 option's `flag' field to zero and its `val' field to a nonzero
75 value (the equivalent single-letter option character, if there is
76 one). For long options that have a zero `flag' field, `getopt'
77 returns the contents of the `val' field. */
78
79 struct option
80 {
81 #if __STDC__
82 const char *name;
83 #else
84 char *name;
85 #endif
86 /* has_arg can't be an enum because some compilers complain about
87 type mismatches in all the code that assumes it is an int. */
88 int has_arg;
89 int *flag;
90 int val;
91 };
92
93 /* Names for the values of the `has_arg' field of `struct option'. */
94
95 #define no_argument 0
96 #define required_argument 1
97 #define optional_argument 2
98
99 //#if __STDC__ || defined(PROTO)
100 #if defined(__GNU_LIBRARY__)
101 /* Many other libraries have conflicting prototypes for getopt, with
102 differences in the consts, in stdlib.h. To avoid compilation
103 errors, only prototype getopt for the GNU C library. */
104 extern int getopt (int argc, char *const *argv, const char *shortopts);
105 #endif /* not __GNU_LIBRARY__ */
106 extern int getopt_long (int argc, char *const *argv, const char *shortopts,
107 const struct option *longopts, int *longind);
108 extern int getopt_long_only (int argc, char *const *argv,
109 const char *shortopts,
110 const struct option *longopts, int *longind);
111
112 /* Internal only. Users should not call this directly. */
113 extern int _getopt_internal (int argc, char *const *argv,
114 const char *shortopts,
115 const struct option *longopts, int *longind,
116 int long_only);
117 //#else /* not __STDC__ */
118 extern int getopt (int argc, char *const *argv, const char *shortopts);
119 //extern int getopt_long ();
120 //extern int getopt_long_only ();
121
122 //extern int _getopt_internal ();
123 //#endif /* not __STDC__ */
124
125 #ifdef __cplusplus
126 }
127 #endif
128
129 #endif /* _GETOPT_H */
4949 #include <getopt.h>
5050
5151 #include <neaacdec.h>
52 #include <mp4ff.h>
5352
5453 #include "audio.h"
54 #include "mp4read.h"
5555
5656 #ifdef HAVE_GETOPT_H
5757 # include <getopt.h>
766766 return frameInfo.error;
767767 }
768768
769 static int GetAACTrack(mp4ff_t *infile)
770 {
771 /* find AAC track */
772 int i, rc;
773 int numTracks = mp4ff_total_tracks(infile);
774
775 for (i = 0; i < numTracks; i++)
776 {
777 unsigned char *buff = NULL;
778 int buff_size = 0;
779 mp4AudioSpecificConfig mp4ASC;
780
781 mp4ff_get_decoder_config(infile, i, &buff, &buff_size);
782
783 if (buff)
784 {
785 rc = NeAACDecAudioSpecificConfig(buff, buff_size, &mp4ASC);
786 free(buff);
787
788 if (rc < 0)
789 continue;
790 return i;
791 }
792 }
793
794 /* can't decode this */
795 return -1;
796 }
797
798769 static const unsigned long srates[] =
799770 {
800771 96000, 88200, 64000, 48000, 44100, 32000, 24000, 22050, 16000,
810781 unsigned char channels;
811782 void *sample_buffer;
812783
813 mp4ff_t *infile;
814 long sampleId, numSamples, startSampleId;
784 long sampleId, startSampleId;
815785
816786 audio_file *aufile;
817787
818 FILE *mp4File;
819788 FILE *adtsFile;
820789 unsigned char *adtsData;
821790 int adtsDataSize;
825794 NeAACDecFrameInfo frameInfo;
826795 mp4AudioSpecificConfig mp4ASC;
827796
828 unsigned char *buffer;
829 int buffer_size;
830
831797 char percents[200];
832798 int percent, old_percent = -1;
833799
835801
836802 /* for gapless decoding */
837803 unsigned int useAacLength = 1;
838 unsigned int initial = 1;
839804 unsigned int framesize;
840 unsigned long timescale;
841
842
843 /* initialise the callback structure */
844 mp4ff_callback_t *mp4cb = malloc(sizeof(mp4ff_callback_t));
805 unsigned decoded;
845806
846807 if (strcmp(mp4file, "-") == 0 ) {
847808 faad_fprintf(stderr, "Cannot open stdin for MP4 input \n");
848809 return 1;
849810 }
850811
851 mp4File = fopen(mp4file, "rb");
852 mp4cb->read = read_callback;
853 mp4cb->seek = seek_callback;
854 mp4cb->user_data = mp4File;
855
812 if (!quiet)
813 {
814 mp4config.verbose.header = 1;
815 mp4config.verbose.tags = 1;
816 }
817 if (mp4read_open(mp4file))
818 {
819 /* unable to open file */
820 faad_fprintf(stderr, "Error opening file: %s\n", mp4file);
821 return 1;
822 }
856823
857824 hDecoder = NeAACDecOpen();
858825
873840 }
874841 }
875842
876 infile = mp4ff_open_read(mp4cb);
877 if (!infile)
878 {
879 /* unable to open file */
880 faad_fprintf(stderr, "Error opening file: %s\n", mp4file);
881 return 1;
882 }
883
884 if ((track = GetAACTrack(infile)) < 0)
885 {
886 faad_fprintf(stderr, "Unable to find correct AAC sound track in the MP4 file.\n");
887 NeAACDecClose(hDecoder);
888 mp4ff_close(infile);
889 free(mp4cb);
890 fclose(mp4File);
891 return 1;
892 }
893
894 buffer = NULL;
895 buffer_size = 0;
896 mp4ff_get_decoder_config(infile, track, &buffer, &buffer_size);
897
898 if(NeAACDecInit2(hDecoder, buffer, buffer_size,
843 if(NeAACDecInit2(hDecoder, mp4config.asc.buf, mp4config.asc.size,
899844 &samplerate, &channels) < 0)
900845 {
901846 /* If some error initializing occured, skip the file */
902847 faad_fprintf(stderr, "Error initializing decoder library.\n");
903848 NeAACDecClose(hDecoder);
904 mp4ff_close(infile);
905 free(mp4cb);
906 fclose(mp4File);
849 mp4read_close();
907850 return 1;
908851 }
909852
910 timescale = mp4ff_time_scale(infile, track);
911853 framesize = 1024;
912854 useAacLength = 0;
913
914 if (buffer)
915 {
916 if (NeAACDecAudioSpecificConfig(buffer, buffer_size, &mp4ASC) >= 0)
855 decoded = 0;
856
857 if (mp4config.asc.size)
858 {
859 if (NeAACDecAudioSpecificConfig(mp4config.asc.buf, mp4config.asc.size, &mp4ASC) >= 0)
917860 {
918861 if (mp4ASC.frameLengthFlag == 1) framesize = 960;
919862 if (mp4ASC.sbr_present_flag == 1) framesize *= 2;
920863 }
921 free(buffer);
922864 }
923865
924866 /* print some mp4 file info */
927869 char *tag = NULL, *item = NULL;
928870 int k, j;
929871 char *ot[6] = { "NULL", "MAIN AAC", "LC AAC", "SSR AAC", "LTP AAC", "HE AAC" };
930 long samples = mp4ff_num_samples(infile, track);
931 float f = 1024.0;
932872 float seconds;
933 if (mp4ASC.sbr_present_flag == 1)
934 {
935 f = f * 2.0;
936 }
937 seconds = (float)samples*(float)(f-1.0)/(float)mp4ASC.samplingFrequency;
873 seconds = (float)mp4config.samples/(float)mp4ASC.samplingFrequency;
938874
939875 *song_length = seconds;
940876
941877 faad_fprintf(stderr, "%s\t%.3f secs, %d ch, %d Hz\n\n", ot[(mp4ASC.objectTypeIndex > 5)?0:mp4ASC.objectTypeIndex],
942878 seconds, mp4ASC.channelsConfiguration, mp4ASC.samplingFrequency);
943
944 #define PRINT_MP4_METADATA
945 #ifdef PRINT_MP4_METADATA
946 j = mp4ff_meta_get_num_items(infile);
947 for (k = 0; k < j; k++)
948 {
949 if (mp4ff_meta_get_by_index(infile, k, &item, &tag))
950 {
951 if (item != NULL && tag != NULL)
952 {
953 faad_fprintf(stderr, "%s: %s\n", item, tag);
954 free(item); item = NULL;
955 free(tag); tag = NULL;
956 }
957 }
958 }
959 if (j > 0) faad_fprintf(stderr, "\n");
960 #endif
961879 }
962880
963881 if (infoOnly)
964882 {
965883 NeAACDecClose(hDecoder);
966 mp4ff_close(infile);
967 free(mp4cb);
968 fclose(mp4File);
884 mp4read_close();
969885 return 0;
970886 }
971887
972 numSamples = mp4ff_num_samples(infile, track);
973
974888 startSampleId = 0;
975 if (seek_to > 0.1) {
976 int32_t sample = mp4ff_find_sample(infile, track, (int64_t)(seek_to * timescale), NULL);
977 if (sample > 0 && sample < numSamples)
978 startSampleId = sample;
979 }
980
981 for (sampleId = startSampleId; sampleId < numSamples; sampleId++)
889 if (seek_to > 0.1)
890 startSampleId = (int64_t)(seek_to * mp4config.samplerate / framesize);
891
892 mp4read_seek(startSampleId);
893 for (sampleId = startSampleId; sampleId < mp4config.frame.ents; sampleId++)
982894 {
983895 int rc;
984896 long dur;
985897 unsigned int sample_count;
986898 unsigned int delay = 0;
987899
988 /* get acces unit from MP4 file */
989 buffer = NULL;
990 buffer_size = 0;
991
992 dur = mp4ff_get_sample_duration(infile, track, sampleId);
993 rc = mp4ff_read_sample(infile, track, sampleId, &buffer, &buffer_size);
994 if (rc == 0)
995 {
996 faad_fprintf(stderr, "Reading from MP4 file failed.\n");
997 NeAACDecClose(hDecoder);
998 mp4ff_close(infile);
999 free(mp4cb);
1000 fclose(mp4File);
1001 return 1;
1002 }
1003
1004 sample_buffer = NeAACDecDecode(hDecoder, &frameInfo, buffer, buffer_size);
900 if (mp4read_frame())
901 break;
902
903 sample_buffer = NeAACDecDecode(hDecoder, &frameInfo, mp4config.bitbuf.data, mp4config.bitbuf.size);
1005904
1006905 if (adts_out == 1)
1007906 {
1010909 /* write the adts header */
1011910 fwrite(adtsData, 1, adtsDataSize, adtsFile);
1012911
1013 fwrite(buffer, 1, frameInfo.bytesconsumed, adtsFile);
1014 }
1015
1016 if (buffer) free(buffer);
912 fwrite(mp4config.bitbuf.data, 1, frameInfo.bytesconsumed, adtsFile);
913 }
914
915 dur = frameInfo.samples / frameInfo.channels;
916 decoded += dur;
917
918 if (decoded > mp4config.samples)
919 dur += mp4config.samples - decoded;
920
921 if (dur > framesize)
922 {
923 faad_fprintf(stderr, "Warning: excess frame detected in MP4 file.\n");
924 dur = framesize;
925 }
1017926
1018927 if (!noGapless)
1019928 {
1020 if (sampleId == 0) dur = 0;
1021
1022 if (useAacLength || (timescale != samplerate)) {
929 if (useAacLength || (mp4config.samplerate != samplerate)) {
1023930 sample_count = frameInfo.samples;
1024931 } else {
1025932 sample_count = (unsigned int)(dur * frameInfo.channels);
1026933 if (sample_count > frameInfo.samples)
1027934 sample_count = frameInfo.samples;
1028
1029 if (!useAacLength && !initial && (sampleId < numSamples/2) && (sample_count != frameInfo.samples))
1030 {
1031 faad_fprintf(stderr, "MP4 seems to have incorrect frame duration, using values from AAC data.\n");
1032 useAacLength = 1;
1033 sample_count = frameInfo.samples;
1034 }
1035935 }
1036
1037 if (initial && (sample_count < framesize*frameInfo.channels) && (frameInfo.samples > sample_count))
1038 delay = frameInfo.samples - sample_count;
1039936 } else {
1040937 sample_count = frameInfo.samples;
1041938 }
1063960 if (aufile == NULL)
1064961 {
1065962 NeAACDecClose(hDecoder);
1066 mp4ff_close(infile);
1067 free(mp4cb);
1068 fclose(mp4File);
963 mp4read_close();
1069964 return 0;
1070965 }
1071966 }
1072967 first_time = 0;
1073968 }
1074969
1075 if (sample_count > 0) initial = 0;
1076
1077 percent = min((int)(sampleId*100)/numSamples, 100);
970 percent = min((int)(sampleId*100)/mp4config.frame.ents, 100);
1078971 if (percent > old_percent)
1079972 {
1080973 old_percent = percent;
1105998 fclose(adtsFile);
1106999 }
11071000
1108 mp4ff_close(infile);
1001 mp4read_close();
11091002
11101003 if (!first_time && !adts_out)
11111004 close_audio_file(aufile);
1112
1113 free(mp4cb);
1114 fclose(mp4File);
11151005
11161006 return frameInfo.error;
11171007 }
11411031 unsigned char header[8];
11421032 float length = 0;
11431033 FILE *hMP4File;
1034 char *faad_id_string;
1035 char *faad_copyright_string;
11441036
11451037 /* System dependant types */
11461038 #ifdef _WIN32
12981190 }
12991191 }
13001192
1301
1302 faad_fprintf(stderr, " *********** Ahead Software MPEG-4 AAC Decoder V%s ******************\n\n", FAAD2_VERSION);
1193 NeAACDecGetVersion(&faad_id_string, &faad_copyright_string);
1194
1195 faad_fprintf(stderr, " *********** Ahead Software MPEG-4 AAC Decoder V%s ******************\n\n", faad_id_string);
13031196 faad_fprintf(stderr, " Build: %s\n", __DATE__);
1304 faad_fprintf(stderr, " Copyright 2002-2004: Ahead Software AG\n");
1305 faad_fprintf(stderr, " http://www.audiocoding.com\n");
1306 faad_fprintf(stderr, "\n Latest version and bug tracking available here:\n");
1307 faad_fprintf(stderr, " http://sourceforge.net/projects/faac/\n\n");
1197 faad_fprintf(stderr, "%s", faad_copyright_string);
13081198 if (cap & FIXED_POINT_CAP)
13091199 faad_fprintf(stderr, " Fixed point version\n");
13101200 else
0 /****************************************************************************
1 MP4 input module
2
3 Copyright (C) 2017 Krzysztof Nikiel
4
5 This program is free software: you can redistribute it and/or modify
6 it under the terms of the GNU General Public License as published by
7 the Free Software Foundation, either version 3 of the License, or
8 (at your option) any later version.
9
10 This program is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 GNU General Public License for more details.
14
15 You should have received a copy of the GNU General Public License
16 along with this program. If not, see <http://www.gnu.org/licenses/>.
17 ****************************************************************************/
18
19 #include <stdlib.h>
20 #include <stdio.h>
21 #include <stdint.h>
22 #include <string.h>
23 #include <time.h>
24 #include <limits.h>
25
26 #include "mp4read.h"
27
28 enum ATOM_TYPE
29 {
30 ATOM_STOP = 0 /* end of atoms */ ,
31 ATOM_NAME /* plain atom */ ,
32 ATOM_DESCENT, /* starts group of children */
33 ATOM_ASCENT, /* ends group */
34 ATOM_DATA,
35 };
36 typedef struct
37 {
38 uint16_t opcode;
39 void *data;
40 } creator_t;
41
42
43 mp4config_t mp4config = { 0 };
44
45 static FILE *g_fin = NULL;
46
47 static inline uint32_t bswap32(uint32_t u32)
48 {
49 #ifndef WORDS_BIGENDIAN
50 return __builtin_bswap32(u32);
51 #endif
52 }
53
54 static inline uint16_t bswap16(uint16_t u16)
55 {
56 #ifndef WORDS_BIGENDIAN
57 return __builtin_bswap16(u16);
58 #endif
59 }
60
61 enum {ERR_OK = 0, ERR_FAIL = -1, ERR_UNSUPPORTED = -2};
62
63 static int datain(void *data, int size)
64 {
65 if (fread(data, 1, size, g_fin) != size)
66 return ERR_FAIL;
67 return size;
68 }
69
70 static int stringin(char *txt, int sizemax)
71 {
72 int size;
73 for (size = 0; size < sizemax; size++)
74 {
75 if (fread(txt + size, 1, 1, g_fin) != 1)
76 return ERR_FAIL;
77 if (!txt[size])
78 break;
79 }
80
81 return size;
82 }
83
84 static uint32_t u32in(void)
85 {
86 uint32_t u32;
87 datain(&u32, 4);
88 u32 = bswap32(u32);
89 return u32;
90 }
91
92 static uint16_t u16in(void)
93 {
94 uint16_t u16;
95 datain(&u16, 2);
96 u16 = bswap16(u16);
97 return u16;
98 }
99
100 static int u8in(void)
101 {
102 uint8_t u8;
103 datain(&u8, 1);
104 return u8;
105 }
106
107 static int ftypin(int size)
108 {
109 enum {BUFSIZE = 40};
110 char buf[BUFSIZE];
111 uint32_t u32;
112
113 buf[4] = 0;
114 datain(buf, 4);
115 u32 = u32in();
116
117 if (mp4config.verbose.header)
118 fprintf(stderr, "Brand:\t\t\t%s(version %d)\n", buf, u32);
119
120 stringin(buf, BUFSIZE);
121
122 if (mp4config.verbose.header)
123 fprintf(stderr, "Compatible brands:\t%s\n", buf);
124
125 return size;
126 }
127
128 enum
129 { SECSINDAY = 24 * 60 * 60 };
130 static char *mp4time(time_t t)
131 {
132 int y;
133
134 // subtract some seconds from the start of 1904 to the start of 1970
135 for (y = 1904; y < 1970; y++)
136 {
137 t -= 365 * SECSINDAY;
138 if (!(y & 3))
139 t -= SECSINDAY;
140 }
141 return ctime(&t);
142 }
143
144 static int mdhdin(int size)
145 {
146 // version/flags
147 u32in();
148 // Creation time
149 mp4config.ctime = u32in();
150 // Modification time
151 mp4config.mtime = u32in();
152 // Time scale
153 mp4config.samplerate = u32in();
154 // Duration
155 mp4config.samples = u32in();
156 // Language
157 u16in();
158 // pre_defined
159 u16in();
160
161 return size;
162 };
163
164 static int hdlr1in(int size)
165 {
166 uint8_t buf[5];
167
168 buf[4] = 0;
169 // version/flags
170 u32in();
171 // pre_defined
172 u32in();
173 // Component subtype
174 datain(buf, 4);
175 if (mp4config.verbose.header)
176 fprintf(stderr, "*track media type: '%s': ", buf);
177 if (memcmp("soun", buf, 4))
178 {
179 if (mp4config.verbose.header)
180 fprintf(stderr, "unsuported, skipping\n");
181 return ERR_UNSUPPORTED;
182 }
183 else
184 {
185 if (mp4config.verbose.header)
186 fprintf(stderr, "OK\n");
187 }
188 // reserved
189 u32in();
190 u32in();
191 u32in();
192 // name
193 // null terminate
194 u8in();
195
196 return size;
197 };
198
199 static int stsdin(int size)
200 {
201 // version/flags
202 u32in();
203 // Number of entries(one 'mp4a')
204 if (u32in() != 1) //fixme: error handling
205 return ERR_FAIL;
206
207 return size;
208 };
209
210 static int mp4ain(int size)
211 {
212 // Reserved (6 bytes)
213 u32in();
214 u16in();
215 // Data reference index
216 u16in();
217 // Version
218 u16in();
219 // Revision level
220 u16in();
221 // Vendor
222 u32in();
223 // Number of channels
224 mp4config.channels = u16in();
225 // Sample size (bits)
226 mp4config.bits = u16in();
227 // Compression ID
228 u16in();
229 // Packet size
230 u16in();
231 // Sample rate (16.16)
232 // fractional framerate, probably not for audio
233 // rate integer part
234 u16in();
235 // rate reminder part
236 u16in();
237
238 return size;
239 }
240
241
242 static uint32_t getsize(void)
243 {
244 int cnt;
245 uint32_t size = 0;
246 for (cnt = 0; cnt < 4; cnt++)
247 {
248 int tmp = u8in();
249
250 size <<= 7;
251 size |= (tmp & 0x7f);
252 if (!(tmp & 0x80))
253 break;
254 }
255 return size;
256 }
257
258 static int esdsin(int size)
259 {
260 // descriptor tree:
261 // MP4ES_Descriptor
262 // MP4DecoderConfigDescriptor
263 // MP4DecSpecificInfoDescriptor
264 // MP4SLConfigDescriptor
265 enum
266 { TAG_ES = 3, TAG_DC = 4, TAG_DSI = 5, TAG_SLC = 6 };
267
268 // version/flags
269 u32in();
270 if (u8in() != TAG_ES)
271 return ERR_FAIL;
272 getsize();
273 // ESID
274 u16in();
275 // flags(url(bit 6); ocr(5); streamPriority (0-4)):
276 u8in();
277
278 if (u8in() != TAG_DC)
279 return ERR_FAIL;
280 getsize();
281 if (u8in() != 0x40) /* not MPEG-4 audio */
282 return ERR_FAIL;
283 // flags
284 u8in();
285 // buffer size (24 bits)
286 mp4config.buffersize = u16in() << 8;
287 mp4config.buffersize |= u8in();
288 // bitrate
289 mp4config.bitratemax = u32in();
290 mp4config.bitrateavg = u32in();
291
292 if (u8in() != TAG_DSI)
293 return ERR_FAIL;
294 mp4config.asc.size = getsize();
295 if (mp4config.asc.size > sizeof(mp4config.asc.buf))
296 return ERR_FAIL;
297 // get AudioSpecificConfig
298 datain(mp4config.asc.buf, mp4config.asc.size);
299
300 if (u8in() != TAG_SLC)
301 return ERR_FAIL;
302 getsize();
303 // "predefined" (no idea)
304 u8in();
305
306 return size;
307 }
308
309 static int sttsin(int size)
310 {
311 if (size < 16) //min stts size
312 return ERR_FAIL;
313
314 return size;
315 }
316
317 static int stszin(int size)
318 {
319 int cnt;
320 uint32_t ofs;
321
322 // version/flags
323 u32in();
324 // Sample size
325 u32in();
326 // Number of entries
327 mp4config.frame.ents = u32in();
328 // fixme error checking
329 // fixme: check atom size
330 mp4config.frame.data = malloc(sizeof(*mp4config.frame.data)
331 * (mp4config.frame.ents + 1));
332 ofs = 0;
333 mp4config.frame.data[0] = ofs;
334 for (cnt = 0; cnt < mp4config.frame.ents; cnt++)
335 {
336 uint32_t fsize = u32in();
337
338 ofs += fsize;
339 if (mp4config.frame.maxsize < fsize)
340 mp4config.frame.maxsize = fsize;
341
342 mp4config.frame.data[cnt + 1] = ofs;
343 }
344
345 return size;
346 }
347
348 static int stcoin(int size)
349 {
350 // version/flags
351 u32in();
352 // Number of entries
353 if (u32in() < 1)
354 return ERR_FAIL;
355 // first chunk offset
356 mp4config.mdatofs = u32in();
357 // ignore the rest
358
359 return size;
360 }
361
362 #if 0
363 static int tagtxt(char *tagname, const char *tagtxt)
364 {
365 //int txtsize = strlen(tagtxt);
366 int size = 0;
367 //int datasize = txtsize + 16;
368
369 #if 0
370 size += u32out(datasize + 8);
371 size += dataout(tagname, 4);
372 size += u32out(datasize);
373 size += dataout("data", 4);
374 size += u32out(1);
375 size += u32out(0);
376 size += dataout(tagtxt, txtsize);
377 #endif
378
379 return size;
380 }
381
382 static int tagu32(char *tagname, int n /*number of stored fields*/)
383 {
384 //int numsize = n * 4;
385 int size = 0;
386 //int datasize = numsize + 16;
387
388 #if 0
389 size += u32out(datasize + 8);
390 size += dataout(tagname, 4);
391 size += u32out(datasize);
392 size += dataout("data", 4);
393 size += u32out(0);
394 size += u32out(0);
395 #endif
396
397 return size;
398 }
399 #endif
400
401 static int metain(int size)
402 {
403 // version/flags
404 u32in();
405
406 return ERR_OK;
407 };
408
409 static int hdlr2in(int size)
410 {
411 uint8_t buf[4];
412
413 // version/flags
414 u32in();
415 // Predefined
416 u32in();
417 // Handler type
418 datain(buf, 4);
419 if (memcmp(buf, "mdir", 4))
420 return ERR_FAIL;
421 datain(buf, 4);
422 if (memcmp(buf, "appl", 4))
423 return ERR_FAIL;
424 // Reserved
425 u32in();
426 u32in();
427 // null terminator
428 u8in();
429
430 return size;
431 };
432
433 static int ilstin(int size)
434 {
435 enum {NUMSET = 1, GENRE, EXTAG};
436 int read = 0;
437
438 static struct {
439 char *name;
440 char *id;
441 int flag;
442 } tags[] = {
443 {"Album ", "\xa9" "alb"},
444 {"Album Artist", "aART"},
445 {"Artist ", "\xa9" "ART"},
446 {"Comment ", "\xa9" "cmt"},
447 {"Cover image ", "covr"},
448 {"Compilation ", "cpil"},
449 {"Copyright ", "cprt"},
450 {"Date ", "\xa9" "day"},
451 {"Disc# ", "disk", NUMSET},
452 {"Genre ", "gnre", GENRE},
453 {"Grouping ", "\xa9" "grp"},
454 {"Lyrics ", "\xa9" "lyr"},
455 {"Tille ", "\xa9" "nam"},
456 {"Rating ", "rtng"},
457 {"BPM ", "tmpo"},
458 {"Encoder ", "\xa9" "too"},
459 {"Track ", "trkn", NUMSET},
460 {"Composer ", "\xa9" "wrt"},
461 {0, "----", EXTAG},
462 {0},
463 };
464
465 static const char *genres[] = {
466 "Blues", "Classic Rock", "Country", "Dance",
467 "Disco", "Funk", "Grunge", "Hip-Hop",
468 "Jazz", "Metal", "New Age", "Oldies",
469 "Other", "Pop", "R&B", "Rap",
470 "Reggae", "Rock", "Techno", "Industrial",
471 "Alternative", "Ska", "Death Metal", "Pranks",
472 "Soundtrack", "Euro-Techno", "Ambient", "Trip-Hop",
473 "Vocal", "Jazz+Funk", "Fusion", "Trance",
474 "Classical", "Instrumental", "Acid", "House",
475 "Game", "Sound Clip", "Gospel", "Noise",
476 "Alternative Rock", "Bass", "Soul", "Punk",
477 "Space", "Meditative", "Instrumental Pop", "Instrumental Rock",
478 "Ethnic", "Gothic", "Darkwave", "Techno-Industrial",
479 "Electronic", "Pop-Folk", "Eurodance", "Dream",
480 "Southern Rock", "Comedy", "Cult", "Gangsta",
481 "Top 40", "Christian Rap", "Pop/Funk", "Jungle",
482 "Native US", "Cabaret", "New Wave", "Psychadelic",
483 "Rave", "Showtunes", "Trailer", "Lo-Fi",
484 "Tribal", "Acid Punk", "Acid Jazz", "Polka",
485 "Retro", "Musical", "Rock & Roll", "Hard Rock",
486 "Folk", "Folk-Rock", "National Folk", "Swing",
487 "Fast Fusion", "Bebob", "Latin", "Revival",
488 "Celtic", "Bluegrass", "Avantgarde", "Gothic Rock",
489 "Progressive Rock", "Psychedelic Rock", "Symphonic Rock", "Slow Rock",
490 "Big Band", "Chorus", "Easy Listening", "Acoustic",
491 "Humour", "Speech", "Chanson", "Opera",
492 "Chamber Music", "Sonata", "Symphony", "Booty Bass",
493 "Primus", "Porn Groove", "Satire", "Slow Jam",
494 "Club", "Tango", "Samba", "Folklore",
495 "Ballad", "Power Ballad", "Rhythmic Soul", "Freestyle",
496 "Duet", "Punk Rock", "Drum Solo", "Acapella",
497 "Euro-House", "Dance Hall", "Goa", "Drum & Bass",
498 "Club - House", "Hardcore", "Terror", "Indie",
499 "BritPop", "Negerpunk", "Polsk Punk", "Beat",
500 "Christian Gangsta Rap", "Heavy Metal", "Black Metal", "Crossover",
501 "Contemporary Christian", "Christian Rock", "Merengue", "Salsa",
502 "Thrash Metal", "Anime", "JPop", "Synthpop",
503 "Unknown",
504 };
505
506 fprintf(stderr, "----------tag list-------------\n");
507 while(read < size)
508 {
509 int asize, dsize;
510 uint8_t id[5];
511 int cnt;
512 uint32_t type;
513
514 id[4] = 0;
515
516 asize = u32in();
517 read += asize;
518 asize -= 4;
519 if (datain(id, 4) < 4)
520 return ERR_FAIL;
521 asize -= 4;
522
523 for (cnt = 0; tags[cnt].id; cnt++)
524 {
525 if (!memcmp(id, tags[cnt].id, 4))
526 break;
527 }
528
529 if (tags[cnt].name)
530 fprintf(stderr, "%s : ", tags[cnt].name);
531 else
532 {
533 if (tags[cnt].flag != EXTAG)
534 fprintf(stderr, "'%s' : ", id);
535 }
536
537 dsize = u32in();
538 asize -= 4;
539 if (datain(id, 4) < 4)
540 return ERR_FAIL;
541 asize -= 4;
542
543 if (tags[cnt].flag != EXTAG)
544 {
545 if (memcmp(id, "data", 4))
546 return ERR_FAIL;
547 }
548 else
549 {
550 int spc;
551
552 if (memcmp(id, "mean", 4))
553 goto skip;
554 dsize -= 8;
555 while (dsize > 0)
556 {
557 u8in();
558 asize--;
559 dsize--;
560 }
561 if (asize >= 8)
562 {
563 dsize = u32in() - 8;
564 asize -= 4;
565 if (datain(id, 4) < 4)
566 return ERR_FAIL;
567 asize -= 4;
568 if (memcmp(id, "name", 4))
569 goto skip;
570 u32in();
571 asize -= 4;
572 dsize -= 4;
573 }
574 spc = 13 - dsize;
575 if (spc < 0) spc = 0;
576 while (dsize > 0)
577 {
578 fprintf(stderr, "%c",u8in());
579 asize--;
580 dsize--;
581 }
582 while (spc--)
583 fprintf(stderr, " ");
584 fprintf(stderr, ": ");
585 if (asize >= 8)
586 {
587 dsize = u32in() - 8;
588 asize -= 4;
589 if (datain(id, 4) < 4)
590 return ERR_FAIL;
591 asize -= 4;
592 if (memcmp(id, "data", 4))
593 goto skip;
594 u32in();
595 asize -= 4;
596 dsize -= 4;
597 }
598 while (dsize > 0)
599 {
600 fprintf(stderr, "%c",u8in());
601 asize--;
602 dsize--;
603 }
604 fprintf(stderr, "\n");
605
606 goto skip;
607 }
608 type = u32in();
609 asize -= 4;
610 u32in();
611 asize -= 4;
612
613 switch(type)
614 {
615 case 1:
616 while (asize > 0)
617 {
618 fprintf(stderr, "%c",u8in());
619 asize--;
620 }
621 break;
622 case 0:
623 switch(tags[cnt].flag)
624 {
625 case NUMSET:
626 u16in();
627 asize -= 2;
628
629 fprintf(stderr, "%d", u16in());
630 asize -= 2;
631 fprintf(stderr, "/%d", u16in());
632 asize -= 2;
633 break;
634 case GENRE:
635 {
636 uint8_t gnum = u16in();
637 asize -= 2;
638 if (!gnum)
639 goto skip;
640 gnum--;
641 if (gnum >= 147)
642 gnum = 147;
643 fprintf(stderr, "%s", genres[gnum]);
644 }
645 break;
646 default:
647 while(asize > 0)
648 {
649 fprintf(stderr, "%d/", u16in());
650 asize-=2;
651 }
652 }
653 break;
654 case 0x15:
655 //fprintf(stderr, "(8bit data)");
656 while(asize > 0)
657 {
658 fprintf(stderr, "%d", u8in());
659 asize--;
660 if (asize)
661 fprintf(stderr, "/");
662 }
663 break;
664 case 0xd:
665 fprintf(stderr, "(image data)");
666 break;
667 default:
668 fprintf(stderr, "(unknown data type)");
669 break;
670 }
671 fprintf(stderr, "\n");
672
673 skip:
674 // skip to the end of atom
675 while (asize > 0)
676 {
677 u8in();
678 asize--;
679 }
680 }
681 fprintf(stderr, "-------------------------------\n");
682
683 return size;
684 };
685
686 static creator_t *g_atom = 0;
687 static int parse(uint32_t *sizemax)
688 {
689 long apos = 0;
690 long aposmax = ftell(g_fin) + *sizemax;
691 uint32_t size;
692
693 if (g_atom->opcode != ATOM_NAME)
694 {
695 fprintf(stderr, "parse error: root is not a 'name' opcode\n");
696 return ERR_FAIL;
697 }
698 //fprintf(stderr, "looking for '%s'\n", (char *)g_atom->data);
699
700 // search for atom in the file
701 while (1)
702 {
703 char name[4];
704 uint32_t tmp;
705
706 apos = ftell(g_fin);
707 if (apos >= (aposmax - 8))
708 {
709 fprintf(stderr, "parse error: atom '%s' not found\n", (char *)g_atom->data);
710 return ERR_FAIL;
711 }
712 if ((tmp = u32in()) < 8)
713 {
714 fprintf(stderr, "invalid atom size %x @%lx\n", tmp, ftell(g_fin));
715 return ERR_FAIL;
716 }
717
718 size = tmp;
719 if (datain(name, 4) != 4)
720 {
721 // EOF
722 fprintf(stderr, "can't read atom name @%lx\n", ftell(g_fin));
723 return ERR_FAIL;
724 }
725
726 //fprintf(stderr, "atom: '%c%c%c%c'(%x)", name[0],name[1],name[2],name[3], size);
727
728 if (!memcmp(name, g_atom->data, 4))
729 {
730 //fprintf(stderr, "OK\n");
731 break;
732 }
733 //fprintf(stderr, "\n");
734
735 fseek(g_fin, apos + size, SEEK_SET);
736 }
737 *sizemax = size;
738 g_atom++;
739 if (g_atom->opcode == ATOM_DATA)
740 {
741 int err = ((int (*)(int)) g_atom->data)(size - 8);
742 if (err < ERR_OK)
743 {
744 fseek(g_fin, apos + size, SEEK_SET);
745 return err;
746 }
747 g_atom++;
748 }
749 if (g_atom->opcode == ATOM_DESCENT)
750 {
751 long apos = ftell(g_fin);;
752
753 //fprintf(stderr, "descent\n");
754 g_atom++;
755 while (g_atom->opcode != ATOM_STOP)
756 {
757 uint32_t subsize = size - 8;
758 int ret;
759 if (g_atom->opcode == ATOM_ASCENT)
760 {
761 g_atom++;
762 break;
763 }
764 fseek(g_fin, apos, SEEK_SET);
765 if ((ret = parse(&subsize)) < 0)
766 return ret;
767 }
768 //fprintf(stderr, "ascent\n");
769 }
770
771 fseek(g_fin, apos + size, SEEK_SET);
772
773 return ERR_OK;
774 }
775
776
777
778 static int moovin(int sizemax)
779 {
780 long apos = ftell(g_fin);
781 uint32_t atomsize;
782 int err;
783
784 static creator_t mvhd[] = {
785 {ATOM_NAME, "mvhd"},
786 {0}
787 };
788 static creator_t trak[] = {
789 {ATOM_NAME, "trak"},
790 {ATOM_DESCENT},
791 {ATOM_NAME, "tkhd"},
792 {ATOM_NAME, "mdia"},
793 {ATOM_DESCENT},
794 {ATOM_NAME, "mdhd"},
795 {ATOM_DATA, mdhdin},
796 {ATOM_NAME, "hdlr"},
797 {ATOM_DATA, hdlr1in},
798 {ATOM_NAME, "minf"},
799 {ATOM_DESCENT},
800 {ATOM_NAME, "smhd"},
801 {ATOM_NAME, "dinf"},
802 {ATOM_NAME, "stbl"},
803 {ATOM_DESCENT},
804 {ATOM_NAME, "stsd"},
805 {ATOM_DATA, stsdin},
806 {ATOM_DESCENT},
807 {ATOM_NAME, "mp4a"},
808 {ATOM_DATA, mp4ain},
809 {ATOM_DESCENT},
810 {ATOM_NAME, "esds"},
811 {ATOM_DATA, esdsin},
812 {ATOM_ASCENT},
813 {ATOM_ASCENT},
814 {ATOM_NAME, "stts"},
815 {ATOM_DATA, sttsin},
816 {ATOM_NAME, "stsc"},
817 {ATOM_NAME, "stsz"},
818 {ATOM_DATA, stszin},
819 {ATOM_NAME, "stco"},
820 {ATOM_DATA, stcoin},
821 {0}
822 };
823
824 g_atom = mvhd;
825 atomsize = sizemax + apos - ftell(g_fin);
826 if (parse(&atomsize) < 0)
827 return ERR_FAIL;
828 fseek(g_fin, apos, SEEK_SET);
829
830 while (1)
831 {
832 //fprintf(stderr, "TRAK\n");
833 g_atom = trak;
834 atomsize = sizemax + apos - ftell(g_fin);
835 if (atomsize < 8)
836 break;
837 //fprintf(stderr, "PARSE(%x)\n", atomsize);
838 err = parse(&atomsize);
839 //fprintf(stderr, "SIZE: %x/%x\n", atomsize, sizemax);
840 if (err >= 0)
841 return sizemax;
842 if (err != ERR_UNSUPPORTED)
843 return err;
844 //fprintf(stderr, "UNSUPP\n");
845 }
846
847 return sizemax;
848 }
849
850
851 static creator_t g_head[] = {
852 {ATOM_NAME, "ftyp"},
853 {ATOM_DATA, ftypin},
854 {0}
855 };
856
857 static creator_t g_moov[] = {
858 {ATOM_NAME, "moov"},
859 {ATOM_DATA, moovin},
860 //{ATOM_DESCENT},
861 //{ATOM_NAME, "mvhd"},
862 {0}
863 };
864
865 static creator_t g_meta1[] = {
866 {ATOM_NAME, "moov"},
867 {ATOM_DESCENT},
868 {ATOM_NAME, "udta"},
869 {ATOM_DESCENT},
870 {ATOM_NAME, "meta"},
871 {ATOM_DATA, metain},
872 {ATOM_DESCENT},
873 {ATOM_NAME, "hdlr"},
874 {ATOM_DATA, hdlr2in},
875 {ATOM_NAME, "ilst"},
876 {ATOM_DATA, ilstin},
877 {0}
878 };
879
880 static creator_t g_meta2[] = {
881 {ATOM_NAME, "meta"},
882 {ATOM_DATA, metain},
883 {ATOM_DESCENT},
884 {ATOM_NAME, "hdlr"},
885 {ATOM_DATA, hdlr2in},
886 {ATOM_NAME, "ilst"},
887 {ATOM_DATA, ilstin},
888 {0}
889 };
890
891
892 int mp4read_frame(void)
893 {
894 if (mp4config.frame.current >= mp4config.frame.ents)
895 return ERR_FAIL;
896
897 mp4config.bitbuf.size = mp4config.frame.data[mp4config.frame.current + 1]
898 - mp4config.frame.data[mp4config.frame.current];
899
900 if (fread(mp4config.bitbuf.data, 1, mp4config.bitbuf.size, g_fin)
901 != mp4config.bitbuf.size)
902 {
903 fprintf(stderr, "can't read frame data(frame %d@0x%x)\n",
904 mp4config.frame.current,
905 mp4config.frame.data[mp4config.frame.current]);
906
907 return ERR_FAIL;
908 }
909
910 mp4config.frame.current++;
911
912 return ERR_OK;
913 }
914
915 int mp4read_seek(int framenum)
916 {
917 if (framenum > mp4config.frame.ents)
918 return ERR_FAIL;
919 if (fseek(g_fin, mp4config.mdatofs + mp4config.frame.data[framenum], SEEK_SET))
920 return ERR_FAIL;
921
922 mp4config.frame.current = framenum;
923
924 return ERR_OK;
925 }
926
927 static void mp4info(void)
928 {
929 fprintf(stderr, "Modification Time:\t\%s", mp4time(mp4config.mtime));
930 fprintf(stderr, "Samplerate:\t\t%d\n", mp4config.samplerate);
931 fprintf(stderr, "Total samples:\t\t%d\n", mp4config.samples);
932 fprintf(stderr, "Total channels:\t\t%d\n", mp4config.channels);
933 fprintf(stderr, "Bits per sample:\t%d\n", mp4config.bits);
934 fprintf(stderr, "Buffer size:\t\t%d\n", mp4config.buffersize);
935 fprintf(stderr, "Max bitrate:\t\t%d\n", mp4config.bitratemax);
936 fprintf(stderr, "Average bitrate:\t%d\n", mp4config.bitrateavg);
937 fprintf(stderr, "Samples per frame:\t%d\n", mp4config.framesamples);
938 fprintf(stderr, "Frames:\t\t\t%d\n", mp4config.frame.ents);
939 fprintf(stderr, "ASC size:\t\t%d\n", mp4config.asc.size);
940 fprintf(stderr, "Duration:\t\t%.1f sec\n", (float)mp4config.samples/mp4config.samplerate);
941 fprintf(stderr, "Data offset/size:\t%x/%x\n", mp4config.mdatofs, mp4config.mdatsize);
942 }
943
944 int mp4read_close(void)
945 {
946 #define FREE(x) if(x){free(x);x=0;}
947 FREE(mp4config.frame.data);
948 FREE(mp4config.bitbuf.data);
949
950 return ERR_OK;
951 }
952
953 int mp4read_open(char *name)
954 {
955 uint32_t atomsize;
956 int ret;
957
958 mp4read_close();
959
960 g_fin = fopen(name, "rb");
961 if (!g_fin)
962 return ERR_FAIL;
963
964 if (mp4config.verbose.header)
965 fprintf(stderr, "**** MP4 header ****\n");
966 g_atom = g_head;
967 atomsize = INT_MAX;
968 if (parse(&atomsize) < 0)
969 goto err;
970 g_atom = g_moov;
971 atomsize = INT_MAX;
972 rewind(g_fin);
973 if ((ret = parse(&atomsize)) < 0)
974 {
975 fprintf(stderr, "parse:%d\n", ret);
976 goto err;
977 }
978
979 // alloc frame buffer
980 // fixme: error checking
981 mp4config.bitbuf.data = malloc(mp4config.frame.maxsize);
982
983 if (mp4config.verbose.header)
984 {
985 mp4info();
986 fprintf(stderr, "********************\n");
987 }
988
989 if (mp4config.verbose.tags)
990 {
991 rewind(g_fin);
992 g_atom = g_meta1;
993 atomsize = INT_MAX;
994 ret = parse(&atomsize);
995 if (ret < 0)
996 {
997 rewind(g_fin);
998 g_atom = g_meta2;
999 atomsize = INT_MAX;
1000 ret = parse(&atomsize);
1001 }
1002 }
1003
1004 return ERR_OK;
1005 err:
1006 mp4read_close();
1007 return ERR_FAIL;
1008 }
0 /****************************************************************************
1 MP4 input module
2
3 Copyright (C) 2017 Krzysztof Nikiel
4
5 This program is free software: you can redistribute it and/or modify
6 it under the terms of the GNU General Public License as published by
7 the Free Software Foundation, either version 3 of the License, or
8 (at your option) any later version.
9
10 This program is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 GNU General Public License for more details.
14
15 You should have received a copy of the GNU General Public License
16 along with this program. If not, see <http://www.gnu.org/licenses/>.
17 ****************************************************************************/
18
19 #include <stdint.h>
20
21 typedef struct
22 {
23 uint32_t ctime, mtime;
24 uint32_t samplerate;
25 // total sound samples
26 uint32_t samples;
27 uint32_t channels;
28 // sample depth
29 uint32_t bits;
30 // buffer config
31 uint16_t buffersize;
32 uint32_t bitratemax;
33 uint32_t bitrateavg;
34 uint32_t framesamples;
35 struct
36 {
37 uint32_t *data;
38 uint32_t ents;
39 int current;
40 int maxsize;
41 } frame;
42 // AudioSpecificConfig data:
43 struct
44 {
45 uint8_t buf[10];
46 int size;
47 } asc;
48 uint32_t mdatofs;
49 uint32_t mdatsize;
50 struct {
51 int size;
52 uint8_t *data;
53 } bitbuf;
54 struct {
55 int header;
56 int tags;
57 } verbose;
58 } mp4config_t;
59
60 extern mp4config_t mp4config;
61
62 int mp4read_open(char *name);
63 int mp4read_seek(int framenum);
64 int mp4read_frame(void);
65 int mp4read_close(void);
+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
7272 #endif
7373 #endif
7474
75 #define FAAD2_VERSION PACKAGE_VERSION
75 #define FAAD2_VERSION "unknown"
7676
7777 /* object types for AAC */
7878 #define MAIN 1
250250 unsigned long buffer_size,
251251 mp4AudioSpecificConfig *mp4ASC);
252252
253 /* Get version and copyright strings */
254 int NEAACDECAPI NeAACDecGetVersion(char **faad_id_string,
255 char **faad_copyright_string);
256
253257 #ifdef _WIN32
254258 #pragma pack(pop)
255259 #endif
0 #!/bin/sh
1 # install - install a program, script, or datafile
2
3 scriptversion=2014-09-12.12; # 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; won't work
274 # if double slashes aren't ignored.
275 if test -d "$dst"; then
276 if test "$is_target_a_directory" = never; then
277 echo "$0: $dst_arg: Is a directory" >&2
278 exit 1
279 fi
280 dstdir=$dst
281 dst=$dstdir/`basename "$src"`
282 dstdir_status=0
283 else
284 dstdir=`dirname "$dst"`
285 test -d "$dstdir"
286 dstdir_status=$?
287 fi
288 fi
289
290 obsolete_mkdir_used=false
291
292 if test $dstdir_status != 0; then
293 case $posix_mkdir in
294 '')
295 # Create intermediate dirs using mode 755 as modified by the umask.
296 # This is like FreeBSD 'install' as of 1997-10-28.
297 umask=`umask`
298 case $stripcmd.$umask in
299 # Optimize common cases.
300 *[2367][2367]) mkdir_umask=$umask;;
301 .*0[02][02] | .[02][02] | .[02]) mkdir_umask=22;;
302
303 *[0-7])
304 mkdir_umask=`expr $umask + 22 \
305 - $umask % 100 % 40 + $umask % 20 \
306 - $umask % 10 % 4 + $umask % 2
307 `;;
308 *) mkdir_umask=$umask,go-w;;
309 esac
310
311 # With -d, create the new directory with the user-specified mode.
312 # Otherwise, rely on $mkdir_umask.
313 if test -n "$dir_arg"; then
314 mkdir_mode=-m$mode
315 else
316 mkdir_mode=
317 fi
318
319 posix_mkdir=false
320 case $umask in
321 *[123567][0-7][0-7])
322 # POSIX mkdir -p sets u+wx bits regardless of umask, which
323 # is incompatible with FreeBSD 'install' when (umask & 300) != 0.
324 ;;
325 *)
326 # $RANDOM is not portable (e.g. dash); use it when possible to
327 # lower collision chance
328 tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$
329 trap 'ret=$?; rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir" 2>/dev/null; exit $ret' 0
330
331 # As "mkdir -p" follows symlinks and we work in /tmp possibly; so
332 # create the $tmpdir first (and fail if unsuccessful) to make sure
333 # that nobody tries to guess the $tmpdir name.
334 if (umask $mkdir_umask &&
335 $mkdirprog $mkdir_mode "$tmpdir" &&
336 exec $mkdirprog $mkdir_mode -p -- "$tmpdir/a/b") >/dev/null 2>&1
337 then
338 if test -z "$dir_arg" || {
339 # Check for POSIX incompatibilities with -m.
340 # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or
341 # other-writable bit of parent directory when it shouldn't.
342 # FreeBSD 6.1 mkdir -m -p sets mode of existing directory.
343 test_tmpdir="$tmpdir/a"
344 ls_ld_tmpdir=`ls -ld "$test_tmpdir"`
345 case $ls_ld_tmpdir in
346 d????-?r-*) different_mode=700;;
347 d????-?--*) different_mode=755;;
348 *) false;;
349 esac &&
350 $mkdirprog -m$different_mode -p -- "$test_tmpdir" && {
351 ls_ld_tmpdir_1=`ls -ld "$test_tmpdir"`
352 test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1"
353 }
354 }
355 then posix_mkdir=:
356 fi
357 rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir"
358 else
359 # Remove any dirs left behind by ancient mkdir implementations.
360 rmdir ./$mkdir_mode ./-p ./-- "$tmpdir" 2>/dev/null
361 fi
362 trap '' 0;;
363 esac;;
364 esac
365
366 if
367 $posix_mkdir && (
368 umask $mkdir_umask &&
369 $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir"
370 )
371 then :
372 else
373
374 # The umask is ridiculous, or mkdir does not conform to POSIX,
375 # or it failed possibly due to a race condition. Create the
376 # directory the slow way, step by step, checking for races as we go.
377
378 case $dstdir in
379 /*) prefix='/';;
380 [-=\(\)!]*) prefix='./';;
381 *) prefix='';;
382 esac
383
384 oIFS=$IFS
385 IFS=/
386 set -f
387 set fnord $dstdir
388 shift
389 set +f
390 IFS=$oIFS
391
392 prefixes=
393
394 for d
395 do
396 test X"$d" = X && continue
397
398 prefix=$prefix$d
399 if test -d "$prefix"; then
400 prefixes=
401 else
402 if $posix_mkdir; then
403 (umask=$mkdir_umask &&
404 $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir") && break
405 # Don't fail if two instances are running concurrently.
406 test -d "$prefix" || exit 1
407 else
408 case $prefix in
409 *\'*) qprefix=`echo "$prefix" | sed "s/'/'\\\\\\\\''/g"`;;
410 *) qprefix=$prefix;;
411 esac
412 prefixes="$prefixes '$qprefix'"
413 fi
414 fi
415 prefix=$prefix/
416 done
417
418 if test -n "$prefixes"; then
419 # Don't fail if two instances are running concurrently.
420 (umask $mkdir_umask &&
421 eval "\$doit_exec \$mkdirprog $prefixes") ||
422 test -d "$dstdir" || exit 1
423 obsolete_mkdir_used=true
424 fi
425 fi
426 fi
427
428 if test -n "$dir_arg"; then
429 { test -z "$chowncmd" || $doit $chowncmd "$dst"; } &&
430 { test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } &&
431 { test "$obsolete_mkdir_used$chowncmd$chgrpcmd" = false ||
432 test -z "$chmodcmd" || $doit $chmodcmd $mode "$dst"; } || exit 1
433 else
434
435 # Make a couple of temp file names in the proper directory.
436 dsttmp=$dstdir/_inst.$$_
437 rmtmp=$dstdir/_rm.$$_
438
439 # Trap to clean up those temp files at exit.
440 trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0
441
442 # Copy the file name to the temp name.
443 (umask $cp_umask && $doit_exec $cpprog "$src" "$dsttmp") &&
444
445 # and set any options; do chmod last to preserve setuid bits.
446 #
447 # If any of these fail, we abort the whole thing. If we want to
448 # ignore errors from any of these, just make sure not to ignore
449 # errors from the above "$doit $cpprog $src $dsttmp" command.
450 #
451 { test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } &&
452 { test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } &&
453 { test -z "$stripcmd" || $doit $stripcmd "$dsttmp"; } &&
454 { test -z "$chmodcmd" || $doit $chmodcmd $mode "$dsttmp"; } &&
455
456 # If -C, don't bother to copy if it wouldn't change the file.
457 if $copy_on_change &&
458 old=`LC_ALL=C ls -dlL "$dst" 2>/dev/null` &&
459 new=`LC_ALL=C ls -dlL "$dsttmp" 2>/dev/null` &&
460 set -f &&
461 set X $old && old=:$2:$4:$5:$6 &&
462 set X $new && new=:$2:$4:$5:$6 &&
463 set +f &&
464 test "$old" = "$new" &&
465 $cmpprog "$dst" "$dsttmp" >/dev/null 2>&1
466 then
467 rm -f "$dsttmp"
468 else
469 # Rename the file to the real destination.
470 $doit $mvcmd -f "$dsttmp" "$dst" 2>/dev/null ||
471
472 # The rename failed, perhaps because mv can't rename something else
473 # to itself, or perhaps because mv is so ancient that it does not
474 # support -f.
475 {
476 # Now remove or move aside any old file at destination location.
477 # We try this two ways since rm can't unlink itself on some
478 # systems and the destination file might be busy for other
479 # reasons. In this case, the final cleanup might fail but the new
480 # file should still install successfully.
481 {
482 test ! -f "$dst" ||
483 $doit $rmcmd -f "$dst" 2>/dev/null ||
484 { $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null &&
485 { $doit $rmcmd -f "$rmtmp" 2>/dev/null; :; }
486 } ||
487 { echo "$0: cannot unlink or rename $dst" >&2
488 (exit 1); exit 1
489 }
490 } &&
491
492 # Now rename the file to the real destination.
493 $doit $mvcmd "$dsttmp" "$dst"
494 }
495 fi || exit 1
496
497 trap '' 0
498 fi
499 done
500
501 # Local variables:
502 # eval: (add-hook 'write-file-hooks 'time-stamp)
503 # time-stamp-start: "scriptversion="
504 # time-stamp-format: "%:y-%02m-%02d.%02H"
505 # time-stamp-time-zone: "UTC"
506 # time-stamp-end: "; # UTC"
507 # End:
33 include_HEADERS = $(top_srcdir)/include/faad.h \
44 $(top_srcdir)/include/neaacdec.h
55
6 libfaad_la_LDFLAGS = -version-info 2:0:0
6 libfaad_la_LDFLAGS = -version-info 2:0:0 -no-undefined
77 libfaad_la_LIBADD = -lm
88 libfaad_la_CFLAGS = -fvisibility=hidden
99
1616 sbr_dct.c sbr_e_nf.c sbr_fbt.c sbr_hfadj.c sbr_hfgen.c \
1717 sbr_huff.c sbr_qmf.c sbr_syntax.c sbr_tf_grid.c sbr_dec.c \
1818 analysis.h bits.h cfft.h cfft_tab.h common.h \
19 decoder.h drc.h drm_dec.h error.h fixed.h filtbank.h \
19 drc.h drm_dec.h error.h fixed.h filtbank.h \
2020 huffman.h ic_predict.h iq_table.h is.h kbd_win.h lt_predict.h \
2121 mdct.h mdct_tab.h mp4.h ms.h output.h pns.h ps_dec.h ps_tables.h \
2222 pulse.h rvlc.h \
0 # Makefile.in generated by automake 1.15.1 from Makefile.am.
1 # @configure_input@
2
3 # Copyright (C) 1994-2017 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 VPATH = @srcdir@
18 am__is_gnu_make = { \
19 if test -z '$(MAKELEVEL)'; then \
20 false; \
21 elif test -n '$(MAKE_HOST)'; then \
22 true; \
23 elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
24 true; \
25 else \
26 false; \
27 fi; \
28 }
29 am__make_running_with_option = \
30 case $${target_option-} in \
31 ?) ;; \
32 *) echo "am__make_running_with_option: internal error: invalid" \
33 "target option '$${target_option-}' specified" >&2; \
34 exit 1;; \
35 esac; \
36 has_opt=no; \
37 sane_makeflags=$$MAKEFLAGS; \
38 if $(am__is_gnu_make); then \
39 sane_makeflags=$$MFLAGS; \
40 else \
41 case $$MAKEFLAGS in \
42 *\\[\ \ ]*) \
43 bs=\\; \
44 sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
45 | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
46 esac; \
47 fi; \
48 skip_next=no; \
49 strip_trailopt () \
50 { \
51 flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
52 }; \
53 for flg in $$sane_makeflags; do \
54 test $$skip_next = yes && { skip_next=no; continue; }; \
55 case $$flg in \
56 *=*|--*) continue;; \
57 -*I) strip_trailopt 'I'; skip_next=yes;; \
58 -*I?*) strip_trailopt 'I';; \
59 -*O) strip_trailopt 'O'; skip_next=yes;; \
60 -*O?*) strip_trailopt 'O';; \
61 -*l) strip_trailopt 'l'; skip_next=yes;; \
62 -*l?*) strip_trailopt 'l';; \
63 -[dEDm]) skip_next=yes;; \
64 -[JT]) skip_next=yes;; \
65 esac; \
66 case $$flg in \
67 *$$target_option*) has_opt=yes; break;; \
68 esac; \
69 done; \
70 test $$has_opt = yes
71 am__make_dryrun = (target_option=n; $(am__make_running_with_option))
72 am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
73 pkgdatadir = $(datadir)/@PACKAGE@
74 pkgincludedir = $(includedir)/@PACKAGE@
75 pkglibdir = $(libdir)/@PACKAGE@
76 pkglibexecdir = $(libexecdir)/@PACKAGE@
77 am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
78 install_sh_DATA = $(install_sh) -c -m 644
79 install_sh_PROGRAM = $(install_sh) -c
80 install_sh_SCRIPT = $(install_sh) -c
81 INSTALL_HEADER = $(INSTALL_DATA)
82 transform = $(program_transform_name)
83 NORMAL_INSTALL = :
84 PRE_INSTALL = :
85 POST_INSTALL = :
86 NORMAL_UNINSTALL = :
87 PRE_UNINSTALL = :
88 POST_UNINSTALL = :
89 build_triplet = @build@
90 host_triplet = @host@
91 subdir = libfaad
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 $(include_HEADERS) \
97 $(am__DIST_COMMON)
98 mkinstalldirs = $(install_sh) -d
99 CONFIG_HEADER = $(top_builddir)/config.h
100 CONFIG_CLEAN_FILES =
101 CONFIG_CLEAN_VPATH_FILES =
102 am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
103 am__vpath_adj = case $$p in \
104 $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
105 *) f=$$p;; \
106 esac;
107 am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
108 am__install_max = 40
109 am__nobase_strip_setup = \
110 srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
111 am__nobase_strip = \
112 for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
113 am__nobase_list = $(am__nobase_strip_setup); \
114 for p in $$list; do echo "$$p $$p"; done | \
115 sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
116 $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
117 if (++n[$$2] == $(am__install_max)) \
118 { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
119 END { for (dir in files) print dir, files[dir] }'
120 am__base_list = \
121 sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
122 sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
123 am__uninstall_files_from_dir = { \
124 test -z "$$files" \
125 || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
126 || { echo " ( cd '$$dir' && rm -f" $$files ")"; \
127 $(am__cd) "$$dir" && rm -f $$files; }; \
128 }
129 am__installdirs = "$(DESTDIR)$(libdir)" "$(DESTDIR)$(includedir)"
130 LTLIBRARIES = $(lib_LTLIBRARIES)
131 libfaad_la_DEPENDENCIES =
132 am_libfaad_la_OBJECTS = libfaad_la-bits.lo libfaad_la-cfft.lo \
133 libfaad_la-decoder.lo libfaad_la-drc.lo libfaad_la-drm_dec.lo \
134 libfaad_la-error.lo libfaad_la-filtbank.lo \
135 libfaad_la-ic_predict.lo libfaad_la-is.lo \
136 libfaad_la-lt_predict.lo libfaad_la-mdct.lo libfaad_la-mp4.lo \
137 libfaad_la-ms.lo libfaad_la-output.lo libfaad_la-pns.lo \
138 libfaad_la-ps_dec.lo libfaad_la-ps_syntax.lo \
139 libfaad_la-pulse.lo libfaad_la-specrec.lo libfaad_la-syntax.lo \
140 libfaad_la-tns.lo libfaad_la-hcr.lo libfaad_la-huffman.lo \
141 libfaad_la-rvlc.lo libfaad_la-ssr.lo libfaad_la-ssr_fb.lo \
142 libfaad_la-ssr_ipqf.lo libfaad_la-common.lo \
143 libfaad_la-sbr_dct.lo libfaad_la-sbr_e_nf.lo \
144 libfaad_la-sbr_fbt.lo libfaad_la-sbr_hfadj.lo \
145 libfaad_la-sbr_hfgen.lo libfaad_la-sbr_huff.lo \
146 libfaad_la-sbr_qmf.lo libfaad_la-sbr_syntax.lo \
147 libfaad_la-sbr_tf_grid.lo libfaad_la-sbr_dec.lo
148 libfaad_la_OBJECTS = $(am_libfaad_la_OBJECTS)
149 AM_V_lt = $(am__v_lt_@AM_V@)
150 am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@)
151 am__v_lt_0 = --silent
152 am__v_lt_1 =
153 libfaad_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
154 $(LIBTOOLFLAGS) --mode=link $(CCLD) $(libfaad_la_CFLAGS) \
155 $(CFLAGS) $(libfaad_la_LDFLAGS) $(LDFLAGS) -o $@
156 am__DEPENDENCIES_1 =
157 libfaad_drm_la_DEPENDENCIES = $(am__DEPENDENCIES_1)
158 am__objects_1 = libfaad_drm_la-bits.lo libfaad_drm_la-cfft.lo \
159 libfaad_drm_la-decoder.lo libfaad_drm_la-drc.lo \
160 libfaad_drm_la-drm_dec.lo libfaad_drm_la-error.lo \
161 libfaad_drm_la-filtbank.lo libfaad_drm_la-ic_predict.lo \
162 libfaad_drm_la-is.lo libfaad_drm_la-lt_predict.lo \
163 libfaad_drm_la-mdct.lo libfaad_drm_la-mp4.lo \
164 libfaad_drm_la-ms.lo libfaad_drm_la-output.lo \
165 libfaad_drm_la-pns.lo libfaad_drm_la-ps_dec.lo \
166 libfaad_drm_la-ps_syntax.lo libfaad_drm_la-pulse.lo \
167 libfaad_drm_la-specrec.lo libfaad_drm_la-syntax.lo \
168 libfaad_drm_la-tns.lo libfaad_drm_la-hcr.lo \
169 libfaad_drm_la-huffman.lo libfaad_drm_la-rvlc.lo \
170 libfaad_drm_la-ssr.lo libfaad_drm_la-ssr_fb.lo \
171 libfaad_drm_la-ssr_ipqf.lo libfaad_drm_la-common.lo \
172 libfaad_drm_la-sbr_dct.lo libfaad_drm_la-sbr_e_nf.lo \
173 libfaad_drm_la-sbr_fbt.lo libfaad_drm_la-sbr_hfadj.lo \
174 libfaad_drm_la-sbr_hfgen.lo libfaad_drm_la-sbr_huff.lo \
175 libfaad_drm_la-sbr_qmf.lo libfaad_drm_la-sbr_syntax.lo \
176 libfaad_drm_la-sbr_tf_grid.lo libfaad_drm_la-sbr_dec.lo
177 am_libfaad_drm_la_OBJECTS = $(am__objects_1)
178 libfaad_drm_la_OBJECTS = $(am_libfaad_drm_la_OBJECTS)
179 libfaad_drm_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \
180 $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \
181 $(libfaad_drm_la_CFLAGS) $(CFLAGS) $(libfaad_drm_la_LDFLAGS) \
182 $(LDFLAGS) -o $@
183 AM_V_P = $(am__v_P_@AM_V@)
184 am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
185 am__v_P_0 = false
186 am__v_P_1 = :
187 AM_V_GEN = $(am__v_GEN_@AM_V@)
188 am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
189 am__v_GEN_0 = @echo " GEN " $@;
190 am__v_GEN_1 =
191 AM_V_at = $(am__v_at_@AM_V@)
192 am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
193 am__v_at_0 = @
194 am__v_at_1 =
195 DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
196 depcomp = $(SHELL) $(top_srcdir)/depcomp
197 am__depfiles_maybe = depfiles
198 am__mv = mv -f
199 COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
200 $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
201 LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
202 $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \
203 $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
204 $(AM_CFLAGS) $(CFLAGS)
205 AM_V_CC = $(am__v_CC_@AM_V@)
206 am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@)
207 am__v_CC_0 = @echo " CC " $@;
208 am__v_CC_1 =
209 CCLD = $(CC)
210 LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
211 $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
212 $(AM_LDFLAGS) $(LDFLAGS) -o $@
213 AM_V_CCLD = $(am__v_CCLD_@AM_V@)
214 am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@)
215 am__v_CCLD_0 = @echo " CCLD " $@;
216 am__v_CCLD_1 =
217 SOURCES = $(libfaad_la_SOURCES) $(libfaad_drm_la_SOURCES)
218 DIST_SOURCES = $(libfaad_la_SOURCES) $(libfaad_drm_la_SOURCES)
219 am__can_run_installinfo = \
220 case $$AM_UPDATE_INFO_DIR in \
221 n|no|NO) false;; \
222 *) (install-info --version) >/dev/null 2>&1;; \
223 esac
224 HEADERS = $(include_HEADERS)
225 am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
226 # Read a list of newline-separated strings from the standard input,
227 # and print each of them once, without duplicates. Input order is
228 # *not* preserved.
229 am__uniquify_input = $(AWK) '\
230 BEGIN { nonempty = 0; } \
231 { items[$$0] = 1; nonempty = 1; } \
232 END { if (nonempty) { for (i in items) print i; }; } \
233 '
234 # Make sure the list of sources is unique. This is necessary because,
235 # e.g., the same source file might be shared among _SOURCES variables
236 # for different programs/libraries.
237 am__define_uniq_tagged_files = \
238 list='$(am__tagged_files)'; \
239 unique=`for i in $$list; do \
240 if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
241 done | $(am__uniquify_input)`
242 ETAGS = etags
243 CTAGS = ctags
244 am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/depcomp
245 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
246 ACLOCAL = @ACLOCAL@
247 AMTAR = @AMTAR@
248 AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
249 AR = @AR@
250 AUTOCONF = @AUTOCONF@
251 AUTOHEADER = @AUTOHEADER@
252 AUTOMAKE = @AUTOMAKE@
253 AWK = @AWK@
254 CC = @CC@
255 CCDEPMODE = @CCDEPMODE@
256 CFLAGS = @CFLAGS@
257 CPP = @CPP@
258 CPPFLAGS = @CPPFLAGS@
259 CXX = @CXX@
260 CXXCPP = @CXXCPP@
261 CXXDEPMODE = @CXXDEPMODE@
262 CXXFLAGS = @CXXFLAGS@
263 CYGPATH_W = @CYGPATH_W@
264 DEFS = @DEFS@
265 DEPDIR = @DEPDIR@
266 DLLTOOL = @DLLTOOL@
267 DSYMUTIL = @DSYMUTIL@
268 DUMPBIN = @DUMPBIN@
269 ECHO_C = @ECHO_C@
270 ECHO_N = @ECHO_N@
271 ECHO_T = @ECHO_T@
272 EGREP = @EGREP@
273 EXEEXT = @EXEEXT@
274 FGREP = @FGREP@
275 GREP = @GREP@
276 GTK_CONFIG = @GTK_CONFIG@
277 INSTALL = @INSTALL@
278 INSTALL_DATA = @INSTALL_DATA@
279 INSTALL_PROGRAM = @INSTALL_PROGRAM@
280 INSTALL_SCRIPT = @INSTALL_SCRIPT@
281 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
282 LD = @LD@
283 LDFLAGS = @LDFLAGS@
284 LIBOBJS = @LIBOBJS@
285 LIBS = @LIBS@
286 LIBTOOL = @LIBTOOL@
287 LIBTOOL_DEPS = @LIBTOOL_DEPS@
288 LIPO = @LIPO@
289 LN_S = @LN_S@
290 LTLIBOBJS = @LTLIBOBJS@
291 LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
292 MAKEINFO = @MAKEINFO@
293 MANIFEST_TOOL = @MANIFEST_TOOL@
294 MKDIR_P = @MKDIR_P@
295 MP4FF_LIBS = @MP4FF_LIBS@
296 NM = @NM@
297 NMEDIT = @NMEDIT@
298 OBJDUMP = @OBJDUMP@
299 OBJEXT = @OBJEXT@
300 OTOOL = @OTOOL@
301 OTOOL64 = @OTOOL64@
302 PACKAGE = @PACKAGE@
303 PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
304 PACKAGE_NAME = @PACKAGE_NAME@
305 PACKAGE_STRING = @PACKAGE_STRING@
306 PACKAGE_TARNAME = @PACKAGE_TARNAME@
307 PACKAGE_URL = @PACKAGE_URL@
308 PACKAGE_VERSION = @PACKAGE_VERSION@
309 PATH_SEPARATOR = @PATH_SEPARATOR@
310 RANLIB = @RANLIB@
311 RPMBUILD = @RPMBUILD@
312 SED = @SED@
313 SET_MAKE = @SET_MAKE@
314 SHELL = @SHELL@
315 STRIP = @STRIP@
316 VERSION = @VERSION@
317 XMMS_CONFIG = @XMMS_CONFIG@
318 abs_builddir = @abs_builddir@
319 abs_srcdir = @abs_srcdir@
320 abs_top_builddir = @abs_top_builddir@
321 abs_top_srcdir = @abs_top_srcdir@
322 ac_ct_AR = @ac_ct_AR@
323 ac_ct_CC = @ac_ct_CC@
324 ac_ct_CXX = @ac_ct_CXX@
325 ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
326 am__include = @am__include@
327 am__leading_dot = @am__leading_dot@
328 am__quote = @am__quote@
329 am__tar = @am__tar@
330 am__untar = @am__untar@
331 bindir = @bindir@
332 build = @build@
333 build_alias = @build_alias@
334 build_cpu = @build_cpu@
335 build_os = @build_os@
336 build_vendor = @build_vendor@
337 builddir = @builddir@
338 datadir = @datadir@
339 datarootdir = @datarootdir@
340 docdir = @docdir@
341 dvidir = @dvidir@
342 exec_prefix = @exec_prefix@
343 external_mp4v2 = @external_mp4v2@
344 host = @host@
345 host_alias = @host_alias@
346 host_cpu = @host_cpu@
347 host_os = @host_os@
348 host_vendor = @host_vendor@
349 htmldir = @htmldir@
350 includedir = @includedir@
351 infodir = @infodir@
352 install_sh = @install_sh@
353 libdir = @libdir@
354 libexecdir = @libexecdir@
355 localedir = @localedir@
356 localstatedir = @localstatedir@
357 mandir = @mandir@
358 mkdir_p = @mkdir_p@
359 oldincludedir = @oldincludedir@
360 pdfdir = @pdfdir@
361 prefix = @prefix@
362 program_transform_name = @program_transform_name@
363 psdir = @psdir@
364 runstatedir = @runstatedir@
365 sbindir = @sbindir@
366 sharedstatedir = @sharedstatedir@
367 srcdir = @srcdir@
368 sysconfdir = @sysconfdir@
369 target_alias = @target_alias@
370 top_build_prefix = @top_build_prefix@
371 top_builddir = @top_builddir@
372 top_srcdir = @top_srcdir@
373 lib_LTLIBRARIES = libfaad.la libfaad_drm.la
374 AM_CPPFLAGS = -iquote $(top_srcdir)/include
375 include_HEADERS = $(top_srcdir)/include/faad.h \
376 $(top_srcdir)/include/neaacdec.h
377
378 libfaad_la_LDFLAGS = -version-info 2:0:0 -no-undefined
379 libfaad_la_LIBADD = -lm
380 libfaad_la_CFLAGS = -fvisibility=hidden
381 libfaad_la_SOURCES = bits.c cfft.c decoder.c drc.c \
382 drm_dec.c error.c filtbank.c \
383 ic_predict.c is.c lt_predict.c mdct.c mp4.c ms.c output.c pns.c \
384 ps_dec.c ps_syntax.c \
385 pulse.c specrec.c syntax.c tns.c hcr.c huffman.c \
386 rvlc.c ssr.c ssr_fb.c ssr_ipqf.c common.c \
387 sbr_dct.c sbr_e_nf.c sbr_fbt.c sbr_hfadj.c sbr_hfgen.c \
388 sbr_huff.c sbr_qmf.c sbr_syntax.c sbr_tf_grid.c sbr_dec.c \
389 analysis.h bits.h cfft.h cfft_tab.h common.h \
390 drc.h drm_dec.h error.h fixed.h filtbank.h \
391 huffman.h ic_predict.h iq_table.h is.h kbd_win.h lt_predict.h \
392 mdct.h mdct_tab.h mp4.h ms.h output.h pns.h ps_dec.h ps_tables.h \
393 pulse.h rvlc.h \
394 sbr_dct.h sbr_dec.h sbr_e_nf.h sbr_fbt.h sbr_hfadj.h sbr_hfgen.h \
395 sbr_huff.h sbr_noise.h sbr_qmf.h sbr_syntax.h sbr_tf_grid.h \
396 sine_win.h specrec.h ssr.h ssr_fb.h ssr_ipqf.h \
397 ssr_win.h syntax.h structs.h tns.h \
398 sbr_qmf_c.h codebook/hcb.h \
399 codebook/hcb_1.h codebook/hcb_2.h codebook/hcb_3.h codebook/hcb_4.h \
400 codebook/hcb_5.h codebook/hcb_6.h codebook/hcb_7.h codebook/hcb_8.h \
401 codebook/hcb_9.h codebook/hcb_10.h codebook/hcb_11.h codebook/hcb_sf.h
402
403 libfaad_drm_la_LDFLAGS = ${libfaad_la_LDFLAGS}
404 libfaad_drm_la_LIBADD = ${libfaad_la_LIBADD}
405 libfaad_drm_la_CFLAGS = ${libfaad_la_CFLAGS} -DDRM -DDRM_PS
406 libfaad_drm_la_SOURCES = ${libfaad_la_SOURCES}
407 all: all-am
408
409 .SUFFIXES:
410 .SUFFIXES: .c .lo .o .obj
411 $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
412 @for dep in $?; do \
413 case '$(am__configure_deps)' in \
414 *$$dep*) \
415 ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
416 && { if test -f $@; then exit 0; else break; fi; }; \
417 exit 1;; \
418 esac; \
419 done; \
420 echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu libfaad/Makefile'; \
421 $(am__cd) $(top_srcdir) && \
422 $(AUTOMAKE) --gnu libfaad/Makefile
423 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
424 @case '$?' in \
425 *config.status*) \
426 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
427 *) \
428 echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
429 cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
430 esac;
431
432 $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
433 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
434
435 $(top_srcdir)/configure: $(am__configure_deps)
436 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
437 $(ACLOCAL_M4): $(am__aclocal_m4_deps)
438 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
439 $(am__aclocal_m4_deps):
440
441 install-libLTLIBRARIES: $(lib_LTLIBRARIES)
442 @$(NORMAL_INSTALL)
443 @list='$(lib_LTLIBRARIES)'; test -n "$(libdir)" || list=; \
444 list2=; for p in $$list; do \
445 if test -f $$p; then \
446 list2="$$list2 $$p"; \
447 else :; fi; \
448 done; \
449 test -z "$$list2" || { \
450 echo " $(MKDIR_P) '$(DESTDIR)$(libdir)'"; \
451 $(MKDIR_P) "$(DESTDIR)$(libdir)" || exit 1; \
452 echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 '$(DESTDIR)$(libdir)'"; \
453 $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 "$(DESTDIR)$(libdir)"; \
454 }
455
456 uninstall-libLTLIBRARIES:
457 @$(NORMAL_UNINSTALL)
458 @list='$(lib_LTLIBRARIES)'; test -n "$(libdir)" || list=; \
459 for p in $$list; do \
460 $(am__strip_dir) \
461 echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f '$(DESTDIR)$(libdir)/$$f'"; \
462 $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f "$(DESTDIR)$(libdir)/$$f"; \
463 done
464
465 clean-libLTLIBRARIES:
466 -test -z "$(lib_LTLIBRARIES)" || rm -f $(lib_LTLIBRARIES)
467 @list='$(lib_LTLIBRARIES)'; \
468 locs=`for p in $$list; do echo $$p; done | \
469 sed 's|^[^/]*$$|.|; s|/[^/]*$$||; s|$$|/so_locations|' | \
470 sort -u`; \
471 test -z "$$locs" || { \
472 echo rm -f $${locs}; \
473 rm -f $${locs}; \
474 }
475
476 libfaad.la: $(libfaad_la_OBJECTS) $(libfaad_la_DEPENDENCIES) $(EXTRA_libfaad_la_DEPENDENCIES)
477 $(AM_V_CCLD)$(libfaad_la_LINK) -rpath $(libdir) $(libfaad_la_OBJECTS) $(libfaad_la_LIBADD) $(LIBS)
478
479 libfaad_drm.la: $(libfaad_drm_la_OBJECTS) $(libfaad_drm_la_DEPENDENCIES) $(EXTRA_libfaad_drm_la_DEPENDENCIES)
480 $(AM_V_CCLD)$(libfaad_drm_la_LINK) -rpath $(libdir) $(libfaad_drm_la_OBJECTS) $(libfaad_drm_la_LIBADD) $(LIBS)
481
482 mostlyclean-compile:
483 -rm -f *.$(OBJEXT)
484
485 distclean-compile:
486 -rm -f *.tab.c
487
488 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-bits.Plo@am__quote@
489 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-cfft.Plo@am__quote@
490 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-common.Plo@am__quote@
491 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-decoder.Plo@am__quote@
492 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-drc.Plo@am__quote@
493 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-drm_dec.Plo@am__quote@
494 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-error.Plo@am__quote@
495 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-filtbank.Plo@am__quote@
496 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-hcr.Plo@am__quote@
497 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-huffman.Plo@am__quote@
498 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-ic_predict.Plo@am__quote@
499 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-is.Plo@am__quote@
500 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-lt_predict.Plo@am__quote@
501 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-mdct.Plo@am__quote@
502 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-mp4.Plo@am__quote@
503 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-ms.Plo@am__quote@
504 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-output.Plo@am__quote@
505 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-pns.Plo@am__quote@
506 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-ps_dec.Plo@am__quote@
507 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-ps_syntax.Plo@am__quote@
508 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-pulse.Plo@am__quote@
509 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-rvlc.Plo@am__quote@
510 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-sbr_dct.Plo@am__quote@
511 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-sbr_dec.Plo@am__quote@
512 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-sbr_e_nf.Plo@am__quote@
513 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-sbr_fbt.Plo@am__quote@
514 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-sbr_hfadj.Plo@am__quote@
515 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-sbr_hfgen.Plo@am__quote@
516 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-sbr_huff.Plo@am__quote@
517 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-sbr_qmf.Plo@am__quote@
518 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-sbr_syntax.Plo@am__quote@
519 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-sbr_tf_grid.Plo@am__quote@
520 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-specrec.Plo@am__quote@
521 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-ssr.Plo@am__quote@
522 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-ssr_fb.Plo@am__quote@
523 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-ssr_ipqf.Plo@am__quote@
524 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-syntax.Plo@am__quote@
525 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_drm_la-tns.Plo@am__quote@
526 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-bits.Plo@am__quote@
527 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-cfft.Plo@am__quote@
528 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-common.Plo@am__quote@
529 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-decoder.Plo@am__quote@
530 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-drc.Plo@am__quote@
531 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-drm_dec.Plo@am__quote@
532 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-error.Plo@am__quote@
533 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-filtbank.Plo@am__quote@
534 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-hcr.Plo@am__quote@
535 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-huffman.Plo@am__quote@
536 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-ic_predict.Plo@am__quote@
537 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-is.Plo@am__quote@
538 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-lt_predict.Plo@am__quote@
539 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-mdct.Plo@am__quote@
540 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-mp4.Plo@am__quote@
541 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-ms.Plo@am__quote@
542 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-output.Plo@am__quote@
543 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-pns.Plo@am__quote@
544 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-ps_dec.Plo@am__quote@
545 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-ps_syntax.Plo@am__quote@
546 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-pulse.Plo@am__quote@
547 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-rvlc.Plo@am__quote@
548 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-sbr_dct.Plo@am__quote@
549 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-sbr_dec.Plo@am__quote@
550 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-sbr_e_nf.Plo@am__quote@
551 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-sbr_fbt.Plo@am__quote@
552 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-sbr_hfadj.Plo@am__quote@
553 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-sbr_hfgen.Plo@am__quote@
554 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-sbr_huff.Plo@am__quote@
555 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-sbr_qmf.Plo@am__quote@
556 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-sbr_syntax.Plo@am__quote@
557 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-sbr_tf_grid.Plo@am__quote@
558 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-specrec.Plo@am__quote@
559 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-ssr.Plo@am__quote@
560 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-ssr_fb.Plo@am__quote@
561 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-ssr_ipqf.Plo@am__quote@
562 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-syntax.Plo@am__quote@
563 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libfaad_la-tns.Plo@am__quote@
564
565 .c.o:
566 @am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\
567 @am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\
568 @am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po
569 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
570 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
571 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $<
572
573 .c.obj:
574 @am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.obj$$||'`;\
575 @am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ `$(CYGPATH_W) '$<'` &&\
576 @am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po
577 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
578 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
579 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
580
581 .c.lo:
582 @am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.lo$$||'`;\
583 @am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\
584 @am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Plo
585 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
586 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
587 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $<
588
589 libfaad_la-bits.lo: bits.c
590 @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
591 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-bits.Tpo $(DEPDIR)/libfaad_la-bits.Plo
592 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='bits.c' object='libfaad_la-bits.lo' libtool=yes @AMDEPBACKSLASH@
593 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
594 @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
595
596 libfaad_la-cfft.lo: cfft.c
597 @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
598 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-cfft.Tpo $(DEPDIR)/libfaad_la-cfft.Plo
599 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='cfft.c' object='libfaad_la-cfft.lo' libtool=yes @AMDEPBACKSLASH@
600 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
601 @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
602
603 libfaad_la-decoder.lo: decoder.c
604 @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
605 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-decoder.Tpo $(DEPDIR)/libfaad_la-decoder.Plo
606 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='decoder.c' object='libfaad_la-decoder.lo' libtool=yes @AMDEPBACKSLASH@
607 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
608 @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
609
610 libfaad_la-drc.lo: drc.c
611 @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
612 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-drc.Tpo $(DEPDIR)/libfaad_la-drc.Plo
613 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='drc.c' object='libfaad_la-drc.lo' libtool=yes @AMDEPBACKSLASH@
614 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
615 @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
616
617 libfaad_la-drm_dec.lo: drm_dec.c
618 @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
619 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-drm_dec.Tpo $(DEPDIR)/libfaad_la-drm_dec.Plo
620 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='drm_dec.c' object='libfaad_la-drm_dec.lo' libtool=yes @AMDEPBACKSLASH@
621 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
622 @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
623
624 libfaad_la-error.lo: error.c
625 @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
626 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-error.Tpo $(DEPDIR)/libfaad_la-error.Plo
627 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='error.c' object='libfaad_la-error.lo' libtool=yes @AMDEPBACKSLASH@
628 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
629 @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
630
631 libfaad_la-filtbank.lo: filtbank.c
632 @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
633 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-filtbank.Tpo $(DEPDIR)/libfaad_la-filtbank.Plo
634 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='filtbank.c' object='libfaad_la-filtbank.lo' libtool=yes @AMDEPBACKSLASH@
635 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
636 @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
637
638 libfaad_la-ic_predict.lo: ic_predict.c
639 @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
640 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-ic_predict.Tpo $(DEPDIR)/libfaad_la-ic_predict.Plo
641 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='ic_predict.c' object='libfaad_la-ic_predict.lo' libtool=yes @AMDEPBACKSLASH@
642 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
643 @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
644
645 libfaad_la-is.lo: is.c
646 @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
647 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-is.Tpo $(DEPDIR)/libfaad_la-is.Plo
648 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='is.c' object='libfaad_la-is.lo' libtool=yes @AMDEPBACKSLASH@
649 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
650 @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
651
652 libfaad_la-lt_predict.lo: lt_predict.c
653 @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
654 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-lt_predict.Tpo $(DEPDIR)/libfaad_la-lt_predict.Plo
655 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lt_predict.c' object='libfaad_la-lt_predict.lo' libtool=yes @AMDEPBACKSLASH@
656 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
657 @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
658
659 libfaad_la-mdct.lo: mdct.c
660 @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
661 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-mdct.Tpo $(DEPDIR)/libfaad_la-mdct.Plo
662 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mdct.c' object='libfaad_la-mdct.lo' libtool=yes @AMDEPBACKSLASH@
663 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
664 @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
665
666 libfaad_la-mp4.lo: mp4.c
667 @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
668 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-mp4.Tpo $(DEPDIR)/libfaad_la-mp4.Plo
669 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mp4.c' object='libfaad_la-mp4.lo' libtool=yes @AMDEPBACKSLASH@
670 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
671 @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
672
673 libfaad_la-ms.lo: ms.c
674 @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
675 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-ms.Tpo $(DEPDIR)/libfaad_la-ms.Plo
676 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='ms.c' object='libfaad_la-ms.lo' libtool=yes @AMDEPBACKSLASH@
677 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
678 @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
679
680 libfaad_la-output.lo: output.c
681 @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
682 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-output.Tpo $(DEPDIR)/libfaad_la-output.Plo
683 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='output.c' object='libfaad_la-output.lo' libtool=yes @AMDEPBACKSLASH@
684 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
685 @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
686
687 libfaad_la-pns.lo: pns.c
688 @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
689 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-pns.Tpo $(DEPDIR)/libfaad_la-pns.Plo
690 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='pns.c' object='libfaad_la-pns.lo' libtool=yes @AMDEPBACKSLASH@
691 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
692 @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
693
694 libfaad_la-ps_dec.lo: ps_dec.c
695 @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
696 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-ps_dec.Tpo $(DEPDIR)/libfaad_la-ps_dec.Plo
697 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='ps_dec.c' object='libfaad_la-ps_dec.lo' libtool=yes @AMDEPBACKSLASH@
698 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
699 @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
700
701 libfaad_la-ps_syntax.lo: ps_syntax.c
702 @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
703 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-ps_syntax.Tpo $(DEPDIR)/libfaad_la-ps_syntax.Plo
704 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='ps_syntax.c' object='libfaad_la-ps_syntax.lo' libtool=yes @AMDEPBACKSLASH@
705 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
706 @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
707
708 libfaad_la-pulse.lo: pulse.c
709 @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
710 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-pulse.Tpo $(DEPDIR)/libfaad_la-pulse.Plo
711 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='pulse.c' object='libfaad_la-pulse.lo' libtool=yes @AMDEPBACKSLASH@
712 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
713 @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
714
715 libfaad_la-specrec.lo: specrec.c
716 @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
717 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-specrec.Tpo $(DEPDIR)/libfaad_la-specrec.Plo
718 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='specrec.c' object='libfaad_la-specrec.lo' libtool=yes @AMDEPBACKSLASH@
719 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
720 @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
721
722 libfaad_la-syntax.lo: syntax.c
723 @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
724 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-syntax.Tpo $(DEPDIR)/libfaad_la-syntax.Plo
725 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='syntax.c' object='libfaad_la-syntax.lo' libtool=yes @AMDEPBACKSLASH@
726 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
727 @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
728
729 libfaad_la-tns.lo: tns.c
730 @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
731 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-tns.Tpo $(DEPDIR)/libfaad_la-tns.Plo
732 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tns.c' object='libfaad_la-tns.lo' libtool=yes @AMDEPBACKSLASH@
733 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
734 @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
735
736 libfaad_la-hcr.lo: hcr.c
737 @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
738 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-hcr.Tpo $(DEPDIR)/libfaad_la-hcr.Plo
739 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='hcr.c' object='libfaad_la-hcr.lo' libtool=yes @AMDEPBACKSLASH@
740 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
741 @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
742
743 libfaad_la-huffman.lo: huffman.c
744 @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
745 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-huffman.Tpo $(DEPDIR)/libfaad_la-huffman.Plo
746 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='huffman.c' object='libfaad_la-huffman.lo' libtool=yes @AMDEPBACKSLASH@
747 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
748 @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
749
750 libfaad_la-rvlc.lo: rvlc.c
751 @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
752 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-rvlc.Tpo $(DEPDIR)/libfaad_la-rvlc.Plo
753 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='rvlc.c' object='libfaad_la-rvlc.lo' libtool=yes @AMDEPBACKSLASH@
754 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
755 @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
756
757 libfaad_la-ssr.lo: ssr.c
758 @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
759 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-ssr.Tpo $(DEPDIR)/libfaad_la-ssr.Plo
760 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='ssr.c' object='libfaad_la-ssr.lo' libtool=yes @AMDEPBACKSLASH@
761 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
762 @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
763
764 libfaad_la-ssr_fb.lo: ssr_fb.c
765 @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
766 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-ssr_fb.Tpo $(DEPDIR)/libfaad_la-ssr_fb.Plo
767 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='ssr_fb.c' object='libfaad_la-ssr_fb.lo' libtool=yes @AMDEPBACKSLASH@
768 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
769 @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
770
771 libfaad_la-ssr_ipqf.lo: ssr_ipqf.c
772 @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
773 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-ssr_ipqf.Tpo $(DEPDIR)/libfaad_la-ssr_ipqf.Plo
774 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='ssr_ipqf.c' object='libfaad_la-ssr_ipqf.lo' libtool=yes @AMDEPBACKSLASH@
775 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
776 @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
777
778 libfaad_la-common.lo: common.c
779 @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
780 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-common.Tpo $(DEPDIR)/libfaad_la-common.Plo
781 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='common.c' object='libfaad_la-common.lo' libtool=yes @AMDEPBACKSLASH@
782 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
783 @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
784
785 libfaad_la-sbr_dct.lo: sbr_dct.c
786 @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
787 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-sbr_dct.Tpo $(DEPDIR)/libfaad_la-sbr_dct.Plo
788 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='sbr_dct.c' object='libfaad_la-sbr_dct.lo' libtool=yes @AMDEPBACKSLASH@
789 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
790 @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
791
792 libfaad_la-sbr_e_nf.lo: sbr_e_nf.c
793 @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
794 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-sbr_e_nf.Tpo $(DEPDIR)/libfaad_la-sbr_e_nf.Plo
795 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='sbr_e_nf.c' object='libfaad_la-sbr_e_nf.lo' libtool=yes @AMDEPBACKSLASH@
796 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
797 @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
798
799 libfaad_la-sbr_fbt.lo: sbr_fbt.c
800 @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
801 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-sbr_fbt.Tpo $(DEPDIR)/libfaad_la-sbr_fbt.Plo
802 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='sbr_fbt.c' object='libfaad_la-sbr_fbt.lo' libtool=yes @AMDEPBACKSLASH@
803 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
804 @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
805
806 libfaad_la-sbr_hfadj.lo: sbr_hfadj.c
807 @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
808 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-sbr_hfadj.Tpo $(DEPDIR)/libfaad_la-sbr_hfadj.Plo
809 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='sbr_hfadj.c' object='libfaad_la-sbr_hfadj.lo' libtool=yes @AMDEPBACKSLASH@
810 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
811 @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
812
813 libfaad_la-sbr_hfgen.lo: sbr_hfgen.c
814 @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
815 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-sbr_hfgen.Tpo $(DEPDIR)/libfaad_la-sbr_hfgen.Plo
816 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='sbr_hfgen.c' object='libfaad_la-sbr_hfgen.lo' libtool=yes @AMDEPBACKSLASH@
817 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
818 @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
819
820 libfaad_la-sbr_huff.lo: sbr_huff.c
821 @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
822 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-sbr_huff.Tpo $(DEPDIR)/libfaad_la-sbr_huff.Plo
823 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='sbr_huff.c' object='libfaad_la-sbr_huff.lo' libtool=yes @AMDEPBACKSLASH@
824 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
825 @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
826
827 libfaad_la-sbr_qmf.lo: sbr_qmf.c
828 @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
829 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-sbr_qmf.Tpo $(DEPDIR)/libfaad_la-sbr_qmf.Plo
830 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='sbr_qmf.c' object='libfaad_la-sbr_qmf.lo' libtool=yes @AMDEPBACKSLASH@
831 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
832 @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
833
834 libfaad_la-sbr_syntax.lo: sbr_syntax.c
835 @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
836 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-sbr_syntax.Tpo $(DEPDIR)/libfaad_la-sbr_syntax.Plo
837 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='sbr_syntax.c' object='libfaad_la-sbr_syntax.lo' libtool=yes @AMDEPBACKSLASH@
838 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
839 @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
840
841 libfaad_la-sbr_tf_grid.lo: sbr_tf_grid.c
842 @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
843 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-sbr_tf_grid.Tpo $(DEPDIR)/libfaad_la-sbr_tf_grid.Plo
844 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='sbr_tf_grid.c' object='libfaad_la-sbr_tf_grid.lo' libtool=yes @AMDEPBACKSLASH@
845 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
846 @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
847
848 libfaad_la-sbr_dec.lo: sbr_dec.c
849 @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
850 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_la-sbr_dec.Tpo $(DEPDIR)/libfaad_la-sbr_dec.Plo
851 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='sbr_dec.c' object='libfaad_la-sbr_dec.lo' libtool=yes @AMDEPBACKSLASH@
852 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
853 @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
854
855 libfaad_drm_la-bits.lo: bits.c
856 @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
857 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-bits.Tpo $(DEPDIR)/libfaad_drm_la-bits.Plo
858 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='bits.c' object='libfaad_drm_la-bits.lo' libtool=yes @AMDEPBACKSLASH@
859 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
860 @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
861
862 libfaad_drm_la-cfft.lo: cfft.c
863 @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
864 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-cfft.Tpo $(DEPDIR)/libfaad_drm_la-cfft.Plo
865 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='cfft.c' object='libfaad_drm_la-cfft.lo' libtool=yes @AMDEPBACKSLASH@
866 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
867 @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
868
869 libfaad_drm_la-decoder.lo: decoder.c
870 @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
871 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-decoder.Tpo $(DEPDIR)/libfaad_drm_la-decoder.Plo
872 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='decoder.c' object='libfaad_drm_la-decoder.lo' libtool=yes @AMDEPBACKSLASH@
873 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
874 @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
875
876 libfaad_drm_la-drc.lo: drc.c
877 @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
878 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-drc.Tpo $(DEPDIR)/libfaad_drm_la-drc.Plo
879 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='drc.c' object='libfaad_drm_la-drc.lo' libtool=yes @AMDEPBACKSLASH@
880 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
881 @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
882
883 libfaad_drm_la-drm_dec.lo: drm_dec.c
884 @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
885 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-drm_dec.Tpo $(DEPDIR)/libfaad_drm_la-drm_dec.Plo
886 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='drm_dec.c' object='libfaad_drm_la-drm_dec.lo' libtool=yes @AMDEPBACKSLASH@
887 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
888 @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
889
890 libfaad_drm_la-error.lo: error.c
891 @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
892 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-error.Tpo $(DEPDIR)/libfaad_drm_la-error.Plo
893 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='error.c' object='libfaad_drm_la-error.lo' libtool=yes @AMDEPBACKSLASH@
894 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
895 @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
896
897 libfaad_drm_la-filtbank.lo: filtbank.c
898 @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
899 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-filtbank.Tpo $(DEPDIR)/libfaad_drm_la-filtbank.Plo
900 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='filtbank.c' object='libfaad_drm_la-filtbank.lo' libtool=yes @AMDEPBACKSLASH@
901 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
902 @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
903
904 libfaad_drm_la-ic_predict.lo: ic_predict.c
905 @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
906 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-ic_predict.Tpo $(DEPDIR)/libfaad_drm_la-ic_predict.Plo
907 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='ic_predict.c' object='libfaad_drm_la-ic_predict.lo' libtool=yes @AMDEPBACKSLASH@
908 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
909 @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
910
911 libfaad_drm_la-is.lo: is.c
912 @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
913 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-is.Tpo $(DEPDIR)/libfaad_drm_la-is.Plo
914 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='is.c' object='libfaad_drm_la-is.lo' libtool=yes @AMDEPBACKSLASH@
915 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
916 @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
917
918 libfaad_drm_la-lt_predict.lo: lt_predict.c
919 @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
920 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-lt_predict.Tpo $(DEPDIR)/libfaad_drm_la-lt_predict.Plo
921 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lt_predict.c' object='libfaad_drm_la-lt_predict.lo' libtool=yes @AMDEPBACKSLASH@
922 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
923 @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
924
925 libfaad_drm_la-mdct.lo: mdct.c
926 @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
927 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-mdct.Tpo $(DEPDIR)/libfaad_drm_la-mdct.Plo
928 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mdct.c' object='libfaad_drm_la-mdct.lo' libtool=yes @AMDEPBACKSLASH@
929 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
930 @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
931
932 libfaad_drm_la-mp4.lo: mp4.c
933 @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
934 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-mp4.Tpo $(DEPDIR)/libfaad_drm_la-mp4.Plo
935 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mp4.c' object='libfaad_drm_la-mp4.lo' libtool=yes @AMDEPBACKSLASH@
936 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
937 @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
938
939 libfaad_drm_la-ms.lo: ms.c
940 @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
941 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-ms.Tpo $(DEPDIR)/libfaad_drm_la-ms.Plo
942 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='ms.c' object='libfaad_drm_la-ms.lo' libtool=yes @AMDEPBACKSLASH@
943 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
944 @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
945
946 libfaad_drm_la-output.lo: output.c
947 @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
948 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-output.Tpo $(DEPDIR)/libfaad_drm_la-output.Plo
949 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='output.c' object='libfaad_drm_la-output.lo' libtool=yes @AMDEPBACKSLASH@
950 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
951 @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
952
953 libfaad_drm_la-pns.lo: pns.c
954 @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
955 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-pns.Tpo $(DEPDIR)/libfaad_drm_la-pns.Plo
956 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='pns.c' object='libfaad_drm_la-pns.lo' libtool=yes @AMDEPBACKSLASH@
957 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
958 @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
959
960 libfaad_drm_la-ps_dec.lo: ps_dec.c
961 @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
962 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-ps_dec.Tpo $(DEPDIR)/libfaad_drm_la-ps_dec.Plo
963 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='ps_dec.c' object='libfaad_drm_la-ps_dec.lo' libtool=yes @AMDEPBACKSLASH@
964 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
965 @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
966
967 libfaad_drm_la-ps_syntax.lo: ps_syntax.c
968 @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
969 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-ps_syntax.Tpo $(DEPDIR)/libfaad_drm_la-ps_syntax.Plo
970 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='ps_syntax.c' object='libfaad_drm_la-ps_syntax.lo' libtool=yes @AMDEPBACKSLASH@
971 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
972 @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
973
974 libfaad_drm_la-pulse.lo: pulse.c
975 @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
976 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-pulse.Tpo $(DEPDIR)/libfaad_drm_la-pulse.Plo
977 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='pulse.c' object='libfaad_drm_la-pulse.lo' libtool=yes @AMDEPBACKSLASH@
978 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
979 @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
980
981 libfaad_drm_la-specrec.lo: specrec.c
982 @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
983 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-specrec.Tpo $(DEPDIR)/libfaad_drm_la-specrec.Plo
984 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='specrec.c' object='libfaad_drm_la-specrec.lo' libtool=yes @AMDEPBACKSLASH@
985 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
986 @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
987
988 libfaad_drm_la-syntax.lo: syntax.c
989 @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
990 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-syntax.Tpo $(DEPDIR)/libfaad_drm_la-syntax.Plo
991 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='syntax.c' object='libfaad_drm_la-syntax.lo' libtool=yes @AMDEPBACKSLASH@
992 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
993 @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
994
995 libfaad_drm_la-tns.lo: tns.c
996 @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
997 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-tns.Tpo $(DEPDIR)/libfaad_drm_la-tns.Plo
998 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tns.c' object='libfaad_drm_la-tns.lo' libtool=yes @AMDEPBACKSLASH@
999 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
1000 @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
1001
1002 libfaad_drm_la-hcr.lo: hcr.c
1003 @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
1004 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-hcr.Tpo $(DEPDIR)/libfaad_drm_la-hcr.Plo
1005 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='hcr.c' object='libfaad_drm_la-hcr.lo' libtool=yes @AMDEPBACKSLASH@
1006 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
1007 @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
1008
1009 libfaad_drm_la-huffman.lo: huffman.c
1010 @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
1011 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-huffman.Tpo $(DEPDIR)/libfaad_drm_la-huffman.Plo
1012 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='huffman.c' object='libfaad_drm_la-huffman.lo' libtool=yes @AMDEPBACKSLASH@
1013 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
1014 @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
1015
1016 libfaad_drm_la-rvlc.lo: rvlc.c
1017 @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
1018 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-rvlc.Tpo $(DEPDIR)/libfaad_drm_la-rvlc.Plo
1019 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='rvlc.c' object='libfaad_drm_la-rvlc.lo' libtool=yes @AMDEPBACKSLASH@
1020 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
1021 @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
1022
1023 libfaad_drm_la-ssr.lo: ssr.c
1024 @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
1025 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-ssr.Tpo $(DEPDIR)/libfaad_drm_la-ssr.Plo
1026 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='ssr.c' object='libfaad_drm_la-ssr.lo' libtool=yes @AMDEPBACKSLASH@
1027 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
1028 @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
1029
1030 libfaad_drm_la-ssr_fb.lo: ssr_fb.c
1031 @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
1032 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-ssr_fb.Tpo $(DEPDIR)/libfaad_drm_la-ssr_fb.Plo
1033 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='ssr_fb.c' object='libfaad_drm_la-ssr_fb.lo' libtool=yes @AMDEPBACKSLASH@
1034 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
1035 @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
1036
1037 libfaad_drm_la-ssr_ipqf.lo: ssr_ipqf.c
1038 @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
1039 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-ssr_ipqf.Tpo $(DEPDIR)/libfaad_drm_la-ssr_ipqf.Plo
1040 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='ssr_ipqf.c' object='libfaad_drm_la-ssr_ipqf.lo' libtool=yes @AMDEPBACKSLASH@
1041 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
1042 @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
1043
1044 libfaad_drm_la-common.lo: common.c
1045 @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
1046 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-common.Tpo $(DEPDIR)/libfaad_drm_la-common.Plo
1047 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='common.c' object='libfaad_drm_la-common.lo' libtool=yes @AMDEPBACKSLASH@
1048 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
1049 @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
1050
1051 libfaad_drm_la-sbr_dct.lo: sbr_dct.c
1052 @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
1053 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-sbr_dct.Tpo $(DEPDIR)/libfaad_drm_la-sbr_dct.Plo
1054 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='sbr_dct.c' object='libfaad_drm_la-sbr_dct.lo' libtool=yes @AMDEPBACKSLASH@
1055 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
1056 @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
1057
1058 libfaad_drm_la-sbr_e_nf.lo: sbr_e_nf.c
1059 @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
1060 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-sbr_e_nf.Tpo $(DEPDIR)/libfaad_drm_la-sbr_e_nf.Plo
1061 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='sbr_e_nf.c' object='libfaad_drm_la-sbr_e_nf.lo' libtool=yes @AMDEPBACKSLASH@
1062 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
1063 @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
1064
1065 libfaad_drm_la-sbr_fbt.lo: sbr_fbt.c
1066 @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
1067 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-sbr_fbt.Tpo $(DEPDIR)/libfaad_drm_la-sbr_fbt.Plo
1068 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='sbr_fbt.c' object='libfaad_drm_la-sbr_fbt.lo' libtool=yes @AMDEPBACKSLASH@
1069 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
1070 @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
1071
1072 libfaad_drm_la-sbr_hfadj.lo: sbr_hfadj.c
1073 @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
1074 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-sbr_hfadj.Tpo $(DEPDIR)/libfaad_drm_la-sbr_hfadj.Plo
1075 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='sbr_hfadj.c' object='libfaad_drm_la-sbr_hfadj.lo' libtool=yes @AMDEPBACKSLASH@
1076 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
1077 @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
1078
1079 libfaad_drm_la-sbr_hfgen.lo: sbr_hfgen.c
1080 @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
1081 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-sbr_hfgen.Tpo $(DEPDIR)/libfaad_drm_la-sbr_hfgen.Plo
1082 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='sbr_hfgen.c' object='libfaad_drm_la-sbr_hfgen.lo' libtool=yes @AMDEPBACKSLASH@
1083 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
1084 @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
1085
1086 libfaad_drm_la-sbr_huff.lo: sbr_huff.c
1087 @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
1088 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-sbr_huff.Tpo $(DEPDIR)/libfaad_drm_la-sbr_huff.Plo
1089 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='sbr_huff.c' object='libfaad_drm_la-sbr_huff.lo' libtool=yes @AMDEPBACKSLASH@
1090 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
1091 @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
1092
1093 libfaad_drm_la-sbr_qmf.lo: sbr_qmf.c
1094 @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
1095 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-sbr_qmf.Tpo $(DEPDIR)/libfaad_drm_la-sbr_qmf.Plo
1096 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='sbr_qmf.c' object='libfaad_drm_la-sbr_qmf.lo' libtool=yes @AMDEPBACKSLASH@
1097 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
1098 @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
1099
1100 libfaad_drm_la-sbr_syntax.lo: sbr_syntax.c
1101 @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
1102 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-sbr_syntax.Tpo $(DEPDIR)/libfaad_drm_la-sbr_syntax.Plo
1103 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='sbr_syntax.c' object='libfaad_drm_la-sbr_syntax.lo' libtool=yes @AMDEPBACKSLASH@
1104 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
1105 @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
1106
1107 libfaad_drm_la-sbr_tf_grid.lo: sbr_tf_grid.c
1108 @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
1109 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-sbr_tf_grid.Tpo $(DEPDIR)/libfaad_drm_la-sbr_tf_grid.Plo
1110 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='sbr_tf_grid.c' object='libfaad_drm_la-sbr_tf_grid.lo' libtool=yes @AMDEPBACKSLASH@
1111 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
1112 @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
1113
1114 libfaad_drm_la-sbr_dec.lo: sbr_dec.c
1115 @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
1116 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libfaad_drm_la-sbr_dec.Tpo $(DEPDIR)/libfaad_drm_la-sbr_dec.Plo
1117 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='sbr_dec.c' object='libfaad_drm_la-sbr_dec.lo' libtool=yes @AMDEPBACKSLASH@
1118 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
1119 @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
1120
1121 mostlyclean-libtool:
1122 -rm -f *.lo
1123
1124 clean-libtool:
1125 -rm -rf .libs _libs
1126 install-includeHEADERS: $(include_HEADERS)
1127 @$(NORMAL_INSTALL)
1128 @list='$(include_HEADERS)'; test -n "$(includedir)" || list=; \
1129 if test -n "$$list"; then \
1130 echo " $(MKDIR_P) '$(DESTDIR)$(includedir)'"; \
1131 $(MKDIR_P) "$(DESTDIR)$(includedir)" || exit 1; \
1132 fi; \
1133 for p in $$list; do \
1134 if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
1135 echo "$$d$$p"; \
1136 done | $(am__base_list) | \
1137 while read files; do \
1138 echo " $(INSTALL_HEADER) $$files '$(DESTDIR)$(includedir)'"; \
1139 $(INSTALL_HEADER) $$files "$(DESTDIR)$(includedir)" || exit $$?; \
1140 done
1141
1142 uninstall-includeHEADERS:
1143 @$(NORMAL_UNINSTALL)
1144 @list='$(include_HEADERS)'; test -n "$(includedir)" || list=; \
1145 files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
1146 dir='$(DESTDIR)$(includedir)'; $(am__uninstall_files_from_dir)
1147
1148 ID: $(am__tagged_files)
1149 $(am__define_uniq_tagged_files); mkid -fID $$unique
1150 tags: tags-am
1151 TAGS: tags
1152
1153 tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
1154 set x; \
1155 here=`pwd`; \
1156 $(am__define_uniq_tagged_files); \
1157 shift; \
1158 if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
1159 test -n "$$unique" || unique=$$empty_fix; \
1160 if test $$# -gt 0; then \
1161 $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
1162 "$$@" $$unique; \
1163 else \
1164 $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
1165 $$unique; \
1166 fi; \
1167 fi
1168 ctags: ctags-am
1169
1170 CTAGS: ctags
1171 ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
1172 $(am__define_uniq_tagged_files); \
1173 test -z "$(CTAGS_ARGS)$$unique" \
1174 || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
1175 $$unique
1176
1177 GTAGS:
1178 here=`$(am__cd) $(top_builddir) && pwd` \
1179 && $(am__cd) $(top_srcdir) \
1180 && gtags -i $(GTAGS_ARGS) "$$here"
1181 cscopelist: cscopelist-am
1182
1183 cscopelist-am: $(am__tagged_files)
1184 list='$(am__tagged_files)'; \
1185 case "$(srcdir)" in \
1186 [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
1187 *) sdir=$(subdir)/$(srcdir) ;; \
1188 esac; \
1189 for i in $$list; do \
1190 if test -f "$$i"; then \
1191 echo "$(subdir)/$$i"; \
1192 else \
1193 echo "$$sdir/$$i"; \
1194 fi; \
1195 done >> $(top_builddir)/cscope.files
1196
1197 distclean-tags:
1198 -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
1199
1200 distdir: $(DISTFILES)
1201 @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
1202 topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
1203 list='$(DISTFILES)'; \
1204 dist_files=`for file in $$list; do echo $$file; done | \
1205 sed -e "s|^$$srcdirstrip/||;t" \
1206 -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
1207 case $$dist_files in \
1208 */*) $(MKDIR_P) `echo "$$dist_files" | \
1209 sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
1210 sort -u` ;; \
1211 esac; \
1212 for file in $$dist_files; do \
1213 if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
1214 if test -d $$d/$$file; then \
1215 dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
1216 if test -d "$(distdir)/$$file"; then \
1217 find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
1218 fi; \
1219 if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
1220 cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
1221 find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
1222 fi; \
1223 cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
1224 else \
1225 test -f "$(distdir)/$$file" \
1226 || cp -p $$d/$$file "$(distdir)/$$file" \
1227 || exit 1; \
1228 fi; \
1229 done
1230 check-am: all-am
1231 check: check-am
1232 all-am: Makefile $(LTLIBRARIES) $(HEADERS)
1233 installdirs:
1234 for dir in "$(DESTDIR)$(libdir)" "$(DESTDIR)$(includedir)"; do \
1235 test -z "$$dir" || $(MKDIR_P) "$$dir"; \
1236 done
1237 install: install-am
1238 install-exec: install-exec-am
1239 install-data: install-data-am
1240 uninstall: uninstall-am
1241
1242 install-am: all-am
1243 @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
1244
1245 installcheck: installcheck-am
1246 install-strip:
1247 if test -z '$(STRIP)'; then \
1248 $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
1249 install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
1250 install; \
1251 else \
1252 $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
1253 install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
1254 "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
1255 fi
1256 mostlyclean-generic:
1257
1258 clean-generic:
1259
1260 distclean-generic:
1261 -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
1262 -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
1263
1264 maintainer-clean-generic:
1265 @echo "This command is intended for maintainers to use"
1266 @echo "it deletes files that may require special tools to rebuild."
1267 clean: clean-am
1268
1269 clean-am: clean-generic clean-libLTLIBRARIES clean-libtool \
1270 mostlyclean-am
1271
1272 distclean: distclean-am
1273 -rm -rf ./$(DEPDIR)
1274 -rm -f Makefile
1275 distclean-am: clean-am distclean-compile distclean-generic \
1276 distclean-tags
1277
1278 dvi: dvi-am
1279
1280 dvi-am:
1281
1282 html: html-am
1283
1284 html-am:
1285
1286 info: info-am
1287
1288 info-am:
1289
1290 install-data-am: install-includeHEADERS
1291
1292 install-dvi: install-dvi-am
1293
1294 install-dvi-am:
1295
1296 install-exec-am: install-libLTLIBRARIES
1297
1298 install-html: install-html-am
1299
1300 install-html-am:
1301
1302 install-info: install-info-am
1303
1304 install-info-am:
1305
1306 install-man:
1307
1308 install-pdf: install-pdf-am
1309
1310 install-pdf-am:
1311
1312 install-ps: install-ps-am
1313
1314 install-ps-am:
1315
1316 installcheck-am:
1317
1318 maintainer-clean: maintainer-clean-am
1319 -rm -rf ./$(DEPDIR)
1320 -rm -f Makefile
1321 maintainer-clean-am: distclean-am maintainer-clean-generic
1322
1323 mostlyclean: mostlyclean-am
1324
1325 mostlyclean-am: mostlyclean-compile mostlyclean-generic \
1326 mostlyclean-libtool
1327
1328 pdf: pdf-am
1329
1330 pdf-am:
1331
1332 ps: ps-am
1333
1334 ps-am:
1335
1336 uninstall-am: uninstall-includeHEADERS uninstall-libLTLIBRARIES
1337
1338 .MAKE: install-am install-strip
1339
1340 .PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \
1341 clean-libLTLIBRARIES clean-libtool cscopelist-am ctags \
1342 ctags-am distclean distclean-compile distclean-generic \
1343 distclean-libtool distclean-tags distdir dvi dvi-am html \
1344 html-am info info-am install install-am install-data \
1345 install-data-am install-dvi install-dvi-am install-exec \
1346 install-exec-am install-html install-html-am \
1347 install-includeHEADERS install-info install-info-am \
1348 install-libLTLIBRARIES install-man install-pdf install-pdf-am \
1349 install-ps install-ps-am install-strip installcheck \
1350 installcheck-am installdirs maintainer-clean \
1351 maintainer-clean-generic mostlyclean mostlyclean-compile \
1352 mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
1353 tags tags-am uninstall uninstall-am uninstall-includeHEADERS \
1354 uninstall-libLTLIBRARIES
1355
1356 .PRECIOUS: Makefile
1357
1358
1359 # Tell versions [3.59,3.63) of GNU make to not export all variables.
1360 # Otherwise a system limit (for SysV at least) may be exceeded.
1361 .NOEXPORT:
6363 NeAACDecFrameInfo *hInfo);
6464
6565
66 int NEAACDECAPI NeAACDecGetVersion(char **faad_id_string,
67 char **faad_copyright_string)
68 {
69 static char *libfaadName = PACKAGE_VERSION;
70 static char *libCopyright =
71 " Copyright 2002-2004: Ahead Software AG\n"
72 " http://www.audiocoding.com\n"
73 " bug tracking: https://sourceforge.net/p/faac/bugs/\n";
74
75 if (faad_id_string)
76 *faad_id_string = libfaadName;
77
78 if (faad_copyright_string)
79 *faad_copyright_string = libCopyright;
80
81 return 0;
82 }
6683 char NEAACDECAPI *NeAACDecGetErrorMessage(unsigned char errcode)
6784 {
6885 if (errcode >= NUM_ERROR_MESSAGES)
114131 hDecoder->config.downMatrix = 0;
115132 hDecoder->adts_header_present = 0;
116133 hDecoder->adif_header_present = 0;
117 hDecoder->latm_header_present = 0;
134 hDecoder->latm_header_present = 0;
118135 #ifdef ERROR_RESILIENCE
119136 hDecoder->aacSectionDataResilienceFlag = 0;
120137 hDecoder->aacScalefactorDataResilienceFlag = 0;
282299 #endif
283300 /* Check if an ADIF header is present */
284301 if ((buffer[0] == 'A') && (buffer[1] == 'D') &&
285 (buffer[2] == 'I') && (buffer[3] == 'F'))
286 {
302 (buffer[2] == 'I') && (buffer[3] == 'F'))
303 {
287304 hDecoder->adif_header_present = 1;
288305
289306 get_adif_header(&adif, &ld);
324341 }
325342
326343 if (!*samplerate)
327 return -1;
344 return -1;
328345
329346 #if (defined(PS_DEC) || defined(DRM_PS))
330347 /* check if we have a mono file */
+0
-20
libfaad/libfaad.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}") = "libfaad", "libfaad.vcproj", "{BC3EFE27-9015-4C9C-AD3C-72B3B7ED2114}"
3 EndProject
4 Global
5 GlobalSection(SolutionConfigurationPlatforms) = preSolution
6 Debug|Win32 = Debug|Win32
7 Release|Win32 = Release|Win32
8 EndGlobalSection
9 GlobalSection(ProjectConfigurationPlatforms) = postSolution
10 {BC3EFE27-9015-4C9C-AD3C-72B3B7ED2114}.Debug|Win32.ActiveCfg = Debug|Win32
11 {BC3EFE27-9015-4C9C-AD3C-72B3B7ED2114}.Release|Win32.ActiveCfg = Release|Win32
12 EndGlobalSection
13 GlobalSection(SolutionProperties) = preSolution
14 HideSolutionNode = FALSE
15 EndGlobalSection
16 GlobalSection(DPCodeReviewSolutionGUID) = preSolution
17 DPCodeReviewSolutionGUID = {00000000-0000-0000-0000-000000000000}
18 EndGlobalSection
19 EndGlobal
+0
-1300
libfaad/libfaad.vcproj less more
0 <?xml version="1.0" encoding="Windows-1252"?>
1 <VisualStudioProject
2 ProjectType="Visual C++"
3 Version="8.00"
4 Name="libfaad"
5 ProjectGUID="{BC3EFE27-9015-4C9C-AD3C-72B3B7ED2114}"
6 >
7 <Platforms>
8 <Platform
9 Name="Win32"
10 />
11 </Platforms>
12 <ToolFiles>
13 </ToolFiles>
14 <Configurations>
15 <Configuration
16 Name="Release|Win32"
17 OutputDirectory=".\Release"
18 IntermediateDirectory=".\Release"
19 ConfigurationType="4"
20 InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
21 UseOfMFC="0"
22 ATLMinimizesCRunTimeLibraryUsage="false"
23 CharacterSet="2"
24 >
25 <Tool
26 Name="VCPreBuildEventTool"
27 />
28 <Tool
29 Name="VCCustomBuildTool"
30 />
31 <Tool
32 Name="VCXMLDataGeneratorTool"
33 />
34 <Tool
35 Name="VCWebServiceProxyGeneratorTool"
36 />
37 <Tool
38 Name="VCMIDLTool"
39 />
40 <Tool
41 Name="VCCLCompilerTool"
42 AdditionalOptions=""
43 Optimization="2"
44 InlineFunctionExpansion="1"
45 AdditionalIncludeDirectories="../include"
46 PreprocessorDefinitions="NDEBUG;WIN32;_LIB"
47 StringPooling="true"
48 RuntimeLibrary="2"
49 EnableFunctionLevelLinking="true"
50 UsePrecompiledHeader="0"
51 PrecompiledHeaderFile=".\Release/libfaad.pch"
52 AssemblerListingLocation=".\Release/"
53 ObjectFile=".\Release/"
54 ProgramDataBaseFileName=".\Release/"
55 WarningLevel="3"
56 SuppressStartupBanner="true"
57 Detect64BitPortabilityProblems="true"
58 />
59 <Tool
60 Name="VCManagedResourceCompilerTool"
61 />
62 <Tool
63 Name="VCResourceCompilerTool"
64 PreprocessorDefinitions="NDEBUG"
65 Culture="1043"
66 />
67 <Tool
68 Name="VCPreLinkEventTool"
69 />
70 <Tool
71 Name="VCLibrarianTool"
72 AdditionalOptions=""
73 OutputFile=".\Release\libfaad.lib"
74 SuppressStartupBanner="true"
75 />
76 <Tool
77 Name="VCALinkTool"
78 />
79 <Tool
80 Name="VCXDCMakeTool"
81 />
82 <Tool
83 Name="VCBscMakeTool"
84 />
85 <Tool
86 Name="VCFxCopTool"
87 />
88 <Tool
89 Name="VCPostBuildEventTool"
90 />
91 </Configuration>
92 <Configuration
93 Name="Debug|Win32"
94 OutputDirectory=".\Debug"
95 IntermediateDirectory=".\Debug"
96 ConfigurationType="4"
97 InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops"
98 UseOfMFC="0"
99 ATLMinimizesCRunTimeLibraryUsage="false"
100 CharacterSet="2"
101 >
102 <Tool
103 Name="VCPreBuildEventTool"
104 />
105 <Tool
106 Name="VCCustomBuildTool"
107 />
108 <Tool
109 Name="VCXMLDataGeneratorTool"
110 />
111 <Tool
112 Name="VCWebServiceProxyGeneratorTool"
113 />
114 <Tool
115 Name="VCMIDLTool"
116 />
117 <Tool
118 Name="VCCLCompilerTool"
119 AdditionalOptions=""
120 Optimization="0"
121 AdditionalIncludeDirectories="../include"
122 PreprocessorDefinitions="_DEBUG;WIN32;_LIB"
123 BasicRuntimeChecks="3"
124 RuntimeLibrary="3"
125 UsePrecompiledHeader="0"
126 PrecompiledHeaderFile=".\Debug/libfaad.pch"
127 AssemblerListingLocation=".\Debug/"
128 ObjectFile=".\Debug/"
129 ProgramDataBaseFileName=".\Debug/"
130 WarningLevel="3"
131 SuppressStartupBanner="true"
132 DebugInformationFormat="4"
133 />
134 <Tool
135 Name="VCManagedResourceCompilerTool"
136 />
137 <Tool
138 Name="VCResourceCompilerTool"
139 PreprocessorDefinitions="_DEBUG"
140 Culture="1043"
141 />
142 <Tool
143 Name="VCPreLinkEventTool"
144 />
145 <Tool
146 Name="VCLibrarianTool"
147 AdditionalOptions=""
148 OutputFile=".\Debug\libfaad.lib"
149 SuppressStartupBanner="true"
150 />
151 <Tool
152 Name="VCALinkTool"
153 />
154 <Tool
155 Name="VCXDCMakeTool"
156 />
157 <Tool
158 Name="VCBscMakeTool"
159 />
160 <Tool
161 Name="VCFxCopTool"
162 />
163 <Tool
164 Name="VCPostBuildEventTool"
165 />
166 </Configuration>
167 </Configurations>
168 <References>
169 </References>
170 <Files>
171 <Filter
172 Name="Source Files"
173 Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
174 >
175 <File
176 RelativePath="bits.c"
177 >
178 <FileConfiguration
179 Name="Release|Win32"
180 >
181 <Tool
182 Name="VCCLCompilerTool"
183 AdditionalOptions=""
184 Optimization="2"
185 PreprocessorDefinitions=""
186 />
187 </FileConfiguration>
188 <FileConfiguration
189 Name="Debug|Win32"
190 >
191 <Tool
192 Name="VCCLCompilerTool"
193 AdditionalOptions=""
194 Optimization="0"
195 PreprocessorDefinitions=""
196 BasicRuntimeChecks="3"
197 />
198 </FileConfiguration>
199 </File>
200 <File
201 RelativePath="cfft.c"
202 >
203 <FileConfiguration
204 Name="Release|Win32"
205 >
206 <Tool
207 Name="VCCLCompilerTool"
208 AdditionalOptions=""
209 Optimization="2"
210 PreprocessorDefinitions=""
211 />
212 </FileConfiguration>
213 <FileConfiguration
214 Name="Debug|Win32"
215 >
216 <Tool
217 Name="VCCLCompilerTool"
218 AdditionalOptions=""
219 Optimization="0"
220 PreprocessorDefinitions=""
221 BasicRuntimeChecks="3"
222 />
223 </FileConfiguration>
224 </File>
225 <File
226 RelativePath="common.c"
227 >
228 <FileConfiguration
229 Name="Release|Win32"
230 >
231 <Tool
232 Name="VCCLCompilerTool"
233 AdditionalOptions=""
234 Optimization="2"
235 PreprocessorDefinitions=""
236 />
237 </FileConfiguration>
238 <FileConfiguration
239 Name="Debug|Win32"
240 >
241 <Tool
242 Name="VCCLCompilerTool"
243 AdditionalOptions=""
244 Optimization="0"
245 PreprocessorDefinitions=""
246 BasicRuntimeChecks="3"
247 />
248 </FileConfiguration>
249 </File>
250 <File
251 RelativePath="decoder.c"
252 >
253 <FileConfiguration
254 Name="Release|Win32"
255 >
256 <Tool
257 Name="VCCLCompilerTool"
258 AdditionalOptions=""
259 Optimization="2"
260 PreprocessorDefinitions=""
261 />
262 </FileConfiguration>
263 <FileConfiguration
264 Name="Debug|Win32"
265 >
266 <Tool
267 Name="VCCLCompilerTool"
268 AdditionalOptions=""
269 Optimization="0"
270 PreprocessorDefinitions=""
271 BasicRuntimeChecks="3"
272 />
273 </FileConfiguration>
274 </File>
275 <File
276 RelativePath="drc.c"
277 >
278 <FileConfiguration
279 Name="Release|Win32"
280 >
281 <Tool
282 Name="VCCLCompilerTool"
283 AdditionalOptions=""
284 Optimization="2"
285 PreprocessorDefinitions=""
286 />
287 </FileConfiguration>
288 <FileConfiguration
289 Name="Debug|Win32"
290 >
291 <Tool
292 Name="VCCLCompilerTool"
293 AdditionalOptions=""
294 Optimization="0"
295 PreprocessorDefinitions=""
296 BasicRuntimeChecks="3"
297 />
298 </FileConfiguration>
299 </File>
300 <File
301 RelativePath=".\drm_dec.c"
302 >
303 </File>
304 <File
305 RelativePath="error.c"
306 >
307 <FileConfiguration
308 Name="Release|Win32"
309 >
310 <Tool
311 Name="VCCLCompilerTool"
312 AdditionalOptions=""
313 Optimization="2"
314 PreprocessorDefinitions=""
315 />
316 </FileConfiguration>
317 <FileConfiguration
318 Name="Debug|Win32"
319 >
320 <Tool
321 Name="VCCLCompilerTool"
322 AdditionalOptions=""
323 Optimization="0"
324 PreprocessorDefinitions=""
325 BasicRuntimeChecks="3"
326 />
327 </FileConfiguration>
328 </File>
329 <File
330 RelativePath="filtbank.c"
331 >
332 <FileConfiguration
333 Name="Release|Win32"
334 >
335 <Tool
336 Name="VCCLCompilerTool"
337 AdditionalOptions=""
338 Optimization="2"
339 PreprocessorDefinitions=""
340 />
341 </FileConfiguration>
342 <FileConfiguration
343 Name="Debug|Win32"
344 >
345 <Tool
346 Name="VCCLCompilerTool"
347 AdditionalOptions=""
348 Optimization="0"
349 PreprocessorDefinitions=""
350 BasicRuntimeChecks="3"
351 />
352 </FileConfiguration>
353 </File>
354 <File
355 RelativePath="hcr.c"
356 >
357 <FileConfiguration
358 Name="Release|Win32"
359 >
360 <Tool
361 Name="VCCLCompilerTool"
362 AdditionalOptions=""
363 Optimization="2"
364 PreprocessorDefinitions=""
365 />
366 </FileConfiguration>
367 <FileConfiguration
368 Name="Debug|Win32"
369 >
370 <Tool
371 Name="VCCLCompilerTool"
372 AdditionalOptions=""
373 Optimization="0"
374 PreprocessorDefinitions=""
375 BasicRuntimeChecks="3"
376 />
377 </FileConfiguration>
378 </File>
379 <File
380 RelativePath="huffman.c"
381 >
382 <FileConfiguration
383 Name="Release|Win32"
384 >
385 <Tool
386 Name="VCCLCompilerTool"
387 AdditionalOptions=""
388 Optimization="2"
389 PreprocessorDefinitions=""
390 />
391 </FileConfiguration>
392 <FileConfiguration
393 Name="Debug|Win32"
394 >
395 <Tool
396 Name="VCCLCompilerTool"
397 AdditionalOptions=""
398 Optimization="0"
399 PreprocessorDefinitions=""
400 BasicRuntimeChecks="3"
401 />
402 </FileConfiguration>
403 </File>
404 <File
405 RelativePath="ic_predict.c"
406 >
407 <FileConfiguration
408 Name="Release|Win32"
409 >
410 <Tool
411 Name="VCCLCompilerTool"
412 AdditionalOptions=""
413 Optimization="2"
414 PreprocessorDefinitions=""
415 />
416 </FileConfiguration>
417 <FileConfiguration
418 Name="Debug|Win32"
419 >
420 <Tool
421 Name="VCCLCompilerTool"
422 AdditionalOptions=""
423 Optimization="0"
424 PreprocessorDefinitions=""
425 BasicRuntimeChecks="3"
426 />
427 </FileConfiguration>
428 </File>
429 <File
430 RelativePath="is.c"
431 >
432 <FileConfiguration
433 Name="Release|Win32"
434 >
435 <Tool
436 Name="VCCLCompilerTool"
437 AdditionalOptions=""
438 Optimization="2"
439 PreprocessorDefinitions=""
440 />
441 </FileConfiguration>
442 <FileConfiguration
443 Name="Debug|Win32"
444 >
445 <Tool
446 Name="VCCLCompilerTool"
447 AdditionalOptions=""
448 Optimization="0"
449 PreprocessorDefinitions=""
450 BasicRuntimeChecks="3"
451 />
452 </FileConfiguration>
453 </File>
454 <File
455 RelativePath="lt_predict.c"
456 >
457 <FileConfiguration
458 Name="Release|Win32"
459 >
460 <Tool
461 Name="VCCLCompilerTool"
462 AdditionalOptions=""
463 Optimization="2"
464 PreprocessorDefinitions=""
465 />
466 </FileConfiguration>
467 <FileConfiguration
468 Name="Debug|Win32"
469 >
470 <Tool
471 Name="VCCLCompilerTool"
472 AdditionalOptions=""
473 Optimization="0"
474 PreprocessorDefinitions=""
475 BasicRuntimeChecks="3"
476 />
477 </FileConfiguration>
478 </File>
479 <File
480 RelativePath="mdct.c"
481 >
482 <FileConfiguration
483 Name="Release|Win32"
484 >
485 <Tool
486 Name="VCCLCompilerTool"
487 AdditionalOptions=""
488 Optimization="2"
489 PreprocessorDefinitions=""
490 />
491 </FileConfiguration>
492 <FileConfiguration
493 Name="Debug|Win32"
494 >
495 <Tool
496 Name="VCCLCompilerTool"
497 AdditionalOptions=""
498 Optimization="0"
499 PreprocessorDefinitions=""
500 BasicRuntimeChecks="3"
501 />
502 </FileConfiguration>
503 </File>
504 <File
505 RelativePath="mp4.c"
506 >
507 <FileConfiguration
508 Name="Release|Win32"
509 >
510 <Tool
511 Name="VCCLCompilerTool"
512 AdditionalOptions=""
513 Optimization="2"
514 PreprocessorDefinitions=""
515 />
516 </FileConfiguration>
517 <FileConfiguration
518 Name="Debug|Win32"
519 >
520 <Tool
521 Name="VCCLCompilerTool"
522 AdditionalOptions=""
523 Optimization="0"
524 PreprocessorDefinitions=""
525 BasicRuntimeChecks="3"
526 />
527 </FileConfiguration>
528 </File>
529 <File
530 RelativePath="ms.c"
531 >
532 <FileConfiguration
533 Name="Release|Win32"
534 >
535 <Tool
536 Name="VCCLCompilerTool"
537 AdditionalOptions=""
538 Optimization="2"
539 PreprocessorDefinitions=""
540 />
541 </FileConfiguration>
542 <FileConfiguration
543 Name="Debug|Win32"
544 >
545 <Tool
546 Name="VCCLCompilerTool"
547 AdditionalOptions=""
548 Optimization="0"
549 PreprocessorDefinitions=""
550 BasicRuntimeChecks="3"
551 />
552 </FileConfiguration>
553 </File>
554 <File
555 RelativePath="output.c"
556 >
557 <FileConfiguration
558 Name="Release|Win32"
559 >
560 <Tool
561 Name="VCCLCompilerTool"
562 AdditionalOptions=""
563 Optimization="2"
564 PreprocessorDefinitions=""
565 />
566 </FileConfiguration>
567 <FileConfiguration
568 Name="Debug|Win32"
569 >
570 <Tool
571 Name="VCCLCompilerTool"
572 AdditionalOptions=""
573 Optimization="0"
574 PreprocessorDefinitions=""
575 BasicRuntimeChecks="3"
576 />
577 </FileConfiguration>
578 </File>
579 <File
580 RelativePath="pns.c"
581 >
582 <FileConfiguration
583 Name="Release|Win32"
584 >
585 <Tool
586 Name="VCCLCompilerTool"
587 AdditionalOptions=""
588 Optimization="2"
589 PreprocessorDefinitions=""
590 />
591 </FileConfiguration>
592 <FileConfiguration
593 Name="Debug|Win32"
594 >
595 <Tool
596 Name="VCCLCompilerTool"
597 AdditionalOptions=""
598 Optimization="0"
599 PreprocessorDefinitions=""
600 BasicRuntimeChecks="3"
601 />
602 </FileConfiguration>
603 </File>
604 <File
605 RelativePath=".\ps_dec.c"
606 >
607 </File>
608 <File
609 RelativePath=".\ps_syntax.c"
610 >
611 </File>
612 <File
613 RelativePath="pulse.c"
614 >
615 <FileConfiguration
616 Name="Release|Win32"
617 >
618 <Tool
619 Name="VCCLCompilerTool"
620 AdditionalOptions=""
621 Optimization="2"
622 PreprocessorDefinitions=""
623 />
624 </FileConfiguration>
625 <FileConfiguration
626 Name="Debug|Win32"
627 >
628 <Tool
629 Name="VCCLCompilerTool"
630 AdditionalOptions=""
631 Optimization="0"
632 PreprocessorDefinitions=""
633 BasicRuntimeChecks="3"
634 />
635 </FileConfiguration>
636 </File>
637 <File
638 RelativePath="rvlc.c"
639 >
640 <FileConfiguration
641 Name="Release|Win32"
642 >
643 <Tool
644 Name="VCCLCompilerTool"
645 AdditionalOptions=""
646 Optimization="2"
647 PreprocessorDefinitions=""
648 />
649 </FileConfiguration>
650 <FileConfiguration
651 Name="Debug|Win32"
652 >
653 <Tool
654 Name="VCCLCompilerTool"
655 AdditionalOptions=""
656 Optimization="0"
657 PreprocessorDefinitions=""
658 BasicRuntimeChecks="3"
659 />
660 </FileConfiguration>
661 </File>
662 <File
663 RelativePath="sbr_dct.c"
664 >
665 <FileConfiguration
666 Name="Release|Win32"
667 >
668 <Tool
669 Name="VCCLCompilerTool"
670 AdditionalOptions=""
671 Optimization="2"
672 PreprocessorDefinitions=""
673 />
674 </FileConfiguration>
675 <FileConfiguration
676 Name="Debug|Win32"
677 >
678 <Tool
679 Name="VCCLCompilerTool"
680 AdditionalOptions=""
681 Optimization="0"
682 PreprocessorDefinitions=""
683 BasicRuntimeChecks="3"
684 />
685 </FileConfiguration>
686 </File>
687 <File
688 RelativePath="sbr_dec.c"
689 >
690 <FileConfiguration
691 Name="Release|Win32"
692 >
693 <Tool
694 Name="VCCLCompilerTool"
695 AdditionalOptions=""
696 Optimization="2"
697 PreprocessorDefinitions=""
698 />
699 </FileConfiguration>
700 <FileConfiguration
701 Name="Debug|Win32"
702 >
703 <Tool
704 Name="VCCLCompilerTool"
705 AdditionalOptions=""
706 Optimization="0"
707 PreprocessorDefinitions=""
708 BasicRuntimeChecks="3"
709 />
710 </FileConfiguration>
711 </File>
712 <File
713 RelativePath="sbr_e_nf.c"
714 >
715 <FileConfiguration
716 Name="Release|Win32"
717 >
718 <Tool
719 Name="VCCLCompilerTool"
720 AdditionalOptions=""
721 Optimization="2"
722 PreprocessorDefinitions=""
723 />
724 </FileConfiguration>
725 <FileConfiguration
726 Name="Debug|Win32"
727 >
728 <Tool
729 Name="VCCLCompilerTool"
730 AdditionalOptions=""
731 Optimization="0"
732 PreprocessorDefinitions=""
733 BasicRuntimeChecks="3"
734 />
735 </FileConfiguration>
736 </File>
737 <File
738 RelativePath="sbr_fbt.c"
739 >
740 <FileConfiguration
741 Name="Release|Win32"
742 >
743 <Tool
744 Name="VCCLCompilerTool"
745 AdditionalOptions=""
746 Optimization="2"
747 PreprocessorDefinitions=""
748 />
749 </FileConfiguration>
750 <FileConfiguration
751 Name="Debug|Win32"
752 >
753 <Tool
754 Name="VCCLCompilerTool"
755 AdditionalOptions=""
756 Optimization="0"
757 PreprocessorDefinitions=""
758 BasicRuntimeChecks="3"
759 />
760 </FileConfiguration>
761 </File>
762 <File
763 RelativePath="sbr_hfadj.c"
764 >
765 <FileConfiguration
766 Name="Release|Win32"
767 >
768 <Tool
769 Name="VCCLCompilerTool"
770 AdditionalOptions=""
771 Optimization="2"
772 PreprocessorDefinitions=""
773 />
774 </FileConfiguration>
775 <FileConfiguration
776 Name="Debug|Win32"
777 >
778 <Tool
779 Name="VCCLCompilerTool"
780 AdditionalOptions=""
781 Optimization="0"
782 PreprocessorDefinitions=""
783 BasicRuntimeChecks="3"
784 />
785 </FileConfiguration>
786 </File>
787 <File
788 RelativePath="sbr_hfgen.c"
789 >
790 <FileConfiguration
791 Name="Release|Win32"
792 >
793 <Tool
794 Name="VCCLCompilerTool"
795 AdditionalOptions=""
796 Optimization="2"
797 PreprocessorDefinitions=""
798 />
799 </FileConfiguration>
800 <FileConfiguration
801 Name="Debug|Win32"
802 >
803 <Tool
804 Name="VCCLCompilerTool"
805 AdditionalOptions=""
806 Optimization="0"
807 PreprocessorDefinitions=""
808 BasicRuntimeChecks="3"
809 />
810 </FileConfiguration>
811 </File>
812 <File
813 RelativePath="sbr_huff.c"
814 >
815 <FileConfiguration
816 Name="Release|Win32"
817 >
818 <Tool
819 Name="VCCLCompilerTool"
820 AdditionalOptions=""
821 Optimization="2"
822 PreprocessorDefinitions=""
823 />
824 </FileConfiguration>
825 <FileConfiguration
826 Name="Debug|Win32"
827 >
828 <Tool
829 Name="VCCLCompilerTool"
830 AdditionalOptions=""
831 Optimization="0"
832 PreprocessorDefinitions=""
833 BasicRuntimeChecks="3"
834 />
835 </FileConfiguration>
836 </File>
837 <File
838 RelativePath="sbr_qmf.c"
839 >
840 <FileConfiguration
841 Name="Release|Win32"
842 >
843 <Tool
844 Name="VCCLCompilerTool"
845 AdditionalOptions=""
846 Optimization="2"
847 PreprocessorDefinitions=""
848 />
849 </FileConfiguration>
850 <FileConfiguration
851 Name="Debug|Win32"
852 >
853 <Tool
854 Name="VCCLCompilerTool"
855 AdditionalOptions=""
856 Optimization="0"
857 PreprocessorDefinitions=""
858 BasicRuntimeChecks="3"
859 />
860 </FileConfiguration>
861 </File>
862 <File
863 RelativePath="sbr_syntax.c"
864 >
865 <FileConfiguration
866 Name="Release|Win32"
867 >
868 <Tool
869 Name="VCCLCompilerTool"
870 AdditionalOptions=""
871 Optimization="2"
872 PreprocessorDefinitions=""
873 />
874 </FileConfiguration>
875 <FileConfiguration
876 Name="Debug|Win32"
877 >
878 <Tool
879 Name="VCCLCompilerTool"
880 AdditionalOptions=""
881 Optimization="0"
882 PreprocessorDefinitions=""
883 BasicRuntimeChecks="3"
884 />
885 </FileConfiguration>
886 </File>
887 <File
888 RelativePath="sbr_tf_grid.c"
889 >
890 <FileConfiguration
891 Name="Release|Win32"
892 >
893 <Tool
894 Name="VCCLCompilerTool"
895 AdditionalOptions=""
896 Optimization="2"
897 PreprocessorDefinitions=""
898 />
899 </FileConfiguration>
900 <FileConfiguration
901 Name="Debug|Win32"
902 >
903 <Tool
904 Name="VCCLCompilerTool"
905 AdditionalOptions=""
906 Optimization="0"
907 PreprocessorDefinitions=""
908 BasicRuntimeChecks="3"
909 />
910 </FileConfiguration>
911 </File>
912 <File
913 RelativePath="specrec.c"
914 >
915 <FileConfiguration
916 Name="Release|Win32"
917 >
918 <Tool
919 Name="VCCLCompilerTool"
920 AdditionalOptions=""
921 Optimization="2"
922 PreprocessorDefinitions=""
923 />
924 </FileConfiguration>
925 <FileConfiguration
926 Name="Debug|Win32"
927 >
928 <Tool
929 Name="VCCLCompilerTool"
930 AdditionalOptions=""
931 Optimization="0"
932 PreprocessorDefinitions=""
933 BasicRuntimeChecks="3"
934 />
935 </FileConfiguration>
936 </File>
937 <File
938 RelativePath="ssr.c"
939 >
940 <FileConfiguration
941 Name="Release|Win32"
942 >
943 <Tool
944 Name="VCCLCompilerTool"
945 AdditionalOptions=""
946 Optimization="2"
947 PreprocessorDefinitions=""
948 />
949 </FileConfiguration>
950 <FileConfiguration
951 Name="Debug|Win32"
952 >
953 <Tool
954 Name="VCCLCompilerTool"
955 AdditionalOptions=""
956 Optimization="0"
957 PreprocessorDefinitions=""
958 BasicRuntimeChecks="3"
959 />
960 </FileConfiguration>
961 </File>
962 <File
963 RelativePath="ssr_fb.c"
964 >
965 <FileConfiguration
966 Name="Release|Win32"
967 >
968 <Tool
969 Name="VCCLCompilerTool"
970 AdditionalOptions=""
971 Optimization="2"
972 PreprocessorDefinitions=""
973 />
974 </FileConfiguration>
975 <FileConfiguration
976 Name="Debug|Win32"
977 >
978 <Tool
979 Name="VCCLCompilerTool"
980 AdditionalOptions=""
981 Optimization="0"
982 PreprocessorDefinitions=""
983 BasicRuntimeChecks="3"
984 />
985 </FileConfiguration>
986 </File>
987 <File
988 RelativePath="ssr_ipqf.c"
989 >
990 <FileConfiguration
991 Name="Release|Win32"
992 >
993 <Tool
994 Name="VCCLCompilerTool"
995 AdditionalOptions=""
996 Optimization="2"
997 PreprocessorDefinitions=""
998 />
999 </FileConfiguration>
1000 <FileConfiguration
1001 Name="Debug|Win32"
1002 >
1003 <Tool
1004 Name="VCCLCompilerTool"
1005 AdditionalOptions=""
1006 Optimization="0"
1007 PreprocessorDefinitions=""
1008 BasicRuntimeChecks="3"
1009 />
1010 </FileConfiguration>
1011 </File>
1012 <File
1013 RelativePath="syntax.c"
1014 >
1015 <FileConfiguration
1016 Name="Release|Win32"
1017 >
1018 <Tool
1019 Name="VCCLCompilerTool"
1020 AdditionalOptions=""
1021 Optimization="2"
1022 PreprocessorDefinitions=""
1023 />
1024 </FileConfiguration>
1025 <FileConfiguration
1026 Name="Debug|Win32"
1027 >
1028 <Tool
1029 Name="VCCLCompilerTool"
1030 AdditionalOptions=""
1031 Optimization="0"
1032 PreprocessorDefinitions=""
1033 BasicRuntimeChecks="3"
1034 />
1035 </FileConfiguration>
1036 </File>
1037 <File
1038 RelativePath="tns.c"
1039 >
1040 <FileConfiguration
1041 Name="Release|Win32"
1042 >
1043 <Tool
1044 Name="VCCLCompilerTool"
1045 AdditionalOptions=""
1046 Optimization="2"
1047 PreprocessorDefinitions=""
1048 />
1049 </FileConfiguration>
1050 <FileConfiguration
1051 Name="Debug|Win32"
1052 >
1053 <Tool
1054 Name="VCCLCompilerTool"
1055 AdditionalOptions=""
1056 Optimization="0"
1057 PreprocessorDefinitions=""
1058 BasicRuntimeChecks="3"
1059 />
1060 </FileConfiguration>
1061 </File>
1062 </Filter>
1063 <Filter
1064 Name="Header Files"
1065 Filter="h;hpp;hxx;hm;inl"
1066 >
1067 <File
1068 RelativePath="analysis.h"
1069 >
1070 </File>
1071 <File
1072 RelativePath="bits.h"
1073 >
1074 </File>
1075 <File
1076 RelativePath="cfft.h"
1077 >
1078 </File>
1079 <File
1080 RelativePath="cfft_tab.h"
1081 >
1082 </File>
1083 <File
1084 RelativePath="common.h"
1085 >
1086 </File>
1087 <File
1088 RelativePath="decoder.h"
1089 >
1090 </File>
1091 <File
1092 RelativePath="drc.h"
1093 >
1094 </File>
1095 <File
1096 RelativePath=".\drm_dec.h"
1097 >
1098 </File>
1099 <File
1100 RelativePath="error.h"
1101 >
1102 </File>
1103 <File
1104 RelativePath="filtbank.h"
1105 >
1106 </File>
1107 <File
1108 RelativePath="fixed.h"
1109 >
1110 </File>
1111 <File
1112 RelativePath="codebook\hcb.h"
1113 >
1114 </File>
1115 <File
1116 RelativePath="huffman.h"
1117 >
1118 </File>
1119 <File
1120 RelativePath="ic_predict.h"
1121 >
1122 </File>
1123 <File
1124 RelativePath="iq_table.h"
1125 >
1126 </File>
1127 <File
1128 RelativePath="is.h"
1129 >
1130 </File>
1131 <File
1132 RelativePath="kbd_win.h"
1133 >
1134 </File>
1135 <File
1136 RelativePath="lt_predict.h"
1137 >
1138 </File>
1139 <File
1140 RelativePath="mdct.h"
1141 >
1142 </File>
1143 <File
1144 RelativePath="mp4.h"
1145 >
1146 </File>
1147 <File
1148 RelativePath="ms.h"
1149 >
1150 </File>
1151 <File
1152 RelativePath="output.h"
1153 >
1154 </File>
1155 <File
1156 RelativePath="pns.h"
1157 >
1158 </File>
1159 <File
1160 RelativePath=".\ps_dec.h"
1161 >
1162 </File>
1163 <File
1164 RelativePath=".\ps_tables.h"
1165 >
1166 </File>
1167 <File
1168 RelativePath="pulse.h"
1169 >
1170 </File>
1171 <File
1172 RelativePath="rvlc.h"
1173 >
1174 </File>
1175 <File
1176 RelativePath="sbr_dct.h"
1177 >
1178 </File>
1179 <File
1180 RelativePath="sbr_dec.h"
1181 >
1182 </File>
1183 <File
1184 RelativePath="sbr_e_nf.h"
1185 >
1186 </File>
1187 <File
1188 RelativePath="sbr_fbt.h"
1189 >
1190 </File>
1191 <File
1192 RelativePath="sbr_hfadj.h"
1193 >
1194 </File>
1195 <File
1196 RelativePath="sbr_hfgen.h"
1197 >
1198 </File>
1199 <File
1200 RelativePath="sbr_huff.h"
1201 >
1202 </File>
1203 <File
1204 RelativePath="sbr_noise.h"
1205 >
1206 </File>
1207 <File
1208 RelativePath="sbr_qmf.h"
1209 >
1210 </File>
1211 <File
1212 RelativePath="sbr_syntax.h"
1213 >
1214 </File>
1215 <File
1216 RelativePath="sbr_tf_grid.h"
1217 >
1218 </File>
1219 <File
1220 RelativePath="sine_win.h"
1221 >
1222 </File>
1223 <File
1224 RelativePath="specrec.h"
1225 >
1226 </File>
1227 <File
1228 RelativePath="ssr.h"
1229 >
1230 </File>
1231 <File
1232 RelativePath="structs.h"
1233 >
1234 </File>
1235 <File
1236 RelativePath="syntax.h"
1237 >
1238 </File>
1239 <File
1240 RelativePath="tns.h"
1241 >
1242 </File>
1243 <Filter
1244 Name="codebook"
1245 >
1246 <File
1247 RelativePath="codebook\hcb_1.h"
1248 >
1249 </File>
1250 <File
1251 RelativePath="codebook\hcb_10.h"
1252 >
1253 </File>
1254 <File
1255 RelativePath="codebook\hcb_11.h"
1256 >
1257 </File>
1258 <File
1259 RelativePath="codebook\hcb_2.h"
1260 >
1261 </File>
1262 <File
1263 RelativePath="codebook\hcb_3.h"
1264 >
1265 </File>
1266 <File
1267 RelativePath="codebook\hcb_4.h"
1268 >
1269 </File>
1270 <File
1271 RelativePath="codebook\hcb_5.h"
1272 >
1273 </File>
1274 <File
1275 RelativePath="codebook\hcb_6.h"
1276 >
1277 </File>
1278 <File
1279 RelativePath="codebook\hcb_7.h"
1280 >
1281 </File>
1282 <File
1283 RelativePath="codebook\hcb_8.h"
1284 >
1285 </File>
1286 <File
1287 RelativePath="codebook\hcb_9.h"
1288 >
1289 </File>
1290 <File
1291 RelativePath="codebook\hcb_sf.h"
1292 >
1293 </File>
1294 </Filter>
1295 </Filter>
1296 </Files>
1297 <Globals>
1298 </Globals>
1299 </VisualStudioProject>
+0
-16
libfaad/libfaad2.def less more
0 LIBRARY libfaad2.dll
1 EXPORTS
2 ;
3 ; libfaad2 exports
4 ;
5 NeAACDecOpen @1
6 NeAACDecGetCurrentConfiguration @2
7 NeAACDecSetConfiguration @3
8 NeAACDecInit @4
9 NeAACDecInit2 @5
10 NeAACDecDecode @6
11 NeAACDecClose @7
12 NeAACDecGetErrorMessage @8
13 NeAACDecAudioSpecificConfig @9
14 NeAACDecPostSeekReset @10
15 NeAACDecDecode2 @11
+0
-19
libfaad/libfaad2_dll.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}") = "libfaad2_dll", "libfaad2_dll.vcproj", "{482DA264-EE88-4575-B208-87C4CB80CD08}"
3 EndProject
4 Global
5 GlobalSection(SolutionConfigurationPlatforms) = preSolution
6 Debug|Win32 = Debug|Win32
7 Release|Win32 = Release|Win32
8 EndGlobalSection
9 GlobalSection(ProjectConfigurationPlatforms) = postSolution
10 {482DA264-EE88-4575-B208-87C4CB80CD08}.Debug|Win32.ActiveCfg = Debug|Win32
11 {482DA264-EE88-4575-B208-87C4CB80CD08}.Debug|Win32.Build.0 = Debug|Win32
12 {482DA264-EE88-4575-B208-87C4CB80CD08}.Release|Win32.ActiveCfg = Release|Win32
13 {482DA264-EE88-4575-B208-87C4CB80CD08}.Release|Win32.Build.0 = Release|Win32
14 EndGlobalSection
15 GlobalSection(SolutionProperties) = preSolution
16 HideSolutionNode = FALSE
17 EndGlobalSection
18 EndGlobal
+0
-487
libfaad/libfaad2_dll.vcproj less more
0 <?xml version="1.0" encoding="Windows-1252"?>
1 <VisualStudioProject
2 ProjectType="Visual C++"
3 Version="8,00"
4 Name="libfaad2_dll"
5 ProjectGUID="{482DA264-EE88-4575-B208-87C4CB80CD08}"
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=".\DebugDLL"
18 IntermediateDirectory=".\DebugDLL"
19 ConfigurationType="2"
20 InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC70.vsprops"
21 UseOfMFC="0"
22 ATLMinimizesCRunTimeLibraryUsage="false"
23 CharacterSet="2"
24 >
25 <Tool
26 Name="VCPreBuildEventTool"
27 />
28 <Tool
29 Name="VCCustomBuildTool"
30 />
31 <Tool
32 Name="VCXMLDataGeneratorTool"
33 />
34 <Tool
35 Name="VCWebServiceProxyGeneratorTool"
36 />
37 <Tool
38 Name="VCMIDLTool"
39 PreprocessorDefinitions="_DEBUG"
40 MkTypLibCompatible="true"
41 SuppressStartupBanner="true"
42 TargetEnvironment="1"
43 TypeLibraryName=".\DebugDLL/libfaad2_dll.tlb"
44 />
45 <Tool
46 Name="VCCLCompilerTool"
47 AdditionalOptions=""
48 Optimization="0"
49 AdditionalIncludeDirectories="fftw"
50 PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_USRDLL;libfaad2_dll_EXPORTS"
51 BasicRuntimeChecks="3"
52 RuntimeLibrary="3"
53 UsePrecompiledHeader="0"
54 PrecompiledHeaderFile=".\DebugDLL/libfaad2_dll.pch"
55 AssemblerListingLocation=".\DebugDLL/"
56 ObjectFile=".\DebugDLL/"
57 ProgramDataBaseFileName=".\DebugDLL/"
58 WarningLevel="3"
59 SuppressStartupBanner="true"
60 DebugInformationFormat="4"
61 CompileAs="0"
62 />
63 <Tool
64 Name="VCManagedResourceCompilerTool"
65 />
66 <Tool
67 Name="VCResourceCompilerTool"
68 PreprocessorDefinitions="_DEBUG"
69 Culture="1031"
70 />
71 <Tool
72 Name="VCPreLinkEventTool"
73 />
74 <Tool
75 Name="VCLinkerTool"
76 AdditionalOptions="/MACHINE:I386"
77 AdditionalDependencies="odbc32.lib odbccp32.lib"
78 OutputFile="DebugDLL/libfaad2.dll"
79 LinkIncremental="2"
80 SuppressStartupBanner="true"
81 ModuleDefinitionFile=".\libfaad2.def"
82 GenerateDebugInformation="true"
83 ProgramDatabaseFile=".\DebugDLL/libfaad2.pdb"
84 ImportLibrary=".\DebugDLL/libfaad2.lib"
85 />
86 <Tool
87 Name="VCALinkTool"
88 />
89 <Tool
90 Name="VCManifestTool"
91 />
92 <Tool
93 Name="VCXDCMakeTool"
94 />
95 <Tool
96 Name="VCBscMakeTool"
97 />
98 <Tool
99 Name="VCFxCopTool"
100 />
101 <Tool
102 Name="VCAppVerifierTool"
103 />
104 <Tool
105 Name="VCWebDeploymentTool"
106 />
107 <Tool
108 Name="VCPostBuildEventTool"
109 />
110 </Configuration>
111 <Configuration
112 Name="Release|Win32"
113 OutputDirectory=".\ReleaseDLL"
114 IntermediateDirectory=".\ReleaseDLL"
115 ConfigurationType="2"
116 InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC70.vsprops"
117 UseOfMFC="0"
118 ATLMinimizesCRunTimeLibraryUsage="false"
119 CharacterSet="2"
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=".\ReleaseDLL/libfaad2_dll.tlb"
140 />
141 <Tool
142 Name="VCCLCompilerTool"
143 AdditionalOptions=""
144 InlineFunctionExpansion="1"
145 EnableIntrinsicFunctions="true"
146 FavorSizeOrSpeed="1"
147 AdditionalIncludeDirectories=""
148 PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_USRDLL;libfaad2_dll_EXPORTS"
149 StringPooling="true"
150 RuntimeLibrary="2"
151 EnableFunctionLevelLinking="true"
152 UsePrecompiledHeader="0"
153 PrecompiledHeaderFile=".\ReleaseDLL/libfaad2_dll.pch"
154 AssemblerListingLocation=".\ReleaseDLL/"
155 ObjectFile=".\ReleaseDLL/"
156 ProgramDataBaseFileName=".\ReleaseDLL/"
157 WarningLevel="3"
158 SuppressStartupBanner="true"
159 CompileAs="0"
160 />
161 <Tool
162 Name="VCManagedResourceCompilerTool"
163 />
164 <Tool
165 Name="VCResourceCompilerTool"
166 PreprocessorDefinitions="NDEBUG"
167 Culture="1031"
168 />
169 <Tool
170 Name="VCPreLinkEventTool"
171 />
172 <Tool
173 Name="VCLinkerTool"
174 AdditionalOptions="/MACHINE:I386"
175 OutputFile="ReleaseDLL/libfaad2.dll"
176 LinkIncremental="1"
177 SuppressStartupBanner="true"
178 ModuleDefinitionFile=".\libfaad2.def"
179 ProgramDatabaseFile=".\ReleaseDLL/libfaad2.pdb"
180 ImportLibrary=".\ReleaseDLL/libfaad2.lib"
181 />
182 <Tool
183 Name="VCALinkTool"
184 />
185 <Tool
186 Name="VCManifestTool"
187 />
188 <Tool
189 Name="VCXDCMakeTool"
190 />
191 <Tool
192 Name="VCBscMakeTool"
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 >
214 <File
215 RelativePath=".\bits.c"
216 >
217 </File>
218 <File
219 RelativePath=".\cfft.c"
220 >
221 </File>
222 <File
223 RelativePath="common.c"
224 >
225 </File>
226 <File
227 RelativePath=".\decoder.c"
228 >
229 </File>
230 <File
231 RelativePath=".\drc.c"
232 >
233 </File>
234 <File
235 RelativePath=".\drm_dec.c"
236 >
237 </File>
238 <File
239 RelativePath=".\error.c"
240 >
241 </File>
242 <File
243 RelativePath=".\filtbank.c"
244 >
245 </File>
246 <File
247 RelativePath="hcr.c"
248 >
249 </File>
250 <File
251 RelativePath=".\huffman.c"
252 >
253 </File>
254 <File
255 RelativePath=".\ic_predict.c"
256 >
257 </File>
258 <File
259 RelativePath=".\is.c"
260 >
261 </File>
262 <File
263 RelativePath=".\lt_predict.c"
264 >
265 </File>
266 <File
267 RelativePath=".\mdct.c"
268 >
269 </File>
270 <File
271 RelativePath=".\mp4.c"
272 >
273 </File>
274 <File
275 RelativePath=".\ms.c"
276 >
277 </File>
278 <File
279 RelativePath=".\output.c"
280 >
281 </File>
282 <File
283 RelativePath=".\pns.c"
284 >
285 </File>
286 <File
287 RelativePath=".\ps_dec.c"
288 >
289 </File>
290 <File
291 RelativePath=".\ps_syntax.c"
292 >
293 </File>
294 <File
295 RelativePath=".\pulse.c"
296 >
297 </File>
298 <File
299 RelativePath="rvlc.c"
300 >
301 </File>
302 <File
303 RelativePath=".\sbr_dct.c"
304 >
305 </File>
306 <File
307 RelativePath=".\sbr_dec.c"
308 >
309 </File>
310 <File
311 RelativePath=".\sbr_e_nf.c"
312 >
313 </File>
314 <File
315 RelativePath=".\sbr_fbt.c"
316 >
317 </File>
318 <File
319 RelativePath=".\sbr_hfadj.c"
320 >
321 </File>
322 <File
323 RelativePath=".\sbr_hfgen.c"
324 >
325 </File>
326 <File
327 RelativePath=".\sbr_huff.c"
328 >
329 </File>
330 <File
331 RelativePath=".\sbr_qmf.c"
332 >
333 </File>
334 <File
335 RelativePath=".\sbr_syntax.c"
336 >
337 </File>
338 <File
339 RelativePath=".\sbr_tf_grid.c"
340 >
341 </File>
342 <File
343 RelativePath=".\specrec.c"
344 >
345 </File>
346 <File
347 RelativePath="ssr.c"
348 >
349 </File>
350 <File
351 RelativePath=".\ssr_fb.c"
352 >
353 </File>
354 <File
355 RelativePath=".\ssr_ipqf.c"
356 >
357 </File>
358 <File
359 RelativePath=".\syntax.c"
360 >
361 </File>
362 <File
363 RelativePath=".\tns.c"
364 >
365 </File>
366 </Filter>
367 <Filter
368 Name="Header Files"
369 >
370 <File
371 RelativePath=".\analysis.h"
372 >
373 </File>
374 <File
375 RelativePath=".\bits.h"
376 >
377 </File>
378 <File
379 RelativePath=".\cfft.h"
380 >
381 </File>
382 <File
383 RelativePath=".\common.h"
384 >
385 </File>
386 <File
387 RelativePath=".\data.h"
388 >
389 </File>
390 <File
391 RelativePath=".\decoder.h"
392 >
393 </File>
394 <File
395 RelativePath="dither.h"
396 >
397 </File>
398 <File
399 RelativePath=".\drc.h"
400 >
401 </File>
402 <File
403 RelativePath=".\error.h"
404 >
405 </File>
406 <File
407 RelativePath=".\filtbank.h"
408 >
409 </File>
410 <File
411 RelativePath=".\codebook\hcb.h"
412 >
413 </File>
414 <File
415 RelativePath=".\huffman.h"
416 >
417 </File>
418 <File
419 RelativePath=".\ic_predict.h"
420 >
421 </File>
422 <File
423 RelativePath=".\is.h"
424 >
425 </File>
426 <File
427 RelativePath=".\kbd_win.h"
428 >
429 </File>
430 <File
431 RelativePath=".\lt_predict.h"
432 >
433 </File>
434 <File
435 RelativePath=".\mdct.h"
436 >
437 </File>
438 <File
439 RelativePath=".\mp4.h"
440 >
441 </File>
442 <File
443 RelativePath=".\ms.h"
444 >
445 </File>
446 <File
447 RelativePath=".\output.h"
448 >
449 </File>
450 <File
451 RelativePath=".\pns.h"
452 >
453 </File>
454 <File
455 RelativePath=".\pulse.h"
456 >
457 </File>
458 <File
459 RelativePath="rvlc.h"
460 >
461 </File>
462 <File
463 RelativePath=".\specrec.h"
464 >
465 </File>
466 <File
467 RelativePath="ssr.h"
468 >
469 </File>
470 <File
471 RelativePath=".\syntax.h"
472 >
473 </File>
474 <File
475 RelativePath=".\Tns.h"
476 >
477 </File>
478 </Filter>
479 <File
480 RelativePath=".\libfaad2.def"
481 >
482 </File>
483 </Files>
484 <Globals>
485 </Globals>
486 </VisualStudioProject>
211211 offs = ics_left->swb_offset[sfb];
212212 size = min(ics_left->swb_offset[sfb+1], ics_left->swb_offset_max) - offs;
213213
214 r1_dep = __r1;
215 r2_dep = __r2;
214 r1_dep = *__r1;
215 r2_dep = *__r2;
216216
217217 /* Generate random vector */
218218 gen_rand_vector(&spec_left[(group*nshort)+offs],
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-2"
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='eval 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=2014-01-07.03; # 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 case " $hookable_fns " in
1533 *" $1 "*) ;;
1534 *) func_fatal_error "'$1' does not support hook funcions.n" ;;
1535 esac
1536
1537 eval _G_hook_fns=\$$1_hooks; shift
1538
1539 for _G_hook in $_G_hook_fns; do
1540 eval $_G_hook '"$@"'
1541
1542 # store returned options list back into positional
1543 # parameters for next 'cmd' execution.
1544 eval _G_hook_result=\$${_G_hook}_result
1545 eval set dummy "$_G_hook_result"; shift
1546 done
1547
1548 func_quote_for_eval ${1+"$@"}
1549 func_run_hooks_result=$func_quote_for_eval_result
1550 }
1551
1552
1553
1554 ## --------------- ##
1555 ## Option parsing. ##
1556 ## --------------- ##
1557
1558 # In order to add your own option parsing hooks, you must accept the
1559 # full positional parameter list in your hook function, remove any
1560 # options that you action, and then pass back the remaining unprocessed
1561 # options in '<hooked_function_name>_result', escaped suitably for
1562 # 'eval'. Like this:
1563 #
1564 # my_options_prep ()
1565 # {
1566 # $debug_cmd
1567 #
1568 # # Extend the existing usage message.
1569 # usage_message=$usage_message'
1570 # -s, --silent don'\''t print informational messages
1571 # '
1572 #
1573 # func_quote_for_eval ${1+"$@"}
1574 # my_options_prep_result=$func_quote_for_eval_result
1575 # }
1576 # func_add_hook func_options_prep my_options_prep
1577 #
1578 #
1579 # my_silent_option ()
1580 # {
1581 # $debug_cmd
1582 #
1583 # # Note that for efficiency, we parse as many options as we can
1584 # # recognise in a loop before passing the remainder back to the
1585 # # caller on the first unrecognised argument we encounter.
1586 # while test $# -gt 0; do
1587 # opt=$1; shift
1588 # case $opt in
1589 # --silent|-s) opt_silent=: ;;
1590 # # Separate non-argument short options:
1591 # -s*) func_split_short_opt "$_G_opt"
1592 # set dummy "$func_split_short_opt_name" \
1593 # "-$func_split_short_opt_arg" ${1+"$@"}
1594 # shift
1595 # ;;
1596 # *) set dummy "$_G_opt" "$*"; shift; break ;;
1597 # esac
1598 # done
1599 #
1600 # func_quote_for_eval ${1+"$@"}
1601 # my_silent_option_result=$func_quote_for_eval_result
1602 # }
1603 # func_add_hook func_parse_options my_silent_option
1604 #
1605 #
1606 # my_option_validation ()
1607 # {
1608 # $debug_cmd
1609 #
1610 # $opt_silent && $opt_verbose && func_fatal_help "\
1611 # '--silent' and '--verbose' options are mutually exclusive."
1612 #
1613 # func_quote_for_eval ${1+"$@"}
1614 # my_option_validation_result=$func_quote_for_eval_result
1615 # }
1616 # func_add_hook func_validate_options my_option_validation
1617 #
1618 # You'll alse need to manually amend $usage_message to reflect the extra
1619 # options you parse. It's preferable to append if you can, so that
1620 # multiple option parsing hooks can be added safely.
1621
1622
1623 # func_options [ARG]...
1624 # ---------------------
1625 # All the functions called inside func_options are hookable. See the
1626 # individual implementations for details.
1627 func_hookable func_options
1628 func_options ()
1629 {
1630 $debug_cmd
1631
1632 func_options_prep ${1+"$@"}
1633 eval func_parse_options \
1634 ${func_options_prep_result+"$func_options_prep_result"}
1635 eval func_validate_options \
1636 ${func_parse_options_result+"$func_parse_options_result"}
1637
1638 eval func_run_hooks func_options \
1639 ${func_validate_options_result+"$func_validate_options_result"}
1640
1641 # save modified positional parameters for caller
1642 func_options_result=$func_run_hooks_result
1643 }
1644
1645
1646 # func_options_prep [ARG]...
1647 # --------------------------
1648 # All initialisations required before starting the option parse loop.
1649 # Note that when calling hook functions, we pass through the list of
1650 # positional parameters. If a hook function modifies that list, and
1651 # needs to propogate that back to rest of this script, then the complete
1652 # modified list must be put in 'func_run_hooks_result' before
1653 # returning.
1654 func_hookable func_options_prep
1655 func_options_prep ()
1656 {
1657 $debug_cmd
1658
1659 # Option defaults:
1660 opt_verbose=false
1661 opt_warning_types=
1662
1663 func_run_hooks func_options_prep ${1+"$@"}
1664
1665 # save modified positional parameters for caller
1666 func_options_prep_result=$func_run_hooks_result
1667 }
1668
1669
1670 # func_parse_options [ARG]...
1671 # ---------------------------
1672 # The main option parsing loop.
1673 func_hookable func_parse_options
1674 func_parse_options ()
1675 {
1676 $debug_cmd
1677
1678 func_parse_options_result=
1679
1680 # this just eases exit handling
1681 while test $# -gt 0; do
1682 # Defer to hook functions for initial option parsing, so they
1683 # get priority in the event of reusing an option name.
1684 func_run_hooks func_parse_options ${1+"$@"}
1685
1686 # Adjust func_parse_options positional parameters to match
1687 eval set dummy "$func_run_hooks_result"; shift
1688
1689 # Break out of the loop if we already parsed every option.
1690 test $# -gt 0 || break
1691
1692 _G_opt=$1
1693 shift
1694 case $_G_opt in
1695 --debug|-x) debug_cmd='set -x'
1696 func_echo "enabling shell trace mode"
1697 $debug_cmd
1698 ;;
1699
1700 --no-warnings|--no-warning|--no-warn)
1701 set dummy --warnings none ${1+"$@"}
1702 shift
1703 ;;
1704
1705 --warnings|--warning|-W)
1706 test $# = 0 && func_missing_arg $_G_opt && break
1707 case " $warning_categories $1" in
1708 *" $1 "*)
1709 # trailing space prevents matching last $1 above
1710 func_append_uniq opt_warning_types " $1"
1711 ;;
1712 *all)
1713 opt_warning_types=$warning_categories
1714 ;;
1715 *none)
1716 opt_warning_types=none
1717 warning_func=:
1718 ;;
1719 *error)
1720 opt_warning_types=$warning_categories
1721 warning_func=func_fatal_error
1722 ;;
1723 *)
1724 func_fatal_error \
1725 "unsupported warning category: '$1'"
1726 ;;
1727 esac
1728 shift
1729 ;;
1730
1731 --verbose|-v) opt_verbose=: ;;
1732 --version) func_version ;;
1733 -\?|-h) func_usage ;;
1734 --help) func_help ;;
1735
1736 # Separate optargs to long options (plugins may need this):
1737 --*=*) func_split_equals "$_G_opt"
1738 set dummy "$func_split_equals_lhs" \
1739 "$func_split_equals_rhs" ${1+"$@"}
1740 shift
1741 ;;
1742
1743 # Separate optargs to short options:
1744 -W*)
1745 func_split_short_opt "$_G_opt"
1746 set dummy "$func_split_short_opt_name" \
1747 "$func_split_short_opt_arg" ${1+"$@"}
1748 shift
1749 ;;
1750
1751 # Separate non-argument short options:
1752 -\?*|-h*|-v*|-x*)
1753 func_split_short_opt "$_G_opt"
1754 set dummy "$func_split_short_opt_name" \
1755 "-$func_split_short_opt_arg" ${1+"$@"}
1756 shift
1757 ;;
1758
1759 --) break ;;
1760 -*) func_fatal_help "unrecognised option: '$_G_opt'" ;;
1761 *) set dummy "$_G_opt" ${1+"$@"}; shift; break ;;
1762 esac
1763 done
1764
1765 # save modified positional parameters for caller
1766 func_quote_for_eval ${1+"$@"}
1767 func_parse_options_result=$func_quote_for_eval_result
1768 }
1769
1770
1771 # func_validate_options [ARG]...
1772 # ------------------------------
1773 # Perform any sanity checks on option settings and/or unconsumed
1774 # arguments.
1775 func_hookable func_validate_options
1776 func_validate_options ()
1777 {
1778 $debug_cmd
1779
1780 # Display all warnings if -W was not given.
1781 test -n "$opt_warning_types" || opt_warning_types=" $warning_categories"
1782
1783 func_run_hooks func_validate_options ${1+"$@"}
1784
1785 # Bail if the options were screwed!
1786 $exit_cmd $EXIT_FAILURE
1787
1788 # save modified positional parameters for caller
1789 func_validate_options_result=$func_run_hooks_result
1790 }
1791
1792
1793
1794 ## ----------------- ##
1795 ## Helper functions. ##
1796 ## ----------------- ##
1797
1798 # This section contains the helper functions used by the rest of the
1799 # hookable option parser framework in ascii-betical order.
1800
1801
1802 # func_fatal_help ARG...
1803 # ----------------------
1804 # Echo program name prefixed message to standard error, followed by
1805 # a help hint, and exit.
1806 func_fatal_help ()
1807 {
1808 $debug_cmd
1809
1810 eval \$ECHO \""Usage: $usage"\"
1811 eval \$ECHO \""$fatal_help"\"
1812 func_error ${1+"$@"}
1813 exit $EXIT_FAILURE
1814 }
1815
1816
1817 # func_help
1818 # ---------
1819 # Echo long help message to standard output and exit.
1820 func_help ()
1821 {
1822 $debug_cmd
1823
1824 func_usage_message
1825 $ECHO "$long_help_message"
1826 exit 0
1827 }
1828
1829
1830 # func_missing_arg ARGNAME
1831 # ------------------------
1832 # Echo program name prefixed message to standard error and set global
1833 # exit_cmd.
1834 func_missing_arg ()
1835 {
1836 $debug_cmd
1837
1838 func_error "Missing argument for '$1'."
1839 exit_cmd=exit
1840 }
1841
1842
1843 # func_split_equals STRING
1844 # ------------------------
1845 # Set func_split_equals_lhs and func_split_equals_rhs shell variables after
1846 # splitting STRING at the '=' sign.
1847 test -z "$_G_HAVE_XSI_OPS" \
1848 && (eval 'x=a/b/c;
1849 test 5aa/bb/cc = "${#x}${x%%/*}${x%/*}${x#*/}${x##*/}"') 2>/dev/null \
1850 && _G_HAVE_XSI_OPS=yes
1851
1852 if test yes = "$_G_HAVE_XSI_OPS"
1853 then
1854 # This is an XSI compatible shell, allowing a faster implementation...
1855 eval 'func_split_equals ()
1856 {
1857 $debug_cmd
1858
1859 func_split_equals_lhs=${1%%=*}
1860 func_split_equals_rhs=${1#*=}
1861 test "x$func_split_equals_lhs" = "x$1" \
1862 && func_split_equals_rhs=
1863 }'
1864 else
1865 # ...otherwise fall back to using expr, which is often a shell builtin.
1866 func_split_equals ()
1867 {
1868 $debug_cmd
1869
1870 func_split_equals_lhs=`expr "x$1" : 'x\([^=]*\)'`
1871 func_split_equals_rhs=
1872 test "x$func_split_equals_lhs" = "x$1" \
1873 || func_split_equals_rhs=`expr "x$1" : 'x[^=]*=\(.*\)$'`
1874 }
1875 fi #func_split_equals
1876
1877
1878 # func_split_short_opt SHORTOPT
1879 # -----------------------------
1880 # Set func_split_short_opt_name and func_split_short_opt_arg shell
1881 # variables after splitting SHORTOPT after the 2nd character.
1882 if test yes = "$_G_HAVE_XSI_OPS"
1883 then
1884 # This is an XSI compatible shell, allowing a faster implementation...
1885 eval 'func_split_short_opt ()
1886 {
1887 $debug_cmd
1888
1889 func_split_short_opt_arg=${1#??}
1890 func_split_short_opt_name=${1%"$func_split_short_opt_arg"}
1891 }'
1892 else
1893 # ...otherwise fall back to using expr, which is often a shell builtin.
1894 func_split_short_opt ()
1895 {
1896 $debug_cmd
1897
1898 func_split_short_opt_name=`expr "x$1" : 'x-\(.\)'`
1899 func_split_short_opt_arg=`expr "x$1" : 'x-.\(.*\)$'`
1900 }
1901 fi #func_split_short_opt
1902
1903
1904 # func_usage
1905 # ----------
1906 # Echo short help message to standard output and exit.
1907 func_usage ()
1908 {
1909 $debug_cmd
1910
1911 func_usage_message
1912 $ECHO "Run '$progname --help |${PAGER-more}' for full usage"
1913 exit 0
1914 }
1915
1916
1917 # func_usage_message
1918 # ------------------
1919 # Echo short help message to standard output.
1920 func_usage_message ()
1921 {
1922 $debug_cmd
1923
1924 eval \$ECHO \""Usage: $usage"\"
1925 echo
1926 $SED -n 's|^# ||
1927 /^Written by/{
1928 x;p;x
1929 }
1930 h
1931 /^Written by/q' < "$progpath"
1932 echo
1933 eval \$ECHO \""$usage_message"\"
1934 }
1935
1936
1937 # func_version
1938 # ------------
1939 # Echo version message to standard output and exit.
1940 func_version ()
1941 {
1942 $debug_cmd
1943
1944 printf '%s\n' "$progname $scriptversion"
1945 $SED -n '
1946 /(C)/!b go
1947 :more
1948 /\./!{
1949 N
1950 s|\n# | |
1951 b more
1952 }
1953 :go
1954 /^# Written by /,/# warranty; / {
1955 s|^# ||
1956 s|^# *$||
1957 s|\((C)\)[ 0-9,-]*[ ,-]\([1-9][0-9]* \)|\1 \2|
1958 p
1959 }
1960 /^# Written by / {
1961 s|^# ||
1962 p
1963 }
1964 /^warranty; /q' < "$progpath"
1965
1966 exit $?
1967 }
1968
1969
1970 # Local variables:
1971 # mode: shell-script
1972 # sh-indentation: 2
1973 # eval: (add-hook 'before-save-hook 'time-stamp)
1974 # time-stamp-pattern: "10/scriptversion=%:y-%02m-%02d.%02H; # UTC"
1975 # time-stamp-time-zone: "UTC"
1976 # End:
1977
1978 # Set a version string.
1979 scriptversion='(GNU libtool) 2.4.6'
1980
1981
1982 # func_echo ARG...
1983 # ----------------
1984 # Libtool also displays the current mode in messages, so override
1985 # funclib.sh func_echo with this custom definition.
1986 func_echo ()
1987 {
1988 $debug_cmd
1989
1990 _G_message=$*
1991
1992 func_echo_IFS=$IFS
1993 IFS=$nl
1994 for _G_line in $_G_message; do
1995 IFS=$func_echo_IFS
1996 $ECHO "$progname${opt_mode+: $opt_mode}: $_G_line"
1997 done
1998 IFS=$func_echo_IFS
1999 }
2000
2001
2002 # func_warning ARG...
2003 # -------------------
2004 # Libtool warnings are not categorized, so override funclib.sh
2005 # func_warning with this simpler definition.
2006 func_warning ()
2007 {
2008 $debug_cmd
2009
2010 $warning_func ${1+"$@"}
2011 }
2012
2013
2014 ## ---------------- ##
2015 ## Options parsing. ##
2016 ## ---------------- ##
2017
2018 # Hook in the functions to make sure our own options are parsed during
2019 # the option parsing loop.
2020
2021 usage='$progpath [OPTION]... [MODE-ARG]...'
2022
2023 # Short help message in response to '-h'.
2024 usage_message="Options:
2025 --config show all configuration variables
2026 --debug enable verbose shell tracing
2027 -n, --dry-run display commands without modifying any files
2028 --features display basic configuration information and exit
2029 --mode=MODE use operation mode MODE
2030 --no-warnings equivalent to '-Wnone'
2031 --preserve-dup-deps don't remove duplicate dependency libraries
2032 --quiet, --silent don't print informational messages
2033 --tag=TAG use configuration variables from tag TAG
2034 -v, --verbose print more informational messages than default
2035 --version print version information
2036 -W, --warnings=CATEGORY report the warnings falling in CATEGORY [all]
2037 -h, --help, --help-all print short, long, or detailed help message
2038 "
2039
2040 # Additional text appended to 'usage_message' in response to '--help'.
2041 func_help ()
2042 {
2043 $debug_cmd
2044
2045 func_usage_message
2046 $ECHO "$long_help_message
2047
2048 MODE must be one of the following:
2049
2050 clean remove files from the build directory
2051 compile compile a source file into a libtool object
2052 execute automatically set library path, then run a program
2053 finish complete the installation of libtool libraries
2054 install install libraries or executables
2055 link create a library or an executable
2056 uninstall remove libraries from an installed directory
2057
2058 MODE-ARGS vary depending on the MODE. When passed as first option,
2059 '--mode=MODE' may be abbreviated as 'MODE' or a unique abbreviation of that.
2060 Try '$progname --help --mode=MODE' for a more detailed description of MODE.
2061
2062 When reporting a bug, please describe a test case to reproduce it and
2063 include the following information:
2064
2065 host-triplet: $host
2066 shell: $SHELL
2067 compiler: $LTCC
2068 compiler flags: $LTCFLAGS
2069 linker: $LD (gnu? $with_gnu_ld)
2070 version: $progname $scriptversion Debian-2.4.6-2
2071 automake: `($AUTOMAKE --version) 2>/dev/null |$SED 1q`
2072 autoconf: `($AUTOCONF --version) 2>/dev/null |$SED 1q`
2073
2074 Report bugs to <bug-libtool@gnu.org>.
2075 GNU libtool home page: <http://www.gnu.org/s/libtool/>.
2076 General help using GNU software: <http://www.gnu.org/gethelp/>."
2077 exit 0
2078 }
2079
2080
2081 # func_lo2o OBJECT-NAME
2082 # ---------------------
2083 # Transform OBJECT-NAME from a '.lo' suffix to the platform specific
2084 # object suffix.
2085
2086 lo2o=s/\\.lo\$/.$objext/
2087 o2lo=s/\\.$objext\$/.lo/
2088
2089 if test yes = "$_G_HAVE_XSI_OPS"; then
2090 eval 'func_lo2o ()
2091 {
2092 case $1 in
2093 *.lo) func_lo2o_result=${1%.lo}.$objext ;;
2094 * ) func_lo2o_result=$1 ;;
2095 esac
2096 }'
2097
2098 # func_xform LIBOBJ-OR-SOURCE
2099 # ---------------------------
2100 # Transform LIBOBJ-OR-SOURCE from a '.o' or '.c' (or otherwise)
2101 # suffix to a '.lo' libtool-object suffix.
2102 eval 'func_xform ()
2103 {
2104 func_xform_result=${1%.*}.lo
2105 }'
2106 else
2107 # ...otherwise fall back to using sed.
2108 func_lo2o ()
2109 {
2110 func_lo2o_result=`$ECHO "$1" | $SED "$lo2o"`
2111 }
2112
2113 func_xform ()
2114 {
2115 func_xform_result=`$ECHO "$1" | $SED 's|\.[^.]*$|.lo|'`
2116 }
2117 fi
2118
2119
2120 # func_fatal_configuration ARG...
2121 # -------------------------------
2122 # Echo program name prefixed message to standard error, followed by
2123 # a configuration failure hint, and exit.
2124 func_fatal_configuration ()
2125 {
2126 func__fatal_error ${1+"$@"} \
2127 "See the $PACKAGE documentation for more information." \
2128 "Fatal configuration error."
2129 }
2130
2131
2132 # func_config
2133 # -----------
2134 # Display the configuration for all the tags in this script.
2135 func_config ()
2136 {
2137 re_begincf='^# ### BEGIN LIBTOOL'
2138 re_endcf='^# ### END LIBTOOL'
2139
2140 # Default configuration.
2141 $SED "1,/$re_begincf CONFIG/d;/$re_endcf CONFIG/,\$d" < "$progpath"
2142
2143 # Now print the configurations for the tags.
2144 for tagname in $taglist; do
2145 $SED -n "/$re_begincf TAG CONFIG: $tagname\$/,/$re_endcf TAG CONFIG: $tagname\$/p" < "$progpath"
2146 done
2147
2148 exit $?
2149 }
2150
2151
2152 # func_features
2153 # -------------
2154 # Display the features supported by this script.
2155 func_features ()
2156 {
2157 echo "host: $host"
2158 if test yes = "$build_libtool_libs"; then
2159 echo "enable shared libraries"
2160 else
2161 echo "disable shared libraries"
2162 fi
2163 if test yes = "$build_old_libs"; then
2164 echo "enable static libraries"
2165 else
2166 echo "disable static libraries"
2167 fi
2168
2169 exit $?
2170 }
2171
2172
2173 # func_enable_tag TAGNAME
2174 # -----------------------
2175 # Verify that TAGNAME is valid, and either flag an error and exit, or
2176 # enable the TAGNAME tag. We also add TAGNAME to the global $taglist
2177 # variable here.
2178 func_enable_tag ()
2179 {
2180 # Global variable:
2181 tagname=$1
2182
2183 re_begincf="^# ### BEGIN LIBTOOL TAG CONFIG: $tagname\$"
2184 re_endcf="^# ### END LIBTOOL TAG CONFIG: $tagname\$"
2185 sed_extractcf=/$re_begincf/,/$re_endcf/p
2186
2187 # Validate tagname.
2188 case $tagname in
2189 *[!-_A-Za-z0-9,/]*)
2190 func_fatal_error "invalid tag name: $tagname"
2191 ;;
2192 esac
2193
2194 # Don't test for the "default" C tag, as we know it's
2195 # there but not specially marked.
2196 case $tagname in
2197 CC) ;;
2198 *)
2199 if $GREP "$re_begincf" "$progpath" >/dev/null 2>&1; then
2200 taglist="$taglist $tagname"
2201
2202 # Evaluate the configuration. Be careful to quote the path
2203 # and the sed script, to avoid splitting on whitespace, but
2204 # also don't use non-portable quotes within backquotes within
2205 # quotes we have to do it in 2 steps:
2206 extractedcf=`$SED -n -e "$sed_extractcf" < "$progpath"`
2207 eval "$extractedcf"
2208 else
2209 func_error "ignoring unknown tag $tagname"
2210 fi
2211 ;;
2212 esac
2213 }
2214
2215
2216 # func_check_version_match
2217 # ------------------------
2218 # Ensure that we are using m4 macros, and libtool script from the same
2219 # release of libtool.
2220 func_check_version_match ()
2221 {
2222 if test "$package_revision" != "$macro_revision"; then
2223 if test "$VERSION" != "$macro_version"; then
2224 if test -z "$macro_version"; then
2225 cat >&2 <<_LT_EOF
2226 $progname: Version mismatch error. This is $PACKAGE $VERSION, but the
2227 $progname: definition of this LT_INIT comes from an older release.
2228 $progname: You should recreate aclocal.m4 with macros from $PACKAGE $VERSION
2229 $progname: and run autoconf again.
2230 _LT_EOF
2231 else
2232 cat >&2 <<_LT_EOF
2233 $progname: Version mismatch error. This is $PACKAGE $VERSION, but the
2234 $progname: definition of this LT_INIT comes from $PACKAGE $macro_version.
2235 $progname: You should recreate aclocal.m4 with macros from $PACKAGE $VERSION
2236 $progname: and run autoconf again.
2237 _LT_EOF
2238 fi
2239 else
2240 cat >&2 <<_LT_EOF
2241 $progname: Version mismatch error. This is $PACKAGE $VERSION, revision $package_revision,
2242 $progname: but the definition of this LT_INIT comes from revision $macro_revision.
2243 $progname: You should recreate aclocal.m4 with macros from revision $package_revision
2244 $progname: of $PACKAGE $VERSION and run autoconf again.
2245 _LT_EOF
2246 fi
2247
2248 exit $EXIT_MISMATCH
2249 fi
2250 }
2251
2252
2253 # libtool_options_prep [ARG]...
2254 # -----------------------------
2255 # Preparation for options parsed by libtool.
2256 libtool_options_prep ()
2257 {
2258 $debug_mode
2259
2260 # Option defaults:
2261 opt_config=false
2262 opt_dlopen=
2263 opt_dry_run=false
2264 opt_help=false
2265 opt_mode=
2266 opt_preserve_dup_deps=false
2267 opt_quiet=false
2268
2269 nonopt=
2270 preserve_args=
2271
2272 # Shorthand for --mode=foo, only valid as the first argument
2273 case $1 in
2274 clean|clea|cle|cl)
2275 shift; set dummy --mode clean ${1+"$@"}; shift
2276 ;;
2277 compile|compil|compi|comp|com|co|c)
2278 shift; set dummy --mode compile ${1+"$@"}; shift
2279 ;;
2280 execute|execut|execu|exec|exe|ex|e)
2281 shift; set dummy --mode execute ${1+"$@"}; shift
2282 ;;
2283 finish|finis|fini|fin|fi|f)
2284 shift; set dummy --mode finish ${1+"$@"}; shift
2285 ;;
2286 install|instal|insta|inst|ins|in|i)
2287 shift; set dummy --mode install ${1+"$@"}; shift
2288 ;;
2289 link|lin|li|l)
2290 shift; set dummy --mode link ${1+"$@"}; shift
2291 ;;
2292 uninstall|uninstal|uninsta|uninst|unins|unin|uni|un|u)
2293 shift; set dummy --mode uninstall ${1+"$@"}; shift
2294 ;;
2295 esac
2296
2297 # Pass back the list of options.
2298 func_quote_for_eval ${1+"$@"}
2299 libtool_options_prep_result=$func_quote_for_eval_result
2300 }
2301 func_add_hook func_options_prep libtool_options_prep
2302
2303
2304 # libtool_parse_options [ARG]...
2305 # ---------------------------------
2306 # Provide handling for libtool specific options.
2307 libtool_parse_options ()
2308 {
2309 $debug_cmd
2310
2311 # Perform our own loop to consume as many options as possible in
2312 # each iteration.
2313 while test $# -gt 0; do
2314 _G_opt=$1
2315 shift
2316 case $_G_opt in
2317 --dry-run|--dryrun|-n)
2318 opt_dry_run=:
2319 ;;
2320
2321 --config) func_config ;;
2322
2323 --dlopen|-dlopen)
2324 opt_dlopen="${opt_dlopen+$opt_dlopen
2325 }$1"
2326 shift
2327 ;;
2328
2329 --preserve-dup-deps)
2330 opt_preserve_dup_deps=: ;;
2331
2332 --features) func_features ;;
2333
2334 --finish) set dummy --mode finish ${1+"$@"}; shift ;;
2335
2336 --help) opt_help=: ;;
2337
2338 --help-all) opt_help=': help-all' ;;
2339
2340 --mode) test $# = 0 && func_missing_arg $_G_opt && break
2341 opt_mode=$1
2342 case $1 in
2343 # Valid mode arguments:
2344 clean|compile|execute|finish|install|link|relink|uninstall) ;;
2345
2346 # Catch anything else as an error
2347 *) func_error "invalid argument for $_G_opt"
2348 exit_cmd=exit
2349 break
2350 ;;
2351 esac
2352 shift
2353 ;;
2354
2355 --no-silent|--no-quiet)
2356 opt_quiet=false
2357 func_append preserve_args " $_G_opt"
2358 ;;
2359
2360 --no-warnings|--no-warning|--no-warn)
2361 opt_warning=false
2362 func_append preserve_args " $_G_opt"
2363 ;;
2364
2365 --no-verbose)
2366 opt_verbose=false
2367 func_append preserve_args " $_G_opt"
2368 ;;
2369
2370 --silent|--quiet)
2371 opt_quiet=:
2372 opt_verbose=false
2373 func_append preserve_args " $_G_opt"
2374 ;;
2375
2376 --tag) test $# = 0 && func_missing_arg $_G_opt && break
2377 opt_tag=$1
2378 func_append preserve_args " $_G_opt $1"
2379 func_enable_tag "$1"
2380 shift
2381 ;;
2382
2383 --verbose|-v) opt_quiet=false
2384 opt_verbose=:
2385 func_append preserve_args " $_G_opt"
2386 ;;
2387
2388 # An option not handled by this hook function:
2389 *) set dummy "$_G_opt" ${1+"$@"}; shift; break ;;
2390 esac
2391 done
2392
2393
2394 # save modified positional parameters for caller
2395 func_quote_for_eval ${1+"$@"}
2396 libtool_parse_options_result=$func_quote_for_eval_result
2397 }
2398 func_add_hook func_parse_options libtool_parse_options
2399
2400
2401
2402 # libtool_validate_options [ARG]...
2403 # ---------------------------------
2404 # Perform any sanity checks on option settings and/or unconsumed
2405 # arguments.
2406 libtool_validate_options ()
2407 {
2408 # save first non-option argument
2409 if test 0 -lt $#; then
2410 nonopt=$1
2411 shift
2412 fi
2413
2414 # preserve --debug
2415 test : = "$debug_cmd" || func_append preserve_args " --debug"
2416
2417 case $host in
2418 # Solaris2 added to fix http://debbugs.gnu.org/cgi/bugreport.cgi?bug=16452
2419 # see also: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59788
2420 *cygwin* | *mingw* | *pw32* | *cegcc* | *solaris2* | *os2*)
2421 # don't eliminate duplications in $postdeps and $predeps
2422 opt_duplicate_compiler_generated_deps=:
2423 ;;
2424 *)
2425 opt_duplicate_compiler_generated_deps=$opt_preserve_dup_deps
2426 ;;
2427 esac
2428
2429 $opt_help || {
2430 # Sanity checks first:
2431 func_check_version_match
2432
2433 test yes != "$build_libtool_libs" \
2434 && test yes != "$build_old_libs" \
2435 && func_fatal_configuration "not configured to build any kind of library"
2436
2437 # Darwin sucks
2438 eval std_shrext=\"$shrext_cmds\"
2439
2440 # Only execute mode is allowed to have -dlopen flags.
2441 if test -n "$opt_dlopen" && test execute != "$opt_mode"; then
2442 func_error "unrecognized option '-dlopen'"
2443 $ECHO "$help" 1>&2
2444 exit $EXIT_FAILURE
2445 fi
2446
2447 # Change the help message to a mode-specific one.
2448 generic_help=$help
2449 help="Try '$progname --help --mode=$opt_mode' for more information."
2450 }
2451
2452 # Pass back the unparsed argument list
2453 func_quote_for_eval ${1+"$@"}
2454 libtool_validate_options_result=$func_quote_for_eval_result
2455 }
2456 func_add_hook func_validate_options libtool_validate_options
2457
2458
2459 # Process options as early as possible so that --help and --version
2460 # can return quickly.
2461 func_options ${1+"$@"}
2462 eval set dummy "$func_options_result"; shift
2463
2464
2465
2466 ## ----------- ##
2467 ## Main. ##
2468 ## ----------- ##
2469
2470 magic='%%%MAGIC variable%%%'
2471 magic_exe='%%%MAGIC EXE variable%%%'
2472
2473 # Global variables.
2474 extracted_archives=
2475 extracted_serial=0
2476
2477 # If this variable is set in any of the actions, the command in it
2478 # will be execed at the end. This prevents here-documents from being
2479 # left over by shells.
2480 exec_cmd=
2481
2482
2483 # A function that is used when there is no print builtin or printf.
2484 func_fallback_echo ()
2485 {
2486 eval 'cat <<_LTECHO_EOF
2487 $1
2488 _LTECHO_EOF'
2489 }
2490
2491 # func_generated_by_libtool
2492 # True iff stdin has been generated by Libtool. This function is only
2493 # a basic sanity check; it will hardly flush out determined imposters.
2494 func_generated_by_libtool_p ()
2495 {
2496 $GREP "^# Generated by .*$PACKAGE" > /dev/null 2>&1
2497 }
2498
2499 # func_lalib_p file
2500 # True iff FILE is a libtool '.la' library or '.lo' object file.
2501 # This function is only a basic sanity check; it will hardly flush out
2502 # determined imposters.
2503 func_lalib_p ()
2504 {
2505 test -f "$1" &&
2506 $SED -e 4q "$1" 2>/dev/null | func_generated_by_libtool_p
2507 }
2508
2509 # func_lalib_unsafe_p file
2510 # True iff FILE is a libtool '.la' library or '.lo' object file.
2511 # This function implements the same check as func_lalib_p without
2512 # resorting to external programs. To this end, it redirects stdin and
2513 # closes it afterwards, without saving the original file descriptor.
2514 # As a safety measure, use it only where a negative result would be
2515 # fatal anyway. Works if 'file' does not exist.
2516 func_lalib_unsafe_p ()
2517 {
2518 lalib_p=no
2519 if test -f "$1" && test -r "$1" && exec 5<&0 <"$1"; then
2520 for lalib_p_l in 1 2 3 4
2521 do
2522 read lalib_p_line
2523 case $lalib_p_line in
2524 \#\ Generated\ by\ *$PACKAGE* ) lalib_p=yes; break;;
2525 esac
2526 done
2527 exec 0<&5 5<&-
2528 fi
2529 test yes = "$lalib_p"
2530 }
2531
2532 # func_ltwrapper_script_p file
2533 # True iff FILE is a libtool wrapper script
2534 # This function is only a basic sanity check; it will hardly flush out
2535 # determined imposters.
2536 func_ltwrapper_script_p ()
2537 {
2538 test -f "$1" &&
2539 $lt_truncate_bin < "$1" 2>/dev/null | func_generated_by_libtool_p
2540 }
2541
2542 # func_ltwrapper_executable_p file
2543 # True iff FILE is a libtool wrapper executable
2544 # This function is only a basic sanity check; it will hardly flush out
2545 # determined imposters.
2546 func_ltwrapper_executable_p ()
2547 {
2548 func_ltwrapper_exec_suffix=
2549 case $1 in
2550 *.exe) ;;
2551 *) func_ltwrapper_exec_suffix=.exe ;;
2552 esac
2553 $GREP "$magic_exe" "$1$func_ltwrapper_exec_suffix" >/dev/null 2>&1
2554 }
2555
2556 # func_ltwrapper_scriptname file
2557 # Assumes file is an ltwrapper_executable
2558 # uses $file to determine the appropriate filename for a
2559 # temporary ltwrapper_script.
2560 func_ltwrapper_scriptname ()
2561 {
2562 func_dirname_and_basename "$1" "" "."
2563 func_stripname '' '.exe' "$func_basename_result"
2564 func_ltwrapper_scriptname_result=$func_dirname_result/$objdir/${func_stripname_result}_ltshwrapper
2565 }
2566
2567 # func_ltwrapper_p file
2568 # True iff FILE is a libtool wrapper script or wrapper executable
2569 # This function is only a basic sanity check; it will hardly flush out
2570 # determined imposters.
2571 func_ltwrapper_p ()
2572 {
2573 func_ltwrapper_script_p "$1" || func_ltwrapper_executable_p "$1"
2574 }
2575
2576
2577 # func_execute_cmds commands fail_cmd
2578 # Execute tilde-delimited COMMANDS.
2579 # If FAIL_CMD is given, eval that upon failure.
2580 # FAIL_CMD may read-access the current command in variable CMD!
2581 func_execute_cmds ()
2582 {
2583 $debug_cmd
2584
2585 save_ifs=$IFS; IFS='~'
2586 for cmd in $1; do
2587 IFS=$sp$nl
2588 eval cmd=\"$cmd\"
2589 IFS=$save_ifs
2590 func_show_eval "$cmd" "${2-:}"
2591 done
2592 IFS=$save_ifs
2593 }
2594
2595
2596 # func_source file
2597 # Source FILE, adding directory component if necessary.
2598 # Note that it is not necessary on cygwin/mingw to append a dot to
2599 # FILE even if both FILE and FILE.exe exist: automatic-append-.exe
2600 # behavior happens only for exec(3), not for open(2)! Also, sourcing
2601 # 'FILE.' does not work on cygwin managed mounts.
2602 func_source ()
2603 {
2604 $debug_cmd
2605
2606 case $1 in
2607 */* | *\\*) . "$1" ;;
2608 *) . "./$1" ;;
2609 esac
2610 }
2611
2612
2613 # func_resolve_sysroot PATH
2614 # Replace a leading = in PATH with a sysroot. Store the result into
2615 # func_resolve_sysroot_result
2616 func_resolve_sysroot ()
2617 {
2618 func_resolve_sysroot_result=$1
2619 case $func_resolve_sysroot_result in
2620 =*)
2621 func_stripname '=' '' "$func_resolve_sysroot_result"
2622 func_resolve_sysroot_result=$lt_sysroot$func_stripname_result
2623 ;;
2624 esac
2625 }
2626
2627 # func_replace_sysroot PATH
2628 # If PATH begins with the sysroot, replace it with = and
2629 # store the result into func_replace_sysroot_result.
2630 func_replace_sysroot ()
2631 {
2632 case $lt_sysroot:$1 in
2633 ?*:"$lt_sysroot"*)
2634 func_stripname "$lt_sysroot" '' "$1"
2635 func_replace_sysroot_result='='$func_stripname_result
2636 ;;
2637 *)
2638 # Including no sysroot.
2639 func_replace_sysroot_result=$1
2640 ;;
2641 esac
2642 }
2643
2644 # func_infer_tag arg
2645 # Infer tagged configuration to use if any are available and
2646 # if one wasn't chosen via the "--tag" command line option.
2647 # Only attempt this if the compiler in the base compile
2648 # command doesn't match the default compiler.
2649 # arg is usually of the form 'gcc ...'
2650 func_infer_tag ()
2651 {
2652 $debug_cmd
2653
2654 if test -n "$available_tags" && test -z "$tagname"; then
2655 CC_quoted=
2656 for arg in $CC; do
2657 func_append_quoted CC_quoted "$arg"
2658 done
2659 CC_expanded=`func_echo_all $CC`
2660 CC_quoted_expanded=`func_echo_all $CC_quoted`
2661 case $@ in
2662 # Blanks in the command may have been stripped by the calling shell,
2663 # but not from the CC environment variable when configure was run.
2664 " $CC "* | "$CC "* | " $CC_expanded "* | "$CC_expanded "* | \
2665 " $CC_quoted"* | "$CC_quoted "* | " $CC_quoted_expanded "* | "$CC_quoted_expanded "*) ;;
2666 # Blanks at the start of $base_compile will cause this to fail
2667 # if we don't check for them as well.
2668 *)
2669 for z in $available_tags; do
2670 if $GREP "^# ### BEGIN LIBTOOL TAG CONFIG: $z$" < "$progpath" > /dev/null; then
2671 # Evaluate the configuration.
2672 eval "`$SED -n -e '/^# ### BEGIN LIBTOOL TAG CONFIG: '$z'$/,/^# ### END LIBTOOL TAG CONFIG: '$z'$/p' < $progpath`"
2673 CC_quoted=
2674 for arg in $CC; do
2675 # Double-quote args containing other shell metacharacters.
2676 func_append_quoted CC_quoted "$arg"
2677 done
2678 CC_expanded=`func_echo_all $CC`
2679 CC_quoted_expanded=`func_echo_all $CC_quoted`
2680 case "$@ " in
2681 " $CC "* | "$CC "* | " $CC_expanded "* | "$CC_expanded "* | \
2682 " $CC_quoted"* | "$CC_quoted "* | " $CC_quoted_expanded "* | "$CC_quoted_expanded "*)
2683 # The compiler in the base compile command matches
2684 # the one in the tagged configuration.
2685 # Assume this is the tagged configuration we want.
2686 tagname=$z
2687 break
2688 ;;
2689 esac
2690 fi
2691 done
2692 # If $tagname still isn't set, then no tagged configuration
2693 # was found and let the user know that the "--tag" command
2694 # line option must be used.
2695 if test -z "$tagname"; then
2696 func_echo "unable to infer tagged configuration"
2697 func_fatal_error "specify a tag with '--tag'"
2698 # else
2699 # func_verbose "using $tagname tagged configuration"
2700 fi
2701 ;;
2702 esac
2703 fi
2704 }
2705
2706
2707
2708 # func_write_libtool_object output_name pic_name nonpic_name
2709 # Create a libtool object file (analogous to a ".la" file),
2710 # but don't create it if we're doing a dry run.
2711 func_write_libtool_object ()
2712 {
2713 write_libobj=$1
2714 if test yes = "$build_libtool_libs"; then
2715 write_lobj=\'$2\'
2716 else
2717 write_lobj=none
2718 fi
2719
2720 if test yes = "$build_old_libs"; then
2721 write_oldobj=\'$3\'
2722 else
2723 write_oldobj=none
2724 fi
2725
2726 $opt_dry_run || {
2727 cat >${write_libobj}T <<EOF
2728 # $write_libobj - a libtool object file
2729 # Generated by $PROGRAM (GNU $PACKAGE) $VERSION
2730 #
2731 # Please DO NOT delete this file!
2732 # It is necessary for linking the library.
2733
2734 # Name of the PIC object.
2735 pic_object=$write_lobj
2736
2737 # Name of the non-PIC object
2738 non_pic_object=$write_oldobj
2739
2740 EOF
2741 $MV "${write_libobj}T" "$write_libobj"
2742 }
2743 }
2744
2745
2746 ##################################################
2747 # FILE NAME AND PATH CONVERSION HELPER FUNCTIONS #
2748 ##################################################
2749
2750 # func_convert_core_file_wine_to_w32 ARG
2751 # Helper function used by file name conversion functions when $build is *nix,
2752 # and $host is mingw, cygwin, or some other w32 environment. Relies on a
2753 # correctly configured wine environment available, with the winepath program
2754 # in $build's $PATH.
2755 #
2756 # ARG is the $build file name to be converted to w32 format.
2757 # Result is available in $func_convert_core_file_wine_to_w32_result, and will
2758 # be empty on error (or when ARG is empty)
2759 func_convert_core_file_wine_to_w32 ()
2760 {
2761 $debug_cmd
2762
2763 func_convert_core_file_wine_to_w32_result=$1
2764 if test -n "$1"; then
2765 # Unfortunately, winepath does not exit with a non-zero error code, so we
2766 # are forced to check the contents of stdout. On the other hand, if the
2767 # command is not found, the shell will set an exit code of 127 and print
2768 # *an error message* to stdout. So we must check for both error code of
2769 # zero AND non-empty stdout, which explains the odd construction:
2770 func_convert_core_file_wine_to_w32_tmp=`winepath -w "$1" 2>/dev/null`
2771 if test "$?" -eq 0 && test -n "$func_convert_core_file_wine_to_w32_tmp"; then
2772 func_convert_core_file_wine_to_w32_result=`$ECHO "$func_convert_core_file_wine_to_w32_tmp" |
2773 $SED -e "$sed_naive_backslashify"`
2774 else
2775 func_convert_core_file_wine_to_w32_result=
2776 fi
2777 fi
2778 }
2779 # end: func_convert_core_file_wine_to_w32
2780
2781
2782 # func_convert_core_path_wine_to_w32 ARG
2783 # Helper function used by path conversion functions when $build is *nix, and
2784 # $host is mingw, cygwin, or some other w32 environment. Relies on a correctly
2785 # configured wine environment available, with the winepath program in $build's
2786 # $PATH. Assumes ARG has no leading or trailing path separator characters.
2787 #
2788 # ARG is path to be converted from $build format to win32.
2789 # Result is available in $func_convert_core_path_wine_to_w32_result.
2790 # Unconvertible file (directory) names in ARG are skipped; if no directory names
2791 # are convertible, then the result may be empty.
2792 func_convert_core_path_wine_to_w32 ()
2793 {
2794 $debug_cmd
2795
2796 # unfortunately, winepath doesn't convert paths, only file names
2797 func_convert_core_path_wine_to_w32_result=
2798 if test -n "$1"; then
2799 oldIFS=$IFS
2800 IFS=:
2801 for func_convert_core_path_wine_to_w32_f in $1; do
2802 IFS=$oldIFS
2803 func_convert_core_file_wine_to_w32 "$func_convert_core_path_wine_to_w32_f"
2804 if test -n "$func_convert_core_file_wine_to_w32_result"; then
2805 if test -z "$func_convert_core_path_wine_to_w32_result"; then
2806 func_convert_core_path_wine_to_w32_result=$func_convert_core_file_wine_to_w32_result
2807 else
2808 func_append func_convert_core_path_wine_to_w32_result ";$func_convert_core_file_wine_to_w32_result"
2809 fi
2810 fi
2811 done
2812 IFS=$oldIFS
2813 fi
2814 }
2815 # end: func_convert_core_path_wine_to_w32
2816
2817
2818 # func_cygpath ARGS...
2819 # Wrapper around calling the cygpath program via LT_CYGPATH. This is used when
2820 # when (1) $build is *nix and Cygwin is hosted via a wine environment; or (2)
2821 # $build is MSYS and $host is Cygwin, or (3) $build is Cygwin. In case (1) or
2822 # (2), returns the Cygwin file name or path in func_cygpath_result (input
2823 # file name or path is assumed to be in w32 format, as previously converted
2824 # from $build's *nix or MSYS format). In case (3), returns the w32 file name
2825 # or path in func_cygpath_result (input file name or path is assumed to be in
2826 # Cygwin format). Returns an empty string on error.
2827 #
2828 # ARGS are passed to cygpath, with the last one being the file name or path to
2829 # be converted.
2830 #
2831 # Specify the absolute *nix (or w32) name to cygpath in the LT_CYGPATH
2832 # environment variable; do not put it in $PATH.
2833 func_cygpath ()
2834 {
2835 $debug_cmd
2836
2837 if test -n "$LT_CYGPATH" && test -f "$LT_CYGPATH"; then
2838 func_cygpath_result=`$LT_CYGPATH "$@" 2>/dev/null`
2839 if test "$?" -ne 0; then
2840 # on failure, ensure result is empty
2841 func_cygpath_result=
2842 fi
2843 else
2844 func_cygpath_result=
2845 func_error "LT_CYGPATH is empty or specifies non-existent file: '$LT_CYGPATH'"
2846 fi
2847 }
2848 #end: func_cygpath
2849
2850
2851 # func_convert_core_msys_to_w32 ARG
2852 # Convert file name or path ARG from MSYS format to w32 format. Return
2853 # result in func_convert_core_msys_to_w32_result.
2854 func_convert_core_msys_to_w32 ()
2855 {
2856 $debug_cmd
2857
2858 # awkward: cmd appends spaces to result
2859 func_convert_core_msys_to_w32_result=`( cmd //c echo "$1" ) 2>/dev/null |
2860 $SED -e 's/[ ]*$//' -e "$sed_naive_backslashify"`
2861 }
2862 #end: func_convert_core_msys_to_w32
2863
2864
2865 # func_convert_file_check ARG1 ARG2
2866 # Verify that ARG1 (a file name in $build format) was converted to $host
2867 # format in ARG2. Otherwise, emit an error message, but continue (resetting
2868 # func_to_host_file_result to ARG1).
2869 func_convert_file_check ()
2870 {
2871 $debug_cmd
2872
2873 if test -z "$2" && test -n "$1"; then
2874 func_error "Could not determine host file name corresponding to"
2875 func_error " '$1'"
2876 func_error "Continuing, but uninstalled executables may not work."
2877 # Fallback:
2878 func_to_host_file_result=$1
2879 fi
2880 }
2881 # end func_convert_file_check
2882
2883
2884 # func_convert_path_check FROM_PATHSEP TO_PATHSEP FROM_PATH TO_PATH
2885 # Verify that FROM_PATH (a path in $build format) was converted to $host
2886 # format in TO_PATH. Otherwise, emit an error message, but continue, resetting
2887 # func_to_host_file_result to a simplistic fallback value (see below).
2888 func_convert_path_check ()
2889 {
2890 $debug_cmd
2891
2892 if test -z "$4" && test -n "$3"; then
2893 func_error "Could not determine the host path corresponding to"
2894 func_error " '$3'"
2895 func_error "Continuing, but uninstalled executables may not work."
2896 # Fallback. This is a deliberately simplistic "conversion" and
2897 # should not be "improved". See libtool.info.
2898 if test "x$1" != "x$2"; then
2899 lt_replace_pathsep_chars="s|$1|$2|g"
2900 func_to_host_path_result=`echo "$3" |
2901 $SED -e "$lt_replace_pathsep_chars"`
2902 else
2903 func_to_host_path_result=$3
2904 fi
2905 fi
2906 }
2907 # end func_convert_path_check
2908
2909
2910 # func_convert_path_front_back_pathsep FRONTPAT BACKPAT REPL ORIG
2911 # Modifies func_to_host_path_result by prepending REPL if ORIG matches FRONTPAT
2912 # and appending REPL if ORIG matches BACKPAT.
2913 func_convert_path_front_back_pathsep ()
2914 {
2915 $debug_cmd
2916
2917 case $4 in
2918 $1 ) func_to_host_path_result=$3$func_to_host_path_result
2919 ;;
2920 esac
2921 case $4 in
2922 $2 ) func_append func_to_host_path_result "$3"
2923 ;;
2924 esac
2925 }
2926 # end func_convert_path_front_back_pathsep
2927
2928
2929 ##################################################
2930 # $build to $host FILE NAME CONVERSION FUNCTIONS #
2931 ##################################################
2932 # invoked via '$to_host_file_cmd ARG'
2933 #
2934 # In each case, ARG is the path to be converted from $build to $host format.
2935 # Result will be available in $func_to_host_file_result.
2936
2937
2938 # func_to_host_file ARG
2939 # Converts the file name ARG from $build format to $host format. Return result
2940 # in func_to_host_file_result.
2941 func_to_host_file ()
2942 {
2943 $debug_cmd
2944
2945 $to_host_file_cmd "$1"
2946 }
2947 # end func_to_host_file
2948
2949
2950 # func_to_tool_file ARG LAZY
2951 # converts the file name ARG from $build format to toolchain format. Return
2952 # result in func_to_tool_file_result. If the conversion in use is listed
2953 # in (the comma separated) LAZY, no conversion takes place.
2954 func_to_tool_file ()
2955 {
2956 $debug_cmd
2957
2958 case ,$2, in
2959 *,"$to_tool_file_cmd",*)
2960 func_to_tool_file_result=$1
2961 ;;
2962 *)
2963 $to_tool_file_cmd "$1"
2964 func_to_tool_file_result=$func_to_host_file_result
2965 ;;
2966 esac
2967 }
2968 # end func_to_tool_file
2969
2970
2971 # func_convert_file_noop ARG
2972 # Copy ARG to func_to_host_file_result.
2973 func_convert_file_noop ()
2974 {
2975 func_to_host_file_result=$1
2976 }
2977 # end func_convert_file_noop
2978
2979
2980 # func_convert_file_msys_to_w32 ARG
2981 # Convert file name ARG from (mingw) MSYS to (mingw) w32 format; automatic
2982 # conversion to w32 is not available inside the cwrapper. Returns result in
2983 # func_to_host_file_result.
2984 func_convert_file_msys_to_w32 ()
2985 {
2986 $debug_cmd
2987
2988 func_to_host_file_result=$1
2989 if test -n "$1"; then
2990 func_convert_core_msys_to_w32 "$1"
2991 func_to_host_file_result=$func_convert_core_msys_to_w32_result
2992 fi
2993 func_convert_file_check "$1" "$func_to_host_file_result"
2994 }
2995 # end func_convert_file_msys_to_w32
2996
2997
2998 # func_convert_file_cygwin_to_w32 ARG
2999 # Convert file name ARG from Cygwin to w32 format. Returns result in
3000 # func_to_host_file_result.
3001 func_convert_file_cygwin_to_w32 ()
3002 {
3003 $debug_cmd
3004
3005 func_to_host_file_result=$1
3006 if test -n "$1"; then
3007 # because $build is cygwin, we call "the" cygpath in $PATH; no need to use
3008 # LT_CYGPATH in this case.
3009 func_to_host_file_result=`cygpath -m "$1"`
3010 fi
3011 func_convert_file_check "$1" "$func_to_host_file_result"
3012 }
3013 # end func_convert_file_cygwin_to_w32
3014
3015
3016 # func_convert_file_nix_to_w32 ARG
3017 # Convert file name ARG from *nix to w32 format. Requires a wine environment
3018 # and a working winepath. Returns result in func_to_host_file_result.
3019 func_convert_file_nix_to_w32 ()
3020 {
3021 $debug_cmd
3022
3023 func_to_host_file_result=$1
3024 if test -n "$1"; then
3025 func_convert_core_file_wine_to_w32 "$1"
3026 func_to_host_file_result=$func_convert_core_file_wine_to_w32_result
3027 fi
3028 func_convert_file_check "$1" "$func_to_host_file_result"
3029 }
3030 # end func_convert_file_nix_to_w32
3031
3032
3033 # func_convert_file_msys_to_cygwin ARG
3034 # Convert file name ARG from MSYS to Cygwin format. Requires LT_CYGPATH set.
3035 # Returns result in func_to_host_file_result.
3036 func_convert_file_msys_to_cygwin ()
3037 {
3038 $debug_cmd
3039
3040 func_to_host_file_result=$1
3041 if test -n "$1"; then
3042 func_convert_core_msys_to_w32 "$1"
3043 func_cygpath -u "$func_convert_core_msys_to_w32_result"
3044 func_to_host_file_result=$func_cygpath_result
3045 fi
3046 func_convert_file_check "$1" "$func_to_host_file_result"
3047 }
3048 # end func_convert_file_msys_to_cygwin
3049
3050
3051 # func_convert_file_nix_to_cygwin ARG
3052 # Convert file name ARG from *nix to Cygwin format. Requires Cygwin installed
3053 # in a wine environment, working winepath, and LT_CYGPATH set. Returns result
3054 # in func_to_host_file_result.
3055 func_convert_file_nix_to_cygwin ()
3056 {
3057 $debug_cmd
3058
3059 func_to_host_file_result=$1
3060 if test -n "$1"; then
3061 # convert from *nix to w32, then use cygpath to convert from w32 to cygwin.
3062 func_convert_core_file_wine_to_w32 "$1"
3063 func_cygpath -u "$func_convert_core_file_wine_to_w32_result"
3064 func_to_host_file_result=$func_cygpath_result
3065 fi
3066 func_convert_file_check "$1" "$func_to_host_file_result"
3067 }
3068 # end func_convert_file_nix_to_cygwin
3069
3070
3071 #############################################
3072 # $build to $host PATH CONVERSION FUNCTIONS #
3073 #############################################
3074 # invoked via '$to_host_path_cmd ARG'
3075 #
3076 # In each case, ARG is the path to be converted from $build to $host format.
3077 # The result will be available in $func_to_host_path_result.
3078 #
3079 # Path separators are also converted from $build format to $host format. If
3080 # ARG begins or ends with a path separator character, it is preserved (but
3081 # converted to $host format) on output.
3082 #
3083 # All path conversion functions are named using the following convention:
3084 # file name conversion function : func_convert_file_X_to_Y ()
3085 # path conversion function : func_convert_path_X_to_Y ()
3086 # where, for any given $build/$host combination the 'X_to_Y' value is the
3087 # same. If conversion functions are added for new $build/$host combinations,
3088 # the two new functions must follow this pattern, or func_init_to_host_path_cmd
3089 # will break.
3090
3091
3092 # func_init_to_host_path_cmd
3093 # Ensures that function "pointer" variable $to_host_path_cmd is set to the
3094 # appropriate value, based on the value of $to_host_file_cmd.
3095 to_host_path_cmd=
3096 func_init_to_host_path_cmd ()
3097 {
3098 $debug_cmd
3099
3100 if test -z "$to_host_path_cmd"; then
3101 func_stripname 'func_convert_file_' '' "$to_host_file_cmd"
3102 to_host_path_cmd=func_convert_path_$func_stripname_result
3103 fi
3104 }
3105
3106
3107 # func_to_host_path ARG
3108 # Converts the path ARG from $build format to $host format. Return result
3109 # in func_to_host_path_result.
3110 func_to_host_path ()
3111 {
3112 $debug_cmd
3113
3114 func_init_to_host_path_cmd
3115 $to_host_path_cmd "$1"
3116 }
3117 # end func_to_host_path
3118
3119
3120 # func_convert_path_noop ARG
3121 # Copy ARG to func_to_host_path_result.
3122 func_convert_path_noop ()
3123 {
3124 func_to_host_path_result=$1
3125 }
3126 # end func_convert_path_noop
3127
3128
3129 # func_convert_path_msys_to_w32 ARG
3130 # Convert path ARG from (mingw) MSYS to (mingw) w32 format; automatic
3131 # conversion to w32 is not available inside the cwrapper. Returns result in
3132 # func_to_host_path_result.
3133 func_convert_path_msys_to_w32 ()
3134 {
3135 $debug_cmd
3136
3137 func_to_host_path_result=$1
3138 if test -n "$1"; then
3139 # Remove leading and trailing path separator characters from ARG. MSYS
3140 # behavior is inconsistent here; cygpath turns them into '.;' and ';.';
3141 # and winepath ignores them completely.
3142 func_stripname : : "$1"
3143 func_to_host_path_tmp1=$func_stripname_result
3144 func_convert_core_msys_to_w32 "$func_to_host_path_tmp1"
3145 func_to_host_path_result=$func_convert_core_msys_to_w32_result
3146 func_convert_path_check : ";" \
3147 "$func_to_host_path_tmp1" "$func_to_host_path_result"
3148 func_convert_path_front_back_pathsep ":*" "*:" ";" "$1"
3149 fi
3150 }
3151 # end func_convert_path_msys_to_w32
3152
3153
3154 # func_convert_path_cygwin_to_w32 ARG
3155 # Convert path ARG from Cygwin to w32 format. Returns result in
3156 # func_to_host_file_result.
3157 func_convert_path_cygwin_to_w32 ()
3158 {
3159 $debug_cmd
3160
3161 func_to_host_path_result=$1
3162 if test -n "$1"; then
3163 # See func_convert_path_msys_to_w32:
3164 func_stripname : : "$1"
3165 func_to_host_path_tmp1=$func_stripname_result
3166 func_to_host_path_result=`cygpath -m -p "$func_to_host_path_tmp1"`
3167 func_convert_path_check : ";" \
3168 "$func_to_host_path_tmp1" "$func_to_host_path_result"
3169 func_convert_path_front_back_pathsep ":*" "*:" ";" "$1"
3170 fi
3171 }
3172 # end func_convert_path_cygwin_to_w32
3173
3174
3175 # func_convert_path_nix_to_w32 ARG
3176 # Convert path ARG from *nix to w32 format. Requires a wine environment and
3177 # a working winepath. Returns result in func_to_host_file_result.
3178 func_convert_path_nix_to_w32 ()
3179 {
3180 $debug_cmd
3181
3182 func_to_host_path_result=$1
3183 if test -n "$1"; then
3184 # See func_convert_path_msys_to_w32:
3185 func_stripname : : "$1"
3186 func_to_host_path_tmp1=$func_stripname_result
3187 func_convert_core_path_wine_to_w32 "$func_to_host_path_tmp1"
3188 func_to_host_path_result=$func_convert_core_path_wine_to_w32_result
3189 func_convert_path_check : ";" \
3190 "$func_to_host_path_tmp1" "$func_to_host_path_result"
3191 func_convert_path_front_back_pathsep ":*" "*:" ";" "$1"
3192 fi
3193 }
3194 # end func_convert_path_nix_to_w32
3195
3196
3197 # func_convert_path_msys_to_cygwin ARG
3198 # Convert path ARG from MSYS to Cygwin format. Requires LT_CYGPATH set.
3199 # Returns result in func_to_host_file_result.
3200 func_convert_path_msys_to_cygwin ()
3201 {
3202 $debug_cmd
3203
3204 func_to_host_path_result=$1
3205 if test -n "$1"; then
3206 # See func_convert_path_msys_to_w32:
3207 func_stripname : : "$1"
3208 func_to_host_path_tmp1=$func_stripname_result
3209 func_convert_core_msys_to_w32 "$func_to_host_path_tmp1"
3210 func_cygpath -u -p "$func_convert_core_msys_to_w32_result"
3211 func_to_host_path_result=$func_cygpath_result
3212 func_convert_path_check : : \
3213 "$func_to_host_path_tmp1" "$func_to_host_path_result"
3214 func_convert_path_front_back_pathsep ":*" "*:" : "$1"
3215 fi
3216 }
3217 # end func_convert_path_msys_to_cygwin
3218
3219
3220 # func_convert_path_nix_to_cygwin ARG
3221 # Convert path ARG from *nix to Cygwin format. Requires Cygwin installed in a
3222 # a wine environment, working winepath, and LT_CYGPATH set. Returns result in
3223 # func_to_host_file_result.
3224 func_convert_path_nix_to_cygwin ()
3225 {
3226 $debug_cmd
3227
3228 func_to_host_path_result=$1
3229 if test -n "$1"; then
3230 # Remove leading and trailing path separator characters from
3231 # ARG. msys behavior is inconsistent here, cygpath turns them
3232 # into '.;' and ';.', and winepath ignores them completely.
3233 func_stripname : : "$1"
3234 func_to_host_path_tmp1=$func_stripname_result
3235 func_convert_core_path_wine_to_w32 "$func_to_host_path_tmp1"
3236 func_cygpath -u -p "$func_convert_core_path_wine_to_w32_result"
3237 func_to_host_path_result=$func_cygpath_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_nix_to_cygwin
3244
3245
3246 # func_dll_def_p FILE
3247 # True iff FILE is a Windows DLL '.def' file.
3248 # Keep in sync with _LT_DLL_DEF_P in libtool.m4
3249 func_dll_def_p ()
3250 {
3251 $debug_cmd
3252
3253 func_dll_def_p_tmp=`$SED -n \
3254 -e 's/^[ ]*//' \
3255 -e '/^\(;.*\)*$/d' \
3256 -e 's/^\(EXPORTS\|LIBRARY\)\([ ].*\)*$/DEF/p' \
3257 -e q \
3258 "$1"`
3259 test DEF = "$func_dll_def_p_tmp"
3260 }
3261
3262
3263 # func_mode_compile arg...
3264 func_mode_compile ()
3265 {
3266 $debug_cmd
3267
3268 # Get the compilation command and the source file.
3269 base_compile=
3270 srcfile=$nonopt # always keep a non-empty value in "srcfile"
3271 suppress_opt=yes
3272 suppress_output=
3273 arg_mode=normal
3274 libobj=
3275 later=
3276 pie_flag=
3277
3278 for arg
3279 do
3280 case $arg_mode in
3281 arg )
3282 # do not "continue". Instead, add this to base_compile
3283 lastarg=$arg
3284 arg_mode=normal
3285 ;;
3286
3287 target )
3288 libobj=$arg
3289 arg_mode=normal
3290 continue
3291 ;;
3292
3293 normal )
3294 # Accept any command-line options.
3295 case $arg in
3296 -o)
3297 test -n "$libobj" && \
3298 func_fatal_error "you cannot specify '-o' more than once"
3299 arg_mode=target
3300 continue
3301 ;;
3302
3303 -pie | -fpie | -fPIE)
3304 func_append pie_flag " $arg"
3305 continue
3306 ;;
3307
3308 -shared | -static | -prefer-pic | -prefer-non-pic)
3309 func_append later " $arg"
3310 continue
3311 ;;
3312
3313 -no-suppress)
3314 suppress_opt=no
3315 continue
3316 ;;
3317
3318 -Xcompiler)
3319 arg_mode=arg # the next one goes into the "base_compile" arg list
3320 continue # The current "srcfile" will either be retained or
3321 ;; # replaced later. I would guess that would be a bug.
3322
3323 -Wc,*)
3324 func_stripname '-Wc,' '' "$arg"
3325 args=$func_stripname_result
3326 lastarg=
3327 save_ifs=$IFS; IFS=,
3328 for arg in $args; do
3329 IFS=$save_ifs
3330 func_append_quoted lastarg "$arg"
3331 done
3332 IFS=$save_ifs
3333 func_stripname ' ' '' "$lastarg"
3334 lastarg=$func_stripname_result
3335
3336 # Add the arguments to base_compile.
3337 func_append base_compile " $lastarg"
3338 continue
3339 ;;
3340
3341 *)
3342 # Accept the current argument as the source file.
3343 # The previous "srcfile" becomes the current argument.
3344 #
3345 lastarg=$srcfile
3346 srcfile=$arg
3347 ;;
3348 esac # case $arg
3349 ;;
3350 esac # case $arg_mode
3351
3352 # Aesthetically quote the previous argument.
3353 func_append_quoted base_compile "$lastarg"
3354 done # for arg
3355
3356 case $arg_mode in
3357 arg)
3358 func_fatal_error "you must specify an argument for -Xcompile"
3359 ;;
3360 target)
3361 func_fatal_error "you must specify a target with '-o'"
3362 ;;
3363 *)
3364 # Get the name of the library object.
3365 test -z "$libobj" && {
3366 func_basename "$srcfile"
3367 libobj=$func_basename_result
3368 }
3369 ;;
3370 esac
3371
3372 # Recognize several different file suffixes.
3373 # If the user specifies -o file.o, it is replaced with file.lo
3374 case $libobj in
3375 *.[cCFSifmso] | \
3376 *.ada | *.adb | *.ads | *.asm | \
3377 *.c++ | *.cc | *.ii | *.class | *.cpp | *.cxx | \
3378 *.[fF][09]? | *.for | *.java | *.go | *.obj | *.sx | *.cu | *.cup)
3379 func_xform "$libobj"
3380 libobj=$func_xform_result
3381 ;;
3382 esac
3383
3384 case $libobj in
3385 *.lo) func_lo2o "$libobj"; obj=$func_lo2o_result ;;
3386 *)
3387 func_fatal_error "cannot determine name of library object from '$libobj'"
3388 ;;
3389 esac
3390
3391 func_infer_tag $base_compile
3392
3393 for arg in $later; do
3394 case $arg in
3395 -shared)
3396 test yes = "$build_libtool_libs" \
3397 || func_fatal_configuration "cannot build a shared library"
3398 build_old_libs=no
3399 continue
3400 ;;
3401
3402 -static)
3403 build_libtool_libs=no
3404 build_old_libs=yes
3405 continue
3406 ;;
3407
3408 -prefer-pic)
3409 pic_mode=yes
3410 continue
3411 ;;
3412
3413 -prefer-non-pic)
3414 pic_mode=no
3415 continue
3416 ;;
3417 esac
3418 done
3419
3420 func_quote_for_eval "$libobj"
3421 test "X$libobj" != "X$func_quote_for_eval_result" \
3422 && $ECHO "X$libobj" | $GREP '[]~#^*{};<>?"'"'"' &()|`$[]' \
3423 && func_warning "libobj name '$libobj' may not contain shell special characters."
3424 func_dirname_and_basename "$obj" "/" ""
3425 objname=$func_basename_result
3426 xdir=$func_dirname_result
3427 lobj=$xdir$objdir/$objname
3428
3429 test -z "$base_compile" && \
3430 func_fatal_help "you must specify a compilation command"
3431
3432 # Delete any leftover library objects.
3433 if test yes = "$build_old_libs"; then
3434 removelist="$obj $lobj $libobj ${libobj}T"
3435 else
3436 removelist="$lobj $libobj ${libobj}T"
3437 fi
3438
3439 # On Cygwin there's no "real" PIC flag so we must build both object types
3440 case $host_os in
3441 cygwin* | mingw* | pw32* | os2* | cegcc*)
3442 pic_mode=default
3443 ;;
3444 esac
3445 if test no = "$pic_mode" && test pass_all != "$deplibs_check_method"; then
3446 # non-PIC code in shared libraries is not supported
3447 pic_mode=default
3448 fi
3449
3450 # Calculate the filename of the output object if compiler does
3451 # not support -o with -c
3452 if test no = "$compiler_c_o"; then
3453 output_obj=`$ECHO "$srcfile" | $SED 's%^.*/%%; s%\.[^.]*$%%'`.$objext
3454 lockfile=$output_obj.lock
3455 else
3456 output_obj=
3457 need_locks=no
3458 lockfile=
3459 fi
3460
3461 # Lock this critical section if it is needed
3462 # We use this script file to make the link, it avoids creating a new file
3463 if test yes = "$need_locks"; then
3464 until $opt_dry_run || ln "$progpath" "$lockfile" 2>/dev/null; do
3465 func_echo "Waiting for $lockfile to be removed"
3466 sleep 2
3467 done
3468 elif test warn = "$need_locks"; then
3469 if test -f "$lockfile"; then
3470 $ECHO "\
3471 *** ERROR, $lockfile exists and contains:
3472 `cat $lockfile 2>/dev/null`
3473
3474 This indicates that another process is trying to use the same
3475 temporary object file, and libtool could not work around it because
3476 your compiler does not support '-c' and '-o' together. If you
3477 repeat this compilation, it may succeed, by chance, but you had better
3478 avoid parallel builds (make -j) in this platform, or get a better
3479 compiler."
3480
3481 $opt_dry_run || $RM $removelist
3482 exit $EXIT_FAILURE
3483 fi
3484 func_append removelist " $output_obj"
3485 $ECHO "$srcfile" > "$lockfile"
3486 fi
3487
3488 $opt_dry_run || $RM $removelist
3489 func_append removelist " $lockfile"
3490 trap '$opt_dry_run || $RM $removelist; exit $EXIT_FAILURE' 1 2 15
3491
3492 func_to_tool_file "$srcfile" func_convert_file_msys_to_w32
3493 srcfile=$func_to_tool_file_result
3494 func_quote_for_eval "$srcfile"
3495 qsrcfile=$func_quote_for_eval_result
3496
3497 # Only build a PIC object if we are building libtool libraries.
3498 if test yes = "$build_libtool_libs"; then
3499 # Without this assignment, base_compile gets emptied.
3500 fbsd_hideous_sh_bug=$base_compile
3501
3502 if test no != "$pic_mode"; then
3503 command="$base_compile $qsrcfile $pic_flag"
3504 else
3505 # Don't build PIC code
3506 command="$base_compile $qsrcfile"
3507 fi
3508
3509 func_mkdir_p "$xdir$objdir"
3510
3511 if test -z "$output_obj"; then
3512 # Place PIC objects in $objdir
3513 func_append command " -o $lobj"
3514 fi
3515
3516 func_show_eval_locale "$command" \
3517 'test -n "$output_obj" && $RM $removelist; exit $EXIT_FAILURE'
3518
3519 if test warn = "$need_locks" &&
3520 test "X`cat $lockfile 2>/dev/null`" != "X$srcfile"; then
3521 $ECHO "\
3522 *** ERROR, $lockfile contains:
3523 `cat $lockfile 2>/dev/null`
3524
3525 but it should contain:
3526 $srcfile
3527
3528 This indicates that another process is trying to use the same
3529 temporary object file, and libtool could not work around it because
3530 your compiler does not support '-c' and '-o' together. If you
3531 repeat this compilation, it may succeed, by chance, but you had better
3532 avoid parallel builds (make -j) in this platform, or get a better
3533 compiler."
3534
3535 $opt_dry_run || $RM $removelist
3536 exit $EXIT_FAILURE
3537 fi
3538
3539 # Just move the object if needed, then go on to compile the next one
3540 if test -n "$output_obj" && test "X$output_obj" != "X$lobj"; then
3541 func_show_eval '$MV "$output_obj" "$lobj"' \
3542 'error=$?; $opt_dry_run || $RM $removelist; exit $error'
3543 fi
3544
3545 # Allow error messages only from the first compilation.
3546 if test yes = "$suppress_opt"; then
3547 suppress_output=' >/dev/null 2>&1'
3548 fi
3549 fi
3550
3551 # Only build a position-dependent object if we build old libraries.
3552 if test yes = "$build_old_libs"; then
3553 if test yes != "$pic_mode"; then
3554 # Don't build PIC code
3555 command="$base_compile $qsrcfile$pie_flag"
3556 else
3557 command="$base_compile $qsrcfile $pic_flag"
3558 fi
3559 if test yes = "$compiler_c_o"; then
3560 func_append command " -o $obj"
3561 fi
3562
3563 # Suppress compiler output if we already did a PIC compilation.
3564 func_append command "$suppress_output"
3565 func_show_eval_locale "$command" \
3566 '$opt_dry_run || $RM $removelist; exit $EXIT_FAILURE'
3567
3568 if test warn = "$need_locks" &&
3569 test "X`cat $lockfile 2>/dev/null`" != "X$srcfile"; then
3570 $ECHO "\
3571 *** ERROR, $lockfile contains:
3572 `cat $lockfile 2>/dev/null`
3573
3574 but it should contain:
3575 $srcfile
3576
3577 This indicates that another process is trying to use the same
3578 temporary object file, and libtool could not work around it because
3579 your compiler does not support '-c' and '-o' together. If you
3580 repeat this compilation, it may succeed, by chance, but you had better
3581 avoid parallel builds (make -j) in this platform, or get a better
3582 compiler."
3583
3584 $opt_dry_run || $RM $removelist
3585 exit $EXIT_FAILURE
3586 fi
3587
3588 # Just move the object if needed
3589 if test -n "$output_obj" && test "X$output_obj" != "X$obj"; then
3590 func_show_eval '$MV "$output_obj" "$obj"' \
3591 'error=$?; $opt_dry_run || $RM $removelist; exit $error'
3592 fi
3593 fi
3594
3595 $opt_dry_run || {
3596 func_write_libtool_object "$libobj" "$objdir/$objname" "$objname"
3597
3598 # Unlock the critical section if it was locked
3599 if test no != "$need_locks"; then
3600 removelist=$lockfile
3601 $RM "$lockfile"
3602 fi
3603 }
3604
3605 exit $EXIT_SUCCESS
3606 }
3607
3608 $opt_help || {
3609 test compile = "$opt_mode" && func_mode_compile ${1+"$@"}
3610 }
3611
3612 func_mode_help ()
3613 {
3614 # We need to display help for each of the modes.
3615 case $opt_mode in
3616 "")
3617 # Generic help is extracted from the usage comments
3618 # at the start of this file.
3619 func_help
3620 ;;
3621
3622 clean)
3623 $ECHO \
3624 "Usage: $progname [OPTION]... --mode=clean RM [RM-OPTION]... FILE...
3625
3626 Remove files from the build directory.
3627
3628 RM is the name of the program to use to delete files associated with each FILE
3629 (typically '/bin/rm'). RM-OPTIONS are options (such as '-f') to be passed
3630 to RM.
3631
3632 If FILE is a libtool library, object or program, all the files associated
3633 with it are deleted. Otherwise, only FILE itself is deleted using RM."
3634 ;;
3635
3636 compile)
3637 $ECHO \
3638 "Usage: $progname [OPTION]... --mode=compile COMPILE-COMMAND... SOURCEFILE
3639
3640 Compile a source file into a libtool library object.
3641
3642 This mode accepts the following additional options:
3643
3644 -o OUTPUT-FILE set the output file name to OUTPUT-FILE
3645 -no-suppress do not suppress compiler output for multiple passes
3646 -prefer-pic try to build PIC objects only
3647 -prefer-non-pic try to build non-PIC objects only
3648 -shared do not build a '.o' file suitable for static linking
3649 -static only build a '.o' file suitable for static linking
3650 -Wc,FLAG pass FLAG directly to the compiler
3651
3652 COMPILE-COMMAND is a command to be used in creating a 'standard' object file
3653 from the given SOURCEFILE.
3654
3655 The output file name is determined by removing the directory component from
3656 SOURCEFILE, then substituting the C source code suffix '.c' with the
3657 library object suffix, '.lo'."
3658 ;;
3659
3660 execute)
3661 $ECHO \
3662 "Usage: $progname [OPTION]... --mode=execute COMMAND [ARGS]...
3663
3664 Automatically set library path, then run a program.
3665
3666 This mode accepts the following additional options:
3667
3668 -dlopen FILE add the directory containing FILE to the library path
3669
3670 This mode sets the library path environment variable according to '-dlopen'
3671 flags.
3672
3673 If any of the ARGS are libtool executable wrappers, then they are translated
3674 into their corresponding uninstalled binary, and any of their required library
3675 directories are added to the library path.
3676
3677 Then, COMMAND is executed, with ARGS as arguments."
3678 ;;
3679
3680 finish)
3681 $ECHO \
3682 "Usage: $progname [OPTION]... --mode=finish [LIBDIR]...
3683
3684 Complete the installation of libtool libraries.
3685
3686 Each LIBDIR is a directory that contains libtool libraries.
3687
3688 The commands that this mode executes may require superuser privileges. Use
3689 the '--dry-run' option if you just want to see what would be executed."
3690 ;;
3691
3692 install)
3693 $ECHO \
3694 "Usage: $progname [OPTION]... --mode=install INSTALL-COMMAND...
3695
3696 Install executables or libraries.
3697
3698 INSTALL-COMMAND is the installation command. The first component should be
3699 either the 'install' or 'cp' program.
3700
3701 The following components of INSTALL-COMMAND are treated specially:
3702
3703 -inst-prefix-dir PREFIX-DIR Use PREFIX-DIR as a staging area for installation
3704
3705 The rest of the components are interpreted as arguments to that command (only
3706 BSD-compatible install options are recognized)."
3707 ;;
3708
3709 link)
3710 $ECHO \
3711 "Usage: $progname [OPTION]... --mode=link LINK-COMMAND...
3712
3713 Link object files or libraries together to form another library, or to
3714 create an executable program.
3715
3716 LINK-COMMAND is a command using the C compiler that you would use to create
3717 a program from several object files.
3718
3719 The following components of LINK-COMMAND are treated specially:
3720
3721 -all-static do not do any dynamic linking at all
3722 -avoid-version do not add a version suffix if possible
3723 -bindir BINDIR specify path to binaries directory (for systems where
3724 libraries must be found in the PATH setting at runtime)
3725 -dlopen FILE '-dlpreopen' FILE if it cannot be dlopened at runtime
3726 -dlpreopen FILE link in FILE and add its symbols to lt_preloaded_symbols
3727 -export-dynamic allow symbols from OUTPUT-FILE to be resolved with dlsym(3)
3728 -export-symbols SYMFILE
3729 try to export only the symbols listed in SYMFILE
3730 -export-symbols-regex REGEX
3731 try to export only the symbols matching REGEX
3732 -LLIBDIR search LIBDIR for required installed libraries
3733 -lNAME OUTPUT-FILE requires the installed library libNAME
3734 -module build a library that can dlopened
3735 -no-fast-install disable the fast-install mode
3736 -no-install link a not-installable executable
3737 -no-undefined declare that a library does not refer to external symbols
3738 -o OUTPUT-FILE create OUTPUT-FILE from the specified objects
3739 -objectlist FILE use a list of object files found in FILE to specify objects
3740 -os2dllname NAME force a short DLL name on OS/2 (no effect on other OSes)
3741 -precious-files-regex REGEX
3742 don't remove output files matching REGEX
3743 -release RELEASE specify package release information
3744 -rpath LIBDIR the created library will eventually be installed in LIBDIR
3745 -R[ ]LIBDIR add LIBDIR to the runtime path of programs and libraries
3746 -shared only do dynamic linking of libtool libraries
3747 -shrext SUFFIX override the standard shared library file extension
3748 -static do not do any dynamic linking of uninstalled libtool libraries
3749 -static-libtool-libs
3750 do not do any dynamic linking of libtool libraries
3751 -version-info CURRENT[:REVISION[:AGE]]
3752 specify library version info [each variable defaults to 0]
3753 -weak LIBNAME declare that the target provides the LIBNAME interface
3754 -Wc,FLAG
3755 -Xcompiler FLAG pass linker-specific FLAG directly to the compiler
3756 -Wl,FLAG
3757 -Xlinker FLAG pass linker-specific FLAG directly to the linker
3758 -XCClinker FLAG pass link-specific FLAG to the compiler driver (CC)
3759
3760 All other options (arguments beginning with '-') are ignored.
3761
3762 Every other argument is treated as a filename. Files ending in '.la' are
3763 treated as uninstalled libtool libraries, other files are standard or library
3764 object files.
3765
3766 If the OUTPUT-FILE ends in '.la', then a libtool library is created,
3767 only library objects ('.lo' files) may be specified, and '-rpath' is
3768 required, except when creating a convenience library.
3769
3770 If OUTPUT-FILE ends in '.a' or '.lib', then a standard library is created
3771 using 'ar' and 'ranlib', or on Windows using 'lib'.
3772
3773 If OUTPUT-FILE ends in '.lo' or '.$objext', then a reloadable object file
3774 is created, otherwise an executable program is created."
3775 ;;
3776
3777 uninstall)
3778 $ECHO \
3779 "Usage: $progname [OPTION]... --mode=uninstall RM [RM-OPTION]... FILE...
3780
3781 Remove libraries from an installation directory.
3782
3783 RM is the name of the program to use to delete files associated with each FILE
3784 (typically '/bin/rm'). RM-OPTIONS are options (such as '-f') to be passed
3785 to RM.
3786
3787 If FILE is a libtool library, all the files associated with it are deleted.
3788 Otherwise, only FILE itself is deleted using RM."
3789 ;;
3790
3791 *)
3792 func_fatal_help "invalid operation mode '$opt_mode'"
3793 ;;
3794 esac
3795
3796 echo
3797 $ECHO "Try '$progname --help' for more information about other modes."
3798 }
3799
3800 # Now that we've collected a possible --mode arg, show help if necessary
3801 if $opt_help; then
3802 if test : = "$opt_help"; then
3803 func_mode_help
3804 else
3805 {
3806 func_help noexit
3807 for opt_mode in compile link execute install finish uninstall clean; do
3808 func_mode_help
3809 done
3810 } | $SED -n '1p; 2,$s/^Usage:/ or: /p'
3811 {
3812 func_help noexit
3813 for opt_mode in compile link execute install finish uninstall clean; do
3814 echo
3815 func_mode_help
3816 done
3817 } |
3818 $SED '1d
3819 /^When reporting/,/^Report/{
3820 H
3821 d
3822 }
3823 $x
3824 /information about other modes/d
3825 /more detailed .*MODE/d
3826 s/^Usage:.*--mode=\([^ ]*\) .*/Description of \1 mode:/'
3827 fi
3828 exit $?
3829 fi
3830
3831
3832 # func_mode_execute arg...
3833 func_mode_execute ()
3834 {
3835 $debug_cmd
3836
3837 # The first argument is the command name.
3838 cmd=$nonopt
3839 test -z "$cmd" && \
3840 func_fatal_help "you must specify a COMMAND"
3841
3842 # Handle -dlopen flags immediately.
3843 for file in $opt_dlopen; do
3844 test -f "$file" \
3845 || func_fatal_help "'$file' is not a file"
3846
3847 dir=
3848 case $file in
3849 *.la)
3850 func_resolve_sysroot "$file"
3851 file=$func_resolve_sysroot_result
3852
3853 # Check to see that this really is a libtool archive.
3854 func_lalib_unsafe_p "$file" \
3855 || func_fatal_help "'$lib' is not a valid libtool archive"
3856
3857 # Read the libtool library.
3858 dlname=
3859 library_names=
3860 func_source "$file"
3861
3862 # Skip this library if it cannot be dlopened.
3863 if test -z "$dlname"; then
3864 # Warn if it was a shared library.
3865 test -n "$library_names" && \
3866 func_warning "'$file' was not linked with '-export-dynamic'"
3867 continue
3868 fi
3869
3870 func_dirname "$file" "" "."
3871 dir=$func_dirname_result
3872
3873 if test -f "$dir/$objdir/$dlname"; then
3874 func_append dir "/$objdir"
3875 else
3876 if test ! -f "$dir/$dlname"; then
3877 func_fatal_error "cannot find '$dlname' in '$dir' or '$dir/$objdir'"
3878 fi
3879 fi
3880 ;;
3881
3882 *.lo)
3883 # Just add the directory containing the .lo file.
3884 func_dirname "$file" "" "."
3885 dir=$func_dirname_result
3886 ;;
3887
3888 *)
3889 func_warning "'-dlopen' is ignored for non-libtool libraries and objects"
3890 continue
3891 ;;
3892 esac
3893
3894 # Get the absolute pathname.
3895 absdir=`cd "$dir" && pwd`
3896 test -n "$absdir" && dir=$absdir
3897
3898 # Now add the directory to shlibpath_var.
3899 if eval "test -z \"\$$shlibpath_var\""; then
3900 eval "$shlibpath_var=\"\$dir\""
3901 else
3902 eval "$shlibpath_var=\"\$dir:\$$shlibpath_var\""
3903 fi
3904 done
3905
3906 # This variable tells wrapper scripts just to set shlibpath_var
3907 # rather than running their programs.
3908 libtool_execute_magic=$magic
3909
3910 # Check if any of the arguments is a wrapper script.
3911 args=
3912 for file
3913 do
3914 case $file in
3915 -* | *.la | *.lo ) ;;
3916 *)
3917 # Do a test to see if this is really a libtool program.
3918 if func_ltwrapper_script_p "$file"; then
3919 func_source "$file"
3920 # Transform arg to wrapped name.
3921 file=$progdir/$program
3922 elif func_ltwrapper_executable_p "$file"; then
3923 func_ltwrapper_scriptname "$file"
3924 func_source "$func_ltwrapper_scriptname_result"
3925 # Transform arg to wrapped name.
3926 file=$progdir/$program
3927 fi
3928 ;;
3929 esac
3930 # Quote arguments (to preserve shell metacharacters).
3931 func_append_quoted args "$file"
3932 done
3933
3934 if $opt_dry_run; then
3935 # Display what would be done.
3936 if test -n "$shlibpath_var"; then
3937 eval "\$ECHO \"\$shlibpath_var=\$$shlibpath_var\""
3938 echo "export $shlibpath_var"
3939 fi
3940 $ECHO "$cmd$args"
3941 exit $EXIT_SUCCESS
3942 else
3943 if test -n "$shlibpath_var"; then
3944 # Export the shlibpath_var.
3945 eval "export $shlibpath_var"
3946 fi
3947
3948 # Restore saved environment variables
3949 for lt_var in LANG LANGUAGE LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES
3950 do
3951 eval "if test \"\${save_$lt_var+set}\" = set; then
3952 $lt_var=\$save_$lt_var; export $lt_var
3953 else
3954 $lt_unset $lt_var
3955 fi"
3956 done
3957
3958 # Now prepare to actually exec the command.
3959 exec_cmd=\$cmd$args
3960 fi
3961 }
3962
3963 test execute = "$opt_mode" && func_mode_execute ${1+"$@"}
3964
3965
3966 # func_mode_finish arg...
3967 func_mode_finish ()
3968 {
3969 $debug_cmd
3970
3971 libs=
3972 libdirs=
3973 admincmds=
3974
3975 for opt in "$nonopt" ${1+"$@"}
3976 do
3977 if test -d "$opt"; then
3978 func_append libdirs " $opt"
3979
3980 elif test -f "$opt"; then
3981 if func_lalib_unsafe_p "$opt"; then
3982 func_append libs " $opt"
3983 else
3984 func_warning "'$opt' is not a valid libtool archive"
3985 fi
3986
3987 else
3988 func_fatal_error "invalid argument '$opt'"
3989 fi
3990 done
3991
3992 if test -n "$libs"; then
3993 if test -n "$lt_sysroot"; then
3994 sysroot_regex=`$ECHO "$lt_sysroot" | $SED "$sed_make_literal_regex"`
3995 sysroot_cmd="s/\([ ']\)$sysroot_regex/\1/g;"
3996 else
3997 sysroot_cmd=
3998 fi
3999
4000 # Remove sysroot references
4001 if $opt_dry_run; then
4002 for lib in $libs; do
4003 echo "removing references to $lt_sysroot and '=' prefixes from $lib"
4004 done
4005 else
4006 tmpdir=`func_mktempdir`
4007 for lib in $libs; do
4008 $SED -e "$sysroot_cmd s/\([ ']-[LR]\)=/\1/g; s/\([ ']\)=/\1/g" $lib \
4009 > $tmpdir/tmp-la
4010 mv -f $tmpdir/tmp-la $lib
4011 done
4012 ${RM}r "$tmpdir"
4013 fi
4014 fi
4015
4016 if test -n "$finish_cmds$finish_eval" && test -n "$libdirs"; then
4017 for libdir in $libdirs; do
4018 if test -n "$finish_cmds"; then
4019 # Do each command in the finish commands.
4020 func_execute_cmds "$finish_cmds" 'admincmds="$admincmds
4021 '"$cmd"'"'
4022 fi
4023 if test -n "$finish_eval"; then
4024 # Do the single finish_eval.
4025 eval cmds=\"$finish_eval\"
4026 $opt_dry_run || eval "$cmds" || func_append admincmds "
4027 $cmds"
4028 fi
4029 done
4030 fi
4031
4032 # Exit here if they wanted silent mode.
4033 $opt_quiet && exit $EXIT_SUCCESS
4034
4035 if test -n "$finish_cmds$finish_eval" && test -n "$libdirs"; then
4036 echo "----------------------------------------------------------------------"
4037 echo "Libraries have been installed in:"
4038 for libdir in $libdirs; do
4039 $ECHO " $libdir"
4040 done
4041 echo
4042 echo "If you ever happen to want to link against installed libraries"
4043 echo "in a given directory, LIBDIR, you must either use libtool, and"
4044 echo "specify the full pathname of the library, or use the '-LLIBDIR'"
4045 echo "flag during linking and do at least one of the following:"
4046 if test -n "$shlibpath_var"; then
4047 echo " - add LIBDIR to the '$shlibpath_var' environment variable"
4048 echo " during execution"
4049 fi
4050 if test -n "$runpath_var"; then
4051 echo " - add LIBDIR to the '$runpath_var' environment variable"
4052 echo " during linking"
4053 fi
4054 if test -n "$hardcode_libdir_flag_spec"; then
4055 libdir=LIBDIR
4056 eval flag=\"$hardcode_libdir_flag_spec\"
4057
4058 $ECHO " - use the '$flag' linker flag"
4059 fi
4060 if test -n "$admincmds"; then
4061 $ECHO " - have your system administrator run these commands:$admincmds"
4062 fi
4063 if test -f /etc/ld.so.conf; then
4064 echo " - have your system administrator add LIBDIR to '/etc/ld.so.conf'"
4065 fi
4066 echo
4067
4068 echo "See any operating system documentation about shared libraries for"
4069 case $host in
4070 solaris2.[6789]|solaris2.1[0-9])
4071 echo "more information, such as the ld(1), crle(1) and ld.so(8) manual"
4072 echo "pages."
4073 ;;
4074 *)
4075 echo "more information, such as the ld(1) and ld.so(8) manual pages."
4076 ;;
4077 esac
4078 echo "----------------------------------------------------------------------"
4079 fi
4080 exit $EXIT_SUCCESS
4081 }
4082
4083 test finish = "$opt_mode" && func_mode_finish ${1+"$@"}
4084
4085
4086 # func_mode_install arg...
4087 func_mode_install ()
4088 {
4089 $debug_cmd
4090
4091 # There may be an optional sh(1) argument at the beginning of
4092 # install_prog (especially on Windows NT).
4093 if test "$SHELL" = "$nonopt" || test /bin/sh = "$nonopt" ||
4094 # Allow the use of GNU shtool's install command.
4095 case $nonopt in *shtool*) :;; *) false;; esac
4096 then
4097 # Aesthetically quote it.
4098 func_quote_for_eval "$nonopt"
4099 install_prog="$func_quote_for_eval_result "
4100 arg=$1
4101 shift
4102 else
4103 install_prog=
4104 arg=$nonopt
4105 fi
4106
4107 # The real first argument should be the name of the installation program.
4108 # Aesthetically quote it.
4109 func_quote_for_eval "$arg"
4110 func_append install_prog "$func_quote_for_eval_result"
4111 install_shared_prog=$install_prog
4112 case " $install_prog " in
4113 *[\\\ /]cp\ *) install_cp=: ;;
4114 *) install_cp=false ;;
4115 esac
4116
4117 # We need to accept at least all the BSD install flags.
4118 dest=
4119 files=
4120 opts=
4121 prev=
4122 install_type=
4123 isdir=false
4124 stripme=
4125 no_mode=:
4126 for arg
4127 do
4128 arg2=
4129 if test -n "$dest"; then
4130 func_append files " $dest"
4131 dest=$arg
4132 continue
4133 fi
4134
4135 case $arg in
4136 -d) isdir=: ;;
4137 -f)
4138 if $install_cp; then :; else
4139 prev=$arg
4140 fi
4141 ;;
4142 -g | -m | -o)
4143 prev=$arg
4144 ;;
4145 -s)
4146 stripme=" -s"
4147 continue
4148 ;;
4149 -*)
4150 ;;
4151 *)
4152 # If the previous option needed an argument, then skip it.
4153 if test -n "$prev"; then
4154 if test X-m = "X$prev" && test -n "$install_override_mode"; then
4155 arg2=$install_override_mode
4156 no_mode=false
4157 fi
4158 prev=
4159 else
4160 dest=$arg
4161 continue
4162 fi
4163 ;;
4164 esac
4165
4166 # Aesthetically quote the argument.
4167 func_quote_for_eval "$arg"
4168 func_append install_prog " $func_quote_for_eval_result"
4169 if test -n "$arg2"; then
4170 func_quote_for_eval "$arg2"
4171 fi
4172 func_append install_shared_prog " $func_quote_for_eval_result"
4173 done
4174
4175 test -z "$install_prog" && \
4176 func_fatal_help "you must specify an install program"
4177
4178 test -n "$prev" && \
4179 func_fatal_help "the '$prev' option requires an argument"
4180
4181 if test -n "$install_override_mode" && $no_mode; then
4182 if $install_cp; then :; else
4183 func_quote_for_eval "$install_override_mode"
4184 func_append install_shared_prog " -m $func_quote_for_eval_result"
4185 fi
4186 fi
4187
4188 if test -z "$files"; then
4189 if test -z "$dest"; then
4190 func_fatal_help "no file or destination specified"
4191 else
4192 func_fatal_help "you must specify a destination"
4193 fi
4194 fi
4195
4196 # Strip any trailing slash from the destination.
4197 func_stripname '' '/' "$dest"
4198 dest=$func_stripname_result
4199
4200 # Check to see that the destination is a directory.
4201 test -d "$dest" && isdir=:
4202 if $isdir; then
4203 destdir=$dest
4204 destname=
4205 else
4206 func_dirname_and_basename "$dest" "" "."
4207 destdir=$func_dirname_result
4208 destname=$func_basename_result
4209
4210 # Not a directory, so check to see that there is only one file specified.
4211 set dummy $files; shift
4212 test "$#" -gt 1 && \
4213 func_fatal_help "'$dest' is not a directory"
4214 fi
4215 case $destdir in
4216 [\\/]* | [A-Za-z]:[\\/]*) ;;
4217 *)
4218 for file in $files; do
4219 case $file in
4220 *.lo) ;;
4221 *)
4222 func_fatal_help "'$destdir' must be an absolute directory name"
4223 ;;
4224 esac
4225 done
4226 ;;
4227 esac
4228
4229 # This variable tells wrapper scripts just to set variables rather
4230 # than running their programs.
4231 libtool_install_magic=$magic
4232
4233 staticlibs=
4234 future_libdirs=
4235 current_libdirs=
4236 for file in $files; do
4237
4238 # Do each installation.
4239 case $file in
4240 *.$libext)
4241 # Do the static libraries later.
4242 func_append staticlibs " $file"
4243 ;;
4244
4245 *.la)
4246 func_resolve_sysroot "$file"
4247 file=$func_resolve_sysroot_result
4248
4249 # Check to see that this really is a libtool archive.
4250 func_lalib_unsafe_p "$file" \
4251 || func_fatal_help "'$file' is not a valid libtool archive"
4252
4253 library_names=
4254 old_library=
4255 relink_command=
4256 func_source "$file"
4257
4258 # Add the libdir to current_libdirs if it is the destination.
4259 if test "X$destdir" = "X$libdir"; then
4260 case "$current_libdirs " in
4261 *" $libdir "*) ;;
4262 *) func_append current_libdirs " $libdir" ;;
4263 esac
4264 else
4265 # Note the libdir as a future libdir.
4266 case "$future_libdirs " in
4267 *" $libdir "*) ;;
4268 *) func_append future_libdirs " $libdir" ;;
4269 esac
4270 fi
4271
4272 func_dirname "$file" "/" ""
4273 dir=$func_dirname_result
4274 func_append dir "$objdir"
4275
4276 if test -n "$relink_command"; then
4277 # Determine the prefix the user has applied to our future dir.
4278 inst_prefix_dir=`$ECHO "$destdir" | $SED -e "s%$libdir\$%%"`
4279
4280 # Don't allow the user to place us outside of our expected
4281 # location b/c this prevents finding dependent libraries that
4282 # are installed to the same prefix.
4283 # At present, this check doesn't affect windows .dll's that
4284 # are installed into $libdir/../bin (currently, that works fine)
4285 # but it's something to keep an eye on.
4286 test "$inst_prefix_dir" = "$destdir" && \
4287 func_fatal_error "error: cannot install '$file' to a directory not ending in $libdir"
4288
4289 if test -n "$inst_prefix_dir"; then
4290 # Stick the inst_prefix_dir data into the link command.
4291 relink_command=`$ECHO "$relink_command" | $SED "s%@inst_prefix_dir@%-inst-prefix-dir $inst_prefix_dir%"`
4292 else
4293 relink_command=`$ECHO "$relink_command" | $SED "s%@inst_prefix_dir@%%"`
4294 fi
4295
4296 func_warning "relinking '$file'"
4297 func_show_eval "$relink_command" \
4298 'func_fatal_error "error: relink '\''$file'\'' with the above command before installing it"'
4299 fi
4300
4301 # See the names of the shared library.
4302 set dummy $library_names; shift
4303 if test -n "$1"; then
4304 realname=$1
4305 shift
4306
4307 srcname=$realname
4308 test -n "$relink_command" && srcname=${realname}T
4309
4310 # Install the shared library and build the symlinks.
4311 func_show_eval "$install_shared_prog $dir/$srcname $destdir/$realname" \
4312 'exit $?'
4313 tstripme=$stripme
4314 case $host_os in
4315 cygwin* | mingw* | pw32* | cegcc*)
4316 case $realname in
4317 *.dll.a)
4318 tstripme=
4319 ;;
4320 esac
4321 ;;
4322 os2*)
4323 case $realname in
4324 *_dll.a)
4325 tstripme=
4326 ;;
4327 esac
4328 ;;
4329 esac
4330 if test -n "$tstripme" && test -n "$striplib"; then
4331 func_show_eval "$striplib $destdir/$realname" 'exit $?'
4332 fi
4333
4334 if test "$#" -gt 0; then
4335 # Delete the old symlinks, and create new ones.
4336 # Try 'ln -sf' first, because the 'ln' binary might depend on
4337 # the symlink we replace! Solaris /bin/ln does not understand -f,
4338 # so we also need to try rm && ln -s.
4339 for linkname
4340 do
4341 test "$linkname" != "$realname" \
4342 && func_show_eval "(cd $destdir && { $LN_S -f $realname $linkname || { $RM $linkname && $LN_S $realname $linkname; }; })"
4343 done
4344 fi
4345
4346 # Do each command in the postinstall commands.
4347 lib=$destdir/$realname
4348 func_execute_cmds "$postinstall_cmds" 'exit $?'
4349 fi
4350
4351 # Install the pseudo-library for information purposes.
4352 func_basename "$file"
4353 name=$func_basename_result
4354 instname=$dir/${name}i
4355 func_show_eval "$install_prog $instname $destdir/$name" 'exit $?'
4356
4357 # Maybe install the static library, too.
4358 test -n "$old_library" && func_append staticlibs " $dir/$old_library"
4359 ;;
4360
4361 *.lo)
4362 # Install (i.e. copy) a libtool object.
4363
4364 # Figure out destination file name, if it wasn't already specified.
4365 if test -n "$destname"; then
4366 destfile=$destdir/$destname
4367 else
4368 func_basename "$file"
4369 destfile=$func_basename_result
4370 destfile=$destdir/$destfile
4371 fi
4372
4373 # Deduce the name of the destination old-style object file.
4374 case $destfile in
4375 *.lo)
4376 func_lo2o "$destfile"
4377 staticdest=$func_lo2o_result
4378 ;;
4379 *.$objext)
4380 staticdest=$destfile
4381 destfile=
4382 ;;
4383 *)
4384 func_fatal_help "cannot copy a libtool object to '$destfile'"
4385 ;;
4386 esac
4387
4388 # Install the libtool object if requested.
4389 test -n "$destfile" && \
4390 func_show_eval "$install_prog $file $destfile" 'exit $?'
4391
4392 # Install the old object if enabled.
4393 if test yes = "$build_old_libs"; then
4394 # Deduce the name of the old-style object file.
4395 func_lo2o "$file"
4396 staticobj=$func_lo2o_result
4397 func_show_eval "$install_prog \$staticobj \$staticdest" 'exit $?'
4398 fi
4399 exit $EXIT_SUCCESS
4400 ;;
4401
4402 *)
4403 # Figure out destination file name, if it wasn't already specified.
4404 if test -n "$destname"; then
4405 destfile=$destdir/$destname
4406 else
4407 func_basename "$file"
4408 destfile=$func_basename_result
4409 destfile=$destdir/$destfile
4410 fi
4411
4412 # If the file is missing, and there is a .exe on the end, strip it
4413 # because it is most likely a libtool script we actually want to
4414 # install
4415 stripped_ext=
4416 case $file in
4417 *.exe)
4418 if test ! -f "$file"; then
4419 func_stripname '' '.exe' "$file"
4420 file=$func_stripname_result
4421 stripped_ext=.exe
4422 fi
4423 ;;
4424 esac
4425
4426 # Do a test to see if this is really a libtool program.
4427 case $host in
4428 *cygwin* | *mingw*)
4429 if func_ltwrapper_executable_p "$file"; then
4430 func_ltwrapper_scriptname "$file"
4431 wrapper=$func_ltwrapper_scriptname_result
4432 else
4433 func_stripname '' '.exe' "$file"
4434 wrapper=$func_stripname_result
4435 fi
4436 ;;
4437 *)
4438 wrapper=$file
4439 ;;
4440 esac
4441 if func_ltwrapper_script_p "$wrapper"; then
4442 notinst_deplibs=
4443 relink_command=
4444
4445 func_source "$wrapper"
4446
4447 # Check the variables that should have been set.
4448 test -z "$generated_by_libtool_version" && \
4449 func_fatal_error "invalid libtool wrapper script '$wrapper'"
4450
4451 finalize=:
4452 for lib in $notinst_deplibs; do
4453 # Check to see that each library is installed.
4454 libdir=
4455 if test -f "$lib"; then
4456 func_source "$lib"
4457 fi
4458 libfile=$libdir/`$ECHO "$lib" | $SED 's%^.*/%%g'`
4459 if test -n "$libdir" && test ! -f "$libfile"; then
4460 func_warning "'$lib' has not been installed in '$libdir'"
4461 finalize=false
4462 fi
4463 done
4464
4465 relink_command=
4466 func_source "$wrapper"
4467
4468 outputname=
4469 if test no = "$fast_install" && test -n "$relink_command"; then
4470 $opt_dry_run || {
4471 if $finalize; then
4472 tmpdir=`func_mktempdir`
4473 func_basename "$file$stripped_ext"
4474 file=$func_basename_result
4475 outputname=$tmpdir/$file
4476 # Replace the output file specification.
4477 relink_command=`$ECHO "$relink_command" | $SED 's%@OUTPUT@%'"$outputname"'%g'`
4478
4479 $opt_quiet || {
4480 func_quote_for_expand "$relink_command"
4481 eval "func_echo $func_quote_for_expand_result"
4482 }
4483 if eval "$relink_command"; then :
4484 else
4485 func_error "error: relink '$file' with the above command before installing it"
4486 $opt_dry_run || ${RM}r "$tmpdir"
4487 continue
4488 fi
4489 file=$outputname
4490 else
4491 func_warning "cannot relink '$file'"
4492 fi
4493 }
4494 else
4495 # Install the binary that we compiled earlier.
4496 file=`$ECHO "$file$stripped_ext" | $SED "s%\([^/]*\)$%$objdir/\1%"`
4497 fi
4498 fi
4499
4500 # remove .exe since cygwin /usr/bin/install will append another
4501 # one anyway
4502 case $install_prog,$host in
4503 */usr/bin/install*,*cygwin*)
4504 case $file:$destfile in
4505 *.exe:*.exe)
4506 # this is ok
4507 ;;
4508 *.exe:*)
4509 destfile=$destfile.exe
4510 ;;
4511 *:*.exe)
4512 func_stripname '' '.exe' "$destfile"
4513 destfile=$func_stripname_result
4514 ;;
4515 esac
4516 ;;
4517 esac
4518 func_show_eval "$install_prog\$stripme \$file \$destfile" 'exit $?'
4519 $opt_dry_run || if test -n "$outputname"; then
4520 ${RM}r "$tmpdir"
4521 fi
4522 ;;
4523 esac
4524 done
4525
4526 for file in $staticlibs; do
4527 func_basename "$file"
4528 name=$func_basename_result
4529
4530 # Set up the ranlib parameters.
4531 oldlib=$destdir/$name
4532 func_to_tool_file "$oldlib" func_convert_file_msys_to_w32
4533 tool_oldlib=$func_to_tool_file_result
4534
4535 func_show_eval "$install_prog \$file \$oldlib" 'exit $?'
4536
4537 if test -n "$stripme" && test -n "$old_striplib"; then
4538 func_show_eval "$old_striplib $tool_oldlib" 'exit $?'
4539 fi
4540
4541 # Do each command in the postinstall commands.
4542 func_execute_cmds "$old_postinstall_cmds" 'exit $?'
4543 done
4544
4545 test -n "$future_libdirs" && \
4546 func_warning "remember to run '$progname --finish$future_libdirs'"
4547
4548 if test -n "$current_libdirs"; then
4549 # Maybe just do a dry run.
4550 $opt_dry_run && current_libdirs=" -n$current_libdirs"
4551 exec_cmd='$SHELL "$progpath" $preserve_args --finish$current_libdirs'
4552 else
4553 exit $EXIT_SUCCESS
4554 fi
4555 }
4556
4557 test install = "$opt_mode" && func_mode_install ${1+"$@"}
4558
4559
4560 # func_generate_dlsyms outputname originator pic_p
4561 # Extract symbols from dlprefiles and create ${outputname}S.o with
4562 # a dlpreopen symbol table.
4563 func_generate_dlsyms ()
4564 {
4565 $debug_cmd
4566
4567 my_outputname=$1
4568 my_originator=$2
4569 my_pic_p=${3-false}
4570 my_prefix=`$ECHO "$my_originator" | $SED 's%[^a-zA-Z0-9]%_%g'`
4571 my_dlsyms=
4572
4573 if test -n "$dlfiles$dlprefiles" || test no != "$dlself"; then
4574 if test -n "$NM" && test -n "$global_symbol_pipe"; then
4575 my_dlsyms=${my_outputname}S.c
4576 else
4577 func_error "not configured to extract global symbols from dlpreopened files"
4578 fi
4579 fi
4580
4581 if test -n "$my_dlsyms"; then
4582 case $my_dlsyms in
4583 "") ;;
4584 *.c)
4585 # Discover the nlist of each of the dlfiles.
4586 nlist=$output_objdir/$my_outputname.nm
4587
4588 func_show_eval "$RM $nlist ${nlist}S ${nlist}T"
4589
4590 # Parse the name list into a source file.
4591 func_verbose "creating $output_objdir/$my_dlsyms"
4592
4593 $opt_dry_run || $ECHO > "$output_objdir/$my_dlsyms" "\
4594 /* $my_dlsyms - symbol resolution table for '$my_outputname' dlsym emulation. */
4595 /* Generated by $PROGRAM (GNU $PACKAGE) $VERSION */
4596
4597 #ifdef __cplusplus
4598 extern \"C\" {
4599 #endif
4600
4601 #if defined __GNUC__ && (((__GNUC__ == 4) && (__GNUC_MINOR__ >= 4)) || (__GNUC__ > 4))
4602 #pragma GCC diagnostic ignored \"-Wstrict-prototypes\"
4603 #endif
4604
4605 /* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests. */
4606 #if defined _WIN32 || defined __CYGWIN__ || defined _WIN32_WCE
4607 /* DATA imports from DLLs on WIN32 can't be const, because runtime
4608 relocations are performed -- see ld's documentation on pseudo-relocs. */
4609 # define LT_DLSYM_CONST
4610 #elif defined __osf__
4611 /* This system does not cope well with relocations in const data. */
4612 # define LT_DLSYM_CONST
4613 #else
4614 # define LT_DLSYM_CONST const
4615 #endif
4616
4617 #define STREQ(s1, s2) (strcmp ((s1), (s2)) == 0)
4618
4619 /* External symbol declarations for the compiler. */\
4620 "
4621
4622 if test yes = "$dlself"; then
4623 func_verbose "generating symbol list for '$output'"
4624
4625 $opt_dry_run || echo ': @PROGRAM@ ' > "$nlist"
4626
4627 # Add our own program objects to the symbol list.
4628 progfiles=`$ECHO "$objs$old_deplibs" | $SP2NL | $SED "$lo2o" | $NL2SP`
4629 for progfile in $progfiles; do
4630 func_to_tool_file "$progfile" func_convert_file_msys_to_w32
4631 func_verbose "extracting global C symbols from '$func_to_tool_file_result'"
4632 $opt_dry_run || eval "$NM $func_to_tool_file_result | $global_symbol_pipe >> '$nlist'"
4633 done
4634
4635 if test -n "$exclude_expsyms"; then
4636 $opt_dry_run || {
4637 eval '$EGREP -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T'
4638 eval '$MV "$nlist"T "$nlist"'
4639 }
4640 fi
4641
4642 if test -n "$export_symbols_regex"; then
4643 $opt_dry_run || {
4644 eval '$EGREP -e "$export_symbols_regex" "$nlist" > "$nlist"T'
4645 eval '$MV "$nlist"T "$nlist"'
4646 }
4647 fi
4648
4649 # Prepare the list of exported symbols
4650 if test -z "$export_symbols"; then
4651 export_symbols=$output_objdir/$outputname.exp
4652 $opt_dry_run || {
4653 $RM $export_symbols
4654 eval "$SED -n -e '/^: @PROGRAM@ $/d' -e 's/^.* \(.*\)$/\1/p' "'< "$nlist" > "$export_symbols"'
4655 case $host in
4656 *cygwin* | *mingw* | *cegcc* )
4657 eval "echo EXPORTS "'> "$output_objdir/$outputname.def"'
4658 eval 'cat "$export_symbols" >> "$output_objdir/$outputname.def"'
4659 ;;
4660 esac
4661 }
4662 else
4663 $opt_dry_run || {
4664 eval "$SED -e 's/\([].[*^$]\)/\\\\\1/g' -e 's/^/ /' -e 's/$/$/'"' < "$export_symbols" > "$output_objdir/$outputname.exp"'
4665 eval '$GREP -f "$output_objdir/$outputname.exp" < "$nlist" > "$nlist"T'
4666 eval '$MV "$nlist"T "$nlist"'
4667 case $host in
4668 *cygwin* | *mingw* | *cegcc* )
4669 eval "echo EXPORTS "'> "$output_objdir/$outputname.def"'
4670 eval 'cat "$nlist" >> "$output_objdir/$outputname.def"'
4671 ;;
4672 esac
4673 }
4674 fi
4675 fi
4676
4677 for dlprefile in $dlprefiles; do
4678 func_verbose "extracting global C symbols from '$dlprefile'"
4679 func_basename "$dlprefile"
4680 name=$func_basename_result
4681 case $host in
4682 *cygwin* | *mingw* | *cegcc* )
4683 # if an import library, we need to obtain dlname
4684 if func_win32_import_lib_p "$dlprefile"; then
4685 func_tr_sh "$dlprefile"
4686 eval "curr_lafile=\$libfile_$func_tr_sh_result"
4687 dlprefile_dlbasename=
4688 if test -n "$curr_lafile" && func_lalib_p "$curr_lafile"; then
4689 # Use subshell, to avoid clobbering current variable values
4690 dlprefile_dlname=`source "$curr_lafile" && echo "$dlname"`
4691 if test -n "$dlprefile_dlname"; then
4692 func_basename "$dlprefile_dlname"
4693 dlprefile_dlbasename=$func_basename_result
4694 else
4695 # no lafile. user explicitly requested -dlpreopen <import library>.
4696 $sharedlib_from_linklib_cmd "$dlprefile"
4697 dlprefile_dlbasename=$sharedlib_from_linklib_result
4698 fi
4699 fi
4700 $opt_dry_run || {
4701 if test -n "$dlprefile_dlbasename"; then
4702 eval '$ECHO ": $dlprefile_dlbasename" >> "$nlist"'
4703 else
4704 func_warning "Could not compute DLL name from $name"
4705 eval '$ECHO ": $name " >> "$nlist"'
4706 fi
4707 func_to_tool_file "$dlprefile" func_convert_file_msys_to_w32
4708 eval "$NM \"$func_to_tool_file_result\" 2>/dev/null | $global_symbol_pipe |
4709 $SED -e '/I __imp/d' -e 's/I __nm_/D /;s/_nm__//' >> '$nlist'"
4710 }
4711 else # not an import lib
4712 $opt_dry_run || {
4713 eval '$ECHO ": $name " >> "$nlist"'
4714 func_to_tool_file "$dlprefile" func_convert_file_msys_to_w32
4715 eval "$NM \"$func_to_tool_file_result\" 2>/dev/null | $global_symbol_pipe >> '$nlist'"
4716 }
4717 fi
4718 ;;
4719 *)
4720 $opt_dry_run || {
4721 eval '$ECHO ": $name " >> "$nlist"'
4722 func_to_tool_file "$dlprefile" func_convert_file_msys_to_w32
4723 eval "$NM \"$func_to_tool_file_result\" 2>/dev/null | $global_symbol_pipe >> '$nlist'"
4724 }
4725 ;;
4726 esac
4727 done
4728
4729 $opt_dry_run || {
4730 # Make sure we have at least an empty file.
4731 test -f "$nlist" || : > "$nlist"
4732
4733 if test -n "$exclude_expsyms"; then
4734 $EGREP -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T
4735 $MV "$nlist"T "$nlist"
4736 fi
4737
4738 # Try sorting and uniquifying the output.
4739 if $GREP -v "^: " < "$nlist" |
4740 if sort -k 3 </dev/null >/dev/null 2>&1; then
4741 sort -k 3
4742 else
4743 sort +2
4744 fi |
4745 uniq > "$nlist"S; then
4746 :
4747 else
4748 $GREP -v "^: " < "$nlist" > "$nlist"S
4749 fi
4750
4751 if test -f "$nlist"S; then
4752 eval "$global_symbol_to_cdecl"' < "$nlist"S >> "$output_objdir/$my_dlsyms"'
4753 else
4754 echo '/* NONE */' >> "$output_objdir/$my_dlsyms"
4755 fi
4756
4757 func_show_eval '$RM "${nlist}I"'
4758 if test -n "$global_symbol_to_import"; then
4759 eval "$global_symbol_to_import"' < "$nlist"S > "$nlist"I'
4760 fi
4761
4762 echo >> "$output_objdir/$my_dlsyms" "\
4763
4764 /* The mapping between symbol names and symbols. */
4765 typedef struct {
4766 const char *name;
4767 void *address;
4768 } lt_dlsymlist;
4769 extern LT_DLSYM_CONST lt_dlsymlist
4770 lt_${my_prefix}_LTX_preloaded_symbols[];\
4771 "
4772
4773 if test -s "$nlist"I; then
4774 echo >> "$output_objdir/$my_dlsyms" "\
4775 static void lt_syminit(void)
4776 {
4777 LT_DLSYM_CONST lt_dlsymlist *symbol = lt_${my_prefix}_LTX_preloaded_symbols;
4778 for (; symbol->name; ++symbol)
4779 {"
4780 $SED 's/.*/ if (STREQ (symbol->name, \"&\")) symbol->address = (void *) \&&;/' < "$nlist"I >> "$output_objdir/$my_dlsyms"
4781 echo >> "$output_objdir/$my_dlsyms" "\
4782 }
4783 }"
4784 fi
4785 echo >> "$output_objdir/$my_dlsyms" "\
4786 LT_DLSYM_CONST lt_dlsymlist
4787 lt_${my_prefix}_LTX_preloaded_symbols[] =
4788 { {\"$my_originator\", (void *) 0},"
4789
4790 if test -s "$nlist"I; then
4791 echo >> "$output_objdir/$my_dlsyms" "\
4792 {\"@INIT@\", (void *) &lt_syminit},"
4793 fi
4794
4795 case $need_lib_prefix in
4796 no)
4797 eval "$global_symbol_to_c_name_address" < "$nlist" >> "$output_objdir/$my_dlsyms"
4798 ;;
4799 *)
4800 eval "$global_symbol_to_c_name_address_lib_prefix" < "$nlist" >> "$output_objdir/$my_dlsyms"
4801 ;;
4802 esac
4803 echo >> "$output_objdir/$my_dlsyms" "\
4804 {0, (void *) 0}
4805 };
4806
4807 /* This works around a problem in FreeBSD linker */
4808 #ifdef FREEBSD_WORKAROUND
4809 static const void *lt_preloaded_setup() {
4810 return lt_${my_prefix}_LTX_preloaded_symbols;
4811 }
4812 #endif
4813
4814 #ifdef __cplusplus
4815 }
4816 #endif\
4817 "
4818 } # !$opt_dry_run
4819
4820 pic_flag_for_symtable=
4821 case "$compile_command " in
4822 *" -static "*) ;;
4823 *)
4824 case $host in
4825 # compiling the symbol table file with pic_flag works around
4826 # a FreeBSD bug that causes programs to crash when -lm is
4827 # linked before any other PIC object. But we must not use
4828 # pic_flag when linking with -static. The problem exists in
4829 # FreeBSD 2.2.6 and is fixed in FreeBSD 3.1.
4830 *-*-freebsd2.*|*-*-freebsd3.0*|*-*-freebsdelf3.0*)
4831 pic_flag_for_symtable=" $pic_flag -DFREEBSD_WORKAROUND" ;;
4832 *-*-hpux*)
4833 pic_flag_for_symtable=" $pic_flag" ;;
4834 *)
4835 $my_pic_p && pic_flag_for_symtable=" $pic_flag"
4836 ;;
4837 esac
4838 ;;
4839 esac
4840 symtab_cflags=
4841 for arg in $LTCFLAGS; do
4842 case $arg in
4843 -pie | -fpie | -fPIE) ;;
4844 *) func_append symtab_cflags " $arg" ;;
4845 esac
4846 done
4847
4848 # Now compile the dynamic symbol file.
4849 func_show_eval '(cd $output_objdir && $LTCC$symtab_cflags -c$no_builtin_flag$pic_flag_for_symtable "$my_dlsyms")' 'exit $?'
4850
4851 # Clean up the generated files.
4852 func_show_eval '$RM "$output_objdir/$my_dlsyms" "$nlist" "${nlist}S" "${nlist}T" "${nlist}I"'
4853
4854 # Transform the symbol file into the correct name.
4855 symfileobj=$output_objdir/${my_outputname}S.$objext
4856 case $host in
4857 *cygwin* | *mingw* | *cegcc* )
4858 if test -f "$output_objdir/$my_outputname.def"; then
4859 compile_command=`$ECHO "$compile_command" | $SED "s%@SYMFILE@%$output_objdir/$my_outputname.def $symfileobj%"`
4860 finalize_command=`$ECHO "$finalize_command" | $SED "s%@SYMFILE@%$output_objdir/$my_outputname.def $symfileobj%"`
4861 else
4862 compile_command=`$ECHO "$compile_command" | $SED "s%@SYMFILE@%$symfileobj%"`
4863 finalize_command=`$ECHO "$finalize_command" | $SED "s%@SYMFILE@%$symfileobj%"`
4864 fi
4865 ;;
4866 *)
4867 compile_command=`$ECHO "$compile_command" | $SED "s%@SYMFILE@%$symfileobj%"`
4868 finalize_command=`$ECHO "$finalize_command" | $SED "s%@SYMFILE@%$symfileobj%"`
4869 ;;
4870 esac
4871 ;;
4872 *)
4873 func_fatal_error "unknown suffix for '$my_dlsyms'"
4874 ;;
4875 esac
4876 else
4877 # We keep going just in case the user didn't refer to
4878 # lt_preloaded_symbols. The linker will fail if global_symbol_pipe
4879 # really was required.
4880
4881 # Nullify the symbol file.
4882 compile_command=`$ECHO "$compile_command" | $SED "s% @SYMFILE@%%"`
4883 finalize_command=`$ECHO "$finalize_command" | $SED "s% @SYMFILE@%%"`
4884 fi
4885 }
4886
4887 # func_cygming_gnu_implib_p ARG
4888 # This predicate returns with zero status (TRUE) if
4889 # ARG is a GNU/binutils-style import library. Returns
4890 # with nonzero status (FALSE) otherwise.
4891 func_cygming_gnu_implib_p ()
4892 {
4893 $debug_cmd
4894
4895 func_to_tool_file "$1" func_convert_file_msys_to_w32
4896 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)$'`
4897 test -n "$func_cygming_gnu_implib_tmp"
4898 }
4899
4900 # func_cygming_ms_implib_p ARG
4901 # This predicate returns with zero status (TRUE) if
4902 # ARG is an MS-style import library. Returns
4903 # with nonzero status (FALSE) otherwise.
4904 func_cygming_ms_implib_p ()
4905 {
4906 $debug_cmd
4907
4908 func_to_tool_file "$1" func_convert_file_msys_to_w32
4909 func_cygming_ms_implib_tmp=`$NM "$func_to_tool_file_result" | eval "$global_symbol_pipe" | $GREP '_NULL_IMPORT_DESCRIPTOR'`
4910 test -n "$func_cygming_ms_implib_tmp"
4911 }
4912
4913 # func_win32_libid arg
4914 # return the library type of file 'arg'
4915 #
4916 # Need a lot of goo to handle *both* DLLs and import libs
4917 # Has to be a shell function in order to 'eat' the argument
4918 # that is supplied when $file_magic_command is called.
4919 # Despite the name, also deal with 64 bit binaries.
4920 func_win32_libid ()
4921 {
4922 $debug_cmd
4923
4924 win32_libid_type=unknown
4925 win32_fileres=`file -L $1 2>/dev/null`
4926 case $win32_fileres in
4927 *ar\ archive\ import\ library*) # definitely import
4928 win32_libid_type="x86 archive import"
4929 ;;
4930 *ar\ archive*) # could be an import, or static
4931 # Keep the egrep pattern in sync with the one in _LT_CHECK_MAGIC_METHOD.
4932 if eval $OBJDUMP -f $1 | $SED -e '10q' 2>/dev/null |
4933 $EGREP 'file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)' >/dev/null; then
4934 case $nm_interface in
4935 "MS dumpbin")
4936 if func_cygming_ms_implib_p "$1" ||
4937 func_cygming_gnu_implib_p "$1"
4938 then
4939 win32_nmres=import
4940 else
4941 win32_nmres=
4942 fi
4943 ;;
4944 *)
4945 func_to_tool_file "$1" func_convert_file_msys_to_w32
4946 win32_nmres=`eval $NM -f posix -A \"$func_to_tool_file_result\" |
4947 $SED -n -e '
4948 1,100{
4949 / I /{
4950 s|.*|import|
4951 p
4952 q
4953 }
4954 }'`
4955 ;;
4956 esac
4957 case $win32_nmres in
4958 import*) win32_libid_type="x86 archive import";;
4959 *) win32_libid_type="x86 archive static";;
4960 esac
4961 fi
4962 ;;
4963 *DLL*)
4964 win32_libid_type="x86 DLL"
4965 ;;
4966 *executable*) # but shell scripts are "executable" too...
4967 case $win32_fileres in
4968 *MS\ Windows\ PE\ Intel*)
4969 win32_libid_type="x86 DLL"
4970 ;;
4971 esac
4972 ;;
4973 esac
4974 $ECHO "$win32_libid_type"
4975 }
4976
4977 # func_cygming_dll_for_implib ARG
4978 #
4979 # Platform-specific function to extract the
4980 # name of the DLL associated with the specified
4981 # import library ARG.
4982 # Invoked by eval'ing the libtool variable
4983 # $sharedlib_from_linklib_cmd
4984 # Result is available in the variable
4985 # $sharedlib_from_linklib_result
4986 func_cygming_dll_for_implib ()
4987 {
4988 $debug_cmd
4989
4990 sharedlib_from_linklib_result=`$DLLTOOL --identify-strict --identify "$1"`
4991 }
4992
4993 # func_cygming_dll_for_implib_fallback_core SECTION_NAME LIBNAMEs
4994 #
4995 # The is the core of a fallback implementation of a
4996 # platform-specific function to extract the name of the
4997 # DLL associated with the specified import library LIBNAME.
4998 #
4999 # SECTION_NAME is either .idata$6 or .idata$7, depending
5000 # on the platform and compiler that created the implib.
5001 #
5002 # Echos the name of the DLL associated with the
5003 # specified import library.
5004 func_cygming_dll_for_implib_fallback_core ()
5005 {
5006 $debug_cmd
5007
5008 match_literal=`$ECHO "$1" | $SED "$sed_make_literal_regex"`
5009 $OBJDUMP -s --section "$1" "$2" 2>/dev/null |
5010 $SED '/^Contents of section '"$match_literal"':/{
5011 # Place marker at beginning of archive member dllname section
5012 s/.*/====MARK====/
5013 p
5014 d
5015 }
5016 # These lines can sometimes be longer than 43 characters, but
5017 # are always uninteresting
5018 /:[ ]*file format pe[i]\{,1\}-/d
5019 /^In archive [^:]*:/d
5020 # Ensure marker is printed
5021 /^====MARK====/p
5022 # Remove all lines with less than 43 characters
5023 /^.\{43\}/!d
5024 # From remaining lines, remove first 43 characters
5025 s/^.\{43\}//' |
5026 $SED -n '
5027 # Join marker and all lines until next marker into a single line
5028 /^====MARK====/ b para
5029 H
5030 $ b para
5031 b
5032 :para
5033 x
5034 s/\n//g
5035 # Remove the marker
5036 s/^====MARK====//
5037 # Remove trailing dots and whitespace
5038 s/[\. \t]*$//
5039 # Print
5040 /./p' |
5041 # we now have a list, one entry per line, of the stringified
5042 # contents of the appropriate section of all members of the
5043 # archive that possess that section. Heuristic: eliminate
5044 # all those that have a first or second character that is
5045 # a '.' (that is, objdump's representation of an unprintable
5046 # character.) This should work for all archives with less than
5047 # 0x302f exports -- but will fail for DLLs whose name actually
5048 # begins with a literal '.' or a single character followed by
5049 # a '.'.
5050 #
5051 # Of those that remain, print the first one.
5052 $SED -e '/^\./d;/^.\./d;q'
5053 }
5054
5055 # func_cygming_dll_for_implib_fallback ARG
5056 # Platform-specific function to extract the
5057 # name of the DLL associated with the specified
5058 # import library ARG.
5059 #
5060 # This fallback implementation is for use when $DLLTOOL
5061 # does not support the --identify-strict option.
5062 # Invoked by eval'ing the libtool variable
5063 # $sharedlib_from_linklib_cmd
5064 # Result is available in the variable
5065 # $sharedlib_from_linklib_result
5066 func_cygming_dll_for_implib_fallback ()
5067 {
5068 $debug_cmd
5069
5070 if func_cygming_gnu_implib_p "$1"; then
5071 # binutils import library
5072 sharedlib_from_linklib_result=`func_cygming_dll_for_implib_fallback_core '.idata$7' "$1"`
5073 elif func_cygming_ms_implib_p "$1"; then
5074 # ms-generated import library
5075 sharedlib_from_linklib_result=`func_cygming_dll_for_implib_fallback_core '.idata$6' "$1"`
5076 else
5077 # unknown
5078 sharedlib_from_linklib_result=
5079 fi
5080 }
5081
5082
5083 # func_extract_an_archive dir oldlib
5084 func_extract_an_archive ()
5085 {
5086 $debug_cmd
5087
5088 f_ex_an_ar_dir=$1; shift
5089 f_ex_an_ar_oldlib=$1
5090 if test yes = "$lock_old_archive_extraction"; then
5091 lockfile=$f_ex_an_ar_oldlib.lock
5092 until $opt_dry_run || ln "$progpath" "$lockfile" 2>/dev/null; do
5093 func_echo "Waiting for $lockfile to be removed"
5094 sleep 2
5095 done
5096 fi
5097 func_show_eval "(cd \$f_ex_an_ar_dir && $AR x \"\$f_ex_an_ar_oldlib\")" \
5098 'stat=$?; rm -f "$lockfile"; exit $stat'
5099 if test yes = "$lock_old_archive_extraction"; then
5100 $opt_dry_run || rm -f "$lockfile"
5101 fi
5102 if ($AR t "$f_ex_an_ar_oldlib" | sort | sort -uc >/dev/null 2>&1); then
5103 :
5104 else
5105 func_fatal_error "object name conflicts in archive: $f_ex_an_ar_dir/$f_ex_an_ar_oldlib"
5106 fi
5107 }
5108
5109
5110 # func_extract_archives gentop oldlib ...
5111 func_extract_archives ()
5112 {
5113 $debug_cmd
5114
5115 my_gentop=$1; shift
5116 my_oldlibs=${1+"$@"}
5117 my_oldobjs=
5118 my_xlib=
5119 my_xabs=
5120 my_xdir=
5121
5122 for my_xlib in $my_oldlibs; do
5123 # Extract the objects.
5124 case $my_xlib in
5125 [\\/]* | [A-Za-z]:[\\/]*) my_xabs=$my_xlib ;;
5126 *) my_xabs=`pwd`"/$my_xlib" ;;
5127 esac
5128 func_basename "$my_xlib"
5129 my_xlib=$func_basename_result
5130 my_xlib_u=$my_xlib
5131 while :; do
5132 case " $extracted_archives " in
5133 *" $my_xlib_u "*)
5134 func_arith $extracted_serial + 1
5135 extracted_serial=$func_arith_result
5136 my_xlib_u=lt$extracted_serial-$my_xlib ;;
5137 *) break ;;
5138 esac
5139 done
5140 extracted_archives="$extracted_archives $my_xlib_u"
5141 my_xdir=$my_gentop/$my_xlib_u
5142
5143 func_mkdir_p "$my_xdir"
5144
5145 case $host in
5146 *-darwin*)
5147 func_verbose "Extracting $my_xabs"
5148 # Do not bother doing anything if just a dry run
5149 $opt_dry_run || {
5150 darwin_orig_dir=`pwd`
5151 cd $my_xdir || exit $?
5152 darwin_archive=$my_xabs
5153 darwin_curdir=`pwd`
5154 func_basename "$darwin_archive"
5155 darwin_base_archive=$func_basename_result
5156 darwin_arches=`$LIPO -info "$darwin_archive" 2>/dev/null | $GREP Architectures 2>/dev/null || true`
5157 if test -n "$darwin_arches"; then
5158 darwin_arches=`$ECHO "$darwin_arches" | $SED -e 's/.*are://'`
5159 darwin_arch=
5160 func_verbose "$darwin_base_archive has multiple architectures $darwin_arches"
5161 for darwin_arch in $darwin_arches; do
5162 func_mkdir_p "unfat-$$/$darwin_base_archive-$darwin_arch"
5163 $LIPO -thin $darwin_arch -output "unfat-$$/$darwin_base_archive-$darwin_arch/$darwin_base_archive" "$darwin_archive"
5164 cd "unfat-$$/$darwin_base_archive-$darwin_arch"
5165 func_extract_an_archive "`pwd`" "$darwin_base_archive"
5166 cd "$darwin_curdir"
5167 $RM "unfat-$$/$darwin_base_archive-$darwin_arch/$darwin_base_archive"
5168 done # $darwin_arches
5169 ## Okay now we've a bunch of thin objects, gotta fatten them up :)
5170 darwin_filelist=`find unfat-$$ -type f -name \*.o -print -o -name \*.lo -print | $SED -e "$sed_basename" | sort -u`
5171 darwin_file=
5172 darwin_files=
5173 for darwin_file in $darwin_filelist; do
5174 darwin_files=`find unfat-$$ -name $darwin_file -print | sort | $NL2SP`
5175 $LIPO -create -output "$darwin_file" $darwin_files
5176 done # $darwin_filelist
5177 $RM -rf unfat-$$
5178 cd "$darwin_orig_dir"
5179 else
5180 cd $darwin_orig_dir
5181 func_extract_an_archive "$my_xdir" "$my_xabs"
5182 fi # $darwin_arches
5183 } # !$opt_dry_run
5184 ;;
5185 *)
5186 func_extract_an_archive "$my_xdir" "$my_xabs"
5187 ;;
5188 esac
5189 my_oldobjs="$my_oldobjs "`find $my_xdir -name \*.$objext -print -o -name \*.lo -print | sort | $NL2SP`
5190 done
5191
5192 func_extract_archives_result=$my_oldobjs
5193 }
5194
5195
5196 # func_emit_wrapper [arg=no]
5197 #
5198 # Emit a libtool wrapper script on stdout.
5199 # Don't directly open a file because we may want to
5200 # incorporate the script contents within a cygwin/mingw
5201 # wrapper executable. Must ONLY be called from within
5202 # func_mode_link because it depends on a number of variables
5203 # set therein.
5204 #
5205 # ARG is the value that the WRAPPER_SCRIPT_BELONGS_IN_OBJDIR
5206 # variable will take. If 'yes', then the emitted script
5207 # will assume that the directory where it is stored is
5208 # the $objdir directory. This is a cygwin/mingw-specific
5209 # behavior.
5210 func_emit_wrapper ()
5211 {
5212 func_emit_wrapper_arg1=${1-no}
5213
5214 $ECHO "\
5215 #! $SHELL
5216
5217 # $output - temporary wrapper script for $objdir/$outputname
5218 # Generated by $PROGRAM (GNU $PACKAGE) $VERSION
5219 #
5220 # The $output program cannot be directly executed until all the libtool
5221 # libraries that it depends on are installed.
5222 #
5223 # This wrapper script should never be moved out of the build directory.
5224 # If it is, it will not operate correctly.
5225
5226 # Sed substitution that helps us do robust quoting. It backslashifies
5227 # metacharacters that are still active within double-quoted strings.
5228 sed_quote_subst='$sed_quote_subst'
5229
5230 # Be Bourne compatible
5231 if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then
5232 emulate sh
5233 NULLCMD=:
5234 # Zsh 3.x and 4.x performs word splitting on \${1+\"\$@\"}, which
5235 # is contrary to our usage. Disable this feature.
5236 alias -g '\${1+\"\$@\"}'='\"\$@\"'
5237 setopt NO_GLOB_SUBST
5238 else
5239 case \`(set -o) 2>/dev/null\` in *posix*) set -o posix;; esac
5240 fi
5241 BIN_SH=xpg4; export BIN_SH # for Tru64
5242 DUALCASE=1; export DUALCASE # for MKS sh
5243
5244 # The HP-UX ksh and POSIX shell print the target directory to stdout
5245 # if CDPATH is set.
5246 (unset CDPATH) >/dev/null 2>&1 && unset CDPATH
5247
5248 relink_command=\"$relink_command\"
5249
5250 # This environment variable determines our operation mode.
5251 if test \"\$libtool_install_magic\" = \"$magic\"; then
5252 # install mode needs the following variables:
5253 generated_by_libtool_version='$macro_version'
5254 notinst_deplibs='$notinst_deplibs'
5255 else
5256 # When we are sourced in execute mode, \$file and \$ECHO are already set.
5257 if test \"\$libtool_execute_magic\" != \"$magic\"; then
5258 file=\"\$0\""
5259
5260 qECHO=`$ECHO "$ECHO" | $SED "$sed_quote_subst"`
5261 $ECHO "\
5262
5263 # A function that is used when there is no print builtin or printf.
5264 func_fallback_echo ()
5265 {
5266 eval 'cat <<_LTECHO_EOF
5267 \$1
5268 _LTECHO_EOF'
5269 }
5270 ECHO=\"$qECHO\"
5271 fi
5272
5273 # Very basic option parsing. These options are (a) specific to
5274 # the libtool wrapper, (b) are identical between the wrapper
5275 # /script/ and the wrapper /executable/ that is used only on
5276 # windows platforms, and (c) all begin with the string "--lt-"
5277 # (application programs are unlikely to have options that match
5278 # this pattern).
5279 #
5280 # There are only two supported options: --lt-debug and
5281 # --lt-dump-script. There is, deliberately, no --lt-help.
5282 #
5283 # The first argument to this parsing function should be the
5284 # script's $0 value, followed by "$@".
5285 lt_option_debug=
5286 func_parse_lt_options ()
5287 {
5288 lt_script_arg0=\$0
5289 shift
5290 for lt_opt
5291 do
5292 case \"\$lt_opt\" in
5293 --lt-debug) lt_option_debug=1 ;;
5294 --lt-dump-script)
5295 lt_dump_D=\`\$ECHO \"X\$lt_script_arg0\" | $SED -e 's/^X//' -e 's%/[^/]*$%%'\`
5296 test \"X\$lt_dump_D\" = \"X\$lt_script_arg0\" && lt_dump_D=.
5297 lt_dump_F=\`\$ECHO \"X\$lt_script_arg0\" | $SED -e 's/^X//' -e 's%^.*/%%'\`
5298 cat \"\$lt_dump_D/\$lt_dump_F\"
5299 exit 0
5300 ;;
5301 --lt-*)
5302 \$ECHO \"Unrecognized --lt- option: '\$lt_opt'\" 1>&2
5303 exit 1
5304 ;;
5305 esac
5306 done
5307
5308 # Print the debug banner immediately:
5309 if test -n \"\$lt_option_debug\"; then
5310 echo \"$outputname:$output:\$LINENO: libtool wrapper (GNU $PACKAGE) $VERSION\" 1>&2
5311 fi
5312 }
5313
5314 # Used when --lt-debug. Prints its arguments to stdout
5315 # (redirection is the responsibility of the caller)
5316 func_lt_dump_args ()
5317 {
5318 lt_dump_args_N=1;
5319 for lt_arg
5320 do
5321 \$ECHO \"$outputname:$output:\$LINENO: newargv[\$lt_dump_args_N]: \$lt_arg\"
5322 lt_dump_args_N=\`expr \$lt_dump_args_N + 1\`
5323 done
5324 }
5325
5326 # Core function for launching the target application
5327 func_exec_program_core ()
5328 {
5329 "
5330 case $host in
5331 # Backslashes separate directories on plain windows
5332 *-*-mingw | *-*-os2* | *-cegcc*)
5333 $ECHO "\
5334 if test -n \"\$lt_option_debug\"; then
5335 \$ECHO \"$outputname:$output:\$LINENO: newargv[0]: \$progdir\\\\\$program\" 1>&2
5336 func_lt_dump_args \${1+\"\$@\"} 1>&2
5337 fi
5338 exec \"\$progdir\\\\\$program\" \${1+\"\$@\"}
5339 "
5340 ;;
5341
5342 *)
5343 $ECHO "\
5344 if test -n \"\$lt_option_debug\"; then
5345 \$ECHO \"$outputname:$output:\$LINENO: newargv[0]: \$progdir/\$program\" 1>&2
5346 func_lt_dump_args \${1+\"\$@\"} 1>&2
5347 fi
5348 exec \"\$progdir/\$program\" \${1+\"\$@\"}
5349 "
5350 ;;
5351 esac
5352 $ECHO "\
5353 \$ECHO \"\$0: cannot exec \$program \$*\" 1>&2
5354 exit 1
5355 }
5356
5357 # A function to encapsulate launching the target application
5358 # Strips options in the --lt-* namespace from \$@ and
5359 # launches target application with the remaining arguments.
5360 func_exec_program ()
5361 {
5362 case \" \$* \" in
5363 *\\ --lt-*)
5364 for lt_wr_arg
5365 do
5366 case \$lt_wr_arg in
5367 --lt-*) ;;
5368 *) set x \"\$@\" \"\$lt_wr_arg\"; shift;;
5369 esac
5370 shift
5371 done ;;
5372 esac
5373 func_exec_program_core \${1+\"\$@\"}
5374 }
5375
5376 # Parse options
5377 func_parse_lt_options \"\$0\" \${1+\"\$@\"}
5378
5379 # Find the directory that this script lives in.
5380 thisdir=\`\$ECHO \"\$file\" | $SED 's%/[^/]*$%%'\`
5381 test \"x\$thisdir\" = \"x\$file\" && thisdir=.
5382
5383 # Follow symbolic links until we get to the real thisdir.
5384 file=\`ls -ld \"\$file\" | $SED -n 's/.*-> //p'\`
5385 while test -n \"\$file\"; do
5386 destdir=\`\$ECHO \"\$file\" | $SED 's%/[^/]*\$%%'\`
5387
5388 # If there was a directory component, then change thisdir.
5389 if test \"x\$destdir\" != \"x\$file\"; then
5390 case \"\$destdir\" in
5391 [\\\\/]* | [A-Za-z]:[\\\\/]*) thisdir=\"\$destdir\" ;;
5392 *) thisdir=\"\$thisdir/\$destdir\" ;;
5393 esac
5394 fi
5395
5396 file=\`\$ECHO \"\$file\" | $SED 's%^.*/%%'\`
5397 file=\`ls -ld \"\$thisdir/\$file\" | $SED -n 's/.*-> //p'\`
5398 done
5399
5400 # Usually 'no', except on cygwin/mingw when embedded into
5401 # the cwrapper.
5402 WRAPPER_SCRIPT_BELONGS_IN_OBJDIR=$func_emit_wrapper_arg1
5403 if test \"\$WRAPPER_SCRIPT_BELONGS_IN_OBJDIR\" = \"yes\"; then
5404 # special case for '.'
5405 if test \"\$thisdir\" = \".\"; then
5406 thisdir=\`pwd\`
5407 fi
5408 # remove .libs from thisdir
5409 case \"\$thisdir\" in
5410 *[\\\\/]$objdir ) thisdir=\`\$ECHO \"\$thisdir\" | $SED 's%[\\\\/][^\\\\/]*$%%'\` ;;
5411 $objdir ) thisdir=. ;;
5412 esac
5413 fi
5414
5415 # Try to get the absolute directory name.
5416 absdir=\`cd \"\$thisdir\" && pwd\`
5417 test -n \"\$absdir\" && thisdir=\"\$absdir\"
5418 "
5419
5420 if test yes = "$fast_install"; then
5421 $ECHO "\
5422 program=lt-'$outputname'$exeext
5423 progdir=\"\$thisdir/$objdir\"
5424
5425 if test ! -f \"\$progdir/\$program\" ||
5426 { file=\`ls -1dt \"\$progdir/\$program\" \"\$progdir/../\$program\" 2>/dev/null | $SED 1q\`; \\
5427 test \"X\$file\" != \"X\$progdir/\$program\"; }; then
5428
5429 file=\"\$\$-\$program\"
5430
5431 if test ! -d \"\$progdir\"; then
5432 $MKDIR \"\$progdir\"
5433 else
5434 $RM \"\$progdir/\$file\"
5435 fi"
5436
5437 $ECHO "\
5438
5439 # relink executable if necessary
5440 if test -n \"\$relink_command\"; then
5441 if relink_command_output=\`eval \$relink_command 2>&1\`; then :
5442 else
5443 \$ECHO \"\$relink_command_output\" >&2
5444 $RM \"\$progdir/\$file\"
5445 exit 1
5446 fi
5447 fi
5448
5449 $MV \"\$progdir/\$file\" \"\$progdir/\$program\" 2>/dev/null ||
5450 { $RM \"\$progdir/\$program\";
5451 $MV \"\$progdir/\$file\" \"\$progdir/\$program\"; }
5452 $RM \"\$progdir/\$file\"
5453 fi"
5454 else
5455 $ECHO "\
5456 program='$outputname'
5457 progdir=\"\$thisdir/$objdir\"
5458 "
5459 fi
5460
5461 $ECHO "\
5462
5463 if test -f \"\$progdir/\$program\"; then"
5464
5465 # fixup the dll searchpath if we need to.
5466 #
5467 # Fix the DLL searchpath if we need to. Do this before prepending
5468 # to shlibpath, because on Windows, both are PATH and uninstalled
5469 # libraries must come first.
5470 if test -n "$dllsearchpath"; then
5471 $ECHO "\
5472 # Add the dll search path components to the executable PATH
5473 PATH=$dllsearchpath:\$PATH
5474 "
5475 fi
5476
5477 # Export our shlibpath_var if we have one.
5478 if test yes = "$shlibpath_overrides_runpath" && test -n "$shlibpath_var" && test -n "$temp_rpath"; then
5479 $ECHO "\
5480 # Add our own library path to $shlibpath_var
5481 $shlibpath_var=\"$temp_rpath\$$shlibpath_var\"
5482
5483 # Some systems cannot cope with colon-terminated $shlibpath_var
5484 # The second colon is a workaround for a bug in BeOS R4 sed
5485 $shlibpath_var=\`\$ECHO \"\$$shlibpath_var\" | $SED 's/::*\$//'\`
5486
5487 export $shlibpath_var
5488 "
5489 fi
5490
5491 $ECHO "\
5492 if test \"\$libtool_execute_magic\" != \"$magic\"; then
5493 # Run the actual program with our arguments.
5494 func_exec_program \${1+\"\$@\"}
5495 fi
5496 else
5497 # The program doesn't exist.
5498 \$ECHO \"\$0: error: '\$progdir/\$program' does not exist\" 1>&2
5499 \$ECHO \"This script is just a wrapper for \$program.\" 1>&2
5500 \$ECHO \"See the $PACKAGE documentation for more information.\" 1>&2
5501 exit 1
5502 fi
5503 fi\
5504 "
5505 }
5506
5507
5508 # func_emit_cwrapperexe_src
5509 # emit the source code for a wrapper executable on stdout
5510 # Must ONLY be called from within func_mode_link because
5511 # it depends on a number of variable set therein.
5512 func_emit_cwrapperexe_src ()
5513 {
5514 cat <<EOF
5515
5516 /* $cwrappersource - temporary wrapper executable for $objdir/$outputname
5517 Generated by $PROGRAM (GNU $PACKAGE) $VERSION
5518
5519 The $output program cannot be directly executed until all the libtool
5520 libraries that it depends on are installed.
5521
5522 This wrapper executable should never be moved out of the build directory.
5523 If it is, it will not operate correctly.
5524 */
5525 EOF
5526 cat <<"EOF"
5527 #ifdef _MSC_VER
5528 # define _CRT_SECURE_NO_DEPRECATE 1
5529 #endif
5530 #include <stdio.h>
5531 #include <stdlib.h>
5532 #ifdef _MSC_VER
5533 # include <direct.h>
5534 # include <process.h>
5535 # include <io.h>
5536 #else
5537 # include <unistd.h>
5538 # include <stdint.h>
5539 # ifdef __CYGWIN__
5540 # include <io.h>
5541 # endif
5542 #endif
5543 #include <malloc.h>
5544 #include <stdarg.h>
5545 #include <assert.h>
5546 #include <string.h>
5547 #include <ctype.h>
5548 #include <errno.h>
5549 #include <fcntl.h>
5550 #include <sys/stat.h>
5551
5552 #define STREQ(s1, s2) (strcmp ((s1), (s2)) == 0)
5553
5554 /* declarations of non-ANSI functions */
5555 #if defined __MINGW32__
5556 # ifdef __STRICT_ANSI__
5557 int _putenv (const char *);
5558 # endif
5559 #elif defined __CYGWIN__
5560 # ifdef __STRICT_ANSI__
5561 char *realpath (const char *, char *);
5562 int putenv (char *);
5563 int setenv (const char *, const char *, int);
5564 # endif
5565 /* #elif defined other_platform || defined ... */
5566 #endif
5567
5568 /* portability defines, excluding path handling macros */
5569 #if defined _MSC_VER
5570 # define setmode _setmode
5571 # define stat _stat
5572 # define chmod _chmod
5573 # define getcwd _getcwd
5574 # define putenv _putenv
5575 # define S_IXUSR _S_IEXEC
5576 #elif defined __MINGW32__
5577 # define setmode _setmode
5578 # define stat _stat
5579 # define chmod _chmod
5580 # define getcwd _getcwd
5581 # define putenv _putenv
5582 #elif defined __CYGWIN__
5583 # define HAVE_SETENV
5584 # define FOPEN_WB "wb"
5585 /* #elif defined other platforms ... */
5586 #endif
5587
5588 #if defined PATH_MAX
5589 # define LT_PATHMAX PATH_MAX
5590 #elif defined MAXPATHLEN
5591 # define LT_PATHMAX MAXPATHLEN
5592 #else
5593 # define LT_PATHMAX 1024
5594 #endif
5595
5596 #ifndef S_IXOTH
5597 # define S_IXOTH 0
5598 #endif
5599 #ifndef S_IXGRP
5600 # define S_IXGRP 0
5601 #endif
5602
5603 /* path handling portability macros */
5604 #ifndef DIR_SEPARATOR
5605 # define DIR_SEPARATOR '/'
5606 # define PATH_SEPARATOR ':'
5607 #endif
5608
5609 #if defined _WIN32 || defined __MSDOS__ || defined __DJGPP__ || \
5610 defined __OS2__
5611 # define HAVE_DOS_BASED_FILE_SYSTEM
5612 # define FOPEN_WB "wb"
5613 # ifndef DIR_SEPARATOR_2
5614 # define DIR_SEPARATOR_2 '\\'
5615 # endif
5616 # ifndef PATH_SEPARATOR_2
5617 # define PATH_SEPARATOR_2 ';'
5618 # endif
5619 #endif
5620
5621 #ifndef DIR_SEPARATOR_2
5622 # define IS_DIR_SEPARATOR(ch) ((ch) == DIR_SEPARATOR)
5623 #else /* DIR_SEPARATOR_2 */
5624 # define IS_DIR_SEPARATOR(ch) \
5625 (((ch) == DIR_SEPARATOR) || ((ch) == DIR_SEPARATOR_2))
5626 #endif /* DIR_SEPARATOR_2 */
5627
5628 #ifndef PATH_SEPARATOR_2
5629 # define IS_PATH_SEPARATOR(ch) ((ch) == PATH_SEPARATOR)
5630 #else /* PATH_SEPARATOR_2 */
5631 # define IS_PATH_SEPARATOR(ch) ((ch) == PATH_SEPARATOR_2)
5632 #endif /* PATH_SEPARATOR_2 */
5633
5634 #ifndef FOPEN_WB
5635 # define FOPEN_WB "w"
5636 #endif
5637 #ifndef _O_BINARY
5638 # define _O_BINARY 0
5639 #endif
5640
5641 #define XMALLOC(type, num) ((type *) xmalloc ((num) * sizeof(type)))
5642 #define XFREE(stale) do { \
5643 if (stale) { free (stale); stale = 0; } \
5644 } while (0)
5645
5646 #if defined LT_DEBUGWRAPPER
5647 static int lt_debug = 1;
5648 #else
5649 static int lt_debug = 0;
5650 #endif
5651
5652 const char *program_name = "libtool-wrapper"; /* in case xstrdup fails */
5653
5654 void *xmalloc (size_t num);
5655 char *xstrdup (const char *string);
5656 const char *base_name (const char *name);
5657 char *find_executable (const char *wrapper);
5658 char *chase_symlinks (const char *pathspec);
5659 int make_executable (const char *path);
5660 int check_executable (const char *path);
5661 char *strendzap (char *str, const char *pat);
5662 void lt_debugprintf (const char *file, int line, const char *fmt, ...);
5663 void lt_fatal (const char *file, int line, const char *message, ...);
5664 static const char *nonnull (const char *s);
5665 static const char *nonempty (const char *s);
5666 void lt_setenv (const char *name, const char *value);
5667 char *lt_extend_str (const char *orig_value, const char *add, int to_end);
5668 void lt_update_exe_path (const char *name, const char *value);
5669 void lt_update_lib_path (const char *name, const char *value);
5670 char **prepare_spawn (char **argv);
5671 void lt_dump_script (FILE *f);
5672 EOF
5673
5674 cat <<EOF
5675 #if __GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 5)
5676 # define externally_visible volatile
5677 #else
5678 # define externally_visible __attribute__((externally_visible)) volatile
5679 #endif
5680 externally_visible const char * MAGIC_EXE = "$magic_exe";
5681 const char * LIB_PATH_VARNAME = "$shlibpath_var";
5682 EOF
5683
5684 if test yes = "$shlibpath_overrides_runpath" && test -n "$shlibpath_var" && test -n "$temp_rpath"; then
5685 func_to_host_path "$temp_rpath"
5686 cat <<EOF
5687 const char * LIB_PATH_VALUE = "$func_to_host_path_result";
5688 EOF
5689 else
5690 cat <<"EOF"
5691 const char * LIB_PATH_VALUE = "";
5692 EOF
5693 fi
5694
5695 if test -n "$dllsearchpath"; then
5696 func_to_host_path "$dllsearchpath:"
5697 cat <<EOF
5698 const char * EXE_PATH_VARNAME = "PATH";
5699 const char * EXE_PATH_VALUE = "$func_to_host_path_result";
5700 EOF
5701 else
5702 cat <<"EOF"
5703 const char * EXE_PATH_VARNAME = "";
5704 const char * EXE_PATH_VALUE = "";
5705 EOF
5706 fi
5707
5708 if test yes = "$fast_install"; then
5709 cat <<EOF
5710 const char * TARGET_PROGRAM_NAME = "lt-$outputname"; /* hopefully, no .exe */
5711 EOF
5712 else
5713 cat <<EOF
5714 const char * TARGET_PROGRAM_NAME = "$outputname"; /* hopefully, no .exe */
5715 EOF
5716 fi
5717
5718
5719 cat <<"EOF"
5720
5721 #define LTWRAPPER_OPTION_PREFIX "--lt-"
5722
5723 static const char *ltwrapper_option_prefix = LTWRAPPER_OPTION_PREFIX;
5724 static const char *dumpscript_opt = LTWRAPPER_OPTION_PREFIX "dump-script";
5725 static const char *debug_opt = LTWRAPPER_OPTION_PREFIX "debug";
5726
5727 int
5728 main (int argc, char *argv[])
5729 {
5730 char **newargz;
5731 int newargc;
5732 char *tmp_pathspec;
5733 char *actual_cwrapper_path;
5734 char *actual_cwrapper_name;
5735 char *target_name;
5736 char *lt_argv_zero;
5737 int rval = 127;
5738
5739 int i;
5740
5741 program_name = (char *) xstrdup (base_name (argv[0]));
5742 newargz = XMALLOC (char *, (size_t) argc + 1);
5743
5744 /* very simple arg parsing; don't want to rely on getopt
5745 * also, copy all non cwrapper options to newargz, except
5746 * argz[0], which is handled differently
5747 */
5748 newargc=0;
5749 for (i = 1; i < argc; i++)
5750 {
5751 if (STREQ (argv[i], dumpscript_opt))
5752 {
5753 EOF
5754 case $host in
5755 *mingw* | *cygwin* )
5756 # make stdout use "unix" line endings
5757 echo " setmode(1,_O_BINARY);"
5758 ;;
5759 esac
5760
5761 cat <<"EOF"
5762 lt_dump_script (stdout);
5763 return 0;
5764 }
5765 if (STREQ (argv[i], debug_opt))
5766 {
5767 lt_debug = 1;
5768 continue;
5769 }
5770 if (STREQ (argv[i], ltwrapper_option_prefix))
5771 {
5772 /* however, if there is an option in the LTWRAPPER_OPTION_PREFIX
5773 namespace, but it is not one of the ones we know about and
5774 have already dealt with, above (inluding dump-script), then
5775 report an error. Otherwise, targets might begin to believe
5776 they are allowed to use options in the LTWRAPPER_OPTION_PREFIX
5777 namespace. The first time any user complains about this, we'll
5778 need to make LTWRAPPER_OPTION_PREFIX a configure-time option
5779 or a configure.ac-settable value.
5780 */
5781 lt_fatal (__FILE__, __LINE__,
5782 "unrecognized %s option: '%s'",
5783 ltwrapper_option_prefix, argv[i]);
5784 }
5785 /* otherwise ... */
5786 newargz[++newargc] = xstrdup (argv[i]);
5787 }
5788 newargz[++newargc] = NULL;
5789
5790 EOF
5791 cat <<EOF
5792 /* The GNU banner must be the first non-error debug message */
5793 lt_debugprintf (__FILE__, __LINE__, "libtool wrapper (GNU $PACKAGE) $VERSION\n");
5794 EOF
5795 cat <<"EOF"
5796 lt_debugprintf (__FILE__, __LINE__, "(main) argv[0]: %s\n", argv[0]);
5797 lt_debugprintf (__FILE__, __LINE__, "(main) program_name: %s\n", program_name);
5798
5799 tmp_pathspec = find_executable (argv[0]);
5800 if (tmp_pathspec == NULL)
5801 lt_fatal (__FILE__, __LINE__, "couldn't find %s", argv[0]);
5802 lt_debugprintf (__FILE__, __LINE__,
5803 "(main) found exe (before symlink chase) at: %s\n",
5804 tmp_pathspec);
5805
5806 actual_cwrapper_path = chase_symlinks (tmp_pathspec);
5807 lt_debugprintf (__FILE__, __LINE__,
5808 "(main) found exe (after symlink chase) at: %s\n",
5809 actual_cwrapper_path);
5810 XFREE (tmp_pathspec);
5811
5812 actual_cwrapper_name = xstrdup (base_name (actual_cwrapper_path));
5813 strendzap (actual_cwrapper_path, actual_cwrapper_name);
5814
5815 /* wrapper name transforms */
5816 strendzap (actual_cwrapper_name, ".exe");
5817 tmp_pathspec = lt_extend_str (actual_cwrapper_name, ".exe", 1);
5818 XFREE (actual_cwrapper_name);
5819 actual_cwrapper_name = tmp_pathspec;
5820 tmp_pathspec = 0;
5821
5822 /* target_name transforms -- use actual target program name; might have lt- prefix */
5823 target_name = xstrdup (base_name (TARGET_PROGRAM_NAME));
5824 strendzap (target_name, ".exe");
5825 tmp_pathspec = lt_extend_str (target_name, ".exe", 1);
5826 XFREE (target_name);
5827 target_name = tmp_pathspec;
5828 tmp_pathspec = 0;
5829
5830 lt_debugprintf (__FILE__, __LINE__,
5831 "(main) libtool target name: %s\n",
5832 target_name);
5833 EOF
5834
5835 cat <<EOF
5836 newargz[0] =
5837 XMALLOC (char, (strlen (actual_cwrapper_path) +
5838 strlen ("$objdir") + 1 + strlen (actual_cwrapper_name) + 1));
5839 strcpy (newargz[0], actual_cwrapper_path);
5840 strcat (newargz[0], "$objdir");
5841 strcat (newargz[0], "/");
5842 EOF
5843
5844 cat <<"EOF"
5845 /* stop here, and copy so we don't have to do this twice */
5846 tmp_pathspec = xstrdup (newargz[0]);
5847
5848 /* do NOT want the lt- prefix here, so use actual_cwrapper_name */
5849 strcat (newargz[0], actual_cwrapper_name);
5850
5851 /* DO want the lt- prefix here if it exists, so use target_name */
5852 lt_argv_zero = lt_extend_str (tmp_pathspec, target_name, 1);
5853 XFREE (tmp_pathspec);
5854 tmp_pathspec = NULL;
5855 EOF
5856
5857 case $host_os in
5858 mingw*)
5859 cat <<"EOF"
5860 {
5861 char* p;
5862 while ((p = strchr (newargz[0], '\\')) != NULL)
5863 {
5864 *p = '/';
5865 }
5866 while ((p = strchr (lt_argv_zero, '\\')) != NULL)
5867 {
5868 *p = '/';
5869 }
5870 }
5871 EOF
5872 ;;
5873 esac
5874
5875 cat <<"EOF"
5876 XFREE (target_name);
5877 XFREE (actual_cwrapper_path);
5878 XFREE (actual_cwrapper_name);
5879
5880 lt_setenv ("BIN_SH", "xpg4"); /* for Tru64 */
5881 lt_setenv ("DUALCASE", "1"); /* for MSK sh */
5882 /* Update the DLL searchpath. EXE_PATH_VALUE ($dllsearchpath) must
5883 be prepended before (that is, appear after) LIB_PATH_VALUE ($temp_rpath)
5884 because on Windows, both *_VARNAMEs are PATH but uninstalled
5885 libraries must come first. */
5886 lt_update_exe_path (EXE_PATH_VARNAME, EXE_PATH_VALUE);
5887 lt_update_lib_path (LIB_PATH_VARNAME, LIB_PATH_VALUE);
5888
5889 lt_debugprintf (__FILE__, __LINE__, "(main) lt_argv_zero: %s\n",
5890 nonnull (lt_argv_zero));
5891 for (i = 0; i < newargc; i++)
5892 {
5893 lt_debugprintf (__FILE__, __LINE__, "(main) newargz[%d]: %s\n",
5894 i, nonnull (newargz[i]));
5895 }
5896
5897 EOF
5898
5899 case $host_os in
5900 mingw*)
5901 cat <<"EOF"
5902 /* execv doesn't actually work on mingw as expected on unix */
5903 newargz = prepare_spawn (newargz);
5904 rval = (int) _spawnv (_P_WAIT, lt_argv_zero, (const char * const *) newargz);
5905 if (rval == -1)
5906 {
5907 /* failed to start process */
5908 lt_debugprintf (__FILE__, __LINE__,
5909 "(main) failed to launch target \"%s\": %s\n",
5910 lt_argv_zero, nonnull (strerror (errno)));
5911 return 127;
5912 }
5913 return rval;
5914 EOF
5915 ;;
5916 *)
5917 cat <<"EOF"
5918 execv (lt_argv_zero, newargz);
5919 return rval; /* =127, but avoids unused variable warning */
5920 EOF
5921 ;;
5922 esac
5923
5924 cat <<"EOF"
5925 }
5926
5927 void *
5928 xmalloc (size_t num)
5929 {
5930 void *p = (void *) malloc (num);
5931 if (!p)
5932 lt_fatal (__FILE__, __LINE__, "memory exhausted");
5933
5934 return p;
5935 }
5936
5937 char *
5938 xstrdup (const char *string)
5939 {
5940 return string ? strcpy ((char *) xmalloc (strlen (string) + 1),
5941 string) : NULL;
5942 }
5943
5944 const char *
5945 base_name (const char *name)
5946 {
5947 const char *base;
5948
5949 #if defined HAVE_DOS_BASED_FILE_SYSTEM
5950 /* Skip over the disk name in MSDOS pathnames. */
5951 if (isalpha ((unsigned char) name[0]) && name[1] == ':')
5952 name += 2;
5953 #endif
5954
5955 for (base = name; *name; name++)
5956 if (IS_DIR_SEPARATOR (*name))
5957 base = name + 1;
5958 return base;
5959 }
5960
5961 int
5962 check_executable (const char *path)
5963 {
5964 struct stat st;
5965
5966 lt_debugprintf (__FILE__, __LINE__, "(check_executable): %s\n",
5967 nonempty (path));
5968 if ((!path) || (!*path))
5969 return 0;
5970
5971 if ((stat (path, &st) >= 0)
5972 && (st.st_mode & (S_IXUSR | S_IXGRP | S_IXOTH)))
5973 return 1;
5974 else
5975 return 0;
5976 }
5977
5978 int
5979 make_executable (const char *path)
5980 {
5981 int rval = 0;
5982 struct stat st;
5983
5984 lt_debugprintf (__FILE__, __LINE__, "(make_executable): %s\n",
5985 nonempty (path));
5986 if ((!path) || (!*path))
5987 return 0;
5988
5989 if (stat (path, &st) >= 0)
5990 {
5991 rval = chmod (path, st.st_mode | S_IXOTH | S_IXGRP | S_IXUSR);
5992 }
5993 return rval;
5994 }
5995
5996 /* Searches for the full path of the wrapper. Returns
5997 newly allocated full path name if found, NULL otherwise
5998 Does not chase symlinks, even on platforms that support them.
5999 */
6000 char *
6001 find_executable (const char *wrapper)
6002 {
6003 int has_slash = 0;
6004 const char *p;
6005 const char *p_next;
6006 /* static buffer for getcwd */
6007 char tmp[LT_PATHMAX + 1];
6008 size_t tmp_len;
6009 char *concat_name;
6010
6011 lt_debugprintf (__FILE__, __LINE__, "(find_executable): %s\n",
6012 nonempty (wrapper));
6013
6014 if ((wrapper == NULL) || (*wrapper == '\0'))
6015 return NULL;
6016
6017 /* Absolute path? */
6018 #if defined HAVE_DOS_BASED_FILE_SYSTEM
6019 if (isalpha ((unsigned char) wrapper[0]) && wrapper[1] == ':')
6020 {
6021 concat_name = xstrdup (wrapper);
6022 if (check_executable (concat_name))
6023 return concat_name;
6024 XFREE (concat_name);
6025 }
6026 else
6027 {
6028 #endif
6029 if (IS_DIR_SEPARATOR (wrapper[0]))
6030 {
6031 concat_name = xstrdup (wrapper);
6032 if (check_executable (concat_name))
6033 return concat_name;
6034 XFREE (concat_name);
6035 }
6036 #if defined HAVE_DOS_BASED_FILE_SYSTEM
6037 }
6038 #endif
6039
6040 for (p = wrapper; *p; p++)
6041 if (*p == '/')
6042 {
6043 has_slash = 1;
6044 break;
6045 }
6046 if (!has_slash)
6047 {
6048 /* no slashes; search PATH */
6049 const char *path = getenv ("PATH");
6050 if (path != NULL)
6051 {
6052 for (p = path; *p; p = p_next)
6053 {
6054 const char *q;
6055 size_t p_len;
6056 for (q = p; *q; q++)
6057 if (IS_PATH_SEPARATOR (*q))
6058 break;
6059 p_len = (size_t) (q - p);
6060 p_next = (*q == '\0' ? q : q + 1);
6061 if (p_len == 0)
6062 {
6063 /* empty path: current directory */
6064 if (getcwd (tmp, LT_PATHMAX) == NULL)
6065 lt_fatal (__FILE__, __LINE__, "getcwd failed: %s",
6066 nonnull (strerror (errno)));
6067 tmp_len = strlen (tmp);
6068 concat_name =
6069 XMALLOC (char, tmp_len + 1 + strlen (wrapper) + 1);
6070 memcpy (concat_name, tmp, tmp_len);
6071 concat_name[tmp_len] = '/';
6072 strcpy (concat_name + tmp_len + 1, wrapper);
6073 }
6074 else
6075 {
6076 concat_name =
6077 XMALLOC (char, p_len + 1 + strlen (wrapper) + 1);
6078 memcpy (concat_name, p, p_len);
6079 concat_name[p_len] = '/';
6080 strcpy (concat_name + p_len + 1, wrapper);
6081 }
6082 if (check_executable (concat_name))
6083 return concat_name;
6084 XFREE (concat_name);
6085 }
6086 }
6087 /* not found in PATH; assume curdir */
6088 }
6089 /* Relative path | not found in path: prepend cwd */
6090 if (getcwd (tmp, LT_PATHMAX) == NULL)
6091 lt_fatal (__FILE__, __LINE__, "getcwd failed: %s",
6092 nonnull (strerror (errno)));
6093 tmp_len = strlen (tmp);
6094 concat_name = XMALLOC (char, tmp_len + 1 + strlen (wrapper) + 1);
6095 memcpy (concat_name, tmp, tmp_len);
6096 concat_name[tmp_len] = '/';
6097 strcpy (concat_name + tmp_len + 1, wrapper);
6098
6099 if (check_executable (concat_name))
6100 return concat_name;
6101 XFREE (concat_name);
6102 return NULL;
6103 }
6104
6105 char *
6106 chase_symlinks (const char *pathspec)
6107 {
6108 #ifndef S_ISLNK
6109 return xstrdup (pathspec);
6110 #else
6111 char buf[LT_PATHMAX];
6112 struct stat s;
6113 char *tmp_pathspec = xstrdup (pathspec);
6114 char *p;
6115 int has_symlinks = 0;
6116 while (strlen (tmp_pathspec) && !has_symlinks)
6117 {
6118 lt_debugprintf (__FILE__, __LINE__,
6119 "checking path component for symlinks: %s\n",
6120 tmp_pathspec);
6121 if (lstat (tmp_pathspec, &s) == 0)
6122 {
6123 if (S_ISLNK (s.st_mode) != 0)
6124 {
6125 has_symlinks = 1;
6126 break;
6127 }
6128
6129 /* search backwards for last DIR_SEPARATOR */
6130 p = tmp_pathspec + strlen (tmp_pathspec) - 1;
6131 while ((p > tmp_pathspec) && (!IS_DIR_SEPARATOR (*p)))
6132 p--;
6133 if ((p == tmp_pathspec) && (!IS_DIR_SEPARATOR (*p)))
6134 {
6135 /* no more DIR_SEPARATORS left */
6136 break;
6137 }
6138 *p = '\0';
6139 }
6140 else
6141 {
6142 lt_fatal (__FILE__, __LINE__,
6143 "error accessing file \"%s\": %s",
6144 tmp_pathspec, nonnull (strerror (errno)));
6145 }
6146 }
6147 XFREE (tmp_pathspec);
6148
6149 if (!has_symlinks)
6150 {
6151 return xstrdup (pathspec);
6152 }
6153
6154 tmp_pathspec = realpath (pathspec, buf);
6155 if (tmp_pathspec == 0)
6156 {
6157 lt_fatal (__FILE__, __LINE__,
6158 "could not follow symlinks for %s", pathspec);
6159 }
6160 return xstrdup (tmp_pathspec);
6161 #endif
6162 }
6163
6164 char *
6165 strendzap (char *str, const char *pat)
6166 {
6167 size_t len, patlen;
6168
6169 assert (str != NULL);
6170 assert (pat != NULL);
6171
6172 len = strlen (str);
6173 patlen = strlen (pat);
6174
6175 if (patlen <= len)
6176 {
6177 str += len - patlen;
6178 if (STREQ (str, pat))
6179 *str = '\0';
6180 }
6181 return str;
6182 }
6183
6184 void
6185 lt_debugprintf (const char *file, int line, const char *fmt, ...)
6186 {
6187 va_list args;
6188 if (lt_debug)
6189 {
6190 (void) fprintf (stderr, "%s:%s:%d: ", program_name, file, line);
6191 va_start (args, fmt);
6192 (void) vfprintf (stderr, fmt, args);
6193 va_end (args);
6194 }
6195 }
6196
6197 static void
6198 lt_error_core (int exit_status, const char *file,
6199 int line, const char *mode,
6200 const char *message, va_list ap)
6201 {
6202 fprintf (stderr, "%s:%s:%d: %s: ", program_name, file, line, mode);
6203 vfprintf (stderr, message, ap);
6204 fprintf (stderr, ".\n");
6205
6206 if (exit_status >= 0)
6207 exit (exit_status);
6208 }
6209
6210 void
6211 lt_fatal (const char *file, int line, const char *message, ...)
6212 {
6213 va_list ap;
6214 va_start (ap, message);
6215 lt_error_core (EXIT_FAILURE, file, line, "FATAL", message, ap);
6216 va_end (ap);
6217 }
6218
6219 static const char *
6220 nonnull (const char *s)
6221 {
6222 return s ? s : "(null)";
6223 }
6224
6225 static const char *
6226 nonempty (const char *s)
6227 {
6228 return (s && !*s) ? "(empty)" : nonnull (s);
6229 }
6230
6231 void
6232 lt_setenv (const char *name, const char *value)
6233 {
6234 lt_debugprintf (__FILE__, __LINE__,
6235 "(lt_setenv) setting '%s' to '%s'\n",
6236 nonnull (name), nonnull (value));
6237 {
6238 #ifdef HAVE_SETENV
6239 /* always make a copy, for consistency with !HAVE_SETENV */
6240 char *str = xstrdup (value);
6241 setenv (name, str, 1);
6242 #else
6243 size_t len = strlen (name) + 1 + strlen (value) + 1;
6244 char *str = XMALLOC (char, len);
6245 sprintf (str, "%s=%s", name, value);
6246 if (putenv (str) != EXIT_SUCCESS)
6247 {
6248 XFREE (str);
6249 }
6250 #endif
6251 }
6252 }
6253
6254 char *
6255 lt_extend_str (const char *orig_value, const char *add, int to_end)
6256 {
6257 char *new_value;
6258 if (orig_value && *orig_value)
6259 {
6260 size_t orig_value_len = strlen (orig_value);
6261 size_t add_len = strlen (add);
6262 new_value = XMALLOC (char, add_len + orig_value_len + 1);
6263 if (to_end)
6264 {
6265 strcpy (new_value, orig_value);
6266 strcpy (new_value + orig_value_len, add);
6267 }
6268 else
6269 {
6270 strcpy (new_value, add);
6271 strcpy (new_value + add_len, orig_value);
6272 }
6273 }
6274 else
6275 {
6276 new_value = xstrdup (add);
6277 }
6278 return new_value;
6279 }
6280
6281 void
6282 lt_update_exe_path (const char *name, const char *value)
6283 {
6284 lt_debugprintf (__FILE__, __LINE__,
6285 "(lt_update_exe_path) modifying '%s' by prepending '%s'\n",
6286 nonnull (name), nonnull (value));
6287
6288 if (name && *name && value && *value)
6289 {
6290 char *new_value = lt_extend_str (getenv (name), value, 0);
6291 /* some systems can't cope with a ':'-terminated path #' */
6292 size_t len = strlen (new_value);
6293 while ((len > 0) && IS_PATH_SEPARATOR (new_value[len-1]))
6294 {
6295 new_value[--len] = '\0';
6296 }
6297 lt_setenv (name, new_value);
6298 XFREE (new_value);
6299 }
6300 }
6301
6302 void
6303 lt_update_lib_path (const char *name, const char *value)
6304 {
6305 lt_debugprintf (__FILE__, __LINE__,
6306 "(lt_update_lib_path) modifying '%s' by prepending '%s'\n",
6307 nonnull (name), nonnull (value));
6308
6309 if (name && *name && value && *value)
6310 {
6311 char *new_value = lt_extend_str (getenv (name), value, 0);
6312 lt_setenv (name, new_value);
6313 XFREE (new_value);
6314 }
6315 }
6316
6317 EOF
6318 case $host_os in
6319 mingw*)
6320 cat <<"EOF"
6321
6322 /* Prepares an argument vector before calling spawn().
6323 Note that spawn() does not by itself call the command interpreter
6324 (getenv ("COMSPEC") != NULL ? getenv ("COMSPEC") :
6325 ({ OSVERSIONINFO v; v.dwOSVersionInfoSize = sizeof(OSVERSIONINFO);
6326 GetVersionEx(&v);
6327 v.dwPlatformId == VER_PLATFORM_WIN32_NT;
6328 }) ? "cmd.exe" : "command.com").
6329 Instead it simply concatenates the arguments, separated by ' ', and calls
6330 CreateProcess(). We must quote the arguments since Win32 CreateProcess()
6331 interprets characters like ' ', '\t', '\\', '"' (but not '<' and '>') in a
6332 special way:
6333 - Space and tab are interpreted as delimiters. They are not treated as
6334 delimiters if they are surrounded by double quotes: "...".
6335 - Unescaped double quotes are removed from the input. Their only effect is
6336 that within double quotes, space and tab are treated like normal
6337 characters.
6338 - Backslashes not followed by double quotes are not special.
6339 - But 2*n+1 backslashes followed by a double quote become
6340 n backslashes followed by a double quote (n >= 0):
6341 \" -> "
6342 \\\" -> \"
6343 \\\\\" -> \\"
6344 */
6345 #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"
6346 #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"
6347 char **
6348 prepare_spawn (char **argv)
6349 {
6350 size_t argc;
6351 char **new_argv;
6352 size_t i;
6353
6354 /* Count number of arguments. */
6355 for (argc = 0; argv[argc] != NULL; argc++)
6356 ;
6357
6358 /* Allocate new argument vector. */
6359 new_argv = XMALLOC (char *, argc + 1);
6360
6361 /* Put quoted arguments into the new argument vector. */
6362 for (i = 0; i < argc; i++)
6363 {
6364 const char *string = argv[i];
6365
6366 if (string[0] == '\0')
6367 new_argv[i] = xstrdup ("\"\"");
6368 else if (strpbrk (string, SHELL_SPECIAL_CHARS) != NULL)
6369 {
6370 int quote_around = (strpbrk (string, SHELL_SPACE_CHARS) != NULL);
6371 size_t length;
6372 unsigned int backslashes;
6373 const char *s;
6374 char *quoted_string;
6375 char *p;
6376
6377 length = 0;
6378 backslashes = 0;
6379 if (quote_around)
6380 length++;
6381 for (s = string; *s != '\0'; s++)
6382 {
6383 char c = *s;
6384 if (c == '"')
6385 length += backslashes + 1;
6386 length++;
6387 if (c == '\\')
6388 backslashes++;
6389 else
6390 backslashes = 0;
6391 }
6392 if (quote_around)
6393 length += backslashes + 1;
6394
6395 quoted_string = XMALLOC (char, length + 1);
6396
6397 p = quoted_string;
6398 backslashes = 0;
6399 if (quote_around)
6400 *p++ = '"';
6401 for (s = string; *s != '\0'; s++)
6402 {
6403 char c = *s;
6404 if (c == '"')
6405 {
6406 unsigned int j;
6407 for (j = backslashes + 1; j > 0; j--)
6408 *p++ = '\\';
6409 }
6410 *p++ = c;
6411 if (c == '\\')
6412 backslashes++;
6413 else
6414 backslashes = 0;
6415 }
6416 if (quote_around)
6417 {
6418 unsigned int j;
6419 for (j = backslashes; j > 0; j--)
6420 *p++ = '\\';
6421 *p++ = '"';
6422 }
6423 *p = '\0';
6424
6425 new_argv[i] = quoted_string;
6426 }
6427 else
6428 new_argv[i] = (char *) string;
6429 }
6430 new_argv[argc] = NULL;
6431
6432 return new_argv;
6433 }
6434 EOF
6435 ;;
6436 esac
6437
6438 cat <<"EOF"
6439 void lt_dump_script (FILE* f)
6440 {
6441 EOF
6442 func_emit_wrapper yes |
6443 $SED -n -e '
6444 s/^\(.\{79\}\)\(..*\)/\1\
6445 \2/
6446 h
6447 s/\([\\"]\)/\\\1/g
6448 s/$/\\n/
6449 s/\([^\n]*\).*/ fputs ("\1", f);/p
6450 g
6451 D'
6452 cat <<"EOF"
6453 }
6454 EOF
6455 }
6456 # end: func_emit_cwrapperexe_src
6457
6458 # func_win32_import_lib_p ARG
6459 # True if ARG is an import lib, as indicated by $file_magic_cmd
6460 func_win32_import_lib_p ()
6461 {
6462 $debug_cmd
6463
6464 case `eval $file_magic_cmd \"\$1\" 2>/dev/null | $SED -e 10q` in
6465 *import*) : ;;
6466 *) false ;;
6467 esac
6468 }
6469
6470 # func_suncc_cstd_abi
6471 # !!ONLY CALL THIS FOR SUN CC AFTER $compile_command IS FULLY EXPANDED!!
6472 # Several compiler flags select an ABI that is incompatible with the
6473 # Cstd library. Avoid specifying it if any are in CXXFLAGS.
6474 func_suncc_cstd_abi ()
6475 {
6476 $debug_cmd
6477
6478 case " $compile_command " in
6479 *" -compat=g "*|*\ -std=c++[0-9][0-9]\ *|*" -library=stdcxx4 "*|*" -library=stlport4 "*)
6480 suncc_use_cstd_abi=no
6481 ;;
6482 *)
6483 suncc_use_cstd_abi=yes
6484 ;;
6485 esac
6486 }
6487
6488 # func_mode_link arg...
6489 func_mode_link ()
6490 {
6491 $debug_cmd
6492
6493 case $host in
6494 *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*)
6495 # It is impossible to link a dll without this setting, and
6496 # we shouldn't force the makefile maintainer to figure out
6497 # what system we are compiling for in order to pass an extra
6498 # flag for every libtool invocation.
6499 # allow_undefined=no
6500
6501 # FIXME: Unfortunately, there are problems with the above when trying
6502 # to make a dll that has undefined symbols, in which case not
6503 # even a static library is built. For now, we need to specify
6504 # -no-undefined on the libtool link line when we can be certain
6505 # that all symbols are satisfied, otherwise we get a static library.
6506 allow_undefined=yes
6507 ;;
6508 *)
6509 allow_undefined=yes
6510 ;;
6511 esac
6512 libtool_args=$nonopt
6513 base_compile="$nonopt $@"
6514 compile_command=$nonopt
6515 finalize_command=$nonopt
6516
6517 compile_rpath=
6518 finalize_rpath=
6519 compile_shlibpath=
6520 finalize_shlibpath=
6521 convenience=
6522 old_convenience=
6523 deplibs=
6524 old_deplibs=
6525 compiler_flags=
6526 linker_flags=
6527 dllsearchpath=
6528 lib_search_path=`pwd`
6529 inst_prefix_dir=
6530 new_inherited_linker_flags=
6531
6532 avoid_version=no
6533 bindir=
6534 dlfiles=
6535 dlprefiles=
6536 dlself=no
6537 export_dynamic=no
6538 export_symbols=
6539 export_symbols_regex=
6540 generated=
6541 libobjs=
6542 ltlibs=
6543 module=no
6544 no_install=no
6545 objs=
6546 os2dllname=
6547 non_pic_objects=
6548 precious_files_regex=
6549 prefer_static_libs=no
6550 preload=false
6551 prev=
6552 prevarg=
6553 release=
6554 rpath=
6555 xrpath=
6556 perm_rpath=
6557 temp_rpath=
6558 thread_safe=no
6559 vinfo=
6560 vinfo_number=no
6561 weak_libs=
6562 single_module=$wl-single_module
6563 func_infer_tag $base_compile
6564
6565 # We need to know -static, to get the right output filenames.
6566 for arg
6567 do
6568 case $arg in
6569 -shared)
6570 test yes != "$build_libtool_libs" \
6571 && func_fatal_configuration "cannot build a shared library"
6572 build_old_libs=no
6573 break
6574 ;;
6575 -all-static | -static | -static-libtool-libs)
6576 case $arg in
6577 -all-static)
6578 if test yes = "$build_libtool_libs" && test -z "$link_static_flag"; then
6579 func_warning "complete static linking is impossible in this configuration"
6580 fi
6581 if test -n "$link_static_flag"; then
6582 dlopen_self=$dlopen_self_static
6583 fi
6584 prefer_static_libs=yes
6585 ;;
6586 -static)
6587 if test -z "$pic_flag" && test -n "$link_static_flag"; then
6588 dlopen_self=$dlopen_self_static
6589 fi
6590 prefer_static_libs=built
6591 ;;
6592 -static-libtool-libs)
6593 if test -z "$pic_flag" && test -n "$link_static_flag"; then
6594 dlopen_self=$dlopen_self_static
6595 fi
6596 prefer_static_libs=yes
6597 ;;
6598 esac
6599 build_libtool_libs=no
6600 build_old_libs=yes
6601 break
6602 ;;
6603 esac
6604 done
6605
6606 # See if our shared archives depend on static archives.
6607 test -n "$old_archive_from_new_cmds" && build_old_libs=yes
6608
6609 # Go through the arguments, transforming them on the way.
6610 while test "$#" -gt 0; do
6611 arg=$1
6612 shift
6613 func_quote_for_eval "$arg"
6614 qarg=$func_quote_for_eval_unquoted_result
6615 func_append libtool_args " $func_quote_for_eval_result"
6616
6617 # If the previous option needs an argument, assign it.
6618 if test -n "$prev"; then
6619 case $prev in
6620 output)
6621 func_append compile_command " @OUTPUT@"
6622 func_append finalize_command " @OUTPUT@"
6623 ;;
6624 esac
6625
6626 case $prev in
6627 bindir)
6628 bindir=$arg
6629 prev=
6630 continue
6631 ;;
6632 dlfiles|dlprefiles)
6633 $preload || {
6634 # Add the symbol object into the linking commands.
6635 func_append compile_command " @SYMFILE@"
6636 func_append finalize_command " @SYMFILE@"
6637 preload=:
6638 }
6639 case $arg in
6640 *.la | *.lo) ;; # We handle these cases below.
6641 force)
6642 if test no = "$dlself"; then
6643 dlself=needless
6644 export_dynamic=yes
6645 fi
6646 prev=
6647 continue
6648 ;;
6649 self)
6650 if test dlprefiles = "$prev"; then
6651 dlself=yes
6652 elif test dlfiles = "$prev" && test yes != "$dlopen_self"; then
6653 dlself=yes
6654 else
6655 dlself=needless
6656 export_dynamic=yes
6657 fi
6658 prev=
6659 continue
6660 ;;
6661 *)
6662 if test dlfiles = "$prev"; then
6663 func_append dlfiles " $arg"
6664 else
6665 func_append dlprefiles " $arg"
6666 fi
6667 prev=
6668 continue
6669 ;;
6670 esac
6671 ;;
6672 expsyms)
6673 export_symbols=$arg
6674 test -f "$arg" \
6675 || func_fatal_error "symbol file '$arg' does not exist"
6676 prev=
6677 continue
6678 ;;
6679 expsyms_regex)
6680 export_symbols_regex=$arg
6681 prev=
6682 continue
6683 ;;
6684 framework)
6685 case $host in
6686 *-*-darwin*)
6687 case "$deplibs " in
6688 *" $qarg.ltframework "*) ;;
6689 *) func_append deplibs " $qarg.ltframework" # this is fixed later
6690 ;;
6691 esac
6692 ;;
6693 esac
6694 prev=
6695 continue
6696 ;;
6697 inst_prefix)
6698 inst_prefix_dir=$arg
6699 prev=
6700 continue
6701 ;;
6702 mllvm)
6703 # Clang does not use LLVM to link, so we can simply discard any
6704 # '-mllvm $arg' options when doing the link step.
6705 prev=
6706 continue
6707 ;;
6708 objectlist)
6709 if test -f "$arg"; then
6710 save_arg=$arg
6711 moreargs=
6712 for fil in `cat "$save_arg"`
6713 do
6714 # func_append moreargs " $fil"
6715 arg=$fil
6716 # A libtool-controlled object.
6717
6718 # Check to see that this really is a libtool object.
6719 if func_lalib_unsafe_p "$arg"; then
6720 pic_object=
6721 non_pic_object=
6722
6723 # Read the .lo file
6724 func_source "$arg"
6725
6726 if test -z "$pic_object" ||
6727 test -z "$non_pic_object" ||
6728 test none = "$pic_object" &&
6729 test none = "$non_pic_object"; then
6730 func_fatal_error "cannot find name of object for '$arg'"
6731 fi
6732
6733 # Extract subdirectory from the argument.
6734 func_dirname "$arg" "/" ""
6735 xdir=$func_dirname_result
6736
6737 if test none != "$pic_object"; then
6738 # Prepend the subdirectory the object is found in.
6739 pic_object=$xdir$pic_object
6740
6741 if test dlfiles = "$prev"; then
6742 if test yes = "$build_libtool_libs" && test yes = "$dlopen_support"; then
6743 func_append dlfiles " $pic_object"
6744 prev=
6745 continue
6746 else
6747 # If libtool objects are unsupported, then we need to preload.
6748 prev=dlprefiles
6749 fi
6750 fi
6751
6752 # CHECK ME: I think I busted this. -Ossama
6753 if test dlprefiles = "$prev"; then
6754 # Preload the old-style object.
6755 func_append dlprefiles " $pic_object"
6756 prev=
6757 fi
6758
6759 # A PIC object.
6760 func_append libobjs " $pic_object"
6761 arg=$pic_object
6762 fi
6763
6764 # Non-PIC object.
6765 if test none != "$non_pic_object"; then
6766 # Prepend the subdirectory the object is found in.
6767 non_pic_object=$xdir$non_pic_object
6768
6769 # A standard non-PIC object
6770 func_append non_pic_objects " $non_pic_object"
6771 if test -z "$pic_object" || test none = "$pic_object"; then
6772 arg=$non_pic_object
6773 fi
6774 else
6775 # If the PIC object exists, use it instead.
6776 # $xdir was prepended to $pic_object above.
6777 non_pic_object=$pic_object
6778 func_append non_pic_objects " $non_pic_object"
6779 fi
6780 else
6781 # Only an error if not doing a dry-run.
6782 if $opt_dry_run; then
6783 # Extract subdirectory from the argument.
6784 func_dirname "$arg" "/" ""
6785 xdir=$func_dirname_result
6786
6787 func_lo2o "$arg"
6788 pic_object=$xdir$objdir/$func_lo2o_result
6789 non_pic_object=$xdir$func_lo2o_result
6790 func_append libobjs " $pic_object"
6791 func_append non_pic_objects " $non_pic_object"
6792 else
6793 func_fatal_error "'$arg' is not a valid libtool object"
6794 fi
6795 fi
6796 done
6797 else
6798 func_fatal_error "link input file '$arg' does not exist"
6799 fi
6800 arg=$save_arg
6801 prev=
6802 continue
6803 ;;
6804 os2dllname)
6805 os2dllname=$arg
6806 prev=
6807 continue
6808 ;;
6809 precious_regex)
6810 precious_files_regex=$arg
6811 prev=
6812 continue
6813 ;;
6814 release)
6815 release=-$arg
6816 prev=
6817 continue
6818 ;;
6819 rpath | xrpath)
6820 # We need an absolute path.
6821 case $arg in
6822 [\\/]* | [A-Za-z]:[\\/]*) ;;
6823 *)
6824 func_fatal_error "only absolute run-paths are allowed"
6825 ;;
6826 esac
6827 if test rpath = "$prev"; then
6828 case "$rpath " in
6829 *" $arg "*) ;;
6830 *) func_append rpath " $arg" ;;
6831 esac
6832 else
6833 case "$xrpath " in
6834 *" $arg "*) ;;
6835 *) func_append xrpath " $arg" ;;
6836 esac
6837 fi
6838 prev=
6839 continue
6840 ;;
6841 shrext)
6842 shrext_cmds=$arg
6843 prev=
6844 continue
6845 ;;
6846 weak)
6847 func_append weak_libs " $arg"
6848 prev=
6849 continue
6850 ;;
6851 xcclinker)
6852 func_append linker_flags " $qarg"
6853 func_append compiler_flags " $qarg"
6854 prev=
6855 func_append compile_command " $qarg"
6856 func_append finalize_command " $qarg"
6857 continue
6858 ;;
6859 xcompiler)
6860 func_append compiler_flags " $qarg"
6861 prev=
6862 func_append compile_command " $qarg"
6863 func_append finalize_command " $qarg"
6864 continue
6865 ;;
6866 xlinker)
6867 func_append linker_flags " $qarg"
6868 func_append compiler_flags " $wl$qarg"
6869 prev=
6870 func_append compile_command " $wl$qarg"
6871 func_append finalize_command " $wl$qarg"
6872 continue
6873 ;;
6874 *)
6875 eval "$prev=\"\$arg\""
6876 prev=
6877 continue
6878 ;;
6879 esac
6880 fi # test -n "$prev"
6881
6882 prevarg=$arg
6883
6884 case $arg in
6885 -all-static)
6886 if test -n "$link_static_flag"; then
6887 # See comment for -static flag below, for more details.
6888 func_append compile_command " $link_static_flag"
6889 func_append finalize_command " $link_static_flag"
6890 fi
6891 continue
6892 ;;
6893
6894 -allow-undefined)
6895 # FIXME: remove this flag sometime in the future.
6896 func_fatal_error "'-allow-undefined' must not be used because it is the default"
6897 ;;
6898
6899 -avoid-version)
6900 avoid_version=yes
6901 continue
6902 ;;
6903
6904 -bindir)
6905 prev=bindir
6906 continue
6907 ;;
6908
6909 -dlopen)
6910 prev=dlfiles
6911 continue
6912 ;;
6913
6914 -dlpreopen)
6915 prev=dlprefiles
6916 continue
6917 ;;
6918
6919 -export-dynamic)
6920 export_dynamic=yes
6921 continue
6922 ;;
6923
6924 -export-symbols | -export-symbols-regex)
6925 if test -n "$export_symbols" || test -n "$export_symbols_regex"; then
6926 func_fatal_error "more than one -exported-symbols argument is not allowed"
6927 fi
6928 if test X-export-symbols = "X$arg"; then
6929 prev=expsyms
6930 else
6931 prev=expsyms_regex
6932 fi
6933 continue
6934 ;;
6935
6936 -framework)
6937 prev=framework
6938 continue
6939 ;;
6940
6941 -inst-prefix-dir)
6942 prev=inst_prefix
6943 continue
6944 ;;
6945
6946 # The native IRIX linker understands -LANG:*, -LIST:* and -LNO:*
6947 # so, if we see these flags be careful not to treat them like -L
6948 -L[A-Z][A-Z]*:*)
6949 case $with_gcc/$host in
6950 no/*-*-irix* | /*-*-irix*)
6951 func_append compile_command " $arg"
6952 func_append finalize_command " $arg"
6953 ;;
6954 esac
6955 continue
6956 ;;
6957
6958 -L*)
6959 func_stripname "-L" '' "$arg"
6960 if test -z "$func_stripname_result"; then
6961 if test "$#" -gt 0; then
6962 func_fatal_error "require no space between '-L' and '$1'"
6963 else
6964 func_fatal_error "need path for '-L' option"
6965 fi
6966 fi
6967 func_resolve_sysroot "$func_stripname_result"
6968 dir=$func_resolve_sysroot_result
6969 # We need an absolute path.
6970 case $dir in
6971 [\\/]* | [A-Za-z]:[\\/]*) ;;
6972 *)
6973 absdir=`cd "$dir" && pwd`
6974 test -z "$absdir" && \
6975 func_fatal_error "cannot determine absolute directory name of '$dir'"
6976 dir=$absdir
6977 ;;
6978 esac
6979 case "$deplibs " in
6980 *" -L$dir "* | *" $arg "*)
6981 # Will only happen for absolute or sysroot arguments
6982 ;;
6983 *)
6984 # Preserve sysroot, but never include relative directories
6985 case $dir in
6986 [\\/]* | [A-Za-z]:[\\/]* | =*) func_append deplibs " $arg" ;;
6987 *) func_append deplibs " -L$dir" ;;
6988 esac
6989 func_append lib_search_path " $dir"
6990 ;;
6991 esac
6992 case $host in
6993 *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*)
6994 testbindir=`$ECHO "$dir" | $SED 's*/lib$*/bin*'`
6995 case :$dllsearchpath: in
6996 *":$dir:"*) ;;
6997 ::) dllsearchpath=$dir;;
6998 *) func_append dllsearchpath ":$dir";;
6999 esac
7000 case :$dllsearchpath: in
7001 *":$testbindir:"*) ;;
7002 ::) dllsearchpath=$testbindir;;
7003 *) func_append dllsearchpath ":$testbindir";;
7004 esac
7005 ;;
7006 esac
7007 continue
7008 ;;
7009
7010 -l*)
7011 if test X-lc = "X$arg" || test X-lm = "X$arg"; then
7012 case $host in
7013 *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-beos* | *-cegcc* | *-*-haiku*)
7014 # These systems don't actually have a C or math library (as such)
7015 continue
7016 ;;
7017 *-*-os2*)
7018 # These systems don't actually have a C library (as such)
7019 test X-lc = "X$arg" && continue
7020 ;;
7021 *-*-openbsd* | *-*-freebsd* | *-*-dragonfly* | *-*-bitrig*)
7022 # Do not include libc due to us having libc/libc_r.
7023 test X-lc = "X$arg" && continue
7024 ;;
7025 *-*-rhapsody* | *-*-darwin1.[012])
7026 # Rhapsody C and math libraries are in the System framework
7027 func_append deplibs " System.ltframework"
7028 continue
7029 ;;
7030 *-*-sco3.2v5* | *-*-sco5v6*)
7031 # Causes problems with __ctype
7032 test X-lc = "X$arg" && continue
7033 ;;
7034 *-*-sysv4.2uw2* | *-*-sysv5* | *-*-unixware* | *-*-OpenUNIX*)
7035 # Compiler inserts libc in the correct place for threads to work
7036 test X-lc = "X$arg" && continue
7037 ;;
7038 esac
7039 elif test X-lc_r = "X$arg"; then
7040 case $host in
7041 *-*-openbsd* | *-*-freebsd* | *-*-dragonfly* | *-*-bitrig*)
7042 # Do not include libc_r directly, use -pthread flag.
7043 continue
7044 ;;
7045 esac
7046 fi
7047 func_append deplibs " $arg"
7048 continue
7049 ;;
7050
7051 -mllvm)
7052 prev=mllvm
7053 continue
7054 ;;
7055
7056 -module)
7057 module=yes
7058 continue
7059 ;;
7060
7061 # Tru64 UNIX uses -model [arg] to determine the layout of C++
7062 # classes, name mangling, and exception handling.
7063 # Darwin uses the -arch flag to determine output architecture.
7064 -model|-arch|-isysroot|--sysroot)
7065 func_append compiler_flags " $arg"
7066 func_append compile_command " $arg"
7067 func_append finalize_command " $arg"
7068 prev=xcompiler
7069 continue
7070 ;;
7071
7072 -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe \
7073 |-threads|-fopenmp|-openmp|-mp|-xopenmp|-omp|-qsmp=*)
7074 func_append compiler_flags " $arg"
7075 func_append compile_command " $arg"
7076 func_append finalize_command " $arg"
7077 case "$new_inherited_linker_flags " in
7078 *" $arg "*) ;;
7079 * ) func_append new_inherited_linker_flags " $arg" ;;
7080 esac
7081 continue
7082 ;;
7083
7084 -multi_module)
7085 single_module=$wl-multi_module
7086 continue
7087 ;;
7088
7089 -no-fast-install)
7090 fast_install=no
7091 continue
7092 ;;
7093
7094 -no-install)
7095 case $host in
7096 *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-darwin* | *-cegcc*)
7097 # The PATH hackery in wrapper scripts is required on Windows
7098 # and Darwin in order for the loader to find any dlls it needs.
7099 func_warning "'-no-install' is ignored for $host"
7100 func_warning "assuming '-no-fast-install' instead"
7101 fast_install=no
7102 ;;
7103 *) no_install=yes ;;
7104 esac
7105 continue
7106 ;;
7107
7108 -no-undefined)
7109 allow_undefined=no
7110 continue
7111 ;;
7112
7113 -objectlist)
7114 prev=objectlist
7115 continue
7116 ;;
7117
7118 -os2dllname)
7119 prev=os2dllname
7120 continue
7121 ;;
7122
7123 -o) prev=output ;;
7124
7125 -precious-files-regex)
7126 prev=precious_regex
7127 continue
7128 ;;
7129
7130 -release)
7131 prev=release
7132 continue
7133 ;;
7134
7135 -rpath)
7136 prev=rpath
7137 continue
7138 ;;
7139
7140 -R)
7141 prev=xrpath
7142 continue
7143 ;;
7144
7145 -R*)
7146 func_stripname '-R' '' "$arg"
7147 dir=$func_stripname_result
7148 # We need an absolute path.
7149 case $dir in
7150 [\\/]* | [A-Za-z]:[\\/]*) ;;
7151 =*)
7152 func_stripname '=' '' "$dir"
7153 dir=$lt_sysroot$func_stripname_result
7154 ;;
7155 *)
7156 func_fatal_error "only absolute run-paths are allowed"
7157 ;;
7158 esac
7159 case "$xrpath " in
7160 *" $dir "*) ;;
7161 *) func_append xrpath " $dir" ;;
7162 esac
7163 continue
7164 ;;
7165
7166 -shared)
7167 # The effects of -shared are defined in a previous loop.
7168 continue
7169 ;;
7170
7171 -shrext)
7172 prev=shrext
7173 continue
7174 ;;
7175
7176 -static | -static-libtool-libs)
7177 # The effects of -static are defined in a previous loop.
7178 # We used to do the same as -all-static on platforms that
7179 # didn't have a PIC flag, but the assumption that the effects
7180 # would be equivalent was wrong. It would break on at least
7181 # Digital Unix and AIX.
7182 continue
7183 ;;
7184
7185 -thread-safe)
7186 thread_safe=yes
7187 continue
7188 ;;
7189
7190 -version-info)
7191 prev=vinfo
7192 continue
7193 ;;
7194
7195 -version-number)
7196 prev=vinfo
7197 vinfo_number=yes
7198 continue
7199 ;;
7200
7201 -weak)
7202 prev=weak
7203 continue
7204 ;;
7205
7206 -Wc,*)
7207 func_stripname '-Wc,' '' "$arg"
7208 args=$func_stripname_result
7209 arg=
7210 save_ifs=$IFS; IFS=,
7211 for flag in $args; do
7212 IFS=$save_ifs
7213 func_quote_for_eval "$flag"
7214 func_append arg " $func_quote_for_eval_result"
7215 func_append compiler_flags " $func_quote_for_eval_result"
7216 done
7217 IFS=$save_ifs
7218 func_stripname ' ' '' "$arg"
7219 arg=$func_stripname_result
7220 ;;
7221
7222 -Wl,*)
7223 func_stripname '-Wl,' '' "$arg"
7224 args=$func_stripname_result
7225 arg=
7226 save_ifs=$IFS; IFS=,
7227 for flag in $args; do
7228 IFS=$save_ifs
7229 func_quote_for_eval "$flag"
7230 func_append arg " $wl$func_quote_for_eval_result"
7231 func_append compiler_flags " $wl$func_quote_for_eval_result"
7232 func_append linker_flags " $func_quote_for_eval_result"
7233 done
7234 IFS=$save_ifs
7235 func_stripname ' ' '' "$arg"
7236 arg=$func_stripname_result
7237 ;;
7238
7239 -Xcompiler)
7240 prev=xcompiler
7241 continue
7242 ;;
7243
7244 -Xlinker)
7245 prev=xlinker
7246 continue
7247 ;;
7248
7249 -XCClinker)
7250 prev=xcclinker
7251 continue
7252 ;;
7253
7254 # -msg_* for osf cc
7255 -msg_*)
7256 func_quote_for_eval "$arg"
7257 arg=$func_quote_for_eval_result
7258 ;;
7259
7260 # Flags to be passed through unchanged, with rationale:
7261 # -64, -mips[0-9] enable 64-bit mode for the SGI compiler
7262 # -r[0-9][0-9]* specify processor for the SGI compiler
7263 # -xarch=*, -xtarget=* enable 64-bit mode for the Sun compiler
7264 # +DA*, +DD* enable 64-bit mode for the HP compiler
7265 # -q* compiler args for the IBM compiler
7266 # -m*, -t[45]*, -txscale* architecture-specific flags for GCC
7267 # -F/path path to uninstalled frameworks, gcc on darwin
7268 # -p, -pg, --coverage, -fprofile-* profiling flags for GCC
7269 # -fstack-protector* stack protector flags for GCC
7270 # @file GCC response files
7271 # -tp=* Portland pgcc target processor selection
7272 # --sysroot=* for sysroot support
7273 # -O*, -g*, -flto*, -fwhopr*, -fuse-linker-plugin GCC link-time optimization
7274 # -specs=* GCC specs files
7275 # -stdlib=* select c++ std lib with clang
7276 # -fsanitize=* Clang/GCC memory and address sanitizer
7277 -64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*| \
7278 -t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*|-tp=*|--sysroot=*| \
7279 -O*|-g*|-flto*|-fwhopr*|-fuse-linker-plugin|-fstack-protector*|-stdlib=*| \
7280 -specs=*|-fsanitize=*)
7281 func_quote_for_eval "$arg"
7282 arg=$func_quote_for_eval_result
7283 func_append compile_command " $arg"
7284 func_append finalize_command " $arg"
7285 func_append compiler_flags " $arg"
7286 continue
7287 ;;
7288
7289 -Z*)
7290 if test os2 = "`expr $host : '.*\(os2\)'`"; then
7291 # OS/2 uses -Zxxx to specify OS/2-specific options
7292 compiler_flags="$compiler_flags $arg"
7293 func_append compile_command " $arg"
7294 func_append finalize_command " $arg"
7295 case $arg in
7296 -Zlinker | -Zstack)
7297 prev=xcompiler
7298 ;;
7299 esac
7300 continue
7301 else
7302 # Otherwise treat like 'Some other compiler flag' below
7303 func_quote_for_eval "$arg"
7304 arg=$func_quote_for_eval_result
7305 fi
7306 ;;
7307
7308 # Some other compiler flag.
7309 -* | +*)
7310 func_quote_for_eval "$arg"
7311 arg=$func_quote_for_eval_result
7312 ;;
7313
7314 *.$objext)
7315 # A standard object.
7316 func_append objs " $arg"
7317 ;;
7318
7319 *.lo)
7320 # A libtool-controlled object.
7321
7322 # Check to see that this really is a libtool object.
7323 if func_lalib_unsafe_p "$arg"; then
7324 pic_object=
7325 non_pic_object=
7326
7327 # Read the .lo file
7328 func_source "$arg"
7329
7330 if test -z "$pic_object" ||
7331 test -z "$non_pic_object" ||
7332 test none = "$pic_object" &&
7333 test none = "$non_pic_object"; then
7334 func_fatal_error "cannot find name of object for '$arg'"
7335 fi
7336
7337 # Extract subdirectory from the argument.
7338 func_dirname "$arg" "/" ""
7339 xdir=$func_dirname_result
7340
7341 test none = "$pic_object" || {
7342 # Prepend the subdirectory the object is found in.
7343 pic_object=$xdir$pic_object
7344
7345 if test dlfiles = "$prev"; then
7346 if test yes = "$build_libtool_libs" && test yes = "$dlopen_support"; then
7347 func_append dlfiles " $pic_object"
7348 prev=
7349 continue
7350 else
7351 # If libtool objects are unsupported, then we need to preload.
7352 prev=dlprefiles
7353 fi
7354 fi
7355
7356 # CHECK ME: I think I busted this. -Ossama
7357 if test dlprefiles = "$prev"; then
7358 # Preload the old-style object.
7359 func_append dlprefiles " $pic_object"
7360 prev=
7361 fi
7362
7363 # A PIC object.
7364 func_append libobjs " $pic_object"
7365 arg=$pic_object
7366 }
7367
7368 # Non-PIC object.
7369 if test none != "$non_pic_object"; then
7370 # Prepend the subdirectory the object is found in.
7371 non_pic_object=$xdir$non_pic_object
7372
7373 # A standard non-PIC object
7374 func_append non_pic_objects " $non_pic_object"
7375 if test -z "$pic_object" || test none = "$pic_object"; then
7376 arg=$non_pic_object
7377 fi
7378 else
7379 # If the PIC object exists, use it instead.
7380 # $xdir was prepended to $pic_object above.
7381 non_pic_object=$pic_object
7382 func_append non_pic_objects " $non_pic_object"
7383 fi
7384 else
7385 # Only an error if not doing a dry-run.
7386 if $opt_dry_run; then
7387 # Extract subdirectory from the argument.
7388 func_dirname "$arg" "/" ""
7389 xdir=$func_dirname_result
7390
7391 func_lo2o "$arg"
7392 pic_object=$xdir$objdir/$func_lo2o_result
7393 non_pic_object=$xdir$func_lo2o_result
7394 func_append libobjs " $pic_object"
7395 func_append non_pic_objects " $non_pic_object"
7396 else
7397 func_fatal_error "'$arg' is not a valid libtool object"
7398 fi
7399 fi
7400 ;;
7401
7402 *.$libext)
7403 # An archive.
7404 func_append deplibs " $arg"
7405 func_append old_deplibs " $arg"
7406 continue
7407 ;;
7408
7409 *.la)
7410 # A libtool-controlled library.
7411
7412 func_resolve_sysroot "$arg"
7413 if test dlfiles = "$prev"; then
7414 # This library was specified with -dlopen.
7415 func_append dlfiles " $func_resolve_sysroot_result"
7416 prev=
7417 elif test dlprefiles = "$prev"; then
7418 # The library was specified with -dlpreopen.
7419 func_append dlprefiles " $func_resolve_sysroot_result"
7420 prev=
7421 else
7422 func_append deplibs " $func_resolve_sysroot_result"
7423 fi
7424 continue
7425 ;;
7426
7427 # Some other compiler argument.
7428 *)
7429 # Unknown arguments in both finalize_command and compile_command need
7430 # to be aesthetically quoted because they are evaled later.
7431 func_quote_for_eval "$arg"
7432 arg=$func_quote_for_eval_result
7433 ;;
7434 esac # arg
7435
7436 # Now actually substitute the argument into the commands.
7437 if test -n "$arg"; then
7438 func_append compile_command " $arg"
7439 func_append finalize_command " $arg"
7440 fi
7441 done # argument parsing loop
7442
7443 test -n "$prev" && \
7444 func_fatal_help "the '$prevarg' option requires an argument"
7445
7446 if test yes = "$export_dynamic" && test -n "$export_dynamic_flag_spec"; then
7447 eval arg=\"$export_dynamic_flag_spec\"
7448 func_append compile_command " $arg"
7449 func_append finalize_command " $arg"
7450 fi
7451
7452 oldlibs=
7453 # calculate the name of the file, without its directory
7454 func_basename "$output"
7455 outputname=$func_basename_result
7456 libobjs_save=$libobjs
7457
7458 if test -n "$shlibpath_var"; then
7459 # get the directories listed in $shlibpath_var
7460 eval shlib_search_path=\`\$ECHO \"\$$shlibpath_var\" \| \$SED \'s/:/ /g\'\`
7461 else
7462 shlib_search_path=
7463 fi
7464 eval sys_lib_search_path=\"$sys_lib_search_path_spec\"
7465 eval sys_lib_dlsearch_path=\"$sys_lib_dlsearch_path_spec\"
7466
7467 # Definition is injected by LT_CONFIG during libtool generation.
7468 func_munge_path_list sys_lib_dlsearch_path "$LT_SYS_LIBRARY_PATH"
7469
7470 func_dirname "$output" "/" ""
7471 output_objdir=$func_dirname_result$objdir
7472 func_to_tool_file "$output_objdir/"
7473 tool_output_objdir=$func_to_tool_file_result
7474 # Create the object directory.
7475 func_mkdir_p "$output_objdir"
7476
7477 # Determine the type of output
7478 case $output in
7479 "")
7480 func_fatal_help "you must specify an output file"
7481 ;;
7482 *.$libext) linkmode=oldlib ;;
7483 *.lo | *.$objext) linkmode=obj ;;
7484 *.la) linkmode=lib ;;
7485 *) linkmode=prog ;; # Anything else should be a program.
7486 esac
7487
7488 specialdeplibs=
7489
7490 libs=
7491 # Find all interdependent deplibs by searching for libraries
7492 # that are linked more than once (e.g. -la -lb -la)
7493 for deplib in $deplibs; do
7494 if $opt_preserve_dup_deps; then
7495 case "$libs " in
7496 *" $deplib "*) func_append specialdeplibs " $deplib" ;;
7497 esac
7498 fi
7499 func_append libs " $deplib"
7500 done
7501
7502 if test lib = "$linkmode"; then
7503 libs="$predeps $libs $compiler_lib_search_path $postdeps"
7504
7505 # Compute libraries that are listed more than once in $predeps
7506 # $postdeps and mark them as special (i.e., whose duplicates are
7507 # not to be eliminated).
7508 pre_post_deps=
7509 if $opt_duplicate_compiler_generated_deps; then
7510 for pre_post_dep in $predeps $postdeps; do
7511 case "$pre_post_deps " in
7512 *" $pre_post_dep "*) func_append specialdeplibs " $pre_post_deps" ;;
7513 esac
7514 func_append pre_post_deps " $pre_post_dep"
7515 done
7516 fi
7517 pre_post_deps=
7518 fi
7519
7520 deplibs=
7521 newdependency_libs=
7522 newlib_search_path=
7523 need_relink=no # whether we're linking any uninstalled libtool libraries
7524 notinst_deplibs= # not-installed libtool libraries
7525 notinst_path= # paths that contain not-installed libtool libraries
7526
7527 case $linkmode in
7528 lib)
7529 passes="conv dlpreopen link"
7530 for file in $dlfiles $dlprefiles; do
7531 case $file in
7532 *.la) ;;
7533 *)
7534 func_fatal_help "libraries can '-dlopen' only libtool libraries: $file"
7535 ;;
7536 esac
7537 done
7538 ;;
7539 prog)
7540 compile_deplibs=
7541 finalize_deplibs=
7542 alldeplibs=false
7543 newdlfiles=
7544 newdlprefiles=
7545 passes="conv scan dlopen dlpreopen link"
7546 ;;
7547 *) passes="conv"
7548 ;;
7549 esac
7550
7551 for pass in $passes; do
7552 # The preopen pass in lib mode reverses $deplibs; put it back here
7553 # so that -L comes before libs that need it for instance...
7554 if test lib,link = "$linkmode,$pass"; then
7555 ## FIXME: Find the place where the list is rebuilt in the wrong
7556 ## order, and fix it there properly
7557 tmp_deplibs=
7558 for deplib in $deplibs; do
7559 tmp_deplibs="$deplib $tmp_deplibs"
7560 done
7561 deplibs=$tmp_deplibs
7562 fi
7563
7564 if test lib,link = "$linkmode,$pass" ||
7565 test prog,scan = "$linkmode,$pass"; then
7566 libs=$deplibs
7567 deplibs=
7568 fi
7569 if test prog = "$linkmode"; then
7570 case $pass in
7571 dlopen) libs=$dlfiles ;;
7572 dlpreopen) libs=$dlprefiles ;;
7573 link)
7574 libs="$deplibs %DEPLIBS%"
7575 test "X$link_all_deplibs" != Xno && libs="$libs $dependency_libs"
7576 ;;
7577 esac
7578 fi
7579 if test lib,dlpreopen = "$linkmode,$pass"; then
7580 # Collect and forward deplibs of preopened libtool libs
7581 for lib in $dlprefiles; do
7582 # Ignore non-libtool-libs
7583 dependency_libs=
7584 func_resolve_sysroot "$lib"
7585 case $lib in
7586 *.la) func_source "$func_resolve_sysroot_result" ;;
7587 esac
7588
7589 # Collect preopened libtool deplibs, except any this library
7590 # has declared as weak libs
7591 for deplib in $dependency_libs; do
7592 func_basename "$deplib"
7593 deplib_base=$func_basename_result
7594 case " $weak_libs " in
7595 *" $deplib_base "*) ;;
7596 *) func_append deplibs " $deplib" ;;
7597 esac
7598 done
7599 done
7600 libs=$dlprefiles
7601 fi
7602 if test dlopen = "$pass"; then
7603 # Collect dlpreopened libraries
7604 save_deplibs=$deplibs
7605 deplibs=
7606 fi
7607
7608 for deplib in $libs; do
7609 lib=
7610 found=false
7611 case $deplib in
7612 -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe \
7613 |-threads|-fopenmp|-openmp|-mp|-xopenmp|-omp|-qsmp=*)
7614 if test prog,link = "$linkmode,$pass"; then
7615 compile_deplibs="$deplib $compile_deplibs"
7616 finalize_deplibs="$deplib $finalize_deplibs"
7617 else
7618 func_append compiler_flags " $deplib"
7619 if test lib = "$linkmode"; then
7620 case "$new_inherited_linker_flags " in
7621 *" $deplib "*) ;;
7622 * ) func_append new_inherited_linker_flags " $deplib" ;;
7623 esac
7624 fi
7625 fi
7626 continue
7627 ;;
7628 -l*)
7629 if test lib != "$linkmode" && test prog != "$linkmode"; then
7630 func_warning "'-l' is ignored for archives/objects"
7631 continue
7632 fi
7633 func_stripname '-l' '' "$deplib"
7634 name=$func_stripname_result
7635 if test lib = "$linkmode"; then
7636 searchdirs="$newlib_search_path $lib_search_path $compiler_lib_search_dirs $sys_lib_search_path $shlib_search_path"
7637 else
7638 searchdirs="$newlib_search_path $lib_search_path $sys_lib_search_path $shlib_search_path"
7639 fi
7640 for searchdir in $searchdirs; do
7641 for search_ext in .la $std_shrext .so .a; do
7642 # Search the libtool library
7643 lib=$searchdir/lib$name$search_ext
7644 if test -f "$lib"; then
7645 if test .la = "$search_ext"; then
7646 found=:
7647 else
7648 found=false
7649 fi
7650 break 2
7651 fi
7652 done
7653 done
7654 if $found; then
7655 # deplib is a libtool library
7656 # If $allow_libtool_libs_with_static_runtimes && $deplib is a stdlib,
7657 # We need to do some special things here, and not later.
7658 if test yes = "$allow_libtool_libs_with_static_runtimes"; then
7659 case " $predeps $postdeps " in
7660 *" $deplib "*)
7661 if func_lalib_p "$lib"; then
7662 library_names=
7663 old_library=
7664 func_source "$lib"
7665 for l in $old_library $library_names; do
7666 ll=$l
7667 done
7668 if test "X$ll" = "X$old_library"; then # only static version available
7669 found=false
7670 func_dirname "$lib" "" "."
7671 ladir=$func_dirname_result
7672 lib=$ladir/$old_library
7673 if test prog,link = "$linkmode,$pass"; then
7674 compile_deplibs="$deplib $compile_deplibs"
7675 finalize_deplibs="$deplib $finalize_deplibs"
7676 else
7677 deplibs="$deplib $deplibs"
7678 test lib = "$linkmode" && newdependency_libs="$deplib $newdependency_libs"
7679 fi
7680 continue
7681 fi
7682 fi
7683 ;;
7684 *) ;;
7685 esac
7686 fi
7687 else
7688 # deplib doesn't seem to be a libtool library
7689 if test prog,link = "$linkmode,$pass"; then
7690 compile_deplibs="$deplib $compile_deplibs"
7691 finalize_deplibs="$deplib $finalize_deplibs"
7692 else
7693 deplibs="$deplib $deplibs"
7694 test lib = "$linkmode" && newdependency_libs="$deplib $newdependency_libs"
7695 fi
7696 continue
7697 fi
7698 ;; # -l
7699 *.ltframework)
7700 if test prog,link = "$linkmode,$pass"; then
7701 compile_deplibs="$deplib $compile_deplibs"
7702 finalize_deplibs="$deplib $finalize_deplibs"
7703 else
7704 deplibs="$deplib $deplibs"
7705 if test lib = "$linkmode"; then
7706 case "$new_inherited_linker_flags " in
7707 *" $deplib "*) ;;
7708 * ) func_append new_inherited_linker_flags " $deplib" ;;
7709 esac
7710 fi
7711 fi
7712 continue
7713 ;;
7714 -L*)
7715 case $linkmode in
7716 lib)
7717 deplibs="$deplib $deplibs"
7718 test conv = "$pass" && continue
7719 newdependency_libs="$deplib $newdependency_libs"
7720 func_stripname '-L' '' "$deplib"
7721 func_resolve_sysroot "$func_stripname_result"
7722 func_append newlib_search_path " $func_resolve_sysroot_result"
7723 ;;
7724 prog)
7725 if test conv = "$pass"; then
7726 deplibs="$deplib $deplibs"
7727 continue
7728 fi
7729 if test scan = "$pass"; then
7730 deplibs="$deplib $deplibs"
7731 else
7732 compile_deplibs="$deplib $compile_deplibs"
7733 finalize_deplibs="$deplib $finalize_deplibs"
7734 fi
7735 func_stripname '-L' '' "$deplib"
7736 func_resolve_sysroot "$func_stripname_result"
7737 func_append newlib_search_path " $func_resolve_sysroot_result"
7738 ;;
7739 *)
7740 func_warning "'-L' is ignored for archives/objects"
7741 ;;
7742 esac # linkmode
7743 continue
7744 ;; # -L
7745 -R*)
7746 if test link = "$pass"; then
7747 func_stripname '-R' '' "$deplib"
7748 func_resolve_sysroot "$func_stripname_result"
7749 dir=$func_resolve_sysroot_result
7750 # Make sure the xrpath contains only unique directories.
7751 case "$xrpath " in
7752 *" $dir "*) ;;
7753 *) func_append xrpath " $dir" ;;
7754 esac
7755 fi
7756 deplibs="$deplib $deplibs"
7757 continue
7758 ;;
7759 *.la)
7760 func_resolve_sysroot "$deplib"
7761 lib=$func_resolve_sysroot_result
7762 ;;
7763 *.$libext)
7764 if test conv = "$pass"; then
7765 deplibs="$deplib $deplibs"
7766 continue
7767 fi
7768 case $linkmode in
7769 lib)
7770 # Linking convenience modules into shared libraries is allowed,
7771 # but linking other static libraries is non-portable.
7772 case " $dlpreconveniencelibs " in
7773 *" $deplib "*) ;;
7774 *)
7775 valid_a_lib=false
7776 case $deplibs_check_method in
7777 match_pattern*)
7778 set dummy $deplibs_check_method; shift
7779 match_pattern_regex=`expr "$deplibs_check_method" : "$1 \(.*\)"`
7780 if eval "\$ECHO \"$deplib\"" 2>/dev/null | $SED 10q \
7781 | $EGREP "$match_pattern_regex" > /dev/null; then
7782 valid_a_lib=:
7783 fi
7784 ;;
7785 pass_all)
7786 valid_a_lib=:
7787 ;;
7788 esac
7789 if $valid_a_lib; then
7790 echo
7791 $ECHO "*** Warning: Linking the shared library $output against the"
7792 $ECHO "*** static library $deplib is not portable!"
7793 deplibs="$deplib $deplibs"
7794 else
7795 echo
7796 $ECHO "*** Warning: Trying to link with static lib archive $deplib."
7797 echo "*** I have the capability to make that library automatically link in when"
7798 echo "*** you link to this library. But I can only do this if you have a"
7799 echo "*** shared version of the library, which you do not appear to have"
7800 echo "*** because the file extensions .$libext of this argument makes me believe"
7801 echo "*** that it is just a static archive that I should not use here."
7802 fi
7803 ;;
7804 esac
7805 continue
7806 ;;
7807 prog)
7808 if test link != "$pass"; then
7809 deplibs="$deplib $deplibs"
7810 else
7811 compile_deplibs="$deplib $compile_deplibs"
7812 finalize_deplibs="$deplib $finalize_deplibs"
7813 fi
7814 continue
7815 ;;
7816 esac # linkmode
7817 ;; # *.$libext
7818 *.lo | *.$objext)
7819 if test conv = "$pass"; then
7820 deplibs="$deplib $deplibs"
7821 elif test prog = "$linkmode"; then
7822 if test dlpreopen = "$pass" || test yes != "$dlopen_support" || test no = "$build_libtool_libs"; then
7823 # If there is no dlopen support or we're linking statically,
7824 # we need to preload.
7825 func_append newdlprefiles " $deplib"
7826 compile_deplibs="$deplib $compile_deplibs"
7827 finalize_deplibs="$deplib $finalize_deplibs"
7828 else
7829 func_append newdlfiles " $deplib"
7830 fi
7831 fi
7832 continue
7833 ;;
7834 %DEPLIBS%)
7835 alldeplibs=:
7836 continue
7837 ;;
7838 esac # case $deplib
7839
7840 $found || test -f "$lib" \
7841 || func_fatal_error "cannot find the library '$lib' or unhandled argument '$deplib'"
7842
7843 # Check to see that this really is a libtool archive.
7844 func_lalib_unsafe_p "$lib" \
7845 || func_fatal_error "'$lib' is not a valid libtool archive"
7846
7847 func_dirname "$lib" "" "."
7848 ladir=$func_dirname_result
7849
7850 dlname=
7851 dlopen=
7852 dlpreopen=
7853 libdir=
7854 library_names=
7855 old_library=
7856 inherited_linker_flags=
7857 # If the library was installed with an old release of libtool,
7858 # it will not redefine variables installed, or shouldnotlink
7859 installed=yes
7860 shouldnotlink=no
7861 avoidtemprpath=
7862
7863
7864 # Read the .la file
7865 func_source "$lib"
7866
7867 # Convert "-framework foo" to "foo.ltframework"
7868 if test -n "$inherited_linker_flags"; then
7869 tmp_inherited_linker_flags=`$ECHO "$inherited_linker_flags" | $SED 's/-framework \([^ $]*\)/\1.ltframework/g'`
7870 for tmp_inherited_linker_flag in $tmp_inherited_linker_flags; do
7871 case " $new_inherited_linker_flags " in
7872 *" $tmp_inherited_linker_flag "*) ;;
7873 *) func_append new_inherited_linker_flags " $tmp_inherited_linker_flag";;
7874 esac
7875 done
7876 fi
7877 dependency_libs=`$ECHO " $dependency_libs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'`
7878 if test lib,link = "$linkmode,$pass" ||
7879 test prog,scan = "$linkmode,$pass" ||
7880 { test prog != "$linkmode" && test lib != "$linkmode"; }; then
7881 test -n "$dlopen" && func_append dlfiles " $dlopen"
7882 test -n "$dlpreopen" && func_append dlprefiles " $dlpreopen"
7883 fi
7884
7885 if test conv = "$pass"; then
7886 # Only check for convenience libraries
7887 deplibs="$lib $deplibs"
7888 if test -z "$libdir"; then
7889 if test -z "$old_library"; then
7890 func_fatal_error "cannot find name of link library for '$lib'"
7891 fi
7892 # It is a libtool convenience library, so add in its objects.
7893 func_append convenience " $ladir/$objdir/$old_library"
7894 func_append old_convenience " $ladir/$objdir/$old_library"
7895 tmp_libs=
7896 for deplib in $dependency_libs; do
7897 deplibs="$deplib $deplibs"
7898 if $opt_preserve_dup_deps; then
7899 case "$tmp_libs " in
7900 *" $deplib "*) func_append specialdeplibs " $deplib" ;;
7901 esac
7902 fi
7903 func_append tmp_libs " $deplib"
7904 done
7905 elif test prog != "$linkmode" && test lib != "$linkmode"; then
7906 func_fatal_error "'$lib' is not a convenience library"
7907 fi
7908 continue
7909 fi # $pass = conv
7910
7911
7912 # Get the name of the library we link against.
7913 linklib=
7914 if test -n "$old_library" &&
7915 { test yes = "$prefer_static_libs" ||
7916 test built,no = "$prefer_static_libs,$installed"; }; then
7917 linklib=$old_library
7918 else
7919 for l in $old_library $library_names; do
7920 linklib=$l
7921 done
7922 fi
7923 if test -z "$linklib"; then
7924 func_fatal_error "cannot find name of link library for '$lib'"
7925 fi
7926
7927 # This library was specified with -dlopen.
7928 if test dlopen = "$pass"; then
7929 test -z "$libdir" \
7930 && func_fatal_error "cannot -dlopen a convenience library: '$lib'"
7931 if test -z "$dlname" ||
7932 test yes != "$dlopen_support" ||
7933 test no = "$build_libtool_libs"
7934 then
7935 # If there is no dlname, no dlopen support or we're linking
7936 # statically, we need to preload. We also need to preload any
7937 # dependent libraries so libltdl's deplib preloader doesn't
7938 # bomb out in the load deplibs phase.
7939 func_append dlprefiles " $lib $dependency_libs"
7940 else
7941 func_append newdlfiles " $lib"
7942 fi
7943 continue
7944 fi # $pass = dlopen
7945
7946 # We need an absolute path.
7947 case $ladir in
7948 [\\/]* | [A-Za-z]:[\\/]*) abs_ladir=$ladir ;;
7949 *)
7950 abs_ladir=`cd "$ladir" && pwd`
7951 if test -z "$abs_ladir"; then
7952 func_warning "cannot determine absolute directory name of '$ladir'"
7953 func_warning "passing it literally to the linker, although it might fail"
7954 abs_ladir=$ladir
7955 fi
7956 ;;
7957 esac
7958 func_basename "$lib"
7959 laname=$func_basename_result
7960
7961 # Find the relevant object directory and library name.
7962 if test yes = "$installed"; then
7963 if test ! -f "$lt_sysroot$libdir/$linklib" && test -f "$abs_ladir/$linklib"; then
7964 func_warning "library '$lib' was moved."
7965 dir=$ladir
7966 absdir=$abs_ladir
7967 libdir=$abs_ladir
7968 else
7969 dir=$lt_sysroot$libdir
7970 absdir=$lt_sysroot$libdir
7971 fi
7972 test yes = "$hardcode_automatic" && avoidtemprpath=yes
7973 else
7974 if test ! -f "$ladir/$objdir/$linklib" && test -f "$abs_ladir/$linklib"; then
7975 dir=$ladir
7976 absdir=$abs_ladir
7977 # Remove this search path later
7978 func_append notinst_path " $abs_ladir"
7979 else
7980 dir=$ladir/$objdir
7981 absdir=$abs_ladir/$objdir
7982 # Remove this search path later
7983 func_append notinst_path " $abs_ladir"
7984 fi
7985 fi # $installed = yes
7986 func_stripname 'lib' '.la' "$laname"
7987 name=$func_stripname_result
7988
7989 # This library was specified with -dlpreopen.
7990 if test dlpreopen = "$pass"; then
7991 if test -z "$libdir" && test prog = "$linkmode"; then
7992 func_fatal_error "only libraries may -dlpreopen a convenience library: '$lib'"
7993 fi
7994 case $host in
7995 # special handling for platforms with PE-DLLs.
7996 *cygwin* | *mingw* | *cegcc* )
7997 # Linker will automatically link against shared library if both
7998 # static and shared are present. Therefore, ensure we extract
7999 # symbols from the import library if a shared library is present
8000 # (otherwise, the dlopen module name will be incorrect). We do
8001 # this by putting the import library name into $newdlprefiles.
8002 # We recover the dlopen module name by 'saving' the la file
8003 # name in a special purpose variable, and (later) extracting the
8004 # dlname from the la file.
8005 if test -n "$dlname"; then
8006 func_tr_sh "$dir/$linklib"
8007 eval "libfile_$func_tr_sh_result=\$abs_ladir/\$laname"
8008 func_append newdlprefiles " $dir/$linklib"
8009 else
8010 func_append newdlprefiles " $dir/$old_library"
8011 # Keep a list of preopened convenience libraries to check
8012 # that they are being used correctly in the link pass.
8013 test -z "$libdir" && \
8014 func_append dlpreconveniencelibs " $dir/$old_library"
8015 fi
8016 ;;
8017 * )
8018 # Prefer using a static library (so that no silly _DYNAMIC symbols
8019 # are required to link).
8020 if test -n "$old_library"; then
8021 func_append newdlprefiles " $dir/$old_library"
8022 # Keep a list of preopened convenience libraries to check
8023 # that they are being used correctly in the link pass.
8024 test -z "$libdir" && \
8025 func_append dlpreconveniencelibs " $dir/$old_library"
8026 # Otherwise, use the dlname, so that lt_dlopen finds it.
8027 elif test -n "$dlname"; then
8028 func_append newdlprefiles " $dir/$dlname"
8029 else
8030 func_append newdlprefiles " $dir/$linklib"
8031 fi
8032 ;;
8033 esac
8034 fi # $pass = dlpreopen
8035
8036 if test -z "$libdir"; then
8037 # Link the convenience library
8038 if test lib = "$linkmode"; then
8039 deplibs="$dir/$old_library $deplibs"
8040 elif test prog,link = "$linkmode,$pass"; then
8041 compile_deplibs="$dir/$old_library $compile_deplibs"
8042 finalize_deplibs="$dir/$old_library $finalize_deplibs"
8043 else
8044 deplibs="$lib $deplibs" # used for prog,scan pass
8045 fi
8046 continue
8047 fi
8048
8049
8050 if test prog = "$linkmode" && test link != "$pass"; then
8051 func_append newlib_search_path " $ladir"
8052 deplibs="$lib $deplibs"
8053
8054 linkalldeplibs=false
8055 if test no != "$link_all_deplibs" || test -z "$library_names" ||
8056 test no = "$build_libtool_libs"; then
8057 linkalldeplibs=:
8058 fi
8059
8060 tmp_libs=
8061 for deplib in $dependency_libs; do
8062 case $deplib in
8063 -L*) func_stripname '-L' '' "$deplib"
8064 func_resolve_sysroot "$func_stripname_result"
8065 func_append newlib_search_path " $func_resolve_sysroot_result"
8066 ;;
8067 esac
8068 # Need to link against all dependency_libs?
8069 if $linkalldeplibs; then
8070 deplibs="$deplib $deplibs"
8071 else
8072 # Need to hardcode shared library paths
8073 # or/and link against static libraries
8074 newdependency_libs="$deplib $newdependency_libs"
8075 fi
8076 if $opt_preserve_dup_deps; then
8077 case "$tmp_libs " in
8078 *" $deplib "*) func_append specialdeplibs " $deplib" ;;
8079 esac
8080 fi
8081 func_append tmp_libs " $deplib"
8082 done # for deplib
8083 continue
8084 fi # $linkmode = prog...
8085
8086 if test prog,link = "$linkmode,$pass"; then
8087 if test -n "$library_names" &&
8088 { { test no = "$prefer_static_libs" ||
8089 test built,yes = "$prefer_static_libs,$installed"; } ||
8090 test -z "$old_library"; }; then
8091 # We need to hardcode the library path
8092 if test -n "$shlibpath_var" && test -z "$avoidtemprpath"; then
8093 # Make sure the rpath contains only unique directories.
8094 case $temp_rpath: in
8095 *"$absdir:"*) ;;
8096 *) func_append temp_rpath "$absdir:" ;;
8097 esac
8098 fi
8099
8100 # Hardcode the library path.
8101 # Skip directories that are in the system default run-time
8102 # search path.
8103 case " $sys_lib_dlsearch_path " in
8104 *" $absdir "*) ;;
8105 *)
8106 case "$compile_rpath " in
8107 *" $absdir "*) ;;
8108 *) func_append compile_rpath " $absdir" ;;
8109 esac
8110 ;;
8111 esac
8112 case " $sys_lib_dlsearch_path " in
8113 *" $libdir "*) ;;
8114 *)
8115 case "$finalize_rpath " in
8116 *" $libdir "*) ;;
8117 *) func_append finalize_rpath " $libdir" ;;
8118 esac
8119 ;;
8120 esac
8121 fi # $linkmode,$pass = prog,link...
8122
8123 if $alldeplibs &&
8124 { test pass_all = "$deplibs_check_method" ||
8125 { test yes = "$build_libtool_libs" &&
8126 test -n "$library_names"; }; }; then
8127 # We only need to search for static libraries
8128 continue
8129 fi
8130 fi
8131
8132 link_static=no # Whether the deplib will be linked statically
8133 use_static_libs=$prefer_static_libs
8134 if test built = "$use_static_libs" && test yes = "$installed"; then
8135 use_static_libs=no
8136 fi
8137 if test -n "$library_names" &&
8138 { test no = "$use_static_libs" || test -z "$old_library"; }; then
8139 case $host in
8140 *cygwin* | *mingw* | *cegcc* | *os2*)
8141 # No point in relinking DLLs because paths are not encoded
8142 func_append notinst_deplibs " $lib"
8143 need_relink=no
8144 ;;
8145 *)
8146 if test no = "$installed"; then
8147 func_append notinst_deplibs " $lib"
8148 need_relink=yes
8149 fi
8150 ;;
8151 esac
8152 # This is a shared library
8153
8154 # Warn about portability, can't link against -module's on some
8155 # systems (darwin). Don't bleat about dlopened modules though!
8156 dlopenmodule=
8157 for dlpremoduletest in $dlprefiles; do
8158 if test "X$dlpremoduletest" = "X$lib"; then
8159 dlopenmodule=$dlpremoduletest
8160 break
8161 fi
8162 done
8163 if test -z "$dlopenmodule" && test yes = "$shouldnotlink" && test link = "$pass"; then
8164 echo
8165 if test prog = "$linkmode"; then
8166 $ECHO "*** Warning: Linking the executable $output against the loadable module"
8167 else
8168 $ECHO "*** Warning: Linking the shared library $output against the loadable module"
8169 fi
8170 $ECHO "*** $linklib is not portable!"
8171 fi
8172 if test lib = "$linkmode" &&
8173 test yes = "$hardcode_into_libs"; then
8174 # Hardcode the library path.
8175 # Skip directories that are in the system default run-time
8176 # search path.
8177 case " $sys_lib_dlsearch_path " in
8178 *" $absdir "*) ;;
8179 *)
8180 case "$compile_rpath " in
8181 *" $absdir "*) ;;
8182 *) func_append compile_rpath " $absdir" ;;
8183 esac
8184 ;;
8185 esac
8186 case " $sys_lib_dlsearch_path " in
8187 *" $libdir "*) ;;
8188 *)
8189 case "$finalize_rpath " in
8190 *" $libdir "*) ;;
8191 *) func_append finalize_rpath " $libdir" ;;
8192 esac
8193 ;;
8194 esac
8195 fi
8196
8197 if test -n "$old_archive_from_expsyms_cmds"; then
8198 # figure out the soname
8199 set dummy $library_names
8200 shift
8201 realname=$1
8202 shift
8203 libname=`eval "\\$ECHO \"$libname_spec\""`
8204 # use dlname if we got it. it's perfectly good, no?
8205 if test -n "$dlname"; then
8206 soname=$dlname
8207 elif test -n "$soname_spec"; then
8208 # bleh windows
8209 case $host in
8210 *cygwin* | mingw* | *cegcc* | *os2*)
8211 func_arith $current - $age
8212 major=$func_arith_result
8213 versuffix=-$major
8214 ;;
8215 esac
8216 eval soname=\"$soname_spec\"
8217 else
8218 soname=$realname
8219 fi
8220
8221 # Make a new name for the extract_expsyms_cmds to use
8222 soroot=$soname
8223 func_basename "$soroot"
8224 soname=$func_basename_result
8225 func_stripname 'lib' '.dll' "$soname"
8226 newlib=libimp-$func_stripname_result.a
8227
8228 # If the library has no export list, then create one now
8229 if test -f "$output_objdir/$soname-def"; then :
8230 else
8231 func_verbose "extracting exported symbol list from '$soname'"
8232 func_execute_cmds "$extract_expsyms_cmds" 'exit $?'
8233 fi
8234
8235 # Create $newlib
8236 if test -f "$output_objdir/$newlib"; then :; else
8237 func_verbose "generating import library for '$soname'"
8238 func_execute_cmds "$old_archive_from_expsyms_cmds" 'exit $?'
8239 fi
8240 # make sure the library variables are pointing to the new library
8241 dir=$output_objdir
8242 linklib=$newlib
8243 fi # test -n "$old_archive_from_expsyms_cmds"
8244
8245 if test prog = "$linkmode" || test relink != "$opt_mode"; then
8246 add_shlibpath=
8247 add_dir=
8248 add=
8249 lib_linked=yes
8250 case $hardcode_action in
8251 immediate | unsupported)
8252 if test no = "$hardcode_direct"; then
8253 add=$dir/$linklib
8254 case $host in
8255 *-*-sco3.2v5.0.[024]*) add_dir=-L$dir ;;
8256 *-*-sysv4*uw2*) add_dir=-L$dir ;;
8257 *-*-sysv5OpenUNIX* | *-*-sysv5UnixWare7.[01].[10]* | \
8258 *-*-unixware7*) add_dir=-L$dir ;;
8259 *-*-darwin* )
8260 # if the lib is a (non-dlopened) module then we cannot
8261 # link against it, someone is ignoring the earlier warnings
8262 if /usr/bin/file -L $add 2> /dev/null |
8263 $GREP ": [^:]* bundle" >/dev/null; then
8264 if test "X$dlopenmodule" != "X$lib"; then
8265 $ECHO "*** Warning: lib $linklib is a module, not a shared library"
8266 if test -z "$old_library"; then
8267 echo
8268 echo "*** And there doesn't seem to be a static archive available"
8269 echo "*** The link will probably fail, sorry"
8270 else
8271 add=$dir/$old_library
8272 fi
8273 elif test -n "$old_library"; then
8274 add=$dir/$old_library
8275 fi
8276 fi
8277 esac
8278 elif test no = "$hardcode_minus_L"; then
8279 case $host in
8280 *-*-sunos*) add_shlibpath=$dir ;;
8281 esac
8282 add_dir=-L$dir
8283 add=-l$name
8284 elif test no = "$hardcode_shlibpath_var"; then
8285 add_shlibpath=$dir
8286 add=-l$name
8287 else
8288 lib_linked=no
8289 fi
8290 ;;
8291 relink)
8292 if test yes = "$hardcode_direct" &&
8293 test no = "$hardcode_direct_absolute"; then
8294 add=$dir/$linklib
8295 elif test yes = "$hardcode_minus_L"; then
8296 add_dir=-L$absdir
8297 # Try looking first in the location we're being installed to.
8298 if test -n "$inst_prefix_dir"; then
8299 case $libdir in
8300 [\\/]*)
8301 func_append add_dir " -L$inst_prefix_dir$libdir"
8302 ;;
8303 esac
8304 fi
8305 add=-l$name
8306 elif test yes = "$hardcode_shlibpath_var"; then
8307 add_shlibpath=$dir
8308 add=-l$name
8309 else
8310 lib_linked=no
8311 fi
8312 ;;
8313 *) lib_linked=no ;;
8314 esac
8315
8316 if test yes != "$lib_linked"; then
8317 func_fatal_configuration "unsupported hardcode properties"
8318 fi
8319
8320 if test -n "$add_shlibpath"; then
8321 case :$compile_shlibpath: in
8322 *":$add_shlibpath:"*) ;;
8323 *) func_append compile_shlibpath "$add_shlibpath:" ;;
8324 esac
8325 fi
8326 if test prog = "$linkmode"; then
8327 test -n "$add_dir" && compile_deplibs="$add_dir $compile_deplibs"
8328 test -n "$add" && compile_deplibs="$add $compile_deplibs"
8329 else
8330 test -n "$add_dir" && deplibs="$add_dir $deplibs"
8331 test -n "$add" && deplibs="$add $deplibs"
8332 if test yes != "$hardcode_direct" &&
8333 test yes != "$hardcode_minus_L" &&
8334 test yes = "$hardcode_shlibpath_var"; then
8335 case :$finalize_shlibpath: in
8336 *":$libdir:"*) ;;
8337 *) func_append finalize_shlibpath "$libdir:" ;;
8338 esac
8339 fi
8340 fi
8341 fi
8342
8343 if test prog = "$linkmode" || test relink = "$opt_mode"; then
8344 add_shlibpath=
8345 add_dir=
8346 add=
8347 # Finalize command for both is simple: just hardcode it.
8348 if test yes = "$hardcode_direct" &&
8349 test no = "$hardcode_direct_absolute"; then
8350 add=$libdir/$linklib
8351 elif test yes = "$hardcode_minus_L"; then
8352 add_dir=-L$libdir
8353 add=-l$name
8354 elif test yes = "$hardcode_shlibpath_var"; then
8355 case :$finalize_shlibpath: in
8356 *":$libdir:"*) ;;
8357 *) func_append finalize_shlibpath "$libdir:" ;;
8358 esac
8359 add=-l$name
8360 elif test yes = "$hardcode_automatic"; then
8361 if test -n "$inst_prefix_dir" &&
8362 test -f "$inst_prefix_dir$libdir/$linklib"; then
8363 add=$inst_prefix_dir$libdir/$linklib
8364 else
8365 add=$libdir/$linklib
8366 fi
8367 else
8368 # We cannot seem to hardcode it, guess we'll fake it.
8369 add_dir=-L$libdir
8370 # Try looking first in the location we're being installed to.
8371 if test -n "$inst_prefix_dir"; then
8372 case $libdir in
8373 [\\/]*)
8374 func_append add_dir " -L$inst_prefix_dir$libdir"
8375 ;;
8376 esac
8377 fi
8378 add=-l$name
8379 fi
8380
8381 if test prog = "$linkmode"; then
8382 test -n "$add_dir" && finalize_deplibs="$add_dir $finalize_deplibs"
8383 test -n "$add" && finalize_deplibs="$add $finalize_deplibs"
8384 else
8385 test -n "$add_dir" && deplibs="$add_dir $deplibs"
8386 test -n "$add" && deplibs="$add $deplibs"
8387 fi
8388 fi
8389 elif test prog = "$linkmode"; then
8390 # Here we assume that one of hardcode_direct or hardcode_minus_L
8391 # is not unsupported. This is valid on all known static and
8392 # shared platforms.
8393 if test unsupported != "$hardcode_direct"; then
8394 test -n "$old_library" && linklib=$old_library
8395 compile_deplibs="$dir/$linklib $compile_deplibs"
8396 finalize_deplibs="$dir/$linklib $finalize_deplibs"
8397 else
8398 compile_deplibs="-l$name -L$dir $compile_deplibs"
8399 finalize_deplibs="-l$name -L$dir $finalize_deplibs"
8400 fi
8401 elif test yes = "$build_libtool_libs"; then
8402 # Not a shared library
8403 if test pass_all != "$deplibs_check_method"; then
8404 # We're trying link a shared library against a static one
8405 # but the system doesn't support it.
8406
8407 # Just print a warning and add the library to dependency_libs so
8408 # that the program can be linked against the static library.
8409 echo
8410 $ECHO "*** Warning: This system cannot link to static lib archive $lib."
8411 echo "*** I have the capability to make that library automatically link in when"
8412 echo "*** you link to this library. But I can only do this if you have a"
8413 echo "*** shared version of the library, which you do not appear to have."
8414 if test yes = "$module"; then
8415 echo "*** But as you try to build a module library, libtool will still create "
8416 echo "*** a static module, that should work as long as the dlopening application"
8417 echo "*** is linked with the -dlopen flag to resolve symbols at runtime."
8418 if test -z "$global_symbol_pipe"; then
8419 echo
8420 echo "*** However, this would only work if libtool was able to extract symbol"
8421 echo "*** lists from a program, using 'nm' or equivalent, but libtool could"
8422 echo "*** not find such a program. So, this module is probably useless."
8423 echo "*** 'nm' from GNU binutils and a full rebuild may help."
8424 fi
8425 if test no = "$build_old_libs"; then
8426 build_libtool_libs=module
8427 build_old_libs=yes
8428 else
8429 build_libtool_libs=no
8430 fi
8431 fi
8432 else
8433 deplibs="$dir/$old_library $deplibs"
8434 link_static=yes
8435 fi
8436 fi # link shared/static library?
8437
8438 if test lib = "$linkmode"; then
8439 if test -n "$dependency_libs" &&
8440 { test yes != "$hardcode_into_libs" ||
8441 test yes = "$build_old_libs" ||
8442 test yes = "$link_static"; }; then
8443 # Extract -R from dependency_libs
8444 temp_deplibs=
8445 for libdir in $dependency_libs; do
8446 case $libdir in
8447 -R*) func_stripname '-R' '' "$libdir"
8448 temp_xrpath=$func_stripname_result
8449 case " $xrpath " in
8450 *" $temp_xrpath "*) ;;
8451 *) func_append xrpath " $temp_xrpath";;
8452 esac;;
8453 *) func_append temp_deplibs " $libdir";;
8454 esac
8455 done
8456 dependency_libs=$temp_deplibs
8457 fi
8458
8459 func_append newlib_search_path " $absdir"
8460 # Link against this library
8461 test no = "$link_static" && newdependency_libs="$abs_ladir/$laname $newdependency_libs"
8462 # ... and its dependency_libs
8463 tmp_libs=
8464 for deplib in $dependency_libs; do
8465 newdependency_libs="$deplib $newdependency_libs"
8466 case $deplib in
8467 -L*) func_stripname '-L' '' "$deplib"
8468 func_resolve_sysroot "$func_stripname_result";;
8469 *) func_resolve_sysroot "$deplib" ;;
8470 esac
8471 if $opt_preserve_dup_deps; then
8472 case "$tmp_libs " in
8473 *" $func_resolve_sysroot_result "*)
8474 func_append specialdeplibs " $func_resolve_sysroot_result" ;;
8475 esac
8476 fi
8477 func_append tmp_libs " $func_resolve_sysroot_result"
8478 done
8479
8480 if test no != "$link_all_deplibs"; then
8481 # Add the search paths of all dependency libraries
8482 for deplib in $dependency_libs; do
8483 path=
8484 case $deplib in
8485 -L*) path=$deplib ;;
8486 *.la)
8487 func_resolve_sysroot "$deplib"
8488 deplib=$func_resolve_sysroot_result
8489 func_dirname "$deplib" "" "."
8490 dir=$func_dirname_result
8491 # We need an absolute path.
8492 case $dir in
8493 [\\/]* | [A-Za-z]:[\\/]*) absdir=$dir ;;
8494 *)
8495 absdir=`cd "$dir" && pwd`
8496 if test -z "$absdir"; then
8497 func_warning "cannot determine absolute directory name of '$dir'"
8498 absdir=$dir
8499 fi
8500 ;;
8501 esac
8502 if $GREP "^installed=no" $deplib > /dev/null; then
8503 case $host in
8504 *-*-darwin*)
8505 depdepl=
8506 eval deplibrary_names=`$SED -n -e 's/^library_names=\(.*\)$/\1/p' $deplib`
8507 if test -n "$deplibrary_names"; then
8508 for tmp in $deplibrary_names; do
8509 depdepl=$tmp
8510 done
8511 if test -f "$absdir/$objdir/$depdepl"; then
8512 depdepl=$absdir/$objdir/$depdepl
8513 darwin_install_name=`$OTOOL -L $depdepl | awk '{if (NR == 2) {print $1;exit}}'`
8514 if test -z "$darwin_install_name"; then
8515 darwin_install_name=`$OTOOL64 -L $depdepl | awk '{if (NR == 2) {print $1;exit}}'`
8516 fi
8517 func_append compiler_flags " $wl-dylib_file $wl$darwin_install_name:$depdepl"
8518 func_append linker_flags " -dylib_file $darwin_install_name:$depdepl"
8519 path=
8520 fi
8521 fi
8522 ;;
8523 *)
8524 path=-L$absdir/$objdir
8525 ;;
8526 esac
8527 else
8528 eval libdir=`$SED -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`
8529 test -z "$libdir" && \
8530 func_fatal_error "'$deplib' is not a valid libtool archive"
8531 test "$absdir" != "$libdir" && \
8532 func_warning "'$deplib' seems to be moved"
8533
8534 path=-L$absdir
8535 fi
8536 ;;
8537 esac
8538 case " $deplibs " in
8539 *" $path "*) ;;
8540 *) deplibs="$path $deplibs" ;;
8541 esac
8542 done
8543 fi # link_all_deplibs != no
8544 fi # linkmode = lib
8545 done # for deplib in $libs
8546 if test link = "$pass"; then
8547 if test prog = "$linkmode"; then
8548 compile_deplibs="$new_inherited_linker_flags $compile_deplibs"
8549 finalize_deplibs="$new_inherited_linker_flags $finalize_deplibs"
8550 else
8551 compiler_flags="$compiler_flags "`$ECHO " $new_inherited_linker_flags" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'`
8552 fi
8553 fi
8554 dependency_libs=$newdependency_libs
8555 if test dlpreopen = "$pass"; then
8556 # Link the dlpreopened libraries before other libraries
8557 for deplib in $save_deplibs; do
8558 deplibs="$deplib $deplibs"
8559 done
8560 fi
8561 if test dlopen != "$pass"; then
8562 test conv = "$pass" || {
8563 # Make sure lib_search_path contains only unique directories.
8564 lib_search_path=
8565 for dir in $newlib_search_path; do
8566 case "$lib_search_path " in
8567 *" $dir "*) ;;
8568 *) func_append lib_search_path " $dir" ;;
8569 esac
8570 done
8571 newlib_search_path=
8572 }
8573
8574 if test prog,link = "$linkmode,$pass"; then
8575 vars="compile_deplibs finalize_deplibs"
8576 else
8577 vars=deplibs
8578 fi
8579 for var in $vars dependency_libs; do
8580 # Add libraries to $var in reverse order
8581 eval tmp_libs=\"\$$var\"
8582 new_libs=
8583 for deplib in $tmp_libs; do
8584 # FIXME: Pedantically, this is the right thing to do, so
8585 # that some nasty dependency loop isn't accidentally
8586 # broken:
8587 #new_libs="$deplib $new_libs"
8588 # Pragmatically, this seems to cause very few problems in
8589 # practice:
8590 case $deplib in
8591 -L*) new_libs="$deplib $new_libs" ;;
8592 -R*) ;;
8593 *)
8594 # And here is the reason: when a library appears more
8595 # than once as an explicit dependence of a library, or
8596 # is implicitly linked in more than once by the
8597 # compiler, it is considered special, and multiple
8598 # occurrences thereof are not removed. Compare this
8599 # with having the same library being listed as a
8600 # dependency of multiple other libraries: in this case,
8601 # we know (pedantically, we assume) the library does not
8602 # need to be listed more than once, so we keep only the
8603 # last copy. This is not always right, but it is rare
8604 # enough that we require users that really mean to play
8605 # such unportable linking tricks to link the library
8606 # using -Wl,-lname, so that libtool does not consider it
8607 # for duplicate removal.
8608 case " $specialdeplibs " in
8609 *" $deplib "*) new_libs="$deplib $new_libs" ;;
8610 *)
8611 case " $new_libs " in
8612 *" $deplib "*) ;;
8613 *) new_libs="$deplib $new_libs" ;;
8614 esac
8615 ;;
8616 esac
8617 ;;
8618 esac
8619 done
8620 tmp_libs=
8621 for deplib in $new_libs; do
8622 case $deplib in
8623 -L*)
8624 case " $tmp_libs " in
8625 *" $deplib "*) ;;
8626 *) func_append tmp_libs " $deplib" ;;
8627 esac
8628 ;;
8629 *) func_append tmp_libs " $deplib" ;;
8630 esac
8631 done
8632 eval $var=\"$tmp_libs\"
8633 done # for var
8634 fi
8635
8636 # Add Sun CC postdeps if required:
8637 test CXX = "$tagname" && {
8638 case $host_os in
8639 linux*)
8640 case `$CC -V 2>&1 | sed 5q` in
8641 *Sun\ C*) # Sun C++ 5.9
8642 func_suncc_cstd_abi
8643
8644 if test no != "$suncc_use_cstd_abi"; then
8645 func_append postdeps ' -library=Cstd -library=Crun'
8646 fi
8647 ;;
8648 esac
8649 ;;
8650
8651 solaris*)
8652 func_cc_basename "$CC"
8653 case $func_cc_basename_result in
8654 CC* | sunCC*)
8655 func_suncc_cstd_abi
8656
8657 if test no != "$suncc_use_cstd_abi"; then
8658 func_append postdeps ' -library=Cstd -library=Crun'
8659 fi
8660 ;;
8661 esac
8662 ;;
8663 esac
8664 }
8665
8666 # Last step: remove runtime libs from dependency_libs
8667 # (they stay in deplibs)
8668 tmp_libs=
8669 for i in $dependency_libs; do
8670 case " $predeps $postdeps $compiler_lib_search_path " in
8671 *" $i "*)
8672 i=
8673 ;;
8674 esac
8675 if test -n "$i"; then
8676 func_append tmp_libs " $i"
8677 fi
8678 done
8679 dependency_libs=$tmp_libs
8680 done # for pass
8681 if test prog = "$linkmode"; then
8682 dlfiles=$newdlfiles
8683 fi
8684 if test prog = "$linkmode" || test lib = "$linkmode"; then
8685 dlprefiles=$newdlprefiles
8686 fi
8687
8688 case $linkmode in
8689 oldlib)
8690 if test -n "$dlfiles$dlprefiles" || test no != "$dlself"; then
8691 func_warning "'-dlopen' is ignored for archives"
8692 fi
8693
8694 case " $deplibs" in
8695 *\ -l* | *\ -L*)
8696 func_warning "'-l' and '-L' are ignored for archives" ;;
8697 esac
8698
8699 test -n "$rpath" && \
8700 func_warning "'-rpath' is ignored for archives"
8701
8702 test -n "$xrpath" && \
8703 func_warning "'-R' is ignored for archives"
8704
8705 test -n "$vinfo" && \
8706 func_warning "'-version-info/-version-number' is ignored for archives"
8707
8708 test -n "$release" && \
8709 func_warning "'-release' is ignored for archives"
8710
8711 test -n "$export_symbols$export_symbols_regex" && \
8712 func_warning "'-export-symbols' is ignored for archives"
8713
8714 # Now set the variables for building old libraries.
8715 build_libtool_libs=no
8716 oldlibs=$output
8717 func_append objs "$old_deplibs"
8718 ;;
8719
8720 lib)
8721 # Make sure we only generate libraries of the form 'libNAME.la'.
8722 case $outputname in
8723 lib*)
8724 func_stripname 'lib' '.la' "$outputname"
8725 name=$func_stripname_result
8726 eval shared_ext=\"$shrext_cmds\"
8727 eval libname=\"$libname_spec\"
8728 ;;
8729 *)
8730 test no = "$module" \
8731 && func_fatal_help "libtool library '$output' must begin with 'lib'"
8732
8733 if test no != "$need_lib_prefix"; then
8734 # Add the "lib" prefix for modules if required
8735 func_stripname '' '.la' "$outputname"
8736 name=$func_stripname_result
8737 eval shared_ext=\"$shrext_cmds\"
8738 eval libname=\"$libname_spec\"
8739 else
8740 func_stripname '' '.la' "$outputname"
8741 libname=$func_stripname_result
8742 fi
8743 ;;
8744 esac
8745
8746 if test -n "$objs"; then
8747 if test pass_all != "$deplibs_check_method"; then
8748 func_fatal_error "cannot build libtool library '$output' from non-libtool objects on this host:$objs"
8749 else
8750 echo
8751 $ECHO "*** Warning: Linking the shared library $output against the non-libtool"
8752 $ECHO "*** objects $objs is not portable!"
8753 func_append libobjs " $objs"
8754 fi
8755 fi
8756
8757 test no = "$dlself" \
8758 || func_warning "'-dlopen self' is ignored for libtool libraries"
8759
8760 set dummy $rpath
8761 shift
8762 test 1 -lt "$#" \
8763 && func_warning "ignoring multiple '-rpath's for a libtool library"
8764
8765 install_libdir=$1
8766
8767 oldlibs=
8768 if test -z "$rpath"; then
8769 if test yes = "$build_libtool_libs"; then
8770 # Building a libtool convenience library.
8771 # Some compilers have problems with a '.al' extension so
8772 # convenience libraries should have the same extension an
8773 # archive normally would.
8774 oldlibs="$output_objdir/$libname.$libext $oldlibs"
8775 build_libtool_libs=convenience
8776 build_old_libs=yes
8777 fi
8778
8779 test -n "$vinfo" && \
8780 func_warning "'-version-info/-version-number' is ignored for convenience libraries"
8781
8782 test -n "$release" && \
8783 func_warning "'-release' is ignored for convenience libraries"
8784 else
8785
8786 # Parse the version information argument.
8787 save_ifs=$IFS; IFS=:
8788 set dummy $vinfo 0 0 0
8789 shift
8790 IFS=$save_ifs
8791
8792 test -n "$7" && \
8793 func_fatal_help "too many parameters to '-version-info'"
8794
8795 # convert absolute version numbers to libtool ages
8796 # this retains compatibility with .la files and attempts
8797 # to make the code below a bit more comprehensible
8798
8799 case $vinfo_number in
8800 yes)
8801 number_major=$1
8802 number_minor=$2
8803 number_revision=$3
8804 #
8805 # There are really only two kinds -- those that
8806 # use the current revision as the major version
8807 # and those that subtract age and use age as
8808 # a minor version. But, then there is irix
8809 # that has an extra 1 added just for fun
8810 #
8811 case $version_type in
8812 # correct linux to gnu/linux during the next big refactor
8813 darwin|freebsd-elf|linux|osf|windows|none)
8814 func_arith $number_major + $number_minor
8815 current=$func_arith_result
8816 age=$number_minor
8817 revision=$number_revision
8818 ;;
8819 freebsd-aout|qnx|sunos)
8820 current=$number_major
8821 revision=$number_minor
8822 age=0
8823 ;;
8824 irix|nonstopux)
8825 func_arith $number_major + $number_minor
8826 current=$func_arith_result
8827 age=$number_minor
8828 revision=$number_minor
8829 lt_irix_increment=no
8830 ;;
8831 *)
8832 func_fatal_configuration "$modename: unknown library version type '$version_type'"
8833 ;;
8834 esac
8835 ;;
8836 no)
8837 current=$1
8838 revision=$2
8839 age=$3
8840 ;;
8841 esac
8842
8843 # Check that each of the things are valid numbers.
8844 case $current in
8845 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]) ;;
8846 *)
8847 func_error "CURRENT '$current' must be a nonnegative integer"
8848 func_fatal_error "'$vinfo' is not valid version information"
8849 ;;
8850 esac
8851
8852 case $revision in
8853 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]) ;;
8854 *)
8855 func_error "REVISION '$revision' must be a nonnegative integer"
8856 func_fatal_error "'$vinfo' is not valid version information"
8857 ;;
8858 esac
8859
8860 case $age in
8861 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]) ;;
8862 *)
8863 func_error "AGE '$age' must be a nonnegative integer"
8864 func_fatal_error "'$vinfo' is not valid version information"
8865 ;;
8866 esac
8867
8868 if test "$age" -gt "$current"; then
8869 func_error "AGE '$age' is greater than the current interface number '$current'"
8870 func_fatal_error "'$vinfo' is not valid version information"
8871 fi
8872
8873 # Calculate the version variables.
8874 major=
8875 versuffix=
8876 verstring=
8877 case $version_type in
8878 none) ;;
8879
8880 darwin)
8881 # Like Linux, but with the current version available in
8882 # verstring for coding it into the library header
8883 func_arith $current - $age
8884 major=.$func_arith_result
8885 versuffix=$major.$age.$revision
8886 # Darwin ld doesn't like 0 for these options...
8887 func_arith $current + 1
8888 minor_current=$func_arith_result
8889 xlcverstring="$wl-compatibility_version $wl$minor_current $wl-current_version $wl$minor_current.$revision"
8890 verstring="-compatibility_version $minor_current -current_version $minor_current.$revision"
8891 # On Darwin other compilers
8892 case $CC in
8893 nagfor*)
8894 verstring="$wl-compatibility_version $wl$minor_current $wl-current_version $wl$minor_current.$revision"
8895 ;;
8896 *)
8897 verstring="-compatibility_version $minor_current -current_version $minor_current.$revision"
8898 ;;
8899 esac
8900 ;;
8901
8902 freebsd-aout)
8903 major=.$current
8904 versuffix=.$current.$revision
8905 ;;
8906
8907 freebsd-elf)
8908 func_arith $current - $age
8909 major=.$func_arith_result
8910 versuffix=$major.$age.$revision
8911 ;;
8912
8913 irix | nonstopux)
8914 if test no = "$lt_irix_increment"; then
8915 func_arith $current - $age
8916 else
8917 func_arith $current - $age + 1
8918 fi
8919 major=$func_arith_result
8920
8921 case $version_type in
8922 nonstopux) verstring_prefix=nonstopux ;;
8923 *) verstring_prefix=sgi ;;
8924 esac
8925 verstring=$verstring_prefix$major.$revision
8926
8927 # Add in all the interfaces that we are compatible with.
8928 loop=$revision
8929 while test 0 -ne "$loop"; do
8930 func_arith $revision - $loop
8931 iface=$func_arith_result
8932 func_arith $loop - 1
8933 loop=$func_arith_result
8934 verstring=$verstring_prefix$major.$iface:$verstring
8935 done
8936
8937 # Before this point, $major must not contain '.'.
8938 major=.$major
8939 versuffix=$major.$revision
8940 ;;
8941
8942 linux) # correct to gnu/linux during the next big refactor
8943 func_arith $current - $age
8944 major=.$func_arith_result
8945 versuffix=$major.$age.$revision
8946 ;;
8947
8948 osf)
8949 func_arith $current - $age
8950 major=.$func_arith_result
8951 versuffix=.$current.$age.$revision
8952 verstring=$current.$age.$revision
8953
8954 # Add in all the interfaces that we are compatible with.
8955 loop=$age
8956 while test 0 -ne "$loop"; do
8957 func_arith $current - $loop
8958 iface=$func_arith_result
8959 func_arith $loop - 1
8960 loop=$func_arith_result
8961 verstring=$verstring:$iface.0
8962 done
8963
8964 # Make executables depend on our current version.
8965 func_append verstring ":$current.0"
8966 ;;
8967
8968 qnx)
8969 major=.$current
8970 versuffix=.$current
8971 ;;
8972
8973 sco)
8974 major=.$current
8975 versuffix=.$current
8976 ;;
8977
8978 sunos)
8979 major=.$current
8980 versuffix=.$current.$revision
8981 ;;
8982
8983 windows)
8984 # Use '-' rather than '.', since we only want one
8985 # extension on DOS 8.3 file systems.
8986 func_arith $current - $age
8987 major=$func_arith_result
8988 versuffix=-$major
8989 ;;
8990
8991 *)
8992 func_fatal_configuration "unknown library version type '$version_type'"
8993 ;;
8994 esac
8995
8996 # Clear the version info if we defaulted, and they specified a release.
8997 if test -z "$vinfo" && test -n "$release"; then
8998 major=
8999 case $version_type in
9000 darwin)
9001 # we can't check for "0.0" in archive_cmds due to quoting
9002 # problems, so we reset it completely
9003 verstring=
9004 ;;
9005 *)
9006 verstring=0.0
9007 ;;
9008 esac
9009 if test no = "$need_version"; then
9010 versuffix=
9011 else
9012 versuffix=.0.0
9013 fi
9014 fi
9015
9016 # Remove version info from name if versioning should be avoided
9017 if test yes,no = "$avoid_version,$need_version"; then
9018 major=
9019 versuffix=
9020 verstring=
9021 fi
9022
9023 # Check to see if the archive will have undefined symbols.
9024 if test yes = "$allow_undefined"; then
9025 if test unsupported = "$allow_undefined_flag"; then
9026 if test yes = "$build_old_libs"; then
9027 func_warning "undefined symbols not allowed in $host shared libraries; building static only"
9028 build_libtool_libs=no
9029 else
9030 func_fatal_error "can't build $host shared library unless -no-undefined is specified"
9031 fi
9032 fi
9033 else
9034 # Don't allow undefined symbols.
9035 allow_undefined_flag=$no_undefined_flag
9036 fi
9037
9038 fi
9039
9040 func_generate_dlsyms "$libname" "$libname" :
9041 func_append libobjs " $symfileobj"
9042 test " " = "$libobjs" && libobjs=
9043
9044 if test relink != "$opt_mode"; then
9045 # Remove our outputs, but don't remove object files since they
9046 # may have been created when compiling PIC objects.
9047 removelist=
9048 tempremovelist=`$ECHO "$output_objdir/*"`
9049 for p in $tempremovelist; do
9050 case $p in
9051 *.$objext | *.gcno)
9052 ;;
9053 $output_objdir/$outputname | $output_objdir/$libname.* | $output_objdir/$libname$release.*)
9054 if test -n "$precious_files_regex"; then
9055 if $ECHO "$p" | $EGREP -e "$precious_files_regex" >/dev/null 2>&1
9056 then
9057 continue
9058 fi
9059 fi
9060 func_append removelist " $p"
9061 ;;
9062 *) ;;
9063 esac
9064 done
9065 test -n "$removelist" && \
9066 func_show_eval "${RM}r \$removelist"
9067 fi
9068
9069 # Now set the variables for building old libraries.
9070 if test yes = "$build_old_libs" && test convenience != "$build_libtool_libs"; then
9071 func_append oldlibs " $output_objdir/$libname.$libext"
9072
9073 # Transform .lo files to .o files.
9074 oldobjs="$objs "`$ECHO "$libobjs" | $SP2NL | $SED "/\.$libext$/d; $lo2o" | $NL2SP`
9075 fi
9076
9077 # Eliminate all temporary directories.
9078 #for path in $notinst_path; do
9079 # lib_search_path=`$ECHO "$lib_search_path " | $SED "s% $path % %g"`
9080 # deplibs=`$ECHO "$deplibs " | $SED "s% -L$path % %g"`
9081 # dependency_libs=`$ECHO "$dependency_libs " | $SED "s% -L$path % %g"`
9082 #done
9083
9084 if test -n "$xrpath"; then
9085 # If the user specified any rpath flags, then add them.
9086 temp_xrpath=
9087 for libdir in $xrpath; do
9088 func_replace_sysroot "$libdir"
9089 func_append temp_xrpath " -R$func_replace_sysroot_result"
9090 case "$finalize_rpath " in
9091 *" $libdir "*) ;;
9092 *) func_append finalize_rpath " $libdir" ;;
9093 esac
9094 done
9095 if test yes != "$hardcode_into_libs" || test yes = "$build_old_libs"; then
9096 dependency_libs="$temp_xrpath $dependency_libs"
9097 fi
9098 fi
9099
9100 # Make sure dlfiles contains only unique files that won't be dlpreopened
9101 old_dlfiles=$dlfiles
9102 dlfiles=
9103 for lib in $old_dlfiles; do
9104 case " $dlprefiles $dlfiles " in
9105 *" $lib "*) ;;
9106 *) func_append dlfiles " $lib" ;;
9107 esac
9108 done
9109
9110 # Make sure dlprefiles contains only unique files
9111 old_dlprefiles=$dlprefiles
9112 dlprefiles=
9113 for lib in $old_dlprefiles; do
9114 case "$dlprefiles " in
9115 *" $lib "*) ;;
9116 *) func_append dlprefiles " $lib" ;;
9117 esac
9118 done
9119
9120 if test yes = "$build_libtool_libs"; then
9121 if test -n "$rpath"; then
9122 case $host in
9123 *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-beos* | *-cegcc* | *-*-haiku*)
9124 # these systems don't actually have a c library (as such)!
9125 ;;
9126 *-*-rhapsody* | *-*-darwin1.[012])
9127 # Rhapsody C library is in the System framework
9128 func_append deplibs " System.ltframework"
9129 ;;
9130 *-*-netbsd*)
9131 # Don't link with libc until the a.out ld.so is fixed.
9132 ;;
9133 *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*)
9134 # Do not include libc due to us having libc/libc_r.
9135 ;;
9136 *-*-sco3.2v5* | *-*-sco5v6*)
9137 # Causes problems with __ctype
9138 ;;
9139 *-*-sysv4.2uw2* | *-*-sysv5* | *-*-unixware* | *-*-OpenUNIX*)
9140 # Compiler inserts libc in the correct place for threads to work
9141 ;;
9142 *)
9143 # Add libc to deplibs on all other systems if necessary.
9144 if test yes = "$build_libtool_need_lc"; then
9145 func_append deplibs " -lc"
9146 fi
9147 ;;
9148 esac
9149 fi
9150
9151 # Transform deplibs into only deplibs that can be linked in shared.
9152 name_save=$name
9153 libname_save=$libname
9154 release_save=$release
9155 versuffix_save=$versuffix
9156 major_save=$major
9157 # I'm not sure if I'm treating the release correctly. I think
9158 # release should show up in the -l (ie -lgmp5) so we don't want to
9159 # add it in twice. Is that correct?
9160 release=
9161 versuffix=
9162 major=
9163 newdeplibs=
9164 droppeddeps=no
9165 case $deplibs_check_method in
9166 pass_all)
9167 # Don't check for shared/static. Everything works.
9168 # This might be a little naive. We might want to check
9169 # whether the library exists or not. But this is on
9170 # osf3 & osf4 and I'm not really sure... Just
9171 # implementing what was already the behavior.
9172 newdeplibs=$deplibs
9173 ;;
9174 test_compile)
9175 # This code stresses the "libraries are programs" paradigm to its
9176 # limits. Maybe even breaks it. We compile a program, linking it
9177 # against the deplibs as a proxy for the library. Then we can check
9178 # whether they linked in statically or dynamically with ldd.
9179 $opt_dry_run || $RM conftest.c
9180 cat > conftest.c <<EOF
9181 int main() { return 0; }
9182 EOF
9183 $opt_dry_run || $RM conftest
9184 if $LTCC $LTCFLAGS -o conftest conftest.c $deplibs; then
9185 ldd_output=`ldd conftest`
9186 for i in $deplibs; do
9187 case $i in
9188 -l*)
9189 func_stripname -l '' "$i"
9190 name=$func_stripname_result
9191 if test yes = "$allow_libtool_libs_with_static_runtimes"; then
9192 case " $predeps $postdeps " in
9193 *" $i "*)
9194 func_append newdeplibs " $i"
9195 i=
9196 ;;
9197 esac
9198 fi
9199 if test -n "$i"; then
9200 libname=`eval "\\$ECHO \"$libname_spec\""`
9201 deplib_matches=`eval "\\$ECHO \"$library_names_spec\""`
9202 set dummy $deplib_matches; shift
9203 deplib_match=$1
9204 if test `expr "$ldd_output" : ".*$deplib_match"` -ne 0; then
9205 func_append newdeplibs " $i"
9206 else
9207 droppeddeps=yes
9208 echo
9209 $ECHO "*** Warning: dynamic linker does not accept needed library $i."
9210 echo "*** I have the capability to make that library automatically link in when"
9211 echo "*** you link to this library. But I can only do this if you have a"
9212 echo "*** shared version of the library, which I believe you do not have"
9213 echo "*** because a test_compile did reveal that the linker did not use it for"
9214 echo "*** its dynamic dependency list that programs get resolved with at runtime."
9215 fi
9216 fi
9217 ;;
9218 *)
9219 func_append newdeplibs " $i"
9220 ;;
9221 esac
9222 done
9223 else
9224 # Error occurred in the first compile. Let's try to salvage
9225 # the situation: Compile a separate program for each library.
9226 for i in $deplibs; do
9227 case $i in
9228 -l*)
9229 func_stripname -l '' "$i"
9230 name=$func_stripname_result
9231 $opt_dry_run || $RM conftest
9232 if $LTCC $LTCFLAGS -o conftest conftest.c $i; then
9233 ldd_output=`ldd conftest`
9234 if test yes = "$allow_libtool_libs_with_static_runtimes"; then
9235 case " $predeps $postdeps " in
9236 *" $i "*)
9237 func_append newdeplibs " $i"
9238 i=
9239 ;;
9240 esac
9241 fi
9242 if test -n "$i"; then
9243 libname=`eval "\\$ECHO \"$libname_spec\""`
9244 deplib_matches=`eval "\\$ECHO \"$library_names_spec\""`
9245 set dummy $deplib_matches; shift
9246 deplib_match=$1
9247 if test `expr "$ldd_output" : ".*$deplib_match"` -ne 0; then
9248 func_append newdeplibs " $i"
9249 else
9250 droppeddeps=yes
9251 echo
9252 $ECHO "*** Warning: dynamic linker does not accept needed library $i."
9253 echo "*** I have the capability to make that library automatically link in when"
9254 echo "*** you link to this library. But I can only do this if you have a"
9255 echo "*** shared version of the library, which you do not appear to have"
9256 echo "*** because a test_compile did reveal that the linker did not use this one"
9257 echo "*** as a dynamic dependency that programs can get resolved with at runtime."
9258 fi
9259 fi
9260 else
9261 droppeddeps=yes
9262 echo
9263 $ECHO "*** Warning! Library $i is needed by this library but I was not able to"
9264 echo "*** make it link in! You will probably need to install it or some"
9265 echo "*** library that it depends on before this library will be fully"
9266 echo "*** functional. Installing it before continuing would be even better."
9267 fi
9268 ;;
9269 *)
9270 func_append newdeplibs " $i"
9271 ;;
9272 esac
9273 done
9274 fi
9275 ;;
9276 file_magic*)
9277 set dummy $deplibs_check_method; shift
9278 file_magic_regex=`expr "$deplibs_check_method" : "$1 \(.*\)"`
9279 for a_deplib in $deplibs; do
9280 case $a_deplib in
9281 -l*)
9282 func_stripname -l '' "$a_deplib"
9283 name=$func_stripname_result
9284 if test yes = "$allow_libtool_libs_with_static_runtimes"; then
9285 case " $predeps $postdeps " in
9286 *" $a_deplib "*)
9287 func_append newdeplibs " $a_deplib"
9288 a_deplib=
9289 ;;
9290 esac
9291 fi
9292 if test -n "$a_deplib"; then
9293 libname=`eval "\\$ECHO \"$libname_spec\""`
9294 if test -n "$file_magic_glob"; then
9295 libnameglob=`func_echo_all "$libname" | $SED -e $file_magic_glob`
9296 else
9297 libnameglob=$libname
9298 fi
9299 test yes = "$want_nocaseglob" && nocaseglob=`shopt -p nocaseglob`
9300 for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do
9301 if test yes = "$want_nocaseglob"; then
9302 shopt -s nocaseglob
9303 potential_libs=`ls $i/$libnameglob[.-]* 2>/dev/null`
9304 $nocaseglob
9305 else
9306 potential_libs=`ls $i/$libnameglob[.-]* 2>/dev/null`
9307 fi
9308 for potent_lib in $potential_libs; do
9309 # Follow soft links.
9310 if ls -lLd "$potent_lib" 2>/dev/null |
9311 $GREP " -> " >/dev/null; then
9312 continue
9313 fi
9314 # The statement above tries to avoid entering an
9315 # endless loop below, in case of cyclic links.
9316 # We might still enter an endless loop, since a link
9317 # loop can be closed while we follow links,
9318 # but so what?
9319 potlib=$potent_lib
9320 while test -h "$potlib" 2>/dev/null; do
9321 potliblink=`ls -ld $potlib | $SED 's/.* -> //'`
9322 case $potliblink in
9323 [\\/]* | [A-Za-z]:[\\/]*) potlib=$potliblink;;
9324 *) potlib=`$ECHO "$potlib" | $SED 's|[^/]*$||'`"$potliblink";;
9325 esac
9326 done
9327 if eval $file_magic_cmd \"\$potlib\" 2>/dev/null |
9328 $SED -e 10q |
9329 $EGREP "$file_magic_regex" > /dev/null; then
9330 func_append newdeplibs " $a_deplib"
9331 a_deplib=
9332 break 2
9333 fi
9334 done
9335 done
9336 fi
9337 if test -n "$a_deplib"; then
9338 droppeddeps=yes
9339 echo
9340 $ECHO "*** Warning: linker path does not have real file for library $a_deplib."
9341 echo "*** I have the capability to make that library automatically link in when"
9342 echo "*** you link to this library. But I can only do this if you have a"
9343 echo "*** shared version of the library, which you do not appear to have"
9344 echo "*** because I did check the linker path looking for a file starting"
9345 if test -z "$potlib"; then
9346 $ECHO "*** with $libname but no candidates were found. (...for file magic test)"
9347 else
9348 $ECHO "*** with $libname and none of the candidates passed a file format test"
9349 $ECHO "*** using a file magic. Last file checked: $potlib"
9350 fi
9351 fi
9352 ;;
9353 *)
9354 # Add a -L argument.
9355 func_append newdeplibs " $a_deplib"
9356 ;;
9357 esac
9358 done # Gone through all deplibs.
9359 ;;
9360 match_pattern*)
9361 set dummy $deplibs_check_method; shift
9362 match_pattern_regex=`expr "$deplibs_check_method" : "$1 \(.*\)"`
9363 for a_deplib in $deplibs; do
9364 case $a_deplib in
9365 -l*)
9366 func_stripname -l '' "$a_deplib"
9367 name=$func_stripname_result
9368 if test yes = "$allow_libtool_libs_with_static_runtimes"; then
9369 case " $predeps $postdeps " in
9370 *" $a_deplib "*)
9371 func_append newdeplibs " $a_deplib"
9372 a_deplib=
9373 ;;
9374 esac
9375 fi
9376 if test -n "$a_deplib"; then
9377 libname=`eval "\\$ECHO \"$libname_spec\""`
9378 for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do
9379 potential_libs=`ls $i/$libname[.-]* 2>/dev/null`
9380 for potent_lib in $potential_libs; do
9381 potlib=$potent_lib # see symlink-check above in file_magic test
9382 if eval "\$ECHO \"$potent_lib\"" 2>/dev/null | $SED 10q | \
9383 $EGREP "$match_pattern_regex" > /dev/null; then
9384 func_append newdeplibs " $a_deplib"
9385 a_deplib=
9386 break 2
9387 fi
9388 done
9389 done
9390 fi
9391 if test -n "$a_deplib"; then
9392 droppeddeps=yes
9393 echo
9394 $ECHO "*** Warning: linker path does not have real file for library $a_deplib."
9395 echo "*** I have the capability to make that library automatically link in when"
9396 echo "*** you link to this library. But I can only do this if you have a"
9397 echo "*** shared version of the library, which you do not appear to have"
9398 echo "*** because I did check the linker path looking for a file starting"
9399 if test -z "$potlib"; then
9400 $ECHO "*** with $libname but no candidates were found. (...for regex pattern test)"
9401 else
9402 $ECHO "*** with $libname and none of the candidates passed a file format test"
9403 $ECHO "*** using a regex pattern. Last file checked: $potlib"
9404 fi
9405 fi
9406 ;;
9407 *)
9408 # Add a -L argument.
9409 func_append newdeplibs " $a_deplib"
9410 ;;
9411 esac
9412 done # Gone through all deplibs.
9413 ;;
9414 none | unknown | *)
9415 newdeplibs=
9416 tmp_deplibs=`$ECHO " $deplibs" | $SED 's/ -lc$//; s/ -[LR][^ ]*//g'`
9417 if test yes = "$allow_libtool_libs_with_static_runtimes"; then
9418 for i in $predeps $postdeps; do
9419 # can't use Xsed below, because $i might contain '/'
9420 tmp_deplibs=`$ECHO " $tmp_deplibs" | $SED "s|$i||"`
9421 done
9422 fi
9423 case $tmp_deplibs in
9424 *[!\ \ ]*)
9425 echo
9426 if test none = "$deplibs_check_method"; then
9427 echo "*** Warning: inter-library dependencies are not supported in this platform."
9428 else
9429 echo "*** Warning: inter-library dependencies are not known to be supported."
9430 fi
9431 echo "*** All declared inter-library dependencies are being dropped."
9432 droppeddeps=yes
9433 ;;
9434 esac
9435 ;;
9436 esac
9437 versuffix=$versuffix_save
9438 major=$major_save
9439 release=$release_save
9440 libname=$libname_save
9441 name=$name_save
9442
9443 case $host in
9444 *-*-rhapsody* | *-*-darwin1.[012])
9445 # On Rhapsody replace the C library with the System framework
9446 newdeplibs=`$ECHO " $newdeplibs" | $SED 's/ -lc / System.ltframework /'`
9447 ;;
9448 esac
9449
9450 if test yes = "$droppeddeps"; then
9451 if test yes = "$module"; then
9452 echo
9453 echo "*** Warning: libtool could not satisfy all declared inter-library"
9454 $ECHO "*** dependencies of module $libname. Therefore, libtool will create"
9455 echo "*** a static module, that should work as long as the dlopening"
9456 echo "*** application is linked with the -dlopen flag."
9457 if test -z "$global_symbol_pipe"; then
9458 echo
9459 echo "*** However, this would only work if libtool was able to extract symbol"
9460 echo "*** lists from a program, using 'nm' or equivalent, but libtool could"
9461 echo "*** not find such a program. So, this module is probably useless."
9462 echo "*** 'nm' from GNU binutils and a full rebuild may help."
9463 fi
9464 if test no = "$build_old_libs"; then
9465 oldlibs=$output_objdir/$libname.$libext
9466 build_libtool_libs=module
9467 build_old_libs=yes
9468 else
9469 build_libtool_libs=no
9470 fi
9471 else
9472 echo "*** The inter-library dependencies that have been dropped here will be"
9473 echo "*** automatically added whenever a program is linked with this library"
9474 echo "*** or is declared to -dlopen it."
9475
9476 if test no = "$allow_undefined"; then
9477 echo
9478 echo "*** Since this library must not contain undefined symbols,"
9479 echo "*** because either the platform does not support them or"
9480 echo "*** it was explicitly requested with -no-undefined,"
9481 echo "*** libtool will only create a static version of it."
9482 if test no = "$build_old_libs"; then
9483 oldlibs=$output_objdir/$libname.$libext
9484 build_libtool_libs=module
9485 build_old_libs=yes
9486 else
9487 build_libtool_libs=no
9488 fi
9489 fi
9490 fi
9491 fi
9492 # Done checking deplibs!
9493 deplibs=$newdeplibs
9494 fi
9495 # Time to change all our "foo.ltframework" stuff back to "-framework foo"
9496 case $host in
9497 *-*-darwin*)
9498 newdeplibs=`$ECHO " $newdeplibs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'`
9499 new_inherited_linker_flags=`$ECHO " $new_inherited_linker_flags" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'`
9500 deplibs=`$ECHO " $deplibs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'`
9501 ;;
9502 esac
9503
9504 # move library search paths that coincide with paths to not yet
9505 # installed libraries to the beginning of the library search list
9506 new_libs=
9507 for path in $notinst_path; do
9508 case " $new_libs " in
9509 *" -L$path/$objdir "*) ;;
9510 *)
9511 case " $deplibs " in
9512 *" -L$path/$objdir "*)
9513 func_append new_libs " -L$path/$objdir" ;;
9514 esac
9515 ;;
9516 esac
9517 done
9518 for deplib in $deplibs; do
9519 case $deplib in
9520 -L*)
9521 case " $new_libs " in
9522 *" $deplib "*) ;;
9523 *) func_append new_libs " $deplib" ;;
9524 esac
9525 ;;
9526 *) func_append new_libs " $deplib" ;;
9527 esac
9528 done
9529 deplibs=$new_libs
9530
9531 # All the library-specific variables (install_libdir is set above).
9532 library_names=
9533 old_library=
9534 dlname=
9535
9536 # Test again, we may have decided not to build it any more
9537 if test yes = "$build_libtool_libs"; then
9538 # Remove $wl instances when linking with ld.
9539 # FIXME: should test the right _cmds variable.
9540 case $archive_cmds in
9541 *\$LD\ *) wl= ;;
9542 esac
9543 if test yes = "$hardcode_into_libs"; then
9544 # Hardcode the library paths
9545 hardcode_libdirs=
9546 dep_rpath=
9547 rpath=$finalize_rpath
9548 test relink = "$opt_mode" || rpath=$compile_rpath$rpath
9549 for libdir in $rpath; do
9550 if test -n "$hardcode_libdir_flag_spec"; then
9551 if test -n "$hardcode_libdir_separator"; then
9552 func_replace_sysroot "$libdir"
9553 libdir=$func_replace_sysroot_result
9554 if test -z "$hardcode_libdirs"; then
9555 hardcode_libdirs=$libdir
9556 else
9557 # Just accumulate the unique libdirs.
9558 case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in
9559 *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*)
9560 ;;
9561 *)
9562 func_append hardcode_libdirs "$hardcode_libdir_separator$libdir"
9563 ;;
9564 esac
9565 fi
9566 else
9567 eval flag=\"$hardcode_libdir_flag_spec\"
9568 func_append dep_rpath " $flag"
9569 fi
9570 elif test -n "$runpath_var"; then
9571 case "$perm_rpath " in
9572 *" $libdir "*) ;;
9573 *) func_append perm_rpath " $libdir" ;;
9574 esac
9575 fi
9576 done
9577 # Substitute the hardcoded libdirs into the rpath.
9578 if test -n "$hardcode_libdir_separator" &&
9579 test -n "$hardcode_libdirs"; then
9580 libdir=$hardcode_libdirs
9581 eval "dep_rpath=\"$hardcode_libdir_flag_spec\""
9582 fi
9583 if test -n "$runpath_var" && test -n "$perm_rpath"; then
9584 # We should set the runpath_var.
9585 rpath=
9586 for dir in $perm_rpath; do
9587 func_append rpath "$dir:"
9588 done
9589 eval "$runpath_var='$rpath\$$runpath_var'; export $runpath_var"
9590 fi
9591 test -n "$dep_rpath" && deplibs="$dep_rpath $deplibs"
9592 fi
9593
9594 shlibpath=$finalize_shlibpath
9595 test relink = "$opt_mode" || shlibpath=$compile_shlibpath$shlibpath
9596 if test -n "$shlibpath"; then
9597 eval "$shlibpath_var='$shlibpath\$$shlibpath_var'; export $shlibpath_var"
9598 fi
9599
9600 # Get the real and link names of the library.
9601 eval shared_ext=\"$shrext_cmds\"
9602 eval library_names=\"$library_names_spec\"
9603 set dummy $library_names
9604 shift
9605 realname=$1
9606 shift
9607
9608 if test -n "$soname_spec"; then
9609 eval soname=\"$soname_spec\"
9610 else
9611 soname=$realname
9612 fi
9613 if test -z "$dlname"; then
9614 dlname=$soname
9615 fi
9616
9617 lib=$output_objdir/$realname
9618 linknames=
9619 for link
9620 do
9621 func_append linknames " $link"
9622 done
9623
9624 # Use standard objects if they are pic
9625 test -z "$pic_flag" && libobjs=`$ECHO "$libobjs" | $SP2NL | $SED "$lo2o" | $NL2SP`
9626 test "X$libobjs" = "X " && libobjs=
9627
9628 delfiles=
9629 if test -n "$export_symbols" && test -n "$include_expsyms"; then
9630 $opt_dry_run || cp "$export_symbols" "$output_objdir/$libname.uexp"
9631 export_symbols=$output_objdir/$libname.uexp
9632 func_append delfiles " $export_symbols"
9633 fi
9634
9635 orig_export_symbols=
9636 case $host_os in
9637 cygwin* | mingw* | cegcc*)
9638 if test -n "$export_symbols" && test -z "$export_symbols_regex"; then
9639 # exporting using user supplied symfile
9640 func_dll_def_p "$export_symbols" || {
9641 # and it's NOT already a .def file. Must figure out
9642 # which of the given symbols are data symbols and tag
9643 # them as such. So, trigger use of export_symbols_cmds.
9644 # export_symbols gets reassigned inside the "prepare
9645 # the list of exported symbols" if statement, so the
9646 # include_expsyms logic still works.
9647 orig_export_symbols=$export_symbols
9648 export_symbols=
9649 always_export_symbols=yes
9650 }
9651 fi
9652 ;;
9653 esac
9654
9655 # Prepare the list of exported symbols
9656 if test -z "$export_symbols"; then
9657 if test yes = "$always_export_symbols" || test -n "$export_symbols_regex"; then
9658 func_verbose "generating symbol list for '$libname.la'"
9659 export_symbols=$output_objdir/$libname.exp
9660 $opt_dry_run || $RM $export_symbols
9661 cmds=$export_symbols_cmds
9662 save_ifs=$IFS; IFS='~'
9663 for cmd1 in $cmds; do
9664 IFS=$save_ifs
9665 # Take the normal branch if the nm_file_list_spec branch
9666 # doesn't work or if tool conversion is not needed.
9667 case $nm_file_list_spec~$to_tool_file_cmd in
9668 *~func_convert_file_noop | *~func_convert_file_msys_to_w32 | ~*)
9669 try_normal_branch=yes
9670 eval cmd=\"$cmd1\"
9671 func_len " $cmd"
9672 len=$func_len_result
9673 ;;
9674 *)
9675 try_normal_branch=no
9676 ;;
9677 esac
9678 if test yes = "$try_normal_branch" \
9679 && { test "$len" -lt "$max_cmd_len" \
9680 || test "$max_cmd_len" -le -1; }
9681 then
9682 func_show_eval "$cmd" 'exit $?'
9683 skipped_export=false
9684 elif test -n "$nm_file_list_spec"; then
9685 func_basename "$output"
9686 output_la=$func_basename_result
9687 save_libobjs=$libobjs
9688 save_output=$output
9689 output=$output_objdir/$output_la.nm
9690 func_to_tool_file "$output"
9691 libobjs=$nm_file_list_spec$func_to_tool_file_result
9692 func_append delfiles " $output"
9693 func_verbose "creating $NM input file list: $output"
9694 for obj in $save_libobjs; do
9695 func_to_tool_file "$obj"
9696 $ECHO "$func_to_tool_file_result"
9697 done > "$output"
9698 eval cmd=\"$cmd1\"
9699 func_show_eval "$cmd" 'exit $?'
9700 output=$save_output
9701 libobjs=$save_libobjs
9702 skipped_export=false
9703 else
9704 # The command line is too long to execute in one step.
9705 func_verbose "using reloadable object file for export list..."
9706 skipped_export=:
9707 # Break out early, otherwise skipped_export may be
9708 # set to false by a later but shorter cmd.
9709 break
9710 fi
9711 done
9712 IFS=$save_ifs
9713 if test -n "$export_symbols_regex" && test : != "$skipped_export"; then
9714 func_show_eval '$EGREP -e "$export_symbols_regex" "$export_symbols" > "${export_symbols}T"'
9715 func_show_eval '$MV "${export_symbols}T" "$export_symbols"'
9716 fi
9717 fi
9718 fi
9719
9720 if test -n "$export_symbols" && test -n "$include_expsyms"; then
9721 tmp_export_symbols=$export_symbols
9722 test -n "$orig_export_symbols" && tmp_export_symbols=$orig_export_symbols
9723 $opt_dry_run || eval '$ECHO "$include_expsyms" | $SP2NL >> "$tmp_export_symbols"'
9724 fi
9725
9726 if test : != "$skipped_export" && test -n "$orig_export_symbols"; then
9727 # The given exports_symbols file has to be filtered, so filter it.
9728 func_verbose "filter symbol list for '$libname.la' to tag DATA exports"
9729 # FIXME: $output_objdir/$libname.filter potentially contains lots of
9730 # 's' commands, which not all seds can handle. GNU sed should be fine
9731 # though. Also, the filter scales superlinearly with the number of
9732 # global variables. join(1) would be nice here, but unfortunately
9733 # isn't a blessed tool.
9734 $opt_dry_run || $SED -e '/[ ,]DATA/!d;s,\(.*\)\([ \,].*\),s|^\1$|\1\2|,' < $export_symbols > $output_objdir/$libname.filter
9735 func_append delfiles " $export_symbols $output_objdir/$libname.filter"
9736 export_symbols=$output_objdir/$libname.def
9737 $opt_dry_run || $SED -f $output_objdir/$libname.filter < $orig_export_symbols > $export_symbols
9738 fi
9739
9740 tmp_deplibs=
9741 for test_deplib in $deplibs; do
9742 case " $convenience " in
9743 *" $test_deplib "*) ;;
9744 *)
9745 func_append tmp_deplibs " $test_deplib"
9746 ;;
9747 esac
9748 done
9749 deplibs=$tmp_deplibs
9750
9751 if test -n "$convenience"; then
9752 if test -n "$whole_archive_flag_spec" &&
9753 test yes = "$compiler_needs_object" &&
9754 test -z "$libobjs"; then
9755 # extract the archives, so we have objects to list.
9756 # TODO: could optimize this to just extract one archive.
9757 whole_archive_flag_spec=
9758 fi
9759 if test -n "$whole_archive_flag_spec"; then
9760 save_libobjs=$libobjs
9761 eval libobjs=\"\$libobjs $whole_archive_flag_spec\"
9762 test "X$libobjs" = "X " && libobjs=
9763 else
9764 gentop=$output_objdir/${outputname}x
9765 func_append generated " $gentop"
9766
9767 func_extract_archives $gentop $convenience
9768 func_append libobjs " $func_extract_archives_result"
9769 test "X$libobjs" = "X " && libobjs=
9770 fi
9771 fi
9772
9773 if test yes = "$thread_safe" && test -n "$thread_safe_flag_spec"; then
9774 eval flag=\"$thread_safe_flag_spec\"
9775 func_append linker_flags " $flag"
9776 fi
9777
9778 # Make a backup of the uninstalled library when relinking
9779 if test relink = "$opt_mode"; then
9780 $opt_dry_run || eval '(cd $output_objdir && $RM ${realname}U && $MV $realname ${realname}U)' || exit $?
9781 fi
9782
9783 # Do each of the archive commands.
9784 if test yes = "$module" && test -n "$module_cmds"; then
9785 if test -n "$export_symbols" && test -n "$module_expsym_cmds"; then
9786 eval test_cmds=\"$module_expsym_cmds\"
9787 cmds=$module_expsym_cmds
9788 else
9789 eval test_cmds=\"$module_cmds\"
9790 cmds=$module_cmds
9791 fi
9792 else
9793 if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then
9794 eval test_cmds=\"$archive_expsym_cmds\"
9795 cmds=$archive_expsym_cmds
9796 else
9797 eval test_cmds=\"$archive_cmds\"
9798 cmds=$archive_cmds
9799 fi
9800 fi
9801
9802 if test : != "$skipped_export" &&
9803 func_len " $test_cmds" &&
9804 len=$func_len_result &&
9805 test "$len" -lt "$max_cmd_len" || test "$max_cmd_len" -le -1; then
9806 :
9807 else
9808 # The command line is too long to link in one step, link piecewise
9809 # or, if using GNU ld and skipped_export is not :, use a linker
9810 # script.
9811
9812 # Save the value of $output and $libobjs because we want to
9813 # use them later. If we have whole_archive_flag_spec, we
9814 # want to use save_libobjs as it was before
9815 # whole_archive_flag_spec was expanded, because we can't
9816 # assume the linker understands whole_archive_flag_spec.
9817 # This may have to be revisited, in case too many
9818 # convenience libraries get linked in and end up exceeding
9819 # the spec.
9820 if test -z "$convenience" || test -z "$whole_archive_flag_spec"; then
9821 save_libobjs=$libobjs
9822 fi
9823 save_output=$output
9824 func_basename "$output"
9825 output_la=$func_basename_result
9826
9827 # Clear the reloadable object creation command queue and
9828 # initialize k to one.
9829 test_cmds=
9830 concat_cmds=
9831 objlist=
9832 last_robj=
9833 k=1
9834
9835 if test -n "$save_libobjs" && test : != "$skipped_export" && test yes = "$with_gnu_ld"; then
9836 output=$output_objdir/$output_la.lnkscript
9837 func_verbose "creating GNU ld script: $output"
9838 echo 'INPUT (' > $output
9839 for obj in $save_libobjs
9840 do
9841 func_to_tool_file "$obj"
9842 $ECHO "$func_to_tool_file_result" >> $output
9843 done
9844 echo ')' >> $output
9845 func_append delfiles " $output"
9846 func_to_tool_file "$output"
9847 output=$func_to_tool_file_result
9848 elif test -n "$save_libobjs" && test : != "$skipped_export" && test -n "$file_list_spec"; then
9849 output=$output_objdir/$output_la.lnk
9850 func_verbose "creating linker input file list: $output"
9851 : > $output
9852 set x $save_libobjs
9853 shift
9854 firstobj=
9855 if test yes = "$compiler_needs_object"; then
9856 firstobj="$1 "
9857 shift
9858 fi
9859 for obj
9860 do
9861 func_to_tool_file "$obj"
9862 $ECHO "$func_to_tool_file_result" >> $output
9863 done
9864 func_append delfiles " $output"
9865 func_to_tool_file "$output"
9866 output=$firstobj\"$file_list_spec$func_to_tool_file_result\"
9867 else
9868 if test -n "$save_libobjs"; then
9869 func_verbose "creating reloadable object files..."
9870 output=$output_objdir/$output_la-$k.$objext
9871 eval test_cmds=\"$reload_cmds\"
9872 func_len " $test_cmds"
9873 len0=$func_len_result
9874 len=$len0
9875
9876 # Loop over the list of objects to be linked.
9877 for obj in $save_libobjs
9878 do
9879 func_len " $obj"
9880 func_arith $len + $func_len_result
9881 len=$func_arith_result
9882 if test -z "$objlist" ||
9883 test "$len" -lt "$max_cmd_len"; then
9884 func_append objlist " $obj"
9885 else
9886 # The command $test_cmds is almost too long, add a
9887 # command to the queue.
9888 if test 1 -eq "$k"; then
9889 # The first file doesn't have a previous command to add.
9890 reload_objs=$objlist
9891 eval concat_cmds=\"$reload_cmds\"
9892 else
9893 # All subsequent reloadable object files will link in
9894 # the last one created.
9895 reload_objs="$objlist $last_robj"
9896 eval concat_cmds=\"\$concat_cmds~$reload_cmds~\$RM $last_robj\"
9897 fi
9898 last_robj=$output_objdir/$output_la-$k.$objext
9899 func_arith $k + 1
9900 k=$func_arith_result
9901 output=$output_objdir/$output_la-$k.$objext
9902 objlist=" $obj"
9903 func_len " $last_robj"
9904 func_arith $len0 + $func_len_result
9905 len=$func_arith_result
9906 fi
9907 done
9908 # Handle the remaining objects by creating one last
9909 # reloadable object file. All subsequent reloadable object
9910 # files will link in the last one created.
9911 test -z "$concat_cmds" || concat_cmds=$concat_cmds~
9912 reload_objs="$objlist $last_robj"
9913 eval concat_cmds=\"\$concat_cmds$reload_cmds\"
9914 if test -n "$last_robj"; then
9915 eval concat_cmds=\"\$concat_cmds~\$RM $last_robj\"
9916 fi
9917 func_append delfiles " $output"
9918
9919 else
9920 output=
9921 fi
9922
9923 ${skipped_export-false} && {
9924 func_verbose "generating symbol list for '$libname.la'"
9925 export_symbols=$output_objdir/$libname.exp
9926 $opt_dry_run || $RM $export_symbols
9927 libobjs=$output
9928 # Append the command to create the export file.
9929 test -z "$concat_cmds" || concat_cmds=$concat_cmds~
9930 eval concat_cmds=\"\$concat_cmds$export_symbols_cmds\"
9931 if test -n "$last_robj"; then
9932 eval concat_cmds=\"\$concat_cmds~\$RM $last_robj\"
9933 fi
9934 }
9935
9936 test -n "$save_libobjs" &&
9937 func_verbose "creating a temporary reloadable object file: $output"
9938
9939 # Loop through the commands generated above and execute them.
9940 save_ifs=$IFS; IFS='~'
9941 for cmd in $concat_cmds; do
9942 IFS=$save_ifs
9943 $opt_quiet || {
9944 func_quote_for_expand "$cmd"
9945 eval "func_echo $func_quote_for_expand_result"
9946 }
9947 $opt_dry_run || eval "$cmd" || {
9948 lt_exit=$?
9949
9950 # Restore the uninstalled library and exit
9951 if test relink = "$opt_mode"; then
9952 ( cd "$output_objdir" && \
9953 $RM "${realname}T" && \
9954 $MV "${realname}U" "$realname" )
9955 fi
9956
9957 exit $lt_exit
9958 }
9959 done
9960 IFS=$save_ifs
9961
9962 if test -n "$export_symbols_regex" && ${skipped_export-false}; then
9963 func_show_eval '$EGREP -e "$export_symbols_regex" "$export_symbols" > "${export_symbols}T"'
9964 func_show_eval '$MV "${export_symbols}T" "$export_symbols"'
9965 fi
9966 fi
9967
9968 ${skipped_export-false} && {
9969 if test -n "$export_symbols" && test -n "$include_expsyms"; then
9970 tmp_export_symbols=$export_symbols
9971 test -n "$orig_export_symbols" && tmp_export_symbols=$orig_export_symbols
9972 $opt_dry_run || eval '$ECHO "$include_expsyms" | $SP2NL >> "$tmp_export_symbols"'
9973 fi
9974
9975 if test -n "$orig_export_symbols"; then
9976 # The given exports_symbols file has to be filtered, so filter it.
9977 func_verbose "filter symbol list for '$libname.la' to tag DATA exports"
9978 # FIXME: $output_objdir/$libname.filter potentially contains lots of
9979 # 's' commands, which not all seds can handle. GNU sed should be fine
9980 # though. Also, the filter scales superlinearly with the number of
9981 # global variables. join(1) would be nice here, but unfortunately
9982 # isn't a blessed tool.
9983 $opt_dry_run || $SED -e '/[ ,]DATA/!d;s,\(.*\)\([ \,].*\),s|^\1$|\1\2|,' < $export_symbols > $output_objdir/$libname.filter
9984 func_append delfiles " $export_symbols $output_objdir/$libname.filter"
9985 export_symbols=$output_objdir/$libname.def
9986 $opt_dry_run || $SED -f $output_objdir/$libname.filter < $orig_export_symbols > $export_symbols
9987 fi
9988 }
9989
9990 libobjs=$output
9991 # Restore the value of output.
9992 output=$save_output
9993
9994 if test -n "$convenience" && test -n "$whole_archive_flag_spec"; then
9995 eval libobjs=\"\$libobjs $whole_archive_flag_spec\"
9996 test "X$libobjs" = "X " && libobjs=
9997 fi
9998 # Expand the library linking commands again to reset the
9999 # value of $libobjs for piecewise linking.
10000
10001 # Do each of the archive commands.
10002 if test yes = "$module" && test -n "$module_cmds"; then
10003 if test -n "$export_symbols" && test -n "$module_expsym_cmds"; then
10004 cmds=$module_expsym_cmds
10005 else
10006 cmds=$module_cmds
10007 fi
10008 else
10009 if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then
10010 cmds=$archive_expsym_cmds
10011 else
10012 cmds=$archive_cmds
10013 fi
10014 fi
10015 fi
10016
10017 if test -n "$delfiles"; then
10018 # Append the command to remove temporary files to $cmds.
10019 eval cmds=\"\$cmds~\$RM $delfiles\"
10020 fi
10021
10022 # Add any objects from preloaded convenience libraries
10023 if test -n "$dlprefiles"; then
10024 gentop=$output_objdir/${outputname}x
10025 func_append generated " $gentop"
10026
10027 func_extract_archives $gentop $dlprefiles
10028 func_append libobjs " $func_extract_archives_result"
10029 test "X$libobjs" = "X " && libobjs=
10030 fi
10031
10032 save_ifs=$IFS; IFS='~'
10033 for cmd in $cmds; do
10034 IFS=$sp$nl
10035 eval cmd=\"$cmd\"
10036 IFS=$save_ifs
10037 $opt_quiet || {
10038 func_quote_for_expand "$cmd"
10039 eval "func_echo $func_quote_for_expand_result"
10040 }
10041 $opt_dry_run || eval "$cmd" || {
10042 lt_exit=$?
10043
10044 # Restore the uninstalled library and exit
10045 if test relink = "$opt_mode"; then
10046 ( cd "$output_objdir" && \
10047 $RM "${realname}T" && \
10048 $MV "${realname}U" "$realname" )
10049 fi
10050
10051 exit $lt_exit
10052 }
10053 done
10054 IFS=$save_ifs
10055
10056 # Restore the uninstalled library and exit
10057 if test relink = "$opt_mode"; then
10058 $opt_dry_run || eval '(cd $output_objdir && $RM ${realname}T && $MV $realname ${realname}T && $MV ${realname}U $realname)' || exit $?
10059
10060 if test -n "$convenience"; then
10061 if test -z "$whole_archive_flag_spec"; then
10062 func_show_eval '${RM}r "$gentop"'
10063 fi
10064 fi
10065
10066 exit $EXIT_SUCCESS
10067 fi
10068
10069 # Create links to the real library.
10070 for linkname in $linknames; do
10071 if test "$realname" != "$linkname"; then
10072 func_show_eval '(cd "$output_objdir" && $RM "$linkname" && $LN_S "$realname" "$linkname")' 'exit $?'
10073 fi
10074 done
10075
10076 # If -module or -export-dynamic was specified, set the dlname.
10077 if test yes = "$module" || test yes = "$export_dynamic"; then
10078 # On all known operating systems, these are identical.
10079 dlname=$soname
10080 fi
10081 fi
10082 ;;
10083
10084 obj)
10085 if test -n "$dlfiles$dlprefiles" || test no != "$dlself"; then
10086 func_warning "'-dlopen' is ignored for objects"
10087 fi
10088
10089 case " $deplibs" in
10090 *\ -l* | *\ -L*)
10091 func_warning "'-l' and '-L' are ignored for objects" ;;
10092 esac
10093
10094 test -n "$rpath" && \
10095 func_warning "'-rpath' is ignored for objects"
10096
10097 test -n "$xrpath" && \
10098 func_warning "'-R' is ignored for objects"
10099
10100 test -n "$vinfo" && \
10101 func_warning "'-version-info' is ignored for objects"
10102
10103 test -n "$release" && \
10104 func_warning "'-release' is ignored for objects"
10105
10106 case $output in
10107 *.lo)
10108 test -n "$objs$old_deplibs" && \
10109 func_fatal_error "cannot build library object '$output' from non-libtool objects"
10110
10111 libobj=$output
10112 func_lo2o "$libobj"
10113 obj=$func_lo2o_result
10114 ;;
10115 *)
10116 libobj=
10117 obj=$output
10118 ;;
10119 esac
10120
10121 # Delete the old objects.
10122 $opt_dry_run || $RM $obj $libobj
10123
10124 # Objects from convenience libraries. This assumes
10125 # single-version convenience libraries. Whenever we create
10126 # different ones for PIC/non-PIC, this we'll have to duplicate
10127 # the extraction.
10128 reload_conv_objs=
10129 gentop=
10130 # if reload_cmds runs $LD directly, get rid of -Wl from
10131 # whole_archive_flag_spec and hope we can get by with turning comma
10132 # into space.
10133 case $reload_cmds in
10134 *\$LD[\ \$]*) wl= ;;
10135 esac
10136 if test -n "$convenience"; then
10137 if test -n "$whole_archive_flag_spec"; then
10138 eval tmp_whole_archive_flags=\"$whole_archive_flag_spec\"
10139 test -n "$wl" || tmp_whole_archive_flags=`$ECHO "$tmp_whole_archive_flags" | $SED 's|,| |g'`
10140 reload_conv_objs=$reload_objs\ $tmp_whole_archive_flags
10141 else
10142 gentop=$output_objdir/${obj}x
10143 func_append generated " $gentop"
10144
10145 func_extract_archives $gentop $convenience
10146 reload_conv_objs="$reload_objs $func_extract_archives_result"
10147 fi
10148 fi
10149
10150 # If we're not building shared, we need to use non_pic_objs
10151 test yes = "$build_libtool_libs" || libobjs=$non_pic_objects
10152
10153 # Create the old-style object.
10154 reload_objs=$objs$old_deplibs' '`$ECHO "$libobjs" | $SP2NL | $SED "/\.$libext$/d; /\.lib$/d; $lo2o" | $NL2SP`' '$reload_conv_objs
10155
10156 output=$obj
10157 func_execute_cmds "$reload_cmds" 'exit $?'
10158
10159 # Exit if we aren't doing a library object file.
10160 if test -z "$libobj"; then
10161 if test -n "$gentop"; then
10162 func_show_eval '${RM}r "$gentop"'
10163 fi
10164
10165 exit $EXIT_SUCCESS
10166 fi
10167
10168 test yes = "$build_libtool_libs" || {
10169 if test -n "$gentop"; then
10170 func_show_eval '${RM}r "$gentop"'
10171 fi
10172
10173 # Create an invalid libtool object if no PIC, so that we don't
10174 # accidentally link it into a program.
10175 # $show "echo timestamp > $libobj"
10176 # $opt_dry_run || eval "echo timestamp > $libobj" || exit $?
10177 exit $EXIT_SUCCESS
10178 }
10179
10180 if test -n "$pic_flag" || test default != "$pic_mode"; then
10181 # Only do commands if we really have different PIC objects.
10182 reload_objs="$libobjs $reload_conv_objs"
10183 output=$libobj
10184 func_execute_cmds "$reload_cmds" 'exit $?'
10185 fi
10186
10187 if test -n "$gentop"; then
10188 func_show_eval '${RM}r "$gentop"'
10189 fi
10190
10191 exit $EXIT_SUCCESS
10192 ;;
10193
10194 prog)
10195 case $host in
10196 *cygwin*) func_stripname '' '.exe' "$output"
10197 output=$func_stripname_result.exe;;
10198 esac
10199 test -n "$vinfo" && \
10200 func_warning "'-version-info' is ignored for programs"
10201
10202 test -n "$release" && \
10203 func_warning "'-release' is ignored for programs"
10204
10205 $preload \
10206 && test unknown,unknown,unknown = "$dlopen_support,$dlopen_self,$dlopen_self_static" \
10207 && func_warning "'LT_INIT([dlopen])' not used. Assuming no dlopen support."
10208
10209 case $host in
10210 *-*-rhapsody* | *-*-darwin1.[012])
10211 # On Rhapsody replace the C library is the System framework
10212 compile_deplibs=`$ECHO " $compile_deplibs" | $SED 's/ -lc / System.ltframework /'`
10213 finalize_deplibs=`$ECHO " $finalize_deplibs" | $SED 's/ -lc / System.ltframework /'`
10214 ;;
10215 esac
10216
10217 case $host in
10218 *-*-darwin*)
10219 # Don't allow lazy linking, it breaks C++ global constructors
10220 # But is supposedly fixed on 10.4 or later (yay!).
10221 if test CXX = "$tagname"; then
10222 case ${MACOSX_DEPLOYMENT_TARGET-10.0} in
10223 10.[0123])
10224 func_append compile_command " $wl-bind_at_load"
10225 func_append finalize_command " $wl-bind_at_load"
10226 ;;
10227 esac
10228 fi
10229 # Time to change all our "foo.ltframework" stuff back to "-framework foo"
10230 compile_deplibs=`$ECHO " $compile_deplibs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'`
10231 finalize_deplibs=`$ECHO " $finalize_deplibs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'`
10232 ;;
10233 esac
10234
10235
10236 # move library search paths that coincide with paths to not yet
10237 # installed libraries to the beginning of the library search list
10238 new_libs=
10239 for path in $notinst_path; do
10240 case " $new_libs " in
10241 *" -L$path/$objdir "*) ;;
10242 *)
10243 case " $compile_deplibs " in
10244 *" -L$path/$objdir "*)
10245 func_append new_libs " -L$path/$objdir" ;;
10246 esac
10247 ;;
10248 esac
10249 done
10250 for deplib in $compile_deplibs; do
10251 case $deplib in
10252 -L*)
10253 case " $new_libs " in
10254 *" $deplib "*) ;;
10255 *) func_append new_libs " $deplib" ;;
10256 esac
10257 ;;
10258 *) func_append new_libs " $deplib" ;;
10259 esac
10260 done
10261 compile_deplibs=$new_libs
10262
10263
10264 func_append compile_command " $compile_deplibs"
10265 func_append finalize_command " $finalize_deplibs"
10266
10267 if test -n "$rpath$xrpath"; then
10268 # If the user specified any rpath flags, then add them.
10269 for libdir in $rpath $xrpath; do
10270 # This is the magic to use -rpath.
10271 case "$finalize_rpath " in
10272 *" $libdir "*) ;;
10273 *) func_append finalize_rpath " $libdir" ;;
10274 esac
10275 done
10276 fi
10277
10278 # Now hardcode the library paths
10279 rpath=
10280 hardcode_libdirs=
10281 for libdir in $compile_rpath $finalize_rpath; do
10282 if test -n "$hardcode_libdir_flag_spec"; then
10283 if test -n "$hardcode_libdir_separator"; then
10284 if test -z "$hardcode_libdirs"; then
10285 hardcode_libdirs=$libdir
10286 else
10287 # Just accumulate the unique libdirs.
10288 case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in
10289 *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*)
10290 ;;
10291 *)
10292 func_append hardcode_libdirs "$hardcode_libdir_separator$libdir"
10293 ;;
10294 esac
10295 fi
10296 else
10297 eval flag=\"$hardcode_libdir_flag_spec\"
10298 func_append rpath " $flag"
10299 fi
10300 elif test -n "$runpath_var"; then
10301 case "$perm_rpath " in
10302 *" $libdir "*) ;;
10303 *) func_append perm_rpath " $libdir" ;;
10304 esac
10305 fi
10306 case $host in
10307 *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*)
10308 testbindir=`$ECHO "$libdir" | $SED -e 's*/lib$*/bin*'`
10309 case :$dllsearchpath: in
10310 *":$libdir:"*) ;;
10311 ::) dllsearchpath=$libdir;;
10312 *) func_append dllsearchpath ":$libdir";;
10313 esac
10314 case :$dllsearchpath: in
10315 *":$testbindir:"*) ;;
10316 ::) dllsearchpath=$testbindir;;
10317 *) func_append dllsearchpath ":$testbindir";;
10318 esac
10319 ;;
10320 esac
10321 done
10322 # Substitute the hardcoded libdirs into the rpath.
10323 if test -n "$hardcode_libdir_separator" &&
10324 test -n "$hardcode_libdirs"; then
10325 libdir=$hardcode_libdirs
10326 eval rpath=\" $hardcode_libdir_flag_spec\"
10327 fi
10328 compile_rpath=$rpath
10329
10330 rpath=
10331 hardcode_libdirs=
10332 for libdir in $finalize_rpath; do
10333 if test -n "$hardcode_libdir_flag_spec"; then
10334 if test -n "$hardcode_libdir_separator"; then
10335 if test -z "$hardcode_libdirs"; then
10336 hardcode_libdirs=$libdir
10337 else
10338 # Just accumulate the unique libdirs.
10339 case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in
10340 *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*)
10341 ;;
10342 *)
10343 func_append hardcode_libdirs "$hardcode_libdir_separator$libdir"
10344 ;;
10345 esac
10346 fi
10347 else
10348 eval flag=\"$hardcode_libdir_flag_spec\"
10349 func_append rpath " $flag"
10350 fi
10351 elif test -n "$runpath_var"; then
10352 case "$finalize_perm_rpath " in
10353 *" $libdir "*) ;;
10354 *) func_append finalize_perm_rpath " $libdir" ;;
10355 esac
10356 fi
10357 done
10358 # Substitute the hardcoded libdirs into the rpath.
10359 if test -n "$hardcode_libdir_separator" &&
10360 test -n "$hardcode_libdirs"; then
10361 libdir=$hardcode_libdirs
10362 eval rpath=\" $hardcode_libdir_flag_spec\"
10363 fi
10364 finalize_rpath=$rpath
10365
10366 if test -n "$libobjs" && test yes = "$build_old_libs"; then
10367 # Transform all the library objects into standard objects.
10368 compile_command=`$ECHO "$compile_command" | $SP2NL | $SED "$lo2o" | $NL2SP`
10369 finalize_command=`$ECHO "$finalize_command" | $SP2NL | $SED "$lo2o" | $NL2SP`
10370 fi
10371
10372 func_generate_dlsyms "$outputname" "@PROGRAM@" false
10373
10374 # template prelinking step
10375 if test -n "$prelink_cmds"; then
10376 func_execute_cmds "$prelink_cmds" 'exit $?'
10377 fi
10378
10379 wrappers_required=:
10380 case $host in
10381 *cegcc* | *mingw32ce*)
10382 # Disable wrappers for cegcc and mingw32ce hosts, we are cross compiling anyway.
10383 wrappers_required=false
10384 ;;
10385 *cygwin* | *mingw* )
10386 test yes = "$build_libtool_libs" || wrappers_required=false
10387 ;;
10388 *)
10389 if test no = "$need_relink" || test yes != "$build_libtool_libs"; then
10390 wrappers_required=false
10391 fi
10392 ;;
10393 esac
10394 $wrappers_required || {
10395 # Replace the output file specification.
10396 compile_command=`$ECHO "$compile_command" | $SED 's%@OUTPUT@%'"$output"'%g'`
10397 link_command=$compile_command$compile_rpath
10398
10399 # We have no uninstalled library dependencies, so finalize right now.
10400 exit_status=0
10401 func_show_eval "$link_command" 'exit_status=$?'
10402
10403 if test -n "$postlink_cmds"; then
10404 func_to_tool_file "$output"
10405 postlink_cmds=`func_echo_all "$postlink_cmds" | $SED -e 's%@OUTPUT@%'"$output"'%g' -e 's%@TOOL_OUTPUT@%'"$func_to_tool_file_result"'%g'`
10406 func_execute_cmds "$postlink_cmds" 'exit $?'
10407 fi
10408
10409 # Delete the generated files.
10410 if test -f "$output_objdir/${outputname}S.$objext"; then
10411 func_show_eval '$RM "$output_objdir/${outputname}S.$objext"'
10412 fi
10413
10414 exit $exit_status
10415 }
10416
10417 if test -n "$compile_shlibpath$finalize_shlibpath"; then
10418 compile_command="$shlibpath_var=\"$compile_shlibpath$finalize_shlibpath\$$shlibpath_var\" $compile_command"
10419 fi
10420 if test -n "$finalize_shlibpath"; then
10421 finalize_command="$shlibpath_var=\"$finalize_shlibpath\$$shlibpath_var\" $finalize_command"
10422 fi
10423
10424 compile_var=
10425 finalize_var=
10426 if test -n "$runpath_var"; then
10427 if test -n "$perm_rpath"; then
10428 # We should set the runpath_var.
10429 rpath=
10430 for dir in $perm_rpath; do
10431 func_append rpath "$dir:"
10432 done
10433 compile_var="$runpath_var=\"$rpath\$$runpath_var\" "
10434 fi
10435 if test -n "$finalize_perm_rpath"; then
10436 # We should set the runpath_var.
10437 rpath=
10438 for dir in $finalize_perm_rpath; do
10439 func_append rpath "$dir:"
10440 done
10441 finalize_var="$runpath_var=\"$rpath\$$runpath_var\" "
10442 fi
10443 fi
10444
10445 if test yes = "$no_install"; then
10446 # We don't need to create a wrapper script.
10447 link_command=$compile_var$compile_command$compile_rpath
10448 # Replace the output file specification.
10449 link_command=`$ECHO "$link_command" | $SED 's%@OUTPUT@%'"$output"'%g'`
10450 # Delete the old output file.
10451 $opt_dry_run || $RM $output
10452 # Link the executable and exit
10453 func_show_eval "$link_command" 'exit $?'
10454
10455 if test -n "$postlink_cmds"; then
10456 func_to_tool_file "$output"
10457 postlink_cmds=`func_echo_all "$postlink_cmds" | $SED -e 's%@OUTPUT@%'"$output"'%g' -e 's%@TOOL_OUTPUT@%'"$func_to_tool_file_result"'%g'`
10458 func_execute_cmds "$postlink_cmds" 'exit $?'
10459 fi
10460
10461 exit $EXIT_SUCCESS
10462 fi
10463
10464 case $hardcode_action,$fast_install in
10465 relink,*)
10466 # Fast installation is not supported
10467 link_command=$compile_var$compile_command$compile_rpath
10468 relink_command=$finalize_var$finalize_command$finalize_rpath
10469
10470 func_warning "this platform does not like uninstalled shared libraries"
10471 func_warning "'$output' will be relinked during installation"
10472 ;;
10473 *,yes)
10474 link_command=$finalize_var$compile_command$finalize_rpath
10475 relink_command=`$ECHO "$compile_var$compile_command$compile_rpath" | $SED 's%@OUTPUT@%\$progdir/\$file%g'`
10476 ;;
10477 *,no)
10478 link_command=$compile_var$compile_command$compile_rpath
10479 relink_command=$finalize_var$finalize_command$finalize_rpath
10480 ;;
10481 *,needless)
10482 link_command=$finalize_var$compile_command$finalize_rpath
10483 relink_command=
10484 ;;
10485 esac
10486
10487 # Replace the output file specification.
10488 link_command=`$ECHO "$link_command" | $SED 's%@OUTPUT@%'"$output_objdir/$outputname"'%g'`
10489
10490 # Delete the old output files.
10491 $opt_dry_run || $RM $output $output_objdir/$outputname $output_objdir/lt-$outputname
10492
10493 func_show_eval "$link_command" 'exit $?'
10494
10495 if test -n "$postlink_cmds"; then
10496 func_to_tool_file "$output_objdir/$outputname"
10497 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'`
10498 func_execute_cmds "$postlink_cmds" 'exit $?'
10499 fi
10500
10501 # Now create the wrapper script.
10502 func_verbose "creating $output"
10503
10504 # Quote the relink command for shipping.
10505 if test -n "$relink_command"; then
10506 # Preserve any variables that may affect compiler behavior
10507 for var in $variables_saved_for_relink; do
10508 if eval test -z \"\${$var+set}\"; then
10509 relink_command="{ test -z \"\${$var+set}\" || $lt_unset $var || { $var=; export $var; }; }; $relink_command"
10510 elif eval var_value=\$$var; test -z "$var_value"; then
10511 relink_command="$var=; export $var; $relink_command"
10512 else
10513 func_quote_for_eval "$var_value"
10514 relink_command="$var=$func_quote_for_eval_result; export $var; $relink_command"
10515 fi
10516 done
10517 relink_command="(cd `pwd`; $relink_command)"
10518 relink_command=`$ECHO "$relink_command" | $SED "$sed_quote_subst"`
10519 fi
10520
10521 # Only actually do things if not in dry run mode.
10522 $opt_dry_run || {
10523 # win32 will think the script is a binary if it has
10524 # a .exe suffix, so we strip it off here.
10525 case $output in
10526 *.exe) func_stripname '' '.exe' "$output"
10527 output=$func_stripname_result ;;
10528 esac
10529 # test for cygwin because mv fails w/o .exe extensions
10530 case $host in
10531 *cygwin*)
10532 exeext=.exe
10533 func_stripname '' '.exe' "$outputname"
10534 outputname=$func_stripname_result ;;
10535 *) exeext= ;;
10536 esac
10537 case $host in
10538 *cygwin* | *mingw* )
10539 func_dirname_and_basename "$output" "" "."
10540 output_name=$func_basename_result
10541 output_path=$func_dirname_result
10542 cwrappersource=$output_path/$objdir/lt-$output_name.c
10543 cwrapper=$output_path/$output_name.exe
10544 $RM $cwrappersource $cwrapper
10545 trap "$RM $cwrappersource $cwrapper; exit $EXIT_FAILURE" 1 2 15
10546
10547 func_emit_cwrapperexe_src > $cwrappersource
10548
10549 # The wrapper executable is built using the $host compiler,
10550 # because it contains $host paths and files. If cross-
10551 # compiling, it, like the target executable, must be
10552 # executed on the $host or under an emulation environment.
10553 $opt_dry_run || {
10554 $LTCC $LTCFLAGS -o $cwrapper $cwrappersource
10555 $STRIP $cwrapper
10556 }
10557
10558 # Now, create the wrapper script for func_source use:
10559 func_ltwrapper_scriptname $cwrapper
10560 $RM $func_ltwrapper_scriptname_result
10561 trap "$RM $func_ltwrapper_scriptname_result; exit $EXIT_FAILURE" 1 2 15
10562 $opt_dry_run || {
10563 # note: this script will not be executed, so do not chmod.
10564 if test "x$build" = "x$host"; then
10565 $cwrapper --lt-dump-script > $func_ltwrapper_scriptname_result
10566 else
10567 func_emit_wrapper no > $func_ltwrapper_scriptname_result
10568 fi
10569 }
10570 ;;
10571 * )
10572 $RM $output
10573 trap "$RM $output; exit $EXIT_FAILURE" 1 2 15
10574
10575 func_emit_wrapper no > $output
10576 chmod +x $output
10577 ;;
10578 esac
10579 }
10580 exit $EXIT_SUCCESS
10581 ;;
10582 esac
10583
10584 # See if we need to build an old-fashioned archive.
10585 for oldlib in $oldlibs; do
10586
10587 case $build_libtool_libs in
10588 convenience)
10589 oldobjs="$libobjs_save $symfileobj"
10590 addlibs=$convenience
10591 build_libtool_libs=no
10592 ;;
10593 module)
10594 oldobjs=$libobjs_save
10595 addlibs=$old_convenience
10596 build_libtool_libs=no
10597 ;;
10598 *)
10599 oldobjs="$old_deplibs $non_pic_objects"
10600 $preload && test -f "$symfileobj" \
10601 && func_append oldobjs " $symfileobj"
10602 addlibs=$old_convenience
10603 ;;
10604 esac
10605
10606 if test -n "$addlibs"; then
10607 gentop=$output_objdir/${outputname}x
10608 func_append generated " $gentop"
10609
10610 func_extract_archives $gentop $addlibs
10611 func_append oldobjs " $func_extract_archives_result"
10612 fi
10613
10614 # Do each command in the archive commands.
10615 if test -n "$old_archive_from_new_cmds" && test yes = "$build_libtool_libs"; then
10616 cmds=$old_archive_from_new_cmds
10617 else
10618
10619 # Add any objects from preloaded convenience libraries
10620 if test -n "$dlprefiles"; then
10621 gentop=$output_objdir/${outputname}x
10622 func_append generated " $gentop"
10623
10624 func_extract_archives $gentop $dlprefiles
10625 func_append oldobjs " $func_extract_archives_result"
10626 fi
10627
10628 # POSIX demands no paths to be encoded in archives. We have
10629 # to avoid creating archives with duplicate basenames if we
10630 # might have to extract them afterwards, e.g., when creating a
10631 # static archive out of a convenience library, or when linking
10632 # the entirety of a libtool archive into another (currently
10633 # not supported by libtool).
10634 if (for obj in $oldobjs
10635 do
10636 func_basename "$obj"
10637 $ECHO "$func_basename_result"
10638 done | sort | sort -uc >/dev/null 2>&1); then
10639 :
10640 else
10641 echo "copying selected object files to avoid basename conflicts..."
10642 gentop=$output_objdir/${outputname}x
10643 func_append generated " $gentop"
10644 func_mkdir_p "$gentop"
10645 save_oldobjs=$oldobjs
10646 oldobjs=
10647 counter=1
10648 for obj in $save_oldobjs
10649 do
10650 func_basename "$obj"
10651 objbase=$func_basename_result
10652 case " $oldobjs " in
10653 " ") oldobjs=$obj ;;
10654 *[\ /]"$objbase "*)
10655 while :; do
10656 # Make sure we don't pick an alternate name that also
10657 # overlaps.
10658 newobj=lt$counter-$objbase
10659 func_arith $counter + 1
10660 counter=$func_arith_result
10661 case " $oldobjs " in
10662 *[\ /]"$newobj "*) ;;
10663 *) if test ! -f "$gentop/$newobj"; then break; fi ;;
10664 esac
10665 done
10666 func_show_eval "ln $obj $gentop/$newobj || cp $obj $gentop/$newobj"
10667 func_append oldobjs " $gentop/$newobj"
10668 ;;
10669 *) func_append oldobjs " $obj" ;;
10670 esac
10671 done
10672 fi
10673 func_to_tool_file "$oldlib" func_convert_file_msys_to_w32
10674 tool_oldlib=$func_to_tool_file_result
10675 eval cmds=\"$old_archive_cmds\"
10676
10677 func_len " $cmds"
10678 len=$func_len_result
10679 if test "$len" -lt "$max_cmd_len" || test "$max_cmd_len" -le -1; then
10680 cmds=$old_archive_cmds
10681 elif test -n "$archiver_list_spec"; then
10682 func_verbose "using command file archive linking..."
10683 for obj in $oldobjs
10684 do
10685 func_to_tool_file "$obj"
10686 $ECHO "$func_to_tool_file_result"
10687 done > $output_objdir/$libname.libcmd
10688 func_to_tool_file "$output_objdir/$libname.libcmd"
10689 oldobjs=" $archiver_list_spec$func_to_tool_file_result"
10690 cmds=$old_archive_cmds
10691 else
10692 # the command line is too long to link in one step, link in parts
10693 func_verbose "using piecewise archive linking..."
10694 save_RANLIB=$RANLIB
10695 RANLIB=:
10696 objlist=
10697 concat_cmds=
10698 save_oldobjs=$oldobjs
10699 oldobjs=
10700 # Is there a better way of finding the last object in the list?
10701 for obj in $save_oldobjs
10702 do
10703 last_oldobj=$obj
10704 done
10705 eval test_cmds=\"$old_archive_cmds\"
10706 func_len " $test_cmds"
10707 len0=$func_len_result
10708 len=$len0
10709 for obj in $save_oldobjs
10710 do
10711 func_len " $obj"
10712 func_arith $len + $func_len_result
10713 len=$func_arith_result
10714 func_append objlist " $obj"
10715 if test "$len" -lt "$max_cmd_len"; then
10716 :
10717 else
10718 # the above command should be used before it gets too long
10719 oldobjs=$objlist
10720 if test "$obj" = "$last_oldobj"; then
10721 RANLIB=$save_RANLIB
10722 fi
10723 test -z "$concat_cmds" || concat_cmds=$concat_cmds~
10724 eval concat_cmds=\"\$concat_cmds$old_archive_cmds\"
10725 objlist=
10726 len=$len0
10727 fi
10728 done
10729 RANLIB=$save_RANLIB
10730 oldobjs=$objlist
10731 if test -z "$oldobjs"; then
10732 eval cmds=\"\$concat_cmds\"
10733 else
10734 eval cmds=\"\$concat_cmds~\$old_archive_cmds\"
10735 fi
10736 fi
10737 fi
10738 func_execute_cmds "$cmds" 'exit $?'
10739 done
10740
10741 test -n "$generated" && \
10742 func_show_eval "${RM}r$generated"
10743
10744 # Now create the libtool archive.
10745 case $output in
10746 *.la)
10747 old_library=
10748 test yes = "$build_old_libs" && old_library=$libname.$libext
10749 func_verbose "creating $output"
10750
10751 # Preserve any variables that may affect compiler behavior
10752 for var in $variables_saved_for_relink; do
10753 if eval test -z \"\${$var+set}\"; then
10754 relink_command="{ test -z \"\${$var+set}\" || $lt_unset $var || { $var=; export $var; }; }; $relink_command"
10755 elif eval var_value=\$$var; test -z "$var_value"; then
10756 relink_command="$var=; export $var; $relink_command"
10757 else
10758 func_quote_for_eval "$var_value"
10759 relink_command="$var=$func_quote_for_eval_result; export $var; $relink_command"
10760 fi
10761 done
10762 # Quote the link command for shipping.
10763 relink_command="(cd `pwd`; $SHELL \"$progpath\" $preserve_args --mode=relink $libtool_args @inst_prefix_dir@)"
10764 relink_command=`$ECHO "$relink_command" | $SED "$sed_quote_subst"`
10765 if test yes = "$hardcode_automatic"; then
10766 relink_command=
10767 fi
10768
10769 # Only create the output if not a dry run.
10770 $opt_dry_run || {
10771 for installed in no yes; do
10772 if test yes = "$installed"; then
10773 if test -z "$install_libdir"; then
10774 break
10775 fi
10776 output=$output_objdir/${outputname}i
10777 # Replace all uninstalled libtool libraries with the installed ones
10778 newdependency_libs=
10779 for deplib in $dependency_libs; do
10780 case $deplib in
10781 *.la)
10782 func_basename "$deplib"
10783 name=$func_basename_result
10784 func_resolve_sysroot "$deplib"
10785 eval libdir=`$SED -n -e 's/^libdir=\(.*\)$/\1/p' $func_resolve_sysroot_result`
10786 test -z "$libdir" && \
10787 func_fatal_error "'$deplib' is not a valid libtool archive"
10788 func_append newdependency_libs " ${lt_sysroot:+=}$libdir/$name"
10789 ;;
10790 -L*)
10791 func_stripname -L '' "$deplib"
10792 func_replace_sysroot "$func_stripname_result"
10793 func_append newdependency_libs " -L$func_replace_sysroot_result"
10794 ;;
10795 -R*)
10796 func_stripname -R '' "$deplib"
10797 func_replace_sysroot "$func_stripname_result"
10798 func_append newdependency_libs " -R$func_replace_sysroot_result"
10799 ;;
10800 *) func_append newdependency_libs " $deplib" ;;
10801 esac
10802 done
10803 dependency_libs=$newdependency_libs
10804 newdlfiles=
10805
10806 for lib in $dlfiles; do
10807 case $lib in
10808 *.la)
10809 func_basename "$lib"
10810 name=$func_basename_result
10811 eval libdir=`$SED -n -e 's/^libdir=\(.*\)$/\1/p' $lib`
10812 test -z "$libdir" && \
10813 func_fatal_error "'$lib' is not a valid libtool archive"
10814 func_append newdlfiles " ${lt_sysroot:+=}$libdir/$name"
10815 ;;
10816 *) func_append newdlfiles " $lib" ;;
10817 esac
10818 done
10819 dlfiles=$newdlfiles
10820 newdlprefiles=
10821 for lib in $dlprefiles; do
10822 case $lib in
10823 *.la)
10824 # Only pass preopened files to the pseudo-archive (for
10825 # eventual linking with the app. that links it) if we
10826 # didn't already link the preopened objects directly into
10827 # the library:
10828 func_basename "$lib"
10829 name=$func_basename_result
10830 eval libdir=`$SED -n -e 's/^libdir=\(.*\)$/\1/p' $lib`
10831 test -z "$libdir" && \
10832 func_fatal_error "'$lib' is not a valid libtool archive"
10833 func_append newdlprefiles " ${lt_sysroot:+=}$libdir/$name"
10834 ;;
10835 esac
10836 done
10837 dlprefiles=$newdlprefiles
10838 else
10839 newdlfiles=
10840 for lib in $dlfiles; do
10841 case $lib in
10842 [\\/]* | [A-Za-z]:[\\/]*) abs=$lib ;;
10843 *) abs=`pwd`"/$lib" ;;
10844 esac
10845 func_append newdlfiles " $abs"
10846 done
10847 dlfiles=$newdlfiles
10848 newdlprefiles=
10849 for lib in $dlprefiles; do
10850 case $lib in
10851 [\\/]* | [A-Za-z]:[\\/]*) abs=$lib ;;
10852 *) abs=`pwd`"/$lib" ;;
10853 esac
10854 func_append newdlprefiles " $abs"
10855 done
10856 dlprefiles=$newdlprefiles
10857 fi
10858 $RM $output
10859 # place dlname in correct position for cygwin
10860 # In fact, it would be nice if we could use this code for all target
10861 # systems that can't hard-code library paths into their executables
10862 # and that have no shared library path variable independent of PATH,
10863 # but it turns out we can't easily determine that from inspecting
10864 # libtool variables, so we have to hard-code the OSs to which it
10865 # applies here; at the moment, that means platforms that use the PE
10866 # object format with DLL files. See the long comment at the top of
10867 # tests/bindir.at for full details.
10868 tdlname=$dlname
10869 case $host,$output,$installed,$module,$dlname in
10870 *cygwin*,*lai,yes,no,*.dll | *mingw*,*lai,yes,no,*.dll | *cegcc*,*lai,yes,no,*.dll)
10871 # If a -bindir argument was supplied, place the dll there.
10872 if test -n "$bindir"; then
10873 func_relative_path "$install_libdir" "$bindir"
10874 tdlname=$func_relative_path_result/$dlname
10875 else
10876 # Otherwise fall back on heuristic.
10877 tdlname=../bin/$dlname
10878 fi
10879 ;;
10880 esac
10881 $ECHO > $output "\
10882 # $outputname - a libtool library file
10883 # Generated by $PROGRAM (GNU $PACKAGE) $VERSION
10884 #
10885 # Please DO NOT delete this file!
10886 # It is necessary for linking the library.
10887
10888 # The name that we can dlopen(3).
10889 dlname='$tdlname'
10890
10891 # Names of this library.
10892 library_names='$library_names'
10893
10894 # The name of the static archive.
10895 old_library='$old_library'
10896
10897 # Linker flags that cannot go in dependency_libs.
10898 inherited_linker_flags='$new_inherited_linker_flags'
10899
10900 # Libraries that this one depends upon.
10901 dependency_libs='$dependency_libs'
10902
10903 # Names of additional weak libraries provided by this library
10904 weak_library_names='$weak_libs'
10905
10906 # Version information for $libname.
10907 current=$current
10908 age=$age
10909 revision=$revision
10910
10911 # Is this an already installed library?
10912 installed=$installed
10913
10914 # Should we warn about portability when linking against -modules?
10915 shouldnotlink=$module
10916
10917 # Files to dlopen/dlpreopen
10918 dlopen='$dlfiles'
10919 dlpreopen='$dlprefiles'
10920
10921 # Directory that this library needs to be installed in:
10922 libdir='$install_libdir'"
10923 if test no,yes = "$installed,$need_relink"; then
10924 $ECHO >> $output "\
10925 relink_command=\"$relink_command\""
10926 fi
10927 done
10928 }
10929
10930 # Do a symbolic link so that the libtool archive can be found in
10931 # LD_LIBRARY_PATH before the program is installed.
10932 func_show_eval '( cd "$output_objdir" && $RM "$outputname" && $LN_S "../$outputname" "$outputname" )' 'exit $?'
10933 ;;
10934 esac
10935 exit $EXIT_SUCCESS
10936 }
10937
10938 if test link = "$opt_mode" || test relink = "$opt_mode"; then
10939 func_mode_link ${1+"$@"}
10940 fi
10941
10942
10943 # func_mode_uninstall arg...
10944 func_mode_uninstall ()
10945 {
10946 $debug_cmd
10947
10948 RM=$nonopt
10949 files=
10950 rmforce=false
10951 exit_status=0
10952
10953 # This variable tells wrapper scripts just to set variables rather
10954 # than running their programs.
10955 libtool_install_magic=$magic
10956
10957 for arg
10958 do
10959 case $arg in
10960 -f) func_append RM " $arg"; rmforce=: ;;
10961 -*) func_append RM " $arg" ;;
10962 *) func_append files " $arg" ;;
10963 esac
10964 done
10965
10966 test -z "$RM" && \
10967 func_fatal_help "you must specify an RM program"
10968
10969 rmdirs=
10970
10971 for file in $files; do
10972 func_dirname "$file" "" "."
10973 dir=$func_dirname_result
10974 if test . = "$dir"; then
10975 odir=$objdir
10976 else
10977 odir=$dir/$objdir
10978 fi
10979 func_basename "$file"
10980 name=$func_basename_result
10981 test uninstall = "$opt_mode" && odir=$dir
10982
10983 # Remember odir for removal later, being careful to avoid duplicates
10984 if test clean = "$opt_mode"; then
10985 case " $rmdirs " in
10986 *" $odir "*) ;;
10987 *) func_append rmdirs " $odir" ;;
10988 esac
10989 fi
10990
10991 # Don't error if the file doesn't exist and rm -f was used.
10992 if { test -L "$file"; } >/dev/null 2>&1 ||
10993 { test -h "$file"; } >/dev/null 2>&1 ||
10994 test -f "$file"; then
10995 :
10996 elif test -d "$file"; then
10997 exit_status=1
10998 continue
10999 elif $rmforce; then
11000 continue
11001 fi
11002
11003 rmfiles=$file
11004
11005 case $name in
11006 *.la)
11007 # Possibly a libtool archive, so verify it.
11008 if func_lalib_p "$file"; then
11009 func_source $dir/$name
11010
11011 # Delete the libtool libraries and symlinks.
11012 for n in $library_names; do
11013 func_append rmfiles " $odir/$n"
11014 done
11015 test -n "$old_library" && func_append rmfiles " $odir/$old_library"
11016
11017 case $opt_mode in
11018 clean)
11019 case " $library_names " in
11020 *" $dlname "*) ;;
11021 *) test -n "$dlname" && func_append rmfiles " $odir/$dlname" ;;
11022 esac
11023 test -n "$libdir" && func_append rmfiles " $odir/$name $odir/${name}i"
11024 ;;
11025 uninstall)
11026 if test -n "$library_names"; then
11027 # Do each command in the postuninstall commands.
11028 func_execute_cmds "$postuninstall_cmds" '$rmforce || exit_status=1'
11029 fi
11030
11031 if test -n "$old_library"; then
11032 # Do each command in the old_postuninstall commands.
11033 func_execute_cmds "$old_postuninstall_cmds" '$rmforce || exit_status=1'
11034 fi
11035 # FIXME: should reinstall the best remaining shared library.
11036 ;;
11037 esac
11038 fi
11039 ;;
11040
11041 *.lo)
11042 # Possibly a libtool object, so verify it.
11043 if func_lalib_p "$file"; then
11044
11045 # Read the .lo file
11046 func_source $dir/$name
11047
11048 # Add PIC object to the list of files to remove.
11049 if test -n "$pic_object" && test none != "$pic_object"; then
11050 func_append rmfiles " $dir/$pic_object"
11051 fi
11052
11053 # Add non-PIC object to the list of files to remove.
11054 if test -n "$non_pic_object" && test none != "$non_pic_object"; then
11055 func_append rmfiles " $dir/$non_pic_object"
11056 fi
11057 fi
11058 ;;
11059
11060 *)
11061 if test clean = "$opt_mode"; then
11062 noexename=$name
11063 case $file in
11064 *.exe)
11065 func_stripname '' '.exe' "$file"
11066 file=$func_stripname_result
11067 func_stripname '' '.exe' "$name"
11068 noexename=$func_stripname_result
11069 # $file with .exe has already been added to rmfiles,
11070 # add $file without .exe
11071 func_append rmfiles " $file"
11072 ;;
11073 esac
11074 # Do a test to see if this is a libtool program.
11075 if func_ltwrapper_p "$file"; then
11076 if func_ltwrapper_executable_p "$file"; then
11077 func_ltwrapper_scriptname "$file"
11078 relink_command=
11079 func_source $func_ltwrapper_scriptname_result
11080 func_append rmfiles " $func_ltwrapper_scriptname_result"
11081 else
11082 relink_command=
11083 func_source $dir/$noexename
11084 fi
11085
11086 # note $name still contains .exe if it was in $file originally
11087 # as does the version of $file that was added into $rmfiles
11088 func_append rmfiles " $odir/$name $odir/${name}S.$objext"
11089 if test yes = "$fast_install" && test -n "$relink_command"; then
11090 func_append rmfiles " $odir/lt-$name"
11091 fi
11092 if test "X$noexename" != "X$name"; then
11093 func_append rmfiles " $odir/lt-$noexename.c"
11094 fi
11095 fi
11096 fi
11097 ;;
11098 esac
11099 func_show_eval "$RM $rmfiles" 'exit_status=1'
11100 done
11101
11102 # Try to remove the $objdir's in the directories where we deleted files
11103 for dir in $rmdirs; do
11104 if test -d "$dir"; then
11105 func_show_eval "rmdir $dir >/dev/null 2>&1"
11106 fi
11107 done
11108
11109 exit $exit_status
11110 }
11111
11112 if test uninstall = "$opt_mode" || test clean = "$opt_mode"; then
11113 func_mode_uninstall ${1+"$@"}
11114 fi
11115
11116 test -z "$opt_mode" && {
11117 help=$generic_help
11118 func_fatal_help "you must specify a MODE"
11119 }
11120
11121 test -z "$exec_cmd" && \
11122 func_fatal_help "invalid operation mode '$opt_mode'"
11123
11124 if test -n "$exec_cmd"; then
11125 eval exec "$exec_cmd"
11126 exit $EXIT_FAILURE
11127 fi
11128
11129 exit $exit_status
11130
11131
11132 # The TAGs below are defined such that we never get into a situation
11133 # where we disable both kinds of libraries. Given conflicting
11134 # choices, we go for a static library, that is the most portable,
11135 # since we can't tell whether shared libraries were disabled because
11136 # the user asked for that or because the platform doesn't support
11137 # them. This is particularly important on AIX, because we don't
11138 # support having both static and shared libraries enabled at the same
11139 # time on that platform, so we default to a shared-only configuration.
11140 # If a disable-shared tag is given, we'll fallback to a static-only
11141 # configuration. But we'll never go from static-only to shared-only.
11142
11143 # ### BEGIN LIBTOOL TAG CONFIG: disable-shared
11144 build_libtool_libs=no
11145 build_old_libs=yes
11146 # ### END LIBTOOL TAG CONFIG: disable-shared
11147
11148 # ### BEGIN LIBTOOL TAG CONFIG: disable-static
11149 build_old_libs=`case $build_libtool_libs in yes) echo no;; *) echo yes;; esac`
11150 # ### END LIBTOOL TAG CONFIG: disable-static
11151
11152 # Local Variables:
11153 # mode:shell-script
11154 # sh-indentation:2
11155 # End:
0 #! /bin/sh
1 # Common wrapper for a few potentially missing GNU programs.
2
3 scriptversion=2013-10-28.13; # UTC
4
5 # Copyright (C) 1996-2014 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 <http://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=http://www.perl.org/
104 flex_URL=http://flex.sourceforge.net/
105 gnu_software_URL=http://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 'write-file-hooks 'time-stamp)
210 # time-stamp-start: "scriptversion="
211 # time-stamp-format: "%:y-%02m-%02d.%02H"
212 # time-stamp-time-zone: "UTC"
213 # time-stamp-end: "; # UTC"
214 # End:
0 # Makefile.in generated by automake 1.15.1 from Makefile.am.
1 # @configure_input@
2
3 # Copyright (C) 1994-2017 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
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__depfiles_maybe)'; \
333 cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
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: $(DISTFILES)
451 @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
452 topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
453 list='$(DISTFILES)'; \
454 dist_files=`for file in $$list; do echo $$file; done | \
455 sed -e "s|^$$srcdirstrip/||;t" \
456 -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
457 case $$dist_files in \
458 */*) $(MKDIR_P) `echo "$$dist_files" | \
459 sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
460 sort -u` ;; \
461 esac; \
462 for file in $$dist_files; do \
463 if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
464 if test -d $$d/$$file; then \
465 dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
466 if test -d "$(distdir)/$$file"; then \
467 find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
468 fi; \
469 if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
470 cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
471 find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
472 fi; \
473 cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
474 else \
475 test -f "$(distdir)/$$file" \
476 || cp -p $$d/$$file "$(distdir)/$$file" \
477 || exit 1; \
478 fi; \
479 done
480 @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
481 if test "$$subdir" = .; then :; else \
482 $(am__make_dryrun) \
483 || test -d "$(distdir)/$$subdir" \
484 || $(MKDIR_P) "$(distdir)/$$subdir" \
485 || exit 1; \
486 dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
487 $(am__relativize); \
488 new_distdir=$$reldir; \
489 dir1=$$subdir; dir2="$(top_distdir)"; \
490 $(am__relativize); \
491 new_top_distdir=$$reldir; \
492 echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
493 echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
494 ($(am__cd) $$subdir && \
495 $(MAKE) $(AM_MAKEFLAGS) \
496 top_distdir="$$new_top_distdir" \
497 distdir="$$new_distdir" \
498 am__remove_distdir=: \
499 am__skip_length_check=: \
500 am__skip_mode_fix=: \
501 distdir) \
502 || exit 1; \
503 fi; \
504 done
505 check-am: all-am
506 check: check-recursive
507 all-am: Makefile
508 installdirs: installdirs-recursive
509 installdirs-am:
510 install: install-recursive
511 install-exec: install-exec-recursive
512 install-data: install-data-recursive
513 uninstall: uninstall-recursive
514
515 install-am: all-am
516 @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
517
518 installcheck: installcheck-recursive
519 install-strip:
520 if test -z '$(STRIP)'; then \
521 $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
522 install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
523 install; \
524 else \
525 $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
526 install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
527 "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
528 fi
529 mostlyclean-generic:
530
531 clean-generic:
532
533 distclean-generic:
534 -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
535 -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
536
537 maintainer-clean-generic:
538 @echo "This command is intended for maintainers to use"
539 @echo "it deletes files that may require special tools to rebuild."
540 clean: clean-recursive
541
542 clean-am: clean-generic clean-libtool mostlyclean-am
543
544 distclean: distclean-recursive
545 -rm -f Makefile
546 distclean-am: clean-am distclean-generic distclean-tags
547
548 dvi: dvi-recursive
549
550 dvi-am:
551
552 html: html-recursive
553
554 html-am:
555
556 info: info-recursive
557
558 info-am:
559
560 install-data-am:
561
562 install-dvi: install-dvi-recursive
563
564 install-dvi-am:
565
566 install-exec-am:
567
568 install-html: install-html-recursive
569
570 install-html-am:
571
572 install-info: install-info-recursive
573
574 install-info-am:
575
576 install-man:
577
578 install-pdf: install-pdf-recursive
579
580 install-pdf-am:
581
582 install-ps: install-ps-recursive
583
584 install-ps-am:
585
586 installcheck-am:
587
588 maintainer-clean: maintainer-clean-recursive
589 -rm -f Makefile
590 maintainer-clean-am: distclean-am maintainer-clean-generic
591
592 mostlyclean: mostlyclean-recursive
593
594 mostlyclean-am: mostlyclean-generic mostlyclean-libtool
595
596 pdf: pdf-recursive
597
598 pdf-am:
599
600 ps: ps-recursive
601
602 ps-am:
603
604 uninstall-am:
605
606 .MAKE: $(am__recursive_targets) install-am install-strip
607
608 .PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am check \
609 check-am clean clean-generic clean-libtool cscopelist-am ctags \
610 ctags-am distclean distclean-generic distclean-libtool \
611 distclean-tags distdir dvi dvi-am html html-am info info-am \
612 install install-am install-data install-data-am install-dvi \
613 install-dvi-am install-exec install-exec-am install-html \
614 install-html-am install-info install-info-am install-man \
615 install-pdf install-pdf-am install-ps install-ps-am \
616 install-strip installcheck installcheck-am installdirs \
617 installdirs-am maintainer-clean maintainer-clean-generic \
618 mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \
619 ps ps-am tags tags-am uninstall uninstall-am
620
621 .PRECIOUS: Makefile
622
623
624 # Tell versions [3.59,3.63) of GNU make to not export all variables.
625 # Otherwise a system limit (for SysV at least) may be exceeded.
626 .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.15.1 from Makefile.am.
1 # @configure_input@
2
3 # Copyright (C) 1994-2017 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__depfiles_maybe = depfiles
155 am__mv = mv -f
156 CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
157 $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
158 LTCXXCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \
159 $(LIBTOOLFLAGS) --mode=compile $(CXX) $(DEFS) \
160 $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
161 $(AM_CXXFLAGS) $(CXXFLAGS)
162 AM_V_CXX = $(am__v_CXX_@AM_V@)
163 am__v_CXX_ = $(am__v_CXX_@AM_DEFAULT_V@)
164 am__v_CXX_0 = @echo " CXX " $@;
165 am__v_CXX_1 =
166 CXXLD = $(CXX)
167 CXXLINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX $(AM_LIBTOOLFLAGS) \
168 $(LIBTOOLFLAGS) --mode=link $(CXXLD) $(AM_CXXFLAGS) \
169 $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
170 AM_V_CXXLD = $(am__v_CXXLD_@AM_V@)
171 am__v_CXXLD_ = $(am__v_CXXLD_@AM_DEFAULT_V@)
172 am__v_CXXLD_0 = @echo " CXXLD " $@;
173 am__v_CXXLD_1 =
174 COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
175 $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
176 LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
177 $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \
178 $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
179 $(AM_CFLAGS) $(CFLAGS)
180 AM_V_CC = $(am__v_CC_@AM_V@)
181 am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@)
182 am__v_CC_0 = @echo " CC " $@;
183 am__v_CC_1 =
184 CCLD = $(CC)
185 LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
186 $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
187 $(AM_LDFLAGS) $(LDFLAGS) -o $@
188 AM_V_CCLD = $(am__v_CCLD_@AM_V@)
189 am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@)
190 am__v_CCLD_0 = @echo " CCLD " $@;
191 am__v_CCLD_1 =
192 SOURCES = $(faad2_plugin_la_SOURCES)
193 DIST_SOURCES = $(faad2_plugin_la_SOURCES)
194 am__can_run_installinfo = \
195 case $$AM_UPDATE_INFO_DIR in \
196 n|no|NO) false;; \
197 *) (install-info --version) >/dev/null 2>&1;; \
198 esac
199 am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
200 # Read a list of newline-separated strings from the standard input,
201 # and print each of them once, without duplicates. Input order is
202 # *not* preserved.
203 am__uniquify_input = $(AWK) '\
204 BEGIN { nonempty = 0; } \
205 { items[$$0] = 1; nonempty = 1; } \
206 END { if (nonempty) { for (i in items) print i; }; } \
207 '
208 # Make sure the list of sources is unique. This is necessary because,
209 # e.g., the same source file might be shared among _SOURCES variables
210 # for different programs/libraries.
211 am__define_uniq_tagged_files = \
212 list='$(am__tagged_files)'; \
213 unique=`for i in $$list; do \
214 if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
215 done | $(am__uniquify_input)`
216 ETAGS = etags
217 CTAGS = ctags
218 am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/depcomp
219 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
220 ACLOCAL = @ACLOCAL@
221 AMTAR = @AMTAR@
222 AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
223 AR = @AR@
224 AUTOCONF = @AUTOCONF@
225 AUTOHEADER = @AUTOHEADER@
226 AUTOMAKE = @AUTOMAKE@
227 AWK = @AWK@
228 CC = @CC@
229 CCDEPMODE = @CCDEPMODE@
230 CFLAGS = @CFLAGS@
231 CPP = @CPP@
232 CPPFLAGS = @CPPFLAGS@
233 CXX = @CXX@
234 CXXCPP = @CXXCPP@
235 CXXDEPMODE = @CXXDEPMODE@
236 CXXFLAGS = @CXXFLAGS@
237 CYGPATH_W = @CYGPATH_W@
238 DEFS = @DEFS@
239 DEPDIR = @DEPDIR@
240 DLLTOOL = @DLLTOOL@
241 DSYMUTIL = @DSYMUTIL@
242 DUMPBIN = @DUMPBIN@
243 ECHO_C = @ECHO_C@
244 ECHO_N = @ECHO_N@
245 ECHO_T = @ECHO_T@
246 EGREP = @EGREP@
247 EXEEXT = @EXEEXT@
248 FGREP = @FGREP@
249 GREP = @GREP@
250 GTK_CONFIG = @GTK_CONFIG@
251 INSTALL = @INSTALL@
252 INSTALL_DATA = @INSTALL_DATA@
253 INSTALL_PROGRAM = @INSTALL_PROGRAM@
254 INSTALL_SCRIPT = @INSTALL_SCRIPT@
255 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
256 LD = @LD@
257 LDFLAGS = @LDFLAGS@
258 LIBOBJS = @LIBOBJS@
259 LIBS = @LIBS@
260 LIBTOOL = @LIBTOOL@
261 LIBTOOL_DEPS = @LIBTOOL_DEPS@
262 LIPO = @LIPO@
263 LN_S = @LN_S@
264 LTLIBOBJS = @LTLIBOBJS@
265 LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
266 MAKEINFO = @MAKEINFO@
267 MANIFEST_TOOL = @MANIFEST_TOOL@
268 MKDIR_P = @MKDIR_P@
269 MP4FF_LIBS = @MP4FF_LIBS@
270 NM = @NM@
271 NMEDIT = @NMEDIT@
272 OBJDUMP = @OBJDUMP@
273 OBJEXT = @OBJEXT@
274 OTOOL = @OTOOL@
275 OTOOL64 = @OTOOL64@
276 PACKAGE = @PACKAGE@
277 PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
278 PACKAGE_NAME = @PACKAGE_NAME@
279 PACKAGE_STRING = @PACKAGE_STRING@
280 PACKAGE_TARNAME = @PACKAGE_TARNAME@
281 PACKAGE_URL = @PACKAGE_URL@
282 PACKAGE_VERSION = @PACKAGE_VERSION@
283 PATH_SEPARATOR = @PATH_SEPARATOR@
284 RANLIB = @RANLIB@
285 RPMBUILD = @RPMBUILD@
286 SED = @SED@
287 SET_MAKE = @SET_MAKE@
288 SHELL = @SHELL@
289 STRIP = @STRIP@
290 VERSION = @VERSION@
291 XMMS_CONFIG = @XMMS_CONFIG@
292 abs_builddir = @abs_builddir@
293 abs_srcdir = @abs_srcdir@
294 abs_top_builddir = @abs_top_builddir@
295 abs_top_srcdir = @abs_top_srcdir@
296 ac_ct_AR = @ac_ct_AR@
297 ac_ct_CC = @ac_ct_CC@
298 ac_ct_CXX = @ac_ct_CXX@
299 ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
300 am__include = @am__include@
301 am__leading_dot = @am__leading_dot@
302 am__quote = @am__quote@
303 am__tar = @am__tar@
304 am__untar = @am__untar@
305 bindir = @bindir@
306 build = @build@
307 build_alias = @build_alias@
308 build_cpu = @build_cpu@
309 build_os = @build_os@
310 build_vendor = @build_vendor@
311 builddir = @builddir@
312 datadir = @datadir@
313 datarootdir = @datarootdir@
314 docdir = @docdir@
315 dvidir = @dvidir@
316 exec_prefix = @exec_prefix@
317 external_mp4v2 = @external_mp4v2@
318 host = @host@
319 host_alias = @host_alias@
320 host_cpu = @host_cpu@
321 host_os = @host_os@
322 host_vendor = @host_vendor@
323 htmldir = @htmldir@
324 includedir = @includedir@
325 infodir = @infodir@
326 install_sh = @install_sh@
327 libdir = @MPEG4IP_PLAYER_PLUGIN_DIR@
328 libexecdir = @libexecdir@
329 localedir = @localedir@
330 localstatedir = @localstatedir@
331 mandir = @mandir@
332 mkdir_p = @mkdir_p@
333 oldincludedir = @oldincludedir@
334 pdfdir = @pdfdir@
335 prefix = @prefix@
336 program_transform_name = @program_transform_name@
337 psdir = @psdir@
338 runstatedir = @runstatedir@
339 sbindir = @sbindir@
340 sharedstatedir = @sharedstatedir@
341 srcdir = @srcdir@
342 sysconfdir = @sysconfdir@
343 target_alias = @target_alias@
344 top_build_prefix = @top_build_prefix@
345 top_builddir = @top_builddir@
346 top_srcdir = @top_srcdir@
347 lib_LTLIBRARIES = faad2_plugin.la
348 faad2_plugin_la_LDFLAGS = -module
349 faad2_plugin_la_SOURCES = \
350 faad2.cpp \
351 faad2.h \
352 aa_file.cpp \
353 aa_file.h
354
355 faad2_plugin_la_LIBADD = \
356 $(top_builddir)/libfaad/libfaad.la \
357 -lm
358
359 AM_CPPFLAGS = -I$(top_srcdir)/include
360 AM_CFLAGS = -D_REENTRANT -fexceptions
361 AM_CXXFLAGS = -D_REENTRANT -DNOCONTROLS -fexceptions
362 all: all-am
363
364 .SUFFIXES:
365 .SUFFIXES: .cpp .lo .o .obj
366 $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
367 @for dep in $?; do \
368 case '$(am__configure_deps)' in \
369 *$$dep*) \
370 ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
371 && { if test -f $@; then exit 0; else break; fi; }; \
372 exit 1;; \
373 esac; \
374 done; \
375 echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu plugins/mpeg4ip/Makefile'; \
376 $(am__cd) $(top_srcdir) && \
377 $(AUTOMAKE) --gnu plugins/mpeg4ip/Makefile
378 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
379 @case '$?' in \
380 *config.status*) \
381 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
382 *) \
383 echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
384 cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
385 esac;
386
387 $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
388 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
389
390 $(top_srcdir)/configure: $(am__configure_deps)
391 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
392 $(ACLOCAL_M4): $(am__aclocal_m4_deps)
393 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
394 $(am__aclocal_m4_deps):
395
396 install-libLTLIBRARIES: $(lib_LTLIBRARIES)
397 @$(NORMAL_INSTALL)
398 @list='$(lib_LTLIBRARIES)'; test -n "$(libdir)" || list=; \
399 list2=; for p in $$list; do \
400 if test -f $$p; then \
401 list2="$$list2 $$p"; \
402 else :; fi; \
403 done; \
404 test -z "$$list2" || { \
405 echo " $(MKDIR_P) '$(DESTDIR)$(libdir)'"; \
406 $(MKDIR_P) "$(DESTDIR)$(libdir)" || exit 1; \
407 echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 '$(DESTDIR)$(libdir)'"; \
408 $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 "$(DESTDIR)$(libdir)"; \
409 }
410
411 uninstall-libLTLIBRARIES:
412 @$(NORMAL_UNINSTALL)
413 @list='$(lib_LTLIBRARIES)'; test -n "$(libdir)" || list=; \
414 for p in $$list; do \
415 $(am__strip_dir) \
416 echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f '$(DESTDIR)$(libdir)/$$f'"; \
417 $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f "$(DESTDIR)$(libdir)/$$f"; \
418 done
419
420 clean-libLTLIBRARIES:
421 -test -z "$(lib_LTLIBRARIES)" || rm -f $(lib_LTLIBRARIES)
422 @list='$(lib_LTLIBRARIES)'; \
423 locs=`for p in $$list; do echo $$p; done | \
424 sed 's|^[^/]*$$|.|; s|/[^/]*$$||; s|$$|/so_locations|' | \
425 sort -u`; \
426 test -z "$$locs" || { \
427 echo rm -f $${locs}; \
428 rm -f $${locs}; \
429 }
430
431 faad2_plugin.la: $(faad2_plugin_la_OBJECTS) $(faad2_plugin_la_DEPENDENCIES) $(EXTRA_faad2_plugin_la_DEPENDENCIES)
432 $(AM_V_CXXLD)$(faad2_plugin_la_LINK) -rpath $(libdir) $(faad2_plugin_la_OBJECTS) $(faad2_plugin_la_LIBADD) $(LIBS)
433
434 mostlyclean-compile:
435 -rm -f *.$(OBJEXT)
436
437 distclean-compile:
438 -rm -f *.tab.c
439
440 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/aa_file.Plo@am__quote@
441 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/faad2.Plo@am__quote@
442
443 .cpp.o:
444 @am__fastdepCXX_TRUE@ $(AM_V_CXX)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\
445 @am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\
446 @am__fastdepCXX_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po
447 @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
448 @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
449 @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXXCOMPILE) -c -o $@ $<
450
451 .cpp.obj:
452 @am__fastdepCXX_TRUE@ $(AM_V_CXX)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.obj$$||'`;\
453 @am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ `$(CYGPATH_W) '$<'` &&\
454 @am__fastdepCXX_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po
455 @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
456 @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
457 @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
458
459 .cpp.lo:
460 @am__fastdepCXX_TRUE@ $(AM_V_CXX)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.lo$$||'`;\
461 @am__fastdepCXX_TRUE@ $(LTCXXCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\
462 @am__fastdepCXX_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Plo
463 @AMDEP_TRUE@@am__fastdepCXX_FALSE@ $(AM_V_CXX)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
464 @AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
465 @am__fastdepCXX_FALSE@ $(AM_V_CXX@am__nodep@)$(LTCXXCOMPILE) -c -o $@ $<
466
467 mostlyclean-libtool:
468 -rm -f *.lo
469
470 clean-libtool:
471 -rm -rf .libs _libs
472
473 ID: $(am__tagged_files)
474 $(am__define_uniq_tagged_files); mkid -fID $$unique
475 tags: tags-am
476 TAGS: tags
477
478 tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
479 set x; \
480 here=`pwd`; \
481 $(am__define_uniq_tagged_files); \
482 shift; \
483 if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
484 test -n "$$unique" || unique=$$empty_fix; \
485 if test $$# -gt 0; then \
486 $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
487 "$$@" $$unique; \
488 else \
489 $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
490 $$unique; \
491 fi; \
492 fi
493 ctags: ctags-am
494
495 CTAGS: ctags
496 ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
497 $(am__define_uniq_tagged_files); \
498 test -z "$(CTAGS_ARGS)$$unique" \
499 || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
500 $$unique
501
502 GTAGS:
503 here=`$(am__cd) $(top_builddir) && pwd` \
504 && $(am__cd) $(top_srcdir) \
505 && gtags -i $(GTAGS_ARGS) "$$here"
506 cscopelist: cscopelist-am
507
508 cscopelist-am: $(am__tagged_files)
509 list='$(am__tagged_files)'; \
510 case "$(srcdir)" in \
511 [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
512 *) sdir=$(subdir)/$(srcdir) ;; \
513 esac; \
514 for i in $$list; do \
515 if test -f "$$i"; then \
516 echo "$(subdir)/$$i"; \
517 else \
518 echo "$$sdir/$$i"; \
519 fi; \
520 done >> $(top_builddir)/cscope.files
521
522 distclean-tags:
523 -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
524
525 distdir: $(DISTFILES)
526 @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
527 topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
528 list='$(DISTFILES)'; \
529 dist_files=`for file in $$list; do echo $$file; done | \
530 sed -e "s|^$$srcdirstrip/||;t" \
531 -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
532 case $$dist_files in \
533 */*) $(MKDIR_P) `echo "$$dist_files" | \
534 sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
535 sort -u` ;; \
536 esac; \
537 for file in $$dist_files; do \
538 if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
539 if test -d $$d/$$file; then \
540 dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
541 if test -d "$(distdir)/$$file"; then \
542 find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
543 fi; \
544 if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
545 cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
546 find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
547 fi; \
548 cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
549 else \
550 test -f "$(distdir)/$$file" \
551 || cp -p $$d/$$file "$(distdir)/$$file" \
552 || exit 1; \
553 fi; \
554 done
555 check-am: all-am
556 check: check-am
557 all-am: Makefile $(LTLIBRARIES)
558 installdirs:
559 for dir in "$(DESTDIR)$(libdir)"; do \
560 test -z "$$dir" || $(MKDIR_P) "$$dir"; \
561 done
562 install: install-am
563 install-exec: install-exec-am
564 install-data: install-data-am
565 uninstall: uninstall-am
566
567 install-am: all-am
568 @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
569
570 installcheck: installcheck-am
571 install-strip:
572 if test -z '$(STRIP)'; then \
573 $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
574 install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
575 install; \
576 else \
577 $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
578 install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
579 "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
580 fi
581 mostlyclean-generic:
582
583 clean-generic:
584
585 distclean-generic:
586 -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
587 -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
588
589 maintainer-clean-generic:
590 @echo "This command is intended for maintainers to use"
591 @echo "it deletes files that may require special tools to rebuild."
592 clean: clean-am
593
594 clean-am: clean-generic clean-libLTLIBRARIES clean-libtool \
595 mostlyclean-am
596
597 distclean: distclean-am
598 -rm -rf ./$(DEPDIR)
599 -rm -f Makefile
600 distclean-am: clean-am distclean-compile distclean-generic \
601 distclean-tags
602
603 dvi: dvi-am
604
605 dvi-am:
606
607 html: html-am
608
609 html-am:
610
611 info: info-am
612
613 info-am:
614
615 install-data-am:
616
617 install-dvi: install-dvi-am
618
619 install-dvi-am:
620
621 install-exec-am: install-libLTLIBRARIES
622
623 install-html: install-html-am
624
625 install-html-am:
626
627 install-info: install-info-am
628
629 install-info-am:
630
631 install-man:
632
633 install-pdf: install-pdf-am
634
635 install-pdf-am:
636
637 install-ps: install-ps-am
638
639 install-ps-am:
640
641 installcheck-am:
642
643 maintainer-clean: maintainer-clean-am
644 -rm -rf ./$(DEPDIR)
645 -rm -f Makefile
646 maintainer-clean-am: distclean-am maintainer-clean-generic
647
648 mostlyclean: mostlyclean-am
649
650 mostlyclean-am: mostlyclean-compile mostlyclean-generic \
651 mostlyclean-libtool
652
653 pdf: pdf-am
654
655 pdf-am:
656
657 ps: ps-am
658
659 ps-am:
660
661 uninstall-am: uninstall-libLTLIBRARIES
662
663 .MAKE: install-am install-strip
664
665 .PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \
666 clean-libLTLIBRARIES clean-libtool cscopelist-am ctags \
667 ctags-am distclean distclean-compile distclean-generic \
668 distclean-libtool distclean-tags distdir dvi dvi-am html \
669 html-am info info-am install install-am install-data \
670 install-data-am install-dvi install-dvi-am install-exec \
671 install-exec-am install-html install-html-am install-info \
672 install-info-am install-libLTLIBRARIES install-man install-pdf \
673 install-pdf-am install-ps install-ps-am install-strip \
674 installcheck installcheck-am installdirs maintainer-clean \
675 maintainer-clean-generic mostlyclean mostlyclean-compile \
676 mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
677 tags tags-am uninstall uninstall-am uninstall-libLTLIBRARIES
678
679 .PRECIOUS: Makefile
680
681
682 # Tell versions [3.59,3.63) of GNU make to not export all variables.
683 # Otherwise a system limit (for SysV at least) may be exceeded.
684 .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.15.1 from Makefile.am.
1 # @configure_input@
2
3 # Copyright (C) 1994-2017 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
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__depfiles_maybe)'; \
331 cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
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: $(DISTFILES)
449 @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
450 topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
451 list='$(DISTFILES)'; \
452 dist_files=`for file in $$list; do echo $$file; done | \
453 sed -e "s|^$$srcdirstrip/||;t" \
454 -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
455 case $$dist_files in \
456 */*) $(MKDIR_P) `echo "$$dist_files" | \
457 sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
458 sort -u` ;; \
459 esac; \
460 for file in $$dist_files; do \
461 if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
462 if test -d $$d/$$file; then \
463 dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
464 if test -d "$(distdir)/$$file"; then \
465 find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
466 fi; \
467 if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
468 cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
469 find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
470 fi; \
471 cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
472 else \
473 test -f "$(distdir)/$$file" \
474 || cp -p $$d/$$file "$(distdir)/$$file" \
475 || exit 1; \
476 fi; \
477 done
478 @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
479 if test "$$subdir" = .; then :; else \
480 $(am__make_dryrun) \
481 || test -d "$(distdir)/$$subdir" \
482 || $(MKDIR_P) "$(distdir)/$$subdir" \
483 || exit 1; \
484 dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
485 $(am__relativize); \
486 new_distdir=$$reldir; \
487 dir1=$$subdir; dir2="$(top_distdir)"; \
488 $(am__relativize); \
489 new_top_distdir=$$reldir; \
490 echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \
491 echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \
492 ($(am__cd) $$subdir && \
493 $(MAKE) $(AM_MAKEFLAGS) \
494 top_distdir="$$new_top_distdir" \
495 distdir="$$new_distdir" \
496 am__remove_distdir=: \
497 am__skip_length_check=: \
498 am__skip_mode_fix=: \
499 distdir) \
500 || exit 1; \
501 fi; \
502 done
503 check-am: all-am
504 check: check-recursive
505 all-am: Makefile
506 installdirs: installdirs-recursive
507 installdirs-am:
508 install: install-recursive
509 install-exec: install-exec-recursive
510 install-data: install-data-recursive
511 uninstall: uninstall-recursive
512
513 install-am: all-am
514 @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
515
516 installcheck: installcheck-recursive
517 install-strip:
518 if test -z '$(STRIP)'; then \
519 $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
520 install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
521 install; \
522 else \
523 $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
524 install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
525 "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
526 fi
527 mostlyclean-generic:
528
529 clean-generic:
530
531 distclean-generic:
532 -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
533 -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
534
535 maintainer-clean-generic:
536 @echo "This command is intended for maintainers to use"
537 @echo "it deletes files that may require special tools to rebuild."
538 clean: clean-recursive
539
540 clean-am: clean-generic clean-libtool mostlyclean-am
541
542 distclean: distclean-recursive
543 -rm -f Makefile
544 distclean-am: clean-am distclean-generic distclean-tags
545
546 dvi: dvi-recursive
547
548 dvi-am:
549
550 html: html-recursive
551
552 html-am:
553
554 info: info-recursive
555
556 info-am:
557
558 install-data-am:
559
560 install-dvi: install-dvi-recursive
561
562 install-dvi-am:
563
564 install-exec-am:
565
566 install-html: install-html-recursive
567
568 install-html-am:
569
570 install-info: install-info-recursive
571
572 install-info-am:
573
574 install-man:
575
576 install-pdf: install-pdf-recursive
577
578 install-pdf-am:
579
580 install-ps: install-ps-recursive
581
582 install-ps-am:
583
584 installcheck-am:
585
586 maintainer-clean: maintainer-clean-recursive
587 -rm -f Makefile
588 maintainer-clean-am: distclean-am maintainer-clean-generic
589
590 mostlyclean: mostlyclean-recursive
591
592 mostlyclean-am: mostlyclean-generic mostlyclean-libtool
593
594 pdf: pdf-recursive
595
596 pdf-am:
597
598 ps: ps-recursive
599
600 ps-am:
601
602 uninstall-am:
603
604 .MAKE: $(am__recursive_targets) install-am install-strip
605
606 .PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am check \
607 check-am clean clean-generic clean-libtool cscopelist-am ctags \
608 ctags-am distclean distclean-generic distclean-libtool \
609 distclean-tags distdir dvi dvi-am html html-am info info-am \
610 install install-am install-data install-data-am install-dvi \
611 install-dvi-am install-exec install-exec-am install-html \
612 install-html-am install-info install-info-am install-man \
613 install-pdf install-pdf-am install-ps install-ps-am \
614 install-strip installcheck installcheck-am installdirs \
615 installdirs-am maintainer-clean maintainer-clean-generic \
616 mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \
617 ps ps-am tags tags-am uninstall uninstall-am
618
619 .PRECIOUS: Makefile
620
621
622 # Tell versions [3.59,3.63) of GNU make to not export all variables.
623 # Otherwise a system limit (for SysV at least) may be exceeded.
624 .NOEXPORT:
0 # Makefile.in generated by automake 1.15.1 from Makefile.am.
1 # @configure_input@
2
3 # Copyright (C) 1994-2017 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__depfiles_maybe = depfiles
156 am__mv = mv -f
157 COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
158 $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
159 LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
160 $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \
161 $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \
162 $(AM_CFLAGS) $(CFLAGS)
163 AM_V_CC = $(am__v_CC_@AM_V@)
164 am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@)
165 am__v_CC_0 = @echo " CC " $@;
166 am__v_CC_1 =
167 CCLD = $(CC)
168 LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \
169 $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
170 $(AM_LDFLAGS) $(LDFLAGS) -o $@
171 AM_V_CCLD = $(am__v_CCLD_@AM_V@)
172 am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@)
173 am__v_CCLD_0 = @echo " CCLD " $@;
174 am__v_CCLD_1 =
175 SOURCES = $(libmp4_la_SOURCES)
176 DIST_SOURCES = $(libmp4_la_SOURCES)
177 am__can_run_installinfo = \
178 case $$AM_UPDATE_INFO_DIR in \
179 n|no|NO) false;; \
180 *) (install-info --version) >/dev/null 2>&1;; \
181 esac
182 am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
183 # Read a list of newline-separated strings from the standard input,
184 # and print each of them once, without duplicates. Input order is
185 # *not* preserved.
186 am__uniquify_input = $(AWK) '\
187 BEGIN { nonempty = 0; } \
188 { items[$$0] = 1; nonempty = 1; } \
189 END { if (nonempty) { for (i in items) print i; }; } \
190 '
191 # Make sure the list of sources is unique. This is necessary because,
192 # e.g., the same source file might be shared among _SOURCES variables
193 # for different programs/libraries.
194 am__define_uniq_tagged_files = \
195 list='$(am__tagged_files)'; \
196 unique=`for i in $$list; do \
197 if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
198 done | $(am__uniquify_input)`
199 ETAGS = etags
200 CTAGS = ctags
201 am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/depcomp
202 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
203 ACLOCAL = @ACLOCAL@
204 AMTAR = @AMTAR@
205 AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
206 AR = @AR@
207 AUTOCONF = @AUTOCONF@
208 AUTOHEADER = @AUTOHEADER@
209 AUTOMAKE = @AUTOMAKE@
210 AWK = @AWK@
211 CC = @CC@
212 CCDEPMODE = @CCDEPMODE@
213 CFLAGS = @CFLAGS@
214 CPP = @CPP@
215 CPPFLAGS = @CPPFLAGS@
216 CXX = @CXX@
217 CXXCPP = @CXXCPP@
218 CXXDEPMODE = @CXXDEPMODE@
219 CXXFLAGS = @CXXFLAGS@
220 CYGPATH_W = @CYGPATH_W@
221 DEFS = @DEFS@
222 DEPDIR = @DEPDIR@
223 DLLTOOL = @DLLTOOL@
224 DSYMUTIL = @DSYMUTIL@
225 DUMPBIN = @DUMPBIN@
226 ECHO_C = @ECHO_C@
227 ECHO_N = @ECHO_N@
228 ECHO_T = @ECHO_T@
229 EGREP = @EGREP@
230 EXEEXT = @EXEEXT@
231 FGREP = @FGREP@
232 GREP = @GREP@
233 GTK_CONFIG = @GTK_CONFIG@
234 INSTALL = @INSTALL@
235 INSTALL_DATA = @INSTALL_DATA@
236 INSTALL_PROGRAM = @INSTALL_PROGRAM@
237 INSTALL_SCRIPT = @INSTALL_SCRIPT@
238 INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
239 LD = @LD@
240 LDFLAGS = @LDFLAGS@
241 LIBOBJS = @LIBOBJS@
242 LIBS = @LIBS@
243 LIBTOOL = @LIBTOOL@
244 LIBTOOL_DEPS = @LIBTOOL_DEPS@
245 LIPO = @LIPO@
246 LN_S = @LN_S@
247 LTLIBOBJS = @LTLIBOBJS@
248 LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
249 MAKEINFO = @MAKEINFO@
250 MANIFEST_TOOL = @MANIFEST_TOOL@
251 MKDIR_P = @MKDIR_P@
252 MP4FF_LIBS = @MP4FF_LIBS@
253 NM = @NM@
254 NMEDIT = @NMEDIT@
255 OBJDUMP = @OBJDUMP@
256 OBJEXT = @OBJEXT@
257 OTOOL = @OTOOL@
258 OTOOL64 = @OTOOL64@
259 PACKAGE = @PACKAGE@
260 PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
261 PACKAGE_NAME = @PACKAGE_NAME@
262 PACKAGE_STRING = @PACKAGE_STRING@
263 PACKAGE_TARNAME = @PACKAGE_TARNAME@
264 PACKAGE_URL = @PACKAGE_URL@
265 PACKAGE_VERSION = @PACKAGE_VERSION@
266 PATH_SEPARATOR = @PATH_SEPARATOR@
267 RANLIB = @RANLIB@
268 RPMBUILD = @RPMBUILD@
269 SED = @SED@
270 SET_MAKE = @SET_MAKE@
271 SHELL = @SHELL@
272 STRIP = @STRIP@
273 VERSION = @VERSION@
274 XMMS_CONFIG = @XMMS_CONFIG@
275 abs_builddir = @abs_builddir@
276 abs_srcdir = @abs_srcdir@
277 abs_top_builddir = @abs_top_builddir@
278 abs_top_srcdir = @abs_top_srcdir@
279 ac_ct_AR = @ac_ct_AR@
280 ac_ct_CC = @ac_ct_CC@
281 ac_ct_CXX = @ac_ct_CXX@
282 ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
283 am__include = @am__include@
284 am__leading_dot = @am__leading_dot@
285 am__quote = @am__quote@
286 am__tar = @am__tar@
287 am__untar = @am__untar@
288 bindir = @bindir@
289 build = @build@
290 build_alias = @build_alias@
291 build_cpu = @build_cpu@
292 build_os = @build_os@
293 build_vendor = @build_vendor@
294 builddir = @builddir@
295 datadir = @datadir@
296 datarootdir = @datarootdir@
297 docdir = @docdir@
298 dvidir = @dvidir@
299 exec_prefix = @exec_prefix@
300 external_mp4v2 = @external_mp4v2@
301 host = @host@
302 host_alias = @host_alias@
303 host_cpu = @host_cpu@
304 host_os = @host_os@
305 host_vendor = @host_vendor@
306 htmldir = @htmldir@
307 includedir = @includedir@
308 infodir = @infodir@
309 install_sh = @install_sh@
310 libdir = `$(XMMS_CONFIG) --input-plugin-dir`
311 libexecdir = @libexecdir@
312 localedir = @localedir@
313 localstatedir = @localstatedir@
314 mandir = @mandir@
315 mkdir_p = @mkdir_p@
316 oldincludedir = @oldincludedir@
317 pdfdir = @pdfdir@
318 prefix = @prefix@
319 program_transform_name = @program_transform_name@
320 psdir = @psdir@
321 runstatedir = @runstatedir@
322 sbindir = @sbindir@
323 sharedstatedir = @sharedstatedir@
324 srcdir = @srcdir@
325 sysconfdir = @sysconfdir@
326 target_alias = @target_alias@
327 top_build_prefix = @top_build_prefix@
328 top_builddir = @top_builddir@
329 top_srcdir = @top_srcdir@
330 local_CFLAGS = `$(XMMS_CONFIG) --cflags` -Wall
331 local_LDFLAGS = `$(XMMS_CONFIG) --libs`
332 lib_LTLIBRARIES = libmp4.la
333 libmp4_la_CFLAGS = $(local_CFLAGS) -Wall \
334 -I$(top_srcdir)/include -I$(top_srcdir)/common/mp4ff
335
336 libmp4_la_LIBADD = $(top_builddir)/libfaad/libfaad.la \
337 $(top_builddir)/common/mp4ff/libmp4ff.a
338
339 libmp4_la_LDFLAGS = -module -avoid-version $(local_LDFLAGS) -lpthread
340 libmp4_la_SOURCES = libmp4.c mp4_utils.c aac_utils.c
341 all: all-am
342
343 .SUFFIXES:
344 .SUFFIXES: .c .lo .o .obj
345 $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
346 @for dep in $?; do \
347 case '$(am__configure_deps)' in \
348 *$$dep*) \
349 ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
350 && { if test -f $@; then exit 0; else break; fi; }; \
351 exit 1;; \
352 esac; \
353 done; \
354 echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu plugins/xmms/src/Makefile'; \
355 $(am__cd) $(top_srcdir) && \
356 $(AUTOMAKE) --gnu plugins/xmms/src/Makefile
357 Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
358 @case '$?' in \
359 *config.status*) \
360 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
361 *) \
362 echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
363 cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
364 esac;
365
366 $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
367 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
368
369 $(top_srcdir)/configure: $(am__configure_deps)
370 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
371 $(ACLOCAL_M4): $(am__aclocal_m4_deps)
372 cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
373 $(am__aclocal_m4_deps):
374
375 install-libLTLIBRARIES: $(lib_LTLIBRARIES)
376 @$(NORMAL_INSTALL)
377 @list='$(lib_LTLIBRARIES)'; test -n "$(libdir)" || list=; \
378 list2=; for p in $$list; do \
379 if test -f $$p; then \
380 list2="$$list2 $$p"; \
381 else :; fi; \
382 done; \
383 test -z "$$list2" || { \
384 echo " $(MKDIR_P) '$(DESTDIR)$(libdir)'"; \
385 $(MKDIR_P) "$(DESTDIR)$(libdir)" || exit 1; \
386 echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 '$(DESTDIR)$(libdir)'"; \
387 $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 "$(DESTDIR)$(libdir)"; \
388 }
389
390 uninstall-libLTLIBRARIES:
391 @$(NORMAL_UNINSTALL)
392 @list='$(lib_LTLIBRARIES)'; test -n "$(libdir)" || list=; \
393 for p in $$list; do \
394 $(am__strip_dir) \
395 echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f '$(DESTDIR)$(libdir)/$$f'"; \
396 $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f "$(DESTDIR)$(libdir)/$$f"; \
397 done
398
399 clean-libLTLIBRARIES:
400 -test -z "$(lib_LTLIBRARIES)" || rm -f $(lib_LTLIBRARIES)
401 @list='$(lib_LTLIBRARIES)'; \
402 locs=`for p in $$list; do echo $$p; done | \
403 sed 's|^[^/]*$$|.|; s|/[^/]*$$||; s|$$|/so_locations|' | \
404 sort -u`; \
405 test -z "$$locs" || { \
406 echo rm -f $${locs}; \
407 rm -f $${locs}; \
408 }
409
410 libmp4.la: $(libmp4_la_OBJECTS) $(libmp4_la_DEPENDENCIES) $(EXTRA_libmp4_la_DEPENDENCIES)
411 $(AM_V_CCLD)$(libmp4_la_LINK) -rpath $(libdir) $(libmp4_la_OBJECTS) $(libmp4_la_LIBADD) $(LIBS)
412
413 mostlyclean-compile:
414 -rm -f *.$(OBJEXT)
415
416 distclean-compile:
417 -rm -f *.tab.c
418
419 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmp4_la-aac_utils.Plo@am__quote@
420 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmp4_la-libmp4.Plo@am__quote@
421 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libmp4_la-mp4_utils.Plo@am__quote@
422
423 .c.o:
424 @am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\
425 @am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\
426 @am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po
427 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
428 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
429 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $<
430
431 .c.obj:
432 @am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.obj$$||'`;\
433 @am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ `$(CYGPATH_W) '$<'` &&\
434 @am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Po
435 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
436 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
437 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'`
438
439 .c.lo:
440 @am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.lo$$||'`;\
441 @am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $$depbase.Tpo -c -o $@ $< &&\
442 @am__fastdepCC_TRUE@ $(am__mv) $$depbase.Tpo $$depbase.Plo
443 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@
444 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
445 @am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $<
446
447 libmp4_la-libmp4.lo: libmp4.c
448 @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
449 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmp4_la-libmp4.Tpo $(DEPDIR)/libmp4_la-libmp4.Plo
450 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='libmp4.c' object='libmp4_la-libmp4.lo' libtool=yes @AMDEPBACKSLASH@
451 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
452 @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
453
454 libmp4_la-mp4_utils.lo: mp4_utils.c
455 @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
456 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmp4_la-mp4_utils.Tpo $(DEPDIR)/libmp4_la-mp4_utils.Plo
457 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='mp4_utils.c' object='libmp4_la-mp4_utils.lo' libtool=yes @AMDEPBACKSLASH@
458 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
459 @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
460
461 libmp4_la-aac_utils.lo: aac_utils.c
462 @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
463 @am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libmp4_la-aac_utils.Tpo $(DEPDIR)/libmp4_la-aac_utils.Plo
464 @AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='aac_utils.c' object='libmp4_la-aac_utils.lo' libtool=yes @AMDEPBACKSLASH@
465 @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
466 @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
467
468 mostlyclean-libtool:
469 -rm -f *.lo
470
471 clean-libtool:
472 -rm -rf .libs _libs
473
474 ID: $(am__tagged_files)
475 $(am__define_uniq_tagged_files); mkid -fID $$unique
476 tags: tags-am
477 TAGS: tags
478
479 tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
480 set x; \
481 here=`pwd`; \
482 $(am__define_uniq_tagged_files); \
483 shift; \
484 if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \
485 test -n "$$unique" || unique=$$empty_fix; \
486 if test $$# -gt 0; then \
487 $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
488 "$$@" $$unique; \
489 else \
490 $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
491 $$unique; \
492 fi; \
493 fi
494 ctags: ctags-am
495
496 CTAGS: ctags
497 ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files)
498 $(am__define_uniq_tagged_files); \
499 test -z "$(CTAGS_ARGS)$$unique" \
500 || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
501 $$unique
502
503 GTAGS:
504 here=`$(am__cd) $(top_builddir) && pwd` \
505 && $(am__cd) $(top_srcdir) \
506 && gtags -i $(GTAGS_ARGS) "$$here"
507 cscopelist: cscopelist-am
508
509 cscopelist-am: $(am__tagged_files)
510 list='$(am__tagged_files)'; \
511 case "$(srcdir)" in \
512 [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \
513 *) sdir=$(subdir)/$(srcdir) ;; \
514 esac; \
515 for i in $$list; do \
516 if test -f "$$i"; then \
517 echo "$(subdir)/$$i"; \
518 else \
519 echo "$$sdir/$$i"; \
520 fi; \
521 done >> $(top_builddir)/cscope.files
522
523 distclean-tags:
524 -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
525
526 distdir: $(DISTFILES)
527 @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
528 topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
529 list='$(DISTFILES)'; \
530 dist_files=`for file in $$list; do echo $$file; done | \
531 sed -e "s|^$$srcdirstrip/||;t" \
532 -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
533 case $$dist_files in \
534 */*) $(MKDIR_P) `echo "$$dist_files" | \
535 sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
536 sort -u` ;; \
537 esac; \
538 for file in $$dist_files; do \
539 if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
540 if test -d $$d/$$file; then \
541 dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
542 if test -d "$(distdir)/$$file"; then \
543 find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
544 fi; \
545 if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
546 cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
547 find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
548 fi; \
549 cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
550 else \
551 test -f "$(distdir)/$$file" \
552 || cp -p $$d/$$file "$(distdir)/$$file" \
553 || exit 1; \
554 fi; \
555 done
556 check-am: all-am
557 check: check-am
558 all-am: Makefile $(LTLIBRARIES)
559 installdirs:
560 for dir in "$(DESTDIR)$(libdir)"; do \
561 test -z "$$dir" || $(MKDIR_P) "$$dir"; \
562 done
563 install: install-am
564 install-exec: install-exec-am
565 install-data: install-data-am
566 uninstall: uninstall-am
567
568 install-am: all-am
569 @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
570
571 installcheck: installcheck-am
572 install-strip:
573 if test -z '$(STRIP)'; then \
574 $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
575 install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
576 install; \
577 else \
578 $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
579 install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
580 "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
581 fi
582 mostlyclean-generic:
583
584 clean-generic:
585
586 distclean-generic:
587 -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
588 -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
589
590 maintainer-clean-generic:
591 @echo "This command is intended for maintainers to use"
592 @echo "it deletes files that may require special tools to rebuild."
593 clean: clean-am
594
595 clean-am: clean-generic clean-libLTLIBRARIES clean-libtool \
596 mostlyclean-am
597
598 distclean: distclean-am
599 -rm -rf ./$(DEPDIR)
600 -rm -f Makefile
601 distclean-am: clean-am distclean-compile distclean-generic \
602 distclean-tags
603
604 dvi: dvi-am
605
606 dvi-am:
607
608 html: html-am
609
610 html-am:
611
612 info: info-am
613
614 info-am:
615
616 install-data-am:
617
618 install-dvi: install-dvi-am
619
620 install-dvi-am:
621
622 install-exec-am: install-libLTLIBRARIES
623
624 install-html: install-html-am
625
626 install-html-am:
627
628 install-info: install-info-am
629
630 install-info-am:
631
632 install-man:
633
634 install-pdf: install-pdf-am
635
636 install-pdf-am:
637
638 install-ps: install-ps-am
639
640 install-ps-am:
641
642 installcheck-am:
643
644 maintainer-clean: maintainer-clean-am
645 -rm -rf ./$(DEPDIR)
646 -rm -f Makefile
647 maintainer-clean-am: distclean-am maintainer-clean-generic
648
649 mostlyclean: mostlyclean-am
650
651 mostlyclean-am: mostlyclean-compile mostlyclean-generic \
652 mostlyclean-libtool
653
654 pdf: pdf-am
655
656 pdf-am:
657
658 ps: ps-am
659
660 ps-am:
661
662 uninstall-am: uninstall-libLTLIBRARIES
663
664 .MAKE: install-am install-strip
665
666 .PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \
667 clean-libLTLIBRARIES clean-libtool cscopelist-am ctags \
668 ctags-am distclean distclean-compile distclean-generic \
669 distclean-libtool distclean-tags distdir dvi dvi-am html \
670 html-am info info-am install install-am install-data \
671 install-data-am install-dvi install-dvi-am install-exec \
672 install-exec-am install-html install-html-am install-info \
673 install-info-am install-libLTLIBRARIES install-man install-pdf \
674 install-pdf-am install-ps install-ps-am install-strip \
675 installcheck installcheck-am installdirs maintainer-clean \
676 maintainer-clean-generic mostlyclean mostlyclean-compile \
677 mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
678 tags tags-am uninstall uninstall-am uninstall-libLTLIBRARIES
679
680 .PRECIOUS: Makefile
681
682
683 # Tell versions [3.59,3.63) of GNU make to not export all variables.
684 # Otherwise a system limit (for SysV at least) may be exceeded.
685 .NOEXPORT: