2008-08-12 19:31 UTC+0200 Viktor Szakats (harbour.01 syenar hu)

+ config/w32/dm.cf
     + Digital Mars .cf file added. Some cleanups done, and 
       TOFIX added besides the following:
     ; TOFIX: This file comes from xhb, and it needs to be updated 
              to create core and contrib .lib files in central dir.
              Until then it doesn't work. Ryszard, if you see 
              this, could you take a look?

   * config/dos/djgpp.cf
   * config/w32/bcc32.cf
   * config/w32/xcc.cf
     % Unnecessary CPPFLAGS -I options deleted:
       -I$(TOP)
       -I$(TOP)include
       -Iinclude
       -I$(TOP)$(ROOT)

   ; NOTE/TODO: CPPFLAGS -i usage should be cleaned for these files:
     config/dos/owatcom.cf
     config/linux/owatcom.cf
     config/os2/gcc.cf
     config/w32/owatcom.cf
     config/w32/watcom.cf
This commit is contained in:
Viktor Szakats
2008-08-12 18:55:25 +00:00
parent f69a79100e
commit aac58d19f7
5 changed files with 126 additions and 14 deletions

View File

@@ -8,6 +8,31 @@
2008-12-31 13:59 UTC+0100 Foo Bar <foo.bar@foobar.org>
*/
2008-08-12 19:31 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
+ config/w32/dm.cf
+ Digital Mars .cf file added. Some cleanups done, and
TOFIX added besides the following:
; TOFIX: This file comes from xhb, and it needs to be updated
to create core and contrib .lib files in central dir.
Until then it doesn't work. Ryszard, if you see
this, could you take a look?
* config/dos/djgpp.cf
* config/w32/bcc32.cf
* config/w32/xcc.cf
% Unnecessary CPPFLAGS -I options deleted:
-I$(TOP)
-I$(TOP)include
-Iinclude
-I$(TOP)$(ROOT)
; NOTE/TODO: CPPFLAGS -i usage should be cleaned for these files:
config/dos/owatcom.cf
config/linux/owatcom.cf
config/os2/gcc.cf
config/w32/owatcom.cf
config/w32/watcom.cf
2008-08-12 19:31 UTC+0200 Viktor Szakats (harbour.01 syenar hu)
* doc/linux1st.txt
* Updated with hbgf package requirement information.

View File

@@ -12,10 +12,7 @@ LIB_EXT = .a
CC = gcc
CC_IN = -c
CC_OUT = -o
CPPFLAGS = -I. -I$(TOP)include -Iinclude
ifneq ($(HB_INC_COMPILE),)
CPPFLAGS = -I. -I$(HB_INC_COMPILE)
endif
CPPFLAGS = -I. -I$(HB_INC_COMPILE)
CFLAGS = -Wall -W
LD = gcc

View File

@@ -14,13 +14,9 @@ LIB_EXT = .lib
CC = bcc32.exe
CC_IN = -c
CC_OUT = -o
CPPFLAGS = -I. -I$(TOP) -I$(TOP)$(ROOT)
CPPFLAGS = -I. -I$(HB_INC_COMPILE)
CFLAGS = -O2 -d -w -w-sig-
ifneq ($(HB_INC_COMPILE),)
CPPFLAGS += -I$(HB_INC_COMPILE)
endif
LD = bcc32.exe
LDFLAGS = -O2
LD_OUT = -e

98
harbour/config/w32/dm.cf Normal file
View File

@@ -0,0 +1,98 @@
#
# $Id$
#
# GNU MAKE file for Digital Mars Compiler
include $(TOP)$(ROOT)config/$(HB_ARCHITECTURE)/global.cf
OBJ_EXT = .obj
EXE_EXT = .exe
LIB_PREF =
LIB_EXT = .lib
CC = dmc
CC_IN = -c
CC_OUT = -o
CPPFLAGS = -I. -I$(HB_INC_COMPILE)
CFLAGS = -6 -cpp -mn -o+time
# TOFIX: Remove this if not absolutely necessary
CFLAGS += -D_MSC_VER
# Add all libraries specified in CONTRIBS and LIBS.
ifeq ($(HB_LIB_COMPILE),)
LINKLIBS += $(foreach lib, $(CONTRIBS), $(TOP)$(ROOT)/contrib/$(lib)/$(ARCH_DIR)/$(subst lib,,$(lib))$(LIB_EXT))
LINKLIBS += $(foreach lib, $(LIBS), $(TOP)$(ROOT)/source/$(lib)/$(ARCH_DIR)/$(lib)$(LIB_EXT))
else
LINKPATHS += -L$(HB_LIB_COMPILE)
LINKLIBS += $(foreach lib, $(CONTRIBS), $(subst lib,,$(lib))$(lib)$(LIB_EXT))
LINKLIBS += $(foreach lib, $(LIBS), $(lib)$(LIB_EXT))
endif
# If LIBS specifies the rdd library, add all DB drivers.
ifeq ($(findstring rdd,$(LIBS)),rdd)
ifeq ($(HB_LIB_COMPILE),)
LINKLIBS += $(foreach drv, $(HB_DB_DRIVERS), $(TOP)$(ROOT)/source/rdd/$(drv)/$(ARCH_DIR)/$(drv)$(LIB_EXT))
else
LINKPATHS += -L$(HB_LIB_COMPILE)
LINKLIBS += $(foreach drv, $(HB_DB_DRIVERS), $(drv)$(LIB_EXT))
endif
endif
# Add the specified GT driver library
ifeq ($(findstring rtl,$(LIBS)),rtl)
LINKLIBS += $(TOP)$(ROOT)source/rtl/$(HB_GT_LIB)/$(ARCH_DIR)/$(HB_GT_LIB)$(LIB_EXT)
ifeq ($(HB_MULTI_GT),yes)
LINKLIBS += $(TOP)$(ROOT)source/rtl/gtnul/$(ARCH_DIR)/gtnul$(LIB_EXT)
endif
endif
ifneq ($(HB_SCREEN_LIB),)
LINKLIBS += $(HB_SCREEN_LIB)
endif
# Add the optional user path(s)
ifneq ($(LNK_USR_PATH),)
LINKPATHS += $(foreach path, $(LNK_USR_PATH), -L$(path))
endif
# Add the optional user libarary (or libraries)
ifneq ($(LNK_USR_LIB),)
LINKLIBS += $(foreach lib, $(LNK_USR_LIB), $(lib)$(LIB_EXT))
endif
SYSLIBS = user32 winspool gdi32 comctl32 comdlg32 ole32 oleaut32 uuid wsock32 advapi32
LINKLIBS += $(SYSLIBS)
define link_exe_file
echo $(subst /,\,$(^F)) > __link__.tmp
echo $@ >> __link__.tmp
echo. >> __link__.tmp
echo $(subst /,\,$(LINKLIBS)) >> __link__.tmp
$(LD) $(LDFLAGS) @__link__.tmp
endef
LD = link
LDFLAGS = /NOMAP /EXETYPE:NT /SUBSYSTEM:CONSOLE $(LINKPATHS) $(L_USR)
LDOBJS = $(foreach file, $(^F), $(file))
LD_RULE = $(LD) $(LDFLAGS) $(subst /,\,$(LDOBJS)), $@,, $(subst /,\,$(LINKLIBS))
define create_library
echo $@ > __lib__.tmp
echo $(^F) >> __lib__.tmp
$(AR) $(ARFLAGS) @__lib__.tmp
endef
AR = lib
ARFLAGS = -c $(A_USR)
AROBJS = $(foreach file, $(^F), $(file))
AR_RULE = $(AR) $(ARFLAGS) $@ $(AROBJS)
ifeq ($(COMMAND_COM),yes)
# workaround for command line size limit
LD_RULE = $(link_exe_file)
AR_RULE = $(create_library)
endif
include $(TOP)$(ROOT)config/rules.cf

View File

@@ -14,17 +14,13 @@ LIB_EXT = .lib
CC = xcc.exe
CC_IN = -c
CC_OUT = -Fo
CPPFLAGS = -I. -I$(TOP) -I$(TOP)$(ROOT)
CPPFLAGS = -I. -I$(HB_INC_COMPILE)
# disabled - it produces bad code
#CPPFLAGS += -Ot
# For Pocket PC and ARM processors (including XScale)
#CPPFLAGS += /Tarm-coff
ifneq ($(HB_INC_COMPILE),)
CPPFLAGS += -I$(HB_INC_COMPILE)
endif
CFLAGS =
LD = xlink.exe