[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: win32 short name and IFS='~'
From: |
Naofumi Yasufuku |
Subject: |
Re: win32 short name and IFS='~' |
Date: |
Wed, 09 Apr 2003 17:02:55 +0900 |
User-agent: |
Wanderlust/2.10.0 (Venus) SEMI/1.14.5 (Awara-Onsen) FLIM/1.14.5 (Demachiyanagi) APEL/10.4 Emacs/21.2 (i686-pc-linux-gnu) MULE/5.0 (SAKAKI) |
At Fri, 04 Apr 2003 14:21:36 +0900,
Naofumi Yasufuku wrote:
>
> At Thu, 03 Apr 2003 22:49:49 -0600,
> Robert Boehne wrote:
> >
> > Naofumi,
> >
> > This doesn't look safe to me at all, I would prefer to change over
> > to ? rather than change how these delicate shell expansions are handled.
> > I'm going to try ? and see how it goes.
> >
>
> '?' could be used in the command expressions (e.g. $?, ${var:?word}).
> If you can assure that '?' will never used in the command expressions,
> it can be used as IFS.
>
I would suggest using a control character, for example, '' (RS:
Record Separator, 0x1E).
I believe that '' will never be used in command expressions and it
doesn't affect m4 macro processing.
The following patch changes IFS='~' to IFS=''.
I've tested it under MinGW/Cygwin and Linux using bash.
Could you please review this patch?
Regards,
--Naofumi
rs-ifs.patch:
-------------------------------------------------------------------------------
Index: ChangeLog
===================================================================
RCS file: /cvsroot/libtool/libtool/ChangeLog,v
retrieving revision 1.1220
diff -u -r1.1220 ChangeLog
--- ChangeLog 5 Apr 2003 19:32:58 -0000 1.1220
+++ ChangeLog 9 Apr 2003 06:03:36 -0000
@@ -1,3 +1,10 @@
+2003-04-09 Naofumi Yasufuku <address@hidden>
+
+ * libtool.m4: Changed IFS='~' command separator to IFS=''
+ (RS control character, 0x1E) to treat a path name which contains
+ '~' (e.g. -Lc:/progra~1/foo/lib).
+ * ltmain.in: Likewise.
+
2003-04-05 Peter O'Gorman <address@hidden>
* libtool.m4: if ZSH_VERSION is set then setopt NO_GLOB_SUBST so
Index: libtool.m4
===================================================================
RCS file: /cvsroot/libtool/libtool/libtool.m4,v
retrieving revision 1.314
diff -u -r1.314 libtool.m4
--- libtool.m4 5 Apr 2003 19:32:58 -0000 1.314
+++ libtool.m4 9 Apr 2003 06:03:37 -0000
@@ -191,13 +191,13 @@
if test -n "$RANLIB"; then
case $host_os in
openbsd*)
- old_postinstall_cmds="\$RANLIB -t \$oldlib~$old_postinstall_cmds"
+ old_postinstall_cmds="\$RANLIB -t \$oldlib$old_postinstall_cmds"
;;
*)
- old_postinstall_cmds="\$RANLIB \$oldlib~$old_postinstall_cmds"
+ old_postinstall_cmds="\$RANLIB \$oldlib$old_postinstall_cmds"
;;
esac
- old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib"
+ old_archive_cmds="$old_archive_cmds\$RANLIB \$oldlib"
fi
# Only perform the check for file, if the check method requires it
@@ -1203,13 +1203,13 @@
yes,cygwin* | yes,mingw* | yes,pw32*)
library_names_spec='$libname.dll.a'
# DLL is installed to $(libdir)/../bin by postinstall_cmds
- postinstall_cmds='base_file=`basename \${file}`~
- dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i;echo
\$dlname'\''`~
- dldir=$destdir/`dirname \$dlpath`~
- test -d \$dldir || mkdir -p \$dldir~
+ postinstall_cmds='base_file=`basename \${file}`
+ dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i;echo
\$dlname'\''`
+ dldir=$destdir/`dirname \$dlpath`
+ test -d \$dldir || mkdir -p \$dldir
$install_prog $dir/$dlname \$dldir/$dlname'
- postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~
- dlpath=$dir/\$dldll~
+ postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`
+ dlpath=$dir/\$dldll
$rm \$dlpath'
shlibpath_overrides_runpath=yes
@@ -2528,7 +2528,7 @@
aix3*)
test "$enable_shared" = yes && enable_static=no
if test -n "$RANLIB"; then
- archive_cmds="$archive_cmds~\$RANLIB \$lib"
+ archive_cmds="$archive_cmds\$RANLIB \$lib"
postinstall_cmds='$RANLIB $lib'
fi
;;
@@ -2557,8 +2557,8 @@
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -dynamiclib $allow_undefined_flag -o
$lib $libobjs $deplibs$compiler_flags -install_name $rpath/$soname $verstring'
_LT_AC_TAGVAR(module_cmds, $1)='$CC -bundle $allow_undefined_flag -o $lib
$libobjs $deplibs$compiler_flags'
# Don't fix this by using the ld -exported_symbols_list flag, it doesn't
exist in older darwin ld's
- _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e
"s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols >
$output_objdir/${libname}-symbols.expsym~$CC -dynamiclib $allow_undefined_flag
-o $lib $libobjs $deplibs$compiler_flags -install_name $rpath/$soname
$verstring~nmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
- _LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e
"s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols >
$output_objdir/${libname}-symbols.expsym~$CC -bundle $allow_undefined_flag -o
$lib $libobjs $deplibs$compiler_flags~nmedit -s
$output_objdir/${libname}-symbols.expsym ${lib}'
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e
"s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols >
$output_objdir/${libname}-symbols.expsym$CC -dynamiclib $allow_undefined_flag
-o $lib $libobjs $deplibs$compiler_flags -install_name $rpath/$soname
$verstringnmedit -s $output_objdir/${libname}-symbols.expsym ${lib}'
+ _LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e
"s,^[ ]*,," -e "s,^\(..*\),_&," < $export_symbols >
$output_objdir/${libname}-symbols.expsym$CC -bundle $allow_undefined_flag -o
$lib $libobjs $deplibs$compiler_flagsnmedit -s
$output_objdir/${libname}-symbols.expsym ${lib}'
_LT_AC_TAGVAR(hardcode_direct, $1)=no
_LT_AC_TAGVAR(hardcode_automatic, $1)=yes
_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
@@ -2829,7 +2829,7 @@
_LT_AC_TAGVAR(whole_archive_flag_spec, $1)=' '
_LT_AC_TAGVAR(archive_cmds_need_lc, $1)=yes
# This is similar to how AIX traditionally builds it's shared libraries.
- _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o
$output_objdir/$soname $libobjs $deplibs $compiler_flags
${wl}-bE:$export_symbols ${wl}-bnoentry${allow_undefined_flag}~$AR $AR_FLAGS
$output_objdir/$libname$release.a $output_objdir/$soname'
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o
$output_objdir/$soname $libobjs $deplibs $compiler_flags
${wl}-bE:$export_symbols ${wl}-bnoentry${allow_undefined_flag}$AR $AR_FLAGS
$output_objdir/$libname$release.a $output_objdir/$soname'
fi
fi
;;
@@ -2859,7 +2859,7 @@
else
echo EXPORTS > $output_objdir/$soname.def;
cat $export_symbols >> $output_objdir/$soname.def;
- fi~
+ fi
$CC -shared -nostdlib $output_objdir/$soname.def $predep_objects
$libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname
${wl}--image-base=0x10000000 ${wl}--out-implib,$lib'
else
_LT_AC_TAGVAR(ld_shlibs, $1)=no
@@ -2885,17 +2885,17 @@
if test "X$lt_int_apple_cc_single_mod" = Xyes ; then
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -dynamiclib -single_module
$allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name
$rpath/$soname $verstring'
else
- _LT_AC_TAGVAR(archive_cmds, $1)='$CC -r ${wl}-bind_at_load
-keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib
$allow_undefined_flag -o $lib ${lib}-master.o $deplibs $compiler_flags
-install_name $rpath/$soname $verstring'
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -r ${wl}-bind_at_load
-keep_private_externs -nostdlib -o ${lib}-master.o $libobjs$CC -dynamiclib
$allow_undefined_flag -o $lib ${lib}-master.o $deplibs $compiler_flags
-install_name $rpath/$soname $verstring'
fi
_LT_AC_TAGVAR(module_cmds, $1)='$CC -bundle ${wl}-bind_at_load
$allow_undefined_flag -o $lib $libobjs $deplibs$compiler_flags'
# Don't fix this by using the ld -exported_symbols_list flag, it doesn't
exist in older darwin ld's
if test "X$lt_int_apple_cc_single_mod" = Xyes ; then
- _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[
]*,," -e "s,^\(..*\),_&," < $export_symbols >
$output_objdir/${libname}-symbols.expsym~$CC -dynamiclib -single_module
$allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name
$rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym
${lib}'
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[
]*,," -e "s,^\(..*\),_&," < $export_symbols >
$output_objdir/${libname}-symbols.expsym$CC -dynamiclib -single_module
$allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name
$rpath/$soname $verstringnmedit -s $output_objdir/${libname}-symbols.expsym
${lib}'
else
- _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[
]*,," -e "s,^\(..*\),_&," < $export_symbols >
$output_objdir/${libname}-symbols.expsym~$CC -r ${wl}-bind_at_load
-keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib
$allow_undefined_flag -o $lib ${lib}-master.o $deplibs $compiler_flags
-install_name $rpath/$soname $verstring~nmedit -s
$output_objdir/${libname}-symbols.expsym ${lib}'
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[
]*,," -e "s,^\(..*\),_&," < $export_symbols >
$output_objdir/${libname}-symbols.expsym$CC -r ${wl}-bind_at_load
-keep_private_externs -nostdlib -o ${lib}-master.o $libobjs$CC -dynamiclib
$allow_undefined_flag -o $lib ${lib}-master.o $deplibs $compiler_flags
-install_name $rpath/$soname $verstringnmedit -s
$output_objdir/${libname}-symbols.expsym ${lib}'
fi
- _LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[
]*,," -e "s,^\(..*\),_&," < $export_symbols >
$output_objdir/${libname}-symbols.expsym~$CC -bundle $allow_undefined_flag -o
$lib $libobjs $deplibs$compiler_flags~nmedit -s
$output_objdir/${libname}-symbols.expsym ${lib}'
+ _LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[
]*,," -e "s,^\(..*\),_&," < $export_symbols >
$output_objdir/${libname}-symbols.expsym$CC -bundle $allow_undefined_flag -o
$lib $libobjs $deplibs$compiler_flagsnmedit -s
$output_objdir/${libname}-symbols.expsym ${lib}'
_LT_AC_TAGVAR(hardcode_direct, $1)=no
_LT_AC_TAGVAR(hardcode_automatic, $1)=yes
_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
@@ -2950,7 +2950,7 @@
_LT_AC_TAGVAR(ld_shlibs, $1)=no
;;
aCC)
- _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/$soname~$CC -b
${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs
$deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib ||
mv $output_objdir/$soname $lib'
+ _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/$soname$CC -b
${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs
$deplibs $postdep_objects $compiler_flagstest $output_objdir/$soname = $lib ||
mv $output_objdir/$soname $lib'
# Commands to make compiler produce verbose output that lists
# what "hidden" libraries, object files and flags are used when
# linking a shared library.
@@ -2963,7 +2963,7 @@
;;
*)
if test "$GXX" = yes; then
- _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/$soname~$CC
-shared -nostdlib -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname
$predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test
$output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
+ _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/$soname$CC
-shared -nostdlib -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname
$predep_objects $libobjs $deplibs $postdep_objects $compiler_flagstest
$output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
else
# FIXME: insert proper C++ library support
_LT_AC_TAGVAR(ld_shlibs, $1)=no
@@ -3252,9 +3252,9 @@
cxx)
_LT_AC_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared${allow_undefined_flag}
$predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym
-soname $soname `test -n "$verstring" && echo -set_version $verstring`
-update_registry ${objdir}/so_locations -o $lib'
- _LT_AC_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`;
do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~
- echo "-hidden">> $lib.exp~
- $CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs
$postdep_objects $compiler_flags -msym -soname $soname -Wl,-input -Wl,$lib.exp
`test -n "$verstring" && echo -set_version $verstring` -update_registry
$objdir/so_locations -o $lib~
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`;
do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done
+ echo "-hidden">> $lib.exp
+ $CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs
$postdep_objects $compiler_flags -msym -soname $soname -Wl,-input -Wl,$lib.exp
`test -n "$verstring" && echo -set_version $verstring` -update_registry
$objdir/so_locations -o $lib
$rm $lib.exp'
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
@@ -3331,8 +3331,8 @@
# Sun C++ 4.2, 5.x and Centerline C++
_LT_AC_TAGVAR(no_undefined_flag, $1)=' -zdefs'
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -G${allow_undefined_flag} -nolib
-h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects
$compiler_flags'
- _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" >
$lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo
"local: *; };" >> $lib.exp~
- $CC -G${allow_undefined_flag} -nolib ${wl}-M ${wl}$lib.exp -h$soname -o
$lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$rm
$lib.exp'
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" >
$lib.expcat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp$echo
"local: *; };" >> $lib.exp
+ $CC -G${allow_undefined_flag} -nolib ${wl}-M ${wl}$lib.exp -h$soname -o
$lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags$rm
$lib.exp'
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
@@ -3377,8 +3377,8 @@
_LT_AC_TAGVAR(no_undefined_flag, $1)=' ${wl}-z ${wl}defs'
if $CC --version | grep -v '^2\.7' > /dev/null; then
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $LDFLAGS
$predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h
$wl$soname -o $lib'
- _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" >
$lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo
"local: *; };" >> $lib.exp~
- $CC -shared -nostdlib ${wl}-M $wl$lib.exp -o $lib
$predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$rm $lib.exp'
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" >
$lib.expcat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp$echo
"local: *; };" >> $lib.exp
+ $CC -shared -nostdlib ${wl}-M $wl$lib.exp -o $lib
$predep_objects $libobjs $deplibs $postdep_objects $compiler_flags$rm $lib.exp'
# Commands to make compiler produce verbose output that lists
# what "hidden" libraries, object files and flags are used when
@@ -3388,8 +3388,8 @@
# g++ 2.7 appears to require `-G' NOT `-shared' on this
# platform.
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $LDFLAGS
$predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h
$wl$soname -o $lib'
- _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" >
$lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo
"local: *; };" >> $lib.exp~
- $CC -G -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects
$libobjs $deplibs $postdep_objects $compiler_flags~$rm $lib.exp'
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" >
$lib.expcat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp$echo
"local: *; };" >> $lib.exp
+ $CC -G -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects
$libobjs $deplibs $postdep_objects $compiler_flags$rm $lib.exp'
# Commands to make compiler produce verbose output that lists
# what "hidden" libraries, object files and flags are used when
@@ -3662,7 +3662,7 @@
aix3*)
test "$enable_shared" = yes && enable_static=no
if test -n "$RANLIB"; then
- archive_cmds="$archive_cmds~\$RANLIB \$lib"
+ archive_cmds="$archive_cmds\$RANLIB \$lib"
postinstall_cmds='$RANLIB $lib'
fi
;;
@@ -5040,7 +5040,7 @@
;;
amigaos*)
- _LT_AC_TAGVAR(archive_cmds, $1)='$rm
$output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" >
$output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >>
$output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >>
$output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >>
$output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd
$output_objdir && a2ixlibrary -32)'
+ _LT_AC_TAGVAR(archive_cmds, $1)='$rm
$output_objdir/a2ixlibrary.data$echo "#define NAME $libname" >
$output_objdir/a2ixlibrary.data$echo "#define LIBRARY_ID 1" >>
$output_objdir/a2ixlibrary.data$echo "#define VERSION $major" >>
$output_objdir/a2ixlibrary.data$echo "#define REVISION $revision" >>
$output_objdir/a2ixlibrary.data$AR $AR_FLAGS $lib $libobjs$RANLIB $lib(cd
$output_objdir && a2ixlibrary -32)'
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
_LT_AC_TAGVAR(hardcode_minus_L, $1)=yes
@@ -5082,7 +5082,7 @@
else
echo EXPORTS > $output_objdir/$soname.def;
cat $export_symbols >> $output_objdir/$soname.def;
- fi~
+ fi
$CC -shared $output_objdir/$soname.def $libobjs $deplibs
$compiler_flags -o $output_objdir/$soname ${wl}--image-base=0x10000000
${wl}--out-implib,$lib'
else
ld_shlibs=no
@@ -5154,7 +5154,7 @@
aix3*)
_LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported
_LT_AC_TAGVAR(always_export_symbols, $1)=yes
- _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$LD -o $output_objdir/$soname
$libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR
$AR_FLAGS $lib $output_objdir/$soname'
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$LD -o $output_objdir/$soname
$libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE$AR
$AR_FLAGS $lib $output_objdir/$soname'
# Note: this linker hardcodes the directories in LIBPATH if there
# are no directories specified by -L.
_LT_AC_TAGVAR(hardcode_minus_L, $1)=yes
@@ -5276,13 +5276,13 @@
_LT_AC_TAGVAR(whole_archive_flag_spec, $1)=' '
_LT_AC_TAGVAR(archive_cmds_need_lc, $1)=yes
# This is similar to how AIX traditionally builds it's shared
libraries.
- _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o
$output_objdir/$soname $libobjs $deplibs $compiler_flags
${wl}-bE:$export_symbols ${wl}-bnoentry${allow_undefined_flag}~$AR $AR_FLAGS
$output_objdir/$libname$release.a $output_objdir/$soname'
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o
$output_objdir/$soname $libobjs $deplibs $compiler_flags
${wl}-bE:$export_symbols ${wl}-bnoentry${allow_undefined_flag}$AR $AR_FLAGS
$output_objdir/$libname$release.a $output_objdir/$soname'
fi
fi
;;
amigaos*)
- _LT_AC_TAGVAR(archive_cmds, $1)='$rm
$output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" >
$output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >>
$output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >>
$output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >>
$output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd
$output_objdir && a2ixlibrary -32)'
+ _LT_AC_TAGVAR(archive_cmds, $1)='$rm
$output_objdir/a2ixlibrary.data$echo "#define NAME $libname" >
$output_objdir/a2ixlibrary.data$echo "#define LIBRARY_ID 1" >>
$output_objdir/a2ixlibrary.data$echo "#define VERSION $major" >>
$output_objdir/a2ixlibrary.data$echo "#define REVISION $revision" >>
$output_objdir/a2ixlibrary.data$AR $AR_FLAGS $lib $libobjs$RANLIB $lib(cd
$output_objdir && a2ixlibrary -32)'
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
_LT_AC_TAGVAR(hardcode_minus_L, $1)=yes
# see comment about different semantics on the GNU ld section
@@ -5305,7 +5305,7 @@
# Tell ltmain to make .dll files, not .so files.
shrext=".dll"
# FIXME: Setting linknames here is a bad hack.
- _LT_AC_TAGVAR(archive_cmds, $1)='$CC -o $lib $libobjs $compiler_flags
`echo "$deplibs" | $SED -e '\''s/ -lc$//'\''` -link -dll~linknames='
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -o $lib $libobjs $compiler_flags
`echo "$deplibs" | $SED -e '\''s/ -lc$//'\''` -link -dlllinknames='
# The linker will automatically build a .lib file if we build a DLL.
_LT_AC_TAGVAR(old_archive_From_new_cmds, $1)='true'
# FIXME: Should let the user specify the lib program.
@@ -5337,16 +5337,16 @@
if test "X$lt_int_apple_cc_single_mod" = Xyes ; then
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -dynamiclib -single_module
$allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name
$rpath/$soname $verstring'
else
- _LT_AC_TAGVAR(archive_cmds, $1)='$CC -r ${wl}-bind_at_load
-keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib
$allow_undefined_flag -o $lib ${lib}-master.o $deplibs $compiler_flags
-install_name $rpath/$soname $verstring'
+ _LT_AC_TAGVAR(archive_cmds, $1)='$CC -r ${wl}-bind_at_load
-keep_private_externs -nostdlib -o ${lib}-master.o $libobjs$CC -dynamiclib
$allow_undefined_flag -o $lib ${lib}-master.o $deplibs $compiler_flags
-install_name $rpath/$soname $verstring'
fi
_LT_AC_TAGVAR(module_cmds, $1)='$CC -bundle ${wl}-bind_at_load
$allow_undefined_flag -o $lib $libobjs $deplibs$compiler_flags'
# Don't fix this by using the ld -exported_symbols_list flag, it doesn't
exist in older darwin ld's
if test "X$lt_int_apple_cc_single_mod" = Xyes ; then
- _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[
]*,," -e "s,^\(..*\),_&," < $export_symbols >
$output_objdir/${libname}-symbols.expsym~$CC -dynamiclib -single_module
$allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name
$rpath/$soname $verstring~nmedit -s $output_objdir/${libname}-symbols.expsym
${lib}'
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[
]*,," -e "s,^\(..*\),_&," < $export_symbols >
$output_objdir/${libname}-symbols.expsym$CC -dynamiclib -single_module
$allow_undefined_flag -o $lib $libobjs $deplibs $compiler_flags -install_name
$rpath/$soname $verstringnmedit -s $output_objdir/${libname}-symbols.expsym
${lib}'
else
- _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[
]*,," -e "s,^\(..*\),_&," < $export_symbols >
$output_objdir/${libname}-symbols.expsym~$CC -r ${wl}-bind_at_load
-keep_private_externs -nostdlib -o ${lib}-master.o $libobjs~$CC -dynamiclib
$allow_undefined_flag -o $lib ${lib}-master.o $deplibs $compiler_flags
-install_name $rpath/$soname $verstring~nmedit -s
$output_objdir/${libname}-symbols.expsym ${lib}'
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[
]*,," -e "s,^\(..*\),_&," < $export_symbols >
$output_objdir/${libname}-symbols.expsym$CC -r ${wl}-bind_at_load
-keep_private_externs -nostdlib -o ${lib}-master.o $libobjs$CC -dynamiclib
$allow_undefined_flag -o $lib ${lib}-master.o $deplibs $compiler_flags
-install_name $rpath/$soname $verstringnmedit -s
$output_objdir/${libname}-symbols.expsym ${lib}'
fi
- _LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[
]*,," -e "s,^\(..*\),_&," < $export_symbols >
$output_objdir/${libname}-symbols.expsym~$CC -bundle $allow_undefined_flag -o
$lib $libobjs $deplibs$compiler_flags~nmedit -s
$output_objdir/${libname}-symbols.expsym ${lib}'
+ _LT_AC_TAGVAR(module_expsym_cmds, $1)='sed -e "s,#.*,," -e "s,^[
]*,," -e "s,^\(..*\),_&," < $export_symbols >
$output_objdir/${libname}-symbols.expsym$CC -bundle $allow_undefined_flag -o
$lib $libobjs $deplibs$compiler_flagsnmedit -s
$output_objdir/${libname}-symbols.expsym ${lib}'
_LT_AC_TAGVAR(hardcode_direct, $1)=no
_LT_AC_TAGVAR(hardcode_automatic, $1)=yes
_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=unsupported
@@ -5394,9 +5394,9 @@
hpux9*)
if test "$GCC" = yes; then
- _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/$soname~$CC -shared
-fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $libobjs $deplibs
$compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname
$lib'
+ _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/$soname$CC -shared
-fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $libobjs $deplibs
$compiler_flagstest $output_objdir/$soname = $lib || mv $output_objdir/$soname
$lib'
else
- _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/$soname~$LD -b +b
$install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test
$output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
+ _LT_AC_TAGVAR(archive_cmds, $1)='$rm $output_objdir/$soname$LD -b +b
$install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flagstest
$output_objdir/$soname = $lib || mv $output_objdir/$soname $lib'
fi
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='${wl}+b ${wl}$libdir'
_LT_AC_TAGVAR(hardcode_libdir_separator, $1)=:
@@ -5516,7 +5516,7 @@
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir'
_LT_AC_TAGVAR(hardcode_minus_L, $1)=yes
_LT_AC_TAGVAR(allow_undefined_flag, $1)=unsupported
- _LT_AC_TAGVAR(archive_cmds, $1)='$echo "LIBRARY $libname INITINSTANCE" >
$output_objdir/$libname.def~$echo "DESCRIPTION \"$libname\"" >>
$output_objdir/$libname.def~$echo DATA >> $output_objdir/$libname.def~$echo "
SINGLE NONSHARED" >> $output_objdir/$libname.def~$echo EXPORTS >>
$output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC
-Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags
$output_objdir/$libname.def'
+ _LT_AC_TAGVAR(archive_cmds, $1)='$echo "LIBRARY $libname INITINSTANCE" >
$output_objdir/$libname.def$echo "DESCRIPTION \"$libname\"" >>
$output_objdir/$libname.def$echo DATA >> $output_objdir/$libname.def$echo "
SINGLE NONSHARED" >> $output_objdir/$libname.def$echo EXPORTS >>
$output_objdir/$libname.defemxexp $libobjs >> $output_objdir/$libname.def$CC
-Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags
$output_objdir/$libname.def'
_LT_AC_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o
$output_objdir/$libname.a $output_objdir/$libname.def'
;;
@@ -5540,8 +5540,8 @@
else
_LT_AC_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*'
_LT_AC_TAGVAR(archive_cmds, $1)='$LD -shared${allow_undefined_flag}
$libobjs $deplibs $linker_flags -msym -soname $soname `test -n "$verstring" &&
echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o
$lib'
- _LT_AC_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`;
do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; echo "-hidden">>
$lib.exp~
- $LD -shared${allow_undefined_flag} -input $lib.exp $linker_flags
$libobjs $deplibs -soname $soname `test -n "$verstring" && echo -set_version
$verstring` -update_registry ${objdir}/so_locations -o $lib~$rm $lib.exp'
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`;
do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; echo "-hidden">>
$lib.exp
+ $LD -shared${allow_undefined_flag} -input $lib.exp $linker_flags
$libobjs $deplibs -soname $soname `test -n "$verstring" && echo -set_version
$verstring` -update_registry ${objdir}/so_locations -o $lib$rm $lib.exp'
# Both c and cxx compiler support -rpath directly
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir'
@@ -5561,12 +5561,12 @@
_LT_AC_TAGVAR(no_undefined_flag, $1)=' -z text'
if test "$GCC" = yes; then
_LT_AC_TAGVAR(archive_cmds, $1)='$CC -shared ${wl}-h ${wl}$soname -o
$lib $libobjs $deplibs $compiler_flags'
- _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" >
$lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo
"local: *; };" >> $lib.exp~
- $CC -shared ${wl}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib
$libobjs $deplibs $compiler_flags~$rm $lib.exp'
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" >
$lib.expcat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp$echo
"local: *; };" >> $lib.exp
+ $CC -shared ${wl}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib
$libobjs $deplibs $compiler_flags$rm $lib.exp'
else
_LT_AC_TAGVAR(archive_cmds, $1)='$LD -G${allow_undefined_flag} -h
$soname -o $lib $libobjs $deplibs $linker_flags'
- _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" >
$lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo
"local: *; };" >> $lib.exp~
- $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs
$deplibs $linker_flags~$rm $lib.exp'
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" >
$lib.expcat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp$echo
"local: *; };" >> $lib.exp
+ $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs
$deplibs $linker_flags$rm $lib.exp'
fi
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir'
_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
@@ -5655,8 +5655,8 @@
# $CC -shared without GNU ld will not create a library from C++
# object files and a static libstdc++, better avoid it by now
_LT_AC_TAGVAR(archive_cmds, $1)='$LD -G${allow_undefined_flag} -h
$soname -o $lib $libobjs $deplibs $linker_flags'
- _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.exp~cat
$export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >>
$lib.exp~
- $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib
$libobjs $deplibs $linker_flags~$rm $lib.exp'
+ _LT_AC_TAGVAR(archive_expsym_cmds, $1)='$echo "{ global:" > $lib.expcat
$export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp$echo "local: *; };" >>
$lib.exp
+ $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib
$libobjs $deplibs $linker_flags$rm $lib.exp'
_LT_AC_TAGVAR(hardcode_libdir_flag_spec, $1)=
_LT_AC_TAGVAR(hardcode_shlibpath_var, $1)=no
runpath_var='LD_RUN_PATH'
@@ -5692,7 +5692,7 @@
if test "$enable_shared" = yes && test "$GCC" = yes; then
case $_LT_AC_TAGVAR(archive_cmds, $1) in
- *'~'*)
+ *''*)
# FIXME: we may have to deal with multi-command sequences.
;;
'$CC '*)
Index: ltmain.in
===================================================================
RCS file: /cvsroot/libtool/libtool/ltmain.in,v
retrieving revision 1.334
diff -u -r1.334 ltmain.in
--- ltmain.in 2 Apr 2003 16:44:38 -0000 1.334
+++ ltmain.in 9 Apr 2003 06:03:37 -0000
@@ -2278,7 +2278,7 @@
if test -f "$output_objdir/$soname-def"; then :
else
$show "extracting exported symbol list from \`$soname'"
- save_ifs="$IFS"; IFS='~'
+ save_ifs="$IFS"; IFS=''
eval cmds=\"$extract_expsyms_cmds\"
for cmd in $cmds; do
IFS="$save_ifs"
@@ -2291,7 +2291,7 @@
# Create $newlib
if test -f "$output_objdir/$newlib"; then :; else
$show "generating import library for \`$soname'"
- save_ifs="$IFS"; IFS='~'
+ save_ifs="$IFS"; IFS=''
eval cmds=\"$old_archive_from_expsyms_cmds\"
for cmd in $cmds; do
IFS="$save_ifs"
@@ -3548,7 +3548,7 @@
export_symbols="$output_objdir/$libname.exp"
$run $rm $export_symbols
eval cmds=\"$export_symbols_cmds\"
- save_ifs="$IFS"; IFS='~'
+ save_ifs="$IFS"; IFS=''
for cmd in $cmds; do
IFS="$save_ifs"
if len=`expr "X$cmd" : ".*"` &&
@@ -3725,7 +3725,7 @@
else
# All subsequent reloadable object files will link in
# the last one created.
- eval concat_cmds=\"\$concat_cmds~$reload_cmds $objlist
$last_robj\"
+ eval concat_cmds=\"\$concat_cmds$reload_cmds $objlist
$last_robj\"
fi
last_robj=$output_objdir/$save_output-${k}.$objext
k=`expr $k + 1`
@@ -3737,7 +3737,7 @@
# Handle the remaining objects by creating one last
# reloadable object file. All subsequent reloadable object
# files will link in the last one created.
- test -z "$concat_cmds" || concat_cmds=$concat_cmds~
+ test -z "$concat_cmds" || concat_cmds=$concat_cmds
eval concat_cmds=\"\${concat_cmds}$reload_cmds $objlist $last_robj\"
if ${skipped_export-false}; then
@@ -3746,7 +3746,7 @@
$run $rm $export_symbols
libobjs=$output
# Append the command to create the export file.
- eval concat_cmds=\"\$concat_cmds~$export_symbols_cmds\"
+ eval concat_cmds=\"\$concat_cmds$export_symbols_cmds\"
fi
# Set up a command to remove the reloadale object files
@@ -3761,7 +3761,7 @@
$echo "creating a temporary reloadable object file: $output"
# Loop through the commands generated above and execute them.
- save_ifs="$IFS"; IFS='~'
+ save_ifs="$IFS"; IFS=''
for cmd in $concat_cmds; do
IFS="$save_ifs"
$show "$cmd"
@@ -3788,9 +3788,9 @@
# Append the command to remove the reloadable object files
# to the just-reset $cmds.
- eval cmds=\"\$cmds~$rm $delfiles\"
+ eval cmds=\"\$cmds$rm $delfiles\"
fi
- save_ifs="$IFS"; IFS='~'
+ save_ifs="$IFS"; IFS=''
for cmd in $cmds; do
IFS="$save_ifs"
$show "$cmd"
@@ -3944,7 +3944,7 @@
output="$obj"
eval cmds=\"$reload_cmds\"
- save_ifs="$IFS"; IFS='~'
+ save_ifs="$IFS"; IFS=''
for cmd in $cmds; do
IFS="$save_ifs"
$show "$cmd"
@@ -3980,7 +3980,7 @@
reload_objs="$libobjs $reload_conv_objs"
output="$libobj"
eval cmds=\"$reload_cmds\"
- save_ifs="$IFS"; IFS='~'
+ save_ifs="$IFS"; IFS=''
for cmd in $cmds; do
IFS="$save_ifs"
$show "$cmd"
@@ -5002,7 +5002,7 @@
if test "$obj" = "$last_oldobj" ; then
RANLIB=$save_RANLIB
fi
- test -z "$concat_cmds" || concat_cmds=$concat_cmds~
+ test -z "$concat_cmds" || concat_cmds=$concat_cmds
eval concat_cmds=\"\${concat_cmds}$old_archive_cmds\"
objlist=
fi
@@ -5012,11 +5012,11 @@
if test "X$oldobjs" = "X" ; then
eval cmds=\"\$concat_cmds\"
else
- eval cmds=\"\$concat_cmds~$old_archive_cmds\"
+ eval cmds=\"\$concat_cmds$old_archive_cmds\"
fi
fi
fi
- save_ifs="$IFS"; IFS='~'
+ save_ifs="$IFS"; IFS=''
for cmd in $cmds; do
IFS="$save_ifs"
$show "$cmd"
@@ -5415,7 +5415,7 @@
# Do each command in the postinstall commands.
lib="$destdir/$realname"
eval cmds=\"$postinstall_cmds\"
- save_ifs="$IFS"; IFS='~'
+ save_ifs="$IFS"; IFS=''
for cmd in $cmds; do
IFS="$save_ifs"
$show "$cmd"
@@ -5637,7 +5637,7 @@
# Do each command in the postinstall commands.
eval cmds=\"$old_postinstall_cmds\"
- save_ifs="$IFS"; IFS='~'
+ save_ifs="$IFS"; IFS=''
for cmd in $cmds; do
IFS="$save_ifs"
$show "$cmd"
@@ -5675,7 +5675,7 @@
if test -n "$finish_cmds"; then
# Do each command in the finish commands.
eval cmds=\"$finish_cmds\"
- save_ifs="$IFS"; IFS='~'
+ save_ifs="$IFS"; IFS=''
for cmd in $cmds; do
IFS="$save_ifs"
$show "$cmd"
@@ -5952,7 +5952,7 @@
if test -n "$library_names"; then
# Do each command in the postuninstall commands.
eval cmds=\"$postuninstall_cmds\"
- save_ifs="$IFS"; IFS='~'
+ save_ifs="$IFS"; IFS=''
for cmd in $cmds; do
IFS="$save_ifs"
$show "$cmd"
@@ -5967,7 +5967,7 @@
if test -n "$old_library"; then
# Do each command in the old_postuninstall commands.
eval cmds=\"$old_postuninstall_cmds\"
- save_ifs="$IFS"; IFS='~'
+ save_ifs="$IFS"; IFS=''
for cmd in $cmds; do
IFS="$save_ifs"
$show "$cmd"
-------------------------------------------------------------------------------
rs-ifs.patch.gz
Description: Binary data
RE: win32 short name and IFS='~', Boehne, Robert, 2003/04/17