diff options
author | John Mark Bell <jmb@netsurf-browser.org> | 2009-08-26 12:47:22 +0000 |
---|---|---|
committer | John Mark Bell <jmb@netsurf-browser.org> | 2009-08-26 12:47:22 +0000 |
commit | 4be96e9fd99777cb84112bbe9498c89c7a88b502 (patch) | |
tree | 5cd7c08912821c9160a702718efe697d86aef1d3 /makefiles/Makefile.tools | |
parent | d33846c1fb1ff1fb15cea29014918c0aa144b471 (diff) | |
download | buildsystem-4be96e9fd99777cb84112bbe9498c89c7a88b502.tar.gz buildsystem-4be96e9fd99777cb84112bbe9498c89c7a88b502.tar.bz2 |
C++ support
svn path=/trunk/tools/buildsystem/; revision=9461
Diffstat (limited to 'makefiles/Makefile.tools')
-rw-r--r-- | makefiles/Makefile.tools | 28 |
1 files changed, 27 insertions, 1 deletions
diff --git a/makefiles/Makefile.tools b/makefiles/Makefile.tools index c8087a8..9da5538 100644 --- a/makefiles/Makefile.tools +++ b/makefiles/Makefile.tools @@ -13,7 +13,8 @@ # BUILD Type of build to perform: # release - Release build (default) # debug - Debug build -# OPTCFLAGS Optional compiler flags for $(BUILD) +# OPTCFLAGS Optional C compiler flags for $(BUILD) +# OPTCXXFLAGS Optional C++ compiler flags for $(BUILD) # OPTLDFLAGS Optional linker flags for $(BUILD) # TARGET Target platform (defaults to host) # @@ -72,6 +73,7 @@ ifeq ($(TARGET),riscos) GCCSDK_INSTALL_ENV ?= <NSLibs$$Dir> CC__ := gcc + CXX__ := g++ CMHG ?= cmunge GENHTML ?= echo LCOV ?= echo @@ -89,6 +91,7 @@ ifeq ($(TARGET),riscos) AR__ := $(wildcard $(GCCSDK_INSTALL_CROSSBIN)/*ar) CC__ := $(wildcard $(GCCSDK_INSTALL_CROSSBIN)/*gcc) + CXX__ := $(wildcard $(GCCSDK_INSTALL_CROSSBIN/*g++) CMHG ?= PATH="$(GCCSDK_INSTALL_CROSSBIN):$(PATH)" $(GCCSDK_INSTALL_CROSSBIN)/cmunge GENHTML ?= echo LCOV ?= echo @@ -106,6 +109,7 @@ ifeq ($(TARGET),riscos) endif CFLAGS := $(CFLAGS) -mpoke-function-name -I$(GCCSDK_INSTALL_ENV)/include + CXXFLAGS := $(CXXFLAGS) -mpoke-function-name -I$(GCCSDK_INSTALL_ENV)/include LDFLAGS := $(LDFLAGS) -L$(GCCSDK_INSTALL_ENV)/lib CMHGFLAGS := -p -tgcc -32bit -apcs 3/32/nonreent/fpe2/noswst/nofpr/nofp @@ -146,12 +150,14 @@ ifeq ($(TARGET),windows) GCCSDK_INSTALL_ENV ?= /usr/local/mingw CC__ := i586-mingw32msvc-gcc + CXX__ := i586-mingw32msvc-g++ AR__ := i586-mingw32msvc-ar PKGCONFIG ?= $(GCCSDK_INSTALL_ENV)/bin/win-pkg-config endif CFLAGS := $(CFLAGS) -U__STRICT_ANSI__ -I$(GCCSDK_INSTALL_ENV)/include + CXXFLAGS := $(CXXFLAGS) -U__STRICT_ANSI__ -I$(GCCSDK_INSTALL_ENV)/include LDFLAGS := $(LDFLAGS) -L$(GCCSDK_INSTALL_ENV)/lib # Default prefix @@ -172,6 +178,8 @@ GENHTML ?= genhtml HOST_CC ?= $(CC) +HOST_CXX ?= $(CXX) + INSTALL ?= install LCOV ?= lcov @@ -201,8 +209,10 @@ XSLTPROC ?= xsltproc ifeq ($(BUILD),release) OPTCFLAGS ?= -DNDEBUG -O2 + OPTCXXFLAGS ?= -DNDEBUG -O2 else OPTCFLAGS ?= -g -O0 + OPTCXXFLAGS ?= -g -O0 OPTLDFLAGS ?= -g endif @@ -213,9 +223,12 @@ endif ASFLAGS ?= -xassembler-with-cpp CFLAGS := $(CFLAGS) $(OPTCFLAGS) +CXXFLAGS := $(CXXFLAGS) $(OPTCXXFLAGS) # Some attempt to sanitise TARGET and HOST when used as pre-defines CFLAGS := $(CFLAGS) -DBUILD_TARGET_$(subst .,_,$(subst -,_,$(TARGET))) +CXXFLAGS := $(CXXFLAGS) -DBUILD_TARGET_$(subst .,_,$(subst -,_,$(TARGET))) CFLAGS := $(CFLAGS) -DBUILD_HOST_$(subst .,_,$(subst -,_,$(HOST))) +CXXFLAGS := $(CXXFLAGS) -DBUILD_HOST_$(subst .,_,$(subst -,_,$(HOST))) ASFLAGS := $(ASFLAGS) $(CFLAGS) LDFLAGS := $(LDFLAGS) $(OPTLDFLAGS) @@ -223,18 +236,22 @@ LDFLAGS := $(LDFLAGS) $(OPTLDFLAGS) # Extensions for coverage target ifeq ($(MAKECMDGOALS),coverage) COVCFLAGS ?= -fprofile-arcs -ftest-coverage + COVCXXFLAGS ?= -fprofile-arcs -ftest-coverage COVLDFLAGS ?= -lgcov CFLAGS := $(CFLAGS) $(COVCFLAGS) + CXXFLAGS := $(CXXFLAGS) $(COVCXXFLAGS) LDFLAGS := $(LDFLAGS) $(COVLDFLAGS) endif # Extensions for profile target ifeq ($(MAKECMDGOALS),profile) PROFCFLAGS ?= -pg + PROFCXXFLAGS ?= -pg PROFLDFLAGS ?= -pg CFLAGS := $(CFLAGS) $(PROFCFLAGS) + CXXFLAGS := $(CXXFLAGS) $(PROFCXXFLAGS) LDFLAGS := $(LDFLAGS) $(PROFLDFLAGS) endif @@ -253,6 +270,7 @@ endif ifeq ($(COMPONENT_TYPE),lib-shared) # Default CFLAGS/LDFLAGS for shared libraries SHAREDCFLAGS ?= -fPIC -DPIC + SHAREDCXXFLAGS ?= -fPIC -DPIC SHAREDLDFLAGS ?= -shared \ -Wl,-soname,$(SONAME) SHAREDLDPATH ?= LD_LIBRARY_PATH="$(BUILDDIR):$(LD_LIBRARY_PATH)" @@ -268,6 +286,7 @@ ifeq ($(COMPONENT_TYPE),riscos-module) endif CFLAGS := $(CFLAGS) -mmodule + CXXFLAGS := $(CXXFLAGS) -mmodule LDFLAGS := $(LDFLAGS) -mmodule endif @@ -296,6 +315,13 @@ else endif endif +# CXX +ifeq ($(origin CXX),default) + ifdef CXX__ + CXX := $(CXX__) + endif +endif + # AR ifeq ($(origin AR),default) ifdef AR__ |