2014-04-03 01:45:22 +02:00
|
|
|
#!/bin/bash
|
|
|
|
#
|
|
|
|
# usage:
|
|
|
|
# check_dependencies.sh MOs AOs Electrons
|
|
|
|
#
|
|
|
|
# Checks that the list of dependencies given in
|
|
|
|
# argument is consistent. If the dependencies
|
|
|
|
# are OK the exit code is 0, otherwise it is 1.
|
|
|
|
# If no argument is given, the dependencies are
|
|
|
|
# read in the Makefile.
|
|
|
|
# Thu Apr 3 01:44:23 CEST 2014
|
|
|
|
|
|
|
|
function unique_list()
|
|
|
|
{
|
|
|
|
for d in $@
|
|
|
|
do
|
|
|
|
echo $d
|
|
|
|
done | sort | uniq
|
|
|
|
}
|
|
|
|
|
|
|
|
if [[ -z $1 ]]
|
|
|
|
then
|
|
|
|
exit 0
|
|
|
|
fi
|
|
|
|
|
|
|
|
if [[ $1 == "-" ]]
|
|
|
|
then
|
2014-04-03 11:19:41 +02:00
|
|
|
COMMAND_LINE=$(cat NEEDED_MODULES)
|
2014-04-03 01:45:22 +02:00
|
|
|
else
|
|
|
|
COMMAND_LINE=$(unique_list $@)
|
|
|
|
fi
|
|
|
|
|
|
|
|
for d in $COMMAND_LINE
|
|
|
|
do
|
2014-04-03 01:50:22 +02:00
|
|
|
if [[ ! -d ${QPACKAGE_ROOT}/src/$d ]]
|
2014-04-03 01:45:22 +02:00
|
|
|
then
|
|
|
|
echo Error: Directory $d does not exist
|
|
|
|
exit 2
|
|
|
|
fi
|
|
|
|
|
|
|
|
done
|
|
|
|
|
|
|
|
DEPS_LONG=""
|
|
|
|
for i in $COMMAND_LINE
|
|
|
|
do
|
|
|
|
DEPS_LONG+=" $i "
|
2014-04-03 11:19:41 +02:00
|
|
|
DEPS_LONG+=$(cat ${QPACKAGE_ROOT}/src/${i}/NEEDED_MODULES)
|
2014-04-03 01:45:22 +02:00
|
|
|
done
|
|
|
|
|
|
|
|
DEPS=$(unique_list $DEPS_LONG)
|
|
|
|
|
|
|
|
if [[ ! "$COMMAND_LINE" == "$DEPS" ]]
|
|
|
|
then
|
|
|
|
DEPS=$(check_dependencies.sh $DEPS)
|
|
|
|
fi
|
|
|
|
echo $DEPS
|
|
|
|
|
|
|
|
if [[ "$COMMAND_LINE" == "$DEPS" ]]
|
|
|
|
then
|
|
|
|
exit 0
|
|
|
|
else
|
|
|
|
exit 1
|
|
|
|
fi
|