2009-08-25 17:32 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* config/global.mk
+ Added dos/djgpp autodetection for *nix platforms.
* contrib/hbfbird/Makefile
+ Extended autodetection and feedback. Experimenting.
* config/globsh.mk
+ Added web links to DJGPP FAQ instead of binary FAQ package.
* contrib/hbqt/Makefile
* contrib/hbfbird/Makefile
* contrib/gtqtc/Makefile
* source/Makefile
* config/global.mk
* HB_OS_UNIX GNU Make var renamed to HB_PLATFORM_UNIX.
Content is now non-empty or empty (was yes or no).
* config/sunos/sunpro.mk
+ Changes made to config/linux/sunpro.mk applied here also.
This commit is contained in:
@@ -17,6 +17,27 @@
|
||||
past entries belonging to author(s): Viktor Szakats.
|
||||
*/
|
||||
|
||||
2009-08-25 17:32 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
|
||||
* config/global.mk
|
||||
+ Added dos/djgpp autodetection for *nix platforms.
|
||||
|
||||
* contrib/hbfbird/Makefile
|
||||
+ Extended autodetection and feedback. Experimenting.
|
||||
|
||||
* config/globsh.mk
|
||||
+ Added web links to DJGPP FAQ instead of binary FAQ package.
|
||||
|
||||
* contrib/hbqt/Makefile
|
||||
* contrib/hbfbird/Makefile
|
||||
* contrib/gtqtc/Makefile
|
||||
* source/Makefile
|
||||
* config/global.mk
|
||||
* HB_OS_UNIX GNU Make var renamed to HB_PLATFORM_UNIX.
|
||||
Content is now non-empty or empty (was yes or no).
|
||||
|
||||
* config/sunos/sunpro.mk
|
||||
+ Changes made to config/linux/sunpro.mk applied here also.
|
||||
|
||||
2009-08-25 16:49 UTC+0200 Przemyslaw Czerpak (druzus/at/priv.onet.pl)
|
||||
* harbour/config/linux/sunpro.mk
|
||||
! fixed dynamic library creation - @<filename> is not supported by
|
||||
|
||||
@@ -676,6 +676,45 @@ ifeq ($(HB_COMPILER),)
|
||||
else
|
||||
$(error ! Harbour build couldn't find cegcc cross-compiler. Please install it to /opt/mingw32ce, or point HB_CCPATH/HB_CCPREFIX environment variables to it)
|
||||
endif
|
||||
else
|
||||
ifeq ($(HB_PLATFORM),dos)
|
||||
# Look for djgpp compiler on HB_CCPATH if it's set
|
||||
ifneq ($(HB_CCPATH),)
|
||||
ifneq ($(call find_in_path_par,i586-pc-msdosdjgpp,$(HB_CCPATH)),)
|
||||
HB_COMPILER := djgpp
|
||||
HB_CCPREFIX := i586-pc-msdosdjgpp-
|
||||
HB_CCPATH := $(HB_CCPATH)/
|
||||
else
|
||||
HB_CCPATH :=
|
||||
HB_CCPREFIX :=
|
||||
endif
|
||||
endif
|
||||
|
||||
# If HB_CCPATH not set, or couldn't be found on the provided PATH,
|
||||
# try to detect them in default locations
|
||||
ifeq ($(HB_CCPATH),)
|
||||
HB_CCPATH := /usr/local/i586-pc-msdosdjgpp
|
||||
ifneq ($(call find_in_path_par,i586-pc-msdosdjgpp,$(HB_CCPATH)),)
|
||||
HB_COMPILER := djgpp
|
||||
HB_CCPREFIX := i586-pc-msdosdjgpp-
|
||||
else
|
||||
HB_CCPATH :=
|
||||
HB_CCPREFIX :=
|
||||
endif
|
||||
endif
|
||||
|
||||
ifneq ($(HB_CCPATH)$(HB_CCPREFIX),)
|
||||
HB_COMP_PATH := $(dir $(HB_CCPATH))
|
||||
HB_PLATFORM := dos
|
||||
export HB_TOOLS_PREF := hbce
|
||||
export HB_XBUILD := dos
|
||||
ifneq ($(HB_HOST_BUILD),all)
|
||||
HB_HOST_BUILD := lib
|
||||
endif
|
||||
else
|
||||
$(error ! Harbour build couldn't find djgpp cross-compiler. Please install it to /usr/local/i586-pc-msdosdjgpp, or point HB_CCPATH/HB_CCPREFIX environment variables to it)
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
@@ -872,9 +911,9 @@ export HB_COMPILER
|
||||
export HB_SHELL
|
||||
|
||||
ifneq ($(filter $(HB_PLATFORM),win wce dos os2),)
|
||||
HB_OS_UNIX := no
|
||||
HB_PLATFORM_UNIX :=
|
||||
else
|
||||
HB_OS_UNIX := yes
|
||||
HB_PLATFORM_UNIX := yes
|
||||
endif
|
||||
|
||||
PLAT_COMP := $(HB_PLATFORM)/$(HB_COMPILER)$(subst \,/,$(HB_BUILD_NAME))
|
||||
@@ -882,7 +921,7 @@ PLAT_COMP := $(HB_PLATFORM)/$(HB_COMPILER)$(subst \,/,$(HB_BUILD_NAME))
|
||||
OBJ_DIR := obj/$(PLAT_COMP)
|
||||
BIN_DIR := $(TOP)$(ROOT)bin/$(PLAT_COMP)
|
||||
LIB_DIR := $(TOP)$(ROOT)lib/$(PLAT_COMP)
|
||||
ifeq ($(HB_OS_UNIX),no)
|
||||
ifeq ($(HB_PLATFORM_UNIX),)
|
||||
DYN_DIR := $(BIN_DIR)
|
||||
IMP_DIR := $(LIB_DIR)
|
||||
else
|
||||
@@ -1106,10 +1145,10 @@ ifneq ($(HB_DB_DRVEXT),)
|
||||
HB_RDD_DIRS += $(HB_DB_DRVEXT)
|
||||
endif
|
||||
|
||||
ifeq ($(HB_OS_UNIX),yes)
|
||||
HB_DYN_VER := $(HB_VER_MAJOR).$(HB_VER_MINOR).$(HB_VER_RELEASE)
|
||||
else
|
||||
ifeq ($(HB_PLATFORM_UNIX),)
|
||||
HB_DYN_VER := $(HB_VER_MAJOR)$(HB_VER_MINOR)
|
||||
else
|
||||
HB_DYN_VER := $(HB_VER_MAJOR).$(HB_VER_MINOR).$(HB_VER_RELEASE)
|
||||
endif
|
||||
|
||||
ifneq ($(HB_PLATFORM),dos)
|
||||
@@ -1152,7 +1191,7 @@ else
|
||||
# Fill it automatically if not specified
|
||||
ifeq ($(HB_INSTALL_PREFIX),)
|
||||
|
||||
ifeq ($(HB_OS_UNIX),no)
|
||||
ifeq ($(HB_PLATFORM_UNIX),)
|
||||
HB_INSTALL_PREFIX := $(realpath $(TOP)$(ROOT))
|
||||
else
|
||||
ifneq ($(PREFIX),)
|
||||
@@ -1195,7 +1234,7 @@ endif
|
||||
|
||||
ifneq ($(HB_INSTALL_PREFIX),)
|
||||
|
||||
ifeq ($(HB_OS_UNIX),no)
|
||||
ifeq ($(HB_PLATFORM_UNIX),)
|
||||
LIBPOSTFIX := $(DIRSEP)$(subst /,$(DIRSEP),$(PLAT_COMP))
|
||||
else
|
||||
# Not perfect, please enhance it.
|
||||
@@ -1221,7 +1260,7 @@ ifneq ($(HB_INSTALL_PREFIX),)
|
||||
export HB_LIB_INSTALL := $(HB_INSTALL_PREFIX)$(DIRSEP)lib$(LIBPOSTFIX)
|
||||
endif
|
||||
ifeq ($(HB_DYN_INSTALL),)
|
||||
ifeq ($(HB_OS_UNIX),no)
|
||||
ifeq ($(HB_PLATFORM_UNIX),)
|
||||
export HB_DYN_INSTALL := $(HB_BIN_INSTALL)
|
||||
else
|
||||
export HB_DYN_INSTALL := $(HB_LIB_INSTALL)
|
||||
@@ -1236,7 +1275,7 @@ ifneq ($(HB_INSTALL_PREFIX),)
|
||||
# Standard name: DOCDIR
|
||||
ifeq ($(HB_DOC_INSTALL),)
|
||||
# Don't set doc dir for *nix targets
|
||||
ifeq ($(HB_OS_UNIX),no)
|
||||
ifeq ($(HB_PLATFORM_UNIX),)
|
||||
ifneq ($(HB_INSTALL_PREFIX),$(HB_INSTALL_PREFIX_TOP))
|
||||
export HB_DOC_INSTALL := $(HB_INSTALL_PREFIX)$(DIRSEP)doc
|
||||
endif
|
||||
|
||||
@@ -163,8 +163,9 @@ ifeq ($(HB_SHELL),dos)
|
||||
# NOTE: DOS command line length has a limit of 126 characters.
|
||||
# When using DJGPP GNU Make to invoke other DJGPP tools this limit
|
||||
# is about 13KB, as they do special trick to overcome it.
|
||||
# See DJGPP (djgppfaq) FAQ 16.4 and 16.5:
|
||||
# ftp://ftp.delorie.com/pub/djgpp/v2faq/frfaq.zip
|
||||
# See these DJGPP FAQs:
|
||||
# http://www.delorie.com/djgpp/v2faq/faq16_4.html
|
||||
# http://www.delorie.com/djgpp/v2faq/faq16_5.html
|
||||
# [vszakats]
|
||||
|
||||
MK := $(subst \,/,$(MAKE))
|
||||
|
||||
@@ -114,15 +114,6 @@ endif
|
||||
DY_OUT := -o$(subst x,x, )
|
||||
DLIBS :=
|
||||
|
||||
# NOTE: The empty line directly before 'endef' HAVE TO exist!
|
||||
define dyn_object
|
||||
@$(ECHO) $(ECHOQUOTE)$(subst \,/,$(file))$(ECHOQUOTE) >> __dyn__.tmp
|
||||
|
||||
endef
|
||||
define create_dynlib
|
||||
$(if $(wildcard __dyn__.tmp),@$(RM) __dyn__.tmp,)
|
||||
$(foreach file,$^,$(dyn_object))
|
||||
$(DY) $(DFLAGS) $(HB_USER_DFLAGS) $(DY_OUT)$(DYN_DIR)/$@ @__dyn__.tmp
|
||||
endef
|
||||
DY_RULE = $(DY) $(DFLAGS) $(HB_USER_DFLAGS) $(DY_OUT)$(DYN_DIR)/$@ $^
|
||||
|
||||
include $(TOP)$(ROOT)config/rules.mk
|
||||
|
||||
@@ -22,7 +22,7 @@ ifeq ($(PREREQ_MISS),)
|
||||
|
||||
ifeq ($(HB_INC_QT),)
|
||||
ifeq ($(HB_XBUILD),)
|
||||
ifeq ($(HB_OS_UNIX),yes)
|
||||
ifneq ($(HB_PLATFORM_UNIX),)
|
||||
HB_INC_QT := /usr/include/qt4 /usr/lib/qt4/include /usr/include /Developer/qt/include
|
||||
endif
|
||||
endif
|
||||
|
||||
@@ -16,22 +16,37 @@ PRG_SOURCES := \
|
||||
|
||||
ifeq ($(filter $(HB_COMPILER),pocc64 poccarm),)
|
||||
|
||||
ifeq ($(HB_INC_FIREBIRD),)
|
||||
ifeq ($(HB_XBUILD),)
|
||||
HB_INC_FIREBIRD := /usr/include /opt/firebird/include
|
||||
ifneq ($(HB_INC_FIREBIRD),no)
|
||||
|
||||
ifeq ($(HB_INC_FIREBIRD),)
|
||||
ifeq ($(HB_XBUILD),)
|
||||
ifneq ($(HB_PLATFORM_UNIX),)
|
||||
HB_INC_FIREBIRD := /usr/include /opt/firebird/include
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
|
||||
HB_INC_FIREBIRD_OK := $(foreach d, $(HB_INC_FIREBIRD), $(if $(wildcard $(d)/ibase.h),$(d),))
|
||||
ifneq ($(HB_INC_FIREBIRD),)
|
||||
HB_INC_FIREBIRD_OK := $(strip $(foreach d, $(HB_INC_FIREBIRD), $(if $(wildcard $(d)/ibase.h),$(d),)))
|
||||
|
||||
ifneq ($(strip $(HB_INC_FIREBIRD_OK)),)
|
||||
ifneq ($(HB_INC_FIREBIRD_OK),)
|
||||
|
||||
HB_CFLAGS += $(foreach d,$(HB_INC_FIREBIRD_OK),-I$(d))
|
||||
HB_CFLAGS += $(foreach d,$(HB_INC_FIREBIRD_OK),-I$(d))
|
||||
|
||||
include $(TOP)$(ROOT)config/lib.mk
|
||||
include $(TOP)$(ROOT)config/lib.mk
|
||||
else
|
||||
HB_SKIP_REASON := component not found
|
||||
include $(TOP)$(ROOT)config/none.mk
|
||||
endif
|
||||
else
|
||||
HB_SKIP_REASON := component location not set
|
||||
include $(TOP)$(ROOT)config/none.mk
|
||||
endif
|
||||
else
|
||||
HB_SKIP_REASON := deselected
|
||||
include $(TOP)$(ROOT)config/none.mk
|
||||
endif
|
||||
else
|
||||
HB_SKIP_REASON := compiler not supported
|
||||
include $(TOP)$(ROOT)config/none.mk
|
||||
endif
|
||||
|
||||
@@ -22,7 +22,7 @@ ifeq ($(PREREQ_MISS),)
|
||||
|
||||
ifeq ($(HB_INC_QT),)
|
||||
ifeq ($(HB_XBUILD),)
|
||||
ifeq ($(HB_OS_UNIX),yes)
|
||||
ifneq ($(HB_PLATFORM_UNIX),)
|
||||
HB_INC_QT := /usr/include/qt4 /usr/lib/qt4/include /usr/include /Developer/qt/include
|
||||
endif
|
||||
endif
|
||||
|
||||
@@ -19,7 +19,7 @@ else
|
||||
|
||||
ifneq ($(HB_BUILD_DLL),no)
|
||||
|
||||
ifeq ($(HB_OS_UNIX),yes)
|
||||
ifneq ($(HB_PLATFORM_UNIX),)
|
||||
DYNNAME_POST := .$(HB_DYN_VER)
|
||||
else
|
||||
DYNNAME_POST := -$(HB_DYN_VER)
|
||||
@@ -93,7 +93,7 @@ else
|
||||
ifeq ($(HB_PLATFORM),win)
|
||||
DYNDIRLIST_BASE += source/rtl/gtwvt source/rtl/gtgui source/rtl/gtwin
|
||||
endif
|
||||
ifeq ($(HB_OS_UNIX),yes)
|
||||
ifneq ($(HB_PLATFORM_UNIX),)
|
||||
DYNDIRLIST_BASE += source/rtl/gttrm
|
||||
DYNDIRLIST_BASE += source/rtl/gtcrs
|
||||
DYNDIRLIST_BASE += source/rtl/gtsln
|
||||
|
||||
Reference in New Issue
Block a user