Makefile revision 2032
436aad11e01e916f75e68a2e9cb89ac217a990d3Tinderbox User#
6fe48fb46e53ffc37542853a1edb74cb481b7d94Automatic Updater# CDDL HEADER START
c7ef13f6c9ef4436bc804b150e0a93307b11fa27Tinderbox User#
c7ef13f6c9ef4436bc804b150e0a93307b11fa27Tinderbox User# The contents of this file are subject to the terms of the
a5636b773fa05a272b6876afd99309c0b3090e2fMark Andrews# Common Development and Distribution License (the "License").
e9e4257668ff6c4e583b0c0db2508650b0b677b8Tinderbox User# You may not use this file except in compliance with the License.
e9e4257668ff6c4e583b0c0db2508650b0b677b8Tinderbox User#
c57668a2fbbe558c1bd21652813616f2f517c469Tinderbox User# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
5e047890ac9b745db060d95f7d1b4f876511240dTinderbox User# or http://www.opensolaris.org/os/licensing.
137fdbc214e99c4cbe57551e9e14f2015c2e42aeTinderbox User# See the License for the specific language governing permissions
3349f0044fda807e1fd6681c833d3593a22dad86Tinderbox User# and limitations under the License.
bed0874e1a09e810575328c4bfc346a47514b69fMark Andrews#
02b47c5d62e1e827743684c28a08e871da454a2dMark Andrews# When distributing Covered Code, include this CDDL HEADER in each
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User# If applicable, add the following below this CDDL HEADER, with the
e20309353e6246485c521278131d3fced73d7957Tinderbox User# fields enclosed by brackets "[]" replaced with your own identifying
e20309353e6246485c521278131d3fced73d7957Tinderbox User# information: Portions Copyright [yyyy] [name of copyright owner]
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews#
9a5217f827ac0e006016745e5305b31dc0c7767fTinderbox User# CDDL HEADER END
3cc98b8ecedcbc8465f1cf2740b966b315662430Automatic Updater#
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews#
e20309353e6246485c521278131d3fced73d7957Tinderbox User# Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
e20309353e6246485c521278131d3fced73d7957Tinderbox User#
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews
df4ebd8217d02dafc12145b55c4d93d0255d1ec7Tinderbox Userinclude ../../make-rules/shared-macros.mk
efb0e886f18894a1d2489f1ad74ad14b579e11c7Mark Andrews
f2770f6b39a9b2a98afb7a11ed105f73f1570c1eAutomatic UpdaterPATH=$(dir $(CC)):$(SPRO_VROOT)/bin:/usr/bin:/usr/gnu/bin
91216cff91b34c9ff6e846dc23f248219cafe660Andreas Gustafsson
f2770f6b39a9b2a98afb7a11ed105f73f1570c1eAutomatic UpdaterCOMPONENT_NAME= subversion
f2770f6b39a9b2a98afb7a11ed105f73f1570c1eAutomatic UpdaterCOMPONENT_VERSION= 1.7.5
91216cff91b34c9ff6e846dc23f248219cafe660Andreas GustafssonCOMPONENT_PROJECT_URL= http://subversion.apache.org/
f2770f6b39a9b2a98afb7a11ed105f73f1570c1eAutomatic UpdaterCOMPONENT_SRC= $(COMPONENT_NAME)-$(COMPONENT_VERSION)
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox UserCOMPONENT_ARCHIVE= $(COMPONENT_SRC).tar.gz
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox UserCOMPONENT_ARCHIVE_HASH= \
aa9c561961e9d877946ebaa8795fa2be054ab7bfEvan Hunt sha256:cb102a437335a8921f00cef9bf730d84527713f1a5091e3e1eb2f16402f85dc1
e130ab53e992670e2a2ecf043976ac09f21358d1Automatic UpdaterCOMPONENT_ARCHIVE_URL= http://archive.apache.org/dist/subversion/$(COMPONENT_ARCHIVE)
9513a2a6670951f5cf5477fcfec9f933fcaff628Automatic UpdaterCOMPONENT_BUGDB= utility/svn
aa9c561961e9d877946ebaa8795fa2be054ab7bfEvan Hunt
9513a2a6670951f5cf5477fcfec9f933fcaff628Automatic Updaterinclude ../../make-rules/prep.mk
24934f08b9ff81c2be711e566e8002d145573031Tinderbox Userinclude ../../make-rules/configure.mk
9513a2a6670951f5cf5477fcfec9f933fcaff628Automatic Updaterinclude ../../make-rules/ips.mk
aa9c561961e9d877946ebaa8795fa2be054ab7bfEvan Hunt
24934f08b9ff81c2be711e566e8002d145573031Tinderbox UserPATCH_LEVEL = 0
e9e4257668ff6c4e583b0c0db2508650b0b677b8Tinderbox UserPYMODS = client core delta fs ra repos wc
aa9c561961e9d877946ebaa8795fa2be054ab7bfEvan HuntPLMODS= Fs Core Wc Client Repos Ra Delta
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox UserJAVA_ROOT = $(JAVA_HOME)
9513a2a6670951f5cf5477fcfec9f933fcaff628Automatic UpdaterPERL_VERSION.32 = 5.12
9513a2a6670951f5cf5477fcfec9f933fcaff628Automatic UpdaterPERL_VERSION.64 = 5.16
9513a2a6670951f5cf5477fcfec9f933fcaff628Automatic UpdaterPERL_VERSION = $(PERL_VERSION.$(BITS))
cdfc81e048bd34c1d628380247bda6b80a89e20eAutomatic UpdaterPERL = $(PERL.$(PERL_VERSION))
cdfc81e048bd34c1d628380247bda6b80a89e20eAutomatic UpdaterGNUCP = /usr/gnu/bin/cp
9513a2a6670951f5cf5477fcfec9f933fcaff628Automatic Updater
9513a2a6670951f5cf5477fcfec9f933fcaff628Automatic Updater# because we can't seem to get -norunpath to the java bindings build any
9513a2a6670951f5cf5477fcfec9f933fcaff628Automatic Updater# other way.
9513a2a6670951f5cf5477fcfec9f933fcaff628Automatic UpdaterCXX += $(studio_NORUNPATH)
eabc9c3c07cd956d3c436bd7614cb162dabdda76Mark AndrewsCFLAGS += -features=extensions
eabc9c3c07cd956d3c436bd7614cb162dabdda76Mark AndrewsCFLAGS += -xustr=ascii_utf16_ushort -xcsi
eabc9c3c07cd956d3c436bd7614cb162dabdda76Mark AndrewsCXXFLAGS += -features=nestedaccess,tmplife,tmplrefstatic
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox UserCXXFLAGS += -template=geninlinefuncs
e20309353e6246485c521278131d3fced73d7957Tinderbox UserCXXFLAGS += -verbose=template
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark AndrewsCXXFLAGS += -xustr=ascii_utf16_ushort
24934f08b9ff81c2be711e566e8002d145573031Tinderbox UserCXXFLAGS += $(CC_PIC)
e20309353e6246485c521278131d3fced73d7957Tinderbox UserCXXFLAGS += -mt -D_REENTRANT -DNDEBUG -DSOLARIS
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark AndrewsCXXFLAGS += $(CPP_LARGEFILES)
7feccf248d2a20a2ae48b290f58ded5abc853e9aTinderbox UserCFLAGS += `pkg-config --cflags neon`
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark AndrewsCFLAGS += $(CPP_LARGEFILES)
ad411d8ccf8a27eb903b842ab507ba6729d0246bTinderbox User
80faf1588895fd26490f82f95a7a1b771df1c324Automatic UpdaterPERL_VERSION_12 = 5.12
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark AndrewsPERL_VERSION_16 = 5.16
ad411d8ccf8a27eb903b842ab507ba6729d0246bTinderbox UserPERL_ARCH_12_i386 = i86pc-solaris-64int
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark AndrewsPERL_ARCH_16_i386 = i86pc-solaris-64
28a5dd720187fddb16055a0f64b63a7b66f29f64Mark AndrewsPERL_ARCH_12_sparc = sun4-solaris-64int
28a5dd720187fddb16055a0f64b63a7b66f29f64Mark AndrewsPERL_ARCH_16_sparc = sun4-solaris-64
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark AndrewsPERL_ARCH_12 = $(PERL_ARCH_12_$(MACH))
f2770f6b39a9b2a98afb7a11ed105f73f1570c1eAutomatic UpdaterPERL_ARCH_16 = $(PERL_ARCH_16_$(MACH))
91216cff91b34c9ff6e846dc23f248219cafe660Andreas Gustafsson
f2770f6b39a9b2a98afb7a11ed105f73f1570c1eAutomatic Updater# Let's write some post-configure hacks
f2770f6b39a9b2a98afb7a11ed105f73f1570c1eAutomatic UpdaterCOMPONENT_POST_CONFIGURE_ACTION = \
efb0e886f18894a1d2489f1ad74ad14b579e11c7Mark Andrews ( $(CLONEY) $(SOURCE_DIR) $(@D) ; \
f2770f6b39a9b2a98afb7a11ed105f73f1570c1eAutomatic Updater cd $(SOURCE_DIR) ; \
91216cff91b34c9ff6e846dc23f248219cafe660Andreas Gustafsson $(PYTHON.$(BITS)) ./build/transform_sql.py ./subversion/libsvn_fs_fs/rep-cache-db.sql < ./subversion/libsvn_fs_fs/rep-cache-db.sql > $(BUILD_DIR_$(BITS))/subversion/libsvn_fs_fs/rep-cache-db.h 2>&1 )
f2770f6b39a9b2a98afb7a11ed105f73f1570c1eAutomatic Updater
f2770f6b39a9b2a98afb7a11ed105f73f1570c1eAutomatic UpdaterCOMPONENT_BUILD_TARGETS = all swig-py swig-pl javahl
91216cff91b34c9ff6e846dc23f248219cafe660Andreas GustafssonCOMPONENT_INSTALL_TARGETS = install install-lib \
f2770f6b39a9b2a98afb7a11ed105f73f1570c1eAutomatic Updater install-swig-pl install-swig-py \
28a5dd720187fddb16055a0f64b63a7b66f29f64Mark Andrews install-javahl install-javahl-lib \
28a5dd720187fddb16055a0f64b63a7b66f29f64Mark Andrews install-mods-shared \
78f3ed4bc2fcd3d270bfd599804f3b27a1db4d91Mark Andrews install-bin install-docs
3349f0044fda807e1fd6681c833d3593a22dad86Tinderbox User
3349f0044fda807e1fd6681c833d3593a22dad86Tinderbox UserCONFIGURE_ENV += CC="$(CC)"
78f3ed4bc2fcd3d270bfd599804f3b27a1db4d91Mark AndrewsCONFIGURE_ENV += CXX="$(CXX)"
28a5dd720187fddb16055a0f64b63a7b66f29f64Mark AndrewsCONFIGURE_ENV += CFLAGS="$(CFLAGS)"
28a5dd720187fddb16055a0f64b63a7b66f29f64Mark AndrewsCONFIGURE_ENV += CXXFLAGS="$(CXXFLAGS)"
28a5dd720187fddb16055a0f64b63a7b66f29f64Mark AndrewsCONFIGURE_ENV += PKG_CONFIG_PATH="$(PKG_CONFIG_PATH)"
28a5dd720187fddb16055a0f64b63a7b66f29f64Mark AndrewsCONFIGURE_ENV += PYTHON="$(PYTHON.$(BITS))"
2a31bd531072824ef252c18303859d6af7451b00Francis DupontCONFIGURE_ENV += PYMODS="$(PYMODS)"
3349f0044fda807e1fd6681c833d3593a22dad86Tinderbox UserCONFIGURE_ENV += PYTHONPATH="$(PYTHON_VENDOR_PACKAGES.$(BITS))"
3349f0044fda807e1fd6681c833d3593a22dad86Tinderbox UserCONFIGURE_ENV += JAVA_ROOT="$(JAVA_ROOT)"
2a31bd531072824ef252c18303859d6af7451b00Francis DupontCONFIGURE_ENV += PERL="$(PERL)"
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark AndrewsCONFIGURE_ENV += PLMODS="$(PLMODS)"
2ba8f584b97cbab864570e38fd26b8cb90961428Tinderbox User# Current version of subversion only supports ruby 1.8, not 1.9.
3349f0044fda807e1fd6681c833d3593a22dad86Tinderbox User# Until subversion is updated to 1.8.0 (ruby 1.9 support added)
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark Andrews# or later, use ruby 1.8.
78f3ed4bc2fcd3d270bfd599804f3b27a1db4d91Mark AndrewsCONFIGURE_ENV += RUBY="$(RUBY.1.8)"
bed0874e1a09e810575328c4bfc346a47514b69fMark AndrewsCONFIGURE_ENV += LD_OPTIONS="$(LD_OPTIONS)"
24bf1e02f03577db0feb50b80238c4150c96d05dAutomatic Updater
78f3ed4bc2fcd3d270bfd599804f3b27a1db4d91Mark AndrewsLIBSVNDIR.32 = $(CONFIGURE_PREFIX)/lib/svn
78f3ed4bc2fcd3d270bfd599804f3b27a1db4d91Mark AndrewsLIBSVNDIR.64 = $(CONFIGURE_PREFIX)/lib/svn/$(MACH64)
2ba8f584b97cbab864570e38fd26b8cb90961428Tinderbox User
a308b69ac66fadf66863484f301314d6e6a3f1d2Automatic UpdaterAPR-CONFIG.32 = /usr/apr/1.3/bin/apr-1-config
78f3ed4bc2fcd3d270bfd599804f3b27a1db4d91Mark AndrewsAPR-CONFIG.64 = /usr/apr/1.3/bin/$(MACH64)/apr-1-config
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark AndrewsAPU-CONFIG.32 = /usr/apr-util/1.3/bin/apu-1-config
551271d8198ae06e37edf5da519d8ee153eeac0fTinderbox UserAPU-CONFIG.64 = /usr/apr-util/1.3/bin/$(MACH64)/apu-1-config
27c3c21f41520e8d6336d80a8094389e321cb6d2Mark AndrewsAPXS.32 = /usr/apache2/2.2/bin/apxs
c651f15b30f1dae5cc2f00878fb5da5b3a35a468Mark AndrewsAPXS.64 = /usr/apache2/2.2/bin/$(MACH64)/apxs
b871c7156eb037d41f53828c6fcb9cc876128962Mark Andrews
b871c7156eb037d41f53828c6fcb9cc876128962Mark Andrews# Let's make noise just because we have to override --libdir
b871c7156eb037d41f53828c6fcb9cc876128962Mark AndrewsCONFIGURE_OPTIONS = --prefix=$(CONFIGURE_PREFIX)
01a5c5503482fb3ba52088bf0178a7213273bf96Mark AndrewsCONFIGURE_OPTIONS += --mandir=$(CONFIGURE_MANDIR)
551271d8198ae06e37edf5da519d8ee153eeac0fTinderbox UserCONFIGURE_OPTIONS += --bindir=$(CONFIGURE_BINDIR.$(BITS))
b871c7156eb037d41f53828c6fcb9cc876128962Mark AndrewsCONFIGURE_OPTIONS += --sbindir=$(CONFIGURE_SBINDIR.$(BITS))
df4ebd8217d02dafc12145b55c4d93d0255d1ec7Tinderbox UserCONFIGURE_OPTIONS += --libdir=$(LIBSVNDIR.$(BITS))
cdfc81e048bd34c1d628380247bda6b80a89e20eAutomatic UpdaterCONFIGURE_OPTIONS += --localstatedir=/var
f2770f6b39a9b2a98afb7a11ed105f73f1570c1eAutomatic UpdaterCONFIGURE_OPTIONS += --enable-shared
fe80a4909bf62b602feaf246866e9d29f7654194Automatic UpdaterCONFIGURE_OPTIONS += --disable-static
f2770f6b39a9b2a98afb7a11ed105f73f1570c1eAutomatic UpdaterCONFIGURE_OPTIONS += --disable-libtool-lock
fa0326cc2cf428f67575b6ba3b97b528a31b0010Tinderbox UserCONFIGURE_OPTIONS += --disable-neon-version-check
fa0326cc2cf428f67575b6ba3b97b528a31b0010Tinderbox UserCONFIGURE_OPTIONS += --disable-experimental-libtool
fa0326cc2cf428f67575b6ba3b97b528a31b0010Tinderbox UserCONFIGURE_OPTIONS += --with-apxs=/usr/apache2/2.2/bin/apxs
f2770f6b39a9b2a98afb7a11ed105f73f1570c1eAutomatic UpdaterCONFIGURE_OPTIONS += --with-ssl
fe80a4909bf62b602feaf246866e9d29f7654194Automatic UpdaterCONFIGURE_OPTIONS += --with-zlib=$(CONFIGURE_PREFIX)
f2770f6b39a9b2a98afb7a11ed105f73f1570c1eAutomatic UpdaterCONFIGURE_OPTIONS += --with-jdk=$(JAVA_ROOT)
f2770f6b39a9b2a98afb7a11ed105f73f1570c1eAutomatic UpdaterCONFIGURE_OPTIONS += --with-apr=/usr/apr/1.3
91216cff91b34c9ff6e846dc23f248219cafe660Andreas GustafssonCONFIGURE_OPTIONS += --with-apr-util=/usr/apr-util/1.3
f2770f6b39a9b2a98afb7a11ed105f73f1570c1eAutomatic UpdaterCONFIGURE_OPTIONS += --enable-nls
aa1d397c4736cd86540555193d71e55fa3b37b2aMark AndrewsCONFIGURE_OPTIONS += --disable-mod-activation
91216cff91b34c9ff6e846dc23f248219cafe660Andreas GustafssonCONFIGURE_OPTIONS += --enable-javahl
dd65eb1efb40b1c47d57963192bfc54873b219beAutomatic UpdaterCONFIGURE_OPTIONS += --with-swig
dd65eb1efb40b1c47d57963192bfc54873b219beAutomatic UpdaterCONFIGURE_OPTIONS += --with-neon=$(CONFIGURE_PREFIX)
dd65eb1efb40b1c47d57963192bfc54873b219beAutomatic UpdaterCONFIGURE_OPTIONS += --with-apr=$(APR-CONFIG.$(BITS))
133e6d43fa82e80d3798be4de00f4540f485ec6cAutomatic UpdaterCONFIGURE_OPTIONS += --with-apr-util=$(APU-CONFIG.$(BITS))
133e6d43fa82e80d3798be4de00f4540f485ec6cAutomatic UpdaterCONFIGURE_OPTIONS += --with-apxs=$(APXS.$(BITS))
133e6d43fa82e80d3798be4de00f4540f485ec6cAutomatic Updater
f2770f6b39a9b2a98afb7a11ed105f73f1570c1eAutomatic Updater# Swig overwrites the 32-bit directory with 64-bit objects.
91216cff91b34c9ff6e846dc23f248219cafe660Andreas Gustafsson# So we work around that.
f2770f6b39a9b2a98afb7a11ed105f73f1570c1eAutomatic UpdaterCOMPONENT_POST_INSTALL_ACTION += \
5f7586ddbd3edd11272cdd30ed613d936129328bTinderbox User ( cd $(PROTOUSRLIBDIR)/python$(PYTHON_VERSION) ; \
5f7586ddbd3edd11272cdd30ed613d936129328bTinderbox User $(RM) -rf vendor-packages-$(BITS) ; \
5f7586ddbd3edd11272cdd30ed613d936129328bTinderbox User $(MV) vendor-packages vendor-packages-$(BITS) ; \
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User $(MKDIR) -p vendor-packages ; \
8e5fce1f9ceba17dd7e3ff0eb287e1e999c14249Mark Andrews $(MKDIR) -p vendor-packages/64 ; \
b886b04d8d2b085cbf3e1bf4442dee87f43ba5e4Tinderbox User if test -d vendor-packages-64 ; then \
c7ef13f6c9ef4436bc804b150e0a93307b11fa27Tinderbox User $(GNUCP) -rpd vendor-packages-64/libsvn vendor-packages/64/ ; \
c7ef13f6c9ef4436bc804b150e0a93307b11fa27Tinderbox User $(GNUCP) -rpd vendor-packages-64/svn vendor-packages/64/ ; \
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox User $(GNUCP) -rpd vendor-packages-32/libsvn vendor-packages/ ; \
f132a836c4e386b1af045dd8fe7106ae61b90bffAutomatic Updater $(GNUCP) -rpd vendor-packages-32/svn vendor-packages/ ; \
d642d3857129678797a01adee14fbd70335b05a9Mark Andrews fi ; )
609b8d08176469485edce25f3c2f50365bbd3819Mark Andrews
609b8d08176469485edce25f3c2f50365bbd3819Mark AndrewsASLR_MODE=$(ASLR_ENABLE)
5f33078b538b3d317917deb962bd057b2a888db1Tinderbox User
710bce1a85c96e85ca1a90471382055acd29d51fTinderbox Userbuild: $(BUILD_32_and_64)
8e5fce1f9ceba17dd7e3ff0eb287e1e999c14249Mark Andrews
269519eeb959d905ed125f96426e01d725c3b597Tinderbox Userinstall: $(INSTALL_32_and_64)
8711e5c73ca872d59810760af0332194cbdd619bAutomatic Updater
ce9cad6bb04869c5e94d9dc721032b25117f9210Automatic Updatertest: $(TEST_32_and_64)
91d187ce035f39073f0732ff2a401a45c3c955fbMark Andrews
91d187ce035f39073f0732ff2a401a45c3c955fbMark AndrewsBUILD_PKG_DEPENDENCIES = $(BUILD_TOOLS)
8f2c45a35dd8c40bcc9caba8f7d40ce64fc27bcdAutomatic Updater
8e5fce1f9ceba17dd7e3ff0eb287e1e999c14249Mark Andrewsinclude ../../make-rules/depend.mk
6a9d2121152c94cb9e35832126c3f2e4d18d81edTinderbox User
91d187ce035f39073f0732ff2a401a45c3c955fbMark Andrews