The current version of mail/postfix-current 2.12-20141020 is supposed to provide support for internationalized addresses (EAI) and SMTPUTF8 by default, yet in a package produced under poudriere the EAI feature is disabled, postfix complains: warning: smtputf8_enable is true, but EAI support is not compiled in Looking at a build log it can be seen that EAI is explicitly disabled. Here is just one of several 'cc' commands from the log, showing the -DNO_EAI : cc -I. -I../../include -DDEF_CONFIG_DIR=\"/usr/local/etc/postfix\" -DDEF_DAEMON_DIR=\"/usr/local/libexec/postfix\" -DDEF_META_DIR=\"/usr/local/libexec/postfix\" -DDEF_COMMAND_DIR=\"/usr/local/sbin\" -DDEF_SENDMAIL_PATH=\"/usr/local/sbin/sendmail\" -DDEF_NEWALIAS_PATH=\"/usr/local/bin/newaliases\" -DDEF_MAILQ_PATH=\"/usr/local/bin/mailq\" -DDEF_MANPAGE_DIR=\"/usr/local/man\" -DDEF_README_DIR=\"/usr/local/share/doc/postfix\" -DDEF_HTML_DIR=\"/usr/local/share/doc/postfix\" -DDEF_QUEUE_DIR=\"/var/spool/postfix\" -DDEF_DATA_DIR=\"/var/db/postfix\" -DDEF_MAIL_OWNER=\"postfix\" -DDEF_SGID_GROUP=\"maildrop\" -Wmissing-prototypes -Wformat -Wno-comment -DHAS_PCRE -I/usr/local/include -DUSE_SASL_AUTH -DUSE_CYRUS_SASL -I/usr/local/include -I/usr/local/include/sasl -DUSE_TLS -I/usr/include -I/usr/local/include/db5 -DHAS_CDB -I/usr/local/include -DHAS_LMDB -I/usr/local/include -DNO_EAI -DSNAPSHOT -UUSE_DYNAMIC_LIBS -DDEF_SHLIB_DIR=\"no\" -UUSE_DYNAMIC_MAPS -O2 -pipe -fno-omit-frame-pointer -fstack-protector -fno-strict-a--- argv.o --- The Postfix documentation ( http://www.postfix.org/INSTALL.html ) says: 4.6 - Overriding other compile-time features -DNO_EAI Do not build with EAI (SMTPUTF8) support. By default, EAI support is compiled in when the "icuuc" library and header files are found. So my guess is that the "icuuc" library is not seen in a poudrirere build environment. Compiling (by portmaster) directly in a ports tree avoids the problem, the resulting program is built with the EAI support. Below is a beginning of my poudriere build log: ====>> Building mail/postfix-current build started at Mon Nov 3 14:34:21 CET 2014 port directory: /usr/ports/mail/postfix-current building for: FreeBSD 10amd64-srv-default-job-01 10.0-RELEASE FreeBSD 10.0-RELEASE amd64 maintained by: sahil@FreeBSD.org Makefile ident: $FreeBSD: head/mail/postfix-current/Makefile 372089 2014-11-02 21:09:26Z ohauer $ Poudriere version: 3.0.19 Host OSVERSION: 1001500 Jail OSVERSION: 1000510 ---Begin Environment--- OSVERSION=1000510 UNAME_v=FreeBSD 10.0-RELEASE UNAME_r=10.0-RELEASE BLOCKSIZE=K MAIL=/var/mail/root STATUS=1 MASTERMNT=/big/poudriere/data/build/10amd64-srv-default/ref PKG_EXT=txz FORCE_PACKAGE=yes PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/games:/usr/local/sbin:/usr/local/bin:/root/bin POUDRIERE_BUILD_TYPE=bulk PKGNG=1 PKGNAME=postfix-current-2.12.20141020,4 PKG_DELETE=/usr/local/sbin/pkg-static delete -y -f PKG_ADD=/usr/local/sbin/pkg-static add PWD=/usr/local/jenkins/workspace/FreeBSD-10-amd64-server MASTERNAME=10amd64-srv-default USER=root HOME=/root POUDRIERE_VERSION=3.0.19 SKIPSANITY=0 LOCALBASE=/usr/local PACKAGE_BUILDING=yes PKG_BIN=/usr/local/sbin/pkg-static ---End Environment--- ---Begin OPTIONS List--- ===> The following configuration options are available for postfix-current-2.12.20141020,4: BDB=on: Berkeley DB (uses WITH_BDB_VER) CDB=on: CDB maps lookups DOCS=on: Build and/or install documentation INST_BASE=off: Install into /usr and /etc/postfix LDAP_SASL=off: OpenLDAP client-to-server SASL auth LMDB=on: LMDB maps MYSQL=off: MySQL maps (uses WITH_MYSQL_VER) NIS=off: NIS maps lookups OPENLDAP=off: OpenLDAP maps (uses WITH_OPENLDAP_VER) PCRE=on: Perl Compatible Regular Expressions PGSQL=off: PostgreSQL maps (uses DEFAULT_PGSQL_VER) SASL2=on: Cyrus SASLv2 (Simple Auth. and Sec. Layer) SPF=off: SPF support (via libspf2 1.2.x) SQLITE=off: SQLite maps TEST=on: SMTP/LMTP test server and generator TLS=on: SSL and TLS support VDA=off: VDA (Virtual Delivery Agent 32Bit) ====> Dovecot SASL authentication methods: you can only select none or one of them DOVECOT=off: Dovecot 1.x SASL authentication method DOVECOT2=off: Dovecot 2.x SASL authentication method ====> Kerberos network authentication protocol type: you can only select none or one of them SASLKRB5=off: If your SASL req. Kerberos5, select this SASLKMIT=off: If your SASL req. MIT Kerberos5, select this ===> Use 'make config' to modify these settings ---End OPTIONS List---
Auto-assigned to maintainer sahil@FreeBSD.org
Take it, as requested from sahil@ in PM, since he is busy at the moment.
A commit references this bug: Author: ohauer Date: Sun Nov 9 18:13:20 UTC 2014 New revision: 372368 URL: https://svnweb.freebsd.org/changeset/ports/372368 Log: - update to 2.12-20141106 - add OPTION for Email Address Internationalization (EAI, RFC 6531..6533) [1] - sort OPTIONS_DEFINE - fix build and install for non root users, (sgid and group for sbin/postdrop and sbin/postqueue was lost if build as non root and installed with sudo) - install /var/spool/postfix directories with correct owner/mode - use $WRKDIR instead of /tmp Changes: 20141021 Per IETF TLS WG consensus, the tls_session_ticket_cipher default setting was changed from aes-128-cbc to aes-256-cbc. Take that, you quantum computer attackers! Viktor Dukhovni. Files: proto/postconf.proto, global/mail_params.h. 20141024 Cleanup: added $smtpd_mumble_restrictions to the proxy_read_maps default setting. File: global/mail_params.h. Documentation: different header/body checks for MX service and SMTP submissions. File: proto/BUILTIN_FILTER_README.html. Cleanup: don't send "bare" original recipient in SMTP DSN attributes. File: cleanup/cleanup_addr.c. Feature: smtp-sink -N option to suppress DSN announcement. File: smtpstone/smtp-sink.c. 20141025 Bugfix (introduced: Postfix 2,11): core dump when smtp_policy_maps specifies an invalid TLS level. Viktor Dukhovni. File: smtp/smtp_tls_policy.c. 20141103 Logging: when a connection is closed, log the request counts for unimplemented STARTTLS or AUTH commands separately, instead of logging such commands as "unknown". File: smtpd/smtpd.c. 20141106 Cleanup: set errno to ETIMEDOUT after postscreen handshake timeout event, so that warnings report the correct error. File: tlsproxy/tlsproxy.c. PR: 194786 [1] Submitted by: Mark Martinec Approved by: sahil (imlicit) Changes: head/mail/postfix-current/Makefile head/mail/postfix-current/distinfo head/mail/postfix-current/pkg-plist