7if [ -z $JPP_DIR ]; then
8 echo "Variable JPP_DIR undefined."
12source $JPP_DIR/setenv.sh $JPP_DIR
18for DIR in $(find $JPP_DIR/{software,examples}/* -maxdepth 0 -type d); do
20 MAINS=($({grep -l "int *main" $DIR/*.cc} 2>/dev/null))
22 if [[ -f $DIR/CMakeLists.txt ]] && (( ${#MAINS} != 0 )); then
30 a0+=($(awk '/^foreach\([a-zA-Z_ ]*$/,/\) *$/' CMakeLists.txt | sed 's/foreach(.*$//' | sed 's/)//'))
31 a0+=($(sed -n 's/^jpp_add_executable( *\([^$][^ ]*\).*/\1/p' CMakeLists.txt))
32 b0+=($(grep -l "int *main" *.cc | sed 's/.cc//'))
39 if (( ${#A1} != ${#A2} )); then
43 for (( i = 1; $i <= ${#A1} && $i <= ${#A2}; i += 1 )); do
44 if [[ ${(P)A1[i]} != ${(P)A2[i]} ]]; then
49 if (( $ERRORS != 0 )); then
58for DIR in $(find $JPP_DIR/software/* -maxdepth 0 -type d); do
60 INCLUDES=$({ls $DIR/*.hh} 2>/dev/null)
62 if [[ -f $DIR/CMakeLists.txt ]] && (( ${#INCLUDES} != 0 )); then
70 a0+=($(awk '/^ *PUBLIC_HEADER/,/\)/' CMakeLists.txt | sed 's/PUBLIC_HEADER//' | sed 's/\(OUTPUT_NAME.*\|)\)//' | sed 's/.*\///'))
71 a0+=($(awk '/^ *ROOT_DICTIONARY/,/(PUBLIC_HEADER|\))/' CMakeLists.txt | sed 's/ROOT_DICTIONARY//' | sed 's/\(OUTPUT_NAME.*\|PUBLIC_HEADER.*\|)\)//' | sed 's/.*\///'))
74 A1=($(echo $a0[*] | tr ' ' '\n' | sort -u)) # sort & unique
75 A2=($(echo $b0[*] | tr ' ' '\n' | sort -u)) # sort & unique
79 if (( ${#A1} != ${#A2} )); then
83 for (( i = 1; $i <= ${#A1} && $i <= ${#A2}; i += 1 )); do
84 if [[ ${(P)A1[i]} != ${(P)A2[i]} ]]; then
89 if (( $ERRORS != 0 )); then