OSDN Git Service

Initial Commit
[qcad/qcad.git] / compiler / makefile_bcc
1 # =============================================================================\r
2 #       Makefile for bcc32\r
3 # =============================================================================\r
4 \r
5 all: qcompiler\r
6 \r
7 # Binary file name\r
8 BINNAME = qcompiler_test.exe\r
9 \r
10 # Normal compiler\r
11 #CC = c++\r
12 CC = bcc32\r
13 \r
14 # Where to install\r
15 INSTDIR = ~/bin\r
16 \r
17 # Compile options\r
18 PATH_ROOT = ..\r
19 PATH_UNITS = ../calcunits\r
20 IFLAGS = -I. -I${PATH_ROOT} -I${PATH_UNITS}\r
21 #CFLAGS = -Wall -ansi -O2\r
22 LFLAGS = -lm\r
23 \r
24 # -----------------------------------------------------------------------------\r
25 #       CalcUnits\r
26 # -----------------------------------------------------------------------------\r
27 QC_UNITS_H = ${PATH_UNITS}/QC_not.h ${PATH_UNITS}/QC_hadamard.h ${PATH_UNITS}/QC_cnot.h ${PATH_UNITS}/QC_crot.h\r
28 QC_UNITS_O = QC_not.obj QC_hadamard.obj QC_cnot.obj QC_crot.obj\r
29 \r
30 QCalcUnit.obj: ${PATH_UNITS}/QCalcUnit.cpp ${PATH_UNITS}/QCalcUnit.h\r
31         ${CC} ${IFLAGS} ${CFLAGS} -c ${PATH_UNITS}/QCalcUnit.cpp -o QCalcUnit.obj\r
32 \r
33 QC_not.obj: ${PATH_UNITS}/QC_not.cpp ${PATH_UNITS}/QC_not.h ${PATH_UNITS}/QCalcUnit.h ${PATH_ROOT}/QBits.h\r
34         ${CC} ${IFLAGS} ${CFLAGS} -c ${PATH_UNITS}/QC_not.cpp -o QC_not.obj\r
35 \r
36 QC_cnot.obj: ${PATH_UNITS}/QC_cnot.cpp ${PATH_UNITS}/QC_cnot.h ${PATH_UNITS}/QCalcUnit.h ${PATH_ROOT}/QBits.h\r
37         ${CC} ${IFLAGS} ${CFLAGS} -c ${PATH_UNITS}/QC_cnot.cpp -o QC_cnot.obj\r
38 \r
39 QC_crot.obj: ${PATH_UNITS}/QC_crot.cpp ${PATH_UNITS}/QC_crot.h ${PATH_UNITS}/QCalcUnit.h ${PATH_ROOT}/QBits.h\r
40         ${CC} ${IFLAGS} ${CFLAGS} -c ${PATH_UNITS}/QC_crot.cpp -o QC_crot.obj\r
41 \r
42 QC_hadamard.obj: ${PATH_UNITS}/QC_hadamard.cpp ${PATH_UNITS}/QC_hadamard.h ${PATH_UNITS}/QCalcUnit.h ${PATH_ROOT}/QBits.h\r
43         ${CC} ${IFLAGS} ${CFLAGS} -c ${PATH_UNITS}/QC_hadamard.cpp -o QC_hadamard.obj\r
44 \r
45 # -----------------------------------------------------------------------------\r
46 #       Compiler\r
47 # -----------------------------------------------------------------------------\r
48 QCompiler.obj: QCompiler.cpp QCompiler.h QParseInfo.h\r
49         ${CC} ${IFLAGS} ${CFLAGS} -c QCompiler.cpp -o QCompiler.obj\r
50 \r
51 QCompilerCntl.obj: QCompilerCntl.cpp QCompilerCntl.h QCompiler.h QParseInfo.h ${PATH_UNITS}/QCalcUnit.h ${QC_UNITS_H}\r
52         ${CC} ${IFLAGS} ${CFLAGS} -c QCompilerCntl.cpp -o QCompilerCntl.obj\r
53 \r
54 QParseInfo.obj: QParseInfo.h\r
55         ${CC} ${IFLAGS} ${CFLAGS} -c QParseInfo.cpp -o QParseInfo.obj\r
56 \r
57 QBits.obj: ${PATH_ROOT}/QBits.cpp ${PATH_ROOT}/QBits.h\r
58         ${CC} ${IFLAGS} ${CFLAGS} -c ${PATH_ROOT}/QBits.cpp -o QBits.obj\r
59 \r
60 QCalcManager.obj: ${PATH_ROOT}/QCalcManager.cpp ${PATH_ROOT}/QCalcManager.h QCompilerCntl.h ${PATH_ROOT}/QBits.h ${PATH_UNITS}/QCalcUnit.h\r
61         ${CC} ${IFLAGS} ${CFLAGS} -c ${PATH_ROOT}/QCalcManager.cpp -o QCalcManager.obj\r
62 \r
63 compiler_main.obj: compiler_main.cpp ${PATH_ROOT}/QBits.h ${PATH_ROOT}/QCalcManager.h\r
64         ${CC} ${IFLAGS} ${CFLAGS} -c compiler_main.cpp -o compiler_main.obj\r
65 \r
66 # -----------------------------------------------------------------------------\r
67 qcompiler: compiler_main.obj QBits.obj QCalcManager.obj QCompiler.obj QCompilerCntl.obj QParseInfo.obj QCalcUnit.obj ${QC_UNITS_O}\r
68         ${CC} ${IFLAGS} -o ${BINNAME} compiler_main.obj QBits.obj QCalcManager.obj QCompiler.obj QCompilerCntl.obj QParseInfo.obj QCalcUnit.obj ${QC_UNITS_O} ${CFLAGS} ${LFLAGS}\r
69 \r
70 \r
71 # -----------------------------------------------------------------------------\r
72 #       Other functions\r
73 # -----------------------------------------------------------------------------\r
74 clean:\r
75         -rm -f *.obj ${BINNAME}\r
76 \r
77 # -----------------------------------------------------------------------------\r
78 install: qcompiler\r
79         @if [ -d ${INSTDIR} ]; \\r
80         then \\r
81                 cp ${OPT_BINNAME} ${INSTDIR}; \\r
82                 chmod 711 ${INSTDIR}/${OPT_BINNAME}; \\r
83                 echo "Installed in ${INSTDIR}"; \\r
84         else \\r
85                 echo "Sorry, ${INSTDIR} does not exist."; \\r
86         fi\r
87 \r
88 # -----------------------------------------------------------------------------\r
89 uninstall:\r
90         @if [ -e ${INSTDIR}/${OPT_BINNAME} ]; \\r
91         then \\r
92                 -rm ${INSTDIR}/${OPT_BINNAME}; \\r
93                 echo "unnstalled successfully."; \\r
94         else \\r
95                 echo "Sorry, ${INSTDIR}/${OPT_BINNAME} does not exist."; \\r
96         fi\r
97 \r