diff options
Diffstat (limited to 'community/clamav/APKBUILD')
-rw-r--r-- | community/clamav/APKBUILD | 206 |
1 files changed, 112 insertions, 94 deletions
diff --git a/community/clamav/APKBUILD b/community/clamav/APKBUILD index eb7a363b7e5..03320c0c482 100644 --- a/community/clamav/APKBUILD +++ b/community/clamav/APKBUILD @@ -1,27 +1,61 @@ # Contributor: Valery Kartel <valery.kartel@gmail.com> # Contributor: Ćukasz Jendrysik <scadu@yandex.com> # Contributor: Carlo Landmeter <clandmeter@alpinelinux.org> +# Contributor: Krassy Boykinov <kboykinov@teamcentrixx.com> # Maintainer: Carlo Landmeter <clandmeter@alpinelinux.org> pkgname=clamav -pkgver=0.103.3 -pkgrel=1 +pkgver=1.2.2 +pkgrel=0 pkgusers="clamav" pkggroups="clamav" pkgdesc="An anti-virus toolkit for UNIX eis-ng backport" url="https://www.clamav.net/" arch="all" -license="GPL-2.0-only WITH OpenSSL-Exception" +license="GPL-2.0-only" depends="$pkgname-scanner $pkgname-daemon" -depends_dev="openssl1.1-compat-dev" -install="freshclam.pre-install - clamav-daemon.pre-install clamav-daemon.pre-upgrade" -makedepends="ncurses-dev zlib-dev bzip2-dev pcre-dev linux-headers $depends_dev - libmilter-dev fts-dev curl-dev autoconf automake libtool" -subpackages="$pkgname-doc $pkgname-dev $pkgname-libunrar $pkgname-libs - $pkgname-daemon $pkgname-clamdscan $pkgname-scanner $pkgname-db::noarch freshclam - $pkgname-daemon-openrc:daemon_rc:noarch freshclam-openrc:freshclam_rc:noarch - $pkgname-milter" +depends_dev="openssl-dev>3" +install=" + freshclam.pre-install + clamav-daemon.pre-install + clamav-daemon.pre-upgrade + " +makedepends=" + $depends_dev + bzip2-dev + cargo + check-dev + cmake + curl-dev + json-c-dev + libmilter-dev + libmspack-dev + libxml2-dev + linux-headers + musl-fts-dev + ncurses-dev + pcre2-dev + python3 + samurai + zlib-dev + " +subpackages=" + $pkgname-doc + $pkgname-dev + $pkgname-libunrar + $pkgname-libs + $pkgname-daemon + $pkgname-clamdscan + $pkgname-scanner + $pkgname-db::noarch + freshclam + $pkgname-daemon-openrc:daemon_rc:noarch + freshclam-openrc:freshclam_rc:noarch + $pkgname-milter + " source="https://www.clamav.net/downloads/production/clamav-$pkgver.tar.gz + link-fts.patch + clamd_freshclam_conf_alpine.patch + clamd.initd clamd.confd freshclam.initd @@ -30,8 +64,27 @@ source="https://www.clamav.net/downloads/production/clamav-$pkgver.tar.gz freshclam.logrotate " +case "$CARCH" in +arm*|s390x) + # arm: tests take way too long + # s390x: weird networking errors + options="$options !check" + ;; +esac # secfixes: +# 1.2.2-r0: +# - CVE-2024-20290 +# - CVE-2024-20328 +# 1.2.0-r0: +# - CVE-2022-48579 +# 1.1.1-r0: +# - CVE-2023-20197 +# 1.0.1-r0: +# - CVE-2023-20032 +# - CVE-2023-20052 +# 0.104.2-r0: +# - CVE-2022-20698 # 0.103.2-r0: # - CVE-2021-1405 # - CVE-2021-1404 @@ -76,83 +129,53 @@ source="https://www.clamav.net/downloads/production/clamav-$pkgver.tar.gz # - CVE-2018-14681 # - CVE-2018-14682 -prepare() { - update_config_sub - default_prepare - autoreconf -ifv -} build() { - LIBS=-lfts ./configure \ - --build=$CBUILD \ - --host=$CHOST \ - --prefix=/usr \ - --libdir=/usr/lib \ - --sysconfdir=/etc/clamav \ - --mandir=/usr/share/man \ - --infodir=/usr/share/info \ - --without-iconv \ - --disable-llvm \ - --with-user=clamav \ - --with-group=clamav \ - --with-dbdir=/var/lib/clamav \ - --enable-clamdtop \ - --enable-bigstack \ - --with-pcre \ - --enable-milter \ - --enable-clamonacc - make + cmake -B build -G Ninja \ + -DCMAKE_BUILD_TYPE=None \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCMAKE_INSTALL_LIBDIR=/usr/lib \ + -DCMAKE_SKIP_INSTALL_RPATH=ON \ + -DAPP_CONFIG_DIRECTORY=/etc/clamav \ + -DDATABASE_DIRECTORY=/var/lib/clamav \ + -DENABLE_DOXYGEN=OFF \ + -DENABLE_SYSTEMD=OFF \ + -DENABLE_TESTS=ON \ + -DENABLE_CLAMONACC=ON \ + -DENABLE_MILTER=ON \ + -DENABLE_EXTERNAL_MSPACK=ON \ + -DENABLE_EXAMPLES=ON \ + -DENABLE_EXAMPLES_DEFAULT=ON \ + -DHAVE_SYSTEM_LFS_FTS=ON \ + -DENABLE_JSON_SHARED=ON + cmake --build build } check() { - make check + ctest --test-dir build --output-on-failure } package() { - make DESTDIR="$pkgdir" install - - # set proper defaults - sed -i -e "s:^\(Example\):\# \1:" \ - -e "s:.*\(PidFile\) .*:\1 /run/clamav/freshclam.pid:" \ - -e "s:.*\(DatabaseOwner\) .*:\1 clamav:" \ - -e "s:^\#\(UpdateLogFile\) .*:\1 /var/log/clamav/freshclam.log:" \ - -e "s:^\#\(NotifyClamd\).*:\1 /etc/clamav/clamd.conf:" \ - -e "s:^\#\(ScriptedUpdates\).*:\1 yes:" \ - -e "s:^\#\(AllowSupplementaryGroups\).*:\1 yes:" \ - "$pkgdir"/etc/clamav/freshclam.conf.sample - - # set proper defaults - sed -i -e "s:^\(Example\):\# \1:" \ - -e "s:.*\(PidFile\) .*:\1 /run/clamav/clamd.pid:" \ - -e "s:.*\(LocalSocket\) .*:\1 /run/clamav/clamd.sock:" \ - -e "s:.*\(User\) .*:\1 clamav:" \ - -e "s:^\#\(LogFile\) .*:\1 /var/log/clamav/clamd.log:" \ - -e "s:^\#\(LogTime\).*:\1 yes:" \ - -e "s:^\#\(AllowSupplementaryGroups\).*:\1 yes:" \ - "$pkgdir"/etc/clamav/clamd.conf.sample -} - -check() { - make check + DESTDIR="$pkgdir" cmake --install build } libunrar() { pkgdesc="ClamAV unrar libraries" replaces="clamav" depends= - mkdir -p "$subpkgdir"/usr/lib - mv "$pkgdir"/usr/lib/libclamunrar* \ - "$subpkgdir"/usr/lib/ + + amove usr/lib/libclamunrar* } freshclam() { pkgdesc="Auto-updater for the Clam Antivirus scanner data-files" replaces="clamav clamav-db" depends= - mkdir -p "$subpkgdir"/usr/bin \ - "$subpkgdir"/etc/clamav - mv "$pkgdir"/usr/bin/freshclam "$subpkgdir"/usr/bin + mkdir -p "$subpkgdir"/etc/clamav + + amove usr/bin/freshclam + mv "$pkgdir"/etc/clamav/freshclam.conf.sample \ "$subpkgdir"/etc/clamav/freshclam.conf @@ -169,8 +192,6 @@ freshclam_rc() { install_if="freshclam=$pkgver-r$pkgrel openrc" replaces="clamav freshclam" depends= - mkdir -p "$subpkgdir"/etc/init.d \ - "$subpkgdir"/etc/conf.d install -m755 -D "$srcdir"/freshclam.initd \ "$subpkgdir"/etc/init.d/freshclam @@ -195,38 +216,32 @@ scanner() { replaces="clamav" depends="freshclam" mkdir -p "$subpkgdir"/usr/bin - mv "$pkgdir"/usr/bin/clamscan \ - "$subpkgdir"/usr/bin/ - mv "$pkgdir"/usr/bin/sigtool \ - "$subpkgdir"/usr/bin/ - mv "$pkgdir"/usr/bin/clambc \ - "$subpkgdir"/usr/bin/ + + amove usr/bin/clamscan + amove usr/bin/sigtool + amove usr/bin/clambc } clamdscan() { pkgdesc="ClamAV daemon client" - depends="openssl" - mkdir -p "$subpkgdir"/usr/bin/ - mv "$pkgdir"/usr/bin/clamdscan \ - "$subpkgdir"/usr/bin/ + depends= + + amove usr/bin/clamdscan } daemon() { pkgdesc="ClamAV daemon scanner" replaces="clamav" depends="freshclam $pkgname-clamdscan" - mkdir -p "$subpkgdir"/usr/bin \ - "$subpkgdir"/usr/sbin \ - "$subpkgdir"/etc/clamav + mkdir -p "$subpkgdir"/etc/clamav install -d -m 755 -o clamav -g clamav \ "$subpkgdir"/var/log/clamav \ "$subpkgdir"/var/lib/clamav - mv "$pkgdir"/usr/bin/clamconf \ - "$subpkgdir"/usr/bin/ - mv "$pkgdir"/usr/sbin/clamd \ - "$subpkgdir"/usr/sbin/ - mv "$pkgdir"/usr/bin/clamdtop \ - "$subpkgdir"/usr/bin/ + + amove usr/bin/clamdtop + amove usr/sbin/clamd + amove usr/bin/clamconf + mv "$pkgdir"/etc/clamav/clamd.conf.sample \ "$subpkgdir"/etc/clamav/clamd.conf install -m644 -D "$srcdir"/clamd.logrotate \ @@ -248,16 +263,19 @@ daemon_rc() { milter() { pkgdesc="ClamAV milter" depends= - mkdir -p "$subpkgdir"/usr/sbin \ - "$subpkgdir"/etc/clamav - mv "$pkgdir"/usr/sbin/clamav-milter \ - "$subpkgdir"/usr/sbin/ + + mkdir -p "$subpkgdir"/etc/clamav + + amove usr/sbin/clamav-milter + mv "$pkgdir"/etc/clamav/clamav-milter.conf.sample \ "$subpkgdir"/etc/clamav/clamav-milter.conf } sha512sums=" -c2ee24a6f63735c064140aa5baa347d51e8240b2f7eced3480d05435202aedd481fa7057fd40ecbc2e93a62fe8b0cefb574d8accdf9acede643ffbe0d396686f clamav-0.103.3.tar.gz +f752496aad03efdf9e9041c8842cd6e11276a4889345e39f0d617ff046db5f90d9f7ffb3153d7ca1db3b3e452c7dd3829d4c804da73910156e827fb8d57ba230 clamav-1.2.2.tar.gz +20a52291d00e0b8e6e0cd7b31484a577045dfa8e2481fe1e4e1640e6f6d9317114c7fd53211a2bf9edcea4e084789b4820d7ceeaaf17346d581524683289e698 link-fts.patch +eea1d6e9b1949ac1dfac14a9c7dac57e43acd7a85e494f9f8fdf40eb0cd8cdd1c3054fbea6310d858fa2675e8801b10f5f569899c8ce1dec405f065b62300179 clamd_freshclam_conf_alpine.patch d886d810de66e8da800384c1e8192f7da4352402ffc3b33cfbca93d81a2235d8c902ca9d436b9be70f00740b4555e1efbf09bf9f84059095a1a297b27581cd20 clamd.initd 59c561b3dcb0b616b647cd8e4ebc46a2cc5e7144c8c7ea0054cc1c3021d1da8f67e4dad5c083c3fe712ed887aaabfca91b538f4759537e7c4c9ab71ba4fd5794 clamd.confd 6f0c615b89f0f0d2f0e9f965f025b9ac8c81b2168fa6727dc8a47222abd780f9b656732f289d6061a20126b16126a975d50e8b3b8ff131f55dd8803da8be5dec freshclam.initd |