From 5229cd08bf55a8db5275c931bbcf6b455a0d12bf Mon Sep 17 00:00:00 2001 From: hgy59 Date: Tue, 31 May 2022 08:01:35 +0200 Subject: [PATCH 01/14] subversion: initial package --- cross/apr-util/Makefile | 34 +++++++++++ cross/apr-util/PLIST | 3 + cross/apr-util/digests | 3 + cross/apr/Makefile | 29 ++++++++++ cross/apr/PLIST | 3 + cross/apr/digests | 3 + cross/apr/patches/001-gen_test_char.patch | 31 ++++++++++ .../002-apr-1.7.0-CVE-2021-35940.patch | 53 ++++++++++++++++++ cross/serf/Makefile | 37 ++++++++++++ cross/serf/PLIST | 3 + cross/serf/digests | 3 + cross/subversion/Makefile | 31 ++++++++++ cross/subversion/PLIST | 51 +++++++++++++++++ cross/subversion/digests | 3 + spk/subverison/Makefile | 31 ++++++++++ spk/subverison/src/subversion.png | Bin 0 -> 22684 bytes 16 files changed, 318 insertions(+) create mode 100644 cross/apr-util/Makefile create mode 100644 cross/apr-util/PLIST create mode 100644 cross/apr-util/digests create mode 100644 cross/apr/Makefile create mode 100644 cross/apr/PLIST create mode 100644 cross/apr/digests create mode 100644 cross/apr/patches/001-gen_test_char.patch create mode 100644 cross/apr/patches/002-apr-1.7.0-CVE-2021-35940.patch create mode 100644 cross/serf/Makefile create mode 100644 cross/serf/PLIST create mode 100644 cross/serf/digests create mode 100644 cross/subversion/Makefile create mode 100644 cross/subversion/PLIST create mode 100644 cross/subversion/digests create mode 100644 spk/subverison/Makefile create mode 100644 spk/subverison/src/subversion.png diff --git a/cross/apr-util/Makefile b/cross/apr-util/Makefile new file mode 100644 index 00000000000..32c30b6fd94 --- /dev/null +++ b/cross/apr-util/Makefile @@ -0,0 +1,34 @@ +PKG_NAME = apr-util +PKG_VERS = 1.6.1 +PKG_EXT = tar.bz2 +PKG_DIST_NAME = $(PKG_NAME)-$(PKG_VERS).$(PKG_EXT) +PKG_DIST_SITE = https://archive.apache.org/dist/apr +PKG_DIR = $(PKG_NAME)-$(PKG_VERS) + +DEPENDS = cross/apr cross/libexpat + +HOMEPAGE = https://apr.apache.org +COMMENT = APR-util provides a number of helpful abstractions on top of APR. +LICENSE = Apache 2.0 + +POST_CONFIGURE_TARGET = apr-util_post_configure +POST_INSTALL_TARGET = apr-util_post_install + +GNU_CONFIGURE = 1 +CONFIGURE_ARGS = --enable-layout=GNU +CONFIGURE_ARGS += --with-apr=$(STAGING_INSTALL_PREFIX)/bin/apr-1-config +ADDITIONAL_CFLAGS = -I$(STAGING_INSTALL_PREFIX)/include/apache2 + +include ../../mk/spksrc.cross-cc.mk + +.PHONY: apr-util_post_configure +apr-util_post_configure: + cp $(STAGING_INSTALL_PREFIX)/share/apache2/build/apr_rules.mk $(WORK_DIR)/$(PKG_DIR)/build/rules.mk + sed -e 's#^apr_builddir=\(.*\)$$#apr_builddir=$(INSTALL_DIR)\1#' \ + -e 's#^apr_builders=\(.*\)$$#apr_builders=$(INSTALL_DIR)\1#' \ + -e 's#^top_builddir=\(.*\)$$#top_builddir=$(INSTALL_DIR)\1#' \ + -i $(WORK_DIR)/$(PKG_DIR)/build/rules.mk + +.PHONY: apr-util_post_install +apr-util_post_install: + sed -i -e 's|^prefix="$(INSTALL_PREFIX)"$$|prefix="$(STAGING_INSTALL_PREFIX)"|' $(STAGING_INSTALL_PREFIX)/bin/apr-1-config diff --git a/cross/apr-util/PLIST b/cross/apr-util/PLIST new file mode 100644 index 00000000000..7100bd80ef8 --- /dev/null +++ b/cross/apr-util/PLIST @@ -0,0 +1,3 @@ +lnk:lib/libaprutil.so +lnk:lib/libaprutil.so.0 +lib:lib/libaprutil.so.0.6.1 diff --git a/cross/apr-util/digests b/cross/apr-util/digests new file mode 100644 index 00000000000..d6d930b36cb --- /dev/null +++ b/cross/apr-util/digests @@ -0,0 +1,3 @@ +apr-util-1.6.1.tar.bz2 SHA1 4cc73bc36ca697419f555476f2fc1c63df6069f4 +apr-util-1.6.1.tar.bz2 SHA256 d3e12f7b6ad12687572a3a39475545a072608f4ba03a6ce8a3778f607dd0035b +apr-util-1.6.1.tar.bz2 MD5 8ff5dc36fa39a2a3db1df196d3ed6086 diff --git a/cross/apr/Makefile b/cross/apr/Makefile new file mode 100644 index 00000000000..d6baf5574ed --- /dev/null +++ b/cross/apr/Makefile @@ -0,0 +1,29 @@ +PKG_NAME = apr +PKG_VERS = 1.7.0 +PKG_EXT = tar.bz2 +PKG_DIST_NAME = $(PKG_NAME)-$(PKG_VERS).$(PKG_EXT) +PKG_DIST_SITE = https://archive.apache.org/dist/apr +PKG_DIR = $(PKG_NAME)-$(PKG_VERS) + +DEPENDS = cross/libuuid + +HOMEPAGE = https://apr.apache.org +COMMENT = The mission of the Apache Portable Runtime (APR) project is to create and maintain software libraries that provide a predictable and consistent interface to underlying platform-specific implementations. +LICENSE = Apache 2.0 + +GNU_CONFIGURE = 1 +CONFIGURE_ARGS = --disable-static +CONFIGURE_ARGS += --enable-layout=GNU +CONFIGURE_ARGS += ac_cv_file__dev_zero=yes +CONFIGURE_ARGS += ac_cv_func_setpgrp_void=yes +CONFIGURE_ARGS += apr_cv_process_shared_works=no +CONFIGURE_ARGS += apr_cv_tcp_nodelay_with_cork=yes +CONFIGURE_ARGS += ac_cv_sizeof_struct_iovec=8 + +POST_INSTALL_TARGET = apr_post_install + +include ../../mk/spksrc.cross-cc.mk + +.PHONY: apr_post_install +apr_post_install: + sed -i -e 's|^prefix="$(INSTALL_PREFIX)"$$|prefix="$(STAGING_INSTALL_PREFIX)"|' $(STAGING_INSTALL_PREFIX)/bin/apr-1-config diff --git a/cross/apr/PLIST b/cross/apr/PLIST new file mode 100644 index 00000000000..c1000710050 --- /dev/null +++ b/cross/apr/PLIST @@ -0,0 +1,3 @@ +lnk:lib/libapr.so +lnk:lib/libapr.so.0 +lib:lib/libapr.so.0.7.0 diff --git a/cross/apr/digests b/cross/apr/digests new file mode 100644 index 00000000000..62e1c277fc8 --- /dev/null +++ b/cross/apr/digests @@ -0,0 +1,3 @@ +apr-1.7.0.tar.bz2 SHA1 58ebc7b35efaebb211c0b9df594ab16c4d874234 +apr-1.7.0.tar.bz2 SHA256 e2e148f0b2e99b8e5c6caa09f6d4fb4dd3e83f744aa72a952f94f5a14436f7ea +apr-1.7.0.tar.bz2 MD5 7a14a83d664e87599ea25ff4432e48a7 diff --git a/cross/apr/patches/001-gen_test_char.patch b/cross/apr/patches/001-gen_test_char.patch new file mode 100644 index 00000000000..524e8bf157c --- /dev/null +++ b/cross/apr/patches/001-gen_test_char.patch @@ -0,0 +1,31 @@ +(c) Hongxu Jia +http://lists.openembedded.org/pipermail/openembedded-core/2014-June/093158.html +--- Makefile.in.orig 2015-05-08 13:05:58.099779221 +0200 ++++ Makefile.in 2015-05-08 17:28:02.183152158 +0200 +@@ -31,6 +31,7 @@ + APR_CONFIG = apr-$(APR_MAJOR_VERSION)-config + INSTALL = @INSTALL@ + INSTALL_DATA = @INSTALL_DATA@ ++BUILDCC = gcc + + # + # Rules for building specific targets, starting with 'all' for +@@ -46,7 +47,6 @@ + + CLEAN_TARGETS = apr-config.out apr.exp exports.c export_vars.c .make.dirs \ + build/apr_rules.out tools/gen_test_char@EXEEXT@ \ +- tools/gen_test_char.o tools/gen_test_char.lo \ + include/private/apr_escape_test_char.h + DISTCLEAN_TARGETS = config.cache config.log config.status \ + include/apr.h include/arch/unix/apr_private.h \ +@@ -134,8 +134,8 @@ + $(APR_MKDIR) tools + $(LT_COMPILE) + +-tools/gen_test_char@EXEEXT@: $(OBJECTS_gen_test_char) +- $(LINK_PROG) $(OBJECTS_gen_test_char) $(ALL_LIBS) ++tools/gen_test_char@EXEEXT@: tools/gen_test_char.c ++ $(BUILDCC) $(CFLAGS_FOR_BUILD) $< -o $@ + + include/private/apr_escape_test_char.h: tools/gen_test_char@EXEEXT@ + $(APR_MKDIR) include/private diff --git a/cross/apr/patches/002-apr-1.7.0-CVE-2021-35940.patch b/cross/apr/patches/002-apr-1.7.0-CVE-2021-35940.patch new file mode 100644 index 00000000000..4d4a45be931 --- /dev/null +++ b/cross/apr/patches/002-apr-1.7.0-CVE-2021-35940.patch @@ -0,0 +1,53 @@ + +SECURITY: CVE-2021-35940 (cve.mitre.org) + +Restore fix for CVE-2017-12613 which was missing in 1.7.x branch, though +was addressed in 1.6.x in 1.6.3 and later via r1807976. + +The fix was merged back to 1.7.x in r1891198. + +Since this was a regression in 1.7.0, a new CVE name has been assigned +to track this, CVE-2021-35940. + +Thanks to Iveta Cesalova for reporting this issue. + +https://svn.apache.org/viewvc?view=revision&revision=1891198 + +Index: time/unix/time.c +=================================================================== +--- time/unix/time.c (revision 1891197) ++++ time/unix/time.c (revision 1891198) +@@ -142,6 +142,9 @@ + static const int dayoffset[12] = + {306, 337, 0, 31, 61, 92, 122, 153, 184, 214, 245, 275}; + ++ if (xt->tm_mon < 0 || xt->tm_mon >= 12) ++ return APR_EBADDATE; ++ + /* shift new year to 1st March in order to make leap year calc easy */ + + if (xt->tm_mon < 2) +Index: time/win32/time.c +=================================================================== +--- time/win32/time.c (revision 1891197) ++++ time/win32/time.c (revision 1891198) +@@ -54,6 +54,9 @@ + static const int dayoffset[12] = + {0, 31, 59, 90, 120, 151, 181, 212, 243, 273, 304, 334}; + ++ if (tm->wMonth < 1 || tm->wMonth > 12) ++ return APR_EBADDATE; ++ + /* Note; the caller is responsible for filling in detailed tm_usec, + * tm_gmtoff and tm_isdst data when applicable. + */ +@@ -228,6 +231,9 @@ + static const int dayoffset[12] = + {306, 337, 0, 31, 61, 92, 122, 153, 184, 214, 245, 275}; + ++ if (xt->tm_mon < 0 || xt->tm_mon >= 12) ++ return APR_EBADDATE; ++ + /* shift new year to 1st March in order to make leap year calc easy */ + + if (xt->tm_mon < 2) diff --git a/cross/serf/Makefile b/cross/serf/Makefile new file mode 100644 index 00000000000..a1584cd9035 --- /dev/null +++ b/cross/serf/Makefile @@ -0,0 +1,37 @@ +PKG_NAME = serf +PKG_VERS = 1.3.9 +PKG_EXT = tar.bz2 +PKG_DIST_NAME = $(PKG_NAME)-$(PKG_VERS).$(PKG_EXT) +PKG_DIST_SITE = https://archive.apache.org/dist/serf +PKG_DIR = $(PKG_NAME)-$(PKG_VERS) + +DEPENDS = cross/apr cross/apr-util cross/openssl + +HOMEPAGE = https://serf.apache.org +COMMENT = The serf library is a high performance C-based HTTP client library built upon the Apache Portable Runtime (APR) library. Serf is the default client library of Apache Subversion and Apache OpenOffice. +LICENSE = Apache 2.0 + +#GNU_CONFIGURE = 1 +CONFIGURE_TARGET = nop +COMPILE_TARGET = serf_compile +INSTALL_TARGET = serf_install + +CONFIGURE_ARGS = --with-apr=$(STAGING_INSTALL_PREFIX) +CONFIGURE_ARGS += --with-apr-util=$(STAGING_INSTALL_PREFIX) + +# scons APR=/path/to/apr APU=/path/to/apu OPENSSL=/openssl/base PREFIX=/path/to/prefix + +include ../../mk/spksrc.cross-cc.mk + +#.PHONY: serf_post_install +#serf_post_install: +# sed -i -e 's|^prefix="$(INSTALL_PREFIX)"$$|prefix="$(STAGING_INSTALL_PREFIX)"|' $(STAGING_INSTALL_PREFIX)/bin/serf-config + +.PHONY: serf_compile +serf_compile: + cd $(WORK_DIR)/$(PKG_DIR) && scons APR=$(STAGING_INSTALL_PREFIX) APU=$(STAGING_INSTALL_PREFIX) OPENSSL=$(STAGING_INSTALL_PREFIX) PREFIX=$(INSTALL_PREFIX) LIBDIR=$(STAGING_INSTALL_PREFIX)/lib + +.PHONY: serf_install +serf_install: + #cd $(WORK_DIR)/$(PKG_DIR) && scons DESTDIR=$(STAGING_INSTALL_PREFIX) PREFIX=$(INSTALL_PREFIX) install + cd $(WORK_DIR)/$(PKG_DIR) && scons PREFIX=$(STAGING_INSTALL_PREFIX) install diff --git a/cross/serf/PLIST b/cross/serf/PLIST new file mode 100644 index 00000000000..345b2d9570d --- /dev/null +++ b/cross/serf/PLIST @@ -0,0 +1,3 @@ +lnk:lib/libserf-1.so +lnk:lib/libserf-1.so.1 +lib:lib/libserf-1.so.1.3.0 diff --git a/cross/serf/digests b/cross/serf/digests new file mode 100644 index 00000000000..abf82cfd524 --- /dev/null +++ b/cross/serf/digests @@ -0,0 +1,3 @@ +serf-1.3.9.tar.bz2 SHA1 26015c63e3bbb108c1689bf2090e4c26351db674 +serf-1.3.9.tar.bz2 SHA256 549c2d21c577a8a9c0450facb5cca809f26591f048e466552240947bdf7a87cc +serf-1.3.9.tar.bz2 MD5 370a6340ff20366ab088012cd13f2b57 diff --git a/cross/subversion/Makefile b/cross/subversion/Makefile new file mode 100644 index 00000000000..ccfb4d81328 --- /dev/null +++ b/cross/subversion/Makefile @@ -0,0 +1,31 @@ +PKG_NAME = subversion +PKG_VERS = 1.14.2 +PKG_EXT = tar.bz2 +PKG_DIST_NAME = $(PKG_NAME)-$(PKG_VERS).$(PKG_EXT) +PKG_DIST_SITE = https://dlcdn.apache.org/subversion +PKG_DIR = $(PKG_NAME)-$(PKG_VERS) + +# http://yylam.blogspot.com/2016/01/cross-compile-subversion-server.html + +DEPENDS = cross/apr +DEPENDS += cross/apr-util +#DEPENDS += cross/serf +DEPENDS += cross/sqlite +DEPENDS += cross/cyrus-sasl +DEPENDS += cross/lz4 +DEPENDS += cross/file + +HOMEPAGE = https://subversion.apache.org/ +COMMENT = Subversion is an open source version control system. +LICENSE = Apache 2.0 + +GNU_CONFIGURE = 1 + +CONFIGURE_ARGS = --disable-static +CONFIGURE_ARGS += --with-apr=$(STAGING_INSTALL_PREFIX) +CONFIGURE_ARGS += --with-apr-util=$(STAGING_INSTALL_PREFIX) +CONFIGURE_ARGS += --with-zlib=$(STAGING_INSTALL_PREFIX) +CONFIGURE_ARGS += --without-berkeley-db +CONFIGURE_ARGS += --with-utf8proc=internal + +include ../../mk/spksrc.cross-cc.mk diff --git a/cross/subversion/PLIST b/cross/subversion/PLIST new file mode 100644 index 00000000000..a016b06be6d --- /dev/null +++ b/cross/subversion/PLIST @@ -0,0 +1,51 @@ +bin:bin/svn +bin:bin/svnadmin +bin:bin/svnbench +bin:bin/svndumpfilter +bin:bin/svnfsfs +bin:bin/svnlook +bin:bin/svnmucc +bin:bin/svnrdump +bin:bin/svnserve +bin:bin/svnsync +bin:bin/svnversion +lnk:lib/libsvn_client-1.so +lnk:lib/libsvn_client-1.so.0 +lib:lib/libsvn_client-1.so.0.0.0 +lnk:lib/libsvn_delta-1.so +lnk:lib/libsvn_delta-1.so.0 +lib:lib/libsvn_delta-1.so.0.0.0 +lnk:lib/libsvn_diff-1.so +lnk:lib/libsvn_diff-1.so.0 +lib:lib/libsvn_diff-1.so.0.0.0 +lnk:lib/libsvn_fs-1.so +lnk:lib/libsvn_fs-1.so.0 +lib:lib/libsvn_fs-1.so.0.0.0 +lnk:lib/libsvn_fs_fs-1.so +lnk:lib/libsvn_fs_fs-1.so.0 +lib:lib/libsvn_fs_fs-1.so.0.0.0 +lnk:lib/libsvn_fs_util-1.so +lnk:lib/libsvn_fs_util-1.so.0 +lib:lib/libsvn_fs_util-1.so.0.0.0 +lnk:lib/libsvn_fs_x-1.so +lnk:lib/libsvn_fs_x-1.so.0 +lib:lib/libsvn_fs_x-1.so.0.0.0 +lnk:lib/libsvn_ra-1.so +lnk:lib/libsvn_ra-1.so.0 +lib:lib/libsvn_ra-1.so.0.0.0 +lnk:lib/libsvn_ra_local-1.so +lnk:lib/libsvn_ra_local-1.so.0 +lib:lib/libsvn_ra_local-1.so.0.0.0 +lnk:lib/libsvn_ra_svn-1.so +lnk:lib/libsvn_ra_svn-1.so.0 +lib:lib/libsvn_ra_svn-1.so.0.0.0 +lnk:lib/libsvn_repos-1.so +lnk:lib/libsvn_repos-1.so.0 +lib:lib/libsvn_repos-1.so.0.0.0 +lnk:lib/libsvn_subr-1.so +lnk:lib/libsvn_subr-1.so.0 +lib:lib/libsvn_subr-1.so.0.0.0 +lnk:lib/libsvn_wc-1.so +lnk:lib/libsvn_wc-1.so.0 +lib:lib/libsvn_wc-1.so.0.0.0 +rsc:share/locale/ diff --git a/cross/subversion/digests b/cross/subversion/digests new file mode 100644 index 00000000000..a91ddf56990 --- /dev/null +++ b/cross/subversion/digests @@ -0,0 +1,3 @@ +subversion-1.14.2.tar.bz2 SHA1 24c0fb688f475d17abd5471b6ee354414825bf04 +subversion-1.14.2.tar.bz2 SHA256 c9130e8d0b75728a66f0e7038fc77052e671830d785b5616aad53b4810d3cc28 +subversion-1.14.2.tar.bz2 MD5 9927b167d1c67d663ca63125907f6f69 diff --git a/spk/subverison/Makefile b/spk/subverison/Makefile new file mode 100644 index 00000000000..84afe842dc0 --- /dev/null +++ b/spk/subverison/Makefile @@ -0,0 +1,31 @@ +SPK_NAME = subversion +SPK_VERS = 1.14.2 +SPK_REV = 1 +SPK_ICON = src/subversion.png + +DEPENDS = cross/$(SPK_NAME) + +MAINTAINER = SynoCommunity +DESCRIPTION = Subversion is an open source version control system. + +DISPLAY_NAME = Subversion +CHANGELOG = "Initial SynoCommunity Package release" + +HOMEPAGE = https://subversion.apache.org/ +LICENSE = Apache 2.0 + + + +SPK_COMMANDS = bin/svn +SPK_COMMANDS += bin/svnadmin +SPK_COMMANDS += bin/svnbench +SPK_COMMANDS += bin/svndumpfilter +SPK_COMMANDS += bin/svnfsfs +SPK_COMMANDS += bin/svnlook +SPK_COMMANDS += bin/svnmucc +SPK_COMMANDS += bin/svnrdump +SPK_COMMANDS += bin/svnserve +SPK_COMMANDS += bin/svnsync +SPK_COMMANDS += bin/svnversion + +include ../../mk/spksrc.spk.mk diff --git a/spk/subverison/src/subversion.png b/spk/subverison/src/subversion.png new file mode 100644 index 0000000000000000000000000000000000000000..a4d326d62338db2ac7d35342a863ba6113fa5cf4 GIT binary patch literal 22684 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 qK`{kzXS!lK%&_@w-F- literal 0 HcmV?d00001 From dd7df323e50df81d610aeaf490856561bd0e254f Mon Sep 17 00:00:00 2001 From: hgy59 Date: Wed, 18 Jan 2023 00:02:10 +0100 Subject: [PATCH 02/14] add cross/serf --- cross/serf/Makefile | 10 +------- .../001-fix-SConstruct-for-newer-scons.patch | 23 ++++++++++++++++++ cross/subversion/Makefile | 2 +- spk/{subverison => subversion}/Makefile | 7 +++--- .../src/subversion.png | Bin 5 files changed, 28 insertions(+), 14 deletions(-) create mode 100644 cross/serf/patches/001-fix-SConstruct-for-newer-scons.patch rename spk/{subverison => subversion}/Makefile (85%) rename spk/{subverison => subversion}/src/subversion.png (100%) diff --git a/cross/serf/Makefile b/cross/serf/Makefile index a1584cd9035..f5d27334a12 100644 --- a/cross/serf/Makefile +++ b/cross/serf/Makefile @@ -11,7 +11,6 @@ HOMEPAGE = https://serf.apache.org COMMENT = The serf library is a high performance C-based HTTP client library built upon the Apache Portable Runtime (APR) library. Serf is the default client library of Apache Subversion and Apache OpenOffice. LICENSE = Apache 2.0 -#GNU_CONFIGURE = 1 CONFIGURE_TARGET = nop COMPILE_TARGET = serf_compile INSTALL_TARGET = serf_install @@ -19,19 +18,12 @@ INSTALL_TARGET = serf_install CONFIGURE_ARGS = --with-apr=$(STAGING_INSTALL_PREFIX) CONFIGURE_ARGS += --with-apr-util=$(STAGING_INSTALL_PREFIX) -# scons APR=/path/to/apr APU=/path/to/apu OPENSSL=/openssl/base PREFIX=/path/to/prefix - include ../../mk/spksrc.cross-cc.mk -#.PHONY: serf_post_install -#serf_post_install: -# sed -i -e 's|^prefix="$(INSTALL_PREFIX)"$$|prefix="$(STAGING_INSTALL_PREFIX)"|' $(STAGING_INSTALL_PREFIX)/bin/serf-config - .PHONY: serf_compile serf_compile: - cd $(WORK_DIR)/$(PKG_DIR) && scons APR=$(STAGING_INSTALL_PREFIX) APU=$(STAGING_INSTALL_PREFIX) OPENSSL=$(STAGING_INSTALL_PREFIX) PREFIX=$(INSTALL_PREFIX) LIBDIR=$(STAGING_INSTALL_PREFIX)/lib + cd $(WORK_DIR)/$(PKG_DIR) && scons CC=$(TC_PATH)/$(TC_PREFIX)gcc APR=$(STAGING_INSTALL_PREFIX) APU=$(STAGING_INSTALL_PREFIX) OPENSSL=$(STAGING_INSTALL_PREFIX) PREFIX=$(INSTALL_PREFIX) LIBDIR=$(STAGING_INSTALL_PREFIX)/lib .PHONY: serf_install serf_install: - #cd $(WORK_DIR)/$(PKG_DIR) && scons DESTDIR=$(STAGING_INSTALL_PREFIX) PREFIX=$(INSTALL_PREFIX) install cd $(WORK_DIR)/$(PKG_DIR) && scons PREFIX=$(STAGING_INSTALL_PREFIX) install diff --git a/cross/serf/patches/001-fix-SConstruct-for-newer-scons.patch b/cross/serf/patches/001-fix-SConstruct-for-newer-scons.patch new file mode 100644 index 00000000000..a02c3df9312 --- /dev/null +++ b/cross/serf/patches/001-fix-SConstruct-for-newer-scons.patch @@ -0,0 +1,23 @@ +# fix syntax errors in SConstruct for newer scons versions (i.e. SCons v4.0.1) +# +# +--- SConstruct.orig 2015-09-17 12:46:24.000000000 +0000 ++++ SConstruct 2023-01-17 20:24:59.548936038 +0000 +@@ -166,7 +166,7 @@ + match = re.search('SERF_MAJOR_VERSION ([0-9]+).*' + 'SERF_MINOR_VERSION ([0-9]+).*' + 'SERF_PATCH_VERSION ([0-9]+)', +- env.File('serf.h').get_contents(), ++ env.File('serf.h').get_contents().decode('utf-8'), + re.DOTALL) + MAJOR, MINOR, PATCH = [int(x) for x in match.groups()] + env.Append(MAJOR=str(MAJOR)) +@@ -183,7 +183,7 @@ + + unknown = opts.UnknownVariables() + if unknown: +- print 'Warning: Used unknown variables:', ', '.join(unknown.keys()) ++ print('Warning: Used unknown variables:', ', '.join(unknown.keys())) + + apr = str(env['APR']) + apu = str(env['APU']) diff --git a/cross/subversion/Makefile b/cross/subversion/Makefile index ccfb4d81328..82a1230d575 100644 --- a/cross/subversion/Makefile +++ b/cross/subversion/Makefile @@ -9,7 +9,7 @@ PKG_DIR = $(PKG_NAME)-$(PKG_VERS) DEPENDS = cross/apr DEPENDS += cross/apr-util -#DEPENDS += cross/serf +DEPENDS += cross/serf DEPENDS += cross/sqlite DEPENDS += cross/cyrus-sasl DEPENDS += cross/lz4 diff --git a/spk/subverison/Makefile b/spk/subversion/Makefile similarity index 85% rename from spk/subverison/Makefile rename to spk/subversion/Makefile index 84afe842dc0..c1dc017385b 100644 --- a/spk/subverison/Makefile +++ b/spk/subversion/Makefile @@ -5,18 +5,17 @@ SPK_ICON = src/subversion.png DEPENDS = cross/$(SPK_NAME) -MAINTAINER = SynoCommunity +MAINTAINER = hgy59 DESCRIPTION = Subversion is an open source version control system. DISPLAY_NAME = Subversion -CHANGELOG = "Initial SynoCommunity Package release" +CHANGELOG = "Initial SynoCommunity Package release." HOMEPAGE = https://subversion.apache.org/ LICENSE = Apache 2.0 - -SPK_COMMANDS = bin/svn +SPK_COMMANDS = bin/svn SPK_COMMANDS += bin/svnadmin SPK_COMMANDS += bin/svnbench SPK_COMMANDS += bin/svndumpfilter diff --git a/spk/subverison/src/subversion.png b/spk/subversion/src/subversion.png similarity index 100% rename from spk/subverison/src/subversion.png rename to spk/subversion/src/subversion.png From d33b554e1c585b403c3d8c443ec54bde2da8518e Mon Sep 17 00:00:00 2001 From: hgy59 Date: Mon, 27 Feb 2023 19:09:44 +0100 Subject: [PATCH 03/14] subversion: update dependencies - update cross/apr to v1.7.2 - update cross/apr-util to v1.6.3 - configure subversion to use serf --- cross/apr-util/Makefile | 2 +- cross/apr-util/PLIST | 2 +- cross/apr-util/digests | 6 +-- cross/apr/Makefile | 2 +- cross/apr/PLIST | 2 +- cross/apr/digests | 6 +-- cross/apr/patches/001-gen_test_char.patch | 31 ----------- .../002-apr-1.7.0-CVE-2021-35940.patch | 53 ------------------- cross/subversion/Makefile | 1 + cross/subversion/PLIST | 3 ++ 10 files changed, 14 insertions(+), 94 deletions(-) delete mode 100644 cross/apr/patches/001-gen_test_char.patch delete mode 100644 cross/apr/patches/002-apr-1.7.0-CVE-2021-35940.patch diff --git a/cross/apr-util/Makefile b/cross/apr-util/Makefile index 32c30b6fd94..90f76c8a14b 100644 --- a/cross/apr-util/Makefile +++ b/cross/apr-util/Makefile @@ -1,5 +1,5 @@ PKG_NAME = apr-util -PKG_VERS = 1.6.1 +PKG_VERS = 1.6.3 PKG_EXT = tar.bz2 PKG_DIST_NAME = $(PKG_NAME)-$(PKG_VERS).$(PKG_EXT) PKG_DIST_SITE = https://archive.apache.org/dist/apr diff --git a/cross/apr-util/PLIST b/cross/apr-util/PLIST index 7100bd80ef8..d5acdbf8383 100644 --- a/cross/apr-util/PLIST +++ b/cross/apr-util/PLIST @@ -1,3 +1,3 @@ lnk:lib/libaprutil.so lnk:lib/libaprutil.so.0 -lib:lib/libaprutil.so.0.6.1 +lib:lib/libaprutil.so.0.6.3 diff --git a/cross/apr-util/digests b/cross/apr-util/digests index d6d930b36cb..c293da4e2d4 100644 --- a/cross/apr-util/digests +++ b/cross/apr-util/digests @@ -1,3 +1,3 @@ -apr-util-1.6.1.tar.bz2 SHA1 4cc73bc36ca697419f555476f2fc1c63df6069f4 -apr-util-1.6.1.tar.bz2 SHA256 d3e12f7b6ad12687572a3a39475545a072608f4ba03a6ce8a3778f607dd0035b -apr-util-1.6.1.tar.bz2 MD5 8ff5dc36fa39a2a3db1df196d3ed6086 +apr-util-1.6.3.tar.bz2 SHA1 8c6293a787b69986ce43bc49c7c247d4ff5fc828 +apr-util-1.6.3.tar.bz2 SHA256 a41076e3710746326c3945042994ad9a4fcac0ce0277dd8fea076fec3c9772b5 +apr-util-1.6.3.tar.bz2 MD5 b6e8c9b31d938fe5797ceb0d1ff2eb69 diff --git a/cross/apr/Makefile b/cross/apr/Makefile index d6baf5574ed..2bc1147c899 100644 --- a/cross/apr/Makefile +++ b/cross/apr/Makefile @@ -1,5 +1,5 @@ PKG_NAME = apr -PKG_VERS = 1.7.0 +PKG_VERS = 1.7.2 PKG_EXT = tar.bz2 PKG_DIST_NAME = $(PKG_NAME)-$(PKG_VERS).$(PKG_EXT) PKG_DIST_SITE = https://archive.apache.org/dist/apr diff --git a/cross/apr/PLIST b/cross/apr/PLIST index c1000710050..8d0e9a087b5 100644 --- a/cross/apr/PLIST +++ b/cross/apr/PLIST @@ -1,3 +1,3 @@ lnk:lib/libapr.so lnk:lib/libapr.so.0 -lib:lib/libapr.so.0.7.0 +lib:lib/libapr.so.0.7.2 diff --git a/cross/apr/digests b/cross/apr/digests index 62e1c277fc8..58bc8e93a2a 100644 --- a/cross/apr/digests +++ b/cross/apr/digests @@ -1,3 +1,3 @@ -apr-1.7.0.tar.bz2 SHA1 58ebc7b35efaebb211c0b9df594ab16c4d874234 -apr-1.7.0.tar.bz2 SHA256 e2e148f0b2e99b8e5c6caa09f6d4fb4dd3e83f744aa72a952f94f5a14436f7ea -apr-1.7.0.tar.bz2 MD5 7a14a83d664e87599ea25ff4432e48a7 +apr-1.7.2.tar.bz2 SHA1 b51e7ff9d1e417ce30c9722c9edef7b88dfbed1f +apr-1.7.2.tar.bz2 SHA256 75e77cc86776c030c0a5c408dfbd0bf2a0b75eed5351e52d5439fa1e5509a43e +apr-1.7.2.tar.bz2 MD5 9a00835e4da8c215348e263b550fc130 diff --git a/cross/apr/patches/001-gen_test_char.patch b/cross/apr/patches/001-gen_test_char.patch deleted file mode 100644 index 524e8bf157c..00000000000 --- a/cross/apr/patches/001-gen_test_char.patch +++ /dev/null @@ -1,31 +0,0 @@ -(c) Hongxu Jia -http://lists.openembedded.org/pipermail/openembedded-core/2014-June/093158.html ---- Makefile.in.orig 2015-05-08 13:05:58.099779221 +0200 -+++ Makefile.in 2015-05-08 17:28:02.183152158 +0200 -@@ -31,6 +31,7 @@ - APR_CONFIG = apr-$(APR_MAJOR_VERSION)-config - INSTALL = @INSTALL@ - INSTALL_DATA = @INSTALL_DATA@ -+BUILDCC = gcc - - # - # Rules for building specific targets, starting with 'all' for -@@ -46,7 +47,6 @@ - - CLEAN_TARGETS = apr-config.out apr.exp exports.c export_vars.c .make.dirs \ - build/apr_rules.out tools/gen_test_char@EXEEXT@ \ -- tools/gen_test_char.o tools/gen_test_char.lo \ - include/private/apr_escape_test_char.h - DISTCLEAN_TARGETS = config.cache config.log config.status \ - include/apr.h include/arch/unix/apr_private.h \ -@@ -134,8 +134,8 @@ - $(APR_MKDIR) tools - $(LT_COMPILE) - --tools/gen_test_char@EXEEXT@: $(OBJECTS_gen_test_char) -- $(LINK_PROG) $(OBJECTS_gen_test_char) $(ALL_LIBS) -+tools/gen_test_char@EXEEXT@: tools/gen_test_char.c -+ $(BUILDCC) $(CFLAGS_FOR_BUILD) $< -o $@ - - include/private/apr_escape_test_char.h: tools/gen_test_char@EXEEXT@ - $(APR_MKDIR) include/private diff --git a/cross/apr/patches/002-apr-1.7.0-CVE-2021-35940.patch b/cross/apr/patches/002-apr-1.7.0-CVE-2021-35940.patch deleted file mode 100644 index 4d4a45be931..00000000000 --- a/cross/apr/patches/002-apr-1.7.0-CVE-2021-35940.patch +++ /dev/null @@ -1,53 +0,0 @@ - -SECURITY: CVE-2021-35940 (cve.mitre.org) - -Restore fix for CVE-2017-12613 which was missing in 1.7.x branch, though -was addressed in 1.6.x in 1.6.3 and later via r1807976. - -The fix was merged back to 1.7.x in r1891198. - -Since this was a regression in 1.7.0, a new CVE name has been assigned -to track this, CVE-2021-35940. - -Thanks to Iveta Cesalova for reporting this issue. - -https://svn.apache.org/viewvc?view=revision&revision=1891198 - -Index: time/unix/time.c -=================================================================== ---- time/unix/time.c (revision 1891197) -+++ time/unix/time.c (revision 1891198) -@@ -142,6 +142,9 @@ - static const int dayoffset[12] = - {306, 337, 0, 31, 61, 92, 122, 153, 184, 214, 245, 275}; - -+ if (xt->tm_mon < 0 || xt->tm_mon >= 12) -+ return APR_EBADDATE; -+ - /* shift new year to 1st March in order to make leap year calc easy */ - - if (xt->tm_mon < 2) -Index: time/win32/time.c -=================================================================== ---- time/win32/time.c (revision 1891197) -+++ time/win32/time.c (revision 1891198) -@@ -54,6 +54,9 @@ - static const int dayoffset[12] = - {0, 31, 59, 90, 120, 151, 181, 212, 243, 273, 304, 334}; - -+ if (tm->wMonth < 1 || tm->wMonth > 12) -+ return APR_EBADDATE; -+ - /* Note; the caller is responsible for filling in detailed tm_usec, - * tm_gmtoff and tm_isdst data when applicable. - */ -@@ -228,6 +231,9 @@ - static const int dayoffset[12] = - {306, 337, 0, 31, 61, 92, 122, 153, 184, 214, 245, 275}; - -+ if (xt->tm_mon < 0 || xt->tm_mon >= 12) -+ return APR_EBADDATE; -+ - /* shift new year to 1st March in order to make leap year calc easy */ - - if (xt->tm_mon < 2) diff --git a/cross/subversion/Makefile b/cross/subversion/Makefile index 82a1230d575..3ebde8cf55a 100644 --- a/cross/subversion/Makefile +++ b/cross/subversion/Makefile @@ -24,6 +24,7 @@ GNU_CONFIGURE = 1 CONFIGURE_ARGS = --disable-static CONFIGURE_ARGS += --with-apr=$(STAGING_INSTALL_PREFIX) CONFIGURE_ARGS += --with-apr-util=$(STAGING_INSTALL_PREFIX) +CONFIGURE_ARGS += --with-serf=$(STAGING_INSTALL_PREFIX) CONFIGURE_ARGS += --with-zlib=$(STAGING_INSTALL_PREFIX) CONFIGURE_ARGS += --without-berkeley-db CONFIGURE_ARGS += --with-utf8proc=internal diff --git a/cross/subversion/PLIST b/cross/subversion/PLIST index a016b06be6d..374a3788106 100644 --- a/cross/subversion/PLIST +++ b/cross/subversion/PLIST @@ -36,6 +36,9 @@ lib:lib/libsvn_ra-1.so.0.0.0 lnk:lib/libsvn_ra_local-1.so lnk:lib/libsvn_ra_local-1.so.0 lib:lib/libsvn_ra_local-1.so.0.0.0 +lnk:lib/libsvn_ra_serf-1.so +lnk:lib/libsvn_ra_serf-1.so.0 +lib:lib/libsvn_ra_serf-1.so.0.0.0 lnk:lib/libsvn_ra_svn-1.so lnk:lib/libsvn_ra_svn-1.so.0 lib:lib/libsvn_ra_svn-1.so.0.0.0 From 515b3667160837d32f7e39de6b4408dc9ba0d01f Mon Sep 17 00:00:00 2001 From: hgy59 Date: Mon, 27 Feb 2023 23:36:20 +0100 Subject: [PATCH 04/14] add service-setup - use alternate port 3691 to avoid conflicts with SVN package from Synology - use service-variables file to configure shared folder at installation time - add wizard to define shared folder for repositories --- spk/subversion/Makefile | 19 ++++++++++++- spk/subversion/src/service-setup.sh | 26 +++++++++++++++++ spk/subversion/src/service-variables.template | 2 ++ spk/subversion/src/wizard/install_uifile | 28 +++++++++++++++++++ 4 files changed, 74 insertions(+), 1 deletion(-) create mode 100644 spk/subversion/src/service-setup.sh create mode 100644 spk/subversion/src/service-variables.template create mode 100644 spk/subversion/src/wizard/install_uifile diff --git a/spk/subversion/Makefile b/spk/subversion/Makefile index c1dc017385b..efeccb90091 100644 --- a/spk/subversion/Makefile +++ b/spk/subversion/Makefile @@ -3,7 +3,7 @@ SPK_VERS = 1.14.2 SPK_REV = 1 SPK_ICON = src/subversion.png -DEPENDS = cross/$(SPK_NAME) +DEPENDS = cross/subversion MAINTAINER = hgy59 DESCRIPTION = Subversion is an open source version control system. @@ -14,6 +14,17 @@ CHANGELOG = "Initial SynoCommunity Package release." HOMEPAGE = https://subversion.apache.org/ LICENSE = Apache 2.0 +SERVICE_PORT = 3691 +WIZARDS_DIR = src/wizard +SERVICE_WIZARD_SHARE = wizard_repo_directory +USE_DATA_SHARE_WORKER = yes + +STARTABLE = yes +SERVICE_USER = auto +SERVICE_SETUP = src/service-setup.sh +NO_SERVICE_SHORTCUT = yes + +POST_STRIP_TARGET = subversion_extra_install SPK_COMMANDS = bin/svn SPK_COMMANDS += bin/svnadmin @@ -28,3 +39,9 @@ SPK_COMMANDS += bin/svnsync SPK_COMMANDS += bin/svnversion include ../../mk/spksrc.spk.mk + +.PHONY: subversion_extra_install +subversion_extra_install: + @$(MSG) Install template for service-variables + install -m 755 -d $(STAGING_DIR)/var + install -m 644 src/service-variables.template $(STAGING_DIR)/var/service-variables.template diff --git a/spk/subversion/src/service-setup.sh b/spk/subversion/src/service-setup.sh new file mode 100644 index 00000000000..1da25d451e9 --- /dev/null +++ b/spk/subversion/src/service-setup.sh @@ -0,0 +1,26 @@ + +SERVICE_VARIABLES="${SYNOPKG_PKGVAR}/service-variables" +SERVICE_VARIABLES_TEMPLATE="${SYNOPKG_PKGVAR}/service-variables.template" + +service_postinst () +{ + if [ ! -f "${SERVICE_VARIABLES}" ]; then + echo "Create ${SERVICE_VARIABLES}" + cp -f ${SERVICE_VARIABLES_TEMPLATE} ${SERVICE_VARIABLES} + fi + + sed -i -e "s|@@share_path@@|${SHARE_PATH}|g" ${SERVICE_VARIABLES} +} + +service_prestart () +{ + if [ -f "${SERVICE_VARIABLES}" ]; then + FUNCTIONS=$(dirname $0)"/functions" + if [ -r "${FUNCTIONS}" ]; then + . "${FUNCTIONS}" + fi + load_variables_from_file "${SERVICE_VARIABLES}" + fi + + SERVICE_COMMAND="${SYNOPKG_PKGDEST}/bin/svnserve --daemon --root ${SHARE_PATH} --listen-port ${SERVICE_PORT} --log-file ${LOG_FILE} --pid-file ${PID_FILE}" +} diff --git a/spk/subversion/src/service-variables.template b/spk/subversion/src/service-variables.template new file mode 100644 index 00000000000..caf12c816d2 --- /dev/null +++ b/spk/subversion/src/service-variables.template @@ -0,0 +1,2 @@ +# variables for service command +SHARE_PATH=@@share_path@@ diff --git a/spk/subversion/src/wizard/install_uifile b/spk/subversion/src/wizard/install_uifile new file mode 100644 index 00000000000..75222cc83f8 --- /dev/null +++ b/spk/subversion/src/wizard/install_uifile @@ -0,0 +1,28 @@ +[ + { + "step_title": "Subversion repository configuration", + "items": [ + { + "type": "textfield", + "desc": "Repository shared folder (either existing share, or new share that will be created)", + "subitems": [ + { + "key": "wizard_repo_directory", + "desc": "Repository folder", + "defaultValue": "svn", + "validator": { + "allowBlank": false, + "regex": { + "expr": "/^[\\w _-]+$/", + "errorText": "Subdirectories are not supported." + } + } + } + ] + }, + { + "desc": "The folder will be created on demand as regular DSM shared folder for the service user sc-subversion. For details about the DSM permissions see Permission Management.

" + } + ] + } +] \ No newline at end of file From 87284f3bc02ec167b73a67f15fec8fe1bf277d40 Mon Sep 17 00:00:00 2001 From: hgy59 Date: Fri, 6 Oct 2023 20:46:08 +0200 Subject: [PATCH 05/14] cross/apr: update to v1.7.4 --- cross/apr/Makefile | 2 +- cross/apr/PLIST | 2 +- cross/apr/digests | 6 +++--- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/cross/apr/Makefile b/cross/apr/Makefile index 2bc1147c899..dd29ab86a6b 100644 --- a/cross/apr/Makefile +++ b/cross/apr/Makefile @@ -1,5 +1,5 @@ PKG_NAME = apr -PKG_VERS = 1.7.2 +PKG_VERS = 1.7.4 PKG_EXT = tar.bz2 PKG_DIST_NAME = $(PKG_NAME)-$(PKG_VERS).$(PKG_EXT) PKG_DIST_SITE = https://archive.apache.org/dist/apr diff --git a/cross/apr/PLIST b/cross/apr/PLIST index 8d0e9a087b5..0248a377e21 100644 --- a/cross/apr/PLIST +++ b/cross/apr/PLIST @@ -1,3 +1,3 @@ lnk:lib/libapr.so lnk:lib/libapr.so.0 -lib:lib/libapr.so.0.7.2 +lib:lib/libapr.so.0.7.4 diff --git a/cross/apr/digests b/cross/apr/digests index 58bc8e93a2a..9e3f48b49b1 100644 --- a/cross/apr/digests +++ b/cross/apr/digests @@ -1,3 +1,3 @@ -apr-1.7.2.tar.bz2 SHA1 b51e7ff9d1e417ce30c9722c9edef7b88dfbed1f -apr-1.7.2.tar.bz2 SHA256 75e77cc86776c030c0a5c408dfbd0bf2a0b75eed5351e52d5439fa1e5509a43e -apr-1.7.2.tar.bz2 MD5 9a00835e4da8c215348e263b550fc130 +apr-1.7.4.tar.bz2 SHA1 3393f213ed9d4f6ad6425dbdbb6b2f620b45681a +apr-1.7.4.tar.bz2 SHA256 fc648de983f3a2a6c9e78dea1f180639bd2fad6c06d556d4367a701fe5c35577 +apr-1.7.4.tar.bz2 MD5 f8a62f3984898ba0ea8b6f26b851cb99 From 3c5380c735271ffc596b9370c66c2f69e5abc3e1 Mon Sep 17 00:00:00 2001 From: hgy59 Date: Tue, 5 Dec 2023 23:15:05 +0100 Subject: [PATCH 06/14] serf: update to v1.3.10 - update serf for openssl3 compatibility --- cross/serf/Makefile | 4 ++-- cross/serf/digests | 6 ++--- .../001-fix-SConstruct-for-newer-scons.patch | 23 ------------------- 3 files changed, 5 insertions(+), 28 deletions(-) delete mode 100644 cross/serf/patches/001-fix-SConstruct-for-newer-scons.patch diff --git a/cross/serf/Makefile b/cross/serf/Makefile index f5d27334a12..8ee30bcf015 100644 --- a/cross/serf/Makefile +++ b/cross/serf/Makefile @@ -1,11 +1,11 @@ PKG_NAME = serf -PKG_VERS = 1.3.9 +PKG_VERS = 1.3.10 PKG_EXT = tar.bz2 PKG_DIST_NAME = $(PKG_NAME)-$(PKG_VERS).$(PKG_EXT) PKG_DIST_SITE = https://archive.apache.org/dist/serf PKG_DIR = $(PKG_NAME)-$(PKG_VERS) -DEPENDS = cross/apr cross/apr-util cross/openssl +DEPENDS = cross/apr cross/apr-util cross/openssl3 HOMEPAGE = https://serf.apache.org COMMENT = The serf library is a high performance C-based HTTP client library built upon the Apache Portable Runtime (APR) library. Serf is the default client library of Apache Subversion and Apache OpenOffice. diff --git a/cross/serf/digests b/cross/serf/digests index abf82cfd524..101ed555fe3 100644 --- a/cross/serf/digests +++ b/cross/serf/digests @@ -1,3 +1,3 @@ -serf-1.3.9.tar.bz2 SHA1 26015c63e3bbb108c1689bf2090e4c26351db674 -serf-1.3.9.tar.bz2 SHA256 549c2d21c577a8a9c0450facb5cca809f26591f048e466552240947bdf7a87cc -serf-1.3.9.tar.bz2 MD5 370a6340ff20366ab088012cd13f2b57 +serf-1.3.10.tar.bz2 SHA1 d67c209cb0161c4707ba114d1195c5ba3becfa73 +serf-1.3.10.tar.bz2 SHA256 be81ef08baa2516ecda76a77adf7def7bc3227eeb578b9a33b45f7b41dc064e6 +serf-1.3.10.tar.bz2 MD5 5320087299084c297eff8e1dacfab1af diff --git a/cross/serf/patches/001-fix-SConstruct-for-newer-scons.patch b/cross/serf/patches/001-fix-SConstruct-for-newer-scons.patch deleted file mode 100644 index a02c3df9312..00000000000 --- a/cross/serf/patches/001-fix-SConstruct-for-newer-scons.patch +++ /dev/null @@ -1,23 +0,0 @@ -# fix syntax errors in SConstruct for newer scons versions (i.e. SCons v4.0.1) -# -# ---- SConstruct.orig 2015-09-17 12:46:24.000000000 +0000 -+++ SConstruct 2023-01-17 20:24:59.548936038 +0000 -@@ -166,7 +166,7 @@ - match = re.search('SERF_MAJOR_VERSION ([0-9]+).*' - 'SERF_MINOR_VERSION ([0-9]+).*' - 'SERF_PATCH_VERSION ([0-9]+)', -- env.File('serf.h').get_contents(), -+ env.File('serf.h').get_contents().decode('utf-8'), - re.DOTALL) - MAJOR, MINOR, PATCH = [int(x) for x in match.groups()] - env.Append(MAJOR=str(MAJOR)) -@@ -183,7 +183,7 @@ - - unknown = opts.UnknownVariables() - if unknown: -- print 'Warning: Used unknown variables:', ', '.join(unknown.keys()) -+ print('Warning: Used unknown variables:', ', '.join(unknown.keys())) - - apr = str(env['APR']) - apu = str(env['APU']) From 85c48b60c6228c3b90c35bd7b98783753adfc8a5 Mon Sep 17 00:00:00 2001 From: hgy59 Date: Tue, 5 Dec 2023 23:17:22 +0100 Subject: [PATCH 07/14] cyrus-sasl: update to v2.1.28 - update cyrus-sasl and depend on openssl3 --- cross/cyrus-sasl/Makefile | 4 ++-- cross/cyrus-sasl/digests | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/cross/cyrus-sasl/Makefile b/cross/cyrus-sasl/Makefile index 76b8e68fbf9..bab12c75ac4 100644 --- a/cross/cyrus-sasl/Makefile +++ b/cross/cyrus-sasl/Makefile @@ -1,11 +1,11 @@ PKG_NAME = cyrus-sasl -PKG_VERS = 2.1.27 +PKG_VERS = 2.1.28 PKG_EXT = tar.gz PKG_DIST_NAME = $(PKG_NAME)-$(PKG_VERS).$(PKG_EXT) PKG_DIST_SITE = https://github.com/cyrusimap/cyrus-sasl/releases/download/$(PKG_NAME)-$(PKG_VERS) PKG_DIR = $(PKG_NAME)-$(PKG_VERS) -DEPENDS = cross/openssl +DEPENDS = cross/openssl3 HOMEPAGE = https://github.com/cyrusimap/cyrus-sasl COMMENT = This is the Cyrus SASL API implementation. It can be used on the client or server side to provide authentication and authorization services. See RFC 4422 for more information. diff --git a/cross/cyrus-sasl/digests b/cross/cyrus-sasl/digests index 3f998bc6712..0c7428d6a93 100644 --- a/cross/cyrus-sasl/digests +++ b/cross/cyrus-sasl/digests @@ -1,3 +1,3 @@ -cyrus-sasl-2.1.27.tar.gz SHA1 fbfe6f298b0d2efcdab6a40bf47e16d003ae5dc6 -cyrus-sasl-2.1.27.tar.gz SHA256 26866b1549b00ffd020f188a43c258017fa1c382b3ddadd8201536f72efb05d5 -cyrus-sasl-2.1.27.tar.gz MD5 a33820c66e0622222c5aefafa1581083 +cyrus-sasl-2.1.28.tar.gz SHA1 c96d2ccd891904ce0118fdfcdfbd47e37a1e7543 +cyrus-sasl-2.1.28.tar.gz SHA256 7ccfc6abd01ed67c1a0924b353e526f1b766b21f42d4562ee635a8ebfc5bb38c +cyrus-sasl-2.1.28.tar.gz MD5 6f228a692516f5318a64505b46966cfa From f6cb6a28cdbb2fd085dac7c88bd43ff60164246c Mon Sep 17 00:00:00 2001 From: hgy59 Date: Tue, 5 Dec 2023 23:28:16 +0100 Subject: [PATCH 08/14] subversion: use redesigned shared folder --- cross/subversion/Makefile | 5 ++--- spk/subversion/Makefile | 3 +-- 2 files changed, 3 insertions(+), 5 deletions(-) diff --git a/cross/subversion/Makefile b/cross/subversion/Makefile index 3ebde8cf55a..0935e7a5216 100644 --- a/cross/subversion/Makefile +++ b/cross/subversion/Makefile @@ -5,9 +5,8 @@ PKG_DIST_NAME = $(PKG_NAME)-$(PKG_VERS).$(PKG_EXT) PKG_DIST_SITE = https://dlcdn.apache.org/subversion PKG_DIR = $(PKG_NAME)-$(PKG_VERS) -# http://yylam.blogspot.com/2016/01/cross-compile-subversion-server.html - -DEPENDS = cross/apr +DEPENDS = cross/zlib +DEPENDS += cross/apr DEPENDS += cross/apr-util DEPENDS += cross/serf DEPENDS += cross/sqlite diff --git a/spk/subversion/Makefile b/spk/subversion/Makefile index efeccb90091..7cf521cba3a 100644 --- a/spk/subversion/Makefile +++ b/spk/subversion/Makefile @@ -16,8 +16,7 @@ LICENSE = Apache 2.0 SERVICE_PORT = 3691 WIZARDS_DIR = src/wizard -SERVICE_WIZARD_SHARE = wizard_repo_directory -USE_DATA_SHARE_WORKER = yes +SERVICE_WIZARD_SHARENAME = wizard_repo_directory STARTABLE = yes SERVICE_USER = auto From d5c6d06e59b2be56f0d534899e165f166760c791 Mon Sep 17 00:00:00 2001 From: hgy59 Date: Wed, 6 Dec 2023 00:04:09 +0100 Subject: [PATCH 09/14] mutt: update to v2.2.12 - update mutt and depend on openssl3 --- cross/mutt/Makefile | 8 ++++---- cross/mutt/digests | 6 +++--- spk/mutt/Makefile | 10 +++++----- 3 files changed, 12 insertions(+), 12 deletions(-) diff --git a/cross/mutt/Makefile b/cross/mutt/Makefile index 6836f52cf86..9623d40bbc4 100644 --- a/cross/mutt/Makefile +++ b/cross/mutt/Makefile @@ -1,11 +1,11 @@ PKG_NAME = mutt -PKG_VERS = 2.1.3 +PKG_VERS = 2.2.12 PKG_EXT = tar.gz PKG_DIST_NAME = $(PKG_NAME)-$(PKG_VERS).$(PKG_EXT) -PKG_DIST_SITE = ftp://ftp.mutt.org/pub/$(PKG_NAME) +PKG_DIST_SITE = http://ftp.mutt.org/pub/mutt PKG_DIR = $(PKG_NAME)-$(PKG_VERS) -DEPENDS = cross/ncursesw cross/openssl cross/cyrus-sasl +DEPENDS = cross/ncursesw cross/openssl3 cross/cyrus-sasl HOMEPAGE = http://www.mutt.org COMMENT = Mutt is a small but very powerful text-based mail client for Unix operating systems. @@ -26,6 +26,6 @@ include ../../mk/spksrc.cross-cc.mk .PHONY: mutt_install mutt_install: - $(RUN) $(MAKE) install DESTDIR=$(INSTALL_DIR) + @$(RUN) $(MAKE) install DESTDIR=$(INSTALL_DIR) install -m 755 -d $(STAGING_INSTALL_PREFIX)/var cp $(WORK_DIR)/$(PKG_DIR)/doc/Muttrc.head $(STAGING_INSTALL_PREFIX)/var/Muttrc diff --git a/cross/mutt/digests b/cross/mutt/digests index 2b2bcd5bf69..a2576ea91e1 100644 --- a/cross/mutt/digests +++ b/cross/mutt/digests @@ -1,3 +1,3 @@ -mutt-2.1.3.tar.gz SHA1 ae1499006b4b338b32c9887f5e67706ba5214a1f -mutt-2.1.3.tar.gz SHA256 ef759cc94b921b099a3ee88085d384fd3564c97f511e907bc83cf9812dd5e47c -mutt-2.1.3.tar.gz MD5 af58d4428359fdfe21952906d2d95782 +mutt-2.2.12.tar.gz SHA1 11107acfd21617a3a063a9ee16f21aedc8b8594f +mutt-2.2.12.tar.gz SHA256 043af312f64b8e56f7fd0bf77f84a205d4c498030bd9586457665c47bb18ce38 +mutt-2.2.12.tar.gz MD5 5b3e1feb8473bf64847d1fd85084dbb0 diff --git a/spk/mutt/Makefile b/spk/mutt/Makefile index bd1c266177e..026345ef3f6 100644 --- a/spk/mutt/Makefile +++ b/spk/mutt/Makefile @@ -1,6 +1,6 @@ SPK_NAME = mutt -SPK_VERS = 2.1.3 -SPK_REV = 8 +SPK_VERS = 2.2.12 +SPK_REV = 9 SPK_ICON = src/mutt.png DEPENDS = cross/mutt @@ -10,10 +10,10 @@ DESCRIPTION = Mutt is a small but very powerful text-based mail client for Unix DISPLAY_NAME = Mutt STARTABLE = no -CHANGELOG = "1. Update mutt to v2.1.3.
2. Update openssl to v1.1.1l." +CHANGELOG = "1. Update mutt to v2.2.12.
2. Update openssl to v3.1.4." -HOMEPAGE = http://www.mutt.org -LICENSE = GPLv2 +HOMEPAGE = http://www.mutt.org +LICENSE = GPLv2 SERVICE_SETUP = src/service-setup.sh From fc998f5ddd6b58cdd67cab65669ed272ea6a42d9 Mon Sep 17 00:00:00 2001 From: hgy59 Date: Sun, 24 Nov 2024 18:26:20 +0100 Subject: [PATCH 10/14] Revert "mutt: update to v2.2.12" This reverts commit d5c6d06e59b2be56f0d534899e165f166760c791. --- cross/mutt/Makefile | 8 ++++---- cross/mutt/digests | 6 +++--- spk/mutt/Makefile | 10 +++++----- 3 files changed, 12 insertions(+), 12 deletions(-) diff --git a/cross/mutt/Makefile b/cross/mutt/Makefile index 9623d40bbc4..6836f52cf86 100644 --- a/cross/mutt/Makefile +++ b/cross/mutt/Makefile @@ -1,11 +1,11 @@ PKG_NAME = mutt -PKG_VERS = 2.2.12 +PKG_VERS = 2.1.3 PKG_EXT = tar.gz PKG_DIST_NAME = $(PKG_NAME)-$(PKG_VERS).$(PKG_EXT) -PKG_DIST_SITE = http://ftp.mutt.org/pub/mutt +PKG_DIST_SITE = ftp://ftp.mutt.org/pub/$(PKG_NAME) PKG_DIR = $(PKG_NAME)-$(PKG_VERS) -DEPENDS = cross/ncursesw cross/openssl3 cross/cyrus-sasl +DEPENDS = cross/ncursesw cross/openssl cross/cyrus-sasl HOMEPAGE = http://www.mutt.org COMMENT = Mutt is a small but very powerful text-based mail client for Unix operating systems. @@ -26,6 +26,6 @@ include ../../mk/spksrc.cross-cc.mk .PHONY: mutt_install mutt_install: - @$(RUN) $(MAKE) install DESTDIR=$(INSTALL_DIR) + $(RUN) $(MAKE) install DESTDIR=$(INSTALL_DIR) install -m 755 -d $(STAGING_INSTALL_PREFIX)/var cp $(WORK_DIR)/$(PKG_DIR)/doc/Muttrc.head $(STAGING_INSTALL_PREFIX)/var/Muttrc diff --git a/cross/mutt/digests b/cross/mutt/digests index a2576ea91e1..2b2bcd5bf69 100644 --- a/cross/mutt/digests +++ b/cross/mutt/digests @@ -1,3 +1,3 @@ -mutt-2.2.12.tar.gz SHA1 11107acfd21617a3a063a9ee16f21aedc8b8594f -mutt-2.2.12.tar.gz SHA256 043af312f64b8e56f7fd0bf77f84a205d4c498030bd9586457665c47bb18ce38 -mutt-2.2.12.tar.gz MD5 5b3e1feb8473bf64847d1fd85084dbb0 +mutt-2.1.3.tar.gz SHA1 ae1499006b4b338b32c9887f5e67706ba5214a1f +mutt-2.1.3.tar.gz SHA256 ef759cc94b921b099a3ee88085d384fd3564c97f511e907bc83cf9812dd5e47c +mutt-2.1.3.tar.gz MD5 af58d4428359fdfe21952906d2d95782 diff --git a/spk/mutt/Makefile b/spk/mutt/Makefile index 026345ef3f6..bd1c266177e 100644 --- a/spk/mutt/Makefile +++ b/spk/mutt/Makefile @@ -1,6 +1,6 @@ SPK_NAME = mutt -SPK_VERS = 2.2.12 -SPK_REV = 9 +SPK_VERS = 2.1.3 +SPK_REV = 8 SPK_ICON = src/mutt.png DEPENDS = cross/mutt @@ -10,10 +10,10 @@ DESCRIPTION = Mutt is a small but very powerful text-based mail client for Unix DISPLAY_NAME = Mutt STARTABLE = no -CHANGELOG = "1. Update mutt to v2.2.12.
2. Update openssl to v3.1.4." +CHANGELOG = "1. Update mutt to v2.1.3.
2. Update openssl to v1.1.1l." -HOMEPAGE = http://www.mutt.org -LICENSE = GPLv2 +HOMEPAGE = http://www.mutt.org +LICENSE = GPLv2 SERVICE_SETUP = src/service-setup.sh From 300b38a6cf13cf68a1f0e75eb0049edec64da659 Mon Sep 17 00:00:00 2001 From: hgy59 Date: Sun, 24 Nov 2024 18:31:37 +0100 Subject: [PATCH 11/14] Revert "cyrus-sasl: update to v2.1.28" This reverts commit 85c48b60c6228c3b90c35bd7b98783753adfc8a5. --- cross/cyrus-sasl/Makefile | 4 ++-- cross/cyrus-sasl/digests | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/cross/cyrus-sasl/Makefile b/cross/cyrus-sasl/Makefile index bab12c75ac4..76b8e68fbf9 100644 --- a/cross/cyrus-sasl/Makefile +++ b/cross/cyrus-sasl/Makefile @@ -1,11 +1,11 @@ PKG_NAME = cyrus-sasl -PKG_VERS = 2.1.28 +PKG_VERS = 2.1.27 PKG_EXT = tar.gz PKG_DIST_NAME = $(PKG_NAME)-$(PKG_VERS).$(PKG_EXT) PKG_DIST_SITE = https://github.com/cyrusimap/cyrus-sasl/releases/download/$(PKG_NAME)-$(PKG_VERS) PKG_DIR = $(PKG_NAME)-$(PKG_VERS) -DEPENDS = cross/openssl3 +DEPENDS = cross/openssl HOMEPAGE = https://github.com/cyrusimap/cyrus-sasl COMMENT = This is the Cyrus SASL API implementation. It can be used on the client or server side to provide authentication and authorization services. See RFC 4422 for more information. diff --git a/cross/cyrus-sasl/digests b/cross/cyrus-sasl/digests index 0c7428d6a93..3f998bc6712 100644 --- a/cross/cyrus-sasl/digests +++ b/cross/cyrus-sasl/digests @@ -1,3 +1,3 @@ -cyrus-sasl-2.1.28.tar.gz SHA1 c96d2ccd891904ce0118fdfcdfbd47e37a1e7543 -cyrus-sasl-2.1.28.tar.gz SHA256 7ccfc6abd01ed67c1a0924b353e526f1b766b21f42d4562ee635a8ebfc5bb38c -cyrus-sasl-2.1.28.tar.gz MD5 6f228a692516f5318a64505b46966cfa +cyrus-sasl-2.1.27.tar.gz SHA1 fbfe6f298b0d2efcdab6a40bf47e16d003ae5dc6 +cyrus-sasl-2.1.27.tar.gz SHA256 26866b1549b00ffd020f188a43c258017fa1c382b3ddadd8201536f72efb05d5 +cyrus-sasl-2.1.27.tar.gz MD5 a33820c66e0622222c5aefafa1581083 From f3f0baa4c3bc8e8f28d2be29aef28bb55a96cf40 Mon Sep 17 00:00:00 2001 From: hgy59 Date: Sun, 24 Nov 2024 21:31:08 +0100 Subject: [PATCH 12/14] subversion: update to v1.14.4 - update subversion to v1.14.4 - update cross/apr to v1.7.5 --- cross/apr/Makefile | 2 +- cross/apr/PLIST | 2 +- cross/apr/digests | 6 +++--- cross/subversion/Makefile | 2 +- cross/subversion/digests | 6 +++--- spk/subversion/Makefile | 2 +- 6 files changed, 10 insertions(+), 10 deletions(-) diff --git a/cross/apr/Makefile b/cross/apr/Makefile index dd29ab86a6b..6353276dd0b 100644 --- a/cross/apr/Makefile +++ b/cross/apr/Makefile @@ -1,5 +1,5 @@ PKG_NAME = apr -PKG_VERS = 1.7.4 +PKG_VERS = 1.7.5 PKG_EXT = tar.bz2 PKG_DIST_NAME = $(PKG_NAME)-$(PKG_VERS).$(PKG_EXT) PKG_DIST_SITE = https://archive.apache.org/dist/apr diff --git a/cross/apr/PLIST b/cross/apr/PLIST index 0248a377e21..9a20eee1dbb 100644 --- a/cross/apr/PLIST +++ b/cross/apr/PLIST @@ -1,3 +1,3 @@ lnk:lib/libapr.so lnk:lib/libapr.so.0 -lib:lib/libapr.so.0.7.4 +lib:lib/libapr.so.0.7.5 diff --git a/cross/apr/digests b/cross/apr/digests index 9e3f48b49b1..3a18125e57d 100644 --- a/cross/apr/digests +++ b/cross/apr/digests @@ -1,3 +1,3 @@ -apr-1.7.4.tar.bz2 SHA1 3393f213ed9d4f6ad6425dbdbb6b2f620b45681a -apr-1.7.4.tar.bz2 SHA256 fc648de983f3a2a6c9e78dea1f180639bd2fad6c06d556d4367a701fe5c35577 -apr-1.7.4.tar.bz2 MD5 f8a62f3984898ba0ea8b6f26b851cb99 +apr-1.7.5.tar.bz2 SHA1 b6acc2ea8048d582136c93512bff520fe446d095 +apr-1.7.5.tar.bz2 SHA256 cd0f5d52b9ab1704c72160c5ee3ed5d3d4ca2df4a7f8ab564e3cb352b67232f2 +apr-1.7.5.tar.bz2 MD5 8b156d4d0e804cb1f172312ffe087c25 diff --git a/cross/subversion/Makefile b/cross/subversion/Makefile index 0935e7a5216..a30e6cebdda 100644 --- a/cross/subversion/Makefile +++ b/cross/subversion/Makefile @@ -1,5 +1,5 @@ PKG_NAME = subversion -PKG_VERS = 1.14.2 +PKG_VERS = 1.14.4 PKG_EXT = tar.bz2 PKG_DIST_NAME = $(PKG_NAME)-$(PKG_VERS).$(PKG_EXT) PKG_DIST_SITE = https://dlcdn.apache.org/subversion diff --git a/cross/subversion/digests b/cross/subversion/digests index a91ddf56990..7d9e61fe269 100644 --- a/cross/subversion/digests +++ b/cross/subversion/digests @@ -1,3 +1,3 @@ -subversion-1.14.2.tar.bz2 SHA1 24c0fb688f475d17abd5471b6ee354414825bf04 -subversion-1.14.2.tar.bz2 SHA256 c9130e8d0b75728a66f0e7038fc77052e671830d785b5616aad53b4810d3cc28 -subversion-1.14.2.tar.bz2 MD5 9927b167d1c67d663ca63125907f6f69 +subversion-1.14.4.tar.bz2 SHA1 f2f620b173ae1f734f2a29f5c970925f3ebf3777 +subversion-1.14.4.tar.bz2 SHA256 44ead116e72e480f10f123c914bb6f9f8c041711c041ed7abff1b8634a199e3c +subversion-1.14.4.tar.bz2 MD5 be9f6c5e8bb80e465152b4c5160d7f54 diff --git a/spk/subversion/Makefile b/spk/subversion/Makefile index 7cf521cba3a..af290f7dcab 100644 --- a/spk/subversion/Makefile +++ b/spk/subversion/Makefile @@ -1,5 +1,5 @@ SPK_NAME = subversion -SPK_VERS = 1.14.2 +SPK_VERS = 1.14.4 SPK_REV = 1 SPK_ICON = src/subversion.png From 8db6b95cba27235a8ed576b0eaaa69c032cbb47c Mon Sep 17 00:00:00 2001 From: hgy59 Date: Sun, 24 Nov 2024 23:44:07 +0100 Subject: [PATCH 13/14] subversion: update download url - use archive url for download (remains valid after upstream updates) --- cross/subversion/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cross/subversion/Makefile b/cross/subversion/Makefile index a30e6cebdda..621dae274b3 100644 --- a/cross/subversion/Makefile +++ b/cross/subversion/Makefile @@ -2,7 +2,7 @@ PKG_NAME = subversion PKG_VERS = 1.14.4 PKG_EXT = tar.bz2 PKG_DIST_NAME = $(PKG_NAME)-$(PKG_VERS).$(PKG_EXT) -PKG_DIST_SITE = https://dlcdn.apache.org/subversion +PKG_DIST_SITE = https://archive.apache.org/dist/subversion PKG_DIR = $(PKG_NAME)-$(PKG_VERS) DEPENDS = cross/zlib From ceb98163033f9a60a7fb73272f4c8b27d2dee892 Mon Sep 17 00:00:00 2001 From: hgy59 Date: Fri, 13 Dec 2024 22:01:11 +0100 Subject: [PATCH 14/14] subversion: update to v1.14.5 and use default port for DSM 7 packages --- cross/subversion/Makefile | 2 +- cross/subversion/digests | 6 +++--- spk/subversion/Makefile | 10 +++++++++- 3 files changed, 13 insertions(+), 5 deletions(-) diff --git a/cross/subversion/Makefile b/cross/subversion/Makefile index 621dae274b3..f04eaa91719 100644 --- a/cross/subversion/Makefile +++ b/cross/subversion/Makefile @@ -1,5 +1,5 @@ PKG_NAME = subversion -PKG_VERS = 1.14.4 +PKG_VERS = 1.14.5 PKG_EXT = tar.bz2 PKG_DIST_NAME = $(PKG_NAME)-$(PKG_VERS).$(PKG_EXT) PKG_DIST_SITE = https://archive.apache.org/dist/subversion diff --git a/cross/subversion/digests b/cross/subversion/digests index 7d9e61fe269..027f8dde0ad 100644 --- a/cross/subversion/digests +++ b/cross/subversion/digests @@ -1,3 +1,3 @@ -subversion-1.14.4.tar.bz2 SHA1 f2f620b173ae1f734f2a29f5c970925f3ebf3777 -subversion-1.14.4.tar.bz2 SHA256 44ead116e72e480f10f123c914bb6f9f8c041711c041ed7abff1b8634a199e3c -subversion-1.14.4.tar.bz2 MD5 be9f6c5e8bb80e465152b4c5160d7f54 +subversion-1.14.5.tar.bz2 SHA1 5350ef7ea238b5fff21f822dc9dbeed6e0e426c2 +subversion-1.14.5.tar.bz2 SHA256 e78a29e7766b8b7b354497d08f71a55641abc53675ce1875584781aae35644a1 +subversion-1.14.5.tar.bz2 MD5 af6001dc7af2f1242a4f72e8a5c565d2 diff --git a/spk/subversion/Makefile b/spk/subversion/Makefile index af290f7dcab..b184a5df19f 100644 --- a/spk/subversion/Makefile +++ b/spk/subversion/Makefile @@ -1,5 +1,5 @@ SPK_NAME = subversion -SPK_VERS = 1.14.4 +SPK_VERS = 1.14.5 SPK_REV = 1 SPK_ICON = src/subversion.png @@ -14,7 +14,15 @@ CHANGELOG = "Initial SynoCommunity Package release." HOMEPAGE = https://subversion.apache.org/ LICENSE = Apache 2.0 +include ../../mk/spksrc.common.mk + +ifeq ($(call version_ge, ${TCVERSION}, 7.0),1) +SERVICE_PORT = 3690 +else SERVICE_PORT = 3691 +DESCRIPTION += Port 3691 is used \(on DSM 6.x\) to avoid conflict with Subversion package of Synology. +endif + WIZARDS_DIR = src/wizard SERVICE_WIZARD_SHARENAME = wizard_repo_directory