From 77c9a23bfbf748c70b3ab33b06c5b188eaa3bd25 Mon Sep 17 00:00:00 2001 From: "arseny.kapoulkine" Date: Tue, 25 May 2010 21:50:46 +0000 Subject: Added build support for Sun C++ git-svn-id: http://pugixml.googlecode.com/svn/trunk@453 99668b35-9821-0410-8761-19e4c4f06640 --- Jamfile.jam | 6 +++++- Jamrules.jam | 37 +++++++++++++++++++++++++++++++++++++ tests/autotest-local.pl | 2 +- 3 files changed, 43 insertions(+), 2 deletions(-) diff --git a/Jamfile.jam b/Jamfile.jam index 1ebdba3..bc47f10 100644 --- a/Jamfile.jam +++ b/Jamfile.jam @@ -13,7 +13,11 @@ # default toolset/configuration if ( ! $(toolset) ) { - if ( $(UNIX) ) + if ( $(OS) = SOLARIS ) + { + toolset = suncc ; + } + else if ( $(UNIX) ) { local GCCVERSION = [ Subst [ Shell "gcc -dumpversion" ] : $(NEWLINE) ] ; toolset = "gcc"$(GCCVERSION) ; diff --git a/Jamrules.jam b/Jamrules.jam index 5837dda..bed6458 100644 --- a/Jamrules.jam +++ b/Jamrules.jam @@ -285,6 +285,43 @@ else if ( $(toolset:I=^bcc) ) { } } +else if ( $(toolset:I=^suncc) ) +{ + CCFLAGS += -D$(defines) ; + + if ( $(configuration) = "debug" ) + { + CCFLAGS += -D_DEBUG ; + } + else + { + CCFLAGS += -DNDEBUG -O ; + } + + if ( PUGIXML_NO_EXCEPTIONS in $(defines) ) + { + CCFLAGS += -noex ; + } + + actions ObjectAction + { + sunCC $(CCFLAGS) +w -xwe -c -o $(<) $(>) + } + + actions LibraryAction + { + ar rcs $(<) $(>) + } + + actions LinkAction + { + sunCC $(>) -o $(<) $(LDFLAGS) + } + + actions CoverageAction + { + } +} else { exit "Unknown toolset $(toolset)!" ; diff --git a/tests/autotest-local.pl b/tests/autotest-local.pl index 6527c1c..db7b26c 100644 --- a/tests/autotest-local.pl +++ b/tests/autotest-local.pl @@ -24,7 +24,7 @@ sub gcctoolset } $fast = (shift eq 'fast'); -@toolsets = ($^O =~ /MSWin/) ? (bcc, cw, dmc, ic8, mingw34, mingw44, mingw45, msvc6, msvc7, msvc71, msvc8, msvc8_x64, msvc9, msvc9_x64, msvc10, msvc10_x64) : (&gcctoolset()); +@toolsets = ($^O =~ /MSWin/) ? (bcc, cw, dmc, ic8, mingw34, mingw44, mingw45, msvc6, msvc7, msvc71, msvc8, msvc8_x64, msvc9, msvc9_x64, msvc10, msvc10_x64) : ($^O =~ /solaris/) ? (suncc) : (&gcctoolset()); @configurations = (debug, release); @defines = (PUGIXML_NO_XPATH, PUGIXML_NO_EXCEPTIONS, PUGIXML_NO_STL, PUGIXML_WCHAR_MODE); -- cgit v1.2.3