"failstar" sounds like a name for a cruise liner from the 80s. As "*" isn't a desirable part of directory names, just name the whole thing "fail/", the core parts being stored in "fail/core/". Additionally fixing two build system dependency issues: - missing jobserver -> protomessages dependency - broken bochs -> fail dependency (add_custom_target DEPENDS only allows plain file dependencies ... cmake for the win) git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@956 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
31 lines
448 B
Bash
Executable File
31 lines
448 B
Bash
Executable File
#!/bin/bash
|
|
#
|
|
# Merge all static (.a) libraries into $LIBFAIL, and avoid .o naming conflicts.
|
|
#
|
|
set -e
|
|
|
|
LIBFAIL=libfail.a
|
|
|
|
cd "$1"
|
|
rm -f $LIBFAIL
|
|
ar rc $LIBFAIL
|
|
|
|
for lib in *.a
|
|
do
|
|
[ "$lib" = "$LIBFAIL" ] && continue
|
|
|
|
echo "[FAIL*] Unpacking/merging: $lib ";
|
|
# unpack .o files to cwd
|
|
ar x "$lib"
|
|
|
|
# make sure the .o file names are unique
|
|
for f in *.o
|
|
do
|
|
mv $f ${lib}_$f
|
|
done
|
|
|
|
# move into merged library
|
|
ar r $LIBFAIL *.o
|
|
rm -f *.o
|
|
done
|