summaryrefslogtreecommitdiff
path: root/sys-process
diff options
context:
space:
mode:
Diffstat (limited to 'sys-process')
-rw-r--r--sys-process/Manifest.gzbin10147 -> 10143 bytes
-rw-r--r--sys-process/systemd-cron/Manifest2
-rw-r--r--sys-process/systemd-cron/files/systemd-cron-2.3.0-pch.patch46
-rw-r--r--sys-process/systemd-cron/systemd-cron-2.3.0-r2.ebuild105
4 files changed, 153 insertions, 0 deletions
diff --git a/sys-process/Manifest.gz b/sys-process/Manifest.gz
index 596e385ea207..9a561421416c 100644
--- a/sys-process/Manifest.gz
+++ b/sys-process/Manifest.gz
Binary files differ
diff --git a/sys-process/systemd-cron/Manifest b/sys-process/systemd-cron/Manifest
index e38254009804..473fa58287cd 100644
--- a/sys-process/systemd-cron/Manifest
+++ b/sys-process/systemd-cron/Manifest
@@ -1,7 +1,9 @@
+AUX systemd-cron-2.3.0-pch.patch 2046 BLAKE2B 69cab73f732f045c3a62c33dfbc4902d73be8961d0d7520799353684e6557535ffbf1c683f6f17b7c65521549c78f01fcaf206b163b9e35c156ec07f57c54cdc SHA512 deadf5ef1a4257124fde6c66bd6ba84db4f7456e39ad4e30d0a4fa71931f48c8d13858364df6ce6fb52ef57ce4e3f53dae631d937e79eaac0562a54e37013762
DIST systemd-cron-1.16.7.tar.gz 37887 BLAKE2B a900058cef1cd02ac464d3ecdd43ce2f264bdba386f349ef82f0a915104302b1e88d94331d5fbaabe2c54f526900f3e1ac65ea6bdc2f27a6464e6d7514561a19 SHA512 d65d641fd449cdc0e91db3ae6ebe464bc4e24027c501b30a8ab17e7cc40de290cc6141bfb7880a724d97248861587e6f5fea113a6aa6e468d971aff3a13b056f
DIST systemd-cron-2.2.0.tar.gz 55825 BLAKE2B ca4b02fdea5084439aa56b3f04603000d811f21922c11cd26a22ea6387e4b54575587ff4e1eb7fc7a3260d2f656ea0eb91365942c135982f4bd26aead1a080f1 SHA512 f26c7d7e2da7eb5cd5558f352aff852585bfefd961de6ecc2409a4a53b63f82662a89bdbf71f739ea8e44ef9e3e1fdec15cdc63ce1e90c289fb0e636ff679ca0
DIST systemd-cron-2.3.0.tar.gz 56873 BLAKE2B 3efe8adc1b735ed5eb91c64d0936edceec50ff476d42ba5c1e9941c196a7bc8c777b0c293c8ed71894dae31c5b721a45a2876cab0143298e1b1ab3e82fcb7ceb SHA512 abb7c34d6901160395d64cfc4e5124887909b963bcfee027f64642b25bb138b3f085eb45595197a380faf39b7f5980e32c50d083be6307d7c985a55057962565
EBUILD systemd-cron-1.16.7-r1.ebuild 2612 BLAKE2B a2b15b5f96489111812f1eb6a8576fbd8899a7ab9f44afdc55b59089f73034c0dbd771923781290515b206837ea28f9399cd8e226d2691b16e96f8f153b305f2 SHA512 6324fb47ff6a84b2eeeb65e30f8b4acfd0336f32ebbc9669f767a7efa2b7ad5745790d08495a2fff5f852b6e43f516b950fe409512eb8e5cc0b967af1d0ed3f4
EBUILD systemd-cron-2.2.0-r1.ebuild 2473 BLAKE2B a8951e85da5080120a13a787e99bdfcd242fe7e523c73b8675bb905090f038bc686cdd9a86d63e5e4e1361ecfb4cf07f8966a434ee0487f0b179f4391b63e184 SHA512 0d81aa087e5b550290a9ea9a734f8a9e6c8ce5e746659fbeccf2dd79f3693579f984e7384902e7bacc8680a907f772f4bf3c90c6d408d061ee9b69be6a9b0345
EBUILD systemd-cron-2.3.0-r1.ebuild 2480 BLAKE2B 23baf0961eb0be814b3fef196b8655471b3571f7435e7d10482726d8a3f6bfba23671abbf7dd2c901c1c7ce120a92405ac1476ac20bbea5e9c1406582baf28f9 SHA512 da02831a09c5604a4e4bead071da026b71b6dcb9a3914c82493be78dc74d35060fb3478972c6082ed4586e6e5fb49f95731532f5df2c0fc2c0bc42d9022a0470
+EBUILD systemd-cron-2.3.0-r2.ebuild 2724 BLAKE2B 53dac8f89d34cc6d2520295772c3f65dd7ace919dd33f83f643fbd36ece705c9fa3b0470b0b337ad204c5c81bbb92092f8ec278ce79fa8a2c55c144c5e835d70 SHA512 2a7d497b306f3274dab0049b60a1e6d7b86371f48da1b99e1ce3fb96fc1c5934bced68153fdee2f4da2d4eb9ad6af210ac5cde99beb7e8e7caec9dc56ee9941f
MISC metadata.xml 801 BLAKE2B 8ac1580d5dae701d11c893bc7d9990b8a0c023c148b9fb7a945ba7f12429dd4a2abc78331f659831fa26b5f5c570919156848c3ebcd4df7ea050fdc50272f43c SHA512 1c7e77f04d294fc51de86b07f63c9163468dcb321d14c8447c61a4a0a7f99efc438d6ae1ffe315cf148377c2ac5e038afcc93f68516b11ca5eb066f8b186bcef
diff --git a/sys-process/systemd-cron/files/systemd-cron-2.3.0-pch.patch b/sys-process/systemd-cron/files/systemd-cron-2.3.0-pch.patch
new file mode 100644
index 000000000000..e27f253a62ca
--- /dev/null
+++ b/sys-process/systemd-cron/files/systemd-cron-2.3.0-pch.patch
@@ -0,0 +1,46 @@
+https://bugs.gentoo.org/917646
+https://github.com/systemd-cron/systemd-cron/issues/141
+https://github.com/systemd-cron/systemd-cron/commit/1662b899b206f00face30b9d4671551427262b07
+
+From 1662b899b206f00face30b9d4671551427262b07 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?=D0=BD=D0=B0=D0=B1?= <nabijaczleweli@nabijaczleweli.xyz>
+Date: Tue, 21 Nov 2023 19:40:05 +0100
+Subject: [PATCH] Add PCH= for broken compilers like #141
+
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -1,6 +1,7 @@
+ CFLAGS ?= -O2
+ SHELLCHECK ?= shellcheck
+ CRONTAB ?= crontab
++PCH ?= y
+
+ version := @version@
+ schedules := @schedules@
+@@ -208,12 +209,12 @@ $(builddir)/include/%.hpp: $(srcdir)/include/%.hpp
+ CXXVER := $(shell $(CXX) --version | { read -r l; echo "$$l"; })
+ ifneq "$(findstring clang,$(CXXVER))" ""
+ # clang doesn't use PCHs automatically
+- PCH_ARG := -include-pch $(builddir)/include/libvoreutils.hpp.gch -Wno-gcc-compat
++ PCH_ARG := $(if $(PCH),-include-pch $(builddir)/include/libvoreutils.hpp.gch) -Wno-gcc-compat
+ else
+ PCH_ARG :=
+ endif
+
+-common_headers := $(builddir)/include/configuration.hpp $(builddir)/include/libvoreutils.hpp.gch $(builddir)/include/util.hpp
++common_headers := $(builddir)/include/configuration.hpp $(builddir)/include/libvoreutils.hpp$(if $(PCH),.gch) $(builddir)/include/util.hpp
+ CFLAGS += -Wall -Wextra -fno-exceptions -Wno-psabi
+ $(builddir)/include/libvoreutils.hpp.gch : $(builddir)/include/libvoreutils.hpp
+ $(CXX) $(CFLAGS) $(CPPFLAGS) -std=c++20 -I $(builddir)/include $< -o $@
+--- a/README.md
++++ b/README.md
+@@ -146,6 +146,8 @@ without the override, the jobs would run twice since native-timer detection woul
+ If there is already a perfect 1:1 mapping between `/etc/cron.<freq>/<job>` and `/usr/lib/systemd/system/<job>.timer`,
+ then it is not needed to add an entry to these tables.
+
++If your compiler's [PCH compilation is broken](https://github.com/systemd-cron/systemd-cron/issues/141), build with `make PCH=`.
++
+ ### Caveat
+
+ Your package should also run these extra commands before starting cron.target
+
diff --git a/sys-process/systemd-cron/systemd-cron-2.3.0-r2.ebuild b/sys-process/systemd-cron/systemd-cron-2.3.0-r2.ebuild
new file mode 100644
index 000000000000..b7c8fd07ac68
--- /dev/null
+++ b/sys-process/systemd-cron/systemd-cron-2.3.0-r2.ebuild
@@ -0,0 +1,105 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+inherit systemd toolchain-funcs
+
+DESCRIPTION="systemd units to create timers for cron directories and crontab"
+HOMEPAGE="https://github.com/systemd-cron/systemd-cron/"
+SRC_URI="https://github.com/systemd-cron/${PN}/archive/v${PV}.tar.gz -> systemd-cron-${PV}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="cron-boot etc-crontab-systemd minutely +runparts setgid yearly"
+# We can't run the unshare tests within sandbox/with low privs, and the
+# 'test-nounshare' target just does static analysis (shellcheck etc).
+RESTRICT="test"
+
+BDEPEND="virtual/pkgconfig"
+RDEPEND="
+ !sys-process/cronie[anacron]
+ acct-user/_cron-failure
+ acct-group/_cron-failure
+ dev-libs/openssl:=
+ sys-process/cronbase
+ >=sys-apps/systemd-253
+ !etc-crontab-systemd? ( !sys-process/dcron )
+ runparts? ( sys-apps/debianutils )
+"
+DEPEND="
+ dev-libs/openssl:=
+ sys-process/cronbase
+"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-2.3.0-pch.patch
+)
+
+pkg_pretend() {
+ if use runparts && ! [ -x /usr/bin/run-parts ] ; then
+ eerror "Please complete the migration to merged-usr."
+ eerror "https://wiki.gentoo.org/wiki/Merge-usr"
+ die "systemd-cron no longer supports split-usr"
+ fi
+}
+
+src_prepare() {
+ sed -i \
+ -e 's/^crontab/crontab-systemd/' \
+ -e 's/^CRONTAB/CRONTAB-SYSTEMD/' \
+ -- "${S}/src/man/crontab."{1,5}".in" || die
+
+ if use etc-crontab-systemd
+ then sed -i \
+ -e "s!/etc/crontab!/etc/crontab-systemd!" \
+ -- "${S}/src/man/crontab."{1,5}".in" \
+ "${S}/src/bin/systemd-crontab-generator.cpp" \
+ "${S}/test/test-generator" || die
+ fi
+
+ default
+}
+
+my_use_enable() {
+ if use ${1}; then
+ echo --enable-${2:-${1}}=yes
+ else
+ echo --enable-${2:-${1}}=no
+ fi
+}
+
+src_configure() {
+ tc-export PKG_CONFIG CXX CC
+
+ ./configure \
+ --prefix="${EPREFIX}/usr" \
+ --mandir="${EPREFIX}/usr/share/man" \
+ --unitdir="$(systemd_get_systemunitdir)" \
+ --generatordir="$(systemd_get_systemgeneratordir)" \
+ $(my_use_enable cron-boot boot) \
+ $(my_use_enable minutely) \
+ $(my_use_enable runparts) \
+ $(my_use_enable yearly) \
+ $(my_use_enable yearly quarterly) \
+ $(my_use_enable yearly semi_annually) || die
+
+ export CRONTAB=crontab-systemd
+}
+
+src_compile() {
+ emake PCH=
+}
+
+src_install() {
+ default
+ rm -f "${ED}"/usr/lib/sysusers.d/systemd-cron.conf
+}
+
+pkg_postinst() {
+ elog "This package now supports USE=runparts which is enabled by default."
+ elog "This enables the traditional run-parts behavior."
+ elog "If you disable this flag you will get the new behavior of having"
+ elog "multiple jobs for each cron.* entry run in parallel with"
+ elog "separate services/logs/etc."
+}