+2010-09-02 Peter Rosin <peda@lysator.liu.se>
+
+ Make ar-lib support backslashed files in archives.
+ * lib/ar-lib: If an archive member contains a backslash, make sure
+ it is escaped when the archive member is extracted.
+ * tests/ar-lib.test: Test the above.
+
2010-08-31 Peter Rosin <peda@lysator.liu.se>
Do file name conversion for object files in the compile wrapper.
* lib/compile (func_cl_wrapper): Do file name conversion for object
files (i.e. extensions .obj, .OBJ, .o and .O) if needed.
- * lib/compile4.test: Test the above.
+ * tests/compile4.test: Test the above.
2010-08-16 Peter Rosin <peda@lysator.liu.se>
file extension as C++, unless it's given a hint. So hint about
.cc, .CC, .cxx, .CXX, c++ and C++. Also do path conversion on
.c, .cpp, .CPP, .lib, .LIB and .Lib files.
- * lib/compile3.test: Test the C++ hinting.
+ * tests/compile3.test: Test the C++ hinting.
2010-08-12 Peter Rosin <peda@lysator.liu.se>
# Wrapper for Microsoft lib.exe
me=ar-lib
-scriptversion=2010-08-12.16; # UTC
+scriptversion=2010-09-02.19; # UTC
# Copyright (C) 2010 Free Software
# Foundation, Inc.
esac
done
else
- $AR -NOLOGO -LIST "$archive" | while read member
+ $AR -NOLOGO -LIST "$archive" | sed -e 's/\\/\\\\/g' | while read member
do
$AR -NOLOGO -EXTRACT:"$member" "$archive" || exit $?
done
#! /bin/sh
if test x"$2" = x-LIST -a $3 = fake.lib; then
echo fake.obj
+elif test x"$2" = x-LIST -a $3 = fake2.lib; then
+ echo dir\\fake2.obj
else
echo "lib $@"
fi
opts=`./ar-lib ./lib -lib -LTCG x foo.lib foo.obj`
test x"$opts" = x"lib -lib -LTCG -NOLOGO -EXTRACT:foo.obj foo.lib"
+# Check if ar-lib can extract backslashed members
+touch fake2.lib
+opts=`./ar-lib ./lib x fake2.lib`
+test x"$opts" = x"lib -NOLOGO -EXTRACT:dir\\fake2.obj fake2.lib"
+
: