ffmpeg-6: fix COMPONENT_REVISION
[oi-userland.git] / components / developer / subversion / Makefile
blob720099938685be34e12fc2d159c897ccb9d46f37
2 # CDDL HEADER START
4 # The contents of this file are subject to the terms of the
5 # Common Development and Distribution License (the "License").
6 # You may not use this file except in compliance with the License.
8 # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9 # or http://www.opensolaris.org/os/licensing.
10 # See the License for the specific language governing permissions
11 # and limitations under the License.
13 # When distributing Covered Code, include this CDDL HEADER in each
14 # file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15 # If applicable, add the following below this CDDL HEADER, with the
16 # fields enclosed by brackets "[]" replaced with your own identifying
17 # information: Portions Copyright [yyyy] [name of copyright owner]
19 # CDDL HEADER END
23 # Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
24 # Copyright (c) 2023 Klaus Ziegler
27 include ../../../make-rules/shared-macros.mk
29 PATH=$(dir $(CC)):/usr/bin:/usr/gnu/bin
31 COMPONENT_NAME= subversion
32 COMPONENT_VERSION= 1.14.2
33 COMPONENT_REVISION = 3
34 COMPONENT_PROJECT_URL= https://subversion.apache.org/
35 COMPONENT_SRC= $(COMPONENT_NAME)-$(COMPONENT_VERSION)
36 COMPONENT_ARCHIVE= $(COMPONENT_SRC).tar.bz2
37 COMPONENT_ARCHIVE_HASH= sha256:c9130e8d0b75728a66f0e7038fc77052e671830d785b5616aad53b4810d3cc28
38 COMPONENT_ARCHIVE_URL= https://apache.org/dist/subversion/$(COMPONENT_ARCHIVE)
39 COMPONENT_LICENSE= Apache v2.0
41 include $(WS_MAKE_RULES)/common.mk
43 COMPONENT_PREP_ACTION += $(GSED) -i -e 's|@PYTHON_LIB@|'"$(PYTHON_LIB)"'|' $(@D)/Makefile.in ;
45 PYMODS = client core delta fs ra repos wc
46 PLMODS= Fs Core Wc Client Repos Ra Delta
48 CXXFLAGS += $(CC_PIC)
49 CXXFLAGS += $(CPP_LARGEFILES)
50 CFLAGS += -D__EXTENSIONS__
51 CFLAGS += `pkg-config --cflags neon`
52 CFLAGS += $(CPP_LARGEFILES)
54 # Let's write some post-configure hacks
55 COMPONENT_POST_CONFIGURE_ACTION = \
56 ( $(CLONEY) $(SOURCE_DIR) $(@D) ; \
57 cd $(SOURCE_DIR) ; \
58 $(PYTHON) ./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 )
60 COMPONENT_BUILD_TARGETS = all swig-pl swig-py javahl
61 COMPONENT_INSTALL_TARGETS = install install-lib \
62 install-swig-pl install-swig-py \
63 install-javahl install-javahl-lib \
64 install-mods-shared \
65 install-bin install-docs
67 CONFIGURE_ENV += PYTHON="$(PYTHON)"
68 CONFIGURE_ENV += PYMODS="$(PYMODS)"
69 CONFIGURE_ENV += PYTHONPATH="$(PYTHON_VENDOR_PACKAGES)"
70 CONFIGURE_ENV += JAVA_ROOT="$(JAVA_HOME)"
71 CONFIGURE_ENV += PERL="$(PERL)"
72 CONFIGURE_ENV += PLMODS="$(PLMODS)"
73 CONFIGURE_ENV += LD_OPTIONS="$(LD_OPTIONS)"
75 LIBSVNDIR = $(CONFIGURE_PREFIX)/lib/$(MACH64)
77 APR-CONFIG = /usr/apr/bin/apr-1-config
78 APU-CONFIG = /usr/apr-util/bin/apu-1-config
79 APXS = /usr/apache2/2.4/bin/apxs
80 APR-CONFIG-RPATH = /usr/apr/lib/$(MACH64)
81 APU-CONFIG-RPATH = /usr/apr-util/lib/$(MACH64)
82 APACHE_LIBEXECDIR = `$(APXS) -q libexecdir`
84 LDFLAGS += -R$(LIBSVNDIR) -R$(APR-CONFIG-RPATH) \
85 -R$(APU-CONFIG-RPATH)
87 CONFIGURE_ENV += RUBY="$(RUBY.1.9)"
89 # Let's make noise just because we have to override --libdir
90 CONFIGURE_OPTIONS = --prefix=$(CONFIGURE_PREFIX)
91 CONFIGURE_OPTIONS += --mandir=$(CONFIGURE_MANDIR)
92 CONFIGURE_OPTIONS += --libdir=$(LIBSVNDIR)
93 CONFIGURE_OPTIONS += --localstatedir=/var
94 CONFIGURE_OPTIONS += --enable-shared
95 CONFIGURE_OPTIONS += --disable-libtool-lock
96 CONFIGURE_OPTIONS += --disable-experimental-libtool
97 CONFIGURE_OPTIONS += --with-zlib=$(CONFIGURE_PREFIX)
98 CONFIGURE_OPTIONS += --with-jdk=$(JAVA_HOME)
99 CONFIGURE_OPTIONS += --with-apr=/usr/apr
100 CONFIGURE_OPTIONS += --with-apr-util=/usr/apr-util
101 CONFIGURE_OPTIONS += --enable-nls
102 CONFIGURE_OPTIONS += --disable-mod-activation
103 CONFIGURE_OPTIONS += --enable-javahl
104 CONFIGURE_OPTIONS += --with-swig
105 CONFIGURE_OPTIONS += --with-utf8proc=internal
106 CONFIGURE_OPTIONS += --with-apr=$(APR-CONFIG)
107 CONFIGURE_OPTIONS += --with-apr-util=$(APU-CONFIG)
108 CONFIGURE_OPTIONS += --with-apxs=$(APXS)
109 CONFIGURE_OPTIONS += --with-apache-libexecdir=$(APACHE_LIBEXECDIR)
110 # libgnome-keyring was obsoleted upstream, disable support for storing svn
111 # passwords in gnome-keyring until svn is updated to use libsecret instead
112 CONFIGURE_OPTIONS += --without-gnome-keyring
114 # Build and install should be able to find tools like chmod, touch, or true
115 COMPONENT_BUILD_ENV += PATH=$(PATH)
116 COMPONENT_INSTALL_ENV += PATH=$(PATH)
118 # Rename Python libraries to follow Python SOABI naming scheme
119 COMPONENT_POST_INSTALL_ACTION += \
120 EXT_SUFFIX=$(shell $(PYTHON) -c "import sysconfig; print(sysconfig.get_config_var('EXT_SUFFIX'))") ; \
121 for i in $(PROTO_DIR)$(PYTHON_LIB)/libsvn/*.so ; do \
122 [[ -f $$i ]] || continue ; \
123 [[ $${i%%$$EXT_SUFFIX} == $$i ]] || continue ; \
124 t=$${i%%.so}$$EXT_SUFFIX ; \
125 $(MV) $$i $$t ; \
126 done ;
127 # Make sure built perl libraries are writable so we can modify them later
128 COMPONENT_POST_INSTALL_ACTION += \
129 find $(PROTOUSRDIR)/perl5/vendor_perl/$(PERL_VERSION)/$(PERL_ARCH) \
130 -name *.so -exec chmod +w {} \; -print ;
132 COMPONENT_TEST_TRANSFORMS += \
133 '-e "/libtool/d"' \
134 '-e "/-m64/d"' \
135 '-e "/Entering/d"' \
136 '-e "/Leaving/d"' \
137 '-e "/At least/d"' \
138 '-e "s^lib/$(MACH64)^lib/MACH64^g"' \
139 '-e "s/^make\[[0-9]\{1,\}\]/make/g"' \
140 '-e "/ld: warning/d"' \
141 '-e "/warning/d"' \
142 '-e "/exists from a previous run/d"' \
143 '-e "s/\.//g"' \
144 '-e "/^Python version.*/d"' \
145 '-e "/^make:/d"'
147 # Master test results are different between amd64 and SPARCV9.
148 COMPONENT_TEST_MASTER = \
149 $(COMPONENT_TEST_RESULTS_DIR)/results-$(MACH64).master
151 # SPARC needs math library
152 ifeq ($(strip $(MACH)),sparc)
153 REQUIRED_PACKAGES += system/library/math
154 endif
156 # Manually added build dependencies
157 PYTHON_REQUIRED_PACKAGES += library/python/py3c
159 # Auto-generated dependencies
160 PERL_REQUIRED_PACKAGES += runtime/perl
161 PYTHON_REQUIRED_PACKAGES += runtime/python
162 REQUIRED_PACKAGES += $(GCC_RUNTIME_PKG)
163 REQUIRED_PACKAGES += $(GXX_RUNTIME_PKG)
164 REQUIRED_PACKAGES += database/sqlite-3
165 REQUIRED_PACKAGES += library/apr
166 REQUIRED_PACKAGES += library/apr-util
167 REQUIRED_PACKAGES += library/expat
168 REQUIRED_PACKAGES += library/libserf
169 REQUIRED_PACKAGES += library/lz4
170 REQUIRED_PACKAGES += library/magic
171 REQUIRED_PACKAGES += library/zlib
172 REQUIRED_PACKAGES += system/library