]> Creatis software - bbtk.git/blob - kernel/appli/bbc/bbc.sh.in
f0f4373bef15ada500f06f29558199eba3796237
[bbtk.git] / kernel / appli / bbc / bbc.sh.in
1 #!/bin/bash
2 # compiles bbs files
3
4 source ~/.bashrc
5
6 if [ $# -lt 1 ]
7     then
8     echo "usage : bbc <input bbs file>"  
9     exit
10 fi
11
12 #
13 CUR=${PWD}
14
15 # bbc bin path
16 TMP=$(which $0|rev)
17 BINPATH=$(echo ${TMP#*/}|rev)
18 # data path
19 DATADIR=${BINPATH}/@bbc_DATA_REL_PATH_FROM_BIN@
20
21 #echo ****** BBC : ${BINPATH}
22
23 # extract bbs file name
24 IN=$1
25 TMP="${IN##*/}"
26 BBS="${TMP%%.*}"
27 OUTPUT="bb${BBS}"
28 EXEC_FUNCTION="${BBS}"
29 #echo Output=\"${OUTPUT}\"
30
31 WORKDIR=bbc_tmp
32 mkdir ${WORKDIR}
33
34 sed s,OUTPUT,${OUTPUT},g ${DATADIR}/CMakeLists.txt.in > ${WORKDIR}/CMakeLists.txt
35 sed s,EXEC_FUNCTION,${EXEC_FUNCTION},g ${DATADIR}/main.cxx.in > ${WORKDIR}/main.cxx
36 cd ${WORKDIR}
37 ${BINPATH}/bbs2cpp ${IN} > log.txt 
38 cmake . @bbc_CMAKE_OPTION_FOR_BUILD_TREE@ > log.txt 
39 #-DFIND_PACKAGE_VERBOSE=1
40 #
41 make > log.txt
42 mv ${OUTPUT} ${CUR}/
43 cd ${CUR}
44 rm -Rf ${WORKDIR}
45