Makefile revision 3701
7f007e36bec06aba6b3a0f84a64f2abf99edfcd8gstein#
cbd842f948c0ffda90ec0803f0fefc0d7630131cwrowe# CDDL HEADER START
2a6c49cfaef5979a5a06098f3ce987cd76769409manoj#
2a6c49cfaef5979a5a06098f3ce987cd76769409manoj# The contents of this file are subject to the terms of the
2a6c49cfaef5979a5a06098f3ce987cd76769409manoj# Common Development and Distribution License (the "License").
a8d5ccbcbde8cb6cf3a9dcf2eb05f393ab76baa9ianh# You may not use this file except in compliance with the License.
694514f7e6e99917e084943e3a05950b3c7c106ajerenkrantz#
4214e98fc9045e5010e66f9a967bd6d68f40d342aaron# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
8721697e2aece27b0e738519329f7976c72b27bfjerenkrantz# or http://www.opensolaris.org/os/licensing.
4a257be29f8aeab984fe5622fa69e0b2aab204d7jerenkrantz# See the License for the specific language governing permissions
91cacb801f6c0215b38322f6d2fc58cbfedfecfbjerenkrantz# and limitations under the License.
91cacb801f6c0215b38322f6d2fc58cbfedfecfbjerenkrantz#
df14f0d3a5191cdd7c4bb5b03acd135d43a6f51brbb# When distributing Covered Code, include this CDDL HEADER in each
df14f0d3a5191cdd7c4bb5b03acd135d43a6f51brbb# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
ab71b233b3a36489e44a7b061c48293be0b17788jwoolley# If applicable, add the following below this CDDL HEADER, with the
571760de5e60c0b459cb11be45507b923cd023eejwoolley# fields enclosed by brackets "[]" replaced with your own identifying
571760de5e60c0b459cb11be45507b923cd023eejwoolley# information: Portions Copyright [yyyy] [name of copyright owner]
9180a5933673ffb1af633c255ceee029340f3b1erbb#
bcb6e1be6041dfeb549c8ea8d37f97ad4e90a0c3rbb# CDDL HEADER END
9bd71e35f5d26d26d23fe3a677401828e842ed72wrowe#
2900ab946a2d76b73a14cebfe2985d253f01c967stoddard
a548c09e6a8ca1b059d0e93b5256c6ccb2b3c3cdrbb#
a548c09e6a8ca1b059d0e93b5256c6ccb2b3c3cdrbb# Copyright (c) 2011, 2015, Oracle and/or its affiliates. All rights reserved.
a548c09e6a8ca1b059d0e93b5256c6ccb2b3c3cdrbb#
b876b7bcf0ce3d232da723246d709e8dbbfe8762rbb
cf6bf6c34c936e6a6fe731dbce4a5c3c8bf8e9a3gsteininclude ../../make-rules/shared-macros.mk
35330e0d79ceb8027223bbb8330a381b1f989d6etrawick
6f6f4a4bca281779d196acbdd5c017bb90858305trawickPATH=$(SPRO_VROOT)/bin:$(JAVA_HOME)/bin:/usr/bin
8dd4618c4709236b4ea297d7250d282e463ce2d8rbb
09bd86d0db1114ee23eda0a6eb76ca055877a1cftrawickCOMPONENT_NAME= berkeleydb
2deb319e6b3de239f45c16a3e9e836d44f1f7108rbbCOMPONENT_VERSION= 5.3.21
bd929c73ef04789b7183b840d8db6e01d03a4d86rbbCOMPONENT_PROJECT_URL= http://www.oracle.com/technetwork/database/berkeleydb/overview/index.html
70f6f32765cfaadd6da8de6f0fea97ddd72d8fadmanojCOMPONENT_SRC_NAME= db
2a6c49cfaef5979a5a06098f3ce987cd76769409manojCOMPONENT_SRC= $(COMPONENT_SRC_NAME)-$(COMPONENT_VERSION)
af4c982a7cf4515f124935f99a329744035fc699sliveCOMPONENT_ARCHIVE= $(COMPONENT_SRC).tar.gz
af4c982a7cf4515f124935f99a329744035fc699sliveCOMPONENT_ARCHIVE_HASH= \
af4c982a7cf4515f124935f99a329744035fc699slive sha256:ddd92a930317df92021054c03992392db9ea5cddba43bef8920d392a82114fb8
af4c982a7cf4515f124935f99a329744035fc699sliveCOMPONENT_ARCHIVE_URL= http://download.oracle.com/berkeley-db/$(COMPONENT_ARCHIVE)
af4c982a7cf4515f124935f99a329744035fc699sliveCOMPONENT_BUGDB= database/berkeley
af4c982a7cf4515f124935f99a329744035fc699slive
af4c982a7cf4515f124935f99a329744035fc699sliveinclude ../../make-rules/prep.mk
10270f6f94b2069d0d357805c140a9897449b9ccianhinclude ../../make-rules/configure.mk
2a6c49cfaef5979a5a06098f3ce987cd76769409manojinclude ../../make-rules/ips.mk
10270f6f94b2069d0d357805c140a9897449b9ccianh
10270f6f94b2069d0d357805c140a9897449b9ccianh
4e3b83f6caecb85d4c139a440254cfa2f98e8960ianhCOMPONENT_PRE_CONFIGURE_ACTION = \
4e3b83f6caecb85d4c139a440254cfa2f98e8960ianh ($(CLONEY) $(SOURCE_DIR) $(@D))
cbd842f948c0ffda90ec0803f0fefc0d7630131cwrowe
10270f6f94b2069d0d357805c140a9897449b9ccianh# Berkeley DB uses TCLSH to run all the test suite test cases.
7558016fa8f4776e989f9d9de7694dcb87077bfejerenkrantz# Per the test suite instructions in the BDB build manual, the tclsh
a908203473820d096b31fc0f349711d3092ae684lars# include path must be correct in include.tcl then tclsh is run by
cbd842f948c0ffda90ec0803f0fefc0d7630131cwrowe# sourcing the test.tcl header and finally running the "run_std" command.
cbd842f948c0ffda90ec0803f0fefc0d7630131cwrowe# COMPONENT_POST_TEST_ACTION does this after BDB has been recompiled
10270f6f94b2069d0d357805c140a9897449b9ccianh# for test (--enable-test)
10270f6f94b2069d0d357805c140a9897449b9ccianh
10270f6f94b2069d0d357805c140a9897449b9ccianhCOMPONENT_POST_TEST_ACTION = \
10270f6f94b2069d0d357805c140a9897449b9ccianh (cd $(@D); \
10270f6f94b2069d0d357805c140a9897449b9ccianh echo "source test/tcl/test.tcl" > $(@D)/run_bdb.tcl; \
10270f6f94b2069d0d357805c140a9897449b9ccianh echo "$(RUN)" >> $(@D)/run_bdb.tcl; \
10270f6f94b2069d0d357805c140a9897449b9ccianh cd $(@D); \
10270f6f94b2069d0d357805c140a9897449b9ccianh $(CP) include.tcl include.tcl.orig; \
10270f6f94b2069d0d357805c140a9897449b9ccianh $(GSED) \
58e0ed3d1f052d695078b1d2a61c19246776eab5jerenkrantz 's;set tclsh_path .*;set tclsh_path '$(TCLSH)';' \
10270f6f94b2069d0d357805c140a9897449b9ccianh < include.tcl.orig > include.tcl; \
10270f6f94b2069d0d357805c140a9897449b9ccianh $(ENV) $(TCLSH) run_bdb.tcl)
ff42f83cbf31893bcde9712332a8e5ee970f6a74trawick
ff42f83cbf31893bcde9712332a8e5ee970f6a74trawickCONFIGURE_SCRIPT = dist/configure
ff42f83cbf31893bcde9712332a8e5ee970f6a74trawick
ff42f83cbf31893bcde9712332a8e5ee970f6a74trawick# adding to the C++ compiler because libtool appears to strip it from CXXFLAGS
ff42f83cbf31893bcde9712332a8e5ee970f6a74trawickCXX += $(studio_NORUNPATH)
ff42f83cbf31893bcde9712332a8e5ee970f6a74trawick
ff42f83cbf31893bcde9712332a8e5ee970f6a74trawick# we need to enable large file support and build PIC for our shared libraries
ff42f83cbf31893bcde9712332a8e5ee970f6a74trawickCFLAGS += $(CPP_LARGEFILES) $(CC_PIC)
ff42f83cbf31893bcde9712332a8e5ee970f6a74trawickCXXFLAGS += $(CPP_LARGEFILES)
ff42f83cbf31893bcde9712332a8e5ee970f6a74trawick
5c99bd08a9f1f96f37da0239d3365a0025531711gregamesCONFIGURE_ENV += CFLAGS="$(CFLAGS)"
5c99bd08a9f1f96f37da0239d3365a0025531711gregamesCONFIGURE_ENV += CXXFLAGS="$(CXXFLAGS)"
5c99bd08a9f1f96f37da0239d3365a0025531711gregamesCONFIGURE_ENV += PKG_CONFIG_PATH="$(PKG_CONFIG_PATH)"
ff42f83cbf31893bcde9712332a8e5ee970f6a74trawickCONFIGURE_ENV += JAVA_HOME="$(JAVA_HOME)"
77304e37d675303eef0355fc3bb9a12bb506547ajerenkrantz
77304e37d675303eef0355fc3bb9a12bb506547ajerenkrantzCONFIGURE_OPTIONS += --includedir=/usr/include
77304e37d675303eef0355fc3bb9a12bb506547ajerenkrantzCONFIGURE_OPTIONS += --enable-shared
ff42f83cbf31893bcde9712332a8e5ee970f6a74trawickCONFIGURE_OPTIONS += --disable-static
77304e37d675303eef0355fc3bb9a12bb506547ajerenkrantzCONFIGURE_OPTIONS += --enable-cxx
77304e37d675303eef0355fc3bb9a12bb506547ajerenkrantzCONFIGURE_OPTIONS += --enable-java
41ce8eb0053365f3ce1a774ba4239fc9e4fae072wroweCONFIGURE_OPTIONS += --enable-sql
5c99bd08a9f1f96f37da0239d3365a0025531711gregamesCONFIGURE_OPTIONS += --enable-sql_codegen
5c99bd08a9f1f96f37da0239d3365a0025531711gregamesCONFIGURE_OPTIONS += --enable-jdbc
7558016fa8f4776e989f9d9de7694dcb87077bfejerenkrantzCONFIGURE_OPTIONS += --enable-tcl
5c99bd08a9f1f96f37da0239d3365a0025531711gregamesCONFIGURE_OPTIONS += --with-tcl=/usr/lib
41ce8eb0053365f3ce1a774ba4239fc9e4fae072wroweCONFIGURE_OPTIONS += --enable-dbm
cbd842f948c0ffda90ec0803f0fefc0d7630131cwroweCONFIGURE_OPTIONS += $(configure_test)
cbd842f948c0ffda90ec0803f0fefc0d7630131cwrowe
cbd842f948c0ffda90ec0803f0fefc0d7630131cwroweCOMPONENT_TEST_TARGETS = test
cbd842f948c0ffda90ec0803f0fefc0d7630131cwrowe
cbd842f948c0ffda90ec0803f0fefc0d7630131cwrowe$(SKIP_TEST_AT_TOP_LEVEL)
cbd842f948c0ffda90ec0803f0fefc0d7630131cwrowe
cbd842f948c0ffda90ec0803f0fefc0d7630131cwrowe# Enable ASLR for this component
cbd842f948c0ffda90ec0803f0fefc0d7630131cwroweASLR_MODE = $(ASLR_ENABLE)
cbd842f948c0ffda90ec0803f0fefc0d7630131cwrowe
cbd842f948c0ffda90ec0803f0fefc0d7630131cwrowe$(BUILD_DIR)/%/.tested: configure_test= --enable-test
531c23ff01a2489646f0a2029097013b328d935agstein
5c99bd08a9f1f96f37da0239d3365a0025531711gregames# Do not apply the standard licence transforms for this component.
7558016fa8f4776e989f9d9de7694dcb87077bfejerenkrantzLICENSE_TRANSFORMS =
7558016fa8f4776e989f9d9de7694dcb87077bfejerenkrantz
7558016fa8f4776e989f9d9de7694dcb87077bfejerenkrantz# common targets
7558016fa8f4776e989f9d9de7694dcb87077bfejerenkrantzconfigure: $(CONFIGURE_32_and_64)
5c99bd08a9f1f96f37da0239d3365a0025531711gregames
6d6d1bf27fbc05343e916eae8fc418d07fd97787ianhbuild: $(BUILD_32_and_64)
4e3b83f6caecb85d4c139a440254cfa2f98e8960ianh
4e3b83f6caecb85d4c139a440254cfa2f98e8960ianhinstall: $(INSTALL_32_and_64)
364dfd4527e6ce37b828a42e2c0bbdf9ba19a9b8gregames $(CP) berkeleydb.license $(PROTOUSRDIR)/docs/LICENSE
364dfd4527e6ce37b828a42e2c0bbdf9ba19a9b8gregames
364dfd4527e6ce37b828a42e2c0bbdf9ba19a9b8gregamestest: $(TEST_32_and_64)
c749d9bab4568a670ed96bd27d0ff69a585499e3ianh
c749d9bab4568a670ed96bd27d0ff69a585499e3ianh# By default "gmake test" runs standard tests, takes ~2 days per $(BITS).
c749d9bab4568a670ed96bd27d0ff69a585499e3ianhRUN=run_std
c00273b9c51c617ede471e9cb95c22420f1227fbbrianp
c00273b9c51c617ede471e9cb95c22420f1227fbbrianpBUILD_PKG_DEPENDENCIES = $(BUILD_TOOLS) $(TCLSH)
c00273b9c51c617ede471e9cb95c22420f1227fbbrianp
6758b07b4b79f898b0f56375016cea7da0bfb495wroweinclude ../../make-rules/depend.mk
6758b07b4b79f898b0f56375016cea7da0bfb495wrowe