* Makefile
- source/hbpcre
- source/hbzlib
* external/Makefile
+ external/pcre
+ external/zlib
* external/pcre/Makefile
* external/zlib/Makefile
* external/libhpdf/Makefile
* external/libpng/Makefile
* include/hbsetup.h
* include/hbzlib.h
* include/hbregex.h
* source/rtl/hbzlibgz.c
* source/rtl/Makefile
* source/rtl/hbregexc.c
* source/rtl/hbregex.c
* source/rtl/hbzlib.c
* source/Makefile
* contrib/xhb/Makefile
* contrib/hbmzip/Makefile
* utils/hbmk2/hbmk2.prg
* config/global.mk
* config/lib.mk
* config/bin.mk
* config/detect.mk
* config/darwin/libs.mk
* config/linux/libs.mk
* config/wce/mingwarm.mk
* config/wce/poccarm.mk
* config/wce/msvcarm.mk
* config/win/xcc.mk
* config/win/mingw.mk
* config/win/pocc.mk
* config/win/bcc.mk
* config/win/watcom.mk
* config/win/icc.mk
* config/win/cygwin.mk
* config/win/msvc.mk
* config/dyn.mk
* config/os2/watcom.mk
* config/os2/gcc.mk
* config/bsd/libs.mk
* config/hpux/libs.mk
* config/sunos/libs.mk
* Changed the way embedded zlib and pcre are handled:
- They now reside in /external dir.
- They are now excluded from Harbour dynlib. This means they
will now be linked statically on non-*nix systems and
dynamically on *nix systems. On *nix it's probably easy to
switch to link statically. On non-*nix this is quite
complicated to do.
- If these libs are provided by the system, those will be used.
- On non-*nix systems the locally hosted versions will be used,
unless user overrides them using HB_INC_PCRE or HB_INC_ZLIB.
- There is currently no officially supported way to force usage
of locally hosted libs.
- If PCRE lib is forcibly disabled or not found, build system
will fall back to POSIX regex on *nix systems and Borland regex
with bcc compiler. Otherwise it will stop the build with an error.
- If zlib is forcibly disabled or not found, an error will be
generated at build-time (in hbrtl). hbmzip is simply skipped
in this case.
- hbmk2 will use local builds of these libs if they are present
in lib dir.
; TOFIX: hbmk script.
; TOFIX: dos builds. cmdline lenghts are most probably too big for them.
; NOTE: Bumps are expected.
; NOTE: I've yet to test/verify it.
- external/libhpdf/ori_src
- external/libhpdf/ori_dst
- Deleted. (added in prev commit by oversight)
141 lines
3.3 KiB
Makefile
141 lines
3.3 KiB
Makefile
#
|
|
# $Id$
|
|
#
|
|
|
|
ROOT := ../
|
|
|
|
include $(TOP)$(ROOT)config/global.mk
|
|
|
|
ifeq ($(HB_HOST_BUILD),yes)
|
|
|
|
DIRS := \
|
|
common \
|
|
nortl \
|
|
pp{common,nortl} \
|
|
compiler{pp} \
|
|
main{compiler} \
|
|
|
|
else
|
|
|
|
ifneq ($(HB_BUILD_DLL),no)
|
|
|
|
ifeq ($(HB_PLATFORM),darwin)
|
|
DYNNAME_POST := .$(HB_DYN_VER)
|
|
else
|
|
DYNNAME_POST := -$(HB_DYN_VER)
|
|
endif
|
|
|
|
ifeq ($(HB_PLATFORM),win)
|
|
ifeq ($(HB_COMPILER),bcc)
|
|
DYNNAME_POST := $(DYNNAME_POST)-bcc
|
|
else
|
|
ifeq ($(HB_CPU),x86_64)
|
|
DYNNAME_POST := $(DYNNAME_POST)-x64
|
|
else
|
|
ifeq ($(HB_CPU),ia64)
|
|
DYNNAME_POST := $(DYNNAME_POST)-ia64
|
|
endif
|
|
endif
|
|
endif
|
|
else
|
|
ifeq ($(HB_PLATFORM),wce)
|
|
DYNNAME_POST := $(DYNNAME_POST)-wce
|
|
ifeq ($(HB_CPU),arm)
|
|
DYNNAME_POST := $(DYNNAME_POST)-arm
|
|
else
|
|
ifeq ($(HB_CPU),mips)
|
|
DYNNAME_POST := $(DYNNAME_POST)-mips
|
|
else
|
|
ifeq ($(HB_CPU),sh)
|
|
DYNNAME_POST := $(DYNNAME_POST)-sh
|
|
endif
|
|
endif
|
|
endif
|
|
else
|
|
ifeq ($(HB_PLATFORM),os2)
|
|
DYNNAME_POST := $(DYNNAME_POST)-os2
|
|
endif
|
|
endif
|
|
endif
|
|
|
|
DYNDIRLIST_BASE := \
|
|
source/common \
|
|
source/pp \
|
|
source/rtl \
|
|
source/macro \
|
|
source/lang \
|
|
source/codepage \
|
|
source/hbextern \
|
|
source/rdd \
|
|
source/rdd/dbfntx \
|
|
source/rdd/dbfnsx \
|
|
source/rdd/dbfcdx \
|
|
source/rdd/dbffpt \
|
|
source/rdd/hbsix \
|
|
source/rdd/hsx \
|
|
source/rdd/usrrdd \
|
|
source/rtl/gtcgi \
|
|
source/rtl/gtpca \
|
|
source/rtl/gtstd
|
|
|
|
ifeq ($(HB_PLATFORM),dos)
|
|
# Don't consume environment space
|
|
DYNDIRLIST_BASE := x
|
|
endif
|
|
ifeq ($(HB_PLATFORM),os2)
|
|
DYNDIRLIST_BASE += source/rtl/gtos2
|
|
endif
|
|
ifeq ($(HB_PLATFORM),wce)
|
|
DYNDIRLIST_BASE += source/rtl/gtwvt source/rtl/gtgui
|
|
endif
|
|
ifeq ($(HB_PLATFORM),win)
|
|
DYNDIRLIST_BASE += source/rtl/gtwvt source/rtl/gtgui source/rtl/gtwin
|
|
endif
|
|
ifneq ($(HB_PLATFORM_UNIX),)
|
|
DYNDIRLIST_BASE += source/rtl/gttrm
|
|
DYNDIRLIST_BASE += source/rtl/gtcrs
|
|
DYNDIRLIST_BASE += source/rtl/gtsln
|
|
DYNDIRLIST_BASE += source/rtl/gtxwc
|
|
endif
|
|
ifeq ($(HB_COMPILER),watcom)
|
|
DYNDIRLIST_BASE += source/vm/maindllh
|
|
endif
|
|
ifeq ($(HB_COMPILER),xcc)
|
|
DYNDIRLIST_BASE += source/vm/maindllh
|
|
endif
|
|
|
|
export DYNDIRLIST_BASE
|
|
export DYNNAME_POST
|
|
endif
|
|
|
|
ifeq ($(HB_HOST_BUILD),lib)
|
|
HB_COMP_DIR :=
|
|
HB_COMP_REF :=
|
|
else
|
|
HB_COMP_DIR := main{compiler}
|
|
HB_COMP_REF := {main}
|
|
endif
|
|
|
|
DIRS := \
|
|
common \
|
|
nortl \
|
|
pp{common,nortl} \
|
|
compiler{pp} \
|
|
$(HB_COMP_DIR) \
|
|
rtl$(HB_COMP_REF) \
|
|
vm$(HB_COMP_REF) \
|
|
macro \
|
|
codepage \
|
|
lang \
|
|
rdd$(HB_COMP_REF) \
|
|
hbextern$(HB_COMP_REF) \
|
|
debug$(HB_COMP_REF)
|
|
|
|
ifneq ($(HB_BUILD_DLL),no)
|
|
DIRS += dynlib{codepage,common,hbextern,lang,macro,pp,rdd,rtl,vm}
|
|
endif
|
|
|
|
endif
|
|
|
|
include $(ROOT)config/dir.mk
|