# ilink32.exe link.exe # -aa /subsystem:windows # -ap /subsystem:console # -ad /subsystem:native # # -Tpe # -Tpd /dll NAME = aseawk !ifndef MODE MODE = release !endif CC = bcc32 CXX = bcc32 LD = ilink32 JAVAC = javac JAR = jar CFLAGS = -WM -WU -RT- -w -q -I..\..\.. CXXFLAGS = -WM -WU -RT- -w -q -I..\..\.. LDFLAGS = -ap -Tpe -Gn -c -q -L..\..\$(MODE)\lib -L\progra~1\borland\bds\4.0\lib LIBS = asecmn.lib aseawk.lib aseutl.lib import32.lib cw32mt.lib LIBS_CXX = $(LIBS) "aseawk++.lib" STARTUP = c0x32w.obj JAVACFLAGS = -classpath ..\..\$(MODE)\lib\aseawk.jar;. -Xlint:unchecked OUT_DIR = ..\..\$(MODE)\bin OUT_FILE_BIN = $(OUT_DIR)\$(NAME).exe OUT_FILE_BIN_CXX = "$(OUT_DIR)\$(NAME)++.exe" OUT_FILE_JAR = $(OUT_DIR)\$(NAME).jar TMP_DIR = $(MODE) TMP_DIR_CXX = $(TMP_DIR)\cxx TMP_DIR_JAR = $(TMP_DIR)\java OBJ_FILES_BIN = $(TMP_DIR)\awk.obj OBJ_FILES_BIN_CXX = $(TMP_DIR_CXX)\Awk.obj OBJ_FILES_JAR = \ $(TMP_DIR_JAR)\AseAwk.class \ $(TMP_DIR_JAR)\AseAwkPanel.class \ $(TMP_DIR_JAR)\AseAwkApplet.class TARGETS = bin !if "$(JAVA_HOME)" != "" TARGETS = $(TARGETS) jar !endif !IF "$(MODE)" == "debug" CFLAGS = $(CFLAGS) -D_DEBUG -DDEBUG CXXFLAGS = $(CXXFLAGS) -D_DEBUG -DDEBUG !ELSEIF "$(MODE)" == "release" CFLAGS = $(CFLAGS) -DNDEBUG -O2 CXXFLAGS = $(CXXFLAGS) -DNDEBUG -O2 !ELSE CFLAGS = $(CFLAGS) CXXFLAGS = $(CXXFLAGS) !ENDIF all: $(TARGETS) bin: $(OUT_FILE_BIN) $(OUT_FILE_BIN_CXX) jar: $(OUT_FILE_JAR) $(OUT_FILE_BIN): $(TMP_DIR) $(OUT_DIR) $(OBJ_FILES_BIN) $(LD) $(LDFLAGS) $(STARTUP) $(OBJ_FILES_BIN),$@,,$(LIBS),, $(OUT_FILE_BIN_CXX): $(TMP_DIR_CXX) $(OUT_FILE_BIN) $(OBJ_FILES_BIN_CXX) $(LD) $(LDFLAGS) $(STARTUP) $(OBJ_FILES_BIN_CXX),$@,,$(LIBS_CXX),, $(OUT_FILE_JAR): $(TMP_DIR_JAR) $(OBJ_FILES_JAR) $(JAR) -xvf ..\..\$(MODE)\lib\aseawk.jar $(JAR) -cvfm $(OUT_FILE_JAR) manifest ase -C $(TMP_DIR_JAR) . $(TMP_DIR)\awk.obj: awk.c $(CC) $(CFLAGS) -o$@ -c awk.c $(TMP_DIR_CXX)\Awk.obj: Awk.cpp $(CC) $(CXXFLAGS) -o$@ -c Awk.cpp $(TMP_DIR_JAR)\AseAwk.class: AseAwk.java $(JAVAC) $(JAVACFLAGS) -d $(TMP_DIR_JAR) AseAwk.java $(TMP_DIR_JAR)\AseAwkApplet.class: AseAwkApplet.java $(JAVAC) $(JAVACFLAGS) -d $(TMP_DIR_JAR) AseAwkApplet.java $(TMP_DIR_JAR)\AseAwkPanel.class: AseAwkPanel.java $(JAVAC) $(JAVACFLAGS) -d $(TMP_DIR_JAR) AseAwkPanel.java $(OUT_DIR): -md $(OUT_DIR) $(TMP_DIR): -md $(TMP_DIR) $(TMP_DIR_CXX): $(TMP_DIR) -md $(TMP_DIR_CXX) $(TMP_DIR_JAR): $(TMP_DIR) -md $(TMP_DIR_JAR) clean: -del $(OUT_FILE_BIN) -del $(OUT_FILE_BIN_CXX) -del $(OBJ_FILES_BIN) -del $(OBJ_FILES_BIN_CXX) -del $(OUT_FILE_JAR) -del $(OBJ_FILES_JAR) -del $(TMP_DIR)\*.class