LorbusChris / rspamd-rpm

:package: RPM packaging for Rspamd in Fedora
https://copr.fedorainfracloud.org/coprs/lorbus/rspamd/
Apache License 2.0
13 stars 10 forks source link

Rspamd 2.7 #21

Closed johankok closed 3 years ago

johankok commented 3 years ago

Rspamd version 2.7 was released (release notes). This is an updated spec file for the new version, that builds on Fedora 32, 33 and rawhide. The EL7 and EL8 builds are not successful as rspamd now requires cmake >= 3.12.

This would also resolve #20.

Full disclosure: I didn't check all bundled libraries in ./contrib/ to update the Provides: bundled(lib) yet.

FelixSchwarz commented 3 years ago

Thank you for the PR. I think it should be possible to get the version also building for EPEL7. You just need cmake3 (and I think EPEL 7 does not have the cmake macros).

%if 0%{?rhel} == 7
# rspamd requires cmake >= 3.12, EPEL7 ships that version as "cmake3"
BuildRequires:    cmake3 >= 3.12
%else
BuildRequires:    cmake  >= 3.12
%endif

...

%build
%if 0%{?rhel} == 7
CMAKE=%{__cmake3}
%else
CMAKE=%{__cmake}
%endif
FelixSchwarz commented 3 years ago

some updated/new bundled dependencies:

+# google-ced: Apache License v2
+# ced = "Compact Encoding Detection", https://github.com/google/compact_enc_det
+Provides: bundled(compact_enc_det) == 37529e6
...
 # libev: BSD-2-Clause
-Provides: bundled(libev)
+Provides: bundled(libev) == 4.33
...
 # lua-argparse: MIT
-Provides: bundled(lua-argparse)
+Provides: bundled(lua-argparse) = 0.7.0
 # lua-bit: MIT
-Provides: bundled(lua-bit)
+Provides: bundled(lua-bit) = 1.0.2
...
 # replxx: BSD-3-Clause
-Provides: bundled(replxx)
+Provides: bundled(replxx) = 0.0.2
...
 # zstd: BSD
-Provides: bundled(zstd) = 1.3.1
+Provides: bundled(zstd) = 1.4.5
johankok commented 3 years ago

I think it should be possible to get the version also building for EPEL7. You just need cmake3

Thanks! That fixes the version of cmake on EL7. There are still couple of missing dependencies on EL7 that prevent a successful build at the moment:

FelixSchwarz commented 3 years ago

I'm building without hyperscan and with the centos-sclo-rh repo. My build scripts also enable our private repo which used to provide some current ragel versions. Not sure if that repo is still important to build rspamd or if EPEL7 has caught up in the mean time.

Anyway - just having a current Fedora spec file somewhere is nice to have. (For EPEL 7 also a lot of the %dir patterns do not work.)

LorbusChris commented 3 years ago

Thanks @johankok and @FelixSchwarz!

@johankok are you OK with me squashing the commits?

Another question: I'd like to try again to get the spec reviewed and move it into the official Fedora repos. Is one of you a Fedora Packager and would be interested in co-maintaining the RPM there? (I could also sponsor you to become Packagers.)

FelixSchwarz commented 3 years ago

I'm fschwarz at Fedora but as you can see I have quite a lot on my plate already so I'm not too keen on taking more packages. (Though feel free to cc me at bug reports.)

johankok commented 3 years ago

@johankok are you OK with me squashing the commits?

Sure, feel free to squash.

Another question: I'd like to try again to get the spec reviewed and move it into the official Fedora repos. Is one of you a Fedora Packager and would be interested in co-maintaining the RPM there? (I could also sponsor you to become Packagers.)

I'm happy to help get this reviewed and co-maintain after that, but I am not a Fedora Packager yet. Becoming a Packager is something I would like, so this would be a perfect occasion to start.