components/subversion/Makefile
changeset 5854 a31f17a6ce08
parent 5797 432ac76de3b0
child 6399 6205769a2639
equal deleted inserted replaced
5853:cf951496fb3a 5854:a31f17a6ce08
    20 #
    20 #
    21 
    21 
    22 #
    22 #
    23 # Copyright (c) 2011, 2016, Oracle and/or its affiliates. All rights reserved.
    23 # Copyright (c) 2011, 2016, Oracle and/or its affiliates. All rights reserved.
    24 #
    24 #
    25 BUILD_BITS= 64_and_32
    25 
       
    26 BUILD_BITS=64_and_32
    26 include ../../make-rules/shared-macros.mk
    27 include ../../make-rules/shared-macros.mk
    27 
    28 
    28 PATH=$(dir $(CC)):$(SPRO_VROOT)/bin:$(USRBINDIR):$(GNUBIN)
    29 PATH=$(dir $(CC)):$(SPRO_VROOT)/bin:$(USRBINDIR):$(GNUBIN)
    29 
    30 
    30 COMPONENT_NAME=		subversion
    31 COMPONENT_NAME=		subversion
    31 COMPONENT_VERSION=	1.7.20
    32 COMPONENT_VERSION=	1.9.3
    32 COMPONENT_PROJECT_URL=	http://subversion.apache.org/
    33 COMPONENT_PROJECT_URL=	http://subversion.apache.org/
    33 COMPONENT_ARCHIVE_HASH=	\
    34 COMPONENT_ARCHIVE_HASH=	\
    34 	sha256:2bdb01eb3f3df5c9370af98580e1892822d6e75f2077ce97fc81749f316ef25a
    35 	sha256:74cd21d2f8a2a54e4dbd2389fe1605a19dbda8ba88ffc4bb0edc9a66e143cc93
    35 COMPONENT_ARCHIVE_URL=	http://archive.apache.org/dist/subversion/$(COMPONENT_ARCHIVE)
    36 COMPONENT_ARCHIVE_URL=	http://archive.apache.org/dist/subversion/$(COMPONENT_ARCHIVE)
    36 COMPONENT_BUGDB=	utility/svn
    37 COMPONENT_BUGDB=	utility/svn
    37 
    38 
    38 TPNO=			22298
    39 TPNO=			27091
    39 
    40 
    40 include $(WS_MAKE_RULES)/common.mk
    41 include $(WS_MAKE_RULES)/common.mk
    41 
    42 
    42 PATCH_LEVEL = 0
    43 PATCH_LEVEL := 0
    43 PYMODS = client core delta fs ra repos wc
       
    44 PLMODS= Fs Core Wc Client Repos Ra Delta
       
    45 JAVA_ROOT = $(JAVA_HOME)
    44 JAVA_ROOT = $(JAVA_HOME)
    46 PERL_VERSION.32 = 5.12
       
    47 PERL_VERSION.64 = 5.16
       
    48 PERL.5.12 = /usr/perl5/5.12/bin/perl
       
    49 PERL.5.16 = /usr/perl5/5.16/bin/perl
       
    50 PERL_VERSION = $(PERL_VERSION.$(BITS))
       
    51 PERL = $(PERL.$(PERL_VERSION))
       
    52 GNUCP = $(GNUBIN)/cp
    45 GNUCP = $(GNUBIN)/cp
    53 
    46 
    54 # because we can't seem to get -norunpath to the java bindings build any
    47 # Because we can't seem to get -norunpath to the java bindings build any
    55 # other way.
    48 # other way.
    56 CXX += $(studio_NORUNPATH)
    49 CXX += $(studio_NORUNPATH)
    57 CFLAGS += -features=extensions
    50 CFLAGS += -features=extensions
       
    51 CFLAGS += -D_REENTRANT -DNDEBUG -DSOLARIS
    58 CXXFLAGS += -features=nestedaccess,tmplife,tmplrefstatic
    52 CXXFLAGS += -features=nestedaccess,tmplife,tmplrefstatic
    59 CXXFLAGS += -template=geninlinefuncs
    53 CXXFLAGS += -template=geninlinefuncs
    60 CXXFLAGS += $(CC_PIC)
    54 CXXFLAGS += $(CC_PIC)
    61 CXXFLAGS += -mt -D_REENTRANT -DNDEBUG -DSOLARIS
    55 CXXFLAGS += -D_REENTRANT -DNDEBUG -DSOLARIS
    62 CXXFLAGS += $(CPP_LARGEFILES)
    56 CXXFLAGS += $(CPP_LARGEFILES)
    63 CFLAGS += `pkg-config --cflags neon`
    57 CFLAGS += `pkg-config --cflags serf-1`
    64 CFLAGS += $(CPP_LARGEFILES)
    58 CFLAGS += $(CPP_LARGEFILES)
       
    59 
       
    60 PYMODS := client core delta fs ra repos wc
       
    61 PLMODS :=
       
    62 
       
    63 ifneq (,$(findstring m64,$(CXXFLAGS)))
       
    64   PLMODS = Fs Core Wc Client Repos Ra Delta
       
    65 endif
    65 
    66 
    66 COMPONENT_TEST_MASTER = \
    67 COMPONENT_TEST_MASTER = \
    67 	$(COMPONENT_TEST_RESULTS_DIR)/results-subversion.master
    68 	$(COMPONENT_TEST_RESULTS_DIR)/results-subversion.master
    68 
    69 
    69 COMPONENT_TEST_TRANSFORMS += \
    70 COMPONENT_TEST_TRANSFORMS += \
    70      '-e "/libtool/d"' \
    71      '-e "/libtool/d"' \
    71      '-e "/-m32/d"' \
    72      '-e "/-m32/d"' \
    72      '-e "/-m64/d"' \
    73      '-e "/-m64/d"' \
       
    74      '-e "/Entering/d"' \
       
    75      '-e "/Leaving/d"' \
       
    76      '-e "/At least/d"' \
    73      '-e "s^lib/$(MACH64)^lib/MACH64^g"'  \
    77      '-e "s^lib/$(MACH64)^lib/MACH64^g"'  \
    74      '-e "s/^make\[[0-9]\{1,\}\]/make/g"' \
    78      '-e "s/^make\[[0-9]\{1,\}\]/make/g"' \
    75      '-e "/ld: warning/d"' \
    79      '-e "/ld: warning/d"' \
    76      '-e "/warning/d"'
    80      '-e "/warning/d"'
    77 
    81 
    78 PERL_VERSION_12 = 5.12
    82 PERL_VERSION.32 = none
    79 PERL_VERSION_16 = 5.16
    83 PERL_VERSION.64 = 5.22
    80 PERL_ARCH_12_i386 = i86pc-solaris-64int
    84 PERL_VERSION=$(PERL_VERSION.$(BITS))
    81 PERL_ARCH_16_i386 = i86pc-solaris-64
    85 PERL.32 = none
    82 PERL_ARCH_12_sparc = sun4-solaris-64int
    86 PERL.64 = $(USRDIR)/perl5/$(PERL_VERSION)/bin/perl
    83 PERL_ARCH_16_sparc = sun4-solaris-64
    87 PERL=$(PERL.$(BITS))
    84 PERL_ARCH_12 = $(PERL_ARCH_12_$(MACH))
    88 
    85 PERL_ARCH_16 = $(PERL_ARCH_16_$(MACH))
    89 PERL_VERSION_22 = 5.22
       
    90 PERL_ARCH_22_i386 = i86pc-solaris-thread-multi-64
       
    91 PERL_ARCH_22_sparc = sun4-solaris-thread-multi-64
       
    92 PERL_ARCH_22 = $(PERL_ARCH_22_$(MACH))
       
    93 
    86 APR_VERSION = 1.5
    94 APR_VERSION = 1.5
    87 APR_UTIL_VERSION = 1.5
    95 APR_UTIL_VERSION = 1.5
       
    96 
       
    97 # Use the libraries just built plus the svn test harness library.
       
    98 LD_TEST_PATH_32 := \
       
    99   $(PROTOUSRLIBDIR)/svn:$(BUILD_DIR_32)/subversion/tests/.libs
       
   100 LD_TEST_PATH_64 := \
       
   101   $(PROTOUSRLIBDIR)/svn/$(MACH64):$(BUILD_DIR_64)/subversion/tests/.libs
    88 
   102 
    89 # Let's write some post-configure hacks
   103 # Let's write some post-configure hacks
    90 COMPONENT_POST_CONFIGURE_ACTION = \
   104 COMPONENT_POST_CONFIGURE_ACTION = \
    91     ( $(CLONEY) $(SOURCE_DIR) $(@D) ; \
   105     ( $(CLONEY) $(SOURCE_DIR) $(@D) ; \
    92     cd $(SOURCE_DIR) ; \
   106     cd $(SOURCE_DIR) ; \
    93 	$(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 )
   107     $(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 ; \
       
   108     cd $(BUILD_DIR_$(BITS)) ; \
       
   109     find . -type f -name "*.class" -exec rm -f {} \; > /dev/null 2>&1 ; \
       
   110     cd $(BUILD_DIR_$(BITS)) ; \
       
   111     $(GSED) -i 's/-mt//g' Makefile )
    94 
   112 
    95 COMPONENT_BUILD_TARGETS = all swig-py swig-pl javahl
   113 COMPONENT_BUILD_TARGETS = all swig-py swig-pl javahl
    96 COMPONENT_INSTALL_TARGETS = install install-lib \
   114 COMPONENT_INSTALL_TARGETS = install install-lib \
    97 			    install-swig-pl install-swig-py \
   115 			    install-swig-pl install-swig-py \
    98 			    install-javahl install-javahl-lib \
   116 			    install-javahl install-javahl-lib \
    99 			    install-bin install-docs
   117 			    install-bin install-docs
   100 
   118 
   101 $(BUILD_DIR)/$(MACH64)/.installed: COMPONENT_INSTALL_TARGETS += install-mods-shared
   119 $(BUILD_DIR)/$(MACH64)/.installed: COMPONENT_INSTALL_TARGETS += install-mods-shared
   102 
       
   103 CONFIGURE_ENV += PYTHON="$(PYTHON.$(BITS))"
       
   104 CONFIGURE_ENV += PYMODS="$(PYMODS)"
       
   105 CONFIGURE_ENV += PYTHONPATH="$(PYTHON_VENDOR_PACKAGES.$(BITS))"
       
   106 CONFIGURE_ENV += JAVA_ROOT="$(JAVA_ROOT)"
       
   107 CONFIGURE_ENV += PERL="$(PERL)"
       
   108 CONFIGURE_ENV += PLMODS="$(PLMODS)"
       
   109 CONFIGURE_ENV += LD_OPTIONS="$(LD_OPTIONS)"
       
   110 
   120 
   111 CONFIGURE_LIBDIR.32 = $(CONFIGURE_PREFIX)/lib/svn
   121 CONFIGURE_LIBDIR.32 = $(CONFIGURE_PREFIX)/lib/svn
   112 CONFIGURE_LIBDIR.64 = $(CONFIGURE_PREFIX)/lib/svn/$(MACH64)
   122 CONFIGURE_LIBDIR.64 = $(CONFIGURE_PREFIX)/lib/svn/$(MACH64)
   113 
   123 
   114 APR-CONFIG.32 = $(USRDIR)/apr/$(APR_VERSION)/bin/apr-1-config
   124 APR-CONFIG.32 = $(USRDIR)/apr/$(APR_VERSION)/bin/apr-1-config
   120 APR-CONFIG-RPATH.32 = $(USRDIR)/apr/$(APR_VERSION)/lib
   130 APR-CONFIG-RPATH.32 = $(USRDIR)/apr/$(APR_VERSION)/lib
   121 APR-CONFIG-RPATH.64 = $(USRDIR)/apr/$(APR_VERSION)/lib/$(MACH64)
   131 APR-CONFIG-RPATH.64 = $(USRDIR)/apr/$(APR_VERSION)/lib/$(MACH64)
   122 APU-CONFIG-RPATH.32 = $(USRDIR)/apr-util/$(APR_VERSION)/lib
   132 APU-CONFIG-RPATH.32 = $(USRDIR)/apr-util/$(APR_VERSION)/lib
   123 APU-CONFIG-RPATH.64 = $(USRDIR)/apr-util/$(APR_VERSION)/lib/$(MACH64)
   133 APU-CONFIG-RPATH.64 = $(USRDIR)/apr-util/$(APR_VERSION)/lib/$(MACH64)
   124 
   134 
       
   135 EXPAT_INCLUDE = $(USRINCDIR)
       
   136 EXPAT_LIBDIR = $(USRLIB.$(BITS))
       
   137 EXPAT_LIB = -lexpat
       
   138 
       
   139 APACHE_LIBEXECDIR=$(USRDIR)/apache2/2.4/libexec
       
   140 
   125 LDFLAGS += -R$(CONFIGURE_LIBDIR.$(BITS)) -R$(APR-CONFIG-RPATH.$(BITS)) \
   141 LDFLAGS += -R$(CONFIGURE_LIBDIR.$(BITS)) -R$(APR-CONFIG-RPATH.$(BITS)) \
   126 	   -R$(APU-CONFIG-RPATH.$(BITS))
   142 	   -R$(APU-CONFIG-RPATH.$(BITS))
   127 
   143 
       
   144 LD_OPTIONS += -R$(CONFIGURE_LIBDIR.$(BITS)) -R$(APR-CONFIG-RPATH.$(BITS)) \
       
   145 	      -R$(APU-CONFIG-RPATH.$(BITS))
       
   146 
       
   147 CONFIGURE_ENV += PYTHON="$(PYTHON.$(BITS))"
       
   148 CONFIGURE_ENV += PYMODS="$(PYMODS)"
       
   149 CONFIGURE_ENV += PYTHONPATH="$(PYTHON_VENDOR_PACKAGES.$(BITS))"
       
   150 CONFIGURE_ENV += JAVA_ROOT="$(JAVA_ROOT)"
       
   151 CONFIGURE_ENV += PERL="$(PERL)"
       
   152 CONFIGURE_ENV += ac_cv_path_PERL="$(PERL)"
       
   153 CONFIGURE_ENV += PLMODS="$(PLMODS)"
       
   154 CONFIGURE_ENV += LD_OPTIONS="$(LD_OPTIONS)"
       
   155 
   128 CONFIGURE_OPTIONS += --localstatedir=$(VARDIR)
   156 CONFIGURE_OPTIONS += --localstatedir=$(VARDIR)
   129 CONFIGURE_OPTIONS += --enable-shared 
   157 CONFIGURE_OPTIONS += --enable-shared
   130 CONFIGURE_OPTIONS += --disable-static
   158 CONFIGURE_OPTIONS += --disable-static
   131 CONFIGURE_OPTIONS += --disable-libtool-lock 
   159 CONFIGURE_OPTIONS += --disable-libtool-lock
   132 CONFIGURE_OPTIONS += --disable-neon-version-check
       
   133 CONFIGURE_OPTIONS += --disable-experimental-libtool
   160 CONFIGURE_OPTIONS += --disable-experimental-libtool
   134 CONFIGURE_OPTIONS += --with-apxs=$(APXS.$(BITS))
   161 CONFIGURE_OPTIONS += --with-apxs=$(APXS.$(BITS))
   135 CONFIGURE_OPTIONS += --with-ssl 
       
   136 CONFIGURE_OPTIONS += --with-zlib=$(CONFIGURE_PREFIX)
   162 CONFIGURE_OPTIONS += --with-zlib=$(CONFIGURE_PREFIX)
   137 CONFIGURE_OPTIONS += --with-jdk=$(JAVA_ROOT)
   163 CONFIGURE_OPTIONS += --with-jdk=$(JAVA_ROOT)
   138 CONFIGURE_OPTIONS += --with-apr=$(USRDIR)/apr/$(APR_VERSION)
   164 CONFIGURE_OPTIONS += --with-apr=$(USRDIR)/apr/$(APR_VERSION)
   139 CONFIGURE_OPTIONS += --with-apr-util=$(USRDIR)/apr-util/$(APR_UTIL_VERSION)
   165 CONFIGURE_OPTIONS += --with-apr-util=$(USRDIR)/apr-util/$(APR_UTIL_VERSION)
   140 CONFIGURE_OPTIONS += --enable-nls
   166 CONFIGURE_OPTIONS += --enable-nls
   141 CONFIGURE_OPTIONS += --disable-mod-activation
   167 CONFIGURE_OPTIONS += --disable-mod-activation
   142 CONFIGURE_OPTIONS += --enable-javahl
   168 CONFIGURE_OPTIONS += --enable-javahl
   143 CONFIGURE_OPTIONS += --with-swig
   169 CONFIGURE_OPTIONS += --with-swig
   144 CONFIGURE_OPTIONS += --with-neon=$(CONFIGURE_PREFIX)
   170 CONFIGURE_OPTIONS += --with-expat=$(EXPAT_INCLUDE):$(EXPAT_LIBDIR):$(EXPAT_LIB)
       
   171 CONFIGURE_OPTIONS += --with-serf=$(CONFIGURE_PREFIIX)
   145 CONFIGURE_OPTIONS += --with-apr=$(APR-CONFIG.$(BITS))
   172 CONFIGURE_OPTIONS += --with-apr=$(APR-CONFIG.$(BITS))
   146 CONFIGURE_OPTIONS += --with-apr-util=$(APU-CONFIG.$(BITS))
   173 CONFIGURE_OPTIONS += --with-apr-util=$(APU-CONFIG.$(BITS))
   147 CONFIGURE_OPTIONS += --with-gssapi=$(CONFIGURE_PREFIX)
   174 CONFIGURE_OPTIONS += --with-apache-libexecdir=$(APACHE_LIBEXECDIR)
       
   175 
       
   176 COMPONENT_BUILD_ENV += CFLAGS="$(CFLAGS)"
       
   177 COMPONENT_BUILD_ENV += CXXFLAGS="$(CXXFLAGS)"
       
   178 COMPONENT_BUILD_ENV += PYTHON="$(PYTHON.$(BITS))"
       
   179 COMPONENT_BUILD_ENV += PYMODS="$(PYMODS)"
       
   180 COMPONENT_BUILD_ENV += PYTHONPATH="$(PYTHON_VENDOR_PACKAGES.$(BITS))"
       
   181 COMPONENT_BUILD_ENV += JAVA_ROOT="$(JAVA_ROOT)"
       
   182 COMPONENT_BUILD_ENV += PERL="$(PERL)"
       
   183 COMPONENT_BUILD_ENV += ac_cv_path_PERL="$(PERL)"
       
   184 COMPONENT_BUILD_ENV += PLMODS="$(PLMODS)"
       
   185 
       
   186 COMPONENT_BUILD_ENV += LD_OPTIONS="$(LD_OPTIONS)"
       
   187 COMPONENT_BUILD_ENV += LDFLAGS="$(LDFLAGS)"
       
   188 
       
   189 COMPONENT_TEST_ENV += LD_LIBRARY_PATH_32="$(LD_TEST_PATH_32)"
       
   190 COMPONENT_TEST_ENV += LD_LIBRARY_PATH_64="$(LD_TEST_PATH_64)"
       
   191 
       
   192 PKG_MACROS += PERL_ARCH_22="$(PERL_ARCH_22)"
       
   193 PKG_MACROS += PYVER=$(PYTHON_VERSION)
   148 
   194 
   149 # Swig overwrites the 32-bit directory with 64-bit objects.
   195 # Swig overwrites the 32-bit directory with 64-bit objects.
   150 # So we work around that.
   196 # So we work around that.
   151 COMPONENT_POST_INSTALL_ACTION += \
   197 COMPONENT_POST_INSTALL_ACTION += \
   152     ( cd $(PROTOUSRLIBDIR)/python$(PYTHON_VERSION) ; \
   198     ( cd $(PROTOUSRLIBDIR)/python$(PYTHON_VERSION) ; \
   159 	    $(GNUCP) -rpd vendor-packages-64/svn vendor-packages/64/ ; \
   205 	    $(GNUCP) -rpd vendor-packages-64/svn vendor-packages/64/ ; \
   160 	    $(GNUCP) -rpd vendor-packages-32/libsvn vendor-packages/ ; \
   206 	    $(GNUCP) -rpd vendor-packages-32/libsvn vendor-packages/ ; \
   161 	    $(GNUCP) -rpd vendor-packages-32/svn vendor-packages/ ; \
   207 	    $(GNUCP) -rpd vendor-packages-32/svn vendor-packages/ ; \
   162 	fi ; )
   208 	fi ; )
   163 
   209 
   164 PKG_MACROS += PERL_ARCH_12="$(PERL_ARCH_12)"
       
   165 PKG_MACROS += PERL_ARCH_16="$(PERL_ARCH_16)"
       
   166 PKG_MACROS += PYVER=$(PYTHON_VERSION)
       
   167 
       
   168 REQUIRED_PACKAGES += database/sqlite-3
   210 REQUIRED_PACKAGES += database/sqlite-3
   169 REQUIRED_PACKAGES += developer/versioning/subversion
   211 REQUIRED_PACKAGES += developer/versioning/subversion
       
   212 REQUIRED_PACKAGES += developer/build/scons
       
   213 REQUIRED_PACKAGES += gnome/gnome-keyring
   170 REQUIRED_PACKAGES += library/apr-15
   214 REQUIRED_PACKAGES += library/apr-15
   171 REQUIRED_PACKAGES += library/apr-util-15
   215 REQUIRED_PACKAGES += library/apr-util-15
   172 REQUIRED_PACKAGES += library/expat
   216 REQUIRED_PACKAGES += library/expat
   173 REQUIRED_PACKAGES += library/neon
   217 REQUIRED_PACKAGES += library/glib2
       
   218 REQUIRED_PACKAGES += library/gnome/gnome-keyring
       
   219 REQUIRED_PACKAGES += library/libserf
   174 REQUIRED_PACKAGES += library/zlib
   220 REQUIRED_PACKAGES += library/zlib
       
   221 REQUIRED_PACKAGES += runtime/perl-522
   175 REQUIRED_PACKAGES += system/library/c++-runtime
   222 REQUIRED_PACKAGES += system/library/c++-runtime
   176 REQUIRED_PACKAGES += system/library/security/gss
   223 REQUIRED_PACKAGES += system/library/security/gss
   177 REQUIRED_PACKAGES += system/library/security/libsasl
   224 REQUIRED_PACKAGES += system/library/security/libsasl
   178 REQUIRED_PACKAGES += system/library/security/libsasl2
   225 REQUIRED_PACKAGES += system/library/security/libsasl2
       
   226