---input--- # ltmain.sh - Provide generalized library-building support services. # NOTE: Changing this file will not affect anything until you rerun configure. # # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005 # Free Software Foundation, Inc. # Originally by Gordon Matzigkeit , 1996 # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, but # WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU # General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. # # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a # configuration script generated by Autoconf, you may include it under # the same distribution terms that you use for the rest of that program. basename="s,^.*/,,g" # Work around backward compatibility issue on IRIX 6.5. On IRIX 6.4+, sh # is ksh but when the shell is invoked as "sh" and the current value of # the _XPG environment variable is not equal to 1 (one), the special # positional parameter $0, within a function call, is the name of the # function. progpath="$0" # define SED for historic ltconfig's generated by Libtool 1.3 test -z "$SED" && SED=sed # The name of this program: progname=`echo "$progpath" | $SED $basename` modename="$progname" # Global variables: EXIT_SUCCESS=0 EXIT_FAILURE=1 PROGRAM=ltmain.sh PACKAGE=libtool VERSION=1.5.22 TIMESTAMP=" (1.1220.2.365 2005/12/18 22:14:06)" # See if we are running on zsh, and set the options which allow our # commands through without removal of \ escapes. if test -n "${ZSH_VERSION+set}" ; then setopt NO_GLOB_SUBST fi # Same for EGREP, and just to be sure, do LTCC as well if test "X$EGREP" = X ; then EGREP=egrep fi if test "X$LTCC" = X ; then LTCC=${CC-gcc} fi # Check that we have a working $echo. if test "X$1" = X--no-reexec; then # Discard the --no-reexec flag, and continue. shift elif test "X$1" = X--fallback-echo; then # Avoid inline document here, it may be left over : elif test "X`($echo '\t') 2>/dev/null`" = 'X\t'; then # Yippee, $echo works! : else # Restart under the correct shell, and then maybe $echo will work. exec $SHELL "$progpath" --no-reexec ${1+"$@"} fi if test "X$1" = X--fallback-echo; then # used as fallback echo shift cat <&2 $echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2 exit $EXIT_FAILURE fi # Global variables. mode=$default_mode nonopt= prev= prevopt= run= show="$echo" show_help= execute_dlfiles= duplicate_deps=no preserve_args= lo2o="s/\\.lo\$/.${objext}/" o2lo="s/\\.${objext}\$/.lo/" if test -z "$max_cmd_len"; then i=0 testring="ABCD" new_result= # If test is not a shell built-in, we'll probably end up computing a # maximum length that is only half of the actual maximum length, but # we can't tell. while (test "X"`$SHELL $0 --fallback-echo "X$testring" 2>/dev/null` \ = "XX$testring") >/dev/null 2>&1 && new_result=`expr "X$testring" : ".*" 2>&1` && max_cmd_len="$new_result" && test "$i" != 17 # 1/2 MB should be enough do i=`expr $i + 1` testring="$testring$testring" done testring= # Add a significant safety factor because C++ compilers can tack on massive # amounts of additional arguments before passing them to the linker. # It appears as though 1/2 is a usable value. max_cmd_len=`expr $max_cmd_len \/ 2` fi ##################################### # Shell function definitions: # This seems to be the best place for them # func_mktempdir [string] # Make a temporary directory that won't clash with other running # libtool processes, and avoids race conditions if possible. If # given, STRING is the basename for that directory. func_mktempdir () { my_template="${TMPDIR-/tmp}/${1-$progname}" if test "$run" = ":"; then # Return a directory name, but don't create it in dry-run mode my_tmpdir="${my_template}-$$" else # If mktemp works, use that first and foremost my_tmpdir=`mktemp -d "${my_template}-XXXXXXXX" 2>/dev/null` if test ! -d "$my_tmpdir"; then # Failing that, at least try and use $RANDOM to avoid a race my_tmpdir="${my_template}-${RANDOM-0}$$" save_mktempdir_umask=`umask` umask 0077 $mkdir "$my_tmpdir" umask $save_mktempdir_umask fi # If we're not in dry-run mode, bomb out on failure test -d "$my_tmpdir" || { $echo "cannot create temporary directory \`$my_tmpdir'" 1>&2 exit $EXIT_FAILURE } fi $echo "X$my_tmpdir" | $Xsed } # func_win32_libid arg # return the library type of file 'arg' # # Need a lot of goo to handle *both* DLLs and import libs # Has to be a shell function in order to 'eat' the argument # that is supplied when $file_magic_command is called. func_win32_libid () { win32_libid_type="unknown" win32_fileres=`file -L $1 2>/dev/null` case $win32_fileres in *ar\ archive\ import\ library*) # definitely import win32_libid_type="x86 archive import" ;; *ar\ archive*) # could be an import, or static if eval $OBJDUMP -f $1 | $SED -e '10q' 2>/dev/null | \ $EGREP -e 'file format pe-i386(.*architecture: i386)?' >/dev/null ; then win32_nmres=`eval $NM -f posix -A $1 | \ $SED -n -e '1,100{/ I /{s,.*,import,;p;q;};}'` case $win32_nmres in import*) win32_libid_type="x86 archive import";; *) win32_libid_type="x86 archive static";; esac fi ;; *DLL*) win32_libid_type="x86 DLL" ;; *executable*) # but shell scripts are "executable" too... case $win32_fileres in *MS\ Windows\ PE\ Intel*) win32_libid_type="x86 DLL" ;; esac ;; esac $echo $win32_libid_type } # func_infer_tag arg # Infer tagged configuration to use if any are available and # if one wasn't chosen via the "--tag" command line option. # Only attempt this if the compiler in the base compile # command doesn't match the default compiler. # arg is usually of the form 'gcc ...' func_infer_tag () { if test -n "$available_tags" && test -z "$tagname"; then CC_quoted= for arg in $CC; do case $arg in *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") arg="\"$arg\"" ;; esac CC_quoted="$CC_quoted $arg" done case $@ in # Blanks in the command may have been stripped by the calling shell, # but not from the CC environment variable when configure was run. " $CC "* | "$CC "* | " `$echo $CC` "* | "`$echo $CC` "* | " $CC_quoted"* | "$CC_quoted "* | " `$echo $CC_quoted` "* | "`$echo $CC_quoted` "*) ;; # Blanks at the start of $base_compile will cause this to fail # if we don't check for them as well. *) for z in $available_tags; do if grep "^# ### BEGIN LIBTOOL TAG CONFIG: $z$" < "$progpath" > /dev/null; then # Evaluate the configuration. eval "`${SED} -n -e '/^# ### BEGIN LIBTOOL TAG CONFIG: '$z'$/,/^# ### END LIBTOOL TAG CONFIG: '$z'$/p' < $progpath`" CC_quoted= for arg in $CC; do # Double-quote args containing other shell metacharacters. case $arg in *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") arg="\"$arg\"" ;; esac CC_quoted="$CC_quoted $arg" done # user sometimes does CC=-gcc so we need to match that to 'gcc' trimedcc=`echo ${CC} | $SED -e "s/${host}-//g"` # and sometimes libtool has CC=-gcc but user does CC=gcc extendcc=${host}-${CC} # and sometimes libtool has CC=-gcc but user has CC=-gcc # (Gentoo-specific hack because we always export $CHOST) mungedcc=${CHOST-${host}}-${trimedcc} case "$@ " in "cc "* | " cc "* | "${host}-cc "* | " ${host}-cc "*|\ "gcc "* | " gcc "* | "${host}-gcc "* | " ${host}-gcc "*) tagname=CC break ;; "$trimedcc "* | " $trimedcc "* | "`$echo $trimedcc` "* | " `$echo $trimedcc` "*|\ "$extendcc "* | " $extendcc "* | "`$echo $extendcc` "* | " `$echo $extendcc` "*|\ "$mungedcc "* | " $mungedcc "* | "`$echo $mungedcc` "* | " `$echo $mungedcc` "*|\ " $CC "* | "$CC "* | " `$echo $CC` "* | "`$echo $CC` "* | " $CC_quoted"* | "$CC_quoted "* | " `$echo $CC_quoted` "* | "`$echo $CC_quoted` "*) # The compiler in the base compile command matches # the one in the tagged configuration. # Assume this is the tagged configuration we want. tagname=$z break ;; esac fi done # If $tagname still isn't set, then no tagged configuration # was found and let the user know that the "--tag" command # line option must be used. if test -z "$tagname"; then $echo "$modename: unable to infer tagged configuration" $echo "$modename: specify a tag with \`--tag'" 1>&2 exit $EXIT_FAILURE # else # $echo "$modename: using $tagname tagged configuration" fi ;; esac fi } # func_extract_an_archive dir oldlib func_extract_an_archive () { f_ex_an_ar_dir="$1"; shift f_ex_an_ar_oldlib="$1" $show "(cd $f_ex_an_ar_dir && $AR x $f_ex_an_ar_oldlib)" $run eval "(cd \$f_ex_an_ar_dir && $AR x \$f_ex_an_ar_oldlib)" || exit $? if ($AR t "$f_ex_an_ar_oldlib" | sort | sort -uc >/dev/null 2>&1); then : else $echo "$modename: ERROR: object name conflicts: $f_ex_an_ar_dir/$f_ex_an_ar_oldlib" 1>&2 exit $EXIT_FAILURE fi } # func_extract_archives gentop oldlib ... func_extract_archives () { my_gentop="$1"; shift my_oldlibs=${1+"$@"} my_oldobjs="" my_xlib="" my_xabs="" my_xdir="" my_status="" $show "${rm}r $my_gentop" $run ${rm}r "$my_gentop" $show "$mkdir $my_gentop" $run $mkdir "$my_gentop" my_status=$? if test "$my_status" -ne 0 && test ! -d "$my_gentop"; then exit $my_status fi for my_xlib in $my_oldlibs; do # Extract the objects. case $my_xlib in [\\/]* | [A-Za-z]:[\\/]*) my_xabs="$my_xlib" ;; *) my_xabs=`pwd`"/$my_xlib" ;; esac my_xlib=`$echo "X$my_xlib" | $Xsed -e 's%^.*/%%'` my_xdir="$my_gentop/$my_xlib" $show "${rm}r $my_xdir" $run ${rm}r "$my_xdir" $show "$mkdir $my_xdir" $run $mkdir "$my_xdir" exit_status=$? if test "$exit_status" -ne 0 && test ! -d "$my_xdir"; then exit $exit_status fi case $host in *-darwin*) $show "Extracting $my_xabs" # Do not bother doing anything if just a dry run if test -z "$run"; then darwin_orig_dir=`pwd` cd $my_xdir || exit $? darwin_archive=$my_xabs darwin_curdir=`pwd` darwin_base_archive=`$echo "X$darwin_archive" | $Xsed -e 's%^.*/%%'` darwin_arches=`lipo -info "$darwin_archive" 2>/dev/null | $EGREP Architectures 2>/dev/null` if test -n "$darwin_arches"; then darwin_arches=`echo "$darwin_arches" | $SED -e 's/.*are://'` darwin_arch= $show "$darwin_base_archive has multiple architectures $darwin_arches" for darwin_arch in $darwin_arches ; do mkdir -p "unfat-$$/${darwin_base_archive}-${darwin_arch}" lipo -thin $darwin_arch -output "unfat-$$/${darwin_base_archive}-${darwin_arch}/${darwin_base_archive}" "${darwin_archive}" cd "unfat-$$/${darwin_base_archive}-${darwin_arch}" func_extract_an_archive "`pwd`" "${darwin_base_archive}" cd "$darwin_curdir" $rm "unfat-$$/${darwin_base_archive}-${darwin_arch}/${darwin_base_archive}" done # $darwin_arches ## Okay now we have a bunch of thin objects, gotta fatten them up :) darwin_filelist=`find unfat-$$ -type f -name \*.o -print -o -name \*.lo -print| xargs basename | sort -u | $NL2SP` darwin_file= darwin_files= for darwin_file in $darwin_filelist; do darwin_files=`find unfat-$$ -name $darwin_file -print | $NL2SP` lipo -create -output "$darwin_file" $darwin_files done # $darwin_filelist ${rm}r unfat-$$ cd "$darwin_orig_dir" else cd "$darwin_orig_dir" func_extract_an_archive "$my_xdir" "$my_xabs" fi # $darwin_arches fi # $run ;; *) func_extract_an_archive "$my_xdir" "$my_xabs" ;; esac my_oldobjs="$my_oldobjs "`find $my_xdir -name \*.$objext -print -o -name \*.lo -print | $NL2SP` done func_extract_archives_result="$my_oldobjs" } # End of Shell function definitions ##################################### # Darwin sucks eval std_shrext=\"$shrext_cmds\" disable_libs=no # Parse our command line options once, thoroughly. while test "$#" -gt 0 do arg="$1" shift case $arg in -*=*) optarg=`$echo "X$arg" | $Xsed -e 's/[-_a-zA-Z0-9]*=//'` ;; *) optarg= ;; esac # If the previous option needs an argument, assign it. if test -n "$prev"; then case $prev in execute_dlfiles) execute_dlfiles="$execute_dlfiles $arg" ;; tag) tagname="$arg" preserve_args="${preserve_args}=$arg" # Check whether tagname contains only valid characters case $tagname in *[!-_A-Za-z0-9,/]*) $echo "$progname: invalid tag name: $tagname" 1>&2 exit $EXIT_FAILURE ;; esac case $tagname in CC) # Don't test for the "default" C tag, as we know, it's there, but # not specially marked. ;; *) if grep "^# ### BEGIN LIBTOOL TAG CONFIG: $tagname$" < "$progpath" > /dev/null; then taglist="$taglist $tagname" # Evaluate the configuration. eval "`${SED} -n -e '/^# ### BEGIN LIBTOOL TAG CONFIG: '$tagname'$/,/^# ### END LIBTOOL TAG CONFIG: '$tagname'$/p' < $progpath`" else $echo "$progname: ignoring unknown tag $tagname" 1>&2 fi ;; esac ;; *) eval "$prev=\$arg" ;; esac prev= prevopt= continue fi # Have we seen a non-optional argument yet? case $arg in --help) show_help=yes ;; --version) $echo "$PROGRAM (GNU $PACKAGE) $VERSION$TIMESTAMP" $echo $echo "Copyright (C) 2005 Free Software Foundation, Inc." $echo "This is free software; see the source for copying conditions. There is NO" $echo "warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." exit $? ;; --config) ${SED} -e '1,/^# ### BEGIN LIBTOOL CONFIG/d' -e '/^# ### END LIBTOOL CONFIG/,$d' $progpath # Now print the configurations for the tags. for tagname in $taglist; do ${SED} -n -e "/^# ### BEGIN LIBTOOL TAG CONFIG: $tagname$/,/^# ### END LIBTOOL TAG CONFIG: $tagname$/p" < "$progpath" done exit $? ;; --debug) $echo "$progname: enabling shell trace mode" set -x preserve_args="$preserve_args $arg" ;; --dry-run | -n) run=: ;; --features) $echo "host: $host" if test "$build_libtool_libs" = yes; then $echo "enable shared libraries" else $echo "disable shared libraries" fi if test "$build_old_libs" = yes; then $echo "enable static libraries" else $echo "disable static libraries" fi exit $? ;; --finish) mode="finish" ;; --mode) prevopt="--mode" prev=mode ;; --mode=*) mode="$optarg" ;; --preserve-dup-deps) duplicate_deps="yes" ;; --quiet | --silent) show=: preserve_args="$preserve_args $arg" ;; --tag) prevopt="--tag" prev=tag preserve_args="$preserve_args --tag" ;; --tag=*) set tag "$optarg" ${1+"$@"} shift prev=tag preserve_args="$preserve_args --tag" ;; -dlopen) prevopt="-dlopen" prev=execute_dlfiles ;; -*) $echo "$modename: unrecognized option \`$arg'" 1>&2 $echo "$help" 1>&2 exit $EXIT_FAILURE ;; *) nonopt="$arg" break ;; esac done if test -n "$prevopt"; then $echo "$modename: option \`$prevopt' requires an argument" 1>&2 $echo "$help" 1>&2 exit $EXIT_FAILURE fi case $disable_libs in no) ;; shared) build_libtool_libs=no build_old_libs=yes ;; static) build_old_libs=`case $build_libtool_libs in yes) echo no;; *) echo yes;; esac` ;; esac # If this variable is set in any of the actions, the command in it # will be execed at the end. This prevents here-documents from being # left over by shells. exec_cmd= if test -z "$show_help"; then # Infer the operation mode. if test -z "$mode"; then $echo "*** Warning: inferring the mode of operation is deprecated." 1>&2 $echo "*** Future versions of Libtool will require --mode=MODE be specified." 1>&2 case $nonopt in *cc | cc* | *++ | gcc* | *-gcc* | g++* | xlc*) mode=link for arg do case $arg in -c) mode=compile break ;; esac done ;; *db | *dbx | *strace | *truss) mode=execute ;; *install*|cp|mv) mode=install ;; *rm) mode=uninstall ;; *) # If we have no mode, but dlfiles were specified, then do execute mode. test -n "$execute_dlfiles" && mode=execute # Just use the default operation mode. if test -z "$mode"; then if test -n "$nonopt"; then $echo "$modename: warning: cannot infer operation mode from \`$nonopt'" 1>&2 else $echo "$modename: warning: cannot infer operation mode without MODE-ARGS" 1>&2 fi fi ;; esac fi # Only execute mode is allowed to have -dlopen flags. if test -n "$execute_dlfiles" && test "$mode" != execute; then $echo "$modename: unrecognized option \`-dlopen'" 1>&2 $echo "$help" 1>&2 exit $EXIT_FAILURE fi # Change the help message to a mode-specific one. generic_help="$help" help="Try \`$modename --help --mode=$mode' for more information." # These modes are in order of execution frequency so that they run quickly. case $mode in # libtool compile mode compile) modename="$modename: compile" # Get the compilation command and the source file. base_compile= srcfile="$nonopt" # always keep a non-empty value in "srcfile" suppress_opt=yes suppress_output= arg_mode=normal libobj= later= for arg do case $arg_mode in arg ) # do not "continue". Instead, add this to base_compile lastarg="$arg" arg_mode=normal ;; target ) libobj="$arg" arg_mode=normal continue ;; normal ) # Accept any command-line options. case $arg in -o) if test -n "$libobj" ; then $echo "$modename: you cannot specify \`-o' more than once" 1>&2 exit $EXIT_FAILURE fi arg_mode=target continue ;; -static | -prefer-pic | -prefer-non-pic) later="$later $arg" continue ;; -no-suppress) suppress_opt=no continue ;; -Xcompiler) arg_mode=arg # the next one goes into the "base_compile" arg list continue # The current "srcfile" will either be retained or ;; # replaced later. I would guess that would be a bug. -Wc,*) args=`$echo "X$arg" | $Xsed -e "s/^-Wc,//"` lastarg= save_ifs="$IFS"; IFS=',' for arg in $args; do IFS="$save_ifs" # Double-quote args containing other shell metacharacters. # Many Bourne shells cannot handle close brackets correctly # in scan sets, so we specify it separately. case $arg in *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") arg="\"$arg\"" ;; esac lastarg="$lastarg $arg" done IFS="$save_ifs" lastarg=`$echo "X$lastarg" | $Xsed -e "s/^ //"` # Add the arguments to base_compile. base_compile="$base_compile $lastarg" continue ;; * ) # Accept the current argument as the source file. # The previous "srcfile" becomes the current argument. # lastarg="$srcfile" srcfile="$arg" ;; esac # case $arg ;; esac # case $arg_mode # Aesthetically quote the previous argument. lastarg=`$echo "X$lastarg" | $Xsed -e "$sed_quote_subst"` case $lastarg in # Double-quote args containing other shell metacharacters. # Many Bourne shells cannot handle close brackets correctly # in scan sets, and some SunOS ksh mistreat backslash-escaping # in scan sets (worked around with variable expansion), # and furthermore cannot handle '|' '&' '(' ')' in scan sets # at all, so we specify them separately. *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") lastarg="\"$lastarg\"" ;; esac base_compile="$base_compile $lastarg" done # for arg case $arg_mode in arg) $echo "$modename: you must specify an argument for -Xcompile" exit $EXIT_FAILURE ;; target) $echo "$modename: you must specify a target with \`-o'" 1>&2 exit $EXIT_FAILURE ;; *) # Get the name of the library object. [ -z "$libobj" ] && libobj=`$echo "X$srcfile" | $Xsed -e 's%^.*/%%'` ;; esac # Recognize several different file suffixes. # If the user specifies -o file.o, it is replaced with file.lo xform='[cCFSifmso]' case $libobj in *.ada) xform=ada ;; *.adb) xform=adb ;; *.ads) xform=ads ;; *.asm) xform=asm ;; *.c++) xform=c++ ;; *.cc) xform=cc ;; *.ii) xform=ii ;; *.class) xform=class ;; *.cpp) xform=cpp ;; *.cxx) xform=cxx ;; *.f90) xform=f90 ;; *.for) xform=for ;; *.java) xform=java ;; esac libobj=`$echo "X$libobj" | $Xsed -e "s/\.$xform$/.lo/"` case $libobj in *.lo) obj=`$echo "X$libobj" | $Xsed -e "$lo2o"` ;; *) $echo "$modename: cannot determine name of library object from \`$libobj'" 1>&2 exit $EXIT_FAILURE ;; esac func_infer_tag $base_compile for arg in $later; do case $arg in -static) build_old_libs=yes continue ;; -prefer-pic) pic_mode=yes continue ;; -prefer-non-pic) pic_mode=no continue ;; esac done qlibobj=`$echo "X$libobj" | $Xsed -e "$sed_quote_subst"` case $qlibobj in *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") qlibobj="\"$qlibobj\"" ;; esac test "X$libobj" != "X$qlibobj" \ && $echo "X$libobj" | grep '[]~#^*{};<>?"'"'"' &()|`$[]' \ && $echo "$modename: libobj name \`$libobj' may not contain shell special characters." objname=`$echo "X$obj" | $Xsed -e 's%^.*/%%'` xdir=`$echo "X$obj" | $Xsed -e 's%/[^/]*$%%'` if test "X$xdir" = "X$obj"; then xdir= else xdir=$xdir/ fi lobj=${xdir}$objdir/$objname if test -z "$base_compile"; then $echo "$modename: you must specify a compilation command" 1>&2 $echo "$help" 1>&2 exit $EXIT_FAILURE fi # Delete any leftover library objects. if test "$build_old_libs" = yes; then removelist="$obj $lobj $libobj ${libobj}T" else removelist="$lobj $libobj ${libobj}T" fi $run $rm $removelist trap "$run $rm $removelist; exit $EXIT_FAILURE" 1 2 15 # On Cygwin there's no "real" PIC flag so we must build both object types case $host_os in cygwin* | mingw* | pw32* | os2*) pic_mode=default ;; esac if test "$pic_mode" = no && test "$deplibs_check_method" != pass_all; then # non-PIC code in shared libraries is not supported pic_mode=default fi # Calculate the filename of the output object if compiler does # not support -o with -c if test "$compiler_c_o" = no; then output_obj=`$echo "X$srcfile" | $Xsed -e 's%^.*/%%' -e 's%\.[^.]*$%%'`.${objext} lockfile="$output_obj.lock" removelist="$removelist $output_obj $lockfile" trap "$run $rm $removelist; exit $EXIT_FAILURE" 1 2 15 else output_obj= need_locks=no lockfile= fi # Lock this critical section if it is needed # We use this script file to make the link, it avoids creating a new file if test "$need_locks" = yes; then until $run ln "$srcfile" "$lockfile" 2>/dev/null; do $show "Waiting for $lockfile to be removed" sleep 2 done elif test "$need_locks" = warn; then if test -f "$lockfile"; then $echo "\ *** ERROR, $lockfile exists and contains: `cat $lockfile 2>/dev/null` This indicates that another process is trying to use the same temporary object file, and libtool could not work around it because your compiler does not support \`-c' and \`-o' together. If you repeat this compilation, it may succeed, by chance, but you had better avoid parallel builds (make -j) in this platform, or get a better compiler." $run $rm $removelist exit $EXIT_FAILURE fi $echo "$srcfile" > "$lockfile" fi if test -n "$fix_srcfile_path"; then eval srcfile=\"$fix_srcfile_path\" fi qsrcfile=`$echo "X$srcfile" | $Xsed -e "$sed_quote_subst"` case $qsrcfile in *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") qsrcfile="\"$qsrcfile\"" ;; esac $run $rm "$libobj" "${libobj}T" # Create a libtool object file (analogous to a ".la" file), # but don't create it if we're doing a dry run. test -z "$run" && cat > ${libobj}T </dev/null`" != "X$srcfile"; then $echo "\ *** ERROR, $lockfile contains: `cat $lockfile 2>/dev/null` but it should contain: $srcfile This indicates that another process is trying to use the same temporary object file, and libtool could not work around it because your compiler does not support \`-c' and \`-o' together. If you repeat this compilation, it may succeed, by chance, but you had better avoid parallel builds (make -j) in this platform, or get a better compiler." $run $rm $removelist exit $EXIT_FAILURE fi # Just move the object if needed, then go on to compile the next one if test -n "$output_obj" && test "X$output_obj" != "X$lobj"; then $show "$mv $output_obj $lobj" if $run $mv $output_obj $lobj; then : else error=$? $run $rm $removelist exit $error fi fi # Append the name of the PIC object to the libtool object file. test -z "$run" && cat >> ${libobj}T <> ${libobj}T </dev/null`" != "X$srcfile"; then $echo "\ *** ERROR, $lockfile contains: `cat $lockfile 2>/dev/null` but it should contain: $srcfile This indicates that another process is trying to use the same temporary object file, and libtool could not work around it because your compiler does not support \`-c' and \`-o' together. If you repeat this compilation, it may succeed, by chance, but you had better avoid parallel builds (make -j) in this platform, or get a better compiler." $run $rm $removelist exit $EXIT_FAILURE fi # Just move the object if needed if test -n "$output_obj" && test "X$output_obj" != "X$obj"; then $show "$mv $output_obj $obj" if $run $mv $output_obj $obj; then : else error=$? $run $rm $removelist exit $error fi fi # Append the name of the non-PIC object the libtool object file. # Only append if the libtool object file exists. test -z "$run" && cat >> ${libobj}T <> ${libobj}T <&2 fi if test -n "$link_static_flag"; then dlopen_self=$dlopen_self_static fi prefer_static_libs=yes else if test -z "$pic_flag" && test -n "$link_static_flag"; then dlopen_self=$dlopen_self_static fi prefer_static_libs=built fi build_libtool_libs=no build_old_libs=yes break ;; esac done # See if our shared archives depend on static archives. test -n "$old_archive_from_new_cmds" && build_old_libs=yes # Go through the arguments, transforming them on the way. while test "$#" -gt 0; do arg="$1" shift case $arg in *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") qarg=\"`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`\" ### testsuite: skip nested quoting test ;; *) qarg=$arg ;; esac libtool_args="$libtool_args $qarg" # If the previous option needs an argument, assign it. if test -n "$prev"; then case $prev in output) compile_command="$compile_command @OUTPUT@" finalize_command="$finalize_command @OUTPUT@" ;; esac case $prev in dlfiles|dlprefiles) if test "$preload" = no; then # Add the symbol object into the linking commands. compile_command="$compile_command @SYMFILE@" finalize_command="$finalize_command @SYMFILE@" preload=yes fi case $arg in *.la | *.lo) ;; # We handle these cases below. force) if test "$dlself" = no; then dlself=needless export_dynamic=yes fi prev= continue ;; self) if test "$prev" = dlprefiles; then dlself=yes elif test "$prev" = dlfiles && test "$dlopen_self" != yes; then dlself=yes else dlself=needless export_dynamic=yes fi prev= continue ;; *) if test "$prev" = dlfiles; then dlfiles="$dlfiles $arg" else dlprefiles="$dlprefiles $arg" fi prev= continue ;; esac ;; expsyms) export_symbols="$arg" if test ! -f "$arg"; then $echo "$modename: symbol file \`$arg' does not exist" exit $EXIT_FAILURE fi prev= continue ;; expsyms_regex) export_symbols_regex="$arg" prev= continue ;; inst_prefix) inst_prefix_dir="$arg" prev= continue ;; precious_regex) precious_files_regex="$arg" prev= continue ;; release) release="-$arg" prev= continue ;; objectlist) if test -f "$arg"; then save_arg=$arg moreargs= for fil in `cat $save_arg` do # moreargs="$moreargs $fil" arg=$fil # A libtool-controlled object. # Check to see that this really is a libtool object. if (${SED} -e '2q' $arg | grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then pic_object= non_pic_object= # Read the .lo file # If there is no directory component, then add one. case $arg in */* | *\\*) . $arg ;; *) . ./$arg ;; esac if test -z "$pic_object" || \ test -z "$non_pic_object" || test "$pic_object" = none && \ test "$non_pic_object" = none; then $echo "$modename: cannot find name of object for \`$arg'" 1>&2 exit $EXIT_FAILURE fi # Extract subdirectory from the argument. xdir=`$echo "X$arg" | $Xsed -e 's%/[^/]*$%%'` if test "X$xdir" = "X$arg"; then xdir= else xdir="$xdir/" fi if test "$pic_object" != none; then # Prepend the subdirectory the object is found in. pic_object="$xdir$pic_object" if test "$prev" = dlfiles; then if test "$build_libtool_libs" = yes && test "$dlopen_support" = yes; then dlfiles="$dlfiles $pic_object" prev= continue else # If libtool objects are unsupported, then we need to preload. prev=dlprefiles fi fi # CHECK ME: I think I busted this. -Ossama if test "$prev" = dlprefiles; then # Preload the old-style object. dlprefiles="$dlprefiles $pic_object" prev= fi # A PIC object. libobjs="$libobjs $pic_object" arg="$pic_object" fi # Non-PIC object. if test "$non_pic_object" != none; then # Prepend the subdirectory the object is found in. non_pic_object="$xdir$non_pic_object" # A standard non-PIC object non_pic_objects="$non_pic_objects $non_pic_object" if test -z "$pic_object" || test "$pic_object" = none ; then arg="$non_pic_object" fi else # If the PIC object exists, use it instead. # $xdir was prepended to $pic_object above. non_pic_object="$pic_object" non_pic_objects="$non_pic_objects $non_pic_object" fi else # Only an error if not doing a dry-run. if test -z "$run"; then $echo "$modename: \`$arg' is not a valid libtool object" 1>&2 exit $EXIT_FAILURE else # Dry-run case. # Extract subdirectory from the argument. xdir=`$echo "X$arg" | $Xsed -e 's%/[^/]*$%%'` if test "X$xdir" = "X$arg"; then xdir= else xdir="$xdir/" fi pic_object=`$echo "X${xdir}${objdir}/${arg}" | $Xsed -e "$lo2o"` non_pic_object=`$echo "X${xdir}${arg}" | $Xsed -e "$lo2o"` libobjs="$libobjs $pic_object" non_pic_objects="$non_pic_objects $non_pic_object" fi fi done else $echo "$modename: link input file \`$save_arg' does not exist" exit $EXIT_FAILURE fi arg=$save_arg prev= continue ;; rpath | xrpath) # We need an absolute path. case $arg in [\\/]* | [A-Za-z]:[\\/]*) ;; *) $echo "$modename: only absolute run-paths are allowed" 1>&2 exit $EXIT_FAILURE ;; esac if test "$prev" = rpath; then case "$rpath " in *" $arg "*) ;; *) rpath="$rpath $arg" ;; esac else case "$xrpath " in *" $arg "*) ;; *) xrpath="$xrpath $arg" ;; esac fi prev= continue ;; xcompiler) compiler_flags="$compiler_flags $qarg" prev= compile_command="$compile_command $qarg" finalize_command="$finalize_command $qarg" continue ;; xlinker) linker_flags="$linker_flags $qarg" compiler_flags="$compiler_flags $wl$qarg" prev= compile_command="$compile_command $wl$qarg" finalize_command="$finalize_command $wl$qarg" continue ;; xcclinker) linker_flags="$linker_flags $qarg" compiler_flags="$compiler_flags $qarg" prev= compile_command="$compile_command $qarg" finalize_command="$finalize_command $qarg" continue ;; shrext) shrext_cmds="$arg" prev= continue ;; darwin_framework|darwin_framework_skip) test "$prev" = "darwin_framework" && compiler_flags="$compiler_flags $arg" compile_command="$compile_command $arg" finalize_command="$finalize_command $arg" prev= continue ;; *) eval "$prev=\"\$arg\"" prev= continue ;; esac fi # test -n "$prev" prevarg="$arg" case $arg in -all-static) if test -n "$link_static_flag"; then compile_command="$compile_command $link_static_flag" finalize_command="$finalize_command $link_static_flag" fi continue ;; -allow-undefined) # FIXME: remove this flag sometime in the future. $echo "$modename: \`-allow-undefined' is deprecated because it is the default" 1>&2 continue ;; -avoid-version) avoid_version=yes continue ;; -dlopen) prev=dlfiles continue ;; -dlpreopen) prev=dlprefiles continue ;; -export-dynamic) export_dynamic=yes continue ;; -export-symbols | -export-symbols-regex) if test -n "$export_symbols" || test -n "$export_symbols_regex"; then $echo "$modename: more than one -exported-symbols argument is not allowed" exit $EXIT_FAILURE fi if test "X$arg" = "X-export-symbols"; then prev=expsyms else prev=expsyms_regex fi continue ;; -framework|-arch|-isysroot) case " $CC " in *" ${arg} ${1} "* | *" ${arg} ${1} "*) prev=darwin_framework_skip ;; *) compiler_flags="$compiler_flags $arg" prev=darwin_framework ;; esac compile_command="$compile_command $arg" finalize_command="$finalize_command $arg" continue ;; -inst-prefix-dir) prev=inst_prefix continue ;; # The native IRIX linker understands -LANG:*, -LIST:* and -LNO:* # so, if we see these flags be careful not to treat them like -L -L[A-Z][A-Z]*:*) case $with_gcc/$host in no/*-*-irix* | /*-*-irix*) compile_command="$compile_command $arg" finalize_command="$finalize_command $arg" ;; esac continue ;; -L*) dir=`$echo "X$arg" | $Xsed -e 's/^-L//'` # We need an absolute path. case $dir in [\\/]* | [A-Za-z]:[\\/]*) ;; *) absdir=`cd "$dir" && pwd` if test -z "$absdir"; then $echo "$modename: cannot determine absolute directory name of \`$dir'" 1>&2 absdir="$dir" notinst_path="$notinst_path $dir" fi dir="$absdir" ;; esac case "$deplibs " in *" -L$dir "*) ;; *) deplibs="$deplibs -L$dir" lib_search_path="$lib_search_path $dir" ;; esac case $host in *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*) testbindir=`$echo "X$dir" | $Xsed -e 's*/lib$*/bin*'` case :$dllsearchpath: in *":$dir:"*) ;; *) dllsearchpath="$dllsearchpath:$dir";; esac case :$dllsearchpath: in *":$testbindir:"*) ;; *) dllsearchpath="$dllsearchpath:$testbindir";; esac ;; esac continue ;; -l*) if test "X$arg" = "X-lc" || test "X$arg" = "X-lm"; then case $host in *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-beos*) # These systems don't actually have a C or math library (as such) continue ;; *-*-os2*) # These systems don't actually have a C library (as such) test "X$arg" = "X-lc" && continue ;; *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*) # Do not include libc due to us having libc/libc_r. test "X$arg" = "X-lc" && continue ;; *-*-rhapsody* | *-*-darwin1.[012]) # Rhapsody C and math libraries are in the System framework deplibs="$deplibs -framework System" continue ;; *-*-sco3.2v5* | *-*-sco5v6*) # Causes problems with __ctype test "X$arg" = "X-lc" && continue ;; *-*-sysv4.2uw2* | *-*-sysv5* | *-*-unixware* | *-*-OpenUNIX*) # Compiler inserts libc in the correct place for threads to work test "X$arg" = "X-lc" && continue ;; esac elif test "X$arg" = "X-lc_r"; then case $host in *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*) # Do not include libc_r directly, use -pthread flag. continue ;; esac fi deplibs="$deplibs $arg" continue ;; # Tru64 UNIX uses -model [arg] to determine the layout of C++ # classes, name mangling, and exception handling. -model) compile_command="$compile_command $arg" compiler_flags="$compiler_flags $arg" finalize_command="$finalize_command $arg" prev=xcompiler continue ;; -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe) compiler_flags="$compiler_flags $arg" compile_command="$compile_command $arg" finalize_command="$finalize_command $arg" continue ;; -module) module=yes continue ;; # -64, -mips[0-9] enable 64-bit mode on the SGI compiler # -r[0-9][0-9]* specifies the processor on the SGI compiler # -xarch=*, -xtarget=* enable 64-bit mode on the Sun compiler # +DA*, +DD* enable 64-bit mode on the HP compiler # -q* pass through compiler args for the IBM compiler # -m* pass through architecture-specific compiler args for GCC # -m*, -t[45]*, -txscale* pass through architecture-specific # compiler args for GCC # -pg pass through profiling flag for GCC # @file GCC response files -64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*|-pg| \ -t[45]*|-txscale*|@*) # Unknown arguments in both finalize_command and compile_command need # to be aesthetically quoted because they are evaled later. arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"` case $arg in *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") arg="\"$arg\"" ;; esac compile_command="$compile_command $arg" finalize_command="$finalize_command $arg" compiler_flags="$compiler_flags $arg" continue ;; -shrext) prev=shrext continue ;; -no-fast-install) fast_install=no continue ;; -no-install) case $host in *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*) # The PATH hackery in wrapper scripts is required on Windows # in order for the loader to find any dlls it needs. $echo "$modename: warning: \`-no-install' is ignored for $host" 1>&2 $echo "$modename: warning: assuming \`-no-fast-install' instead" 1>&2 fast_install=no ;; *) no_install=yes ;; esac continue ;; -no-undefined) allow_undefined=no continue ;; -objectlist) prev=objectlist continue ;; -o) prev=output ;; -precious-files-regex) prev=precious_regex continue ;; -release) prev=release continue ;; -rpath) prev=rpath continue ;; -R) prev=xrpath continue ;; -R*) dir=`$echo "X$arg" | $Xsed -e 's/^-R//'` # We need an absolute path. case $dir in [\\/]* | [A-Za-z]:[\\/]*) ;; *) $echo "$modename: only absolute run-paths are allowed" 1>&2 exit $EXIT_FAILURE ;; esac case "$xrpath " in *" $dir "*) ;; *) xrpath="$xrpath $dir" ;; esac continue ;; -static) # The effects of -static are defined in a previous loop. # We used to do the same as -all-static on platforms that # didn't have a PIC flag, but the assumption that the effects # would be equivalent was wrong. It would break on at least # Digital Unix and AIX. continue ;; -thread-safe) thread_safe=yes continue ;; -version-info) prev=vinfo continue ;; -version-number) prev=vinfo vinfo_number=yes continue ;; -Wc,*) args=`$echo "X$arg" | $Xsed -e "$sed_quote_subst" -e 's/^-Wc,//'` arg= save_ifs="$IFS"; IFS=',' for flag in $args; do IFS="$save_ifs" case $flag in *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") flag="\"$flag\"" ;; esac arg="$arg $wl$flag" compiler_flags="$compiler_flags $flag" done IFS="$save_ifs" arg=`$echo "X$arg" | $Xsed -e "s/^ //"` ;; -Wl,*) args=`$echo "X$arg" | $Xsed -e "$sed_quote_subst" -e 's/^-Wl,//'` arg= save_ifs="$IFS"; IFS=',' for flag in $args; do IFS="$save_ifs" case $flag in *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") flag="\"$flag\"" ;; esac arg="$arg $wl$flag" compiler_flags="$compiler_flags $wl$flag" linker_flags="$linker_flags $flag" done IFS="$save_ifs" arg=`$echo "X$arg" | $Xsed -e "s/^ //"` ;; -Xcompiler) prev=xcompiler continue ;; -Xlinker) prev=xlinker continue ;; -XCClinker) prev=xcclinker continue ;; # Some other compiler flag. -* | +*) # Unknown arguments in both finalize_command and compile_command need # to be aesthetically quoted because they are evaled later. arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"` case $arg in *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") arg="\"$arg\"" ;; esac ;; *.$objext) # A standard object. objs="$objs $arg" ;; *.lo) # A libtool-controlled object. # Check to see that this really is a libtool object. if (${SED} -e '2q' $arg | grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then pic_object= non_pic_object= # Read the .lo file # If there is no directory component, then add one. case $arg in */* | *\\*) . $arg ;; *) . ./$arg ;; esac if test -z "$pic_object" || \ test -z "$non_pic_object" || test "$pic_object" = none && \ test "$non_pic_object" = none; then $echo "$modename: cannot find name of object for \`$arg'" 1>&2 exit $EXIT_FAILURE fi # Extract subdirectory from the argument. xdir=`$echo "X$arg" | $Xsed -e 's%/[^/]*$%%'` if test "X$xdir" = "X$arg"; then xdir= else xdir="$xdir/" fi if test "$pic_object" != none; then # Prepend the subdirectory the object is found in. pic_object="$xdir$pic_object" if test "$prev" = dlfiles; then if test "$build_libtool_libs" = yes && test "$dlopen_support" = yes; then dlfiles="$dlfiles $pic_object" prev= continue else # If libtool objects are unsupported, then we need to preload. prev=dlprefiles fi fi # CHECK ME: I think I busted this. -Ossama if test "$prev" = dlprefiles; then # Preload the old-style object. dlprefiles="$dlprefiles $pic_object" prev= fi # A PIC object. libobjs="$libobjs $pic_object" arg="$pic_object" fi # Non-PIC object. if test "$non_pic_object" != none; then # Prepend the subdirectory the object is found in. non_pic_object="$xdir$non_pic_object" # A standard non-PIC object non_pic_objects="$non_pic_objects $non_pic_object" if test -z "$pic_object" || test "$pic_object" = none ; then arg="$non_pic_object" fi else # If the PIC object exists, use it instead. # $xdir was prepended to $pic_object above. non_pic_object="$pic_object" non_pic_objects="$non_pic_objects $non_pic_object" fi else # Only an error if not doing a dry-run. if test -z "$run"; then $echo "$modename: \`$arg' is not a valid libtool object" 1>&2 exit $EXIT_FAILURE else # Dry-run case. # Extract subdirectory from the argument. xdir=`$echo "X$arg" | $Xsed -e 's%/[^/]*$%%'` if test "X$xdir" = "X$arg"; then xdir= else xdir="$xdir/" fi pic_object=`$echo "X${xdir}${objdir}/${arg}" | $Xsed -e "$lo2o"` non_pic_object=`$echo "X${xdir}${arg}" | $Xsed -e "$lo2o"` libobjs="$libobjs $pic_object" non_pic_objects="$non_pic_objects $non_pic_object" fi fi ;; *.$libext) # An archive. deplibs="$deplibs $arg" old_deplibs="$old_deplibs $arg" continue ;; *.la) # A libtool-controlled library. if test "$prev" = dlfiles; then # This library was specified with -dlopen. dlfiles="$dlfiles $arg" prev= elif test "$prev" = dlprefiles; then # The library was specified with -dlpreopen. dlprefiles="$dlprefiles $arg" prev= else deplibs="$deplibs $arg" fi continue ;; # Some other compiler argument. *) # Unknown arguments in both finalize_command and compile_command need # to be aesthetically quoted because they are evaled later. arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"` case $arg in *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") arg="\"$arg\"" ;; esac ;; esac # arg # Now actually substitute the argument into the commands. if test -n "$arg"; then compile_command="$compile_command $arg" finalize_command="$finalize_command $arg" fi done # argument parsing loop if test -n "$prev"; then $echo "$modename: the \`$prevarg' option requires an argument" 1>&2 $echo "$help" 1>&2 exit $EXIT_FAILURE fi if test "$export_dynamic" = yes && test -n "$export_dynamic_flag_spec"; then eval arg=\"$export_dynamic_flag_spec\" compile_command="$compile_command $arg" finalize_command="$finalize_command $arg" fi oldlibs= # calculate the name of the file, without its directory outputname=`$echo "X$output" | $Xsed -e 's%^.*/%%'` libobjs_save="$libobjs" if test -n "$shlibpath_var"; then # get the directories listed in $shlibpath_var eval shlib_search_path=\`\$echo \"X\${$shlibpath_var}\" \| \$Xsed -e \'s/:/ /g\'\` else shlib_search_path= fi eval sys_lib_search_path=\"$sys_lib_search_path_spec\" eval sys_lib_dlsearch_path=\"$sys_lib_dlsearch_path_spec\" output_objdir=`$echo "X$output" | $Xsed -e 's%/[^/]*$%%'` if test "X$output_objdir" = "X$output"; then output_objdir="$objdir" else output_objdir="$output_objdir/$objdir" fi # Create the object directory. if test ! -d "$output_objdir"; then $show "$mkdir $output_objdir" $run $mkdir $output_objdir exit_status=$? if test "$exit_status" -ne 0 && test ! -d "$output_objdir"; then exit $exit_status fi fi # Determine the type of output case $output in "") $echo "$modename: you must specify an output file" 1>&2 $echo "$help" 1>&2 exit $EXIT_FAILURE ;; *.$libext) linkmode=oldlib ;; *.lo | *.$objext) linkmode=obj ;; *.la) linkmode=lib ;; *) linkmode=prog ;; # Anything else should be a program. esac case $host in *cygwin* | *mingw* | *pw32*) # don't eliminate duplications in $postdeps and $predeps duplicate_compiler_generated_deps=yes ;; *) duplicate_compiler_generated_deps=$duplicate_deps ;; esac specialdeplibs= libs= # Find all interdependent deplibs by searching for libraries # that are linked more than once (e.g. -la -lb -la) for deplib in $deplibs; do if test "X$duplicate_deps" = "Xyes" ; then case "$libs " in *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;; esac fi libs="$libs $deplib" done if test "$linkmode" = lib; then libs="$predeps $libs $compiler_lib_search_path $postdeps" # Compute libraries that are listed more than once in $predeps # $postdeps and mark them as special (i.e., whose duplicates are # not to be eliminated). pre_post_deps= if test "X$duplicate_compiler_generated_deps" = "Xyes" ; then for pre_post_dep in $predeps $postdeps; do case "$pre_post_deps " in *" $pre_post_dep "*) specialdeplibs="$specialdeplibs $pre_post_deps" ;; esac pre_post_deps="$pre_post_deps $pre_post_dep" done fi pre_post_deps= fi deplibs= newdependency_libs= newlib_search_path= need_relink=no # whether we're linking any uninstalled libtool libraries notinst_deplibs= # not-installed libtool libraries case $linkmode in lib) passes="conv link" for file in $dlfiles $dlprefiles; do case $file in *.la) ;; *) $echo "$modename: libraries can \`-dlopen' only libtool libraries: $file" 1>&2 exit $EXIT_FAILURE ;; esac done ;; prog) compile_deplibs= finalize_deplibs= alldeplibs=no newdlfiles= newdlprefiles= passes="conv scan dlopen dlpreopen link" ;; *) passes="conv" ;; esac for pass in $passes; do if test "$linkmode,$pass" = "lib,link" || test "$linkmode,$pass" = "prog,scan"; then libs="$deplibs" deplibs= fi if test "$linkmode" = prog; then case $pass in dlopen) libs="$dlfiles" ;; dlpreopen) libs="$dlprefiles" ;; link) libs="$deplibs %DEPLIBS% $dependency_libs" ;; esac fi if test "$pass" = dlopen; then # Collect dlpreopened libraries save_deplibs="$deplibs" deplibs= fi for deplib in $libs; do lib= found=no case $deplib in -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe) if test "$linkmode,$pass" = "prog,link"; then compile_deplibs="$deplib $compile_deplibs" finalize_deplibs="$deplib $finalize_deplibs" else compiler_flags="$compiler_flags $deplib" fi continue ;; -l*) if test "$linkmode" != lib && test "$linkmode" != prog; then $echo "$modename: warning: \`-l' is ignored for archives/objects" 1>&2 continue fi name=`$echo "X$deplib" | $Xsed -e 's/^-l//'` for searchdir in $newlib_search_path $lib_search_path $sys_lib_search_path $shlib_search_path; do for search_ext in .la $std_shrext .so .a; do # Search the libtool library lib="$searchdir/lib${name}${search_ext}" if test -f "$lib"; then if test "$search_ext" = ".la"; then found=yes else found=no fi break 2 fi done done if test "$found" != yes; then # deplib doesn't seem to be a libtool library if test "$linkmode,$pass" = "prog,link"; then compile_deplibs="$deplib $compile_deplibs" finalize_deplibs="$deplib $finalize_deplibs" else deplibs="$deplib $deplibs" test "$linkmode" = lib && newdependency_libs="$deplib $newdependency_libs" fi continue else # deplib is a libtool library # If $allow_libtool_libs_with_static_runtimes && $deplib is a stdlib, # We need to do some special things here, and not later. if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then case " $predeps $postdeps " in *" $deplib "*) if (${SED} -e '2q' $lib | grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then library_names= old_library= case $lib in */* | *\\*) . $lib ;; *) . ./$lib ;; esac for l in $old_library $library_names; do ll="$l" done if test "X$ll" = "X$old_library" ; then # only static version available found=no ladir=`$echo "X$lib" | $Xsed -e 's%/[^/]*$%%'` test "X$ladir" = "X$lib" && ladir="." lib=$ladir/$old_library if test "$linkmode,$pass" = "prog,link"; then compile_deplibs="$deplib $compile_deplibs" finalize_deplibs="$deplib $finalize_deplibs" else deplibs="$deplib $deplibs" test "$linkmode" = lib && newdependency_libs="$deplib $newdependency_libs" fi continue fi fi ;; *) ;; esac fi fi ;; # -l -L*) case $linkmode in lib) deplibs="$deplib $deplibs" test "$pass" = conv && continue newdependency_libs="$deplib $newdependency_libs" newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'` ;; prog) if test "$pass" = conv; then deplibs="$deplib $deplibs" continue fi if test "$pass" = scan; then deplibs="$deplib $deplibs" else compile_deplibs="$deplib $compile_deplibs" finalize_deplibs="$deplib $finalize_deplibs" fi newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'` ;; *) $echo "$modename: warning: \`-L' is ignored for archives/objects" 1>&2 ;; esac # linkmode continue ;; # -L -R*) if test "$pass" = link; then dir=`$echo "X$deplib" | $Xsed -e 's/^-R//'` # Make sure the xrpath contains only unique directories. case "$xrpath " in *" $dir "*) ;; *) xrpath="$xrpath $dir" ;; esac fi deplibs="$deplib $deplibs" continue ;; *.la) lib="$deplib" ;; *.$libext) if test "$pass" = conv; then deplibs="$deplib $deplibs" continue fi case $linkmode in lib) valid_a_lib=no case $deplibs_check_method in match_pattern*) set dummy $deplibs_check_method match_pattern_regex=`expr "$deplibs_check_method" : "$2 \(.*\)"` if eval $echo \"$deplib\" 2>/dev/null \ | $SED 10q \ | $EGREP "$match_pattern_regex" > /dev/null; then valid_a_lib=yes fi ;; pass_all) valid_a_lib=yes ;; esac if test "$valid_a_lib" != yes; then $echo $echo "*** Warning: Trying to link with static lib archive $deplib." $echo "*** I have the capability to make that library automatically link in when" $echo "*** you link to this library. But I can only do this if you have a" $echo "*** shared version of the library, which you do not appear to have" $echo "*** because the file extensions .$libext of this argument makes me believe" $echo "*** that it is just a static archive that I should not used here." else $echo $echo "*** Warning: Linking the shared library $output against the" $echo "*** static library $deplib is not portable!" deplibs="$deplib $deplibs" fi continue ;; prog) if test "$pass" != link; then deplibs="$deplib $deplibs" else compile_deplibs="$deplib $compile_deplibs" finalize_deplibs="$deplib $finalize_deplibs" fi continue ;; esac # linkmode ;; # *.$libext *.lo | *.$objext) if test "$pass" = conv; then deplibs="$deplib $deplibs" elif test "$linkmode" = prog; then if test "$pass" = dlpreopen || test "$dlopen_support" != yes || test "$build_libtool_libs" = no; then # If there is no dlopen support or we're linking statically, # we need to preload. newdlprefiles="$newdlprefiles $deplib" compile_deplibs="$deplib $compile_deplibs" finalize_deplibs="$deplib $finalize_deplibs" else newdlfiles="$newdlfiles $deplib" fi fi continue ;; %DEPLIBS%) alldeplibs=yes continue ;; esac # case $deplib if test "$found" = yes || test -f "$lib"; then : else $echo "$modename: cannot find the library \`$lib' or unhandled argument \`$deplib'" 1>&2 exit $EXIT_FAILURE fi # Check to see that this really is a libtool archive. if (${SED} -e '2q' $lib | grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then : else $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2 exit $EXIT_FAILURE fi ladir=`$echo "X$lib" | $Xsed -e 's%/[^/]*$%%'` test "X$ladir" = "X$lib" && ladir="." dlname= dlopen= dlpreopen= libdir= library_names= old_library= # If the library was installed with an old release of libtool, # it will not redefine variables installed, or shouldnotlink installed=yes shouldnotlink=no avoidtemprpath= # Read the .la file case $lib in */* | *\\*) . $lib ;; *) . ./$lib ;; esac if test "$linkmode,$pass" = "lib,link" || test "$linkmode,$pass" = "prog,scan" || { test "$linkmode" != prog && test "$linkmode" != lib; }; then test -n "$dlopen" && dlfiles="$dlfiles $dlopen" test -n "$dlpreopen" && dlprefiles="$dlprefiles $dlpreopen" fi if test "$pass" = conv; then # Only check for convenience libraries deplibs="$lib $deplibs" if test -z "$libdir"; then if test -z "$old_library"; then $echo "$modename: cannot find name of link library for \`$lib'" 1>&2 exit $EXIT_FAILURE fi # It is a libtool convenience library, so add in its objects. convenience="$convenience $ladir/$objdir/$old_library" old_convenience="$old_convenience $ladir/$objdir/$old_library" tmp_libs= for deplib in $dependency_libs; do deplibs="$deplib $deplibs" if test "X$duplicate_deps" = "Xyes" ; then case "$tmp_libs " in *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;; esac fi tmp_libs="$tmp_libs $deplib" done elif test "$linkmode" != prog && test "$linkmode" != lib; then $echo "$modename: \`$lib' is not a convenience library" 1>&2 exit $EXIT_FAILURE fi continue fi # $pass = conv # Get the name of the library we link against. linklib= for l in $old_library $library_names; do linklib="$l" done if test -z "$linklib"; then $echo "$modename: cannot find name of link library for \`$lib'" 1>&2 exit $EXIT_FAILURE fi # This library was specified with -dlopen. if test "$pass" = dlopen; then if test -z "$libdir"; then $echo "$modename: cannot -dlopen a convenience library: \`$lib'" 1>&2 exit $EXIT_FAILURE fi if test -z "$dlname" || test "$dlopen_support" != yes || test "$build_libtool_libs" = no; then # If there is no dlname, no dlopen support or we're linking # statically, we need to preload. We also need to preload any # dependent libraries so libltdl's deplib preloader doesn't # bomb out in the load deplibs phase. dlprefiles="$dlprefiles $lib $dependency_libs" else newdlfiles="$newdlfiles $lib" fi continue fi # $pass = dlopen # We need an absolute path. case $ladir in [\\/]* | [A-Za-z]:[\\/]*) abs_ladir="$ladir" ;; *) abs_ladir=`cd "$ladir" && pwd` if test -z "$abs_ladir"; then $echo "$modename: warning: cannot determine absolute directory name of \`$ladir'" 1>&2 $echo "$modename: passing it literally to the linker, although it might fail" 1>&2 abs_ladir="$ladir" fi ;; esac laname=`$echo "X$lib" | $Xsed -e 's%^.*/%%'` # Find the relevant object directory and library name. if test "X$installed" = Xyes; then if test ! -f "$libdir/$linklib" && test -f "$abs_ladir/$linklib"; then $echo "$modename: warning: library \`$lib' was moved." 1>&2 dir="$ladir" absdir="$abs_ladir" libdir="$abs_ladir" else dir="$libdir" absdir="$libdir" fi test "X$hardcode_automatic" = Xyes && avoidtemprpath=yes else if test ! -f "$ladir/$objdir/$linklib" && test -f "$abs_ladir/$linklib"; then dir="$ladir" absdir="$abs_ladir" # Remove this search path later notinst_path="$notinst_path $abs_ladir" else dir="$ladir/$objdir" absdir="$abs_ladir/$objdir" # Remove this search path later notinst_path="$notinst_path $abs_ladir" fi fi # $installed = yes name=`$echo "X$laname" | $Xsed -e 's/\.la$//' -e 's/^lib//'` # This library was specified with -dlpreopen. if test "$pass" = dlpreopen; then if test -z "$libdir"; then $echo "$modename: cannot -dlpreopen a convenience library: \`$lib'" 1>&2 exit $EXIT_FAILURE fi # Prefer using a static library (so that no silly _DYNAMIC symbols # are required to link). if test -n "$old_library"; then newdlprefiles="$newdlprefiles $dir/$old_library" # Otherwise, use the dlname, so that lt_dlopen finds it. elif test -n "$dlname"; then newdlprefiles="$newdlprefiles $dir/$dlname" else newdlprefiles="$newdlprefiles $dir/$linklib" fi fi # $pass = dlpreopen if test -z "$libdir"; then # Link the convenience library if test "$linkmode" = lib; then deplibs="$dir/$old_library $deplibs" elif test "$linkmode,$pass" = "prog,link"; then compile_deplibs="$dir/$old_library $compile_deplibs" finalize_deplibs="$dir/$old_library $finalize_deplibs" else deplibs="$lib $deplibs" # used for prog,scan pass fi continue fi if test "$linkmode" = prog && test "$pass" != link; then newlib_search_path="$newlib_search_path $ladir" deplibs="$lib $deplibs" linkalldeplibs=no if test "$link_all_deplibs" != no || test -z "$library_names" || test "$build_libtool_libs" = no; then linkalldeplibs=yes fi tmp_libs= for deplib in $dependency_libs; do case $deplib in -L*) newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'`;; ### testsuite: skip nested quoting test esac # Need to link against all dependency_libs? if test "$linkalldeplibs" = yes; then deplibs="$deplib $deplibs" else # Need to hardcode shared library paths # or/and link against static libraries newdependency_libs="$deplib $newdependency_libs" fi if test "X$duplicate_deps" = "Xyes" ; then case "$tmp_libs " in *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;; esac fi tmp_libs="$tmp_libs $deplib" done # for deplib continue fi # $linkmode = prog... if test "$linkmode,$pass" = "prog,link"; then if test -n "$library_names" && { test "$prefer_static_libs" = no || test -z "$old_library"; }; then # We need to hardcode the library path if test -n "$shlibpath_var" && test -z "$avoidtemprpath" ; then # Make sure the rpath contains only unique directories. case "$temp_rpath " in *" $dir "*) ;; *" $absdir "*) ;; *) temp_rpath="$temp_rpath $absdir" ;; esac fi # Hardcode the library path. # Skip directories that are in the system default run-time # search path. case " $sys_lib_dlsearch_path " in *" $absdir "*) ;; *) case "$compile_rpath " in *" $absdir "*) ;; *) compile_rpath="$compile_rpath $absdir" esac ;; esac case " $sys_lib_dlsearch_path " in *" $libdir "*) ;; *) case "$finalize_rpath " in *" $libdir "*) ;; *) finalize_rpath="$finalize_rpath $libdir" esac ;; esac fi # $linkmode,$pass = prog,link... if test "$alldeplibs" = yes && { test "$deplibs_check_method" = pass_all || { test "$build_libtool_libs" = yes && test -n "$library_names"; }; }; then # We only need to search for static libraries continue fi fi link_static=no # Whether the deplib will be linked statically use_static_libs=$prefer_static_libs if test "$use_static_libs" = built && test "$installed" = yes ; then use_static_libs=no fi if test -n "$library_names" && { test "$use_static_libs" = no || test -z "$old_library"; }; then if test "$installed" = no; then notinst_deplibs="$notinst_deplibs $lib" need_relink=yes fi # This is a shared library # Warn about portability, can't link against -module's on # some systems (darwin) if test "$shouldnotlink" = yes && test "$pass" = link ; then $echo if test "$linkmode" = prog; then $echo "*** Warning: Linking the executable $output against the loadable module" else $echo "*** Warning: Linking the shared library $output against the loadable module" fi $echo "*** $linklib is not portable!" fi if test "$linkmode" = lib && test "$hardcode_into_libs" = yes; then # Hardcode the library path. # Skip directories that are in the system default run-time # search path. case " $sys_lib_dlsearch_path " in *" $absdir "*) ;; *) case "$compile_rpath " in *" $absdir "*) ;; *) compile_rpath="$compile_rpath $absdir" esac ;; esac case " $sys_lib_dlsearch_path " in *" $libdir "*) ;; *) case "$finalize_rpath " in *" $libdir "*) ;; *) finalize_rpath="$finalize_rpath $libdir" esac ;; esac fi if test -n "$old_archive_from_expsyms_cmds"; then # figure out the soname set dummy $library_names realname="$2" shift; shift libname=`eval \\$echo \"$libname_spec\"` # use dlname if we got it. it's perfectly good, no? if test -n "$dlname"; then soname="$dlname" elif test -n "$soname_spec"; then # bleh windows case $host in *cygwin* | mingw*) major=`expr $current - $age` versuffix="-$major" ;; esac eval soname=\"$soname_spec\" else soname="$realname" fi # Make a new name for the extract_expsyms_cmds to use soroot="$soname" soname=`$echo $soroot | ${SED} -e 's/^.*\///'` newlib="libimp-`$echo $soname | ${SED} 's/^lib//;s/\.dll$//'`.a" # If the library has no export list, then create one now if test -f "$output_objdir/$soname-def"; then : else $show "extracting exported symbol list from \`$soname'" save_ifs="$IFS"; IFS='~' cmds=$extract_expsyms_cmds for cmd in $cmds; do IFS="$save_ifs" eval cmd=\"$cmd\" $show "$cmd" $run eval "$cmd" || exit $? done IFS="$save_ifs" fi # Create $newlib if test -f "$output_objdir/$newlib"; then :; else $show "generating import library for \`$soname'" save_ifs="$IFS"; IFS='~' cmds=$old_archive_from_expsyms_cmds for cmd in $cmds; do IFS="$save_ifs" eval cmd=\"$cmd\" $show "$cmd" $run eval "$cmd" || exit $? done IFS="$save_ifs" fi # make sure the library variables are pointing to the new library dir=$output_objdir linklib=$newlib fi # test -n "$old_archive_from_expsyms_cmds" if test "$linkmode" = prog || test "$mode" != relink; then add_shlibpath= add_dir= add= lib_linked=yes case $hardcode_action in immediate | unsupported) if test "$hardcode_direct" = no; then add="$dir/$linklib" case $host in *-*-sco3.2v5.0.[024]*) add_dir="-L$dir" ;; *-*-sysv4*uw2*) add_dir="-L$dir" ;; *-*-sysv5OpenUNIX* | *-*-sysv5UnixWare7.[01].[10]* | \ *-*-unixware7*) add_dir="-L$dir" ;; *-*-darwin* ) # if the lib is a module then we can not link against # it, someone is ignoring the new warnings I added if /usr/bin/file -L $add 2> /dev/null | $EGREP ": [^:]* bundle" >/dev/null ; then $echo "** Warning, lib $linklib is a module, not a shared library" if test -z "$old_library" ; then $echo $echo "** And there doesn't seem to be a static archive available" $echo "** The link will probably fail, sorry" else add="$dir/$old_library" fi fi esac elif test "$hardcode_minus_L" = no; then case $host in *-*-sunos*) add_shlibpath="$dir" ;; esac add_dir="-L$dir" add="-l$name" elif test "$hardcode_shlibpath_var" = no; then add_shlibpath="$dir" add="-l$name" else lib_linked=no fi ;; relink) if test "$hardcode_direct" = yes; then add="$dir/$linklib" elif test "$hardcode_minus_L" = yes; then add_dir="-L$dir" # Try looking first in the location we're being installed to. if test -n "$inst_prefix_dir"; then case $libdir in [\\/]*) add_dir="$add_dir -L$inst_prefix_dir$libdir" ;; esac fi add="-l$name" elif test "$hardcode_shlibpath_var" = yes; then add_shlibpath="$dir" add="-l$name" else lib_linked=no fi ;; *) lib_linked=no ;; esac if test "$lib_linked" != yes; then $echo "$modename: configuration error: unsupported hardcode properties" exit $EXIT_FAILURE fi if test -n "$add_shlibpath"; then case :$compile_shlibpath: in *":$add_shlibpath:"*) ;; *) compile_shlibpath="$compile_shlibpath$add_shlibpath:" ;; esac fi if test "$linkmode" = prog; then test -n "$add_dir" && compile_deplibs="$add_dir $compile_deplibs" test -n "$add" && compile_deplibs="$add $compile_deplibs" else test -n "$add_dir" && deplibs="$add_dir $deplibs" test -n "$add" && deplibs="$add $deplibs" if test "$hardcode_direct" != yes && \ test "$hardcode_minus_L" != yes && \ test "$hardcode_shlibpath_var" = yes; then case :$finalize_shlibpath: in *":$libdir:"*) ;; *) finalize_shlibpath="$finalize_shlibpath$libdir:" ;; esac fi fi fi if test "$linkmode" = prog || test "$mode" = relink; then add_shlibpath= add_dir= add= # Finalize command for both is simple: just hardcode it. if test "$hardcode_direct" = yes; then add="$libdir/$linklib" elif test "$hardcode_minus_L" = yes; then add_dir="-L$libdir" add="-l$name" elif test "$hardcode_shlibpath_var" = yes; then case :$finalize_shlibpath: in *":$libdir:"*) ;; *) finalize_shlibpath="$finalize_shlibpath$libdir:" ;; esac add="-l$name" elif test "$hardcode_automatic" = yes; then if test -n "$inst_prefix_dir" && test -f "$inst_prefix_dir$libdir/$linklib" ; then add="$inst_prefix_dir$libdir/$linklib" else add="$libdir/$linklib" fi else # We cannot seem to hardcode it, guess we'll fake it. add_dir="-L$libdir" # Try looking first in the location we're being installed to. if test -n "$inst_prefix_dir"; then case $libdir in [\\/]*) add_dir="$add_dir -L$inst_prefix_dir$libdir" ;; esac fi add="-l$name" fi if test "$linkmode" = prog; then test -n "$add_dir" && finalize_deplibs="$add_dir $finalize_deplibs" test -n "$add" && finalize_deplibs="$add $finalize_deplibs" else test -n "$add_dir" && deplibs="$add_dir $deplibs" test -n "$add" && deplibs="$add $deplibs" fi fi elif test "$linkmode" = prog; then # Here we assume that one of hardcode_direct or hardcode_minus_L # is not unsupported. This is valid on all known static and # shared platforms. if test "$hardcode_direct" != unsupported; then test -n "$old_library" && linklib="$old_library" compile_deplibs="$dir/$linklib $compile_deplibs" finalize_deplibs="$dir/$linklib $finalize_deplibs" else compile_deplibs="-l$name -L$dir $compile_deplibs" finalize_deplibs="-l$name -L$dir $finalize_deplibs" fi elif test "$build_libtool_libs" = yes; then # Not a shared library if test "$deplibs_check_method" != pass_all; then # We're trying link a shared library against a static one # but the system doesn't support it. ---tokens--- '# ltmain.sh - Provide generalized library-building support services.\n' Comment.Single '# NOTE: Changing this file will not affect anything until you rerun configure.\n' Comment.Single '#\n' Comment.Single '# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005\n' Comment.Single '# Free Software Foundation, Inc.\n' Comment.Single '# Originally by Gordon Matzigkeit , 1996\n' Comment.Single '#\n' Comment.Single '# This program is free software; you can redistribute it and/or modify\n' Comment.Single '# it under the terms of the GNU General Public License as published by\n' Comment.Single '# the Free Software Foundation; either version 2 of the License, or\n' Comment.Single '# (at your option) any later version.\n' Comment.Single '#\n' Comment.Single '# This program is distributed in the hope that it will be useful, but\n' Comment.Single '# WITHOUT ANY WARRANTY; without even the implied warranty of\n' Comment.Single '# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU\n' Comment.Single '# General Public License for more details.\n' Comment.Single '#\n' Comment.Single '# You should have received a copy of the GNU General Public License\n' Comment.Single '# along with this program; if not, write to the Free Software\n' Comment.Single '# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.\n' Comment.Single '#\n' Comment.Single '# As a special exception to the GNU General Public License, if you\n' Comment.Single '# distribute this file as part of a program that contains a\n' Comment.Single '# configuration script generated by Autoconf, you may include it under\n' Comment.Single '# the same distribution terms that you use for the rest of that program.\n' Comment.Single '\n' Text 'basename' Name.Variable '=' Operator '"s,^.*/,,g"' Literal.String.Double '\n\n' Text '# Work around backward compatibility issue on IRIX 6.5. On IRIX 6.4+, sh\n' Comment.Single '# is ksh but when the shell is invoked as "sh" and the current value of\n' Comment.Single '# the _XPG environment variable is not equal to 1 (one), the special\n' Comment.Single '# positional parameter $0, within a function call, is the name of the\n' Comment.Single '# function.\n' Comment.Single 'progpath' Name.Variable '=' Operator '"' Literal.String.Double '$0' Name.Variable '"' Literal.String.Double '\n\n' Text "# define SED for historic ltconfig's generated by Libtool 1.3\n" Comment.Single 'test' Name.Builtin ' ' Text '-z' Text ' ' Text '"' Literal.String.Double '$SED' Name.Variable '"' Literal.String.Double ' ' Text '&&' Operator ' ' Text 'SED' Name.Variable '=' Operator 'sed' Text '\n\n' Text '# The name of this program:\n' Comment.Single 'progname' Name.Variable '=' Operator '`' Literal.String.Backtick 'echo' Name.Builtin ' ' Text '"' Literal.String.Double '$progpath' Name.Variable '"' Literal.String.Double ' ' Text '|' Punctuation ' ' Text '$SED' Name.Variable ' ' Text '$basename' Name.Variable '`' Literal.String.Backtick '\n' Text 'modename' Name.Variable '=' Operator '"' Literal.String.Double '$progname' Name.Variable '"' Literal.String.Double '\n\n' Text '# Global variables:\n' Comment.Single 'EXIT_SUCCESS' Name.Variable '=' Operator '0' Literal.Number '\n' Text 'EXIT_FAILURE' Name.Variable '=' Operator '1' Literal.Number '\n\n' Text 'PROGRAM' Name.Variable '=' Operator 'ltmain.sh' Text '\n' Text 'PACKAGE' Name.Variable '=' Operator 'libtool' Text '\n' Text 'VERSION' Name.Variable '=' Operator '1' Literal.Number '.5.22' Text '\n' Text 'TIMESTAMP' Name.Variable '=' Operator '" (1.1220.2.365 2005/12/18 22:14:06)"' Literal.String.Double '\n\n' Text '# See if we are running on zsh, and set the options which allow our\n' Comment.Single '# commands through without removal of \\ escapes.\n' Comment.Single 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '-n' Text ' ' Text '"' Literal.String.Double '${' Literal.String.Interpol 'ZSH_VERSION' Name.Variable '+set' Punctuation '}' Literal.String.Interpol '"' Literal.String.Double ' ' Text ';' Punctuation ' ' Text 'then' Keyword '\n ' Text 'setopt' Text ' ' Text 'NO_GLOB_SUBST' Text '\n' Text 'fi' Keyword '\n' Text '# Same for EGREP, and just to be sure, do LTCC as well\n' Comment.Single 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$EGREP' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'X' Text ' ' Text ';' Punctuation ' ' Text 'then' Keyword '\n ' Text 'EGREP' Name.Variable '=' Operator 'egrep' Text '\n' Text 'fi' Keyword '\n' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$LTCC' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'X' Text ' ' Text ';' Punctuation ' ' Text 'then' Keyword '\n ' Text 'LTCC' Name.Variable '=' Operator '${' Literal.String.Interpol 'CC' Name.Variable '-gcc' Punctuation '}' Literal.String.Interpol '\n' Text 'fi' Keyword '\n\n' Text '# Check that we have a working $echo.\n' Comment.Single 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$1' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'X--no-reexec' Text ';' Punctuation ' ' Text 'then' Keyword '\n ' Text '# Discard the --no-reexec flag, and continue.\n' Comment.Single ' ' Text 'shift' Name.Builtin '\n' Text 'elif' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$1' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'X--fallback-echo' Text ';' Punctuation ' ' Text 'then' Keyword '\n ' Text '# Avoid inline document here, it may be left over\n' Comment.Single ' ' Text ':' Text '\n' Text 'elif' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double 'X`(' Literal.String.Double '$echo' Name.Variable " '\\t') 2>/dev/null`" Literal.String.Double '"' Literal.String.Double ' ' Text '=' Operator ' ' Text "'X\\t'" Literal.String.Single ';' Punctuation ' ' Text 'then' Keyword '\n ' Text '# Yippee, $echo works!\n' Comment.Single ' ' Text ':' Text '\n' Text 'else' Keyword '\n ' Text '# Restart under the correct shell, and then maybe $echo will work.\n' Comment.Single ' ' Text 'exec' Name.Builtin ' ' Text '$SHELL' Name.Variable ' ' Text '"' Literal.String.Double '$progpath' Name.Variable '"' Literal.String.Double ' ' Text '--no-reexec' Text ' ' Text '${' Literal.String.Interpol '1' Name.Variable '+' Punctuation '"' Literal.String.Double '$@' Name.Variable '"' Literal.String.Double '}' Literal.String.Interpol '\n' Text 'fi' Keyword '\n\n' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$1' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'X--fallback-echo' Text ';' Punctuation ' ' Text 'then' Keyword '\n ' Text '# used as fallback echo\n' Comment.Single ' ' Text 'shift' Name.Builtin '\n ' Text 'cat' Text ' ' Text '<' Text '&' Punctuation '2' Literal.Number '\n ' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double 'Fatal configuration error. See the ' Literal.String.Double '$PACKAGE' Name.Variable ' docs for more information.' Literal.String.Double '"' Literal.String.Double ' ' Text '1' Literal.Number '>' Text '&' Punctuation '2' Literal.Number '\n ' Text 'exit' Name.Builtin ' ' Text '$EXIT_FAILURE' Name.Variable '\n' Text 'fi' Keyword '\n\n' Text '# Global variables.\n' Comment.Single 'mode' Name.Variable '=' Operator '$default_mode' Name.Variable '\n' Text 'nonopt' Name.Variable '=' Operator '\n' Text 'prev' Name.Variable '=' Operator '\n' Text 'prevopt' Name.Variable '=' Operator '\n' Text 'run' Name.Variable '=' Operator '\n' Text 'show' Name.Variable '=' Operator '"' Literal.String.Double '$echo' Name.Variable '"' Literal.String.Double '\n' Text 'show_help' Name.Variable '=' Operator '\n' Text 'execute_dlfiles' Name.Variable '=' Operator '\n' Text 'duplicate_deps' Name.Variable '=' Operator 'no' Text '\n' Text 'preserve_args' Name.Variable '=' Operator '\n' Text 'lo2o' Name.Variable '=' Operator '"' Literal.String.Double 's/\\\\.lo\\$/.' Literal.String.Double '${' Literal.String.Interpol 'objext' Name.Variable '}' Literal.String.Interpol '/' Literal.String.Double '"' Literal.String.Double '\n' Text 'o2lo' Name.Variable '=' Operator '"' Literal.String.Double 's/\\\\.' Literal.String.Double '${' Literal.String.Interpol 'objext' Name.Variable '}' Literal.String.Interpol '\\$/.lo/' Literal.String.Double '"' Literal.String.Double '\n\n' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '-z' Text ' ' Text '"' Literal.String.Double '$max_cmd_len' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n ' Text 'i' Name.Variable '=' Operator '0' Literal.Number '\n ' Text 'testring' Name.Variable '=' Operator '"ABCD"' Literal.String.Double '\n ' Text 'new_result' Name.Variable '=' Operator '\n \n ' Text "# If test is not a shell built-in, we'll probably end up computing a\n" Comment.Single ' ' Text '# maximum length that is only half of the actual maximum length, but\n' Comment.Single ' ' Text "# we can't tell.\n" Comment.Single ' ' Text 'while' Keyword ' ' Text '(' Operator 'test' Name.Builtin ' ' Text '"X"' Literal.String.Double '`' Literal.String.Backtick '$SHELL' Name.Variable ' ' Text '$0' Name.Variable ' ' Text '--fallback-echo' Text ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$testring' Name.Variable '"' Literal.String.Double ' ' Text '2' Literal.Number '>/dev/null' Text '`' Literal.String.Backtick ' ' Text '\\\n' Literal.String.Escape ' ' Text '=' Operator ' ' Text '"' Literal.String.Double 'XX' Literal.String.Double '$testring' Name.Variable '"' Literal.String.Double ')' Operator ' ' Text '>/dev/null' Text ' ' Text '2' Literal.Number '>' Text '&' Punctuation '1' Literal.Number ' ' Text '&&' Operator '\n ' Text 'new_result' Name.Variable '=' Operator '`' Literal.String.Backtick 'expr' Text ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$testring' Name.Variable '"' Literal.String.Double ' ' Text ':' Text ' ' Text '".*"' Literal.String.Double ' ' Text '2' Literal.Number '>' Text '&' Punctuation '1' Literal.Number '`' Literal.String.Backtick ' ' Text '&&' Operator '\n ' Text 'max_cmd_len' Name.Variable '=' Operator '"' Literal.String.Double '$new_result' Name.Variable '"' Literal.String.Double ' ' Text '&&' Operator '\n ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$i' Name.Variable '"' Literal.String.Double ' ' Text '!' Text '=' Operator ' ' Text '17' Literal.Number ' ' Text '# 1/2 MB should be enough\n' Comment.Single ' ' Text 'do' Keyword '\n ' Text 'i' Name.Variable '=' Operator '`' Literal.String.Backtick 'expr' Text ' ' Text '$i' Name.Variable ' ' Text '+' Text ' ' Text '1' Literal.Number '`' Literal.String.Backtick '\n ' Text 'testring' Name.Variable '=' Operator '"' Literal.String.Double '$testring' Name.Variable '$testring' Name.Variable '"' Literal.String.Double '\n ' Text 'done' Keyword '\n ' Text 'testring' Name.Variable '=' Operator '\n ' Text '# Add a significant safety factor because C++ compilers can tack on massive\n' Comment.Single ' ' Text '# amounts of additional arguments before passing them to the linker.\n' Comment.Single ' ' Text '# It appears as though 1/2 is a usable value.\n' Comment.Single ' ' Text 'max_cmd_len' Name.Variable '=' Operator '`' Literal.String.Backtick 'expr' Text ' ' Text '$max_cmd_len' Name.Variable ' ' Text '\\/' Literal.String.Escape ' ' Text '2' Literal.Number '`' Literal.String.Backtick '\n' Text 'fi' Keyword '\n\n' Text '#####################################\n' Comment.Single '# Shell function definitions:\n' Comment.Single '# This seems to be the best place for them\n' Comment.Single '\n' Text '# func_mktempdir [string]\n' Comment.Single "# Make a temporary directory that won't clash with other running\n" Comment.Single '# libtool processes, and avoids race conditions if possible. If\n' Comment.Single '# given, STRING is the basename for that directory.\n' Comment.Single 'func_mktempdir' Text ' ' Text '(' Operator ')' Operator '\n' Text '{' Operator '\n ' Text 'my_template' Name.Variable '=' Operator '"' Literal.String.Double '${' Literal.String.Interpol 'TMPDIR' Name.Variable '-/tmp' Punctuation '}' Literal.String.Interpol '/' Literal.String.Double '${' Literal.String.Interpol '1' Name.Variable '-' Punctuation '$progname' Name.Variable '}' Literal.String.Interpol '"' Literal.String.Double '\n\n ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$run' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text '":"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n ' Text "# Return a directory name, but don't create it in dry-run mode\n" Comment.Single ' ' Text 'my_tmpdir' Name.Variable '=' Operator '"' Literal.String.Double '${' Literal.String.Interpol 'my_template' Name.Variable '}' Literal.String.Interpol '-' Literal.String.Double '$$' Name.Variable '"' Literal.String.Double '\n ' Text 'else' Keyword '\n\n ' Text '# If mktemp works, use that first and foremost\n' Comment.Single ' ' Text 'my_tmpdir' Name.Variable '=' Operator '`' Literal.String.Backtick 'mktemp' Text ' ' Text '-d' Text ' ' Text '"' Literal.String.Double '${' Literal.String.Interpol 'my_template' Name.Variable '}' Literal.String.Interpol '-XXXXXXXX' Literal.String.Double '"' Literal.String.Double ' ' Text '2' Literal.Number '>/dev/null' Text '`' Literal.String.Backtick '\n\n ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '!' Text ' ' Text '-d' Text ' ' Text '"' Literal.String.Double '$my_tmpdir' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n\t' Text '# Failing that, at least try and use $RANDOM to avoid a race\n' Comment.Single '\t' Text 'my_tmpdir' Name.Variable '=' Operator '"' Literal.String.Double '${' Literal.String.Interpol 'my_template' Name.Variable '}' Literal.String.Interpol '-' Literal.String.Double '${' Literal.String.Interpol 'RANDOM' Name.Variable '-0' Punctuation '}' Literal.String.Interpol '$$' Name.Variable '"' Literal.String.Double '\n\n\t' Text 'save_mktempdir_umask' Name.Variable '=' Operator '`' Literal.String.Backtick 'umask' Name.Builtin '`' Literal.String.Backtick '\n\t' Text 'umask' Name.Builtin ' ' Text '0077' Literal.Number '\n\t' Text '$mkdir' Name.Variable ' ' Text '"' Literal.String.Double '$my_tmpdir' Name.Variable '"' Literal.String.Double '\n\t' Text 'umask' Name.Builtin ' ' Text '$save_mktempdir_umask' Name.Variable '\n ' Text 'fi' Keyword '\n\n ' Text "# If we're not in dry-run mode, bomb out on failure\n" Comment.Single ' ' Text 'test' Name.Builtin ' ' Text '-d' Text ' ' Text '"' Literal.String.Double '$my_tmpdir' Name.Variable '"' Literal.String.Double ' ' Text '||' Operator ' ' Text '{' Operator '\n ' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double 'cannot create temporary directory \\`' Literal.String.Double '$my_tmpdir' Name.Variable "'" Literal.String.Double '"' Literal.String.Double ' ' Text '1' Literal.Number '>' Text '&' Punctuation '2' Literal.Number '\n\t' Text 'exit' Name.Builtin ' ' Text '$EXIT_FAILURE' Name.Variable '\n ' Text '}' Operator '\n ' Text 'fi' Keyword '\n\n ' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$my_tmpdir' Name.Variable '"' Literal.String.Double ' ' Text '|' Punctuation ' ' Text '$Xsed' Name.Variable '\n' Text '}' Operator '\n\n\n' Text '# func_win32_libid arg\n' Comment.Single "# return the library type of file 'arg'\n" Comment.Single '#\n' Comment.Single '# Need a lot of goo to handle *both* DLLs and import libs\n' Comment.Single "# Has to be a shell function in order to 'eat' the argument\n" Comment.Single '# that is supplied when $file_magic_command is called.\n' Comment.Single 'func_win32_libid' Text ' ' Text '(' Operator ')' Operator '\n' Text '{' Operator '\n ' Text 'win32_libid_type' Name.Variable '=' Operator '"unknown"' Literal.String.Double '\n ' Text 'win32_fileres' Name.Variable '=' Operator '`' Literal.String.Backtick 'file' Text ' ' Text '-L' Text ' ' Text '$1' Name.Variable ' ' Text '2' Literal.Number '>/dev/null' Text '`' Literal.String.Backtick '\n ' Text 'case' Keyword ' ' Text '$win32_fileres' Name.Variable ' ' Text 'in' Keyword '\n ' Text '*ar' Text '\\ ' Literal.String.Escape 'archive' Text '\\ ' Literal.String.Escape 'import' Text '\\ ' Literal.String.Escape 'library*' Text ')' Operator ' ' Text '# definitely import\n' Comment.Single ' ' Text 'win32_libid_type' Name.Variable '=' Operator '"x86 archive import"' Literal.String.Double '\n ' Text ';' Punctuation ';' Punctuation '\n ' Text '*ar' Text '\\ ' Literal.String.Escape 'archive*' Text ')' Operator ' ' Text '# could be an import, or static\n' Comment.Single ' ' Text 'if' Keyword ' ' Text 'eval' Name.Builtin ' ' Text '$OBJDUMP' Name.Variable ' ' Text '-f' Text ' ' Text '$1' Name.Variable ' ' Text '|' Punctuation ' ' Text '$SED' Name.Variable ' ' Text '-e' Text ' ' Text "'10q'" Literal.String.Single ' ' Text '2' Literal.Number '>/dev/null' Text ' ' Text '|' Punctuation ' ' Text '\\\n' Literal.String.Escape ' ' Text '$EGREP' Name.Variable ' ' Text '-e' Text ' ' Text "'file format pe-i386(.*architecture: i386)?'" Literal.String.Single ' ' Text '>/dev/null' Text ' ' Text ';' Punctuation ' ' Text 'then' Keyword '\n ' Text 'win32_nmres' Name.Variable '=' Operator '`' Literal.String.Backtick 'eval' Name.Builtin ' ' Text '$NM' Name.Variable ' ' Text '-f' Text ' ' Text 'posix' Text ' ' Text '-A' Text ' ' Text '$1' Name.Variable ' ' Text '|' Punctuation ' ' Text '\\\n' Literal.String.Escape '\t' Text '$SED' Name.Variable ' ' Text '-n' Text ' ' Text '-e' Text ' ' Text "'1,100{/ I /{s,.*,import,;p;q;};}'" Literal.String.Single '`' Literal.String.Backtick '\n ' Text 'case' Keyword ' ' Text '$win32_nmres' Name.Variable ' ' Text 'in' Keyword '\n ' Text 'import*' Text ')' Operator ' ' Text 'win32_libid_type' Name.Variable '=' Operator '"x86 archive import"' Literal.String.Double ';' Punctuation ';' Punctuation '\n ' Text '*' Text ')' Operator ' ' Text 'win32_libid_type' Name.Variable '=' Operator '"x86 archive static"' Literal.String.Double ';' Punctuation ';' Punctuation '\n ' Text 'esac' Keyword '\n ' Text 'fi' Keyword '\n ' Text ';' Punctuation ';' Punctuation '\n ' Text '*DLL*' Text ')' Operator '\n ' Text 'win32_libid_type' Name.Variable '=' Operator '"x86 DLL"' Literal.String.Double '\n ' Text ';' Punctuation ';' Punctuation '\n ' Text '*executable*' Text ')' Operator ' ' Text '# but shell scripts are "executable" too...\n' Comment.Single ' ' Text 'case' Keyword ' ' Text '$win32_fileres' Name.Variable ' ' Text 'in' Keyword '\n ' Text '*MS' Text '\\ ' Literal.String.Escape 'Windows' Text '\\ ' Literal.String.Escape 'PE' Text '\\ ' Literal.String.Escape 'Intel*' Text ')' Operator '\n ' Text 'win32_libid_type' Name.Variable '=' Operator '"x86 DLL"' Literal.String.Double '\n ' Text ';' Punctuation ';' Punctuation '\n ' Text 'esac' Keyword '\n ' Text ';' Punctuation ';' Punctuation '\n ' Text 'esac' Keyword '\n ' Text '$echo' Name.Variable ' ' Text '$win32_libid_type' Name.Variable '\n' Text '}' Operator '\n\n\n' Text '# func_infer_tag arg\n' Comment.Single '# Infer tagged configuration to use if any are available and\n' Comment.Single '# if one wasn\'t chosen via the "--tag" command line option.\n' Comment.Single '# Only attempt this if the compiler in the base compile\n' Comment.Single "# command doesn't match the default compiler.\n" Comment.Single "# arg is usually of the form 'gcc ...'\n" Comment.Single 'func_infer_tag' Text ' ' Text '(' Operator ')' Operator '\n' Text '{' Operator '\n ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '-n' Text ' ' Text '"' Literal.String.Double '$available_tags' Name.Variable '"' Literal.String.Double ' ' Text '&&' Operator ' ' Text 'test' Name.Builtin ' ' Text '-z' Text ' ' Text '"' Literal.String.Double '$tagname' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n ' Text 'CC_quoted' Name.Variable '=' Operator '\n ' Text 'for' Keyword ' ' Text 'arg' Text ' ' Text 'in' Keyword ' ' Text '$CC' Name.Variable ';' Punctuation ' ' Text 'do' Keyword '\n\t' Text 'case' Keyword ' ' Text '$arg' Name.Variable ' ' Text 'in' Keyword '\n\t ' Text '*' Text '[' Operator '\\[' Literal.String.Escape '\\~' Literal.String.Escape '\\#' Literal.String.Escape '\\^' Literal.String.Escape '\\&' Literal.String.Escape '\\*' Literal.String.Escape '\\(' Literal.String.Escape '\\)' Literal.String.Escape '\\{' Literal.String.Escape '\\}' Literal.String.Escape '\\|' Literal.String.Escape '\\;' Literal.String.Escape '\\<' Literal.String.Escape '\\>' Literal.String.Escape '\\?' Literal.String.Escape "\\'" Literal.String.Escape '\\ ' Literal.String.Escape '\\\t' Literal.String.Escape ']' Operator '*' Text '|' Punctuation '*' Text ']' Operator '*' Text '|' Punctuation '""' Literal.String.Double ')' Operator '\n\t ' Text 'arg' Name.Variable '=' Operator '"' Literal.String.Double '\\"' Literal.String.Double '$arg' Name.Variable '\\"' Literal.String.Double '"' Literal.String.Double '\n\t ' Text ';' Punctuation ';' Punctuation '\n\t' Text 'esac' Keyword '\n\t' Text 'CC_quoted' Name.Variable '=' Operator '"' Literal.String.Double '$CC_quoted' Name.Variable ' ' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double '\n ' Text 'done' Keyword '\n ' Text 'case' Keyword ' ' Text '$@' Name.Variable ' ' Text 'in' Keyword '\n ' Text '# Blanks in the command may have been stripped by the calling shell,\n' Comment.Single ' ' Text '# but not from the CC environment variable when configure was run.\n' Comment.Single ' ' Text '"' Literal.String.Double ' ' Literal.String.Double '$CC' Name.Variable ' ' Literal.String.Double '"' Literal.String.Double '*' Text ' ' Text '|' Punctuation ' ' Text '"' Literal.String.Double '$CC' Name.Variable ' ' Literal.String.Double '"' Literal.String.Double '*' Text ' ' Text '|' Punctuation ' ' Text '"' Literal.String.Double ' `' Literal.String.Double '$echo' Name.Variable ' ' Literal.String.Double '$CC' Name.Variable '` ' Literal.String.Double '"' Literal.String.Double '*' Text ' ' Text '|' Punctuation ' ' Text '"' Literal.String.Double '`' Literal.String.Double '$echo' Name.Variable ' ' Literal.String.Double '$CC' Name.Variable '` ' Literal.String.Double '"' Literal.String.Double '*' Text ' ' Text '|' Punctuation ' ' Text '"' Literal.String.Double ' ' Literal.String.Double '$CC_quoted' Name.Variable '"' Literal.String.Double '*' Text ' ' Text '|' Punctuation ' ' Text '"' Literal.String.Double '$CC_quoted' Name.Variable ' ' Literal.String.Double '"' Literal.String.Double '*' Text ' ' Text '|' Punctuation ' ' Text '"' Literal.String.Double ' `' Literal.String.Double '$echo' Name.Variable ' ' Literal.String.Double '$CC_quoted' Name.Variable '` ' Literal.String.Double '"' Literal.String.Double '*' Text ' ' Text '|' Punctuation ' ' Text '"' Literal.String.Double '`' Literal.String.Double '$echo' Name.Variable ' ' Literal.String.Double '$CC_quoted' Name.Variable '` ' Literal.String.Double '"' Literal.String.Double '*' Text ')' Operator ' ' Text ';' Punctuation ';' Punctuation '\n ' Text '# Blanks at the start of $base_compile will cause this to fail\n' Comment.Single ' ' Text "# if we don't check for them as well.\n" Comment.Single ' ' Text '*' Text ')' Operator '\n\t' Text 'for' Keyword ' ' Text 'z' Text ' ' Text 'in' Keyword ' ' Text '$available_tags' Name.Variable ';' Punctuation ' ' Text 'do' Keyword '\n\t ' Text 'if' Keyword ' ' Text 'grep' Text ' ' Text '"' Literal.String.Double '^# ### BEGIN LIBTOOL TAG CONFIG: ' Literal.String.Double '$z' Name.Variable '$' Text '"' Literal.String.Double ' ' Text '<' Text ' ' Text '"' Literal.String.Double '$progpath' Name.Variable '"' Literal.String.Double ' ' Text '>' Text ' ' Text '/dev/null' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text '# Evaluate the configuration.\n' Comment.Single '\t ' Text 'eval' Name.Builtin ' ' Text '"' Literal.String.Double '`' Literal.String.Double '${' Literal.String.Interpol 'SED' Name.Variable '}' Literal.String.Interpol " -n -e '/^# ### BEGIN LIBTOOL TAG CONFIG: '" Literal.String.Double '$z' Name.Variable "'" Literal.String.Double '$' Text "/,/^# ### END LIBTOOL TAG CONFIG: '" Literal.String.Double '$z' Name.Variable "'" Literal.String.Double '$' Text "/p' < " Literal.String.Double '$progpath' Name.Variable '`' Literal.String.Double '"' Literal.String.Double '\n\t ' Text 'CC_quoted' Name.Variable '=' Operator '\n\t ' Text 'for' Keyword ' ' Text 'arg' Text ' ' Text 'in' Keyword ' ' Text '$CC' Name.Variable ';' Punctuation ' ' Text 'do' Keyword '\n\t ' Text '# Double-quote args containing other shell metacharacters.\n' Comment.Single '\t ' Text 'case' Keyword ' ' Text '$arg' Name.Variable ' ' Text 'in' Keyword '\n\t ' Text '*' Text '[' Operator '\\[' Literal.String.Escape '\\~' Literal.String.Escape '\\#' Literal.String.Escape '\\^' Literal.String.Escape '\\&' Literal.String.Escape '\\*' Literal.String.Escape '\\(' Literal.String.Escape '\\)' Literal.String.Escape '\\{' Literal.String.Escape '\\}' Literal.String.Escape '\\|' Literal.String.Escape '\\;' Literal.String.Escape '\\<' Literal.String.Escape '\\>' Literal.String.Escape '\\?' Literal.String.Escape "\\'" Literal.String.Escape '\\ ' Literal.String.Escape '\\\t' Literal.String.Escape ']' Operator '*' Text '|' Punctuation '*' Text ']' Operator '*' Text '|' Punctuation '""' Literal.String.Double ')' Operator '\n\t ' Text 'arg' Name.Variable '=' Operator '"' Literal.String.Double '\\"' Literal.String.Double '$arg' Name.Variable '\\"' Literal.String.Double '"' Literal.String.Double '\n\t ' Text ';' Punctuation ';' Punctuation '\n\t ' Text 'esac' Keyword '\n\t ' Text 'CC_quoted' Name.Variable '=' Operator '"' Literal.String.Double '$CC_quoted' Name.Variable ' ' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double '\n\t ' Text 'done' Keyword '\n\t ' Text "# user sometimes does CC=-gcc so we need to match that to 'gcc'\n" Comment.Single '\t ' Text 'trimedcc' Name.Variable '=' Operator '`' Literal.String.Backtick 'echo' Name.Builtin ' ' Text '${' Literal.String.Interpol 'CC' Name.Variable '}' Literal.String.Interpol ' ' Text '|' Punctuation ' ' Text '$SED' Name.Variable ' ' Text '-e' Text ' ' Text '"' Literal.String.Double 's/' Literal.String.Double '${' Literal.String.Interpol 'host' Name.Variable '}' Literal.String.Interpol '-//g' Literal.String.Double '"' Literal.String.Double '`' Literal.String.Backtick '\n\t ' Text '# and sometimes libtool has CC=-gcc but user does CC=gcc\n' Comment.Single '\t ' Text 'extendcc' Name.Variable '=' Operator '${' Literal.String.Interpol 'host' Name.Variable '}' Literal.String.Interpol '-' Text '${' Literal.String.Interpol 'CC' Name.Variable '}' Literal.String.Interpol '\n\t ' Text '# and sometimes libtool has CC=-gcc but user has CC=-gcc \n' Comment.Single '\t ' Text '# (Gentoo-specific hack because we always export $CHOST)\n' Comment.Single '\t ' Text 'mungedcc' Name.Variable '=' Operator '${' Literal.String.Interpol 'CHOST' Name.Variable '-' Punctuation '${' Literal.String.Interpol 'host' Name.Variable '}' Literal.String.Interpol '}' Literal.String.Interpol '-' Text '${' Literal.String.Interpol 'trimedcc' Name.Variable '}' Literal.String.Interpol '\n\t ' Text 'case' Keyword ' ' Text '"' Literal.String.Double '$@' Name.Variable ' ' Literal.String.Double '"' Literal.String.Double ' ' Text 'in' Keyword '\n\t ' Text '"cc "' Literal.String.Double '*' Text ' ' Text '|' Punctuation ' ' Text '" cc "' Literal.String.Double '*' Text ' ' Text '|' Punctuation ' ' Text '"' Literal.String.Double '${' Literal.String.Interpol 'host' Name.Variable '}' Literal.String.Interpol '-cc ' Literal.String.Double '"' Literal.String.Double '*' Text ' ' Text '|' Punctuation ' ' Text '"' Literal.String.Double ' ' Literal.String.Double '${' Literal.String.Interpol 'host' Name.Variable '}' Literal.String.Interpol '-cc ' Literal.String.Double '"' Literal.String.Double '*' Text '|' Punctuation '\\\n' Literal.String.Escape '\t ' Text '"gcc "' Literal.String.Double '*' Text ' ' Text '|' Punctuation ' ' Text '" gcc "' Literal.String.Double '*' Text ' ' Text '|' Punctuation ' ' Text '"' Literal.String.Double '${' Literal.String.Interpol 'host' Name.Variable '}' Literal.String.Interpol '-gcc ' Literal.String.Double '"' Literal.String.Double '*' Text ' ' Text '|' Punctuation ' ' Text '"' Literal.String.Double ' ' Literal.String.Double '${' Literal.String.Interpol 'host' Name.Variable '}' Literal.String.Interpol '-gcc ' Literal.String.Double '"' Literal.String.Double '*' Text ')' Operator '\n\t ' Text 'tagname' Name.Variable '=' Operator 'CC' Text '\n\t ' Text 'break' Name.Builtin ' ' Text ';' Punctuation ';' Punctuation '\n\t ' Text '"' Literal.String.Double '$trimedcc' Name.Variable ' ' Literal.String.Double '"' Literal.String.Double '*' Text ' ' Text '|' Punctuation ' ' Text '"' Literal.String.Double ' ' Literal.String.Double '$trimedcc' Name.Variable ' ' Literal.String.Double '"' Literal.String.Double '*' Text ' ' Text '|' Punctuation ' ' Text '"' Literal.String.Double '`' Literal.String.Double '$echo' Name.Variable ' ' Literal.String.Double '$trimedcc' Name.Variable '` ' Literal.String.Double '"' Literal.String.Double '*' Text ' ' Text '|' Punctuation ' ' Text '"' Literal.String.Double ' `' Literal.String.Double '$echo' Name.Variable ' ' Literal.String.Double '$trimedcc' Name.Variable '` ' Literal.String.Double '"' Literal.String.Double '*' Text '|' Punctuation '\\\n' Literal.String.Escape '\t ' Text '"' Literal.String.Double '$extendcc' Name.Variable ' ' Literal.String.Double '"' Literal.String.Double '*' Text ' ' Text '|' Punctuation ' ' Text '"' Literal.String.Double ' ' Literal.String.Double '$extendcc' Name.Variable ' ' Literal.String.Double '"' Literal.String.Double '*' Text ' ' Text '|' Punctuation ' ' Text '"' Literal.String.Double '`' Literal.String.Double '$echo' Name.Variable ' ' Literal.String.Double '$extendcc' Name.Variable '` ' Literal.String.Double '"' Literal.String.Double '*' Text ' ' Text '|' Punctuation ' ' Text '"' Literal.String.Double ' `' Literal.String.Double '$echo' Name.Variable ' ' Literal.String.Double '$extendcc' Name.Variable '` ' Literal.String.Double '"' Literal.String.Double '*' Text '|' Punctuation '\\\n' Literal.String.Escape '\t ' Text '"' Literal.String.Double '$mungedcc' Name.Variable ' ' Literal.String.Double '"' Literal.String.Double '*' Text ' ' Text '|' Punctuation ' ' Text '"' Literal.String.Double ' ' Literal.String.Double '$mungedcc' Name.Variable ' ' Literal.String.Double '"' Literal.String.Double '*' Text ' ' Text '|' Punctuation ' ' Text '"' Literal.String.Double '`' Literal.String.Double '$echo' Name.Variable ' ' Literal.String.Double '$mungedcc' Name.Variable '` ' Literal.String.Double '"' Literal.String.Double '*' Text ' ' Text '|' Punctuation ' ' Text '"' Literal.String.Double ' `' Literal.String.Double '$echo' Name.Variable ' ' Literal.String.Double '$mungedcc' Name.Variable '` ' Literal.String.Double '"' Literal.String.Double '*' Text '|' Punctuation '\\\n' Literal.String.Escape '\t ' Text '"' Literal.String.Double ' ' Literal.String.Double '$CC' Name.Variable ' ' Literal.String.Double '"' Literal.String.Double '*' Text ' ' Text '|' Punctuation ' ' Text '"' Literal.String.Double '$CC' Name.Variable ' ' Literal.String.Double '"' Literal.String.Double '*' Text ' ' Text '|' Punctuation ' ' Text '"' Literal.String.Double ' `' Literal.String.Double '$echo' Name.Variable ' ' Literal.String.Double '$CC' Name.Variable '` ' Literal.String.Double '"' Literal.String.Double '*' Text ' ' Text '|' Punctuation ' ' Text '"' Literal.String.Double '`' Literal.String.Double '$echo' Name.Variable ' ' Literal.String.Double '$CC' Name.Variable '` ' Literal.String.Double '"' Literal.String.Double '*' Text ' ' Text '|' Punctuation ' ' Text '"' Literal.String.Double ' ' Literal.String.Double '$CC_quoted' Name.Variable '"' Literal.String.Double '*' Text ' ' Text '|' Punctuation ' ' Text '"' Literal.String.Double '$CC_quoted' Name.Variable ' ' Literal.String.Double '"' Literal.String.Double '*' Text ' ' Text '|' Punctuation ' ' Text '"' Literal.String.Double ' `' Literal.String.Double '$echo' Name.Variable ' ' Literal.String.Double '$CC_quoted' Name.Variable '` ' Literal.String.Double '"' Literal.String.Double '*' Text ' ' Text '|' Punctuation ' ' Text '"' Literal.String.Double '`' Literal.String.Double '$echo' Name.Variable ' ' Literal.String.Double '$CC_quoted' Name.Variable '` ' Literal.String.Double '"' Literal.String.Double '*' Text ')' Operator '\n\t ' Text '# The compiler in the base compile command matches\n' Comment.Single '\t ' Text '# the one in the tagged configuration.\n' Comment.Single '\t ' Text '# Assume this is the tagged configuration we want.\n' Comment.Single '\t ' Text 'tagname' Name.Variable '=' Operator '$z' Name.Variable '\n\t ' Text 'break' Name.Builtin '\n\t ' Text ';' Punctuation ';' Punctuation '\n\t ' Text 'esac' Keyword '\n\t ' Text 'fi' Keyword '\n\t' Text 'done' Keyword '\n\t' Text "# If $tagname still isn't set, then no tagged configuration\n" Comment.Single '\t' Text '# was found and let the user know that the "--tag" command\n' Comment.Single '\t' Text '# line option must be used.\n' Comment.Single '\t' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '-z' Text ' ' Text '"' Literal.String.Double '$tagname' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double '$modename' Name.Variable ': unable to infer tagged configuration' Literal.String.Double '"' Literal.String.Double '\n\t ' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double '$modename' Name.Variable ": specify a tag with \\`--tag'" Literal.String.Double '"' Literal.String.Double ' ' Text '1' Literal.Number '>' Text '&' Punctuation '2' Literal.Number '\n\t ' Text 'exit' Name.Builtin ' ' Text '$EXIT_FAILURE' Name.Variable '\n' Text '# else\n' Comment.Single '# $echo "$modename: using $tagname tagged configuration"\n' Comment.Single '\t' Text 'fi' Keyword '\n\t' Text ';' Punctuation ';' Punctuation '\n ' Text 'esac' Keyword '\n ' Text 'fi' Keyword '\n' Text '}' Operator '\n\n\n' Text '# func_extract_an_archive dir oldlib\n' Comment.Single 'func_extract_an_archive' Text ' ' Text '(' Operator ')' Operator '\n' Text '{' Operator '\n ' Text 'f_ex_an_ar_dir' Name.Variable '=' Operator '"' Literal.String.Double '$1' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'shift' Name.Builtin '\n ' Text 'f_ex_an_ar_oldlib' Name.Variable '=' Operator '"' Literal.String.Double '$1' Name.Variable '"' Literal.String.Double '\n\n ' Text '$show' Name.Variable ' ' Text '"' Literal.String.Double '(cd ' Literal.String.Double '$f_ex_an_ar_dir' Name.Variable ' && ' Literal.String.Double '$AR' Name.Variable ' x ' Literal.String.Double '$f_ex_an_ar_oldlib' Name.Variable ')' Literal.String.Double '"' Literal.String.Double '\n ' Text '$run' Name.Variable ' ' Text 'eval' Name.Builtin ' ' Text '"' Literal.String.Double '(cd \\$f_ex_an_ar_dir && ' Literal.String.Double '$AR' Name.Variable ' x \\$f_ex_an_ar_oldlib)' Literal.String.Double '"' Literal.String.Double ' ' Text '||' Operator ' ' Text 'exit' Name.Builtin ' ' Text '$?' Name.Variable '\n ' Text 'if' Keyword ' ' Text '(' Operator '$AR' Name.Variable ' ' Text 't' Text ' ' Text '"' Literal.String.Double '$f_ex_an_ar_oldlib' Name.Variable '"' Literal.String.Double ' ' Text '|' Punctuation ' ' Text 'sort' Text ' ' Text '|' Punctuation ' ' Text 'sort' Text ' ' Text '-uc' Text ' ' Text '>/dev/null' Text ' ' Text '2' Literal.Number '>' Text '&' Punctuation '1' Literal.Number ')' Operator ';' Punctuation ' ' Text 'then' Keyword '\n ' Text ':' Text '\n ' Text 'else' Keyword '\n ' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double '$modename' Name.Variable ': ERROR: object name conflicts: ' Literal.String.Double '$f_ex_an_ar_dir' Name.Variable '/' Literal.String.Double '$f_ex_an_ar_oldlib' Name.Variable '"' Literal.String.Double ' ' Text '1' Literal.Number '>' Text '&' Punctuation '2' Literal.Number '\n ' Text 'exit' Name.Builtin ' ' Text '$EXIT_FAILURE' Name.Variable '\n ' Text 'fi' Keyword '\n' Text '}' Operator '\n\n' Text '# func_extract_archives gentop oldlib ...\n' Comment.Single 'func_extract_archives' Text ' ' Text '(' Operator ')' Operator '\n' Text '{' Operator '\n ' Text 'my_gentop' Name.Variable '=' Operator '"' Literal.String.Double '$1' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'shift' Name.Builtin '\n ' Text 'my_oldlibs' Name.Variable '=' Operator '${' Literal.String.Interpol '1' Name.Variable '+' Punctuation '"' Literal.String.Double '$@' Name.Variable '"' Literal.String.Double '}' Literal.String.Interpol '\n ' Text 'my_oldobjs' Name.Variable '=' Operator '""' Literal.String.Double '\n ' Text 'my_xlib' Name.Variable '=' Operator '""' Literal.String.Double '\n ' Text 'my_xabs' Name.Variable '=' Operator '""' Literal.String.Double '\n ' Text 'my_xdir' Name.Variable '=' Operator '""' Literal.String.Double '\n ' Text 'my_status' Name.Variable '=' Operator '""' Literal.String.Double '\n\n ' Text '$show' Name.Variable ' ' Text '"' Literal.String.Double '${' Literal.String.Interpol 'rm' Name.Variable '}' Literal.String.Interpol 'r ' Literal.String.Double '$my_gentop' Name.Variable '"' Literal.String.Double '\n ' Text '$run' Name.Variable ' ' Text '${' Literal.String.Interpol 'rm' Name.Variable '}' Literal.String.Interpol 'r' Text ' ' Text '"' Literal.String.Double '$my_gentop' Name.Variable '"' Literal.String.Double '\n ' Text '$show' Name.Variable ' ' Text '"' Literal.String.Double '$mkdir' Name.Variable ' ' Literal.String.Double '$my_gentop' Name.Variable '"' Literal.String.Double '\n ' Text '$run' Name.Variable ' ' Text '$mkdir' Name.Variable ' ' Text '"' Literal.String.Double '$my_gentop' Name.Variable '"' Literal.String.Double '\n ' Text 'my_status' Name.Variable '=' Operator '$?' Name.Variable '\n ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$my_status' Name.Variable '"' Literal.String.Double ' ' Text '-ne' Text ' ' Text '0' Literal.Number ' ' Text '&&' Operator ' ' Text 'test' Name.Builtin ' ' Text '!' Text ' ' Text '-d' Text ' ' Text '"' Literal.String.Double '$my_gentop' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n ' Text 'exit' Name.Builtin ' ' Text '$my_status' Name.Variable '\n ' Text 'fi' Keyword '\n\n ' Text 'for' Keyword ' ' Text 'my_xlib' Text ' ' Text 'in' Keyword ' ' Text '$my_oldlibs' Name.Variable ';' Punctuation ' ' Text 'do' Keyword '\n ' Text '# Extract the objects.\n' Comment.Single ' ' Text 'case' Keyword ' ' Text '$my_xlib' Name.Variable ' ' Text 'in' Keyword '\n\t' Text '[' Operator '\\\\' Literal.String.Escape '/' Text ']' Operator '*' Text ' ' Text '|' Punctuation ' ' Text '[' Operator 'A-Za-z' Text ']' Operator ':' Text '[' Operator '\\\\' Literal.String.Escape '/' Text ']' Operator '*' Text ')' Operator ' ' Text 'my_xabs' Name.Variable '=' Operator '"' Literal.String.Double '$my_xlib' Name.Variable '"' Literal.String.Double ' ' Text ';' Punctuation ';' Punctuation '\n\t' Text '*' Text ')' Operator ' ' Text 'my_xabs' Name.Variable '=' Operator '`' Literal.String.Backtick 'pwd' Name.Builtin '`' Literal.String.Backtick '"' Literal.String.Double '/' Literal.String.Double '$my_xlib' Name.Variable '"' Literal.String.Double ' ' Text ';' Punctuation ';' Punctuation '\n ' Text 'esac' Keyword '\n ' Text 'my_xlib' Name.Variable '=' Operator '`' Literal.String.Backtick '$echo' Name.Variable ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$my_xlib' Name.Variable '"' Literal.String.Double ' ' Text '|' Punctuation ' ' Text '$Xsed' Name.Variable ' ' Text '-e' Text ' ' Text "'s%^.*/%%'" Literal.String.Single '`' Literal.String.Backtick '\n ' Text 'my_xdir' Name.Variable '=' Operator '"' Literal.String.Double '$my_gentop' Name.Variable '/' Literal.String.Double '$my_xlib' Name.Variable '"' Literal.String.Double '\n\n ' Text '$show' Name.Variable ' ' Text '"' Literal.String.Double '${' Literal.String.Interpol 'rm' Name.Variable '}' Literal.String.Interpol 'r ' Literal.String.Double '$my_xdir' Name.Variable '"' Literal.String.Double '\n ' Text '$run' Name.Variable ' ' Text '${' Literal.String.Interpol 'rm' Name.Variable '}' Literal.String.Interpol 'r' Text ' ' Text '"' Literal.String.Double '$my_xdir' Name.Variable '"' Literal.String.Double '\n ' Text '$show' Name.Variable ' ' Text '"' Literal.String.Double '$mkdir' Name.Variable ' ' Literal.String.Double '$my_xdir' Name.Variable '"' Literal.String.Double '\n ' Text '$run' Name.Variable ' ' Text '$mkdir' Name.Variable ' ' Text '"' Literal.String.Double '$my_xdir' Name.Variable '"' Literal.String.Double '\n ' Text 'exit_status' Name.Variable '=' Operator '$?' Name.Variable '\n ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$exit_status' Name.Variable '"' Literal.String.Double ' ' Text '-ne' Text ' ' Text '0' Literal.Number ' ' Text '&&' Operator ' ' Text 'test' Name.Builtin ' ' Text '!' Text ' ' Text '-d' Text ' ' Text '"' Literal.String.Double '$my_xdir' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n\t' Text 'exit' Name.Builtin ' ' Text '$exit_status' Name.Variable '\n ' Text 'fi' Keyword '\n ' Text 'case' Keyword ' ' Text '$host' Name.Variable ' ' Text 'in' Keyword '\n ' Text '*-darwin*' Text ')' Operator '\n\t' Text '$show' Name.Variable ' ' Text '"' Literal.String.Double 'Extracting ' Literal.String.Double '$my_xabs' Name.Variable '"' Literal.String.Double '\n\t' Text '# Do not bother doing anything if just a dry run\n' Comment.Single '\t' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '-z' Text ' ' Text '"' Literal.String.Double '$run' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text 'darwin_orig_dir' Name.Variable '=' Operator '`' Literal.String.Backtick 'pwd' Name.Builtin '`' Literal.String.Backtick '\n\t ' Text 'cd' Name.Builtin ' ' Text '$my_xdir' Name.Variable ' ' Text '||' Operator ' ' Text 'exit' Name.Builtin ' ' Text '$?' Name.Variable '\n\t ' Text 'darwin_archive' Name.Variable '=' Operator '$my_xabs' Name.Variable '\n\t ' Text 'darwin_curdir' Name.Variable '=' Operator '`' Literal.String.Backtick 'pwd' Name.Builtin '`' Literal.String.Backtick '\n\t ' Text 'darwin_base_archive' Name.Variable '=' Operator '`' Literal.String.Backtick '$echo' Name.Variable ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$darwin_archive' Name.Variable '"' Literal.String.Double ' ' Text '|' Punctuation ' ' Text '$Xsed' Name.Variable ' ' Text '-e' Text ' ' Text "'s%^.*/%%'" Literal.String.Single '`' Literal.String.Backtick '\n\t ' Text 'darwin_arches' Name.Variable '=' Operator '`' Literal.String.Backtick 'lipo' Text ' ' Text '-info' Text ' ' Text '"' Literal.String.Double '$darwin_archive' Name.Variable '"' Literal.String.Double ' ' Text '2' Literal.Number '>/dev/null' Text ' ' Text '|' Punctuation ' ' Text '$EGREP' Name.Variable ' ' Text 'Architectures' Text ' ' Text '2' Literal.Number '>/dev/null' Text '`' Literal.String.Backtick '\n\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '-n' Text ' ' Text '"' Literal.String.Double '$darwin_arches' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword ' \n\t ' Text 'darwin_arches' Name.Variable '=' Operator '`' Literal.String.Backtick 'echo' Name.Builtin ' ' Text '"' Literal.String.Double '$darwin_arches' Name.Variable '"' Literal.String.Double ' ' Text '|' Punctuation ' ' Text '$SED' Name.Variable ' ' Text '-e' Text ' ' Text "'s/.*are://'" Literal.String.Single '`' Literal.String.Backtick '\n\t ' Text 'darwin_arch' Name.Variable '=' Operator '\n\t ' Text '$show' Name.Variable ' ' Text '"' Literal.String.Double '$darwin_base_archive' Name.Variable ' has multiple architectures ' Literal.String.Double '$darwin_arches' Name.Variable '"' Literal.String.Double '\n\t ' Text 'for' Keyword ' ' Text 'darwin_arch' Text ' ' Text 'in' Keyword ' ' Text '$darwin_arches' Name.Variable ' ' Text ';' Punctuation ' ' Text 'do' Keyword '\n\t ' Text 'mkdir' Text ' ' Text '-p' Text ' ' Text '"' Literal.String.Double 'unfat-' Literal.String.Double '$$' Name.Variable '/' Literal.String.Double '${' Literal.String.Interpol 'darwin_base_archive' Name.Variable '}' Literal.String.Interpol '-' Literal.String.Double '${' Literal.String.Interpol 'darwin_arch' Name.Variable '}' Literal.String.Interpol '"' Literal.String.Double '\n\t ' Text 'lipo' Text ' ' Text '-thin' Text ' ' Text '$darwin_arch' Name.Variable ' ' Text '-output' Text ' ' Text '"' Literal.String.Double 'unfat-' Literal.String.Double '$$' Name.Variable '/' Literal.String.Double '${' Literal.String.Interpol 'darwin_base_archive' Name.Variable '}' Literal.String.Interpol '-' Literal.String.Double '${' Literal.String.Interpol 'darwin_arch' Name.Variable '}' Literal.String.Interpol '/' Literal.String.Double '${' Literal.String.Interpol 'darwin_base_archive' Name.Variable '}' Literal.String.Interpol '"' Literal.String.Double ' ' Text '"' Literal.String.Double '${' Literal.String.Interpol 'darwin_archive' Name.Variable '}' Literal.String.Interpol '"' Literal.String.Double '\n\t ' Text 'cd' Name.Builtin ' ' Text '"' Literal.String.Double 'unfat-' Literal.String.Double '$$' Name.Variable '/' Literal.String.Double '${' Literal.String.Interpol 'darwin_base_archive' Name.Variable '}' Literal.String.Interpol '-' Literal.String.Double '${' Literal.String.Interpol 'darwin_arch' Name.Variable '}' Literal.String.Interpol '"' Literal.String.Double '\n\t ' Text 'func_extract_an_archive' Text ' ' Text '"`pwd`"' Literal.String.Double ' ' Text '"' Literal.String.Double '${' Literal.String.Interpol 'darwin_base_archive' Name.Variable '}' Literal.String.Interpol '"' Literal.String.Double '\n\t ' Text 'cd' Name.Builtin ' ' Text '"' Literal.String.Double '$darwin_curdir' Name.Variable '"' Literal.String.Double '\n\t ' Text '$rm' Name.Variable ' ' Text '"' Literal.String.Double 'unfat-' Literal.String.Double '$$' Name.Variable '/' Literal.String.Double '${' Literal.String.Interpol 'darwin_base_archive' Name.Variable '}' Literal.String.Interpol '-' Literal.String.Double '${' Literal.String.Interpol 'darwin_arch' Name.Variable '}' Literal.String.Interpol '/' Literal.String.Double '${' Literal.String.Interpol 'darwin_base_archive' Name.Variable '}' Literal.String.Interpol '"' Literal.String.Double '\n\t ' Text 'done' Keyword ' ' Text '# $darwin_arches\n' Comment.Single ' ' Text '## Okay now we have a bunch of thin objects, gotta fatten them up :)\n' Comment.Single '\t ' Text 'darwin_filelist' Name.Variable '=' Operator '`' Literal.String.Backtick 'find' Text ' ' Text 'unfat-' Text '$$' Name.Variable ' ' Text '-type' Text ' ' Text 'f' Text ' ' Text '-name' Text ' ' Text '\\*' Literal.String.Escape '.o' Text ' ' Text '-print' Text ' ' Text '-o' Text ' ' Text '-name' Text ' ' Text '\\*' Literal.String.Escape '.lo' Text ' ' Text '-print' Text '|' Punctuation ' ' Text 'xargs' Text ' ' Text 'basename' Text ' ' Text '|' Punctuation ' ' Text 'sort' Text ' ' Text '-u' Text ' ' Text '|' Punctuation ' ' Text '$NL2SP' Name.Variable '`' Literal.String.Backtick '\n\t ' Text 'darwin_file' Name.Variable '=' Operator '\n\t ' Text 'darwin_files' Name.Variable '=' Operator '\n\t ' Text 'for' Keyword ' ' Text 'darwin_file' Text ' ' Text 'in' Keyword ' ' Text '$darwin_filelist' Name.Variable ';' Punctuation ' ' Text 'do' Keyword '\n\t ' Text 'darwin_files' Name.Variable '=' Operator '`' Literal.String.Backtick 'find' Text ' ' Text 'unfat-' Text '$$' Name.Variable ' ' Text '-name' Text ' ' Text '$darwin_file' Name.Variable ' ' Text '-print' Text ' ' Text '|' Punctuation ' ' Text '$NL2SP' Name.Variable '`' Literal.String.Backtick '\n\t ' Text 'lipo' Text ' ' Text '-create' Text ' ' Text '-output' Text ' ' Text '"' Literal.String.Double '$darwin_file' Name.Variable '"' Literal.String.Double ' ' Text '$darwin_files' Name.Variable '\n\t ' Text 'done' Keyword ' ' Text '# $darwin_filelist\n' Comment.Single '\t ' Text '${' Literal.String.Interpol 'rm' Name.Variable '}' Literal.String.Interpol 'r' Text ' ' Text 'unfat-' Text '$$' Name.Variable '\n\t ' Text 'cd' Name.Builtin ' ' Text '"' Literal.String.Double '$darwin_orig_dir' Name.Variable '"' Literal.String.Double '\n\t ' Text 'else' Keyword '\n\t ' Text 'cd' Name.Builtin ' ' Text '"' Literal.String.Double '$darwin_orig_dir' Name.Variable '"' Literal.String.Double '\n \t ' Text 'func_extract_an_archive' Text ' ' Text '"' Literal.String.Double '$my_xdir' Name.Variable '"' Literal.String.Double ' ' Text '"' Literal.String.Double '$my_xabs' Name.Variable '"' Literal.String.Double '\n\t ' Text 'fi' Keyword ' ' Text '# $darwin_arches\n' Comment.Single '\t' Text 'fi' Keyword ' ' Text '# $run\n' Comment.Single '\t' Text ';' Punctuation ';' Punctuation '\n ' Text '*' Text ')' Operator '\n ' Text 'func_extract_an_archive' Text ' ' Text '"' Literal.String.Double '$my_xdir' Name.Variable '"' Literal.String.Double ' ' Text '"' Literal.String.Double '$my_xabs' Name.Variable '"' Literal.String.Double '\n ' Text ';' Punctuation ';' Punctuation '\n ' Text 'esac' Keyword '\n ' Text 'my_oldobjs' Name.Variable '=' Operator '"' Literal.String.Double '$my_oldobjs' Name.Variable ' ' Literal.String.Double '"' Literal.String.Double '`' Literal.String.Backtick 'find' Text ' ' Text '$my_xdir' Name.Variable ' ' Text '-name' Text ' ' Text '\\*' Literal.String.Escape '.' Text '$objext' Name.Variable ' ' Text '-print' Text ' ' Text '-o' Text ' ' Text '-name' Text ' ' Text '\\*' Literal.String.Escape '.lo' Text ' ' Text '-print' Text ' ' Text '|' Punctuation ' ' Text '$NL2SP' Name.Variable '`' Literal.String.Backtick '\n ' Text 'done' Keyword '\n ' Text 'func_extract_archives_result' Name.Variable '=' Operator '"' Literal.String.Double '$my_oldobjs' Name.Variable '"' Literal.String.Double '\n' Text '}' Operator '\n' Text '# End of Shell function definitions\n' Comment.Single '#####################################\n' Comment.Single '\n' Text '# Darwin sucks\n' Comment.Single 'eval' Name.Builtin ' ' Text 'std_shrext' Name.Variable '=' Operator '\\"' Literal.String.Escape '$shrext_cmds' Name.Variable '\\"' Literal.String.Escape '\n\n' Text 'disable_libs' Name.Variable '=' Operator 'no' Text '\n\n' Text '# Parse our command line options once, thoroughly.\n' Comment.Single 'while' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$#' Name.Variable '"' Literal.String.Double ' ' Text '-gt' Text ' ' Text '0' Literal.Number '\n' Text 'do' Keyword '\n ' Text 'arg' Name.Variable '=' Operator '"' Literal.String.Double '$1' Name.Variable '"' Literal.String.Double '\n ' Text 'shift' Name.Builtin '\n\n ' Text 'case' Keyword ' ' Text '$arg' Name.Variable ' ' Text 'in' Keyword '\n ' Text '-*' Text '=' Operator '*' Text ')' Operator ' ' Text 'optarg' Name.Variable '=' Operator '`' Literal.String.Backtick '$echo' Name.Variable ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double ' ' Text '|' Punctuation ' ' Text '$Xsed' Name.Variable ' ' Text '-e' Text ' ' Text "'s/[-_a-zA-Z0-9]*=//'" Literal.String.Single '`' Literal.String.Backtick ' ' Text ';' Punctuation ';' Punctuation '\n ' Text '*' Text ')' Operator ' ' Text 'optarg' Name.Variable '=' Operator ' ' Text ';' Punctuation ';' Punctuation '\n ' Text 'esac' Keyword '\n\n ' Text '# If the previous option needs an argument, assign it.\n' Comment.Single ' ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '-n' Text ' ' Text '"' Literal.String.Double '$prev' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n ' Text 'case' Keyword ' ' Text '$prev' Name.Variable ' ' Text 'in' Keyword '\n ' Text 'execute_dlfiles' Text ')' Operator '\n ' Text 'execute_dlfiles' Name.Variable '=' Operator '"' Literal.String.Double '$execute_dlfiles' Name.Variable ' ' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double '\n ' Text ';' Punctuation ';' Punctuation '\n ' Text 'tag' Text ')' Operator '\n ' Text 'tagname' Name.Variable '=' Operator '"' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double '\n ' Text 'preserve_args' Name.Variable '=' Operator '"' Literal.String.Double '${' Literal.String.Interpol 'preserve_args' Name.Variable '}' Literal.String.Interpol '=' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double '\n\n ' Text '# Check whether tagname contains only valid characters\n' Comment.Single ' ' Text 'case' Keyword ' ' Text '$tagname' Name.Variable ' ' Text 'in' Keyword '\n ' Text '*' Text '[' Operator '!-_A-Za-z0-9,/' Text ']' Operator '*' Text ')' Operator '\n\t' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double '$progname' Name.Variable ': invalid tag name: ' Literal.String.Double '$tagname' Name.Variable '"' Literal.String.Double ' ' Text '1' Literal.Number '>' Text '&' Punctuation '2' Literal.Number '\n\t' Text 'exit' Name.Builtin ' ' Text '$EXIT_FAILURE' Name.Variable '\n\t' Text ';' Punctuation ';' Punctuation '\n ' Text 'esac' Keyword '\n\n ' Text 'case' Keyword ' ' Text '$tagname' Name.Variable ' ' Text 'in' Keyword '\n ' Text 'CC' Text ')' Operator '\n\t' Text '# Don\'t test for the "default" C tag, as we know, it\'s there, but\n' Comment.Single '\t' Text '# not specially marked.\n' Comment.Single '\t' Text ';' Punctuation ';' Punctuation '\n ' Text '*' Text ')' Operator '\n\t' Text 'if' Keyword ' ' Text 'grep' Text ' ' Text '"' Literal.String.Double '^# ### BEGIN LIBTOOL TAG CONFIG: ' Literal.String.Double '$tagname' Name.Variable '$' Text '"' Literal.String.Double ' ' Text '<' Text ' ' Text '"' Literal.String.Double '$progpath' Name.Variable '"' Literal.String.Double ' ' Text '>' Text ' ' Text '/dev/null' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text 'taglist' Name.Variable '=' Operator '"' Literal.String.Double '$taglist' Name.Variable ' ' Literal.String.Double '$tagname' Name.Variable '"' Literal.String.Double '\n\t ' Text '# Evaluate the configuration.\n' Comment.Single '\t ' Text 'eval' Name.Builtin ' ' Text '"' Literal.String.Double '`' Literal.String.Double '${' Literal.String.Interpol 'SED' Name.Variable '}' Literal.String.Interpol " -n -e '/^# ### BEGIN LIBTOOL TAG CONFIG: '" Literal.String.Double '$tagname' Name.Variable "'" Literal.String.Double '$' Text "/,/^# ### END LIBTOOL TAG CONFIG: '" Literal.String.Double '$tagname' Name.Variable "'" Literal.String.Double '$' Text "/p' < " Literal.String.Double '$progpath' Name.Variable '`' Literal.String.Double '"' Literal.String.Double '\n\t' Text 'else' Keyword '\n\t ' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double '$progname' Name.Variable ': ignoring unknown tag ' Literal.String.Double '$tagname' Name.Variable '"' Literal.String.Double ' ' Text '1' Literal.Number '>' Text '&' Punctuation '2' Literal.Number '\n\t' Text 'fi' Keyword '\n\t' Text ';' Punctuation ';' Punctuation '\n ' Text 'esac' Keyword '\n ' Text ';' Punctuation ';' Punctuation '\n ' Text '*' Text ')' Operator '\n ' Text 'eval' Name.Builtin ' ' Text '"' Literal.String.Double '$prev' Name.Variable '=\\$arg' Literal.String.Double '"' Literal.String.Double '\n ' Text ';' Punctuation ';' Punctuation '\n ' Text 'esac' Keyword '\n\n ' Text 'prev' Name.Variable '=' Operator '\n ' Text 'prevopt' Name.Variable '=' Operator '\n ' Text 'continue' Keyword '\n ' Text 'fi' Keyword '\n\n ' Text '# Have we seen a non-optional argument yet?\n' Comment.Single ' ' Text 'case' Keyword ' ' Text '$arg' Name.Variable ' ' Text 'in' Keyword '\n ' Text '--help' Text ')' Operator '\n ' Text 'show_help' Name.Variable '=' Operator 'yes' Text '\n ' Text ';' Punctuation ';' Punctuation '\n\n ' Text '--version' Text ')' Operator '\n ' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double '$PROGRAM' Name.Variable ' (GNU ' Literal.String.Double '$PACKAGE' Name.Variable ') ' Literal.String.Double '$VERSION' Name.Variable '$TIMESTAMP' Name.Variable '"' Literal.String.Double '\n ' Text '$echo' Name.Variable '\n ' Text '$echo' Name.Variable ' ' Text '"Copyright (C) 2005 Free Software Foundation, Inc."' Literal.String.Double '\n ' Text '$echo' Name.Variable ' ' Text '"This is free software; see the source for copying conditions. There is NO"' Literal.String.Double '\n ' Text '$echo' Name.Variable ' ' Text '"warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."' Literal.String.Double '\n ' Text 'exit' Name.Builtin ' ' Text '$?' Name.Variable '\n ' Text ';' Punctuation ';' Punctuation '\n\n ' Text '--config' Text ')' Operator '\n ' Text '${' Literal.String.Interpol 'SED' Name.Variable '}' Literal.String.Interpol ' ' Text '-e' Text ' ' Text "'1,/^# ### BEGIN LIBTOOL CONFIG/d'" Literal.String.Single ' ' Text '-e' Text ' ' Text "'/^# ### END LIBTOOL CONFIG/,$d'" Literal.String.Single ' ' Text '$progpath' Name.Variable '\n ' Text '# Now print the configurations for the tags.\n' Comment.Single ' ' Text 'for' Keyword ' ' Text 'tagname' Text ' ' Text 'in' Keyword ' ' Text '$taglist' Name.Variable ';' Punctuation ' ' Text 'do' Keyword '\n ' Text '${' Literal.String.Interpol 'SED' Name.Variable '}' Literal.String.Interpol ' ' Text '-n' Text ' ' Text '-e' Text ' ' Text '"' Literal.String.Double '/^# ### BEGIN LIBTOOL TAG CONFIG: ' Literal.String.Double '$tagname' Name.Variable '$' Text '/,/^# ### END LIBTOOL TAG CONFIG: ' Literal.String.Double '$tagname' Name.Variable '$' Text '/p' Literal.String.Double '"' Literal.String.Double ' ' Text '<' Text ' ' Text '"' Literal.String.Double '$progpath' Name.Variable '"' Literal.String.Double '\n ' Text 'done' Keyword '\n ' Text 'exit' Name.Builtin ' ' Text '$?' Name.Variable '\n ' Text ';' Punctuation ';' Punctuation '\n\n ' Text '--debug' Text ')' Operator '\n ' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double '$progname' Name.Variable ': enabling shell trace mode' Literal.String.Double '"' Literal.String.Double '\n ' Text 'set' Name.Builtin ' ' Text '-x' Text '\n ' Text 'preserve_args' Name.Variable '=' Operator '"' Literal.String.Double '$preserve_args' Name.Variable ' ' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double '\n ' Text ';' Punctuation ';' Punctuation '\n\n ' Text '--dry-run' Text ' ' Text '|' Punctuation ' ' Text '-n' Text ')' Operator '\n ' Text 'run' Name.Variable '=' Operator ':' Text '\n ' Text ';' Punctuation ';' Punctuation '\n\n ' Text '--features' Text ')' Operator '\n ' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double 'host: ' Literal.String.Double '$host' Name.Variable '"' Literal.String.Double '\n ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$build_libtool_libs' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'yes' Text ';' Punctuation ' ' Text 'then' Keyword '\n ' Text '$echo' Name.Variable ' ' Text '"enable shared libraries"' Literal.String.Double '\n ' Text 'else' Keyword '\n ' Text '$echo' Name.Variable ' ' Text '"disable shared libraries"' Literal.String.Double '\n ' Text 'fi' Keyword '\n ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$build_old_libs' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'yes' Text ';' Punctuation ' ' Text 'then' Keyword '\n ' Text '$echo' Name.Variable ' ' Text '"enable static libraries"' Literal.String.Double '\n ' Text 'else' Keyword '\n ' Text '$echo' Name.Variable ' ' Text '"disable static libraries"' Literal.String.Double '\n ' Text 'fi' Keyword '\n ' Text 'exit' Name.Builtin ' ' Text '$?' Name.Variable '\n ' Text ';' Punctuation ';' Punctuation '\n\n ' Text '--finish' Text ')' Operator ' ' Text 'mode' Name.Variable '=' Operator '"finish"' Literal.String.Double ' ' Text ';' Punctuation ';' Punctuation '\n\n ' Text '--mode' Text ')' Operator ' ' Text 'prevopt' Name.Variable '=' Operator '"--mode"' Literal.String.Double ' ' Text 'prev' Name.Variable '=' Operator 'mode' Text ' ' Text ';' Punctuation ';' Punctuation '\n ' Text '--mode' Text '=' Operator '*' Text ')' Operator ' ' Text 'mode' Name.Variable '=' Operator '"' Literal.String.Double '$optarg' Name.Variable '"' Literal.String.Double ' ' Text ';' Punctuation ';' Punctuation '\n\n ' Text '--preserve-dup-deps' Text ')' Operator ' ' Text 'duplicate_deps' Name.Variable '=' Operator '"yes"' Literal.String.Double ' ' Text ';' Punctuation ';' Punctuation '\n\n ' Text '--quiet' Text ' ' Text '|' Punctuation ' ' Text '--silent' Text ')' Operator '\n ' Text 'show' Name.Variable '=' Operator ':' Text '\n ' Text 'preserve_args' Name.Variable '=' Operator '"' Literal.String.Double '$preserve_args' Name.Variable ' ' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double '\n ' Text ';' Punctuation ';' Punctuation '\n\n ' Text '--tag' Text ')' Operator '\n ' Text 'prevopt' Name.Variable '=' Operator '"--tag"' Literal.String.Double '\n ' Text 'prev' Name.Variable '=' Operator 'tag' Text '\n ' Text 'preserve_args' Name.Variable '=' Operator '"' Literal.String.Double '$preserve_args' Name.Variable ' --tag' Literal.String.Double '"' Literal.String.Double '\n ' Text ';' Punctuation ';' Punctuation '\n ' Text '--tag' Text '=' Operator '*' Text ')' Operator '\n ' Text 'set' Name.Builtin ' ' Text 'tag' Text ' ' Text '"' Literal.String.Double '$optarg' Name.Variable '"' Literal.String.Double ' ' Text '${' Literal.String.Interpol '1' Name.Variable '+' Punctuation '"' Literal.String.Double '$@' Name.Variable '"' Literal.String.Double '}' Literal.String.Interpol '\n ' Text 'shift' Name.Builtin '\n ' Text 'prev' Name.Variable '=' Operator 'tag' Text '\n ' Text 'preserve_args' Name.Variable '=' Operator '"' Literal.String.Double '$preserve_args' Name.Variable ' --tag' Literal.String.Double '"' Literal.String.Double '\n ' Text ';' Punctuation ';' Punctuation '\n\n ' Text '-dlopen' Text ')' Operator '\n ' Text 'prevopt' Name.Variable '=' Operator '"-dlopen"' Literal.String.Double '\n ' Text 'prev' Name.Variable '=' Operator 'execute_dlfiles' Text '\n ' Text ';' Punctuation ';' Punctuation '\n\n ' Text '-*' Text ')' Operator '\n ' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double '$modename' Name.Variable ': unrecognized option \\`' Literal.String.Double '$arg' Name.Variable "'" Literal.String.Double '"' Literal.String.Double ' ' Text '1' Literal.Number '>' Text '&' Punctuation '2' Literal.Number '\n ' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double '$help' Name.Variable '"' Literal.String.Double ' ' Text '1' Literal.Number '>' Text '&' Punctuation '2' Literal.Number '\n ' Text 'exit' Name.Builtin ' ' Text '$EXIT_FAILURE' Name.Variable '\n ' Text ';' Punctuation ';' Punctuation '\n\n ' Text '*' Text ')' Operator '\n ' Text 'nonopt' Name.Variable '=' Operator '"' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double '\n ' Text 'break' Name.Builtin '\n ' Text ';' Punctuation ';' Punctuation '\n ' Text 'esac' Keyword '\n' Text 'done' Keyword '\n\n' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '-n' Text ' ' Text '"' Literal.String.Double '$prevopt' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n ' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double '$modename' Name.Variable ': option \\`' Literal.String.Double '$prevopt' Name.Variable "' requires an argument" Literal.String.Double '"' Literal.String.Double ' ' Text '1' Literal.Number '>' Text '&' Punctuation '2' Literal.Number '\n ' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double '$help' Name.Variable '"' Literal.String.Double ' ' Text '1' Literal.Number '>' Text '&' Punctuation '2' Literal.Number '\n ' Text 'exit' Name.Builtin ' ' Text '$EXIT_FAILURE' Name.Variable '\n' Text 'fi' Keyword '\n\n' Text 'case' Keyword ' ' Text '$disable_libs' Name.Variable ' ' Text 'in' Keyword '\n' Text 'no' Text ')' Operator ' \n ' Text ';' Punctuation ';' Punctuation '\n' Text 'shared' Text ')' Operator '\n ' Text 'build_libtool_libs' Name.Variable '=' Operator 'no' Text '\n ' Text 'build_old_libs' Name.Variable '=' Operator 'yes' Text '\n ' Text ';' Punctuation ';' Punctuation '\n' Text 'static' Text ')' Operator '\n ' Text 'build_old_libs' Name.Variable '=' Operator '`' Literal.String.Backtick 'case' Keyword ' ' Text '$build_libtool_libs' Name.Variable ' ' Text 'in' Keyword ' ' Text 'yes' Text ')' Operator ' ' Text 'echo' Name.Builtin ' ' Text 'no' Text ';' Punctuation ';' Punctuation ' ' Text '*' Text ')' Operator ' ' Text 'echo' Name.Builtin ' ' Text 'yes' Text ';' Punctuation ';' Punctuation ' ' Text 'esac' Keyword '`' Literal.String.Backtick '\n ' Text ';' Punctuation ';' Punctuation '\n' Text 'esac' Keyword '\n\n' Text '# If this variable is set in any of the actions, the command in it\n' Comment.Single '# will be execed at the end. This prevents here-documents from being\n' Comment.Single '# left over by shells.\n' Comment.Single 'exec_cmd' Name.Variable '=' Operator '\n\n' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '-z' Text ' ' Text '"' Literal.String.Double '$show_help' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n\n ' Text '# Infer the operation mode.\n' Comment.Single ' ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '-z' Text ' ' Text '"' Literal.String.Double '$mode' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n ' Text '$echo' Name.Variable ' ' Text '"*** Warning: inferring the mode of operation is deprecated."' Literal.String.Double ' ' Text '1' Literal.Number '>' Text '&' Punctuation '2' Literal.Number '\n ' Text '$echo' Name.Variable ' ' Text '"*** Future versions of Libtool will require --mode=MODE be specified."' Literal.String.Double ' ' Text '1' Literal.Number '>' Text '&' Punctuation '2' Literal.Number '\n ' Text 'case' Keyword ' ' Text '$nonopt' Name.Variable ' ' Text 'in' Keyword '\n ' Text '*cc' Text ' ' Text '|' Punctuation ' ' Text 'cc*' Text ' ' Text '|' Punctuation ' ' Text '*++' Text ' ' Text '|' Punctuation ' ' Text 'gcc*' Text ' ' Text '|' Punctuation ' ' Text '*-gcc*' Text ' ' Text '|' Punctuation ' ' Text 'g++*' Text ' ' Text '|' Punctuation ' ' Text 'xlc*' Text ')' Operator '\n ' Text 'mode' Name.Variable '=' Operator 'link' Text '\n ' Text 'for' Keyword ' ' Text 'arg' Text '\n ' Text 'do' Keyword '\n\t' Text 'case' Keyword ' ' Text '$arg' Name.Variable ' ' Text 'in' Keyword '\n\t' Text '-c' Text ')' Operator '\n\t ' Text 'mode' Name.Variable '=' Operator 'compile' Text '\n\t ' Text 'break' Name.Builtin '\n\t ' Text ';' Punctuation ';' Punctuation '\n\t' Text 'esac' Keyword '\n ' Text 'done' Keyword '\n ' Text ';' Punctuation ';' Punctuation '\n ' Text '*db' Text ' ' Text '|' Punctuation ' ' Text '*dbx' Text ' ' Text '|' Punctuation ' ' Text '*strace' Text ' ' Text '|' Punctuation ' ' Text '*truss' Text ')' Operator '\n ' Text 'mode' Name.Variable '=' Operator 'execute' Text '\n ' Text ';' Punctuation ';' Punctuation '\n ' Text '*install*' Text '|' Punctuation 'cp' Text '|' Punctuation 'mv' Text ')' Operator '\n ' Text 'mode' Name.Variable '=' Operator 'install' Text '\n ' Text ';' Punctuation ';' Punctuation '\n ' Text '*rm' Text ')' Operator '\n ' Text 'mode' Name.Variable '=' Operator 'uninstall' Text '\n ' Text ';' Punctuation ';' Punctuation '\n ' Text '*' Text ')' Operator '\n ' Text '# If we have no mode, but dlfiles were specified, then do execute mode.\n' Comment.Single ' ' Text 'test' Name.Builtin ' ' Text '-n' Text ' ' Text '"' Literal.String.Double '$execute_dlfiles' Name.Variable '"' Literal.String.Double ' ' Text '&&' Operator ' ' Text 'mode' Name.Variable '=' Operator 'execute' Text '\n\n ' Text '# Just use the default operation mode.\n' Comment.Single ' ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '-z' Text ' ' Text '"' Literal.String.Double '$mode' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n\t' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '-n' Text ' ' Text '"' Literal.String.Double '$nonopt' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double '$modename' Name.Variable ': warning: cannot infer operation mode from \\`' Literal.String.Double '$nonopt' Name.Variable "'" Literal.String.Double '"' Literal.String.Double ' ' Text '1' Literal.Number '>' Text '&' Punctuation '2' Literal.Number '\n\t' Text 'else' Keyword '\n\t ' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double '$modename' Name.Variable ': warning: cannot infer operation mode without MODE-ARGS' Literal.String.Double '"' Literal.String.Double ' ' Text '1' Literal.Number '>' Text '&' Punctuation '2' Literal.Number '\n\t' Text 'fi' Keyword '\n ' Text 'fi' Keyword '\n ' Text ';' Punctuation ';' Punctuation '\n ' Text 'esac' Keyword '\n ' Text 'fi' Keyword '\n\n ' Text '# Only execute mode is allowed to have -dlopen flags.\n' Comment.Single ' ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '-n' Text ' ' Text '"' Literal.String.Double '$execute_dlfiles' Name.Variable '"' Literal.String.Double ' ' Text '&&' Operator ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$mode' Name.Variable '"' Literal.String.Double ' ' Text '!' Text '=' Operator ' ' Text 'execute' Text ';' Punctuation ' ' Text 'then' Keyword '\n ' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double '$modename' Name.Variable ": unrecognized option \\`-dlopen'" Literal.String.Double '"' Literal.String.Double ' ' Text '1' Literal.Number '>' Text '&' Punctuation '2' Literal.Number '\n ' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double '$help' Name.Variable '"' Literal.String.Double ' ' Text '1' Literal.Number '>' Text '&' Punctuation '2' Literal.Number '\n ' Text 'exit' Name.Builtin ' ' Text '$EXIT_FAILURE' Name.Variable '\n ' Text 'fi' Keyword '\n\n ' Text '# Change the help message to a mode-specific one.\n' Comment.Single ' ' Text 'generic_help' Name.Variable '=' Operator '"' Literal.String.Double '$help' Name.Variable '"' Literal.String.Double '\n ' Text 'help' Name.Variable '=' Operator '"' Literal.String.Double 'Try \\`' Literal.String.Double '$modename' Name.Variable ' --help --mode=' Literal.String.Double '$mode' Name.Variable "' for more information." Literal.String.Double '"' Literal.String.Double '\n\n ' Text '# These modes are in order of execution frequency so that they run quickly.\n' Comment.Single ' ' Text 'case' Keyword ' ' Text '$mode' Name.Variable ' ' Text 'in' Keyword '\n ' Text '# libtool compile mode\n' Comment.Single ' ' Text 'compile' Text ')' Operator '\n ' Text 'modename' Name.Variable '=' Operator '"' Literal.String.Double '$modename' Name.Variable ': compile' Literal.String.Double '"' Literal.String.Double '\n ' Text '# Get the compilation command and the source file.\n' Comment.Single ' ' Text 'base_compile' Name.Variable '=' Operator '\n ' Text 'srcfile' Name.Variable '=' Operator '"' Literal.String.Double '$nonopt' Name.Variable '"' Literal.String.Double ' ' Text '# always keep a non-empty value in "srcfile"\n' Comment.Single ' ' Text 'suppress_opt' Name.Variable '=' Operator 'yes' Text '\n ' Text 'suppress_output' Name.Variable '=' Operator '\n ' Text 'arg_mode' Name.Variable '=' Operator 'normal' Text '\n ' Text 'libobj' Name.Variable '=' Operator '\n ' Text 'later' Name.Variable '=' Operator '\n\n ' Text 'for' Keyword ' ' Text 'arg' Text '\n ' Text 'do' Keyword '\n ' Text 'case' Keyword ' ' Text '$arg_mode' Name.Variable ' ' Text 'in' Keyword '\n ' Text 'arg' Text ' ' Text ')' Operator '\n\t' Text '# do not "continue". Instead, add this to base_compile\n' Comment.Single '\t' Text 'lastarg' Name.Variable '=' Operator '"' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double '\n\t' Text 'arg_mode' Name.Variable '=' Operator 'normal' Text '\n\t' Text ';' Punctuation ';' Punctuation '\n\n ' Text 'target' Text ' ' Text ')' Operator '\n\t' Text 'libobj' Name.Variable '=' Operator '"' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double '\n\t' Text 'arg_mode' Name.Variable '=' Operator 'normal' Text '\n\t' Text 'continue' Keyword '\n\t' Text ';' Punctuation ';' Punctuation '\n\n ' Text 'normal' Text ' ' Text ')' Operator '\n\t' Text '# Accept any command-line options.\n' Comment.Single '\t' Text 'case' Keyword ' ' Text '$arg' Name.Variable ' ' Text 'in' Keyword '\n\t' Text '-o' Text ')' Operator '\n\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '-n' Text ' ' Text '"' Literal.String.Double '$libobj' Name.Variable '"' Literal.String.Double ' ' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double '$modename' Name.Variable ": you cannot specify \\`-o' more than once" Literal.String.Double '"' Literal.String.Double ' ' Text '1' Literal.Number '>' Text '&' Punctuation '2' Literal.Number '\n\t ' Text 'exit' Name.Builtin ' ' Text '$EXIT_FAILURE' Name.Variable '\n\t ' Text 'fi' Keyword '\n\t ' Text 'arg_mode' Name.Variable '=' Operator 'target' Text '\n\t ' Text 'continue' Keyword '\n\t ' Text ';' Punctuation ';' Punctuation '\n\n\t' Text '-static' Text ' ' Text '|' Punctuation ' ' Text '-prefer-pic' Text ' ' Text '|' Punctuation ' ' Text '-prefer-non-pic' Text ')' Operator '\n\t ' Text 'later' Name.Variable '=' Operator '"' Literal.String.Double '$later' Name.Variable ' ' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double '\n\t ' Text 'continue' Keyword '\n\t ' Text ';' Punctuation ';' Punctuation '\n\n\t' Text '-no-suppress' Text ')' Operator '\n\t ' Text 'suppress_opt' Name.Variable '=' Operator 'no' Text '\n\t ' Text 'continue' Keyword '\n\t ' Text ';' Punctuation ';' Punctuation '\n\n\t' Text '-Xcompiler' Text ')' Operator '\n\t ' Text 'arg_mode' Name.Variable '=' Operator 'arg' Text ' ' Text '# the next one goes into the "base_compile" arg list\n' Comment.Single '\t ' Text 'continue' Keyword ' ' Text '# The current "srcfile" will either be retained or\n' Comment.Single '\t ' Text ';' Punctuation ';' Punctuation ' ' Text '# replaced later. I would guess that would be a bug.\n' Comment.Single '\n\t' Text '-Wc,*' Text ')' Operator '\n\t ' Text 'args' Name.Variable '=' Operator '`' Literal.String.Backtick '$echo' Name.Variable ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double ' ' Text '|' Punctuation ' ' Text '$Xsed' Name.Variable ' ' Text '-e' Text ' ' Text '"s/^-Wc,//"' Literal.String.Double '`' Literal.String.Backtick '\n\t ' Text 'lastarg' Name.Variable '=' Operator '\n\t ' Text 'save_ifs' Name.Variable '=' Operator '"' Literal.String.Double '$IFS' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'IFS' Name.Variable '=' Operator "','" Literal.String.Single '\n \t ' Text 'for' Keyword ' ' Text 'arg' Text ' ' Text 'in' Keyword ' ' Text '$args' Name.Variable ';' Punctuation ' ' Text 'do' Keyword '\n\t ' Text 'IFS' Name.Variable '=' Operator '"' Literal.String.Double '$save_ifs' Name.Variable '"' Literal.String.Double '\n\n\t ' Text '# Double-quote args containing other shell metacharacters.\n' Comment.Single '\t ' Text '# Many Bourne shells cannot handle close brackets correctly\n' Comment.Single '\t ' Text '# in scan sets, so we specify it separately.\n' Comment.Single '\t ' Text 'case' Keyword ' ' Text '$arg' Name.Variable ' ' Text 'in' Keyword '\n\t ' Text '*' Text '[' Operator '\\[' Literal.String.Escape '\\~' Literal.String.Escape '\\#' Literal.String.Escape '\\^' Literal.String.Escape '\\&' Literal.String.Escape '\\*' Literal.String.Escape '\\(' Literal.String.Escape '\\)' Literal.String.Escape '\\{' Literal.String.Escape '\\}' Literal.String.Escape '\\|' Literal.String.Escape '\\;' Literal.String.Escape '\\<' Literal.String.Escape '\\>' Literal.String.Escape '\\?' Literal.String.Escape "\\'" Literal.String.Escape '\\ ' Literal.String.Escape '\\\t' Literal.String.Escape ']' Operator '*' Text '|' Punctuation '*' Text ']' Operator '*' Text '|' Punctuation '""' Literal.String.Double ')' Operator '\n\t ' Text 'arg' Name.Variable '=' Operator '"' Literal.String.Double '\\"' Literal.String.Double '$arg' Name.Variable '\\"' Literal.String.Double '"' Literal.String.Double '\n\t ' Text ';' Punctuation ';' Punctuation '\n\t ' Text 'esac' Keyword '\n\t ' Text 'lastarg' Name.Variable '=' Operator '"' Literal.String.Double '$lastarg' Name.Variable ' ' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double '\n\t ' Text 'done' Keyword '\n\t ' Text 'IFS' Name.Variable '=' Operator '"' Literal.String.Double '$save_ifs' Name.Variable '"' Literal.String.Double '\n\t ' Text 'lastarg' Name.Variable '=' Operator '`' Literal.String.Backtick '$echo' Name.Variable ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$lastarg' Name.Variable '"' Literal.String.Double ' ' Text '|' Punctuation ' ' Text '$Xsed' Name.Variable ' ' Text '-e' Text ' ' Text '"s/^ //"' Literal.String.Double '`' Literal.String.Backtick '\n\n\t ' Text '# Add the arguments to base_compile.\n' Comment.Single '\t ' Text 'base_compile' Name.Variable '=' Operator '"' Literal.String.Double '$base_compile' Name.Variable ' ' Literal.String.Double '$lastarg' Name.Variable '"' Literal.String.Double '\n\t ' Text 'continue' Keyword '\n\t ' Text ';' Punctuation ';' Punctuation '\n\n\t' Text '*' Text ' ' Text ')' Operator '\n\t ' Text '# Accept the current argument as the source file.\n' Comment.Single '\t ' Text '# The previous "srcfile" becomes the current argument.\n' Comment.Single '\t ' Text '#\n' Comment.Single '\t ' Text 'lastarg' Name.Variable '=' Operator '"' Literal.String.Double '$srcfile' Name.Variable '"' Literal.String.Double '\n\t ' Text 'srcfile' Name.Variable '=' Operator '"' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double '\n\t ' Text ';' Punctuation ';' Punctuation '\n\t' Text 'esac' Keyword ' ' Text '# case $arg\n' Comment.Single '\t' Text ';' Punctuation ';' Punctuation '\n ' Text 'esac' Keyword ' ' Text '# case $arg_mode\n' Comment.Single '\n ' Text '# Aesthetically quote the previous argument.\n' Comment.Single ' ' Text 'lastarg' Name.Variable '=' Operator '`' Literal.String.Backtick '$echo' Name.Variable ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$lastarg' Name.Variable '"' Literal.String.Double ' ' Text '|' Punctuation ' ' Text '$Xsed' Name.Variable ' ' Text '-e' Text ' ' Text '"' Literal.String.Double '$sed_quote_subst' Name.Variable '"' Literal.String.Double '`' Literal.String.Backtick '\n\n ' Text 'case' Keyword ' ' Text '$lastarg' Name.Variable ' ' Text 'in' Keyword '\n ' Text '# Double-quote args containing other shell metacharacters.\n' Comment.Single ' ' Text '# Many Bourne shells cannot handle close brackets correctly\n' Comment.Single ' ' Text '# in scan sets, and some SunOS ksh mistreat backslash-escaping\n' Comment.Single ' ' Text '# in scan sets (worked around with variable expansion),\n' Comment.Single ' ' Text "# and furthermore cannot handle '|' '&' '(' ')' in scan sets \n" Comment.Single ' ' Text '# at all, so we specify them separately.\n' Comment.Single ' ' Text '*' Text '[' Operator '\\[' Literal.String.Escape '\\~' Literal.String.Escape '\\#' Literal.String.Escape '\\^' Literal.String.Escape '\\&' Literal.String.Escape '\\*' Literal.String.Escape '\\(' Literal.String.Escape '\\)' Literal.String.Escape '\\{' Literal.String.Escape '\\}' Literal.String.Escape '\\|' Literal.String.Escape '\\;' Literal.String.Escape '\\<' Literal.String.Escape '\\>' Literal.String.Escape '\\?' Literal.String.Escape "\\'" Literal.String.Escape '\\ ' Literal.String.Escape '\\\t' Literal.String.Escape ']' Operator '*' Text '|' Punctuation '*' Text ']' Operator '*' Text '|' Punctuation '""' Literal.String.Double ')' Operator '\n\t' Text 'lastarg' Name.Variable '=' Operator '"' Literal.String.Double '\\"' Literal.String.Double '$lastarg' Name.Variable '\\"' Literal.String.Double '"' Literal.String.Double '\n\t' Text ';' Punctuation ';' Punctuation '\n ' Text 'esac' Keyword '\n\n ' Text 'base_compile' Name.Variable '=' Operator '"' Literal.String.Double '$base_compile' Name.Variable ' ' Literal.String.Double '$lastarg' Name.Variable '"' Literal.String.Double '\n ' Text 'done' Keyword ' ' Text '# for arg\n' Comment.Single '\n ' Text 'case' Keyword ' ' Text '$arg_mode' Name.Variable ' ' Text 'in' Keyword '\n ' Text 'arg' Text ')' Operator '\n ' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double '$modename' Name.Variable ': you must specify an argument for -Xcompile' Literal.String.Double '"' Literal.String.Double '\n ' Text 'exit' Name.Builtin ' ' Text '$EXIT_FAILURE' Name.Variable '\n ' Text ';' Punctuation ';' Punctuation '\n ' Text 'target' Text ')' Operator '\n ' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double '$modename' Name.Variable ": you must specify a target with \\`-o'" Literal.String.Double '"' Literal.String.Double ' ' Text '1' Literal.Number '>' Text '&' Punctuation '2' Literal.Number '\n ' Text 'exit' Name.Builtin ' ' Text '$EXIT_FAILURE' Name.Variable '\n ' Text ';' Punctuation ';' Punctuation '\n ' Text '*' Text ')' Operator '\n ' Text '# Get the name of the library object.\n' Comment.Single ' ' Text '[' Operator ' ' Text '-z' Text ' ' Text '"' Literal.String.Double '$libobj' Name.Variable '"' Literal.String.Double ' ' Text ']' Operator ' ' Text '&&' Operator ' ' Text 'libobj' Name.Variable '=' Operator '`' Literal.String.Backtick '$echo' Name.Variable ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$srcfile' Name.Variable '"' Literal.String.Double ' ' Text '|' Punctuation ' ' Text '$Xsed' Name.Variable ' ' Text '-e' Text ' ' Text "'s%^.*/%%'" Literal.String.Single '`' Literal.String.Backtick '\n ' Text ';' Punctuation ';' Punctuation '\n ' Text 'esac' Keyword '\n\n ' Text '# Recognize several different file suffixes.\n' Comment.Single ' ' Text '# If the user specifies -o file.o, it is replaced with file.lo\n' Comment.Single ' ' Text 'xform' Name.Variable '=' Operator "'[cCFSifmso]'" Literal.String.Single '\n ' Text 'case' Keyword ' ' Text '$libobj' Name.Variable ' ' Text 'in' Keyword '\n ' Text '*.ada' Text ')' Operator ' ' Text 'xform' Name.Variable '=' Operator 'ada' Text ' ' Text ';' Punctuation ';' Punctuation '\n ' Text '*.adb' Text ')' Operator ' ' Text 'xform' Name.Variable '=' Operator 'adb' Text ' ' Text ';' Punctuation ';' Punctuation '\n ' Text '*.ads' Text ')' Operator ' ' Text 'xform' Name.Variable '=' Operator 'ads' Text ' ' Text ';' Punctuation ';' Punctuation '\n ' Text '*.asm' Text ')' Operator ' ' Text 'xform' Name.Variable '=' Operator 'asm' Text ' ' Text ';' Punctuation ';' Punctuation '\n ' Text '*.c++' Text ')' Operator ' ' Text 'xform' Name.Variable '=' Operator 'c++' Text ' ' Text ';' Punctuation ';' Punctuation '\n ' Text '*.cc' Text ')' Operator ' ' Text 'xform' Name.Variable '=' Operator 'cc' Text ' ' Text ';' Punctuation ';' Punctuation '\n ' Text '*.ii' Text ')' Operator ' ' Text 'xform' Name.Variable '=' Operator 'ii' Text ' ' Text ';' Punctuation ';' Punctuation '\n ' Text '*.class' Text ')' Operator ' ' Text 'xform' Name.Variable '=' Operator 'class' Text ' ' Text ';' Punctuation ';' Punctuation '\n ' Text '*.cpp' Text ')' Operator ' ' Text 'xform' Name.Variable '=' Operator 'cpp' Text ' ' Text ';' Punctuation ';' Punctuation '\n ' Text '*.cxx' Text ')' Operator ' ' Text 'xform' Name.Variable '=' Operator 'cxx' Text ' ' Text ';' Punctuation ';' Punctuation '\n ' Text '*.f90' Text ')' Operator ' ' Text 'xform' Name.Variable '=' Operator 'f90' Text ' ' Text ';' Punctuation ';' Punctuation '\n ' Text '*.for' Text ')' Operator ' ' Text 'xform' Name.Variable '=' Operator 'for' Keyword ' ' Text ';' Punctuation ';' Punctuation '\n ' Text '*.java' Text ')' Operator ' ' Text 'xform' Name.Variable '=' Operator 'java' Text ' ' Text ';' Punctuation ';' Punctuation '\n ' Text 'esac' Keyword '\n\n ' Text 'libobj' Name.Variable '=' Operator '`' Literal.String.Backtick '$echo' Name.Variable ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$libobj' Name.Variable '"' Literal.String.Double ' ' Text '|' Punctuation ' ' Text '$Xsed' Name.Variable ' ' Text '-e' Text ' ' Text '"' Literal.String.Double 's/\\.' Literal.String.Double '$xform' Name.Variable '$' Text '/.lo/' Literal.String.Double '"' Literal.String.Double '`' Literal.String.Backtick '\n\n ' Text 'case' Keyword ' ' Text '$libobj' Name.Variable ' ' Text 'in' Keyword '\n ' Text '*.lo' Text ')' Operator ' ' Text 'obj' Name.Variable '=' Operator '`' Literal.String.Backtick '$echo' Name.Variable ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$libobj' Name.Variable '"' Literal.String.Double ' ' Text '|' Punctuation ' ' Text '$Xsed' Name.Variable ' ' Text '-e' Text ' ' Text '"' Literal.String.Double '$lo2o' Name.Variable '"' Literal.String.Double '`' Literal.String.Backtick ' ' Text ';' Punctuation ';' Punctuation '\n ' Text '*' Text ')' Operator '\n ' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double '$modename' Name.Variable ': cannot determine name of library object from \\`' Literal.String.Double '$libobj' Name.Variable "'" Literal.String.Double '"' Literal.String.Double ' ' Text '1' Literal.Number '>' Text '&' Punctuation '2' Literal.Number '\n ' Text 'exit' Name.Builtin ' ' Text '$EXIT_FAILURE' Name.Variable '\n ' Text ';' Punctuation ';' Punctuation '\n ' Text 'esac' Keyword '\n\n ' Text 'func_infer_tag' Text ' ' Text '$base_compile' Name.Variable '\n\n ' Text 'for' Keyword ' ' Text 'arg' Text ' ' Text 'in' Keyword ' ' Text '$later' Name.Variable ';' Punctuation ' ' Text 'do' Keyword '\n ' Text 'case' Keyword ' ' Text '$arg' Name.Variable ' ' Text 'in' Keyword '\n ' Text '-static' Text ')' Operator '\n\t' Text 'build_old_libs' Name.Variable '=' Operator 'yes' Text '\n\t' Text 'continue' Keyword '\n\t' Text ';' Punctuation ';' Punctuation '\n\n ' Text '-prefer-pic' Text ')' Operator '\n\t' Text 'pic_mode' Name.Variable '=' Operator 'yes' Text '\n\t' Text 'continue' Keyword '\n\t' Text ';' Punctuation ';' Punctuation '\n\n ' Text '-prefer-non-pic' Text ')' Operator '\n\t' Text 'pic_mode' Name.Variable '=' Operator 'no' Text '\n\t' Text 'continue' Keyword '\n\t' Text ';' Punctuation ';' Punctuation '\n ' Text 'esac' Keyword '\n ' Text 'done' Keyword '\n\n ' Text 'qlibobj' Name.Variable '=' Operator '`' Literal.String.Backtick '$echo' Name.Variable ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$libobj' Name.Variable '"' Literal.String.Double ' ' Text '|' Punctuation ' ' Text '$Xsed' Name.Variable ' ' Text '-e' Text ' ' Text '"' Literal.String.Double '$sed_quote_subst' Name.Variable '"' Literal.String.Double '`' Literal.String.Backtick '\n ' Text 'case' Keyword ' ' Text '$qlibobj' Name.Variable ' ' Text 'in' Keyword '\n ' Text '*' Text '[' Operator '\\[' Literal.String.Escape '\\~' Literal.String.Escape '\\#' Literal.String.Escape '\\^' Literal.String.Escape '\\&' Literal.String.Escape '\\*' Literal.String.Escape '\\(' Literal.String.Escape '\\)' Literal.String.Escape '\\{' Literal.String.Escape '\\}' Literal.String.Escape '\\|' Literal.String.Escape '\\;' Literal.String.Escape '\\<' Literal.String.Escape '\\>' Literal.String.Escape '\\?' Literal.String.Escape "\\'" Literal.String.Escape '\\ ' Literal.String.Escape '\\\t' Literal.String.Escape ']' Operator '*' Text '|' Punctuation '*' Text ']' Operator '*' Text '|' Punctuation '""' Literal.String.Double ')' Operator '\n\t' Text 'qlibobj' Name.Variable '=' Operator '"' Literal.String.Double '\\"' Literal.String.Double '$qlibobj' Name.Variable '\\"' Literal.String.Double '"' Literal.String.Double ' ' Text ';' Punctuation ';' Punctuation '\n ' Text 'esac' Keyword '\n ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$libobj' Name.Variable '"' Literal.String.Double ' ' Text '!' Text '=' Operator ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$qlibobj' Name.Variable '"' Literal.String.Double ' ' Text '\\\n' Literal.String.Escape '\t' Text '&&' Operator ' ' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$libobj' Name.Variable '"' Literal.String.Double ' ' Text '|' Punctuation ' ' Text 'grep' Text ' ' Text '\'[]~#^*{};<>?"\'' Literal.String.Single '"\'"' Literal.String.Double "' \t&()|`$[]'" Literal.String.Single ' ' Text '\\\n' Literal.String.Escape '\t' Text '&&' Operator ' ' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double '$modename' Name.Variable ': libobj name \\`' Literal.String.Double '$libobj' Name.Variable "' may not contain shell special characters." Literal.String.Double '"' Literal.String.Double '\n ' Text 'objname' Name.Variable '=' Operator '`' Literal.String.Backtick '$echo' Name.Variable ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$obj' Name.Variable '"' Literal.String.Double ' ' Text '|' Punctuation ' ' Text '$Xsed' Name.Variable ' ' Text '-e' Text ' ' Text "'s%^.*/%%'" Literal.String.Single '`' Literal.String.Backtick '\n ' Text 'xdir' Name.Variable '=' Operator '`' Literal.String.Backtick '$echo' Name.Variable ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$obj' Name.Variable '"' Literal.String.Double ' ' Text '|' Punctuation ' ' Text '$Xsed' Name.Variable ' ' Text '-e' Text ' ' Text "'s%/[^/]*$%%'" Literal.String.Single '`' Literal.String.Backtick '\n ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$xdir' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$obj' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n ' Text 'xdir' Name.Variable '=' Operator '\n ' Text 'else' Keyword '\n ' Text 'xdir' Name.Variable '=' Operator '$xdir' Name.Variable '/' Text '\n ' Text 'fi' Keyword '\n ' Text 'lobj' Name.Variable '=' Operator '${' Literal.String.Interpol 'xdir' Name.Variable '}' Literal.String.Interpol '$objdir' Name.Variable '/' Text '$objname' Name.Variable '\n\n ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '-z' Text ' ' Text '"' Literal.String.Double '$base_compile' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n ' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double '$modename' Name.Variable ': you must specify a compilation command' Literal.String.Double '"' Literal.String.Double ' ' Text '1' Literal.Number '>' Text '&' Punctuation '2' Literal.Number '\n ' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double '$help' Name.Variable '"' Literal.String.Double ' ' Text '1' Literal.Number '>' Text '&' Punctuation '2' Literal.Number '\n ' Text 'exit' Name.Builtin ' ' Text '$EXIT_FAILURE' Name.Variable '\n ' Text 'fi' Keyword '\n\n ' Text '# Delete any leftover library objects.\n' Comment.Single ' ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$build_old_libs' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'yes' Text ';' Punctuation ' ' Text 'then' Keyword '\n ' Text 'removelist' Name.Variable '=' Operator '"' Literal.String.Double '$obj' Name.Variable ' ' Literal.String.Double '$lobj' Name.Variable ' ' Literal.String.Double '$libobj' Name.Variable ' ' Literal.String.Double '${' Literal.String.Interpol 'libobj' Name.Variable '}' Literal.String.Interpol 'T' Literal.String.Double '"' Literal.String.Double '\n ' Text 'else' Keyword '\n ' Text 'removelist' Name.Variable '=' Operator '"' Literal.String.Double '$lobj' Name.Variable ' ' Literal.String.Double '$libobj' Name.Variable ' ' Literal.String.Double '${' Literal.String.Interpol 'libobj' Name.Variable '}' Literal.String.Interpol 'T' Literal.String.Double '"' Literal.String.Double '\n ' Text 'fi' Keyword '\n\n ' Text '$run' Name.Variable ' ' Text '$rm' Name.Variable ' ' Text '$removelist' Name.Variable '\n ' Text 'trap' Name.Builtin ' ' Text '"' Literal.String.Double '$run' Name.Variable ' ' Literal.String.Double '$rm' Name.Variable ' ' Literal.String.Double '$removelist' Name.Variable '; exit ' Literal.String.Double '$EXIT_FAILURE' Name.Variable '"' Literal.String.Double ' ' Text '1' Literal.Number ' ' Text '2' Literal.Number ' ' Text '15' Literal.Number '\n\n ' Text '# On Cygwin there\'s no "real" PIC flag so we must build both object types\n' Comment.Single ' ' Text 'case' Keyword ' ' Text '$host_os' Name.Variable ' ' Text 'in' Keyword '\n ' Text 'cygwin*' Text ' ' Text '|' Punctuation ' ' Text 'mingw*' Text ' ' Text '|' Punctuation ' ' Text 'pw32*' Text ' ' Text '|' Punctuation ' ' Text 'os2*' Text ')' Operator '\n ' Text 'pic_mode' Name.Variable '=' Operator 'default' Text '\n ' Text ';' Punctuation ';' Punctuation '\n ' Text 'esac' Keyword '\n ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$pic_mode' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'no' Text ' ' Text '&&' Operator ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$deplibs_check_method' Name.Variable '"' Literal.String.Double ' ' Text '!' Text '=' Operator ' ' Text 'pass_all' Text ';' Punctuation ' ' Text 'then' Keyword '\n ' Text '# non-PIC code in shared libraries is not supported\n' Comment.Single ' ' Text 'pic_mode' Name.Variable '=' Operator 'default' Text '\n ' Text 'fi' Keyword '\n\n ' Text '# Calculate the filename of the output object if compiler does\n' Comment.Single ' ' Text '# not support -o with -c\n' Comment.Single ' ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$compiler_c_o' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'no' Text ';' Punctuation ' ' Text 'then' Keyword '\n ' Text 'output_obj' Name.Variable '=' Operator '`' Literal.String.Backtick '$echo' Name.Variable ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$srcfile' Name.Variable '"' Literal.String.Double ' ' Text '|' Punctuation ' ' Text '$Xsed' Name.Variable ' ' Text '-e' Text ' ' Text "'s%^.*/%%'" Literal.String.Single ' ' Text '-e' Text ' ' Text "'s%\\.[^.]*$%%'" Literal.String.Single '`' Literal.String.Backtick '.' Text '${' Literal.String.Interpol 'objext' Name.Variable '}' Literal.String.Interpol '\n ' Text 'lockfile' Name.Variable '=' Operator '"' Literal.String.Double '$output_obj' Name.Variable '.lock' Literal.String.Double '"' Literal.String.Double '\n ' Text 'removelist' Name.Variable '=' Operator '"' Literal.String.Double '$removelist' Name.Variable ' ' Literal.String.Double '$output_obj' Name.Variable ' ' Literal.String.Double '$lockfile' Name.Variable '"' Literal.String.Double '\n ' Text 'trap' Name.Builtin ' ' Text '"' Literal.String.Double '$run' Name.Variable ' ' Literal.String.Double '$rm' Name.Variable ' ' Literal.String.Double '$removelist' Name.Variable '; exit ' Literal.String.Double '$EXIT_FAILURE' Name.Variable '"' Literal.String.Double ' ' Text '1' Literal.Number ' ' Text '2' Literal.Number ' ' Text '15' Literal.Number '\n ' Text 'else' Keyword '\n ' Text 'output_obj' Name.Variable '=' Operator '\n ' Text 'need_locks' Name.Variable '=' Operator 'no' Text '\n ' Text 'lockfile' Name.Variable '=' Operator '\n ' Text 'fi' Keyword '\n\n ' Text '# Lock this critical section if it is needed\n' Comment.Single ' ' Text '# We use this script file to make the link, it avoids creating a new file\n' Comment.Single ' ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$need_locks' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'yes' Text ';' Punctuation ' ' Text 'then' Keyword '\n ' Text 'until' Keyword ' ' Text '$run' Name.Variable ' ' Text 'ln' Text ' ' Text '"' Literal.String.Double '$srcfile' Name.Variable '"' Literal.String.Double ' ' Text '"' Literal.String.Double '$lockfile' Name.Variable '"' Literal.String.Double ' ' Text '2' Literal.Number '>/dev/null' Text ';' Punctuation ' ' Text 'do' Keyword '\n\t' Text '$show' Name.Variable ' ' Text '"' Literal.String.Double 'Waiting for ' Literal.String.Double '$lockfile' Name.Variable ' to be removed' Literal.String.Double '"' Literal.String.Double '\n\t' Text 'sleep' Text ' ' Text '2' Literal.Number '\n ' Text 'done' Keyword '\n ' Text 'elif' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$need_locks' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'warn' Text ';' Punctuation ' ' Text 'then' Keyword '\n ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '-f' Text ' ' Text '"' Literal.String.Double '$lockfile' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n\t' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double '\\\n*** ERROR, ' Literal.String.Double '$lockfile' Name.Variable ' exists and contains:\n`cat ' Literal.String.Double '$lockfile' Name.Variable " 2>/dev/null`\n\nThis indicates that another process is trying to use the same\ntemporary object file, and libtool could not work around it because\nyour compiler does not support \\`-c' and \\`-o' together. If you\nrepeat this compilation, it may succeed, by chance, but you had better\navoid parallel builds (make -j) in this platform, or get a better\ncompiler." Literal.String.Double '"' Literal.String.Double '\n\n\t' Text '$run' Name.Variable ' ' Text '$rm' Name.Variable ' ' Text '$removelist' Name.Variable '\n\t' Text 'exit' Name.Builtin ' ' Text '$EXIT_FAILURE' Name.Variable '\n ' Text 'fi' Keyword '\n ' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double '$srcfile' Name.Variable '"' Literal.String.Double ' ' Text '>' Text ' ' Text '"' Literal.String.Double '$lockfile' Name.Variable '"' Literal.String.Double '\n ' Text 'fi' Keyword '\n\n ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '-n' Text ' ' Text '"' Literal.String.Double '$fix_srcfile_path' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n ' Text 'eval' Name.Builtin ' ' Text 'srcfile' Name.Variable '=' Operator '\\"' Literal.String.Escape '$fix_srcfile_path' Name.Variable '\\"' Literal.String.Escape '\n ' Text 'fi' Keyword '\n ' Text 'qsrcfile' Name.Variable '=' Operator '`' Literal.String.Backtick '$echo' Name.Variable ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$srcfile' Name.Variable '"' Literal.String.Double ' ' Text '|' Punctuation ' ' Text '$Xsed' Name.Variable ' ' Text '-e' Text ' ' Text '"' Literal.String.Double '$sed_quote_subst' Name.Variable '"' Literal.String.Double '`' Literal.String.Backtick '\n ' Text 'case' Keyword ' ' Text '$qsrcfile' Name.Variable ' ' Text 'in' Keyword '\n ' Text '*' Text '[' Operator '\\[' Literal.String.Escape '\\~' Literal.String.Escape '\\#' Literal.String.Escape '\\^' Literal.String.Escape '\\&' Literal.String.Escape '\\*' Literal.String.Escape '\\(' Literal.String.Escape '\\)' Literal.String.Escape '\\{' Literal.String.Escape '\\}' Literal.String.Escape '\\|' Literal.String.Escape '\\;' Literal.String.Escape '\\<' Literal.String.Escape '\\>' Literal.String.Escape '\\?' Literal.String.Escape "\\'" Literal.String.Escape '\\ ' Literal.String.Escape '\\\t' Literal.String.Escape ']' Operator '*' Text '|' Punctuation '*' Text ']' Operator '*' Text '|' Punctuation '""' Literal.String.Double ')' Operator '\n ' Text 'qsrcfile' Name.Variable '=' Operator '"' Literal.String.Double '\\"' Literal.String.Double '$qsrcfile' Name.Variable '\\"' Literal.String.Double '"' Literal.String.Double ' ' Text ';' Punctuation ';' Punctuation '\n ' Text 'esac' Keyword '\n\n ' Text '$run' Name.Variable ' ' Text '$rm' Name.Variable ' ' Text '"' Literal.String.Double '$libobj' Name.Variable '"' Literal.String.Double ' ' Text '"' Literal.String.Double '${' Literal.String.Interpol 'libobj' Name.Variable '}' Literal.String.Interpol 'T' Literal.String.Double '"' Literal.String.Double '\n\n ' Text '# Create a libtool object file (analogous to a ".la" file),\n' Comment.Single ' ' Text "# but don't create it if we're doing a dry run.\n" Comment.Single ' ' Text 'test' Name.Builtin ' ' Text '-z' Text ' ' Text '"' Literal.String.Double '$run' Name.Variable '"' Literal.String.Double ' ' Text '&&' Operator ' ' Text 'cat' Text ' ' Text '>' Text ' ' Text '${' Literal.String.Interpol 'libobj' Name.Variable '}' Literal.String.Interpol 'T' Text ' ' Text '</dev/null`' Literal.String.Double '"' Literal.String.Double ' ' Text '!' Text '=' Operator ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$srcfile' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n\t' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double '\\\n*** ERROR, ' Literal.String.Double '$lockfile' Name.Variable ' contains:\n`cat ' Literal.String.Double '$lockfile' Name.Variable ' 2>/dev/null`\n\nbut it should contain:\n' Literal.String.Double '$srcfile' Name.Variable "\n\nThis indicates that another process is trying to use the same\ntemporary object file, and libtool could not work around it because\nyour compiler does not support \\`-c' and \\`-o' together. If you\nrepeat this compilation, it may succeed, by chance, but you had better\navoid parallel builds (make -j) in this platform, or get a better\ncompiler." Literal.String.Double '"' Literal.String.Double '\n\n\t' Text '$run' Name.Variable ' ' Text '$rm' Name.Variable ' ' Text '$removelist' Name.Variable '\n\t' Text 'exit' Name.Builtin ' ' Text '$EXIT_FAILURE' Name.Variable '\n ' Text 'fi' Keyword '\n\n ' Text '# Just move the object if needed, then go on to compile the next one\n' Comment.Single ' ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '-n' Text ' ' Text '"' Literal.String.Double '$output_obj' Name.Variable '"' Literal.String.Double ' ' Text '&&' Operator ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$output_obj' Name.Variable '"' Literal.String.Double ' ' Text '!' Text '=' Operator ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$lobj' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n\t' Text '$show' Name.Variable ' ' Text '"' Literal.String.Double '$mv' Name.Variable ' ' Literal.String.Double '$output_obj' Name.Variable ' ' Literal.String.Double '$lobj' Name.Variable '"' Literal.String.Double '\n\t' Text 'if' Keyword ' ' Text '$run' Name.Variable ' ' Text '$mv' Name.Variable ' ' Text '$output_obj' Name.Variable ' ' Text '$lobj' Name.Variable ';' Punctuation ' ' Text 'then' Keyword ' ' Text ':' Text '\n\t' Text 'else' Keyword '\n\t ' Text 'error' Name.Variable '=' Operator '$?' Name.Variable '\n\t ' Text '$run' Name.Variable ' ' Text '$rm' Name.Variable ' ' Text '$removelist' Name.Variable '\n\t ' Text 'exit' Name.Builtin ' ' Text '$error' Name.Variable '\n\t' Text 'fi' Keyword '\n ' Text 'fi' Keyword '\n\n ' Text '# Append the name of the PIC object to the libtool object file.\n' Comment.Single ' ' Text 'test' Name.Builtin ' ' Text '-z' Text ' ' Text '"' Literal.String.Double '$run' Name.Variable '"' Literal.String.Double ' ' Text '&&' Operator ' ' Text 'cat' Text ' ' Text '>>' Text ' ' Text '${' Literal.String.Interpol 'libobj' Name.Variable '}' Literal.String.Interpol 'T' Text ' ' Text "</dev/null 2>&1'" Literal.String.Single '\n ' Text 'fi' Keyword '\n ' Text 'else' Keyword '\n ' Text "# No PIC object so indicate it doesn't exist in the libtool\n" Comment.Single ' ' Text '# object file.\n' Comment.Single ' ' Text 'test' Name.Builtin ' ' Text '-z' Text ' ' Text '"' Literal.String.Double '$run' Name.Variable '"' Literal.String.Double ' ' Text '&&' Operator ' ' Text 'cat' Text ' ' Text '>>' Text ' ' Text '${' Literal.String.Interpol 'libobj' Name.Variable '}' Literal.String.Interpol 'T' Text ' ' Text '</dev/null`' Literal.String.Double '"' Literal.String.Double ' ' Text '!' Text '=' Operator ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$srcfile' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n\t' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double '\\\n*** ERROR, ' Literal.String.Double '$lockfile' Name.Variable ' contains:\n`cat ' Literal.String.Double '$lockfile' Name.Variable ' 2>/dev/null`\n\nbut it should contain:\n' Literal.String.Double '$srcfile' Name.Variable "\n\nThis indicates that another process is trying to use the same\ntemporary object file, and libtool could not work around it because\nyour compiler does not support \\`-c' and \\`-o' together. If you\nrepeat this compilation, it may succeed, by chance, but you had better\navoid parallel builds (make -j) in this platform, or get a better\ncompiler." Literal.String.Double '"' Literal.String.Double '\n\n\t' Text '$run' Name.Variable ' ' Text '$rm' Name.Variable ' ' Text '$removelist' Name.Variable '\n\t' Text 'exit' Name.Builtin ' ' Text '$EXIT_FAILURE' Name.Variable '\n ' Text 'fi' Keyword '\n\n ' Text '# Just move the object if needed\n' Comment.Single ' ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '-n' Text ' ' Text '"' Literal.String.Double '$output_obj' Name.Variable '"' Literal.String.Double ' ' Text '&&' Operator ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$output_obj' Name.Variable '"' Literal.String.Double ' ' Text '!' Text '=' Operator ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$obj' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n\t' Text '$show' Name.Variable ' ' Text '"' Literal.String.Double '$mv' Name.Variable ' ' Literal.String.Double '$output_obj' Name.Variable ' ' Literal.String.Double '$obj' Name.Variable '"' Literal.String.Double '\n\t' Text 'if' Keyword ' ' Text '$run' Name.Variable ' ' Text '$mv' Name.Variable ' ' Text '$output_obj' Name.Variable ' ' Text '$obj' Name.Variable ';' Punctuation ' ' Text 'then' Keyword ' ' Text ':' Text '\n\t' Text 'else' Keyword '\n\t ' Text 'error' Name.Variable '=' Operator '$?' Name.Variable '\n\t ' Text '$run' Name.Variable ' ' Text '$rm' Name.Variable ' ' Text '$removelist' Name.Variable '\n\t ' Text 'exit' Name.Builtin ' ' Text '$error' Name.Variable '\n\t' Text 'fi' Keyword '\n ' Text 'fi' Keyword '\n\n ' Text '# Append the name of the non-PIC object the libtool object file.\n' Comment.Single ' ' Text '# Only append if the libtool object file exists.\n' Comment.Single ' ' Text 'test' Name.Builtin ' ' Text '-z' Text ' ' Text '"' Literal.String.Double '$run' Name.Variable '"' Literal.String.Double ' ' Text '&&' Operator ' ' Text 'cat' Text ' ' Text '>>' Text ' ' Text '${' Literal.String.Interpol 'libobj' Name.Variable '}' Literal.String.Interpol 'T' Text ' ' Text "<>' Text ' ' Text '${' Literal.String.Interpol 'libobj' Name.Variable '}' Literal.String.Interpol 'T' Text ' ' Text '<' Text '&' Punctuation '2' Literal.Number '\n\t ' Text 'fi' Keyword '\n\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '-n' Text ' ' Text '"' Literal.String.Double '$link_static_flag' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text 'dlopen_self' Name.Variable '=' Operator '$dlopen_self_static' Name.Variable '\n\t ' Text 'fi' Keyword '\n\t ' Text 'prefer_static_libs' Name.Variable '=' Operator 'yes' Text '\n\t' Text 'else' Keyword '\n\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '-z' Text ' ' Text '"' Literal.String.Double '$pic_flag' Name.Variable '"' Literal.String.Double ' ' Text '&&' Operator ' ' Text 'test' Name.Builtin ' ' Text '-n' Text ' ' Text '"' Literal.String.Double '$link_static_flag' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text 'dlopen_self' Name.Variable '=' Operator '$dlopen_self_static' Name.Variable '\n\t ' Text 'fi' Keyword '\n\t ' Text 'prefer_static_libs' Name.Variable '=' Operator 'built' Text '\n\t' Text 'fi' Keyword '\n\t' Text 'build_libtool_libs' Name.Variable '=' Operator 'no' Text '\n\t' Text 'build_old_libs' Name.Variable '=' Operator 'yes' Text '\n\t' Text 'break' Name.Builtin '\n\t' Text ';' Punctuation ';' Punctuation '\n ' Text 'esac' Keyword '\n ' Text 'done' Keyword '\n\n ' Text '# See if our shared archives depend on static archives.\n' Comment.Single ' ' Text 'test' Name.Builtin ' ' Text '-n' Text ' ' Text '"' Literal.String.Double '$old_archive_from_new_cmds' Name.Variable '"' Literal.String.Double ' ' Text '&&' Operator ' ' Text 'build_old_libs' Name.Variable '=' Operator 'yes' Text '\n\n ' Text '# Go through the arguments, transforming them on the way.\n' Comment.Single ' ' Text 'while' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$#' Name.Variable '"' Literal.String.Double ' ' Text '-gt' Text ' ' Text '0' Literal.Number ';' Punctuation ' ' Text 'do' Keyword '\n ' Text 'arg' Name.Variable '=' Operator '"' Literal.String.Double '$1' Name.Variable '"' Literal.String.Double '\n ' Text 'shift' Name.Builtin '\n ' Text 'case' Keyword ' ' Text '$arg' Name.Variable ' ' Text 'in' Keyword '\n ' Text '*' Text '[' Operator '\\[' Literal.String.Escape '\\~' Literal.String.Escape '\\#' Literal.String.Escape '\\^' Literal.String.Escape '\\&' Literal.String.Escape '\\*' Literal.String.Escape '\\(' Literal.String.Escape '\\)' Literal.String.Escape '\\{' Literal.String.Escape '\\}' Literal.String.Escape '\\|' Literal.String.Escape '\\;' Literal.String.Escape '\\<' Literal.String.Escape '\\>' Literal.String.Escape '\\?' Literal.String.Escape "\\'" Literal.String.Escape '\\ ' Literal.String.Escape '\\\t' Literal.String.Escape ']' Operator '*' Text '|' Punctuation '*' Text ']' Operator '*' Text '|' Punctuation '""' Literal.String.Double ')' Operator '\n\t' Text 'qarg' Name.Variable '=' Operator '\\"' Literal.String.Escape '`' Literal.String.Backtick '$echo' Name.Variable ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double ' ' Text '|' Punctuation ' ' Text '$Xsed' Name.Variable ' ' Text '-e' Text ' ' Text '"' Literal.String.Double '$sed_quote_subst' Name.Variable '"' Literal.String.Double '`' Literal.String.Backtick '\\"' Literal.String.Escape ' ' Text '### testsuite: skip nested quoting test\n' Comment.Single '\t' Text ';' Punctuation ';' Punctuation '\n ' Text '*' Text ')' Operator ' ' Text 'qarg' Name.Variable '=' Operator '$arg' Name.Variable ' ' Text ';' Punctuation ';' Punctuation '\n ' Text 'esac' Keyword '\n ' Text 'libtool_args' Name.Variable '=' Operator '"' Literal.String.Double '$libtool_args' Name.Variable ' ' Literal.String.Double '$qarg' Name.Variable '"' Literal.String.Double '\n\n ' Text '# If the previous option needs an argument, assign it.\n' Comment.Single ' ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '-n' Text ' ' Text '"' Literal.String.Double '$prev' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n\t' Text 'case' Keyword ' ' Text '$prev' Name.Variable ' ' Text 'in' Keyword '\n\t' Text 'output' Text ')' Operator '\n\t ' Text 'compile_command' Name.Variable '=' Operator '"' Literal.String.Double '$compile_command' Name.Variable ' @OUTPUT@' Literal.String.Double '"' Literal.String.Double '\n\t ' Text 'finalize_command' Name.Variable '=' Operator '"' Literal.String.Double '$finalize_command' Name.Variable ' @OUTPUT@' Literal.String.Double '"' Literal.String.Double '\n\t ' Text ';' Punctuation ';' Punctuation '\n\t' Text 'esac' Keyword '\n\n\t' Text 'case' Keyword ' ' Text '$prev' Name.Variable ' ' Text 'in' Keyword '\n\t' Text 'dlfiles' Text '|' Punctuation 'dlprefiles' Text ')' Operator '\n\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$preload' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'no' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text '# Add the symbol object into the linking commands.\n' Comment.Single '\t ' Text 'compile_command' Name.Variable '=' Operator '"' Literal.String.Double '$compile_command' Name.Variable ' @SYMFILE@' Literal.String.Double '"' Literal.String.Double '\n\t ' Text 'finalize_command' Name.Variable '=' Operator '"' Literal.String.Double '$finalize_command' Name.Variable ' @SYMFILE@' Literal.String.Double '"' Literal.String.Double '\n\t ' Text 'preload' Name.Variable '=' Operator 'yes' Text '\n\t ' Text 'fi' Keyword '\n\t ' Text 'case' Keyword ' ' Text '$arg' Name.Variable ' ' Text 'in' Keyword '\n\t ' Text '*.la' Text ' ' Text '|' Punctuation ' ' Text '*.lo' Text ')' Operator ' ' Text ';' Punctuation ';' Punctuation ' ' Text '# We handle these cases below.\n' Comment.Single '\t ' Text 'force' Text ')' Operator '\n\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$dlself' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'no' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text 'dlself' Name.Variable '=' Operator 'needless' Text '\n\t ' Text 'export_dynamic' Name.Variable '=' Operator 'yes' Text '\n\t ' Text 'fi' Keyword '\n\t ' Text 'prev' Name.Variable '=' Operator '\n\t ' Text 'continue' Keyword '\n\t ' Text ';' Punctuation ';' Punctuation '\n\t ' Text 'self' Text ')' Operator '\n\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$prev' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'dlprefiles' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text 'dlself' Name.Variable '=' Operator 'yes' Text '\n\t ' Text 'elif' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$prev' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'dlfiles' Text ' ' Text '&&' Operator ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$dlopen_self' Name.Variable '"' Literal.String.Double ' ' Text '!' Text '=' Operator ' ' Text 'yes' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text 'dlself' Name.Variable '=' Operator 'yes' Text '\n\t ' Text 'else' Keyword '\n\t ' Text 'dlself' Name.Variable '=' Operator 'needless' Text '\n\t ' Text 'export_dynamic' Name.Variable '=' Operator 'yes' Text '\n\t ' Text 'fi' Keyword '\n\t ' Text 'prev' Name.Variable '=' Operator '\n\t ' Text 'continue' Keyword '\n\t ' Text ';' Punctuation ';' Punctuation '\n\t ' Text '*' Text ')' Operator '\n\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$prev' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'dlfiles' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text 'dlfiles' Name.Variable '=' Operator '"' Literal.String.Double '$dlfiles' Name.Variable ' ' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double '\n\t ' Text 'else' Keyword '\n\t ' Text 'dlprefiles' Name.Variable '=' Operator '"' Literal.String.Double '$dlprefiles' Name.Variable ' ' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double '\n\t ' Text 'fi' Keyword '\n\t ' Text 'prev' Name.Variable '=' Operator '\n\t ' Text 'continue' Keyword '\n\t ' Text ';' Punctuation ';' Punctuation '\n\t ' Text 'esac' Keyword '\n\t ' Text ';' Punctuation ';' Punctuation '\n\t' Text 'expsyms' Text ')' Operator '\n\t ' Text 'export_symbols' Name.Variable '=' Operator '"' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double '\n\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '!' Text ' ' Text '-f' Text ' ' Text '"' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double '$modename' Name.Variable ': symbol file \\`' Literal.String.Double '$arg' Name.Variable "' does not exist" Literal.String.Double '"' Literal.String.Double '\n\t ' Text 'exit' Name.Builtin ' ' Text '$EXIT_FAILURE' Name.Variable '\n\t ' Text 'fi' Keyword '\n\t ' Text 'prev' Name.Variable '=' Operator '\n\t ' Text 'continue' Keyword '\n\t ' Text ';' Punctuation ';' Punctuation '\n\t' Text 'expsyms_regex' Text ')' Operator '\n\t ' Text 'export_symbols_regex' Name.Variable '=' Operator '"' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double '\n\t ' Text 'prev' Name.Variable '=' Operator '\n\t ' Text 'continue' Keyword '\n\t ' Text ';' Punctuation ';' Punctuation '\n\t' Text 'inst_prefix' Text ')' Operator '\n\t ' Text 'inst_prefix_dir' Name.Variable '=' Operator '"' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double '\n\t ' Text 'prev' Name.Variable '=' Operator '\n\t ' Text 'continue' Keyword '\n\t ' Text ';' Punctuation ';' Punctuation '\n\t' Text 'precious_regex' Text ')' Operator '\n\t ' Text 'precious_files_regex' Name.Variable '=' Operator '"' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double '\n\t ' Text 'prev' Name.Variable '=' Operator '\n\t ' Text 'continue' Keyword '\n\t ' Text ';' Punctuation ';' Punctuation '\n\t' Text 'release' Text ')' Operator '\n\t ' Text 'release' Name.Variable '=' Operator '"' Literal.String.Double '-' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double '\n\t ' Text 'prev' Name.Variable '=' Operator '\n\t ' Text 'continue' Keyword '\n\t ' Text ';' Punctuation ';' Punctuation '\n\t' Text 'objectlist' Text ')' Operator '\n\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '-f' Text ' ' Text '"' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text 'save_arg' Name.Variable '=' Operator '$arg' Name.Variable '\n\t ' Text 'moreargs' Name.Variable '=' Operator '\n\t ' Text 'for' Keyword ' ' Text 'fil' Text ' ' Text 'in' Keyword ' ' Text '`' Literal.String.Backtick 'cat' Text ' ' Text '$save_arg' Name.Variable '`' Literal.String.Backtick '\n\t ' Text 'do' Keyword '\n' Text '#\t moreargs="$moreargs $fil"\n' Comment.Single '\t ' Text 'arg' Name.Variable '=' Operator '$fil' Name.Variable '\n\t ' Text '# A libtool-controlled object.\n' Comment.Single '\n\t ' Text '# Check to see that this really is a libtool object.\n' Comment.Single '\t ' Text 'if' Keyword ' ' Text '(' Operator '${' Literal.String.Interpol 'SED' Name.Variable '}' Literal.String.Interpol ' ' Text '-e' Text ' ' Text "'2q'" Literal.String.Single ' ' Text '$arg' Name.Variable ' ' Text '|' Punctuation ' ' Text 'grep' Text ' ' Text '"' Literal.String.Double '^# Generated by .*' Literal.String.Double '$PACKAGE' Name.Variable '"' Literal.String.Double ')' Operator ' ' Text '>/dev/null' Text ' ' Text '2' Literal.Number '>' Text '&' Punctuation '1' Literal.Number ';' Punctuation ' ' Text 'then' Keyword '\n\t\t' Text 'pic_object' Name.Variable '=' Operator '\n\t\t' Text 'non_pic_object' Name.Variable '=' Operator '\n\n\t\t' Text '# Read the .lo file\n' Comment.Single '\t\t' Text '# If there is no directory component, then add one.\n' Comment.Single '\t\t' Text 'case' Keyword ' ' Text '$arg' Name.Variable ' ' Text 'in' Keyword '\n\t\t' Text '*/*' Text ' ' Text '|' Punctuation ' ' Text '*' Text '\\\\' Literal.String.Escape '*' Text ')' Operator ' ' Text '.' Text ' ' Text '$arg' Name.Variable ' ' Text ';' Punctuation ';' Punctuation '\n\t\t' Text '*' Text ')' Operator ' ' Text '.' Text ' ' Text './' Text '$arg' Name.Variable ' ' Text ';' Punctuation ';' Punctuation '\n\t\t' Text 'esac' Keyword '\n\n\t\t' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '-z' Text ' ' Text '"' Literal.String.Double '$pic_object' Name.Variable '"' Literal.String.Double ' ' Text '||' Operator ' ' Text '\\\n' Literal.String.Escape '\t\t ' Text 'test' Name.Builtin ' ' Text '-z' Text ' ' Text '"' Literal.String.Double '$non_pic_object' Name.Variable '"' Literal.String.Double ' ' Text '||' Operator '\n\t\t ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$pic_object' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'none' Text ' ' Text '&&' Operator ' ' Text '\\\n' Literal.String.Escape '\t\t ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$non_pic_object' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'none' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t\t ' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double '$modename' Name.Variable ': cannot find name of object for \\`' Literal.String.Double '$arg' Name.Variable "'" Literal.String.Double '"' Literal.String.Double ' ' Text '1' Literal.Number '>' Text '&' Punctuation '2' Literal.Number '\n\t\t ' Text 'exit' Name.Builtin ' ' Text '$EXIT_FAILURE' Name.Variable '\n\t\t' Text 'fi' Keyword '\n\n\t\t' Text '# Extract subdirectory from the argument.\n' Comment.Single '\t\t' Text 'xdir' Name.Variable '=' Operator '`' Literal.String.Backtick '$echo' Name.Variable ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double ' ' Text '|' Punctuation ' ' Text '$Xsed' Name.Variable ' ' Text '-e' Text ' ' Text "'s%/[^/]*$%%'" Literal.String.Single '`' Literal.String.Backtick '\n\t\t' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$xdir' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n\t\t ' Text 'xdir' Name.Variable '=' Operator '\n\t\t' Text 'else' Keyword '\n\t\t ' Text 'xdir' Name.Variable '=' Operator '"' Literal.String.Double '$xdir' Name.Variable '/' Literal.String.Double '"' Literal.String.Double '\n\t\t' Text 'fi' Keyword '\n\n\t\t' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$pic_object' Name.Variable '"' Literal.String.Double ' ' Text '!' Text '=' Operator ' ' Text 'none' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t\t ' Text '# Prepend the subdirectory the object is found in.\n' Comment.Single '\t\t ' Text 'pic_object' Name.Variable '=' Operator '"' Literal.String.Double '$xdir' Name.Variable '$pic_object' Name.Variable '"' Literal.String.Double '\n\n\t\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$prev' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'dlfiles' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$build_libtool_libs' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'yes' Text ' ' Text '&&' Operator ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$dlopen_support' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'yes' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t\t ' Text 'dlfiles' Name.Variable '=' Operator '"' Literal.String.Double '$dlfiles' Name.Variable ' ' Literal.String.Double '$pic_object' Name.Variable '"' Literal.String.Double '\n\t\t ' Text 'prev' Name.Variable '=' Operator '\n\t\t ' Text 'continue' Keyword '\n\t\t ' Text 'else' Keyword '\n\t\t ' Text '# If libtool objects are unsupported, then we need to preload.\n' Comment.Single '\t\t ' Text 'prev' Name.Variable '=' Operator 'dlprefiles' Text '\n\t\t ' Text 'fi' Keyword '\n\t\t ' Text 'fi' Keyword '\n\n\t\t ' Text '# CHECK ME: I think I busted this. -Ossama\n' Comment.Single '\t\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$prev' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'dlprefiles' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t\t ' Text '# Preload the old-style object.\n' Comment.Single '\t\t ' Text 'dlprefiles' Name.Variable '=' Operator '"' Literal.String.Double '$dlprefiles' Name.Variable ' ' Literal.String.Double '$pic_object' Name.Variable '"' Literal.String.Double '\n\t\t ' Text 'prev' Name.Variable '=' Operator '\n\t\t ' Text 'fi' Keyword '\n\n\t\t ' Text '# A PIC object.\n' Comment.Single '\t\t ' Text 'libobjs' Name.Variable '=' Operator '"' Literal.String.Double '$libobjs' Name.Variable ' ' Literal.String.Double '$pic_object' Name.Variable '"' Literal.String.Double '\n\t\t ' Text 'arg' Name.Variable '=' Operator '"' Literal.String.Double '$pic_object' Name.Variable '"' Literal.String.Double '\n\t\t' Text 'fi' Keyword '\n\n\t\t' Text '# Non-PIC object.\n' Comment.Single '\t\t' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$non_pic_object' Name.Variable '"' Literal.String.Double ' ' Text '!' Text '=' Operator ' ' Text 'none' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t\t ' Text '# Prepend the subdirectory the object is found in.\n' Comment.Single '\t\t ' Text 'non_pic_object' Name.Variable '=' Operator '"' Literal.String.Double '$xdir' Name.Variable '$non_pic_object' Name.Variable '"' Literal.String.Double '\n\n\t\t ' Text '# A standard non-PIC object\n' Comment.Single '\t\t ' Text 'non_pic_objects' Name.Variable '=' Operator '"' Literal.String.Double '$non_pic_objects' Name.Variable ' ' Literal.String.Double '$non_pic_object' Name.Variable '"' Literal.String.Double '\n\t\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '-z' Text ' ' Text '"' Literal.String.Double '$pic_object' Name.Variable '"' Literal.String.Double ' ' Text '||' Operator ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$pic_object' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'none' Text ' ' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t\t ' Text 'arg' Name.Variable '=' Operator '"' Literal.String.Double '$non_pic_object' Name.Variable '"' Literal.String.Double '\n\t\t ' Text 'fi' Keyword '\n\t\t' Text 'else' Keyword '\n\t\t ' Text '# If the PIC object exists, use it instead.\n' Comment.Single '\t\t ' Text '# $xdir was prepended to $pic_object above.\n' Comment.Single '\t\t ' Text 'non_pic_object' Name.Variable '=' Operator '"' Literal.String.Double '$pic_object' Name.Variable '"' Literal.String.Double '\n\t\t ' Text 'non_pic_objects' Name.Variable '=' Operator '"' Literal.String.Double '$non_pic_objects' Name.Variable ' ' Literal.String.Double '$non_pic_object' Name.Variable '"' Literal.String.Double '\n\t\t' Text 'fi' Keyword '\n\t ' Text 'else' Keyword '\n\t\t' Text '# Only an error if not doing a dry-run.\n' Comment.Single '\t\t' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '-z' Text ' ' Text '"' Literal.String.Double '$run' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n\t\t ' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double '$modename' Name.Variable ': \\`' Literal.String.Double '$arg' Name.Variable "' is not a valid libtool object" Literal.String.Double '"' Literal.String.Double ' ' Text '1' Literal.Number '>' Text '&' Punctuation '2' Literal.Number '\n\t\t ' Text 'exit' Name.Builtin ' ' Text '$EXIT_FAILURE' Name.Variable '\n\t\t' Text 'else' Keyword '\n\t\t ' Text '# Dry-run case.\n' Comment.Single '\n\t\t ' Text '# Extract subdirectory from the argument.\n' Comment.Single '\t\t ' Text 'xdir' Name.Variable '=' Operator '`' Literal.String.Backtick '$echo' Name.Variable ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double ' ' Text '|' Punctuation ' ' Text '$Xsed' Name.Variable ' ' Text '-e' Text ' ' Text "'s%/[^/]*$%%'" Literal.String.Single '`' Literal.String.Backtick '\n\t\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$xdir' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n\t\t ' Text 'xdir' Name.Variable '=' Operator '\n\t\t ' Text 'else' Keyword '\n\t\t ' Text 'xdir' Name.Variable '=' Operator '"' Literal.String.Double '$xdir' Name.Variable '/' Literal.String.Double '"' Literal.String.Double '\n\t\t ' Text 'fi' Keyword '\n\n\t\t ' Text 'pic_object' Name.Variable '=' Operator '`' Literal.String.Backtick '$echo' Name.Variable ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '${' Literal.String.Interpol 'xdir' Name.Variable '}' Literal.String.Interpol '${' Literal.String.Interpol 'objdir' Name.Variable '}' Literal.String.Interpol '/' Literal.String.Double '${' Literal.String.Interpol 'arg' Name.Variable '}' Literal.String.Interpol '"' Literal.String.Double ' ' Text '|' Punctuation ' ' Text '$Xsed' Name.Variable ' ' Text '-e' Text ' ' Text '"' Literal.String.Double '$lo2o' Name.Variable '"' Literal.String.Double '`' Literal.String.Backtick '\n\t\t ' Text 'non_pic_object' Name.Variable '=' Operator '`' Literal.String.Backtick '$echo' Name.Variable ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '${' Literal.String.Interpol 'xdir' Name.Variable '}' Literal.String.Interpol '${' Literal.String.Interpol 'arg' Name.Variable '}' Literal.String.Interpol '"' Literal.String.Double ' ' Text '|' Punctuation ' ' Text '$Xsed' Name.Variable ' ' Text '-e' Text ' ' Text '"' Literal.String.Double '$lo2o' Name.Variable '"' Literal.String.Double '`' Literal.String.Backtick '\n\t\t ' Text 'libobjs' Name.Variable '=' Operator '"' Literal.String.Double '$libobjs' Name.Variable ' ' Literal.String.Double '$pic_object' Name.Variable '"' Literal.String.Double '\n\t\t ' Text 'non_pic_objects' Name.Variable '=' Operator '"' Literal.String.Double '$non_pic_objects' Name.Variable ' ' Literal.String.Double '$non_pic_object' Name.Variable '"' Literal.String.Double '\n\t\t' Text 'fi' Keyword '\n\t ' Text 'fi' Keyword '\n\t ' Text 'done' Keyword '\n\t ' Text 'else' Keyword '\n\t ' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double '$modename' Name.Variable ': link input file \\`' Literal.String.Double '$save_arg' Name.Variable "' does not exist" Literal.String.Double '"' Literal.String.Double '\n\t ' Text 'exit' Name.Builtin ' ' Text '$EXIT_FAILURE' Name.Variable '\n\t ' Text 'fi' Keyword '\n\t ' Text 'arg' Name.Variable '=' Operator '$save_arg' Name.Variable '\n\t ' Text 'prev' Name.Variable '=' Operator '\n\t ' Text 'continue' Keyword '\n\t ' Text ';' Punctuation ';' Punctuation '\n\t' Text 'rpath' Text ' ' Text '|' Punctuation ' ' Text 'xrpath' Text ')' Operator '\n\t ' Text '# We need an absolute path.\n' Comment.Single '\t ' Text 'case' Keyword ' ' Text '$arg' Name.Variable ' ' Text 'in' Keyword '\n\t ' Text '[' Operator '\\\\' Literal.String.Escape '/' Text ']' Operator '*' Text ' ' Text '|' Punctuation ' ' Text '[' Operator 'A-Za-z' Text ']' Operator ':' Text '[' Operator '\\\\' Literal.String.Escape '/' Text ']' Operator '*' Text ')' Operator ' ' Text ';' Punctuation ';' Punctuation '\n\t ' Text '*' Text ')' Operator '\n\t ' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double '$modename' Name.Variable ': only absolute run-paths are allowed' Literal.String.Double '"' Literal.String.Double ' ' Text '1' Literal.Number '>' Text '&' Punctuation '2' Literal.Number '\n\t ' Text 'exit' Name.Builtin ' ' Text '$EXIT_FAILURE' Name.Variable '\n\t ' Text ';' Punctuation ';' Punctuation '\n\t ' Text 'esac' Keyword '\n\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$prev' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'rpath' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text 'case' Keyword ' ' Text '"' Literal.String.Double '$rpath' Name.Variable ' ' Literal.String.Double '"' Literal.String.Double ' ' Text 'in' Keyword '\n\t ' Text '*' Text '"' Literal.String.Double ' ' Literal.String.Double '$arg' Name.Variable ' ' Literal.String.Double '"' Literal.String.Double '*' Text ')' Operator ' ' Text ';' Punctuation ';' Punctuation '\n\t ' Text '*' Text ')' Operator ' ' Text 'rpath' Name.Variable '=' Operator '"' Literal.String.Double '$rpath' Name.Variable ' ' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double ' ' Text ';' Punctuation ';' Punctuation '\n\t ' Text 'esac' Keyword '\n\t ' Text 'else' Keyword '\n\t ' Text 'case' Keyword ' ' Text '"' Literal.String.Double '$xrpath' Name.Variable ' ' Literal.String.Double '"' Literal.String.Double ' ' Text 'in' Keyword '\n\t ' Text '*' Text '"' Literal.String.Double ' ' Literal.String.Double '$arg' Name.Variable ' ' Literal.String.Double '"' Literal.String.Double '*' Text ')' Operator ' ' Text ';' Punctuation ';' Punctuation '\n\t ' Text '*' Text ')' Operator ' ' Text 'xrpath' Name.Variable '=' Operator '"' Literal.String.Double '$xrpath' Name.Variable ' ' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double ' ' Text ';' Punctuation ';' Punctuation '\n\t ' Text 'esac' Keyword '\n\t ' Text 'fi' Keyword '\n\t ' Text 'prev' Name.Variable '=' Operator '\n\t ' Text 'continue' Keyword '\n\t ' Text ';' Punctuation ';' Punctuation '\n\t' Text 'xcompiler' Text ')' Operator '\n\t ' Text 'compiler_flags' Name.Variable '=' Operator '"' Literal.String.Double '$compiler_flags' Name.Variable ' ' Literal.String.Double '$qarg' Name.Variable '"' Literal.String.Double '\n\t ' Text 'prev' Name.Variable '=' Operator '\n\t ' Text 'compile_command' Name.Variable '=' Operator '"' Literal.String.Double '$compile_command' Name.Variable ' ' Literal.String.Double '$qarg' Name.Variable '"' Literal.String.Double '\n\t ' Text 'finalize_command' Name.Variable '=' Operator '"' Literal.String.Double '$finalize_command' Name.Variable ' ' Literal.String.Double '$qarg' Name.Variable '"' Literal.String.Double '\n\t ' Text 'continue' Keyword '\n\t ' Text ';' Punctuation ';' Punctuation '\n\t' Text 'xlinker' Text ')' Operator '\n\t ' Text 'linker_flags' Name.Variable '=' Operator '"' Literal.String.Double '$linker_flags' Name.Variable ' ' Literal.String.Double '$qarg' Name.Variable '"' Literal.String.Double '\n\t ' Text 'compiler_flags' Name.Variable '=' Operator '"' Literal.String.Double '$compiler_flags' Name.Variable ' ' Literal.String.Double '$wl' Name.Variable '$qarg' Name.Variable '"' Literal.String.Double '\n\t ' Text 'prev' Name.Variable '=' Operator '\n\t ' Text 'compile_command' Name.Variable '=' Operator '"' Literal.String.Double '$compile_command' Name.Variable ' ' Literal.String.Double '$wl' Name.Variable '$qarg' Name.Variable '"' Literal.String.Double '\n\t ' Text 'finalize_command' Name.Variable '=' Operator '"' Literal.String.Double '$finalize_command' Name.Variable ' ' Literal.String.Double '$wl' Name.Variable '$qarg' Name.Variable '"' Literal.String.Double '\n\t ' Text 'continue' Keyword '\n\t ' Text ';' Punctuation ';' Punctuation '\n\t' Text 'xcclinker' Text ')' Operator '\n\t ' Text 'linker_flags' Name.Variable '=' Operator '"' Literal.String.Double '$linker_flags' Name.Variable ' ' Literal.String.Double '$qarg' Name.Variable '"' Literal.String.Double '\n\t ' Text 'compiler_flags' Name.Variable '=' Operator '"' Literal.String.Double '$compiler_flags' Name.Variable ' ' Literal.String.Double '$qarg' Name.Variable '"' Literal.String.Double '\n\t ' Text 'prev' Name.Variable '=' Operator '\n\t ' Text 'compile_command' Name.Variable '=' Operator '"' Literal.String.Double '$compile_command' Name.Variable ' ' Literal.String.Double '$qarg' Name.Variable '"' Literal.String.Double '\n\t ' Text 'finalize_command' Name.Variable '=' Operator '"' Literal.String.Double '$finalize_command' Name.Variable ' ' Literal.String.Double '$qarg' Name.Variable '"' Literal.String.Double '\n\t ' Text 'continue' Keyword '\n\t ' Text ';' Punctuation ';' Punctuation '\n\t' Text 'shrext' Text ')' Operator '\n \t ' Text 'shrext_cmds' Name.Variable '=' Operator '"' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double '\n\t ' Text 'prev' Name.Variable '=' Operator '\n\t ' Text 'continue' Keyword '\n\t ' Text ';' Punctuation ';' Punctuation '\n\t' Text 'darwin_framework' Text '|' Punctuation 'darwin_framework_skip' Text ')' Operator '\n\t ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$prev' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text '"darwin_framework"' Literal.String.Double ' ' Text '&&' Operator ' ' Text 'compiler_flags' Name.Variable '=' Operator '"' Literal.String.Double '$compiler_flags' Name.Variable ' ' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double '\n\t ' Text 'compile_command' Name.Variable '=' Operator '"' Literal.String.Double '$compile_command' Name.Variable ' ' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double '\n\t ' Text 'finalize_command' Name.Variable '=' Operator '"' Literal.String.Double '$finalize_command' Name.Variable ' ' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double '\n\t ' Text 'prev' Name.Variable '=' Operator '\n\t ' Text 'continue' Keyword '\n\t ' Text ';' Punctuation ';' Punctuation '\n\t' Text '*' Text ')' Operator '\n\t ' Text 'eval' Name.Builtin ' ' Text '"' Literal.String.Double '$prev' Name.Variable '=\\"\\$arg\\"' Literal.String.Double '"' Literal.String.Double '\n\t ' Text 'prev' Name.Variable '=' Operator '\n\t ' Text 'continue' Keyword '\n\t ' Text ';' Punctuation ';' Punctuation '\n\t' Text 'esac' Keyword '\n ' Text 'fi' Keyword ' ' Text '# test -n "$prev"\n' Comment.Single '\n ' Text 'prevarg' Name.Variable '=' Operator '"' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double '\n\n ' Text 'case' Keyword ' ' Text '$arg' Name.Variable ' ' Text 'in' Keyword '\n ' Text '-all-static' Text ')' Operator '\n\t' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '-n' Text ' ' Text '"' Literal.String.Double '$link_static_flag' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text 'compile_command' Name.Variable '=' Operator '"' Literal.String.Double '$compile_command' Name.Variable ' ' Literal.String.Double '$link_static_flag' Name.Variable '"' Literal.String.Double '\n\t ' Text 'finalize_command' Name.Variable '=' Operator '"' Literal.String.Double '$finalize_command' Name.Variable ' ' Literal.String.Double '$link_static_flag' Name.Variable '"' Literal.String.Double '\n\t' Text 'fi' Keyword '\n\t' Text 'continue' Keyword '\n\t' Text ';' Punctuation ';' Punctuation '\n\n ' Text '-allow-undefined' Text ')' Operator '\n\t' Text '# FIXME: remove this flag sometime in the future.\n' Comment.Single '\t' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double '$modename' Name.Variable ": \\`-allow-undefined' is deprecated because it is the default" Literal.String.Double '"' Literal.String.Double ' ' Text '1' Literal.Number '>' Text '&' Punctuation '2' Literal.Number '\n\t' Text 'continue' Keyword '\n\t' Text ';' Punctuation ';' Punctuation '\n\n ' Text '-avoid-version' Text ')' Operator '\n\t' Text 'avoid_version' Name.Variable '=' Operator 'yes' Text '\n\t' Text 'continue' Keyword '\n\t' Text ';' Punctuation ';' Punctuation '\n\n ' Text '-dlopen' Text ')' Operator '\n\t' Text 'prev' Name.Variable '=' Operator 'dlfiles' Text '\n\t' Text 'continue' Keyword '\n\t' Text ';' Punctuation ';' Punctuation '\n\n ' Text '-dlpreopen' Text ')' Operator '\n\t' Text 'prev' Name.Variable '=' Operator 'dlprefiles' Text '\n\t' Text 'continue' Keyword '\n\t' Text ';' Punctuation ';' Punctuation '\n\n ' Text '-export-dynamic' Text ')' Operator '\n\t' Text 'export_dynamic' Name.Variable '=' Operator 'yes' Text '\n\t' Text 'continue' Keyword '\n\t' Text ';' Punctuation ';' Punctuation '\n\n ' Text '-export-symbols' Text ' ' Text '|' Punctuation ' ' Text '-export-symbols-regex' Text ')' Operator '\n\t' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '-n' Text ' ' Text '"' Literal.String.Double '$export_symbols' Name.Variable '"' Literal.String.Double ' ' Text '||' Operator ' ' Text 'test' Name.Builtin ' ' Text '-n' Text ' ' Text '"' Literal.String.Double '$export_symbols_regex' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double '$modename' Name.Variable ': more than one -exported-symbols argument is not allowed' Literal.String.Double '"' Literal.String.Double '\n\t ' Text 'exit' Name.Builtin ' ' Text '$EXIT_FAILURE' Name.Variable '\n\t' Text 'fi' Keyword '\n\t' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text '"X-export-symbols"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text 'prev' Name.Variable '=' Operator 'expsyms' Text '\n\t' Text 'else' Keyword '\n\t ' Text 'prev' Name.Variable '=' Operator 'expsyms_regex' Text '\n\t' Text 'fi' Keyword '\n\t' Text 'continue' Keyword '\n\t' Text ';' Punctuation ';' Punctuation '\n\n ' Text '-framework' Text '|' Punctuation '-arch' Text '|' Punctuation '-isysroot' Text ')' Operator '\n\t' Text 'case' Keyword ' ' Text '"' Literal.String.Double ' ' Literal.String.Double '$CC' Name.Variable ' ' Literal.String.Double '"' Literal.String.Double ' ' Text 'in' Keyword '\n\t ' Text '*' Text '"' Literal.String.Double ' ' Literal.String.Double '${' Literal.String.Interpol 'arg' Name.Variable '}' Literal.String.Interpol ' ' Literal.String.Double '${' Literal.String.Interpol '1' Name.Variable '}' Literal.String.Interpol ' ' Literal.String.Double '"' Literal.String.Double '*' Text ' ' Text '|' Punctuation ' ' Text '*' Text '"' Literal.String.Double ' ' Literal.String.Double '${' Literal.String.Interpol 'arg' Name.Variable '}' Literal.String.Interpol '\t' Literal.String.Double '${' Literal.String.Interpol '1' Name.Variable '}' Literal.String.Interpol ' ' Literal.String.Double '"' Literal.String.Double '*' Text ')' Operator ' \n\t\t' Text 'prev' Name.Variable '=' Operator 'darwin_framework_skip' Text ' ' Text ';' Punctuation ';' Punctuation '\n\t ' Text '*' Text ')' Operator ' ' Text 'compiler_flags' Name.Variable '=' Operator '"' Literal.String.Double '$compiler_flags' Name.Variable ' ' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double '\n\t ' Text 'prev' Name.Variable '=' Operator 'darwin_framework' Text ' ' Text ';' Punctuation ';' Punctuation '\n\t' Text 'esac' Keyword '\n\t' Text 'compile_command' Name.Variable '=' Operator '"' Literal.String.Double '$compile_command' Name.Variable ' ' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double '\n\t' Text 'finalize_command' Name.Variable '=' Operator '"' Literal.String.Double '$finalize_command' Name.Variable ' ' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double '\n\t' Text 'continue' Keyword '\n\t' Text ';' Punctuation ';' Punctuation '\n\n ' Text '-inst-prefix-dir' Text ')' Operator '\n\t' Text 'prev' Name.Variable '=' Operator 'inst_prefix' Text '\n\t' Text 'continue' Keyword '\n\t' Text ';' Punctuation ';' Punctuation '\n\n ' Text '# The native IRIX linker understands -LANG:*, -LIST:* and -LNO:*\n' Comment.Single ' ' Text '# so, if we see these flags be careful not to treat them like -L\n' Comment.Single ' ' Text '-L' Text '[' Operator 'A-Z' Text ']' Operator '[' Operator 'A-Z' Text ']' Operator '*:*' Text ')' Operator '\n\t' Text 'case' Keyword ' ' Text '$with_gcc' Name.Variable '/' Text '$host' Name.Variable ' ' Text 'in' Keyword '\n\t' Text 'no/*-*-irix*' Text ' ' Text '|' Punctuation ' ' Text '/*-*-irix*' Text ')' Operator '\n\t ' Text 'compile_command' Name.Variable '=' Operator '"' Literal.String.Double '$compile_command' Name.Variable ' ' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double '\n\t ' Text 'finalize_command' Name.Variable '=' Operator '"' Literal.String.Double '$finalize_command' Name.Variable ' ' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double '\n\t ' Text ';' Punctuation ';' Punctuation '\n\t' Text 'esac' Keyword '\n\t' Text 'continue' Keyword '\n\t' Text ';' Punctuation ';' Punctuation '\n\n ' Text '-L*' Text ')' Operator '\n\t' Text 'dir' Name.Variable '=' Operator '`' Literal.String.Backtick '$echo' Name.Variable ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double ' ' Text '|' Punctuation ' ' Text '$Xsed' Name.Variable ' ' Text '-e' Text ' ' Text "'s/^-L//'" Literal.String.Single '`' Literal.String.Backtick '\n\t' Text '# We need an absolute path.\n' Comment.Single '\t' Text 'case' Keyword ' ' Text '$dir' Name.Variable ' ' Text 'in' Keyword '\n\t' Text '[' Operator '\\\\' Literal.String.Escape '/' Text ']' Operator '*' Text ' ' Text '|' Punctuation ' ' Text '[' Operator 'A-Za-z' Text ']' Operator ':' Text '[' Operator '\\\\' Literal.String.Escape '/' Text ']' Operator '*' Text ')' Operator ' ' Text ';' Punctuation ';' Punctuation '\n\t' Text '*' Text ')' Operator '\n\t ' Text 'absdir' Name.Variable '=' Operator '`' Literal.String.Backtick 'cd' Name.Builtin ' ' Text '"' Literal.String.Double '$dir' Name.Variable '"' Literal.String.Double ' ' Text '&&' Operator ' ' Text 'pwd' Name.Builtin '`' Literal.String.Backtick '\n\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '-z' Text ' ' Text '"' Literal.String.Double '$absdir' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double '$modename' Name.Variable ': cannot determine absolute directory name of \\`' Literal.String.Double '$dir' Name.Variable "'" Literal.String.Double '"' Literal.String.Double ' ' Text '1' Literal.Number '>' Text '&' Punctuation '2' Literal.Number '\n\t ' Text 'absdir' Name.Variable '=' Operator '"' Literal.String.Double '$dir' Name.Variable '"' Literal.String.Double '\n\t ' Text 'notinst_path' Name.Variable '=' Operator '"' Literal.String.Double '$notinst_path' Name.Variable ' ' Literal.String.Double '$dir' Name.Variable '"' Literal.String.Double '\n\t ' Text 'fi' Keyword '\n\t ' Text 'dir' Name.Variable '=' Operator '"' Literal.String.Double '$absdir' Name.Variable '"' Literal.String.Double '\n\t ' Text ';' Punctuation ';' Punctuation '\n\t' Text 'esac' Keyword '\n\t' Text 'case' Keyword ' ' Text '"' Literal.String.Double '$deplibs' Name.Variable ' ' Literal.String.Double '"' Literal.String.Double ' ' Text 'in' Keyword '\n\t' Text '*' Text '"' Literal.String.Double ' -L' Literal.String.Double '$dir' Name.Variable ' ' Literal.String.Double '"' Literal.String.Double '*' Text ')' Operator ' ' Text ';' Punctuation ';' Punctuation '\n\t' Text '*' Text ')' Operator '\n\t ' Text 'deplibs' Name.Variable '=' Operator '"' Literal.String.Double '$deplibs' Name.Variable ' -L' Literal.String.Double '$dir' Name.Variable '"' Literal.String.Double '\n\t ' Text 'lib_search_path' Name.Variable '=' Operator '"' Literal.String.Double '$lib_search_path' Name.Variable ' ' Literal.String.Double '$dir' Name.Variable '"' Literal.String.Double '\n\t ' Text ';' Punctuation ';' Punctuation '\n\t' Text 'esac' Keyword '\n\t' Text 'case' Keyword ' ' Text '$host' Name.Variable ' ' Text 'in' Keyword '\n\t' Text '*-*-cygwin*' Text ' ' Text '|' Punctuation ' ' Text '*-*-mingw*' Text ' ' Text '|' Punctuation ' ' Text '*-*-pw32*' Text ' ' Text '|' Punctuation ' ' Text '*-*-os2*' Text ')' Operator '\n\t ' Text 'testbindir' Name.Variable '=' Operator '`' Literal.String.Backtick '$echo' Name.Variable ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$dir' Name.Variable '"' Literal.String.Double ' ' Text '|' Punctuation ' ' Text '$Xsed' Name.Variable ' ' Text '-e' Text ' ' Text "'s*/lib$*/bin*'" Literal.String.Single '`' Literal.String.Backtick '\n\t ' Text 'case' Keyword ' ' Text ':' Text '$dllsearchpath' Name.Variable ':' Text ' ' Text 'in' Keyword '\n\t ' Text '*' Text '"' Literal.String.Double ':' Literal.String.Double '$dir' Name.Variable ':' Literal.String.Double '"' Literal.String.Double '*' Text ')' Operator ' ' Text ';' Punctuation ';' Punctuation '\n\t ' Text '*' Text ')' Operator ' ' Text 'dllsearchpath' Name.Variable '=' Operator '"' Literal.String.Double '$dllsearchpath' Name.Variable ':' Literal.String.Double '$dir' Name.Variable '"' Literal.String.Double ';' Punctuation ';' Punctuation '\n\t ' Text 'esac' Keyword '\n\t ' Text 'case' Keyword ' ' Text ':' Text '$dllsearchpath' Name.Variable ':' Text ' ' Text 'in' Keyword '\n\t ' Text '*' Text '"' Literal.String.Double ':' Literal.String.Double '$testbindir' Name.Variable ':' Literal.String.Double '"' Literal.String.Double '*' Text ')' Operator ' ' Text ';' Punctuation ';' Punctuation '\n\t ' Text '*' Text ')' Operator ' ' Text 'dllsearchpath' Name.Variable '=' Operator '"' Literal.String.Double '$dllsearchpath' Name.Variable ':' Literal.String.Double '$testbindir' Name.Variable '"' Literal.String.Double ';' Punctuation ';' Punctuation '\n\t ' Text 'esac' Keyword '\n\t ' Text ';' Punctuation ';' Punctuation '\n\t' Text 'esac' Keyword '\n\t' Text 'continue' Keyword '\n\t' Text ';' Punctuation ';' Punctuation '\n\n ' Text '-l*' Text ')' Operator '\n\t' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text '"X-lc"' Literal.String.Double ' ' Text '||' Operator ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text '"X-lm"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text 'case' Keyword ' ' Text '$host' Name.Variable ' ' Text 'in' Keyword '\n\t ' Text '*-*-cygwin*' Text ' ' Text '|' Punctuation ' ' Text '*-*-mingw*' Text ' ' Text '|' Punctuation ' ' Text '*-*-pw32*' Text ' ' Text '|' Punctuation ' ' Text '*-*-beos*' Text ')' Operator '\n\t ' Text "# These systems don't actually have a C or math library (as such)\n" Comment.Single '\t ' Text 'continue' Keyword '\n\t ' Text ';' Punctuation ';' Punctuation '\n\t ' Text '*-*-os2*' Text ')' Operator '\n\t ' Text "# These systems don't actually have a C library (as such)\n" Comment.Single '\t ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text '"X-lc"' Literal.String.Double ' ' Text '&&' Operator ' ' Text 'continue' Keyword '\n\t ' Text ';' Punctuation ';' Punctuation '\n\t ' Text '*-*-openbsd*' Text ' ' Text '|' Punctuation ' ' Text '*-*-freebsd*' Text ' ' Text '|' Punctuation ' ' Text '*-*-dragonfly*' Text ')' Operator '\n\t ' Text '# Do not include libc due to us having libc/libc_r.\n' Comment.Single '\t ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text '"X-lc"' Literal.String.Double ' ' Text '&&' Operator ' ' Text 'continue' Keyword '\n\t ' Text ';' Punctuation ';' Punctuation '\n\t ' Text '*-*-rhapsody*' Text ' ' Text '|' Punctuation ' ' Text '*-*-darwin1.' Text '[' Operator '012' Literal.Number ']' Operator ')' Operator '\n\t ' Text '# Rhapsody C and math libraries are in the System framework\n' Comment.Single '\t ' Text 'deplibs' Name.Variable '=' Operator '"' Literal.String.Double '$deplibs' Name.Variable ' -framework System' Literal.String.Double '"' Literal.String.Double '\n\t ' Text 'continue' Keyword '\n\t ' Text ';' Punctuation ';' Punctuation '\n\t ' Text '*-*-sco3.2v5*' Text ' ' Text '|' Punctuation ' ' Text '*-*-sco5v6*' Text ')' Operator '\n\t ' Text '# Causes problems with __ctype\n' Comment.Single '\t ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text '"X-lc"' Literal.String.Double ' ' Text '&&' Operator ' ' Text 'continue' Keyword '\n\t ' Text ';' Punctuation ';' Punctuation '\n\t ' Text '*-*-sysv4.2uw2*' Text ' ' Text '|' Punctuation ' ' Text '*-*-sysv5*' Text ' ' Text '|' Punctuation ' ' Text '*-*-unixware*' Text ' ' Text '|' Punctuation ' ' Text '*-*-OpenUNIX*' Text ')' Operator '\n\t ' Text '# Compiler inserts libc in the correct place for threads to work\n' Comment.Single '\t ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text '"X-lc"' Literal.String.Double ' ' Text '&&' Operator ' ' Text 'continue' Keyword '\n\t ' Text ';' Punctuation ';' Punctuation '\n\t ' Text 'esac' Keyword '\n\t' Text 'elif' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text '"X-lc_r"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text 'case' Keyword ' ' Text '$host' Name.Variable ' ' Text 'in' Keyword '\n\t ' Text '*-*-openbsd*' Text ' ' Text '|' Punctuation ' ' Text '*-*-freebsd*' Text ' ' Text '|' Punctuation ' ' Text '*-*-dragonfly*' Text ')' Operator '\n\t ' Text '# Do not include libc_r directly, use -pthread flag.\n' Comment.Single '\t ' Text 'continue' Keyword '\n\t ' Text ';' Punctuation ';' Punctuation '\n\t ' Text 'esac' Keyword '\n\t' Text 'fi' Keyword '\n\t' Text 'deplibs' Name.Variable '=' Operator '"' Literal.String.Double '$deplibs' Name.Variable ' ' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double '\n\t' Text 'continue' Keyword '\n\t' Text ';' Punctuation ';' Punctuation '\n\n ' Text '# Tru64 UNIX uses -model [arg] to determine the layout of C++\n' Comment.Single ' ' Text '# classes, name mangling, and exception handling.\n' Comment.Single ' ' Text '-model' Text ')' Operator '\n\t' Text 'compile_command' Name.Variable '=' Operator '"' Literal.String.Double '$compile_command' Name.Variable ' ' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double '\n\t' Text 'compiler_flags' Name.Variable '=' Operator '"' Literal.String.Double '$compiler_flags' Name.Variable ' ' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double '\n\t' Text 'finalize_command' Name.Variable '=' Operator '"' Literal.String.Double '$finalize_command' Name.Variable ' ' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double '\n\t' Text 'prev' Name.Variable '=' Operator 'xcompiler' Text '\n\t' Text 'continue' Keyword '\n\t' Text ';' Punctuation ';' Punctuation '\n\n ' Text '-mt' Text '|' Punctuation '-mthreads' Text '|' Punctuation '-kthread' Text '|' Punctuation '-Kthread' Text '|' Punctuation '-pthread' Text '|' Punctuation '-pthreads' Text '|' Punctuation '--thread-safe' Text ')' Operator '\n\t' Text 'compiler_flags' Name.Variable '=' Operator '"' Literal.String.Double '$compiler_flags' Name.Variable ' ' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double '\n\t' Text 'compile_command' Name.Variable '=' Operator '"' Literal.String.Double '$compile_command' Name.Variable ' ' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double '\n\t' Text 'finalize_command' Name.Variable '=' Operator '"' Literal.String.Double '$finalize_command' Name.Variable ' ' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double '\n\t' Text 'continue' Keyword '\n\t' Text ';' Punctuation ';' Punctuation '\n\n ' Text '-module' Text ')' Operator '\n\t' Text 'module' Name.Variable '=' Operator 'yes' Text '\n\t' Text 'continue' Keyword '\n\t' Text ';' Punctuation ';' Punctuation '\n\n ' Text '# -64, -mips[0-9] enable 64-bit mode on the SGI compiler\n' Comment.Single ' ' Text '# -r[0-9][0-9]* specifies the processor on the SGI compiler\n' Comment.Single ' ' Text '# -xarch=*, -xtarget=* enable 64-bit mode on the Sun compiler\n' Comment.Single ' ' Text '# +DA*, +DD* enable 64-bit mode on the HP compiler\n' Comment.Single ' ' Text '# -q* pass through compiler args for the IBM compiler\n' Comment.Single ' ' Text '# -m* pass through architecture-specific compiler args for GCC\n' Comment.Single ' ' Text '# -m*, -t[45]*, -txscale* pass through architecture-specific\n' Comment.Single ' ' Text '# compiler args for GCC\n' Comment.Single ' ' Text '# -pg pass through profiling flag for GCC\n' Comment.Single ' ' Text '# @file GCC response files\n' Comment.Single ' ' Text '-64' Text '|' Punctuation '-mips' Text '[' Operator '0' Literal.Number '-9' Text ']' Operator '|' Punctuation '-r' Text '[' Operator '0' Literal.Number '-9' Text ']' Operator '[' Operator '0' Literal.Number '-9' Text ']' Operator '*' Text '|' Punctuation '-xarch' Text '=' Operator '*' Text '|' Punctuation '-xtarget' Text '=' Operator '*' Text '|' Punctuation '+DA*' Text '|' Punctuation '+DD*' Text '|' Punctuation '-q*' Text '|' Punctuation '-m*' Text '|' Punctuation '-pg' Text '|' Punctuation ' ' Text '\\\n' Literal.String.Escape ' ' Text '-t' Text '[' Operator '45' Literal.Number ']' Operator '*' Text '|' Punctuation '-txscale*' Text '|' Punctuation '@*' Text ')' Operator '\n\n\t' Text '# Unknown arguments in both finalize_command and compile_command need\n' Comment.Single '\t' Text '# to be aesthetically quoted because they are evaled later.\n' Comment.Single '\t' Text 'arg' Name.Variable '=' Operator '`' Literal.String.Backtick '$echo' Name.Variable ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double ' ' Text '|' Punctuation ' ' Text '$Xsed' Name.Variable ' ' Text '-e' Text ' ' Text '"' Literal.String.Double '$sed_quote_subst' Name.Variable '"' Literal.String.Double '`' Literal.String.Backtick '\n\t' Text 'case' Keyword ' ' Text '$arg' Name.Variable ' ' Text 'in' Keyword '\n\t' Text '*' Text '[' Operator '\\[' Literal.String.Escape '\\~' Literal.String.Escape '\\#' Literal.String.Escape '\\^' Literal.String.Escape '\\&' Literal.String.Escape '\\*' Literal.String.Escape '\\(' Literal.String.Escape '\\)' Literal.String.Escape '\\{' Literal.String.Escape '\\}' Literal.String.Escape '\\|' Literal.String.Escape '\\;' Literal.String.Escape '\\<' Literal.String.Escape '\\>' Literal.String.Escape '\\?' Literal.String.Escape "\\'" Literal.String.Escape '\\ ' Literal.String.Escape '\\\t' Literal.String.Escape ']' Operator '*' Text '|' Punctuation '*' Text ']' Operator '*' Text '|' Punctuation '""' Literal.String.Double ')' Operator '\n\t ' Text 'arg' Name.Variable '=' Operator '"' Literal.String.Double '\\"' Literal.String.Double '$arg' Name.Variable '\\"' Literal.String.Double '"' Literal.String.Double '\n\t ' Text ';' Punctuation ';' Punctuation '\n\t' Text 'esac' Keyword '\n ' Text 'compile_command' Name.Variable '=' Operator '"' Literal.String.Double '$compile_command' Name.Variable ' ' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double '\n ' Text 'finalize_command' Name.Variable '=' Operator '"' Literal.String.Double '$finalize_command' Name.Variable ' ' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double '\n ' Text 'compiler_flags' Name.Variable '=' Operator '"' Literal.String.Double '$compiler_flags' Name.Variable ' ' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double '\n ' Text 'continue' Keyword '\n ' Text ';' Punctuation ';' Punctuation '\n\n ' Text '-shrext' Text ')' Operator '\n\t' Text 'prev' Name.Variable '=' Operator 'shrext' Text '\n\t' Text 'continue' Keyword '\n\t' Text ';' Punctuation ';' Punctuation '\n\n ' Text '-no-fast-install' Text ')' Operator '\n\t' Text 'fast_install' Name.Variable '=' Operator 'no' Text '\n\t' Text 'continue' Keyword '\n\t' Text ';' Punctuation ';' Punctuation '\n\n ' Text '-no-install' Text ')' Operator '\n\t' Text 'case' Keyword ' ' Text '$host' Name.Variable ' ' Text 'in' Keyword '\n\t' Text '*-*-cygwin*' Text ' ' Text '|' Punctuation ' ' Text '*-*-mingw*' Text ' ' Text '|' Punctuation ' ' Text '*-*-pw32*' Text ' ' Text '|' Punctuation ' ' Text '*-*-os2*' Text ')' Operator '\n\t ' Text '# The PATH hackery in wrapper scripts is required on Windows\n' Comment.Single '\t ' Text '# in order for the loader to find any dlls it needs.\n' Comment.Single '\t ' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double '$modename' Name.Variable ": warning: \\`-no-install' is ignored for " Literal.String.Double '$host' Name.Variable '"' Literal.String.Double ' ' Text '1' Literal.Number '>' Text '&' Punctuation '2' Literal.Number '\n\t ' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double '$modename' Name.Variable ": warning: assuming \\`-no-fast-install' instead" Literal.String.Double '"' Literal.String.Double ' ' Text '1' Literal.Number '>' Text '&' Punctuation '2' Literal.Number '\n\t ' Text 'fast_install' Name.Variable '=' Operator 'no' Text '\n\t ' Text ';' Punctuation ';' Punctuation '\n\t' Text '*' Text ')' Operator ' ' Text 'no_install' Name.Variable '=' Operator 'yes' Text ' ' Text ';' Punctuation ';' Punctuation '\n\t' Text 'esac' Keyword '\n\t' Text 'continue' Keyword '\n\t' Text ';' Punctuation ';' Punctuation '\n\n ' Text '-no-undefined' Text ')' Operator '\n\t' Text 'allow_undefined' Name.Variable '=' Operator 'no' Text '\n\t' Text 'continue' Keyword '\n\t' Text ';' Punctuation ';' Punctuation '\n\n ' Text '-objectlist' Text ')' Operator '\n\t' Text 'prev' Name.Variable '=' Operator 'objectlist' Text '\n\t' Text 'continue' Keyword '\n\t' Text ';' Punctuation ';' Punctuation '\n\n ' Text '-o' Text ')' Operator ' ' Text 'prev' Name.Variable '=' Operator 'output' Text ' ' Text ';' Punctuation ';' Punctuation '\n\n ' Text '-precious-files-regex' Text ')' Operator '\n\t' Text 'prev' Name.Variable '=' Operator 'precious_regex' Text '\n\t' Text 'continue' Keyword '\n\t' Text ';' Punctuation ';' Punctuation '\n\n ' Text '-release' Text ')' Operator '\n\t' Text 'prev' Name.Variable '=' Operator 'release' Text '\n\t' Text 'continue' Keyword '\n\t' Text ';' Punctuation ';' Punctuation '\n\n ' Text '-rpath' Text ')' Operator '\n\t' Text 'prev' Name.Variable '=' Operator 'rpath' Text '\n\t' Text 'continue' Keyword '\n\t' Text ';' Punctuation ';' Punctuation '\n\n ' Text '-R' Text ')' Operator '\n\t' Text 'prev' Name.Variable '=' Operator 'xrpath' Text '\n\t' Text 'continue' Keyword '\n\t' Text ';' Punctuation ';' Punctuation '\n\n ' Text '-R*' Text ')' Operator '\n\t' Text 'dir' Name.Variable '=' Operator '`' Literal.String.Backtick '$echo' Name.Variable ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double ' ' Text '|' Punctuation ' ' Text '$Xsed' Name.Variable ' ' Text '-e' Text ' ' Text "'s/^-R//'" Literal.String.Single '`' Literal.String.Backtick '\n\t' Text '# We need an absolute path.\n' Comment.Single '\t' Text 'case' Keyword ' ' Text '$dir' Name.Variable ' ' Text 'in' Keyword '\n\t' Text '[' Operator '\\\\' Literal.String.Escape '/' Text ']' Operator '*' Text ' ' Text '|' Punctuation ' ' Text '[' Operator 'A-Za-z' Text ']' Operator ':' Text '[' Operator '\\\\' Literal.String.Escape '/' Text ']' Operator '*' Text ')' Operator ' ' Text ';' Punctuation ';' Punctuation '\n\t' Text '*' Text ')' Operator '\n\t ' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double '$modename' Name.Variable ': only absolute run-paths are allowed' Literal.String.Double '"' Literal.String.Double ' ' Text '1' Literal.Number '>' Text '&' Punctuation '2' Literal.Number '\n\t ' Text 'exit' Name.Builtin ' ' Text '$EXIT_FAILURE' Name.Variable '\n\t ' Text ';' Punctuation ';' Punctuation '\n\t' Text 'esac' Keyword '\n\t' Text 'case' Keyword ' ' Text '"' Literal.String.Double '$xrpath' Name.Variable ' ' Literal.String.Double '"' Literal.String.Double ' ' Text 'in' Keyword '\n\t' Text '*' Text '"' Literal.String.Double ' ' Literal.String.Double '$dir' Name.Variable ' ' Literal.String.Double '"' Literal.String.Double '*' Text ')' Operator ' ' Text ';' Punctuation ';' Punctuation '\n\t' Text '*' Text ')' Operator ' ' Text 'xrpath' Name.Variable '=' Operator '"' Literal.String.Double '$xrpath' Name.Variable ' ' Literal.String.Double '$dir' Name.Variable '"' Literal.String.Double ' ' Text ';' Punctuation ';' Punctuation '\n\t' Text 'esac' Keyword '\n\t' Text 'continue' Keyword '\n\t' Text ';' Punctuation ';' Punctuation '\n\n ' Text '-static' Text ')' Operator '\n\t' Text '# The effects of -static are defined in a previous loop.\n' Comment.Single '\t' Text '# We used to do the same as -all-static on platforms that\n' Comment.Single '\t' Text "# didn't have a PIC flag, but the assumption that the effects\n" Comment.Single '\t' Text '# would be equivalent was wrong. It would break on at least\n' Comment.Single '\t' Text '# Digital Unix and AIX.\n' Comment.Single '\t' Text 'continue' Keyword '\n\t' Text ';' Punctuation ';' Punctuation '\n\n ' Text '-thread-safe' Text ')' Operator '\n\t' Text 'thread_safe' Name.Variable '=' Operator 'yes' Text '\n\t' Text 'continue' Keyword '\n\t' Text ';' Punctuation ';' Punctuation '\n\n ' Text '-version-info' Text ')' Operator '\n\t' Text 'prev' Name.Variable '=' Operator 'vinfo' Text '\n\t' Text 'continue' Keyword '\n\t' Text ';' Punctuation ';' Punctuation '\n ' Text '-version-number' Text ')' Operator '\n\t' Text 'prev' Name.Variable '=' Operator 'vinfo' Text '\n\t' Text 'vinfo_number' Name.Variable '=' Operator 'yes' Text '\n\t' Text 'continue' Keyword '\n\t' Text ';' Punctuation ';' Punctuation '\n\n ' Text '-Wc,*' Text ')' Operator '\n\t' Text 'args' Name.Variable '=' Operator '`' Literal.String.Backtick '$echo' Name.Variable ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double ' ' Text '|' Punctuation ' ' Text '$Xsed' Name.Variable ' ' Text '-e' Text ' ' Text '"' Literal.String.Double '$sed_quote_subst' Name.Variable '"' Literal.String.Double ' ' Text '-e' Text ' ' Text "'s/^-Wc,//'" Literal.String.Single '`' Literal.String.Backtick '\n\t' Text 'arg' Name.Variable '=' Operator '\n\t' Text 'save_ifs' Name.Variable '=' Operator '"' Literal.String.Double '$IFS' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'IFS' Name.Variable '=' Operator "','" Literal.String.Single '\n\t' Text 'for' Keyword ' ' Text 'flag' Text ' ' Text 'in' Keyword ' ' Text '$args' Name.Variable ';' Punctuation ' ' Text 'do' Keyword '\n\t ' Text 'IFS' Name.Variable '=' Operator '"' Literal.String.Double '$save_ifs' Name.Variable '"' Literal.String.Double '\n\t ' Text 'case' Keyword ' ' Text '$flag' Name.Variable ' ' Text 'in' Keyword '\n\t ' Text '*' Text '[' Operator '\\[' Literal.String.Escape '\\~' Literal.String.Escape '\\#' Literal.String.Escape '\\^' Literal.String.Escape '\\&' Literal.String.Escape '\\*' Literal.String.Escape '\\(' Literal.String.Escape '\\)' Literal.String.Escape '\\{' Literal.String.Escape '\\}' Literal.String.Escape '\\|' Literal.String.Escape '\\;' Literal.String.Escape '\\<' Literal.String.Escape '\\>' Literal.String.Escape '\\?' Literal.String.Escape "\\'" Literal.String.Escape '\\ ' Literal.String.Escape '\\\t' Literal.String.Escape ']' Operator '*' Text '|' Punctuation '*' Text ']' Operator '*' Text '|' Punctuation '""' Literal.String.Double ')' Operator '\n\t ' Text 'flag' Name.Variable '=' Operator '"' Literal.String.Double '\\"' Literal.String.Double '$flag' Name.Variable '\\"' Literal.String.Double '"' Literal.String.Double '\n\t ' Text ';' Punctuation ';' Punctuation '\n\t ' Text 'esac' Keyword '\n\t ' Text 'arg' Name.Variable '=' Operator '"' Literal.String.Double '$arg' Name.Variable ' ' Literal.String.Double '$wl' Name.Variable '$flag' Name.Variable '"' Literal.String.Double '\n\t ' Text 'compiler_flags' Name.Variable '=' Operator '"' Literal.String.Double '$compiler_flags' Name.Variable ' ' Literal.String.Double '$flag' Name.Variable '"' Literal.String.Double '\n\t' Text 'done' Keyword '\n\t' Text 'IFS' Name.Variable '=' Operator '"' Literal.String.Double '$save_ifs' Name.Variable '"' Literal.String.Double '\n\t' Text 'arg' Name.Variable '=' Operator '`' Literal.String.Backtick '$echo' Name.Variable ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double ' ' Text '|' Punctuation ' ' Text '$Xsed' Name.Variable ' ' Text '-e' Text ' ' Text '"s/^ //"' Literal.String.Double '`' Literal.String.Backtick '\n\t' Text ';' Punctuation ';' Punctuation '\n\n ' Text '-Wl,*' Text ')' Operator '\n\t' Text 'args' Name.Variable '=' Operator '`' Literal.String.Backtick '$echo' Name.Variable ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double ' ' Text '|' Punctuation ' ' Text '$Xsed' Name.Variable ' ' Text '-e' Text ' ' Text '"' Literal.String.Double '$sed_quote_subst' Name.Variable '"' Literal.String.Double ' ' Text '-e' Text ' ' Text "'s/^-Wl,//'" Literal.String.Single '`' Literal.String.Backtick '\n\t' Text 'arg' Name.Variable '=' Operator '\n\t' Text 'save_ifs' Name.Variable '=' Operator '"' Literal.String.Double '$IFS' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'IFS' Name.Variable '=' Operator "','" Literal.String.Single '\n\t' Text 'for' Keyword ' ' Text 'flag' Text ' ' Text 'in' Keyword ' ' Text '$args' Name.Variable ';' Punctuation ' ' Text 'do' Keyword '\n\t ' Text 'IFS' Name.Variable '=' Operator '"' Literal.String.Double '$save_ifs' Name.Variable '"' Literal.String.Double '\n\t ' Text 'case' Keyword ' ' Text '$flag' Name.Variable ' ' Text 'in' Keyword '\n\t ' Text '*' Text '[' Operator '\\[' Literal.String.Escape '\\~' Literal.String.Escape '\\#' Literal.String.Escape '\\^' Literal.String.Escape '\\&' Literal.String.Escape '\\*' Literal.String.Escape '\\(' Literal.String.Escape '\\)' Literal.String.Escape '\\{' Literal.String.Escape '\\}' Literal.String.Escape '\\|' Literal.String.Escape '\\;' Literal.String.Escape '\\<' Literal.String.Escape '\\>' Literal.String.Escape '\\?' Literal.String.Escape "\\'" Literal.String.Escape '\\ ' Literal.String.Escape '\\\t' Literal.String.Escape ']' Operator '*' Text '|' Punctuation '*' Text ']' Operator '*' Text '|' Punctuation '""' Literal.String.Double ')' Operator '\n\t ' Text 'flag' Name.Variable '=' Operator '"' Literal.String.Double '\\"' Literal.String.Double '$flag' Name.Variable '\\"' Literal.String.Double '"' Literal.String.Double '\n\t ' Text ';' Punctuation ';' Punctuation '\n\t ' Text 'esac' Keyword '\n\t ' Text 'arg' Name.Variable '=' Operator '"' Literal.String.Double '$arg' Name.Variable ' ' Literal.String.Double '$wl' Name.Variable '$flag' Name.Variable '"' Literal.String.Double '\n\t ' Text 'compiler_flags' Name.Variable '=' Operator '"' Literal.String.Double '$compiler_flags' Name.Variable ' ' Literal.String.Double '$wl' Name.Variable '$flag' Name.Variable '"' Literal.String.Double '\n\t ' Text 'linker_flags' Name.Variable '=' Operator '"' Literal.String.Double '$linker_flags' Name.Variable ' ' Literal.String.Double '$flag' Name.Variable '"' Literal.String.Double '\n\t' Text 'done' Keyword '\n\t' Text 'IFS' Name.Variable '=' Operator '"' Literal.String.Double '$save_ifs' Name.Variable '"' Literal.String.Double '\n\t' Text 'arg' Name.Variable '=' Operator '`' Literal.String.Backtick '$echo' Name.Variable ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double ' ' Text '|' Punctuation ' ' Text '$Xsed' Name.Variable ' ' Text '-e' Text ' ' Text '"s/^ //"' Literal.String.Double '`' Literal.String.Backtick '\n\t' Text ';' Punctuation ';' Punctuation '\n\n ' Text '-Xcompiler' Text ')' Operator '\n\t' Text 'prev' Name.Variable '=' Operator 'xcompiler' Text '\n\t' Text 'continue' Keyword '\n\t' Text ';' Punctuation ';' Punctuation '\n\n ' Text '-Xlinker' Text ')' Operator '\n\t' Text 'prev' Name.Variable '=' Operator 'xlinker' Text '\n\t' Text 'continue' Keyword '\n\t' Text ';' Punctuation ';' Punctuation '\n\n ' Text '-XCClinker' Text ')' Operator '\n\t' Text 'prev' Name.Variable '=' Operator 'xcclinker' Text '\n\t' Text 'continue' Keyword '\n\t' Text ';' Punctuation ';' Punctuation '\n\n ' Text '# Some other compiler flag.\n' Comment.Single ' ' Text '-*' Text ' ' Text '|' Punctuation ' ' Text '+*' Text ')' Operator '\n\t' Text '# Unknown arguments in both finalize_command and compile_command need\n' Comment.Single '\t' Text '# to be aesthetically quoted because they are evaled later.\n' Comment.Single '\t' Text 'arg' Name.Variable '=' Operator '`' Literal.String.Backtick '$echo' Name.Variable ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double ' ' Text '|' Punctuation ' ' Text '$Xsed' Name.Variable ' ' Text '-e' Text ' ' Text '"' Literal.String.Double '$sed_quote_subst' Name.Variable '"' Literal.String.Double '`' Literal.String.Backtick '\n\t' Text 'case' Keyword ' ' Text '$arg' Name.Variable ' ' Text 'in' Keyword '\n\t' Text '*' Text '[' Operator '\\[' Literal.String.Escape '\\~' Literal.String.Escape '\\#' Literal.String.Escape '\\^' Literal.String.Escape '\\&' Literal.String.Escape '\\*' Literal.String.Escape '\\(' Literal.String.Escape '\\)' Literal.String.Escape '\\{' Literal.String.Escape '\\}' Literal.String.Escape '\\|' Literal.String.Escape '\\;' Literal.String.Escape '\\<' Literal.String.Escape '\\>' Literal.String.Escape '\\?' Literal.String.Escape "\\'" Literal.String.Escape '\\ ' Literal.String.Escape '\\\t' Literal.String.Escape ']' Operator '*' Text '|' Punctuation '*' Text ']' Operator '*' Text '|' Punctuation '""' Literal.String.Double ')' Operator '\n\t ' Text 'arg' Name.Variable '=' Operator '"' Literal.String.Double '\\"' Literal.String.Double '$arg' Name.Variable '\\"' Literal.String.Double '"' Literal.String.Double '\n\t ' Text ';' Punctuation ';' Punctuation '\n\t' Text 'esac' Keyword '\n\t' Text ';' Punctuation ';' Punctuation '\n\n ' Text '*.' Text '$objext' Name.Variable ')' Operator '\n\t' Text '# A standard object.\n' Comment.Single '\t' Text 'objs' Name.Variable '=' Operator '"' Literal.String.Double '$objs' Name.Variable ' ' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double '\n\t' Text ';' Punctuation ';' Punctuation '\n\n ' Text '*.lo' Text ')' Operator '\n\t' Text '# A libtool-controlled object.\n' Comment.Single '\n\t' Text '# Check to see that this really is a libtool object.\n' Comment.Single '\t' Text 'if' Keyword ' ' Text '(' Operator '${' Literal.String.Interpol 'SED' Name.Variable '}' Literal.String.Interpol ' ' Text '-e' Text ' ' Text "'2q'" Literal.String.Single ' ' Text '$arg' Name.Variable ' ' Text '|' Punctuation ' ' Text 'grep' Text ' ' Text '"' Literal.String.Double '^# Generated by .*' Literal.String.Double '$PACKAGE' Name.Variable '"' Literal.String.Double ')' Operator ' ' Text '>/dev/null' Text ' ' Text '2' Literal.Number '>' Text '&' Punctuation '1' Literal.Number ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text 'pic_object' Name.Variable '=' Operator '\n\t ' Text 'non_pic_object' Name.Variable '=' Operator '\n\n\t ' Text '# Read the .lo file\n' Comment.Single '\t ' Text '# If there is no directory component, then add one.\n' Comment.Single '\t ' Text 'case' Keyword ' ' Text '$arg' Name.Variable ' ' Text 'in' Keyword '\n\t ' Text '*/*' Text ' ' Text '|' Punctuation ' ' Text '*' Text '\\\\' Literal.String.Escape '*' Text ')' Operator ' ' Text '.' Text ' ' Text '$arg' Name.Variable ' ' Text ';' Punctuation ';' Punctuation '\n\t ' Text '*' Text ')' Operator ' ' Text '.' Text ' ' Text './' Text '$arg' Name.Variable ' ' Text ';' Punctuation ';' Punctuation '\n\t ' Text 'esac' Keyword '\n\n\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '-z' Text ' ' Text '"' Literal.String.Double '$pic_object' Name.Variable '"' Literal.String.Double ' ' Text '||' Operator ' ' Text '\\\n' Literal.String.Escape '\t ' Text 'test' Name.Builtin ' ' Text '-z' Text ' ' Text '"' Literal.String.Double '$non_pic_object' Name.Variable '"' Literal.String.Double ' ' Text '||' Operator '\n\t ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$pic_object' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'none' Text ' ' Text '&&' Operator ' ' Text '\\\n' Literal.String.Escape '\t ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$non_pic_object' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'none' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double '$modename' Name.Variable ': cannot find name of object for \\`' Literal.String.Double '$arg' Name.Variable "'" Literal.String.Double '"' Literal.String.Double ' ' Text '1' Literal.Number '>' Text '&' Punctuation '2' Literal.Number '\n\t ' Text 'exit' Name.Builtin ' ' Text '$EXIT_FAILURE' Name.Variable '\n\t ' Text 'fi' Keyword '\n\n\t ' Text '# Extract subdirectory from the argument.\n' Comment.Single '\t ' Text 'xdir' Name.Variable '=' Operator '`' Literal.String.Backtick '$echo' Name.Variable ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double ' ' Text '|' Punctuation ' ' Text '$Xsed' Name.Variable ' ' Text '-e' Text ' ' Text "'s%/[^/]*$%%'" Literal.String.Single '`' Literal.String.Backtick '\n\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$xdir' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text 'xdir' Name.Variable '=' Operator '\n \t ' Text 'else' Keyword '\n\t ' Text 'xdir' Name.Variable '=' Operator '"' Literal.String.Double '$xdir' Name.Variable '/' Literal.String.Double '"' Literal.String.Double '\n\t ' Text 'fi' Keyword '\n\n\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$pic_object' Name.Variable '"' Literal.String.Double ' ' Text '!' Text '=' Operator ' ' Text 'none' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text '# Prepend the subdirectory the object is found in.\n' Comment.Single '\t ' Text 'pic_object' Name.Variable '=' Operator '"' Literal.String.Double '$xdir' Name.Variable '$pic_object' Name.Variable '"' Literal.String.Double '\n\n\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$prev' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'dlfiles' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$build_libtool_libs' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'yes' Text ' ' Text '&&' Operator ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$dlopen_support' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'yes' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t\t' Text 'dlfiles' Name.Variable '=' Operator '"' Literal.String.Double '$dlfiles' Name.Variable ' ' Literal.String.Double '$pic_object' Name.Variable '"' Literal.String.Double '\n\t\t' Text 'prev' Name.Variable '=' Operator '\n\t\t' Text 'continue' Keyword '\n\t ' Text 'else' Keyword '\n\t\t' Text '# If libtool objects are unsupported, then we need to preload.\n' Comment.Single '\t\t' Text 'prev' Name.Variable '=' Operator 'dlprefiles' Text '\n\t ' Text 'fi' Keyword '\n\t ' Text 'fi' Keyword '\n\n\t ' Text '# CHECK ME: I think I busted this. -Ossama\n' Comment.Single '\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$prev' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'dlprefiles' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text '# Preload the old-style object.\n' Comment.Single '\t ' Text 'dlprefiles' Name.Variable '=' Operator '"' Literal.String.Double '$dlprefiles' Name.Variable ' ' Literal.String.Double '$pic_object' Name.Variable '"' Literal.String.Double '\n\t ' Text 'prev' Name.Variable '=' Operator '\n\t ' Text 'fi' Keyword '\n\n\t ' Text '# A PIC object.\n' Comment.Single '\t ' Text 'libobjs' Name.Variable '=' Operator '"' Literal.String.Double '$libobjs' Name.Variable ' ' Literal.String.Double '$pic_object' Name.Variable '"' Literal.String.Double '\n\t ' Text 'arg' Name.Variable '=' Operator '"' Literal.String.Double '$pic_object' Name.Variable '"' Literal.String.Double '\n\t ' Text 'fi' Keyword '\n\n\t ' Text '# Non-PIC object.\n' Comment.Single '\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$non_pic_object' Name.Variable '"' Literal.String.Double ' ' Text '!' Text '=' Operator ' ' Text 'none' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text '# Prepend the subdirectory the object is found in.\n' Comment.Single '\t ' Text 'non_pic_object' Name.Variable '=' Operator '"' Literal.String.Double '$xdir' Name.Variable '$non_pic_object' Name.Variable '"' Literal.String.Double '\n\n\t ' Text '# A standard non-PIC object\n' Comment.Single '\t ' Text 'non_pic_objects' Name.Variable '=' Operator '"' Literal.String.Double '$non_pic_objects' Name.Variable ' ' Literal.String.Double '$non_pic_object' Name.Variable '"' Literal.String.Double '\n\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '-z' Text ' ' Text '"' Literal.String.Double '$pic_object' Name.Variable '"' Literal.String.Double ' ' Text '||' Operator ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$pic_object' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'none' Text ' ' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text 'arg' Name.Variable '=' Operator '"' Literal.String.Double '$non_pic_object' Name.Variable '"' Literal.String.Double '\n\t ' Text 'fi' Keyword '\n\t ' Text 'else' Keyword '\n\t ' Text '# If the PIC object exists, use it instead.\n' Comment.Single '\t ' Text '# $xdir was prepended to $pic_object above.\n' Comment.Single '\t ' Text 'non_pic_object' Name.Variable '=' Operator '"' Literal.String.Double '$pic_object' Name.Variable '"' Literal.String.Double '\n\t ' Text 'non_pic_objects' Name.Variable '=' Operator '"' Literal.String.Double '$non_pic_objects' Name.Variable ' ' Literal.String.Double '$non_pic_object' Name.Variable '"' Literal.String.Double '\n\t ' Text 'fi' Keyword '\n\t' Text 'else' Keyword '\n\t ' Text '# Only an error if not doing a dry-run.\n' Comment.Single '\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '-z' Text ' ' Text '"' Literal.String.Double '$run' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double '$modename' Name.Variable ': \\`' Literal.String.Double '$arg' Name.Variable "' is not a valid libtool object" Literal.String.Double '"' Literal.String.Double ' ' Text '1' Literal.Number '>' Text '&' Punctuation '2' Literal.Number '\n\t ' Text 'exit' Name.Builtin ' ' Text '$EXIT_FAILURE' Name.Variable '\n\t ' Text 'else' Keyword '\n\t ' Text '# Dry-run case.\n' Comment.Single '\n\t ' Text '# Extract subdirectory from the argument.\n' Comment.Single '\t ' Text 'xdir' Name.Variable '=' Operator '`' Literal.String.Backtick '$echo' Name.Variable ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double ' ' Text '|' Punctuation ' ' Text '$Xsed' Name.Variable ' ' Text '-e' Text ' ' Text "'s%/[^/]*$%%'" Literal.String.Single '`' Literal.String.Backtick '\n\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$xdir' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text 'xdir' Name.Variable '=' Operator '\n\t ' Text 'else' Keyword '\n\t ' Text 'xdir' Name.Variable '=' Operator '"' Literal.String.Double '$xdir' Name.Variable '/' Literal.String.Double '"' Literal.String.Double '\n\t ' Text 'fi' Keyword '\n\n\t ' Text 'pic_object' Name.Variable '=' Operator '`' Literal.String.Backtick '$echo' Name.Variable ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '${' Literal.String.Interpol 'xdir' Name.Variable '}' Literal.String.Interpol '${' Literal.String.Interpol 'objdir' Name.Variable '}' Literal.String.Interpol '/' Literal.String.Double '${' Literal.String.Interpol 'arg' Name.Variable '}' Literal.String.Interpol '"' Literal.String.Double ' ' Text '|' Punctuation ' ' Text '$Xsed' Name.Variable ' ' Text '-e' Text ' ' Text '"' Literal.String.Double '$lo2o' Name.Variable '"' Literal.String.Double '`' Literal.String.Backtick '\n\t ' Text 'non_pic_object' Name.Variable '=' Operator '`' Literal.String.Backtick '$echo' Name.Variable ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '${' Literal.String.Interpol 'xdir' Name.Variable '}' Literal.String.Interpol '${' Literal.String.Interpol 'arg' Name.Variable '}' Literal.String.Interpol '"' Literal.String.Double ' ' Text '|' Punctuation ' ' Text '$Xsed' Name.Variable ' ' Text '-e' Text ' ' Text '"' Literal.String.Double '$lo2o' Name.Variable '"' Literal.String.Double '`' Literal.String.Backtick '\n\t ' Text 'libobjs' Name.Variable '=' Operator '"' Literal.String.Double '$libobjs' Name.Variable ' ' Literal.String.Double '$pic_object' Name.Variable '"' Literal.String.Double '\n\t ' Text 'non_pic_objects' Name.Variable '=' Operator '"' Literal.String.Double '$non_pic_objects' Name.Variable ' ' Literal.String.Double '$non_pic_object' Name.Variable '"' Literal.String.Double '\n\t ' Text 'fi' Keyword '\n\t' Text 'fi' Keyword '\n\t' Text ';' Punctuation ';' Punctuation '\n\n ' Text '*.' Text '$libext' Name.Variable ')' Operator '\n\t' Text '# An archive.\n' Comment.Single '\t' Text 'deplibs' Name.Variable '=' Operator '"' Literal.String.Double '$deplibs' Name.Variable ' ' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double '\n\t' Text 'old_deplibs' Name.Variable '=' Operator '"' Literal.String.Double '$old_deplibs' Name.Variable ' ' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double '\n\t' Text 'continue' Keyword '\n\t' Text ';' Punctuation ';' Punctuation '\n\n ' Text '*.la' Text ')' Operator '\n\t' Text '# A libtool-controlled library.\n' Comment.Single '\n\t' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$prev' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'dlfiles' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text '# This library was specified with -dlopen.\n' Comment.Single '\t ' Text 'dlfiles' Name.Variable '=' Operator '"' Literal.String.Double '$dlfiles' Name.Variable ' ' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double '\n\t ' Text 'prev' Name.Variable '=' Operator '\n\t' Text 'elif' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$prev' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'dlprefiles' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text '# The library was specified with -dlpreopen.\n' Comment.Single '\t ' Text 'dlprefiles' Name.Variable '=' Operator '"' Literal.String.Double '$dlprefiles' Name.Variable ' ' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double '\n\t ' Text 'prev' Name.Variable '=' Operator '\n\t' Text 'else' Keyword '\n\t ' Text 'deplibs' Name.Variable '=' Operator '"' Literal.String.Double '$deplibs' Name.Variable ' ' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double '\n\t' Text 'fi' Keyword '\n\t' Text 'continue' Keyword '\n\t' Text ';' Punctuation ';' Punctuation '\n\n ' Text '# Some other compiler argument.\n' Comment.Single ' ' Text '*' Text ')' Operator '\n\t' Text '# Unknown arguments in both finalize_command and compile_command need\n' Comment.Single '\t' Text '# to be aesthetically quoted because they are evaled later.\n' Comment.Single '\t' Text 'arg' Name.Variable '=' Operator '`' Literal.String.Backtick '$echo' Name.Variable ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double ' ' Text '|' Punctuation ' ' Text '$Xsed' Name.Variable ' ' Text '-e' Text ' ' Text '"' Literal.String.Double '$sed_quote_subst' Name.Variable '"' Literal.String.Double '`' Literal.String.Backtick '\n\t' Text 'case' Keyword ' ' Text '$arg' Name.Variable ' ' Text 'in' Keyword '\n\t' Text '*' Text '[' Operator '\\[' Literal.String.Escape '\\~' Literal.String.Escape '\\#' Literal.String.Escape '\\^' Literal.String.Escape '\\&' Literal.String.Escape '\\*' Literal.String.Escape '\\(' Literal.String.Escape '\\)' Literal.String.Escape '\\{' Literal.String.Escape '\\}' Literal.String.Escape '\\|' Literal.String.Escape '\\;' Literal.String.Escape '\\<' Literal.String.Escape '\\>' Literal.String.Escape '\\?' Literal.String.Escape "\\'" Literal.String.Escape '\\ ' Literal.String.Escape '\\\t' Literal.String.Escape ']' Operator '*' Text '|' Punctuation '*' Text ']' Operator '*' Text '|' Punctuation '""' Literal.String.Double ')' Operator '\n\t ' Text 'arg' Name.Variable '=' Operator '"' Literal.String.Double '\\"' Literal.String.Double '$arg' Name.Variable '\\"' Literal.String.Double '"' Literal.String.Double '\n\t ' Text ';' Punctuation ';' Punctuation '\n\t' Text 'esac' Keyword '\n\t' Text ';' Punctuation ';' Punctuation '\n ' Text 'esac' Keyword ' ' Text '# arg\n' Comment.Single '\n ' Text '# Now actually substitute the argument into the commands.\n' Comment.Single ' ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '-n' Text ' ' Text '"' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n\t' Text 'compile_command' Name.Variable '=' Operator '"' Literal.String.Double '$compile_command' Name.Variable ' ' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double '\n\t' Text 'finalize_command' Name.Variable '=' Operator '"' Literal.String.Double '$finalize_command' Name.Variable ' ' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double '\n ' Text 'fi' Keyword '\n ' Text 'done' Keyword ' ' Text '# argument parsing loop\n' Comment.Single '\n ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '-n' Text ' ' Text '"' Literal.String.Double '$prev' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n ' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double '$modename' Name.Variable ': the \\`' Literal.String.Double '$prevarg' Name.Variable "' option requires an argument" Literal.String.Double '"' Literal.String.Double ' ' Text '1' Literal.Number '>' Text '&' Punctuation '2' Literal.Number '\n ' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double '$help' Name.Variable '"' Literal.String.Double ' ' Text '1' Literal.Number '>' Text '&' Punctuation '2' Literal.Number '\n ' Text 'exit' Name.Builtin ' ' Text '$EXIT_FAILURE' Name.Variable '\n ' Text 'fi' Keyword '\n\n ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$export_dynamic' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'yes' Text ' ' Text '&&' Operator ' ' Text 'test' Name.Builtin ' ' Text '-n' Text ' ' Text '"' Literal.String.Double '$export_dynamic_flag_spec' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n ' Text 'eval' Name.Builtin ' ' Text 'arg' Name.Variable '=' Operator '\\"' Literal.String.Escape '$export_dynamic_flag_spec' Name.Variable '\\"' Literal.String.Escape '\n ' Text 'compile_command' Name.Variable '=' Operator '"' Literal.String.Double '$compile_command' Name.Variable ' ' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double '\n ' Text 'finalize_command' Name.Variable '=' Operator '"' Literal.String.Double '$finalize_command' Name.Variable ' ' Literal.String.Double '$arg' Name.Variable '"' Literal.String.Double '\n ' Text 'fi' Keyword '\n\n ' Text 'oldlibs' Name.Variable '=' Operator '\n ' Text '# calculate the name of the file, without its directory\n' Comment.Single ' ' Text 'outputname' Name.Variable '=' Operator '`' Literal.String.Backtick '$echo' Name.Variable ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$output' Name.Variable '"' Literal.String.Double ' ' Text '|' Punctuation ' ' Text '$Xsed' Name.Variable ' ' Text '-e' Text ' ' Text "'s%^.*/%%'" Literal.String.Single '`' Literal.String.Backtick '\n ' Text 'libobjs_save' Name.Variable '=' Operator '"' Literal.String.Double '$libobjs' Name.Variable '"' Literal.String.Double '\n\n ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '-n' Text ' ' Text '"' Literal.String.Double '$shlibpath_var' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n ' Text '# get the directories listed in $shlibpath_var\n' Comment.Single ' ' Text 'eval' Name.Builtin ' ' Text 'shlib_search_path' Name.Variable '=' Operator '\\`' Literal.String.Escape '\\$' Literal.String.Escape 'echo' Name.Builtin ' ' Text '\\"' Literal.String.Escape 'X' Text '\\$' Literal.String.Escape '{' Operator '$shlibpath_var' Name.Variable '}' Operator '\\"' Literal.String.Escape ' ' Text '\\|' Literal.String.Escape ' ' Text '\\$' Literal.String.Escape 'Xsed' Text ' ' Text '-e' Text ' ' Text "\\'" Literal.String.Escape 's/:/' Text ' ' Text '/g' Text "\\'" Literal.String.Escape '\\`' Literal.String.Escape '\n ' Text 'else' Keyword '\n ' Text 'shlib_search_path' Name.Variable '=' Operator '\n ' Text 'fi' Keyword '\n ' Text 'eval' Name.Builtin ' ' Text 'sys_lib_search_path' Name.Variable '=' Operator '\\"' Literal.String.Escape '$sys_lib_search_path_spec' Name.Variable '\\"' Literal.String.Escape '\n ' Text 'eval' Name.Builtin ' ' Text 'sys_lib_dlsearch_path' Name.Variable '=' Operator '\\"' Literal.String.Escape '$sys_lib_dlsearch_path_spec' Name.Variable '\\"' Literal.String.Escape '\n\n ' Text 'output_objdir' Name.Variable '=' Operator '`' Literal.String.Backtick '$echo' Name.Variable ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$output' Name.Variable '"' Literal.String.Double ' ' Text '|' Punctuation ' ' Text '$Xsed' Name.Variable ' ' Text '-e' Text ' ' Text "'s%/[^/]*$%%'" Literal.String.Single '`' Literal.String.Backtick '\n ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$output_objdir' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$output' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n ' Text 'output_objdir' Name.Variable '=' Operator '"' Literal.String.Double '$objdir' Name.Variable '"' Literal.String.Double '\n ' Text 'else' Keyword '\n ' Text 'output_objdir' Name.Variable '=' Operator '"' Literal.String.Double '$output_objdir' Name.Variable '/' Literal.String.Double '$objdir' Name.Variable '"' Literal.String.Double '\n ' Text 'fi' Keyword '\n ' Text '# Create the object directory.\n' Comment.Single ' ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '!' Text ' ' Text '-d' Text ' ' Text '"' Literal.String.Double '$output_objdir' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n ' Text '$show' Name.Variable ' ' Text '"' Literal.String.Double '$mkdir' Name.Variable ' ' Literal.String.Double '$output_objdir' Name.Variable '"' Literal.String.Double '\n ' Text '$run' Name.Variable ' ' Text '$mkdir' Name.Variable ' ' Text '$output_objdir' Name.Variable '\n ' Text 'exit_status' Name.Variable '=' Operator '$?' Name.Variable '\n ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$exit_status' Name.Variable '"' Literal.String.Double ' ' Text '-ne' Text ' ' Text '0' Literal.Number ' ' Text '&&' Operator ' ' Text 'test' Name.Builtin ' ' Text '!' Text ' ' Text '-d' Text ' ' Text '"' Literal.String.Double '$output_objdir' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n\t' Text 'exit' Name.Builtin ' ' Text '$exit_status' Name.Variable '\n ' Text 'fi' Keyword '\n ' Text 'fi' Keyword '\n\n ' Text '# Determine the type of output\n' Comment.Single ' ' Text 'case' Keyword ' ' Text '$output' Name.Variable ' ' Text 'in' Keyword '\n ' Text '""' Literal.String.Double ')' Operator '\n ' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double '$modename' Name.Variable ': you must specify an output file' Literal.String.Double '"' Literal.String.Double ' ' Text '1' Literal.Number '>' Text '&' Punctuation '2' Literal.Number '\n ' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double '$help' Name.Variable '"' Literal.String.Double ' ' Text '1' Literal.Number '>' Text '&' Punctuation '2' Literal.Number '\n ' Text 'exit' Name.Builtin ' ' Text '$EXIT_FAILURE' Name.Variable '\n ' Text ';' Punctuation ';' Punctuation '\n ' Text '*.' Text '$libext' Name.Variable ')' Operator ' ' Text 'linkmode' Name.Variable '=' Operator 'oldlib' Text ' ' Text ';' Punctuation ';' Punctuation '\n ' Text '*.lo' Text ' ' Text '|' Punctuation ' ' Text '*.' Text '$objext' Name.Variable ')' Operator ' ' Text 'linkmode' Name.Variable '=' Operator 'obj' Text ' ' Text ';' Punctuation ';' Punctuation '\n ' Text '*.la' Text ')' Operator ' ' Text 'linkmode' Name.Variable '=' Operator 'lib' Text ' ' Text ';' Punctuation ';' Punctuation '\n ' Text '*' Text ')' Operator ' ' Text 'linkmode' Name.Variable '=' Operator 'prog' Text ' ' Text ';' Punctuation ';' Punctuation ' ' Text '# Anything else should be a program.\n' Comment.Single ' ' Text 'esac' Keyword '\n\n ' Text 'case' Keyword ' ' Text '$host' Name.Variable ' ' Text 'in' Keyword '\n ' Text '*cygwin*' Text ' ' Text '|' Punctuation ' ' Text '*mingw*' Text ' ' Text '|' Punctuation ' ' Text '*pw32*' Text ')' Operator '\n ' Text "# don't eliminate duplications in $postdeps and $predeps\n" Comment.Single ' ' Text 'duplicate_compiler_generated_deps' Name.Variable '=' Operator 'yes' Text '\n ' Text ';' Punctuation ';' Punctuation '\n ' Text '*' Text ')' Operator '\n ' Text 'duplicate_compiler_generated_deps' Name.Variable '=' Operator '$duplicate_deps' Name.Variable '\n ' Text ';' Punctuation ';' Punctuation '\n ' Text 'esac' Keyword '\n ' Text 'specialdeplibs' Name.Variable '=' Operator '\n\n ' Text 'libs' Name.Variable '=' Operator '\n ' Text '# Find all interdependent deplibs by searching for libraries\n' Comment.Single ' ' Text '# that are linked more than once (e.g. -la -lb -la)\n' Comment.Single ' ' Text 'for' Keyword ' ' Text 'deplib' Text ' ' Text 'in' Keyword ' ' Text '$deplibs' Name.Variable ';' Punctuation ' ' Text 'do' Keyword '\n ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$duplicate_deps' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text '"Xyes"' Literal.String.Double ' ' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t' Text 'case' Keyword ' ' Text '"' Literal.String.Double '$libs' Name.Variable ' ' Literal.String.Double '"' Literal.String.Double ' ' Text 'in' Keyword '\n\t' Text '*' Text '"' Literal.String.Double ' ' Literal.String.Double '$deplib' Name.Variable ' ' Literal.String.Double '"' Literal.String.Double '*' Text ')' Operator ' ' Text 'specialdeplibs' Name.Variable '=' Operator '"' Literal.String.Double '$specialdeplibs' Name.Variable ' ' Literal.String.Double '$deplib' Name.Variable '"' Literal.String.Double ' ' Text ';' Punctuation ';' Punctuation '\n\t' Text 'esac' Keyword '\n ' Text 'fi' Keyword '\n ' Text 'libs' Name.Variable '=' Operator '"' Literal.String.Double '$libs' Name.Variable ' ' Literal.String.Double '$deplib' Name.Variable '"' Literal.String.Double '\n ' Text 'done' Keyword '\n\n ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$linkmode' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'lib' Text ';' Punctuation ' ' Text 'then' Keyword '\n ' Text 'libs' Name.Variable '=' Operator '"' Literal.String.Double '$predeps' Name.Variable ' ' Literal.String.Double '$libs' Name.Variable ' ' Literal.String.Double '$compiler_lib_search_path' Name.Variable ' ' Literal.String.Double '$postdeps' Name.Variable '"' Literal.String.Double '\n\n ' Text '# Compute libraries that are listed more than once in $predeps\n' Comment.Single ' ' Text '# $postdeps and mark them as special (i.e., whose duplicates are\n' Comment.Single ' ' Text '# not to be eliminated).\n' Comment.Single ' ' Text 'pre_post_deps' Name.Variable '=' Operator '\n ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$duplicate_compiler_generated_deps' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text '"Xyes"' Literal.String.Double ' ' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t' Text 'for' Keyword ' ' Text 'pre_post_dep' Text ' ' Text 'in' Keyword ' ' Text '$predeps' Name.Variable ' ' Text '$postdeps' Name.Variable ';' Punctuation ' ' Text 'do' Keyword '\n\t ' Text 'case' Keyword ' ' Text '"' Literal.String.Double '$pre_post_deps' Name.Variable ' ' Literal.String.Double '"' Literal.String.Double ' ' Text 'in' Keyword '\n\t ' Text '*' Text '"' Literal.String.Double ' ' Literal.String.Double '$pre_post_dep' Name.Variable ' ' Literal.String.Double '"' Literal.String.Double '*' Text ')' Operator ' ' Text 'specialdeplibs' Name.Variable '=' Operator '"' Literal.String.Double '$specialdeplibs' Name.Variable ' ' Literal.String.Double '$pre_post_deps' Name.Variable '"' Literal.String.Double ' ' Text ';' Punctuation ';' Punctuation '\n\t ' Text 'esac' Keyword '\n\t ' Text 'pre_post_deps' Name.Variable '=' Operator '"' Literal.String.Double '$pre_post_deps' Name.Variable ' ' Literal.String.Double '$pre_post_dep' Name.Variable '"' Literal.String.Double '\n\t' Text 'done' Keyword '\n ' Text 'fi' Keyword '\n ' Text 'pre_post_deps' Name.Variable '=' Operator '\n ' Text 'fi' Keyword '\n\n ' Text 'deplibs' Name.Variable '=' Operator '\n ' Text 'newdependency_libs' Name.Variable '=' Operator '\n ' Text 'newlib_search_path' Name.Variable '=' Operator '\n ' Text 'need_relink' Name.Variable '=' Operator 'no' Text ' ' Text "# whether we're linking any uninstalled libtool libraries\n" Comment.Single ' ' Text 'notinst_deplibs' Name.Variable '=' Operator ' ' Text '# not-installed libtool libraries\n' Comment.Single ' ' Text 'case' Keyword ' ' Text '$linkmode' Name.Variable ' ' Text 'in' Keyword '\n ' Text 'lib' Text ')' Operator '\n\t' Text 'passes' Name.Variable '=' Operator '"conv link"' Literal.String.Double '\n\t' Text 'for' Keyword ' ' Text 'file' Text ' ' Text 'in' Keyword ' ' Text '$dlfiles' Name.Variable ' ' Text '$dlprefiles' Name.Variable ';' Punctuation ' ' Text 'do' Keyword '\n\t ' Text 'case' Keyword ' ' Text '$file' Name.Variable ' ' Text 'in' Keyword '\n\t ' Text '*.la' Text ')' Operator ' ' Text ';' Punctuation ';' Punctuation '\n\t ' Text '*' Text ')' Operator '\n\t ' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double '$modename' Name.Variable ": libraries can \\`-dlopen' only libtool libraries: " Literal.String.Double '$file' Name.Variable '"' Literal.String.Double ' ' Text '1' Literal.Number '>' Text '&' Punctuation '2' Literal.Number '\n\t ' Text 'exit' Name.Builtin ' ' Text '$EXIT_FAILURE' Name.Variable '\n\t ' Text ';' Punctuation ';' Punctuation '\n\t ' Text 'esac' Keyword '\n\t' Text 'done' Keyword '\n\t' Text ';' Punctuation ';' Punctuation '\n ' Text 'prog' Text ')' Operator '\n\t' Text 'compile_deplibs' Name.Variable '=' Operator '\n\t' Text 'finalize_deplibs' Name.Variable '=' Operator '\n\t' Text 'alldeplibs' Name.Variable '=' Operator 'no' Text '\n\t' Text 'newdlfiles' Name.Variable '=' Operator '\n\t' Text 'newdlprefiles' Name.Variable '=' Operator '\n\t' Text 'passes' Name.Variable '=' Operator '"conv scan dlopen dlpreopen link"' Literal.String.Double '\n\t' Text ';' Punctuation ';' Punctuation '\n ' Text '*' Text ')' Operator ' ' Text 'passes' Name.Variable '=' Operator '"conv"' Literal.String.Double '\n\t' Text ';' Punctuation ';' Punctuation '\n ' Text 'esac' Keyword '\n ' Text 'for' Keyword ' ' Text 'pass' Text ' ' Text 'in' Keyword ' ' Text '$passes' Name.Variable ';' Punctuation ' ' Text 'do' Keyword '\n ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$linkmode' Name.Variable ',' Literal.String.Double '$pass' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text '"lib,link"' Literal.String.Double ' ' Text '||' Operator '\n\t ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$linkmode' Name.Variable ',' Literal.String.Double '$pass' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text '"prog,scan"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n\t' Text 'libs' Name.Variable '=' Operator '"' Literal.String.Double '$deplibs' Name.Variable '"' Literal.String.Double '\n\t' Text 'deplibs' Name.Variable '=' Operator '\n ' Text 'fi' Keyword '\n ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$linkmode' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'prog' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t' Text 'case' Keyword ' ' Text '$pass' Name.Variable ' ' Text 'in' Keyword '\n\t' Text 'dlopen' Text ')' Operator ' ' Text 'libs' Name.Variable '=' Operator '"' Literal.String.Double '$dlfiles' Name.Variable '"' Literal.String.Double ' ' Text ';' Punctuation ';' Punctuation '\n\t' Text 'dlpreopen' Text ')' Operator ' ' Text 'libs' Name.Variable '=' Operator '"' Literal.String.Double '$dlprefiles' Name.Variable '"' Literal.String.Double ' ' Text ';' Punctuation ';' Punctuation '\n\t' Text 'link' Text ')' Operator ' ' Text 'libs' Name.Variable '=' Operator '"' Literal.String.Double '$deplibs' Name.Variable ' %DEPLIBS% ' Literal.String.Double '$dependency_libs' Name.Variable '"' Literal.String.Double ' ' Text ';' Punctuation ';' Punctuation '\n\t' Text 'esac' Keyword '\n ' Text 'fi' Keyword '\n ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$pass' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'dlopen' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t' Text '# Collect dlpreopened libraries\n' Comment.Single '\t' Text 'save_deplibs' Name.Variable '=' Operator '"' Literal.String.Double '$deplibs' Name.Variable '"' Literal.String.Double '\n\t' Text 'deplibs' Name.Variable '=' Operator '\n ' Text 'fi' Keyword '\n ' Text 'for' Keyword ' ' Text 'deplib' Text ' ' Text 'in' Keyword ' ' Text '$libs' Name.Variable ';' Punctuation ' ' Text 'do' Keyword '\n\t' Text 'lib' Name.Variable '=' Operator '\n\t' Text 'found' Name.Variable '=' Operator 'no' Text '\n\t' Text 'case' Keyword ' ' Text '$deplib' Name.Variable ' ' Text 'in' Keyword '\n\t' Text '-mt' Text '|' Punctuation '-mthreads' Text '|' Punctuation '-kthread' Text '|' Punctuation '-Kthread' Text '|' Punctuation '-pthread' Text '|' Punctuation '-pthreads' Text '|' Punctuation '--thread-safe' Text ')' Operator '\n\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$linkmode' Name.Variable ',' Literal.String.Double '$pass' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text '"prog,link"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text 'compile_deplibs' Name.Variable '=' Operator '"' Literal.String.Double '$deplib' Name.Variable ' ' Literal.String.Double '$compile_deplibs' Name.Variable '"' Literal.String.Double '\n\t ' Text 'finalize_deplibs' Name.Variable '=' Operator '"' Literal.String.Double '$deplib' Name.Variable ' ' Literal.String.Double '$finalize_deplibs' Name.Variable '"' Literal.String.Double '\n\t ' Text 'else' Keyword '\n\t ' Text 'compiler_flags' Name.Variable '=' Operator '"' Literal.String.Double '$compiler_flags' Name.Variable ' ' Literal.String.Double '$deplib' Name.Variable '"' Literal.String.Double '\n\t ' Text 'fi' Keyword '\n\t ' Text 'continue' Keyword '\n\t ' Text ';' Punctuation ';' Punctuation '\n\t' Text '-l*' Text ')' Operator '\n\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$linkmode' Name.Variable '"' Literal.String.Double ' ' Text '!' Text '=' Operator ' ' Text 'lib' Text ' ' Text '&&' Operator ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$linkmode' Name.Variable '"' Literal.String.Double ' ' Text '!' Text '=' Operator ' ' Text 'prog' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double '$modename' Name.Variable ": warning: \\`-l' is ignored for archives/objects" Literal.String.Double '"' Literal.String.Double ' ' Text '1' Literal.Number '>' Text '&' Punctuation '2' Literal.Number '\n\t ' Text 'continue' Keyword '\n\t ' Text 'fi' Keyword '\n\t ' Text 'name' Name.Variable '=' Operator '`' Literal.String.Backtick '$echo' Name.Variable ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$deplib' Name.Variable '"' Literal.String.Double ' ' Text '|' Punctuation ' ' Text '$Xsed' Name.Variable ' ' Text '-e' Text ' ' Text "'s/^-l//'" Literal.String.Single '`' Literal.String.Backtick '\n\t ' Text 'for' Keyword ' ' Text 'searchdir' Text ' ' Text 'in' Keyword ' ' Text '$newlib_search_path' Name.Variable ' ' Text '$lib_search_path' Name.Variable ' ' Text '$sys_lib_search_path' Name.Variable ' ' Text '$shlib_search_path' Name.Variable ';' Punctuation ' ' Text 'do' Keyword '\n\t ' Text 'for' Keyword ' ' Text 'search_ext' Text ' ' Text 'in' Keyword ' ' Text '.la' Text ' ' Text '$std_shrext' Name.Variable ' ' Text '.so' Text ' ' Text '.a' Text ';' Punctuation ' ' Text 'do' Keyword '\n\t ' Text '# Search the libtool library\n' Comment.Single '\t ' Text 'lib' Name.Variable '=' Operator '"' Literal.String.Double '$searchdir' Name.Variable '/lib' Literal.String.Double '${' Literal.String.Interpol 'name' Name.Variable '}' Literal.String.Interpol '${' Literal.String.Interpol 'search_ext' Name.Variable '}' Literal.String.Interpol '"' Literal.String.Double '\n\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '-f' Text ' ' Text '"' Literal.String.Double '$lib' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n\t\t' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$search_ext' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text '".la"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n\t\t ' Text 'found' Name.Variable '=' Operator 'yes' Text '\n\t\t' Text 'else' Keyword '\n\t\t ' Text 'found' Name.Variable '=' Operator 'no' Text '\n\t\t' Text 'fi' Keyword '\n\t\t' Text 'break' Name.Builtin ' ' Text '2' Literal.Number '\n\t ' Text 'fi' Keyword '\n\t ' Text 'done' Keyword '\n\t ' Text 'done' Keyword '\n\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$found' Name.Variable '"' Literal.String.Double ' ' Text '!' Text '=' Operator ' ' Text 'yes' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text "# deplib doesn't seem to be a libtool library\n" Comment.Single '\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$linkmode' Name.Variable ',' Literal.String.Double '$pass' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text '"prog,link"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text 'compile_deplibs' Name.Variable '=' Operator '"' Literal.String.Double '$deplib' Name.Variable ' ' Literal.String.Double '$compile_deplibs' Name.Variable '"' Literal.String.Double '\n\t ' Text 'finalize_deplibs' Name.Variable '=' Operator '"' Literal.String.Double '$deplib' Name.Variable ' ' Literal.String.Double '$finalize_deplibs' Name.Variable '"' Literal.String.Double '\n\t ' Text 'else' Keyword '\n\t ' Text 'deplibs' Name.Variable '=' Operator '"' Literal.String.Double '$deplib' Name.Variable ' ' Literal.String.Double '$deplibs' Name.Variable '"' Literal.String.Double '\n\t ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$linkmode' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'lib' Text ' ' Text '&&' Operator ' ' Text 'newdependency_libs' Name.Variable '=' Operator '"' Literal.String.Double '$deplib' Name.Variable ' ' Literal.String.Double '$newdependency_libs' Name.Variable '"' Literal.String.Double '\n\t ' Text 'fi' Keyword '\n\t ' Text 'continue' Keyword '\n\t ' Text 'else' Keyword ' ' Text '# deplib is a libtool library\n' Comment.Single '\t ' Text '# If $allow_libtool_libs_with_static_runtimes && $deplib is a stdlib,\n' Comment.Single '\t ' Text '# We need to do some special things here, and not later.\n' Comment.Single '\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$allow_libtool_libs_with_static_runtimes' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text '"Xyes"' Literal.String.Double ' ' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text 'case' Keyword ' ' Text '"' Literal.String.Double ' ' Literal.String.Double '$predeps' Name.Variable ' ' Literal.String.Double '$postdeps' Name.Variable ' ' Literal.String.Double '"' Literal.String.Double ' ' Text 'in' Keyword '\n\t ' Text '*' Text '"' Literal.String.Double ' ' Literal.String.Double '$deplib' Name.Variable ' ' Literal.String.Double '"' Literal.String.Double '*' Text ')' Operator '\n\t\t' Text 'if' Keyword ' ' Text '(' Operator '${' Literal.String.Interpol 'SED' Name.Variable '}' Literal.String.Interpol ' ' Text '-e' Text ' ' Text "'2q'" Literal.String.Single ' ' Text '$lib' Name.Variable ' ' Text '|' Punctuation '\n ' Text 'grep' Text ' ' Text '"' Literal.String.Double '^# Generated by .*' Literal.String.Double '$PACKAGE' Name.Variable '"' Literal.String.Double ')' Operator ' ' Text '>/dev/null' Text ' ' Text '2' Literal.Number '>' Text '&' Punctuation '1' Literal.Number ';' Punctuation ' ' Text 'then' Keyword '\n\t\t ' Text 'library_names' Name.Variable '=' Operator '\n\t\t ' Text 'old_library' Name.Variable '=' Operator '\n\t\t ' Text 'case' Keyword ' ' Text '$lib' Name.Variable ' ' Text 'in' Keyword '\n\t\t ' Text '*/*' Text ' ' Text '|' Punctuation ' ' Text '*' Text '\\\\' Literal.String.Escape '*' Text ')' Operator ' ' Text '.' Text ' ' Text '$lib' Name.Variable ' ' Text ';' Punctuation ';' Punctuation '\n\t\t ' Text '*' Text ')' Operator ' ' Text '.' Text ' ' Text './' Text '$lib' Name.Variable ' ' Text ';' Punctuation ';' Punctuation '\n\t\t ' Text 'esac' Keyword '\n\t\t ' Text 'for' Keyword ' ' Text 'l' Text ' ' Text 'in' Keyword ' ' Text '$old_library' Name.Variable ' ' Text '$library_names' Name.Variable ';' Punctuation ' ' Text 'do' Keyword '\n\t\t ' Text 'll' Name.Variable '=' Operator '"' Literal.String.Double '$l' Name.Variable '"' Literal.String.Double '\n\t\t ' Text 'done' Keyword '\n\t\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$ll' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$old_library' Name.Variable '"' Literal.String.Double ' ' Text ';' Punctuation ' ' Text 'then' Keyword ' ' Text '# only static version available\n' Comment.Single '\t\t ' Text 'found' Name.Variable '=' Operator 'no' Text '\n\t\t ' Text 'ladir' Name.Variable '=' Operator '`' Literal.String.Backtick '$echo' Name.Variable ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$lib' Name.Variable '"' Literal.String.Double ' ' Text '|' Punctuation ' ' Text '$Xsed' Name.Variable ' ' Text '-e' Text ' ' Text "'s%/[^/]*$%%'" Literal.String.Single '`' Literal.String.Backtick '\n\t\t ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$ladir' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$lib' Name.Variable '"' Literal.String.Double ' ' Text '&&' Operator ' ' Text 'ladir' Name.Variable '=' Operator '"."' Literal.String.Double '\n\t\t ' Text 'lib' Name.Variable '=' Operator '$ladir' Name.Variable '/' Text '$old_library' Name.Variable '\n\t\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$linkmode' Name.Variable ',' Literal.String.Double '$pass' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text '"prog,link"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n\t\t ' Text 'compile_deplibs' Name.Variable '=' Operator '"' Literal.String.Double '$deplib' Name.Variable ' ' Literal.String.Double '$compile_deplibs' Name.Variable '"' Literal.String.Double '\n\t\t ' Text 'finalize_deplibs' Name.Variable '=' Operator '"' Literal.String.Double '$deplib' Name.Variable ' ' Literal.String.Double '$finalize_deplibs' Name.Variable '"' Literal.String.Double '\n\t\t ' Text 'else' Keyword '\n\t\t ' Text 'deplibs' Name.Variable '=' Operator '"' Literal.String.Double '$deplib' Name.Variable ' ' Literal.String.Double '$deplibs' Name.Variable '"' Literal.String.Double '\n\t\t ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$linkmode' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'lib' Text ' ' Text '&&' Operator ' ' Text 'newdependency_libs' Name.Variable '=' Operator '"' Literal.String.Double '$deplib' Name.Variable ' ' Literal.String.Double '$newdependency_libs' Name.Variable '"' Literal.String.Double '\n\t\t ' Text 'fi' Keyword '\n\t\t ' Text 'continue' Keyword '\n\t\t ' Text 'fi' Keyword '\n\t\t' Text 'fi' Keyword '\n\t ' Text ';' Punctuation ';' Punctuation '\n\t ' Text '*' Text ')' Operator ' ' Text ';' Punctuation ';' Punctuation '\n\t ' Text 'esac' Keyword '\n\t ' Text 'fi' Keyword '\n\t ' Text 'fi' Keyword '\n\t ' Text ';' Punctuation ';' Punctuation ' ' Text '# -l\n' Comment.Single '\t' Text '-L*' Text ')' Operator '\n\t ' Text 'case' Keyword ' ' Text '$linkmode' Name.Variable ' ' Text 'in' Keyword '\n\t ' Text 'lib' Text ')' Operator '\n\t ' Text 'deplibs' Name.Variable '=' Operator '"' Literal.String.Double '$deplib' Name.Variable ' ' Literal.String.Double '$deplibs' Name.Variable '"' Literal.String.Double '\n\t ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$pass' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'conv' Text ' ' Text '&&' Operator ' ' Text 'continue' Keyword '\n\t ' Text 'newdependency_libs' Name.Variable '=' Operator '"' Literal.String.Double '$deplib' Name.Variable ' ' Literal.String.Double '$newdependency_libs' Name.Variable '"' Literal.String.Double '\n\t ' Text 'newlib_search_path' Name.Variable '=' Operator '"' Literal.String.Double '$newlib_search_path' Name.Variable ' ' Literal.String.Double '"' Literal.String.Double '`' Literal.String.Backtick '$echo' Name.Variable ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$deplib' Name.Variable '"' Literal.String.Double ' ' Text '|' Punctuation ' ' Text '$Xsed' Name.Variable ' ' Text '-e' Text ' ' Text "'s/^-L//'" Literal.String.Single '`' Literal.String.Backtick '\n\t ' Text ';' Punctuation ';' Punctuation '\n\t ' Text 'prog' Text ')' Operator '\n\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$pass' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'conv' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text 'deplibs' Name.Variable '=' Operator '"' Literal.String.Double '$deplib' Name.Variable ' ' Literal.String.Double '$deplibs' Name.Variable '"' Literal.String.Double '\n\t ' Text 'continue' Keyword '\n\t ' Text 'fi' Keyword '\n\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$pass' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'scan' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text 'deplibs' Name.Variable '=' Operator '"' Literal.String.Double '$deplib' Name.Variable ' ' Literal.String.Double '$deplibs' Name.Variable '"' Literal.String.Double '\n\t ' Text 'else' Keyword '\n\t ' Text 'compile_deplibs' Name.Variable '=' Operator '"' Literal.String.Double '$deplib' Name.Variable ' ' Literal.String.Double '$compile_deplibs' Name.Variable '"' Literal.String.Double '\n\t ' Text 'finalize_deplibs' Name.Variable '=' Operator '"' Literal.String.Double '$deplib' Name.Variable ' ' Literal.String.Double '$finalize_deplibs' Name.Variable '"' Literal.String.Double '\n\t ' Text 'fi' Keyword '\n\t ' Text 'newlib_search_path' Name.Variable '=' Operator '"' Literal.String.Double '$newlib_search_path' Name.Variable ' ' Literal.String.Double '"' Literal.String.Double '`' Literal.String.Backtick '$echo' Name.Variable ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$deplib' Name.Variable '"' Literal.String.Double ' ' Text '|' Punctuation ' ' Text '$Xsed' Name.Variable ' ' Text '-e' Text ' ' Text "'s/^-L//'" Literal.String.Single '`' Literal.String.Backtick '\n\t ' Text ';' Punctuation ';' Punctuation '\n\t ' Text '*' Text ')' Operator '\n\t ' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double '$modename' Name.Variable ": warning: \\`-L' is ignored for archives/objects" Literal.String.Double '"' Literal.String.Double ' ' Text '1' Literal.Number '>' Text '&' Punctuation '2' Literal.Number '\n\t ' Text ';' Punctuation ';' Punctuation '\n\t ' Text 'esac' Keyword ' ' Text '# linkmode\n' Comment.Single '\t ' Text 'continue' Keyword '\n\t ' Text ';' Punctuation ';' Punctuation ' ' Text '# -L\n' Comment.Single '\t' Text '-R*' Text ')' Operator '\n\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$pass' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'link' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text 'dir' Name.Variable '=' Operator '`' Literal.String.Backtick '$echo' Name.Variable ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$deplib' Name.Variable '"' Literal.String.Double ' ' Text '|' Punctuation ' ' Text '$Xsed' Name.Variable ' ' Text '-e' Text ' ' Text "'s/^-R//'" Literal.String.Single '`' Literal.String.Backtick '\n\t ' Text '# Make sure the xrpath contains only unique directories.\n' Comment.Single '\t ' Text 'case' Keyword ' ' Text '"' Literal.String.Double '$xrpath' Name.Variable ' ' Literal.String.Double '"' Literal.String.Double ' ' Text 'in' Keyword '\n\t ' Text '*' Text '"' Literal.String.Double ' ' Literal.String.Double '$dir' Name.Variable ' ' Literal.String.Double '"' Literal.String.Double '*' Text ')' Operator ' ' Text ';' Punctuation ';' Punctuation '\n\t ' Text '*' Text ')' Operator ' ' Text 'xrpath' Name.Variable '=' Operator '"' Literal.String.Double '$xrpath' Name.Variable ' ' Literal.String.Double '$dir' Name.Variable '"' Literal.String.Double ' ' Text ';' Punctuation ';' Punctuation '\n\t ' Text 'esac' Keyword '\n\t ' Text 'fi' Keyword '\n\t ' Text 'deplibs' Name.Variable '=' Operator '"' Literal.String.Double '$deplib' Name.Variable ' ' Literal.String.Double '$deplibs' Name.Variable '"' Literal.String.Double '\n\t ' Text 'continue' Keyword '\n\t ' Text ';' Punctuation ';' Punctuation '\n\t' Text '*.la' Text ')' Operator ' ' Text 'lib' Name.Variable '=' Operator '"' Literal.String.Double '$deplib' Name.Variable '"' Literal.String.Double ' ' Text ';' Punctuation ';' Punctuation '\n\t' Text '*.' Text '$libext' Name.Variable ')' Operator '\n\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$pass' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'conv' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text 'deplibs' Name.Variable '=' Operator '"' Literal.String.Double '$deplib' Name.Variable ' ' Literal.String.Double '$deplibs' Name.Variable '"' Literal.String.Double '\n\t ' Text 'continue' Keyword '\n\t ' Text 'fi' Keyword '\n\t ' Text 'case' Keyword ' ' Text '$linkmode' Name.Variable ' ' Text 'in' Keyword '\n\t ' Text 'lib' Text ')' Operator '\n\t ' Text 'valid_a_lib' Name.Variable '=' Operator 'no' Text '\n\t ' Text 'case' Keyword ' ' Text '$deplibs_check_method' Name.Variable ' ' Text 'in' Keyword '\n\t ' Text 'match_pattern*' Text ')' Operator '\n\t\t' Text 'set' Name.Builtin ' ' Text 'dummy' Text ' ' Text '$deplibs_check_method' Name.Variable '\n\t ' Text 'match_pattern_regex' Name.Variable '=' Operator '`' Literal.String.Backtick 'expr' Text ' ' Text '"' Literal.String.Double '$deplibs_check_method' Name.Variable '"' Literal.String.Double ' ' Text ':' Text ' ' Text '"' Literal.String.Double '$2' Name.Variable ' \\(.*\\)' Literal.String.Double '"' Literal.String.Double '`' Literal.String.Backtick '\n\t\t' Text 'if' Keyword ' ' Text 'eval' Name.Builtin ' ' Text '$echo' Name.Variable ' ' Text '\\"' Literal.String.Escape '$deplib' Name.Variable '\\"' Literal.String.Escape ' ' Text '2' Literal.Number '>/dev/null' Text ' ' Text '\\\n' Literal.String.Escape '\t\t ' Text '|' Punctuation ' ' Text '$SED' Name.Variable ' ' Text '10q' Text ' ' Text '\\\n' Literal.String.Escape '\t\t ' Text '|' Punctuation ' ' Text '$EGREP' Name.Variable ' ' Text '"' Literal.String.Double '$match_pattern_regex' Name.Variable '"' Literal.String.Double ' ' Text '>' Text ' ' Text '/dev/null' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t\t ' Text 'valid_a_lib' Name.Variable '=' Operator 'yes' Text '\n\t\t' Text 'fi' Keyword '\n\t\t' Text ';' Punctuation ';' Punctuation '\n\t ' Text 'pass_all' Text ')' Operator '\n\t\t' Text 'valid_a_lib' Name.Variable '=' Operator 'yes' Text '\n\t\t' Text ';' Punctuation ';' Punctuation '\n ' Text 'esac' Keyword '\n\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$valid_a_lib' Name.Variable '"' Literal.String.Double ' ' Text '!' Text '=' Operator ' ' Text 'yes' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text '$echo' Name.Variable '\n\t ' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double '*** Warning: Trying to link with static lib archive ' Literal.String.Double '$deplib' Name.Variable '.' Literal.String.Double '"' Literal.String.Double '\n\t ' Text '$echo' Name.Variable ' ' Text '"*** I have the capability to make that library automatically link in when"' Literal.String.Double '\n\t ' Text '$echo' Name.Variable ' ' Text '"*** you link to this library. But I can only do this if you have a"' Literal.String.Double '\n\t ' Text '$echo' Name.Variable ' ' Text '"*** shared version of the library, which you do not appear to have"' Literal.String.Double '\n\t ' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double '*** because the file extensions .' Literal.String.Double '$libext' Name.Variable ' of this argument makes me believe' Literal.String.Double '"' Literal.String.Double '\n\t ' Text '$echo' Name.Variable ' ' Text '"*** that it is just a static archive that I should not used here."' Literal.String.Double '\n\t ' Text 'else' Keyword '\n\t ' Text '$echo' Name.Variable '\n\t ' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double '*** Warning: Linking the shared library ' Literal.String.Double '$output' Name.Variable ' against the' Literal.String.Double '"' Literal.String.Double '\n\t ' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double '*** static library ' Literal.String.Double '$deplib' Name.Variable ' is not portable!' Literal.String.Double '"' Literal.String.Double '\n\t ' Text 'deplibs' Name.Variable '=' Operator '"' Literal.String.Double '$deplib' Name.Variable ' ' Literal.String.Double '$deplibs' Name.Variable '"' Literal.String.Double '\n\t ' Text 'fi' Keyword '\n\t ' Text 'continue' Keyword '\n\t ' Text ';' Punctuation ';' Punctuation '\n\t ' Text 'prog' Text ')' Operator '\n\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$pass' Name.Variable '"' Literal.String.Double ' ' Text '!' Text '=' Operator ' ' Text 'link' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text 'deplibs' Name.Variable '=' Operator '"' Literal.String.Double '$deplib' Name.Variable ' ' Literal.String.Double '$deplibs' Name.Variable '"' Literal.String.Double '\n\t ' Text 'else' Keyword '\n\t ' Text 'compile_deplibs' Name.Variable '=' Operator '"' Literal.String.Double '$deplib' Name.Variable ' ' Literal.String.Double '$compile_deplibs' Name.Variable '"' Literal.String.Double '\n\t ' Text 'finalize_deplibs' Name.Variable '=' Operator '"' Literal.String.Double '$deplib' Name.Variable ' ' Literal.String.Double '$finalize_deplibs' Name.Variable '"' Literal.String.Double '\n\t ' Text 'fi' Keyword '\n\t ' Text 'continue' Keyword '\n\t ' Text ';' Punctuation ';' Punctuation '\n\t ' Text 'esac' Keyword ' ' Text '# linkmode\n' Comment.Single '\t ' Text ';' Punctuation ';' Punctuation ' ' Text '# *.$libext\n' Comment.Single '\t' Text '*.lo' Text ' ' Text '|' Punctuation ' ' Text '*.' Text '$objext' Name.Variable ')' Operator '\n\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$pass' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'conv' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text 'deplibs' Name.Variable '=' Operator '"' Literal.String.Double '$deplib' Name.Variable ' ' Literal.String.Double '$deplibs' Name.Variable '"' Literal.String.Double '\n\t ' Text 'elif' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$linkmode' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'prog' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$pass' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'dlpreopen' Text ' ' Text '||' Operator ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$dlopen_support' Name.Variable '"' Literal.String.Double ' ' Text '!' Text '=' Operator ' ' Text 'yes' Text ' ' Text '||' Operator ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$build_libtool_libs' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'no' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text "# If there is no dlopen support or we're linking statically,\n" Comment.Single '\t ' Text '# we need to preload.\n' Comment.Single '\t ' Text 'newdlprefiles' Name.Variable '=' Operator '"' Literal.String.Double '$newdlprefiles' Name.Variable ' ' Literal.String.Double '$deplib' Name.Variable '"' Literal.String.Double '\n\t ' Text 'compile_deplibs' Name.Variable '=' Operator '"' Literal.String.Double '$deplib' Name.Variable ' ' Literal.String.Double '$compile_deplibs' Name.Variable '"' Literal.String.Double '\n\t ' Text 'finalize_deplibs' Name.Variable '=' Operator '"' Literal.String.Double '$deplib' Name.Variable ' ' Literal.String.Double '$finalize_deplibs' Name.Variable '"' Literal.String.Double '\n\t ' Text 'else' Keyword '\n\t ' Text 'newdlfiles' Name.Variable '=' Operator '"' Literal.String.Double '$newdlfiles' Name.Variable ' ' Literal.String.Double '$deplib' Name.Variable '"' Literal.String.Double '\n\t ' Text 'fi' Keyword '\n\t ' Text 'fi' Keyword '\n\t ' Text 'continue' Keyword '\n\t ' Text ';' Punctuation ';' Punctuation '\n\t' Text '%DEPLIBS%' Text ')' Operator '\n\t ' Text 'alldeplibs' Name.Variable '=' Operator 'yes' Text '\n\t ' Text 'continue' Keyword '\n\t ' Text ';' Punctuation ';' Punctuation '\n\t' Text 'esac' Keyword ' ' Text '# case $deplib\n' Comment.Single '\t' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$found' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'yes' Text ' ' Text '||' Operator ' ' Text 'test' Name.Builtin ' ' Text '-f' Text ' ' Text '"' Literal.String.Double '$lib' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword ' ' Text ':' Text '\n\t' Text 'else' Keyword '\n\t ' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double '$modename' Name.Variable ': cannot find the library \\`' Literal.String.Double '$lib' Name.Variable "' or unhandled argument \\`" Literal.String.Double '$deplib' Name.Variable "'" Literal.String.Double '"' Literal.String.Double ' ' Text '1' Literal.Number '>' Text '&' Punctuation '2' Literal.Number '\n\t ' Text 'exit' Name.Builtin ' ' Text '$EXIT_FAILURE' Name.Variable '\n\t' Text 'fi' Keyword '\n\n\t' Text '# Check to see that this really is a libtool archive.\n' Comment.Single '\t' Text 'if' Keyword ' ' Text '(' Operator '${' Literal.String.Interpol 'SED' Name.Variable '}' Literal.String.Interpol ' ' Text '-e' Text ' ' Text "'2q'" Literal.String.Single ' ' Text '$lib' Name.Variable ' ' Text '|' Punctuation ' ' Text 'grep' Text ' ' Text '"' Literal.String.Double '^# Generated by .*' Literal.String.Double '$PACKAGE' Name.Variable '"' Literal.String.Double ')' Operator ' ' Text '>/dev/null' Text ' ' Text '2' Literal.Number '>' Text '&' Punctuation '1' Literal.Number ';' Punctuation ' ' Text 'then' Keyword ' ' Text ':' Text '\n\t' Text 'else' Keyword '\n\t ' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double '$modename' Name.Variable ': \\`' Literal.String.Double '$lib' Name.Variable "' is not a valid libtool archive" Literal.String.Double '"' Literal.String.Double ' ' Text '1' Literal.Number '>' Text '&' Punctuation '2' Literal.Number '\n\t ' Text 'exit' Name.Builtin ' ' Text '$EXIT_FAILURE' Name.Variable '\n\t' Text 'fi' Keyword '\n\n\t' Text 'ladir' Name.Variable '=' Operator '`' Literal.String.Backtick '$echo' Name.Variable ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$lib' Name.Variable '"' Literal.String.Double ' ' Text '|' Punctuation ' ' Text '$Xsed' Name.Variable ' ' Text '-e' Text ' ' Text "'s%/[^/]*$%%'" Literal.String.Single '`' Literal.String.Backtick '\n\t' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$ladir' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$lib' Name.Variable '"' Literal.String.Double ' ' Text '&&' Operator ' ' Text 'ladir' Name.Variable '=' Operator '"."' Literal.String.Double '\n\n\t' Text 'dlname' Name.Variable '=' Operator '\n\t' Text 'dlopen' Name.Variable '=' Operator '\n\t' Text 'dlpreopen' Name.Variable '=' Operator '\n\t' Text 'libdir' Name.Variable '=' Operator '\n\t' Text 'library_names' Name.Variable '=' Operator '\n\t' Text 'old_library' Name.Variable '=' Operator '\n\t' Text '# If the library was installed with an old release of libtool,\n' Comment.Single '\t' Text '# it will not redefine variables installed, or shouldnotlink\n' Comment.Single '\t' Text 'installed' Name.Variable '=' Operator 'yes' Text '\n\t' Text 'shouldnotlink' Name.Variable '=' Operator 'no' Text '\n\t' Text 'avoidtemprpath' Name.Variable '=' Operator '\n\n\n\t' Text '# Read the .la file\n' Comment.Single '\t' Text 'case' Keyword ' ' Text '$lib' Name.Variable ' ' Text 'in' Keyword '\n\t' Text '*/*' Text ' ' Text '|' Punctuation ' ' Text '*' Text '\\\\' Literal.String.Escape '*' Text ')' Operator ' ' Text '.' Text ' ' Text '$lib' Name.Variable ' ' Text ';' Punctuation ';' Punctuation '\n\t' Text '*' Text ')' Operator ' ' Text '.' Text ' ' Text './' Text '$lib' Name.Variable ' ' Text ';' Punctuation ';' Punctuation '\n\t' Text 'esac' Keyword '\n\n\t' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$linkmode' Name.Variable ',' Literal.String.Double '$pass' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text '"lib,link"' Literal.String.Double ' ' Text '||' Operator '\n\t ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$linkmode' Name.Variable ',' Literal.String.Double '$pass' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text '"prog,scan"' Literal.String.Double ' ' Text '||' Operator '\n\t ' Text '{' Operator ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$linkmode' Name.Variable '"' Literal.String.Double ' ' Text '!' Text '=' Operator ' ' Text 'prog' Text ' ' Text '&&' Operator ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$linkmode' Name.Variable '"' Literal.String.Double ' ' Text '!' Text '=' Operator ' ' Text 'lib' Text ';' Punctuation ' ' Text '}' Operator ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text 'test' Name.Builtin ' ' Text '-n' Text ' ' Text '"' Literal.String.Double '$dlopen' Name.Variable '"' Literal.String.Double ' ' Text '&&' Operator ' ' Text 'dlfiles' Name.Variable '=' Operator '"' Literal.String.Double '$dlfiles' Name.Variable ' ' Literal.String.Double '$dlopen' Name.Variable '"' Literal.String.Double '\n\t ' Text 'test' Name.Builtin ' ' Text '-n' Text ' ' Text '"' Literal.String.Double '$dlpreopen' Name.Variable '"' Literal.String.Double ' ' Text '&&' Operator ' ' Text 'dlprefiles' Name.Variable '=' Operator '"' Literal.String.Double '$dlprefiles' Name.Variable ' ' Literal.String.Double '$dlpreopen' Name.Variable '"' Literal.String.Double '\n\t' Text 'fi' Keyword '\n\n\t' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$pass' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'conv' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text '# Only check for convenience libraries\n' Comment.Single '\t ' Text 'deplibs' Name.Variable '=' Operator '"' Literal.String.Double '$lib' Name.Variable ' ' Literal.String.Double '$deplibs' Name.Variable '"' Literal.String.Double '\n\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '-z' Text ' ' Text '"' Literal.String.Double '$libdir' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '-z' Text ' ' Text '"' Literal.String.Double '$old_library' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double '$modename' Name.Variable ': cannot find name of link library for \\`' Literal.String.Double '$lib' Name.Variable "'" Literal.String.Double '"' Literal.String.Double ' ' Text '1' Literal.Number '>' Text '&' Punctuation '2' Literal.Number '\n\t ' Text 'exit' Name.Builtin ' ' Text '$EXIT_FAILURE' Name.Variable '\n\t ' Text 'fi' Keyword '\n\t ' Text '# It is a libtool convenience library, so add in its objects.\n' Comment.Single '\t ' Text 'convenience' Name.Variable '=' Operator '"' Literal.String.Double '$convenience' Name.Variable ' ' Literal.String.Double '$ladir' Name.Variable '/' Literal.String.Double '$objdir' Name.Variable '/' Literal.String.Double '$old_library' Name.Variable '"' Literal.String.Double '\n\t ' Text 'old_convenience' Name.Variable '=' Operator '"' Literal.String.Double '$old_convenience' Name.Variable ' ' Literal.String.Double '$ladir' Name.Variable '/' Literal.String.Double '$objdir' Name.Variable '/' Literal.String.Double '$old_library' Name.Variable '"' Literal.String.Double '\n\t ' Text 'tmp_libs' Name.Variable '=' Operator '\n\t ' Text 'for' Keyword ' ' Text 'deplib' Text ' ' Text 'in' Keyword ' ' Text '$dependency_libs' Name.Variable ';' Punctuation ' ' Text 'do' Keyword '\n\t ' Text 'deplibs' Name.Variable '=' Operator '"' Literal.String.Double '$deplib' Name.Variable ' ' Literal.String.Double '$deplibs' Name.Variable '"' Literal.String.Double '\n ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$duplicate_deps' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text '"Xyes"' Literal.String.Double ' ' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text 'case' Keyword ' ' Text '"' Literal.String.Double '$tmp_libs' Name.Variable ' ' Literal.String.Double '"' Literal.String.Double ' ' Text 'in' Keyword '\n\t ' Text '*' Text '"' Literal.String.Double ' ' Literal.String.Double '$deplib' Name.Variable ' ' Literal.String.Double '"' Literal.String.Double '*' Text ')' Operator ' ' Text 'specialdeplibs' Name.Variable '=' Operator '"' Literal.String.Double '$specialdeplibs' Name.Variable ' ' Literal.String.Double '$deplib' Name.Variable '"' Literal.String.Double ' ' Text ';' Punctuation ';' Punctuation '\n\t ' Text 'esac' Keyword '\n ' Text 'fi' Keyword '\n\t ' Text 'tmp_libs' Name.Variable '=' Operator '"' Literal.String.Double '$tmp_libs' Name.Variable ' ' Literal.String.Double '$deplib' Name.Variable '"' Literal.String.Double '\n\t ' Text 'done' Keyword '\n\t ' Text 'elif' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$linkmode' Name.Variable '"' Literal.String.Double ' ' Text '!' Text '=' Operator ' ' Text 'prog' Text ' ' Text '&&' Operator ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$linkmode' Name.Variable '"' Literal.String.Double ' ' Text '!' Text '=' Operator ' ' Text 'lib' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double '$modename' Name.Variable ': \\`' Literal.String.Double '$lib' Name.Variable "' is not a convenience library" Literal.String.Double '"' Literal.String.Double ' ' Text '1' Literal.Number '>' Text '&' Punctuation '2' Literal.Number '\n\t ' Text 'exit' Name.Builtin ' ' Text '$EXIT_FAILURE' Name.Variable '\n\t ' Text 'fi' Keyword '\n\t ' Text 'continue' Keyword '\n\t' Text 'fi' Keyword ' ' Text '# $pass = conv\n' Comment.Single '\n\n\t' Text '# Get the name of the library we link against.\n' Comment.Single '\t' Text 'linklib' Name.Variable '=' Operator '\n\t' Text 'for' Keyword ' ' Text 'l' Text ' ' Text 'in' Keyword ' ' Text '$old_library' Name.Variable ' ' Text '$library_names' Name.Variable ';' Punctuation ' ' Text 'do' Keyword '\n\t ' Text 'linklib' Name.Variable '=' Operator '"' Literal.String.Double '$l' Name.Variable '"' Literal.String.Double '\n\t' Text 'done' Keyword '\n\t' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '-z' Text ' ' Text '"' Literal.String.Double '$linklib' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double '$modename' Name.Variable ': cannot find name of link library for \\`' Literal.String.Double '$lib' Name.Variable "'" Literal.String.Double '"' Literal.String.Double ' ' Text '1' Literal.Number '>' Text '&' Punctuation '2' Literal.Number '\n\t ' Text 'exit' Name.Builtin ' ' Text '$EXIT_FAILURE' Name.Variable '\n\t' Text 'fi' Keyword '\n\n\t' Text '# This library was specified with -dlopen.\n' Comment.Single '\t' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$pass' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'dlopen' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '-z' Text ' ' Text '"' Literal.String.Double '$libdir' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double '$modename' Name.Variable ': cannot -dlopen a convenience library: \\`' Literal.String.Double '$lib' Name.Variable "'" Literal.String.Double '"' Literal.String.Double ' ' Text '1' Literal.Number '>' Text '&' Punctuation '2' Literal.Number '\n\t ' Text 'exit' Name.Builtin ' ' Text '$EXIT_FAILURE' Name.Variable '\n\t ' Text 'fi' Keyword '\n\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '-z' Text ' ' Text '"' Literal.String.Double '$dlname' Name.Variable '"' Literal.String.Double ' ' Text '||' Operator '\n\t ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$dlopen_support' Name.Variable '"' Literal.String.Double ' ' Text '!' Text '=' Operator ' ' Text 'yes' Text ' ' Text '||' Operator '\n\t ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$build_libtool_libs' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'no' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text "# If there is no dlname, no dlopen support or we're linking\n" Comment.Single '\t ' Text '# statically, we need to preload. We also need to preload any\n' Comment.Single '\t ' Text "# dependent libraries so libltdl's deplib preloader doesn't\n" Comment.Single '\t ' Text '# bomb out in the load deplibs phase.\n' Comment.Single '\t ' Text 'dlprefiles' Name.Variable '=' Operator '"' Literal.String.Double '$dlprefiles' Name.Variable ' ' Literal.String.Double '$lib' Name.Variable ' ' Literal.String.Double '$dependency_libs' Name.Variable '"' Literal.String.Double '\n\t ' Text 'else' Keyword '\n\t ' Text 'newdlfiles' Name.Variable '=' Operator '"' Literal.String.Double '$newdlfiles' Name.Variable ' ' Literal.String.Double '$lib' Name.Variable '"' Literal.String.Double '\n\t ' Text 'fi' Keyword '\n\t ' Text 'continue' Keyword '\n\t' Text 'fi' Keyword ' ' Text '# $pass = dlopen\n' Comment.Single '\n\t' Text '# We need an absolute path.\n' Comment.Single '\t' Text 'case' Keyword ' ' Text '$ladir' Name.Variable ' ' Text 'in' Keyword '\n\t' Text '[' Operator '\\\\' Literal.String.Escape '/' Text ']' Operator '*' Text ' ' Text '|' Punctuation ' ' Text '[' Operator 'A-Za-z' Text ']' Operator ':' Text '[' Operator '\\\\' Literal.String.Escape '/' Text ']' Operator '*' Text ')' Operator ' ' Text 'abs_ladir' Name.Variable '=' Operator '"' Literal.String.Double '$ladir' Name.Variable '"' Literal.String.Double ' ' Text ';' Punctuation ';' Punctuation '\n\t' Text '*' Text ')' Operator '\n\t ' Text 'abs_ladir' Name.Variable '=' Operator '`' Literal.String.Backtick 'cd' Name.Builtin ' ' Text '"' Literal.String.Double '$ladir' Name.Variable '"' Literal.String.Double ' ' Text '&&' Operator ' ' Text 'pwd' Name.Builtin '`' Literal.String.Backtick '\n\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '-z' Text ' ' Text '"' Literal.String.Double '$abs_ladir' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double '$modename' Name.Variable ': warning: cannot determine absolute directory name of \\`' Literal.String.Double '$ladir' Name.Variable "'" Literal.String.Double '"' Literal.String.Double ' ' Text '1' Literal.Number '>' Text '&' Punctuation '2' Literal.Number '\n\t ' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double '$modename' Name.Variable ': passing it literally to the linker, although it might fail' Literal.String.Double '"' Literal.String.Double ' ' Text '1' Literal.Number '>' Text '&' Punctuation '2' Literal.Number '\n\t ' Text 'abs_ladir' Name.Variable '=' Operator '"' Literal.String.Double '$ladir' Name.Variable '"' Literal.String.Double '\n\t ' Text 'fi' Keyword '\n\t ' Text ';' Punctuation ';' Punctuation '\n\t' Text 'esac' Keyword '\n\t' Text 'laname' Name.Variable '=' Operator '`' Literal.String.Backtick '$echo' Name.Variable ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$lib' Name.Variable '"' Literal.String.Double ' ' Text '|' Punctuation ' ' Text '$Xsed' Name.Variable ' ' Text '-e' Text ' ' Text "'s%^.*/%%'" Literal.String.Single '`' Literal.String.Backtick '\n\n\t' Text '# Find the relevant object directory and library name.\n' Comment.Single '\t' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$installed' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'Xyes' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '!' Text ' ' Text '-f' Text ' ' Text '"' Literal.String.Double '$libdir' Name.Variable '/' Literal.String.Double '$linklib' Name.Variable '"' Literal.String.Double ' ' Text '&&' Operator ' ' Text 'test' Name.Builtin ' ' Text '-f' Text ' ' Text '"' Literal.String.Double '$abs_ladir' Name.Variable '/' Literal.String.Double '$linklib' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double '$modename' Name.Variable ': warning: library \\`' Literal.String.Double '$lib' Name.Variable "' was moved." Literal.String.Double '"' Literal.String.Double ' ' Text '1' Literal.Number '>' Text '&' Punctuation '2' Literal.Number '\n\t ' Text 'dir' Name.Variable '=' Operator '"' Literal.String.Double '$ladir' Name.Variable '"' Literal.String.Double '\n\t ' Text 'absdir' Name.Variable '=' Operator '"' Literal.String.Double '$abs_ladir' Name.Variable '"' Literal.String.Double '\n\t ' Text 'libdir' Name.Variable '=' Operator '"' Literal.String.Double '$abs_ladir' Name.Variable '"' Literal.String.Double '\n\t ' Text 'else' Keyword '\n\t ' Text 'dir' Name.Variable '=' Operator '"' Literal.String.Double '$libdir' Name.Variable '"' Literal.String.Double '\n\t ' Text 'absdir' Name.Variable '=' Operator '"' Literal.String.Double '$libdir' Name.Variable '"' Literal.String.Double '\n\t ' Text 'fi' Keyword '\n\t ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$hardcode_automatic' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'Xyes' Text ' ' Text '&&' Operator ' ' Text 'avoidtemprpath' Name.Variable '=' Operator 'yes' Text '\n\t' Text 'else' Keyword '\n\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '!' Text ' ' Text '-f' Text ' ' Text '"' Literal.String.Double '$ladir' Name.Variable '/' Literal.String.Double '$objdir' Name.Variable '/' Literal.String.Double '$linklib' Name.Variable '"' Literal.String.Double ' ' Text '&&' Operator ' ' Text 'test' Name.Builtin ' ' Text '-f' Text ' ' Text '"' Literal.String.Double '$abs_ladir' Name.Variable '/' Literal.String.Double '$linklib' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text 'dir' Name.Variable '=' Operator '"' Literal.String.Double '$ladir' Name.Variable '"' Literal.String.Double '\n\t ' Text 'absdir' Name.Variable '=' Operator '"' Literal.String.Double '$abs_ladir' Name.Variable '"' Literal.String.Double '\n\t ' Text '# Remove this search path later\n' Comment.Single '\t ' Text 'notinst_path' Name.Variable '=' Operator '"' Literal.String.Double '$notinst_path' Name.Variable ' ' Literal.String.Double '$abs_ladir' Name.Variable '"' Literal.String.Double '\n\t ' Text 'else' Keyword '\n\t ' Text 'dir' Name.Variable '=' Operator '"' Literal.String.Double '$ladir' Name.Variable '/' Literal.String.Double '$objdir' Name.Variable '"' Literal.String.Double '\n\t ' Text 'absdir' Name.Variable '=' Operator '"' Literal.String.Double '$abs_ladir' Name.Variable '/' Literal.String.Double '$objdir' Name.Variable '"' Literal.String.Double '\n\t ' Text '# Remove this search path later\n' Comment.Single '\t ' Text 'notinst_path' Name.Variable '=' Operator '"' Literal.String.Double '$notinst_path' Name.Variable ' ' Literal.String.Double '$abs_ladir' Name.Variable '"' Literal.String.Double '\n\t ' Text 'fi' Keyword '\n\t' Text 'fi' Keyword ' ' Text '# $installed = yes\n' Comment.Single '\t' Text 'name' Name.Variable '=' Operator '`' Literal.String.Backtick '$echo' Name.Variable ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$laname' Name.Variable '"' Literal.String.Double ' ' Text '|' Punctuation ' ' Text '$Xsed' Name.Variable ' ' Text '-e' Text ' ' Text "'s/\\.la$//'" Literal.String.Single ' ' Text '-e' Text ' ' Text "'s/^lib//'" Literal.String.Single '`' Literal.String.Backtick '\n\n\t' Text '# This library was specified with -dlpreopen.\n' Comment.Single '\t' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$pass' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'dlpreopen' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '-z' Text ' ' Text '"' Literal.String.Double '$libdir' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double '$modename' Name.Variable ': cannot -dlpreopen a convenience library: \\`' Literal.String.Double '$lib' Name.Variable "'" Literal.String.Double '"' Literal.String.Double ' ' Text '1' Literal.Number '>' Text '&' Punctuation '2' Literal.Number '\n\t ' Text 'exit' Name.Builtin ' ' Text '$EXIT_FAILURE' Name.Variable '\n\t ' Text 'fi' Keyword '\n\t ' Text '# Prefer using a static library (so that no silly _DYNAMIC symbols\n' Comment.Single '\t ' Text '# are required to link).\n' Comment.Single '\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '-n' Text ' ' Text '"' Literal.String.Double '$old_library' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text 'newdlprefiles' Name.Variable '=' Operator '"' Literal.String.Double '$newdlprefiles' Name.Variable ' ' Literal.String.Double '$dir' Name.Variable '/' Literal.String.Double '$old_library' Name.Variable '"' Literal.String.Double '\n\t ' Text '# Otherwise, use the dlname, so that lt_dlopen finds it.\n' Comment.Single '\t ' Text 'elif' Keyword ' ' Text 'test' Name.Builtin ' ' Text '-n' Text ' ' Text '"' Literal.String.Double '$dlname' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text 'newdlprefiles' Name.Variable '=' Operator '"' Literal.String.Double '$newdlprefiles' Name.Variable ' ' Literal.String.Double '$dir' Name.Variable '/' Literal.String.Double '$dlname' Name.Variable '"' Literal.String.Double '\n\t ' Text 'else' Keyword '\n\t ' Text 'newdlprefiles' Name.Variable '=' Operator '"' Literal.String.Double '$newdlprefiles' Name.Variable ' ' Literal.String.Double '$dir' Name.Variable '/' Literal.String.Double '$linklib' Name.Variable '"' Literal.String.Double '\n\t ' Text 'fi' Keyword '\n\t' Text 'fi' Keyword ' ' Text '# $pass = dlpreopen\n' Comment.Single '\n\t' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '-z' Text ' ' Text '"' Literal.String.Double '$libdir' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text '# Link the convenience library\n' Comment.Single '\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$linkmode' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'lib' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text 'deplibs' Name.Variable '=' Operator '"' Literal.String.Double '$dir' Name.Variable '/' Literal.String.Double '$old_library' Name.Variable ' ' Literal.String.Double '$deplibs' Name.Variable '"' Literal.String.Double '\n\t ' Text 'elif' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$linkmode' Name.Variable ',' Literal.String.Double '$pass' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text '"prog,link"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text 'compile_deplibs' Name.Variable '=' Operator '"' Literal.String.Double '$dir' Name.Variable '/' Literal.String.Double '$old_library' Name.Variable ' ' Literal.String.Double '$compile_deplibs' Name.Variable '"' Literal.String.Double '\n\t ' Text 'finalize_deplibs' Name.Variable '=' Operator '"' Literal.String.Double '$dir' Name.Variable '/' Literal.String.Double '$old_library' Name.Variable ' ' Literal.String.Double '$finalize_deplibs' Name.Variable '"' Literal.String.Double '\n\t ' Text 'else' Keyword '\n\t ' Text 'deplibs' Name.Variable '=' Operator '"' Literal.String.Double '$lib' Name.Variable ' ' Literal.String.Double '$deplibs' Name.Variable '"' Literal.String.Double ' ' Text '# used for prog,scan pass\n' Comment.Single '\t ' Text 'fi' Keyword '\n\t ' Text 'continue' Keyword '\n\t' Text 'fi' Keyword '\n\n\n\t' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$linkmode' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'prog' Text ' ' Text '&&' Operator ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$pass' Name.Variable '"' Literal.String.Double ' ' Text '!' Text '=' Operator ' ' Text 'link' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text 'newlib_search_path' Name.Variable '=' Operator '"' Literal.String.Double '$newlib_search_path' Name.Variable ' ' Literal.String.Double '$ladir' Name.Variable '"' Literal.String.Double '\n\t ' Text 'deplibs' Name.Variable '=' Operator '"' Literal.String.Double '$lib' Name.Variable ' ' Literal.String.Double '$deplibs' Name.Variable '"' Literal.String.Double '\n\n\t ' Text 'linkalldeplibs' Name.Variable '=' Operator 'no' Text '\n\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$link_all_deplibs' Name.Variable '"' Literal.String.Double ' ' Text '!' Text '=' Operator ' ' Text 'no' Text ' ' Text '||' Operator ' ' Text 'test' Name.Builtin ' ' Text '-z' Text ' ' Text '"' Literal.String.Double '$library_names' Name.Variable '"' Literal.String.Double ' ' Text '||' Operator '\n\t ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$build_libtool_libs' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'no' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text 'linkalldeplibs' Name.Variable '=' Operator 'yes' Text '\n\t ' Text 'fi' Keyword '\n\n\t ' Text 'tmp_libs' Name.Variable '=' Operator '\n\t ' Text 'for' Keyword ' ' Text 'deplib' Text ' ' Text 'in' Keyword ' ' Text '$dependency_libs' Name.Variable ';' Punctuation ' ' Text 'do' Keyword '\n\t ' Text 'case' Keyword ' ' Text '$deplib' Name.Variable ' ' Text 'in' Keyword '\n\t ' Text '-L*' Text ')' Operator ' ' Text 'newlib_search_path' Name.Variable '=' Operator '"' Literal.String.Double '$newlib_search_path' Name.Variable ' ' Literal.String.Double '"' Literal.String.Double '`' Literal.String.Backtick '$echo' Name.Variable ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$deplib' Name.Variable '"' Literal.String.Double ' ' Text '|' Punctuation ' ' Text '$Xsed' Name.Variable ' ' Text '-e' Text ' ' Text "'s/^-L//'" Literal.String.Single '`' Literal.String.Backtick ';' Punctuation ';' Punctuation ' ' Text '### testsuite: skip nested quoting test\n' Comment.Single '\t ' Text 'esac' Keyword '\n\t ' Text '# Need to link against all dependency_libs?\n' Comment.Single '\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$linkalldeplibs' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'yes' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text 'deplibs' Name.Variable '=' Operator '"' Literal.String.Double '$deplib' Name.Variable ' ' Literal.String.Double '$deplibs' Name.Variable '"' Literal.String.Double '\n\t ' Text 'else' Keyword '\n\t ' Text '# Need to hardcode shared library paths\n' Comment.Single '\t ' Text '# or/and link against static libraries\n' Comment.Single '\t ' Text 'newdependency_libs' Name.Variable '=' Operator '"' Literal.String.Double '$deplib' Name.Variable ' ' Literal.String.Double '$newdependency_libs' Name.Variable '"' Literal.String.Double '\n\t ' Text 'fi' Keyword '\n\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double 'X' Literal.String.Double '$duplicate_deps' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text '"Xyes"' Literal.String.Double ' ' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text 'case' Keyword ' ' Text '"' Literal.String.Double '$tmp_libs' Name.Variable ' ' Literal.String.Double '"' Literal.String.Double ' ' Text 'in' Keyword '\n\t ' Text '*' Text '"' Literal.String.Double ' ' Literal.String.Double '$deplib' Name.Variable ' ' Literal.String.Double '"' Literal.String.Double '*' Text ')' Operator ' ' Text 'specialdeplibs' Name.Variable '=' Operator '"' Literal.String.Double '$specialdeplibs' Name.Variable ' ' Literal.String.Double '$deplib' Name.Variable '"' Literal.String.Double ' ' Text ';' Punctuation ';' Punctuation '\n\t ' Text 'esac' Keyword '\n\t ' Text 'fi' Keyword '\n\t ' Text 'tmp_libs' Name.Variable '=' Operator '"' Literal.String.Double '$tmp_libs' Name.Variable ' ' Literal.String.Double '$deplib' Name.Variable '"' Literal.String.Double '\n\t ' Text 'done' Keyword ' ' Text '# for deplib\n' Comment.Single '\t ' Text 'continue' Keyword '\n\t' Text 'fi' Keyword ' ' Text '# $linkmode = prog...\n' Comment.Single '\n\t' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$linkmode' Name.Variable ',' Literal.String.Double '$pass' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text '"prog,link"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '-n' Text ' ' Text '"' Literal.String.Double '$library_names' Name.Variable '"' Literal.String.Double ' ' Text '&&' Operator '\n\t ' Text '{' Operator ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$prefer_static_libs' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'no' Text ' ' Text '||' Operator ' ' Text 'test' Name.Builtin ' ' Text '-z' Text ' ' Text '"' Literal.String.Double '$old_library' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text '}' Operator ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text '# We need to hardcode the library path\n' Comment.Single '\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '-n' Text ' ' Text '"' Literal.String.Double '$shlibpath_var' Name.Variable '"' Literal.String.Double ' ' Text '&&' Operator ' ' Text 'test' Name.Builtin ' ' Text '-z' Text ' ' Text '"' Literal.String.Double '$avoidtemprpath' Name.Variable '"' Literal.String.Double ' ' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text '# Make sure the rpath contains only unique directories.\n' Comment.Single '\t ' Text 'case' Keyword ' ' Text '"' Literal.String.Double '$temp_rpath' Name.Variable ' ' Literal.String.Double '"' Literal.String.Double ' ' Text 'in' Keyword '\n\t ' Text '*' Text '"' Literal.String.Double ' ' Literal.String.Double '$dir' Name.Variable ' ' Literal.String.Double '"' Literal.String.Double '*' Text ')' Operator ' ' Text ';' Punctuation ';' Punctuation '\n\t ' Text '*' Text '"' Literal.String.Double ' ' Literal.String.Double '$absdir' Name.Variable ' ' Literal.String.Double '"' Literal.String.Double '*' Text ')' Operator ' ' Text ';' Punctuation ';' Punctuation '\n\t ' Text '*' Text ')' Operator ' ' Text 'temp_rpath' Name.Variable '=' Operator '"' Literal.String.Double '$temp_rpath' Name.Variable ' ' Literal.String.Double '$absdir' Name.Variable '"' Literal.String.Double ' ' Text ';' Punctuation ';' Punctuation '\n\t ' Text 'esac' Keyword '\n\t ' Text 'fi' Keyword '\n\n\t ' Text '# Hardcode the library path.\n' Comment.Single '\t ' Text '# Skip directories that are in the system default run-time\n' Comment.Single '\t ' Text '# search path.\n' Comment.Single '\t ' Text 'case' Keyword ' ' Text '"' Literal.String.Double ' ' Literal.String.Double '$sys_lib_dlsearch_path' Name.Variable ' ' Literal.String.Double '"' Literal.String.Double ' ' Text 'in' Keyword '\n\t ' Text '*' Text '"' Literal.String.Double ' ' Literal.String.Double '$absdir' Name.Variable ' ' Literal.String.Double '"' Literal.String.Double '*' Text ')' Operator ' ' Text ';' Punctuation ';' Punctuation '\n\t ' Text '*' Text ')' Operator '\n\t ' Text 'case' Keyword ' ' Text '"' Literal.String.Double '$compile_rpath' Name.Variable ' ' Literal.String.Double '"' Literal.String.Double ' ' Text 'in' Keyword '\n\t ' Text '*' Text '"' Literal.String.Double ' ' Literal.String.Double '$absdir' Name.Variable ' ' Literal.String.Double '"' Literal.String.Double '*' Text ')' Operator ' ' Text ';' Punctuation ';' Punctuation '\n\t ' Text '*' Text ')' Operator ' ' Text 'compile_rpath' Name.Variable '=' Operator '"' Literal.String.Double '$compile_rpath' Name.Variable ' ' Literal.String.Double '$absdir' Name.Variable '"' Literal.String.Double '\n\t ' Text 'esac' Keyword '\n\t ' Text ';' Punctuation ';' Punctuation '\n\t ' Text 'esac' Keyword '\n\t ' Text 'case' Keyword ' ' Text '"' Literal.String.Double ' ' Literal.String.Double '$sys_lib_dlsearch_path' Name.Variable ' ' Literal.String.Double '"' Literal.String.Double ' ' Text 'in' Keyword '\n\t ' Text '*' Text '"' Literal.String.Double ' ' Literal.String.Double '$libdir' Name.Variable ' ' Literal.String.Double '"' Literal.String.Double '*' Text ')' Operator ' ' Text ';' Punctuation ';' Punctuation '\n\t ' Text '*' Text ')' Operator '\n\t ' Text 'case' Keyword ' ' Text '"' Literal.String.Double '$finalize_rpath' Name.Variable ' ' Literal.String.Double '"' Literal.String.Double ' ' Text 'in' Keyword '\n\t ' Text '*' Text '"' Literal.String.Double ' ' Literal.String.Double '$libdir' Name.Variable ' ' Literal.String.Double '"' Literal.String.Double '*' Text ')' Operator ' ' Text ';' Punctuation ';' Punctuation '\n\t ' Text '*' Text ')' Operator ' ' Text 'finalize_rpath' Name.Variable '=' Operator '"' Literal.String.Double '$finalize_rpath' Name.Variable ' ' Literal.String.Double '$libdir' Name.Variable '"' Literal.String.Double '\n\t ' Text 'esac' Keyword '\n\t ' Text ';' Punctuation ';' Punctuation '\n\t ' Text 'esac' Keyword '\n\t ' Text 'fi' Keyword ' ' Text '# $linkmode,$pass = prog,link...\n' Comment.Single '\n\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$alldeplibs' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'yes' Text ' ' Text '&&' Operator '\n\t ' Text '{' Operator ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$deplibs_check_method' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'pass_all' Text ' ' Text '||' Operator '\n\t ' Text '{' Operator ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$build_libtool_libs' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'yes' Text ' ' Text '&&' Operator '\n\t\t ' Text 'test' Name.Builtin ' ' Text '-n' Text ' ' Text '"' Literal.String.Double '$library_names' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text '}' Operator ';' Punctuation ' ' Text '}' Operator ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text '# We only need to search for static libraries\n' Comment.Single '\t ' Text 'continue' Keyword '\n\t ' Text 'fi' Keyword '\n\t' Text 'fi' Keyword '\n\n\t' Text 'link_static' Name.Variable '=' Operator 'no' Text ' ' Text '# Whether the deplib will be linked statically\n' Comment.Single '\t' Text 'use_static_libs' Name.Variable '=' Operator '$prefer_static_libs' Name.Variable '\n\t' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$use_static_libs' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'built' Text ' ' Text '&&' Operator ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$installed' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'yes' Text ' ' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text 'use_static_libs' Name.Variable '=' Operator 'no' Text '\n\t' Text 'fi' Keyword '\n\t' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '-n' Text ' ' Text '"' Literal.String.Double '$library_names' Name.Variable '"' Literal.String.Double ' ' Text '&&' Operator '\n\t ' Text '{' Operator ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$use_static_libs' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'no' Text ' ' Text '||' Operator ' ' Text 'test' Name.Builtin ' ' Text '-z' Text ' ' Text '"' Literal.String.Double '$old_library' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text '}' Operator ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$installed' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'no' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text 'notinst_deplibs' Name.Variable '=' Operator '"' Literal.String.Double '$notinst_deplibs' Name.Variable ' ' Literal.String.Double '$lib' Name.Variable '"' Literal.String.Double '\n\t ' Text 'need_relink' Name.Variable '=' Operator 'yes' Text '\n\t ' Text 'fi' Keyword '\n\t ' Text '# This is a shared library\n' Comment.Single '\n\t ' Text "# Warn about portability, can't link against -module's on\n" Comment.Single '\t ' Text '# some systems (darwin)\n' Comment.Single '\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$shouldnotlink' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'yes' Text ' ' Text '&&' Operator ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$pass' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'link' Text ' ' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text '$echo' Name.Variable '\n\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$linkmode' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'prog' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double '*** Warning: Linking the executable ' Literal.String.Double '$output' Name.Variable ' against the loadable module' Literal.String.Double '"' Literal.String.Double '\n\t ' Text 'else' Keyword '\n\t ' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double '*** Warning: Linking the shared library ' Literal.String.Double '$output' Name.Variable ' against the loadable module' Literal.String.Double '"' Literal.String.Double '\n\t ' Text 'fi' Keyword '\n\t ' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double '*** ' Literal.String.Double '$linklib' Name.Variable ' is not portable!' Literal.String.Double '"' Literal.String.Double '\n\t ' Text 'fi' Keyword '\n\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$linkmode' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'lib' Text ' ' Text '&&' Operator '\n\t ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$hardcode_into_libs' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'yes' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text '# Hardcode the library path.\n' Comment.Single '\t ' Text '# Skip directories that are in the system default run-time\n' Comment.Single '\t ' Text '# search path.\n' Comment.Single '\t ' Text 'case' Keyword ' ' Text '"' Literal.String.Double ' ' Literal.String.Double '$sys_lib_dlsearch_path' Name.Variable ' ' Literal.String.Double '"' Literal.String.Double ' ' Text 'in' Keyword '\n\t ' Text '*' Text '"' Literal.String.Double ' ' Literal.String.Double '$absdir' Name.Variable ' ' Literal.String.Double '"' Literal.String.Double '*' Text ')' Operator ' ' Text ';' Punctuation ';' Punctuation '\n\t ' Text '*' Text ')' Operator '\n\t ' Text 'case' Keyword ' ' Text '"' Literal.String.Double '$compile_rpath' Name.Variable ' ' Literal.String.Double '"' Literal.String.Double ' ' Text 'in' Keyword '\n\t ' Text '*' Text '"' Literal.String.Double ' ' Literal.String.Double '$absdir' Name.Variable ' ' Literal.String.Double '"' Literal.String.Double '*' Text ')' Operator ' ' Text ';' Punctuation ';' Punctuation '\n\t ' Text '*' Text ')' Operator ' ' Text 'compile_rpath' Name.Variable '=' Operator '"' Literal.String.Double '$compile_rpath' Name.Variable ' ' Literal.String.Double '$absdir' Name.Variable '"' Literal.String.Double '\n\t ' Text 'esac' Keyword '\n\t ' Text ';' Punctuation ';' Punctuation '\n\t ' Text 'esac' Keyword '\n\t ' Text 'case' Keyword ' ' Text '"' Literal.String.Double ' ' Literal.String.Double '$sys_lib_dlsearch_path' Name.Variable ' ' Literal.String.Double '"' Literal.String.Double ' ' Text 'in' Keyword '\n\t ' Text '*' Text '"' Literal.String.Double ' ' Literal.String.Double '$libdir' Name.Variable ' ' Literal.String.Double '"' Literal.String.Double '*' Text ')' Operator ' ' Text ';' Punctuation ';' Punctuation '\n\t ' Text '*' Text ')' Operator '\n\t ' Text 'case' Keyword ' ' Text '"' Literal.String.Double '$finalize_rpath' Name.Variable ' ' Literal.String.Double '"' Literal.String.Double ' ' Text 'in' Keyword '\n\t ' Text '*' Text '"' Literal.String.Double ' ' Literal.String.Double '$libdir' Name.Variable ' ' Literal.String.Double '"' Literal.String.Double '*' Text ')' Operator ' ' Text ';' Punctuation ';' Punctuation '\n\t ' Text '*' Text ')' Operator ' ' Text 'finalize_rpath' Name.Variable '=' Operator '"' Literal.String.Double '$finalize_rpath' Name.Variable ' ' Literal.String.Double '$libdir' Name.Variable '"' Literal.String.Double '\n\t ' Text 'esac' Keyword '\n\t ' Text ';' Punctuation ';' Punctuation '\n\t ' Text 'esac' Keyword '\n\t ' Text 'fi' Keyword '\n\n\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '-n' Text ' ' Text '"' Literal.String.Double '$old_archive_from_expsyms_cmds' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text '# figure out the soname\n' Comment.Single '\t ' Text 'set' Name.Builtin ' ' Text 'dummy' Text ' ' Text '$library_names' Name.Variable '\n\t ' Text 'realname' Name.Variable '=' Operator '"' Literal.String.Double '$2' Name.Variable '"' Literal.String.Double '\n\t ' Text 'shift' Text ';' Punctuation ' ' Text 'shift' Name.Builtin '\n\t ' Text 'libname' Name.Variable '=' Operator '`' Literal.String.Backtick 'eval' Name.Builtin ' ' Text '\\\\' Literal.String.Escape '$echo' Name.Variable ' ' Text '\\"' Literal.String.Escape '$libname_spec' Name.Variable '\\"' Literal.String.Escape '`' Literal.String.Backtick '\n\t ' Text "# use dlname if we got it. it's perfectly good, no?\n" Comment.Single '\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '-n' Text ' ' Text '"' Literal.String.Double '$dlname' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text 'soname' Name.Variable '=' Operator '"' Literal.String.Double '$dlname' Name.Variable '"' Literal.String.Double '\n\t ' Text 'elif' Keyword ' ' Text 'test' Name.Builtin ' ' Text '-n' Text ' ' Text '"' Literal.String.Double '$soname_spec' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text '# bleh windows\n' Comment.Single '\t ' Text 'case' Keyword ' ' Text '$host' Name.Variable ' ' Text 'in' Keyword '\n\t ' Text '*cygwin*' Text ' ' Text '|' Punctuation ' ' Text 'mingw*' Text ')' Operator '\n\t\t' Text 'major' Name.Variable '=' Operator '`' Literal.String.Backtick 'expr' Text ' ' Text '$current' Name.Variable ' ' Text '-' Text ' ' Text '$age' Name.Variable '`' Literal.String.Backtick '\n\t\t' Text 'versuffix' Name.Variable '=' Operator '"' Literal.String.Double '-' Literal.String.Double '$major' Name.Variable '"' Literal.String.Double '\n\t\t' Text ';' Punctuation ';' Punctuation '\n\t ' Text 'esac' Keyword '\n\t ' Text 'eval' Name.Builtin ' ' Text 'soname' Name.Variable '=' Operator '\\"' Literal.String.Escape '$soname_spec' Name.Variable '\\"' Literal.String.Escape '\n\t ' Text 'else' Keyword '\n\t ' Text 'soname' Name.Variable '=' Operator '"' Literal.String.Double '$realname' Name.Variable '"' Literal.String.Double '\n\t ' Text 'fi' Keyword '\n\n\t ' Text '# Make a new name for the extract_expsyms_cmds to use\n' Comment.Single '\t ' Text 'soroot' Name.Variable '=' Operator '"' Literal.String.Double '$soname' Name.Variable '"' Literal.String.Double '\n\t ' Text 'soname' Name.Variable '=' Operator '`' Literal.String.Backtick '$echo' Name.Variable ' ' Text '$soroot' Name.Variable ' ' Text '|' Punctuation ' ' Text '${' Literal.String.Interpol 'SED' Name.Variable '}' Literal.String.Interpol ' ' Text '-e' Text ' ' Text "'s/^.*\\///'" Literal.String.Single '`' Literal.String.Backtick '\n\t ' Text 'newlib' Name.Variable '=' Operator '"' Literal.String.Double 'libimp-`' Literal.String.Double '$echo' Name.Variable ' ' Literal.String.Double '$soname' Name.Variable ' | ' Literal.String.Double '${' Literal.String.Interpol 'SED' Name.Variable '}' Literal.String.Interpol " 's/^lib//;s/\\.dll" Literal.String.Double '$' Text "//'`.a" Literal.String.Double '"' Literal.String.Double '\n\n\t ' Text '# If the library has no export list, then create one now\n' Comment.Single '\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '-f' Text ' ' Text '"' Literal.String.Double '$output_objdir' Name.Variable '/' Literal.String.Double '$soname' Name.Variable '-def' Literal.String.Double '"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword ' ' Text ':' Text '\n\t ' Text 'else' Keyword '\n\t ' Text '$show' Name.Variable ' ' Text '"' Literal.String.Double 'extracting exported symbol list from \\`' Literal.String.Double '$soname' Name.Variable "'" Literal.String.Double '"' Literal.String.Double '\n\t ' Text 'save_ifs' Name.Variable '=' Operator '"' Literal.String.Double '$IFS' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'IFS' Name.Variable '=' Operator "'~'" Literal.String.Single '\n\t ' Text 'cmds' Name.Variable '=' Operator '$extract_expsyms_cmds' Name.Variable '\n\t ' Text 'for' Keyword ' ' Text 'cmd' Text ' ' Text 'in' Keyword ' ' Text '$cmds' Name.Variable ';' Punctuation ' ' Text 'do' Keyword '\n\t\t' Text 'IFS' Name.Variable '=' Operator '"' Literal.String.Double '$save_ifs' Name.Variable '"' Literal.String.Double '\n\t\t' Text 'eval' Name.Builtin ' ' Text 'cmd' Name.Variable '=' Operator '\\"' Literal.String.Escape '$cmd' Name.Variable '\\"' Literal.String.Escape '\n\t\t' Text '$show' Name.Variable ' ' Text '"' Literal.String.Double '$cmd' Name.Variable '"' Literal.String.Double '\n\t\t' Text '$run' Name.Variable ' ' Text 'eval' Name.Builtin ' ' Text '"' Literal.String.Double '$cmd' Name.Variable '"' Literal.String.Double ' ' Text '||' Operator ' ' Text 'exit' Name.Builtin ' ' Text '$?' Name.Variable '\n\t ' Text 'done' Keyword '\n\t ' Text 'IFS' Name.Variable '=' Operator '"' Literal.String.Double '$save_ifs' Name.Variable '"' Literal.String.Double '\n\t ' Text 'fi' Keyword '\n\n\t ' Text '# Create $newlib\n' Comment.Single '\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '-f' Text ' ' Text '"' Literal.String.Double '$output_objdir' Name.Variable '/' Literal.String.Double '$newlib' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword ' ' Text ':' Text ';' Punctuation ' ' Text 'else' Keyword '\n\t ' Text '$show' Name.Variable ' ' Text '"' Literal.String.Double 'generating import library for \\`' Literal.String.Double '$soname' Name.Variable "'" Literal.String.Double '"' Literal.String.Double '\n\t ' Text 'save_ifs' Name.Variable '=' Operator '"' Literal.String.Double '$IFS' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'IFS' Name.Variable '=' Operator "'~'" Literal.String.Single '\n\t ' Text 'cmds' Name.Variable '=' Operator '$old_archive_from_expsyms_cmds' Name.Variable '\n\t ' Text 'for' Keyword ' ' Text 'cmd' Text ' ' Text 'in' Keyword ' ' Text '$cmds' Name.Variable ';' Punctuation ' ' Text 'do' Keyword '\n\t\t' Text 'IFS' Name.Variable '=' Operator '"' Literal.String.Double '$save_ifs' Name.Variable '"' Literal.String.Double '\n\t\t' Text 'eval' Name.Builtin ' ' Text 'cmd' Name.Variable '=' Operator '\\"' Literal.String.Escape '$cmd' Name.Variable '\\"' Literal.String.Escape '\n\t\t' Text '$show' Name.Variable ' ' Text '"' Literal.String.Double '$cmd' Name.Variable '"' Literal.String.Double '\n\t\t' Text '$run' Name.Variable ' ' Text 'eval' Name.Builtin ' ' Text '"' Literal.String.Double '$cmd' Name.Variable '"' Literal.String.Double ' ' Text '||' Operator ' ' Text 'exit' Name.Builtin ' ' Text '$?' Name.Variable '\n\t ' Text 'done' Keyword '\n\t ' Text 'IFS' Name.Variable '=' Operator '"' Literal.String.Double '$save_ifs' Name.Variable '"' Literal.String.Double '\n\t ' Text 'fi' Keyword '\n\t ' Text '# make sure the library variables are pointing to the new library\n' Comment.Single '\t ' Text 'dir' Name.Variable '=' Operator '$output_objdir' Name.Variable '\n\t ' Text 'linklib' Name.Variable '=' Operator '$newlib' Name.Variable '\n\t ' Text 'fi' Keyword ' ' Text '# test -n "$old_archive_from_expsyms_cmds"\n' Comment.Single '\n\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$linkmode' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'prog' Text ' ' Text '||' Operator ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$mode' Name.Variable '"' Literal.String.Double ' ' Text '!' Text '=' Operator ' ' Text 'relink' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text 'add_shlibpath' Name.Variable '=' Operator '\n\t ' Text 'add_dir' Name.Variable '=' Operator '\n\t ' Text 'add' Name.Variable '=' Operator '\n\t ' Text 'lib_linked' Name.Variable '=' Operator 'yes' Text '\n\t ' Text 'case' Keyword ' ' Text '$hardcode_action' Name.Variable ' ' Text 'in' Keyword '\n\t ' Text 'immediate' Text ' ' Text '|' Punctuation ' ' Text 'unsupported' Text ')' Operator '\n\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$hardcode_direct' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'no' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t\t' Text 'add' Name.Variable '=' Operator '"' Literal.String.Double '$dir' Name.Variable '/' Literal.String.Double '$linklib' Name.Variable '"' Literal.String.Double '\n\t\t' Text 'case' Keyword ' ' Text '$host' Name.Variable ' ' Text 'in' Keyword '\n\t\t ' Text '*-*-sco3.2v5.0.' Text '[' Operator '024' Literal.Number ']' Operator '*' Text ')' Operator ' ' Text 'add_dir' Name.Variable '=' Operator '"' Literal.String.Double '-L' Literal.String.Double '$dir' Name.Variable '"' Literal.String.Double ' ' Text ';' Punctuation ';' Punctuation '\n\t\t ' Text '*-*-sysv4*uw2*' Text ')' Operator ' ' Text 'add_dir' Name.Variable '=' Operator '"' Literal.String.Double '-L' Literal.String.Double '$dir' Name.Variable '"' Literal.String.Double ' ' Text ';' Punctuation ';' Punctuation '\n\t\t ' Text '*-*-sysv5OpenUNIX*' Text ' ' Text '|' Punctuation ' ' Text '*-*-sysv5UnixWare7.' Text '[' Operator '01' Literal.Number ']' Operator '.' Text '[' Operator '10' Literal.Number ']' Operator '*' Text ' ' Text '|' Punctuation ' ' Text '\\\n' Literal.String.Escape '\t\t ' Text '*-*-unixware7*' Text ')' Operator ' ' Text 'add_dir' Name.Variable '=' Operator '"' Literal.String.Double '-L' Literal.String.Double '$dir' Name.Variable '"' Literal.String.Double ' ' Text ';' Punctuation ';' Punctuation '\n\t\t ' Text '*-*-darwin*' Text ' ' Text ')' Operator '\n\t\t ' Text '# if the lib is a module then we can not link against\n' Comment.Single '\t\t ' Text '# it, someone is ignoring the new warnings I added\n' Comment.Single '\t\t ' Text 'if' Keyword ' ' Text '/usr/bin/file' Text ' ' Text '-L' Text ' ' Text '$add' Name.Variable ' ' Text '2' Literal.Number '>' Text ' ' Text '/dev/null' Text ' ' Text '|' Punctuation '\n ' Text '$EGREP' Name.Variable ' ' Text '": [^:]* bundle"' Literal.String.Double ' ' Text '>/dev/null' Text ' ' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t\t ' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double '** Warning, lib ' Literal.String.Double '$linklib' Name.Variable ' is a module, not a shared library' Literal.String.Double '"' Literal.String.Double '\n\t\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '-z' Text ' ' Text '"' Literal.String.Double '$old_library' Name.Variable '"' Literal.String.Double ' ' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t\t ' Text '$echo' Name.Variable '\n\t\t ' Text '$echo' Name.Variable ' ' Text '"** And there doesn\'t seem to be a static archive available"' Literal.String.Double '\n\t\t ' Text '$echo' Name.Variable ' ' Text '"** The link will probably fail, sorry"' Literal.String.Double '\n\t\t ' Text 'else' Keyword '\n\t\t ' Text 'add' Name.Variable '=' Operator '"' Literal.String.Double '$dir' Name.Variable '/' Literal.String.Double '$old_library' Name.Variable '"' Literal.String.Double '\n\t\t ' Text 'fi' Keyword '\n\t\t ' Text 'fi' Keyword '\n\t\t' Text 'esac' Keyword '\n\t ' Text 'elif' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$hardcode_minus_L' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'no' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t\t' Text 'case' Keyword ' ' Text '$host' Name.Variable ' ' Text 'in' Keyword '\n\t\t' Text '*-*-sunos*' Text ')' Operator ' ' Text 'add_shlibpath' Name.Variable '=' Operator '"' Literal.String.Double '$dir' Name.Variable '"' Literal.String.Double ' ' Text ';' Punctuation ';' Punctuation '\n\t\t' Text 'esac' Keyword '\n\t\t' Text 'add_dir' Name.Variable '=' Operator '"' Literal.String.Double '-L' Literal.String.Double '$dir' Name.Variable '"' Literal.String.Double '\n\t\t' Text 'add' Name.Variable '=' Operator '"' Literal.String.Double '-l' Literal.String.Double '$name' Name.Variable '"' Literal.String.Double '\n\t ' Text 'elif' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$hardcode_shlibpath_var' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'no' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t\t' Text 'add_shlibpath' Name.Variable '=' Operator '"' Literal.String.Double '$dir' Name.Variable '"' Literal.String.Double '\n\t\t' Text 'add' Name.Variable '=' Operator '"' Literal.String.Double '-l' Literal.String.Double '$name' Name.Variable '"' Literal.String.Double '\n\t ' Text 'else' Keyword '\n\t\t' Text 'lib_linked' Name.Variable '=' Operator 'no' Text '\n\t ' Text 'fi' Keyword '\n\t ' Text ';' Punctuation ';' Punctuation '\n\t ' Text 'relink' Text ')' Operator '\n\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$hardcode_direct' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'yes' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t\t' Text 'add' Name.Variable '=' Operator '"' Literal.String.Double '$dir' Name.Variable '/' Literal.String.Double '$linklib' Name.Variable '"' Literal.String.Double '\n\t ' Text 'elif' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$hardcode_minus_L' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'yes' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t\t' Text 'add_dir' Name.Variable '=' Operator '"' Literal.String.Double '-L' Literal.String.Double '$dir' Name.Variable '"' Literal.String.Double '\n\t\t' Text "# Try looking first in the location we're being installed to.\n" Comment.Single '\t\t' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '-n' Text ' ' Text '"' Literal.String.Double '$inst_prefix_dir' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n\t\t ' Text 'case' Keyword ' ' Text '$libdir' Name.Variable ' ' Text 'in' Keyword '\n\t\t ' Text '[' Operator '\\\\' Literal.String.Escape '/' Text ']' Operator '*' Text ')' Operator '\n\t\t ' Text 'add_dir' Name.Variable '=' Operator '"' Literal.String.Double '$add_dir' Name.Variable ' -L' Literal.String.Double '$inst_prefix_dir' Name.Variable '$libdir' Name.Variable '"' Literal.String.Double '\n\t\t ' Text ';' Punctuation ';' Punctuation '\n\t\t ' Text 'esac' Keyword '\n\t\t' Text 'fi' Keyword '\n\t\t' Text 'add' Name.Variable '=' Operator '"' Literal.String.Double '-l' Literal.String.Double '$name' Name.Variable '"' Literal.String.Double '\n\t ' Text 'elif' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$hardcode_shlibpath_var' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'yes' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t\t' Text 'add_shlibpath' Name.Variable '=' Operator '"' Literal.String.Double '$dir' Name.Variable '"' Literal.String.Double '\n\t\t' Text 'add' Name.Variable '=' Operator '"' Literal.String.Double '-l' Literal.String.Double '$name' Name.Variable '"' Literal.String.Double '\n\t ' Text 'else' Keyword '\n\t\t' Text 'lib_linked' Name.Variable '=' Operator 'no' Text '\n\t ' Text 'fi' Keyword '\n\t ' Text ';' Punctuation ';' Punctuation '\n\t ' Text '*' Text ')' Operator ' ' Text 'lib_linked' Name.Variable '=' Operator 'no' Text ' ' Text ';' Punctuation ';' Punctuation '\n\t ' Text 'esac' Keyword '\n\n\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$lib_linked' Name.Variable '"' Literal.String.Double ' ' Text '!' Text '=' Operator ' ' Text 'yes' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text '$echo' Name.Variable ' ' Text '"' Literal.String.Double '$modename' Name.Variable ': configuration error: unsupported hardcode properties' Literal.String.Double '"' Literal.String.Double '\n\t ' Text 'exit' Name.Builtin ' ' Text '$EXIT_FAILURE' Name.Variable '\n\t ' Text 'fi' Keyword '\n\n\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '-n' Text ' ' Text '"' Literal.String.Double '$add_shlibpath' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text 'case' Keyword ' ' Text ':' Text '$compile_shlibpath' Name.Variable ':' Text ' ' Text 'in' Keyword '\n\t ' Text '*' Text '"' Literal.String.Double ':' Literal.String.Double '$add_shlibpath' Name.Variable ':' Literal.String.Double '"' Literal.String.Double '*' Text ')' Operator ' ' Text ';' Punctuation ';' Punctuation '\n\t ' Text '*' Text ')' Operator ' ' Text 'compile_shlibpath' Name.Variable '=' Operator '"' Literal.String.Double '$compile_shlibpath' Name.Variable '$add_shlibpath' Name.Variable ':' Literal.String.Double '"' Literal.String.Double ' ' Text ';' Punctuation ';' Punctuation '\n\t ' Text 'esac' Keyword '\n\t ' Text 'fi' Keyword '\n\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$linkmode' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'prog' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text 'test' Name.Builtin ' ' Text '-n' Text ' ' Text '"' Literal.String.Double '$add_dir' Name.Variable '"' Literal.String.Double ' ' Text '&&' Operator ' ' Text 'compile_deplibs' Name.Variable '=' Operator '"' Literal.String.Double '$add_dir' Name.Variable ' ' Literal.String.Double '$compile_deplibs' Name.Variable '"' Literal.String.Double '\n\t ' Text 'test' Name.Builtin ' ' Text '-n' Text ' ' Text '"' Literal.String.Double '$add' Name.Variable '"' Literal.String.Double ' ' Text '&&' Operator ' ' Text 'compile_deplibs' Name.Variable '=' Operator '"' Literal.String.Double '$add' Name.Variable ' ' Literal.String.Double '$compile_deplibs' Name.Variable '"' Literal.String.Double '\n\t ' Text 'else' Keyword '\n\t ' Text 'test' Name.Builtin ' ' Text '-n' Text ' ' Text '"' Literal.String.Double '$add_dir' Name.Variable '"' Literal.String.Double ' ' Text '&&' Operator ' ' Text 'deplibs' Name.Variable '=' Operator '"' Literal.String.Double '$add_dir' Name.Variable ' ' Literal.String.Double '$deplibs' Name.Variable '"' Literal.String.Double '\n\t ' Text 'test' Name.Builtin ' ' Text '-n' Text ' ' Text '"' Literal.String.Double '$add' Name.Variable '"' Literal.String.Double ' ' Text '&&' Operator ' ' Text 'deplibs' Name.Variable '=' Operator '"' Literal.String.Double '$add' Name.Variable ' ' Literal.String.Double '$deplibs' Name.Variable '"' Literal.String.Double '\n\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$hardcode_direct' Name.Variable '"' Literal.String.Double ' ' Text '!' Text '=' Operator ' ' Text 'yes' Text ' ' Text '&&' Operator ' ' Text '\\\n' Literal.String.Escape '\t\t ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$hardcode_minus_L' Name.Variable '"' Literal.String.Double ' ' Text '!' Text '=' Operator ' ' Text 'yes' Text ' ' Text '&&' Operator ' ' Text '\\\n' Literal.String.Escape '\t\t ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$hardcode_shlibpath_var' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'yes' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t\t' Text 'case' Keyword ' ' Text ':' Text '$finalize_shlibpath' Name.Variable ':' Text ' ' Text 'in' Keyword '\n\t\t' Text '*' Text '"' Literal.String.Double ':' Literal.String.Double '$libdir' Name.Variable ':' Literal.String.Double '"' Literal.String.Double '*' Text ')' Operator ' ' Text ';' Punctuation ';' Punctuation '\n\t\t' Text '*' Text ')' Operator ' ' Text 'finalize_shlibpath' Name.Variable '=' Operator '"' Literal.String.Double '$finalize_shlibpath' Name.Variable '$libdir' Name.Variable ':' Literal.String.Double '"' Literal.String.Double ' ' Text ';' Punctuation ';' Punctuation '\n\t\t' Text 'esac' Keyword '\n\t ' Text 'fi' Keyword '\n\t ' Text 'fi' Keyword '\n\t ' Text 'fi' Keyword '\n\n\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$linkmode' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'prog' Text ' ' Text '||' Operator ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$mode' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'relink' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text 'add_shlibpath' Name.Variable '=' Operator '\n\t ' Text 'add_dir' Name.Variable '=' Operator '\n\t ' Text 'add' Name.Variable '=' Operator '\n\t ' Text '# Finalize command for both is simple: just hardcode it.\n' Comment.Single '\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$hardcode_direct' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'yes' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text 'add' Name.Variable '=' Operator '"' Literal.String.Double '$libdir' Name.Variable '/' Literal.String.Double '$linklib' Name.Variable '"' Literal.String.Double '\n\t ' Text 'elif' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$hardcode_minus_L' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'yes' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text 'add_dir' Name.Variable '=' Operator '"' Literal.String.Double '-L' Literal.String.Double '$libdir' Name.Variable '"' Literal.String.Double '\n\t ' Text 'add' Name.Variable '=' Operator '"' Literal.String.Double '-l' Literal.String.Double '$name' Name.Variable '"' Literal.String.Double '\n\t ' Text 'elif' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$hardcode_shlibpath_var' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'yes' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text 'case' Keyword ' ' Text ':' Text '$finalize_shlibpath' Name.Variable ':' Text ' ' Text 'in' Keyword '\n\t ' Text '*' Text '"' Literal.String.Double ':' Literal.String.Double '$libdir' Name.Variable ':' Literal.String.Double '"' Literal.String.Double '*' Text ')' Operator ' ' Text ';' Punctuation ';' Punctuation '\n\t ' Text '*' Text ')' Operator ' ' Text 'finalize_shlibpath' Name.Variable '=' Operator '"' Literal.String.Double '$finalize_shlibpath' Name.Variable '$libdir' Name.Variable ':' Literal.String.Double '"' Literal.String.Double ' ' Text ';' Punctuation ';' Punctuation '\n\t ' Text 'esac' Keyword '\n\t ' Text 'add' Name.Variable '=' Operator '"' Literal.String.Double '-l' Literal.String.Double '$name' Name.Variable '"' Literal.String.Double '\n\t ' Text 'elif' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$hardcode_automatic' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'yes' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '-n' Text ' ' Text '"' Literal.String.Double '$inst_prefix_dir' Name.Variable '"' Literal.String.Double ' ' Text '&&' Operator '\n\t\t ' Text 'test' Name.Builtin ' ' Text '-f' Text ' ' Text '"' Literal.String.Double '$inst_prefix_dir' Name.Variable '$libdir' Name.Variable '/' Literal.String.Double '$linklib' Name.Variable '"' Literal.String.Double ' ' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text 'add' Name.Variable '=' Operator '"' Literal.String.Double '$inst_prefix_dir' Name.Variable '$libdir' Name.Variable '/' Literal.String.Double '$linklib' Name.Variable '"' Literal.String.Double '\n\t ' Text 'else' Keyword '\n\t ' Text 'add' Name.Variable '=' Operator '"' Literal.String.Double '$libdir' Name.Variable '/' Literal.String.Double '$linklib' Name.Variable '"' Literal.String.Double '\n\t ' Text 'fi' Keyword '\n\t ' Text 'else' Keyword '\n\t ' Text "# We cannot seem to hardcode it, guess we'll fake it.\n" Comment.Single '\t ' Text 'add_dir' Name.Variable '=' Operator '"' Literal.String.Double '-L' Literal.String.Double '$libdir' Name.Variable '"' Literal.String.Double '\n\t ' Text "# Try looking first in the location we're being installed to.\n" Comment.Single '\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '-n' Text ' ' Text '"' Literal.String.Double '$inst_prefix_dir' Name.Variable '"' Literal.String.Double ';' Punctuation ' ' Text 'then' Keyword '\n\t\t' Text 'case' Keyword ' ' Text '$libdir' Name.Variable ' ' Text 'in' Keyword '\n\t\t ' Text '[' Operator '\\\\' Literal.String.Escape '/' Text ']' Operator '*' Text ')' Operator '\n\t\t ' Text 'add_dir' Name.Variable '=' Operator '"' Literal.String.Double '$add_dir' Name.Variable ' -L' Literal.String.Double '$inst_prefix_dir' Name.Variable '$libdir' Name.Variable '"' Literal.String.Double '\n\t\t ' Text ';' Punctuation ';' Punctuation '\n\t\t' Text 'esac' Keyword '\n\t ' Text 'fi' Keyword '\n\t ' Text 'add' Name.Variable '=' Operator '"' Literal.String.Double '-l' Literal.String.Double '$name' Name.Variable '"' Literal.String.Double '\n\t ' Text 'fi' Keyword '\n\n\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$linkmode' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'prog' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text 'test' Name.Builtin ' ' Text '-n' Text ' ' Text '"' Literal.String.Double '$add_dir' Name.Variable '"' Literal.String.Double ' ' Text '&&' Operator ' ' Text 'finalize_deplibs' Name.Variable '=' Operator '"' Literal.String.Double '$add_dir' Name.Variable ' ' Literal.String.Double '$finalize_deplibs' Name.Variable '"' Literal.String.Double '\n\t ' Text 'test' Name.Builtin ' ' Text '-n' Text ' ' Text '"' Literal.String.Double '$add' Name.Variable '"' Literal.String.Double ' ' Text '&&' Operator ' ' Text 'finalize_deplibs' Name.Variable '=' Operator '"' Literal.String.Double '$add' Name.Variable ' ' Literal.String.Double '$finalize_deplibs' Name.Variable '"' Literal.String.Double '\n\t ' Text 'else' Keyword '\n\t ' Text 'test' Name.Builtin ' ' Text '-n' Text ' ' Text '"' Literal.String.Double '$add_dir' Name.Variable '"' Literal.String.Double ' ' Text '&&' Operator ' ' Text 'deplibs' Name.Variable '=' Operator '"' Literal.String.Double '$add_dir' Name.Variable ' ' Literal.String.Double '$deplibs' Name.Variable '"' Literal.String.Double '\n\t ' Text 'test' Name.Builtin ' ' Text '-n' Text ' ' Text '"' Literal.String.Double '$add' Name.Variable '"' Literal.String.Double ' ' Text '&&' Operator ' ' Text 'deplibs' Name.Variable '=' Operator '"' Literal.String.Double '$add' Name.Variable ' ' Literal.String.Double '$deplibs' Name.Variable '"' Literal.String.Double '\n\t ' Text 'fi' Keyword '\n\t ' Text 'fi' Keyword '\n\t' Text 'elif' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$linkmode' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'prog' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text '# Here we assume that one of hardcode_direct or hardcode_minus_L\n' Comment.Single '\t ' Text '# is not unsupported. This is valid on all known static and\n' Comment.Single '\t ' Text '# shared platforms.\n' Comment.Single '\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$hardcode_direct' Name.Variable '"' Literal.String.Double ' ' Text '!' Text '=' Operator ' ' Text 'unsupported' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text 'test' Name.Builtin ' ' Text '-n' Text ' ' Text '"' Literal.String.Double '$old_library' Name.Variable '"' Literal.String.Double ' ' Text '&&' Operator ' ' Text 'linklib' Name.Variable '=' Operator '"' Literal.String.Double '$old_library' Name.Variable '"' Literal.String.Double '\n\t ' Text 'compile_deplibs' Name.Variable '=' Operator '"' Literal.String.Double '$dir' Name.Variable '/' Literal.String.Double '$linklib' Name.Variable ' ' Literal.String.Double '$compile_deplibs' Name.Variable '"' Literal.String.Double '\n\t ' Text 'finalize_deplibs' Name.Variable '=' Operator '"' Literal.String.Double '$dir' Name.Variable '/' Literal.String.Double '$linklib' Name.Variable ' ' Literal.String.Double '$finalize_deplibs' Name.Variable '"' Literal.String.Double '\n\t ' Text 'else' Keyword '\n\t ' Text 'compile_deplibs' Name.Variable '=' Operator '"' Literal.String.Double '-l' Literal.String.Double '$name' Name.Variable ' -L' Literal.String.Double '$dir' Name.Variable ' ' Literal.String.Double '$compile_deplibs' Name.Variable '"' Literal.String.Double '\n\t ' Text 'finalize_deplibs' Name.Variable '=' Operator '"' Literal.String.Double '-l' Literal.String.Double '$name' Name.Variable ' -L' Literal.String.Double '$dir' Name.Variable ' ' Literal.String.Double '$finalize_deplibs' Name.Variable '"' Literal.String.Double '\n\t ' Text 'fi' Keyword '\n\t' Text 'elif' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$build_libtool_libs' Name.Variable '"' Literal.String.Double ' ' Text '=' Operator ' ' Text 'yes' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text '# Not a shared library\n' Comment.Single '\t ' Text 'if' Keyword ' ' Text 'test' Name.Builtin ' ' Text '"' Literal.String.Double '$deplibs_check_method' Name.Variable '"' Literal.String.Double ' ' Text '!' Text '=' Operator ' ' Text 'pass_all' Text ';' Punctuation ' ' Text 'then' Keyword '\n\t ' Text "# We're trying link a shared library against a static one\n" Comment.Single '\t ' Text "# but the system doesn't support it.\n" Comment.Single