From ce46f48e8c727e2fe5478f5e6c8082d9e270edbc Mon Sep 17 00:00:00 2001 From: Viktor Szakats Date: Tue, 11 Aug 2009 12:00:07 +0000 Subject: [PATCH] 2009-08-11 13:50 UTC+0200 Viktor Szakats (harbour.01 syenar.hu) * config/darwin/gcc.cf % Using custom LD_OUT instead of overriding while LD_RULE. * config/bsd/gcc.cf * config/wce/msvcarm.cf * config/wce/mingwarm.cf * config/wce/poccarm.cf * config/darwin/gcc.cf * config/hpux/gcc.cf * config/dos/watcom.cf * config/dos/djgpp.cf * config/win/watcom.cf * config/win/icc.cf * config/win/cygwin.cf * config/win/msvc.cf * config/win/xcc.cf * config/win/mingw.cf * config/win/pocc.cf * config/win/bcc.cf * config/linux/watcom.cf * config/linux/gcc.cf * config/linux/icc.cf * config/linux/sunpro.cf * config/os2/watcom.cf * config/os2/gcc.cf * config/sunos/gcc.cf * config/sunos/sunpro.cf * Cleaned LDFLAGS usage: % Using := instead of = ! Always initialize LDFLAGS to empty to prevent spillage of random values. * Moved lib specs included in LDFLAGS to LDLIBS. * Cleaned "DEBUG ALL" addition in watcom compilers. ; GNU Make .cf cleanup is about over. There could probably be done some additional optimizations, but it's already much cleaner, simpler and more efficient than it was until a few weeks ago. Still could be done: CFLAGS vs. CPPFLAGS usage accross compilers. *_RULE variables, revise redefinition needs, maybe change the central default, etc. * ChangeLog ! Typos in prev entry. --- harbour/ChangeLog | 48 ++++++++++++++++++++++++++++++++-- harbour/config/bsd/gcc.cf | 1 + harbour/config/darwin/gcc.cf | 4 +-- harbour/config/dos/djgpp.cf | 1 + harbour/config/dos/watcom.cf | 11 ++++---- harbour/config/hpux/gcc.cf | 5 ++-- harbour/config/linux/gcc.cf | 18 +++---------- harbour/config/linux/icc.cf | 2 +- harbour/config/linux/sunpro.cf | 3 ++- harbour/config/linux/watcom.cf | 5 ++-- harbour/config/os2/gcc.cf | 2 +- harbour/config/os2/watcom.cf | 5 ++-- harbour/config/sunos/gcc.cf | 3 +-- harbour/config/sunos/sunpro.cf | 3 ++- harbour/config/wce/mingwarm.cf | 1 + harbour/config/wce/msvcarm.cf | 3 ++- harbour/config/wce/poccarm.cf | 6 +++-- harbour/config/win/bcc.cf | 1 + harbour/config/win/cygwin.cf | 3 ++- harbour/config/win/icc.cf | 4 ++- harbour/config/win/mingw.cf | 1 + harbour/config/win/msvc.cf | 3 ++- harbour/config/win/pocc.cf | 4 ++- harbour/config/win/watcom.cf | 5 ++-- harbour/config/win/xcc.cf | 4 ++- 25 files changed, 100 insertions(+), 46 deletions(-) diff --git a/harbour/ChangeLog b/harbour/ChangeLog index efa8e148b5..46867526a7 100644 --- a/harbour/ChangeLog +++ b/harbour/ChangeLog @@ -17,9 +17,53 @@ past entries belonging to author(s): Viktor Szakats. */ +2009-08-11 13:50 UTC+0200 Viktor Szakats (harbour.01 syenar.hu) + * config/darwin/gcc.cf + % Using custom LD_OUT instead of overriding while LD_RULE. + + * config/bsd/gcc.cf + * config/wce/msvcarm.cf + * config/wce/mingwarm.cf + * config/wce/poccarm.cf + * config/darwin/gcc.cf + * config/hpux/gcc.cf + * config/dos/watcom.cf + * config/dos/djgpp.cf + * config/win/watcom.cf + * config/win/icc.cf + * config/win/cygwin.cf + * config/win/msvc.cf + * config/win/xcc.cf + * config/win/mingw.cf + * config/win/pocc.cf + * config/win/bcc.cf + * config/linux/watcom.cf + * config/linux/gcc.cf + * config/linux/icc.cf + * config/linux/sunpro.cf + * config/os2/watcom.cf + * config/os2/gcc.cf + * config/sunos/gcc.cf + * config/sunos/sunpro.cf + * Cleaned LDFLAGS usage: + % Using := instead of = + ! Always initialize LDFLAGS to empty to prevent spillage of random values. + * Moved lib specs included in LDFLAGS to LDLIBS. + * Cleaned "DEBUG ALL" addition in watcom compilers. + + ; GNU Make .cf cleanup is about over. There could probably be done + some additional optimizations, but it's already much cleaner, simpler + and more efficient than it was until a few weeks ago. + Still could be done: CFLAGS vs. CPPFLAGS usage accross compilers. + *_RULE variables, revise redefinition needs, maybe change the central + default, etc. + + * ChangeLog + ! Typos in prev entry. + 2009-08-11 13:24 UTC+0200 Viktor Szakats (harbour.01 syenar.hu) * source/pp/Makefile - % := -> = + % = -> := * config/sunos/sunpro.cf * config/bsd/gcc.cf @@ -47,7 +91,7 @@ * config/sunos/gcc.cf * config/sunos/sunpro.cf * Cleaned LDLIBS usage: - % Using := insteaf of = + % Using := instead of = ! Fixed spillage of system defined LDLIBS var content. 2009-08-11 13:15 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl) diff --git a/harbour/config/bsd/gcc.cf b/harbour/config/bsd/gcc.cf index f12c23cce1..b060d85dd1 100644 --- a/harbour/config/bsd/gcc.cf +++ b/harbour/config/bsd/gcc.cf @@ -18,6 +18,7 @@ CC_OUT := -o CPPFLAGS := -I. -I$(HB_INC_COMPILE) CFLAGS := +LDFLAGS := ifneq ($(HB_BUILD_WARN),no) CFLAGS += -Wall -W diff --git a/harbour/config/darwin/gcc.cf b/harbour/config/darwin/gcc.cf index 9fee555786..3109ae9477 100644 --- a/harbour/config/darwin/gcc.cf +++ b/harbour/config/darwin/gcc.cf @@ -27,6 +27,7 @@ CPPFLAGS += -no-cpp-precomp # -fno-common enables building .dylib files CFLAGS := -fno-common +LDFLAGS := ifneq ($(HB_BUILD_WARN),no) CFLAGS += -Wall -W @@ -45,7 +46,7 @@ endif #CFLAGS += -Wno-long-double LD := $(HB_CCPREFIX)$(HB_CMP)$(HB_CCPOSTFIX) -LD_OUT := -o +LD_OUT := -o$(subst x,x, ) LIBPATHS := -L$(LIB_DIR) LDLIBS := $(foreach lib,$(LIBS),-l$(lib)) @@ -81,7 +82,6 @@ endif LDLIBS += -lm LDFLAGS += $(LIBPATHS) -LD_RULE = $(LD) $(CFLAGS) $(LD_OUT) $(BIN_DIR)/$@ $(^F) $(LDFLAGS) $(HB_USER_LDFLAGS) $(LDLIBS) AR := libtool ARFLAGS := diff --git a/harbour/config/dos/djgpp.cf b/harbour/config/dos/djgpp.cf index 9fb0dacc13..7a58a077b4 100644 --- a/harbour/config/dos/djgpp.cf +++ b/harbour/config/dos/djgpp.cf @@ -18,6 +18,7 @@ CC_OUT := -o CPPFLAGS := -I. -I$(HB_INC_COMPILE) CFLAGS := +LDFLAGS := ifneq ($(HB_BUILD_WARN),no) CFLAGS += -Wall -W diff --git a/harbour/config/dos/watcom.cf b/harbour/config/dos/watcom.cf index 54298142ac..bde1e4a65b 100644 --- a/harbour/config/dos/watcom.cf +++ b/harbour/config/dos/watcom.cf @@ -30,6 +30,7 @@ CC_OUT := -fo= CPPFLAGS := -zq -bt=dos CFLAGS := +LDFLAGS := ifneq ($(HB_BUILD_WARN),no) CPPFLAGS += -w3 @@ -92,15 +93,15 @@ $(foreach lib,$(LDLIBS),$(link_lib)) endef LD := wlink +ifeq ($(HB_BUILD_DEBUG),yes) + LDFLAGS += DEBUG ALL +endif # different SYS values: dos4g (default), pmodew (commercial), causeway ifeq ($(LIBNAME),hbpp) # we force causeway here as workaround for reduced command line size in dos4g - LDFLAGS = SYS causeway + LDFLAGS += SYS causeway else - LDFLAGS = SYS dos4g OP STUB=wstubq.exe -endif -ifeq ($(HB_BUILD_DEBUG),yes) - LDFLAGS := DEBUG ALL $(LDFLAGS) + LDFLAGS += SYS dos4g OP STUB=wstubq.exe endif LDLIBS := $(foreach lib,$(LIBS),$(LIB_DIR)/$(lib)) diff --git a/harbour/config/hpux/gcc.cf b/harbour/config/hpux/gcc.cf index d838cf487b..d46afe1680 100644 --- a/harbour/config/hpux/gcc.cf +++ b/harbour/config/hpux/gcc.cf @@ -18,8 +18,7 @@ CC_OUT := -o CPPFLAGS := -I. -I$(HB_INC_COMPILE) CFLAGS := - -LDFLAGS = +LDFLAGS := ifneq ($(HB_BUILD_WARN),no) CFLAGS += -Wall -W @@ -33,7 +32,7 @@ CFLAGS += -fPIC # uncomment this if you want to force creating 64bit binaries on IA64 #CFLAGS += -mlp64 -#LDFLAGS = -mlp64 +#LDFLAGS += -mlp64 ifeq ($(HB_BUILD_DEBUG),yes) CFLAGS += -g diff --git a/harbour/config/linux/gcc.cf b/harbour/config/linux/gcc.cf index d261dc4262..0ffde8efcd 100644 --- a/harbour/config/linux/gcc.cf +++ b/harbour/config/linux/gcc.cf @@ -17,21 +17,11 @@ CC_IN := -c CC_OUT := -o CPPFLAGS := -I. -I$(HB_INC_COMPILE) - -ifeq ($(HB_COMPILER),icc) - CFLAGS := -D_GNU_SOURCE - #CFLAGS += -std=c99 - #CFLAGS += -xHOST -else - CFLAGS := -endif +CFLAGS := +LDFLAGS := ifneq ($(HB_BUILD_WARN),no) - ifeq ($(HB_COMPILER),icc) - #CFLAGS += -w2 -Wall - else - CFLAGS += -Wall -W - endif + CFLAGS += -Wall -W endif ifneq ($(HB_BUILD_OPTIM),no) @@ -85,7 +75,7 @@ endif LDLIBS += -lm -lrt -ldl -LDFLAGS = $(LIBPATHS) +LDFLAGS += $(LIBPATHS) AR := $(HB_CCPREFIX)ar ARFLAGS := diff --git a/harbour/config/linux/icc.cf b/harbour/config/linux/icc.cf index 0f70aeac9b..5d3a9c267d 100644 --- a/harbour/config/linux/icc.cf +++ b/harbour/config/linux/icc.cf @@ -77,7 +77,7 @@ endif LDLIBS += -lm -lrt -ldl -LDFLAGS = $(LIBPATHS) +LDFLAGS := $(LIBPATHS) AR := xiar ARFLAGS := diff --git a/harbour/config/linux/sunpro.cf b/harbour/config/linux/sunpro.cf index 7daca5e4a6..bb7c42f7e6 100644 --- a/harbour/config/linux/sunpro.cf +++ b/harbour/config/linux/sunpro.cf @@ -20,6 +20,7 @@ CC_OUT := -o$(subst x,x, ) CPPFLAGS := -I. -I$(HB_INC_COMPILE) CFLAGS := +LDFLAGS := # try to keep `-fast' as left as possible, as later optim # flags may override values set by `-fast', and this way @@ -27,7 +28,7 @@ CFLAGS := # may inherit -m64 from sunpro64.cf, which supersedes -xarch=386 HB_ISAOPT ?= -xarch=386 -LDFLAGS ?= $(HB_ISAOPT) +LDFLAGS += $(HB_ISAOPT) export HB_ISAOPT diff --git a/harbour/config/linux/watcom.cf b/harbour/config/linux/watcom.cf index d3b98c2203..83867e91d6 100644 --- a/harbour/config/linux/watcom.cf +++ b/harbour/config/linux/watcom.cf @@ -30,6 +30,7 @@ CC_OUT := -fo= CPPFLAGS := -zq -bt=linux CFLAGS := +LDFLAGS := ifneq ($(HB_BUILD_WARN),no) CPPFLAGS += -w3 @@ -60,10 +61,10 @@ ifeq ($(HB_BUILD_DEBUG),yes) endif LD := wlink -LDFLAGS = SYS linux ifeq ($(HB_BUILD_DEBUG),yes) - LDFLAGS := DEBUG ALL $(LDFLAGS) + LDFLAGS += DEBUG ALL endif +LDFLAGS += SYS linux LDLIBS := $(foreach lib,$(LIBS),$(LIB_DIR)/$(lib)) diff --git a/harbour/config/os2/gcc.cf b/harbour/config/os2/gcc.cf index fd3906c3b0..a8dcdfd002 100644 --- a/harbour/config/os2/gcc.cf +++ b/harbour/config/os2/gcc.cf @@ -18,6 +18,7 @@ CC_OUT := -o CPPFLAGS := -I. -I$(HB_INC_COMPILE) CFLAGS := +LDFLAGS := ifneq ($(HB_BUILD_WARN),no) CFLAGS += -Wall -W @@ -32,7 +33,6 @@ ifeq ($(HB_BUILD_DEBUG),yes) endif LD := $(HB_CMP) -LDFLAGS = # NOTE: The ending space after -o is important, please preserve it. # Now solved with '$(subst x,x, )' expression. LD_OUT := -o$(subst x,x, ) diff --git a/harbour/config/os2/watcom.cf b/harbour/config/os2/watcom.cf index 04fcb2d47c..243a23d00c 100644 --- a/harbour/config/os2/watcom.cf +++ b/harbour/config/os2/watcom.cf @@ -30,6 +30,7 @@ CC_OUT := -fo= CPPFLAGS := -zq -bt=os2 CFLAGS := +LDFLAGS := ifneq ($(HB_BUILD_WARN),no) CPPFLAGS += -w3 @@ -64,10 +65,10 @@ ifeq ($(CC),wcc386) endif LD := wlink -LDFLAGS = SYS os2v2 ifeq ($(HB_BUILD_DEBUG),yes) - LDFLAGS := DEBUG ALL $(LDFLAGS) + LDFLAGS += DEBUG ALL endif +LDFLAGS += SYS os2v2 LDLIBS := $(foreach lib,$(LIBS),$(LIB_DIR)/$(lib)) diff --git a/harbour/config/sunos/gcc.cf b/harbour/config/sunos/gcc.cf index 8d2de195eb..ac6c531cdc 100644 --- a/harbour/config/sunos/gcc.cf +++ b/harbour/config/sunos/gcc.cf @@ -20,8 +20,7 @@ CC_OUT := -o$(subst x,x, ) CPPFLAGS := -I. -I$(HB_INC_COMPILE) CFLAGS := - -LDFLAGS = +LDFLAGS := ifneq ($(HB_BUILD_WARN),no) CFLAGS += -Wall -W diff --git a/harbour/config/sunos/sunpro.cf b/harbour/config/sunos/sunpro.cf index 5f7680c1d1..9b90d070b7 100644 --- a/harbour/config/sunos/sunpro.cf +++ b/harbour/config/sunos/sunpro.cf @@ -20,6 +20,7 @@ CC_OUT := -o$(subst x,x, ) CPPFLAGS := -I. -I$(HB_INC_COMPILE) CFLAGS := +LDFLAGS := # try to keep `-fast' as left as possible, as later optim # flags may override values set by `-fast', and this way @@ -27,7 +28,7 @@ CFLAGS := # may inherit -m64 from sunpro64.cf, which supersedes -xarch=v8 HB_ISAOPT ?= -xarch=v8 -LDFLAGS ?= $(HB_ISAOPT) +LDFLAGS += $(HB_ISAOPT) # might not be needed for sunos, but helps keeping # {linux,sunos}/sunpro.cf easily vimdiff'able for now diff --git a/harbour/config/wce/mingwarm.cf b/harbour/config/wce/mingwarm.cf index bd87f15bbe..050180ee81 100644 --- a/harbour/config/wce/mingwarm.cf +++ b/harbour/config/wce/mingwarm.cf @@ -18,6 +18,7 @@ CC_OUT := -o CPPFLAGS := -I. -I$(HB_INC_COMPILE) CFLAGS := +LDFLAGS := ifneq ($(HB_BUILD_WARN),no) CFLAGS += -Wall -W diff --git a/harbour/config/wce/msvcarm.cf b/harbour/config/wce/msvcarm.cf index 60c4d80bfe..636fa2fbab 100644 --- a/harbour/config/wce/msvcarm.cf +++ b/harbour/config/wce/msvcarm.cf @@ -18,6 +18,7 @@ CC_OUT := -Fo CPPFLAGS := -I. -I$(HB_INC_COMPILE) CFLAGS := -nologo -D"_WIN32_WCE=0x420" -D"UNDER_CE=0x420" -D"WIN32_PLATFORM_PSPC" -D"WINCE" -D"_WINCE" -D"_WINDOWS" -D"ARM" -D"_ARM_" -D"ARMV4" -D"POCKETPC2003_UI_MODEL" -D"_M_ARM" -D"UNICODE" -D"_UNICODE" -D_UWIN +LDFLAGS := ifeq ($(HB_BUILD_MODE),c) CFLAGS += -TC @@ -53,7 +54,7 @@ LIBPATHS := /libpath:$(LIB_DIR) # Add all libraries specified in LIBS. LDLIBS := $(foreach lib,$(LIBS),$(lib)$(LIB_EXT)) -LDFLAGS = /nologo /link +LDFLAGS += /nologo /link LDFLAGS += /subsystem:windowsce,4.20 /machine:arm /armpadcode /stack:65536,4096 /nodefaultlib:"oldnames.lib" LDFLAGS += /nodefaultlib:"kernel32.lib" /align:4096 /opt:ref /opt:icf ifeq ($(HB_VISUALC_VER_PRE80),) diff --git a/harbour/config/wce/poccarm.cf b/harbour/config/wce/poccarm.cf index 6833f6915f..e9afaea422 100644 --- a/harbour/config/wce/poccarm.cf +++ b/harbour/config/wce/poccarm.cf @@ -15,6 +15,7 @@ CC_OUT := -Fo CPPFLAGS := -I. CPPFLAGS += -Ze -Go CFLAGS := +LDFLAGS := ifneq ($(HB_BUILD_WARN),no) CPPFLAGS += -W1 @@ -39,12 +40,13 @@ endif LD := polink.exe LD_OUT := -OUT: -# Add all libraries specified in LIBS. LIBPATHS := -LIBPATH:$(LIB_DIR) +# Add all libraries specified in LIBS. LDLIBS := $(foreach lib,$(LIBS),$(lib)$(LIB_EXT)) +LDLIBS += coredll.lib corelibc.lib winsock.lib ws2.lib -LDFLAGS = $(LIBPATHS) coredll.lib corelibc.lib winsock.lib ws2.lib LDFLAGS += /SUBSYSTEM:WINDOWS +LDFLAGS += $(LIBPATHS) AR := polib.exe ARFLAGS := diff --git a/harbour/config/win/bcc.cf b/harbour/config/win/bcc.cf index d05099b40b..283124cb94 100644 --- a/harbour/config/win/bcc.cf +++ b/harbour/config/win/bcc.cf @@ -14,6 +14,7 @@ CC_OUT := -o CPPFLAGS := -I. -I$(HB_INC_COMPILE) CFLAGS := -q -tWM +LDFLAGS := ifneq ($(HB_BUILD_WARN),no) CFLAGS += -w -w-sig- -Q diff --git a/harbour/config/win/cygwin.cf b/harbour/config/win/cygwin.cf index 7e8554a67a..8f2af23969 100644 --- a/harbour/config/win/cygwin.cf +++ b/harbour/config/win/cygwin.cf @@ -18,6 +18,7 @@ CC_OUT := -o CPPFLAGS := -I. -I$(HB_INC_COMPILE) CFLAGS := +LDFLAGS := ifneq ($(HB_BUILD_WARN),no) CFLAGS += -Wall -W @@ -43,7 +44,7 @@ LDLIBS := $(foreach lib,$(LIBS),-l$(lib)) # This library is needed for CharToOemBuff() and OemToCharBuff() support. LDLIBS += -luser32 -lgdi32 -lws2_32 -LDFLAGS = $(LIBPATHS) +LDFLAGS += $(LIBPATHS) AR := ar ARFLAGS := diff --git a/harbour/config/win/icc.cf b/harbour/config/win/icc.cf index 5710e4c381..96f91a5bc2 100644 --- a/harbour/config/win/icc.cf +++ b/harbour/config/win/icc.cf @@ -15,6 +15,7 @@ CC_OUT := -Fo CPPFLAGS := -nologo -I. -I$(HB_INC_COMPILE) CFLAGS := -Gs +LDFLAGS := ifeq ($(HB_BUILD_MODE),c) CPPFLAGS += -TC @@ -43,8 +44,9 @@ LD_OUT := -Fe # Add all libraries specified in LIBS. LIBPATHS := /libpath:$(LIB_DIR) LDLIBS := $(foreach lib,$(LIBS),$(lib)$(LIB_EXT)) +LDLIBS += user32.lib ws2_32.lib advapi32.lib gdi32.lib -LDFLAGS = /link $(LIBPATHS) user32.lib ws2_32.lib advapi32.lib gdi32.lib +LDFLAGS += /link $(LIBPATHS) AR := xilib.exe ARFLAGS := diff --git a/harbour/config/win/mingw.cf b/harbour/config/win/mingw.cf index 8031bdc758..8cc974de3c 100644 --- a/harbour/config/win/mingw.cf +++ b/harbour/config/win/mingw.cf @@ -18,6 +18,7 @@ CC_OUT := -o CPPFLAGS := -I. -I$(HB_INC_COMPILE) CFLAGS := +LDFLAGS := ifneq ($(HB_BUILD_WARN),no) CFLAGS += -Wall -W diff --git a/harbour/config/win/msvc.cf b/harbour/config/win/msvc.cf index a78efaa8d0..935f0c1d80 100644 --- a/harbour/config/win/msvc.cf +++ b/harbour/config/win/msvc.cf @@ -12,6 +12,7 @@ CC_OUT := -Fo CPPFLAGS := -nologo -I. -I$(HB_INC_COMPILE) -Gs CFLAGS := +LDFLAGS := ifeq ($(HB_BUILD_MODE),c) CPPFLAGS += -TC @@ -55,7 +56,7 @@ LD_OUT := /out: LIBPATHS := /libpath:$(LIB_DIR) LDLIBS := $(foreach lib,$(LIBS),$(lib)$(LIB_EXT)) -LDFLAGS = /nologo $(LIBPATHS) user32.lib ws2_32.lib advapi32.lib gdi32.lib +LDFLAGS += /nologo $(LIBPATHS) user32.lib ws2_32.lib advapi32.lib gdi32.lib AR := lib.exe ARFLAGS := diff --git a/harbour/config/win/pocc.cf b/harbour/config/win/pocc.cf index acd1f5e091..dd1c33a79c 100644 --- a/harbour/config/win/pocc.cf +++ b/harbour/config/win/pocc.cf @@ -15,6 +15,7 @@ CC_OUT := -Fo CPPFLAGS := -I. CPPFLAGS += -Ze -Go -MT CFLAGS := +LDFLAGS := ifneq ($(HB_BUILD_WARN),no) CPPFLAGS += -W1 @@ -39,9 +40,10 @@ LD_OUT := -OUT: # Add all libraries specified in LIBS. LIBPATHS := -LIBPATH:$(LIB_DIR) LDLIBS := $(foreach lib,$(LIBS),$(lib)$(LIB_EXT)) +LDLIBS += kernel32.lib user32.lib ws2_32.lib advapi32.lib gdi32.lib -LDFLAGS = $(LIBPATHS) kernel32.lib user32.lib ws2_32.lib advapi32.lib gdi32.lib LDFLAGS += /SUBSYSTEM:CONSOLE +LDFLAGS += $(LIBPATHS) AR := polib.exe ARFLAGS := diff --git a/harbour/config/win/watcom.cf b/harbour/config/win/watcom.cf index 67f98c17f2..1393a74bda 100644 --- a/harbour/config/win/watcom.cf +++ b/harbour/config/win/watcom.cf @@ -30,6 +30,7 @@ CC_OUT := -fo= CPPFLAGS := -zq -bt=nt -bm CFLAGS := +LDFLAGS := ifneq ($(HB_BUILD_WARN),no) CPPFLAGS += -w3 @@ -87,10 +88,10 @@ $(foreach lib,$(LDLIBS),$(link_lib)) endef LD := wlink -LDFLAGS = SYS nt ifeq ($(HB_BUILD_DEBUG),yes) - LDFLAGS := DEBUG ALL $(LDFLAGS) + LDFLAGS += DEBUG ALL endif +LDFLAGS += SYS nt LDLIBS := $(foreach lib,$(LIBS),$(LIB_DIR)/$(lib)) diff --git a/harbour/config/win/xcc.cf b/harbour/config/win/xcc.cf index fd85a9e379..dd4803a298 100644 --- a/harbour/config/win/xcc.cf +++ b/harbour/config/win/xcc.cf @@ -14,6 +14,7 @@ CC_OUT := -Fo CPPFLAGS := CFLAGS := -I. -I$(HB_INC_COMPILE) +LDFLAGS := ifneq ($(HB_BUILD_OPTIM),no) # disabled - it produces bad code @@ -33,8 +34,9 @@ LD_OUT := -OUT: # Add all libraries specified in LIBS. LIBPATHS := -LIBPATH:$(LIB_DIR) LDLIBS := $(foreach lib,$(LIBS),$(lib)$(LIB_EXT)) +LDLIBS += kernel32.lib user32.lib ws2_32.lib advapi32.lib gdi32.lib -LDFLAGS = $(LIBPATHS) kernel32.lib user32.lib ws2_32.lib advapi32.lib gdi32.lib +LDFLAGS += $(LIBPATHS) AR := xlib.exe ARFLAGS :=