diff options
author | Yi Zhao <yi.zhao@windriver.com> | 2020-04-17 17:14:09 +0800 |
---|---|---|
committer | Khem Raj <raj.khem@gmail.com> | 2020-04-17 19:05:58 -0700 |
commit | 335e0bd0cc3fa5ba058f726e7c7b93c27c3d2042 (patch) | |
tree | 53d209f43bff014dbe82985bc3623d46529406c0 | |
parent | 1f2c4c2c67ef0d83e40a4b9b5ee73750fb94d261 (diff) | |
download | meta-openembedded-335e0bd0cc3fa5ba058f726e7c7b93c27c3d2042.tar.gz |
postfix: split ${PN}-bin from ${PN} to solve recursive dependency
The commit 89d86b96f80d8a136d38113baf69d8ccad5a5ff6 which tries to fix
the installation issue for ostree introduces a recursive dependency
issue. When installing the postfix package on target via online
repository, the postinst function for postfix-cfg package needs
newaliases but this command is from postfix package which causes an
error:
Configuring postfix-cfg.
/var/lib/opkg/info/postfix-cfg.postinst: line 9: newaliases: not found
pkg_run_script: package "postfix-cfg" postinst script returned status 127.
Split a new package postfix-bin from postfix and make it as the runtime
dependency for postfix-cfg.
Set USERADD_PACKAGES to ${PN}-bin to avoid image do_rootfs warnings when
installing postfix via IMAGE_INSTALL:
[log_check] warning: group postdrop does not exist - using root
[log_check] warning: user postfix does not exist - using root
Set ALTERNATIVE to ${PN}-bin to make sure the newaliases symbolic link
is installed before installing postfix-cfg.
Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
-rw-r--r-- | meta-networking/recipes-daemons/postfix/postfix.inc | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/meta-networking/recipes-daemons/postfix/postfix.inc b/meta-networking/recipes-daemons/postfix/postfix.inc index 64c20d0f5..4b9940cc7 100644 --- a/meta-networking/recipes-daemons/postfix/postfix.inc +++ b/meta-networking/recipes-daemons/postfix/postfix.inc | |||
@@ -20,16 +20,16 @@ CLEANBROKEN = "1" | |||
20 | 20 | ||
21 | BBCLASSEXTEND = "native" | 21 | BBCLASSEXTEND = "native" |
22 | 22 | ||
23 | inherit update-rc.d useradd update-alternatives systemd | 23 | inherit update-rc.d useradd update-alternatives systemd lib_package |
24 | 24 | ||
25 | INITSCRIPT_NAME = "postfix" | 25 | INITSCRIPT_NAME = "postfix" |
26 | INITSCRIPT_PARAMS = "start 58 3 4 5 . stop 13 0 1 6 ." | 26 | INITSCRIPT_PARAMS = "start 58 3 4 5 . stop 13 0 1 6 ." |
27 | USERADD_PACKAGES = "${PN}" | 27 | USERADD_PACKAGES = "${PN}-bin" |
28 | USERADD_PARAM_${PN} = \ | 28 | USERADD_PARAM_${PN}-bin = \ |
29 | "-d /var/spool/postfix -r -g postfix --shell /bin/false postfix; \ | 29 | "-d /var/spool/postfix -r -g postfix --shell /bin/false postfix; \ |
30 | -d /var/spool/vmail -r -g vmail --shell /bin/false vmail \ | 30 | -d /var/spool/vmail -r -g vmail --shell /bin/false vmail \ |
31 | " | 31 | " |
32 | GROUPADD_PARAM_${PN} = "--system postfix;--system postdrop;--system vmail" | 32 | GROUPADD_PARAM_${PN}-bin = "--system postfix;--system postdrop;--system vmail" |
33 | 33 | ||
34 | export SYSLIBS = "${LDFLAGS}" | 34 | export SYSLIBS = "${LDFLAGS}" |
35 | 35 | ||
@@ -185,9 +185,9 @@ do_install_append_class-native() { | |||
185 | ln -sf ../sbin/sendmail.postfix ${D}${bindir}/mailq | 185 | ln -sf ../sbin/sendmail.postfix ${D}${bindir}/mailq |
186 | } | 186 | } |
187 | 187 | ||
188 | ALTERNATIVE_${PN} = "sendmail mailq newaliases" | 188 | ALTERNATIVE_${PN}-bin = "sendmail mailq newaliases" |
189 | # /usr/lib/sendmial is required by LSB core test | 189 | # /usr/lib/sendmial is required by LSB core test |
190 | ALTERNATIVE_${PN}_linuxstdbase = "sendmail mailq newaliases usr-lib-sendmail" | 190 | ALTERNATIVE_${PN}-bin_linuxstdbase = "sendmail mailq newaliases usr-lib-sendmail" |
191 | ALTERNATIVE_TARGET[mailq] = "${bindir}/mailq" | 191 | ALTERNATIVE_TARGET[mailq] = "${bindir}/mailq" |
192 | ALTERNATIVE_TARGET[newaliases] = "${bindir}/newaliases" | 192 | ALTERNATIVE_TARGET[newaliases] = "${bindir}/newaliases" |
193 | ALTERNATIVE_TARGET[sendmail] = "${sbindir}/sendmail.postfix" | 193 | ALTERNATIVE_TARGET[sendmail] = "${sbindir}/sendmail.postfix" |
@@ -212,9 +212,11 @@ pkg_postinst_ontarget_${PN}-cfg () { | |||
212 | } | 212 | } |
213 | 213 | ||
214 | PACKAGES =+ "${PN}-cfg" | 214 | PACKAGES =+ "${PN}-cfg" |
215 | RDEPENDS_${PN}-cfg_class-target += "${PN}-bin" | ||
215 | RDEPENDS_${PN}_class-target += "${PN}-cfg" | 216 | RDEPENDS_${PN}_class-target += "${PN}-cfg" |
216 | # Exclude .debug directories from the main package | 217 | # Exclude .debug directories from the main package |
217 | FILES_${PN} = "${localstatedir} ${bindir}/* ${sbindir}/* \ | 218 | FILES_${PN}-bin += "${localstatedir} ${bindir}/* ${sbindir}/* \ |
218 | ${libexecdir}/* ${systemd_unitdir}/*" | 219 | ${libexecdir}/* ${systemd_unitdir}/*" |
219 | FILES_${PN}-cfg = "${sysconfdir}" | 220 | FILES_${PN}-cfg = "${sysconfdir}" |
220 | FILES_${PN}-dbg += "${libexecdir}/postfix/.debug" | 221 | FILES_${PN}-dbg += "${libexecdir}/postfix/.debug" |
222 | ALLOW_EMPTY_${PN} = "1" | ||