Statistiques
| Branche: | Révision :

meplib / 00model / userFunc.sh @ master

Historique | Voir | Annoter | Télécharger (1,01 ko)

1 08aa5d9e Serge Torres
#! /bin/sh 
2 08aa5d9e Serge Torres
#
3 08aa5d9e Serge Torres
#
4 08aa5d9e Serge Torres
SCRIPT_NAME=`basename $0`
5 08aa5d9e Serge Torres
SCRIPT_DIR=`dirname $0`
6 08aa5d9e Serge Torres
BIN_DIR=$SCRIPT_DIR/bin
7 08aa5d9e Serge Torres
GET_BINARIES=$SCRIPT_DIR/getBinaries.sh
8 08aa5d9e Serge Torres
CPP_CODE_GENERATOR=$BIN_DIR/cppCodeGen.pl
9 08aa5d9e Serge Torres
USER_FUNC=userFunc
10 08aa5d9e Serge Torres
C_CODE_DIR=../cCode
11 08aa5d9e Serge Torres
CPP_MAKE_TARGET=$USER_FUNC.o
12 08aa5d9e Serge Torres
CPP_CODE_FILE=$C_CODE_DIR/$USER_FUNC.cpp
13 08aa5d9e Serge Torres
#
14 08aa5d9e Serge Torres
if [ "x$1" == "x" ]
15 08aa5d9e Serge Torres
  then
16 08aa5d9e Serge Torres
    echo
17 08aa5d9e Serge Torres
    echo "$SCRIPT_NAME: no function defined! Aborting the program!"
18 08aa5d9e Serge Torres
    echo
19 08aa5d9e Serge Torres
    exit 1
20 08aa5d9e Serge Torres
fi
21 08aa5d9e Serge Torres
#
22 08aa5d9e Serge Torres
$CPP_CODE_GENERATOR $CPP_CODE_FILE "$@"
23 08aa5d9e Serge Torres
FAILURE=$?
24 08aa5d9e Serge Torres
if [ $FAILURE != 0 ]
25 08aa5d9e Serge Torres
  then
26 08aa5d9e Serge Torres
    echo
27 08aa5d9e Serge Torres
    echo "$CCP_CODE_GENRATOR failed. Aborting the program!"
28 08aa5d9e Serge Torres
    echo
29 08aa5d9e Serge Torres
    exit 1
30 08aa5d9e Serge Torres
fi
31 08aa5d9e Serge Torres
32 08aa5d9e Serge Torres
#
33 08aa5d9e Serge Torres
CURRENT_DIR=`pwd`
34 08aa5d9e Serge Torres
cd $C_CODE_DIR
35 08aa5d9e Serge Torres
USER_FUNC_MAKING=`make $CPP_MAKE_TARGET 2>&1`
36 08aa5d9e Serge Torres
FAILURE=$?
37 08aa5d9e Serge Torres
if [ $FAILURE != 0 ]
38 08aa5d9e Serge Torres
  then
39 08aa5d9e Serge Torres
    echo
40 08aa5d9e Serge Torres
    echo "$USER_FUNC_MAKING"
41 08aa5d9e Serge Torres
    echo
42 08aa5d9e Serge Torres
    exit 1
43 08aa5d9e Serge Torres
  else
44 08aa5d9e Serge Torres
    echo
45 08aa5d9e Serge Torres
    echo "User function is OK."
46 08aa5d9e Serge Torres
fi
47 08aa5d9e Serge Torres
UTILITIES_MAKING=`make all 2>&1`
48 08aa5d9e Serge Torres
FAILURE=$?
49 08aa5d9e Serge Torres
if [ $FAILURE != 0 ]
50 08aa5d9e Serge Torres
 then
51 08aa5d9e Serge Torres
   echo
52 08aa5d9e Serge Torres
   echo $UTILITIES_MAKING
53 08aa5d9e Serge Torres
   echo
54 08aa5d9e Serge Torres
   exit 1
55 08aa5d9e Serge Torres
 else
56 08aa5d9e Serge Torres
   echo
57 08aa5d9e Serge Torres
   echo "Utilities were successfully built."
58 08aa5d9e Serge Torres
   echo
59 08aa5d9e Serge Torres
fi
60 08aa5d9e Serge Torres
cd $CURRENT_DIR
61 08aa5d9e Serge Torres
$GET_BINARIES