Overview
| Comment: | Improvements in new compile scheme. |
|---|---|
| Downloads: | Tarball | ZIP archive |
| Timelines: | family | ancestors | descendants | both | trunk |
| Files: | files | file ages | folders |
| SHA1: |
633de0358801af49a63ddeac72f877e9 |
| User & Date: | peter 2020-01-05 17:13:43.089 |
Context
|
2020-01-05
| ||
| 17:22:42 | [2c7fe722cd] Removed remnants of library creation. (user: peter tags: trunk) | |
| 17:13:43 | [633de03588] Improvements in new compile scheme. (user: peter tags: trunk) | |
| 16:32:08 | [79e3c5d804] Close files handles before M4 parsing. (user: peter tags: trunk) | |
Changes
Changes to bacon_trunk/Makefile.in.
1 2 3 4 5 6 7 8 9 10 11 12 | prefix = @prefix@ exec_prefix = @exec_prefix@ BINDIR = @bindir@ LIBDIR = @libdir@ DATADIR = $(prefix)/share MANDIR = $(DATADIR)/man STRIP = @STRIP@ CC = @CC@ CXX = @CXX@ CFLAGS = @CFLAGS@ CXXFLAGS = @CXXFLAGS@ LDFLAGS = @LDFLAGS@ | < | | | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 | prefix = @prefix@ exec_prefix = @exec_prefix@ BINDIR = @bindir@ LIBDIR = @libdir@ DATADIR = $(prefix)/share MANDIR = $(DATADIR)/man STRIP = @STRIP@ CC = @CC@ CXX = @CXX@ CFLAGS = @CFLAGS@ CXXFLAGS = @CXXFLAGS@ LDFLAGS = @LDFLAGS@ INSTALL = @INSTALL@ BSHELL = @BSHELL@ GTK = @GTK@ FLTK = @FLTK@ all : clean bacon bacongui-gtk bacongui-fltk @echo "Run 'make install' or 'sudo make install' to install BaCon on your system." bacon : @if [ -n "$(LDFLAGS)" ]; then \ $(BSHELL) ./bacon.sh -c $(CC) -o "$(CFLAGS)" -l "$(LDFLAGS)" -d build bacon.bac; \ else \ $(BSHELL) ./bacon.sh -c $(CC) -o "$(CFLAGS)" -d build bacon.bac; \ fi; $(STRIP) build/bacon bacongui-gtk : @if [ $(GTK) = 'true' ]; then \ build/bacon -c $(CC) -o "$(CFLAGS)" -l "-L. $(LDFLAGS)" -d build bacongui-gtk.bac; \ $(STRIP) build/bacongui-gtk; \ |
| ︙ | ︙ |
Changes to bacon_trunk/bacon.bac.
| ︙ | ︙ | |||
4873 4874 4875 4876 4877 4878 4879 | WRITELN "@" & txt$ & "@" TO src_tmp ENDIF WEND CLOSE FILE src_in, src_tmp SYSTEM "cpp -P -w " & inc$ & ".tmp " & inc$ & ".cpp" ' Restore next line marker OPEN inc$ & ".cpp" FOR READING AS src_cpp | | | > | 4873 4874 4875 4876 4877 4878 4879 4880 4881 4882 4883 4884 4885 4886 4887 4888 4889 4890 4891 4892 4893 4894 4895 4896 4897 4898 4899 4900 4901 4902 4903 | WRITELN "@" & txt$ & "@" TO src_tmp ENDIF WEND CLOSE FILE src_in, src_tmp SYSTEM "cpp -P -w " & inc$ & ".tmp " & inc$ & ".cpp" ' Restore next line marker OPEN inc$ & ".cpp" FOR READING AS src_cpp OPEN inc$ & ".bac2" FOR WRITING AS src_out WHILE NOT(ENDFILE(src_cpp)) READLN txt$ FROM src_cpp WRITELN MID$(txt$, 2, LEN(txt$)-2) TO src_out WEND CLOSE FILE src_out, src_cpp newfeed$ = inc$ & ".bac" g_TMP_FILES$ = g_TMP_FILES$ & " " & inc$ & ".cpp" & " " & inc$ & ".tmp" & " " & inc$ & ".bac2" PRINT "done." ELSE EPRINT "System error: the C Preprocessor 'cpp' not found on this system! Exiting..." END 1 END IF ELSE newfeed$ = inc$ END IF g_TMP_FILES$ = g_TMP_FILES$ & " " & inc$ ' Start walking through program copy_counter = g_COUNTER g_COUNTER = 1 ' Assign new file copy_curfile$ = g_CURFILE$ ' Set current filename g_CURFILE$ = newfeed$ |
| ︙ | ︙ | |||
5840 5841 5842 5843 5844 5845 5846 | WRITELN "#include ", element$[i] TO g_HFILE ELIF LEFT$(element$[i], 1) = "/" THEN WRITELN "#include ", CHR$(34), element$[i], CHR$(34) TO g_HFILE ELSE WRITELN "#include ", CHR$(34), CURDIR$, "/", element$[i], CHR$(34) TO g_HFILE ENDIF NEXT | < < < | 5841 5842 5843 5844 5845 5846 5847 5848 5849 5850 5851 5852 5853 5854 | WRITELN "#include ", element$[i] TO g_HFILE ELIF LEFT$(element$[i], 1) = "/" THEN WRITELN "#include ", CHR$(34), element$[i], CHR$(34) TO g_HFILE ELSE WRITELN "#include ", CHR$(34), CURDIR$, "/", element$[i], CHR$(34) TO g_HFILE ENDIF NEXT ELSE WRITELN "#pragma ", CHOP$(MID$(statement$, INSTR(statement$, "PRAGMA") + 6)) TO g_CFILE END IF ENDIF CASE "SWAP" Handle_Swap(CHOP$(MID$(statement$, INSTR(statement$, "SWAP") + 4))) |
| ︙ | ︙ | |||
7365 7366 7367 7368 7369 7370 7371 | g_LOWERCASE_TMP = VAL(CHOP$(MID$(line$, 10))) END SELECT WEND CLOSE FILE cfgfile ENDIF REPEAT | | | 7363 7364 7365 7366 7367 7368 7369 7370 7371 7372 7373 7374 7375 7376 7377 |
g_LOWERCASE_TMP = VAL(CHOP$(MID$(line$, 10)))
END SELECT
WEND
CLOSE FILE cfgfile
ENDIF
REPEAT
opt = CMDLINE(":c:d:i:l:o:r:e:xnjfpqsvwyz@")
SELECT opt
' Compiler option
CASE 99
g_CCNAME$ = ARGUMENT$
' Include option
CASE 105
|
| ︙ | ︙ | |||
7417 7418 7419 7420 7421 7422 7423 | PRINT NL$, "USAGE: bacon [options] program[.bac]" PRINT NL$, "OPTIONS:" PRINT NL$, " -c <compiler>", TAB$(1), "Compiler to use (default: cc)" PRINT " -l <ldflags>", TAB$(1), "Pass libraries to linker" PRINT " -o <options>", TAB$(1), "Pass compiler options" PRINT " -i <include>", TAB$(1), "Add include file to C code" PRINT " -d <tmpdir>", TAB$(1), "Temporary directory (default: .)" | < < | 7415 7416 7417 7418 7419 7420 7421 7422 7423 7424 7425 7426 7427 7428 7429 7430 7431 | PRINT NL$, "USAGE: bacon [options] program[.bac]" PRINT NL$, "OPTIONS:" PRINT NL$, " -c <compiler>", TAB$(1), "Compiler to use (default: cc)" PRINT " -l <ldflags>", TAB$(1), "Pass libraries to linker" PRINT " -o <options>", TAB$(1), "Pass compiler options" PRINT " -i <include>", TAB$(1), "Add include file to C code" PRINT " -d <tmpdir>", TAB$(1), "Temporary directory (default: .)" PRINT " -r <ranlib>", TAB$(1), "Define ranlib" PRINT " -e <file.bac>", TAB$(1), "Use embedded editor" PRINT " -y ", TAB$(2), "Automatically delete temporary files" PRINT " -x ", TAB$(2), "Extract gettext strings" PRINT " -z ", TAB$(2), "Allow lowercase keywords" PRINT " -f ", TAB$(2), "Create Shared Object" PRINT " -n ", TAB$(2), "Do not compile, only convert" PRINT " -j ", TAB$(2), "Invoke C Preprocessor" PRINT " -p ", TAB$(2), "Preserve temporary files" PRINT " -q ", TAB$(2), "Show summary after conversion only" |
| ︙ | ︙ | |||
7464 7465 7466 7467 7468 7469 7470 | CASE 121 g_NO_QUESTION = 1 ' No compile option CASE 110 g_NO_COMPILE = 1 | < < < < < | 7460 7461 7462 7463 7464 7465 7466 7467 7468 7469 7470 7471 7472 7473 | CASE 121 g_NO_QUESTION = 1 ' No compile option CASE 110 g_NO_COMPILE = 1 ' Define BaCon archiver CASE 98 g_ARNAME$ = ARGUMENT$ ' Goto internal editor CASE 101 IF FILEEXISTS(ARGUMENT$) THEN |
| ︙ | ︙ | |||
8476 8477 8478 8479 8480 8481 8482 |
WRITELN "typedef struct __b2c_te_expr { int type; union {double value; const double *bound; const void *function;}; void *parameters[1]; } __b2c_te_expr;" TO g_GENERIC
WRITELN "typedef struct __b2c_te_variable { const char *name; const void *address; int type; void *context; } __b2c_te_variable;" TO g_GENERIC
WRITELN "double __b2c_te_interp(const char *expression, int *error); __b2c_te_expr *te_compile(const char *expression, const __b2c_te_variable *variables, int var_count, int *error);" TO g_GENERIC
WRITELN "double __b2c_te_eval(const __b2c_te_expr *n); void __b2c_te_print(const __b2c_te_expr *n); void __b2c_te_free(__b2c_te_expr *n);" TO g_GENERIC
WRITELN "double __b2c__eval(int, char*, __b2c_te_variable*, int, char*);" TO g_GENERIC
WRITELN "#define __b2c__cacerts NULL" TO g_GENERIC
WRITELN "#define __b2c__capeer SSL_VERIFY_NONE" TO g_GENERIC
| < | 8467 8468 8469 8470 8471 8472 8473 8474 8475 8476 8477 8478 8479 8480 |
WRITELN "typedef struct __b2c_te_expr { int type; union {double value; const double *bound; const void *function;}; void *parameters[1]; } __b2c_te_expr;" TO g_GENERIC
WRITELN "typedef struct __b2c_te_variable { const char *name; const void *address; int type; void *context; } __b2c_te_variable;" TO g_GENERIC
WRITELN "double __b2c_te_interp(const char *expression, int *error); __b2c_te_expr *te_compile(const char *expression, const __b2c_te_variable *variables, int var_count, int *error);" TO g_GENERIC
WRITELN "double __b2c_te_eval(const __b2c_te_expr *n); void __b2c_te_print(const __b2c_te_expr *n); void __b2c_te_free(__b2c_te_expr *n);" TO g_GENERIC
WRITELN "double __b2c__eval(int, char*, __b2c_te_variable*, int, char*);" TO g_GENERIC
WRITELN "#define __b2c__cacerts NULL" TO g_GENERIC
WRITELN "#define __b2c__capeer SSL_VERIFY_NONE" TO g_GENERIC
' Create m4 file to see which functions are needed, mingle non-string functions to avoid m4 messing up itself when compiling BaCon
OPEN g_BACONM4$ FOR WRITING AS g_BACONM4
WRITELN "di", "vert(-1)dnl" TO g_BACONM4
WRITELN "define(`_total',`error malloc memcheck minmax utf8 version')" TO g_BACONM4
WRITELN "define(`_funcs',`ifelse(index(_total,` $*'),`-1',`define(`_total',defn(`_total') $*)')')" TO g_BACONM4
WRITELN "define(`ALIGN", g_STRINGSIGN$, "',`_funcs(align) _funcs(delimengine)')" TO g_BACONM4
|
| ︙ | ︙ | |||
8591 8592 8593 8594 8595 8596 8597 | WRITELN "define(`WA", "IT',`_funcs(wait)')" TO g_BACONM4 WRITELN "define(`WALK", g_STRINGSIGN$, "',`_funcs(walk)')" TO g_BACONM4 WRITELN "define(`WE", "EK',`_funcs(time)')" TO g_BACONM4 WRITELN "define(`WEEKDAY", g_STRINGSIGN$, "',`_funcs(datename)')" TO g_BACONM4 WRITELN "define(`YE", "AR',`_funcs(time)')" TO g_BACONM4 WRITELN "m4wrap(`di", "vert(1)_total')" TO g_BACONM4 WRITELN "di", "vert(0)undi", "vert(1)di", "vert(-1)dnl" TO g_BACONM4 | > | | 8581 8582 8583 8584 8585 8586 8587 8588 8589 8590 8591 8592 8593 8594 8595 8596 |
WRITELN "define(`WA", "IT',`_funcs(wait)')" TO g_BACONM4
WRITELN "define(`WALK", g_STRINGSIGN$, "',`_funcs(walk)')" TO g_BACONM4
WRITELN "define(`WE", "EK',`_funcs(time)')" TO g_BACONM4
WRITELN "define(`WEEKDAY", g_STRINGSIGN$, "',`_funcs(datename)')" TO g_BACONM4
WRITELN "define(`YE", "AR',`_funcs(time)')" TO g_BACONM4
WRITELN "m4wrap(`di", "vert(1)_total')" TO g_BACONM4
WRITELN "di", "vert(0)undi", "vert(1)di", "vert(-1)dnl" TO g_BACONM4
CLOSE FILE g_GENERIC, g_CFILE, FLOATARRAYFILE, STRINGARRAYFILE, g_BACONM4
' Create list of required functions
total$ = EXEC$("cat " & g_SOURCEFILE$ & " " & g_TMP_FILES$ & " | tr '`(' ' ' | m4 " & g_BACONM4$ & " -")
PRINT "Analyzing dependencies... ", total$
g_TMP_FILES$ = g_TMP_FILES$ & " " & g_GENERIC$ & " " & g_BACONM4$
|
| ︙ | ︙ | |||
9568 9569 9570 9571 9572 9573 9574 | ' Creation of the Makefile OPEN g_TEMPDIR$ & "/Makefile.bacon" FOR WRITING AS makefile WRITELN "# Created with BaCon ", g_VERSION$, " - (c) Peter van Eerten - MIT License", NL$ TO makefile WRITELN BASENAME$(g_SOURCEFILE$, 1), g_BINEXT$, ": ", BASENAME$(g_SOURCEFILE$), ".o ", g_REBUILD_ARCHIVE$ TO makefile WRITELN TAB$(1), g_CCNAME$, " -o ", BASENAME$(g_SOURCEFILE$, 1), g_BINEXT$, " ", BASENAME$(g_SOURCEFILE$), ".o ", g_LDFLAGS$, " ", g_LIB_TLS$, " -lm" TO makefile WRITELN BASENAME$(g_SOURCEFILE$), ".o: ", BASENAME$(g_SOURCEFILE$), ".c" TO makefile WRITELN TAB$(1), g_CCNAME$, " ", g_CCFLAGS$, " -c ", BASENAME$(g_SOURCEFILE$), ".c" TO makefile | < < < < < < < < | 9559 9560 9561 9562 9563 9564 9565 9566 9567 9568 9569 9570 9571 9572 | ' Creation of the Makefile OPEN g_TEMPDIR$ & "/Makefile.bacon" FOR WRITING AS makefile WRITELN "# Created with BaCon ", g_VERSION$, " - (c) Peter van Eerten - MIT License", NL$ TO makefile WRITELN BASENAME$(g_SOURCEFILE$, 1), g_BINEXT$, ": ", BASENAME$(g_SOURCEFILE$), ".o ", g_REBUILD_ARCHIVE$ TO makefile WRITELN TAB$(1), g_CCNAME$, " -o ", BASENAME$(g_SOURCEFILE$, 1), g_BINEXT$, " ", BASENAME$(g_SOURCEFILE$), ".o ", g_LDFLAGS$, " ", g_LIB_TLS$, " -lm" TO makefile WRITELN BASENAME$(g_SOURCEFILE$), ".o: ", BASENAME$(g_SOURCEFILE$), ".c" TO makefile WRITELN TAB$(1), g_CCNAME$, " ", g_CCFLAGS$, " -c ", BASENAME$(g_SOURCEFILE$), ".c" TO makefile WRITELN NL$, ".PHONY: clean" TO makefile WRITELN "clean:" TO makefile WRITELN TAB$(1), "rm -f *.o *.c ", BASENAME$(g_SOURCEFILE$, 1), g_BINEXT$, " ", BASENAME$(g_SOURCEFILE$, 1), ".*.* ", g_REBUILD_ARCHIVE$, " Makefile.bacon" TO makefile CLOSE FILE makefile g_TMP_FILES$ = g_TMP_FILES$ & " " & g_TEMPDIR$ & "/Makefile.bacon" ' Start compilation |
| ︙ | ︙ | |||
9631 9632 9633 9634 9635 9636 9637 | END IF END IF ' Cleanup IF ISFALSE(g_TMP_PRESERVE) THEN FOR tmpfile$ IN g_TMP_FILES$ IF FILEEXISTS(tmpfile$) THEN | | | 9614 9615 9616 9617 9618 9619 9620 9621 9622 9623 9624 9625 9626 9627 9628 9629 9630 9631 9632 9633 | END IF END IF ' Cleanup IF ISFALSE(g_TMP_PRESERVE) THEN FOR tmpfile$ IN g_TMP_FILES$ IF FILEEXISTS(tmpfile$) THEN IF NOT(REGEX(tmpfile$, ".bac$")) THEN DELETE FILE tmpfile$ ELSE PRINT NL$, "Warning: duplicate SUB or FUNCTION found! Temporary file ", tmpfile$, " already deleted." END IF NEXT IF LEN(g_REBUILD_ARCHIVE$) THEN FOR tmpfile$ IN WALK$(g_TEMPDIR$, 1, "bacon\\..+\\.o", FALSE) DELETE FILE g_TEMPDIR$ & "/" & tmpfile$ NEXT ENDIF END IF END RETURN_CODE |
Changes to bacon_trunk/bacon.sh.
| ︙ | ︙ | |||
5766 5767 5768 5769 5770 5771 5772 |
then
echo -n "Preprocessing '${INC}'... "
# Change next line marker to overcome C preprocessor interpretation
while read -r LINE; do if [[ ${LINE} = +(\#*) ]]; then echo "${LINE}"; else echo "@${LINE}@"; fi; done < $INC > $INC.tmp
cpp -w -P $INC.tmp $INC.cpp
# Restore the next line marker
while read -r LINE; do LINE="${LINE:1}"; echo "${LINE%@*}"; done < $INC.cpp > $INC.bac
| | > | 5766 5767 5768 5769 5770 5771 5772 5773 5774 5775 5776 5777 5778 5779 5780 5781 5782 5783 5784 5785 5786 5787 5788 5789 5790 |
then
echo -n "Preprocessing '${INC}'... "
# Change next line marker to overcome C preprocessor interpretation
while read -r LINE; do if [[ ${LINE} = +(\#*) ]]; then echo "${LINE}"; else echo "@${LINE}@"; fi; done < $INC > $INC.tmp
cpp -w -P $INC.tmp $INC.cpp
# Restore the next line marker
while read -r LINE; do LINE="${LINE:1}"; echo "${LINE%@*}"; done < $INC.cpp > $INC.bac
g_TMP_FILES="$g_TMP_FILES ${INC}.cpp ${INC}.tmp $INC.bac2"
NEWFEED="${INC}.bac"
echo "done."
else
echo "System error: the C Preprocessor 'cpp' not found on this system! Exiting..."
exit 1
fi
else
NEWFEED=${INC}
fi
g_TMP_FILES="$g_TMP_FILES ${INC}"
# Start walking through program
COPY_COUNTER=$g_COUNTER
g_COUNTER=1
# Assign new file
COPY_CURFILE=$g_CURFILE
# Set current filename
g_CURFILE=${NEWFEED}
|
| ︙ | ︙ | |||
6918 6919 6920 6921 6922 6923 6924 |
elif [[ ${EXP:0:1} = "/" ]]
then
echo "#include \"${EXP}\"" >> $g_HFILE
else
echo "#include \"`pwd`/${EXP}\"" >> $g_HFILE
fi
done
| < < < < | 6919 6920 6921 6922 6923 6924 6925 6926 6927 6928 6929 6930 6931 6932 |
elif [[ ${EXP:0:1} = "/" ]]
then
echo "#include \"${EXP}\"" >> $g_HFILE
else
echo "#include \"`pwd`/${EXP}\"" >> $g_HFILE
fi
done
else
echo "#pragma ${1##*PRAGMA }" >> $g_CFILE
fi
fi;;
"SWAP")
Handle_Swap "${1#* }";;
"SETSERIAL")
|
| ︙ | ︙ | |||
8127 8128 8129 8130 8131 8132 8133 |
then
g_LDFLAGS="$g_LDFLAGS $OPTARG"
else
g_LDFLAGS="$g_LDFLAGS -l$OPTARG"
fi;;
o) g_CCFLAGS="$g_CCFLAGS $OPTARG";;
n) g_NO_COMPILE=1;;
| < < < | 8124 8125 8126 8127 8128 8129 8130 8131 8132 8133 8134 8135 8136 8137 |
then
g_LDFLAGS="$g_LDFLAGS $OPTARG"
else
g_LDFLAGS="$g_LDFLAGS -l$OPTARG"
fi;;
o) g_CCFLAGS="$g_CCFLAGS $OPTARG";;
n) g_NO_COMPILE=1;;
r) g_RANLIB="$OPTARG";;
j) g_CPP=1;;
f) g_LDFLAGS="$g_LDFLAGS -shared -rdynamic"
g_CCFLAGS="$g_CCFLAGS -fPIC"
g_BINEXT=".so";;
p) g_TMP_PRESERVE=1;;
q) g_QUIET=1;;
|
| ︙ | ︙ | |||
8157 8158 8159 8160 8161 8162 8163 | echo "OPTIONS:" echo echo -e " -c <compiler>\tCompiler to use (default: cc)" echo -e " -l <ldflags>\tPass libraries to linker" echo -e " -o <options>\tPass compiler options" echo -e " -i <include>\tAdd include file to C code" echo -e " -d <tmpdir>\tTemporary directory (default: .)" | < < | 8151 8152 8153 8154 8155 8156 8157 8158 8159 8160 8161 8162 8163 8164 8165 8166 | echo "OPTIONS:" echo echo -e " -c <compiler>\tCompiler to use (default: cc)" echo -e " -l <ldflags>\tPass libraries to linker" echo -e " -o <options>\tPass compiler options" echo -e " -i <include>\tAdd include file to C code" echo -e " -d <tmpdir>\tTemporary directory (default: .)" echo -e " -r <ranlib>\tDefine ranlib" echo -e " -y \t\tAutomatically delete temporary files" echo -e " -x \t\tExtract gettext strings" echo -e " -z \t\tAllow lowercase keywords" echo -e " -f \t\tCreate Shared Object" echo -e " -n \t\tDo not compile, only convert" echo -e " -j \t\tInvoke C Preprocessor" echo -e " -p \t\tPreserve temporary files" echo -e " -q \t\tShow summary after conversion only" |
| ︙ | ︙ | |||
10403 10404 10405 10406 10407 10408 10409 |
# Creation of the Makefile
echo -e "# Created with Shell BaCon $g_VERSION - (c) Peter van Eerten - MIT License\n" > $g_TEMPDIR/Makefile.bacon
BASE="${g_SOURCEFILE%.*}"
echo -e "${BASE##*/}$g_BINEXT: ${g_SOURCEFILE##*/}.o ${g_REBUILD_ARCHIVE}" >> $g_TEMPDIR/Makefile.bacon
echo -e "\t$g_CCNAME -o ${BASE##*/}$g_BINEXT ${g_SOURCEFILE##*/}.o $g_LDFLAGS ${g_LIB_TLS} -lm" >> $g_TEMPDIR/Makefile.bacon
echo -e "${g_SOURCEFILE##*/}.o: ${g_SOURCEFILE##*/}.c" >> $g_TEMPDIR/Makefile.bacon
echo -e "\t$g_CCNAME $g_CCFLAGS -c ${g_SOURCEFILE##*/}.c" >> $g_TEMPDIR/Makefile.bacon
| < < < < < < < < < < < < | 10395 10396 10397 10398 10399 10400 10401 10402 10403 10404 10405 10406 10407 10408 |
# Creation of the Makefile
echo -e "# Created with Shell BaCon $g_VERSION - (c) Peter van Eerten - MIT License\n" > $g_TEMPDIR/Makefile.bacon
BASE="${g_SOURCEFILE%.*}"
echo -e "${BASE##*/}$g_BINEXT: ${g_SOURCEFILE##*/}.o ${g_REBUILD_ARCHIVE}" >> $g_TEMPDIR/Makefile.bacon
echo -e "\t$g_CCNAME -o ${BASE##*/}$g_BINEXT ${g_SOURCEFILE##*/}.o $g_LDFLAGS ${g_LIB_TLS} -lm" >> $g_TEMPDIR/Makefile.bacon
echo -e "${g_SOURCEFILE##*/}.o: ${g_SOURCEFILE##*/}.c" >> $g_TEMPDIR/Makefile.bacon
echo -e "\t$g_CCNAME $g_CCFLAGS -c ${g_SOURCEFILE##*/}.c" >> $g_TEMPDIR/Makefile.bacon
echo -e "\n.PHONY: clean" >> $g_TEMPDIR/Makefile.bacon
echo -e "clean:" >> $g_TEMPDIR/Makefile.bacon
echo -e "\trm -f *.o *.c ${g_SOURCEFILE%.*}$g_BINEXT ${g_SOURCEFILE%.bac}.*.* ${g_REBUILD_ARCHIVE} Makefile.bacon" >> $g_TEMPDIR/Makefile.bacon
g_TMP_FILES="$g_TMP_FILES $g_TEMPDIR/Makefile".bacon
# Start compilation
if [[ $g_NO_COMPILE -eq 0 ]]
|
| ︙ | ︙ | |||
10477 10478 10479 10480 10481 10482 10483 |
# Cleanup
if [[ $g_TMP_PRESERVE -eq 0 ]]
then
for i in $g_TMP_FILES
do
if [[ -f $i ]]
then
| > > | > | 10457 10458 10459 10460 10461 10462 10463 10464 10465 10466 10467 10468 10469 10470 10471 10472 10473 10474 10475 10476 10477 10478 |
# Cleanup
if [[ $g_TMP_PRESERVE -eq 0 ]]
then
for i in $g_TMP_FILES
do
if [[ -f $i ]]
then
if [[ ${i} != +(*.bac) ]]
then
rm $i
fi
else
echo -e "\nWarning: duplicate SUB or FUNCTION found! Temporary file $i already deleted."
fi
done
if [[ -n $g_REBUILD_ARCHIVE ]]
then
rm -f $g_TEMPDIR/bacon.*.o
fi
fi
exit $RETURN_CODE
|
Changes to bacon_trunk/configure.
| ︙ | ︙ | |||
625 626 627 628 629 630 631 | ac_subst_vars='LTLIBOBJS LIBOBJS FLTK GTK M4 MAKE STRIP | < < | 625 626 627 628 629 630 631 632 633 634 635 636 637 638 | ac_subst_vars='LTLIBOBJS LIBOBJS FLTK GTK M4 MAKE STRIP ac_ct_CXX CXXFLAGS CXX FLTK_CONFIG BSHELL EGREP GREP |
| ︙ | ︙ | |||
6440 6441 6442 6443 6444 6445 6446 | ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu | < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < < | 6438 6439 6440 6441 6442 6443 6444 6445 6446 6447 6448 6449 6450 6451 |
ac_ext=c
ac_cpp='$CPP $CPPFLAGS'
ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
ac_compiler_gnu=$ac_cv_c_compiler_gnu
# Check for 'strip'
# Extract the first word of "strip", so it can be a program name with args.
set dummy strip; ac_word=$2
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
$as_echo_n "checking for $ac_word... " >&6; }
if ${ac_cv_prog_STRIP+:} false; then :
$as_echo_n "(cached) " >&6
|
| ︙ | ︙ | |||
6714 6715 6716 6717 6718 6719 6720 |
# Make sure CXXFLAGS always works in the Makefile
if test -z "CXXFLAGS"; then
CXXFLAGS="-g -O2"
fi
# Substitute variables in Makefile
| < | 6575 6576 6577 6578 6579 6580 6581 6582 6583 6584 6585 6586 6587 6588 |
# Make sure CXXFLAGS always works in the Makefile
if test -z "CXXFLAGS"; then
CXXFLAGS="-g -O2"
fi
# Substitute variables in Makefile
|
| ︙ | ︙ |
Changes to bacon_trunk/configure.in.
| ︙ | ︙ | |||
220 221 222 223 224 225 226 |
AC_MSG_RESULT(not accepted)
fi
fi
# Check C++ compiler
AC_PROG_CXX
| < < < < < < < < < | 220 221 222 223 224 225 226 227 228 229 230 231 232 233 |
AC_MSG_RESULT(not accepted)
fi
fi
# Check C++ compiler
AC_PROG_CXX
# Check for 'strip'
AC_CHECK_PROG(STRIP,strip,strip,touch)
# Check for 'make'
AC_CHECK_PROG(MAKE,make,yes,no)
if test "$MAKE" = no; then
AC_MSG_ERROR(cannot compile - please install the 'make' utility.)
|
| ︙ | ︙ | |||
260 261 262 263 264 265 266 | # Substitute variables in Makefile AC_SUBST(CC) AC_SUBST(CFLAGS) AC_SUBST(CXX) AC_SUBST(CXXFLAGS) AC_SUBST(LDFLAGS) | < | 251 252 253 254 255 256 257 258 259 260 261 262 263 264 | # Substitute variables in Makefile AC_SUBST(CC) AC_SUBST(CFLAGS) AC_SUBST(CXX) AC_SUBST(CXXFLAGS) AC_SUBST(LDFLAGS) AC_SUBST(STRIP) AC_SUBST(BSHELL) AC_SUBST(LIBS) AC_SUBST(GTK) AC_SUBST(FLTK) AC_CONFIG_FILES([Makefile]) |
| ︙ | ︙ |