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 |