Files
harbour-core/harbour/config/linux/icc.mk
Viktor Szakats a3999d669a 2009-09-21 12:11 UTC+0200 Viktor Szakats (harbour.01 syenar.hu)
* config/beos/gcc.mk
  * config/beos/global.mk
  * config/bsd/gcc.mk
  * config/bsd/global.mk
  * config/wce/mingwarm.mk
  * config/hpux/gcc.mk
  * config/hpux/global.mk
  * config/dos/djgpp.mk
  * config/win/mingw.mk
  * config/win/cygwin.mk
  * config/linux/icc.mk
  * config/linux/sunpro.mk
  * config/os2/gcc.mk
  * config/sunos/gcc.mk
  * config/sunos/global.mk
  * config/sunos/sunpro.mk
    + Added HB_BUILD_STRIP support for rest of compilers.
    ; Please make tests.

  * bin/postinst.sh
    - Deleted strip from postinst phase.
2009-09-21 10:13:39 +00:00

81 lines
1.5 KiB
Makefile

#
# $Id$
#
ifeq ($(HB_BUILD_MODE),cpp)
HB_CMP := icpc
else
HB_CMP := icc
endif
OBJ_EXT := .o
LIB_PREF := lib
LIB_EXT := .a
HB_DYN_COPT := -DHB_DYNLIB -fpic
CC := $(HB_CCACHE) $(HB_CMP)
CC_IN := -c
CC_OUT := -o
CPPFLAGS := -I. -I$(HB_INC_COMPILE)
CFLAGS :=
LDFLAGS :=
CFLAGS += -D_GNU_SOURCE
#CFLAGS += -fast
#CFLAGS += -xHOST
#CFLAGS += -std=c99
ifneq ($(HB_BUILD_WARN),no)
#CFLAGS += -w2 -Wall
endif
ifneq ($(HB_BUILD_OPTIM),no)
CFLAGS += -O3
endif
ifeq ($(HB_BUILD_DEBUG),yes)
CFLAGS += -g
endif
ifneq ($(filter $(HB_BUILD_STRIP),all lib),)
ARSTRIP = && strip -S $(LIB_DIR)/$@
endif
ifneq ($(filter $(HB_BUILD_STRIP),all bin),)
LDSTRIP := -s
DYSTRIP := -s
endif
LD := $(HB_CCACHE) $(HB_CMP)
LD_OUT := -o
LIBPATHS := $(foreach dir,$(LIB_DIR) $(SYSLIBPATHS),-L$(dir))
LDLIBS := $(foreach lib,$(LIBS) $(SYSLIBS),-l$(lib))
LDFLAGS += $(LIBPATHS)
AR := xiar
ARFLAGS :=
AR_RULE = ( $(AR) $(ARFLAGS) $(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,$(SYSLIBS),-l$(lib))
# NOTE: The empty line directly before 'endef' HAVE TO exist!
define dyn_object
@$(ECHO) $(ECHOQUOTE)INPUT($(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 $(DLIBS) $(DYSTRIP)
endef
DY_RULE = $(create_dynlib)
include $(TOP)$(ROOT)config/rules.mk