* package/harbour-win.spec
* package/harbour-wce.spec
* config/global.mk
* INSTALL
* Renamed HB_BIN_COMPILE to HB_HOST_BIN
(old pending TODO)
* tests/flink.prg
+ Added comment.
+ Added example to dir symlink.
* contrib/hbpre.hbm
+ Added comments.
* config/beos/gcc.mk
* config/global.mk
* config/qnx/gcc.mk
* config/bsd/gcc.mk
* config/bsd/clang.mk
* config/bsd/pcc.mk
* config/wce/mingwarm.mk
* config/wce/poccarm.mk
* config/wce/msvcarm.mk
* config/vxworks/gcc.mk
* config/vxworks/diab.mk
* config/darwin/gcc.mk
* config/darwin/icc.mk
* config/darwin/clang.mk
* config/hpux/gcc.mk
* config/dos/watcom.mk
* config/dos/djgpp.mk
* config/c.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/linux/watcom.mk
* config/linux/gcc.mk
* config/linux/icc.mk
* config/linux/clang.mk
* config/linux/sunpro.mk
* config/rules.mk
* config/os2/watcom.mk
* config/os2/gcc.mk
* config/sunos/gcc.mk
* config/sunos/sunpro.mk
* Renamed HB_INC_COMPILE to HB_HOST_INC
(it's still not precise name, just in sync with HB_HOST_BIN.
In Harbour there is no difference between headers accross
the platforms, so they could just be called something more
neutral. If you have an idea, pls speak up.)
66 lines
1.3 KiB
Makefile
66 lines
1.3 KiB
Makefile
#
|
|
# $Id$
|
|
#
|
|
|
|
ifeq ($(HB_BUILD_MODE),cpp)
|
|
ifneq ($(findstring clang$(subst x, ,x)version$(subst x, ,x)1,$(shell clang --version)),)
|
|
HB_BUILD_MODE := c
|
|
endif
|
|
endif
|
|
|
|
ifeq ($(HB_BUILD_MODE),cpp)
|
|
HB_CMP := clang++
|
|
else
|
|
HB_CMP := clang
|
|
endif
|
|
|
|
OBJ_EXT := .o
|
|
LIB_PREF := lib
|
|
LIB_EXT := .a
|
|
|
|
HB_DYN_COPT := -DHB_DYNLIB -fpic
|
|
|
|
CC := $(HB_CCACHE) $(HB_CCPREFIX)$(HB_CMP)$(HB_CCPOSTFIX)
|
|
ifneq ($(filter --analyze, $(HB_USER_CFLAGS)),)
|
|
CC_IN :=
|
|
else
|
|
CC_IN := -c
|
|
endif
|
|
CC_OUT := -o
|
|
|
|
CFLAGS += -I. -I$(HB_HOST_INC)
|
|
|
|
ifneq ($(HB_BUILD_WARN),no)
|
|
CFLAGS += -W -Wall
|
|
else
|
|
CFLAGS += -W
|
|
endif
|
|
|
|
ifneq ($(HB_BUILD_OPTIM),no)
|
|
CFLAGS += -O3
|
|
endif
|
|
|
|
ifeq ($(HB_BUILD_DEBUG),yes)
|
|
CFLAGS += -g
|
|
endif
|
|
|
|
LD := $(CC)
|
|
LD_OUT := -o
|
|
|
|
LIBPATHS := $(foreach dir,$(LIB_DIR) $(SYSLIBPATHS),-L$(dir))
|
|
LDLIBS := $(foreach lib,$(HB_USER_LIBS) $(LIBS) $(SYSLIBS),-l$(lib))
|
|
|
|
LDFLAGS += $(LIBPATHS)
|
|
|
|
AR := $(HB_CCPREFIX)ar
|
|
AR_RULE = ( $(AR) $(ARFLAGS) $(HB_AFLAGS) $(HB_USER_AFLAGS) rcs $(LIB_DIR)/$@ $(^F) $(ARSTRIP) ) || ( $(RM) $(LIB_DIR)/$@ && $(FALSE) )
|
|
|
|
DY := $(CC)
|
|
DFLAGS += -shared $(LIBPATHS)
|
|
DY_OUT := -o$(subst x,x, )
|
|
DLIBS := $(foreach lib,$(HB_USER_LIBS) $(SYSLIBS),-l$(lib))
|
|
|
|
DY_RULE = $(DY) $(DFLAGS) $(HB_USER_DFLAGS) $(DY_OUT)$(DYN_DIR)/$@ $^ $(DLIBS) $(DYSTRIP) && $(LN) $(@F) $(DYN_FILE2)
|
|
|
|
include $(TOP)$(ROOT)config/rules.mk
|