Makefile revision 230
358628c8f4804a2db52be0f6d03a66137fab4884David Lawrence#
358628c8f4804a2db52be0f6d03a66137fab4884David Lawrence# CDDL HEADER START
358628c8f4804a2db52be0f6d03a66137fab4884David Lawrence#
358628c8f4804a2db52be0f6d03a66137fab4884David Lawrence# The contents of this file are subject to the terms of the
54a2e7e8a21ee765f41bd995101995613bff9e8cDavid Lawrence# Common Development and Distribution License (the "License").
54a2e7e8a21ee765f41bd995101995613bff9e8cDavid Lawrence# You may not use this file except in compliance with the License.
54a2e7e8a21ee765f41bd995101995613bff9e8cDavid Lawrence#
54a2e7e8a21ee765f41bd995101995613bff9e8cDavid Lawrence# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
54a2e7e8a21ee765f41bd995101995613bff9e8cDavid Lawrence# or http://www.opensolaris.org/os/licensing.
027212247d59c05452abb7a8b253efe52d14459eDavid Lawrence# See the License for the specific language governing permissions
027212247d59c05452abb7a8b253efe52d14459eDavid Lawrence# and limitations under the License.
027212247d59c05452abb7a8b253efe52d14459eDavid Lawrence#
027212247d59c05452abb7a8b253efe52d14459eDavid Lawrence# When distributing Covered Code, include this CDDL HEADER in each
a2605214c27439a8af2ad4bd9a8630dcfcc8152eDavid Lawrence# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
a2605214c27439a8af2ad4bd9a8630dcfcc8152eDavid Lawrence# If applicable, add the following below this CDDL HEADER, with the
a2605214c27439a8af2ad4bd9a8630dcfcc8152eDavid Lawrence# fields enclosed by brackets "[]" replaced with your own identifying
a2605214c27439a8af2ad4bd9a8630dcfcc8152eDavid Lawrence# information: Portions Copyright [yyyy] [name of copyright owner]
a2605214c27439a8af2ad4bd9a8630dcfcc8152eDavid Lawrence#
344e909ce9c59422a70105aba498e68b2d42623bDavid Lawrence# CDDL HEADER END
344e909ce9c59422a70105aba498e68b2d42623bDavid Lawrence
738922ba7bb10b206f6f54931aed068e3dcb950dDavid Lawrence#
738922ba7bb10b206f6f54931aed068e3dcb950dDavid Lawrence# Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
eefea43215016bce437ab4a7441b2851fd182960David Lawrence#
eefea43215016bce437ab4a7441b2851fd182960David Lawrence
eefea43215016bce437ab4a7441b2851fd182960David Lawrenceinclude ../../make-rules/shared-macros.mk
9c4f33b6718407e94d50dbfb4977e16d3f83de9dDavid Lawrence
9c4f33b6718407e94d50dbfb4977e16d3f83de9dDavid LawrenceCOMPONENT_NAME= pcre
9c4f33b6718407e94d50dbfb4977e16d3f83de9dDavid LawrenceCOMPONENT_VERSION= 7.8
c403d3f7d6cb17406e9be03a330ed5cf91619abcDavid LawrenceCOMPONENT_SRC= $(COMPONENT_NAME)-$(COMPONENT_VERSION)
c403d3f7d6cb17406e9be03a330ed5cf91619abcDavid LawrenceCOMPONENT_ARCHIVE= $(COMPONENT_SRC).tar.gz
c403d3f7d6cb17406e9be03a330ed5cf91619abcDavid LawrenceCOMPONENT_ARCHIVE_HASH= sha1:229e6585ec816fbb7081a6b3d29daf1e048f362f
c403d3f7d6cb17406e9be03a330ed5cf91619abcDavid LawrenceCOMPONENT_ARCHIVE_URL= http://sourceforge.net/projects/pcre/files/pcre/$(COMPONENT_VERSION)/$(COMPONENT_ARCHIVE)
a0f6cda5fd9f2fcc4154bb63628f849b639a40caAndreas GustafssonCOMPONENT_PROJECT_URL= http://pcre.org
a0f6cda5fd9f2fcc4154bb63628f849b639a40caAndreas Gustafsson
a0f6cda5fd9f2fcc4154bb63628f849b639a40caAndreas Gustafssoninclude $(WS_TOP)/make-rules/prep.mk
dc91d010dbd848ab3a11815e5a3d109662a38b0cDavid Lawrenceinclude $(WS_TOP)/make-rules/configure.mk
dc91d010dbd848ab3a11815e5a3d109662a38b0cDavid Lawrenceinclude $(WS_TOP)/make-rules/ips.mk
dc91d010dbd848ab3a11815e5a3d109662a38b0cDavid Lawrenceinclude $(WS_TOP)/make-rules/lint-libraries.mk
e3b3a046bf653d39cb5b92534a6a36fce1702d20Bob Halley
e3b3a046bf653d39cb5b92534a6a36fce1702d20Bob Halley# pick up -xc99=all in CFLAGS
e3b3a046bf653d39cb5b92534a6a36fce1702d20Bob Halleystudio_C99MODE= $(studio_C99_ENABLE)
e3b3a046bf653d39cb5b92534a6a36fce1702d20Bob Halley
e3b3a046bf653d39cb5b92534a6a36fce1702d20Bob Halley# pick up -xlang=c99 in XPG5MODE
e3b3a046bf653d39cb5b92534a6a36fce1702d20Bob Halleystudio_cplusplus_C99MODE= $(studio_cplusplus_C99_ENABLE)
904463e94cafd59c8284f472ea8f58f1f311b8cbDavid Lawrence
904463e94cafd59c8284f472ea8f58f1f311b8cbDavid Lawrence# turn on largefile support
2d78d06402ef2605ff8f6b3f5008673754d3711eDavid LawrenceCFLAGS+= $(CPP_LARGEFILES)
2d78d06402ef2605ff8f6b3f5008673754d3711eDavid Lawrence
2d78d06402ef2605ff8f6b3f5008673754d3711eDavid LawrenceCFLAGS+= $(XPG6MODE)
bf6f755a74e24441e96a110b3c8d11cfe2ed0da7David Lawrence
1a7f6c3898266854db100fb2cb36418d650de8e7Brian Wellington# Although -norunpath is set for CXXFLAGS, we need to put -norunpath
1a7f6c3898266854db100fb2cb36418d650de8e7Brian Wellington# here, otherwise -norunpath doesn't get set when creating the shared
1a7f6c3898266854db100fb2cb36418d650de8e7Brian Wellington# libraries (CC -G).
1a7f6c3898266854db100fb2cb36418d650de8e7Brian WellingtonCXX+= $(studio_NORUNPATH)
56433595bb938c21fd3b07a0f7c565d942bb8780David Lawrence
56433595bb938c21fd3b07a0f7c565d942bb8780David LawrenceCXXFLAGS+= $(CC_PIC)
fc9e755ba340607d76c7de897ee2d985d3b24505David Lawrence
fc9e755ba340607d76c7de897ee2d985d3b24505David Lawrence# turn on support for large files
fc9e755ba340607d76c7de897ee2d985d3b24505David LawrenceCXXFLAGS+= $(CPP_LARGEFILES)
7896e45912df15d07eb99f885b9d9c15ad5f3f68David Lawrence
7896e45912df15d07eb99f885b9d9c15ad5f3f68David LawrenceCXXFLAGS+= $(XPG5MODE)
7896e45912df15d07eb99f885b9d9c15ad5f3f68David Lawrence
7896e45912df15d07eb99f885b9d9c15ad5f3f68David Lawrence# We need to do this because libtool adds wrong paths to RPATH.
7896e45912df15d07eb99f885b9d9c15ad5f3f68David LawrenceLDFLAGS += -L$(CONFIGURE_LIBDIR.$(BITS)) -R$(CONFIGURE_LIBDIR.$(BITS))
32eddfc189108fa93e31761e13150594c7a79d2bDavid Lawrence
32eddfc189108fa93e31761e13150594c7a79d2bDavid LawrenceLINTFLAGS+= -I. $(studio_XBITS) $(CPP_LARGEFILES)
32eddfc189108fa93e31761e13150594c7a79d2bDavid Lawrence
32eddfc189108fa93e31761e13150594c7a79d2bDavid LawrenceCONFIGURE_ENV+= "CC=$(CC)"
b8dd48ecf83142f6ee7238cbd68fec455e527fc8Mark AndrewsCONFIGURE_ENV+= "CFLAGS=$(CFLAGS)"
b8dd48ecf83142f6ee7238cbd68fec455e527fc8Mark AndrewsCONFIGURE_ENV+= "CPP=$(CC) $(CPPFLAGS) $(CFLAGS) -E"
b8dd48ecf83142f6ee7238cbd68fec455e527fc8Mark AndrewsCONFIGURE_ENV+= "CXX=$(CXX)"
68e4926b2262571e004b4be00b905ec776c01d9cMichael GraffCONFIGURE_ENV+= "CXXFLAGS=$(CXXFLAGS)"
68e4926b2262571e004b4be00b905ec776c01d9cMichael GraffCONFIGURE_ENV+= "CXXCPP=$(CXX) $(CPPFLAGS) $(CXXFLAGS) -E"
68e4926b2262571e004b4be00b905ec776c01d9cMichael GraffCONFIGURE_ENV+= "LDFLAGS=$(LDFLAGS)"
6c7e680943ccdb75f23b050a7bc5ac0825e5244aMark AndrewsCONFIGURE_ENV+= "CXXLDFLAGS=$(LDFLAGS)"
6c7e680943ccdb75f23b050a7bc5ac0825e5244aMark AndrewsCONFIGURE_ENV+= "CXXLD=$(CXX) $(CXXFLAGS) $(LDFLAGS)"
6c7e680943ccdb75f23b050a7bc5ac0825e5244aMark AndrewsCONFIGURE_ENV+= "INSTALL=$(INSTALL)"
6c7e680943ccdb75f23b050a7bc5ac0825e5244aMark AndrewsCONFIGURE_ENV+= "MAKE=$(GMAKE)"
6c7e680943ccdb75f23b050a7bc5ac0825e5244aMark Andrews
6c7e680943ccdb75f23b050a7bc5ac0825e5244aMark AndrewsCONFIGURE_ENV.64+= "CXXLINKLIB=$(CXX) $(CCFLAGS) $(LDFLAGS)"
61e9c1cdbe29683bb2db388e4fc6a6fd59315cefDavid LawrenceCONFIGURE_ENV.64+= "MACH64=$(MACH64)"
61e9c1cdbe29683bb2db388e4fc6a6fd59315cefDavid Lawrence
61e9c1cdbe29683bb2db388e4fc6a6fd59315cefDavid LawrenceCONFIGURE_OPTIONS+= --includedir=$(CONFIGURE_INCLUDEDIR)/pcre
8b11f3debd9a9494d5aec60ea228ab393fbdc26eDavid LawrenceCONFIGURE_OPTIONS+= --localstatedir=/var
8b11f3debd9a9494d5aec60ea228ab393fbdc26eDavid LawrenceCONFIGURE_OPTIONS+= --disable-static
8b11f3debd9a9494d5aec60ea228ab393fbdc26eDavid LawrenceCONFIGURE_OPTIONS+= --enable-cpp
2cc1d2536d5834fbe20281068b8bd34dd1ee5337David LawrenceCONFIGURE_OPTIONS+= --enable-rebuild-chartables
2cc1d2536d5834fbe20281068b8bd34dd1ee5337David LawrenceCONFIGURE_OPTIONS+= --enable-utf8
2cc1d2536d5834fbe20281068b8bd34dd1ee5337David LawrenceCONFIGURE_OPTIONS+= --enable-unicode-properties
140d92622430165001bd91ba2e7d516992faeb2fMichael SawyerCONFIGURE_OPTIONS+= --enable-newline-is-any
140d92622430165001bd91ba2e7d516992faeb2fMichael SawyerCONFIGURE_OPTIONS+= --disable-stack-for-recursion
6d208969b3ed736f434bc5120044f8fd2f595f22David LawrenceCONFIGURE_OPTIONS+= --enable-pcregrep-libz
6d208969b3ed736f434bc5120044f8fd2f595f22David LawrenceCONFIGURE_OPTIONS+= --enable-pcregrep-libbz2
145bd6ea3394faf2faa40c99cb6bb7c96027ae16David LawrenceCONFIGURE_OPTIONS+= --with-posix-malloc-threshold=20
145bd6ea3394faf2faa40c99cb6bb7c96027ae16David LawrenceCONFIGURE_OPTIONS+= --with-link-size=4
145bd6ea3394faf2faa40c99cb6bb7c96027ae16David LawrenceCONFIGURE_OPTIONS+= --with-match-limit=10000000
0c33e418cb443ade8ed55f5433bc4d409c7af0b8David LawrenceCONFIGURE_OPTIONS+= --with-pic
0c33e418cb443ade8ed55f5433bc4d409c7af0b8David Lawrence
0c33e418cb443ade8ed55f5433bc4d409c7af0b8David LawrenceCONFIGURE_OPTIONS.64+= --libexecdir=$(CONFIGURE_PREFIX)/libexec/$(MACH64)
8a0ba20b16177d40bd557b491f56003c7d38a4a2David Lawrence
8a0ba20b16177d40bd557b491f56003c7d38a4a2David LawrenceCOMPONENT_BUILD_ENV+= "LDFLAGS=$(LDFLAGS)"
8a0ba20b16177d40bd557b491f56003c7d38a4a2David LawrenceCOMPONENT_BUILD_ENV+= "INSTALL=$(INSTALL)"
b3e77535185043f089b346166440402d092030c3David LawrenceCOMPONENT_BUILD_ENV+= "MAKE=$(GMAKE)"
b3e77535185043f089b346166440402d092030c3David Lawrence
b3e77535185043f089b346166440402d092030c3David LawrenceCOMPONENT_BUILD_ARGS+= -e
b3e77535185043f089b346166440402d092030c3David Lawrence
b3e77535185043f089b346166440402d092030c3David LawrenceCOMPONENT_INSTALL_ARGS+= "INSTALL=$(INSTALL)"
03f0e349d81a580a562fd21402ef97d11c15429aBrian WellingtonCOMPONENT_INSTALL_ARGS+= "MAKE=$(GMAKE)"
9e842bb2d3802de0f7da5d6d33382a4859bc6876Brian Wellington
9e842bb2d3802de0f7da5d6d33382a4859bc6876Brian Wellington# common targets
9e842bb2d3802de0f7da5d6d33382a4859bc6876Brian Wellington
e1747e09e7cc6771dca1a1702e42e6401dbeebedDavid Lawrencebuild: $(BUILD_32_and_64)
e1747e09e7cc6771dca1a1702e42e6401dbeebedDavid Lawrence
e1747e09e7cc6771dca1a1702e42e6401dbeebedDavid Lawrenceinstall: $(INSTALL_32_and_64)
a231769eaae9add23b16124388e1d474fb488873David Lawrence
a231769eaae9add23b16124388e1d474fb488873David Lawrencetest: $(TEST_32_and_64)
a231769eaae9add23b16124388e1d474fb488873David Lawrence
6e49e91bd08778d7eae45a2229dcf41ed97cc636David LawrenceBUILD_PKG_DEPENDENCIES = $(BUILD_TOOLS)
6e49e91bd08778d7eae45a2229dcf41ed97cc636David Lawrence
6e49e91bd08778d7eae45a2229dcf41ed97cc636David Lawrenceinclude $(WS_TOP)/make-rules/depend.mk
6e49e91bd08778d7eae45a2229dcf41ed97cc636David Lawrence