The FailBochs client is not linked by the Bochs build system anymore, but
by our cmake scripts (make fail-client):
- All Bochs libraries are merged into libfailbochs.a (a new target
within the Bochs Autotools scripts).
- The previous libfail.a is *not* a merge of all Fail* libraries anymore,
but pulls these in via library dependencies.
Additionally I did a lot of build system cleanup, e.g. additional external
libraries may now be pulled in where they're needed.
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1390 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
35 lines
1.1 KiB
Bash
Executable File
35 lines
1.1 KiB
Bash
Executable File
#!/bin/bash
|
|
#
|
|
# - needs to be called from within your build directory
|
|
# - "rebuild-bochs.sh": rebuild all of both Fail* and Bochs
|
|
# (e.g., possibly necessary if you don't understand what was changed by others)
|
|
# - "rebuild-bochs.sh fail": rebuild all of Fail* and link fail-client
|
|
# (e.g., possibly necessary if you changed Fail-affecting aspects or the
|
|
# build system)
|
|
# - "rebuild-bochs.sh bochs": rebuild all of Bochs and link fail-client
|
|
# (e.g., necessary if you changed Bochs-affecting aspects/code that must be
|
|
# inlined in Bochs)
|
|
# - "rebuild-bochs.sh -": rebuild only changed parts of Fail* and Bochs
|
|
# (e.g., sufficient if you only changed experiment code)
|
|
#
|
|
set -e
|
|
# determine absolute path of this script
|
|
SCRIPTDIR=$(readlink -f $(dirname $0))
|
|
# env variable defaults
|
|
source $SCRIPTDIR/fail-env.sh
|
|
|
|
if [ "$1" = fail -o -z "$1" ]
|
|
then
|
|
make clean
|
|
fi
|
|
if [ "$1" = bochs -o -z "$1" ]
|
|
then
|
|
make bochsallclean
|
|
fi
|
|
|
|
#export PATH=/fs/staff/hsc/bin/ccache:$PATH
|
|
|
|
nice make -j$FAIL_BUILD_PARALLEL fail-client 2>&1 | $(dirname $0)/colorize.pl 2>&1
|
|
# no need to use Bochs' own installation mechanism
|
|
#nice make -j$FAIL_BUILD_PARALLEL bochsinstall
|