1# Time-stamp: <07/03/08 21:41:21 ptr> 2# 3# Copyright (c) 1997-1999, 2002, 2003, 2005-2007 4# Petr Ovtchenkov 5# 6# Portion Copyright (c) 1999-2001 7# Parallel Graphics Ltd. 8# 9# Licensed under the Academic Free License version 3.0 10# 11 12#INCLUDES := 13 14CXX := icpc 15CC := icc 16 17ifdef TARGET_OS 18# CXX := ${TARGET_OS}-c++ 19# CC := ${TARGET_OS}-gcc 20endif 21 22CXX_VERSION := $(shell ${CXX} --version | awk 'NR == 1 {print $$3; }') 23# if we didn't get anything from that, use the old style for versions < 9 24ifeq (${CXX_VERSION},) 25CXX_VERSION := $(shell ${CXX} --version) 26endif 27 28CXX_VERSION_MAJOR := $(shell echo ${CXX_VERSION} | awk 'BEGIN { FS = "."; } { print $$1; }') 29CXX_VERSION_MINOR := $(shell echo ${CXX_VERSION} | awk 'BEGIN { FS = "."; } { print $$2; }') 30# CXX_VERSION_PATCH := $(shell echo ${CXX_VERSION} | awk 'BEGIN { FS = "."; } { print $$3; }') 31 32SYSINCLUDES := -I$(shell which icpc | xargs dirname | xargs dirname)/include/c++ 33 34DEFS ?= 35OPT ?= 36 37ifndef WITHOUT_THREAD 38DEFS += -D_REENTRANT 39endif 40 41OUTPUT_OPTION = -o $@ 42LINK_OUTPUT_OPTION = ${OUTPUT_OPTION} 43CPPFLAGS = $(DEFS) $(INCLUDES) $(SYSINCLUDES) 44 45ifeq ($(OSNAME),linux) 46CCFLAGS = $(OPT) 47CFLAGS = $(OPT) 48# CXXFLAGS = -pthread -nostdinc++ -fexceptions -fident $(OPT) 49CXXFLAGS = $(OPT) 50endif 51 52CDEPFLAGS = -E -M 53CCDEPFLAGS = -E -M 54 55# STLport DEBUG mode specific defines 56stldbg-static : DEFS += -D_STLP_DEBUG 57stldbg-shared : DEFS += -D_STLP_DEBUG 58stldbg-static-dep : DEFS += -D_STLP_DEBUG 59stldbg-shared-dep : DEFS += -D_STLP_DEBUG 60 61# optimization and debug compiler flags 62release-static : OPT += -O2 63release-shared : OPT += -O2 64 65dbg-static : OPT += -g 66dbg-shared : OPT += -g 67#dbg-static-dep : OPT += -g 68#dbg-shared-dep : OPT += -g 69 70stldbg-static : OPT += -g 71stldbg-shared : OPT += -g 72#stldbg-static-dep : OPT += -g 73#stldbg-shared-dep : OPT += -g 74 75# dependency output parser (dependencies collector) 76 77DP_OUTPUT_DIR = | sed 's|\($*\)\.o[ :]*|$(OUTPUT_DIR)/\1.o $@ : |g' > $@; \ 78 [ -s $@ ] || rm -f $@ 79 80DP_OUTPUT_DIR_DBG = | sed 's|\($*\)\.o[ :]*|$(OUTPUT_DIR_DBG)/\1.o $@ : |g' > $@; \ 81 [ -s $@ ] || rm -f $@ 82 83DP_OUTPUT_DIR_STLDBG = | sed 's|\($*\)\.o[ :]*|$(OUTPUT_DIR_STLDBG)/\1.o $@ : |g' > $@; \ 84 [ -s $@ ] || rm -f $@ 85 86