From f65fec48c2f2be434dfa5f96a3c33658e9339336 Mon Sep 17 00:00:00 2001 From: Paul Tucker Date: Mon, 4 Nov 2002 20:22:06 +0000 Subject: [PATCH] See Changelog 2002-11-04 15:18 UTC-0500 --- harbour/ChangeLog | 14 +++++++--- harbour/make_vc.bat | 12 +++++++-- harbour/makefile.nt | 6 +++-- harbour/makefile.vc | 66 +++++++-------------------------------------- 4 files changed, 33 insertions(+), 65 deletions(-) diff --git a/harbour/ChangeLog b/harbour/ChangeLog index 09495c48b2..b427207541 100644 --- a/harbour/ChangeLog +++ b/harbour/ChangeLog @@ -8,10 +8,16 @@ 2002-12-01 23:12 UTC+0100 Foo Bar */ -2002-11-04 12:20 UTC-0500 Paul Tucker - * source/rtl/gtwin/gtwin.c - * reduced calls to gt_ScreenWidth - + missed include Conio.h for msvc +2002-11-04 15:18 UTC-0500 Paul Tucker + * makefile.vc + * no more recursive nmake calls + * makefile.nt + * corrected on batch mode call + * make_vc.bat + * if building Harbour under NT, use the alternate makefile.nt + * for faster builds. + * if you would prefer not to use batch mode, + * run make_vc /y (just like nmake) 2002-11-03 20:28 UTC+0300 Alexander Kresin * source/rdd/dbcmd.c diff --git a/harbour/make_vc.bat b/harbour/make_vc.bat index f7643c9157..45f760a063 100644 --- a/harbour/make_vc.bat +++ b/harbour/make_vc.bat @@ -11,15 +11,23 @@ rem Instead, make a local copy and modify that one, or make a call to rem this batch file from your customized one. [vszakats] rem --------------------------------------------------------------- +if not exist obj md obj +if not exist obj\vc md obj\vc +if not exist lib md lib +if not exist lib\vc md lib\vc +if not exist bin md bin +if not exist bin\vc md bin\vc + if "%1" == "clean" goto CLEAN if "%1" == "CLEAN" goto CLEAN set MK_FILE=makefile.vc if "%OS%" == "Windows_NT" set MK_FILE=makefile.nt - +if "%1" == "/Y" set MK_FILE=makefile.vc +if "%1" == "/y" set MK_FILE=makefile.vc :BUILD - nmake /f %MK_FILE% %1 %2 %3 > make_vc.log + nmake /f%MK_FILE% %1 %2 %3 > make_vc.log if errorlevel 1 goto BUILD_ERR :BUILD_OK diff --git a/harbour/makefile.nt b/harbour/makefile.nt index cd6b013f02..a110be926b 100644 --- a/harbour/makefile.nt +++ b/harbour/makefile.nt @@ -170,6 +170,7 @@ HBRUN_EXE = $(BIN_DIR)\hbrun.exe HBTEST_EXE = $(BIN_DIR)\hbtest.exe HBDOC_EXE = $(BIN_DIR)\hbdoc.exe HBMAKE_EXE = $(BIN_DIR)\hbmake.exe + # # GT driver list # @@ -198,7 +199,7 @@ HB_GT_LIB = $(LIB_DIR)\$(HB_GT_LIB).lib # override builtin -.c.obj: +.c.obj:: $(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $< # @@ -477,7 +478,7 @@ LANG_LIB_OBJS = \ # CODEPAGE.LIB rules # -{$(CODEPAGE_DIR)}.c{$(OBJ_DIR)}.obj: +{$(CODEPAGE_DIR)}.c{$(OBJ_DIR)}.obj:: $(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $< CODEPAGE_LIB_OBJS = \ @@ -1108,3 +1109,4 @@ $(GTCGI_LIB)2 : $(GTCGI_LIB_OBJS) $(GTPCA_LIB)2 : $(GTPCA_LIB_OBJS) $(GTSTD_LIB)2 : $(GTSTD_LIB_OBJS) $(GTWIN_LIB)2 : $(GTWIN_LIB_OBJS) + diff --git a/harbour/makefile.vc b/harbour/makefile.vc index 34535ccd8c..461c39ca2a 100644 --- a/harbour/makefile.vc +++ b/harbour/makefile.vc @@ -39,24 +39,6 @@ # OBJ lists for the appropriate library. # NOTE: put .prg related obj's last in the lib list. # -# 2. This is a recursive script. If you change the name of this file, -# be sure to change MK_FILE (a few lines down) to the new name as well. -# -# 3. Recurrsion rules are quite simple: -# If you specifiy /a on the command line, files in the obj\vc dir -# will be deleted, and when nmake recurses, it's without the /a flag -# -# If a .prg.obj rule is fired, nmake will execute this script with -# a specific target as a parameter immediatley after compiling a given -# set of prg files. -# ie: Harbour $< -# nmake /fmakefile.vc obj\vc\rtl.lib2 -# which will simply get make to re-evaluate the dependancy list for the -# lib, and as a result, it will execute the C compiler using the .c.obj -# rule below to create the obj's for the prg's that were created just -# prior to the recurrsive call. Once the obj's are created, the -# recurrsion is complete. -# See additional notes under RTL.LIB below. # # --------------------------------------------------------------- @@ -164,6 +146,7 @@ HBRUN_EXE = $(BIN_DIR)\hbrun.exe HBTEST_EXE = $(BIN_DIR)\hbtest.exe HBDOC_EXE = $(BIN_DIR)\hbdoc.exe HBMAKE_EXE = $(BIN_DIR)\hbmake.exe + # # GT driver list # @@ -236,26 +219,14 @@ LIBS2 = \ # # RTL.LIB rules # -# how this works: -# -# {target>.prg{objdir}.obj -# Harbour (flags) -oobjdir\ $< -# The list of dependant prgs is sent to the harbour compiler -# Since the rule is .prg to .obj and the compiler spits out -# C code (as we use it), we need to get those into obj format. -# Since $(<:.prg=.c) doesn't work, we execute this script again -# with a specific target via: -# nMake /fmakefile.vc target.lib2 -# If you view that target at the bottom of this file, all it does -# is cause make to evaluate the obj list of dependants which then -# causes the .c.obj rule above to fire. (by inference) {$(RTL_DIR)}.c{$(OBJ_DIR)}.obj: $(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $< {$(RTL_DIR)}.prg{$(OBJ_DIR)}.obj: $(HARBOUR_EXE) $(HARBOURFLAGS) -o$(OBJ_DIR)\ $< - $(MAKE) -nologo /$(MK_FLAGS) /f$(MK_FILE) $(RTL_LIB)2 + $(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $*.c + RTL_LIB_OBJS = \ $(OBJ_DIR)\abs.obj \ @@ -479,7 +450,6 @@ CODEPAGE_LIB_OBJS = \ $(OBJ_DIR)\cdprukoi.obj \ $(OBJ_DIR)\cdpruwin.obj - # # MACRO.LIB rules # @@ -512,7 +482,7 @@ MACRO_LIB_OBJS = \ {$(RDD_DIR)}.prg{$(OBJ_DIR)}.obj: $(HARBOUR_EXE) $(HARBOURFLAGS) -o$(OBJ_DIR)\ $< - $(MAKE) -nologo /$(MK_FLAGS) /f$(MK_FILE) $(RDD_LIB)2 + $(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $*.c RDD_LIB_OBJS = \ $(OBJ_DIR)\dbcmd.obj \ @@ -544,7 +514,7 @@ RDD_LIB_OBJS = \ {$(RDD_DIR)\nulsys}.prg{$(OBJ_DIR)}.obj: $(HARBOUR_EXE) $(HARBOURFLAGS) -o$(OBJ_DIR)\ $< - $(MAKE) -nologo /$(MK_FLAGS) /f$(MK_FILE) $(NULSYS_LIB)2 + $(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $*.c NULSYS_LIB_OBJS = \ $(OBJ_DIR)\nulsys.obj @@ -558,7 +528,7 @@ NULSYS_LIB_OBJS = \ {$(RDD_DIR)\dbfntx}.prg{$(OBJ_DIR)}.obj: $(HARBOUR_EXE) $(HARBOURFLAGS) -o$(OBJ_DIR)\ $< - $(MAKE) -nologo /$(MK_FLAGS) /f$(MK_FILE) $(DBFNTX_LIB)2 + $(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $*.c DBFNTX_LIB_OBJS = \ $(OBJ_DIR)\dbfntx1.obj \ @@ -574,7 +544,7 @@ DBFNTX_LIB_OBJS = \ {$(RDD_DIR)\dbfcdx}.prg{$(OBJ_DIR)}.obj: $(HARBOUR_EXE) $(HARBOURFLAGS) -o$(OBJ_DIR)\ $< - $(MAKE) -nologo /$(MK_FLAGS) /f$(MK_FILE) $(DBFCDX_LIB)2 + $(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $*.c DBFCDX_LIB_OBJS = \ $(OBJ_DIR)\dbfcdx1.obj \ @@ -604,7 +574,7 @@ PP_LIB_OBJS = \ {$(DEBUG_DIR)}.prg{$(OBJ_DIR)}.obj: $(HARBOUR_EXE) $(HARBOURFLAGS) -o$(OBJ_DIR)\ $< - $(MAKE) -nologo /$(MK_FLAGS) /f$(MK_FILE) $(DEBUG_LIB)2 + $(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $*.c DEBUG_LIB_OBJS = \ $(OBJ_DIR)\dbgmenu.obj \ @@ -647,7 +617,7 @@ COMMON_LIB_OBJS = \ {$(VM_DIR)}.prg{$(OBJ_DIR)}.obj: $(HARBOUR_EXE) $(HARBOURFLAGS) -o$(OBJ_DIR)\ $< - $(MAKE) -nologo /$(MK_FLAGS) /f$(MK_FILE) $(VM_LIB)2 + $(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $*.c VM_LIB_OBJS = \ $(OBJ_DIR)\arrays.obj \ @@ -1084,21 +1054,3 @@ $(OBJ_DIR)\macrol.obj : $(OBJ_DIR)\macrol.c -$(DEL) $(OBJ_DIR)\unistd.h !endif - -# dummy targets used for prg to c creation - -$(RTL_LIB)2 : $(RTL_LIB_OBJS) -$(CODEPAGE_LIB)2 : $(CODEPAGE_LIB_OBJS) -$(COMMON_LIB)2 : $(COMMON_LIB_OBJS) -$(DEBUG_LIB)2 : $(DEBUG_LIB_OBJS) -$(MACRO_LIB)2 : $(MACRO_LIB_OBJS) -$(PP_LIB)2 : $(PP_LIB_OBJS) -$(RDD_LIB)2 : $(RDD_LIB_OBJS) -$(DBFCDX_LIB)2 : $(DBFCDX_LIB_OBJS) -$(DBFNTX_LIB)2 : $(DBFNTX_LIB_OBJS) -$(NULSYS_LIB)2 : $(NULSYS_LIB_OBJS) -$(VM_LIB)2 : $(VM_LIB_OBJS) -$(GTCGI_LIB)2 : $(GTCGI_LIB_OBJS) -$(GTPCA_LIB)2 : $(GTPCA_LIB_OBJS) -$(GTSTD_LIB)2 : $(GTSTD_LIB_OBJS) -$(GTWIN_LIB)2 : $(GTWIN_LIB_OBJS)