From 52c32a8357729ccc6f5454eec70b63a40396f659 Mon Sep 17 00:00:00 2001 From: cinerea0 Date: Wed, 12 Apr 2023 13:21:08 -0400 Subject: [PATCH 1/3] New package: libdbi-0.9.0 --- common/shlibs | 1 + srcpkgs/libdbi-devel | 1 + srcpkgs/libdbi-doc | 1 + srcpkgs/libdbi/template | 30 ++++++++++++++++++++++++++++++ 4 files changed, 33 insertions(+) create mode 120000 srcpkgs/libdbi-devel create mode 120000 srcpkgs/libdbi-doc create mode 100644 srcpkgs/libdbi/template diff --git a/common/shlibs b/common/shlibs index 847f5daec09d..dde96bd527bb 100644 --- a/common/shlibs +++ b/common/shlibs @@ -4243,3 +4243,4 @@ libdate-tz.so.3 chrono-date-3.0.1_1 libayatana-ido3-0.4.so.0 ayatana-ido-0.9.2_1 libayatana-indicator3.so.7 libayatana-indicator-0.9.3_1 libayatana-appindicator3.so.1 libayatana-appindicator-0.5.91_1 +libdbi.so.1 libdbi-0.9.0_1 diff --git a/srcpkgs/libdbi-devel b/srcpkgs/libdbi-devel new file mode 120000 index 000000000000..461034ca75ea --- /dev/null +++ b/srcpkgs/libdbi-devel @@ -0,0 +1 @@ +libdbi \ No newline at end of file diff --git a/srcpkgs/libdbi-doc b/srcpkgs/libdbi-doc new file mode 120000 index 000000000000..461034ca75ea --- /dev/null +++ b/srcpkgs/libdbi-doc @@ -0,0 +1 @@ +libdbi \ No newline at end of file diff --git a/srcpkgs/libdbi/template b/srcpkgs/libdbi/template new file mode 100644 index 000000000000..8298ad802294 --- /dev/null +++ b/srcpkgs/libdbi/template @@ -0,0 +1,30 @@ +# Template file for 'libdbi' +pkgname=libdbi +version=0.9.0 +revision=1 +build_style=gnu-configure +short_desc="Database independent abstraction layer for C" +maintainer="cinerea0 " +license="LGPL-2.1-only" +homepage="https://libdbi.sourceforge.net/" +changelog="https://sourceforge.net/p/libdbi/libdbi/ci/master/tree/NEWS" +distfiles="${SOURCEFORGE_SITE}/libdbi/libdbi-${version}.tar.gz" +checksum=dafb6cdca524c628df832b6dd0bf8fabceb103248edb21762c02d3068fca4503 + +libdbi-devel_package() { + short_desc+=" - development files" + depends="${sourcepkg}>=${version}_${revision}" + pkg_install() { + vmove usr/include + vmove usr/lib/pkgconfig + vmove "usr/lib/*.a" + } +} + +libdbi-doc_package() { + short_desc+=" - documentation" + depends="${sourcepkg}>=${version}_${revision}" + pkg_install() { + vmove usr/share/doc + } +} From e61f46aa4d516bf5103f85e81b93ce6e3215ca01 Mon Sep 17 00:00:00 2001 From: cinerea0 Date: Wed, 12 Apr 2023 13:21:41 -0400 Subject: [PATCH 2/3] New package: libdbi-drivers-0.9.0 --- srcpkgs/libdbdmysql | 1 + srcpkgs/libdbdpgsql | 1 + srcpkgs/libdbdsqlite | 1 + srcpkgs/libdbi-drivers-devel | 1 + srcpkgs/libdbi-drivers-doc | 1 + srcpkgs/libdbi-drivers/template | 98 +++++++++++++++++++++++++++++++++ 6 files changed, 103 insertions(+) create mode 120000 srcpkgs/libdbdmysql create mode 120000 srcpkgs/libdbdpgsql create mode 120000 srcpkgs/libdbdsqlite create mode 120000 srcpkgs/libdbi-drivers-devel create mode 120000 srcpkgs/libdbi-drivers-doc create mode 100644 srcpkgs/libdbi-drivers/template diff --git a/srcpkgs/libdbdmysql b/srcpkgs/libdbdmysql new file mode 120000 index 000000000000..28d3bc25c5fc --- /dev/null +++ b/srcpkgs/libdbdmysql @@ -0,0 +1 @@ +libdbi-drivers \ No newline at end of file diff --git a/srcpkgs/libdbdpgsql b/srcpkgs/libdbdpgsql new file mode 120000 index 000000000000..28d3bc25c5fc --- /dev/null +++ b/srcpkgs/libdbdpgsql @@ -0,0 +1 @@ +libdbi-drivers \ No newline at end of file diff --git a/srcpkgs/libdbdsqlite b/srcpkgs/libdbdsqlite new file mode 120000 index 000000000000..28d3bc25c5fc --- /dev/null +++ b/srcpkgs/libdbdsqlite @@ -0,0 +1 @@ +libdbi-drivers \ No newline at end of file diff --git a/srcpkgs/libdbi-drivers-devel b/srcpkgs/libdbi-drivers-devel new file mode 120000 index 000000000000..28d3bc25c5fc --- /dev/null +++ b/srcpkgs/libdbi-drivers-devel @@ -0,0 +1 @@ +libdbi-drivers \ No newline at end of file diff --git a/srcpkgs/libdbi-drivers-doc b/srcpkgs/libdbi-drivers-doc new file mode 120000 index 000000000000..28d3bc25c5fc --- /dev/null +++ b/srcpkgs/libdbi-drivers-doc @@ -0,0 +1 @@ +libdbi-drivers \ No newline at end of file diff --git a/srcpkgs/libdbi-drivers/template b/srcpkgs/libdbi-drivers/template new file mode 100644 index 000000000000..cd8534e3a874 --- /dev/null +++ b/srcpkgs/libdbi-drivers/template @@ -0,0 +1,98 @@ +# Template file for 'libdbi-drivers' +pkgname=libdbi-drivers +version=0.9.0 +revision=1 +build_style=meta +configure_args="--prefix=/usr --with-mysql --with-pgsql --with-sqlite3 + --with-dbi-libdir=${XBPS_CROSS_BASE}/usr/lib" +hostmakedepends="docbook docbook-dsssl openjade postgresql-libs-devel" +makedepends="libdbi-devel libmariadbclient-devel postgresql-libs-devel + sqlite-devel zlib-devel" +depends="libdbdmysql libdbdpgsql libdbdsqlite" +short_desc="Database drivers for libdbi (MySQL, PostgreSQL, and SQLite)" +maintainer="cinerea0 " +license="LGPL-2.1-only" +homepage="https://libdbi-drivers.sourceforge.net/" +changelog="https://sourceforge.net/p/libdbi-drivers/libdbi-drivers/ci/master/tree/NEWS" +distfiles="${SOURCEFORGE_SITE}/libdbi-drivers/libdbi-drivers-${version}.tar.gz" +checksum=43d2eacd573a4faff296fa925dd97fbf2aedbf1ae35c6263478210c61004c854 +make_check=no # tests require full DB environments and hang + +# build_style is meta because subpackages move all files out of the main +# package, so build steps must be directly included. do_configure through +# do_install are taken directly from common/build-style/gnu-configure.sh. +do_configure() { + : ${configure_script:=./configure} + + export lt_cv_sys_lib_dlsearch_path_spec="/usr/lib64 /usr/lib32 /usr/lib /lib /usr/local/lib" + ${configure_script} ${configure_args} +} + +do_build() { + : ${make_cmd:=make} + + export lt_cv_sys_lib_dlsearch_path_spec="/usr/lib64 /usr/lib32 /usr/lib /lib /usr/local/lib" + ${make_cmd} ${makejobs} ${make_build_args} ${make_build_target} +} + +do_check() { + if [ -z "$make_cmd" ] && [ -z "$make_check_target" ]; then + if make -q check 2>/dev/null; then + : + else + if [ $? -eq 2 ]; then + msg_warn 'No target to "make check".\n' + return 0 + fi + fi + fi + + : ${make_cmd:=make} + : ${make_check_target:=check} + + ${make_check_pre} ${make_cmd} ${makejobs} ${make_check_args} ${make_check_target} +} + +do_install() { + : ${make_cmd:=make} + : ${make_install_target:=install} + + ${make_cmd} DESTDIR=${DESTDIR} ${make_install_args} ${make_install_target} +} + +libdbdmysql_package() { + short_desc="MySQL driver for libdbi" + pkg_install() { + vmove usr/lib/dbd/libdbdmysql.so + } +} + +libdbdpgsql_package() { + short_desc="PostgreSQL driver for libdbi" + pkg_install() { + vmove usr/lib/dbd/libdbdpgsql.so + } +} + +libdbdsqlite_package() { + short_desc="SQLite driver for libdbi" + pkg_install() { + vmove usr/lib/dbd/libdbdsqlite3.so + } +} + +libdbi-drivers-devel_package() { + short_desc+=" - development files" + depends="${sourcepkg}>=${version}_${revision}" + pkg_install() { + vmove "usr/lib/dbd/*.a" + } +} + +libdbi-drivers-doc_package() { + short_desc+=" - documentation" + depends="${sourcepkg}>=${version}_${revision}" + pkg_install() { + vmove usr/share/doc + } +} From a2a31e0cbcc197ce7fb7bfbf3b1ba3a70b5bf790 Mon Sep 17 00:00:00 2001 From: cinerea0 Date: Wed, 12 Apr 2023 13:23:20 -0400 Subject: [PATCH 3/3] gnucash: update to 5.0, enable SQL support --- srcpkgs/gnucash/files/README.voidlinux | 9 ++++++ srcpkgs/gnucash/template | 38 ++++++++++++++------------ 2 files changed, 30 insertions(+), 17 deletions(-) create mode 100644 srcpkgs/gnucash/files/README.voidlinux diff --git a/srcpkgs/gnucash/files/README.voidlinux b/srcpkgs/gnucash/files/README.voidlinux new file mode 100644 index 000000000000..3f48d63b07fc --- /dev/null +++ b/srcpkgs/gnucash/files/README.voidlinux @@ -0,0 +1,9 @@ +Installing GnuCash does not provide the libraries necessary to use its SQL +backend. Install the following packages to enable their corresponding SQL +backends: + +libdbdmysql MySQL +libdbdpgsql PostgreSQL +libdbdsqlite SQLite + +To install all of the above, install libdbi-drivers. diff --git a/srcpkgs/gnucash/template b/srcpkgs/gnucash/template index 3b3d1a4390e2..06bb934ac8ac 100644 --- a/srcpkgs/gnucash/template +++ b/srcpkgs/gnucash/template @@ -1,21 +1,23 @@ # Template file for 'gnucash' pkgname=gnucash -version=4.13 -revision=2 +version=5.0 +revision=1 build_style=cmake make_check_target=check -configure_args="-DWITH_SQL=0 -DWITH_PYTHON=1" -hostmakedepends="pkg-config guile python3 libxslt perl gettext swig" -makedepends="aqbanking-devel icu-devel boost-devel gc-devel glib-devel gtest-devel guile-devel - gwenhywfar-devel ktoblzcheck-devel libofx-devel libsecret-devel - libxslt-devel webkit2gtk-devel python3-devel gwenhywfar-gtk3 tzdata" +configure_args="-DWITH_PYTHON=1 -DCOMPILE_GSCHEMAS=0" +hostmakedepends="gettext guile libxslt perl pkg-config python3 swig" +makedepends="aqbanking-devel boost-devel gc-devel glib-devel gtest-devel + guile-devel gwenhywfar-devel gwenhywfar-gtk3 icu-devel ktoblzcheck-devel + libdbi-devel libdbi-drivers-devel libofx-devel libsecret-devel libxslt-devel + python3-devel tzdata webkit2gtk-devel" depends="dconf guile perl" short_desc="Financial-accounting software" maintainer="ManfredU " license="GPL-2.0-or-later" homepage="http://www.gnucash.org" -distfiles="${SOURCEFORGE_SITE}/${pkgname}/${pkgname}-${version}.tar.bz2" -checksum=401a158086635ea17fbb145325558537289aa1d24d022f7c3317e12f3dabd8e7 +changelog="https://raw.githubusercontent.com/Gnucash/gnucash/stable/NEWS" +distfiles="${SOURCEFORGE_SITE}/gnucash/gnucash-${version}.tar.bz2" +checksum=cfc13bab31aed8e4962805ef56530f9772889604910b5678cb5c79c283138824 pycompile_dirs="usr/share/gnucash/python" conf_files="/etc/gnucash/environment" @@ -30,14 +32,16 @@ if [ "$XBPS_TARGET_ENDIAN" = "be" ]; then fi post_install() { - case "$XBPS_TARGET_MACHINE" in - # startup fails in scheme code when the locale is set to anything - # else on musl - *-musl) sed -i -e 's/Exec=gnucash/Exec=env LANG=C gnucash/' \ - ${DESTDIR}/usr/share/applications/gnucash.desktop - ;; - esac - rm -f "${DESTDIR}/usr/share/glib-2.0/schemas/gschemas.compiled" + vdoc "${FILESDIR}/README.voidlinux" + # startup fails in scheme code when the locale is set to anything else on musl + if [ "$XBPS_TARGET_LIBC" = "musl" ]; then + vsed -i ${DESTDIR}/usr/share/applications/gnucash.desktop \ + -e 's/Exec=gnucash/Exec=env LANG=C gnucash/' + fi + # Delete the gnucash-valgrind executable because the source files + # are not included with the package and the executable is hardlinked + # to the location that it was built at. + rm -f "${DESTDIR}/usr/bin/gnucash-valgrind" } gnucash-devel_package() {