From 47d42dea31afd0d29963b865dd7a13b2996d728aff1fdc0ed323e400a73027d5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lars=20M=C3=BCller?= Date: Wed, 6 Nov 2013 14:19:55 +0000 Subject: [PATCH 1/2] Accepting request 204919 from home:posophe:branches:server:mail Add systemd support for openSUSE >= 12.3 OBS-URL: https://build.opensuse.org/request/show/204919 OBS-URL: https://build.opensuse.org/package/show/server:mail/exim?expand=0&rev=130 --- exim.changes | 6 ++++++ exim.service | 14 +++++++++++++ exim.spec | 56 ++++++++++++++++++++++++++++++++++++++-------------- 3 files changed, 61 insertions(+), 15 deletions(-) create mode 100644 exim.service diff --git a/exim.changes b/exim.changes index 7479b49..b9397f1 100644 --- a/exim.changes +++ b/exim.changes @@ -1,3 +1,9 @@ +------------------------------------------------------------------- +Sun Oct 27 17:35:43 UTC 2013 - p.drouand@gmail.com + +- Add systemd support for openSUSE >= 12.3 +- Remove some obsolete conditionnal macros + ------------------------------------------------------------------- Sun Jun 16 02:13:52 UTC 2013 - jengelh@inai.de diff --git a/exim.service b/exim.service new file mode 100644 index 0000000..392a899 --- /dev/null +++ b/exim.service @@ -0,0 +1,14 @@ +[Unit] +Description=Exim Mail Transport Agent +After=network.target +Conflicts=sendmail.service postfix.service + +[Service] +PrivateTmp=true +Environment=QUEUE=1h +EnvironmentFile=-/etc/sysconfig/exim +ExecStartPre=-/usr/libexec/exim-gen-cert +ExecStart=/usr/sbin/exim -bd -q${QUEUE} + +[Install] +WantedBy=multi-user.target diff --git a/exim.spec b/exim.spec index 2f6b9a8..3907388 100644 --- a/exim.spec +++ b/exim.spec @@ -24,13 +24,8 @@ BuildRequires: openldap2-devel BuildRequires: pcre-devel %if %{?suse_version:1}%{?!suse_version:0} BuildRequires: tcpd-devel -%if %suse_version > 910 BuildRequires: xorg-x11-devel %else -BuildRequires: XFree86-devel -BuildRequires: XFree86-libs -%endif -%else BuildRequires: libXaw-devel BuildRequires: libXext-devel BuildRequires: libXt-devel @@ -43,7 +38,15 @@ Conflicts: sendmail sendmail-tls postfix Provides: smtp_daemon %if %{?suse_version:%suse_version}%{?!suse_version:0} > 800 Requires: logrotate -PreReq: %insserv_prereq %fillup_prereq /usr/sbin/useradd fileutils textutils +%if 0%{?suse_version} >=1230 +BuildRequires: pkgconfig(systemd) +%{?systemd_requires} +%else +Requires(pre): %insserv_prereq +%endif +Requires(pre): %fillup_prereq +Requires(pre): /usr/sbin/useradd +Requires(pre): fileutils textutils %endif Version: 4.80.1 Release: 0 @@ -68,6 +71,7 @@ Source13: apparmor.usr.sbin.exim Source20: http://www.logic.univie.ac.at/~ametzler/debian/exim4manpages/exim4-manpages.tar.bz2 Source30: eximstats-html-update.py Source31: eximstats.conf +Source32: exim.service Patch: exim-tail.patch %if !%{?build_with_mysql:1}0 && !%{?build_with_pgsql:1}0 @@ -244,7 +248,11 @@ rm -f doc/*.{orig,txt~} make %install +%if 0%{?suse_version} >=1230 +mkdir -p $RPM_BUILD_ROOT/%{_unitdir} +%else mkdir -p $RPM_BUILD_ROOT/etc/init.d +%endif mkdir -p $RPM_BUILD_ROOT/etc/logrotate.d mkdir -p $RPM_BUILD_ROOT/usr/{bin,sbin,lib} mkdir -p $RPM_BUILD_ROOT/var/log/exim @@ -258,7 +266,11 @@ make inst_dest=$RPM_BUILD_ROOT/usr/sbin \ INSTALL_ARG=-no_chown install mv $RPM_BUILD_ROOT/usr/sbin/exim-%{version}* $RPM_BUILD_ROOT/usr/sbin/exim mv $RPM_BUILD_ROOT/etc/exim/exim.conf src/configure.default # with all substitutions done +%if 0%{?suse_version} >=1230 +install -m 755 %{S:32} $RPM_BUILD_ROOT/%{_unitdir}/exim.service +%else install -m 755 %{S:11} $RPM_BUILD_ROOT/etc/init.d/exim +%endif # aka... for i in \ /usr/lib/sendmail \ @@ -270,7 +282,11 @@ do ln -sf ../sbin/exim $RPM_BUILD_ROOT$i done ln -sf exim $RPM_BUILD_ROOT/usr/sbin/sendmail +%if 0%{?suse_version} >=1230 +ln -sv ../../%{_unitdir}/exim.service $RPM_BUILD_ROOT/usr/sbin/rcexim +%else ln -sv ../../etc/init.d/exim $RPM_BUILD_ROOT/usr/sbin/rcexim +%endif %if !%{?build_with_mysql:1}0 && !%{?build_with_pgsql:1}0 mv $RPM_BUILD_ROOT/usr/sbin/eximon* $RPM_BUILD_ROOT/usr/bin/ %else @@ -305,11 +321,6 @@ gzip -9 doc/*.txt # package the utilities without executable permissions, to silence rpmlint warnings chmod 644 util/*.{pl,sh} src/convert4r* # -# since 10.0, the permissions file is packaged in the 'permissions' package -%if %{?suse_version:%suse_version}%{?!suse_version:99999} < 1000 -install -m 0755 -d $RPM_BUILD_ROOT/etc/permissions.d -install -m 0644 $RPM_SOURCE_DIR/permissions.exim $RPM_BUILD_ROOT/etc/permissions.d/exim -%endif # eximstats-html files %if !%{?build_with_mysql:1}0 && !%{?build_with_pgsql:1}0 mkdir -p $RPM_BUILD_ROOT/srv/www/eximstats @@ -339,24 +350,35 @@ fi for i in var/log/exim/main.log var/log/exim/panic.log var/log/exim/reject.log; do if ! test -e $i; then touch $i; chown mail:mail $i; chmod 640 $i ; fi done +%if 0%{?suse_version} >=1230 +%{fillup_only} +%service_add_post exim.service +%else %{fillup_and_insserv exim} +%endif exit 0 -%if %{?suse_version:%suse_version}%{?!suse_version:0} > 820 +%if %{?suse_version:%suse_version} %preun +%if 0%{?suse_version} >=1230 +%service_del_preun exim.service +%else %stop_on_removal exim %endif +%endif %postun -%if %{?suse_version:%suse_version}%{?!suse_version:0} > 820 +%if %{?suse_version:%suse_version} +%if 0%{?suse_version} >=1230 +%service_del_postun exim.service +%else %restart_on_update exim %endif +%endif %insserv_cleanup %verifyscript %verify_permissions -e /usr/sbin/exim -%clean - %files %defattr(-,root,root) %doc ACKNOWLEDGMENTS CHANGES LICENCE NOTICE README.UPDATING README @@ -376,7 +398,11 @@ exit 0 /usr/sbin/exiqsumm /usr/sbin/exiwhat %dir /etc/exim +%if 0%{?suse_version} >=1230 +%{_unitdir}/exim.service +%else %config /etc/init.d/exim +%endif %config(noreplace) /etc/logrotate.d/exim %if %{?suse_version:%suse_version}%{?!suse_version:99999} < 1000 %config(noreplace) /etc/permissions.d/exim From bfff3f2a7110d1707909183692b0013bf1625793eda52f79ab47e038dc9fc909 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lars=20M=C3=BCller?= Date: Wed, 6 Nov 2013 14:26:33 +0000 Subject: [PATCH 2/2] - Replace >= 1230 by > 1220 as this type of condition is used anywhere else in the exim spec file. - Remove a trailing while space from the spec file. OBS-URL: https://build.opensuse.org/package/show/server:mail/exim?expand=0&rev=131 --- exim.changes | 2 +- exim.spec | 18 +++++++++--------- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/exim.changes b/exim.changes index b9397f1..bc8ef3b 100644 --- a/exim.changes +++ b/exim.changes @@ -1,7 +1,7 @@ ------------------------------------------------------------------- Sun Oct 27 17:35:43 UTC 2013 - p.drouand@gmail.com -- Add systemd support for openSUSE >= 12.3 +- Add systemd support for openSUSE > 12.2 - Remove some obsolete conditionnal macros ------------------------------------------------------------------- diff --git a/exim.spec b/exim.spec index 3907388..ac237c4 100644 --- a/exim.spec +++ b/exim.spec @@ -38,11 +38,11 @@ Conflicts: sendmail sendmail-tls postfix Provides: smtp_daemon %if %{?suse_version:%suse_version}%{?!suse_version:0} > 800 Requires: logrotate -%if 0%{?suse_version} >=1230 +%if 0%{?suse_version} > 1220 BuildRequires: pkgconfig(systemd) %{?systemd_requires} %else -Requires(pre): %insserv_prereq +Requires(pre): %insserv_prereq %endif Requires(pre): %fillup_prereq Requires(pre): /usr/sbin/useradd @@ -248,7 +248,7 @@ rm -f doc/*.{orig,txt~} make %install -%if 0%{?suse_version} >=1230 +%if 0%{?suse_version} > 1220 mkdir -p $RPM_BUILD_ROOT/%{_unitdir} %else mkdir -p $RPM_BUILD_ROOT/etc/init.d @@ -266,7 +266,7 @@ make inst_dest=$RPM_BUILD_ROOT/usr/sbin \ INSTALL_ARG=-no_chown install mv $RPM_BUILD_ROOT/usr/sbin/exim-%{version}* $RPM_BUILD_ROOT/usr/sbin/exim mv $RPM_BUILD_ROOT/etc/exim/exim.conf src/configure.default # with all substitutions done -%if 0%{?suse_version} >=1230 +%if 0%{?suse_version} > 1220 install -m 755 %{S:32} $RPM_BUILD_ROOT/%{_unitdir}/exim.service %else install -m 755 %{S:11} $RPM_BUILD_ROOT/etc/init.d/exim @@ -282,7 +282,7 @@ do ln -sf ../sbin/exim $RPM_BUILD_ROOT$i done ln -sf exim $RPM_BUILD_ROOT/usr/sbin/sendmail -%if 0%{?suse_version} >=1230 +%if 0%{?suse_version} > 1220 ln -sv ../../%{_unitdir}/exim.service $RPM_BUILD_ROOT/usr/sbin/rcexim %else ln -sv ../../etc/init.d/exim $RPM_BUILD_ROOT/usr/sbin/rcexim @@ -350,7 +350,7 @@ fi for i in var/log/exim/main.log var/log/exim/panic.log var/log/exim/reject.log; do if ! test -e $i; then touch $i; chown mail:mail $i; chmod 640 $i ; fi done -%if 0%{?suse_version} >=1230 +%if 0%{?suse_version} > 1220 %{fillup_only} %service_add_post exim.service %else @@ -360,7 +360,7 @@ exit 0 %if %{?suse_version:%suse_version} %preun -%if 0%{?suse_version} >=1230 +%if 0%{?suse_version} > 1220 %service_del_preun exim.service %else %stop_on_removal exim @@ -369,7 +369,7 @@ exit 0 %postun %if %{?suse_version:%suse_version} -%if 0%{?suse_version} >=1230 +%if 0%{?suse_version} > 1220 %service_del_postun exim.service %else %restart_on_update exim @@ -398,7 +398,7 @@ exit 0 /usr/sbin/exiqsumm /usr/sbin/exiwhat %dir /etc/exim -%if 0%{?suse_version} >=1230 +%if 0%{?suse_version} > 1220 %{_unitdir}/exim.service %else %config /etc/init.d/exim