2009-10-06 02:31 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* INSTALL
* config/global.mk
* config/wce/msvcarm.mk
* config/win/msvc.mk
+ Replaced MSVC specific compiler version setting with generic
compiler version setting.
HB_VISUALC_VER_PRE80 and HB_VISUALC_VER_PRE70 setting are
deleted and HB_COMPILER_VER is activated.
; INCOMPATIBLE.
* config/global.mk
+ Added MSVC compiler version autodetection.
(6.0, 7.x, 8.0, 9.0)
* config/win/msvc.mk
+ Enabled UNICODE mode for MSVC 2008 (9.0) and above.
This compiler version doesn't support Win9x anyway.
* utils/hbmk2/hbmk2.prg
- Deleted support for HB_VISUALC_VER_PRE80 in hbmk2.
(HB_COMPILER_VER was already supported in hbmk2)
This commit is contained in:
@@ -17,6 +17,29 @@
|
||||
past entries belonging to author(s): Viktor Szakats.
|
||||
*/
|
||||
|
||||
2009-10-06 02:31 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
|
||||
* INSTALL
|
||||
* config/global.mk
|
||||
* config/wce/msvcarm.mk
|
||||
* config/win/msvc.mk
|
||||
+ Replaced MSVC specific compiler version setting with generic
|
||||
compiler version setting.
|
||||
HB_VISUALC_VER_PRE80 and HB_VISUALC_VER_PRE70 setting are
|
||||
deleted and HB_COMPILER_VER is activated.
|
||||
; INCOMPATIBLE.
|
||||
|
||||
* config/global.mk
|
||||
+ Added MSVC compiler version autodetection.
|
||||
(6.0, 7.x, 8.0, 9.0)
|
||||
|
||||
* config/win/msvc.mk
|
||||
+ Enabled UNICODE mode for MSVC 2008 (9.0) and above.
|
||||
This compiler version doesn't support Win9x anyway.
|
||||
|
||||
* utils/hbmk2/hbmk2.prg
|
||||
- Deleted support for HB_VISUALC_VER_PRE80 in hbmk2.
|
||||
(HB_COMPILER_VER was already supported in hbmk2)
|
||||
|
||||
2009-10-06 00:35 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
|
||||
* harbour/bin/hb-func.sh
|
||||
! fixed typo in .c file generated by hbmk script
|
||||
|
||||
@@ -570,9 +570,12 @@ HARBOUR
|
||||
libraries stored in the external directory.
|
||||
- HB_UTIL_ADDONS=<list> Build space separated <list> of additional
|
||||
utilities stored in the utils directory.
|
||||
- HB_VISUALC_VER_PRE80=yes Set this if you're using a pre-8.0
|
||||
(= pre-MSVS 2005) version of MSVC compiler.
|
||||
Default: no
|
||||
- HB_COMPILER_VER=[<ver>] Set C compiler version. This is used with msvc
|
||||
targets currently, and in the case of this
|
||||
compiler, it will be autodetected.
|
||||
<ver> format:
|
||||
<09><00>[.<00>] = <major><minor>[.<revision>]
|
||||
Default: filled by autodetection or empty
|
||||
- HB_REBUILD_PARSER=yes Rebuild language parser sources. Typically
|
||||
you only need this if your are Harbour core
|
||||
developer modifying grammar rules (.y).
|
||||
@@ -665,7 +668,7 @@ HARBOUR
|
||||
|
||||
--- MSVC .NET 2003 (untested)
|
||||
call "%ProgramFiles%\Microsoft Visual Studio .NET 2003\VC7\vcvarsall.bat"
|
||||
mingw32-make HB_VISUALC_VER_PRE80=yes
|
||||
mingw32-make
|
||||
---
|
||||
|
||||
--- MinGW GCC
|
||||
|
||||
@@ -720,9 +720,9 @@ ifeq ($(HB_COMPILER),)
|
||||
else
|
||||
HB_COMP_PATH := $(call find_in_path,clarm)
|
||||
ifneq ($(HB_COMP_PATH),)
|
||||
HB_COMPILER_VER := 710
|
||||
HB_COMPILER := msvcarm
|
||||
HB_PLATFORM := wce
|
||||
export HB_VISUALC_VER_PRE80 := yes
|
||||
else
|
||||
HB_COMP_PATH := $(call find_in_path,armasm)
|
||||
ifneq ($(HB_COMP_PATH),)
|
||||
@@ -748,6 +748,15 @@ ifeq ($(HB_COMPILER),)
|
||||
HB_COMP_PATH := $(call find_in_path,cl)
|
||||
ifneq ($(HB_COMP_PATH),)
|
||||
HB_COMPILER := msvc
|
||||
ifneq ($(findstring VC98,$(HB_COMP_PATH)),)
|
||||
HB_COMPILER_VER := 600
|
||||
else ifneq ($(findstring 2003,$(HB_COMP_PATH)),)
|
||||
HB_COMPILER_VER := 700
|
||||
else ifneq ($(findstring 8/,$(HB_COMP_PATH)),)
|
||||
HB_COMPILER_VER := 800
|
||||
else ifneq ($(findstring 9.0,$(HB_COMP_PATH)),)
|
||||
HB_COMPILER_VER := 900
|
||||
endif
|
||||
else
|
||||
HB_COMP_PATH := $(call find_in_path,bcc32)
|
||||
ifneq ($(HB_COMP_PATH),)
|
||||
@@ -891,6 +900,7 @@ ifeq ($(HB_COMPILER),)
|
||||
ifneq ($(HB_COMPILER),)
|
||||
HB_COMP_PATH := $(subst $(substpat), ,$(dir $(firstword $(subst $(subst x, ,x),$(substpat),$(HB_COMP_PATH)))))
|
||||
HB_COMP_AUTO := (autodetected$(if $(HB_COMP_PATH),: $(HB_COMP_PATH),))
|
||||
HB_COMP_VER := $(if $(HB_COMPILER_VER), (v$(HB_COMPILER_VER)),)
|
||||
endif
|
||||
export HB_CCPATH
|
||||
export HB_CCPREFIX
|
||||
@@ -905,6 +915,7 @@ endif
|
||||
|
||||
export HB_PLATFORM
|
||||
export HB_COMPILER
|
||||
export HB_COMPILER_VER
|
||||
export HB_SHELL
|
||||
|
||||
ifneq ($(filter $(HB_HOST_PLAT),win wce dos os2),)
|
||||
@@ -995,7 +1006,7 @@ ifeq ($(HB_INIT_DONE),)
|
||||
endif
|
||||
ifneq ($(MAKE_381),)
|
||||
$(info ! HB_PLATFORM: $(HB_PLATFORM)$(if $(HB_CPU), ($(HB_CPU)),) $(HB_PLAT_AUTO))
|
||||
$(info ! HB_COMPILER: $(HB_COMPILER) $(HB_COMP_AUTO))
|
||||
$(info ! HB_COMPILER: $(HB_COMPILER)$(HB_COMP_VER) $(HB_COMP_AUTO))
|
||||
endif
|
||||
endif
|
||||
|
||||
|
||||
@@ -10,7 +10,7 @@ HB_DYN_COPT := -DHB_DYNLIB
|
||||
|
||||
CC := cl.exe
|
||||
ifeq ($(HB_COMPILER),msvcarm)
|
||||
ifneq ($(HB_VISUALC_VER_PRE80),)
|
||||
ifneq ($(filter $(HB_COMPILER_VER),600 700 710),)
|
||||
CC := clarm.exe
|
||||
endif
|
||||
endif
|
||||
@@ -44,10 +44,10 @@ ifneq ($(HB_BUILD_WARN),no)
|
||||
endif
|
||||
|
||||
ifneq ($(HB_BUILD_OPTIM),no)
|
||||
ifeq ($(HB_VISUALC_VER_PRE80),)
|
||||
CFLAGS += -Od -Os -Gy -GS- -EHsc-
|
||||
else
|
||||
ifneq ($(filter $(HB_COMPILER_VER),600 700 710),)
|
||||
CFLAGS += -Oxsb1 -EHsc -YX -GF
|
||||
else
|
||||
CFLAGS += -Od -Os -Gy -GS- -EHsc-
|
||||
endif
|
||||
endif
|
||||
|
||||
@@ -64,7 +64,7 @@ LIBPATHS := -libpath:$(LIB_DIR)
|
||||
LDLIBS := $(foreach lib,$(LIBS) $(SYSLIBS),$(lib)$(LIB_EXT))
|
||||
|
||||
LDFLAGS += -nologo -link -subsystem:windowsce -nodefaultlib:oldnames.lib -nodefaultlib:kernel32.lib
|
||||
ifeq ($(HB_VISUALC_VER_PRE80),)
|
||||
ifeq ($(filter $(HB_COMPILER_VER),600 700 710),)
|
||||
LDFLAGS += -manifest:no
|
||||
endif
|
||||
LDFLAGS += $(LIBPATHS)
|
||||
|
||||
@@ -6,6 +6,14 @@ OBJ_EXT := .obj
|
||||
LIB_PREF :=
|
||||
LIB_EXT := .lib
|
||||
|
||||
ifeq ($(HB_CPU),x86)
|
||||
# Always compile in -UNICODE mode for MSVC 9.0 and upper
|
||||
# This version doesn't support Win9x anyway. [vszakats]
|
||||
ifeq ($(filter $(HB_COMPILER_VER),600 700 710 800),)
|
||||
HB_CFLAGS += -DUNICODE
|
||||
endif
|
||||
endif
|
||||
|
||||
HB_DYN_COPT := -DHB_DYNLIB
|
||||
|
||||
CC := cl.exe
|
||||
@@ -32,10 +40,10 @@ ifneq ($(HB_BUILD_WARN),no)
|
||||
endif
|
||||
|
||||
ifneq ($(HB_BUILD_OPTIM),no)
|
||||
ifeq ($(HB_VISUALC_VER_PRE80),)
|
||||
CPPFLAGS += -Ot2b1 -EHs-c-
|
||||
else
|
||||
ifneq ($(filter $(HB_COMPILER_VER),600 700 710),)
|
||||
CPPFLAGS += -Ogt2yb1p -GX- -G6 -YX
|
||||
else
|
||||
CPPFLAGS += -Ot2b1 -EHs-c-
|
||||
endif
|
||||
endif
|
||||
|
||||
@@ -47,7 +55,7 @@ endif
|
||||
|
||||
# # NOTE: -GA flag should be disabled when building MT _.dlls_,
|
||||
# # as it creates bad code according to MS docs [vszakats].
|
||||
# ifeq ($(HB_VISUALC_VER_PRE70),)
|
||||
# ifneq ($(filter $(HB_COMPILER_VER),600),)
|
||||
# CPPFLAGS += -GA
|
||||
# endif
|
||||
|
||||
|
||||
@@ -2799,10 +2799,10 @@ FUNCTION hbmk( aArgs, /* @ */ lPause )
|
||||
|
||||
IF Empty( nCCompVer )
|
||||
/* Compatibility with Harbour GNU Make system */
|
||||
IF Empty( GetEnv( "HB_VISUALC_VER_PRE80" ) ) .AND. !( hbmk[ _HBMK_cCOMP ] == "msvcarm" .AND. FindInPath( "clarm" ) )
|
||||
nCCompVer := 800 /* Visual Studio 2005 */
|
||||
ELSE
|
||||
IF hbmk[ _HBMK_cCOMP ] == "msvcarm" .AND. FindInPath( "clarm" )
|
||||
nCCompVer := 710 /* Visual Studio .NET 2003 */
|
||||
ELSE
|
||||
nCCompVer := 800 /* Visual Studio 2005 */
|
||||
ENDIF
|
||||
/* 900 : Visual Studio 2008 */
|
||||
/* 1000 : Visual Studio 2010 */
|
||||
|
||||
Reference in New Issue
Block a user