Makefile revision 4258
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Lowe#
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Lowe# CDDL HEADER START
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Lowe#
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Lowe# The contents of this file are subject to the terms of the
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Lowe# Common Development and Distribution License (the "License").
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Lowe# You may not use this file except in compliance with the License.
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Lowe#
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Lowe# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Lowe# or http://www.opensolaris.org/os/licensing.
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Lowe# See the License for the specific language governing permissions
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Lowe# and limitations under the License.
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Lowe#
5dbfd19ad5fcc2b779f40f80fa05c1bd28fd0b4eTheo Schlossnagle# When distributing Covered Code, include this CDDL HEADER in each
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Lowe# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Lowe# If applicable, add the following below this CDDL HEADER, with the
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Lowe# fields enclosed by brackets "[]" replaced with your own identifying
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Lowe# information: Portions Copyright [yyyy] [name of copyright owner]
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Lowe#
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Lowe# CDDL HEADER END
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Lowe#
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Lowe
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Lowe#
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Lowe# Copyright (c) 2011, 2015, Oracle and/or its affiliates. All rights reserved.
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Lowe#
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Lowe
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Loweinclude ../../make-rules/shared-macros.mk
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Lowe
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LowePATH=$(dir $(CC)):$(SPRO_VROOT)/bin:/usr/bin:/usr/gnu/bin
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Lowe
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweCOMPONENT_NAME= subversion
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweCOMPONENT_VERSION= 1.7.20
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweCOMPONENT_PROJECT_URL= http://subversion.apache.org/
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweCOMPONENT_SRC= $(COMPONENT_NAME)-$(COMPONENT_VERSION)
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweCOMPONENT_ARCHIVE= $(COMPONENT_SRC).tar.gz
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweCOMPONENT_ARCHIVE_HASH= \
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Lowe sha256:2bdb01eb3f3df5c9370af98580e1892822d6e75f2077ce97fc81749f316ef25a
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweCOMPONENT_ARCHIVE_URL= http://archive.apache.org/dist/subversion/$(COMPONENT_ARCHIVE)
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweCOMPONENT_BUGDB= utility/svn
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweTPNO= 22298
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Lowe
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Loweinclude $(WS_MAKE_RULES)/prep.mk
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Loweinclude $(WS_MAKE_RULES)/configure.mk
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Loweinclude $(WS_MAKE_RULES)/ips.mk
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Lowe
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LowePATCH_LEVEL = 0
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LowePYMODS = client core delta fs ra repos wc
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LowePLMODS= Fs Core Wc Client Repos Ra Delta
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweJAVA_ROOT = $(JAVA_HOME)
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LowePYTHON_VERSION = 2.7
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Lowe
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Lowe# because we can't seem to get -norunpath to the java bindings build any
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Lowe# other way.
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweCXX += $(studio_NORUNPATH)
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Lowe
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweCFLAGS += -features=extensions
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweCXXFLAGS += -features=nestedaccess,tmplife,tmplrefstatic
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweCXXFLAGS += -template=geninlinefuncs
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweCXXFLAGS += $(CC_PIC)
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweCXXFLAGS += -mt -D_REENTRANT -DNDEBUG -DSOLARIS
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweCFLAGS += `pkg-config --cflags neon`
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweCFLAGS += $(CPP_LARGEFILES)
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Lowe
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweAPR_VERSION = 1.3
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweAPR_UTIL_VERSION = 1.3
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Lowe
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Lowe# Let's write some post-configure hacks
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweCOMPONENT_POST_CONFIGURE_ACTION = \
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Lowe ( $(CLONEY) $(SOURCE_DIR) $(@D) ; \
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Lowe cd $(SOURCE_DIR) ; \
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Lowe $(PYTHON) ./build/transform_sql.py ./subversion/libsvn_fs_fs/rep-cache-db.sql < ./subversion/libsvn_fs_fs/rep-cache-db.sql > $(BUILD_DIR_32)/subversion/libsvn_fs_fs/rep-cache-db.h 2>&1 )
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Lowe
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweCOMPONENT_BUILD_TARGETS = all swig-py swig-pl javahl
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweCOMPONENT_INSTALL_TARGETS = install install-lib \
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Lowe install-swig-pl install-swig-py \
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Lowe install-javahl install-javahl-lib \
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Lowe install-mods-shared \
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Lowe install-bin install-docs
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Lowe
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweCONFIGURE_ENV += CC="$(CC)"
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweCONFIGURE_ENV += CXX="$(CXX)"
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweCONFIGURE_ENV += CFLAGS="$(CFLAGS)"
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweCONFIGURE_ENV += CXXFLAGS="$(CXXFLAGS)"
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweCONFIGURE_ENV += PKG_CONFIG_PATH="$(PKG_CONFIG_PATH)"
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweCONFIGURE_ENV += PYTHON="$(PYTHON)"
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweCONFIGURE_ENV += PYMODS="$(PYMODS)"
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweCONFIGURE_ENV += PYTHONPATH="$(PYTHON_VENDOR_PACKAGES)"
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweCONFIGURE_ENV += JAVA_ROOT="$(JAVA_ROOT)"
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweCONFIGURE_ENV += PERL="$(PERL)"
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweCONFIGURE_ENV += PLMODS="$(PLMODS)"
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Lowe
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweLIBSVNDIR.32 = $(CONFIGURE_PREFIX)/lib/svn
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweAPR-CONFIG.32 = /usr/apr/$(APR_VERSION)/bin/apr-1-config
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweAPU-CONFIG.32 = /usr/apr-util/$(APR_UTIL_VERSION)/bin/apu-1-config
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweAPXS.32 = /usr/apache2/2.2/bin/apxs
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweAPR-CONFIG-RPATH.32 = /usr/apr/$(APR_VERSION)/lib
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweAPU-CONFIG-RPATH.32 = /usr/apr-util/$(APR_VERSION)/lib
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweAPACHE_LIBEXECDIR.32 = `$(APXS.32) -q libexecdir`
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Lowe
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweLDFLAGS += -R$(LIBSVNDIR.$(BITS)) -R$(APR-CONFIG-RPATH.$(BITS)) \
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Lowe -R$(APU-CONFIG-RPATH.$(BITS))
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Lowe
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweCONFIGURE_ENV += LDFLAGS="$(LDFLAGS)"
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Lowe
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Lowe# Current version of subversion only supports ruby 1.8, not 1.9.
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Lowe# Until subversion is updated to 1.8.0 (ruby 1.9 support added)
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Lowe# or later, use ruby 1.8.
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweCONFIGURE_ENV += RUBY="$(RUBY.1.8)"
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Lowe
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Lowe# Let's make noise just because we have to override --libdir
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweCONFIGURE_OPTIONS = --prefix=$(CONFIGURE_PREFIX)
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweCONFIGURE_OPTIONS += --mandir=$(CONFIGURE_MANDIR)
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweCONFIGURE_OPTIONS += --bindir=$(CONFIGURE_BINDIR.$(BITS))
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweCONFIGURE_OPTIONS += --sbindir=$(CONFIGURE_SBINDIR.$(BITS))
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweCONFIGURE_OPTIONS += --libdir=$(LIBSVNDIR.$(BITS))
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweCONFIGURE_OPTIONS += --localstatedir=/var
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweCONFIGURE_OPTIONS += --enable-shared
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweCONFIGURE_OPTIONS += --disable-static
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweCONFIGURE_OPTIONS += --disable-libtool-lock
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweCONFIGURE_OPTIONS += --disable-neon-version-check
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweCONFIGURE_OPTIONS += --disable-experimental-libtool
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweCONFIGURE_OPTIONS += --with-apxs=$(APXS.$(BITS))
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweCONFIGURE_OPTIONS += --with-ssl
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweCONFIGURE_OPTIONS += --with-zlib=$(CONFIGURE_PREFIX)
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweCONFIGURE_OPTIONS += --with-jdk=$(JAVA_ROOT)
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweCONFIGURE_OPTIONS += --with-apr=/usr/apr/$(APR_VERSION)
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweCONFIGURE_OPTIONS += --with-apr-util=/usr/apr-util/$(APR_UTIL_VERSION)
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweCONFIGURE_OPTIONS += --enable-nls
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweCONFIGURE_OPTIONS += --disable-mod-activation
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweCONFIGURE_OPTIONS += --enable-javahl
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweCONFIGURE_OPTIONS += --with-swig
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweCONFIGURE_OPTIONS += --with-neon=$(CONFIGURE_PREFIX)
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweCONFIGURE_OPTIONS += --with-gssapi=$(CONFIGURE_PREFIX)
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Lowe
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LowePKG_MACROS += PYVER=$(PYTHON_VERSION)
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Lowe
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Lowe# common targets - we only build 32-bit subversion
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Lowebuild: $(BUILD_32)
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Lowe
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Loweinstall: $(INSTALL_32)
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Lowe
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Lowetest: $(TEST_32)
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Lowe
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Lowe
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Lowe
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweREQUIRED_PACKAGES += database/sqlite-3
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweREQUIRED_PACKAGES += developer/versioning/subversion
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweREQUIRED_PACKAGES += library/apr-13
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweREQUIRED_PACKAGES += library/apr-util-13
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweREQUIRED_PACKAGES += library/expat
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweREQUIRED_PACKAGES += library/neon
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweREQUIRED_PACKAGES += library/zlib
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweREQUIRED_PACKAGES += system/library
296749875bd503e7a14e25b4c57d3142cb496df1Joshua M. ClulowREQUIRED_PACKAGES += system/library/c++-runtime
c10c16dec587a0662068f6e2991c29ed3a9db943Richard LoweREQUIRED_PACKAGES += system/library/security/gss
c10c16dec587a0662068f6e2991c29ed3a9db943Richard Lowe