postfix.inc: make deterministic build

This postinst can fail depending on host setup, which makes non-deterministic
build on different host.

Use postinst ontarget to always fail at do_rootfs and rerun at target first
boot.

In this situation, remove postfix-native from PACKAGE_WRITE_DEPS

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
This commit is contained in:
Hongxu Jia 2019-10-22 15:14:14 +08:00 committed by Khem Raj
parent 89d86b96f8
commit 308d0f602e

View File

@ -202,26 +202,13 @@ ALTERNATIVE_LINK_NAME[mailq.1] = "${mandir}/man1/mailq.1"
ALTERNATIVE_LINK_NAME[newaliases.1] = "${mandir}/man1/newaliases.1"
ALTERNATIVE_LINK_NAME[sendmail.1] = "${mandir}/man1/sendmail.1"
PACKAGE_WRITE_DEPS += "postfix-native"
pkg_postinst_${PN}-cfg () {
if [ "x$D" = "x" ]; then
touch /etc/aliases
newaliases
pkg_postinst_ontarget_${PN}-cfg () {
touch /etc/aliases
newaliases
# generate virtual_alias, default is hash
touch /etc/postfix/virtual_alias
postmap /etc/postfix/virtual_alias
else
touch $D/etc/aliases
# This can fail depending on host setup
if ! newaliases -C $D/etc/postfix/main.cf -oA$D/etc/aliases; then
$INTERCEPT_DIR/postinst_intercept delay_to_first_boot ${PKG} mlprefix=${MLPREFIX}
else
touch $D/etc/postfix/virtual_alias
postmap -c $D/etc/postfix $D/etc/postfix/virtual_alias
fi
fi
# generate virtual_alias, default is hash
touch /etc/postfix/virtual_alias
postmap /etc/postfix/virtual_alias
}
PACKAGES =+ "${PN}-cfg"